参考GitHub 中

RESideMenu

https://github.com/romaonthego/RESideMenu

https://github.com/kyze8439690/ResideLayout

https://github.com/SpecialCyCi/AndroidResideMenu

Android仿QQ5.0侧滑菜单ResideMenu

最近项目要做一个QQ5.0的侧滑菜单效果,和传统的侧滑菜单存在着一些差异。想必大家都已经见识过了。

为了不重复发明轮子,先去github上面搜索了一番。

发现了几个类似的,但是还是有一些不同。

下面是搜索到的类似的开源项目。

RESideMenu(ios项目)

https://github.com/romaonthego/RESideMenu

AndroidResideMenu

https://github.com/SpecialCyCi/AndroidResideMenu

ResideLayout

https://github.com/kyze8439690/ResideLayout

 

研究了一下这些开源项目的源代码。感觉并不是特别适用于我们自己的项目。所以,我自己又研究了一下。最后的效果如下。当然了,还有很多可以优化的地方,后续再慢慢优化。

我是基于SlidingMenu库进行的二次修改,增加了一些转场动画。

大家对这个库应该比较熟悉,下面是SlidingMenu的github地址。非常感谢Jeremy Feinstein提供的这个库,让广大Android Developers省去了非常多的麻烦。

https://github.com/jfeinstein10/SlidingMenu

备注:SlidingMenu使用了SherlockActionBar这个库,配置起来会比较麻烦,在文章的最后我会把demo上传,供大家下载,减去了大家自己配置项目的麻烦。

我主要修改了2个类,SlidingMenu.java和CustonViewAbove.java,只是增加了一些功能,并没有修改原本的功能。

做了修改的地方,我做了中文注释,其实实现很简单,几行代码而已。推荐大家下载Demo,然后自己调试一下。Demo的下载地址在文章的末尾。

废话不多说,直接上代码,略微有点长。

[?](http://www.open-open.com/lib/view/open1411269966859.html#)
<table border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td class="gutter">
      <div class="line number1 index0 alt2">
        1
      </div>
      
      <div class="line number2 index1 alt1">
        2
      </div>
      
      <div class="line number3 index2 alt2">
        3
      </div>
      
      <div class="line number4 index3 alt1">
        4
      </div>
      
      <div class="line number5 index4 alt2">
        5
      </div>
      
      <div class="line number6 index5 alt1">
        6
      </div>
      
      <div class="line number7 index6 alt2">
        7
      </div>
      
      <div class="line number8 index7 alt1">
        8
      </div>
      
      <div class="line number9 index8 alt2">
        9
      </div>
      
      <div class="line number10 index9 alt1">
        10
      </div>
      
      <div class="line number11 index10 alt2">
        11
      </div>
      
      <div class="line number12 index11 alt1">
        12
      </div>
      
      <div class="line number13 index12 alt2">
        13
      </div>
      
      <div class="line number14 index13 alt1">
        14
      </div>
      
      <div class="line number15 index14 alt2">
        15
      </div>
      
      <div class="line number16 index15 alt1">
        16
      </div>
      
      <div class="line number17 index16 alt2">
        17
      </div>
      
      <div class="line number18 index17 alt1">
        18
      </div>
      
      <div class="line number19 index18 alt2">
        19
      </div>
      
      <div class="line number20 index19 alt1">
        20
      </div>
      
      <div class="line number21 index20 alt2">
        21
      </div>
      
      <div class="line number22 index21 alt1">
        22
      </div>
      
      <div class="line number23 index22 alt2">
        23
      </div>
      
      <div class="line number24 index23 alt1">
        24
      </div>
      
      <div class="line number25 index24 alt2">
        25
      </div>
      
      <div class="line number26 index25 alt1">
        26
      </div>
      
      <div class="line number27 index26 alt2">
        27
      </div>
      
      <div class="line number28 index27 alt1">
        28
      </div>
      
      <div class="line number29 index28 alt2">
        29
      </div>
      
      <div class="line number30 index29 alt1">
        30
      </div>
      
      <div class="line number31 index30 alt2">
        31
      </div>
      
      <div class="line number32 index31 alt1">
        32
      </div>
      
      <div class="line number33 index32 alt2">
        33
      </div>
      
      <div class="line number34 index33 alt1">
        34
      </div>
      
      <div class="line number35 index34 alt2">
        35
      </div>
      
      <div class="line number36 index35 alt1">
        36
      </div>
      
      <div class="line number37 index36 alt2">
        37
      </div>
      
      <div class="line number38 index37 alt1">
        38
      </div>
      
      <div class="line number39 index38 alt2">
        39
      </div>
      
      <div class="line number40 index39 alt1">
        40
      </div>
      
      <div class="line number41 index40 alt2">
        41
      </div>
      
      <div class="line number42 index41 alt1">
        42
      </div>
      
      <div class="line number43 index42 alt2">
        43
      </div>
      
      <div class="line number44 index43 alt1">
        44
      </div>
      
      <div class="line number45 index44 alt2">
        45
      </div>
      
      <div class="line number46 index45 alt1">
        46
      </div>
      
      <div class="line number47 index46 alt2">
        47
      </div>
      
      <div class="line number48 index47 alt1">
        48
      </div>
      
      <div class="line number49 index48 alt2">
        49
      </div>
      
      <div class="line number50 index49 alt1">
        50
      </div>
      
      <div class="line number51 index50 alt2">
        51
      </div>
      
      <div class="line number52 index51 alt1">
        52
      </div>
      
      <div class="line number53 index52 alt2">
        53
      </div>
      
      <div class="line number54 index53 alt1">
        54
      </div>
      
      <div class="line number55 index54 alt2">
        55
      </div>
      
      <div class="line number56 index55 alt1">
        56
      </div>
      
      <div class="line number57 index56 alt2">
        57
      </div>
      
      <div class="line number58 index57 alt1">
        58
      </div>
      
      <div class="line number59 index58 alt2">
        59
      </div>
      
      <div class="line number60 index59 alt1">
        60
      </div>
      
      <div class="line number61 index60 alt2">
        61
      </div>
      
      <div class="line number62 index61 alt1">
        62
      </div>
      
      <div class="line number63 index62 alt2">
        63
      </div>
      
      <div class="line number64 index63 alt1">
        64
      </div>
      
      <div class="line number65 index64 alt2">
        65
      </div>
      
      <div class="line number66 index65 alt1">
        66
      </div>
      
      <div class="line number67 index66 alt2">
        67
      </div>
      
      <div class="line number68 index67 alt1">
        68
      </div>
      
      <div class="line number69 index68 alt2">
        69
      </div>
      
      <div class="line number70 index69 alt1">
        70
      </div>
      
      <div class="line number71 index70 alt2">
        71
      </div>
      
      <div class="line number72 index71 alt1">
        72
      </div>
      
      <div class="line number73 index72 alt2">
        73
      </div>
      
      <div class="line number74 index73 alt1">
        74
      </div>
      
      <div class="line number75 index74 alt2">
        75
      </div>
      
      <div class="line number76 index75 alt1">
        76
      </div>
      
      <div class="line number77 index76 alt2">
        77
      </div>
      
      <div class="line number78 index77 alt1">
        78
      </div>
      
      <div class="line number79 index78 alt2">
        79
      </div>
      
      <div class="line number80 index79 alt1">
        80
      </div>
      
      <div class="line number81 index80 alt2">
        81
      </div>
      
      <div class="line number82 index81 alt1">
        82
      </div>
      
      <div class="line number83 index82 alt2">
        83
      </div>
      
      <div class="line number84 index83 alt1">
        84
      </div>
      
      <div class="line number85 index84 alt2">
        85
      </div>
      
      <div class="line number86 index85 alt1">
        86
      </div>
      
      <div class="line number87 index86 alt2">
        87
      </div>
      
      <div class="line number88 index87 alt1">
        88
      </div>
      
      <div class="line number89 index88 alt2">
        89
      </div>
      
      <div class="line number90 index89 alt1">
        90
      </div>
      
      <div class="line number91 index90 alt2">
        91
      </div>
      
      <div class="line number92 index91 alt1">
        92
      </div>
      
      <div class="line number93 index92 alt2">
        93
      </div>
      
      <div class="line number94 index93 alt1">
        94
      </div>
      
      <div class="line number95 index94 alt2">
        95
      </div>
      
      <div class="line number96 index95 alt1">
        96
      </div>
      
      <div class="line number97 index96 alt2">
        97
      </div>
      
      <div class="line number98 index97 alt1">
        98
      </div>
      
      <div class="line number99 index98 alt2">
        99
      </div>
      
      <div class="line number100 index99 alt1">
        100
      </div>
      
      <div class="line number101 index100 alt2">
        101
      </div>
      
      <div class="line number102 index101 alt1">
        102
      </div>
      
      <div class="line number103 index102 alt2">
        103
      </div>
      
      <div class="line number104 index103 alt1">
        104
      </div>
      
      <div class="line number105 index104 alt2">
        105
      </div>
      
      <div class="line number106 index105 alt1">
        106
      </div>
      
      <div class="line number107 index106 alt2">
        107
      </div>
      
      <div class="line number108 index107 alt1">
        108
      </div>
      
      <div class="line number109 index108 alt2">
        109
      </div>
      
      <div class="line number110 index109 alt1">
        110
      </div>
      
      <div class="line number111 index110 alt2">
        111
      </div>
      
      <div class="line number112 index111 alt1">
        112
      </div>
      
      <div class="line number113 index112 alt2">
        113
      </div>
      
      <div class="line number114 index113 alt1">
        114
      </div>
      
      <div class="line number115 index114 alt2">
        115
      </div>
      
      <div class="line number116 index115 alt1">
        116
      </div>
      
      <div class="line number117 index116 alt2">
        117
      </div>
      
      <div class="line number118 index117 alt1">
        118
      </div>
      
      <div class="line number119 index118 alt2">
        119
      </div>
      
      <div class="line number120 index119 alt1">
        120
      </div>
      
      <div class="line number121 index120 alt2">
        121
      </div>
      
      <div class="line number122 index121 alt1">
        122
      </div>
      
      <div class="line number123 index122 alt2">
        123
      </div>
      
      <div class="line number124 index123 alt1">
        124
      </div>
      
      <div class="line number125 index124 alt2">
        125
      </div>
      
      <div class="line number126 index125 alt1">
        126
      </div>
      
      <div class="line number127 index126 alt2">
        127
      </div>
      
      <div class="line number128 index127 alt1">
        128
      </div>
      
      <div class="line number129 index128 alt2">
        129
      </div>
      
      <div class="line number130 index129 alt1">
        130
      </div>
      
      <div class="line number131 index130 alt2">
        131
      </div>
      
      <div class="line number132 index131 alt1">
        132
      </div>
      
      <div class="line number133 index132 alt2">
        133
      </div>
      
      <div class="line number134 index133 alt1">
        134
      </div>
      
      <div class="line number135 index134 alt2">
        135
      </div>
      
      <div class="line number136 index135 alt1">
        136
      </div>
      
      <div class="line number137 index136 alt2">
        137
      </div>
      
      <div class="line number138 index137 alt1">
        138
      </div>
      
      <div class="line number139 index138 alt2">
        139
      </div>
      
      <div class="line number140 index139 alt1">
        140
      </div>
      
      <div class="line number141 index140 alt2">
        141
      </div>
      
      <div class="line number142 index141 alt1">
        142
      </div>
      
      <div class="line number143 index142 alt2">
        143
      </div>
      
      <div class="line number144 index143 alt1">
        144
      </div>
      
      <div class="line number145 index144 alt2">
        145
      </div>
      
      <div class="line number146 index145 alt1">
        146
      </div>
      
      <div class="line number147 index146 alt2">
        147
      </div>
      
      <div class="line number148 index147 alt1">
        148
      </div>
      
      <div class="line number149 index148 alt2">
        149
      </div>
      
      <div class="line number150 index149 alt1">
        150
      </div>
      
      <div class="line number151 index150 alt2">
        151
      </div>
      
      <div class="line number152 index151 alt1">
        152
      </div>
      
      <div class="line number153 index152 alt2">
        153
      </div>
      
      <div class="line number154 index153 alt1">
        154
      </div>
      
      <div class="line number155 index154 alt2">
        155
      </div>
      
      <div class="line number156 index155 alt1">
        156
      </div>
      
      <div class="line number157 index156 alt2">
        157
      </div>
      
      <div class="line number158 index157 alt1">
        158
      </div>
      
      <div class="line number159 index158 alt2">
        159
      </div>
      
      <div class="line number160 index159 alt1">
        160
      </div>
      
      <div class="line number161 index160 alt2">
        161
      </div>
      
      <div class="line number162 index161 alt1">
        162
      </div>
      
      <div class="line number163 index162 alt2">
        163
      </div>
      
      <div class="line number164 index163 alt1">
        164
      </div>
      
      <div class="line number165 index164 alt2">
        165
      </div>
      
      <div class="line number166 index165 alt1">
        166
      </div>
      
      <div class="line number167 index166 alt2">
        167
      </div>
      
      <div class="line number168 index167 alt1">
        168
      </div>
      
      <div class="line number169 index168 alt2">
        169
      </div>
      
      <div class="line number170 index169 alt1">
        170
      </div>
      
      <div class="line number171 index170 alt2">
        171
      </div>
      
      <div class="line number172 index171 alt1">
        172
      </div>
      
      <div class="line number173 index172 alt2">
        173
      </div>
      
      <div class="line number174 index173 alt1">
        174
      </div>
      
      <div class="line number175 index174 alt2">
        175
      </div>
      
      <div class="line number176 index175 alt1">
        176
      </div>
      
      <div class="line number177 index176 alt2">
        177
      </div>
      
      <div class="line number178 index177 alt1">
        178
      </div>
      
      <div class="line number179 index178 alt2">
        179
      </div>
      
      <div class="line number180 index179 alt1">
        180
      </div>
      
      <div class="line number181 index180 alt2">
        181
      </div>
      
      <div class="line number182 index181 alt1">
        182
      </div>
      
      <div class="line number183 index182 alt2">
        183
      </div>
      
      <div class="line number184 index183 alt1">
        184
      </div>
      
      <div class="line number185 index184 alt2">
        185
      </div>
      
      <div class="line number186 index185 alt1">
        186
      </div>
      
      <div class="line number187 index186 alt2">
        187
      </div>
      
      <div class="line number188 index187 alt1">
        188
      </div>
      
      <div class="line number189 index188 alt2">
        189
      </div>
      
      <div class="line number190 index189 alt1">
        190
      </div>
      
      <div class="line number191 index190 alt2">
        191
      </div>
      
      <div class="line number192 index191 alt1">
        192
      </div>
      
      <div class="line number193 index192 alt2">
        193
      </div>
      
      <div class="line number194 index193 alt1">
        194
      </div>
      
      <div class="line number195 index194 alt2">
        195
      </div>
      
      <div class="line number196 index195 alt1">
        196
      </div>
      
      <div class="line number197 index196 alt2">
        197
      </div>
      
      <div class="line number198 index197 alt1">
        198
      </div>
      
      <div class="line number199 index198 alt2">
        199
      </div>
      
      <div class="line number200 index199 alt1">
        200
      </div>
      
      <div class="line number201 index200 alt2">
        201
      </div>
      
      <div class="line number202 index201 alt1">
        202
      </div>
      
      <div class="line number203 index202 alt2">
        203
      </div>
      
      <div class="line number204 index203 alt1">
        204
      </div>
      
      <div class="line number205 index204 alt2">
        205
      </div>
      
      <div class="line number206 index205 alt1">
        206
      </div>
      
      <div class="line number207 index206 alt2">
        207
      </div>
      
      <div class="line number208 index207 alt1">
        208
      </div>
      
      <div class="line number209 index208 alt2">
        209
      </div>
      
      <div class="line number210 index209 alt1">
        210
      </div>
      
      <div class="line number211 index210 alt2">
        211
      </div>
      
      <div class="line number212 index211 alt1">
        212
      </div>
      
      <div class="line number213 index212 alt2">
        213
      </div>
      
      <div class="line number214 index213 alt1">
        214
      </div>
      
      <div class="line number215 index214 alt2">
        215
      </div>
      
      <div class="line number216 index215 alt1">
        216
      </div>
      
      <div class="line number217 index216 alt2">
        217
      </div>
      
      <div class="line number218 index217 alt1">
        218
      </div>
      
      <div class="line number219 index218 alt2">
        219
      </div>
      
      <div class="line number220 index219 alt1">
        220
      </div>
      
      <div class="line number221 index220 alt2">
        221
      </div>
      
      <div class="line number222 index221 alt1">
        222
      </div>
      
      <div class="line number223 index222 alt2">
        223
      </div>
      
      <div class="line number224 index223 alt1">
        224
      </div>
      
      <div class="line number225 index224 alt2">
        225
      </div>
      
      <div class="line number226 index225 alt1">
        226
      </div>
      
      <div class="line number227 index226 alt2">
        227
      </div>
      
      <div class="line number228 index227 alt1">
        228
      </div>
      
      <div class="line number229 index228 alt2">
        229
      </div>
      
      <div class="line number230 index229 alt1">
        230
      </div>
      
      <div class="line number231 index230 alt2">
        231
      </div>
      
      <div class="line number232 index231 alt1">
        232
      </div>
      
      <div class="line number233 index232 alt2">
        233
      </div>
      
      <div class="line number234 index233 alt1">
        234
      </div>
      
      <div class="line number235 index234 alt2">
        235
      </div>
      
      <div class="line number236 index235 alt1">
        236
      </div>
      
      <div class="line number237 index236 alt2">
        237
      </div>
      
      <div class="line number238 index237 alt1">
        238
      </div>
      
      <div class="line number239 index238 alt2">
        239
      </div>
      
      <div class="line number240 index239 alt1">
        240
      </div>
      
      <div class="line number241 index240 alt2">
        241
      </div>
      
      <div class="line number242 index241 alt1">
        242
      </div>
      
      <div class="line number243 index242 alt2">
        243
      </div>
      
      <div class="line number244 index243 alt1">
        244
      </div>
      
      <div class="line number245 index244 alt2">
        245
      </div>
      
      <div class="line number246 index245 alt1">
        246
      </div>
      
      <div class="line number247 index246 alt2">
        247
      </div>
      
      <div class="line number248 index247 alt1">
        248
      </div>
      
      <div class="line number249 index248 alt2">
        249
      </div>
      
      <div class="line number250 index249 alt1">
        250
      </div>
      
      <div class="line number251 index250 alt2">
        251
      </div>
      
      <div class="line number252 index251 alt1">
        252
      </div>
      
      <div class="line number253 index252 alt2">
        253
      </div>
      
      <div class="line number254 index253 alt1">
        254
      </div>
      
      <div class="line number255 index254 alt2">
        255
      </div>
      
      <div class="line number256 index255 alt1">
        256
      </div>
      
      <div class="line number257 index256 alt2">
        257
      </div>
      
      <div class="line number258 index257 alt1">
        258
      </div>
      
      <div class="line number259 index258 alt2">
        259
      </div>
      
      <div class="line number260 index259 alt1">
        260
      </div>
      
      <div class="line number261 index260 alt2">
        261
      </div>
      
      <div class="line number262 index261 alt1">
        262
      </div>
      
      <div class="line number263 index262 alt2">
        263
      </div>
      
      <div class="line number264 index263 alt1">
        264
      </div>
      
      <div class="line number265 index264 alt2">
        265
      </div>
      
      <div class="line number266 index265 alt1">
        266
      </div>
      
      <div class="line number267 index266 alt2">
        267
      </div>
      
      <div class="line number268 index267 alt1">
        268
      </div>
      
      <div class="line number269 index268 alt2">
        269
      </div>
      
      <div class="line number270 index269 alt1">
        270
      </div>
      
      <div class="line number271 index270 alt2">
        271
      </div>
      
      <div class="line number272 index271 alt1">
        272
      </div>
      
      <div class="line number273 index272 alt2">
        273
      </div>
      
      <div class="line number274 index273 alt1">
        274
      </div>
      
      <div class="line number275 index274 alt2">
        275
      </div>
      
      <div class="line number276 index275 alt1">
        276
      </div>
      
      <div class="line number277 index276 alt2">
        277
      </div>
      
      <div class="line number278 index277 alt1">
        278
      </div>
      
      <div class="line number279 index278 alt2">
        279
      </div>
      
      <div class="line number280 index279 alt1">
        280
      </div>
      
      <div class="line number281 index280 alt2">
        281
      </div>
      
      <div class="line number282 index281 alt1">
        282
      </div>
      
      <div class="line number283 index282 alt2">
        283
      </div>
      
      <div class="line number284 index283 alt1">
        284
      </div>
      
      <div class="line number285 index284 alt2">
        285
      </div>
      
      <div class="line number286 index285 alt1">
        286
      </div>
      
      <div class="line number287 index286 alt2">
        287
      </div>
      
      <div class="line number288 index287 alt1">
        288
      </div>
      
      <div class="line number289 index288 alt2">
        289
      </div>
      
      <div class="line number290 index289 alt1">
        290
      </div>
      
      <div class="line number291 index290 alt2">
        291
      </div>
      
      <div class="line number292 index291 alt1">
        292
      </div>
      
      <div class="line number293 index292 alt2">
        293
      </div>
      
      <div class="line number294 index293 alt1">
        294
      </div>
      
      <div class="line number295 index294 alt2">
        295
      </div>
      
      <div class="line number296 index295 alt1">
        296
      </div>
      
      <div class="line number297 index296 alt2">
        297
      </div>
      
      <div class="line number298 index297 alt1">
        298
      </div>
      
      <div class="line number299 index298 alt2">
        299
      </div>
      
      <div class="line number300 index299 alt1">
        300
      </div>
      
      <div class="line number301 index300 alt2">
        301
      </div>
      
      <div class="line number302 index301 alt1">
        302
      </div>
      
      <div class="line number303 index302 alt2">
        303
      </div>
      
      <div class="line number304 index303 alt1">
        304
      </div>
      
      <div class="line number305 index304 alt2">
        305
      </div>
      
      <div class="line number306 index305 alt1">
        306
      </div>
      
      <div class="line number307 index306 alt2">
        307
      </div>
      
      <div class="line number308 index307 alt1">
        308
      </div>
      
      <div class="line number309 index308 alt2">
        309
      </div>
      
      <div class="line number310 index309 alt1">
        310
      </div>
      
      <div class="line number311 index310 alt2">
        311
      </div>
      
      <div class="line number312 index311 alt1">
        312
      </div>
      
      <div class="line number313 index312 alt2">
        313
      </div>
      
      <div class="line number314 index313 alt1">
        314
      </div>
      
      <div class="line number315 index314 alt2">
        315
      </div>
      
      <div class="line number316 index315 alt1">
        316
      </div>
      
      <div class="line number317 index316 alt2">
        317
      </div>
      
      <div class="line number318 index317 alt1">
        318
      </div>
      
      <div class="line number319 index318 alt2">
        319
      </div>
      
      <div class="line number320 index319 alt1">
        320
      </div>
      
      <div class="line number321 index320 alt2">
        321
      </div>
      
      <div class="line number322 index321 alt1">
        322
      </div>
      
      <div class="line number323 index322 alt2">
        323
      </div>
      
      <div class="line number324 index323 alt1">
        324
      </div>
      
      <div class="line number325 index324 alt2">
        325
      </div>
      
      <div class="line number326 index325 alt1">
        326
      </div>
      
      <div class="line number327 index326 alt2">
        327
      </div>
      
      <div class="line number328 index327 alt1">
        328
      </div>
      
      <div class="line number329 index328 alt2">
        329
      </div>
      
      <div class="line number330 index329 alt1">
        330
      </div>
      
      <div class="line number331 index330 alt2">
        331
      </div>
      
      <div class="line number332 index331 alt1">
        332
      </div>
      
      <div class="line number333 index332 alt2">
        333
      </div>
      
      <div class="line number334 index333 alt1">
        334
      </div>
      
      <div class="line number335 index334 alt2">
        335
      </div>
      
      <div class="line number336 index335 alt1">
        336
      </div>
      
      <div class="line number337 index336 alt2">
        337
      </div>
      
      <div class="line number338 index337 alt1">
        338
      </div>
      
      <div class="line number339 index338 alt2">
        339
      </div>
      
      <div class="line number340 index339 alt1">
        340
      </div>
      
      <div class="line number341 index340 alt2">
        341
      </div>
      
      <div class="line number342 index341 alt1">
        342
      </div>
      
      <div class="line number343 index342 alt2">
        343
      </div>
      
      <div class="line number344 index343 alt1">
        344
      </div>
      
      <div class="line number345 index344 alt2">
        345
      </div>
      
      <div class="line number346 index345 alt1">
        346
      </div>
      
      <div class="line number347 index346 alt2">
        347
      </div>
      
      <div class="line number348 index347 alt1">
        348
      </div>
      
      <div class="line number349 index348 alt2">
        349
      </div>
      
      <div class="line number350 index349 alt1">
        350
      </div>
      
      <div class="line number351 index350 alt2">
        351
      </div>
      
      <div class="line number352 index351 alt1">
        352
      </div>
      
      <div class="line number353 index352 alt2">
        353
      </div>
      
      <div class="line number354 index353 alt1">
        354
      </div>
      
      <div class="line number355 index354 alt2">
        355
      </div>
      
      <div class="line number356 index355 alt1">
        356
      </div>
      
      <div class="line number357 index356 alt2">
        357
      </div>
      
      <div class="line number358 index357 alt1">
        358
      </div>
      
      <div class="line number359 index358 alt2">
        359
      </div>
      
      <div class="line number360 index359 alt1">
        360
      </div>
      
      <div class="line number361 index360 alt2">
        361
      </div>
      
      <div class="line number362 index361 alt1">
        362
      </div>
      
      <div class="line number363 index362 alt2">
        363
      </div>
      
      <div class="line number364 index363 alt1">
        364
      </div>
      
      <div class="line number365 index364 alt2">
        365
      </div>
      
      <div class="line number366 index365 alt1">
        366
      </div>
      
      <div class="line number367 index366 alt2">
        367
      </div>
      
      <div class="line number368 index367 alt1">
        368
      </div>
      
      <div class="line number369 index368 alt2">
        369
      </div>
      
      <div class="line number370 index369 alt1">
        370
      </div>
      
      <div class="line number371 index370 alt2">
        371
      </div>
      
      <div class="line number372 index371 alt1">
        372
      </div>
      
      <div class="line number373 index372 alt2">
        373
      </div>
      
      <div class="line number374 index373 alt1">
        374
      </div>
      
      <div class="line number375 index374 alt2">
        375
      </div>
      
      <div class="line number376 index375 alt1">
        376
      </div>
      
      <div class="line number377 index376 alt2">
        377
      </div>
      
      <div class="line number378 index377 alt1">
        378
      </div>
      
      <div class="line number379 index378 alt2">
        379
      </div>
      
      <div class="line number380 index379 alt1">
        380
      </div>
      
      <div class="line number381 index380 alt2">
        381
      </div>
      
      <div class="line number382 index381 alt1">
        382
      </div>
      
      <div class="line number383 index382 alt2">
        383
      </div>
      
      <div class="line number384 index383 alt1">
        384
      </div>
      
      <div class="line number385 index384 alt2">
        385
      </div>
      
      <div class="line number386 index385 alt1">
        386
      </div>
      
      <div class="line number387 index386 alt2">
        387
      </div>
      
      <div class="line number388 index387 alt1">
        388
      </div>
      
      <div class="line number389 index388 alt2">
        389
      </div>
      
      <div class="line number390 index389 alt1">
        390
      </div>
      
      <div class="line number391 index390 alt2">
        391
      </div>
      
      <div class="line number392 index391 alt1">
        392
      </div>
      
      <div class="line number393 index392 alt2">
        393
      </div>
      
      <div class="line number394 index393 alt1">
        394
      </div>
      
      <div class="line number395 index394 alt2">
        395
      </div>
      
      <div class="line number396 index395 alt1">
        396
      </div>
      
      <div class="line number397 index396 alt2">
        397
      </div>
      
      <div class="line number398 index397 alt1">
        398
      </div>
      
      <div class="line number399 index398 alt2">
        399
      </div>
      
      <div class="line number400 index399 alt1">
        400
      </div>
      
      <div class="line number401 index400 alt2">
        401
      </div>
      
      <div class="line number402 index401 alt1">
        402
      </div>
      
      <div class="line number403 index402 alt2">
        403
      </div>
      
      <div class="line number404 index403 alt1">
        404
      </div>
      
      <div class="line number405 index404 alt2">
        405
      </div>
      
      <div class="line number406 index405 alt1">
        406
      </div>
      
      <div class="line number407 index406 alt2">
        407
      </div>
      
      <div class="line number408 index407 alt1">
        408
      </div>
      
      <div class="line number409 index408 alt2">
        409
      </div>
      
      <div class="line number410 index409 alt1">
        410
      </div>
      
      <div class="line number411 index410 alt2">
        411
      </div>
      
      <div class="line number412 index411 alt1">
        412
      </div>
      
      <div class="line number413 index412 alt2">
        413
      </div>
      
      <div class="line number414 index413 alt1">
        414
      </div>
      
      <div class="line number415 index414 alt2">
        415
      </div>
      
      <div class="line number416 index415 alt1">
        416
      </div>
      
      <div class="line number417 index416 alt2">
        417
      </div>
      
      <div class="line number418 index417 alt1">
        418
      </div>
      
      <div class="line number419 index418 alt2">
        419
      </div>
      
      <div class="line number420 index419 alt1">
        420
      </div>
      
      <div class="line number421 index420 alt2">
        421
      </div>
      
      <div class="line number422 index421 alt1">
        422
      </div>
      
      <div class="line number423 index422 alt2">
        423
      </div>
      
      <div class="line number424 index423 alt1">
        424
      </div>
      
      <div class="line number425 index424 alt2">
        425
      </div>
      
      <div class="line number426 index425 alt1">
        426
      </div>
      
      <div class="line number427 index426 alt2">
        427
      </div>
      
      <div class="line number428 index427 alt1">
        428
      </div>
      
      <div class="line number429 index428 alt2">
        429
      </div>
      
      <div class="line number430 index429 alt1">
        430
      </div>
      
      <div class="line number431 index430 alt2">
        431
      </div>
      
      <div class="line number432 index431 alt1">
        432
      </div>
      
      <div class="line number433 index432 alt2">
        433
      </div>
      
      <div class="line number434 index433 alt1">
        434
      </div>
      
      <div class="line number435 index434 alt2">
        435
      </div>
      
      <div class="line number436 index435 alt1">
        436
      </div>
      
      <div class="line number437 index436 alt2">
        437
      </div>
      
      <div class="line number438 index437 alt1">
        438
      </div>
      
      <div class="line number439 index438 alt2">
        439
      </div>
      
      <div class="line number440 index439 alt1">
        440
      </div>
      
      <div class="line number441 index440 alt2">
        441
      </div>
      
      <div class="line number442 index441 alt1">
        442
      </div>
      
      <div class="line number443 index442 alt2">
        443
      </div>
      
      <div class="line number444 index443 alt1">
        444
      </div>
      
      <div class="line number445 index444 alt2">
        445
      </div>
      
      <div class="line number446 index445 alt1">
        446
      </div>
      
      <div class="line number447 index446 alt2">
        447
      </div>
      
      <div class="line number448 index447 alt1">
        448
      </div>
      
      <div class="line number449 index448 alt2">
        449
      </div>
      
      <div class="line number450 index449 alt1">
        450
      </div>
      
      <div class="line number451 index450 alt2">
        451
      </div>
      
      <div class="line number452 index451 alt1">
        452
      </div>
      
      <div class="line number453 index452 alt2">
        453
      </div>
      
      <div class="line number454 index453 alt1">
        454
      </div>
      
      <div class="line number455 index454 alt2">
        455
      </div>
      
      <div class="line number456 index455 alt1">
        456
      </div>
      
      <div class="line number457 index456 alt2">
        457
      </div>
      
      <div class="line number458 index457 alt1">
        458
      </div>
      
      <div class="line number459 index458 alt2">
        459
      </div>
      
      <div class="line number460 index459 alt1">
        460
      </div>
      
      <div class="line number461 index460 alt2">
        461
      </div>
      
      <div class="line number462 index461 alt1">
        462
      </div>
      
      <div class="line number463 index462 alt2">
        463
      </div>
      
      <div class="line number464 index463 alt1">
        464
      </div>
      
      <div class="line number465 index464 alt2">
        465
      </div>
      
      <div class="line number466 index465 alt1">
        466
      </div>
      
      <div class="line number467 index466 alt2">
        467
      </div>
      
      <div class="line number468 index467 alt1">
        468
      </div>
      
      <div class="line number469 index468 alt2">
        469
      </div>
      
      <div class="line number470 index469 alt1">
        470
      </div>
      
      <div class="line number471 index470 alt2">
        471
      </div>
      
      <div class="line number472 index471 alt1">
        472
      </div>
      
      <div class="line number473 index472 alt2">
        473
      </div>
      
      <div class="line number474 index473 alt1">
        474
      </div>
      
      <div class="line number475 index474 alt2">
        475
      </div>
      
      <div class="line number476 index475 alt1">
        476
      </div>
      
      <div class="line number477 index476 alt2">
        477
      </div>
      
      <div class="line number478 index477 alt1">
        478
      </div>
      
      <div class="line number479 index478 alt2">
        479
      </div>
      
      <div class="line number480 index479 alt1">
        480
      </div>
      
      <div class="line number481 index480 alt2">
        481
      </div>
      
      <div class="line number482 index481 alt1">
        482
      </div>
      
      <div class="line number483 index482 alt2">
        483
      </div>
      
      <div class="line number484 index483 alt1">
        484
      </div>
      
      <div class="line number485 index484 alt2">
        485
      </div>
      
      <div class="line number486 index485 alt1">
        486
      </div>
      
      <div class="line number487 index486 alt2">
        487
      </div>
      
      <div class="line number488 index487 alt1">
        488
      </div>
      
      <div class="line number489 index488 alt2">
        489
      </div>
      
      <div class="line number490 index489 alt1">
        490
      </div>
      
      <div class="line number491 index490 alt2">
        491
      </div>
      
      <div class="line number492 index491 alt1">
        492
      </div>
      
      <div class="line number493 index492 alt2">
        493
      </div>
      
      <div class="line number494 index493 alt1">
        494
      </div>
      
      <div class="line number495 index494 alt2">
        495
      </div>
      
      <div class="line number496 index495 alt1">
        496
      </div>
      
      <div class="line number497 index496 alt2">
        497
      </div>
      
      <div class="line number498 index497 alt1">
        498
      </div>
      
      <div class="line number499 index498 alt2">
        499
      </div>
      
      <div class="line number500 index499 alt1">
        500
      </div>
      
      <div class="line number501 index500 alt2">
        501
      </div>
      
      <div class="line number502 index501 alt1">
        502
      </div>
      
      <div class="line number503 index502 alt2">
        503
      </div>
      
      <div class="line number504 index503 alt1">
        504
      </div>
      
      <div class="line number505 index504 alt2">
        505
      </div>
      
      <div class="line number506 index505 alt1">
        506
      </div>
      
      <div class="line number507 index506 alt2">
        507
      </div>
      
      <div class="line number508 index507 alt1">
        508
      </div>
      
      <div class="line number509 index508 alt2">
        509
      </div>
      
      <div class="line number510 index509 alt1">
        510
      </div>
      
      <div class="line number511 index510 alt2">
        511
      </div>
      
      <div class="line number512 index511 alt1">
        512
      </div>
      
      <div class="line number513 index512 alt2">
        513
      </div>
      
      <div class="line number514 index513 alt1">
        514
      </div>
      
      <div class="line number515 index514 alt2">
        515
      </div>
      
      <div class="line number516 index515 alt1">
        516
      </div>
      
      <div class="line number517 index516 alt2">
        517
      </div>
      
      <div class="line number518 index517 alt1">
        518
      </div>
      
      <div class="line number519 index518 alt2">
        519
      </div>
      
      <div class="line number520 index519 alt1">
        520
      </div>
      
      <div class="line number521 index520 alt2">
        521
      </div>
      
      <div class="line number522 index521 alt1">
        522
      </div>
      
      <div class="line number523 index522 alt2">
        523
      </div>
      
      <div class="line number524 index523 alt1">
        524
      </div>
      
      <div class="line number525 index524 alt2">
        525
      </div>
      
      <div class="line number526 index525 alt1">
        526
      </div>
      
      <div class="line number527 index526 alt2">
        527
      </div>
      
      <div class="line number528 index527 alt1">
        528
      </div>
      
      <div class="line number529 index528 alt2">
        529
      </div>
      
      <div class="line number530 index529 alt1">
        530
      </div>
      
      <div class="line number531 index530 alt2">
        531
      </div>
      
      <div class="line number532 index531 alt1">
        532
      </div>
      
      <div class="line number533 index532 alt2">
        533
      </div>
      
      <div class="line number534 index533 alt1">
        534
      </div>
      
      <div class="line number535 index534 alt2">
        535
      </div>
      
      <div class="line number536 index535 alt1">
        536
      </div>
      
      <div class="line number537 index536 alt2">
        537
      </div>
      
      <div class="line number538 index537 alt1">
        538
      </div>
      
      <div class="line number539 index538 alt2">
        539
      </div>
      
      <div class="line number540 index539 alt1">
        540
      </div>
      
      <div class="line number541 index540 alt2">
        541
      </div>
      
      <div class="line number542 index541 alt1">
        542
      </div>
      
      <div class="line number543 index542 alt2">
        543
      </div>
      
      <div class="line number544 index543 alt1">
        544
      </div>
      
      <div class="line number545 index544 alt2">
        545
      </div>
      
      <div class="line number546 index545 alt1">
        546
      </div>
      
      <div class="line number547 index546 alt2">
        547
      </div>
      
      <div class="line number548 index547 alt1">
        548
      </div>
      
      <div class="line number549 index548 alt2">
        549
      </div>
      
      <div class="line number550 index549 alt1">
        550
      </div>
      
      <div class="line number551 index550 alt2">
        551
      </div>
      
      <div class="line number552 index551 alt1">
        552
      </div>
      
      <div class="line number553 index552 alt2">
        553
      </div>
      
      <div class="line number554 index553 alt1">
        554
      </div>
      
      <div class="line number555 index554 alt2">
        555
      </div>
      
      <div class="line number556 index555 alt1">
        556
      </div>
      
      <div class="line number557 index556 alt2">
        557
      </div>
      
      <div class="line number558 index557 alt1">
        558
      </div>
      
      <div class="line number559 index558 alt2">
        559
      </div>
      
      <div class="line number560 index559 alt1">
        560
      </div>
      
      <div class="line number561 index560 alt2">
        561
      </div>
      
      <div class="line number562 index561 alt1">
        562
      </div>
      
      <div class="line number563 index562 alt2">
        563
      </div>
      
      <div class="line number564 index563 alt1">
        564
      </div>
      
      <div class="line number565 index564 alt2">
        565
      </div>
      
      <div class="line number566 index565 alt1">
        566
      </div>
      
      <div class="line number567 index566 alt2">
        567
      </div>
      
      <div class="line number568 index567 alt1">
        568
      </div>
      
      <div class="line number569 index568 alt2">
        569
      </div>
      
      <div class="line number570 index569 alt1">
        570
      </div>
      
      <div class="line number571 index570 alt2">
        571
      </div>
      
      <div class="line number572 index571 alt1">
        572
      </div>
      
      <div class="line number573 index572 alt2">
        573
      </div>
      
      <div class="line number574 index573 alt1">
        574
      </div>
      
      <div class="line number575 index574 alt2">
        575
      </div>
      
      <div class="line number576 index575 alt1">
        576
      </div>
      
      <div class="line number577 index576 alt2">
        577
      </div>
      
      <div class="line number578 index577 alt1">
        578
      </div>
      
      <div class="line number579 index578 alt2">
        579
      </div>
      
      <div class="line number580 index579 alt1">
        580
      </div>
      
      <div class="line number581 index580 alt2">
        581
      </div>
      
      <div class="line number582 index581 alt1">
        582
      </div>
      
      <div class="line number583 index582 alt2">
        583
      </div>
      
      <div class="line number584 index583 alt1">
        584
      </div>
      
      <div class="line number585 index584 alt2">
        585
      </div>
      
      <div class="line number586 index585 alt1">
        586
      </div>
      
      <div class="line number587 index586 alt2">
        587
      </div>
      
      <div class="line number588 index587 alt1">
        588
      </div>
      
      <div class="line number589 index588 alt2">
        589
      </div>
      
      <div class="line number590 index589 alt1">
        590
      </div>
      
      <div class="line number591 index590 alt2">
        591
      </div>
      
      <div class="line number592 index591 alt1">
        592
      </div>
      
      <div class="line number593 index592 alt2">
        593
      </div>
      
      <div class="line number594 index593 alt1">
        594
      </div>
      
      <div class="line number595 index594 alt2">
        595
      </div>
      
      <div class="line number596 index595 alt1">
        596
      </div>
      
      <div class="line number597 index596 alt2">
        597
      </div>
      
      <div class="line number598 index597 alt1">
        598
      </div>
      
      <div class="line number599 index598 alt2">
        599
      </div>
      
      <div class="line number600 index599 alt1">
        600
      </div>
      
      <div class="line number601 index600 alt2">
        601
      </div>
      
      <div class="line number602 index601 alt1">
        602
      </div>
      
      <div class="line number603 index602 alt2">
        603
      </div>
      
      <div class="line number604 index603 alt1">
        604
      </div>
      
      <div class="line number605 index604 alt2">
        605
      </div>
      
      <div class="line number606 index605 alt1">
        606
      </div>
      
      <div class="line number607 index606 alt2">
        607
      </div>
      
      <div class="line number608 index607 alt1">
        608
      </div>
      
      <div class="line number609 index608 alt2">
        609
      </div>
      
      <div class="line number610 index609 alt1">
        610
      </div>
      
      <div class="line number611 index610 alt2">
        611
      </div>
      
      <div class="line number612 index611 alt1">
        612
      </div>
      
      <div class="line number613 index612 alt2">
        613
      </div>
      
      <div class="line number614 index613 alt1">
        614
      </div>
      
      <div class="line number615 index614 alt2">
        615
      </div>
      
      <div class="line number616 index615 alt1">
        616
      </div>
      
      <div class="line number617 index616 alt2">
        617
      </div>
      
      <div class="line number618 index617 alt1">
        618
      </div>
      
      <div class="line number619 index618 alt2">
        619
      </div>
      
      <div class="line number620 index619 alt1">
        620
      </div>
      
      <div class="line number621 index620 alt2">
        621
      </div>
      
      <div class="line number622 index621 alt1">
        622
      </div>
      
      <div class="line number623 index622 alt2">
        623
      </div>
      
      <div class="line number624 index623 alt1">
        624
      </div>
      
      <div class="line number625 index624 alt2">
        625
      </div>
      
      <div class="line number626 index625 alt1">
        626
      </div>
      
      <div class="line number627 index626 alt2">
        627
      </div>
      
      <div class="line number628 index627 alt1">
        628
      </div>
      
      <div class="line number629 index628 alt2">
        629
      </div>
      
      <div class="line number630 index629 alt1">
        630
      </div>
      
      <div class="line number631 index630 alt2">
        631
      </div>
      
      <div class="line number632 index631 alt1">
        632
      </div>
      
      <div class="line number633 index632 alt2">
        633
      </div>
      
      <div class="line number634 index633 alt1">
        634
      </div>
      
      <div class="line number635 index634 alt2">
        635
      </div>
      
      <div class="line number636 index635 alt1">
        636
      </div>
      
      <div class="line number637 index636 alt2">
        637
      </div>
      
      <div class="line number638 index637 alt1">
        638
      </div>
      
      <div class="line number639 index638 alt2">
        639
      </div>
      
      <div class="line number640 index639 alt1">
        640
      </div>
      
      <div class="line number641 index640 alt2">
        641
      </div>
      
      <div class="line number642 index641 alt1">
        642
      </div>
      
      <div class="line number643 index642 alt2">
        643
      </div>
      
      <div class="line number644 index643 alt1">
        644
      </div>
      
      <div class="line number645 index644 alt2">
        645
      </div>
      
      <div class="line number646 index645 alt1">
        646
      </div>
      
      <div class="line number647 index646 alt2">
        647
      </div>
      
      <div class="line number648 index647 alt1">
        648
      </div>
      
      <div class="line number649 index648 alt2">
        649
      </div>
      
      <div class="line number650 index649 alt1">
        650
      </div>
      
      <div class="line number651 index650 alt2">
        651
      </div>
      
      <div class="line number652 index651 alt1">
        652
      </div>
      
      <div class="line number653 index652 alt2">
        653
      </div>
      
      <div class="line number654 index653 alt1">
        654
      </div>
      
      <div class="line number655 index654 alt2">
        655
      </div>
      
      <div class="line number656 index655 alt1">
        656
      </div>
      
      <div class="line number657 index656 alt2">
        657
      </div>
      
      <div class="line number658 index657 alt1">
        658
      </div>
      
      <div class="line number659 index658 alt2">
        659
      </div>
      
      <div class="line number660 index659 alt1">
        660
      </div>
      
      <div class="line number661 index660 alt2">
        661
      </div>
      
      <div class="line number662 index661 alt1">
        662
      </div>
      
      <div class="line number663 index662 alt2">
        663
      </div>
      
      <div class="line number664 index663 alt1">
        664
      </div>
      
      <div class="line number665 index664 alt2">
        665
      </div>
      
      <div class="line number666 index665 alt1">
        666
      </div>
      
      <div class="line number667 index666 alt2">
        667
      </div>
      
      <div class="line number668 index667 alt1">
        668
      </div>
      
      <div class="line number669 index668 alt2">
        669
      </div>
      
      <div class="line number670 index669 alt1">
        670
      </div>
      
      <div class="line number671 index670 alt2">
        671
      </div>
      
      <div class="line number672 index671 alt1">
        672
      </div>
      
      <div class="line number673 index672 alt2">
        673
      </div>
      
      <div class="line number674 index673 alt1">
        674
      </div>
      
      <div class="line number675 index674 alt2">
        675
      </div>
      
      <div class="line number676 index675 alt1">
        676
      </div>
      
      <div class="line number677 index676 alt2">
        677
      </div>
      
      <div class="line number678 index677 alt1">
        678
      </div>
      
      <div class="line number679 index678 alt2">
        679
      </div>
      
      <div class="line number680 index679 alt1">
        680
      </div>
      
      <div class="line number681 index680 alt2">
        681
      </div>
      
      <div class="line number682 index681 alt1">
        682
      </div>
      
      <div class="line number683 index682 alt2">
        683
      </div>
      
      <div class="line number684 index683 alt1">
        684
      </div>
      
      <div class="line number685 index684 alt2">
        685
      </div>
      
      <div class="line number686 index685 alt1">
        686
      </div>
      
      <div class="line number687 index686 alt2">
        687
      </div>
      
      <div class="line number688 index687 alt1">
        688
      </div>
      
      <div class="line number689 index688 alt2">
        689
      </div>
      
      <div class="line number690 index689 alt1">
        690
      </div>
      
      <div class="line number691 index690 alt2">
        691
      </div>
      
      <div class="line number692 index691 alt1">
        692
      </div>
      
      <div class="line number693 index692 alt2">
        693
      </div>
      
      <div class="line number694 index693 alt1">
        694
      </div>
      
      <div class="line number695 index694 alt2">
        695
      </div>
      
      <div class="line number696 index695 alt1">
        696
      </div>
      
      <div class="line number697 index696 alt2">
        697
      </div>
      
      <div class="line number698 index697 alt1">
        698
      </div>
      
      <div class="line number699 index698 alt2">
        699
      </div>
      
      <div class="line number700 index699 alt1">
        700
      </div>
      
      <div class="line number701 index700 alt2">
        701
      </div>
      
      <div class="line number702 index701 alt1">
        702
      </div>
      
      <div class="line number703 index702 alt2">
        703
      </div>
      
      <div class="line number704 index703 alt1">
        704
      </div>
      
      <div class="line number705 index704 alt2">
        705
      </div>
      
      <div class="line number706 index705 alt1">
        706
      </div>
      
      <div class="line number707 index706 alt2">
        707
      </div>
      
      <div class="line number708 index707 alt1">
        708
      </div>
      
      <div class="line number709 index708 alt2">
        709
      </div>
      
      <div class="line number710 index709 alt1">
        710
      </div>
      
      <div class="line number711 index710 alt2">
        711
      </div>
      
      <div class="line number712 index711 alt1">
        712
      </div>
      
      <div class="line number713 index712 alt2">
        713
      </div>
      
      <div class="line number714 index713 alt1">
        714
      </div>
      
      <div class="line number715 index714 alt2">
        715
      </div>
      
      <div class="line number716 index715 alt1">
        716
      </div>
      
      <div class="line number717 index716 alt2">
        717
      </div>
      
      <div class="line number718 index717 alt1">
        718
      </div>
      
      <div class="line number719 index718 alt2">
        719
      </div>
      
      <div class="line number720 index719 alt1">
        720
      </div>
      
      <div class="line number721 index720 alt2">
        721
      </div>
      
      <div class="line number722 index721 alt1">
        722
      </div>
      
      <div class="line number723 index722 alt2">
        723
      </div>
      
      <div class="line number724 index723 alt1">
        724
      </div>
      
      <div class="line number725 index724 alt2">
        725
      </div>
      
      <div class="line number726 index725 alt1">
        726
      </div>
      
      <div class="line number727 index726 alt2">
        727
      </div>
      
      <div class="line number728 index727 alt1">
        728
      </div>
      
      <div class="line number729 index728 alt2">
        729
      </div>
      
      <div class="line number730 index729 alt1">
        730
      </div>
      
      <div class="line number731 index730 alt2">
        731
      </div>
      
      <div class="line number732 index731 alt1">
        732
      </div>
      
      <div class="line number733 index732 alt2">
        733
      </div>
      
      <div class="line number734 index733 alt1">
        734
      </div>
      
      <div class="line number735 index734 alt2">
        735
      </div>
      
      <div class="line number736 index735 alt1">
        736
      </div>
      
      <div class="line number737 index736 alt2">
        737
      </div>
      
      <div class="line number738 index737 alt1">
        738
      </div>
      
      <div class="line number739 index738 alt2">
        739
      </div>
      
      <div class="line number740 index739 alt1">
        740
      </div>
      
      <div class="line number741 index740 alt2">
        741
      </div>
      
      <div class="line number742 index741 alt1">
        742
      </div>
      
      <div class="line number743 index742 alt2">
        743
      </div>
      
      <div class="line number744 index743 alt1">
        744
      </div>
      
      <div class="line number745 index744 alt2">
        745
      </div>
      
      <div class="line number746 index745 alt1">
        746
      </div>
      
      <div class="line number747 index746 alt2">
        747
      </div>
      
      <div class="line number748 index747 alt1">
        748
      </div>
      
      <div class="line number749 index748 alt2">
        749
      </div>
      
      <div class="line number750 index749 alt1">
        750
      </div>
      
      <div class="line number751 index750 alt2">
        751
      </div>
      
      <div class="line number752 index751 alt1">
        752
      </div>
      
      <div class="line number753 index752 alt2">
        753
      </div>
      
      <div class="line number754 index753 alt1">
        754
      </div>
      
      <div class="line number755 index754 alt2">
        755
      </div>
      
      <div class="line number756 index755 alt1">
        756
      </div>
      
      <div class="line number757 index756 alt2">
        757
      </div>
      
      <div class="line number758 index757 alt1">
        758
      </div>
      
      <div class="line number759 index758 alt2">
        759
      </div>
      
      <div class="line number760 index759 alt1">
        760
      </div>
      
      <div class="line number761 index760 alt2">
        761
      </div>
      
      <div class="line number762 index761 alt1">
        762
      </div>
      
      <div class="line number763 index762 alt2">
        763
      </div>
      
      <div class="line number764 index763 alt1">
        764
      </div>
      
      <div class="line number765 index764 alt2">
        765
      </div>
      
      <div class="line number766 index765 alt1">
        766
      </div>
      
      <div class="line number767 index766 alt2">
        767
      </div>
      
      <div class="line number768 index767 alt1">
        768
      </div>
      
      <div class="line number769 index768 alt2">
        769
      </div>
      
      <div class="line number770 index769 alt1">
        770
      </div>
      
      <div class="line number771 index770 alt2">
        771
      </div>
      
      <div class="line number772 index771 alt1">
        772
      </div>
      
      <div class="line number773 index772 alt2">
        773
      </div>
      
      <div class="line number774 index773 alt1">
        774
      </div>
      
      <div class="line number775 index774 alt2">
        775
      </div>
      
      <div class="line number776 index775 alt1">
        776
      </div>
      
      <div class="line number777 index776 alt2">
        777
      </div>
      
      <div class="line number778 index777 alt1">
        778
      </div>
      
      <div class="line number779 index778 alt2">
        779
      </div>
      
      <div class="line number780 index779 alt1">
        780
      </div>
      
      <div class="line number781 index780 alt2">
        781
      </div>
      
      <div class="line number782 index781 alt1">
        782
      </div>
      
      <div class="line number783 index782 alt2">
        783
      </div>
      
      <div class="line number784 index783 alt1">
        784
      </div>
      
      <div class="line number785 index784 alt2">
        785
      </div>
      
      <div class="line number786 index785 alt1">
        786
      </div>
      
      <div class="line number787 index786 alt2">
        787
      </div>
      
      <div class="line number788 index787 alt1">
        788
      </div>
      
      <div class="line number789 index788 alt2">
        789
      </div>
      
      <div class="line number790 index789 alt1">
        790
      </div>
      
      <div class="line number791 index790 alt2">
        791
      </div>
      
      <div class="line number792 index791 alt1">
        792
      </div>
      
      <div class="line number793 index792 alt2">
        793
      </div>
      
      <div class="line number794 index793 alt1">
        794
      </div>
      
      <div class="line number795 index794 alt2">
        795
      </div>
      
      <div class="line number796 index795 alt1">
        796
      </div>
      
      <div class="line number797 index796 alt2">
        797
      </div>
      
      <div class="line number798 index797 alt1">
        798
      </div>
      
      <div class="line number799 index798 alt2">
        799
      </div>
      
      <div class="line number800 index799 alt1">
        800
      </div>
      
      <div class="line number801 index800 alt2">
        801
      </div>
      
      <div class="line number802 index801 alt1">
        802
      </div>
      
      <div class="line number803 index802 alt2">
        803
      </div>
      
      <div class="line number804 index803 alt1">
        804
      </div>
      
      <div class="line number805 index804 alt2">
        805
      </div>
      
      <div class="line number806 index805 alt1">
        806
      </div>
      
      <div class="line number807 index806 alt2">
        807
      </div>
      
      <div class="line number808 index807 alt1">
        808
      </div>
      
      <div class="line number809 index808 alt2">
        809
      </div>
      
      <div class="line number810 index809 alt1">
        810
      </div>
      
      <div class="line number811 index810 alt2">
        811
      </div>
      
      <div class="line number812 index811 alt1">
        812
      </div>
      
      <div class="line number813 index812 alt2">
        813
      </div>
      
      <div class="line number814 index813 alt1">
        814
      </div>
      
      <div class="line number815 index814 alt2">
        815
      </div>
      
      <div class="line number816 index815 alt1">
        816
      </div>
      
      <div class="line number817 index816 alt2">
        817
      </div>
      
      <div class="line number818 index817 alt1">
        818
      </div>
      
      <div class="line number819 index818 alt2">
        819
      </div>
      
      <div class="line number820 index819 alt1">
        820
      </div>
      
      <div class="line number821 index820 alt2">
        821
      </div>
      
      <div class="line number822 index821 alt1">
        822
      </div>
      
      <div class="line number823 index822 alt2">
        823
      </div>
      
      <div class="line number824 index823 alt1">
        824
      </div>
      
      <div class="line number825 index824 alt2">
        825
      </div>
      
      <div class="line number826 index825 alt1">
        826
      </div>
      
      <div class="line number827 index826 alt2">
        827
      </div>
      
      <div class="line number828 index827 alt1">
        828
      </div>
      
      <div class="line number829 index828 alt2">
        829
      </div>
      
      <div class="line number830 index829 alt1">
        830
      </div>
      
      <div class="line number831 index830 alt2">
        831
      </div>
      
      <div class="line number832 index831 alt1">
        832
      </div>
      
      <div class="line number833 index832 alt2">
        833
      </div>
      
      <div class="line number834 index833 alt1">
        834
      </div>
      
      <div class="line number835 index834 alt2">
        835
      </div>
      
      <div class="line number836 index835 alt1">
        836
      </div>
      
      <div class="line number837 index836 alt2">
        837
      </div>
      
      <div class="line number838 index837 alt1">
        838
      </div>
      
      <div class="line number839 index838 alt2">
        839
      </div>
      
      <div class="line number840 index839 alt1">
        840
      </div>
      
      <div class="line number841 index840 alt2">
        841
      </div>
      
      <div class="line number842 index841 alt1">
        842
      </div>
      
      <div class="line number843 index842 alt2">
        843
      </div>
      
      <div class="line number844 index843 alt1">
        844
      </div>
      
      <div class="line number845 index844 alt2">
        845
      </div>
      
      <div class="line number846 index845 alt1">
        846
      </div>
      
      <div class="line number847 index846 alt2">
        847
      </div>
      
      <div class="line number848 index847 alt1">
        848
      </div>
      
      <div class="line number849 index848 alt2">
        849
      </div>
      
      <div class="line number850 index849 alt1">
        850
      </div>
      
      <div class="line number851 index850 alt2">
        851
      </div>
      
      <div class="line number852 index851 alt1">
        852
      </div>
      
      <div class="line number853 index852 alt2">
        853
      </div>
      
      <div class="line number854 index853 alt1">
        854
      </div>
      
      <div class="line number855 index854 alt2">
        855
      </div>
      
      <div class="line number856 index855 alt1">
        856
      </div>
      
      <div class="line number857 index856 alt2">
        857
      </div>
      
      <div class="line number858 index857 alt1">
        858
      </div>
      
      <div class="line number859 index858 alt2">
        859
      </div>
      
      <div class="line number860 index859 alt1">
        860
      </div>
      
      <div class="line number861 index860 alt2">
        861
      </div>
      
      <div class="line number862 index861 alt1">
        862
      </div>
      
      <div class="line number863 index862 alt2">
        863
      </div>
      
      <div class="line number864 index863 alt1">
        864
      </div>
      
      <div class="line number865 index864 alt2">
        865
      </div>
      
      <div class="line number866 index865 alt1">
        866
      </div>
      
      <div class="line number867 index866 alt2">
        867
      </div>
      
      <div class="line number868 index867 alt1">
        868
      </div>
      
      <div class="line number869 index868 alt2">
        869
      </div>
      
      <div class="line number870 index869 alt1">
        870
      </div>
      
      <div class="line number871 index870 alt2">
        871
      </div>
      
      <div class="line number872 index871 alt1">
        872
      </div>
      
      <div class="line number873 index872 alt2">
        873
      </div>
      
      <div class="line number874 index873 alt1">
        874
      </div>
      
      <div class="line number875 index874 alt2">
        875
      </div>
      
      <div class="line number876 index875 alt1">
        876
      </div>
      
      <div class="line number877 index876 alt2">
        877
      </div>
      
      <div class="line number878 index877 alt1">
        878
      </div>
      
      <div class="line number879 index878 alt2">
        879
      </div>
      
      <div class="line number880 index879 alt1">
        880
      </div>
      
      <div class="line number881 index880 alt2">
        881
      </div>
      
      <div class="line number882 index881 alt1">
        882
      </div>
      
      <div class="line number883 index882 alt2">
        883
      </div>
      
      <div class="line number884 index883 alt1">
        884
      </div>
      
      <div class="line number885 index884 alt2">
        885
      </div>
      
      <div class="line number886 index885 alt1">
        886
      </div>
      
      <div class="line number887 index886 alt2">
        887
      </div>
      
      <div class="line number888 index887 alt1">
        888
      </div>
      
      <div class="line number889 index888 alt2">
        889
      </div>
      
      <div class="line number890 index889 alt1">
        890
      </div>
      
      <div class="line number891 index890 alt2">
        891
      </div>
      
      <div class="line number892 index891 alt1">
        892
      </div>
      
      <div class="line number893 index892 alt2">
        893
      </div>
      
      <div class="line number894 index893 alt1">
        894
      </div>
      
      <div class="line number895 index894 alt2">
        895
      </div>
      
      <div class="line number896 index895 alt1">
        896
      </div>
      
      <div class="line number897 index896 alt2">
        897
      </div>
      
      <div class="line number898 index897 alt1">
        898
      </div>
      
      <div class="line number899 index898 alt2">
        899
      </div>
      
      <div class="line number900 index899 alt1">
        900
      </div>
      
      <div class="line number901 index900 alt2">
        901
      </div>
      
      <div class="line number902 index901 alt1">
        902
      </div>
      
      <div class="line number903 index902 alt2">
        903
      </div>
      
      <div class="line number904 index903 alt1">
        904
      </div>
      
      <div class="line number905 index904 alt2">
        905
      </div>
      
      <div class="line number906 index905 alt1">
        906
      </div>
      
      <div class="line number907 index906 alt2">
        907
      </div>
      
      <div class="line number908 index907 alt1">
        908
      </div>
      
      <div class="line number909 index908 alt2">
        909
      </div>
      
      <div class="line number910 index909 alt1">
        910
      </div>
      
      <div class="line number911 index910 alt2">
        911
      </div>
      
      <div class="line number912 index911 alt1">
        912
      </div>
      
      <div class="line number913 index912 alt2">
        913
      </div>
      
      <div class="line number914 index913 alt1">
        914
      </div>
      
      <div class="line number915 index914 alt2">
        915
      </div>
      
      <div class="line number916 index915 alt1">
        916
      </div>
      
      <div class="line number917 index916 alt2">
        917
      </div>
      
      <div class="line number918 index917 alt1">
        918
      </div>
      
      <div class="line number919 index918 alt2">
        919
      </div>
      
      <div class="line number920 index919 alt1">
        920
      </div>
      
      <div class="line number921 index920 alt2">
        921
      </div>
      
      <div class="line number922 index921 alt1">
        922
      </div>
      
      <div class="line number923 index922 alt2">
        923
      </div>
      
      <div class="line number924 index923 alt1">
        924
      </div>
      
      <div class="line number925 index924 alt2">
        925
      </div>
      
      <div class="line number926 index925 alt1">
        926
      </div>
      
      <div class="line number927 index926 alt2">
        927
      </div>
      
      <div class="line number928 index927 alt1">
        928
      </div>
      
      <div class="line number929 index928 alt2">
        929
      </div>
      
      <div class="line number930 index929 alt1">
        930
      </div>
      
      <div class="line number931 index930 alt2">
        931
      </div>
      
      <div class="line number932 index931 alt1">
        932
      </div>
      
      <div class="line number933 index932 alt2">
        933
      </div>
      
      <div class="line number934 index933 alt1">
        934
      </div>
      
      <div class="line number935 index934 alt2">
        935
      </div>
      
      <div class="line number936 index935 alt1">
        936
      </div>
      
      <div class="line number937 index936 alt2">
        937
      </div>
      
      <div class="line number938 index937 alt1">
        938
      </div>
      
      <div class="line number939 index938 alt2">
        939
      </div>
      
      <div class="line number940 index939 alt1">
        940
      </div>
      
      <div class="line number941 index940 alt2">
        941
      </div>
      
      <div class="line number942 index941 alt1">
        942
      </div>
      
      <div class="line number943 index942 alt2">
        943
      </div>
      
      <div class="line number944 index943 alt1">
        944
      </div>
      
      <div class="line number945 index944 alt2">
        945
      </div>
      
      <div class="line number946 index945 alt1">
        946
      </div>
      
      <div class="line number947 index946 alt2">
        947
      </div>
      
      <div class="line number948 index947 alt1">
        948
      </div>
      
      <div class="line number949 index948 alt2">
        949
      </div>
      
      <div class="line number950 index949 alt1">
        950
      </div>
      
      <div class="line number951 index950 alt2">
        951
      </div>
      
      <div class="line number952 index951 alt1">
        952
      </div>
      
      <div class="line number953 index952 alt2">
        953
      </div>
      
      <div class="line number954 index953 alt1">
        954
      </div>
      
      <div class="line number955 index954 alt2">
        955
      </div>
      
      <div class="line number956 index955 alt1">
        956
      </div>
      
      <div class="line number957 index956 alt2">
        957
      </div>
      
      <div class="line number958 index957 alt1">
        958
      </div>
      
      <div class="line number959 index958 alt2">
        959
      </div>
      
      <div class="line number960 index959 alt1">
        960
      </div>
      
      <div class="line number961 index960 alt2">
        961
      </div>
      
      <div class="line number962 index961 alt1">
        962
      </div>
      
      <div class="line number963 index962 alt2">
        963
      </div>
      
      <div class="line number964 index963 alt1">
        964
      </div>
      
      <div class="line number965 index964 alt2">
        965
      </div>
      
      <div class="line number966 index965 alt1">
        966
      </div>
      
      <div class="line number967 index966 alt2">
        967
      </div>
      
      <div class="line number968 index967 alt1">
        968
      </div>
      
      <div class="line number969 index968 alt2">
        969
      </div>
      
      <div class="line number970 index969 alt1">
        970
      </div>
      
      <div class="line number971 index970 alt2">
        971
      </div>
      
      <div class="line number972 index971 alt1">
        972
      </div>
      
      <div class="line number973 index972 alt2">
        973
      </div>
      
      <div class="line number974 index973 alt1">
        974
      </div>
      
      <div class="line number975 index974 alt2">
        975
      </div>
      
      <div class="line number976 index975 alt1">
        976
      </div>
      
      <div class="line number977 index976 alt2">
        977
      </div>
      
      <div class="line number978 index977 alt1">
        978
      </div>
      
      <div class="line number979 index978 alt2">
        979
      </div>
      
      <div class="line number980 index979 alt1">
        980
      </div>
      
      <div class="line number981 index980 alt2">
        981
      </div>
      
      <div class="line number982 index981 alt1">
        982
      </div>
      
      <div class="line number983 index982 alt2">
        983
      </div>
      
      <div class="line number984 index983 alt1">
        984
      </div>
      
      <div class="line number985 index984 alt2">
        985
      </div>
      
      <div class="line number986 index985 alt1">
        986
      </div>
      
      <div class="line number987 index986 alt2">
        987
      </div>
      
      <div class="line number988 index987 alt1">
        988
      </div>
      
      <div class="line number989 index988 alt2">
        989
      </div>
      
      <div class="line number990 index989 alt1">
        990
      </div>
      
      <div class="line number991 index990 alt2">
        991
      </div>
      
      <div class="line number992 index991 alt1">
        992
      </div>
      
      <div class="line number993 index992 alt2">
        993
      </div>
      
      <div class="line number994 index993 alt1">
        994
      </div>
      
      <div class="line number995 index994 alt2">
        995
      </div>
      
      <div class="line number996 index995 alt1">
        996
      </div>
      
      <div class="line number997 index996 alt2">
        997
      </div>
      
      <div class="line number998 index997 alt1">
        998
      </div>
      
      <div class="line number999 index998 alt2">
        999
      </div>
      
      <div class="line number1000 index999 alt1">
        1000
      </div>
      
      <div class="line number1001 index1000 alt2">
        1001
      </div>
      
      <div class="line number1002 index1001 alt1">
        1002
      </div>
      
      <div class="line number1003 index1002 alt2">
        1003
      </div>
      
      <div class="line number1004 index1003 alt1">
        1004
      </div>
      
      <div class="line number1005 index1004 alt2">
        1005
      </div>
      
      <div class="line number1006 index1005 alt1">
        1006
      </div>
      
      <div class="line number1007 index1006 alt2">
        1007
      </div>
      
      <div class="line number1008 index1007 alt1">
        1008
      </div>
      
      <div class="line number1009 index1008 alt2">
        1009
      </div>
      
      <div class="line number1010 index1009 alt1">
        1010
      </div>
      
      <div class="line number1011 index1010 alt2">
        1011
      </div>
      
      <div class="line number1012 index1011 alt1">
        1012
      </div>
      
      <div class="line number1013 index1012 alt2">
        1013
      </div>
      
      <div class="line number1014 index1013 alt1">
        1014
      </div>
      
      <div class="line number1015 index1014 alt2">
        1015
      </div>
      
      <div class="line number1016 index1015 alt1">
        1016
      </div>
      
      <div class="line number1017 index1016 alt2">
        1017
      </div>
      
      <div class="line number1018 index1017 alt1">
        1018
      </div>
      
      <div class="line number1019 index1018 alt2">
        1019
      </div>
      
      <div class="line number1020 index1019 alt1">
        1020
      </div>
      
      <div class="line number1021 index1020 alt2">
        1021
      </div>
      
      <div class="line number1022 index1021 alt1">
        1022
      </div>
      
      <div class="line number1023 index1022 alt2">
        1023
      </div>
      
      <div class="line number1024 index1023 alt1">
        1024
      </div>
      
      <div class="line number1025 index1024 alt2">
        1025
      </div>
      
      <div class="line number1026 index1025 alt1">
        1026
      </div>
      
      <div class="line number1027 index1026 alt2">
        1027
      </div>
      
      <div class="line number1028 index1027 alt1">
        1028
      </div>
      
      <div class="line number1029 index1028 alt2">
        1029
      </div>
      
      <div class="line number1030 index1029 alt1">
        1030
      </div>
      
      <div class="line number1031 index1030 alt2">
        1031
      </div>
      
      <div class="line number1032 index1031 alt1">
        1032
      </div>
      
      <div class="line number1033 index1032 alt2">
        1033
      </div>
      
      <div class="line number1034 index1033 alt1">
        1034
      </div>
      
      <div class="line number1035 index1034 alt2">
        1035
      </div>
      
      <div class="line number1036 index1035 alt1">
        1036
      </div>
      
      <div class="line number1037 index1036 alt2">
        1037
      </div>
      
      <div class="line number1038 index1037 alt1">
        1038
      </div>
      
      <div class="line number1039 index1038 alt2">
        1039
      </div>
      
      <div class="line number1040 index1039 alt1">
        1040
      </div>
      
      <div class="line number1041 index1040 alt2">
        1041
      </div>
      
      <div class="line number1042 index1041 alt1">
        1042
      </div>
      
      <div class="line number1043 index1042 alt2">
        1043
      </div>
      
      <div class="line number1044 index1043 alt1">
        1044
      </div>
      
      <div class="line number1045 index1044 alt2">
        1045
      </div>
      
      <div class="line number1046 index1045 alt1">
        1046
      </div>
      
      <div class="line number1047 index1046 alt2">
        1047
      </div>
      
      <div class="line number1048 index1047 alt1">
        1048
      </div>
      
      <div class="line number1049 index1048 alt2">
        1049
      </div>
      
      <div class="line number1050 index1049 alt1">
        1050
      </div>
      
      <div class="line number1051 index1050 alt2">
        1051
      </div>
      
      <div class="line number1052 index1051 alt1">
        1052
      </div>
      
      <div class="line number1053 index1052 alt2">
        1053
      </div>
      
      <div class="line number1054 index1053 alt1">
        1054
      </div>
      
      <div class="line number1055 index1054 alt2">
        1055
      </div>
      
      <div class="line number1056 index1055 alt1">
        1056
      </div>
      
      <div class="line number1057 index1056 alt2">
        1057
      </div>
      
      <div class="line number1058 index1057 alt1">
        1058
      </div>
      
      <div class="line number1059 index1058 alt2">
        1059
      </div>
      
      <div class="line number1060 index1059 alt1">
        1060
      </div>
      
      <div class="line number1061 index1060 alt2">
        1061
      </div>
      
      <div class="line number1062 index1061 alt1">
        1062
      </div>
      
      <div class="line number1063 index1062 alt2">
        1063
      </div>
      
      <div class="line number1064 index1063 alt1">
        1064
      </div>
      
      <div class="line number1065 index1064 alt2">
        1065
      </div>
      
      <div class="line number1066 index1065 alt1">
        1066
      </div>
      
      <div class="line number1067 index1066 alt2">
        1067
      </div>
      
      <div class="line number1068 index1067 alt1">
        1068
      </div>
      
      <div class="line number1069 index1068 alt2">
        1069
      </div>
      
      <div class="line number1070 index1069 alt1">
        1070
      </div>
      
      <div class="line number1071 index1070 alt2">
        1071
      </div>
      
      <div class="line number1072 index1071 alt1">
        1072
      </div>
      
      <div class="line number1073 index1072 alt2">
        1073
      </div>
      
      <div class="line number1074 index1073 alt1">
        1074
      </div>
      
      <div class="line number1075 index1074 alt2">
        1075
      </div>
      
      <div class="line number1076 index1075 alt1">
        1076
      </div>
      
      <div class="line number1077 index1076 alt2">
        1077
      </div>
      
      <div class="line number1078 index1077 alt1">
        1078
      </div>
      
      <div class="line number1079 index1078 alt2">
        1079
      </div>
      
      <div class="line number1080 index1079 alt1">
        1080
      </div>
      
      <div class="line number1081 index1080 alt2">
        1081
      </div>
      
      <div class="line number1082 index1081 alt1">
        1082
      </div>
      
      <div class="line number1083 index1082 alt2">
        1083
      </div>
      
      <div class="line number1084 index1083 alt1">
        1084
      </div>
      
      <div class="line number1085 index1084 alt2">
        1085
      </div>
      
      <div class="line number1086 index1085 alt1">
        1086
      </div>
      
      <div class="line number1087 index1086 alt2">
        1087
      </div>
      
      <div class="line number1088 index1087 alt1">
        1088
      </div>
      
      <div class="line number1089 index1088 alt2">
        1089
      </div>
      
      <div class="line number1090 index1089 alt1">
        1090
      </div>
      
      <div class="line number1091 index1090 alt2">
        1091
      </div>
      
      <div class="line number1092 index1091 alt1">
        1092
      </div>
      
      <div class="line number1093 index1092 alt2">
        1093
      </div>
      
      <div class="line number1094 index1093 alt1">
        1094
      </div>
      
      <div class="line number1095 index1094 alt2">
        1095
      </div>
      
      <div class="line number1096 index1095 alt1">
        1096
      </div>
      
      <div class="line number1097 index1096 alt2">
        1097
      </div>
      
      <div class="line number1098 index1097 alt1">
        1098
      </div>
      
      <div class="line number1099 index1098 alt2">
        1099
      </div>
      
      <div class="line number1100 index1099 alt1">
        1100
      </div>
      
      <div class="line number1101 index1100 alt2">
        1101
      </div>
      
      <div class="line number1102 index1101 alt1">
        1102
      </div>
      
      <div class="line number1103 index1102 alt2">
        1103
      </div>
      
      <div class="line number1104 index1103 alt1">
        1104
      </div>
      
      <div class="line number1105 index1104 alt2">
        1105
      </div>
      
      <div class="line number1106 index1105 alt1">
        1106
      </div>
      
      <div class="line number1107 index1106 alt2">
        1107
      </div>
      
      <div class="line number1108 index1107 alt1">
        1108
      </div>
      
      <div class="line number1109 index1108 alt2">
        1109
      </div>
      
      <div class="line number1110 index1109 alt1">
        1110
      </div>
      
      <div class="line number1111 index1110 alt2">
        1111
      </div>
      
      <div class="line number1112 index1111 alt1">
        1112
      </div>
      
      <div class="line number1113 index1112 alt2">
        1113
      </div>
      
      <div class="line number1114 index1113 alt1">
        1114
      </div>
      
      <div class="line number1115 index1114 alt2">
        1115
      </div>
      
      <div class="line number1116 index1115 alt1">
        1116
      </div>
      
      <div class="line number1117 index1116 alt2">
        1117
      </div>
      
      <div class="line number1118 index1117 alt1">
        1118
      </div>
      
      <div class="line number1119 index1118 alt2">
        1119
      </div>
      
      <div class="line number1120 index1119 alt1">
        1120
      </div>
      
      <div class="line number1121 index1120 alt2">
        1121
      </div>
      
      <div class="line number1122 index1121 alt1">
        1122
      </div>
      
      <div class="line number1123 index1122 alt2">
        1123
      </div>
      
      <div class="line number1124 index1123 alt1">
        1124
      </div>
      
      <div class="line number1125 index1124 alt2">
        1125
      </div>
      
      <div class="line number1126 index1125 alt1">
        1126
      </div>
      
      <div class="line number1127 index1126 alt2">
        1127
      </div>
      
      <div class="line number1128 index1127 alt1">
        1128
      </div>
      
      <div class="line number1129 index1128 alt2">
        1129
      </div>
      
      <div class="line number1130 index1129 alt1">
        1130
      </div>
      
      <div class="line number1131 index1130 alt2">
        1131
      </div>
      
      <div class="line number1132 index1131 alt1">
        1132
      </div>
      
      <div class="line number1133 index1132 alt2">
        1133
      </div>
      
      <div class="line number1134 index1133 alt1">
        1134
      </div>
      
      <div class="line number1135 index1134 alt2">
        1135
      </div>
      
      <div class="line number1136 index1135 alt1">
        1136
      </div>
      
      <div class="line number1137 index1136 alt2">
        1137
      </div>
      
      <div class="line number1138 index1137 alt1">
        1138
      </div>
      
      <div class="line number1139 index1138 alt2">
        1139
      </div>
      
      <div class="line number1140 index1139 alt1">
        1140
      </div>
      
      <div class="line number1141 index1140 alt2">
        1141
      </div>
      
      <div class="line number1142 index1141 alt1">
        1142
      </div>
      
      <div class="line number1143 index1142 alt2">
        1143
      </div>
      
      <div class="line number1144 index1143 alt1">
        1144
      </div>
    </td>
    
    <td class="code">
      <div class="container">
        <div class="line number1 index0 alt2">
          `public` `class` `SlidingMenu ``extends` `RelativeLayout {`
        </div>
        
        <div class="line number2 index1 alt1">
        </div>
        
        <div class="line number3 index2 alt2">
          `    ``private` `static` `final` `String TAG = SlidingMenu.``class``.getSimpleName();`
        </div>
        
        <div class="line number4 index3 alt1">
        </div>
        
        <div class="line number5 index4 alt2">
          `    ``public` `static` `final` `int` `SLIDING_WINDOW = ````;`
        </div>
        
        <div class="line number6 index5 alt1">
          `    ``public` `static` `final` `int` `SLIDING_CONTENT = ``1``;`
        </div>
        
        <div class="line number7 index6 alt2">
          `    ``private` `boolean` `mActionbarOverlay = ``false``;`
        </div>
        
        <div class="line number8 index7 alt1">
        </div>
        
        <div class="line number9 index8 alt2">
          `    ``/**`
        </div>
        
        <div class="line number10 index9 alt1">
          `     ``* Constant value for use with setTouchModeAbove(). Allows the SlidingMenu`
        </div>
        
        <div class="line number11 index10 alt2">
          `     ``* to be opened with a swipe gesture on the screen's margin`
        </div>
        
        <div class="line number12 index11 alt1">
          `     ``*/`
        </div>
        
        <div class="line number13 index12 alt2">
          `    ``public` `static` `final` `int` `TOUCHMODE_MARGIN = ````;`
        </div>
        
        <div class="line number14 index13 alt1">
        </div>
        
        <div class="line number15 index14 alt2">
          `    ``/**`
        </div>
        
        <div class="line number16 index15 alt1">
          `     ``* Constant value for use with setTouchModeAbove(). Allows the SlidingMenu`
        </div>
        
        <div class="line number17 index16 alt2">
          `     ``* to be opened with a swipe gesture anywhere on the screen`
        </div>
        
        <div class="line number18 index17 alt1">
          `     ``*/`
        </div>
        
        <div class="line number19 index18 alt2">
          `    ``public` `static` `final` `int` `TOUCHMODE_FULLSCREEN = ``1``;`
        </div>
        
        <div class="line number20 index19 alt1">
        </div>
        
        <div class="line number21 index20 alt2">
          `    ``/**`
        </div>
        
        <div class="line number22 index21 alt1">
          `     ``* Constant value for use with setTouchModeAbove(). Denies the SlidingMenu`
        </div>
        
        <div class="line number23 index22 alt2">
          `     ``* to be opened with a swipe gesture`
        </div>
        
        <div class="line number24 index23 alt1">
          `     ``*/`
        </div>
        
        <div class="line number25 index24 alt2">
          `    ``public` `static` `final` `int` `TOUCHMODE_NONE = ``2``;`
        </div>
        
        <div class="line number26 index25 alt1">
        </div>
        
        <div class="line number27 index26 alt2">
          `    ``/**`
        </div>
        
        <div class="line number28 index27 alt1">
          `     ``* Constant value for use with setMode(). Puts the menu to the left of the`
        </div>
        
        <div class="line number29 index28 alt2">
          `     ``* content.`
        </div>
        
        <div class="line number30 index29 alt1">
          `     ``*/`
        </div>
        
        <div class="line number31 index30 alt2">
          `    ``public` `static` `final` `int` `LEFT = ````;`
        </div>
        
        <div class="line number32 index31 alt1">
        </div>
        
        <div class="line number33 index32 alt2">
          `    ``/**`
        </div>
        
        <div class="line number34 index33 alt1">
          `     ``* Constant value for use with setMode(). Puts the menu to the right of the`
        </div>
        
        <div class="line number35 index34 alt2">
          `     ``* content.`
        </div>
        
        <div class="line number36 index35 alt1">
          `     ``*/`
        </div>
        
        <div class="line number37 index36 alt2">
          `    ``public` `static` `final` `int` `RIGHT = ``1``;`
        </div>
        
        <div class="line number38 index37 alt1">
        </div>
        
        <div class="line number39 index38 alt2">
          `    ``/**`
        </div>
        
        <div class="line number40 index39 alt1">
          `     ``* Constant value for use with setMode(). Puts menus to the left and right`
        </div>
        
        <div class="line number41 index40 alt2">
          `     ``* of the content.`
        </div>
        
        <div class="line number42 index41 alt1">
          `     ``*/`
        </div>
        
        <div class="line number43 index42 alt2">
          `    ``public` `static` `final` `int` `LEFT_RIGHT = ``2``;`
        </div>
        
        <div class="line number44 index43 alt1">
        </div>
        
        <div class="line number45 index44 alt2">
          `    ``private` `CustomViewAbove mViewAbove;`
        </div>
        
        <div class="line number46 index45 alt1">
        </div>
        
        <div class="line number47 index46 alt2">
          `    ``private` `CustomViewBehind mViewBehind;`
        </div>
        
        <div class="line number48 index47 alt1">
        </div>
        
        <div class="line number49 index48 alt2">
          `        ``/** 整体的背景,用一个ImageView代替 */`
        </div>
        
        <div class="line number50 index49 alt1">
          `    ``private` `ImageView mViewBackground;`
        </div>
        
        <div class="line number51 index50 alt2">
        </div>
        
        <div class="line number52 index51 alt1">
          `    ``private` `OnOpenListener mOpenListener;`
        </div>
        
        <div class="line number53 index52 alt2">
        </div>
        
        <div class="line number54 index53 alt1">
          `    ``private` `OnOpenListener mSecondaryOpenListner;`
        </div>
        
        <div class="line number55 index54 alt2">
        </div>
        
        <div class="line number56 index55 alt1">
          `    ``private` `OnCloseListener mCloseListener;`
        </div>
        
        <div class="line number57 index56 alt2">
        </div>
        
        <div class="line number58 index57 alt1">
          `    ``/**`
        </div>
        
        <div class="line number59 index58 alt2">
          `     ``* The listener interface for receiving onOpen events. The class that is`
        </div>
        
        <div class="line number60 index59 alt1">
          `     ``* interested in processing a onOpen event implements this interface, and`
        </div>
        
        <div class="line number61 index60 alt2">
          `     ``* the object created with that class is registered with a component using`
        </div>
        
        <div class="line number62 index61 alt1">
          `     ``* the component's &lt;code&gt;addOnOpenListener&lt;code&gt; method. When`
        </div>
        
        <div class="line number63 index62 alt2">
          `     ``* the onOpen event occurs, that object's appropriate`
        </div>
        
        <div class="line number64 index63 alt1">
          `     ``* method is invoked`
        </div>
        
        <div class="line number65 index64 alt2">
          `     ``*/`
        </div>
        
        <div class="line number66 index65 alt1">
          `    ``public` `interface` `OnOpenListener {`
        </div>
        
        <div class="line number67 index66 alt2">
        </div>
        
        <div class="line number68 index67 alt1">
          `        ``/**`
        </div>
        
        <div class="line number69 index68 alt2">
          `         ``* On open.`
        </div>
        
        <div class="line number70 index69 alt1">
          `         ``*/`
        </div>
        
        <div class="line number71 index70 alt2">
          `        ``public` `void` `onOpen();`
        </div>
        
        <div class="line number72 index71 alt1">
          `    ``}`
        </div>
        
        <div class="line number73 index72 alt2">
        </div>
        
        <div class="line number74 index73 alt1">
          `    ``/**`
        </div>
        
        <div class="line number75 index74 alt2">
          `     ``* The listener interface for receiving onOpened events. The class that is`
        </div>
        
        <div class="line number76 index75 alt1">
          `     ``* interested in processing a onOpened event implements this interface, and`
        </div>
        
        <div class="line number77 index76 alt2">
          `     ``* the object created with that class is registered with a component using`
        </div>
        
        <div class="line number78 index77 alt1">
          `     ``* the component's &lt;code&gt;addOnOpenedListener&lt;code&gt; method. When`
        </div>
        
        <div class="line number79 index78 alt2">
          `     ``* the onOpened event occurs, that object's appropriate`
        </div>
        
        <div class="line number80 index79 alt1">
          `     ``* method is invoked.`
        </div>
        
        <div class="line number81 index80 alt2">
          `     ``*`
        </div>
        
        <div class="line number82 index81 alt1">
          `     ``* @see OnOpenedEvent`
        </div>
        
        <div class="line number83 index82 alt2">
          `     ``*/`
        </div>
        
        <div class="line number84 index83 alt1">
          `    ``public` `interface` `OnOpenedListener {`
        </div>
        
        <div class="line number85 index84 alt2">
        </div>
        
        <div class="line number86 index85 alt1">
          `        ``/**`
        </div>
        
        <div class="line number87 index86 alt2">
          `         ``* On opened.`
        </div>
        
        <div class="line number88 index87 alt1">
          `         ``*/`
        </div>
        
        <div class="line number89 index88 alt2">
          `        ``public` `void` `onOpened();`
        </div>
        
        <div class="line number90 index89 alt1">
          `    ``}`
        </div>
        
        <div class="line number91 index90 alt2">
        </div>
        
        <div class="line number92 index91 alt1">
          `    ``/**`
        </div>
        
        <div class="line number93 index92 alt2">
          `     ``* The listener interface for receiving onClose events. The class that is`
        </div>
        
        <div class="line number94 index93 alt1">
          `     ``* interested in processing a onClose event implements this interface, and`
        </div>
        
        <div class="line number95 index94 alt2">
          `     ``* the object created with that class is registered with a component using`
        </div>
        
        <div class="line number96 index95 alt1">
          `     ``* the component's &lt;code&gt;addOnCloseListener&lt;code&gt; method. When`
        </div>
        
        <div class="line number97 index96 alt2">
          `     ``* the onClose event occurs, that object's appropriate`
        </div>
        
        <div class="line number98 index97 alt1">
          `     ``* method is invoked.`
        </div>
        
        <div class="line number99 index98 alt2">
          `     ``*`
        </div>
        
        <div class="line number100 index99 alt1">
          `     ``* @see OnCloseEvent`
        </div>
        
        <div class="line number101 index100 alt2">
          `     ``*/`
        </div>
        
        <div class="line number102 index101 alt1">
          `    ``public` `interface` `OnCloseListener {`
        </div>
        
        <div class="line number103 index102 alt2">
        </div>
        
        <div class="line number104 index103 alt1">
          `        ``/**`
        </div>
        
        <div class="line number105 index104 alt2">
          `         ``* On close.`
        </div>
        
        <div class="line number106 index105 alt1">
          `         ``*/`
        </div>
        
        <div class="line number107 index106 alt2">
          `        ``public` `void` `onClose();`
        </div>
        
        <div class="line number108 index107 alt1">
          `    ``}`
        </div>
        
        <div class="line number109 index108 alt2">
        </div>
        
        <div class="line number110 index109 alt1">
          `    ``/**`
        </div>
        
        <div class="line number111 index110 alt2">
          `     ``* The listener interface for receiving onClosed events. The class that is`
        </div>
        
        <div class="line number112 index111 alt1">
          `     ``* interested in processing a onClosed event implements this interface, and`
        </div>
        
        <div class="line number113 index112 alt2">
          `     ``* the object created with that class is registered with a component using`
        </div>
        
        <div class="line number114 index113 alt1">
          `     ``* the component's &lt;code&gt;addOnClosedListener&lt;code&gt; method. When`
        </div>
        
        <div class="line number115 index114 alt2">
          `     ``* the onClosed event occurs, that object's appropriate`
        </div>
        
        <div class="line number116 index115 alt1">
          `     ``* method is invoked.`
        </div>
        
        <div class="line number117 index116 alt2">
          `     ``*`
        </div>
        
        <div class="line number118 index117 alt1">
          `     ``* @see OnClosedEvent`
        </div>
        
        <div class="line number119 index118 alt2">
          `     ``*/`
        </div>
        
        <div class="line number120 index119 alt1">
          `    ``public` `interface` `OnClosedListener {`
        </div>
        
        <div class="line number121 index120 alt2">
        </div>
        
        <div class="line number122 index121 alt1">
          `        ``/**`
        </div>
        
        <div class="line number123 index122 alt2">
          `         ``* On closed.`
        </div>
        
        <div class="line number124 index123 alt1">
          `         ``*/`
        </div>
        
        <div class="line number125 index124 alt2">
          `        ``public` `void` `onClosed();`
        </div>
        
        <div class="line number126 index125 alt1">
          `    ``}`
        </div>
        
        <div class="line number127 index126 alt2">
        </div>
        
        <div class="line number128 index127 alt1">
          `    ``/**`
        </div>
        
        <div class="line number129 index128 alt2">
          `     ``* The Interface CanvasTransformer.`
        </div>
        
        <div class="line number130 index129 alt1">
          `     ``*/`
        </div>
        
        <div class="line number131 index130 alt2">
          `    ``public` `interface` `CanvasTransformer {`
        </div>
        
        <div class="line number132 index131 alt1">
        </div>
        
        <div class="line number133 index132 alt2">
          `        ``/**`
        </div>
        
        <div class="line number134 index133 alt1">
          `         ``* Transform canvas.`
        </div>
        
        <div class="line number135 index134 alt2">
          `         ``*`
        </div>
        
        <div class="line number136 index135 alt1">
          `         ``* @param canvas`
        </div>
        
        <div class="line number137 index136 alt2">
          `         ``*            the canvas`
        </div>
        
        <div class="line number138 index137 alt1">
          `         ``* @param percentOpen`
        </div>
        
        <div class="line number139 index138 alt2">
          `         ``*            the percent open`
        </div>
        
        <div class="line number140 index139 alt1">
          `         ``*/`
        </div>
        
        <div class="line number141 index140 alt2">
          `        ``public` `void` `transformCanvas(Canvas canvas, ``float` `percentOpen);`
        </div>
        
        <div class="line number142 index141 alt1">
          `    ``}`
        </div>
        
        <div class="line number143 index142 alt2">
        </div>
        
        <div class="line number144 index143 alt1">
          `    ``/**`
        </div>
        
        <div class="line number145 index144 alt2">
          `     ``* Instantiates a new SlidingMenu.`
        </div>
        
        <div class="line number146 index145 alt1">
          `     ``*`
        </div>
        
        <div class="line number147 index146 alt2">
          `     ``* @param context`
        </div>
        
        <div class="line number148 index147 alt1">
          `     ``*            the associated Context`
        </div>
        
        <div class="line number149 index148 alt2">
          `     ``*/`
        </div>
        
        <div class="line number150 index149 alt1">
          `    ``public` `SlidingMenu(Context context) {`
        </div>
        
        <div class="line number151 index150 alt2">
          `        ``this``(context, ``null``);`
        </div>
        
        <div class="line number152 index151 alt1">
          `    ``}`
        </div>
        
        <div class="line number153 index152 alt2">
        </div>
        
        <div class="line number154 index153 alt1">
          `    ``/**`
        </div>
        
        <div class="line number155 index154 alt2">
          `     ``* Instantiates a new SlidingMenu and attach to Activity.`
        </div>
        
        <div class="line number156 index155 alt1">
          `     ``*`
        </div>
        
        <div class="line number157 index156 alt2">
          `     ``* @param activity`
        </div>
        
        <div class="line number158 index157 alt1">
          `     ``*            the activity to attach slidingmenu`
        </div>
        
        <div class="line number159 index158 alt2">
          `     ``* @param slideStyle`
        </div>
        
        <div class="line number160 index159 alt1">
          `     ``*            the slidingmenu style`
        </div>
        
        <div class="line number161 index160 alt2">
          `     ``*/`
        </div>
        
        <div class="line number162 index161 alt1">
          `    ``public` `SlidingMenu(Activity activity, ``int` `slideStyle) {`
        </div>
        
        <div class="line number163 index162 alt2">
          `        ``this``(activity, ``null``);`
        </div>
        
        <div class="line number164 index163 alt1">
          `        ``this``.attachToActivity(activity, slideStyle);`
        </div>
        
        <div class="line number165 index164 alt2">
          `    ``}`
        </div>
        
        <div class="line number166 index165 alt1">
        </div>
        
        <div class="line number167 index166 alt2">
          `    ``/**`
        </div>
        
        <div class="line number168 index167 alt1">
          `     ``* Instantiates a new SlidingMenu.`
        </div>
        
        <div class="line number169 index168 alt2">
          `     ``*`
        </div>
        
        <div class="line number170 index169 alt1">
          `     ``* @param context`
        </div>
        
        <div class="line number171 index170 alt2">
          `     ``*            the associated Context`
        </div>
        
        <div class="line number172 index171 alt1">
          `     ``* @param attrs`
        </div>
        
        <div class="line number173 index172 alt2">
          `     ``*            the attrs`
        </div>
        
        <div class="line number174 index173 alt1">
          `     ``*/`
        </div>
        
        <div class="line number175 index174 alt2">
          `    ``public` `SlidingMenu(Context context, AttributeSet attrs) {`
        </div>
        
        <div class="line number176 index175 alt1">
          `        ``this``(context, attrs, ````);`
        </div>
        
        <div class="line number177 index176 alt2">
          `    ``}`
        </div>
        
        <div class="line number178 index177 alt1">
        </div>
        
        <div class="line number179 index178 alt2">
          `    ``/**`
        </div>
        
        <div class="line number180 index179 alt1">
          `     ``* Instantiates a new SlidingMenu.`
        </div>
        
        <div class="line number181 index180 alt2">
          `     ``*`
        </div>
        
        <div class="line number182 index181 alt1">
          `     ``* @param context`
        </div>
        
        <div class="line number183 index182 alt2">
          `     ``*            the associated Context`
        </div>
        
        <div class="line number184 index183 alt1">
          `     ``* @param attrs`
        </div>
        
        <div class="line number185 index184 alt2">
          `     ``*            the attrs`
        </div>
        
        <div class="line number186 index185 alt1">
          `     ``* @param defStyle`
        </div>
        
        <div class="line number187 index186 alt2">
          `     ``*            the def style`
        </div>
        
        <div class="line number188 index187 alt1">
          `     ``*/`
        </div>
        
        <div class="line number189 index188 alt2">
          `    ``public` `SlidingMenu(Context context, AttributeSet attrs, ``int` `defStyle) {`
        </div>
        
        <div class="line number190 index189 alt1">
          `        ``super``(context, attrs, defStyle);`
        </div>
        
        <div class="line number191 index190 alt2">
          `                ``/** SlidingMenu是一个RelativeLayout,这里把背景图ImageView添加到RelativeLayout的最底层。*/`
        </div>
        
        <div class="line number192 index191 alt1">
          `        ``LayoutParams backgroundParams = ``new` `LayoutParams(`
        </div>
        
        <div class="line number193 index192 alt2">
          `                ``LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);`
        </div>
        
        <div class="line number194 index193 alt1">
          `        ``mViewBackground = ``new` `ImageView(context);`
        </div>
        
        <div class="line number195 index194 alt2">
          `        ``mViewBackground.setScaleType(ImageView.ScaleType.CENTER_CROP);`
        </div>
        
        <div class="line number196 index195 alt1">
          `        ``addView(mViewBackground, backgroundParams);`
        </div>
        
        <div class="line number197 index196 alt2">
        </div>
        
        <div class="line number198 index197 alt1">
          `                ``LayoutParams behindParams = ``new` `LayoutParams(LayoutParams.MATCH_PARENT,`
        </div>
        
        <div class="line number199 index198 alt2">
          `                ``LayoutParams.MATCH_PARENT);`
        </div>
        
        <div class="line number200 index199 alt1">
          `        ``mViewBehind = ``new` `CustomViewBehind(context);`
        </div>
        
        <div class="line number201 index200 alt2">
          `        ``addView(mViewBehind, behindParams);`
        </div>
        
        <div class="line number202 index201 alt1">
          `        ``LayoutParams aboveParams = ``new` `LayoutParams(LayoutParams.MATCH_PARENT,`
        </div>
        
        <div class="line number203 index202 alt2">
          `                ``LayoutParams.MATCH_PARENT);`
        </div>
        
        <div class="line number204 index203 alt1">
          `        ``mViewAbove = ``new` `CustomViewAbove(context);`
        </div>
        
        <div class="line number205 index204 alt2">
          `        ``addView(mViewAbove, aboveParams);`
        </div>
        
        <div class="line number206 index205 alt1">
          `        ``// register the CustomViewBehind with the CustomViewAbove`
        </div>
        
        <div class="line number207 index206 alt2">
          `        ``mViewAbove.setCustomViewBehind(mViewBehind);`
        </div>
        
        <div class="line number208 index207 alt1">
          `        ``mViewBehind.setCustomViewAbove(mViewAbove);`
        </div>
        
        <div class="line number209 index208 alt2">
          `        ``mViewAbove.setOnPageChangeListener(``new` `OnPageChangeListener() {`
        </div>
        
        <div class="line number210 index209 alt1">
          `            ``public` `static` `final` `int` `POSITION_OPEN = ````;`
        </div>
        
        <div class="line number211 index210 alt2">
          `            ``public` `static` `final` `int` `POSITION_CLOSE = ``1``;`
        </div>
        
        <div class="line number212 index211 alt1">
          `            ``public` `static` `final` `int` `POSITION_SECONDARY_OPEN = ``2``;`
        </div>
        
        <div class="line number213 index212 alt2">
        </div>
        
        <div class="line number214 index213 alt1">
          `            ``public` `void` `onPageScrolled(``int` `position, ``float` `positionOffset,`
        </div>
        
        <div class="line number215 index214 alt2">
          `                    ``int` `positionOffsetPixels) {`
        </div>
        
        <div class="line number216 index215 alt1">
          `            ``}`
        </div>
        
        <div class="line number217 index216 alt2">
        </div>
        
        <div class="line number218 index217 alt1">
          `            ``public` `void` `onPageSelected(``int` `position) {`
        </div>
        
        <div class="line number219 index218 alt2">
          `                ``if` `(position == POSITION_OPEN && mOpenListener != ``null``) {`
        </div>
        
        <div class="line number220 index219 alt1">
          `                    ``mOpenListener.onOpen();`
        </div>
        
        <div class="line number221 index220 alt2">
          `                ``} ``else` `if` `(position == POSITION_CLOSE && mCloseListener != ``null``) {`
        </div>
        
        <div class="line number222 index221 alt1">
          `                    ``mCloseListener.onClose();`
        </div>
        
        <div class="line number223 index222 alt2">
          `                ``} ``else` `if` `(position == POSITION_SECONDARY_OPEN`
        </div>
        
        <div class="line number224 index223 alt1">
          `                        ``&& mSecondaryOpenListner != ``null``) {`
        </div>
        
        <div class="line number225 index224 alt2">
          `                    ``mSecondaryOpenListner.onOpen();`
        </div>
        
        <div class="line number226 index225 alt1">
          `                ``}`
        </div>
        
        <div class="line number227 index226 alt2">
          `            ``}`
        </div>
        
        <div class="line number228 index227 alt1">
          `        ``});`
        </div>
        
        <div class="line number229 index228 alt2">
        </div>
        
        <div class="line number230 index229 alt1">
          `        ``// now style everything!`
        </div>
        
        <div class="line number231 index230 alt2">
          `        ``TypedArray ta = context.obtainStyledAttributes(attrs,`
        </div>
        
        <div class="line number232 index231 alt1">
          `                ``R.styleable.SlidingMenu);`
        </div>
        
        <div class="line number233 index232 alt2">
          `        ``// set the above and behind views if defined in xml`
        </div>
        
        <div class="line number234 index233 alt1">
          `        ``int` `mode = ta.getInt(R.styleable.SlidingMenu_mode, LEFT);`
        </div>
        
        <div class="line number235 index234 alt2">
          `        ``setMode(mode);`
        </div>
        
        <div class="line number236 index235 alt1">
          `        ``int` `viewAbove = ta.getResourceId(R.styleable.SlidingMenu_viewAbove, -``1``);`
        </div>
        
        <div class="line number237 index236 alt2">
          `        ``if` `(viewAbove != -``1``) {`
        </div>
        
        <div class="line number238 index237 alt1">
          `            ``setContent(viewAbove);`
        </div>
        
        <div class="line number239 index238 alt2">
          `        ``} ``else` `{`
        </div>
        
        <div class="line number240 index239 alt1">
          `            ``setContent(``new` `FrameLayout(context));`
        </div>
        
        <div class="line number241 index240 alt2">
          `        ``}`
        </div>
        
        <div class="line number242 index241 alt1">
          `        ``int` `viewBehind = ta.getResourceId(R.styleable.SlidingMenu_viewBehind,`
        </div>
        
        <div class="line number243 index242 alt2">
          `                ``-``1``);`
        </div>
        
        <div class="line number244 index243 alt1">
          `        ``if` `(viewBehind != -``1``) {`
        </div>
        
        <div class="line number245 index244 alt2">
          `            ``setMenu(viewBehind);`
        </div>
        
        <div class="line number246 index245 alt1">
          `        ``} ``else` `{`
        </div>
        
        <div class="line number247 index246 alt2">
          `            ``setMenu(``new` `FrameLayout(context));`
        </div>
        
        <div class="line number248 index247 alt1">
          `        ``}`
        </div>
        
        <div class="line number249 index248 alt2">
          `        ``int` `touchModeAbove = ta.getInt(R.styleable.SlidingMenu_touchModeAbove,`
        </div>
        
        <div class="line number250 index249 alt1">
          `                ``TOUCHMODE_MARGIN);`
        </div>
        
        <div class="line number251 index250 alt2">
          `        ``setTouchModeAbove(touchModeAbove);`
        </div>
        
        <div class="line number252 index251 alt1">
          `        ``int` `touchModeBehind = ta.getInt(`
        </div>
        
        <div class="line number253 index252 alt2">
          `                ``R.styleable.SlidingMenu_touchModeBehind, TOUCHMODE_MARGIN);`
        </div>
        
        <div class="line number254 index253 alt1">
          `        ``setTouchModeBehind(touchModeBehind);`
        </div>
        
        <div class="line number255 index254 alt2">
        </div>
        
        <div class="line number256 index255 alt1">
          `        ``int` `offsetBehind = (``int``) ta.getDimension(`
        </div>
        
        <div class="line number257 index256 alt2">
          `                ``R.styleable.SlidingMenu_behindOffset, -``1``);`
        </div>
        
        <div class="line number258 index257 alt1">
          `        ``int` `widthBehind = (``int``) ta.getDimension(`
        </div>
        
        <div class="line number259 index258 alt2">
          `                ``R.styleable.SlidingMenu_behindWidth, -``1``);`
        </div>
        
        <div class="line number260 index259 alt1">
          `        ``if` `(offsetBehind != -``1` `&& widthBehind != -``1``)`
        </div>
        
        <div class="line number261 index260 alt2">
          `            ``throw` `new` `IllegalStateException(`
        </div>
        
        <div class="line number262 index261 alt1">
          `                    ``"Cannot set both behindOffset and behindWidth for a SlidingMenu"``);`
        </div>
        
        <div class="line number263 index262 alt2">
          `        ``else` `if` `(offsetBehind != -``1``)`
        </div>
        
        <div class="line number264 index263 alt1">
          `            ``setBehindOffset(offsetBehind);`
        </div>
        
        <div class="line number265 index264 alt2">
          `        ``else` `if` `(widthBehind != -``1``)`
        </div>
        
        <div class="line number266 index265 alt1">
          `            ``setBehindWidth(widthBehind);`
        </div>
        
        <div class="line number267 index266 alt2">
          `        ``else`
        </div>
        
        <div class="line number268 index267 alt1">
          `            ``setBehindOffset(````);`
        </div>
        
        <div class="line number269 index268 alt2">
          `        ``float` `scrollOffsetBehind = ta.getFloat(`
        </div>
        
        <div class="line number270 index269 alt1">
          `                ``R.styleable.SlidingMenu_behindScrollScale, ````.33f);`
        </div>
        
        <div class="line number271 index270 alt2">
          `        ``setBehindScrollScale(scrollOffsetBehind);`
        </div>
        
        <div class="line number272 index271 alt1">
          `        ``int` `shadowRes = ta.getResourceId(`
        </div>
        
        <div class="line number273 index272 alt2">
          `                ``R.styleable.SlidingMenu_shadowDrawable, -``1``);`
        </div>
        
        <div class="line number274 index273 alt1">
          `        ``if` `(shadowRes != -``1``) {`
        </div>
        
        <div class="line number275 index274 alt2">
          `            ``setShadowDrawable(shadowRes);`
        </div>
        
        <div class="line number276 index275 alt1">
          `        ``}`
        </div>
        
        <div class="line number277 index276 alt2">
          `        ``int` `shadowWidth = (``int``) ta.getDimension(`
        </div>
        
        <div class="line number278 index277 alt1">
          `                ``R.styleable.SlidingMenu_shadowWidth, ````);`
        </div>
        
        <div class="line number279 index278 alt2">
          `        ``setShadowWidth(shadowWidth);`
        </div>
        
        <div class="line number280 index279 alt1">
          `        ``boolean` `fadeEnabled = ta.getBoolean(`
        </div>
        
        <div class="line number281 index280 alt2">
          `                ``R.styleable.SlidingMenu_fadeEnabled, ``true``);`
        </div>
        
        <div class="line number282 index281 alt1">
          `        ``setFadeEnabled(fadeEnabled);`
        </div>
        
        <div class="line number283 index282 alt2">
          `        ``float` `fadeDeg = ta.getFloat(R.styleable.SlidingMenu_fadeDegree, ````.33f);`
        </div>
        
        <div class="line number284 index283 alt1">
          `        ``setFadeDegree(fadeDeg);`
        </div>
        
        <div class="line number285 index284 alt2">
          `        ``boolean` `selectorEnabled = ta.getBoolean(`
        </div>
        
        <div class="line number286 index285 alt1">
          `                ``R.styleable.SlidingMenu_selectorEnabled, ``false``);`
        </div>
        
        <div class="line number287 index286 alt2">
          `        ``setSelectorEnabled(selectorEnabled);`
        </div>
        
        <div class="line number288 index287 alt1">
          `        ``int` `selectorRes = ta.getResourceId(`
        </div>
        
        <div class="line number289 index288 alt2">
          `                ``R.styleable.SlidingMenu_selectorDrawable, -``1``);`
        </div>
        
        <div class="line number290 index289 alt1">
          `        ``if` `(selectorRes != -``1``)`
        </div>
        
        <div class="line number291 index290 alt2">
          `            ``setSelectorDrawable(selectorRes);`
        </div>
        
        <div class="line number292 index291 alt1">
          `        ``ta.recycle();`
        </div>
        
        <div class="line number293 index292 alt2">
          `    ``}`
        </div>
        
        <div class="line number294 index293 alt1">
        </div>
        
        <div class="line number295 index294 alt2">
          `    ``/**`
        </div>
        
        <div class="line number296 index295 alt1">
          `     ``* Attaches the SlidingMenu to an entire Activity`
        </div>
        
        <div class="line number297 index296 alt2">
          `     ``*`
        </div>
        
        <div class="line number298 index297 alt1">
          `     ``* @param activity`
        </div>
        
        <div class="line number299 index298 alt2">
          `     ``*            the Activity`
        </div>
        
        <div class="line number300 index299 alt1">
          `     ``* @param slideStyle`
        </div>
        
        <div class="line number301 index300 alt2">
          `     ``*            either SLIDING_CONTENT or SLIDING_WINDOW`
        </div>
        
        <div class="line number302 index301 alt1">
          `     ``*/`
        </div>
        
        <div class="line number303 index302 alt2">
          `    ``public` `void` `attachToActivity(Activity activity, ``int` `slideStyle) {`
        </div>
        
        <div class="line number304 index303 alt1">
          `        ``attachToActivity(activity, slideStyle, ``false``);`
        </div>
        
        <div class="line number305 index304 alt2">
          `    ``}`
        </div>
        
        <div class="line number306 index305 alt1">
        </div>
        
        <div class="line number307 index306 alt2">
          `    ``/**`
        </div>
        
        <div class="line number308 index307 alt1">
          `     ``* Attaches the SlidingMenu to an entire Activity`
        </div>
        
        <div class="line number309 index308 alt2">
          `     ``*`
        </div>
        
        <div class="line number310 index309 alt1">
          `     ``* @param activity`
        </div>
        
        <div class="line number311 index310 alt2">
          `     ``*            the Activity`
        </div>
        
        <div class="line number312 index311 alt1">
          `     ``* @param slideStyle`
        </div>
        
        <div class="line number313 index312 alt2">
          `     ``*            either SLIDING_CONTENT or SLIDING_WINDOW`
        </div>
        
        <div class="line number314 index313 alt1">
          `     ``* @param actionbarOverlay`
        </div>
        
        <div class="line number315 index314 alt2">
          `     ``*            whether or not the ActionBar is overlaid`
        </div>
        
        <div class="line number316 index315 alt1">
          `     ``*/`
        </div>
        
        <div class="line number317 index316 alt2">
          `    ``public` `void` `attachToActivity(Activity activity, ``int` `slideStyle,`
        </div>
        
        <div class="line number318 index317 alt1">
          `            ``boolean` `actionbarOverlay) {`
        </div>
        
        <div class="line number319 index318 alt2">
          `        ``if` `(slideStyle != SLIDING_WINDOW && slideStyle != SLIDING_CONTENT)`
        </div>
        
        <div class="line number320 index319 alt1">
          `            ``throw` `new` `IllegalArgumentException(`
        </div>
        
        <div class="line number321 index320 alt2">
          `                    ``"slideStyle must be either SLIDING_WINDOW or SLIDING_CONTENT"``);`
        </div>
        
        <div class="line number322 index321 alt1">
        </div>
        
        <div class="line number323 index322 alt2">
          `        ``if` `(getParent() != ``null``)`
        </div>
        
        <div class="line number324 index323 alt1">
          `            ``throw` `new` `IllegalStateException(`
        </div>
        
        <div class="line number325 index324 alt2">
          `                    ``"This SlidingMenu appears to already be attached"``);`
        </div>
        
        <div class="line number326 index325 alt1">
        </div>
        
        <div class="line number327 index326 alt2">
          `        ``// get the window background`
        </div>
        
        <div class="line number328 index327 alt1">
          `        ``TypedArray a = activity.getTheme().obtainStyledAttributes(`
        </div>
        
        <div class="line number329 index328 alt2">
          `                ``new` `int``[] { android.R.attr.windowBackground });`
        </div>
        
        <div class="line number330 index329 alt1">
          `        ``int` `background = a.getResourceId(````, ````);`
        </div>
        
        <div class="line number331 index330 alt2">
          `        ``a.recycle();`
        </div>
        
        <div class="line number332 index331 alt1">
        </div>
        
        <div class="line number333 index332 alt2">
          `        ``switch` `(slideStyle) {`
        </div>
        
        <div class="line number334 index333 alt1">
          `        ``case` `SLIDING_WINDOW:`
        </div>
        
        <div class="line number335 index334 alt2">
          `            ``mActionbarOverlay = ``false``;`
        </div>
        
        <div class="line number336 index335 alt1">
          `            ``ViewGroup decor = (ViewGroup) activity.getWindow().getDecorView();`
        </div>
        
        <div class="line number337 index336 alt2">
          `            ``ViewGroup decorChild = (ViewGroup) decor.getChildAt(````);`
        </div>
        
        <div class="line number338 index337 alt1">
          `            ``// save ActionBar themes that have transparent assets`
        </div>
        
        <div class="line number339 index338 alt2">
          `            ``decorChild.setBackgroundResource(background);`
        </div>
        
        <div class="line number340 index339 alt1">
          `            ``decor.removeView(decorChild);`
        </div>
        
        <div class="line number341 index340 alt2">
          `            ``decor.addView(``this``);`
        </div>
        
        <div class="line number342 index341 alt1">
          `            ``setContent(decorChild);`
        </div>
        
        <div class="line number343 index342 alt2">
          `            ``break``;`
        </div>
        
        <div class="line number344 index343 alt1">
          `        ``case` `SLIDING_CONTENT:`
        </div>
        
        <div class="line number345 index344 alt2">
          `            ``mActionbarOverlay = actionbarOverlay;`
        </div>
        
        <div class="line number346 index345 alt1">
          `            ``// take the above view out of`
        </div>
        
        <div class="line number347 index346 alt2">
          `            ``ViewGroup contentParent = (ViewGroup) activity`
        </div>
        
        <div class="line number348 index347 alt1">
          `                    ``.findViewById(android.R.id.content);`
        </div>
        
        <div class="line number349 index348 alt2">
          `            ``View content = contentParent.getChildAt(````);`
        </div>
        
        <div class="line number350 index349 alt1">
          `            ``contentParent.removeView(content);`
        </div>
        
        <div class="line number351 index350 alt2">
          `            ``contentParent.addView(``this``);`
        </div>
        
        <div class="line number352 index351 alt1">
          `            ``setContent(content);`
        </div>
        
        <div class="line number353 index352 alt2">
          `            ``// save people from having transparent backgrounds`
        </div>
        
        <div class="line number354 index353 alt1">
          `            ``if` `(content.getBackground() == ``null``)`
        </div>
        
        <div class="line number355 index354 alt2">
          `                ``content.setBackgroundResource(background);`
        </div>
        
        <div class="line number356 index355 alt1">
          `            ``break``;`
        </div>
        
        <div class="line number357 index356 alt2">
          `        ``}`
        </div>
        
        <div class="line number358 index357 alt1">
          `    ``}`
        </div>
        
        <div class="line number359 index358 alt2">
        </div>
        
        <div class="line number360 index359 alt1">
          `    ``/**`
        </div>
        
        <div class="line number361 index360 alt2">
          `     ``* Set the above view content from a layout resource. The resource will be`
        </div>
        
        <div class="line number362 index361 alt1">
          `     ``* inflated, adding all top-level views to the above view.`
        </div>
        
        <div class="line number363 index362 alt2">
          `     ``*`
        </div>
        
        <div class="line number364 index363 alt1">
          `     ``* @param res`
        </div>
        
        <div class="line number365 index364 alt2">
          `     ``*            the new content`
        </div>
        
        <div class="line number366 index365 alt1">
          `     ``*/`
        </div>
        
        <div class="line number367 index366 alt2">
          `    ``public` `void` `setContent(``int` `res) {`
        </div>
        
        <div class="line number368 index367 alt1">
          `        ``setContent(LayoutInflater.from(getContext()).inflate(res, ``null``));`
        </div>
        
        <div class="line number369 index368 alt2">
          `    ``}`
        </div>
        
        <div class="line number370 index369 alt1">
        </div>
        
        <div class="line number371 index370 alt2">
          `    ``/**`
        </div>
        
        <div class="line number372 index371 alt1">
          `     ``* Set the above view content to the given View.`
        </div>
        
        <div class="line number373 index372 alt2">
          `     ``*`
        </div>
        
        <div class="line number374 index373 alt1">
          `     ``* @param view`
        </div>
        
        <div class="line number375 index374 alt2">
          `     ``*            The desired content to display.`
        </div>
        
        <div class="line number376 index375 alt1">
          `     ``*/`
        </div>
        
        <div class="line number377 index376 alt2">
          `    ``public` `void` `setContent(View view) {`
        </div>
        
        <div class="line number378 index377 alt1">
          `        ``mViewAbove.setContent(view);`
        </div>
        
        <div class="line number379 index378 alt2">
          `        ``showContent();`
        </div>
        
        <div class="line number380 index379 alt1">
          `    ``}`
        </div>
        
        <div class="line number381 index380 alt2">
        </div>
        
        <div class="line number382 index381 alt1">
          `    ``/**`
        </div>
        
        <div class="line number383 index382 alt2">
          `     ``* 设置背景图片`
        </div>
        
        <div class="line number384 index383 alt1">
          `     ``*`
        </div>
        
        <div class="line number385 index384 alt2">
          `     ``* @param resid`
        </div>
        
        <div class="line number386 index385 alt1">
          `     ``*/`
        </div>
        
        <div class="line number387 index386 alt2">
          `    ``public` `void` `setBackgroundImage(``int` `resid) {`
        </div>
        
        <div class="line number388 index387 alt1">
          `        ``mViewBackground.setBackgroundResource(resid);`
        </div>
        
        <div class="line number389 index388 alt2">
          `    ``}`
        </div>
        
        <div class="line number390 index389 alt1">
        </div>
        
        <div class="line number391 index390 alt2">
          `    ``/**`
        </div>
        
        <div class="line number392 index391 alt1">
          `     ``* Retrieves the current content.`
        </div>
        
        <div class="line number393 index392 alt2">
          `     ``*`
        </div>
        
        <div class="line number394 index393 alt1">
          `     ``* @return the current content`
        </div>
        
        <div class="line number395 index394 alt2">
          `     ``*/`
        </div>
        
        <div class="line number396 index395 alt1">
          `    ``public` `View getContent() {`
        </div>
        
        <div class="line number397 index396 alt2">
          `        ``return` `mViewAbove.getContent();`
        </div>
        
        <div class="line number398 index397 alt1">
          `    ``}`
        </div>
        
        <div class="line number399 index398 alt2">
        </div>
        
        <div class="line number400 index399 alt1">
          `    ``/**`
        </div>
        
        <div class="line number401 index400 alt2">
          `     ``* Set the behind view (menu) content from a layout resource. The resource`
        </div>
        
        <div class="line number402 index401 alt1">
          `     ``* will be inflated, adding all top-level views to the behind view.`
        </div>
        
        <div class="line number403 index402 alt2">
          `     ``*`
        </div>
        
        <div class="line number404 index403 alt1">
          `     ``* @param res`
        </div>
        
        <div class="line number405 index404 alt2">
          `     ``*            the new content`
        </div>
        
        <div class="line number406 index405 alt1">
          `     ``*/`
        </div>
        
        <div class="line number407 index406 alt2">
          `    ``public` `void` `setMenu(``int` `res) {`
        </div>
        
        <div class="line number408 index407 alt1">
          `        ``setMenu(LayoutInflater.from(getContext()).inflate(res, ``null``));`
        </div>
        
        <div class="line number409 index408 alt2">
          `    ``}`
        </div>
        
        <div class="line number410 index409 alt1">
        </div>
        
        <div class="line number411 index410 alt2">
          `    ``/**`
        </div>
        
        <div class="line number412 index411 alt1">
          `     ``* Set the behind view (menu) content to the given View.`
        </div>
        
        <div class="line number413 index412 alt2">
          `     ``*`
        </div>
        
        <div class="line number414 index413 alt1">
          `     ``* @param view`
        </div>
        
        <div class="line number415 index414 alt2">
          `     ``*            The desired content to display.`
        </div>
        
        <div class="line number416 index415 alt1">
          `     ``*/`
        </div>
        
        <div class="line number417 index416 alt2">
          `    ``public` `void` `setMenu(View v) {`
        </div>
        
        <div class="line number418 index417 alt1">
          `        ``mViewBehind.setContent(v);`
        </div>
        
        <div class="line number419 index418 alt2">
          `    ``}`
        </div>
        
        <div class="line number420 index419 alt1">
        </div>
        
        <div class="line number421 index420 alt2">
          `    ``/**`
        </div>
        
        <div class="line number422 index421 alt1">
          `     ``* Retrieves the main menu.`
        </div>
        
        <div class="line number423 index422 alt2">
          `     ``*`
        </div>
        
        <div class="line number424 index423 alt1">
          `     ``* @return the main menu`
        </div>
        
        <div class="line number425 index424 alt2">
          `     ``*/`
        </div>
        
        <div class="line number426 index425 alt1">
          `    ``public` `View getMenu() {`
        </div>
        
        <div class="line number427 index426 alt2">
          `        ``return` `mViewBehind.getContent();`
        </div>
        
        <div class="line number428 index427 alt1">
          `    ``}`
        </div>
        
        <div class="line number429 index428 alt2">
        </div>
        
        <div class="line number430 index429 alt1">
          `    ``/**`
        </div>
        
        <div class="line number431 index430 alt2">
          `     ``* Set the secondary behind view (right menu) content from a layout`
        </div>
        
        <div class="line number432 index431 alt1">
          `     ``* resource. The resource will be inflated, adding all top-level views to`
        </div>
        
        <div class="line number433 index432 alt2">
          `     ``* the behind view.`
        </div>
        
        <div class="line number434 index433 alt1">
          `     ``*`
        </div>
        
        <div class="line number435 index434 alt2">
          `     ``* @param res`
        </div>
        
        <div class="line number436 index435 alt1">
          `     ``*            the new content`
        </div>
        
        <div class="line number437 index436 alt2">
          `     ``*/`
        </div>
        
        <div class="line number438 index437 alt1">
          `    ``public` `void` `setSecondaryMenu(``int` `res) {`
        </div>
        
        <div class="line number439 index438 alt2">
          `        ``setSecondaryMenu(LayoutInflater.from(getContext()).inflate(res, ``null``));`
        </div>
        
        <div class="line number440 index439 alt1">
          `    ``}`
        </div>
        
        <div class="line number441 index440 alt2">
        </div>
        
        <div class="line number442 index441 alt1">
          `    ``/**`
        </div>
        
        <div class="line number443 index442 alt2">
          `     ``* Set the secondary behind view (right menu) content to the given View.`
        </div>
        
        <div class="line number444 index443 alt1">
          `     ``*`
        </div>
        
        <div class="line number445 index444 alt2">
          `     ``* @param view`
        </div>
        
        <div class="line number446 index445 alt1">
          `     ``*            The desired content to display.`
        </div>
        
        <div class="line number447 index446 alt2">
          `     ``*/`
        </div>
        
        <div class="line number448 index447 alt1">
          `    ``public` `void` `setSecondaryMenu(View v) {`
        </div>
        
        <div class="line number449 index448 alt2">
          `        ``mViewBehind.setSecondaryContent(v);`
        </div>
        
        <div class="line number450 index449 alt1">
          `        ``// mViewBehind.invalidate();`
        </div>
        
        <div class="line number451 index450 alt2">
          `    ``}`
        </div>
        
        <div class="line number452 index451 alt1">
        </div>
        
        <div class="line number453 index452 alt2">
          `    ``/**`
        </div>
        
        <div class="line number454 index453 alt1">
          `     ``* Retrieves the current secondary menu (right).`
        </div>
        
        <div class="line number455 index454 alt2">
          `     ``*`
        </div>
        
        <div class="line number456 index455 alt1">
          `     ``* @return the current menu`
        </div>
        
        <div class="line number457 index456 alt2">
          `     ``*/`
        </div>
        
        <div class="line number458 index457 alt1">
          `    ``public` `View getSecondaryMenu() {`
        </div>
        
        <div class="line number459 index458 alt2">
          `        ``return` `mViewBehind.getSecondaryContent();`
        </div>
        
        <div class="line number460 index459 alt1">
          `    ``}`
        </div>
        
        <div class="line number461 index460 alt2">
        </div>
        
        <div class="line number462 index461 alt1">
          `    ``/**`
        </div>
        
        <div class="line number463 index462 alt2">
          `     ``* Sets the sliding enabled.`
        </div>
        
        <div class="line number464 index463 alt1">
          `     ``*`
        </div>
        
        <div class="line number465 index464 alt2">
          `     ``* @param b`
        </div>
        
        <div class="line number466 index465 alt1">
          `     ``*            true to enable sliding, false to disable it.`
        </div>
        
        <div class="line number467 index466 alt2">
          `     ``*/`
        </div>
        
        <div class="line number468 index467 alt1">
          `    ``public` `void` `setSlidingEnabled(``boolean` `b) {`
        </div>
        
        <div class="line number469 index468 alt2">
          `        ``mViewAbove.setSlidingEnabled(b);`
        </div>
        
        <div class="line number470 index469 alt1">
          `    ``}`
        </div>
        
        <div class="line number471 index470 alt2">
        </div>
        
        <div class="line number472 index471 alt1">
          `    ``/**`
        </div>
        
        <div class="line number473 index472 alt2">
          `     ``* Checks if is sliding enabled.`
        </div>
        
        <div class="line number474 index473 alt1">
          `     ``*`
        </div>
        
        <div class="line number475 index474 alt2">
          `     ``* @return true, if is sliding enabled`
        </div>
        
        <div class="line number476 index475 alt1">
          `     ``*/`
        </div>
        
        <div class="line number477 index476 alt2">
          `    ``public` `boolean` `isSlidingEnabled() {`
        </div>
        
        <div class="line number478 index477 alt1">
          `        ``return` `mViewAbove.isSlidingEnabled();`
        </div>
        
        <div class="line number479 index478 alt2">
          `    ``}`
        </div>
        
        <div class="line number480 index479 alt1">
        </div>
        
        <div class="line number481 index480 alt2">
          `    ``/**`
        </div>
        
        <div class="line number482 index481 alt1">
          `     ``* Sets which side the SlidingMenu should appear on.`
        </div>
        
        <div class="line number483 index482 alt2">
          `     ``*`
        </div>
        
        <div class="line number484 index483 alt1">
          `     ``* @param mode`
        </div>
        
        <div class="line number485 index484 alt2">
          `     ``*            must be either SlidingMenu.LEFT or SlidingMenu.RIGHT`
        </div>
        
        <div class="line number486 index485 alt1">
          `     ``*/`
        </div>
        
        <div class="line number487 index486 alt2">
          `    ``public` `void` `setMode(``int` `mode) {`
        </div>
        
        <div class="line number488 index487 alt1">
          `        ``if` `(mode != LEFT && mode != RIGHT && mode != LEFT_RIGHT) {`
        </div>
        
        <div class="line number489 index488 alt2">
          `            ``throw` `new` `IllegalStateException(`
        </div>
        
        <div class="line number490 index489 alt1">
          `                    ``"SlidingMenu mode must be LEFT, RIGHT, or LEFT_RIGHT"``);`
        </div>
        
        <div class="line number491 index490 alt2">
          `        ``}`
        </div>
        
        <div class="line number492 index491 alt1">
          `        ``mViewBehind.setMode(mode);`
        </div>
        
        <div class="line number493 index492 alt2">
          `    ``}`
        </div>
        
        <div class="line number494 index493 alt1">
        </div>
        
        <div class="line number495 index494 alt2">
          `    ``/**`
        </div>
        
        <div class="line number496 index495 alt1">
          `     ``* Returns the current side that the SlidingMenu is on.`
        </div>
        
        <div class="line number497 index496 alt2">
          `     ``*`
        </div>
        
        <div class="line number498 index497 alt1">
          `     ``* @return the current mode, either SlidingMenu.LEFT or SlidingMenu.RIGHT`
        </div>
        
        <div class="line number499 index498 alt2">
          `     ``*/`
        </div>
        
        <div class="line number500 index499 alt1">
          `    ``public` `int` `getMode() {`
        </div>
        
        <div class="line number501 index500 alt2">
          `        ``return` `mViewBehind.getMode();`
        </div>
        
        <div class="line number502 index501 alt1">
          `    ``}`
        </div>
        
        <div class="line number503 index502 alt2">
        </div>
        
        <div class="line number504 index503 alt1">
          `    ``/**`
        </div>
        
        <div class="line number505 index504 alt2">
          `     ``* Sets whether or not the SlidingMenu is in static mode (i.e. nothing is`
        </div>
        
        <div class="line number506 index505 alt1">
          `     ``* moving and everything is showing)`
        </div>
        
        <div class="line number507 index506 alt2">
          `     ``*`
        </div>
        
        <div class="line number508 index507 alt1">
          `     ``* @param b`
        </div>
        
        <div class="line number509 index508 alt2">
          `     ``*            true to set static mode, false to disable static mode.`
        </div>
        
        <div class="line number510 index509 alt1">
          `     ``*/`
        </div>
        
        <div class="line number511 index510 alt2">
          `    ``public` `void` `setStatic(``boolean` `b) {`
        </div>
        
        <div class="line number512 index511 alt1">
          `        ``if` `(b) {`
        </div>
        
        <div class="line number513 index512 alt2">
          `            ``setSlidingEnabled(``false``);`
        </div>
        
        <div class="line number514 index513 alt1">
          `            ``mViewAbove.setCustomViewBehind(``null``);`
        </div>
        
        <div class="line number515 index514 alt2">
          `            ``mViewAbove.setCurrentItem(``1``);`
        </div>
        
        <div class="line number516 index515 alt1">
          `            ``// mViewBehind.setCurrentItem(0);`
        </div>
        
        <div class="line number517 index516 alt2">
          `        ``} ``else` `{`
        </div>
        
        <div class="line number518 index517 alt1">
          `            ``mViewAbove.setCurrentItem(``1``);`
        </div>
        
        <div class="line number519 index518 alt2">
          `            ``// mViewBehind.setCurrentItem(1);`
        </div>
        
        <div class="line number520 index519 alt1">
          `            ``mViewAbove.setCustomViewBehind(mViewBehind);`
        </div>
        
        <div class="line number521 index520 alt2">
          `            ``setSlidingEnabled(``true``);`
        </div>
        
        <div class="line number522 index521 alt1">
          `        ``}`
        </div>
        
        <div class="line number523 index522 alt2">
          `    ``}`
        </div>
        
        <div class="line number524 index523 alt1">
        </div>
        
        <div class="line number525 index524 alt2">
          `    ``/**`
        </div>
        
        <div class="line number526 index525 alt1">
          `     ``* Opens the menu and shows the menu view.`
        </div>
        
        <div class="line number527 index526 alt2">
          `     ``*/`
        </div>
        
        <div class="line number528 index527 alt1">
          `    ``public` `void` `showMenu() {`
        </div>
        
        <div class="line number529 index528 alt2">
          `        ``showMenu(``true``);`
        </div>
        
        <div class="line number530 index529 alt1">
          `    ``}`
        </div>
        
        <div class="line number531 index530 alt2">
        </div>
        
        <div class="line number532 index531 alt1">
          `    ``/**`
        </div>
        
        <div class="line number533 index532 alt2">
          `     ``* Opens the menu and shows the menu view.`
        </div>
        
        <div class="line number534 index533 alt1">
          `     ``*`
        </div>
        
        <div class="line number535 index534 alt2">
          `     ``* @param animate`
        </div>
        
        <div class="line number536 index535 alt1">
          `     ``*            true to animate the transition, false to ignore animation`
        </div>
        
        <div class="line number537 index536 alt2">
          `     ``*/`
        </div>
        
        <div class="line number538 index537 alt1">
          `    ``public` `void` `showMenu(``boolean` `animate) {`
        </div>
        
        <div class="line number539 index538 alt2">
          `        ``mViewAbove.setCurrentItem(````, animate);`
        </div>
        
        <div class="line number540 index539 alt1">
          `    ``}`
        </div>
        
        <div class="line number541 index540 alt2">
        </div>
        
        <div class="line number542 index541 alt1">
          `    ``/**`
        </div>
        
        <div class="line number543 index542 alt2">
          `     ``* Opens the menu and shows the secondary menu view. Will default to the`
        </div>
        
        <div class="line number544 index543 alt1">
          `     ``* regular menu if there is only one.`
        </div>
        
        <div class="line number545 index544 alt2">
          `     ``*/`
        </div>
        
        <div class="line number546 index545 alt1">
          `    ``public` `void` `showSecondaryMenu() {`
        </div>
        
        <div class="line number547 index546 alt2">
          `        ``showSecondaryMenu(``true``);`
        </div>
        
        <div class="line number548 index547 alt1">
          `    ``}`
        </div>
        
        <div class="line number549 index548 alt2">
        </div>
        
        <div class="line number550 index549 alt1">
          `    ``/**`
        </div>
        
        <div class="line number551 index550 alt2">
          `     ``* Opens the menu and shows the secondary (right) menu view. Will default to`
        </div>
        
        <div class="line number552 index551 alt1">
          `     ``* the regular menu if there is only one.`
        </div>
        
        <div class="line number553 index552 alt2">
          `     ``*`
        </div>
        
        <div class="line number554 index553 alt1">
          `     ``* @param animate`
        </div>
        
        <div class="line number555 index554 alt2">
          `     ``*            true to animate the transition, false to ignore animation`
        </div>
        
        <div class="line number556 index555 alt1">
          `     ``*/`
        </div>
        
        <div class="line number557 index556 alt2">
          `    ``public` `void` `showSecondaryMenu(``boolean` `animate) {`
        </div>
        
        <div class="line number558 index557 alt1">
          `        ``mViewAbove.setCurrentItem(``2``, animate);`
        </div>
        
        <div class="line number559 index558 alt2">
          `    ``}`
        </div>
        
        <div class="line number560 index559 alt1">
        </div>
        
        <div class="line number561 index560 alt2">
          `    ``/**`
        </div>
        
        <div class="line number562 index561 alt1">
          `     ``* Closes the menu and shows the above view.`
        </div>
        
        <div class="line number563 index562 alt2">
          `     ``*/`
        </div>
        
        <div class="line number564 index563 alt1">
          `    ``public` `void` `showContent() {`
        </div>
        
        <div class="line number565 index564 alt2">
          `        ``showContent(``true``);`
        </div>
        
        <div class="line number566 index565 alt1">
          `    ``}`
        </div>
        
        <div class="line number567 index566 alt2">
        </div>
        
        <div class="line number568 index567 alt1">
          `    ``/**`
        </div>
        
        <div class="line number569 index568 alt2">
          `     ``* Closes the menu and shows the above view.`
        </div>
        
        <div class="line number570 index569 alt1">
          `     ``*`
        </div>
        
        <div class="line number571 index570 alt2">
          `     ``* @param animate`
        </div>
        
        <div class="line number572 index571 alt1">
          `     ``*            true to animate the transition, false to ignore animation`
        </div>
        
        <div class="line number573 index572 alt2">
          `     ``*/`
        </div>
        
        <div class="line number574 index573 alt1">
          `    ``public` `void` `showContent(``boolean` `animate) {`
        </div>
        
        <div class="line number575 index574 alt2">
          `        ``mViewAbove.setCurrentItem(``1``, animate);`
        </div>
        
        <div class="line number576 index575 alt1">
          `    ``}`
        </div>
        
        <div class="line number577 index576 alt2">
        </div>
        
        <div class="line number578 index577 alt1">
          `    ``/**`
        </div>
        
        <div class="line number579 index578 alt2">
          `     ``* Toggle the SlidingMenu. If it is open, it will be closed, and vice versa.`
        </div>
        
        <div class="line number580 index579 alt1">
          `     ``*/`
        </div>
        
        <div class="line number581 index580 alt2">
          `    ``public` `void` `toggle() {`
        </div>
        
        <div class="line number582 index581 alt1">
          `        ``toggle(``true``);`
        </div>
        
        <div class="line number583 index582 alt2">
          `    ``}`
        </div>
        
        <div class="line number584 index583 alt1">
        </div>
        
        <div class="line number585 index584 alt2">
          `    ``/**`
        </div>
        
        <div class="line number586 index585 alt1">
          `     ``* Toggle the SlidingMenu. If it is open, it will be closed, and vice versa.`
        </div>
        
        <div class="line number587 index586 alt2">
          `     ``*`
        </div>
        
        <div class="line number588 index587 alt1">
          `     ``* @param animate`
        </div>
        
        <div class="line number589 index588 alt2">
          `     ``*            true to animate the transition, false to ignore animation`
        </div>
        
        <div class="line number590 index589 alt1">
          `     ``*/`
        </div>
        
        <div class="line number591 index590 alt2">
          `    ``public` `void` `toggle(``boolean` `animate) {`
        </div>
        
        <div class="line number592 index591 alt1">
          `        ``if` `(isMenuShowing()) {`
        </div>
        
        <div class="line number593 index592 alt2">
          `            ``showContent(animate);`
        </div>
        
        <div class="line number594 index593 alt1">
          `        ``} ``else` `{`
        </div>
        
        <div class="line number595 index594 alt2">
          `            ``showMenu(animate);`
        </div>
        
        <div class="line number596 index595 alt1">
          `        ``}`
        </div>
        
        <div class="line number597 index596 alt2">
          `    ``}`
        </div>
        
        <div class="line number598 index597 alt1">
        </div>
        
        <div class="line number599 index598 alt2">
          `    ``/**`
        </div>
        
        <div class="line number600 index599 alt1">
          `     ``* Checks if is the behind view showing.`
        </div>
        
        <div class="line number601 index600 alt2">
          `     ``*`
        </div>
        
        <div class="line number602 index601 alt1">
          `     ``* @return Whether or not the behind view is showing`
        </div>
        
        <div class="line number603 index602 alt2">
          `     ``*/`
        </div>
        
        <div class="line number604 index603 alt1">
          `    ``public` `boolean` `isMenuShowing() {`
        </div>
        
        <div class="line number605 index604 alt2">
          `        ``return` `mViewAbove.getCurrentItem() == ```
        </div>
        
        <div class="line number606 index605 alt1">
          `                ``|| mViewAbove.getCurrentItem() == ``2``;`
        </div>
        
        <div class="line number607 index606 alt2">
          `    ``}`
        </div>
        
        <div class="line number608 index607 alt1">
        </div>
        
        <div class="line number609 index608 alt2">
          `    ``/**`
        </div>
        
        <div class="line number610 index609 alt1">
          `     ``* Checks if is the behind view showing.`
        </div>
        
        <div class="line number611 index610 alt2">
          `     ``*`
        </div>
        
        <div class="line number612 index611 alt1">
          `     ``* @return Whether or not the behind view is showing`
        </div>
        
        <div class="line number613 index612 alt2">
          `     ``*/`
        </div>
        
        <div class="line number614 index613 alt1">
          `    ``public` `boolean` `isSecondaryMenuShowing() {`
        </div>
        
        <div class="line number615 index614 alt2">
          `        ``return` `mViewAbove.getCurrentItem() == ``2``;`
        </div>
        
        <div class="line number616 index615 alt1">
          `    ``}`
        </div>
        
        <div class="line number617 index616 alt2">
        </div>
        
        <div class="line number618 index617 alt1">
          `    ``/**`
        </div>
        
        <div class="line number619 index618 alt2">
          `     ``* Gets the behind offset.`
        </div>
        
        <div class="line number620 index619 alt1">
          `     ``*`
        </div>
        
        <div class="line number621 index620 alt2">
          `     ``* @return The margin on the right of the screen that the behind view`
        </div>
        
        <div class="line number622 index621 alt1">
          `     ``*         scrolls to`
        </div>
        
        <div class="line number623 index622 alt2">
          `     ``*/`
        </div>
        
        <div class="line number624 index623 alt1">
          `    ``public` `int` `getBehindOffset() {`
        </div>
        
        <div class="line number625 index624 alt2">
          `        ``return` `((RelativeLayout.LayoutParams) mViewBehind.getLayoutParams()).rightMargin;`
        </div>
        
        <div class="line number626 index625 alt1">
          `    ``}`
        </div>
        
        <div class="line number627 index626 alt2">
        </div>
        
        <div class="line number628 index627 alt1">
          `    ``/**`
        </div>
        
        <div class="line number629 index628 alt2">
          `     ``* Sets the behind offset.`
        </div>
        
        <div class="line number630 index629 alt1">
          `     ``*`
        </div>
        
        <div class="line number631 index630 alt2">
          `     ``* @param i`
        </div>
        
        <div class="line number632 index631 alt1">
          `     ``*            The margin, in pixels, on the right of the screen that the`
        </div>
        
        <div class="line number633 index632 alt2">
          `     ``*            behind view scrolls to.`
        </div>
        
        <div class="line number634 index633 alt1">
          `     ``*/`
        </div>
        
        <div class="line number635 index634 alt2">
          `    ``public` `void` `setBehindOffset(``int` `i) {`
        </div>
        
        <div class="line number636 index635 alt1">
          `        ``// RelativeLayout.LayoutParams params =`
        </div>
        
        <div class="line number637 index636 alt2">
          `        ``// ((RelativeLayout.LayoutParams)mViewBehind.getLayoutParams());`
        </div>
        
        <div class="line number638 index637 alt1">
          `        ``// int bottom = params.bottomMargin;`
        </div>
        
        <div class="line number639 index638 alt2">
          `        ``// int top = params.topMargin;`
        </div>
        
        <div class="line number640 index639 alt1">
          `        ``// int left = params.leftMargin;`
        </div>
        
        <div class="line number641 index640 alt2">
          `        ``// params.setMargins(left, top, i, bottom);`
        </div>
        
        <div class="line number642 index641 alt1">
          `        ``mViewBehind.setWidthOffset(i);`
        </div>
        
        <div class="line number643 index642 alt2">
          `    ``}`
        </div>
        
        <div class="line number644 index643 alt1">
        </div>
        
        <div class="line number645 index644 alt2">
          `    ``/**`
        </div>
        
        <div class="line number646 index645 alt1">
          `     ``* Sets the behind offset.`
        </div>
        
        <div class="line number647 index646 alt2">
          `     ``*`
        </div>
        
        <div class="line number648 index647 alt1">
          `     ``* @param resID`
        </div>
        
        <div class="line number649 index648 alt2">
          `     ``*            The dimension resource id to be set as the behind offset. The`
        </div>
        
        <div class="line number650 index649 alt1">
          `     ``*            menu, when open, will leave this width margin on the right of`
        </div>
        
        <div class="line number651 index650 alt2">
          `     ``*            the screen.`
        </div>
        
        <div class="line number652 index651 alt1">
          `     ``*/`
        </div>
        
        <div class="line number653 index652 alt2">
          `    ``public` `void` `setBehindOffsetRes(``int` `resID) {`
        </div>
        
        <div class="line number654 index653 alt1">
          `        ``int` `i = (``int``) getContext().getResources().getDimension(resID);`
        </div>
        
        <div class="line number655 index654 alt2">
          `        ``setBehindOffset(i);`
        </div>
        
        <div class="line number656 index655 alt1">
          `    ``}`
        </div>
        
        <div class="line number657 index656 alt2">
        </div>
        
        <div class="line number658 index657 alt1">
          `    ``/**`
        </div>
        
        <div class="line number659 index658 alt2">
          `     ``* Sets the above offset.`
        </div>
        
        <div class="line number660 index659 alt1">
          `     ``*`
        </div>
        
        <div class="line number661 index660 alt2">
          `     ``* @param i`
        </div>
        
        <div class="line number662 index661 alt1">
          `     ``*            the new above offset, in pixels`
        </div>
        
        <div class="line number663 index662 alt2">
          `     ``*/`
        </div>
        
        <div class="line number664 index663 alt1">
          `    ``public` `void` `setAboveOffset(``int` `i) {`
        </div>
        
        <div class="line number665 index664 alt2">
          `        ``mViewAbove.setAboveOffset(i);`
        </div>
        
        <div class="line number666 index665 alt1">
          `    ``}`
        </div>
        
        <div class="line number667 index666 alt2">
        </div>
        
        <div class="line number668 index667 alt1">
          `    ``/**`
        </div>
        
        <div class="line number669 index668 alt2">
          `     ``* Sets the above offset.`
        </div>
        
        <div class="line number670 index669 alt1">
          `     ``*`
        </div>
        
        <div class="line number671 index670 alt2">
          `     ``* @param resID`
        </div>
        
        <div class="line number672 index671 alt1">
          `     ``*            The dimension resource id to be set as the above offset.`
        </div>
        
        <div class="line number673 index672 alt2">
          `     ``*/`
        </div>
        
        <div class="line number674 index673 alt1">
          `    ``public` `void` `setAboveOffsetRes(``int` `resID) {`
        </div>
        
        <div class="line number675 index674 alt2">
          `        ``int` `i = (``int``) getContext().getResources().getDimension(resID);`
        </div>
        
        <div class="line number676 index675 alt1">
          `        ``setAboveOffset(i);`
        </div>
        
        <div class="line number677 index676 alt2">
          `    ``}`
        </div>
        
        <div class="line number678 index677 alt1">
        </div>
        
        <div class="line number679 index678 alt2">
          `    ``/**`
        </div>
        
        <div class="line number680 index679 alt1">
          `     ``* Sets the behind width.`
        </div>
        
        <div class="line number681 index680 alt2">
          `     ``*`
        </div>
        
        <div class="line number682 index681 alt1">
          `     ``* @param i`
        </div>
        
        <div class="line number683 index682 alt2">
          `     ``*            The width the Sliding Menu will open to, in pixels`
        </div>
        
        <div class="line number684 index683 alt1">
          `     ``*/`
        </div>
        
        <div class="line number685 index684 alt2">
          `    ``@SuppressWarnings``(``"deprecation"``)`
        </div>
        
        <div class="line number686 index685 alt1">
          `    ``public` `void` `setBehindWidth(``int` `i) {`
        </div>
        
        <div class="line number687 index686 alt2">
          `        ``int` `width;`
        </div>
        
        <div class="line number688 index687 alt1">
          `        ``Display display = ((WindowManager) getContext().getSystemService(`
        </div>
        
        <div class="line number689 index688 alt2">
          `                ``Context.WINDOW_SERVICE)).getDefaultDisplay();`
        </div>
        
        <div class="line number690 index689 alt1">
          `        ``try` `{`
        </div>
        
        <div class="line number691 index690 alt2">
          `            ``Class&lt;?&gt; cls = Display.``class``;`
        </div>
        
        <div class="line number692 index691 alt1">
          `            ``Class&lt;?&gt;[] parameterTypes = { Point.``class` `};`
        </div>
        
        <div class="line number693 index692 alt2">
          `            ``Point parameter = ``new` `Point();`
        </div>
        
        <div class="line number694 index693 alt1">
          `            ``Method method = cls.getMethod(``"getSize"``, parameterTypes);`
        </div>
        
        <div class="line number695 index694 alt2">
          `            ``method.invoke(display, parameter);`
        </div>
        
        <div class="line number696 index695 alt1">
          `            ``width = parameter.x;`
        </div>
        
        <div class="line number697 index696 alt2">
          `        ``} ``catch` `(Exception e) {`
        </div>
        
        <div class="line number698 index697 alt1">
          `            ``width = display.getWidth();`
        </div>
        
        <div class="line number699 index698 alt2">
          `        ``}`
        </div>
        
        <div class="line number700 index699 alt1">
          `        ``setBehindOffset(width - i);`
        </div>
        
        <div class="line number701 index700 alt2">
          `    ``}`
        </div>
        
        <div class="line number702 index701 alt1">
        </div>
        
        <div class="line number703 index702 alt2">
          `    ``/**`
        </div>
        
        <div class="line number704 index703 alt1">
          `     ``* Sets the behind width.`
        </div>
        
        <div class="line number705 index704 alt2">
          `     ``*`
        </div>
        
        <div class="line number706 index705 alt1">
          `     ``* @param res`
        </div>
        
        <div class="line number707 index706 alt2">
          `     ``*            The dimension resource id to be set as the behind width`
        </div>
        
        <div class="line number708 index707 alt1">
          `     ``*            offset. The menu, when open, will open this wide.`
        </div>
        
        <div class="line number709 index708 alt2">
          `     ``*/`
        </div>
        
        <div class="line number710 index709 alt1">
          `    ``public` `void` `setBehindWidthRes(``int` `res) {`
        </div>
        
        <div class="line number711 index710 alt2">
          `        ``int` `i = (``int``) getContext().getResources().getDimension(res);`
        </div>
        
        <div class="line number712 index711 alt1">
          `        ``setBehindWidth(i);`
        </div>
        
        <div class="line number713 index712 alt2">
          `    ``}`
        </div>
        
        <div class="line number714 index713 alt1">
        </div>
        
        <div class="line number715 index714 alt2">
          `    ``/**`
        </div>
        
        <div class="line number716 index715 alt1">
          `     ``* Gets the behind scroll scale.`
        </div>
        
        <div class="line number717 index716 alt2">
          `     ``*`
        </div>
        
        <div class="line number718 index717 alt1">
          `     ``* @return The scale of the parallax scroll`
        </div>
        
        <div class="line number719 index718 alt2">
          `     ``*/`
        </div>
        
        <div class="line number720 index719 alt1">
          `    ``public` `float` `getBehindScrollScale() {`
        </div>
        
        <div class="line number721 index720 alt2">
          `        ``return` `mViewBehind.getScrollScale();`
        </div>
        
        <div class="line number722 index721 alt1">
          `    ``}`
        </div>
        
        <div class="line number723 index722 alt2">
        </div>
        
        <div class="line number724 index723 alt1">
          `    ``/**`
        </div>
        
        <div class="line number725 index724 alt2">
          `     ``* Gets the touch mode margin threshold`
        </div>
        
        <div class="line number726 index725 alt1">
          `     ``*`
        </div>
        
        <div class="line number727 index726 alt2">
          `     ``* @return the touch mode margin threshold`
        </div>
        
        <div class="line number728 index727 alt1">
          `     ``*/`
        </div>
        
        <div class="line number729 index728 alt2">
          `    ``public` `int` `getTouchmodeMarginThreshold() {`
        </div>
        
        <div class="line number730 index729 alt1">
          `        ``return` `mViewBehind.getMarginThreshold();`
        </div>
        
        <div class="line number731 index730 alt2">
          `    ``}`
        </div>
        
        <div class="line number732 index731 alt1">
        </div>
        
        <div class="line number733 index732 alt2">
          `    ``/**`
        </div>
        
        <div class="line number734 index733 alt1">
          `     ``* Set the touch mode margin threshold`
        </div>
        
        <div class="line number735 index734 alt2">
          `     ``*`
        </div>
        
        <div class="line number736 index735 alt1">
          `     ``* @param touchmodeMarginThreshold`
        </div>
        
        <div class="line number737 index736 alt2">
          `     ``*/`
        </div>
        
        <div class="line number738 index737 alt1">
          `    ``public` `void` `setTouchmodeMarginThreshold(``int` `touchmodeMarginThreshold) {`
        </div>
        
        <div class="line number739 index738 alt2">
          `        ``mViewBehind.setMarginThreshold(touchmodeMarginThreshold);`
        </div>
        
        <div class="line number740 index739 alt1">
          `    ``}`
        </div>
        
        <div class="line number741 index740 alt2">
        </div>
        
        <div class="line number742 index741 alt1">
          `    ``/**`
        </div>
        
        <div class="line number743 index742 alt2">
          `     ``* Sets the behind scroll scale.`
        </div>
        
        <div class="line number744 index743 alt1">
          `     ``*`
        </div>
        
        <div class="line number745 index744 alt2">
          `     ``* @param f`
        </div>
        
        <div class="line number746 index745 alt1">
          `     ``*            The scale of the parallax scroll (i.e. 1.0f scrolls 1 pixel`
        </div>
        
        <div class="line number747 index746 alt2">
          `     ``*            for every 1 pixel that the above view scrolls and 0.0f scrolls`
        </div>
        
        <div class="line number748 index747 alt1">
          `     ``*            0 pixels)`
        </div>
        
        <div class="line number749 index748 alt2">
          `     ``*/`
        </div>
        
        <div class="line number750 index749 alt1">
          `    ``public` `void` `setBehindScrollScale(``float` `f) {`
        </div>
        
        <div class="line number751 index750 alt2">
          `        ``if` `(f &lt; ``` `&& f &gt; ``1``)`
        </div>
        
        <div class="line number752 index751 alt1">
          `            ``throw` `new` `IllegalStateException(`
        </div>
        
        <div class="line number753 index752 alt2">
          `                    ``"ScrollScale must be between 0 and 1"``);`
        </div>
        
        <div class="line number754 index753 alt1">
          `        ``mViewBehind.setScrollScale(f);`
        </div>
        
        <div class="line number755 index754 alt2">
          `    ``}`
        </div>
        
        <div class="line number756 index755 alt1">
        </div>
        
        <div class="line number757 index756 alt2">
          `    ``/**`
        </div>
        
        <div class="line number758 index757 alt1">
          `     ``* Sets the behind canvas transformer.`
        </div>
        
        <div class="line number759 index758 alt2">
          `     ``*`
        </div>
        
        <div class="line number760 index759 alt1">
          `     ``* @param t`
        </div>
        
        <div class="line number761 index760 alt2">
          `     ``*            the new behind canvas transformer`
        </div>
        
        <div class="line number762 index761 alt1">
          `     ``*/`
        </div>
        
        <div class="line number763 index762 alt2">
          `    ``public` `void` `setBehindCanvasTransformer(CanvasTransformer t) {`
        </div>
        
        <div class="line number764 index763 alt1">
          `        ``mViewBehind.setCanvasTransformer(t);`
        </div>
        
        <div class="line number765 index764 alt2">
          `    ``}`
        </div>
        
        <div class="line number766 index765 alt1">
        </div>
        
        <div class="line number767 index766 alt2">
          `    ``/**`
        </div>
        
        <div class="line number768 index767 alt1">
          `     ``* 设置右侧视图的转场动画`
        </div>
        
        <div class="line number769 index768 alt2">
          `     ``*`
        </div>
        
        <div class="line number770 index769 alt1">
          `     ``* @param t`
        </div>
        
        <div class="line number771 index770 alt2">
          `     ``*            the new above canvas transformer`
        </div>
        
        <div class="line number772 index771 alt1">
          `     ``*/`
        </div>
        
        <div class="line number773 index772 alt2">
          `    ``public` `void` `setAboveCanvasTransformer(CanvasTransformer t) {`
        </div>
        
        <div class="line number774 index773 alt1">
          `        ``mViewAbove.setCanvasTransformer(t);`
        </div>
        
        <div class="line number775 index774 alt2">
          `    ``}`
        </div>
        
        <div class="line number776 index775 alt1">
        </div>
        
        <div class="line number777 index776 alt2">
          `    ``/**`
        </div>
        
        <div class="line number778 index777 alt1">
          `     ``* Gets the touch mode above.`
        </div>
        
        <div class="line number779 index778 alt2">
          `     ``*`
        </div>
        
        <div class="line number780 index779 alt1">
          `     ``* @return the touch mode above`
        </div>
        
        <div class="line number781 index780 alt2">
          `     ``*/`
        </div>
        
        <div class="line number782 index781 alt1">
          `    ``public` `int` `getTouchModeAbove() {`
        </div>
        
        <div class="line number783 index782 alt2">
          `        ``return` `mViewAbove.getTouchMode();`
        </div>
        
        <div class="line number784 index783 alt1">
          `    ``}`
        </div>
        
        <div class="line number785 index784 alt2">
        </div>
        
        <div class="line number786 index785 alt1">
          `    ``/**`
        </div>
        
        <div class="line number787 index786 alt2">
          `     ``* Controls whether the SlidingMenu can be opened with a swipe gesture.`
        </div>
        
        <div class="line number788 index787 alt1">
          `     ``* Options are {@link #TOUCHMODE_MARGIN TOUCHMODE_MARGIN},`
        </div>
        
        <div class="line number789 index788 alt2">
          `     ``* {@link #TOUCHMODE_FULLSCREEN TOUCHMODE_FULLSCREEN}, or`
        </div>
        
        <div class="line number790 index789 alt1">
          `     ``* {@link #TOUCHMODE_NONE TOUCHMODE_NONE}`
        </div>
        
        <div class="line number791 index790 alt2">
          `     ``*`
        </div>
        
        <div class="line number792 index791 alt1">
          `     ``* @param i`
        </div>
        
        <div class="line number793 index792 alt2">
          `     ``*            the new touch mode`
        </div>
        
        <div class="line number794 index793 alt1">
          `     ``*/`
        </div>
        
        <div class="line number795 index794 alt2">
          `    ``public` `void` `setTouchModeAbove(``int` `i) {`
        </div>
        
        <div class="line number796 index795 alt1">
          `        ``if` `(i != TOUCHMODE_FULLSCREEN && i != TOUCHMODE_MARGIN`
        </div>
        
        <div class="line number797 index796 alt2">
          `                ``&& i != TOUCHMODE_NONE) {`
        </div>
        
        <div class="line number798 index797 alt1">
          `            ``throw` `new` `IllegalStateException(`
        </div>
        
        <div class="line number799 index798 alt2">
          `                    ``"TouchMode must be set to either"`
        </div>
        
        <div class="line number800 index799 alt1">
          `                            ``+ ``"TOUCHMODE_FULLSCREEN or TOUCHMODE_MARGIN or TOUCHMODE_NONE."``);`
        </div>
        
        <div class="line number801 index800 alt2">
          `        ``}`
        </div>
        
        <div class="line number802 index801 alt1">
          `        ``mViewAbove.setTouchMode(i);`
        </div>
        
        <div class="line number803 index802 alt2">
          `    ``}`
        </div>
        
        <div class="line number804 index803 alt1">
        </div>
        
        <div class="line number805 index804 alt2">
          `    ``/**`
        </div>
        
        <div class="line number806 index805 alt1">
          `     ``* Controls whether the SlidingMenu can be opened with a swipe gesture.`
        </div>
        
        <div class="line number807 index806 alt2">
          `     ``* Options are {@link #TOUCHMODE_MARGIN TOUCHMODE_MARGIN},`
        </div>
        
        <div class="line number808 index807 alt1">
          `     ``* {@link #TOUCHMODE_FULLSCREEN TOUCHMODE_FULLSCREEN}, or`
        </div>
        
        <div class="line number809 index808 alt2">
          `     ``* {@link #TOUCHMODE_NONE TOUCHMODE_NONE}`
        </div>
        
        <div class="line number810 index809 alt1">
          `     ``*`
        </div>
        
        <div class="line number811 index810 alt2">
          `     ``* @param i`
        </div>
        
        <div class="line number812 index811 alt1">
          `     ``*            the new touch mode`
        </div>
        
        <div class="line number813 index812 alt2">
          `     ``*/`
        </div>
        
        <div class="line number814 index813 alt1">
          `    ``public` `void` `setTouchModeBehind(``int` `i) {`
        </div>
        
        <div class="line number815 index814 alt2">
          `        ``if` `(i != TOUCHMODE_FULLSCREEN && i != TOUCHMODE_MARGIN`
        </div>
        
        <div class="line number816 index815 alt1">
          `                ``&& i != TOUCHMODE_NONE) {`
        </div>
        
        <div class="line number817 index816 alt2">
          `            ``throw` `new` `IllegalStateException(`
        </div>
        
        <div class="line number818 index817 alt1">
          `                    ``"TouchMode must be set to either"`
        </div>
        
        <div class="line number819 index818 alt2">
          `                            ``+ ``"TOUCHMODE_FULLSCREEN or TOUCHMODE_MARGIN or TOUCHMODE_NONE."``);`
        </div>
        
        <div class="line number820 index819 alt1">
          `        ``}`
        </div>
        
        <div class="line number821 index820 alt2">
          `        ``mViewBehind.setTouchMode(i);`
        </div>
        
        <div class="line number822 index821 alt1">
          `    ``}`
        </div>
        
        <div class="line number823 index822 alt2">
        </div>
        
        <div class="line number824 index823 alt1">
          `    ``/**`
        </div>
        
        <div class="line number825 index824 alt2">
          `     ``* Sets the shadow drawable.`
        </div>
        
        <div class="line number826 index825 alt1">
          `     ``*`
        </div>
        
        <div class="line number827 index826 alt2">
          `     ``* @param resId`
        </div>
        
        <div class="line number828 index827 alt1">
          `     ``*            the resource ID of the new shadow drawable`
        </div>
        
        <div class="line number829 index828 alt2">
          `     ``*/`
        </div>
        
        <div class="line number830 index829 alt1">
          `    ``public` `void` `setShadowDrawable(``int` `resId) {`
        </div>
        
        <div class="line number831 index830 alt2">
          `        ``setShadowDrawable(getContext().getResources().getDrawable(resId));`
        </div>
        
        <div class="line number832 index831 alt1">
          `    ``}`
        </div>
        
        <div class="line number833 index832 alt2">
        </div>
        
        <div class="line number834 index833 alt1">
          `    ``/**`
        </div>
        
        <div class="line number835 index834 alt2">
          `     ``* Sets the shadow drawable.`
        </div>
        
        <div class="line number836 index835 alt1">
          `     ``*`
        </div>
        
        <div class="line number837 index836 alt2">
          `     ``* @param d`
        </div>
        
        <div class="line number838 index837 alt1">
          `     ``*            the new shadow drawable`
        </div>
        
        <div class="line number839 index838 alt2">
          `     ``*/`
        </div>
        
        <div class="line number840 index839 alt1">
          `    ``public` `void` `setShadowDrawable(Drawable d) {`
        </div>
        
        <div class="line number841 index840 alt2">
          `        ``mViewBehind.setShadowDrawable(d);`
        </div>
        
        <div class="line number842 index841 alt1">
          `    ``}`
        </div>
        
        <div class="line number843 index842 alt2">
        </div>
        
        <div class="line number844 index843 alt1">
          `    ``/**`
        </div>
        
        <div class="line number845 index844 alt2">
          `     ``* Sets the secondary (right) shadow drawable.`
        </div>
        
        <div class="line number846 index845 alt1">
          `     ``*`
        </div>
        
        <div class="line number847 index846 alt2">
          `     ``* @param resId`
        </div>
        
        <div class="line number848 index847 alt1">
          `     ``*            the resource ID of the new shadow drawable`
        </div>
        
        <div class="line number849 index848 alt2">
          `     ``*/`
        </div>
        
        <div class="line number850 index849 alt1">
          `    ``public` `void` `setSecondaryShadowDrawable(``int` `resId) {`
        </div>
        
        <div class="line number851 index850 alt2">
          `        ``setSecondaryShadowDrawable(getContext().getResources().getDrawable(`
        </div>
        
        <div class="line number852 index851 alt1">
          `                ``resId));`
        </div>
        
        <div class="line number853 index852 alt2">
          `    ``}`
        </div>
        
        <div class="line number854 index853 alt1">
        </div>
        
        <div class="line number855 index854 alt2">
          `    ``/**`
        </div>
        
        <div class="line number856 index855 alt1">
          `     ``* Sets the secondary (right) shadow drawable.`
        </div>
        
        <div class="line number857 index856 alt2">
          `     ``*`
        </div>
        
        <div class="line number858 index857 alt1">
          `     ``* @param d`
        </div>
        
        <div class="line number859 index858 alt2">
          `     ``*            the new shadow drawable`
        </div>
        
        <div class="line number860 index859 alt1">
          `     ``*/`
        </div>
        
        <div class="line number861 index860 alt2">
          `    ``public` `void` `setSecondaryShadowDrawable(Drawable d) {`
        </div>
        
        <div class="line number862 index861 alt1">
          `        ``mViewBehind.setSecondaryShadowDrawable(d);`
        </div>
        
        <div class="line number863 index862 alt2">
          `    ``}`
        </div>
        
        <div class="line number864 index863 alt1">
        </div>
        
        <div class="line number865 index864 alt2">
          `    ``/**`
        </div>
        
        <div class="line number866 index865 alt1">
          `     ``* Sets the shadow width.`
        </div>
        
        <div class="line number867 index866 alt2">
          `     ``*`
        </div>
        
        <div class="line number868 index867 alt1">
          `     ``* @param resId`
        </div>
        
        <div class="line number869 index868 alt2">
          `     ``*            The dimension resource id to be set as the shadow width.`
        </div>
        
        <div class="line number870 index869 alt1">
          `     ``*/`
        </div>
        
        <div class="line number871 index870 alt2">
          `    ``public` `void` `setShadowWidthRes(``int` `resId) {`
        </div>
        
        <div class="line number872 index871 alt1">
          `        ``setShadowWidth((``int``) getResources().getDimension(resId));`
        </div>
        
        <div class="line number873 index872 alt2">
          `    ``}`
        </div>
        
        <div class="line number874 index873 alt1">
        </div>
        
        <div class="line number875 index874 alt2">
          `    ``/**`
        </div>
        
        <div class="line number876 index875 alt1">
          `     ``* Sets the shadow width.`
        </div>
        
        <div class="line number877 index876 alt2">
          `     ``*`
        </div>
        
        <div class="line number878 index877 alt1">
          `     ``* @param pixels`
        </div>
        
        <div class="line number879 index878 alt2">
          `     ``*            the new shadow width, in pixels`
        </div>
        
        <div class="line number880 index879 alt1">
          `     ``*/`
        </div>
        
        <div class="line number881 index880 alt2">
          `    ``public` `void` `setShadowWidth(``int` `pixels) {`
        </div>
        
        <div class="line number882 index881 alt1">
          `        ``mViewBehind.setShadowWidth(pixels);`
        </div>
        
        <div class="line number883 index882 alt2">
          `    ``}`
        </div>
        
        <div class="line number884 index883 alt1">
        </div>
        
        <div class="line number885 index884 alt2">
          `    ``/**`
        </div>
        
        <div class="line number886 index885 alt1">
          `     ``* Enables or disables the SlidingMenu's fade in and out`
        </div>
        
        <div class="line number887 index886 alt2">
          `     ``*`
        </div>
        
        <div class="line number888 index887 alt1">
          `     ``* @param b`
        </div>
        
        <div class="line number889 index888 alt2">
          `     ``*            true to enable fade, false to disable it`
        </div>
        
        <div class="line number890 index889 alt1">
          `     ``*/`
        </div>
        
        <div class="line number891 index890 alt2">
          `    ``public` `void` `setFadeEnabled(``boolean` `b) {`
        </div>
        
        <div class="line number892 index891 alt1">
          `        ``mViewBehind.setFadeEnabled(b);`
        </div>
        
        <div class="line number893 index892 alt2">
          `    ``}`
        </div>
        
        <div class="line number894 index893 alt1">
        </div>
        
        <div class="line number895 index894 alt2">
          `    ``/**`
        </div>
        
        <div class="line number896 index895 alt1">
          `     ``* Sets how much the SlidingMenu fades in and out. Fade must be enabled, see`
        </div>
        
        <div class="line number897 index896 alt2">
          `     ``* {@link #setFadeEnabled(boolean) setFadeEnabled(boolean)}`
        </div>
        
        <div class="line number898 index897 alt1">
          `     ``*`
        </div>
        
        <div class="line number899 index898 alt2">
          `     ``* @param f`
        </div>
        
        <div class="line number900 index899 alt1">
          `     ``*            the new fade degree, between 0.0f and 1.0f`
        </div>
        
        <div class="line number901 index900 alt2">
          `     ``*/`
        </div>
        
        <div class="line number902 index901 alt1">
          `    ``public` `void` `setFadeDegree(``float` `f) {`
        </div>
        
        <div class="line number903 index902 alt2">
          `        ``mViewBehind.setFadeDegree(f);`
        </div>
        
        <div class="line number904 index903 alt1">
          `    ``}`
        </div>
        
        <div class="line number905 index904 alt2">
        </div>
        
        <div class="line number906 index905 alt1">
          `    ``/**`
        </div>
        
        <div class="line number907 index906 alt2">
          `     ``* Enables or disables whether the selector is drawn`
        </div>
        
        <div class="line number908 index907 alt1">
          `     ``*`
        </div>
        
        <div class="line number909 index908 alt2">
          `     ``* @param b`
        </div>
        
        <div class="line number910 index909 alt1">
          `     ``*            true to draw the selector, false to not draw the selector`
        </div>
        
        <div class="line number911 index910 alt2">
          `     ``*/`
        </div>
        
        <div class="line number912 index911 alt1">
          `    ``public` `void` `setSelectorEnabled(``boolean` `b) {`
        </div>
        
        <div class="line number913 index912 alt2">
          `        ``mViewBehind.setSelectorEnabled(``true``);`
        </div>
        
        <div class="line number914 index913 alt1">
          `    ``}`
        </div>
        
        <div class="line number915 index914 alt2">
        </div>
        
        <div class="line number916 index915 alt1">
          `    ``/**`
        </div>
        
        <div class="line number917 index916 alt2">
          `     ``* Sets the selected view. The selector will be drawn here`
        </div>
        
        <div class="line number918 index917 alt1">
          `     ``*`
        </div>
        
        <div class="line number919 index918 alt2">
          `     ``* @param v`
        </div>
        
        <div class="line number920 index919 alt1">
          `     ``*            the new selected view`
        </div>
        
        <div class="line number921 index920 alt2">
          `     ``*/`
        </div>
        
        <div class="line number922 index921 alt1">
          `    ``public` `void` `setSelectedView(View v) {`
        </div>
        
        <div class="line number923 index922 alt2">
          `        ``mViewBehind.setSelectedView(v);`
        </div>
        
        <div class="line number924 index923 alt1">
          `    ``}`
        </div>
        
        <div class="line number925 index924 alt2">
        </div>
        
        <div class="line number926 index925 alt1">
          `    ``/**`
        </div>
        
        <div class="line number927 index926 alt2">
          `     ``* Sets the selector drawable.`
        </div>
        
        <div class="line number928 index927 alt1">
          `     ``*`
        </div>
        
        <div class="line number929 index928 alt2">
          `     ``* @param res`
        </div>
        
        <div class="line number930 index929 alt1">
          `     ``*            a resource ID for the selector drawable`
        </div>
        
        <div class="line number931 index930 alt2">
          `     ``*/`
        </div>
        
        <div class="line number932 index931 alt1">
          `    ``public` `void` `setSelectorDrawable(``int` `res) {`
        </div>
        
        <div class="line number933 index932 alt2">
          `        ``mViewBehind.setSelectorBitmap(BitmapFactory.decodeResource(`
        </div>
        
        <div class="line number934 index933 alt1">
          `                ``getResources(), res));`
        </div>
        
        <div class="line number935 index934 alt2">
          `    ``}`
        </div>
        
        <div class="line number936 index935 alt1">
        </div>
        
        <div class="line number937 index936 alt2">
          `    ``/**`
        </div>
        
        <div class="line number938 index937 alt1">
          `     ``* Sets the selector drawable.`
        </div>
        
        <div class="line number939 index938 alt2">
          `     ``*`
        </div>
        
        <div class="line number940 index939 alt1">
          `     ``* @param b`
        </div>
        
        <div class="line number941 index940 alt2">
          `     ``*            the new selector bitmap`
        </div>
        
        <div class="line number942 index941 alt1">
          `     ``*/`
        </div>
        
        <div class="line number943 index942 alt2">
          `    ``public` `void` `setSelectorBitmap(Bitmap b) {`
        </div>
        
        <div class="line number944 index943 alt1">
          `        ``mViewBehind.setSelectorBitmap(b);`
        </div>
        
        <div class="line number945 index944 alt2">
          `    ``}`
        </div>
        
        <div class="line number946 index945 alt1">
        </div>
        
        <div class="line number947 index946 alt2">
          `    ``/**`
        </div>
        
        <div class="line number948 index947 alt1">
          `     ``* Add a View ignored by the Touch Down event when mode is Fullscreen`
        </div>
        
        <div class="line number949 index948 alt2">
          `     ``*`
        </div>
        
        <div class="line number950 index949 alt1">
          `     ``* @param v`
        </div>
        
        <div class="line number951 index950 alt2">
          `     ``*            a view to be ignored`
        </div>
        
        <div class="line number952 index951 alt1">
          `     ``*/`
        </div>
        
        <div class="line number953 index952 alt2">
          `    ``public` `void` `addIgnoredView(View v) {`
        </div>
        
        <div class="line number954 index953 alt1">
          `        ``mViewAbove.addIgnoredView(v);`
        </div>
        
        <div class="line number955 index954 alt2">
          `    ``}`
        </div>
        
        <div class="line number956 index955 alt1">
        </div>
        
        <div class="line number957 index956 alt2">
          `    ``/**`
        </div>
        
        <div class="line number958 index957 alt1">
          `     ``* Remove a View ignored by the Touch Down event when mode is Fullscreen`
        </div>
        
        <div class="line number959 index958 alt2">
          `     ``*`
        </div>
        
        <div class="line number960 index959 alt1">
          `     ``* @param v`
        </div>
        
        <div class="line number961 index960 alt2">
          `     ``*            a view not wanted to be ignored anymore`
        </div>
        
        <div class="line number962 index961 alt1">
          `     ``*/`
        </div>
        
        <div class="line number963 index962 alt2">
          `    ``public` `void` `removeIgnoredView(View v) {`
        </div>
        
        <div class="line number964 index963 alt1">
          `        ``mViewAbove.removeIgnoredView(v);`
        </div>
        
        <div class="line number965 index964 alt2">
          `    ``}`
        </div>
        
        <div class="line number966 index965 alt1">
        </div>
        
        <div class="line number967 index966 alt2">
          `    ``/**`
        </div>
        
        <div class="line number968 index967 alt1">
          `     ``* Clear the list of Views ignored by the Touch Down event when mode is`
        </div>
        
        <div class="line number969 index968 alt2">
          `     ``* Fullscreen`
        </div>
        
        <div class="line number970 index969 alt1">
          `     ``*/`
        </div>
        
        <div class="line number971 index970 alt2">
          `    ``public` `void` `clearIgnoredViews() {`
        </div>
        
        <div class="line number972 index971 alt1">
          `        ``mViewAbove.clearIgnoredViews();`
        </div>
        
        <div class="line number973 index972 alt2">
          `    ``}`
        </div>
        
        <div class="line number974 index973 alt1">
        </div>
        
        <div class="line number975 index974 alt2">
          `    ``/**`
        </div>
        
        <div class="line number976 index975 alt1">
          `     ``* Sets the OnOpenListener. {@link OnOpenListener#onOpen()`
        </div>
        
        <div class="line number977 index976 alt2">
          `     ``* OnOpenListener.onOpen()} will be called when the SlidingMenu is opened`
        </div>
        
        <div class="line number978 index977 alt1">
          `     ``*`
        </div>
        
        <div class="line number979 index978 alt2">
          `     ``* @param listener`
        </div>
        
        <div class="line number980 index979 alt1">
          `     ``*            the new OnOpenListener`
        </div>
        
        <div class="line number981 index980 alt2">
          `     ``*/`
        </div>
        
        <div class="line number982 index981 alt1">
          `    ``public` `void` `setOnOpenListener(OnOpenListener listener) {`
        </div>
        
        <div class="line number983 index982 alt2">
          `        ``// mViewAbove.setOnOpenListener(listener);`
        </div>
        
        <div class="line number984 index983 alt1">
          `        ``mOpenListener = listener;`
        </div>
        
        <div class="line number985 index984 alt2">
          `    ``}`
        </div>
        
        <div class="line number986 index985 alt1">
        </div>
        
        <div class="line number987 index986 alt2">
          `    ``/**`
        </div>
        
        <div class="line number988 index987 alt1">
          `     ``* Sets the OnOpenListner for secondary menu {@link OnOpenListener#onOpen()`
        </div>
        
        <div class="line number989 index988 alt2">
          `     ``* OnOpenListener.onOpen()} will be called when the secondary SlidingMenu is`
        </div>
        
        <div class="line number990 index989 alt1">
          `     ``* opened`
        </div>
        
        <div class="line number991 index990 alt2">
          `     ``*`
        </div>
        
        <div class="line number992 index991 alt1">
          `     ``* @param listener`
        </div>
        
        <div class="line number993 index992 alt2">
          `     ``*            the new OnOpenListener`
        </div>
        
        <div class="line number994 index993 alt1">
          `     ``*/`
        </div>
        
        <div class="line number995 index994 alt2">
        </div>
        
        <div class="line number996 index995 alt1">
          `    ``public` `void` `setSecondaryOnOpenListner(OnOpenListener listener) {`
        </div>
        
        <div class="line number997 index996 alt2">
          `        ``mSecondaryOpenListner = listener;`
        </div>
        
        <div class="line number998 index997 alt1">
          `    ``}`
        </div>
        
        <div class="line number999 index998 alt2">
        </div>
        
        <div class="line number1000 index999 alt1">
          `    ``/**`
        </div>
        
        <div class="line number1001 index1000 alt2">
          `     ``* Sets the OnCloseListener. {@link OnCloseListener#onClose()`
        </div>
        
        <div class="line number1002 index1001 alt1">
          `     ``* OnCloseListener.onClose()} will be called when any one of the SlidingMenu`
        </div>
        
        <div class="line number1003 index1002 alt2">
          `     ``* is closed`
        </div>
        
        <div class="line number1004 index1003 alt1">
          `     ``*`
        </div>
        
        <div class="line number1005 index1004 alt2">
          `     ``* @param listener`
        </div>
        
        <div class="line number1006 index1005 alt1">
          `     ``*            the new setOnCloseListener`
        </div>
        
        <div class="line number1007 index1006 alt2">
          `     ``*/`
        </div>
        
        <div class="line number1008 index1007 alt1">
          `    ``public` `void` `setOnCloseListener(OnCloseListener listener) {`
        </div>
        
        <div class="line number1009 index1008 alt2">
          `        ``// mViewAbove.setOnCloseListener(listener);`
        </div>
        
        <div class="line number1010 index1009 alt1">
          `        ``mCloseListener = listener;`
        </div>
        
        <div class="line number1011 index1010 alt2">
          `    ``}`
        </div>
        
        <div class="line number1012 index1011 alt1">
        </div>
        
        <div class="line number1013 index1012 alt2">
          `    ``/**`
        </div>
        
        <div class="line number1014 index1013 alt1">
          `     ``* Sets the OnOpenedListener. {@link OnOpenedListener#onOpened()`
        </div>
        
        <div class="line number1015 index1014 alt2">
          `     ``* OnOpenedListener.onOpened()} will be called after the SlidingMenu is`
        </div>
        
        <div class="line number1016 index1015 alt1">
          `     ``* opened`
        </div>
        
        <div class="line number1017 index1016 alt2">
          `     ``*`
        </div>
        
        <div class="line number1018 index1017 alt1">
          `     ``* @param listener`
        </div>
        
        <div class="line number1019 index1018 alt2">
          `     ``*            the new OnOpenedListener`
        </div>
        
        <div class="line number1020 index1019 alt1">
          `     ``*/`
        </div>
        
        <div class="line number1021 index1020 alt2">
          `    ``public` `void` `setOnOpenedListener(OnOpenedListener listener) {`
        </div>
        
        <div class="line number1022 index1021 alt1">
          `        ``mViewAbove.setOnOpenedListener(listener);`
        </div>
        
        <div class="line number1023 index1022 alt2">
          `    ``}`
        </div>
        
        <div class="line number1024 index1023 alt1">
        </div>
        
        <div class="line number1025 index1024 alt2">
          `    ``/**`
        </div>
        
        <div class="line number1026 index1025 alt1">
          `     ``* Sets the OnClosedListener. {@link OnClosedListener#onClosed()`
        </div>
        
        <div class="line number1027 index1026 alt2">
          `     ``* OnClosedListener.onClosed()} will be called after the SlidingMenu is`
        </div>
        
        <div class="line number1028 index1027 alt1">
          `     ``* closed`
        </div>
        
        <div class="line number1029 index1028 alt2">
          `     ``*`
        </div>
        
        <div class="line number1030 index1029 alt1">
          `     ``* @param listener`
        </div>
        
        <div class="line number1031 index1030 alt2">
          `     ``*            the new OnClosedListener`
        </div>
        
        <div class="line number1032 index1031 alt1">
          `     ``*/`
        </div>
        
        <div class="line number1033 index1032 alt2">
          `    ``public` `void` `setOnClosedListener(OnClosedListener listener) {`
        </div>
        
        <div class="line number1034 index1033 alt1">
          `        ``mViewAbove.setOnClosedListener(listener);`
        </div>
        
        <div class="line number1035 index1034 alt2">
          `    ``}`
        </div>
        
        <div class="line number1036 index1035 alt1">
        </div>
        
        <div class="line number1037 index1036 alt2">
          `    ``public` `static` `class` `SavedState ``extends` `BaseSavedState {`
        </div>
        
        <div class="line number1038 index1037 alt1">
        </div>
        
        <div class="line number1039 index1038 alt2">
          `        ``private` `final` `int` `mItem;`
        </div>
        
        <div class="line number1040 index1039 alt1">
        </div>
        
        <div class="line number1041 index1040 alt2">
          `        ``public` `SavedState(Parcelable superState, ``int` `item) {`
        </div>
        
        <div class="line number1042 index1041 alt1">
          `            ``super``(superState);`
        </div>
        
        <div class="line number1043 index1042 alt2">
          `            ``mItem = item;`
        </div>
        
        <div class="line number1044 index1043 alt1">
          `        ``}`
        </div>
        
        <div class="line number1045 index1044 alt2">
        </div>
        
        <div class="line number1046 index1045 alt1">
          `        ``private` `SavedState(Parcel in) {`
        </div>
        
        <div class="line number1047 index1046 alt2">
          `            ``super``(in);`
        </div>
        
        <div class="line number1048 index1047 alt1">
          `            ``mItem = in.readInt();`
        </div>
        
        <div class="line number1049 index1048 alt2">
          `        ``}`
        </div>
        
        <div class="line number1050 index1049 alt1">
        </div>
        
        <div class="line number1051 index1050 alt2">
          `        ``public` `int` `getItem() {`
        </div>
        
        <div class="line number1052 index1051 alt1">
          `            ``return` `mItem;`
        </div>
        
        <div class="line number1053 index1052 alt2">
          `        ``}`
        </div>
        
        <div class="line number1054 index1053 alt1">
        </div>
        
        <div class="line number1055 index1054 alt2">
          `        ``/*`
        </div>
        
        <div class="line number1056 index1055 alt1">
          `         ``* (non-Javadoc)`
        </div>
        
        <div class="line number1057 index1056 alt2">
          `         ``*`
        </div>
        
        <div class="line number1058 index1057 alt1">
          `         ``* @see android.view.AbsSavedState#writeToParcel(android.os.Parcel, int)`
        </div>
        
        <div class="line number1059 index1058 alt2">
          `         ``*/`
        </div>
        
        <div class="line number1060 index1059 alt1">
          `        ``public void writeToParcel(Parcel out, int flags) {`
        </div>
        
        <div class="line number1061 index1060 alt2">
          `            ``super.writeToParcel(out, flags);`
        </div>
        
        <div class="line number1062 index1061 alt1">
          `            ``out.writeInt(mItem);`
        </div>
        
        <div class="line number1063 index1062 alt2">
          `        ``}`
        </div>
        
        <div class="line number1064 index1063 alt1">
        </div>
        
        <div class="line number1065 index1064 alt2">
          `        ``public static final Parcelable.Creator&lt;SavedState&gt; CREATOR = new Parcelable.Creator&lt;SavedState&gt;() {`
        </div>
        
        <div class="line number1066 index1065 alt1">
          `            ``public SavedState createFromParcel(Parcel in) {`
        </div>
        
        <div class="line number1067 index1066 alt2">
          `                ``return new SavedState(in);`
        </div>
        
        <div class="line number1068 index1067 alt1">
          `            ``}`
        </div>
        
        <div class="line number1069 index1068 alt2">
        </div>
        
        <div class="line number1070 index1069 alt1">
          `            ``public SavedState[] newArray(int size) {`
        </div>
        
        <div class="line number1071 index1070 alt2">
          `                ``return new SavedState[size];`
        </div>
        
        <div class="line number1072 index1071 alt1">
          `            ``}`
        </div>
        
        <div class="line number1073 index1072 alt2">
          `        ``};`
        </div>
        
        <div class="line number1074 index1073 alt1">
        </div>
        
        <div class="line number1075 index1074 alt2">
          `    ``}`
        </div>
        
        <div class="line number1076 index1075 alt1">
        </div>
        
        <div class="line number1077 index1076 alt2">
          `    ``/*`
        </div>
        
        <div class="line number1078 index1077 alt1">
          `     ``* (non-Javadoc)`
        </div>
        
        <div class="line number1079 index1078 alt2">
          `     ``*`
        </div>
        
        <div class="line number1080 index1079 alt1">
          `     ``* @see android.view.View#onSaveInstanceState()`
        </div>
        
        <div class="line number1081 index1080 alt2">
          `     ``*/`
        </div>
        
        <div class="line number1082 index1081 alt1">
          `    ``@Override`
        </div>
        
        <div class="line number1083 index1082 alt2">
          `    ``protected Parcelable onSaveInstanceState() {`
        </div>
        
        <div class="line number1084 index1083 alt1">
          `        ``Parcelable superState = super.onSaveInstanceState();`
        </div>
        
        <div class="line number1085 index1084 alt2">
          `        ``SavedState ss = new SavedState(superState, mViewAbove.getCurrentItem());`
        </div>
        
        <div class="line number1086 index1085 alt1">
          `        ``return ss;`
        </div>
        
        <div class="line number1087 index1086 alt2">
          `    ``}`
        </div>
        
        <div class="line number1088 index1087 alt1">
        </div>
        
        <div class="line number1089 index1088 alt2">
          `    ``/*`
        </div>
        
        <div class="line number1090 index1089 alt1">
          `     ``* (non-Javadoc)`
        </div>
        
        <div class="line number1091 index1090 alt2">
          `     ``*`
        </div>
        
        <div class="line number1092 index1091 alt1">
          `     ``* @see android.view.View#onRestoreInstanceState(android.os.Parcelable)`
        </div>
        
        <div class="line number1093 index1092 alt2">
          `     ``*/`
        </div>
        
        <div class="line number1094 index1093 alt1">
          `    ``@Override`
        </div>
        
        <div class="line number1095 index1094 alt2">
          `    ``protected void onRestoreInstanceState(Parcelable state) {`
        </div>
        
        <div class="line number1096 index1095 alt1">
          `        ``SavedState ss = (SavedState) state;`
        </div>
        
        <div class="line number1097 index1096 alt2">
          `        ``super.onRestoreInstanceState(ss.getSuperState());`
        </div>
        
        <div class="line number1098 index1097 alt1">
          `        ``mViewAbove.setCurrentItem(ss.getItem());`
        </div>
        
        <div class="line number1099 index1098 alt2">
          `    ``}`
        </div>
        
        <div class="line number1100 index1099 alt1">
        </div>
        
        <div class="line number1101 index1100 alt2">
          `    ``/*`
        </div>
        
        <div class="line number1102 index1101 alt1">
          `     ``* (non-Javadoc)`
        </div>
        
        <div class="line number1103 index1102 alt2">
          `     ``*`
        </div>
        
        <div class="line number1104 index1103 alt1">
          `     ``* @see android.view.ViewGroup#fitSystemWindows(android.graphics.Rect)`
        </div>
        
        <div class="line number1105 index1104 alt2">
          `     ``*/`
        </div>
        
        <div class="line number1106 index1105 alt1">
          `    ``@SuppressLint``(``"NewApi"``)`
        </div>
        
        <div class="line number1107 index1106 alt2">
          `    ``@Override`
        </div>
        
        <div class="line number1108 index1107 alt1">
          `    ``protected` `boolean` `fitSystemWindows(Rect insets) {`
        </div>
        
        <div class="line number1109 index1108 alt2">
          `        ``int` `leftPadding = insets.left;`
        </div>
        
        <div class="line number1110 index1109 alt1">
          `        ``int` `rightPadding = insets.right;`
        </div>
        
        <div class="line number1111 index1110 alt2">
          `        ``int` `topPadding = insets.top;`
        </div>
        
        <div class="line number1112 index1111 alt1">
          `        ``int` `bottomPadding = insets.bottom;`
        </div>
        
        <div class="line number1113 index1112 alt2">
          `        ``if` `(!mActionbarOverlay) {`
        </div>
        
        <div class="line number1114 index1113 alt1">
          `            ``Log.v(TAG, ``"setting padding!"``);`
        </div>
        
        <div class="line number1115 index1114 alt2">
          `            ``setPadding(leftPadding, topPadding, rightPadding, bottomPadding);`
        </div>
        
        <div class="line number1116 index1115 alt1">
          `        ``}`
        </div>
        
        <div class="line number1117 index1116 alt2">
          `        ``return` `true``;`
        </div>
        
        <div class="line number1118 index1117 alt1">
          `    ``}`
        </div>
        
        <div class="line number1119 index1118 alt2">
        </div>
        
        <div class="line number1120 index1119 alt1">
          `    ``@TargetApi``(Build.VERSION_CODES.HONEYCOMB)`
        </div>
        
        <div class="line number1121 index1120 alt2">
          `    ``public` `void` `manageLayers(``float` `percentOpen) {`
        </div>
        
        <div class="line number1122 index1121 alt1">
          `        ``if` `(Build.VERSION.SDK_INT &lt; ``11``)`
        </div>
        
        <div class="line number1123 index1122 alt2">
          `            ``return``;`
        </div>
        
        <div class="line number1124 index1123 alt1">
        </div>
        
        <div class="line number1125 index1124 alt2">
          `        ``boolean` `layer = percentOpen &gt; ````.0f && percentOpen &lt; ``1``.0f;`
        </div>
        
        <div class="line number1126 index1125 alt1">
          `        ``final` `int` `layerType = layer ? View.LAYER_TYPE_HARDWARE`
        </div>
        
        <div class="line number1127 index1126 alt2">
          `                ``: View.LAYER_TYPE_NONE;`
        </div>
        
        <div class="line number1128 index1127 alt1">
        </div>
        
        <div class="line number1129 index1128 alt2">
          `        ``if` `(layerType != getContent().getLayerType()) {`
        </div>
        
        <div class="line number1130 index1129 alt1">
          `            ``getHandler().post(``new` `Runnable() {`
        </div>
        
        <div class="line number1131 index1130 alt2">
          `                ``public` `void` `run() {`
        </div>
        
        <div class="line number1132 index1131 alt1">
          `                    ``Log.v(TAG, ``"changing layerType. hardware? "`
        </div>
        
        <div class="line number1133 index1132 alt2">
          `                            ``+ (layerType == View.LAYER_TYPE_HARDWARE));`
        </div>
        
        <div class="line number1134 index1133 alt1">
          `                    ``getContent().setLayerType(layerType, ``null``);`
        </div>
        
        <div class="line number1135 index1134 alt2">
          `                    ``getMenu().setLayerType(layerType, ``null``);`
        </div>
        
        <div class="line number1136 index1135 alt1">
          `                    ``if` `(getSecondaryMenu() != ``null``) {`
        </div>
        
        <div class="line number1137 index1136 alt2">
          `                        ``getSecondaryMenu().setLayerType(layerType, ``null``);`
        </div>
        
        <div class="line number1138 index1137 alt1">
          `                    ``}`
        </div>
        
        <div class="line number1139 index1138 alt2">
          `                ``}`
        </div>
        
        <div class="line number1140 index1139 alt1">
          `            ``});`
        </div>
        
        <div class="line number1141 index1140 alt2">
          `        ``}`
        </div>
        
        <div class="line number1142 index1141 alt1">
          `    ``}`
        </div>
        
        <div class="line number1143 index1142 alt2">
        </div>
        
        <div class="line number1144 index1143 alt1">
          `}`
        </div>
      </div>
    </td>
  </tr>
</table>
[?](http://www.open-open.com/lib/view/open1411269966859.html#)
<table border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td class="gutter">
      <div class="line number1 index0 alt2">
        1
      </div>
      
      <div class="line number2 index1 alt1">
        2
      </div>
      
      <div class="line number3 index2 alt2">
        3
      </div>
      
      <div class="line number4 index3 alt1">
        4
      </div>
      
      <div class="line number5 index4 alt2">
        5
      </div>
      
      <div class="line number6 index5 alt1">
        6
      </div>
      
      <div class="line number7 index6 alt2">
        7
      </div>
      
      <div class="line number8 index7 alt1">
        8
      </div>
      
      <div class="line number9 index8 alt2">
        9
      </div>
      
      <div class="line number10 index9 alt1">
        10
      </div>
      
      <div class="line number11 index10 alt2">
        11
      </div>
      
      <div class="line number12 index11 alt1">
        12
      </div>
      
      <div class="line number13 index12 alt2">
        13
      </div>
      
      <div class="line number14 index13 alt1">
        14
      </div>
      
      <div class="line number15 index14 alt2">
        15
      </div>
      
      <div class="line number16 index15 alt1">
        16
      </div>
      
      <div class="line number17 index16 alt2">
        17
      </div>
      
      <div class="line number18 index17 alt1">
        18
      </div>
      
      <div class="line number19 index18 alt2">
        19
      </div>
      
      <div class="line number20 index19 alt1">
        20
      </div>
      
      <div class="line number21 index20 alt2">
        21
      </div>
      
      <div class="line number22 index21 alt1">
        22
      </div>
      
      <div class="line number23 index22 alt2">
        23
      </div>
      
      <div class="line number24 index23 alt1">
        24
      </div>
      
      <div class="line number25 index24 alt2">
        25
      </div>
      
      <div class="line number26 index25 alt1">
        26
      </div>
      
      <div class="line number27 index26 alt2">
        27
      </div>
      
      <div class="line number28 index27 alt1">
        28
      </div>
      
      <div class="line number29 index28 alt2">
        29
      </div>
      
      <div class="line number30 index29 alt1">
        30
      </div>
      
      <div class="line number31 index30 alt2">
        31
      </div>
      
      <div class="line number32 index31 alt1">
        32
      </div>
      
      <div class="line number33 index32 alt2">
        33
      </div>
      
      <div class="line number34 index33 alt1">
        34
      </div>
      
      <div class="line number35 index34 alt2">
        35
      </div>
      
      <div class="line number36 index35 alt1">
        36
      </div>
      
      <div class="line number37 index36 alt2">
        37
      </div>
      
      <div class="line number38 index37 alt1">
        38
      </div>
      
      <div class="line number39 index38 alt2">
        39
      </div>
      
      <div class="line number40 index39 alt1">
        40
      </div>
      
      <div class="line number41 index40 alt2">
        41
      </div>
      
      <div class="line number42 index41 alt1">
        42
      </div>
      
      <div class="line number43 index42 alt2">
        43
      </div>
      
      <div class="line number44 index43 alt1">
        44
      </div>
      
      <div class="line number45 index44 alt2">
        45
      </div>
      
      <div class="line number46 index45 alt1">
        46
      </div>
      
      <div class="line number47 index46 alt2">
        47
      </div>
      
      <div class="line number48 index47 alt1">
        48
      </div>
      
      <div class="line number49 index48 alt2">
        49
      </div>
      
      <div class="line number50 index49 alt1">
        50
      </div>
      
      <div class="line number51 index50 alt2">
        51
      </div>
      
      <div class="line number52 index51 alt1">
        52
      </div>
      
      <div class="line number53 index52 alt2">
        53
      </div>
      
      <div class="line number54 index53 alt1">
        54
      </div>
      
      <div class="line number55 index54 alt2">
        55
      </div>
      
      <div class="line number56 index55 alt1">
        56
      </div>
      
      <div class="line number57 index56 alt2">
        57
      </div>
      
      <div class="line number58 index57 alt1">
        58
      </div>
      
      <div class="line number59 index58 alt2">
        59
      </div>
      
      <div class="line number60 index59 alt1">
        60
      </div>
      
      <div class="line number61 index60 alt2">
        61
      </div>
      
      <div class="line number62 index61 alt1">
        62
      </div>
      
      <div class="line number63 index62 alt2">
        63
      </div>
      
      <div class="line number64 index63 alt1">
        64
      </div>
      
      <div class="line number65 index64 alt2">
        65
      </div>
      
      <div class="line number66 index65 alt1">
        66
      </div>
      
      <div class="line number67 index66 alt2">
        67
      </div>
      
      <div class="line number68 index67 alt1">
        68
      </div>
      
      <div class="line number69 index68 alt2">
        69
      </div>
      
      <div class="line number70 index69 alt1">
        70
      </div>
      
      <div class="line number71 index70 alt2">
        71
      </div>
      
      <div class="line number72 index71 alt1">
        72
      </div>
      
      <div class="line number73 index72 alt2">
        73
      </div>
      
      <div class="line number74 index73 alt1">
        74
      </div>
      
      <div class="line number75 index74 alt2">
        75
      </div>
      
      <div class="line number76 index75 alt1">
        76
      </div>
      
      <div class="line number77 index76 alt2">
        77
      </div>
      
      <div class="line number78 index77 alt1">
        78
      </div>
      
      <div class="line number79 index78 alt2">
        79
      </div>
      
      <div class="line number80 index79 alt1">
        80
      </div>
      
      <div class="line number81 index80 alt2">
        81
      </div>
      
      <div class="line number82 index81 alt1">
        82
      </div>
      
      <div class="line number83 index82 alt2">
        83
      </div>
      
      <div class="line number84 index83 alt1">
        84
      </div>
      
      <div class="line number85 index84 alt2">
        85
      </div>
      
      <div class="line number86 index85 alt1">
        86
      </div>
      
      <div class="line number87 index86 alt2">
        87
      </div>
      
      <div class="line number88 index87 alt1">
        88
      </div>
      
      <div class="line number89 index88 alt2">
        89
      </div>
      
      <div class="line number90 index89 alt1">
        90
      </div>
      
      <div class="line number91 index90 alt2">
        91
      </div>
      
      <div class="line number92 index91 alt1">
        92
      </div>
      
      <div class="line number93 index92 alt2">
        93
      </div>
      
      <div class="line number94 index93 alt1">
        94
      </div>
      
      <div class="line number95 index94 alt2">
        95
      </div>
      
      <div class="line number96 index95 alt1">
        96
      </div>
      
      <div class="line number97 index96 alt2">
        97
      </div>
      
      <div class="line number98 index97 alt1">
        98
      </div>
      
      <div class="line number99 index98 alt2">
        99
      </div>
      
      <div class="line number100 index99 alt1">
        100
      </div>
      
      <div class="line number101 index100 alt2">
        101
      </div>
      
      <div class="line number102 index101 alt1">
        102
      </div>
      
      <div class="line number103 index102 alt2">
        103
      </div>
      
      <div class="line number104 index103 alt1">
        104
      </div>
      
      <div class="line number105 index104 alt2">
        105
      </div>
      
      <div class="line number106 index105 alt1">
        106
      </div>
      
      <div class="line number107 index106 alt2">
        107
      </div>
      
      <div class="line number108 index107 alt1">
        108
      </div>
      
      <div class="line number109 index108 alt2">
        109
      </div>
      
      <div class="line number110 index109 alt1">
        110
      </div>
      
      <div class="line number111 index110 alt2">
        111
      </div>
      
      <div class="line number112 index111 alt1">
        112
      </div>
      
      <div class="line number113 index112 alt2">
        113
      </div>
      
      <div class="line number114 index113 alt1">
        114
      </div>
      
      <div class="line number115 index114 alt2">
        115
      </div>
      
      <div class="line number116 index115 alt1">
        116
      </div>
      
      <div class="line number117 index116 alt2">
        117
      </div>
      
      <div class="line number118 index117 alt1">
        118
      </div>
      
      <div class="line number119 index118 alt2">
        119
      </div>
      
      <div class="line number120 index119 alt1">
        120
      </div>
      
      <div class="line number121 index120 alt2">
        121
      </div>
      
      <div class="line number122 index121 alt1">
        122
      </div>
      
      <div class="line number123 index122 alt2">
        123
      </div>
      
      <div class="line number124 index123 alt1">
        124
      </div>
      
      <div class="line number125 index124 alt2">
        125
      </div>
      
      <div class="line number126 index125 alt1">
        126
      </div>
      
      <div class="line number127 index126 alt2">
        127
      </div>
      
      <div class="line number128 index127 alt1">
        128
      </div>
      
      <div class="line number129 index128 alt2">
        129
      </div>
      
      <div class="line number130 index129 alt1">
        130
      </div>
      
      <div class="line number131 index130 alt2">
        131
      </div>
      
      <div class="line number132 index131 alt1">
        132
      </div>
      
      <div class="line number133 index132 alt2">
        133
      </div>
      
      <div class="line number134 index133 alt1">
        134
      </div>
      
      <div class="line number135 index134 alt2">
        135
      </div>
      
      <div class="line number136 index135 alt1">
        136
      </div>
      
      <div class="line number137 index136 alt2">
        137
      </div>
      
      <div class="line number138 index137 alt1">
        138
      </div>
      
      <div class="line number139 index138 alt2">
        139
      </div>
      
      <div class="line number140 index139 alt1">
        140
      </div>
      
      <div class="line number141 index140 alt2">
        141
      </div>
      
      <div class="line number142 index141 alt1">
        142
      </div>
      
      <div class="line number143 index142 alt2">
        143
      </div>
      
      <div class="line number144 index143 alt1">
        144
      </div>
      
      <div class="line number145 index144 alt2">
        145
      </div>
      
      <div class="line number146 index145 alt1">
        146
      </div>
      
      <div class="line number147 index146 alt2">
        147
      </div>
      
      <div class="line number148 index147 alt1">
        148
      </div>
      
      <div class="line number149 index148 alt2">
        149
      </div>
      
      <div class="line number150 index149 alt1">
        150
      </div>
      
      <div class="line number151 index150 alt2">
        151
      </div>
      
      <div class="line number152 index151 alt1">
        152
      </div>
      
      <div class="line number153 index152 alt2">
        153
      </div>
      
      <div class="line number154 index153 alt1">
        154
      </div>
      
      <div class="line number155 index154 alt2">
        155
      </div>
      
      <div class="line number156 index155 alt1">
        156
      </div>
      
      <div class="line number157 index156 alt2">
        157
      </div>
      
      <div class="line number158 index157 alt1">
        158
      </div>
      
      <div class="line number159 index158 alt2">
        159
      </div>
      
      <div class="line number160 index159 alt1">
        160
      </div>
      
      <div class="line number161 index160 alt2">
        161
      </div>
      
      <div class="line number162 index161 alt1">
        162
      </div>
      
      <div class="line number163 index162 alt2">
        163
      </div>
      
      <div class="line number164 index163 alt1">
        164
      </div>
      
      <div class="line number165 index164 alt2">
        165
      </div>
      
      <div class="line number166 index165 alt1">
        166
      </div>
      
      <div class="line number167 index166 alt2">
        167
      </div>
      
      <div class="line number168 index167 alt1">
        168
      </div>
      
      <div class="line number169 index168 alt2">
        169
      </div>
      
      <div class="line number170 index169 alt1">
        170
      </div>
      
      <div class="line number171 index170 alt2">
        171
      </div>
      
      <div class="line number172 index171 alt1">
        172
      </div>
      
      <div class="line number173 index172 alt2">
        173
      </div>
      
      <div class="line number174 index173 alt1">
        174
      </div>
      
      <div class="line number175 index174 alt2">
        175
      </div>
      
      <div class="line number176 index175 alt1">
        176
      </div>
      
      <div class="line number177 index176 alt2">
        177
      </div>
      
      <div class="line number178 index177 alt1">
        178
      </div>
      
      <div class="line number179 index178 alt2">
        179
      </div>
      
      <div class="line number180 index179 alt1">
        180
      </div>
      
      <div class="line number181 index180 alt2">
        181
      </div>
      
      <div class="line number182 index181 alt1">
        182
      </div>
      
      <div class="line number183 index182 alt2">
        183
      </div>
      
      <div class="line number184 index183 alt1">
        184
      </div>
      
      <div class="line number185 index184 alt2">
        185
      </div>
      
      <div class="line number186 index185 alt1">
        186
      </div>
      
      <div class="line number187 index186 alt2">
        187
      </div>
      
      <div class="line number188 index187 alt1">
        188
      </div>
      
      <div class="line number189 index188 alt2">
        189
      </div>
      
      <div class="line number190 index189 alt1">
        190
      </div>
      
      <div class="line number191 index190 alt2">
        191
      </div>
      
      <div class="line number192 index191 alt1">
        192
      </div>
      
      <div class="line number193 index192 alt2">
        193
      </div>
      
      <div class="line number194 index193 alt1">
        194
      </div>
      
      <div class="line number195 index194 alt2">
        195
      </div>
      
      <div class="line number196 index195 alt1">
        196
      </div>
      
      <div class="line number197 index196 alt2">
        197
      </div>
      
      <div class="line number198 index197 alt1">
        198
      </div>
      
      <div class="line number199 index198 alt2">
        199
      </div>
      
      <div class="line number200 index199 alt1">
        200
      </div>
      
      <div class="line number201 index200 alt2">
        201
      </div>
      
      <div class="line number202 index201 alt1">
        202
      </div>
      
      <div class="line number203 index202 alt2">
        203
      </div>
      
      <div class="line number204 index203 alt1">
        204
      </div>
      
      <div class="line number205 index204 alt2">
        205
      </div>
      
      <div class="line number206 index205 alt1">
        206
      </div>
      
      <div class="line number207 index206 alt2">
        207
      </div>
      
      <div class="line number208 index207 alt1">
        208
      </div>
      
      <div class="line number209 index208 alt2">
        209
      </div>
      
      <div class="line number210 index209 alt1">
        210
      </div>
      
      <div class="line number211 index210 alt2">
        211
      </div>
      
      <div class="line number212 index211 alt1">
        212
      </div>
      
      <div class="line number213 index212 alt2">
        213
      </div>
      
      <div class="line number214 index213 alt1">
        214
      </div>
      
      <div class="line number215 index214 alt2">
        215
      </div>
      
      <div class="line number216 index215 alt1">
        216
      </div>
      
      <div class="line number217 index216 alt2">
        217
      </div>
      
      <div class="line number218 index217 alt1">
        218
      </div>
      
      <div class="line number219 index218 alt2">
        219
      </div>
      
      <div class="line number220 index219 alt1">
        220
      </div>
      
      <div class="line number221 index220 alt2">
        221
      </div>
      
      <div class="line number222 index221 alt1">
        222
      </div>
      
      <div class="line number223 index222 alt2">
        223
      </div>
      
      <div class="line number224 index223 alt1">
        224
      </div>
      
      <div class="line number225 index224 alt2">
        225
      </div>
      
      <div class="line number226 index225 alt1">
        226
      </div>
      
      <div class="line number227 index226 alt2">
        227
      </div>
      
      <div class="line number228 index227 alt1">
        228
      </div>
      
      <div class="line number229 index228 alt2">
        229
      </div>
      
      <div class="line number230 index229 alt1">
        230
      </div>
      
      <div class="line number231 index230 alt2">
        231
      </div>
      
      <div class="line number232 index231 alt1">
        232
      </div>
      
      <div class="line number233 index232 alt2">
        233
      </div>
      
      <div class="line number234 index233 alt1">
        234
      </div>
      
      <div class="line number235 index234 alt2">
        235
      </div>
      
      <div class="line number236 index235 alt1">
        236
      </div>
      
      <div class="line number237 index236 alt2">
        237
      </div>
      
      <div class="line number238 index237 alt1">
        238
      </div>
      
      <div class="line number239 index238 alt2">
        239
      </div>
      
      <div class="line number240 index239 alt1">
        240
      </div>
      
      <div class="line number241 index240 alt2">
        241
      </div>
      
      <div class="line number242 index241 alt1">
        242
      </div>
      
      <div class="line number243 index242 alt2">
        243
      </div>
      
      <div class="line number244 index243 alt1">
        244
      </div>
      
      <div class="line number245 index244 alt2">
        245
      </div>
      
      <div class="line number246 index245 alt1">
        246
      </div>
      
      <div class="line number247 index246 alt2">
        247
      </div>
      
      <div class="line number248 index247 alt1">
        248
      </div>
      
      <div class="line number249 index248 alt2">
        249
      </div>
      
      <div class="line number250 index249 alt1">
        250
      </div>
      
      <div class="line number251 index250 alt2">
        251
      </div>
      
      <div class="line number252 index251 alt1">
        252
      </div>
      
      <div class="line number253 index252 alt2">
        253
      </div>
      
      <div class="line number254 index253 alt1">
        254
      </div>
      
      <div class="line number255 index254 alt2">
        255
      </div>
      
      <div class="line number256 index255 alt1">
        256
      </div>
      
      <div class="line number257 index256 alt2">
        257
      </div>
      
      <div class="line number258 index257 alt1">
        258
      </div>
      
      <div class="line number259 index258 alt2">
        259
      </div>
      
      <div class="line number260 index259 alt1">
        260
      </div>
      
      <div class="line number261 index260 alt2">
        261
      </div>
      
      <div class="line number262 index261 alt1">
        262
      </div>
      
      <div class="line number263 index262 alt2">
        263
      </div>
      
      <div class="line number264 index263 alt1">
        264
      </div>
      
      <div class="line number265 index264 alt2">
        265
      </div>
      
      <div class="line number266 index265 alt1">
        266
      </div>
      
      <div class="line number267 index266 alt2">
        267
      </div>
      
      <div class="line number268 index267 alt1">
        268
      </div>
      
      <div class="line number269 index268 alt2">
        269
      </div>
      
      <div class="line number270 index269 alt1">
        270
      </div>
      
      <div class="line number271 index270 alt2">
        271
      </div>
      
      <div class="line number272 index271 alt1">
        272
      </div>
      
      <div class="line number273 index272 alt2">
        273
      </div>
      
      <div class="line number274 index273 alt1">
        274
      </div>
      
      <div class="line number275 index274 alt2">
        275
      </div>
      
      <div class="line number276 index275 alt1">
        276
      </div>
      
      <div class="line number277 index276 alt2">
        277
      </div>
      
      <div class="line number278 index277 alt1">
        278
      </div>
      
      <div class="line number279 index278 alt2">
        279
      </div>
      
      <div class="line number280 index279 alt1">
        280
      </div>
      
      <div class="line number281 index280 alt2">
        281
      </div>
      
      <div class="line number282 index281 alt1">
        282
      </div>
      
      <div class="line number283 index282 alt2">
        283
      </div>
      
      <div class="line number284 index283 alt1">
        284
      </div>
      
      <div class="line number285 index284 alt2">
        285
      </div>
      
      <div class="line number286 index285 alt1">
        286
      </div>
      
      <div class="line number287 index286 alt2">
        287
      </div>
      
      <div class="line number288 index287 alt1">
        288
      </div>
      
      <div class="line number289 index288 alt2">
        289
      </div>
      
      <div class="line number290 index289 alt1">
        290
      </div>
      
      <div class="line number291 index290 alt2">
        291
      </div>
      
      <div class="line number292 index291 alt1">
        292
      </div>
      
      <div class="line number293 index292 alt2">
        293
      </div>
      
      <div class="line number294 index293 alt1">
        294
      </div>
      
      <div class="line number295 index294 alt2">
        295
      </div>
      
      <div class="line number296 index295 alt1">
        296
      </div>
      
      <div class="line number297 index296 alt2">
        297
      </div>
      
      <div class="line number298 index297 alt1">
        298
      </div>
      
      <div class="line number299 index298 alt2">
        299
      </div>
      
      <div class="line number300 index299 alt1">
        300
      </div>
      
      <div class="line number301 index300 alt2">
        301
      </div>
      
      <div class="line number302 index301 alt1">
        302
      </div>
      
      <div class="line number303 index302 alt2">
        303
      </div>
      
      <div class="line number304 index303 alt1">
        304
      </div>
      
      <div class="line number305 index304 alt2">
        305
      </div>
      
      <div class="line number306 index305 alt1">
        306
      </div>
      
      <div class="line number307 index306 alt2">
        307
      </div>
      
      <div class="line number308 index307 alt1">
        308
      </div>
      
      <div class="line number309 index308 alt2">
        309
      </div>
      
      <div class="line number310 index309 alt1">
        310
      </div>
      
      <div class="line number311 index310 alt2">
        311
      </div>
      
      <div class="line number312 index311 alt1">
        312
      </div>
      
      <div class="line number313 index312 alt2">
        313
      </div>
      
      <div class="line number314 index313 alt1">
        314
      </div>
      
      <div class="line number315 index314 alt2">
        315
      </div>
      
      <div class="line number316 index315 alt1">
        316
      </div>
      
      <div class="line number317 index316 alt2">
        317
      </div>
      
      <div class="line number318 index317 alt1">
        318
      </div>
      
      <div class="line number319 index318 alt2">
        319
      </div>
      
      <div class="line number320 index319 alt1">
        320
      </div>
      
      <div class="line number321 index320 alt2">
        321
      </div>
      
      <div class="line number322 index321 alt1">
        322
      </div>
      
      <div class="line number323 index322 alt2">
        323
      </div>
      
      <div class="line number324 index323 alt1">
        324
      </div>
      
      <div class="line number325 index324 alt2">
        325
      </div>
      
      <div class="line number326 index325 alt1">
        326
      </div>
      
      <div class="line number327 index326 alt2">
        327
      </div>
      
      <div class="line number328 index327 alt1">
        328
      </div>
      
      <div class="line number329 index328 alt2">
        329
      </div>
      
      <div class="line number330 index329 alt1">
        330
      </div>
      
      <div class="line number331 index330 alt2">
        331
      </div>
      
      <div class="line number332 index331 alt1">
        332
      </div>
      
      <div class="line number333 index332 alt2">
        333
      </div>
      
      <div class="line number334 index333 alt1">
        334
      </div>
      
      <div class="line number335 index334 alt2">
        335
      </div>
      
      <div class="line number336 index335 alt1">
        336
      </div>
      
      <div class="line number337 index336 alt2">
        337
      </div>
      
      <div class="line number338 index337 alt1">
        338
      </div>
      
      <div class="line number339 index338 alt2">
        339
      </div>
      
      <div class="line number340 index339 alt1">
        340
      </div>
      
      <div class="line number341 index340 alt2">
        341
      </div>
      
      <div class="line number342 index341 alt1">
        342
      </div>
      
      <div class="line number343 index342 alt2">
        343
      </div>
      
      <div class="line number344 index343 alt1">
        344
      </div>
      
      <div class="line number345 index344 alt2">
        345
      </div>
      
      <div class="line number346 index345 alt1">
        346
      </div>
      
      <div class="line number347 index346 alt2">
        347
      </div>
      
      <div class="line number348 index347 alt1">
        348
      </div>
      
      <div class="line number349 index348 alt2">
        349
      </div>
      
      <div class="line number350 index349 alt1">
        350
      </div>
      
      <div class="line number351 index350 alt2">
        351
      </div>
      
      <div class="line number352 index351 alt1">
        352
      </div>
      
      <div class="line number353 index352 alt2">
        353
      </div>
      
      <div class="line number354 index353 alt1">
        354
      </div>
      
      <div class="line number355 index354 alt2">
        355
      </div>
      
      <div class="line number356 index355 alt1">
        356
      </div>
      
      <div class="line number357 index356 alt2">
        357
      </div>
      
      <div class="line number358 index357 alt1">
        358
      </div>
      
      <div class="line number359 index358 alt2">
        359
      </div>
      
      <div class="line number360 index359 alt1">
        360
      </div>
      
      <div class="line number361 index360 alt2">
        361
      </div>
      
      <div class="line number362 index361 alt1">
        362
      </div>
      
      <div class="line number363 index362 alt2">
        363
      </div>
      
      <div class="line number364 index363 alt1">
        364
      </div>
      
      <div class="line number365 index364 alt2">
        365
      </div>
      
      <div class="line number366 index365 alt1">
        366
      </div>
      
      <div class="line number367 index366 alt2">
        367
      </div>
      
      <div class="line number368 index367 alt1">
        368
      </div>
      
      <div class="line number369 index368 alt2">
        369
      </div>
      
      <div class="line number370 index369 alt1">
        370
      </div>
      
      <div class="line number371 index370 alt2">
        371
      </div>
      
      <div class="line number372 index371 alt1">
        372
      </div>
      
      <div class="line number373 index372 alt2">
        373
      </div>
      
      <div class="line number374 index373 alt1">
        374
      </div>
      
      <div class="line number375 index374 alt2">
        375
      </div>
      
      <div class="line number376 index375 alt1">
        376
      </div>
      
      <div class="line number377 index376 alt2">
        377
      </div>
      
      <div class="line number378 index377 alt1">
        378
      </div>
      
      <div class="line number379 index378 alt2">
        379
      </div>
      
      <div class="line number380 index379 alt1">
        380
      </div>
      
      <div class="line number381 index380 alt2">
        381
      </div>
      
      <div class="line number382 index381 alt1">
        382
      </div>
      
      <div class="line number383 index382 alt2">
        383
      </div>
      
      <div class="line number384 index383 alt1">
        384
      </div>
      
      <div class="line number385 index384 alt2">
        385
      </div>
      
      <div class="line number386 index385 alt1">
        386
      </div>
      
      <div class="line number387 index386 alt2">
        387
      </div>
      
      <div class="line number388 index387 alt1">
        388
      </div>
      
      <div class="line number389 index388 alt2">
        389
      </div>
      
      <div class="line number390 index389 alt1">
        390
      </div>
      
      <div class="line number391 index390 alt2">
        391
      </div>
      
      <div class="line number392 index391 alt1">
        392
      </div>
      
      <div class="line number393 index392 alt2">
        393
      </div>
      
      <div class="line number394 index393 alt1">
        394
      </div>
      
      <div class="line number395 index394 alt2">
        395
      </div>
      
      <div class="line number396 index395 alt1">
        396
      </div>
      
      <div class="line number397 index396 alt2">
        397
      </div>
      
      <div class="line number398 index397 alt1">
        398
      </div>
      
      <div class="line number399 index398 alt2">
        399
      </div>
      
      <div class="line number400 index399 alt1">
        400
      </div>
      
      <div class="line number401 index400 alt2">
        401
      </div>
      
      <div class="line number402 index401 alt1">
        402
      </div>
      
      <div class="line number403 index402 alt2">
        403
      </div>
      
      <div class="line number404 index403 alt1">
        404
      </div>
      
      <div class="line number405 index404 alt2">
        405
      </div>
      
      <div class="line number406 index405 alt1">
        406
      </div>
      
      <div class="line number407 index406 alt2">
        407
      </div>
      
      <div class="line number408 index407 alt1">
        408
      </div>
      
      <div class="line number409 index408 alt2">
        409
      </div>
      
      <div class="line number410 index409 alt1">
        410
      </div>
      
      <div class="line number411 index410 alt2">
        411
      </div>
      
      <div class="line number412 index411 alt1">
        412
      </div>
      
      <div class="line number413 index412 alt2">
        413
      </div>
      
      <div class="line number414 index413 alt1">
        414
      </div>
      
      <div class="line number415 index414 alt2">
        415
      </div>
      
      <div class="line number416 index415 alt1">
        416
      </div>
      
      <div class="line number417 index416 alt2">
        417
      </div>
      
      <div class="line number418 index417 alt1">
        418
      </div>
      
      <div class="line number419 index418 alt2">
        419
      </div>
      
      <div class="line number420 index419 alt1">
        420
      </div>
      
      <div class="line number421 index420 alt2">
        421
      </div>
      
      <div class="line number422 index421 alt1">
        422
      </div>
      
      <div class="line number423 index422 alt2">
        423
      </div>
      
      <div class="line number424 index423 alt1">
        424
      </div>
      
      <div class="line number425 index424 alt2">
        425
      </div>
      
      <div class="line number426 index425 alt1">
        426
      </div>
      
      <div class="line number427 index426 alt2">
        427
      </div>
      
      <div class="line number428 index427 alt1">
        428
      </div>
      
      <div class="line number429 index428 alt2">
        429
      </div>
      
      <div class="line number430 index429 alt1">
        430
      </div>
      
      <div class="line number431 index430 alt2">
        431
      </div>
      
      <div class="line number432 index431 alt1">
        432
      </div>
      
      <div class="line number433 index432 alt2">
        433
      </div>
      
      <div class="line number434 index433 alt1">
        434
      </div>
      
      <div class="line number435 index434 alt2">
        435
      </div>
      
      <div class="line number436 index435 alt1">
        436
      </div>
      
      <div class="line number437 index436 alt2">
        437
      </div>
      
      <div class="line number438 index437 alt1">
        438
      </div>
      
      <div class="line number439 index438 alt2">
        439
      </div>
      
      <div class="line number440 index439 alt1">
        440
      </div>
      
      <div class="line number441 index440 alt2">
        441
      </div>
      
      <div class="line number442 index441 alt1">
        442
      </div>
      
      <div class="line number443 index442 alt2">
        443
      </div>
      
      <div class="line number444 index443 alt1">
        444
      </div>
      
      <div class="line number445 index444 alt2">
        445
      </div>
      
      <div class="line number446 index445 alt1">
        446
      </div>
      
      <div class="line number447 index446 alt2">
        447
      </div>
      
      <div class="line number448 index447 alt1">
        448
      </div>
      
      <div class="line number449 index448 alt2">
        449
      </div>
      
      <div class="line number450 index449 alt1">
        450
      </div>
      
      <div class="line number451 index450 alt2">
        451
      </div>
      
      <div class="line number452 index451 alt1">
        452
      </div>
      
      <div class="line number453 index452 alt2">
        453
      </div>
      
      <div class="line number454 index453 alt1">
        454
      </div>
      
      <div class="line number455 index454 alt2">
        455
      </div>
      
      <div class="line number456 index455 alt1">
        456
      </div>
      
      <div class="line number457 index456 alt2">
        457
      </div>
      
      <div class="line number458 index457 alt1">
        458
      </div>
      
      <div class="line number459 index458 alt2">
        459
      </div>
      
      <div class="line number460 index459 alt1">
        460
      </div>
      
      <div class="line number461 index460 alt2">
        461
      </div>
      
      <div class="line number462 index461 alt1">
        462
      </div>
      
      <div class="line number463 index462 alt2">
        463
      </div>
      
      <div class="line number464 index463 alt1">
        464
      </div>
      
      <div class="line number465 index464 alt2">
        465
      </div>
      
      <div class="line number466 index465 alt1">
        466
      </div>
      
      <div class="line number467 index466 alt2">
        467
      </div>
      
      <div class="line number468 index467 alt1">
        468
      </div>
      
      <div class="line number469 index468 alt2">
        469
      </div>
      
      <div class="line number470 index469 alt1">
        470
      </div>
      
      <div class="line number471 index470 alt2">
        471
      </div>
      
      <div class="line number472 index471 alt1">
        472
      </div>
      
      <div class="line number473 index472 alt2">
        473
      </div>
      
      <div class="line number474 index473 alt1">
        474
      </div>
      
      <div class="line number475 index474 alt2">
        475
      </div>
      
      <div class="line number476 index475 alt1">
        476
      </div>
      
      <div class="line number477 index476 alt2">
        477
      </div>
      
      <div class="line number478 index477 alt1">
        478
      </div>
      
      <div class="line number479 index478 alt2">
        479
      </div>
      
      <div class="line number480 index479 alt1">
        480
      </div>
      
      <div class="line number481 index480 alt2">
        481
      </div>
      
      <div class="line number482 index481 alt1">
        482
      </div>
      
      <div class="line number483 index482 alt2">
        483
      </div>
      
      <div class="line number484 index483 alt1">
        484
      </div>
      
      <div class="line number485 index484 alt2">
        485
      </div>
      
      <div class="line number486 index485 alt1">
        486
      </div>
      
      <div class="line number487 index486 alt2">
        487
      </div>
      
      <div class="line number488 index487 alt1">
        488
      </div>
      
      <div class="line number489 index488 alt2">
        489
      </div>
      
      <div class="line number490 index489 alt1">
        490
      </div>
      
      <div class="line number491 index490 alt2">
        491
      </div>
      
      <div class="line number492 index491 alt1">
        492
      </div>
      
      <div class="line number493 index492 alt2">
        493
      </div>
      
      <div class="line number494 index493 alt1">
        494
      </div>
      
      <div class="line number495 index494 alt2">
        495
      </div>
      
      <div class="line number496 index495 alt1">
        496
      </div>
      
      <div class="line number497 index496 alt2">
        497
      </div>
      
      <div class="line number498 index497 alt1">
        498
      </div>
      
      <div class="line number499 index498 alt2">
        499
      </div>
      
      <div class="line number500 index499 alt1">
        500
      </div>
      
      <div class="line number501 index500 alt2">
        501
      </div>
      
      <div class="line number502 index501 alt1">
        502
      </div>
      
      <div class="line number503 index502 alt2">
        503
      </div>
      
      <div class="line number504 index503 alt1">
        504
      </div>
      
      <div class="line number505 index504 alt2">
        505
      </div>
      
      <div class="line number506 index505 alt1">
        506
      </div>
      
      <div class="line number507 index506 alt2">
        507
      </div>
      
      <div class="line number508 index507 alt1">
        508
      </div>
      
      <div class="line number509 index508 alt2">
        509
      </div>
      
      <div class="line number510 index509 alt1">
        510
      </div>
      
      <div class="line number511 index510 alt2">
        511
      </div>
      
      <div class="line number512 index511 alt1">
        512
      </div>
      
      <div class="line number513 index512 alt2">
        513
      </div>
      
      <div class="line number514 index513 alt1">
        514
      </div>
      
      <div class="line number515 index514 alt2">
        515
      </div>
      
      <div class="line number516 index515 alt1">
        516
      </div>
      
      <div class="line number517 index516 alt2">
        517
      </div>
      
      <div class="line number518 index517 alt1">
        518
      </div>
      
      <div class="line number519 index518 alt2">
        519
      </div>
      
      <div class="line number520 index519 alt1">
        520
      </div>
      
      <div class="line number521 index520 alt2">
        521
      </div>
      
      <div class="line number522 index521 alt1">
        522
      </div>
      
      <div class="line number523 index522 alt2">
        523
      </div>
      
      <div class="line number524 index523 alt1">
        524
      </div>
      
      <div class="line number525 index524 alt2">
        525
      </div>
      
      <div class="line number526 index525 alt1">
        526
      </div>
      
      <div class="line number527 index526 alt2">
        527
      </div>
      
      <div class="line number528 index527 alt1">
        528
      </div>
      
      <div class="line number529 index528 alt2">
        529
      </div>
      
      <div class="line number530 index529 alt1">
        530
      </div>
      
      <div class="line number531 index530 alt2">
        531
      </div>
      
      <div class="line number532 index531 alt1">
        532
      </div>
      
      <div class="line number533 index532 alt2">
        533
      </div>
      
      <div class="line number534 index533 alt1">
        534
      </div>
      
      <div class="line number535 index534 alt2">
        535
      </div>
      
      <div class="line number536 index535 alt1">
        536
      </div>
      
      <div class="line number537 index536 alt2">
        537
      </div>
      
      <div class="line number538 index537 alt1">
        538
      </div>
      
      <div class="line number539 index538 alt2">
        539
      </div>
      
      <div class="line number540 index539 alt1">
        540
      </div>
      
      <div class="line number541 index540 alt2">
        541
      </div>
      
      <div class="line number542 index541 alt1">
        542
      </div>
      
      <div class="line number543 index542 alt2">
        543
      </div>
      
      <div class="line number544 index543 alt1">
        544
      </div>
      
      <div class="line number545 index544 alt2">
        545
      </div>
      
      <div class="line number546 index545 alt1">
        546
      </div>
      
      <div class="line number547 index546 alt2">
        547
      </div>
      
      <div class="line number548 index547 alt1">
        548
      </div>
      
      <div class="line number549 index548 alt2">
        549
      </div>
      
      <div class="line number550 index549 alt1">
        550
      </div>
      
      <div class="line number551 index550 alt2">
        551
      </div>
      
      <div class="line number552 index551 alt1">
        552
      </div>
      
      <div class="line number553 index552 alt2">
        553
      </div>
      
      <div class="line number554 index553 alt1">
        554
      </div>
      
      <div class="line number555 index554 alt2">
        555
      </div>
      
      <div class="line number556 index555 alt1">
        556
      </div>
      
      <div class="line number557 index556 alt2">
        557
      </div>
      
      <div class="line number558 index557 alt1">
        558
      </div>
      
      <div class="line number559 index558 alt2">
        559
      </div>
      
      <div class="line number560 index559 alt1">
        560
      </div>
      
      <div class="line number561 index560 alt2">
        561
      </div>
      
      <div class="line number562 index561 alt1">
        562
      </div>
      
      <div class="line number563 index562 alt2">
        563
      </div>
      
      <div class="line number564 index563 alt1">
        564
      </div>
      
      <div class="line number565 index564 alt2">
        565
      </div>
      
      <div class="line number566 index565 alt1">
        566
      </div>
      
      <div class="line number567 index566 alt2">
        567
      </div>
      
      <div class="line number568 index567 alt1">
        568
      </div>
      
      <div class="line number569 index568 alt2">
        569
      </div>
      
      <div class="line number570 index569 alt1">
        570
      </div>
      
      <div class="line number571 index570 alt2">
        571
      </div>
      
      <div class="line number572 index571 alt1">
        572
      </div>
      
      <div class="line number573 index572 alt2">
        573
      </div>
      
      <div class="line number574 index573 alt1">
        574
      </div>
      
      <div class="line number575 index574 alt2">
        575
      </div>
      
      <div class="line number576 index575 alt1">
        576
      </div>
      
      <div class="line number577 index576 alt2">
        577
      </div>
      
      <div class="line number578 index577 alt1">
        578
      </div>
      
      <div class="line number579 index578 alt2">
        579
      </div>
      
      <div class="line number580 index579 alt1">
        580
      </div>
      
      <div class="line number581 index580 alt2">
        581
      </div>
      
      <div class="line number582 index581 alt1">
        582
      </div>
      
      <div class="line number583 index582 alt2">
        583
      </div>
      
      <div class="line number584 index583 alt1">
        584
      </div>
      
      <div class="line number585 index584 alt2">
        585
      </div>
      
      <div class="line number586 index585 alt1">
        586
      </div>
      
      <div class="line number587 index586 alt2">
        587
      </div>
      
      <div class="line number588 index587 alt1">
        588
      </div>
      
      <div class="line number589 index588 alt2">
        589
      </div>
      
      <div class="line number590 index589 alt1">
        590
      </div>
      
      <div class="line number591 index590 alt2">
        591
      </div>
      
      <div class="line number592 index591 alt1">
        592
      </div>
      
      <div class="line number593 index592 alt2">
        593
      </div>
      
      <div class="line number594 index593 alt1">
        594
      </div>
      
      <div class="line number595 index594 alt2">
        595
      </div>
      
      <div class="line number596 index595 alt1">
        596
      </div>
      
      <div class="line number597 index596 alt2">
        597
      </div>
      
      <div class="line number598 index597 alt1">
        598
      </div>
      
      <div class="line number599 index598 alt2">
        599
      </div>
      
      <div class="line number600 index599 alt1">
        600
      </div>
      
      <div class="line number601 index600 alt2">
        601
      </div>
      
      <div class="line number602 index601 alt1">
        602
      </div>
      
      <div class="line number603 index602 alt2">
        603
      </div>
      
      <div class="line number604 index603 alt1">
        604
      </div>
      
      <div class="line number605 index604 alt2">
        605
      </div>
      
      <div class="line number606 index605 alt1">
        606
      </div>
      
      <div class="line number607 index606 alt2">
        607
      </div>
      
      <div class="line number608 index607 alt1">
        608
      </div>
      
      <div class="line number609 index608 alt2">
        609
      </div>
      
      <div class="line number610 index609 alt1">
        610
      </div>
      
      <div class="line number611 index610 alt2">
        611
      </div>
      
      <div class="line number612 index611 alt1">
        612
      </div>
      
      <div class="line number613 index612 alt2">
        613
      </div>
      
      <div class="line number614 index613 alt1">
        614
      </div>
      
      <div class="line number615 index614 alt2">
        615
      </div>
      
      <div class="line number616 index615 alt1">
        616
      </div>
      
      <div class="line number617 index616 alt2">
        617
      </div>
      
      <div class="line number618 index617 alt1">
        618
      </div>
      
      <div class="line number619 index618 alt2">
        619
      </div>
      
      <div class="line number620 index619 alt1">
        620
      </div>
      
      <div class="line number621 index620 alt2">
        621
      </div>
      
      <div class="line number622 index621 alt1">
        622
      </div>
      
      <div class="line number623 index622 alt2">
        623
      </div>
      
      <div class="line number624 index623 alt1">
        624
      </div>
      
      <div class="line number625 index624 alt2">
        625
      </div>
      
      <div class="line number626 index625 alt1">
        626
      </div>
      
      <div class="line number627 index626 alt2">
        627
      </div>
      
      <div class="line number628 index627 alt1">
        628
      </div>
      
      <div class="line number629 index628 alt2">
        629
      </div>
      
      <div class="line number630 index629 alt1">
        630
      </div>
      
      <div class="line number631 index630 alt2">
        631
      </div>
      
      <div class="line number632 index631 alt1">
        632
      </div>
      
      <div class="line number633 index632 alt2">
        633
      </div>
      
      <div class="line number634 index633 alt1">
        634
      </div>
      
      <div class="line number635 index634 alt2">
        635
      </div>
      
      <div class="line number636 index635 alt1">
        636
      </div>
      
      <div class="line number637 index636 alt2">
        637
      </div>
      
      <div class="line number638 index637 alt1">
        638
      </div>
      
      <div class="line number639 index638 alt2">
        639
      </div>
      
      <div class="line number640 index639 alt1">
        640
      </div>
      
      <div class="line number641 index640 alt2">
        641
      </div>
      
      <div class="line number642 index641 alt1">
        642
      </div>
      
      <div class="line number643 index642 alt2">
        643
      </div>
      
      <div class="line number644 index643 alt1">
        644
      </div>
      
      <div class="line number645 index644 alt2">
        645
      </div>
      
      <div class="line number646 index645 alt1">
        646
      </div>
      
      <div class="line number647 index646 alt2">
        647
      </div>
      
      <div class="line number648 index647 alt1">
        648
      </div>
      
      <div class="line number649 index648 alt2">
        649
      </div>
      
      <div class="line number650 index649 alt1">
        650
      </div>
      
      <div class="line number651 index650 alt2">
        651
      </div>
      
      <div class="line number652 index651 alt1">
        652
      </div>
      
      <div class="line number653 index652 alt2">
        653
      </div>
      
      <div class="line number654 index653 alt1">
        654
      </div>
      
      <div class="line number655 index654 alt2">
        655
      </div>
      
      <div class="line number656 index655 alt1">
        656
      </div>
      
      <div class="line number657 index656 alt2">
        657
      </div>
      
      <div class="line number658 index657 alt1">
        658
      </div>
      
      <div class="line number659 index658 alt2">
        659
      </div>
      
      <div class="line number660 index659 alt1">
        660
      </div>
      
      <div class="line number661 index660 alt2">
        661
      </div>
      
      <div class="line number662 index661 alt1">
        662
      </div>
      
      <div class="line number663 index662 alt2">
        663
      </div>
      
      <div class="line number664 index663 alt1">
        664
      </div>
      
      <div class="line number665 index664 alt2">
        665
      </div>
      
      <div class="line number666 index665 alt1">
        666
      </div>
      
      <div class="line number667 index666 alt2">
        667
      </div>
      
      <div class="line number668 index667 alt1">
        668
      </div>
      
      <div class="line number669 index668 alt2">
        669
      </div>
      
      <div class="line number670 index669 alt1">
        670
      </div>
      
      <div class="line number671 index670 alt2">
        671
      </div>
      
      <div class="line number672 index671 alt1">
        672
      </div>
      
      <div class="line number673 index672 alt2">
        673
      </div>
      
      <div class="line number674 index673 alt1">
        674
      </div>
      
      <div class="line number675 index674 alt2">
        675
      </div>
      
      <div class="line number676 index675 alt1">
        676
      </div>
      
      <div class="line number677 index676 alt2">
        677
      </div>
      
      <div class="line number678 index677 alt1">
        678
      </div>
      
      <div class="line number679 index678 alt2">
        679
      </div>
      
      <div class="line number680 index679 alt1">
        680
      </div>
      
      <div class="line number681 index680 alt2">
        681
      </div>
      
      <div class="line number682 index681 alt1">
        682
      </div>
      
      <div class="line number683 index682 alt2">
        683
      </div>
      
      <div class="line number684 index683 alt1">
        684
      </div>
      
      <div class="line number685 index684 alt2">
        685
      </div>
      
      <div class="line number686 index685 alt1">
        686
      </div>
      
      <div class="line number687 index686 alt2">
        687
      </div>
      
      <div class="line number688 index687 alt1">
        688
      </div>
      
      <div class="line number689 index688 alt2">
        689
      </div>
      
      <div class="line number690 index689 alt1">
        690
      </div>
      
      <div class="line number691 index690 alt2">
        691
      </div>
      
      <div class="line number692 index691 alt1">
        692
      </div>
      
      <div class="line number693 index692 alt2">
        693
      </div>
      
      <div class="line number694 index693 alt1">
        694
      </div>
      
      <div class="line number695 index694 alt2">
        695
      </div>
      
      <div class="line number696 index695 alt1">
        696
      </div>
      
      <div class="line number697 index696 alt2">
        697
      </div>
      
      <div class="line number698 index697 alt1">
        698
      </div>
      
      <div class="line number699 index698 alt2">
        699
      </div>
      
      <div class="line number700 index699 alt1">
        700
      </div>
      
      <div class="line number701 index700 alt2">
        701
      </div>
      
      <div class="line number702 index701 alt1">
        702
      </div>
      
      <div class="line number703 index702 alt2">
        703
      </div>
      
      <div class="line number704 index703 alt1">
        704
      </div>
      
      <div class="line number705 index704 alt2">
        705
      </div>
      
      <div class="line number706 index705 alt1">
        706
      </div>
      
      <div class="line number707 index706 alt2">
        707
      </div>
      
      <div class="line number708 index707 alt1">
        708
      </div>
      
      <div class="line number709 index708 alt2">
        709
      </div>
      
      <div class="line number710 index709 alt1">
        710
      </div>
      
      <div class="line number711 index710 alt2">
        711
      </div>
      
      <div class="line number712 index711 alt1">
        712
      </div>
      
      <div class="line number713 index712 alt2">
        713
      </div>
      
      <div class="line number714 index713 alt1">
        714
      </div>
      
      <div class="line number715 index714 alt2">
        715
      </div>
      
      <div class="line number716 index715 alt1">
        716
      </div>
      
      <div class="line number717 index716 alt2">
        717
      </div>
      
      <div class="line number718 index717 alt1">
        718
      </div>
      
      <div class="line number719 index718 alt2">
        719
      </div>
      
      <div class="line number720 index719 alt1">
        720
      </div>
      
      <div class="line number721 index720 alt2">
        721
      </div>
      
      <div class="line number722 index721 alt1">
        722
      </div>
      
      <div class="line number723 index722 alt2">
        723
      </div>
      
      <div class="line number724 index723 alt1">
        724
      </div>
      
      <div class="line number725 index724 alt2">
        725
      </div>
      
      <div class="line number726 index725 alt1">
        726
      </div>
      
      <div class="line number727 index726 alt2">
        727
      </div>
      
      <div class="line number728 index727 alt1">
        728
      </div>
      
      <div class="line number729 index728 alt2">
        729
      </div>
      
      <div class="line number730 index729 alt1">
        730
      </div>
      
      <div class="line number731 index730 alt2">
        731
      </div>
      
      <div class="line number732 index731 alt1">
        732
      </div>
      
      <div class="line number733 index732 alt2">
        733
      </div>
      
      <div class="line number734 index733 alt1">
        734
      </div>
      
      <div class="line number735 index734 alt2">
        735
      </div>
      
      <div class="line number736 index735 alt1">
        736
      </div>
      
      <div class="line number737 index736 alt2">
        737
      </div>
      
      <div class="line number738 index737 alt1">
        738
      </div>
      
      <div class="line number739 index738 alt2">
        739
      </div>
      
      <div class="line number740 index739 alt1">
        740
      </div>
      
      <div class="line number741 index740 alt2">
        741
      </div>
      
      <div class="line number742 index741 alt1">
        742
      </div>
      
      <div class="line number743 index742 alt2">
        743
      </div>
      
      <div class="line number744 index743 alt1">
        744
      </div>
      
      <div class="line number745 index744 alt2">
        745
      </div>
      
      <div class="line number746 index745 alt1">
        746
      </div>
      
      <div class="line number747 index746 alt2">
        747
      </div>
      
      <div class="line number748 index747 alt1">
        748
      </div>
      
      <div class="line number749 index748 alt2">
        749
      </div>
      
      <div class="line number750 index749 alt1">
        750
      </div>
      
      <div class="line number751 index750 alt2">
        751
      </div>
      
      <div class="line number752 index751 alt1">
        752
      </div>
      
      <div class="line number753 index752 alt2">
        753
      </div>
      
      <div class="line number754 index753 alt1">
        754
      </div>
      
      <div class="line number755 index754 alt2">
        755
      </div>
      
      <div class="line number756 index755 alt1">
        756
      </div>
      
      <div class="line number757 index756 alt2">
        757
      </div>
      
      <div class="line number758 index757 alt1">
        758
      </div>
      
      <div class="line number759 index758 alt2">
        759
      </div>
      
      <div class="line number760 index759 alt1">
        760
      </div>
      
      <div class="line number761 index760 alt2">
        761
      </div>
      
      <div class="line number762 index761 alt1">
        762
      </div>
      
      <div class="line number763 index762 alt2">
        763
      </div>
      
      <div class="line number764 index763 alt1">
        764
      </div>
      
      <div class="line number765 index764 alt2">
        765
      </div>
      
      <div class="line number766 index765 alt1">
        766
      </div>
      
      <div class="line number767 index766 alt2">
        767
      </div>
      
      <div class="line number768 index767 alt1">
        768
      </div>
      
      <div class="line number769 index768 alt2">
        769
      </div>
      
      <div class="line number770 index769 alt1">
        770
      </div>
      
      <div class="line number771 index770 alt2">
        771
      </div>
      
      <div class="line number772 index771 alt1">
        772
      </div>
      
      <div class="line number773 index772 alt2">
        773
      </div>
      
      <div class="line number774 index773 alt1">
        774
      </div>
      
      <div class="line number775 index774 alt2">
        775
      </div>
      
      <div class="line number776 index775 alt1">
        776
      </div>
      
      <div class="line number777 index776 alt2">
        777
      </div>
      
      <div class="line number778 index777 alt1">
        778
      </div>
      
      <div class="line number779 index778 alt2">
        779
      </div>
      
      <div class="line number780 index779 alt1">
        780
      </div>
      
      <div class="line number781 index780 alt2">
        781
      </div>
      
      <div class="line number782 index781 alt1">
        782
      </div>
      
      <div class="line number783 index782 alt2">
        783
      </div>
      
      <div class="line number784 index783 alt1">
        784
      </div>
      
      <div class="line number785 index784 alt2">
        785
      </div>
      
      <div class="line number786 index785 alt1">
        786
      </div>
      
      <div class="line number787 index786 alt2">
        787
      </div>
      
      <div class="line number788 index787 alt1">
        788
      </div>
      
      <div class="line number789 index788 alt2">
        789
      </div>
      
      <div class="line number790 index789 alt1">
        790
      </div>
      
      <div class="line number791 index790 alt2">
        791
      </div>
      
      <div class="line number792 index791 alt1">
        792
      </div>
      
      <div class="line number793 index792 alt2">
        793
      </div>
      
      <div class="line number794 index793 alt1">
        794
      </div>
      
      <div class="line number795 index794 alt2">
        795
      </div>
      
      <div class="line number796 index795 alt1">
        796
      </div>
      
      <div class="line number797 index796 alt2">
        797
      </div>
      
      <div class="line number798 index797 alt1">
        798
      </div>
      
      <div class="line number799 index798 alt2">
        799
      </div>
      
      <div class="line number800 index799 alt1">
        800
      </div>
      
      <div class="line number801 index800 alt2">
        801
      </div>
      
      <div class="line number802 index801 alt1">
        802
      </div>
      
      <div class="line number803 index802 alt2">
        803
      </div>
      
      <div class="line number804 index803 alt1">
        804
      </div>
      
      <div class="line number805 index804 alt2">
        805
      </div>
      
      <div class="line number806 index805 alt1">
        806
      </div>
      
      <div class="line number807 index806 alt2">
        807
      </div>
      
      <div class="line number808 index807 alt1">
        808
      </div>
      
      <div class="line number809 index808 alt2">
        809
      </div>
      
      <div class="line number810 index809 alt1">
        810
      </div>
      
      <div class="line number811 index810 alt2">
        811
      </div>
      
      <div class="line number812 index811 alt1">
        812
      </div>
      
      <div class="line number813 index812 alt2">
        813
      </div>
      
      <div class="line number814 index813 alt1">
        814
      </div>
      
      <div class="line number815 index814 alt2">
        815
      </div>
      
      <div class="line number816 index815 alt1">
        816
      </div>
      
      <div class="line number817 index816 alt2">
        817
      </div>
      
      <div class="line number818 index817 alt1">
        818
      </div>
      
      <div class="line number819 index818 alt2">
        819
      </div>
      
      <div class="line number820 index819 alt1">
        820
      </div>
      
      <div class="line number821 index820 alt2">
        821
      </div>
      
      <div class="line number822 index821 alt1">
        822
      </div>
      
      <div class="line number823 index822 alt2">
        823
      </div>
      
      <div class="line number824 index823 alt1">
        824
      </div>
      
      <div class="line number825 index824 alt2">
        825
      </div>
      
      <div class="line number826 index825 alt1">
        826
      </div>
      
      <div class="line number827 index826 alt2">
        827
      </div>
      
      <div class="line number828 index827 alt1">
        828
      </div>
      
      <div class="line number829 index828 alt2">
        829
      </div>
      
      <div class="line number830 index829 alt1">
        830
      </div>
      
      <div class="line number831 index830 alt2">
        831
      </div>
      
      <div class="line number832 index831 alt1">
        832
      </div>
      
      <div class="line number833 index832 alt2">
        833
      </div>
      
      <div class="line number834 index833 alt1">
        834
      </div>
      
      <div class="line number835 index834 alt2">
        835
      </div>
      
      <div class="line number836 index835 alt1">
        836
      </div>
      
      <div class="line number837 index836 alt2">
        837
      </div>
      
      <div class="line number838 index837 alt1">
        838
      </div>
      
      <div class="line number839 index838 alt2">
        839
      </div>
      
      <div class="line number840 index839 alt1">
        840
      </div>
      
      <div class="line number841 index840 alt2">
        841
      </div>
      
      <div class="line number842 index841 alt1">
        842
      </div>
      
      <div class="line number843 index842 alt2">
        843
      </div>
      
      <div class="line number844 index843 alt1">
        844
      </div>
      
      <div class="line number845 index844 alt2">
        845
      </div>
      
      <div class="line number846 index845 alt1">
        846
      </div>
      
      <div class="line number847 index846 alt2">
        847
      </div>
      
      <div class="line number848 index847 alt1">
        848
      </div>
      
      <div class="line number849 index848 alt2">
        849
      </div>
      
      <div class="line number850 index849 alt1">
        850
      </div>
      
      <div class="line number851 index850 alt2">
        851
      </div>
      
      <div class="line number852 index851 alt1">
        852
      </div>
      
      <div class="line number853 index852 alt2">
        853
      </div>
      
      <div class="line number854 index853 alt1">
        854
      </div>
      
      <div class="line number855 index854 alt2">
        855
      </div>
      
      <div class="line number856 index855 alt1">
        856
      </div>
      
      <div class="line number857 index856 alt2">
        857
      </div>
      
      <div class="line number858 index857 alt1">
        858
      </div>
      
      <div class="line number859 index858 alt2">
        859
      </div>
      
      <div class="line number860 index859 alt1">
        860
      </div>
      
      <div class="line number861 index860 alt2">
        861
      </div>
      
      <div class="line number862 index861 alt1">
        862
      </div>
      
      <div class="line number863 index862 alt2">
        863
      </div>
      
      <div class="line number864 index863 alt1">
        864
      </div>
      
      <div class="line number865 index864 alt2">
        865
      </div>
      
      <div class="line number866 index865 alt1">
        866
      </div>
      
      <div class="line number867 index866 alt2">
        867
      </div>
      
      <div class="line number868 index867 alt1">
        868
      </div>
      
      <div class="line number869 index868 alt2">
        869
      </div>
      
      <div class="line number870 index869 alt1">
        870
      </div>
      
      <div class="line number871 index870 alt2">
        871
      </div>
      
      <div class="line number872 index871 alt1">
        872
      </div>
      
      <div class="line number873 index872 alt2">
        873
      </div>
      
      <div class="line number874 index873 alt1">
        874
      </div>
      
      <div class="line number875 index874 alt2">
        875
      </div>
      
      <div class="line number876 index875 alt1">
        876
      </div>
      
      <div class="line number877 index876 alt2">
        877
      </div>
      
      <div class="line number878 index877 alt1">
        878
      </div>
      
      <div class="line number879 index878 alt2">
        879
      </div>
      
      <div class="line number880 index879 alt1">
        880
      </div>
      
      <div class="line number881 index880 alt2">
        881
      </div>
      
      <div class="line number882 index881 alt1">
        882
      </div>
      
      <div class="line number883 index882 alt2">
        883
      </div>
      
      <div class="line number884 index883 alt1">
        884
      </div>
      
      <div class="line number885 index884 alt2">
        885
      </div>
      
      <div class="line number886 index885 alt1">
        886
      </div>
      
      <div class="line number887 index886 alt2">
        887
      </div>
      
      <div class="line number888 index887 alt1">
        888
      </div>
      
      <div class="line number889 index888 alt2">
        889
      </div>
      
      <div class="line number890 index889 alt1">
        890
      </div>
      
      <div class="line number891 index890 alt2">
        891
      </div>
      
      <div class="line number892 index891 alt1">
        892
      </div>
      
      <div class="line number893 index892 alt2">
        893
      </div>
      
      <div class="line number894 index893 alt1">
        894
      </div>
      
      <div class="line number895 index894 alt2">
        895
      </div>
      
      <div class="line number896 index895 alt1">
        896
      </div>
      
      <div class="line number897 index896 alt2">
        897
      </div>
      
      <div class="line number898 index897 alt1">
        898
      </div>
      
      <div class="line number899 index898 alt2">
        899
      </div>
      
      <div class="line number900 index899 alt1">
        900
      </div>
      
      <div class="line number901 index900 alt2">
        901
      </div>
      
      <div class="line number902 index901 alt1">
        902
      </div>
      
      <div class="line number903 index902 alt2">
        903
      </div>
      
      <div class="line number904 index903 alt1">
        904
      </div>
      
      <div class="line number905 index904 alt2">
        905
      </div>
      
      <div class="line number906 index905 alt1">
        906
      </div>
      
      <div class="line number907 index906 alt2">
        907
      </div>
      
      <div class="line number908 index907 alt1">
        908
      </div>
      
      <div class="line number909 index908 alt2">
        909
      </div>
      
      <div class="line number910 index909 alt1">
        910
      </div>
      
      <div class="line number911 index910 alt2">
        911
      </div>
      
      <div class="line number912 index911 alt1">
        912
      </div>
      
      <div class="line number913 index912 alt2">
        913
      </div>
      
      <div class="line number914 index913 alt1">
        914
      </div>
      
      <div class="line number915 index914 alt2">
        915
      </div>
      
      <div class="line number916 index915 alt1">
        916
      </div>
      
      <div class="line number917 index916 alt2">
        917
      </div>
      
      <div class="line number918 index917 alt1">
        918
      </div>
      
      <div class="line number919 index918 alt2">
        919
      </div>
      
      <div class="line number920 index919 alt1">
        920
      </div>
      
      <div class="line number921 index920 alt2">
        921
      </div>
      
      <div class="line number922 index921 alt1">
        922
      </div>
      
      <div class="line number923 index922 alt2">
        923
      </div>
      
      <div class="line number924 index923 alt1">
        924
      </div>
      
      <div class="line number925 index924 alt2">
        925
      </div>
      
      <div class="line number926 index925 alt1">
        926
      </div>
      
      <div class="line number927 index926 alt2">
        927
      </div>
      
      <div class="line number928 index927 alt1">
        928
      </div>
      
      <div class="line number929 index928 alt2">
        929
      </div>
      
      <div class="line number930 index929 alt1">
        930
      </div>
      
      <div class="line number931 index930 alt2">
        931
      </div>
      
      <div class="line number932 index931 alt1">
        932
      </div>
      
      <div class="line number933 index932 alt2">
        933
      </div>
      
      <div class="line number934 index933 alt1">
        934
      </div>
      
      <div class="line number935 index934 alt2">
        935
      </div>
      
      <div class="line number936 index935 alt1">
        936
      </div>
      
      <div class="line number937 index936 alt2">
        937
      </div>
      
      <div class="line number938 index937 alt1">
        938
      </div>
      
      <div class="line number939 index938 alt2">
        939
      </div>
      
      <div class="line number940 index939 alt1">
        940
      </div>
      
      <div class="line number941 index940 alt2">
        941
      </div>
      
      <div class="line number942 index941 alt1">
        942
      </div>
      
      <div class="line number943 index942 alt2">
        943
      </div>
      
      <div class="line number944 index943 alt1">
        944
      </div>
      
      <div class="line number945 index944 alt2">
        945
      </div>
      
      <div class="line number946 index945 alt1">
        946
      </div>
      
      <div class="line number947 index946 alt2">
        947
      </div>
      
      <div class="line number948 index947 alt1">
        948
      </div>
      
      <div class="line number949 index948 alt2">
        949
      </div>
      
      <div class="line number950 index949 alt1">
        950
      </div>
      
      <div class="line number951 index950 alt2">
        951
      </div>
      
      <div class="line number952 index951 alt1">
        952
      </div>
      
      <div class="line number953 index952 alt2">
        953
      </div>
      
      <div class="line number954 index953 alt1">
        954
      </div>
      
      <div class="line number955 index954 alt2">
        955
      </div>
      
      <div class="line number956 index955 alt1">
        956
      </div>
      
      <div class="line number957 index956 alt2">
        957
      </div>
      
      <div class="line number958 index957 alt1">
        958
      </div>
      
      <div class="line number959 index958 alt2">
        959
      </div>
      
      <div class="line number960 index959 alt1">
        960
      </div>
      
      <div class="line number961 index960 alt2">
        961
      </div>
      
      <div class="line number962 index961 alt1">
        962
      </div>
      
      <div class="line number963 index962 alt2">
        963
      </div>
      
      <div class="line number964 index963 alt1">
        964
      </div>
      
      <div class="line number965 index964 alt2">
        965
      </div>
      
      <div class="line number966 index965 alt1">
        966
      </div>
      
      <div class="line number967 index966 alt2">
        967
      </div>
      
      <div class="line number968 index967 alt1">
        968
      </div>
      
      <div class="line number969 index968 alt2">
        969
      </div>
      
      <div class="line number970 index969 alt1">
        970
      </div>
      
      <div class="line number971 index970 alt2">
        971
      </div>
      
      <div class="line number972 index971 alt1">
        972
      </div>
      
      <div class="line number973 index972 alt2">
        973
      </div>
      
      <div class="line number974 index973 alt1">
        974
      </div>
      
      <div class="line number975 index974 alt2">
        975
      </div>
      
      <div class="line number976 index975 alt1">
        976
      </div>
      
      <div class="line number977 index976 alt2">
        977
      </div>
      
      <div class="line number978 index977 alt1">
        978
      </div>
      
      <div class="line number979 index978 alt2">
        979
      </div>
      
      <div class="line number980 index979 alt1">
        980
      </div>
      
      <div class="line number981 index980 alt2">
        981
      </div>
      
      <div class="line number982 index981 alt1">
        982
      </div>
      
      <div class="line number983 index982 alt2">
        983
      </div>
      
      <div class="line number984 index983 alt1">
        984
      </div>
      
      <div class="line number985 index984 alt2">
        985
      </div>
      
      <div class="line number986 index985 alt1">
        986
      </div>
      
      <div class="line number987 index986 alt2">
        987
      </div>
      
      <div class="line number988 index987 alt1">
        988
      </div>
      
      <div class="line number989 index988 alt2">
        989
      </div>
      
      <div class="line number990 index989 alt1">
        990
      </div>
      
      <div class="line number991 index990 alt2">
        991
      </div>
    </td>
    
    <td class="code">
      <div class="container">
        <div class="line number1 index0 alt2">
          `public` `class` `CustomViewAbove ``extends` `ViewGroup {`
        </div>
        
        <div class="line number2 index1 alt1">
        </div>
        
        <div class="line number3 index2 alt2">
          `    ``private` `static` `final` `String TAG = ``"CustomViewAbove"``;`
        </div>
        
        <div class="line number4 index3 alt1">
          `    ``private` `static` `final` `boolean` `DEBUG = ``false``;`
        </div>
        
        <div class="line number5 index4 alt2">
        </div>
        
        <div class="line number6 index5 alt1">
          `    ``private` `static` `final` `boolean` `USE_CACHE = ``false``;`
        </div>
        
        <div class="line number7 index6 alt2">
        </div>
        
        <div class="line number8 index7 alt1">
          `    ``private` `static` `final` `int` `MAX_SETTLE_DURATION = ``600``; ``// ms`
        </div>
        
        <div class="line number9 index8 alt2">
          `    ``private` `static` `final` `int` `MIN_DISTANCE_FOR_FLING = ``25``; ``// dips`
        </div>
        
        <div class="line number10 index9 alt1">
        </div>
        
        <div class="line number11 index10 alt2">
          `    ``private` `static` `final` `Interpolator sInterpolator = ``new` `Interpolator() {`
        </div>
        
        <div class="line number12 index11 alt1">
          `        ``public` `float` `getInterpolation(``float` `t) {`
        </div>
        
        <div class="line number13 index12 alt2">
          `            ``t -= ``1``.0f;`
        </div>
        
        <div class="line number14 index13 alt1">
          `            ``return` `t * t * t * t * t + ``1``.0f;`
        </div>
        
        <div class="line number15 index14 alt2">
          `        ``}`
        </div>
        
        <div class="line number16 index15 alt1">
          `    ``};`
        </div>
        
        <div class="line number17 index16 alt2">
        </div>
        
        <div class="line number18 index17 alt1">
          `    ``private` `View mContent;`
        </div>
        
        <div class="line number19 index18 alt2">
        </div>
        
        <div class="line number20 index19 alt1">
          `    ``private` `int` `mCurItem;`
        </div>
        
        <div class="line number21 index20 alt2">
          `    ``private` `Scroller mScroller;`
        </div>
        
        <div class="line number22 index21 alt1">
        </div>
        
        <div class="line number23 index22 alt2">
          `    ``private` `boolean` `mScrollingCacheEnabled;`
        </div>
        
        <div class="line number24 index23 alt1">
        </div>
        
        <div class="line number25 index24 alt2">
          `    ``private` `boolean` `mScrolling;`
        </div>
        
        <div class="line number26 index25 alt1">
        </div>
        
        <div class="line number27 index26 alt2">
          `    ``private` `boolean` `mIsBeingDragged;`
        </div>
        
        <div class="line number28 index27 alt1">
          `    ``private` `boolean` `mIsUnableToDrag;`
        </div>
        
        <div class="line number29 index28 alt2">
          `    ``private` `int` `mTouchSlop;`
        </div>
        
        <div class="line number30 index29 alt1">
          `    ``private` `float` `mInitialMotionX;`
        </div>
        
        <div class="line number31 index30 alt2">
          `    ``/**`
        </div>
        
        <div class="line number32 index31 alt1">
          `     ``* Position of the last motion event.`
        </div>
        
        <div class="line number33 index32 alt2">
          `     ``*/`
        </div>
        
        <div class="line number34 index33 alt1">
          `    ``private` `float` `mLastMotionX;`
        </div>
        
        <div class="line number35 index34 alt2">
          `    ``private` `float` `mLastMotionY;`
        </div>
        
        <div class="line number36 index35 alt1">
          `    ``/**`
        </div>
        
        <div class="line number37 index36 alt2">
          `     ``* ID of the active pointer. This is used to retain consistency during`
        </div>
        
        <div class="line number38 index37 alt1">
          `     ``* drags/flings if multiple pointers are used.`
        </div>
        
        <div class="line number39 index38 alt2">
          `     ``*/`
        </div>
        
        <div class="line number40 index39 alt1">
          `    ``protected` `int` `mActivePointerId = INVALID_POINTER;`
        </div>
        
        <div class="line number41 index40 alt2">
          `    ``/**`
        </div>
        
        <div class="line number42 index41 alt1">
          `     ``* Sentinel value for no current active pointer.`
        </div>
        
        <div class="line number43 index42 alt2">
          `     ``* Used by {@link #mActivePointerId}.`
        </div>
        
        <div class="line number44 index43 alt1">
          `     ``*/`
        </div>
        
        <div class="line number45 index44 alt2">
          `    ``private` `static` `final` `int` `INVALID_POINTER = -``1``;`
        </div>
        
        <div class="line number46 index45 alt1">
          `        ``/** 保存转场动画的变量*/`
        </div>
        
        <div class="line number47 index46 alt2">
          `    ``private` `CanvasTransformer mTransformer;`
        </div>
        
        <div class="line number48 index47 alt1">
        </div>
        
        <div class="line number49 index48 alt2">
          `    ``/**`
        </div>
        
        <div class="line number50 index49 alt1">
          `     ``* Determines speed during touch scrolling`
        </div>
        
        <div class="line number51 index50 alt2">
          `     ``*/`
        </div>
        
        <div class="line number52 index51 alt1">
          `    ``protected` `VelocityTracker mVelocityTracker;`
        </div>
        
        <div class="line number53 index52 alt2">
          `    ``private` `int` `mMinimumVelocity;`
        </div>
        
        <div class="line number54 index53 alt1">
          `    ``protected` `int` `mMaximumVelocity;`
        </div>
        
        <div class="line number55 index54 alt2">
          `    ``private` `int` `mFlingDistance;`
        </div>
        
        <div class="line number56 index55 alt1">
        </div>
        
        <div class="line number57 index56 alt2">
          `    ``private` `CustomViewBehind mViewBehind;`
        </div>
        
        <div class="line number58 index57 alt1">
          `    ``//  private int mMode;`
        </div>
        
        <div class="line number59 index58 alt2">
          `    ``private` `boolean` `mEnabled = ``true``;`
        </div>
        
        <div class="line number60 index59 alt1">
        </div>
        
        <div class="line number61 index60 alt2">
          `    ``private` `OnPageChangeListener mOnPageChangeListener;`
        </div>
        
        <div class="line number62 index61 alt1">
          `    ``private` `OnPageChangeListener mInternalPageChangeListener;`
        </div>
        
        <div class="line number63 index62 alt2">
        </div>
        
        <div class="line number64 index63 alt1">
          `    ``//  private OnCloseListener mCloseListener;`
        </div>
        
        <div class="line number65 index64 alt2">
          `    ``//  private OnOpenListener mOpenListener;`
        </div>
        
        <div class="line number66 index65 alt1">
          `    ``private` `OnClosedListener mClosedListener;`
        </div>
        
        <div class="line number67 index66 alt2">
          `    ``private` `OnOpenedListener mOpenedListener;`
        </div>
        
        <div class="line number68 index67 alt1">
        </div>
        
        <div class="line number69 index68 alt2">
          `    ``private` `List&lt;View&gt; mIgnoredViews = ``new` `ArrayList&lt;View&gt;();`
        </div>
        
        <div class="line number70 index69 alt1">
        </div>
        
        <div class="line number71 index70 alt2">
          `    ``//  private int mScrollState = SCROLL_STATE_IDLE;`
        </div>
        
        <div class="line number72 index71 alt1">
        </div>
        
        <div class="line number73 index72 alt2">
          `    ``/**`
        </div>
        
        <div class="line number74 index73 alt1">
          `     ``* Callback interface for responding to changing state of the selected page.`
        </div>
        
        <div class="line number75 index74 alt2">
          `     ``*/`
        </div>
        
        <div class="line number76 index75 alt1">
          `    ``public` `interface` `OnPageChangeListener {`
        </div>
        
        <div class="line number77 index76 alt2">
        </div>
        
        <div class="line number78 index77 alt1">
          `        ``/**`
        </div>
        
        <div class="line number79 index78 alt2">
          `         ``* This method will be invoked when the current page is scrolled, either as part`
        </div>
        
        <div class="line number80 index79 alt1">
          `         ``* of a programmatically initiated smooth scroll or a user initiated touch scroll.`
        </div>
        
        <div class="line number81 index80 alt2">
          `         ``*`
        </div>
        
        <div class="line number82 index81 alt1">
          `         ``* @param position Position index of the first page currently being displayed.`
        </div>
        
        <div class="line number83 index82 alt2">
          `         ``*                 Page position+1 will be visible if positionOffset is nonzero.`
        </div>
        
        <div class="line number84 index83 alt1">
          `         ``* @param positionOffset Value from [0, 1) indicating the offset from the page at position.`
        </div>
        
        <div class="line number85 index84 alt2">
          `         ``* @param positionOffsetPixels Value in pixels indicating the offset from position.`
        </div>
        
        <div class="line number86 index85 alt1">
          `         ``*/`
        </div>
        
        <div class="line number87 index86 alt2">
          `        ``public` `void` `onPageScrolled(``int` `position, ``float` `positionOffset, ``int` `positionOffsetPixels);`
        </div>
        
        <div class="line number88 index87 alt1">
        </div>
        
        <div class="line number89 index88 alt2">
          `        ``/**`
        </div>
        
        <div class="line number90 index89 alt1">
          `         ``* This method will be invoked when a new page becomes selected. Animation is not`
        </div>
        
        <div class="line number91 index90 alt2">
          `         ``* necessarily complete.`
        </div>
        
        <div class="line number92 index91 alt1">
          `         ``*`
        </div>
        
        <div class="line number93 index92 alt2">
          `         ``* @param position Position index of the new selected page.`
        </div>
        
        <div class="line number94 index93 alt1">
          `         ``*/`
        </div>
        
        <div class="line number95 index94 alt2">
          `        ``public` `void` `onPageSelected(``int` `position);`
        </div>
        
        <div class="line number96 index95 alt1">
        </div>
        
        <div class="line number97 index96 alt2">
          `    ``}`
        </div>
        
        <div class="line number98 index97 alt1">
        </div>
        
        <div class="line number99 index98 alt2">
          `    ``/**`
        </div>
        
        <div class="line number100 index99 alt1">
          `     ``* Simple implementation of the {@link OnPageChangeListener} interface with stub`
        </div>
        
        <div class="line number101 index100 alt2">
          `     ``* implementations of each method. Extend this if you do not intend to override`
        </div>
        
        <div class="line number102 index101 alt1">
          `     ``* every method of {@link OnPageChangeListener}.`
        </div>
        
        <div class="line number103 index102 alt2">
          `     ``*/`
        </div>
        
        <div class="line number104 index103 alt1">
          `    ``public` `static` `class` `SimpleOnPageChangeListener ``implements` `OnPageChangeListener {`
        </div>
        
        <div class="line number105 index104 alt2">
        </div>
        
        <div class="line number106 index105 alt1">
          `        ``public` `void` `onPageScrolled(``int` `position, ``float` `positionOffset, ``int` `positionOffsetPixels) {`
        </div>
        
        <div class="line number107 index106 alt2">
          `            ``// This space for rent`
        </div>
        
        <div class="line number108 index107 alt1">
          `        ``}`
        </div>
        
        <div class="line number109 index108 alt2">
        </div>
        
        <div class="line number110 index109 alt1">
          `        ``public` `void` `onPageSelected(``int` `position) {`
        </div>
        
        <div class="line number111 index110 alt2">
          `            ``// This space for rent`
        </div>
        
        <div class="line number112 index111 alt1">
          `        ``}`
        </div>
        
        <div class="line number113 index112 alt2">
        </div>
        
        <div class="line number114 index113 alt1">
          `        ``public` `void` `onPageScrollStateChanged(``int` `state) {`
        </div>
        
        <div class="line number115 index114 alt2">
          `            ``// This space for rent`
        </div>
        
        <div class="line number116 index115 alt1">
          `        ``}`
        </div>
        
        <div class="line number117 index116 alt2">
        </div>
        
        <div class="line number118 index117 alt1">
          `    ``}`
        </div>
        
        <div class="line number119 index118 alt2">
        </div>
        
        <div class="line number120 index119 alt1">
          `    ``public` `CustomViewAbove(Context context) {`
        </div>
        
        <div class="line number121 index120 alt2">
          `        ``this``(context, ``null``);`
        </div>
        
        <div class="line number122 index121 alt1">
          `    ``}`
        </div>
        
        <div class="line number123 index122 alt2">
        </div>
        
        <div class="line number124 index123 alt1">
          `    ``public` `CustomViewAbove(Context context, AttributeSet attrs) {`
        </div>
        
        <div class="line number125 index124 alt2">
          `        ``super``(context, attrs);`
        </div>
        
        <div class="line number126 index125 alt1">
          `        ``initCustomViewAbove();`
        </div>
        
        <div class="line number127 index126 alt2">
          `    ``}`
        </div>
        
        <div class="line number128 index127 alt1">
        </div>
        
        <div class="line number129 index128 alt2">
          `    ``void` `initCustomViewAbove() {`
        </div>
        
        <div class="line number130 index129 alt1">
          `        ``setWillNotDraw(``false``);`
        </div>
        
        <div class="line number131 index130 alt2">
          `        ``setDescendantFocusability(FOCUS_AFTER_DESCENDANTS);`
        </div>
        
        <div class="line number132 index131 alt1">
          `        ``setFocusable(``true``);`
        </div>
        
        <div class="line number133 index132 alt2">
          `        ``final` `Context context = getContext();`
        </div>
        
        <div class="line number134 index133 alt1">
          `        ``mScroller = ``new` `Scroller(context, sInterpolator);`
        </div>
        
        <div class="line number135 index134 alt2">
          `        ``final` `ViewConfiguration configuration = ViewConfiguration.get(context);`
        </div>
        
        <div class="line number136 index135 alt1">
          `        ``mTouchSlop = ViewConfigurationCompat.getScaledPagingTouchSlop(configuration);`
        </div>
        
        <div class="line number137 index136 alt2">
          `        ``mMinimumVelocity = configuration.getScaledMinimumFlingVelocity();`
        </div>
        
        <div class="line number138 index137 alt1">
          `        ``mMaximumVelocity = configuration.getScaledMaximumFlingVelocity();`
        </div>
        
        <div class="line number139 index138 alt2">
          `        ``setInternalPageChangeListener(``new` `SimpleOnPageChangeListener() {`
        </div>
        
        <div class="line number140 index139 alt1">
          `            ``public` `void` `onPageSelected(``int` `position) {`
        </div>
        
        <div class="line number141 index140 alt2">
          `                ``if` `(mViewBehind != ``null``) {`
        </div>
        
        <div class="line number142 index141 alt1">
          `                    ``switch` `(position) {`
        </div>
        
        <div class="line number143 index142 alt2">
          `                    ``case` ```:`
        </div>
        
        <div class="line number144 index143 alt1">
          `                    ``case` `2``:`
        </div>
        
        <div class="line number145 index144 alt2">
          `                        ``mViewBehind.setChildrenEnabled(``true``);`
        </div>
        
        <div class="line number146 index145 alt1">
          `                        ``break``;`
        </div>
        
        <div class="line number147 index146 alt2">
          `                    ``case` `1``:`
        </div>
        
        <div class="line number148 index147 alt1">
          `                        ``mViewBehind.setChildrenEnabled(``false``);`
        </div>
        
        <div class="line number149 index148 alt2">
          `                        ``break``;`
        </div>
        
        <div class="line number150 index149 alt1">
          `                    ``}`
        </div>
        
        <div class="line number151 index150 alt2">
          `                ``}`
        </div>
        
        <div class="line number152 index151 alt1">
          `            ``}`
        </div>
        
        <div class="line number153 index152 alt2">
          `        ``});`
        </div>
        
        <div class="line number154 index153 alt1">
        </div>
        
        <div class="line number155 index154 alt2">
          `        ``final` `float` `density = context.getResources().getDisplayMetrics().density;`
        </div>
        
        <div class="line number156 index155 alt1">
          `        ``mFlingDistance = (``int``) (MIN_DISTANCE_FOR_FLING * density);`
        </div>
        
        <div class="line number157 index156 alt2">
          `    ``}`
        </div>
        
        <div class="line number158 index157 alt1">
        </div>
        
        <div class="line number159 index158 alt2">
          `    ``/**`
        </div>
        
        <div class="line number160 index159 alt1">
          `     ``* Set the currently selected page. If the CustomViewPager has already been through its first`
        </div>
        
        <div class="line number161 index160 alt2">
          `     ``* layout there will be a smooth animated transition between the current item and the`
        </div>
        
        <div class="line number162 index161 alt1">
          `     ``* specified item.`
        </div>
        
        <div class="line number163 index162 alt2">
          `     ``*`
        </div>
        
        <div class="line number164 index163 alt1">
          `     ``* @param item Item index to select`
        </div>
        
        <div class="line number165 index164 alt2">
          `     ``*/`
        </div>
        
        <div class="line number166 index165 alt1">
          `    ``public` `void` `setCurrentItem(``int` `item) {`
        </div>
        
        <div class="line number167 index166 alt2">
          `        ``setCurrentItemInternal(item, ``true``, ``false``);`
        </div>
        
        <div class="line number168 index167 alt1">
          `    ``}`
        </div>
        
        <div class="line number169 index168 alt2">
        </div>
        
        <div class="line number170 index169 alt1">
          `    ``/**`
        </div>
        
        <div class="line number171 index170 alt2">
          `     ``* Set the currently selected page.`
        </div>
        
        <div class="line number172 index171 alt1">
          `     ``*`
        </div>
        
        <div class="line number173 index172 alt2">
          `     ``* @param item Item index to select`
        </div>
        
        <div class="line number174 index173 alt1">
          `     ``* @param smoothScroll True to smoothly scroll to the new item, false to transition immediately`
        </div>
        
        <div class="line number175 index174 alt2">
          `     ``*/`
        </div>
        
        <div class="line number176 index175 alt1">
          `    ``public` `void` `setCurrentItem(``int` `item, ``boolean` `smoothScroll) {`
        </div>
        
        <div class="line number177 index176 alt2">
          `        ``setCurrentItemInternal(item, smoothScroll, ``false``);`
        </div>
        
        <div class="line number178 index177 alt1">
          `    ``}`
        </div>
        
        <div class="line number179 index178 alt2">
        </div>
        
        <div class="line number180 index179 alt1">
          `    ``public` `int` `getCurrentItem() {`
        </div>
        
        <div class="line number181 index180 alt2">
          `        ``return` `mCurItem;`
        </div>
        
        <div class="line number182 index181 alt1">
          `    ``}`
        </div>
        
        <div class="line number183 index182 alt2">
        </div>
        
        <div class="line number184 index183 alt1">
          `    ``void` `setCurrentItemInternal(``int` `item, ``boolean` `smoothScroll, ``boolean` `always) {`
        </div>
        
        <div class="line number185 index184 alt2">
          `        ``setCurrentItemInternal(item, smoothScroll, always, ````);`
        </div>
        
        <div class="line number186 index185 alt1">
          `    ``}`
        </div>
        
        <div class="line number187 index186 alt2">
        </div>
        
        <div class="line number188 index187 alt1">
          `    ``void` `setCurrentItemInternal(``int` `item, ``boolean` `smoothScroll, ``boolean` `always, ``int` `velocity) {`
        </div>
        
        <div class="line number189 index188 alt2">
          `        ``if` `(!always && mCurItem == item) {`
        </div>
        
        <div class="line number190 index189 alt1">
          `            ``setScrollingCacheEnabled(``false``);`
        </div>
        
        <div class="line number191 index190 alt2">
          `            ``return``;`
        </div>
        
        <div class="line number192 index191 alt1">
          `        ``}`
        </div>
        
        <div class="line number193 index192 alt2">
        </div>
        
        <div class="line number194 index193 alt1">
          `        ``item = mViewBehind.getMenuPage(item);`
        </div>
        
        <div class="line number195 index194 alt2">
        </div>
        
        <div class="line number196 index195 alt1">
          `        ``final` `boolean` `dispatchSelected = mCurItem != item;`
        </div>
        
        <div class="line number197 index196 alt2">
          `        ``mCurItem = item;`
        </div>
        
        <div class="line number198 index197 alt1">
          `        ``final` `int` `destX = getDestScrollX(mCurItem);`
        </div>
        
        <div class="line number199 index198 alt2">
          `        ``if` `(dispatchSelected && mOnPageChangeListener != ``null``) {`
        </div>
        
        <div class="line number200 index199 alt1">
          `            ``mOnPageChangeListener.onPageSelected(item);`
        </div>
        
        <div class="line number201 index200 alt2">
          `        ``}`
        </div>
        
        <div class="line number202 index201 alt1">
          `        ``if` `(dispatchSelected && mInternalPageChangeListener != ``null``) {`
        </div>
        
        <div class="line number203 index202 alt2">
          `            ``mInternalPageChangeListener.onPageSelected(item);`
        </div>
        
        <div class="line number204 index203 alt1">
          `        ``}`
        </div>
        
        <div class="line number205 index204 alt2">
          `        ``if` `(smoothScroll) {`
        </div>
        
        <div class="line number206 index205 alt1">
          `            ``smoothScrollTo(destX, ````, velocity);`
        </div>
        
        <div class="line number207 index206 alt2">
          `        ``} ``else` `{`
        </div>
        
        <div class="line number208 index207 alt1">
          `            ``completeScroll();`
        </div>
        
        <div class="line number209 index208 alt2">
          `            ``scrollTo(destX, ````);`
        </div>
        
        <div class="line number210 index209 alt1">
          `        ``}`
        </div>
        
        <div class="line number211 index210 alt2">
          `    ``}`
        </div>
        
        <div class="line number212 index211 alt1">
        </div>
        
        <div class="line number213 index212 alt2">
          `    ``/**`
        </div>
        
        <div class="line number214 index213 alt1">
          `     ``* Set a listener that will be invoked whenever the page changes or is incrementally`
        </div>
        
        <div class="line number215 index214 alt2">
          `     ``* scrolled. See {@link OnPageChangeListener}.`
        </div>
        
        <div class="line number216 index215 alt1">
          `     ``*`
        </div>
        
        <div class="line number217 index216 alt2">
          `     ``* @param listener Listener to set`
        </div>
        
        <div class="line number218 index217 alt1">
          `     ``*/`
        </div>
        
        <div class="line number219 index218 alt2">
          `    ``public` `void` `setOnPageChangeListener(OnPageChangeListener listener) {`
        </div>
        
        <div class="line number220 index219 alt1">
          `        ``mOnPageChangeListener = listener;`
        </div>
        
        <div class="line number221 index220 alt2">
          `    ``}`
        </div>
        
        <div class="line number222 index221 alt1">
          `    ``/*`
        </div>
        
        <div class="line number223 index222 alt2">
          `    ``public void setOnOpenListener(OnOpenListener l) {`
        </div>
        
        <div class="line number224 index223 alt1">
          `        ``mOpenListener = l;`
        </div>
        
        <div class="line number225 index224 alt2">
          `    ``}`
        </div>
        
        <div class="line number226 index225 alt1">
        </div>
        
        <div class="line number227 index226 alt2">
          `    ``public void setOnCloseListener(OnCloseListener l) {`
        </div>
        
        <div class="line number228 index227 alt1">
          `        ``mCloseListener = l;`
        </div>
        
        <div class="line number229 index228 alt2">
          `    ``}`
        </div>
        
        <div class="line number230 index229 alt1">
          `     ``*/`
        </div>
        
        <div class="line number231 index230 alt2">
          `    ``public void setOnOpenedListener(OnOpenedListener l) {`
        </div>
        
        <div class="line number232 index231 alt1">
          `        ``mOpenedListener = l;`
        </div>
        
        <div class="line number233 index232 alt2">
          `    ``}`
        </div>
        
        <div class="line number234 index233 alt1">
        </div>
        
        <div class="line number235 index234 alt2">
          `    ``public void setOnClosedListener(OnClosedListener l) {`
        </div>
        
        <div class="line number236 index235 alt1">
          `        ``mClosedListener = l;`
        </div>
        
        <div class="line number237 index236 alt2">
          `    ``}`
        </div>
        
        <div class="line number238 index237 alt1">
        </div>
        
        <div class="line number239 index238 alt2">
          `    ``/**`
        </div>
        
        <div class="line number240 index239 alt1">
          `     ``* Set a separate OnPageChangeListener for internal use by the support library.`
        </div>
        
        <div class="line number241 index240 alt2">
          `     ``*`
        </div>
        
        <div class="line number242 index241 alt1">
          `     ``* @param listener Listener to set`
        </div>
        
        <div class="line number243 index242 alt2">
          `     ``* @return The old listener that was set, if any.`
        </div>
        
        <div class="line number244 index243 alt1">
          `     ``*/`
        </div>
        
        <div class="line number245 index244 alt2">
          `    ``OnPageChangeListener setInternalPageChangeListener(OnPageChangeListener listener) {`
        </div>
        
        <div class="line number246 index245 alt1">
          `        ``OnPageChangeListener oldListener = mInternalPageChangeListener;`
        </div>
        
        <div class="line number247 index246 alt2">
          `        ``mInternalPageChangeListener = listener;`
        </div>
        
        <div class="line number248 index247 alt1">
          `        ``return oldListener;`
        </div>
        
        <div class="line number249 index248 alt2">
          `    ``}`
        </div>
        
        <div class="line number250 index249 alt1">
        </div>
        
        <div class="line number251 index250 alt2">
          `    ``public void addIgnoredView(View v) {`
        </div>
        
        <div class="line number252 index251 alt1">
          `        ``if (!mIgnoredViews.contains(v)) {`
        </div>
        
        <div class="line number253 index252 alt2">
          `            ``mIgnoredViews.add(v);`
        </div>
        
        <div class="line number254 index253 alt1">
          `        ``}`
        </div>
        
        <div class="line number255 index254 alt2">
          `    ``}`
        </div>
        
        <div class="line number256 index255 alt1">
        </div>
        
        <div class="line number257 index256 alt2">
          `    ``public void removeIgnoredView(View v) {`
        </div>
        
        <div class="line number258 index257 alt1">
          `        ``mIgnoredViews.remove(v);`
        </div>
        
        <div class="line number259 index258 alt2">
          `    ``}`
        </div>
        
        <div class="line number260 index259 alt1">
        </div>
        
        <div class="line number261 index260 alt2">
          `    ``public void clearIgnoredViews() {`
        </div>
        
        <div class="line number262 index261 alt1">
          `        ``mIgnoredViews.clear();`
        </div>
        
        <div class="line number263 index262 alt2">
          `    ``}`
        </div>
        
        <div class="line number264 index263 alt1">
        </div>
        
        <div class="line number265 index264 alt2">
          `    ``// We want the duration of the page snap animation to be influenced by the distance that`
        </div>
        
        <div class="line number266 index265 alt1">
          `    ``// the screen has to travel, however, we don't want this duration to be effected in a`
        </div>
        
        <div class="line number267 index266 alt2">
          `    ``// purely linear fashion. Instead, we use this method to moderate the effect that the distance`
        </div>
        
        <div class="line number268 index267 alt1">
          `    ``// of travel has on the overall snap duration.`
        </div>
        
        <div class="line number269 index268 alt2">
          `    ``float distanceInfluenceForSnapDuration(float f) {`
        </div>
        
        <div class="line number270 index269 alt1">
          `        ``f -= 0.5f; // center the values about 0.`
        </div>
        
        <div class="line number271 index270 alt2">
          `        ``f *= 0.3f * Math.PI / 2.0f;`
        </div>
        
        <div class="line number272 index271 alt1">
          `        ``return (float) FloatMath.sin(f);`
        </div>
        
        <div class="line number273 index272 alt2">
          `    ``}`
        </div>
        
        <div class="line number274 index273 alt1">
        </div>
        
        <div class="line number275 index274 alt2">
          `    ``public int getDestScrollX(int page) {`
        </div>
        
        <div class="line number276 index275 alt1">
          `        ``switch (page) {`
        </div>
        
        <div class="line number277 index276 alt2">
          `        ``case 0:`
        </div>
        
        <div class="line number278 index277 alt1">
          `        ``case 2:`
        </div>
        
        <div class="line number279 index278 alt2">
          `            ``return mViewBehind.getMenuLeft(mContent, page);`
        </div>
        
        <div class="line number280 index279 alt1">
          `        ``case 1:`
        </div>
        
        <div class="line number281 index280 alt2">
          `            ``return mContent.getLeft();`
        </div>
        
        <div class="line number282 index281 alt1">
          `        ``}`
        </div>
        
        <div class="line number283 index282 alt2">
          `        ``return 0;`
        </div>
        
        <div class="line number284 index283 alt1">
          `    ``}`
        </div>
        
        <div class="line number285 index284 alt2">
        </div>
        
        <div class="line number286 index285 alt1">
          `    ``private int getLeftBound() {`
        </div>
        
        <div class="line number287 index286 alt2">
          `        ``return mViewBehind.getAbsLeftBound(mContent);`
        </div>
        
        <div class="line number288 index287 alt1">
          `    ``}`
        </div>
        
        <div class="line number289 index288 alt2">
        </div>
        
        <div class="line number290 index289 alt1">
          `    ``private int getRightBound() {`
        </div>
        
        <div class="line number291 index290 alt2">
          `        ``return mViewBehind.getAbsRightBound(mContent);`
        </div>
        
        <div class="line number292 index291 alt1">
          `    ``}`
        </div>
        
        <div class="line number293 index292 alt2">
        </div>
        
        <div class="line number294 index293 alt1">
          `    ``public int getContentLeft() {`
        </div>
        
        <div class="line number295 index294 alt2">
          `        ``return mContent.getLeft() + mContent.getPaddingLeft();`
        </div>
        
        <div class="line number296 index295 alt1">
          `    ``}`
        </div>
        
        <div class="line number297 index296 alt2">
        </div>
        
        <div class="line number298 index297 alt1">
          `    ``public boolean isMenuOpen() {`
        </div>
        
        <div class="line number299 index298 alt2">
          `        ``return mCurItem == 0 || mCurItem == 2;`
        </div>
        
        <div class="line number300 index299 alt1">
          `    ``}`
        </div>
        
        <div class="line number301 index300 alt2">
        </div>
        
        <div class="line number302 index301 alt1">
          `    ``private boolean isInIgnoredView(MotionEvent ev) {`
        </div>
        
        <div class="line number303 index302 alt2">
          `        ``Rect rect = new Rect();`
        </div>
        
        <div class="line number304 index303 alt1">
          `        ``for (View v : mIgnoredViews) {`
        </div>
        
        <div class="line number305 index304 alt2">
          `            ``v.getHitRect(rect);`
        </div>
        
        <div class="line number306 index305 alt1">
          `            ``if (rect.contains((int)ev.getX(), (int)ev.getY())) return true;`
        </div>
        
        <div class="line number307 index306 alt2">
          `        ``}`
        </div>
        
        <div class="line number308 index307 alt1">
          `        ``return false;`
        </div>
        
        <div class="line number309 index308 alt2">
          `    ``}`
        </div>
        
        <div class="line number310 index309 alt1">
        </div>
        
        <div class="line number311 index310 alt2">
          `    ``public int getBehindWidth() {`
        </div>
        
        <div class="line number312 index311 alt1">
          `        ``if (mViewBehind == null) {`
        </div>
        
        <div class="line number313 index312 alt2">
          `            ``return 0;`
        </div>
        
        <div class="line number314 index313 alt1">
          `        ``} else {`
        </div>
        
        <div class="line number315 index314 alt2">
          `            ``return mViewBehind.getBehindWidth();`
        </div>
        
        <div class="line number316 index315 alt1">
          `        ``}`
        </div>
        
        <div class="line number317 index316 alt2">
          `    ``}`
        </div>
        
        <div class="line number318 index317 alt1">
        </div>
        
        <div class="line number319 index318 alt2">
          `    ``public int getChildWidth(int i) {`
        </div>
        
        <div class="line number320 index319 alt1">
          `        ``switch (i) {`
        </div>
        
        <div class="line number321 index320 alt2">
          `        ``case 0:`
        </div>
        
        <div class="line number322 index321 alt1">
          `            ``return getBehindWidth();`
        </div>
        
        <div class="line number323 index322 alt2">
          `        ``case 1:`
        </div>
        
        <div class="line number324 index323 alt1">
          `            ``return mContent.getWidth();`
        </div>
        
        <div class="line number325 index324 alt2">
          `        ``default:`
        </div>
        
        <div class="line number326 index325 alt1">
          `            ``return 0;`
        </div>
        
        <div class="line number327 index326 alt2">
          `        ``}`
        </div>
        
        <div class="line number328 index327 alt1">
          `    ``}`
        </div>
        
        <div class="line number329 index328 alt2">
        </div>
        
        <div class="line number330 index329 alt1">
          `    ``public boolean isSlidingEnabled() {`
        </div>
        
        <div class="line number331 index330 alt2">
          `        ``return mEnabled;`
        </div>
        
        <div class="line number332 index331 alt1">
          `    ``}`
        </div>
        
        <div class="line number333 index332 alt2">
        </div>
        
        <div class="line number334 index333 alt1">
          `    ``public void setSlidingEnabled(boolean b) {`
        </div>
        
        <div class="line number335 index334 alt2">
          `        ``mEnabled = b;`
        </div>
        
        <div class="line number336 index335 alt1">
          `    ``}`
        </div>
        
        <div class="line number337 index336 alt2">
        </div>
        
        <div class="line number338 index337 alt1">
          `    ``/**`
        </div>
        
        <div class="line number339 index338 alt2">
          `     ``* Like {@link View#scrollBy}, but scroll smoothly instead of immediately.`
        </div>
        
        <div class="line number340 index339 alt1">
          `     ``*`
        </div>
        
        <div class="line number341 index340 alt2">
          `     ``* @param x the number of pixels to scroll by on the X axis`
        </div>
        
        <div class="line number342 index341 alt1">
          `     ``* @param y the number of pixels to scroll by on the Y axis`
        </div>
        
        <div class="line number343 index342 alt2">
          `     ``*/`
        </div>
        
        <div class="line number344 index343 alt1">
          `    ``void smoothScrollTo(int x, int y) {`
        </div>
        
        <div class="line number345 index344 alt2">
          `        ``smoothScrollTo(x, y, 0);`
        </div>
        
        <div class="line number346 index345 alt1">
          `    ``}`
        </div>
        
        <div class="line number347 index346 alt2">
        </div>
        
        <div class="line number348 index347 alt1">
          `    ``/**`
        </div>
        
        <div class="line number349 index348 alt2">
          `     ``* Like {@link View#scrollBy}, but scroll smoothly instead of immediately.`
        </div>
        
        <div class="line number350 index349 alt1">
          `     ``*`
        </div>
        
        <div class="line number351 index350 alt2">
          `     ``* @param x the number of pixels to scroll by on the X axis`
        </div>
        
        <div class="line number352 index351 alt1">
          `     ``* @param y the number of pixels to scroll by on the Y axis`
        </div>
        
        <div class="line number353 index352 alt2">
          `     ``* @param velocity the velocity associated with a fling, if applicable. (0 otherwise)`
        </div>
        
        <div class="line number354 index353 alt1">
          `     ``*/`
        </div>
        
        <div class="line number355 index354 alt2">
          `    ``void smoothScrollTo(int x, int y, int velocity) {`
        </div>
        
        <div class="line number356 index355 alt1">
          `        ``if (getChildCount() == 0) {`
        </div>
        
        <div class="line number357 index356 alt2">
          `            ``// Nothing to do.`
        </div>
        
        <div class="line number358 index357 alt1">
          `            ``setScrollingCacheEnabled(false);`
        </div>
        
        <div class="line number359 index358 alt2">
          `            ``return;`
        </div>
        
        <div class="line number360 index359 alt1">
          `        ``}`
        </div>
        
        <div class="line number361 index360 alt2">
          `        ``int sx = getScrollX();`
        </div>
        
        <div class="line number362 index361 alt1">
          `        ``int sy = getScrollY();`
        </div>
        
        <div class="line number363 index362 alt2">
          `        ``int dx = x - sx;`
        </div>
        
        <div class="line number364 index363 alt1">
          `        ``int dy = y - sy;`
        </div>
        
        <div class="line number365 index364 alt2">
          `        ``if (dx == 0 && dy == 0) {`
        </div>
        
        <div class="line number366 index365 alt1">
          `            ``completeScroll();`
        </div>
        
        <div class="line number367 index366 alt2">
          `            ``if (isMenuOpen()) {`
        </div>
        
        <div class="line number368 index367 alt1">
          `                ``if (mOpenedListener != null)`
        </div>
        
        <div class="line number369 index368 alt2">
          `                    ``mOpenedListener.onOpened();`
        </div>
        
        <div class="line number370 index369 alt1">
          `            ``} else {`
        </div>
        
        <div class="line number371 index370 alt2">
          `                ``if (mClosedListener != null)`
        </div>
        
        <div class="line number372 index371 alt1">
          `                    ``mClosedListener.onClosed();`
        </div>
        
        <div class="line number373 index372 alt2">
          `            ``}`
        </div>
        
        <div class="line number374 index373 alt1">
          `            ``return;`
        </div>
        
        <div class="line number375 index374 alt2">
          `        ``}`
        </div>
        
        <div class="line number376 index375 alt1">
        </div>
        
        <div class="line number377 index376 alt2">
          `        ``setScrollingCacheEnabled(true);`
        </div>
        
        <div class="line number378 index377 alt1">
          `        ``mScrolling = true;`
        </div>
        
        <div class="line number379 index378 alt2">
        </div>
        
        <div class="line number380 index379 alt1">
          `        ``final int width = getBehindWidth();`
        </div>
        
        <div class="line number381 index380 alt2">
          `        ``final int halfWidth = width / 2;`
        </div>
        
        <div class="line number382 index381 alt1">
          `        ``final float distanceRatio = Math.min(1f, 1.0f * Math.abs(dx) / width);`
        </div>
        
        <div class="line number383 index382 alt2">
          `        ``final float distance = halfWidth + halfWidth *`
        </div>
        
        <div class="line number384 index383 alt1">
          `                ``distanceInfluenceForSnapDuration(distanceRatio);`
        </div>
        
        <div class="line number385 index384 alt2">
        </div>
        
        <div class="line number386 index385 alt1">
          `        ``int duration = 0;`
        </div>
        
        <div class="line number387 index386 alt2">
          `        ``velocity = Math.abs(velocity);`
        </div>
        
        <div class="line number388 index387 alt1">
          `        ``if (velocity &gt; 0) {`
        </div>
        
        <div class="line number389 index388 alt2">
          `            ``duration = 4 * Math.round(1000 * Math.abs(distance / velocity));`
        </div>
        
        <div class="line number390 index389 alt1">
          `        ``} else {`
        </div>
        
        <div class="line number391 index390 alt2">
          `            ``final float pageDelta = (float) Math.abs(dx) / width;`
        </div>
        
        <div class="line number392 index391 alt1">
          `            ``duration = (int) ((pageDelta + 1) * 100);`
        </div>
        
        <div class="line number393 index392 alt2">
          `            ``duration = MAX_SETTLE_DURATION;`
        </div>
        
        <div class="line number394 index393 alt1">
          `        ``}`
        </div>
        
        <div class="line number395 index394 alt2">
          `        ``duration = Math.min(duration, MAX_SETTLE_DURATION);`
        </div>
        
        <div class="line number396 index395 alt1">
        </div>
        
        <div class="line number397 index396 alt2">
          `        ``mScroller.startScroll(sx, sy, dx, dy, duration);`
        </div>
        
        <div class="line number398 index397 alt1">
          `        ``invalidate();`
        </div>
        
        <div class="line number399 index398 alt2">
          `    ``}`
        </div>
        
        <div class="line number400 index399 alt1">
        </div>
        
        <div class="line number401 index400 alt2">
          `    ``public void setContent(View v) {`
        </div>
        
        <div class="line number402 index401 alt1">
          `        ``if (mContent != null)`
        </div>
        
        <div class="line number403 index402 alt2">
          `            ``this.removeView(mContent);`
        </div>
        
        <div class="line number404 index403 alt1">
          `        ``mContent = v;`
        </div>
        
        <div class="line number405 index404 alt2">
          `        ``addView(mContent);`
        </div>
        
        <div class="line number406 index405 alt1">
          `    ``}`
        </div>
        
        <div class="line number407 index406 alt2">
        </div>
        
        <div class="line number408 index407 alt1">
          `    ``public View getContent() {`
        </div>
        
        <div class="line number409 index408 alt2">
          `        ``return mContent;`
        </div>
        
        <div class="line number410 index409 alt1">
          `    ``}`
        </div>
        
        <div class="line number411 index410 alt2">
        </div>
        
        <div class="line number412 index411 alt1">
          `    ``public void setCustomViewBehind(CustomViewBehind cvb) {`
        </div>
        
        <div class="line number413 index412 alt2">
          `        ``mViewBehind = cvb;`
        </div>
        
        <div class="line number414 index413 alt1">
          `    ``}`
        </div>
        
        <div class="line number415 index414 alt2">
        </div>
        
        <div class="line number416 index415 alt1">
          `    ``@Override`
        </div>
        
        <div class="line number417 index416 alt2">
          `    ``protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {`
        </div>
        
        <div class="line number418 index417 alt1">
        </div>
        
        <div class="line number419 index418 alt2">
          `        ``int width = getDefaultSize(0, widthMeasureSpec);`
        </div>
        
        <div class="line number420 index419 alt1">
          `        ``int height = getDefaultSize(0, heightMeasureSpec);`
        </div>
        
        <div class="line number421 index420 alt2">
          `        ``setMeasuredDimension(width, height);`
        </div>
        
        <div class="line number422 index421 alt1">
        </div>
        
        <div class="line number423 index422 alt2">
          `        ``final int contentWidth = getChildMeasureSpec(widthMeasureSpec, 0, width);`
        </div>
        
        <div class="line number424 index423 alt1">
          `        ``final int contentHeight = getChildMeasureSpec(heightMeasureSpec, 0, height);`
        </div>
        
        <div class="line number425 index424 alt2">
          `        ``mContent.measure(contentWidth, contentHeight);`
        </div>
        
        <div class="line number426 index425 alt1">
          `    ``}`
        </div>
        
        <div class="line number427 index426 alt2">
        </div>
        
        <div class="line number428 index427 alt1">
          `    ``@Override`
        </div>
        
        <div class="line number429 index428 alt2">
          `    ``protected void onSizeChanged(int w, int h, int oldw, int oldh) {`
        </div>
        
        <div class="line number430 index429 alt1">
          `        ``super.onSizeChanged(w, h, oldw, oldh);`
        </div>
        
        <div class="line number431 index430 alt2">
          `        ``// Make sure scroll position is set correctly.`
        </div>
        
        <div class="line number432 index431 alt1">
          `        ``if (w != oldw) {`
        </div>
        
        <div class="line number433 index432 alt2">
          `            ``// [ChrisJ] - This fixes the onConfiguration change for orientation issue..`
        </div>
        
        <div class="line number434 index433 alt1">
          `            ``// maybe worth having a look why the recomputeScroll pos is screwing`
        </div>
        
        <div class="line number435 index434 alt2">
          `            ``// up?`
        </div>
        
        <div class="line number436 index435 alt1">
          `            ``completeScroll();`
        </div>
        
        <div class="line number437 index436 alt2">
          `            ``scrollTo(getDestScrollX(mCurItem), getScrollY());`
        </div>
        
        <div class="line number438 index437 alt1">
          `        ``}`
        </div>
        
        <div class="line number439 index438 alt2">
          `    ``}`
        </div>
        
        <div class="line number440 index439 alt1">
        </div>
        
        <div class="line number441 index440 alt2">
          `    ``@Override`
        </div>
        
        <div class="line number442 index441 alt1">
          `    ``protected void onLayout(boolean changed, int l, int t, int r, int b) {`
        </div>
        
        <div class="line number443 index442 alt2">
          `        ``final int width = r - l;`
        </div>
        
        <div class="line number444 index443 alt1">
          `        ``final int height = b - t;`
        </div>
        
        <div class="line number445 index444 alt2">
          `        ``mContent.layout(0, 0, width, height);`
        </div>
        
        <div class="line number446 index445 alt1">
          `    ``}`
        </div>
        
        <div class="line number447 index446 alt2">
        </div>
        
        <div class="line number448 index447 alt1">
          `    ``public void setAboveOffset(int i) {`
        </div>
        
        <div class="line number449 index448 alt2">
          `        ``//      RelativeLayout.LayoutParams params = ((RelativeLayout.LayoutParams)mContent.getLayoutParams());`
        </div>
        
        <div class="line number450 index449 alt1">
          `        ``//      params.setMargins(i, params.topMargin, params.rightMargin, params.bottomMargin);`
        </div>
        
        <div class="line number451 index450 alt2">
          `        ``mContent.setPadding(i, mContent.getPaddingTop(),`
        </div>
        
        <div class="line number452 index451 alt1">
          `                ``mContent.getPaddingRight(), mContent.getPaddingBottom());`
        </div>
        
        <div class="line number453 index452 alt2">
          `    ``}`
        </div>
        
        <div class="line number454 index453 alt1">
        </div>
        
        <div class="line number455 index454 alt2">
          `    ``@Override`
        </div>
        
        <div class="line number456 index455 alt1">
          `    ``public void computeScroll() {`
        </div>
        
        <div class="line number457 index456 alt2">
          `        ``if (!mScroller.isFinished()) {`
        </div>
        
        <div class="line number458 index457 alt1">
          `            ``if (mScroller.computeScrollOffset()) {`
        </div>
        
        <div class="line number459 index458 alt2">
          `                ``int oldX = getScrollX();`
        </div>
        
        <div class="line number460 index459 alt1">
          `                ``int oldY = getScrollY();`
        </div>
        
        <div class="line number461 index460 alt2">
          `                ``int x = mScroller.getCurrX();`
        </div>
        
        <div class="line number462 index461 alt1">
          `                ``int y = mScroller.getCurrY();`
        </div>
        
        <div class="line number463 index462 alt2">
        </div>
        
        <div class="line number464 index463 alt1">
          `                ``if (oldX != x || oldY != y) {`
        </div>
        
        <div class="line number465 index464 alt2">
          `                    ``scrollTo(x, y);`
        </div>
        
        <div class="line number466 index465 alt1">
          `                    ``pageScrolled(x);`
        </div>
        
        <div class="line number467 index466 alt2">
          `                ``}`
        </div>
        
        <div class="line number468 index467 alt1">
        </div>
        
        <div class="line number469 index468 alt2">
          `                ``// Keep on drawing until the animation has finished.`
        </div>
        
        <div class="line number470 index469 alt1">
          `                ``invalidate();`
        </div>
        
        <div class="line number471 index470 alt2">
          `                ``return;`
        </div>
        
        <div class="line number472 index471 alt1">
          `            ``}`
        </div>
        
        <div class="line number473 index472 alt2">
          `        ``}`
        </div>
        
        <div class="line number474 index473 alt1">
        </div>
        
        <div class="line number475 index474 alt2">
          `        ``// Done with scroll, clean up state.`
        </div>
        
        <div class="line number476 index475 alt1">
          `        ``completeScroll();`
        </div>
        
        <div class="line number477 index476 alt2">
          `    ``}`
        </div>
        
        <div class="line number478 index477 alt1">
        </div>
        
        <div class="line number479 index478 alt2">
          `    ``private void pageScrolled(int xpos) {`
        </div>
        
        <div class="line number480 index479 alt1">
          `        ``final int widthWithMargin = getWidth();`
        </div>
        
        <div class="line number481 index480 alt2">
          `        ``final int position = xpos / widthWithMargin;`
        </div>
        
        <div class="line number482 index481 alt1">
          `        ``final int offsetPixels = xpos % widthWithMargin;`
        </div>
        
        <div class="line number483 index482 alt2">
          `        ``final float offset = (float) offsetPixels / widthWithMargin;`
        </div>
        
        <div class="line number484 index483 alt1">
        </div>
        
        <div class="line number485 index484 alt2">
          `        ``onPageScrolled(position, offset, offsetPixels);`
        </div>
        
        <div class="line number486 index485 alt1">
          `    ``}`
        </div>
        
        <div class="line number487 index486 alt2">
        </div>
        
        <div class="line number488 index487 alt1">
          `    ``/**`
        </div>
        
        <div class="line number489 index488 alt2">
          `     ``* This method will be invoked when the current page is scrolled, either as part`
        </div>
        
        <div class="line number490 index489 alt1">
          `     ``* of a programmatically initiated smooth scroll or a user initiated touch scroll.`
        </div>
        
        <div class="line number491 index490 alt2">
          `     ``* If you override this method you must call through to the superclass implementation`
        </div>
        
        <div class="line number492 index491 alt1">
          `     ``* (e.g. super.onPageScrolled(position, offset, offsetPixels)) before onPageScrolled`
        </div>
        
        <div class="line number493 index492 alt2">
          `     ``* returns.`
        </div>
        
        <div class="line number494 index493 alt1">
          `     ``*`
        </div>
        
        <div class="line number495 index494 alt2">
          `     ``* @param position Position index of the first page currently being displayed.`
        </div>
        
        <div class="line number496 index495 alt1">
          `     ``*                 Page position+1 will be visible if positionOffset is nonzero.`
        </div>
        
        <div class="line number497 index496 alt2">
          `     ``* @param offset Value from [0, 1) indicating the offset from the page at position.`
        </div>
        
        <div class="line number498 index497 alt1">
          `     ``* @param offsetPixels Value in pixels indicating the offset from position.`
        </div>
        
        <div class="line number499 index498 alt2">
          `     ``*/`
        </div>
        
        <div class="line number500 index499 alt1">
          `    ``protected void onPageScrolled(int position, float offset, int offsetPixels) {`
        </div>
        
        <div class="line number501 index500 alt2">
          `        ``if (mOnPageChangeListener != null) {`
        </div>
        
        <div class="line number502 index501 alt1">
          `            ``mOnPageChangeListener.onPageScrolled(position, offset, offsetPixels);`
        </div>
        
        <div class="line number503 index502 alt2">
          `        ``}`
        </div>
        
        <div class="line number504 index503 alt1">
          `        ``if (mInternalPageChangeListener != null) {`
        </div>
        
        <div class="line number505 index504 alt2">
          `            ``mInternalPageChangeListener.onPageScrolled(position, offset, offsetPixels);`
        </div>
        
        <div class="line number506 index505 alt1">
          `        ``}`
        </div>
        
        <div class="line number507 index506 alt2">
          `    ``}`
        </div>
        
        <div class="line number508 index507 alt1">
        </div>
        
        <div class="line number509 index508 alt2">
          `    ``private void completeScroll() {`
        </div>
        
        <div class="line number510 index509 alt1">
          `        ``boolean needPopulate = mScrolling;`
        </div>
        
        <div class="line number511 index510 alt2">
          `        ``if (needPopulate) {`
        </div>
        
        <div class="line number512 index511 alt1">
          `            ``// Done with scroll, no longer want to cache view drawing.`
        </div>
        
        <div class="line number513 index512 alt2">
          `            ``setScrollingCacheEnabled(false);`
        </div>
        
        <div class="line number514 index513 alt1">
          `            ``mScroller.abortAnimation();`
        </div>
        
        <div class="line number515 index514 alt2">
          `            ``int oldX = getScrollX();`
        </div>
        
        <div class="line number516 index515 alt1">
          `            ``int oldY = getScrollY();`
        </div>
        
        <div class="line number517 index516 alt2">
          `            ``int x = mScroller.getCurrX();`
        </div>
        
        <div class="line number518 index517 alt1">
          `            ``int y = mScroller.getCurrY();`
        </div>
        
        <div class="line number519 index518 alt2">
          `            ``if (oldX != x || oldY != y) {`
        </div>
        
        <div class="line number520 index519 alt1">
          `                ``scrollTo(x, y);`
        </div>
        
        <div class="line number521 index520 alt2">
          `            ``}`
        </div>
        
        <div class="line number522 index521 alt1">
          `            ``if (isMenuOpen()) {`
        </div>
        
        <div class="line number523 index522 alt2">
          `                ``if (mOpenedListener != null)`
        </div>
        
        <div class="line number524 index523 alt1">
          `                    ``mOpenedListener.onOpened();`
        </div>
        
        <div class="line number525 index524 alt2">
          `            ``} else {`
        </div>
        
        <div class="line number526 index525 alt1">
          `                ``if (mClosedListener != null)`
        </div>
        
        <div class="line number527 index526 alt2">
          `                    ``mClosedListener.onClosed();`
        </div>
        
        <div class="line number528 index527 alt1">
          `            ``}`
        </div>
        
        <div class="line number529 index528 alt2">
          `        ``}`
        </div>
        
        <div class="line number530 index529 alt1">
          `        ``mScrolling = false;`
        </div>
        
        <div class="line number531 index530 alt2">
          `    ``}`
        </div>
        
        <div class="line number532 index531 alt1">
        </div>
        
        <div class="line number533 index532 alt2">
          `    ``protected int mTouchMode = SlidingMenu.TOUCHMODE_MARGIN;`
        </div>
        
        <div class="line number534 index533 alt1">
        </div>
        
        <div class="line number535 index534 alt2">
          `    ``public void setTouchMode(int i) {`
        </div>
        
        <div class="line number536 index535 alt1">
          `        ``mTouchMode = i;`
        </div>
        
        <div class="line number537 index536 alt2">
          `    ``}`
        </div>
        
        <div class="line number538 index537 alt1">
        </div>
        
        <div class="line number539 index538 alt2">
          `    ``public int getTouchMode() {`
        </div>
        
        <div class="line number540 index539 alt1">
          `        ``return mTouchMode;`
        </div>
        
        <div class="line number541 index540 alt2">
          `    ``}`
        </div>
        
        <div class="line number542 index541 alt1">
        </div>
        
        <div class="line number543 index542 alt2">
          `    ``private boolean thisTouchAllowed(MotionEvent ev) {`
        </div>
        
        <div class="line number544 index543 alt1">
          `        ``int x = (int) (ev.getX() + mScrollX);`
        </div>
        
        <div class="line number545 index544 alt2">
          `        ``if (isMenuOpen()) {`
        </div>
        
        <div class="line number546 index545 alt1">
          `            ``return mViewBehind.menuOpenTouchAllowed(mContent, mCurItem, x);`
        </div>
        
        <div class="line number547 index546 alt2">
          `        ``} else {`
        </div>
        
        <div class="line number548 index547 alt1">
          `            ``switch (mTouchMode) {`
        </div>
        
        <div class="line number549 index548 alt2">
          `            ``case SlidingMenu.TOUCHMODE_FULLSCREEN:`
        </div>
        
        <div class="line number550 index549 alt1">
          `                ``return !isInIgnoredView(ev);`
        </div>
        
        <div class="line number551 index550 alt2">
          `            ``case SlidingMenu.TOUCHMODE_NONE:`
        </div>
        
        <div class="line number552 index551 alt1">
          `                ``return false;`
        </div>
        
        <div class="line number553 index552 alt2">
          `            ``case SlidingMenu.TOUCHMODE_MARGIN:`
        </div>
        
        <div class="line number554 index553 alt1">
          `                ``return mViewBehind.marginTouchAllowed(mContent, x);`
        </div>
        
        <div class="line number555 index554 alt2">
          `            ``}`
        </div>
        
        <div class="line number556 index555 alt1">
          `        ``}`
        </div>
        
        <div class="line number557 index556 alt2">
          `        ``return false;`
        </div>
        
        <div class="line number558 index557 alt1">
          `    ``}`
        </div>
        
        <div class="line number559 index558 alt2">
        </div>
        
        <div class="line number560 index559 alt1">
          `    ``private boolean thisSlideAllowed(float dx) {`
        </div>
        
        <div class="line number561 index560 alt2">
          `        ``boolean allowed = false;`
        </div>
        
        <div class="line number562 index561 alt1">
          `        ``if (isMenuOpen()) {`
        </div>
        
        <div class="line number563 index562 alt2">
          `            ``allowed = mViewBehind.menuOpenSlideAllowed(dx);`
        </div>
        
        <div class="line number564 index563 alt1">
          `        ``} else {`
        </div>
        
        <div class="line number565 index564 alt2">
          `            ``allowed = mViewBehind.menuClosedSlideAllowed(dx);`
        </div>
        
        <div class="line number566 index565 alt1">
          `        ``}`
        </div>
        
        <div class="line number567 index566 alt2">
          `        ``if (DEBUG)`
        </div>
        
        <div class="line number568 index567 alt1">
          `            ``Log.v(TAG, "this slide allowed " + allowed + " dx: " + dx);`
        </div>
        
        <div class="line number569 index568 alt2">
          `        ``return allowed;`
        </div>
        
        <div class="line number570 index569 alt1">
          `    ``}`
        </div>
        
        <div class="line number571 index570 alt2">
        </div>
        
        <div class="line number572 index571 alt1">
          `    ``private int getPointerIndex(MotionEvent ev, int id) {`
        </div>
        
        <div class="line number573 index572 alt2">
          `        ``int activePointerIndex = MotionEventCompat.findPointerIndex(ev, id);`
        </div>
        
        <div class="line number574 index573 alt1">
          `        ``if (activePointerIndex == -1)`
        </div>
        
        <div class="line number575 index574 alt2">
          `            ``mActivePointerId = INVALID_POINTER;`
        </div>
        
        <div class="line number576 index575 alt1">
          `        ``return activePointerIndex;`
        </div>
        
        <div class="line number577 index576 alt2">
          `    ``}`
        </div>
        
        <div class="line number578 index577 alt1">
        </div>
        
        <div class="line number579 index578 alt2">
          `    ``private boolean mQuickReturn = false;`
        </div>
        
        <div class="line number580 index579 alt1">
        </div>
        
        <div class="line number581 index580 alt2">
          `    ``@Override`
        </div>
        
        <div class="line number582 index581 alt1">
          `    ``public boolean onInterceptTouchEvent(MotionEvent ev) {`
        </div>
        
        <div class="line number583 index582 alt2">
        </div>
        
        <div class="line number584 index583 alt1">
          `        ``if (!mEnabled)`
        </div>
        
        <div class="line number585 index584 alt2">
          `            ``return false;`
        </div>
        
        <div class="line number586 index585 alt1">
        </div>
        
        <div class="line number587 index586 alt2">
          `        ``final int action = ev.getAction() & MotionEventCompat.ACTION_MASK;`
        </div>
        
        <div class="line number588 index587 alt1">
        </div>
        
        <div class="line number589 index588 alt2">
          `        ``if (DEBUG)`
        </div>
        
        <div class="line number590 index589 alt1">
          `            ``if (action == MotionEvent.ACTION_DOWN)`
        </div>
        
        <div class="line number591 index590 alt2">
          `                ``Log.v(TAG, "Received ACTION_DOWN");`
        </div>
        
        <div class="line number592 index591 alt1">
        </div>
        
        <div class="line number593 index592 alt2">
          `        ``if (action == MotionEvent.ACTION_CANCEL || action == MotionEvent.ACTION_UP`
        </div>
        
        <div class="line number594 index593 alt1">
          `                ``|| (action != MotionEvent.ACTION_DOWN && mIsUnableToDrag)) {`
        </div>
        
        <div class="line number595 index594 alt2">
          `            ``endDrag();`
        </div>
        
        <div class="line number596 index595 alt1">
          `            ``return false;`
        </div>
        
        <div class="line number597 index596 alt2">
          `        ``}`
        </div>
        
        <div class="line number598 index597 alt1">
        </div>
        
        <div class="line number599 index598 alt2">
          `        ``switch (action) {`
        </div>
        
        <div class="line number600 index599 alt1">
          `        ``case MotionEvent.ACTION_MOVE:`
        </div>
        
        <div class="line number601 index600 alt2">
          `            ``determineDrag(ev);`
        </div>
        
        <div class="line number602 index601 alt1">
          `            ``break;`
        </div>
        
        <div class="line number603 index602 alt2">
          `        ``case MotionEvent.ACTION_DOWN:`
        </div>
        
        <div class="line number604 index603 alt1">
          `            ``int index = MotionEventCompat.getActionIndex(ev);`
        </div>
        
        <div class="line number605 index604 alt2">
          `            ``mActivePointerId = MotionEventCompat.getPointerId(ev, index);`
        </div>
        
        <div class="line number606 index605 alt1">
          `            ``if (mActivePointerId == INVALID_POINTER)`
        </div>
        
        <div class="line number607 index606 alt2">
          `                ``break;`
        </div>
        
        <div class="line number608 index607 alt1">
          `            ``mLastMotionX = mInitialMotionX = MotionEventCompat.getX(ev, index);`
        </div>
        
        <div class="line number609 index608 alt2">
          `            ``mLastMotionY = MotionEventCompat.getY(ev, index);`
        </div>
        
        <div class="line number610 index609 alt1">
          `            ``if (thisTouchAllowed(ev)) {`
        </div>
        
        <div class="line number611 index610 alt2">
          `                ``mIsBeingDragged = false;`
        </div>
        
        <div class="line number612 index611 alt1">
          `                ``mIsUnableToDrag = false;`
        </div>
        
        <div class="line number613 index612 alt2">
          `                ``if (isMenuOpen() && mViewBehind.menuTouchInQuickReturn(mContent, mCurItem, ev.getX() + mScrollX)) {`
        </div>
        
        <div class="line number614 index613 alt1">
          `                    ``mQuickReturn = true;`
        </div>
        
        <div class="line number615 index614 alt2">
          `                ``}`
        </div>
        
        <div class="line number616 index615 alt1">
          `            ``} else {`
        </div>
        
        <div class="line number617 index616 alt2">
          `                ``mIsUnableToDrag = true;`
        </div>
        
        <div class="line number618 index617 alt1">
          `            ``}`
        </div>
        
        <div class="line number619 index618 alt2">
          `            ``break;`
        </div>
        
        <div class="line number620 index619 alt1">
          `        ``case MotionEventCompat.ACTION_POINTER_UP:`
        </div>
        
        <div class="line number621 index620 alt2">
          `            ``onSecondaryPointerUp(ev);`
        </div>
        
        <div class="line number622 index621 alt1">
          `            ``break;`
        </div>
        
        <div class="line number623 index622 alt2">
          `        ``}`
        </div>
        
        <div class="line number624 index623 alt1">
        </div>
        
        <div class="line number625 index624 alt2">
          `        ``if (!mIsBeingDragged) {`
        </div>
        
        <div class="line number626 index625 alt1">
          `            ``if (mVelocityTracker == null) {`
        </div>
        
        <div class="line number627 index626 alt2">
          `                ``mVelocityTracker = VelocityTracker.obtain();`
        </div>
        
        <div class="line number628 index627 alt1">
          `            ``}`
        </div>
        
        <div class="line number629 index628 alt2">
          `            ``mVelocityTracker.addMovement(ev);`
        </div>
        
        <div class="line number630 index629 alt1">
          `        ``}`
        </div>
        
        <div class="line number631 index630 alt2">
          `        ``return mIsBeingDragged || mQuickReturn;`
        </div>
        
        <div class="line number632 index631 alt1">
          `    ``}`
        </div>
        
        <div class="line number633 index632 alt2">
        </div>
        
        <div class="line number634 index633 alt1">
          `    ``@Override`
        </div>
        
        <div class="line number635 index634 alt2">
          `    ``public boolean onTouchEvent(MotionEvent ev) {`
        </div>
        
        <div class="line number636 index635 alt1">
        </div>
        
        <div class="line number637 index636 alt2">
          `        ``if (!mEnabled)`
        </div>
        
        <div class="line number638 index637 alt1">
          `            ``return false;`
        </div>
        
        <div class="line number639 index638 alt2">
        </div>
        
        <div class="line number640 index639 alt1">
          `        ``if (!mIsBeingDragged && !thisTouchAllowed(ev))`
        </div>
        
        <div class="line number641 index640 alt2">
          `            ``return false;`
        </div>
        
        <div class="line number642 index641 alt1">
        </div>
        
        <div class="line number643 index642 alt2">
          `        ``//      if (!mIsBeingDragged && !mQuickReturn)`
        </div>
        
        <div class="line number644 index643 alt1">
          `        ``//          return false;`
        </div>
        
        <div class="line number645 index644 alt2">
        </div>
        
        <div class="line number646 index645 alt1">
          `        ``final int action = ev.getAction();`
        </div>
        
        <div class="line number647 index646 alt2">
        </div>
        
        <div class="line number648 index647 alt1">
          `        ``if (mVelocityTracker == null) {`
        </div>
        
        <div class="line number649 index648 alt2">
          `            ``mVelocityTracker = VelocityTracker.obtain();`
        </div>
        
        <div class="line number650 index649 alt1">
          `        ``}`
        </div>
        
        <div class="line number651 index650 alt2">
          `        ``mVelocityTracker.addMovement(ev);`
        </div>
        
        <div class="line number652 index651 alt1">
        </div>
        
        <div class="line number653 index652 alt2">
          `        ``switch (action & MotionEventCompat.ACTION_MASK) {`
        </div>
        
        <div class="line number654 index653 alt1">
          `        ``case MotionEvent.ACTION_DOWN:`
        </div>
        
        <div class="line number655 index654 alt2">
          `            ``/*`
        </div>
        
        <div class="line number656 index655 alt1">
          `             ``* If being flinged and user touches, stop the fling. isFinished`
        </div>
        
        <div class="line number657 index656 alt2">
          `             ``* will be false if being flinged.`
        </div>
        
        <div class="line number658 index657 alt1">
          `             ``*/`
        </div>
        
        <div class="line number659 index658 alt2">
          `            ``completeScroll();`
        </div>
        
        <div class="line number660 index659 alt1">
        </div>
        
        <div class="line number661 index660 alt2">
          `            ``// Remember where the motion event started`
        </div>
        
        <div class="line number662 index661 alt1">
          `            ``int index = MotionEventCompat.getActionIndex(ev);`
        </div>
        
        <div class="line number663 index662 alt2">
          `            ``mActivePointerId = MotionEventCompat.getPointerId(ev, index);`
        </div>
        
        <div class="line number664 index663 alt1">
          `            ``mLastMotionX = mInitialMotionX = ev.getX();`
        </div>
        
        <div class="line number665 index664 alt2">
          `            ``break;`
        </div>
        
        <div class="line number666 index665 alt1">
          `        ``case MotionEvent.ACTION_MOVE:`
        </div>
        
        <div class="line number667 index666 alt2">
          `            ``if (!mIsBeingDragged) {`
        </div>
        
        <div class="line number668 index667 alt1">
          `                ``determineDrag(ev);`
        </div>
        
        <div class="line number669 index668 alt2">
          `                ``if (mIsUnableToDrag)`
        </div>
        
        <div class="line number670 index669 alt1">
          `                    ``return false;`
        </div>
        
        <div class="line number671 index670 alt2">
          `            ``}`
        </div>
        
        <div class="line number672 index671 alt1">
          `            ``if (mIsBeingDragged) {`
        </div>
        
        <div class="line number673 index672 alt2">
          `                ``// Scroll to follow the motion event`
        </div>
        
        <div class="line number674 index673 alt1">
          `                ``final int activePointerIndex = getPointerIndex(ev, mActivePointerId);`
        </div>
        
        <div class="line number675 index674 alt2">
          `                ``if (mActivePointerId == INVALID_POINTER)`
        </div>
        
        <div class="line number676 index675 alt1">
          `                    ``break;`
        </div>
        
        <div class="line number677 index676 alt2">
          `                ``final float x = MotionEventCompat.getX(ev, activePointerIndex);`
        </div>
        
        <div class="line number678 index677 alt1">
          `                ``final float deltaX = mLastMotionX - x;`
        </div>
        
        <div class="line number679 index678 alt2">
          `                ``mLastMotionX = x;`
        </div>
        
        <div class="line number680 index679 alt1">
          `                ``float oldScrollX = getScrollX();`
        </div>
        
        <div class="line number681 index680 alt2">
          `                ``float scrollX = oldScrollX + deltaX;`
        </div>
        
        <div class="line number682 index681 alt1">
          `                ``final float leftBound = getLeftBound();`
        </div>
        
        <div class="line number683 index682 alt2">
          `                ``final float rightBound = getRightBound();`
        </div>
        
        <div class="line number684 index683 alt1">
          `                ``if (scrollX &lt; leftBound) {`
        </div>
        
        <div class="line number685 index684 alt2">
          `                    ``scrollX = leftBound;`
        </div>
        
        <div class="line number686 index685 alt1">
          `                ``} else if (scrollX &gt; rightBound) {`
        </div>
        
        <div class="line number687 index686 alt2">
          `                    ``scrollX = rightBound;`
        </div>
        
        <div class="line number688 index687 alt1">
          `                ``}`
        </div>
        
        <div class="line number689 index688 alt2">
          `                ``// Don't lose the rounded component`
        </div>
        
        <div class="line number690 index689 alt1">
          `                ``mLastMotionX += scrollX - (int) scrollX;`
        </div>
        
        <div class="line number691 index690 alt2">
          `                ``scrollTo((int) scrollX, getScrollY());`
        </div>
        
        <div class="line number692 index691 alt1">
          `                ``pageScrolled((int) scrollX);`
        </div>
        
        <div class="line number693 index692 alt2">
          `            ``}`
        </div>
        
        <div class="line number694 index693 alt1">
          `            ``break;`
        </div>
        
        <div class="line number695 index694 alt2">
          `        ``case MotionEvent.ACTION_UP:`
        </div>
        
        <div class="line number696 index695 alt1">
          `            ``if (mIsBeingDragged) {`
        </div>
        
        <div class="line number697 index696 alt2">
          `                ``final VelocityTracker velocityTracker = mVelocityTracker;`
        </div>
        
        <div class="line number698 index697 alt1">
          `                ``velocityTracker.computeCurrentVelocity(1000, mMaximumVelocity);`
        </div>
        
        <div class="line number699 index698 alt2">
          `                ``int initialVelocity = (int) VelocityTrackerCompat.getXVelocity(`
        </div>
        
        <div class="line number700 index699 alt1">
          `                        ``velocityTracker, mActivePointerId);`
        </div>
        
        <div class="line number701 index700 alt2">
          `                ``final int scrollX = getScrollX();`
        </div>
        
        <div class="line number702 index701 alt1">
          `                ``final float pageOffset = (float) (scrollX - getDestScrollX(mCurItem)) / getBehindWidth();`
        </div>
        
        <div class="line number703 index702 alt2">
          `                ``final int activePointerIndex = getPointerIndex(ev, mActivePointerId);`
        </div>
        
        <div class="line number704 index703 alt1">
          `                ``if (mActivePointerId != INVALID_POINTER) {`
        </div>
        
        <div class="line number705 index704 alt2">
          `                    ``final float x = MotionEventCompat.getX(ev, activePointerIndex);`
        </div>
        
        <div class="line number706 index705 alt1">
          `                    ``final int totalDelta = (int) (x - mInitialMotionX);`
        </div>
        
        <div class="line number707 index706 alt2">
          `                    ``int nextPage = determineTargetPage(pageOffset, initialVelocity, totalDelta);`
        </div>
        
        <div class="line number708 index707 alt1">
          `                    ``setCurrentItemInternal(nextPage, true, true, initialVelocity);`
        </div>
        
        <div class="line number709 index708 alt2">
          `                ``} else {   `
        </div>
        
        <div class="line number710 index709 alt1">
          `                    ``setCurrentItemInternal(mCurItem, true, true, initialVelocity);`
        </div>
        
        <div class="line number711 index710 alt2">
          `                ``}`
        </div>
        
        <div class="line number712 index711 alt1">
          `                ``mActivePointerId = INVALID_POINTER;`
        </div>
        
        <div class="line number713 index712 alt2">
          `                ``endDrag();`
        </div>
        
        <div class="line number714 index713 alt1">
          `            ``} else if (mQuickReturn && mViewBehind.menuTouchInQuickReturn(mContent, mCurItem, ev.getX() + mScrollX)) {`
        </div>
        
        <div class="line number715 index714 alt2">
          `                ``// close the menu`
        </div>
        
        <div class="line number716 index715 alt1">
          `                ``setCurrentItem(1);`
        </div>
        
        <div class="line number717 index716 alt2">
          `                ``endDrag();`
        </div>
        
        <div class="line number718 index717 alt1">
          `            ``}`
        </div>
        
        <div class="line number719 index718 alt2">
          `            ``break;`
        </div>
        
        <div class="line number720 index719 alt1">
          `        ``case MotionEvent.ACTION_CANCEL:`
        </div>
        
        <div class="line number721 index720 alt2">
          `            ``if (mIsBeingDragged) {`
        </div>
        
        <div class="line number722 index721 alt1">
          `                ``setCurrentItemInternal(mCurItem, true, true);`
        </div>
        
        <div class="line number723 index722 alt2">
          `                ``mActivePointerId = INVALID_POINTER;`
        </div>
        
        <div class="line number724 index723 alt1">
          `                ``endDrag();`
        </div>
        
        <div class="line number725 index724 alt2">
          `            ``}`
        </div>
        
        <div class="line number726 index725 alt1">
          `            ``break;`
        </div>
        
        <div class="line number727 index726 alt2">
          `        ``case MotionEventCompat.ACTION_POINTER_DOWN: {`
        </div>
        
        <div class="line number728 index727 alt1">
          `            ``final int indexx = MotionEventCompat.getActionIndex(ev);`
        </div>
        
        <div class="line number729 index728 alt2">
          `            ``mLastMotionX = MotionEventCompat.getX(ev, indexx);`
        </div>
        
        <div class="line number730 index729 alt1">
          `            ``mActivePointerId = MotionEventCompat.getPointerId(ev, indexx);`
        </div>
        
        <div class="line number731 index730 alt2">
          `            ``break;`
        </div>
        
        <div class="line number732 index731 alt1">
          `        ``}`
        </div>
        
        <div class="line number733 index732 alt2">
          `        ``case MotionEventCompat.ACTION_POINTER_UP:`
        </div>
        
        <div class="line number734 index733 alt1">
          `            ``onSecondaryPointerUp(ev);`
        </div>
        
        <div class="line number735 index734 alt2">
          `            ``int pointerIndex = getPointerIndex(ev, mActivePointerId);`
        </div>
        
        <div class="line number736 index735 alt1">
          `            ``if (mActivePointerId == INVALID_POINTER)`
        </div>
        
        <div class="line number737 index736 alt2">
          `                ``break;`
        </div>
        
        <div class="line number738 index737 alt1">
          `            ``mLastMotionX = MotionEventCompat.getX(ev, pointerIndex);`
        </div>
        
        <div class="line number739 index738 alt2">
          `            ``break;`
        </div>
        
        <div class="line number740 index739 alt1">
          `        ``}`
        </div>
        
        <div class="line number741 index740 alt2">
          `        ``return true;`
        </div>
        
        <div class="line number742 index741 alt1">
          `    ``}`
        </div>
        
        <div class="line number743 index742 alt2">
        </div>
        
        <div class="line number744 index743 alt1">
          `    ``private void determineDrag(MotionEvent ev) {`
        </div>
        
        <div class="line number745 index744 alt2">
          `        ``final int activePointerId = mActivePointerId;`
        </div>
        
        <div class="line number746 index745 alt1">
          `        ``final int pointerIndex = getPointerIndex(ev, activePointerId);`
        </div>
        
        <div class="line number747 index746 alt2">
          `        ``if (activePointerId == INVALID_POINTER || pointerIndex == INVALID_POINTER)`
        </div>
        
        <div class="line number748 index747 alt1">
          `            ``return;`
        </div>
        
        <div class="line number749 index748 alt2">
          `        ``final float x = MotionEventCompat.getX(ev, pointerIndex);`
        </div>
        
        <div class="line number750 index749 alt1">
          `        ``final float dx = x - mLastMotionX;`
        </div>
        
        <div class="line number751 index750 alt2">
          `        ``final float xDiff = Math.abs(dx);`
        </div>
        
        <div class="line number752 index751 alt1">
          `        ``final float y = MotionEventCompat.getY(ev, pointerIndex);`
        </div>
        
        <div class="line number753 index752 alt2">
          `        ``final float dy = y - mLastMotionY;`
        </div>
        
        <div class="line number754 index753 alt1">
          `        ``final float yDiff = Math.abs(dy);`
        </div>
        
        <div class="line number755 index754 alt2">
          `        ``if (xDiff &gt; (isMenuOpen()?mTouchSlop/2:mTouchSlop) && xDiff &gt; yDiff && thisSlideAllowed(dx)) {       `
        </div>
        
        <div class="line number756 index755 alt1">
          `            ``startDrag();`
        </div>
        
        <div class="line number757 index756 alt2">
          `            ``mLastMotionX = x;`
        </div>
        
        <div class="line number758 index757 alt1">
          `            ``mLastMotionY = y;`
        </div>
        
        <div class="line number759 index758 alt2">
          `            ``setScrollingCacheEnabled(true);`
        </div>
        
        <div class="line number760 index759 alt1">
          `            ``// TODO add back in touch slop check`
        </div>
        
        <div class="line number761 index760 alt2">
          `        ``} else if (xDiff &gt; mTouchSlop) {`
        </div>
        
        <div class="line number762 index761 alt1">
          `            ``mIsUnableToDrag = true;`
        </div>
        
        <div class="line number763 index762 alt2">
          `        ``}`
        </div>
        
        <div class="line number764 index763 alt1">
          `    ``}`
        </div>
        
        <div class="line number765 index764 alt2">
        </div>
        
        <div class="line number766 index765 alt1">
          `    ``@Override`
        </div>
        
        <div class="line number767 index766 alt2">
          `    ``public void scrollTo(int x, int y) {`
        </div>
        
        <div class="line number768 index767 alt1">
          `        ``super.scrollTo(x, y);`
        </div>
        
        <div class="line number769 index768 alt2">
          `        ``mScrollX = x;`
        </div>
        
        <div class="line number770 index769 alt1">
          `        ``mViewBehind.scrollBehindTo(mContent, x, y);`
        </div>
        
        <div class="line number771 index770 alt2">
          `       ``((SlidingMenu)getParent()).manageLayers(getPercentOpen());`
        </div>
        
        <div class="line number772 index771 alt1">
        </div>
        
        <div class="line number773 index772 alt2">
          `        ``if (mTransformer != null) {`
        </div>
        
        <div class="line number774 index773 alt1">
          `            ``invalidate();`
        </div>
        
        <div class="line number775 index774 alt2">
          `        ``}`
        </div>
        
        <div class="line number776 index775 alt1">
          `    ``}`
        </div>
        
        <div class="line number777 index776 alt2">
        </div>
        
        <div class="line number778 index777 alt1">
          `    ``private int determineTargetPage(float pageOffset, int velocity, int deltaX) {`
        </div>
        
        <div class="line number779 index778 alt2">
          `        ``int targetPage = mCurItem;`
        </div>
        
        <div class="line number780 index779 alt1">
          `        ``if (Math.abs(deltaX) &gt; mFlingDistance && Math.abs(velocity) &gt; mMinimumVelocity) {`
        </div>
        
        <div class="line number781 index780 alt2">
          `            ``if (velocity &gt; 0 && deltaX &gt; 0) {`
        </div>
        
        <div class="line number782 index781 alt1">
          `                ``targetPage -= 1;`
        </div>
        
        <div class="line number783 index782 alt2">
          `            ``} else if (velocity &lt; 0 && deltaX &lt; 0){`
        </div>
        
        <div class="line number784 index783 alt1">
          `                ``targetPage += 1;`
        </div>
        
        <div class="line number785 index784 alt2">
          `            ``}`
        </div>
        
        <div class="line number786 index785 alt1">
          `        ``} else {`
        </div>
        
        <div class="line number787 index786 alt2">
          `            ``targetPage = (int) Math.round(mCurItem + pageOffset);`
        </div>
        
        <div class="line number788 index787 alt1">
          `        ``}`
        </div>
        
        <div class="line number789 index788 alt2">
          `        ``return targetPage;`
        </div>
        
        <div class="line number790 index789 alt1">
          `    ``}`
        </div>
        
        <div class="line number791 index790 alt2">
        </div>
        
        <div class="line number792 index791 alt1">
          `    ``protected float getPercentOpen() {`
        </div>
        
        <div class="line number793 index792 alt2">
          `        ``return Math.abs(mScrollX-mContent.getLeft()) / getBehindWidth();`
        </div>
        
        <div class="line number794 index793 alt1">
          `    ``}`
        </div>
        
        <div class="line number795 index794 alt2">
        </div>
        
        <div class="line number796 index795 alt1">
          `    ``@Override`
        </div>
        
        <div class="line number797 index796 alt2">
          `    ``protected void dispatchDraw(Canvas canvas) {`
        </div>
        
        <div class="line number798 index797 alt1">
          `        ``// 这句要注释掉,否则会出现2个右侧的视图,一个有转场动画,一个没有转场动画`
        </div>
        
        <div class="line number799 index798 alt2">
          `                ``// super.dispatchDraw(canvas);`
        </div>
        
        <div class="line number800 index799 alt1">
          `        ``// Draw the margin drawable if needed.`
        </div>
        
        <div class="line number801 index800 alt2">
          `        ``mViewBehind.drawShadow(mContent, canvas);`
        </div>
        
        <div class="line number802 index801 alt1">
          `        ``mViewBehind.drawFade(mContent, canvas, getPercentOpen());`
        </div>
        
        <div class="line number803 index802 alt2">
          `        ``mViewBehind.drawSelector(mContent, canvas, getPercentOpen());`
        </div>
        
        <div class="line number804 index803 alt1">
          `        ``// 设置右侧视图的转场效果,主要是修改Canvas。`
        </div>
        
        <div class="line number805 index804 alt2">
          `        ``if (mTransformer != null) {`
        </div>
        
        <div class="line number806 index805 alt1">
          `            ``canvas.save();`
        </div>
        
        <div class="line number807 index806 alt2">
          `            ``mTransformer.transformCanvas(canvas, getPercentOpen());`
        </div>
        
        <div class="line number808 index807 alt1">
          `            ``super.dispatchDraw(canvas);`
        </div>
        
        <div class="line number809 index808 alt2">
          `            ``canvas.restore();`
        </div>
        
        <div class="line number810 index809 alt1">
          `        ``} else {`
        </div>
        
        <div class="line number811 index810 alt2">
          `            ``super.dispatchDraw(canvas);`
        </div>
        
        <div class="line number812 index811 alt1">
          `        ``}`
        </div>
        
        <div class="line number813 index812 alt2">
          `    ``}`
        </div>
        
        <div class="line number814 index813 alt1">
        </div>
        
        <div class="line number815 index814 alt2">
          `    ``// variables for drawing`
        </div>
        
        <div class="line number816 index815 alt1">
          `    ``private float mScrollX = 0.0f;`
        </div>
        
        <div class="line number817 index816 alt2">
        </div>
        
        <div class="line number818 index817 alt1">
          `    ``private void onSecondaryPointerUp(MotionEvent ev) {`
        </div>
        
        <div class="line number819 index818 alt2">
          `        ``if (DEBUG) Log.v(TAG, "onSecondaryPointerUp called");`
        </div>
        
        <div class="line number820 index819 alt1">
          `        ``final int pointerIndex = MotionEventCompat.getActionIndex(ev);`
        </div>
        
        <div class="line number821 index820 alt2">
          `        ``final int pointerId = MotionEventCompat.getPointerId(ev, pointerIndex);`
        </div>
        
        <div class="line number822 index821 alt1">
          `        ``if (pointerId == mActivePointerId) {`
        </div>
        
        <div class="line number823 index822 alt2">
          `            ``// This was our active pointer going up. Choose a new`
        </div>
        
        <div class="line number824 index823 alt1">
          `            ``// active pointer and adjust accordingly.`
        </div>
        
        <div class="line number825 index824 alt2">
          `            ``final int newPointerIndex = pointerIndex == 0 ? 1 : 0;`
        </div>
        
        <div class="line number826 index825 alt1">
          `            ``mLastMotionX = MotionEventCompat.getX(ev, newPointerIndex);`
        </div>
        
        <div class="line number827 index826 alt2">
          `            ``mActivePointerId = MotionEventCompat.getPointerId(ev, newPointerIndex);`
        </div>
        
        <div class="line number828 index827 alt1">
          `            ``if (mVelocityTracker != null) {`
        </div>
        
        <div class="line number829 index828 alt2">
          `                ``mVelocityTracker.clear();`
        </div>
        
        <div class="line number830 index829 alt1">
          `            ``}`
        </div>
        
        <div class="line number831 index830 alt2">
          `        ``}`
        </div>
        
        <div class="line number832 index831 alt1">
          `    ``}`
        </div>
        
        <div class="line number833 index832 alt2">
        </div>
        
        <div class="line number834 index833 alt1">
          `    ``private void startDrag() {`
        </div>
        
        <div class="line number835 index834 alt2">
          `        ``mIsBeingDragged = true;`
        </div>
        
        <div class="line number836 index835 alt1">
          `        ``mQuickReturn = false;`
        </div>
        
        <div class="line number837 index836 alt2">
          `    ``}`
        </div>
        
        <div class="line number838 index837 alt1">
        </div>
        
        <div class="line number839 index838 alt2">
          `    ``private void endDrag() {`
        </div>
        
        <div class="line number840 index839 alt1">
          `        ``mQuickReturn = false;`
        </div>
        
        <div class="line number841 index840 alt2">
          `        ``mIsBeingDragged = false;`
        </div>
        
        <div class="line number842 index841 alt1">
          `        ``mIsUnableToDrag = false;`
        </div>
        
        <div class="line number843 index842 alt2">
          `        ``mActivePointerId = INVALID_POINTER;`
        </div>
        
        <div class="line number844 index843 alt1">
        </div>
        
        <div class="line number845 index844 alt2">
          `        ``if (mVelocityTracker != null) {`
        </div>
        
        <div class="line number846 index845 alt1">
          `            ``mVelocityTracker.recycle();`
        </div>
        
        <div class="line number847 index846 alt2">
          `            ``mVelocityTracker = null;`
        </div>
        
        <div class="line number848 index847 alt1">
          `        ``}`
        </div>
        
        <div class="line number849 index848 alt2">
          `    ``}`
        </div>
        
        <div class="line number850 index849 alt1">
        </div>
        
        <div class="line number851 index850 alt2">
          `    ``private void setScrollingCacheEnabled(boolean enabled) {`
        </div>
        
        <div class="line number852 index851 alt1">
          `        ``if (mScrollingCacheEnabled != enabled) {`
        </div>
        
        <div class="line number853 index852 alt2">
          `            ``mScrollingCacheEnabled = enabled;`
        </div>
        
        <div class="line number854 index853 alt1">
          `            ``if (USE_CACHE) {`
        </div>
        
        <div class="line number855 index854 alt2">
          `                ``final int size = getChildCount();`
        </div>
        
        <div class="line number856 index855 alt1">
          `                ``for (int i = 0; i &lt; size; ++i) {`
        </div>
        
        <div class="line number857 index856 alt2">
          `                    ``final View child = getChildAt(i);`
        </div>
        
        <div class="line number858 index857 alt1">
          `                    ``if (child.getVisibility() != GONE) {`
        </div>
        
        <div class="line number859 index858 alt2">
          `                        ``child.setDrawingCacheEnabled(enabled);`
        </div>
        
        <div class="line number860 index859 alt1">
          `                    ``}`
        </div>
        
        <div class="line number861 index860 alt2">
          `                ``}`
        </div>
        
        <div class="line number862 index861 alt1">
          `            ``}`
        </div>
        
        <div class="line number863 index862 alt2">
          `        ``}`
        </div>
        
        <div class="line number864 index863 alt1">
          `    ``}`
        </div>
        
        <div class="line number865 index864 alt2">
        </div>
        
        <div class="line number866 index865 alt1">
          `    ``/**`
        </div>
        
        <div class="line number867 index866 alt2">
          `     ``* Tests scrollability within child views of v given a delta of dx.`
        </div>
        
        <div class="line number868 index867 alt1">
          `     ``*`
        </div>
        
        <div class="line number869 index868 alt2">
          `     ``* @param v View to test for horizontal scrollability`
        </div>
        
        <div class="line number870 index869 alt1">
          `     ``* @param checkV Whether the view v passed should itself be checked for scrollability (true),`
        </div>
        
        <div class="line number871 index870 alt2">
          `     ``*               or just its children (false).`
        </div>
        
        <div class="line number872 index871 alt1">
          `     ``* @param dx Delta scrolled in pixels`
        </div>
        
        <div class="line number873 index872 alt2">
          `     ``* @param x X coordinate of the active touch point`
        </div>
        
        <div class="line number874 index873 alt1">
          `     ``* @param y Y coordinate of the active touch point`
        </div>
        
        <div class="line number875 index874 alt2">
          `     ``* @return true if child views of v can be scrolled by delta of dx.`
        </div>
        
        <div class="line number876 index875 alt1">
          `     ``*/`
        </div>
        
        <div class="line number877 index876 alt2">
          `    ``protected boolean canScroll(View v, boolean checkV, int dx, int x, int y) {`
        </div>
        
        <div class="line number878 index877 alt1">
          `        ``if (v instanceof ViewGroup) {`
        </div>
        
        <div class="line number879 index878 alt2">
          `            ``final ViewGroup group = (ViewGroup) v;`
        </div>
        
        <div class="line number880 index879 alt1">
          `            ``final int scrollX = v.getScrollX();`
        </div>
        
        <div class="line number881 index880 alt2">
          `            ``final int scrollY = v.getScrollY();`
        </div>
        
        <div class="line number882 index881 alt1">
          `            ``final int count = group.getChildCount();`
        </div>
        
        <div class="line number883 index882 alt2">
          `            ``// Count backwards - let topmost views consume scroll distance first.`
        </div>
        
        <div class="line number884 index883 alt1">
          `            ``for (int i = count - 1; i &gt;= 0; i--) {`
        </div>
        
        <div class="line number885 index884 alt2">
          `                ``final View child = group.getChildAt(i);`
        </div>
        
        <div class="line number886 index885 alt1">
          `                ``if (x + scrollX &gt;= child.getLeft() && x + scrollX &lt; child.getRight() &&`
        </div>
        
        <div class="line number887 index886 alt2">
          `                        ``y + scrollY &gt;= child.getTop() && y + scrollY &lt; child.getBottom() &&`
        </div>
        
        <div class="line number888 index887 alt1">
          `                        ``canScroll(child, true, dx, x + scrollX - child.getLeft(),`
        </div>
        
        <div class="line number889 index888 alt2">
          `                                ``y + scrollY - child.getTop())) {`
        </div>
        
        <div class="line number890 index889 alt1">
          `                    ``return true;`
        </div>
        
        <div class="line number891 index890 alt2">
          `                ``}`
        </div>
        
        <div class="line number892 index891 alt1">
          `            ``}`
        </div>
        
        <div class="line number893 index892 alt2">
          `        ``}`
        </div>
        
        <div class="line number894 index893 alt1">
        </div>
        
        <div class="line number895 index894 alt2">
          `        ``return checkV && ViewCompat.canScrollHorizontally(v, -dx);`
        </div>
        
        <div class="line number896 index895 alt1">
          `    ``}`
        </div>
        
        <div class="line number897 index896 alt2">
        </div>
        
        <div class="line number898 index897 alt1">
          `    ``@Override`
        </div>
        
        <div class="line number899 index898 alt2">
          `    ``public boolean dispatchKeyEvent(KeyEvent event) {`
        </div>
        
        <div class="line number900 index899 alt1">
          `        ``// Let the focused view and/or our descendants get the key first`
        </div>
        
        <div class="line number901 index900 alt2">
          `        ``return super.dispatchKeyEvent(event) || executeKeyEvent(event);`
        </div>
        
        <div class="line number902 index901 alt1">
          `    ``}`
        </div>
        
        <div class="line number903 index902 alt2">
        </div>
        
        <div class="line number904 index903 alt1">
          `    ``/**`
        </div>
        
        <div class="line number905 index904 alt2">
          `     ``* You can call this function yourself to have the scroll view perform`
        </div>
        
        <div class="line number906 index905 alt1">
          `     ``* scrolling from a key event, just as if the event had been dispatched to`
        </div>
        
        <div class="line number907 index906 alt2">
          `     ``* it by the view hierarchy.`
        </div>
        
        <div class="line number908 index907 alt1">
          `     ``*`
        </div>
        
        <div class="line number909 index908 alt2">
          `     ``* @param event The key event to execute.`
        </div>
        
        <div class="line number910 index909 alt1">
          `     ``* @return Return true if the event was handled, else false.`
        </div>
        
        <div class="line number911 index910 alt2">
          `     ``*/`
        </div>
        
        <div class="line number912 index911 alt1">
          `    ``public` `boolean` `executeKeyEvent(KeyEvent event) {`
        </div>
        
        <div class="line number913 index912 alt2">
          `        ``boolean` `handled = ``false``;`
        </div>
        
        <div class="line number914 index913 alt1">
          `        ``if` `(event.getAction() == KeyEvent.ACTION_DOWN) {`
        </div>
        
        <div class="line number915 index914 alt2">
          `            ``switch` `(event.getKeyCode()) {`
        </div>
        
        <div class="line number916 index915 alt1">
          `            ``case` `KeyEvent.KEYCODE_DPAD_LEFT:`
        </div>
        
        <div class="line number917 index916 alt2">
          `                ``handled = arrowScroll(FOCUS_LEFT);`
        </div>
        
        <div class="line number918 index917 alt1">
          `                ``break``;`
        </div>
        
        <div class="line number919 index918 alt2">
          `            ``case` `KeyEvent.KEYCODE_DPAD_RIGHT:`
        </div>
        
        <div class="line number920 index919 alt1">
          `                ``handled = arrowScroll(FOCUS_RIGHT);`
        </div>
        
        <div class="line number921 index920 alt2">
          `                ``break``;`
        </div>
        
        <div class="line number922 index921 alt1">
          `            ``case` `KeyEvent.KEYCODE_TAB:`
        </div>
        
        <div class="line number923 index922 alt2">
          `                ``if` `(Build.VERSION.SDK_INT &gt;= ``11``) {`
        </div>
        
        <div class="line number924 index923 alt1">
          `                    ``// The focus finder had a bug handling FOCUS_FORWARD and FOCUS_BACKWARD`
        </div>
        
        <div class="line number925 index924 alt2">
          `                    ``// before Android 3.0. Ignore the tab key on those devices.`
        </div>
        
        <div class="line number926 index925 alt1">
          `                    ``if` `(KeyEventCompat.hasNoModifiers(event)) {`
        </div>
        
        <div class="line number927 index926 alt2">
          `                        ``handled = arrowScroll(FOCUS_FORWARD);`
        </div>
        
        <div class="line number928 index927 alt1">
          `                    ``} ``else` `if` `(KeyEventCompat.hasModifiers(event, KeyEvent.META_SHIFT_ON)) {`
        </div>
        
        <div class="line number929 index928 alt2">
          `                        ``handled = arrowScroll(FOCUS_BACKWARD);`
        </div>
        
        <div class="line number930 index929 alt1">
          `                    ``}`
        </div>
        
        <div class="line number931 index930 alt2">
          `                ``}`
        </div>
        
        <div class="line number932 index931 alt1">
          `                ``break``;`
        </div>
        
        <div class="line number933 index932 alt2">
          `            ``}`
        </div>
        
        <div class="line number934 index933 alt1">
          `        ``}`
        </div>
        
        <div class="line number935 index934 alt2">
          `        ``return` `handled;`
        </div>
        
        <div class="line number936 index935 alt1">
          `    ``}`
        </div>
        
        <div class="line number937 index936 alt2">
        </div>
        
        <div class="line number938 index937 alt1">
          `    ``public` `boolean` `arrowScroll(``int` `direction) {`
        </div>
        
        <div class="line number939 index938 alt2">
          `        ``View currentFocused = findFocus();`
        </div>
        
        <div class="line number940 index939 alt1">
          `        ``if` `(currentFocused == ``this``) currentFocused = ``null``;`
        </div>
        
        <div class="line number941 index940 alt2">
        </div>
        
        <div class="line number942 index941 alt1">
          `        ``boolean` `handled = ``false``;`
        </div>
        
        <div class="line number943 index942 alt2">
        </div>
        
        <div class="line number944 index943 alt1">
          `        ``View nextFocused = FocusFinder.getInstance().findNextFocus(``this``, currentFocused,`
        </div>
        
        <div class="line number945 index944 alt2">
          `                ``direction);`
        </div>
        
        <div class="line number946 index945 alt1">
          `        ``if` `(nextFocused != ``null` `&& nextFocused != currentFocused) {`
        </div>
        
        <div class="line number947 index946 alt2">
          `            ``if` `(direction == View.FOCUS_LEFT) {`
        </div>
        
        <div class="line number948 index947 alt1">
          `                ``handled = nextFocused.requestFocus();`
        </div>
        
        <div class="line number949 index948 alt2">
          `            ``} ``else` `if` `(direction == View.FOCUS_RIGHT) {`
        </div>
        
        <div class="line number950 index949 alt1">
          `                ``// If there is nothing to the right, or this is causing us to`
        </div>
        
        <div class="line number951 index950 alt2">
          `                ``// jump to the left, then what we really want to do is page right.`
        </div>
        
        <div class="line number952 index951 alt1">
          `                ``if` `(currentFocused != ``null` `&& nextFocused.getLeft() &lt;= currentFocused.getLeft()) {`
        </div>
        
        <div class="line number953 index952 alt2">
          `                    ``handled = pageRight();`
        </div>
        
        <div class="line number954 index953 alt1">
          `                ``} ``else` `{`
        </div>
        
        <div class="line number955 index954 alt2">
          `                    ``handled = nextFocused.requestFocus();`
        </div>
        
        <div class="line number956 index955 alt1">
          `                ``}`
        </div>
        
        <div class="line number957 index956 alt2">
          `            ``}`
        </div>
        
        <div class="line number958 index957 alt1">
          `        ``} ``else` `if` `(direction == FOCUS_LEFT || direction == FOCUS_BACKWARD) {`
        </div>
        
        <div class="line number959 index958 alt2">
          `            ``// Trying to move left and nothing there; try to page.`
        </div>
        
        <div class="line number960 index959 alt1">
          `            ``handled = pageLeft();`
        </div>
        
        <div class="line number961 index960 alt2">
          `        ``} ``else` `if` `(direction == FOCUS_RIGHT || direction == FOCUS_FORWARD) {`
        </div>
        
        <div class="line number962 index961 alt1">
          `            ``// Trying to move right and nothing there; try to page.`
        </div>
        
        <div class="line number963 index962 alt2">
          `            ``handled = pageRight();`
        </div>
        
        <div class="line number964 index963 alt1">
          `        ``}`
        </div>
        
        <div class="line number965 index964 alt2">
          `        ``if` `(handled) {`
        </div>
        
        <div class="line number966 index965 alt1">
          `            ``playSoundEffect(SoundEffectConstants.getContantForFocusDirection(direction));`
        </div>
        
        <div class="line number967 index966 alt2">
          `        ``}`
        </div>
        
        <div class="line number968 index967 alt1">
          `        ``return` `handled;`
        </div>
        
        <div class="line number969 index968 alt2">
          `    ``}`
        </div>
        
        <div class="line number970 index969 alt1">
        </div>
        
        <div class="line number971 index970 alt2">
          `    ``boolean` `pageLeft() {`
        </div>
        
        <div class="line number972 index971 alt1">
          `        ``if` `(mCurItem &gt; ````) {`
        </div>
        
        <div class="line number973 index972 alt2">
          `            ``setCurrentItem(mCurItem-``1``, ``true``);`
        </div>
        
        <div class="line number974 index973 alt1">
          `            ``return` `true``;`
        </div>
        
        <div class="line number975 index974 alt2">
          `        ``}`
        </div>
        
        <div class="line number976 index975 alt1">
          `        ``return` `false``;`
        </div>
        
        <div class="line number977 index976 alt2">
          `    ``}`
        </div>
        
        <div class="line number978 index977 alt1">
        </div>
        
        <div class="line number979 index978 alt2">
          `    ``boolean` `pageRight() {`
        </div>
        
        <div class="line number980 index979 alt1">
          `        ``if` `(mCurItem &lt; ``1``) {`
        </div>
        
        <div class="line number981 index980 alt2">
          `            ``setCurrentItem(mCurItem+``1``, ``true``);`
        </div>
        
        <div class="line number982 index981 alt1">
          `            ``return` `true``;`
        </div>
        
        <div class="line number983 index982 alt2">
          `        ``}`
        </div>
        
        <div class="line number984 index983 alt1">
          `        ``return` `false``;`
        </div>
        
        <div class="line number985 index984 alt2">
          `    ``}`
        </div>
        
        <div class="line number986 index985 alt1">
        </div>
        
        <div class="line number987 index986 alt2">
          `    ``public` `void` `setCanvasTransformer(CanvasTransformer t) {`
        </div>
        
        <div class="line number988 index987 alt1">
          `        ``mTransformer = t;`
        </div>
        
        <div class="line number989 index988 alt2">
          `    ``}`
        </div>
        
        <div class="line number990 index989 alt1">
        </div>
        
        <div class="line number991 index990 alt2">
          `}`
        </div>
      </div>
    </td>
  </tr>
</table>

如果想要使用这个侧滑菜单的动画效果,直接替换这两个类即可。同时,并不会影响SlidingMenu的固有功能。

下面看看如何配置SlidingMenu实例。

[?](http://www.open-open.com/lib/view/open1411269966859.html#)
<table border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td class="gutter">
      <div class="line number1 index0 alt2">
        1
      </div>
      
      <div class="line number2 index1 alt1">
        2
      </div>
      
      <div class="line number3 index2 alt2">
        3
      </div>
      
      <div class="line number4 index3 alt1">
        4
      </div>
      
      <div class="line number5 index4 alt2">
        5
      </div>
      
      <div class="line number6 index5 alt1">
        6
      </div>
      
      <div class="line number7 index6 alt2">
        7
      </div>
      
      <div class="line number8 index7 alt1">
        8
      </div>
      
      <div class="line number9 index8 alt2">
        9
      </div>
      
      <div class="line number10 index9 alt1">
        10
      </div>
      
      <div class="line number11 index10 alt2">
        11
      </div>
      
      <div class="line number12 index11 alt1">
        12
      </div>
      
      <div class="line number13 index12 alt2">
        13
      </div>
      
      <div class="line number14 index13 alt1">
        14
      </div>
      
      <div class="line number15 index14 alt2">
        15
      </div>
      
      <div class="line number16 index15 alt1">
        16
      </div>
      
      <div class="line number17 index16 alt2">
        17
      </div>
      
      <div class="line number18 index17 alt1">
        18
      </div>
      
      <div class="line number19 index18 alt2">
        19
      </div>
      
      <div class="line number20 index19 alt1">
        20
      </div>
      
      <div class="line number21 index20 alt2">
        21
      </div>
      
      <div class="line number22 index21 alt1">
        22
      </div>
      
      <div class="line number23 index22 alt2">
        23
      </div>
      
      <div class="line number24 index23 alt1">
        24
      </div>
      
      <div class="line number25 index24 alt2">
        25
      </div>
      
      <div class="line number26 index25 alt1">
        26
      </div>
      
      <div class="line number27 index26 alt2">
        27
      </div>
    </td>
    
    <td class="code">
      <div class="container">
        <div class="line number1 index0 alt2">
          `    ``SlidingMenu sm = getSlidingMenu();`
        </div>
        
        <div class="line number2 index1 alt1">
          `    ``sm.setBehindOffsetRes(R.dimen.slidingmenu_offset);`
        </div>
        
        <div class="line number3 index2 alt2">
          `    ``sm.setFadeEnabled(``false``);`
        </div>
        
        <div class="line number4 index3 alt1">
          `    ``sm.setBehindScrollScale(````.25f);`
        </div>
        
        <div class="line number5 index4 alt2">
          `    ``sm.setFadeDegree(````.25f);`
        </div>
        
        <div class="line number6 index5 alt1">
        </div>
        
        <div class="line number7 index6 alt2">
          `    ``// 配置背景图片`
        </div>
        
        <div class="line number8 index7 alt1">
          `    ``sm.setBackgroundImage(R.drawable.img_frame_background);`
        </div>
        
        <div class="line number9 index8 alt2">
          `    ``// 设置专场动画效果`
        </div>
        
        <div class="line number10 index9 alt1">
          `    ``sm.setBehindCanvasTransformer(``new` `SlidingMenu.CanvasTransformer() {`
        </div>
        
        <div class="line number11 index10 alt2">
          `        ``@Override`
        </div>
        
        <div class="line number12 index11 alt1">
          `        ``public` `void` `transformCanvas(Canvas canvas, ``float` `percentOpen) {`
        </div>
        
        <div class="line number13 index12 alt2">
          `            ``float` `scale = (``float``) (percentOpen * ``0.25` `+ ``0.75``);`
        </div>
        
        <div class="line number14 index13 alt1">
          `            ``canvas.scale(scale, scale, -canvas.getWidth() / ``2``,`
        </div>
        
        <div class="line number15 index14 alt2">
          `                    ``canvas.getHeight() / ``2``);`
        </div>
        
        <div class="line number16 index15 alt1">
          `        ``}`
        </div>
        
        <div class="line number17 index16 alt2">
          `    ``});`
        </div>
        
        <div class="line number18 index17 alt1">
        </div>
        
        <div class="line number19 index18 alt2">
          `    ``sm.setAboveCanvasTransformer(``new` `SlidingMenu.CanvasTransformer() {`
        </div>
        
        <div class="line number20 index19 alt1">
          `        ``@Override`
        </div>
        
        <div class="line number21 index20 alt2">
          `        ``public` `void` `transformCanvas(Canvas canvas, ``float` `percentOpen) {`
        </div>
        
        <div class="line number22 index21 alt1">
          `            ``float` `scale = (``float``) (``1` `- percentOpen * ``0.25``);`
        </div>
        
        <div class="line number23 index22 alt2">
          `            ``canvas.scale(scale, scale, ````, canvas.getHeight() / ``2``);`
        </div>
        
        <div class="line number24 index23 alt1">
          `        ``}`
        </div>
        
        <div class="line number25 index24 alt2">
          `    ``});`
        </div>
        
        <div class="line number26 index25 alt1">
        </div>
        
        <div class="line number27 index26 alt2">
          `}`
        </div>
      </div>
    </td>
  </tr>
</table>

大功告成!

最后,附上Demo的下载地址。

百度网盘    http://pan.baidu.com/s/1jGrASui

转自:http://www.open-open.com/lib/view/open1411269966859.html