trusty-cms 2.0.22 → 2.0.23

Sign up to get free protection for your applications and to get access to all the features.
Files changed (765) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +5 -23
  3. data/Gemfile.lock +51 -62
  4. data/app/assets/bower_components/jquery-ui/README.md +12 -0
  5. data/app/assets/bower_components/jquery-ui/bower.json +12 -0
  6. data/app/assets/bower_components/jquery-ui/component.json +13 -0
  7. data/app/assets/bower_components/jquery-ui/composer.json +69 -0
  8. data/app/assets/bower_components/jquery-ui/jquery-ui.js +18686 -0
  9. data/app/assets/bower_components/jquery-ui/jquery-ui.min.js +13 -0
  10. data/app/assets/bower_components/jquery-ui/package.json +16 -0
  11. data/app/assets/bower_components/jquery-ui/themes/base/accordion.css +23 -0
  12. data/app/assets/bower_components/jquery-ui/themes/base/all.css +12 -0
  13. data/app/assets/bower_components/jquery-ui/themes/base/autocomplete.css +16 -0
  14. data/app/assets/bower_components/jquery-ui/themes/base/base.css +30 -0
  15. data/app/assets/bower_components/jquery-ui/themes/base/button.css +82 -0
  16. data/app/assets/bower_components/jquery-ui/themes/base/checkboxradio.css +34 -0
  17. data/app/assets/bower_components/jquery-ui/themes/base/controlgroup.css +65 -0
  18. data/app/assets/bower_components/jquery-ui/themes/base/core.css +97 -0
  19. data/app/assets/bower_components/jquery-ui/themes/base/datepicker.css +185 -0
  20. data/app/assets/bower_components/jquery-ui/themes/base/dialog.css +101 -0
  21. data/app/assets/bower_components/jquery-ui/themes/base/draggable.css +12 -0
  22. data/app/assets/bower_components/jquery-ui/themes/base/images/ui-icons_444444_256x240.png +0 -0
  23. data/app/assets/bower_components/jquery-ui/themes/base/images/ui-icons_555555_256x240.png +0 -0
  24. data/app/assets/bower_components/jquery-ui/themes/base/images/ui-icons_777620_256x240.png +0 -0
  25. data/app/assets/bower_components/jquery-ui/themes/base/images/ui-icons_777777_256x240.png +0 -0
  26. data/app/assets/bower_components/jquery-ui/themes/base/images/ui-icons_cc0000_256x240.png +0 -0
  27. data/app/assets/bower_components/jquery-ui/themes/base/images/ui-icons_ffffff_256x240.png +0 -0
  28. data/app/assets/bower_components/jquery-ui/themes/base/jquery-ui.css +1312 -0
  29. data/app/assets/bower_components/jquery-ui/themes/base/jquery-ui.min.css +7 -0
  30. data/app/assets/bower_components/jquery-ui/themes/base/menu.css +64 -0
  31. data/app/assets/bower_components/jquery-ui/themes/base/progressbar.css +28 -0
  32. data/app/assets/bower_components/jquery-ui/themes/base/resizable.css +78 -0
  33. data/app/assets/bower_components/jquery-ui/themes/base/selectable.css +17 -0
  34. data/app/assets/bower_components/jquery-ui/themes/base/selectmenu.css +50 -0
  35. data/app/assets/bower_components/jquery-ui/themes/base/slider.css +75 -0
  36. data/app/assets/bower_components/jquery-ui/themes/base/sortable.css +12 -0
  37. data/app/assets/bower_components/jquery-ui/themes/base/spinner.css +52 -0
  38. data/app/assets/bower_components/jquery-ui/themes/base/tabs.css +51 -0
  39. data/app/assets/bower_components/jquery-ui/themes/base/theme.css +444 -0
  40. data/app/assets/bower_components/jquery-ui/themes/base/tooltip.css +19 -0
  41. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-bg_diagonals-thick_8_333333_40x40.png +0 -0
  42. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-bg_glass_40_111111_1x400.png +0 -0
  43. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-bg_glass_55_1c1c1c_1x400.png +0 -0
  44. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-bg_highlight-hard_100_f9f9f9_1x100.png +0 -0
  45. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-bg_highlight-hard_40_aaaaaa_1x100.png +0 -0
  46. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-bg_highlight-soft_50_aaaaaa_1x100.png +0 -0
  47. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-bg_inset-hard_45_cd0a0a_1x100.png +0 -0
  48. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-bg_inset-hard_55_ffeb80_1x100.png +0 -0
  49. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-icons_222222_256x240.png +0 -0
  50. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-icons_4ca300_256x240.png +0 -0
  51. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-icons_bbbbbb_256x240.png +0 -0
  52. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-icons_ededed_256x240.png +0 -0
  53. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-icons_ffcf29_256x240.png +0 -0
  54. data/app/assets/bower_components/jquery-ui/themes/black-tie/images/ui-icons_ffffff_256x240.png +0 -0
  55. data/app/assets/bower_components/jquery-ui/themes/black-tie/jquery-ui.css +1312 -0
  56. data/app/assets/bower_components/jquery-ui/themes/black-tie/jquery-ui.min.css +7 -0
  57. data/app/assets/bower_components/jquery-ui/themes/black-tie/theme.css +444 -0
  58. data/app/assets/bower_components/jquery-ui/themes/blitzer/images/ui-bg_diagonals-thick_75_f3d8d8_40x40.png +0 -0
  59. data/app/assets/bower_components/jquery-ui/themes/blitzer/images/ui-bg_dots-small_65_a6a6a6_2x2.png +0 -0
  60. data/app/assets/bower_components/jquery-ui/themes/blitzer/images/ui-bg_glass_55_fbf8ee_1x400.png +0 -0
  61. data/app/assets/bower_components/jquery-ui/themes/blitzer/images/ui-bg_highlight-hard_100_eeeeee_1x100.png +0 -0
  62. data/app/assets/bower_components/jquery-ui/themes/blitzer/images/ui-bg_highlight-hard_100_f6f6f6_1x100.png +0 -0
  63. data/app/assets/bower_components/jquery-ui/themes/blitzer/images/ui-bg_highlight-soft_15_cc0000_1x100.png +0 -0
  64. data/app/assets/bower_components/jquery-ui/themes/blitzer/images/ui-icons_004276_256x240.png +0 -0
  65. data/app/assets/bower_components/jquery-ui/themes/blitzer/images/ui-icons_cc0000_256x240.png +0 -0
  66. data/app/assets/bower_components/jquery-ui/themes/blitzer/images/ui-icons_ffffff_256x240.png +0 -0
  67. data/app/assets/bower_components/jquery-ui/themes/blitzer/jquery-ui.css +1312 -0
  68. data/app/assets/bower_components/jquery-ui/themes/blitzer/jquery-ui.min.css +7 -0
  69. data/app/assets/bower_components/jquery-ui/themes/blitzer/theme.css +444 -0
  70. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-bg_diagonals-thick_90_eeeeee_40x40.png +0 -0
  71. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-bg_glass_100_e4f1fb_1x400.png +0 -0
  72. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-bg_glass_50_3baae3_1x400.png +0 -0
  73. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-bg_glass_80_d7ebf9_1x400.png +0 -0
  74. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-bg_highlight-hard_100_f2f5f7_1x100.png +0 -0
  75. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-bg_highlight-hard_70_000000_1x100.png +0 -0
  76. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-bg_highlight-soft_100_deedf7_1x100.png +0 -0
  77. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-bg_highlight-soft_25_ffef8f_1x100.png +0 -0
  78. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-icons_2694e8_256x240.png +0 -0
  79. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-icons_2e83ff_256x240.png +0 -0
  80. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-icons_3d80b3_256x240.png +0 -0
  81. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-icons_72a7cf_256x240.png +0 -0
  82. data/app/assets/bower_components/jquery-ui/themes/cupertino/images/ui-icons_ffffff_256x240.png +0 -0
  83. data/app/assets/bower_components/jquery-ui/themes/cupertino/jquery-ui.css +1312 -0
  84. data/app/assets/bower_components/jquery-ui/themes/cupertino/jquery-ui.min.css +7 -0
  85. data/app/assets/bower_components/jquery-ui/themes/cupertino/theme.css +444 -0
  86. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-bg_glass_40_ffc73d_1x400.png +0 -0
  87. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-hard_20_0972a5_1x100.png +0 -0
  88. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-soft_33_003147_1x100.png +0 -0
  89. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-soft_35_222222_1x100.png +0 -0
  90. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-soft_44_444444_1x100.png +0 -0
  91. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-bg_highlight-soft_80_eeeeee_1x100.png +0 -0
  92. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-bg_loop_25_000000_21x21.png +0 -0
  93. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-icons_222222_256x240.png +0 -0
  94. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-icons_4b8e0b_256x240.png +0 -0
  95. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-icons_a83300_256x240.png +0 -0
  96. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-icons_cccccc_256x240.png +0 -0
  97. data/app/assets/bower_components/jquery-ui/themes/dark-hive/images/ui-icons_ffffff_256x240.png +0 -0
  98. data/app/assets/bower_components/jquery-ui/themes/dark-hive/jquery-ui.css +1312 -0
  99. data/app/assets/bower_components/jquery-ui/themes/dark-hive/jquery-ui.min.css +7 -0
  100. data/app/assets/bower_components/jquery-ui/themes/dark-hive/theme.css +444 -0
  101. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-bg_diagonals-thick_15_0b3e6f_40x40.png +0 -0
  102. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-bg_dots-medium_30_0b58a2_4x4.png +0 -0
  103. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-bg_dots-small_20_333333_2x2.png +0 -0
  104. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-bg_dots-small_30_a32d00_2x2.png +0 -0
  105. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-bg_dots-small_40_00498f_2x2.png +0 -0
  106. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-bg_gloss-wave_20_111111_500x100.png +0 -0
  107. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-icons_00498f_256x240.png +0 -0
  108. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-icons_98d2fb_256x240.png +0 -0
  109. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-icons_9ccdfc_256x240.png +0 -0
  110. data/app/assets/bower_components/jquery-ui/themes/dot-luv/images/ui-icons_ffffff_256x240.png +0 -0
  111. data/app/assets/bower_components/jquery-ui/themes/dot-luv/jquery-ui.css +1312 -0
  112. data/app/assets/bower_components/jquery-ui/themes/dot-luv/jquery-ui.min.css +7 -0
  113. data/app/assets/bower_components/jquery-ui/themes/dot-luv/theme.css +444 -0
  114. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-bg_gloss-wave_30_3d3644_500x100.png +0 -0
  115. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-bg_highlight-soft_100_dcd9de_1x100.png +0 -0
  116. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-bg_highlight-soft_100_eae6ea_1x100.png +0 -0
  117. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-bg_highlight-soft_25_30273a_1x100.png +0 -0
  118. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-bg_highlight-soft_45_5f5964_1x100.png +0 -0
  119. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-icons_454545_256x240.png +0 -0
  120. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-icons_734d99_256x240.png +0 -0
  121. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-icons_8d78a5_256x240.png +0 -0
  122. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-icons_a8a3ae_256x240.png +0 -0
  123. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-icons_ebccce_256x240.png +0 -0
  124. data/app/assets/bower_components/jquery-ui/themes/eggplant/images/ui-icons_ffffff_256x240.png +0 -0
  125. data/app/assets/bower_components/jquery-ui/themes/eggplant/jquery-ui.css +1312 -0
  126. data/app/assets/bower_components/jquery-ui/themes/eggplant/jquery-ui.min.css +7 -0
  127. data/app/assets/bower_components/jquery-ui/themes/eggplant/theme.css +444 -0
  128. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-bg_diagonals-small_25_c5ddfc_40x40.png +0 -0
  129. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-bg_diagonals-thick_20_e69700_40x40.png +0 -0
  130. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-bg_diagonals-thick_22_1484e6_40x40.png +0 -0
  131. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-bg_diagonals-thick_26_2293f7_40x40.png +0 -0
  132. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-bg_highlight-soft_100_f9f9f9_1x100.png +0 -0
  133. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-bg_inset-hard_100_eeeeee_1x100.png +0 -0
  134. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-icons_0a82eb_256x240.png +0 -0
  135. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-icons_0b54d5_256x240.png +0 -0
  136. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-icons_5fa5e3_256x240.png +0 -0
  137. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-icons_fcdd4a_256x240.png +0 -0
  138. data/app/assets/bower_components/jquery-ui/themes/excite-bike/images/ui-icons_ffffff_256x240.png +0 -0
  139. data/app/assets/bower_components/jquery-ui/themes/excite-bike/jquery-ui.css +1312 -0
  140. data/app/assets/bower_components/jquery-ui/themes/excite-bike/jquery-ui.min.css +7 -0
  141. data/app/assets/bower_components/jquery-ui/themes/excite-bike/theme.css +444 -0
  142. data/app/assets/bower_components/jquery-ui/themes/flick/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  143. data/app/assets/bower_components/jquery-ui/themes/flick/images/ui-bg_highlight-soft_100_f6f6f6_1x100.png +0 -0
  144. data/app/assets/bower_components/jquery-ui/themes/flick/images/ui-bg_highlight-soft_25_0073ea_1x100.png +0 -0
  145. data/app/assets/bower_components/jquery-ui/themes/flick/images/ui-bg_highlight-soft_50_dddddd_1x100.png +0 -0
  146. data/app/assets/bower_components/jquery-ui/themes/flick/images/ui-icons_0073ea_256x240.png +0 -0
  147. data/app/assets/bower_components/jquery-ui/themes/flick/images/ui-icons_454545_256x240.png +0 -0
  148. data/app/assets/bower_components/jquery-ui/themes/flick/images/ui-icons_666666_256x240.png +0 -0
  149. data/app/assets/bower_components/jquery-ui/themes/flick/images/ui-icons_ff0084_256x240.png +0 -0
  150. data/app/assets/bower_components/jquery-ui/themes/flick/images/ui-icons_ffffff_256x240.png +0 -0
  151. data/app/assets/bower_components/jquery-ui/themes/flick/jquery-ui.css +1312 -0
  152. data/app/assets/bower_components/jquery-ui/themes/flick/jquery-ui.min.css +7 -0
  153. data/app/assets/bower_components/jquery-ui/themes/flick/theme.css +444 -0
  154. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-bg_diagonals-small_40_db4865_40x40.png +0 -0
  155. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-bg_diagonals-small_50_93c3cd_40x40.png +0 -0
  156. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-bg_diagonals-small_50_ff3853_40x40.png +0 -0
  157. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-bg_diagonals-small_75_ccd232_40x40.png +0 -0
  158. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-bg_dots-medium_80_ffff38_4x4.png +0 -0
  159. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-bg_dots-small_35_35414f_2x2.png +0 -0
  160. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-bg_white-lines_85_f7f7ba_40x100.png +0 -0
  161. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-icons_454545_256x240.png +0 -0
  162. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-icons_88a206_256x240.png +0 -0
  163. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-icons_c02669_256x240.png +0 -0
  164. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-icons_e1e463_256x240.png +0 -0
  165. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-icons_ffeb33_256x240.png +0 -0
  166. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/images/ui-icons_ffffff_256x240.png +0 -0
  167. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/jquery-ui.css +1312 -0
  168. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/jquery-ui.min.css +7 -0
  169. data/app/assets/bower_components/jquery-ui/themes/hot-sneaks/theme.css +444 -0
  170. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-bg_glass_100_f5f0e5_1x400.png +0 -0
  171. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-bg_glass_25_cb842e_1x400.png +0 -0
  172. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-bg_glass_70_ede4d4_1x400.png +0 -0
  173. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-bg_highlight-hard_100_f4f0ec_1x100.png +0 -0
  174. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-bg_highlight-hard_65_fee4bd_1x100.png +0 -0
  175. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-bg_highlight-hard_75_f5f5b5_1x100.png +0 -0
  176. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-bg_inset-soft_100_f4f0ec_1x100.png +0 -0
  177. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-icons_c47a23_256x240.png +0 -0
  178. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-icons_cb672b_256x240.png +0 -0
  179. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-icons_f08000_256x240.png +0 -0
  180. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-icons_f35f07_256x240.png +0 -0
  181. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-icons_ff7519_256x240.png +0 -0
  182. data/app/assets/bower_components/jquery-ui/themes/humanity/images/ui-icons_ffffff_256x240.png +0 -0
  183. data/app/assets/bower_components/jquery-ui/themes/humanity/jquery-ui.css +1312 -0
  184. data/app/assets/bower_components/jquery-ui/themes/humanity/jquery-ui.min.css +7 -0
  185. data/app/assets/bower_components/jquery-ui/themes/humanity/theme.css +444 -0
  186. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-bg_diagonals-small_0_aaaaaa_40x40.png +0 -0
  187. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-bg_diagonals-thick_15_444444_40x40.png +0 -0
  188. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-bg_diagonals-thick_95_ffdc2e_40x40.png +0 -0
  189. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-bg_glass_55_fbf5d0_1x400.png +0 -0
  190. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-bg_highlight-hard_30_285c00_1x100.png +0 -0
  191. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-bg_highlight-soft_33_3a8104_1x100.png +0 -0
  192. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-bg_highlight-soft_50_4eb305_1x100.png +0 -0
  193. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-bg_highlight-soft_60_4ca20b_1x100.png +0 -0
  194. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-bg_inset-soft_10_285c00_1x100.png +0 -0
  195. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-icons_4eb305_256x240.png +0 -0
  196. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-icons_72b42d_256x240.png +0 -0
  197. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-icons_cd0a0a_256x240.png +0 -0
  198. data/app/assets/bower_components/jquery-ui/themes/le-frog/images/ui-icons_ffffff_256x240.png +0 -0
  199. data/app/assets/bower_components/jquery-ui/themes/le-frog/jquery-ui.css +1312 -0
  200. data/app/assets/bower_components/jquery-ui/themes/le-frog/jquery-ui.min.css +7 -0
  201. data/app/assets/bower_components/jquery-ui/themes/le-frog/theme.css +444 -0
  202. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-bg_glass_15_5f391b_1x400.png +0 -0
  203. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-bg_gloss-wave_20_1c160d_500x100.png +0 -0
  204. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-bg_gloss-wave_25_453326_500x100.png +0 -0
  205. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-bg_gloss-wave_30_44372c_500x100.png +0 -0
  206. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-bg_highlight-soft_20_201913_1x100.png +0 -0
  207. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-bg_highlight-soft_20_619226_1x100.png +0 -0
  208. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-bg_inset-soft_10_201913_1x100.png +0 -0
  209. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-icons_222222_256x240.png +0 -0
  210. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-icons_9bcc60_256x240.png +0 -0
  211. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-icons_add978_256x240.png +0 -0
  212. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-icons_e3ddc9_256x240.png +0 -0
  213. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-icons_f1fd86_256x240.png +0 -0
  214. data/app/assets/bower_components/jquery-ui/themes/mint-choc/images/ui-icons_ffffff_256x240.png +0 -0
  215. data/app/assets/bower_components/jquery-ui/themes/mint-choc/jquery-ui.css +1312 -0
  216. data/app/assets/bower_components/jquery-ui/themes/mint-choc/jquery-ui.min.css +7 -0
  217. data/app/assets/bower_components/jquery-ui/themes/mint-choc/theme.css +444 -0
  218. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-bg_glass_100_f8f8f8_1x400.png +0 -0
  219. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-bg_glass_35_dddddd_1x400.png +0 -0
  220. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-bg_glass_60_eeeeee_1x400.png +0 -0
  221. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-bg_inset-hard_75_999999_1x100.png +0 -0
  222. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-bg_inset-soft_50_c9c9c9_1x100.png +0 -0
  223. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-icons_3383bb_256x240.png +0 -0
  224. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-icons_454545_256x240.png +0 -0
  225. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-icons_70b2e1_256x240.png +0 -0
  226. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-icons_999999_256x240.png +0 -0
  227. data/app/assets/bower_components/jquery-ui/themes/overcast/images/ui-icons_fbc856_256x240.png +0 -0
  228. data/app/assets/bower_components/jquery-ui/themes/overcast/jquery-ui.css +1312 -0
  229. data/app/assets/bower_components/jquery-ui/themes/overcast/jquery-ui.min.css +7 -0
  230. data/app/assets/bower_components/jquery-ui/themes/overcast/theme.css +444 -0
  231. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-bg_diagonal-maze_20_6e4f1c_10x10.png +0 -0
  232. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-bg_diagonal-maze_40_000000_10x10.png +0 -0
  233. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_10_eceadf_60x60.png +0 -0
  234. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_10_f8f7f6_60x60.png +0 -0
  235. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_15_eceadf_60x60.png +0 -0
  236. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_15_f7f3de_60x60.png +0 -0
  237. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_15_ffffff_60x60.png +0 -0
  238. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_65_654b24_60x60.png +0 -0
  239. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-bg_fine-grain_68_b83400_60x60.png +0 -0
  240. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-icons_222222_256x240.png +0 -0
  241. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-icons_3572ac_256x240.png +0 -0
  242. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-icons_8c291d_256x240.png +0 -0
  243. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-icons_b83400_256x240.png +0 -0
  244. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-icons_fbdb93_256x240.png +0 -0
  245. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/images/ui-icons_ffffff_256x240.png +0 -0
  246. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/jquery-ui.css +1312 -0
  247. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/jquery-ui.min.css +7 -0
  248. data/app/assets/bower_components/jquery-ui/themes/pepper-grinder/theme.css +444 -0
  249. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png +0 -0
  250. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-bg_glass_85_dfeffc_1x400.png +0 -0
  251. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  252. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
  253. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png +0 -0
  254. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  255. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-icons_217bc0_256x240.png +0 -0
  256. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-icons_2e83ff_256x240.png +0 -0
  257. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-icons_469bdd_256x240.png +0 -0
  258. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-icons_6da8d5_256x240.png +0 -0
  259. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-icons_cd0a0a_256x240.png +0 -0
  260. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-icons_d8e7f3_256x240.png +0 -0
  261. data/app/assets/bower_components/jquery-ui/themes/redmond/images/ui-icons_f9bd01_256x240.png +0 -0
  262. data/app/assets/bower_components/jquery-ui/themes/redmond/jquery-ui.css +1312 -0
  263. data/app/assets/bower_components/jquery-ui/themes/redmond/jquery-ui.min.css +7 -0
  264. data/app/assets/bower_components/jquery-ui/themes/redmond/theme.css +444 -0
  265. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  266. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  267. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  268. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  269. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  270. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  271. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-icons_222222_256x240.png +0 -0
  272. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  273. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-icons_454545_256x240.png +0 -0
  274. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-icons_888888_256x240.png +0 -0
  275. data/app/assets/bower_components/jquery-ui/themes/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  276. data/app/assets/bower_components/jquery-ui/themes/smoothness/jquery-ui.css +1312 -0
  277. data/app/assets/bower_components/jquery-ui/themes/smoothness/jquery-ui.min.css +7 -0
  278. data/app/assets/bower_components/jquery-ui/themes/smoothness/theme.css +444 -0
  279. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-bg_glass_55_fcf0ba_1x400.png +0 -0
  280. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-bg_gloss-wave_100_ece8da_500x100.png +0 -0
  281. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-bg_highlight-hard_100_f5f3e5_1x100.png +0 -0
  282. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-bg_highlight-hard_100_fafaf4_1x100.png +0 -0
  283. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-bg_highlight-hard_15_459e00_1x100.png +0 -0
  284. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-bg_highlight-hard_95_cccccc_1x100.png +0 -0
  285. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-bg_highlight-soft_25_67b021_1x100.png +0 -0
  286. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-bg_highlight-soft_95_ffedad_1x100.png +0 -0
  287. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-bg_inset-soft_15_2b2922_1x100.png +0 -0
  288. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-icons_808080_256x240.png +0 -0
  289. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-icons_847e71_256x240.png +0 -0
  290. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-icons_8DC262_256x240.png +0 -0
  291. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-icons_cd0a0a_256x240.png +0 -0
  292. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-icons_eeeeee_256x240.png +0 -0
  293. data/app/assets/bower_components/jquery-ui/themes/south-street/images/ui-icons_ffffff_256x240.png +0 -0
  294. data/app/assets/bower_components/jquery-ui/themes/south-street/jquery-ui.css +1312 -0
  295. data/app/assets/bower_components/jquery-ui/themes/south-street/jquery-ui.min.css +7 -0
  296. data/app/assets/bower_components/jquery-ui/themes/south-street/theme.css +444 -0
  297. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-bg_glass_45_0078ae_1x400.png +0 -0
  298. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-bg_glass_55_f8da4e_1x400.png +0 -0
  299. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-bg_glass_75_79c9ec_1x400.png +0 -0
  300. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-bg_gloss-wave_45_e14f1c_500x100.png +0 -0
  301. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-bg_gloss-wave_50_6eac2c_500x100.png +0 -0
  302. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-bg_gloss-wave_75_2191c0_500x100.png +0 -0
  303. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  304. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-icons_0078ae_256x240.png +0 -0
  305. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-icons_056b93_256x240.png +0 -0
  306. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-icons_d8e7f3_256x240.png +0 -0
  307. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-icons_e0fdff_256x240.png +0 -0
  308. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-icons_f5e175_256x240.png +0 -0
  309. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-icons_f7a50d_256x240.png +0 -0
  310. data/app/assets/bower_components/jquery-ui/themes/start/images/ui-icons_fcd113_256x240.png +0 -0
  311. data/app/assets/bower_components/jquery-ui/themes/start/jquery-ui.css +1312 -0
  312. data/app/assets/bower_components/jquery-ui/themes/start/jquery-ui.min.css +7 -0
  313. data/app/assets/bower_components/jquery-ui/themes/start/theme.css +444 -0
  314. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-bg_diagonals-medium_20_d34d17_40x40.png +0 -0
  315. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-bg_gloss-wave_45_817865_500x100.png +0 -0
  316. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-bg_gloss-wave_60_fece2f_500x100.png +0 -0
  317. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-bg_gloss-wave_70_ffdd57_500x100.png +0 -0
  318. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-bg_gloss-wave_90_fff9e5_500x100.png +0 -0
  319. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-bg_highlight-soft_100_feeebd_1x100.png +0 -0
  320. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-bg_inset-soft_30_ffffff_1x100.png +0 -0
  321. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-icons_3d3d3d_256x240.png +0 -0
  322. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-icons_bd7b00_256x240.png +0 -0
  323. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-icons_d19405_256x240.png +0 -0
  324. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-icons_eb990f_256x240.png +0 -0
  325. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-icons_ed9f26_256x240.png +0 -0
  326. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-icons_fadc7a_256x240.png +0 -0
  327. data/app/assets/bower_components/jquery-ui/themes/sunny/images/ui-icons_ffe180_256x240.png +0 -0
  328. data/app/assets/bower_components/jquery-ui/themes/sunny/jquery-ui.css +1312 -0
  329. data/app/assets/bower_components/jquery-ui/themes/sunny/jquery-ui.min.css +7 -0
  330. data/app/assets/bower_components/jquery-ui/themes/sunny/theme.css +444 -0
  331. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_10_4f4221_10x8.png +0 -0
  332. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_20_372806_10x8.png +0 -0
  333. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_25_675423_10x8.png +0 -0
  334. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_25_d5ac5d_10x8.png +0 -0
  335. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_8_261803_10x8.png +0 -0
  336. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-bg_diamond_8_443113_10x8.png +0 -0
  337. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-bg_highlight-hard_65_fee4bd_1x100.png +0 -0
  338. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-icons_070603_256x240.png +0 -0
  339. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-icons_e8e2b5_256x240.png +0 -0
  340. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-icons_e9cd86_256x240.png +0 -0
  341. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-icons_efec9f_256x240.png +0 -0
  342. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-icons_f2ec64_256x240.png +0 -0
  343. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-icons_f9f2bd_256x240.png +0 -0
  344. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/images/ui-icons_ff7519_256x240.png +0 -0
  345. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/jquery-ui.css +1312 -0
  346. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/jquery-ui.min.css +7 -0
  347. data/app/assets/bower_components/jquery-ui/themes/swanky-purse/theme.css +444 -0
  348. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-bg_diagonals-small_50_262626_40x40.png +0 -0
  349. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-bg_glass_40_0a0a0a_1x400.png +0 -0
  350. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-bg_glass_55_f1fbe5_1x400.png +0 -0
  351. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-bg_glass_60_000000_1x400.png +0 -0
  352. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-bg_gloss-wave_55_000000_500x100.png +0 -0
  353. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-bg_gloss-wave_85_9fda58_500x100.png +0 -0
  354. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-bg_gloss-wave_95_f6ecd5_500x100.png +0 -0
  355. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-icons_000000_256x240.png +0 -0
  356. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-icons_1f1f1f_256x240.png +0 -0
  357. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-icons_9fda58_256x240.png +0 -0
  358. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-icons_b8ec79_256x240.png +0 -0
  359. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-icons_cd0a0a_256x240.png +0 -0
  360. data/app/assets/bower_components/jquery-ui/themes/trontastic/images/ui-icons_ffffff_256x240.png +0 -0
  361. data/app/assets/bower_components/jquery-ui/themes/trontastic/jquery-ui.css +1312 -0
  362. data/app/assets/bower_components/jquery-ui/themes/trontastic/jquery-ui.min.css +7 -0
  363. data/app/assets/bower_components/jquery-ui/themes/trontastic/theme.css +444 -0
  364. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-bg_glass_20_555555_1x400.png +0 -0
  365. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-bg_glass_40_0078a3_1x400.png +0 -0
  366. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-bg_glass_40_ffc73d_1x400.png +0 -0
  367. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-bg_gloss-wave_25_333333_500x100.png +0 -0
  368. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-bg_highlight-soft_80_eeeeee_1x100.png +0 -0
  369. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-bg_inset-soft_25_000000_1x100.png +0 -0
  370. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-bg_inset-soft_30_f58400_1x100.png +0 -0
  371. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-icons_222222_256x240.png +0 -0
  372. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-icons_4b8e0b_256x240.png +0 -0
  373. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-icons_a83300_256x240.png +0 -0
  374. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-icons_cccccc_256x240.png +0 -0
  375. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/images/ui-icons_ffffff_256x240.png +0 -0
  376. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/jquery-ui.css +1312 -0
  377. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/jquery-ui.min.css +7 -0
  378. data/app/assets/bower_components/jquery-ui/themes/ui-darkness/theme.css +444 -0
  379. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  380. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  381. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  382. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  383. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  384. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  385. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  386. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  387. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-icons_222222_256x240.png +0 -0
  388. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-icons_228ef1_256x240.png +0 -0
  389. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-icons_ef8c08_256x240.png +0 -0
  390. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-icons_ffd27a_256x240.png +0 -0
  391. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/images/ui-icons_ffffff_256x240.png +0 -0
  392. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/jquery-ui.css +1312 -0
  393. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/jquery-ui.min.css +7 -0
  394. data/app/assets/bower_components/jquery-ui/themes/ui-lightness/theme.css +444 -0
  395. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  396. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-bg_gloss-wave_16_121212_500x100.png +0 -0
  397. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-bg_highlight-hard_15_888888_1x100.png +0 -0
  398. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-bg_highlight-hard_55_555555_1x100.png +0 -0
  399. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-bg_highlight-soft_35_adadad_1x100.png +0 -0
  400. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-bg_highlight-soft_60_dddddd_1x100.png +0 -0
  401. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-bg_inset-soft_15_121212_1x100.png +0 -0
  402. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-icons_666666_256x240.png +0 -0
  403. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-icons_aaaaaa_256x240.png +0 -0
  404. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-icons_bbbbbb_256x240.png +0 -0
  405. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-icons_c98000_256x240.png +0 -0
  406. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-icons_cccccc_256x240.png +0 -0
  407. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-icons_cd0a0a_256x240.png +0 -0
  408. data/app/assets/bower_components/jquery-ui/themes/vader/images/ui-icons_f29a00_256x240.png +0 -0
  409. data/app/assets/bower_components/jquery-ui/themes/vader/jquery-ui.css +1312 -0
  410. data/app/assets/bower_components/jquery-ui/themes/vader/jquery-ui.min.css +7 -0
  411. data/app/assets/bower_components/jquery-ui/themes/vader/theme.css +444 -0
  412. data/app/assets/bower_components/jquery-ui/ui/core.js +21 -0
  413. data/app/assets/bower_components/jquery-ui/ui/data.js +39 -0
  414. data/app/assets/bower_components/jquery-ui/ui/disable-selection.js +46 -0
  415. data/app/assets/bower_components/jquery-ui/ui/effect.js +1635 -0
  416. data/app/assets/bower_components/jquery-ui/ui/effects/effect-blind.js +70 -0
  417. data/app/assets/bower_components/jquery-ui/ui/effects/effect-bounce.js +110 -0
  418. data/app/assets/bower_components/jquery-ui/ui/effects/effect-clip.js +65 -0
  419. data/app/assets/bower_components/jquery-ui/ui/effects/effect-drop.js +69 -0
  420. data/app/assets/bower_components/jquery-ui/ui/effects/effect-explode.js +111 -0
  421. data/app/assets/bower_components/jquery-ui/ui/effects/effect-fade.js +47 -0
  422. data/app/assets/bower_components/jquery-ui/ui/effects/effect-fold.js +89 -0
  423. data/app/assets/bower_components/jquery-ui/ui/effects/effect-highlight.js +57 -0
  424. data/app/assets/bower_components/jquery-ui/ui/effects/effect-puff.js +42 -0
  425. data/app/assets/bower_components/jquery-ui/ui/effects/effect-pulsate.js +64 -0
  426. data/app/assets/bower_components/jquery-ui/ui/effects/effect-scale.js +56 -0
  427. data/app/assets/bower_components/jquery-ui/ui/effects/effect-shake.js +74 -0
  428. data/app/assets/bower_components/jquery-ui/ui/effects/effect-size.js +191 -0
  429. data/app/assets/bower_components/jquery-ui/ui/effects/effect-slide.js +76 -0
  430. data/app/assets/bower_components/jquery-ui/ui/effects/effect-transfer.js +40 -0
  431. data/app/assets/bower_components/jquery-ui/ui/escape-selector.js +21 -0
  432. data/app/assets/bower_components/jquery-ui/ui/focusable.js +84 -0
  433. data/app/assets/bower_components/jquery-ui/ui/form-reset-mixin.js +77 -0
  434. data/app/assets/bower_components/jquery-ui/ui/form.js +20 -0
  435. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-af.js +37 -0
  436. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ar-DZ.js +39 -0
  437. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ar.js +39 -0
  438. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-az.js +37 -0
  439. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-be.js +37 -0
  440. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-bg.js +38 -0
  441. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-bs.js +37 -0
  442. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ca.js +37 -0
  443. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-cs.js +37 -0
  444. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-cy-GB.js +45 -0
  445. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-da.js +37 -0
  446. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-de.js +37 -0
  447. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-el.js +37 -0
  448. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-en-AU.js +37 -0
  449. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-en-GB.js +37 -0
  450. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-en-NZ.js +37 -0
  451. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-eo.js +37 -0
  452. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-es.js +37 -0
  453. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-et.js +45 -0
  454. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-eu.js +36 -0
  455. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-fa.js +73 -0
  456. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-fi.js +37 -0
  457. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-fo.js +45 -0
  458. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-fr-CA.js +37 -0
  459. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-fr-CH.js +37 -0
  460. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-fr.js +39 -0
  461. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-gl.js +37 -0
  462. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-he.js +37 -0
  463. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-hi.js +37 -0
  464. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-hr.js +37 -0
  465. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-hu.js +36 -0
  466. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-hy.js +37 -0
  467. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-id.js +37 -0
  468. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-is.js +45 -0
  469. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-it-CH.js +37 -0
  470. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-it.js +37 -0
  471. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ja.js +37 -0
  472. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ka.js +48 -0
  473. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-kk.js +37 -0
  474. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-km.js +37 -0
  475. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ko.js +37 -0
  476. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ky.js +38 -0
  477. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-lb.js +45 -0
  478. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-lt.js +45 -0
  479. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-lv.js +45 -0
  480. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-mk.js +37 -0
  481. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ml.js +37 -0
  482. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ms.js +37 -0
  483. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-nb.js +49 -0
  484. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-nl-BE.js +37 -0
  485. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-nl.js +37 -0
  486. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-nn.js +49 -0
  487. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-no.js +50 -0
  488. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-pl.js +37 -0
  489. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-pt-BR.js +45 -0
  490. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-pt.js +44 -0
  491. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-rm.js +61 -0
  492. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ro.js +40 -0
  493. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ru.js +37 -0
  494. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-sk.js +37 -0
  495. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-sl.js +38 -0
  496. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-sq.js +37 -0
  497. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-sr-SR.js +37 -0
  498. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-sr.js +37 -0
  499. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-sv.js +37 -0
  500. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-ta.js +53 -0
  501. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-th.js +37 -0
  502. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-tj.js +37 -0
  503. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-tr.js +37 -0
  504. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-uk.js +38 -0
  505. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-vi.js +37 -0
  506. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-zh-CN.js +37 -0
  507. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-zh-HK.js +37 -0
  508. data/app/assets/bower_components/jquery-ui/ui/i18n/datepicker-zh-TW.js +37 -0
  509. data/app/assets/bower_components/jquery-ui/ui/ie.js +15 -0
  510. data/app/assets/bower_components/jquery-ui/ui/jquery-1-7.js +89 -0
  511. data/app/assets/bower_components/jquery-ui/ui/keycode.js +45 -0
  512. data/app/assets/bower_components/jquery-ui/ui/labels.js +62 -0
  513. data/app/assets/bower_components/jquery-ui/ui/minified/core.js +4 -0
  514. data/app/assets/bower_components/jquery-ui/ui/minified/data.js +4 -0
  515. data/app/assets/bower_components/jquery-ui/ui/minified/disable-selection.js +4 -0
  516. data/app/assets/bower_components/jquery-ui/ui/minified/effect.js +4 -0
  517. data/app/assets/bower_components/jquery-ui/ui/minified/escape-selector.js +4 -0
  518. data/app/assets/bower_components/jquery-ui/ui/minified/focusable.js +4 -0
  519. data/app/assets/bower_components/jquery-ui/ui/minified/form-reset-mixin.js +4 -0
  520. data/app/assets/bower_components/jquery-ui/ui/minified/form.js +4 -0
  521. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-af.js +4 -0
  522. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ar-DZ.js +4 -0
  523. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ar.js +4 -0
  524. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-az.js +4 -0
  525. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-be.js +4 -0
  526. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-bg.js +4 -0
  527. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-bs.js +4 -0
  528. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ca.js +4 -0
  529. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-cs.js +4 -0
  530. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-cy-GB.js +4 -0
  531. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-da.js +4 -0
  532. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-de.js +4 -0
  533. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-el.js +4 -0
  534. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-en-AU.js +4 -0
  535. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-en-GB.js +4 -0
  536. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-en-NZ.js +4 -0
  537. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-eo.js +4 -0
  538. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-es.js +4 -0
  539. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-et.js +4 -0
  540. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-eu.js +4 -0
  541. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-fa.js +4 -0
  542. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-fi.js +4 -0
  543. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-fo.js +4 -0
  544. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-fr-CA.js +4 -0
  545. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-fr-CH.js +4 -0
  546. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-fr.js +4 -0
  547. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-gl.js +4 -0
  548. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-he.js +4 -0
  549. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-hi.js +4 -0
  550. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-hr.js +4 -0
  551. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-hu.js +4 -0
  552. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-hy.js +4 -0
  553. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-id.js +4 -0
  554. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-is.js +4 -0
  555. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-it-CH.js +4 -0
  556. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-it.js +4 -0
  557. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ja.js +4 -0
  558. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ka.js +4 -0
  559. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-kk.js +4 -0
  560. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-km.js +4 -0
  561. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ko.js +4 -0
  562. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ky.js +4 -0
  563. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-lb.js +4 -0
  564. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-lt.js +4 -0
  565. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-lv.js +4 -0
  566. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-mk.js +4 -0
  567. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ml.js +4 -0
  568. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ms.js +4 -0
  569. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-nb.js +4 -0
  570. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-nl-BE.js +4 -0
  571. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-nl.js +4 -0
  572. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-nn.js +4 -0
  573. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-no.js +4 -0
  574. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-pl.js +4 -0
  575. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-pt-BR.js +4 -0
  576. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-pt.js +4 -0
  577. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-rm.js +4 -0
  578. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ro.js +4 -0
  579. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ru.js +4 -0
  580. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-sk.js +4 -0
  581. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-sl.js +4 -0
  582. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-sq.js +4 -0
  583. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-sr-SR.js +4 -0
  584. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-sr.js +4 -0
  585. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-sv.js +4 -0
  586. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-ta.js +4 -0
  587. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-th.js +4 -0
  588. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-tj.js +4 -0
  589. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-tr.js +4 -0
  590. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-uk.js +4 -0
  591. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-vi.js +4 -0
  592. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-zh-CN.js +4 -0
  593. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-zh-HK.js +4 -0
  594. data/app/assets/bower_components/jquery-ui/ui/minified/i18n/datepicker-zh-TW.js +4 -0
  595. data/app/assets/bower_components/jquery-ui/ui/minified/ie.js +4 -0
  596. data/app/assets/bower_components/jquery-ui/ui/minified/jquery-1-7.js +4 -0
  597. data/app/assets/bower_components/jquery-ui/ui/minified/keycode.js +4 -0
  598. data/app/assets/bower_components/jquery-ui/ui/minified/labels.js +4 -0
  599. data/app/assets/bower_components/jquery-ui/ui/minified/plugin.js +4 -0
  600. data/app/assets/bower_components/jquery-ui/ui/minified/position.js +4 -0
  601. data/app/assets/bower_components/jquery-ui/ui/minified/safe-active-element.js +4 -0
  602. data/app/assets/bower_components/jquery-ui/ui/minified/safe-blur.js +4 -0
  603. data/app/assets/bower_components/jquery-ui/ui/minified/scroll-parent.js +4 -0
  604. data/app/assets/bower_components/jquery-ui/ui/minified/tabbable.js +4 -0
  605. data/app/assets/bower_components/jquery-ui/ui/minified/unique-id.js +4 -0
  606. data/app/assets/bower_components/jquery-ui/ui/minified/version.js +4 -0
  607. data/app/assets/bower_components/jquery-ui/ui/minified/widget.js +4 -0
  608. data/app/assets/bower_components/jquery-ui/ui/plugin.js +44 -0
  609. data/app/assets/bower_components/jquery-ui/ui/position.js +525 -0
  610. data/app/assets/bower_components/jquery-ui/ui/safe-active-element.js +40 -0
  611. data/app/assets/bower_components/jquery-ui/ui/safe-blur.js +21 -0
  612. data/app/assets/bower_components/jquery-ui/ui/scroll-parent.js +45 -0
  613. data/app/assets/bower_components/jquery-ui/ui/tabbable.js +35 -0
  614. data/app/assets/bower_components/jquery-ui/ui/unique-id.js +49 -0
  615. data/app/assets/bower_components/jquery-ui/ui/version.js +17 -0
  616. data/app/assets/bower_components/jquery-ui/ui/widget.js +713 -0
  617. data/app/assets/bower_components/jquery-ui/ui/widgets/accordion.js +613 -0
  618. data/app/assets/bower_components/jquery-ui/ui/widgets/autocomplete.js +682 -0
  619. data/app/assets/bower_components/jquery-ui/ui/widgets/button.js +386 -0
  620. data/app/assets/bower_components/jquery-ui/ui/widgets/checkboxradio.js +278 -0
  621. data/app/assets/bower_components/jquery-ui/ui/widgets/controlgroup.js +296 -0
  622. data/app/assets/bower_components/jquery-ui/ui/widgets/datepicker.js +2120 -0
  623. data/app/assets/bower_components/jquery-ui/ui/widgets/dialog.js +930 -0
  624. data/app/assets/bower_components/jquery-ui/ui/widgets/draggable.js +1251 -0
  625. data/app/assets/bower_components/jquery-ui/ui/widgets/droppable.js +497 -0
  626. data/app/assets/bower_components/jquery-ui/ui/widgets/menu.js +670 -0
  627. data/app/assets/bower_components/jquery-ui/ui/widgets/mouse.js +226 -0
  628. data/app/assets/bower_components/jquery-ui/ui/widgets/progressbar.js +178 -0
  629. data/app/assets/bower_components/jquery-ui/ui/widgets/resizable.js +1201 -0
  630. data/app/assets/bower_components/jquery-ui/ui/widgets/selectable.js +310 -0
  631. data/app/assets/bower_components/jquery-ui/ui/widgets/selectmenu.js +687 -0
  632. data/app/assets/bower_components/jquery-ui/ui/widgets/slider.js +750 -0
  633. data/app/assets/bower_components/jquery-ui/ui/widgets/sortable.js +1554 -0
  634. data/app/assets/bower_components/jquery-ui/ui/widgets/spinner.js +575 -0
  635. data/app/assets/bower_components/jquery-ui/ui/widgets/tabs.js +921 -0
  636. data/app/assets/bower_components/jquery-ui/ui/widgets/tooltip.js +520 -0
  637. data/app/assets/bower_components/jquery/AUTHORS.txt +295 -0
  638. data/app/assets/bower_components/jquery/LICENSE.txt +36 -0
  639. data/app/assets/bower_components/jquery/README.md +65 -0
  640. data/app/assets/bower_components/jquery/bower.json +14 -0
  641. data/app/assets/bower_components/jquery/dist/core.js +481 -0
  642. data/app/assets/bower_components/jquery/dist/jquery.js +10074 -0
  643. data/app/assets/bower_components/jquery/dist/jquery.min.js +4 -0
  644. data/app/assets/bower_components/jquery/dist/jquery.min.map +1 -0
  645. data/app/assets/bower_components/jquery/dist/jquery.slim.js +7966 -0
  646. data/app/assets/bower_components/jquery/dist/jquery.slim.min.js +4 -0
  647. data/app/assets/bower_components/jquery/dist/jquery.slim.min.map +1 -0
  648. data/app/assets/bower_components/jquery/external/sizzle/LICENSE.txt +36 -0
  649. data/app/assets/bower_components/jquery/external/sizzle/dist/sizzle.js +2217 -0
  650. data/app/assets/bower_components/jquery/external/sizzle/dist/sizzle.min.js +3 -0
  651. data/app/assets/bower_components/jquery/external/sizzle/dist/sizzle.min.map +1 -0
  652. data/app/assets/bower_components/jquery/src/ajax.js +855 -0
  653. data/app/assets/bower_components/jquery/src/ajax/jsonp.js +102 -0
  654. data/app/assets/bower_components/jquery/src/ajax/load.js +75 -0
  655. data/app/assets/bower_components/jquery/src/ajax/parseXML.js +30 -0
  656. data/app/assets/bower_components/jquery/src/ajax/script.js +77 -0
  657. data/app/assets/bower_components/jquery/src/ajax/var/location.js +5 -0
  658. data/app/assets/bower_components/jquery/src/ajax/var/nonce.js +7 -0
  659. data/app/assets/bower_components/jquery/src/ajax/var/rquery.js +5 -0
  660. data/app/assets/bower_components/jquery/src/ajax/xhr.js +169 -0
  661. data/app/assets/bower_components/jquery/src/attributes.js +13 -0
  662. data/app/assets/bower_components/jquery/src/attributes/attr.js +137 -0
  663. data/app/assets/bower_components/jquery/src/attributes/classes.js +179 -0
  664. data/app/assets/bower_components/jquery/src/attributes/prop.js +128 -0
  665. data/app/assets/bower_components/jquery/src/attributes/support.js +33 -0
  666. data/app/assets/bower_components/jquery/src/attributes/val.js +184 -0
  667. data/app/assets/bower_components/jquery/src/callbacks.js +234 -0
  668. data/app/assets/bower_components/jquery/src/core.js +481 -0
  669. data/app/assets/bower_components/jquery/src/core/DOMEval.js +16 -0
  670. data/app/assets/bower_components/jquery/src/core/access.js +67 -0
  671. data/app/assets/bower_components/jquery/src/core/init.js +127 -0
  672. data/app/assets/bower_components/jquery/src/core/parseHTML.js +65 -0
  673. data/app/assets/bower_components/jquery/src/core/ready-no-deferred.js +111 -0
  674. data/app/assets/bower_components/jquery/src/core/ready.js +95 -0
  675. data/app/assets/bower_components/jquery/src/core/readyException.js +13 -0
  676. data/app/assets/bower_components/jquery/src/core/support.js +20 -0
  677. data/app/assets/bower_components/jquery/src/core/var/rsingleTag.js +6 -0
  678. data/app/assets/bower_components/jquery/src/css.js +424 -0
  679. data/app/assets/bower_components/jquery/src/css/addGetHookIf.js +26 -0
  680. data/app/assets/bower_components/jquery/src/css/adjustCSS.js +71 -0
  681. data/app/assets/bower_components/jquery/src/css/curCSS.js +59 -0
  682. data/app/assets/bower_components/jquery/src/css/hiddenVisibleSelectors.js +15 -0
  683. data/app/assets/bower_components/jquery/src/css/showHide.js +105 -0
  684. data/app/assets/bower_components/jquery/src/css/support.js +89 -0
  685. data/app/assets/bower_components/jquery/src/css/var/cssExpand.js +5 -0
  686. data/app/assets/bower_components/jquery/src/css/var/getStyles.js +17 -0
  687. data/app/assets/bower_components/jquery/src/css/var/isHiddenWithinTree.js +34 -0
  688. data/app/assets/bower_components/jquery/src/css/var/rmargin.js +5 -0
  689. data/app/assets/bower_components/jquery/src/css/var/rnumnonpx.js +7 -0
  690. data/app/assets/bower_components/jquery/src/css/var/swap.js +26 -0
  691. data/app/assets/bower_components/jquery/src/data.js +161 -0
  692. data/app/assets/bower_components/jquery/src/data/Data.js +161 -0
  693. data/app/assets/bower_components/jquery/src/data/var/acceptData.js +19 -0
  694. data/app/assets/bower_components/jquery/src/data/var/dataPriv.js +7 -0
  695. data/app/assets/bower_components/jquery/src/data/var/dataUser.js +7 -0
  696. data/app/assets/bower_components/jquery/src/deferred.js +389 -0
  697. data/app/assets/bower_components/jquery/src/deferred/exceptionHook.js +21 -0
  698. data/app/assets/bower_components/jquery/src/deprecated.js +30 -0
  699. data/app/assets/bower_components/jquery/src/dimensions.js +56 -0
  700. data/app/assets/bower_components/jquery/src/effects.js +688 -0
  701. data/app/assets/bower_components/jquery/src/effects/Tween.js +123 -0
  702. data/app/assets/bower_components/jquery/src/effects/animatedSelector.js +15 -0
  703. data/app/assets/bower_components/jquery/src/event.js +726 -0
  704. data/app/assets/bower_components/jquery/src/event/ajax.js +22 -0
  705. data/app/assets/bower_components/jquery/src/event/alias.js +29 -0
  706. data/app/assets/bower_components/jquery/src/event/focusin.js +55 -0
  707. data/app/assets/bower_components/jquery/src/event/support.js +11 -0
  708. data/app/assets/bower_components/jquery/src/event/trigger.js +185 -0
  709. data/app/assets/bower_components/jquery/src/exports/amd.js +26 -0
  710. data/app/assets/bower_components/jquery/src/exports/global.js +34 -0
  711. data/app/assets/bower_components/jquery/src/jquery.js +40 -0
  712. data/app/assets/bower_components/jquery/src/manipulation.js +486 -0
  713. data/app/assets/bower_components/jquery/src/manipulation/_evalUrl.js +23 -0
  714. data/app/assets/bower_components/jquery/src/manipulation/buildFragment.js +104 -0
  715. data/app/assets/bower_components/jquery/src/manipulation/getAll.js +23 -0
  716. data/app/assets/bower_components/jquery/src/manipulation/setGlobalEval.js +22 -0
  717. data/app/assets/bower_components/jquery/src/manipulation/support.js +35 -0
  718. data/app/assets/bower_components/jquery/src/manipulation/var/rcheckableType.js +5 -0
  719. data/app/assets/bower_components/jquery/src/manipulation/var/rscriptType.js +5 -0
  720. data/app/assets/bower_components/jquery/src/manipulation/var/rtagName.js +5 -0
  721. data/app/assets/bower_components/jquery/src/manipulation/wrapMap.js +29 -0
  722. data/app/assets/bower_components/jquery/src/offset.js +232 -0
  723. data/app/assets/bower_components/jquery/src/queue.js +145 -0
  724. data/app/assets/bower_components/jquery/src/queue/delay.js +24 -0
  725. data/app/assets/bower_components/jquery/src/selector-native.js +237 -0
  726. data/app/assets/bower_components/jquery/src/selector-sizzle.js +19 -0
  727. data/app/assets/bower_components/jquery/src/selector.js +3 -0
  728. data/app/assets/bower_components/jquery/src/serialize.js +126 -0
  729. data/app/assets/bower_components/jquery/src/traversing.js +178 -0
  730. data/app/assets/bower_components/jquery/src/traversing/findFilter.js +99 -0
  731. data/app/assets/bower_components/jquery/src/traversing/var/dir.js +22 -0
  732. data/app/assets/bower_components/jquery/src/traversing/var/rneedsContext.js +8 -0
  733. data/app/assets/bower_components/jquery/src/traversing/var/siblings.js +17 -0
  734. data/app/assets/bower_components/jquery/src/var/ObjectFunctionString.js +7 -0
  735. data/app/assets/bower_components/jquery/src/var/arr.js +5 -0
  736. data/app/assets/bower_components/jquery/src/var/class2type.js +6 -0
  737. data/app/assets/bower_components/jquery/src/var/concat.js +7 -0
  738. data/app/assets/bower_components/jquery/src/var/document.js +5 -0
  739. data/app/assets/bower_components/jquery/src/var/documentElement.js +7 -0
  740. data/app/assets/bower_components/jquery/src/var/fnToString.js +7 -0
  741. data/app/assets/bower_components/jquery/src/var/getProto.js +5 -0
  742. data/app/assets/bower_components/jquery/src/var/hasOwn.js +7 -0
  743. data/app/assets/bower_components/jquery/src/var/indexOf.js +7 -0
  744. data/app/assets/bower_components/jquery/src/var/pnum.js +5 -0
  745. data/app/assets/bower_components/jquery/src/var/push.js +7 -0
  746. data/app/assets/bower_components/jquery/src/var/rcssNum.js +9 -0
  747. data/app/assets/bower_components/jquery/src/var/rnotwhite.js +5 -0
  748. data/app/assets/bower_components/jquery/src/var/slice.js +7 -0
  749. data/app/assets/bower_components/jquery/src/var/support.js +6 -0
  750. data/app/assets/bower_components/jquery/src/var/toString.js +7 -0
  751. data/app/assets/bower_components/jquery/src/wrap.js +77 -0
  752. data/app/assets/javascripts/admin.js +2 -1
  753. data/app/assets/javascripts/admin/sortable.js +46 -0
  754. data/app/assets/stylesheets/admin/main.scss +1 -0
  755. data/app/controllers/admin/pages_controller.rb +7 -0
  756. data/app/controllers/site_controller.rb +2 -1
  757. data/app/models/page.rb +13 -1
  758. data/app/views/admin/pages/index.html.haml +1 -1
  759. data/config/application.rb +1 -0
  760. data/config/routes.rb +1 -0
  761. data/lib/ostruct.rb +54 -0
  762. data/lib/trusty_cms.rb +1 -1
  763. data/spec/spec_helper.rb +3 -0
  764. metadata +753 -3
  765. data/app/assets/javascripts/admin/jquery-ui.js +0 -3819
@@ -0,0 +1,4 @@
1
+ /*! jQuery v3.1.0 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector,-deprecated | (c) jQuery Foundation | jquery.org/license */
2
+ !function(a,b){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){"use strict";var c=[],d=a.document,e=Object.getPrototypeOf,f=c.slice,g=c.concat,h=c.push,i=c.indexOf,j={},k=j.toString,l=j.hasOwnProperty,m=l.toString,n=m.call(Object),o={};function p(a,b){b=b||d;var c=b.createElement("script");c.text=a,b.head.appendChild(c).parentNode.removeChild(c)}var q="3.1.0 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector,-deprecated",r=function(a,b){return new r.fn.init(a,b)},s=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,t=/^-ms-/,u=/-([a-z])/g,v=function(a,b){return b.toUpperCase()};r.fn=r.prototype={jquery:q,constructor:r,length:0,toArray:function(){return f.call(this)},get:function(a){return null!=a?a<0?this[a+this.length]:this[a]:f.call(this)},pushStack:function(a){var b=r.merge(this.constructor(),a);return b.prevObject=this,b},each:function(a){return r.each(this,a)},map:function(a){return this.pushStack(r.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(f.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(a<0?b:0);return this.pushStack(c>=0&&c<b?[this[c]]:[])},end:function(){return this.prevObject||this.constructor()},push:h,sort:c.sort,splice:c.splice},r.extend=r.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||r.isFunction(g)||(g={}),h===i&&(g=this,h--);h<i;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(r.isPlainObject(d)||(e=r.isArray(d)))?(e?(e=!1,f=c&&r.isArray(c)?c:[]):f=c&&r.isPlainObject(c)?c:{},g[b]=r.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},r.extend({expando:"jQuery"+(q+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===r.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){var b=r.type(a);return("number"===b||"string"===b)&&!isNaN(a-parseFloat(a))},isPlainObject:function(a){var b,c;return!(!a||"[object Object]"!==k.call(a))&&(!(b=e(a))||(c=l.call(b,"constructor")&&b.constructor,"function"==typeof c&&m.call(c)===n))},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?j[k.call(a)]||"object":typeof a},globalEval:function(a){p(a)},camelCase:function(a){return a.replace(t,"ms-").replace(u,v)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b){var c,d=0;if(w(a)){for(c=a.length;d<c;d++)if(b.call(a[d],d,a[d])===!1)break}else for(d in a)if(b.call(a[d],d,a[d])===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(s,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(w(Object(a))?r.merge(c,"string"==typeof a?[a]:a):h.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:i.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;d<c;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;f<g;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,e,f=0,h=[];if(w(a))for(d=a.length;f<d;f++)e=b(a[f],f,c),null!=e&&h.push(e);else for(f in a)e=b(a[f],f,c),null!=e&&h.push(e);return g.apply([],h)},guid:1,proxy:function(a,b){var c,d,e;if("string"==typeof b&&(c=a[b],b=a,a=c),r.isFunction(a))return d=f.call(arguments,2),e=function(){return a.apply(b||this,d.concat(f.call(arguments)))},e.guid=a.guid=a.guid||r.guid++,e},now:Date.now,support:o}),"function"==typeof Symbol&&(r.fn[Symbol.iterator]=c[Symbol.iterator]),r.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(a,b){j["[object "+b+"]"]=b.toLowerCase()});function w(a){var b=!!a&&"length"in a&&a.length,c=r.type(a);return"function"!==c&&!r.isWindow(a)&&("array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a)}var x=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C={}.hasOwnProperty,D=[],E=D.pop,F=D.push,G=D.push,H=D.slice,I=function(a,b){for(var c=0,d=a.length;c<d;c++)if(a[c]===b)return c;return-1},J="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",K="[\\x20\\t\\r\\n\\f]",L="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",M="\\["+K+"*("+L+")(?:"+K+"*([*^$|!~]?=)"+K+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+L+"))|)"+K+"*\\]",N=":("+L+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+M+")*)|.*)\\)|)",O=new RegExp(K+"+","g"),P=new RegExp("^"+K+"+|((?:^|[^\\\\])(?:\\\\.)*)"+K+"+$","g"),Q=new RegExp("^"+K+"*,"+K+"*"),R=new RegExp("^"+K+"*([>+~]|"+K+")"+K+"*"),S=new RegExp("="+K+"*([^\\]'\"]*?)"+K+"*\\]","g"),T=new RegExp(N),U=new RegExp("^"+L+"$"),V={ID:new RegExp("^#("+L+")"),CLASS:new RegExp("^\\.("+L+")"),TAG:new RegExp("^("+L+"|[*])"),ATTR:new RegExp("^"+M),PSEUDO:new RegExp("^"+N),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+K+"*(even|odd|(([+-]|)(\\d*)n|)"+K+"*(?:([+-]|)"+K+"*(\\d+)|))"+K+"*\\)|)","i"),bool:new RegExp("^(?:"+J+")$","i"),needsContext:new RegExp("^"+K+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+K+"*((?:-\\d)?\\d*)"+K+"*\\)|)(?=[^-]|$)","i")},W=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,$=/[+~]/,_=new RegExp("\\\\([\\da-f]{1,6}"+K+"?|("+K+")|.)","ig"),aa=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:d<0?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ba=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,ca=function(a,b){return b?"\0"===a?"\ufffd":a.slice(0,-1)+"\\"+a.charCodeAt(a.length-1).toString(16)+" ":"\\"+a},da=function(){m()},ea=ta(function(a){return a.disabled===!0},{dir:"parentNode",next:"legend"});try{G.apply(D=H.call(v.childNodes),v.childNodes),D[v.childNodes.length].nodeType}catch(fa){G={apply:D.length?function(a,b){F.apply(a,H.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s=b&&b.ownerDocument,w=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==w&&9!==w&&11!==w)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==w&&(l=Z.exec(a)))if(f=l[1]){if(9===w){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(s&&(j=s.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(l[2])return G.apply(d,b.getElementsByTagName(a)),d;if((f=l[3])&&c.getElementsByClassName&&b.getElementsByClassName)return G.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==w)s=b,r=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(ba,ca):b.setAttribute("id",k=u),o=g(a),h=o.length;while(h--)o[h]="#"+k+" "+sa(o[h]);r=o.join(","),s=$.test(a)&&qa(b.parentNode)||b}if(r)try{return G.apply(d,s.querySelectorAll(r)),d}catch(x){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(P,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("fieldset");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&a.sourceIndex-b.sourceIndex;if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return function(b){return"label"in b&&b.disabled===a||"form"in b&&b.disabled===a||"form"in b&&b.disabled===!1&&(b.isDisabled===a||b.isDisabled!==!a&&("label"in b||!ea(b))!==a)}}function pa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function qa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return!!b&&"HTML"!==b.nodeName},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),v!==n&&(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Y.test(n.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}},d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){if("undefined"!=typeof b.getElementsByClassName&&p)return b.getElementsByClassName(a)},r=[],q=[],(c.qsa=Y.test(n.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\r\\' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+K+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+K+"*(?:value|"+J+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){a.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+K+"*[*^$|!~]?="),2!==a.querySelectorAll(":enabled").length&&q.push(":enabled",":disabled"),o.appendChild(a).disabled=!0,2!==a.querySelectorAll(":disabled").length&&q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Y.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"*"),s.call(a,"[s!='']:x"),r.push("!=",N)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Y.test(o.compareDocumentPosition),t=b||Y.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?I(k,a)-I(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?I(k,a)-I(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?la(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(S,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&C.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.escape=function(a){return(a+"").replace(ba,ca)},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(_,aa),a[3]=(a[3]||a[4]||a[5]||"").replace(_,aa),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return V.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&T.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(_,aa).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+K+")"+a+"("+K+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:!b||(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(O," ")+" ").indexOf(c)>-1:"|="===b&&(e===c||e.slice(0,c.length+1)===c+"-"))}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=I(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(P,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(_,aa),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return U.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(_,aa).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:oa(!1),disabled:oa(!0),checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return X.test(a.nodeName)},input:function(a){return W.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:pa(function(){return[0]}),last:pa(function(a,b){return[b-1]}),eq:pa(function(a,b,c){return[c<0?c+b:c]}),even:pa(function(a,b){for(var c=0;c<b;c+=2)a.push(c);return a}),odd:pa(function(a,b){for(var c=1;c<b;c+=2)a.push(c);return a}),lt:pa(function(a,b,c){for(var d=c<0?c+b:c;--d>=0;)a.push(d);return a}),gt:pa(function(a,b,c){for(var d=c<0?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=ma(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=na(b);function ra(){}ra.prototype=d.filters=d.pseudos,d.setFilters=new ra,g=ga.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){c&&!(e=Q.exec(h))||(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=R.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(P," ")}),h=h.slice(c.length));for(g in d.filter)!(e=V[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?ga.error(a):z(a,i).slice(0)};function sa(a){for(var b=0,c=a.length,d="";b<c;b++)d+=a[b].value;return d}function ta(a,b,c){var d=b.dir,e=b.next,f=e||d,g=c&&"parentNode"===f,h=x++;return b.first?function(b,c,e){while(b=b[d])if(1===b.nodeType||g)return a(b,c,e)}:function(b,c,i){var j,k,l,m=[w,h];if(i){while(b=b[d])if((1===b.nodeType||g)&&a(b,c,i))return!0}else while(b=b[d])if(1===b.nodeType||g)if(l=b[u]||(b[u]={}),k=l[b.uniqueID]||(l[b.uniqueID]={}),e&&e===b.nodeName.toLowerCase())b=b[d]||b;else{if((j=k[f])&&j[0]===w&&j[1]===h)return m[2]=j[2];if(k[f]=m,m[2]=a(b,c,i))return!0}}}function ua(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function va(a,b,c){for(var d=0,e=b.length;d<e;d++)ga(a,b[d],c);return c}function wa(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;h<i;h++)(f=a[h])&&(c&&!c(f,d,e)||(g.push(f),j&&b.push(h)));return g}function xa(a,b,c,d,e,f){return d&&!d[u]&&(d=xa(d)),e&&!e[u]&&(e=xa(e,f)),ia(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||va(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:wa(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=wa(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?I(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=wa(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):G.apply(g,r)})}function ya(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ta(function(a){return a===b},h,!0),l=ta(function(a){return I(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];i<f;i++)if(c=d.relative[a[i].type])m=[ta(ua(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;e<f;e++)if(d.relative[a[e].type])break;return xa(i>1&&ua(m),i>1&&sa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(P,"$1"),c,i<e&&ya(a.slice(i,e)),e<f&&ya(a=a.slice(e)),e<f&&sa(a))}m.push(c)}return ua(m)}function za(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=E.call(i));u=wa(u)}G.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&ga.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=ya(b[c]),f[u]?d.push(f):e.push(f);f=A(a,za(e,d)),f.selector=a}return f},i=ga.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(_,aa),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=V.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(_,aa),$.test(j[0].type)&&qa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&sa(j),!a)return G.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,!b||$.test(a)&&qa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("fieldset"))}),ja(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){if(!c)return a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){if(!c&&"input"===a.nodeName.toLowerCase())return a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(J,function(a,b,c){var d;if(!c)return a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);r.find=x,r.expr=x.selectors,r.expr[":"]=r.expr.pseudos,r.uniqueSort=r.unique=x.uniqueSort,r.text=x.getText,r.isXMLDoc=x.isXML,r.contains=x.contains,r.escapeSelector=x.escape;var y=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&r(a).is(c))break;d.push(a)}return d},z=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},A=r.expr.match.needsContext,B=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,C=/^.[^:#\[\.,]*$/;function D(a,b,c){if(r.isFunction(b))return r.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return r.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(C.test(b))return r.filter(b,a,c);b=r.filter(b,a)}return r.grep(a,function(a){return i.call(b,a)>-1!==c&&1===a.nodeType})}r.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?r.find.matchesSelector(d,a)?[d]:[]:r.find.matches(a,r.grep(b,function(a){return 1===a.nodeType}))},r.fn.extend({find:function(a){var b,c,d=this.length,e=this;if("string"!=typeof a)return this.pushStack(r(a).filter(function(){for(b=0;b<d;b++)if(r.contains(e[b],this))return!0}));for(c=this.pushStack([]),b=0;b<d;b++)r.find(a,e[b],c);return d>1?r.uniqueSort(c):c},filter:function(a){return this.pushStack(D(this,a||[],!1))},not:function(a){return this.pushStack(D(this,a||[],!0))},is:function(a){return!!D(this,"string"==typeof a&&A.test(a)?r(a):a||[],!1).length}});var E,F=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,G=r.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||E,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:F.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof r?b[0]:b,r.merge(this,r.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),B.test(e[1])&&r.isPlainObject(b))for(e in b)r.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&(this[0]=f,this.length=1),this}return a.nodeType?(this[0]=a,this.length=1,this):r.isFunction(a)?void 0!==c.ready?c.ready(a):a(r):r.makeArray(a,this)};G.prototype=r.fn,E=r(d);var H=/^(?:parents|prev(?:Until|All))/,I={children:!0,contents:!0,next:!0,prev:!0};r.fn.extend({has:function(a){var b=r(a,this),c=b.length;return this.filter(function(){for(var a=0;a<c;a++)if(r.contains(this,b[a]))return!0})},closest:function(a,b){var c,d=0,e=this.length,f=[],g="string"!=typeof a&&r(a);if(!A.test(a))for(;d<e;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&r.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?r.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?i.call(r(a),this[0]):i.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(r.uniqueSort(r.merge(this.get(),r(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function J(a,b){while((a=a[b])&&1!==a.nodeType);return a}r.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return y(a,"parentNode")},parentsUntil:function(a,b,c){return y(a,"parentNode",c)},next:function(a){return J(a,"nextSibling")},prev:function(a){return J(a,"previousSibling")},nextAll:function(a){return y(a,"nextSibling")},prevAll:function(a){return y(a,"previousSibling")},nextUntil:function(a,b,c){return y(a,"nextSibling",c)},prevUntil:function(a,b,c){return y(a,"previousSibling",c)},siblings:function(a){return z((a.parentNode||{}).firstChild,a)},children:function(a){return z(a.firstChild)},contents:function(a){return a.contentDocument||r.merge([],a.childNodes)}},function(a,b){r.fn[a]=function(c,d){var e=r.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=r.filter(d,e)),this.length>1&&(I[a]||r.uniqueSort(e),H.test(a)&&e.reverse()),this.pushStack(e)}});var K=/\S+/g;function L(a){var b={};return r.each(a.match(K)||[],function(a,c){b[c]=!0}),b}r.Callbacks=function(a){a="string"==typeof a?L(a):r.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h<f.length)f[h].apply(c[0],c[1])===!1&&a.stopOnFalse&&(h=f.length,c=!1)}a.memory||(c=!1),b=!1,e&&(f=c?[]:"")},j={add:function(){return f&&(c&&!b&&(h=f.length-1,g.push(c)),function d(b){r.each(b,function(b,c){r.isFunction(c)?a.unique&&j.has(c)||f.push(c):c&&c.length&&"string"!==r.type(c)&&d(c)})}(arguments),c&&!b&&i()),this},remove:function(){return r.each(arguments,function(a,b){var c;while((c=r.inArray(b,f,c))>-1)f.splice(c,1),c<=h&&h--}),this},has:function(a){return a?r.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||b||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j};function M(a){return a}function N(a){throw a}function O(a,b,c){var d;try{a&&r.isFunction(d=a.promise)?d.call(a).done(b).fail(c):a&&r.isFunction(d=a.then)?d.call(a,b,c):b.call(void 0,a)}catch(a){c.call(void 0,a)}}r.extend({Deferred:function(b){var c=[["notify","progress",r.Callbacks("memory"),r.Callbacks("memory"),2],["resolve","done",r.Callbacks("once memory"),r.Callbacks("once memory"),0,"resolved"],["reject","fail",r.Callbacks("once memory"),r.Callbacks("once memory"),1,"rejected"]],d="pending",e={state:function(){return d},always:function(){return f.done(arguments).fail(arguments),this},"catch":function(a){return e.then(null,a)},pipe:function(){var a=arguments;return r.Deferred(function(b){r.each(c,function(c,d){var e=r.isFunction(a[d[4]])&&a[d[4]];f[d[1]](function(){var a=e&&e.apply(this,arguments);a&&r.isFunction(a.promise)?a.promise().progress(b.notify).done(b.resolve).fail(b.reject):b[d[0]+"With"](this,e?[a]:arguments)})}),a=null}).promise()},then:function(b,d,e){var f=0;function g(b,c,d,e){return function(){var h=this,i=arguments,j=function(){var a,j;if(!(b<f)){if(a=d.apply(h,i),a===c.promise())throw new TypeError("Thenable self-resolution");j=a&&("object"==typeof a||"function"==typeof a)&&a.then,r.isFunction(j)?e?j.call(a,g(f,c,M,e),g(f,c,N,e)):(f++,j.call(a,g(f,c,M,e),g(f,c,N,e),g(f,c,M,c.notifyWith))):(d!==M&&(h=void 0,i=[a]),(e||c.resolveWith)(h,i))}},k=e?j:function(){try{j()}catch(a){r.Deferred.exceptionHook&&r.Deferred.exceptionHook(a,k.stackTrace),b+1>=f&&(d!==N&&(h=void 0,i=[a]),c.rejectWith(h,i))}};b?k():(r.Deferred.getStackHook&&(k.stackTrace=r.Deferred.getStackHook()),a.setTimeout(k))}}return r.Deferred(function(a){c[0][3].add(g(0,a,r.isFunction(e)?e:M,a.notifyWith)),c[1][3].add(g(0,a,r.isFunction(b)?b:M)),c[2][3].add(g(0,a,r.isFunction(d)?d:N))}).promise()},promise:function(a){return null!=a?r.extend(a,e):e}},f={};return r.each(c,function(a,b){var g=b[2],h=b[5];e[b[1]]=g.add,h&&g.add(function(){d=h},c[3-a][2].disable,c[0][2].lock),g.add(b[3].fire),f[b[0]]=function(){return f[b[0]+"With"](this===f?void 0:this,arguments),this},f[b[0]+"With"]=g.fireWith}),e.promise(f),b&&b.call(f,f),f},when:function(a){var b=arguments.length,c=b,d=Array(c),e=f.call(arguments),g=r.Deferred(),h=function(a){return function(c){d[a]=this,e[a]=arguments.length>1?f.call(arguments):c,--b||g.resolveWith(d,e)}};if(b<=1&&(O(a,g.done(h(c)).resolve,g.reject),"pending"===g.state()||r.isFunction(e[c]&&e[c].then)))return g.then();while(c--)O(e[c],h(c),g.reject);return g.promise()}});var P=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;r.Deferred.exceptionHook=function(b,c){a.console&&a.console.warn&&b&&P.test(b.name)&&a.console.warn("jQuery.Deferred exception: "+b.message,b.stack,c)},r.readyException=function(b){a.setTimeout(function(){throw b})};var Q=r.Deferred();r.fn.ready=function(a){return Q.then(a)["catch"](function(a){r.readyException(a)}),this},r.extend({isReady:!1,readyWait:1,holdReady:function(a){a?r.readyWait++:r.ready(!0)},ready:function(a){(a===!0?--r.readyWait:r.isReady)||(r.isReady=!0,a!==!0&&--r.readyWait>0||Q.resolveWith(d,[r]))}}),r.ready.then=Q.then;function R(){d.removeEventListener("DOMContentLoaded",R),a.removeEventListener("load",R),r.ready()}"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(r.ready):(d.addEventListener("DOMContentLoaded",R),
3
+ a.addEventListener("load",R));var S=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===r.type(c)){e=!0;for(h in c)S(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,r.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(r(a),c)})),b))for(;h<i;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},T=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function U(){this.expando=r.expando+U.uid++}U.uid=1,U.prototype={cache:function(a){var b=a[this.expando];return b||(b={},T(a)&&(a.nodeType?a[this.expando]=b:Object.defineProperty(a,this.expando,{value:b,configurable:!0}))),b},set:function(a,b,c){var d,e=this.cache(a);if("string"==typeof b)e[r.camelCase(b)]=c;else for(d in b)e[r.camelCase(d)]=b[d];return e},get:function(a,b){return void 0===b?this.cache(a):a[this.expando]&&a[this.expando][r.camelCase(b)]},access:function(a,b,c){return void 0===b||b&&"string"==typeof b&&void 0===c?this.get(a,b):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d=a[this.expando];if(void 0!==d){if(void 0!==b){r.isArray(b)?b=b.map(r.camelCase):(b=r.camelCase(b),b=b in d?[b]:b.match(K)||[]),c=b.length;while(c--)delete d[b[c]]}(void 0===b||r.isEmptyObject(d))&&(a.nodeType?a[this.expando]=void 0:delete a[this.expando])}},hasData:function(a){var b=a[this.expando];return void 0!==b&&!r.isEmptyObject(b)}};var V=new U,W=new U,X=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Y=/[A-Z]/g;function Z(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(Y,"-$&").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c||"false"!==c&&("null"===c?null:+c+""===c?+c:X.test(c)?JSON.parse(c):c)}catch(e){}W.set(a,b,c)}else c=void 0;return c}r.extend({hasData:function(a){return W.hasData(a)||V.hasData(a)},data:function(a,b,c){return W.access(a,b,c)},removeData:function(a,b){W.remove(a,b)},_data:function(a,b,c){return V.access(a,b,c)},_removeData:function(a,b){V.remove(a,b)}}),r.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=W.get(f),1===f.nodeType&&!V.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=r.camelCase(d.slice(5)),Z(f,d,e[d])));V.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){W.set(this,a)}):S(this,function(b){var c;if(f&&void 0===b){if(c=W.get(f,a),void 0!==c)return c;if(c=Z(f,a),void 0!==c)return c}else this.each(function(){W.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){W.remove(this,a)})}}),r.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=V.get(a,b),c&&(!d||r.isArray(c)?d=V.access(a,b,r.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=r.queue(a,b),d=c.length,e=c.shift(),f=r._queueHooks(a,b),g=function(){r.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return V.get(a,c)||V.access(a,c,{empty:r.Callbacks("once memory").add(function(){V.remove(a,[b+"queue",c])})})}}),r.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?r.queue(this[0],a):void 0===b?this:this.each(function(){var c=r.queue(this,a,b);r._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&r.dequeue(this,a)})},dequeue:function(a){return this.each(function(){r.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=r.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=V.get(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var $=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,_=new RegExp("^(?:([+-])=|)("+$+")([a-z%]*)$","i"),aa=["Top","Right","Bottom","Left"],ba=function(a,b){return a=b||a,"none"===a.style.display||""===a.style.display&&r.contains(a.ownerDocument,a)&&"none"===r.css(a,"display")},ca=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};function da(a,b,c,d){var e,f=1,g=20,h=d?function(){return d.cur()}:function(){return r.css(a,b,"")},i=h(),j=c&&c[3]||(r.cssNumber[b]?"":"px"),k=(r.cssNumber[b]||"px"!==j&&+i)&&_.exec(r.css(a,b));if(k&&k[3]!==j){j=j||k[3],c=c||[],k=+i||1;do f=f||".5",k/=f,r.style(a,b,k+j);while(f!==(f=h()/i)&&1!==f&&--g)}return c&&(k=+k||+i||0,e=c[1]?k+(c[1]+1)*c[2]:+c[2],d&&(d.unit=j,d.start=k,d.end=e)),e}var ea={};function fa(a){var b,c=a.ownerDocument,d=a.nodeName,e=ea[d];return e?e:(b=c.body.appendChild(c.createElement(d)),e=r.css(b,"display"),b.parentNode.removeChild(b),"none"===e&&(e="block"),ea[d]=e,e)}function ga(a,b){for(var c,d,e=[],f=0,g=a.length;f<g;f++)d=a[f],d.style&&(c=d.style.display,b?("none"===c&&(e[f]=V.get(d,"display")||null,e[f]||(d.style.display="")),""===d.style.display&&ba(d)&&(e[f]=fa(d))):"none"!==c&&(e[f]="none",V.set(d,"display",c)));for(f=0;f<g;f++)null!=e[f]&&(a[f].style.display=e[f]);return a}r.fn.extend({show:function(){return ga(this,!0)},hide:function(){return ga(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){ba(this)?r(this).show():r(this).hide()})}});var ha=/^(?:checkbox|radio)$/i,ia=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,ja=/^$|\/(?:java|ecma)script/i,ka={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ka.optgroup=ka.option,ka.tbody=ka.tfoot=ka.colgroup=ka.caption=ka.thead,ka.th=ka.td;function la(a,b){var c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&r.nodeName(a,b)?r.merge([a],c):c}function ma(a,b){for(var c=0,d=a.length;c<d;c++)V.set(a[c],"globalEval",!b||V.get(b[c],"globalEval"))}var na=/<|&#?\w+;/;function oa(a,b,c,d,e){for(var f,g,h,i,j,k,l=b.createDocumentFragment(),m=[],n=0,o=a.length;n<o;n++)if(f=a[n],f||0===f)if("object"===r.type(f))r.merge(m,f.nodeType?[f]:f);else if(na.test(f)){g=g||l.appendChild(b.createElement("div")),h=(ia.exec(f)||["",""])[1].toLowerCase(),i=ka[h]||ka._default,g.innerHTML=i[1]+r.htmlPrefilter(f)+i[2],k=i[0];while(k--)g=g.lastChild;r.merge(m,g.childNodes),g=l.firstChild,g.textContent=""}else m.push(b.createTextNode(f));l.textContent="",n=0;while(f=m[n++])if(d&&r.inArray(f,d)>-1)e&&e.push(f);else if(j=r.contains(f.ownerDocument,f),g=la(l.appendChild(f),"script"),j&&ma(g),c){k=0;while(f=g[k++])ja.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),o.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="<textarea>x</textarea>",o.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var pa=d.documentElement,qa=/^key/,ra=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,sa=/^([^.]*)(?:\.(.+)|)/;function ta(){return!0}function ua(){return!1}function va(){try{return d.activeElement}catch(a){}}function wa(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)wa(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=ua;else if(!e)return a;return 1===f&&(g=e,e=function(a){return r().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=r.guid++)),a.each(function(){r.event.add(this,b,e,d,c)})}r.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=V.get(a);if(q){c.handler&&(f=c,c=f.handler,e=f.selector),e&&r.find.matchesSelector(pa,e),c.guid||(c.guid=r.guid++),(i=q.events)||(i=q.events={}),(g=q.handle)||(g=q.handle=function(b){return"undefined"!=typeof r&&r.event.triggered!==b.type?r.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(K)||[""],j=b.length;while(j--)h=sa.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n&&(l=r.event.special[n]||{},n=(e?l.delegateType:l.bindType)||n,l=r.event.special[n]||{},k=r.extend({type:n,origType:p,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&r.expr.match.needsContext.test(e),namespace:o.join(".")},f),(m=i[n])||(m=i[n]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,o,g)!==!1||a.addEventListener&&a.addEventListener(n,g)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),r.event.global[n]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=V.hasData(a)&&V.get(a);if(q&&(i=q.events)){b=(b||"").match(K)||[""],j=b.length;while(j--)if(h=sa.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n){l=r.event.special[n]||{},n=(d?l.delegateType:l.bindType)||n,m=i[n]||[],h=h[2]&&new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&p!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,o,q.handle)!==!1||r.removeEvent(a,n,q.handle),delete i[n])}else for(n in i)r.event.remove(a,n+b[j],c,d,!0);r.isEmptyObject(i)&&V.remove(a,"handle events")}},dispatch:function(a){var b=r.event.fix(a),c,d,e,f,g,h,i=new Array(arguments.length),j=(V.get(this,"events")||{})[b.type]||[],k=r.event.special[b.type]||{};for(i[0]=b,c=1;c<arguments.length;c++)i[c]=arguments[c];if(b.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,b)!==!1){h=r.event.handlers.call(this,b,j),c=0;while((f=h[c++])&&!b.isPropagationStopped()){b.currentTarget=f.elem,d=0;while((g=f.handlers[d++])&&!b.isImmediatePropagationStopped())b.rnamespace&&!b.rnamespace.test(g.namespace)||(b.handleObj=g,b.data=g.data,e=((r.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==e&&(b.result=e)===!1&&(b.preventDefault(),b.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,b),b.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&("click"!==a.type||isNaN(a.button)||a.button<1))for(;i!==this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(d=[],c=0;c<h;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?r(e,this).index(i)>-1:r.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},addProp:function(a,b){Object.defineProperty(r.Event.prototype,a,{enumerable:!0,configurable:!0,get:r.isFunction(b)?function(){if(this.originalEvent)return b(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[a]},set:function(b){Object.defineProperty(this,a,{enumerable:!0,configurable:!0,writable:!0,value:b})}})},fix:function(a){return a[r.expando]?a:new r.Event(a)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==va()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===va()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&r.nodeName(this,"input"))return this.click(),!1},_default:function(a){return r.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}}},r.removeEvent=function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c)},r.Event=function(a,b){return this instanceof r.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?ta:ua,this.target=a.target&&3===a.target.nodeType?a.target.parentNode:a.target,this.currentTarget=a.currentTarget,this.relatedTarget=a.relatedTarget):this.type=a,b&&r.extend(this,b),this.timeStamp=a&&a.timeStamp||r.now(),void(this[r.expando]=!0)):new r.Event(a,b)},r.Event.prototype={constructor:r.Event,isDefaultPrevented:ua,isPropagationStopped:ua,isImmediatePropagationStopped:ua,isSimulated:!1,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ta,a&&!this.isSimulated&&a.preventDefault()},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=ta,a&&!this.isSimulated&&a.stopPropagation()},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=ta,a&&!this.isSimulated&&a.stopImmediatePropagation(),this.stopPropagation()}},r.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(a){var b=a.button;return null==a.which&&qa.test(a.type)?null!=a.charCode?a.charCode:a.keyCode:!a.which&&void 0!==b&&ra.test(a.type)?1&b?1:2&b?3:4&b?2:0:a.which}},r.event.addProp),r.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){r.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return e&&(e===d||r.contains(d,e))||(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),r.fn.extend({on:function(a,b,c,d){return wa(this,a,b,c,d)},one:function(a,b,c,d){return wa(this,a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,r(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return b!==!1&&"function"!=typeof b||(c=b,b=void 0),c===!1&&(c=ua),this.each(function(){r.event.remove(this,a,c,b)})}});var xa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,ya=/<script|<style|<link/i,za=/checked\s*(?:[^=]|=\s*.checked.)/i,Aa=/^true\/(.*)/,Ba=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Ca(a,b){return r.nodeName(a,"table")&&r.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a:a}function Da(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function Ea(a){var b=Aa.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Fa(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(V.hasData(a)&&(f=V.access(a),g=V.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;c<d;c++)r.event.add(b,e,j[e][c])}W.hasData(a)&&(h=W.access(a),i=r.extend({},h),W.set(b,i))}}function Ga(a,b){var c=b.nodeName.toLowerCase();"input"===c&&ha.test(a.type)?b.checked=a.checked:"input"!==c&&"textarea"!==c||(b.defaultValue=a.defaultValue)}function Ha(a,b,c,d){b=g.apply([],b);var e,f,h,i,j,k,l=0,m=a.length,n=m-1,q=b[0],s=r.isFunction(q);if(s||m>1&&"string"==typeof q&&!o.checkClone&&za.test(q))return a.each(function(e){var f=a.eq(e);s&&(b[0]=q.call(this,e,f.html())),Ha(f,b,c,d)});if(m&&(e=oa(b,a[0].ownerDocument,!1,a,d),f=e.firstChild,1===e.childNodes.length&&(e=f),f||d)){for(h=r.map(la(e,"script"),Da),i=h.length;l<m;l++)j=e,l!==n&&(j=r.clone(j,!0,!0),i&&r.merge(h,la(j,"script"))),c.call(a[l],j,l);if(i)for(k=h[h.length-1].ownerDocument,r.map(h,Ea),l=0;l<i;l++)j=h[l],ja.test(j.type||"")&&!V.access(j,"globalEval")&&r.contains(k,j)&&(j.src?r._evalUrl&&r._evalUrl(j.src):p(j.textContent.replace(Ba,""),k))}return a}function Ia(a,b,c){for(var d,e=b?r.filter(b,a):a,f=0;null!=(d=e[f]);f++)c||1!==d.nodeType||r.cleanData(la(d)),d.parentNode&&(c&&r.contains(d.ownerDocument,d)&&ma(la(d,"script")),d.parentNode.removeChild(d));return a}r.extend({htmlPrefilter:function(a){return a.replace(xa,"<$1></$2>")},clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=r.contains(a.ownerDocument,a);if(!(o.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||r.isXMLDoc(a)))for(g=la(h),f=la(a),d=0,e=f.length;d<e;d++)Ga(f[d],g[d]);if(b)if(c)for(f=f||la(a),g=g||la(h),d=0,e=f.length;d<e;d++)Fa(f[d],g[d]);else Fa(a,h);return g=la(h,"script"),g.length>0&&ma(g,!i&&la(a,"script")),h},cleanData:function(a){for(var b,c,d,e=r.event.special,f=0;void 0!==(c=a[f]);f++)if(T(c)){if(b=c[V.expando]){if(b.events)for(d in b.events)e[d]?r.event.remove(c,d):r.removeEvent(c,d,b.handle);c[V.expando]=void 0}c[W.expando]&&(c[W.expando]=void 0)}}}),r.fn.extend({detach:function(a){return Ia(this,a,!0)},remove:function(a){return Ia(this,a)},text:function(a){return S(this,function(a){return void 0===a?r.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=a)})},null,a,arguments.length)},append:function(){return Ha(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ca(this,a);b.appendChild(a)}})},prepend:function(){return Ha(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ca(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return Ha(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return Ha(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(r.cleanData(la(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null!=a&&a,b=null==b?a:b,this.map(function(){return r.clone(this,a,b)})},html:function(a){return S(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!ya.test(a)&&!ka[(ia.exec(a)||["",""])[1].toLowerCase()]){a=r.htmlPrefilter(a);try{for(;c<d;c++)b=this[c]||{},1===b.nodeType&&(r.cleanData(la(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=[];return Ha(this,arguments,function(b){var c=this.parentNode;r.inArray(this,a)<0&&(r.cleanData(la(this)),c&&c.replaceChild(b,this))},a)}}),r.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){r.fn[a]=function(a){for(var c,d=[],e=r(a),f=e.length-1,g=0;g<=f;g++)c=g===f?this:this.clone(!0),r(e[g])[b](c),h.apply(d,c.get());return this.pushStack(d)}});var Ja=/^margin/,Ka=new RegExp("^("+$+")(?!px)[a-z%]+$","i"),La=function(b){var c=b.ownerDocument.defaultView;return c&&c.opener||(c=a),c.getComputedStyle(b)};!function(){function b(){if(i){i.style.cssText="box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",i.innerHTML="",pa.appendChild(h);var b=a.getComputedStyle(i);c="1%"!==b.top,g="2px"===b.marginLeft,e="4px"===b.width,i.style.marginRight="50%",f="4px"===b.marginRight,pa.removeChild(h),i=null}}var c,e,f,g,h=d.createElement("div"),i=d.createElement("div");i.style&&(i.style.backgroundClip="content-box",i.cloneNode(!0).style.backgroundClip="",o.clearCloneStyle="content-box"===i.style.backgroundClip,h.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",h.appendChild(i),r.extend(o,{pixelPosition:function(){return b(),c},boxSizingReliable:function(){return b(),e},pixelMarginRight:function(){return b(),f},reliableMarginLeft:function(){return b(),g}}))}();function Ma(a,b,c){var d,e,f,g,h=a.style;return c=c||La(a),c&&(g=c.getPropertyValue(b)||c[b],""!==g||r.contains(a.ownerDocument,a)||(g=r.style(a,b)),!o.pixelMarginRight()&&Ka.test(g)&&Ja.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0!==g?g+"":g}function Na(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}var Oa=/^(none|table(?!-c[ea]).+)/,Pa={position:"absolute",visibility:"hidden",display:"block"},Qa={letterSpacing:"0",fontWeight:"400"},Ra=["Webkit","Moz","ms"],Sa=d.createElement("div").style;function Ta(a){if(a in Sa)return a;var b=a[0].toUpperCase()+a.slice(1),c=Ra.length;while(c--)if(a=Ra[c]+b,a in Sa)return a}function Ua(a,b,c){var d=_.exec(b);return d?Math.max(0,d[2]-(c||0))+(d[3]||"px"):b}function Va(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;f<4;f+=2)"margin"===c&&(g+=r.css(a,c+aa[f],!0,e)),d?("content"===c&&(g-=r.css(a,"padding"+aa[f],!0,e)),"margin"!==c&&(g-=r.css(a,"border"+aa[f]+"Width",!0,e))):(g+=r.css(a,"padding"+aa[f],!0,e),"padding"!==c&&(g+=r.css(a,"border"+aa[f]+"Width",!0,e)));return g}function Wa(a,b,c){var d,e=!0,f=La(a),g="border-box"===r.css(a,"boxSizing",!1,f);if(a.getClientRects().length&&(d=a.getBoundingClientRect()[b]),d<=0||null==d){if(d=Ma(a,b,f),(d<0||null==d)&&(d=a.style[b]),Ka.test(d))return d;e=g&&(o.boxSizingReliable()||d===a.style[b]),d=parseFloat(d)||0}return d+Va(a,b,c||(g?"border":"content"),e,f)+"px"}r.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=Ma(a,"opacity");return""===c?"1":c}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=r.camelCase(b),i=a.style;return b=r.cssProps[h]||(r.cssProps[h]=Ta(h)||h),g=r.cssHooks[b]||r.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b]:(f=typeof c,"string"===f&&(e=_.exec(c))&&e[1]&&(c=da(a,b,e),f="number"),null!=c&&c===c&&("number"===f&&(c+=e&&e[3]||(r.cssNumber[h]?"":"px")),o.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=r.camelCase(b);return b=r.cssProps[h]||(r.cssProps[h]=Ta(h)||h),g=r.cssHooks[b]||r.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=Ma(a,b,d)),"normal"===e&&b in Qa&&(e=Qa[b]),""===c||c?(f=parseFloat(e),c===!0||isFinite(f)?f||0:e):e}}),r.each(["height","width"],function(a,b){r.cssHooks[b]={get:function(a,c,d){if(c)return!Oa.test(r.css(a,"display"))||a.getClientRects().length&&a.getBoundingClientRect().width?Wa(a,b,d):ca(a,Pa,function(){return Wa(a,b,d)})},set:function(a,c,d){var e,f=d&&La(a),g=d&&Va(a,b,d,"border-box"===r.css(a,"boxSizing",!1,f),f);return g&&(e=_.exec(c))&&"px"!==(e[3]||"px")&&(a.style[b]=c,c=r.css(a,b)),Ua(a,c,g)}}}),r.cssHooks.marginLeft=Na(o.reliableMarginLeft,function(a,b){if(b)return(parseFloat(Ma(a,"marginLeft"))||a.getBoundingClientRect().left-ca(a,{marginLeft:0},function(){return a.getBoundingClientRect().left}))+"px"}),r.each({margin:"",padding:"",border:"Width"},function(a,b){r.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];d<4;d++)e[a+aa[d]+b]=f[d]||f[d-2]||f[0];return e}},Ja.test(a)||(r.cssHooks[a+b].set=Ua)}),r.fn.extend({css:function(a,b){return S(this,function(a,b,c){var d,e,f={},g=0;if(r.isArray(b)){for(d=La(a),e=b.length;g<e;g++)f[b[g]]=r.css(a,b[g],!1,d);return f}return void 0!==c?r.style(a,b,c):r.css(a,b)},a,b,arguments.length>1)}}),r.fn.delay=function(b,c){return b=r.fx?r.fx.speeds[b]||b:b,c=c||"fx",this.queue(c,function(c,d){var e=a.setTimeout(c,b);d.stop=function(){a.clearTimeout(e)}})},function(){var a=d.createElement("input"),b=d.createElement("select"),c=b.appendChild(d.createElement("option"));a.type="checkbox",o.checkOn=""!==a.value,o.optSelected=c.selected,a=d.createElement("input"),a.value="t",a.type="radio",o.radioValue="t"===a.value}();var Xa,Ya=r.expr.attrHandle;r.fn.extend({attr:function(a,b){return S(this,r.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){r.removeAttr(this,a)})}}),r.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return"undefined"==typeof a.getAttribute?r.prop(a,b,c):(1===f&&r.isXMLDoc(a)||(e=r.attrHooks[b.toLowerCase()]||(r.expr.match.bool.test(b)?Xa:void 0)),void 0!==c?null===c?void r.removeAttr(a,b):e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:(a.setAttribute(b,c+""),c):e&&"get"in e&&null!==(d=e.get(a,b))?d:(d=r.find.attr(a,b),null==d?void 0:d))},attrHooks:{type:{set:function(a,b){if(!o.radioValue&&"radio"===b&&r.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}},removeAttr:function(a,b){var c,d=0,e=b&&b.match(K);if(e&&1===a.nodeType)while(c=e[d++])a.removeAttribute(c)}}),Xa={set:function(a,b,c){return b===!1?r.removeAttr(a,c):a.setAttribute(c,c),c}},r.each(r.expr.match.bool.source.match(/\w+/g),function(a,b){var c=Ya[b]||r.find.attr;Ya[b]=function(a,b,d){var e,f,g=b.toLowerCase();return d||(f=Ya[g],Ya[g]=e,e=null!=c(a,b,d)?g:null,Ya[g]=f),e}});var Za=/^(?:input|select|textarea|button)$/i,$a=/^(?:a|area)$/i;r.fn.extend({prop:function(a,b){return S(this,r.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[r.propFix[a]||a]})}}),r.extend({prop:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return 1===f&&r.isXMLDoc(a)||(b=r.propFix[b]||b,e=r.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=r.find.attr(a,"tabindex");return b?parseInt(b,10):Za.test(a.nodeName)||$a.test(a.nodeName)&&a.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),o.optSelected||(r.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null},set:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}}),r.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){r.propFix[this.toLowerCase()]=this});var _a=/[\t\r\n\f]/g;function ab(a){return a.getAttribute&&a.getAttribute("class")||""}r.fn.extend({addClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).addClass(a.call(this,b,ab(this)))});if("string"==typeof a&&a){b=a.match(K)||[];while(c=this[i++])if(e=ab(c),d=1===c.nodeType&&(" "+e+" ").replace(_a," ")){g=0;while(f=b[g++])d.indexOf(" "+f+" ")<0&&(d+=f+" ");h=r.trim(d),e!==h&&c.setAttribute("class",h)}}return this},removeClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).removeClass(a.call(this,b,ab(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof a&&a){b=a.match(K)||[];while(c=this[i++])if(e=ab(c),d=1===c.nodeType&&(" "+e+" ").replace(_a," ")){g=0;while(f=b[g++])while(d.indexOf(" "+f+" ")>-1)d=d.replace(" "+f+" "," ");h=r.trim(d),e!==h&&c.setAttribute("class",h)}}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):r.isFunction(a)?this.each(function(c){r(this).toggleClass(a.call(this,c,ab(this),b),b)}):this.each(function(){var b,d,e,f;if("string"===c){d=0,e=r(this),f=a.match(K)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else void 0!==a&&"boolean"!==c||(b=ab(this),b&&V.set(this,"__className__",b),this.setAttribute&&this.setAttribute("class",b||a===!1?"":V.get(this,"__className__")||""))})},hasClass:function(a){var b,c,d=0;b=" "+a+" ";while(c=this[d++])if(1===c.nodeType&&(" "+ab(c)+" ").replace(_a," ").indexOf(b)>-1)return!0;return!1}});var bb=/\r/g,cb=/[\x20\t\r\n\f]+/g;r.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=r.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,r(this).val()):a,null==e?e="":"number"==typeof e?e+="":r.isArray(e)&&(e=r.map(e,function(a){return null==a?"":a+""})),b=r.valHooks[this.type]||r.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=r.valHooks[e.type]||r.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(bb,""):null==c?"":c)}}}),r.extend({valHooks:{option:{get:function(a){var b=r.find.attr(a,"value");return null!=b?b:r.trim(r.text(a)).replace(cb," ")}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type,g=f?null:[],h=f?e+1:d.length,i=e<0?h:f?e:0;i<h;i++)if(c=d[i],(c.selected||i===e)&&!c.disabled&&(!c.parentNode.disabled||!r.nodeName(c.parentNode,"optgroup"))){if(b=r(c).val(),f)return b;g.push(b)}return g},set:function(a,b){var c,d,e=a.options,f=r.makeArray(b),g=e.length;while(g--)d=e[g],(d.selected=r.inArray(r.valHooks.option.get(d),f)>-1)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),r.each(["radio","checkbox"],function(){r.valHooks[this]={set:function(a,b){if(r.isArray(b))return a.checked=r.inArray(r(a).val(),b)>-1}},o.checkOn||(r.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var db=/^(?:focusinfocus|focusoutblur)$/;r.extend(r.event,{trigger:function(b,c,e,f){var g,h,i,j,k,m,n,o=[e||d],p=l.call(b,"type")?b.type:b,q=l.call(b,"namespace")?b.namespace.split("."):[];if(h=i=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!db.test(p+r.event.triggered)&&(p.indexOf(".")>-1&&(q=p.split("."),p=q.shift(),q.sort()),k=p.indexOf(":")<0&&"on"+p,b=b[r.expando]?b:new r.Event(p,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=q.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:r.makeArray(c,[b]),n=r.event.special[p]||{},f||!n.trigger||n.trigger.apply(e,c)!==!1)){if(!f&&!n.noBubble&&!r.isWindow(e)){for(j=n.delegateType||p,db.test(j+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),i=h;i===(e.ownerDocument||d)&&o.push(i.defaultView||i.parentWindow||a)}g=0;while((h=o[g++])&&!b.isPropagationStopped())b.type=g>1?j:n.bindType||p,m=(V.get(h,"events")||{})[b.type]&&V.get(h,"handle"),m&&m.apply(h,c),m=k&&h[k],m&&m.apply&&T(h)&&(b.result=m.apply(h,c),b.result===!1&&b.preventDefault());return b.type=p,f||b.isDefaultPrevented()||n._default&&n._default.apply(o.pop(),c)!==!1||!T(e)||k&&r.isFunction(e[p])&&!r.isWindow(e)&&(i=e[k],i&&(e[k]=null),r.event.triggered=p,e[p](),r.event.triggered=void 0,i&&(e[k]=i)),b.result}},simulate:function(a,b,c){var d=r.extend(new r.Event,c,{type:a,isSimulated:!0});r.event.trigger(d,null,b)}}),r.fn.extend({trigger:function(a,b){return this.each(function(){r.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];if(c)return r.event.trigger(a,b,c,!0)}}),r.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(a,b){r.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),r.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),o.focusin="onfocusin"in a,o.focusin||r.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){r.event.simulate(b,a.target,r.event.fix(a))};r.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=V.access(d,b);e||d.addEventListener(a,c,!0),V.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=V.access(d,b)-1;e?V.access(d,b,e):(d.removeEventListener(a,c,!0),V.remove(d,b))}}});var eb=/\[\]$/,fb=/\r?\n/g,gb=/^(?:submit|button|image|reset|file)$/i,hb=/^(?:input|select|textarea|keygen)/i;function ib(a,b,c,d){var e;if(r.isArray(b))r.each(b,function(b,e){c||eb.test(a)?d(a,e):ib(a+"["+("object"==typeof e&&null!=e?b:"")+"]",e,c,d)});else if(c||"object"!==r.type(b))d(a,b);else for(e in b)ib(a+"["+e+"]",b[e],c,d)}r.param=function(a,b){var c,d=[],e=function(a,b){var c=r.isFunction(b)?b():b;d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(null==c?"":c)};if(r.isArray(a)||a.jquery&&!r.isPlainObject(a))r.each(a,function(){e(this.name,this.value)});else for(c in a)ib(c,a[c],b,e);
4
+ return d.join("&")},r.fn.extend({serialize:function(){return r.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=r.prop(this,"elements");return a?r.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!r(this).is(":disabled")&&hb.test(this.nodeName)&&!gb.test(a)&&(this.checked||!ha.test(a))}).map(function(a,b){var c=r(this).val();return null==c?null:r.isArray(c)?r.map(c,function(a){return{name:b.name,value:a.replace(fb,"\r\n")}}):{name:b.name,value:c.replace(fb,"\r\n")}}).get()}}),r.fn.extend({wrapAll:function(a){var b;return this[0]&&(r.isFunction(a)&&(a=a.call(this[0])),b=r(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this},wrapInner:function(a){return r.isFunction(a)?this.each(function(b){r(this).wrapInner(a.call(this,b))}):this.each(function(){var b=r(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=r.isFunction(a);return this.each(function(c){r(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(a){return this.parent(a).not("body").each(function(){r(this).replaceWith(this.childNodes)}),this}}),r.expr.pseudos.hidden=function(a){return!r.expr.pseudos.visible(a)},r.expr.pseudos.visible=function(a){return!!(a.offsetWidth||a.offsetHeight||a.getClientRects().length)},o.createHTMLDocument=function(){var a=d.implementation.createHTMLDocument("").body;return a.innerHTML="<form></form><form></form>",2===a.childNodes.length}(),r.parseHTML=function(a,b,c){if("string"!=typeof a)return[];"boolean"==typeof b&&(c=b,b=!1);var e,f,g;return b||(o.createHTMLDocument?(b=d.implementation.createHTMLDocument(""),e=b.createElement("base"),e.href=d.location.href,b.head.appendChild(e)):b=d),f=B.exec(a),g=!c&&[],f?[b.createElement(f[1])]:(f=oa([a],b,g),g&&g.length&&r(g).remove(),r.merge([],f.childNodes))};function jb(a){return r.isWindow(a)?a:9===a.nodeType&&a.defaultView}r.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=r.css(a,"position"),l=r(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=r.css(a,"top"),i=r.css(a,"left"),j=("absolute"===k||"fixed"===k)&&(f+i).indexOf("auto")>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),r.isFunction(b)&&(b=b.call(a,c,r.extend({},h))),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},r.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){r.offset.setOffset(this,a,b)});var b,c,d,e,f=this[0];if(f)return f.getClientRects().length?(d=f.getBoundingClientRect(),d.width||d.height?(e=f.ownerDocument,c=jb(e),b=e.documentElement,{top:d.top+c.pageYOffset-b.clientTop,left:d.left+c.pageXOffset-b.clientLeft}):d):{top:0,left:0}},position:function(){if(this[0]){var a,b,c=this[0],d={top:0,left:0};return"fixed"===r.css(c,"position")?b=c.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),r.nodeName(a[0],"html")||(d=a.offset()),d={top:d.top+r.css(a[0],"borderTopWidth",!0),left:d.left+r.css(a[0],"borderLeftWidth",!0)}),{top:b.top-d.top-r.css(c,"marginTop",!0),left:b.left-d.left-r.css(c,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent;while(a&&"static"===r.css(a,"position"))a=a.offsetParent;return a||pa})}}),r.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c="pageYOffset"===b;r.fn[a]=function(d){return S(this,function(a,d,e){var f=jb(a);return void 0===e?f?f[b]:a[d]:void(f?f.scrollTo(c?f.pageXOffset:e,c?e:f.pageYOffset):a[d]=e)},a,d,arguments.length)}}),r.each(["top","left"],function(a,b){r.cssHooks[b]=Na(o.pixelPosition,function(a,c){if(c)return c=Ma(a,b),Ka.test(c)?r(a).position()[b]+"px":c})}),r.each({Height:"height",Width:"width"},function(a,b){r.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){r.fn[d]=function(e,f){var g=arguments.length&&(c||"boolean"!=typeof e),h=c||(e===!0||f===!0?"margin":"border");return S(this,function(b,c,e){var f;return r.isWindow(b)?0===d.indexOf("outer")?b["inner"+a]:b.document.documentElement["client"+a]:9===b.nodeType?(f=b.documentElement,Math.max(b.body["scroll"+a],f["scroll"+a],b.body["offset"+a],f["offset"+a],f["client"+a])):void 0===e?r.css(b,c,h):r.style(b,c,e,h)},b,g?e:void 0,g)}})}),"function"==typeof define&&define.amd&&define("jquery",[],function(){return r});var kb=a.jQuery,lb=a.$;return r.noConflict=function(b){return a.$===r&&(a.$=lb),b&&a.jQuery===r&&(a.jQuery=kb),r},b||(a.jQuery=a.$=r),r});
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["jquery.slim.js"],"names":["global","factory","module","exports","document","w","Error","window","this","noGlobal","arr","getProto","Object","getPrototypeOf","slice","concat","push","indexOf","class2type","toString","hasOwn","hasOwnProperty","fnToString","ObjectFunctionString","call","support","DOMEval","code","doc","script","createElement","text","head","appendChild","parentNode","removeChild","version","jQuery","selector","context","fn","init","rtrim","rmsPrefix","rdashAlpha","fcamelCase","all","letter","toUpperCase","prototype","jquery","constructor","length","toArray","get","num","pushStack","elems","ret","merge","prevObject","each","callback","map","elem","i","apply","arguments","first","eq","last","len","j","end","sort","splice","extend","options","name","src","copy","copyIsArray","clone","target","deep","isFunction","isPlainObject","isArray","undefined","expando","Math","random","replace","isReady","error","msg","noop","obj","type","Array","isWindow","isNumeric","isNaN","parseFloat","proto","Ctor","isEmptyObject","globalEval","camelCase","string","nodeName","toLowerCase","isArrayLike","trim","makeArray","results","inArray","second","grep","invert","callbackInverse","matches","callbackExpect","arg","value","guid","proxy","tmp","args","now","Date","Symbol","iterator","split","Sizzle","Expr","getText","isXML","tokenize","compile","select","outermostContext","sortInput","hasDuplicate","setDocument","docElem","documentIsHTML","rbuggyQSA","rbuggyMatches","contains","preferredDoc","dirruns","done","classCache","createCache","tokenCache","compilerCache","sortOrder","a","b","pop","push_native","list","booleans","whitespace","identifier","attributes","pseudos","rwhitespace","RegExp","rcomma","rcombinators","rattributeQuotes","rpseudo","ridentifier","matchExpr","ID","CLASS","TAG","ATTR","PSEUDO","CHILD","bool","needsContext","rinputs","rheader","rnative","rquickExpr","rsibling","runescape","funescape","_","escaped","escapedWhitespace","high","String","fromCharCode","rcssescape","fcssescape","ch","asCodePoint","charCodeAt","unloadHandler","disabledAncestor","addCombinator","disabled","dir","next","childNodes","nodeType","e","els","seed","m","nid","match","groups","newSelector","newContext","ownerDocument","exec","getElementById","id","getElementsByTagName","getElementsByClassName","qsa","test","getAttribute","setAttribute","toSelector","join","testContext","querySelectorAll","qsaError","removeAttribute","keys","cache","key","cacheLength","shift","markFunction","assert","el","addHandle","attrs","handler","attrHandle","siblingCheck","cur","diff","sourceIndex","nextSibling","createInputPseudo","createButtonPseudo","createDisabledPseudo","isDisabled","createPositionalPseudo","argument","matchIndexes","documentElement","node","hasCompare","subWindow","defaultView","top","addEventListener","attachEvent","className","createComment","getById","getElementsByName","find","filter","attrId","getAttributeNode","tag","innerHTML","input","matchesSelector","webkitMatchesSelector","mozMatchesSelector","oMatchesSelector","msMatchesSelector","disconnectedMatch","compareDocumentPosition","adown","bup","compare","sortDetached","aup","ap","bp","unshift","expr","elements","attr","val","specified","escape","sel","uniqueSort","duplicates","detectDuplicates","sortStable","textContent","firstChild","nodeValue","selectors","createPseudo","relative",">"," ","+","~","preFilter","excess","unquoted","nodeNameSelector","pattern","operator","check","result","what","simple","forward","ofType","xml","uniqueCache","outerCache","nodeIndex","start","parent","useCache","lastChild","uniqueID","pseudo","setFilters","idx","matched","not","matcher","unmatched","has","innerText","lang","elemLang","hash","location","root","focus","activeElement","hasFocus","href","tabIndex","enabled","checked","selected","selectedIndex","empty","header","button","even","odd","lt","gt","radio","checkbox","file","password","image","submit","reset","filters","parseOnly","tokens","soFar","preFilters","cached","combinator","base","skip","checkNonElements","doneName","oldCache","newCache","elementMatcher","matchers","multipleContexts","contexts","condense","newUnmatched","mapped","setMatcher","postFilter","postFinder","postSelector","temp","preMap","postMap","preexisting","matcherIn","matcherOut","matcherFromTokens","checkContext","leadingRelative","implicitRelative","matchContext","matchAnyContext","matcherFromGroupMatchers","elementMatchers","setMatchers","bySet","byElement","superMatcher","outermost","matchedCount","setMatched","contextBackup","dirrunsUnique","token","compiled","defaultValue","unique","isXMLDoc","escapeSelector","until","truncate","is","siblings","n","rneedsContext","rsingleTag","risSimple","winnow","qualifier","self","rootjQuery","parseHTML","ready","rparentsprev","guaranteedUnique","children","contents","prev","targets","l","closest","index","prevAll","add","addBack","sibling","parents","parentsUntil","nextAll","nextUntil","prevUntil","contentDocument","reverse","rnotwhite","createOptions","object","flag","Callbacks","firing","memory","fired","locked","queue","firingIndex","fire","once","stopOnFalse","remove","disable","lock","fireWith","Identity","v","Thrower","ex","adoptValue","resolve","reject","method","promise","fail","then","Deferred","func","tuples","state","always","deferred","catch","pipe","fns","newDefer","tuple","returned","progress","notify","onFulfilled","onRejected","onProgress","maxDepth","depth","special","that","mightThrow","TypeError","notifyWith","resolveWith","process","exceptionHook","stackTrace","rejectWith","getStackHook","setTimeout","stateString","when","singleValue","remaining","resolveContexts","resolveValues","master","updateFunc","rerrorNames","stack","console","warn","message","readyException","readyList","readyWait","holdReady","hold","wait","completed","removeEventListener","readyState","doScroll","access","chainable","emptyGet","raw","bulk","acceptData","owner","Data","uid","defineProperty","configurable","set","data","prop","hasData","dataPriv","dataUser","rbrace","rmultiDash","dataAttr","JSON","parse","removeData","_data","_removeData","dequeue","startLength","hooks","_queueHooks","stop","setter","clearQueue","count","defer","pnum","source","rcssNum","cssExpand","isHiddenWithinTree","style","display","css","swap","old","adjustCSS","valueParts","tween","adjusted","scale","maxIterations","currentValue","initial","unit","cssNumber","initialInUnit","defaultDisplayMap","getDefaultDisplay","body","showHide","show","values","hide","toggle","rcheckableType","rtagName","rscriptType","wrapMap","option","thead","col","tr","td","_default","optgroup","tbody","tfoot","colgroup","caption","th","getAll","setGlobalEval","refElements","rhtml","buildFragment","scripts","selection","ignored","wrap","fragment","createDocumentFragment","nodes","htmlPrefilter","createTextNode","div","checkClone","cloneNode","noCloneChecked","rkeyEvent","rmouseEvent","rtypenamespace","returnTrue","returnFalse","safeActiveElement","err","on","types","one","origFn","event","off","handleObjIn","eventHandle","events","t","handleObj","handlers","namespaces","origType","elemData","handle","triggered","dispatch","delegateType","bindType","namespace","delegateCount","setup","mappedTypes","origCount","teardown","removeEvent","nativeEvent","fix","handlerQueue","delegateTarget","preDispatch","isPropagationStopped","currentTarget","isImmediatePropagationStopped","rnamespace","preventDefault","stopPropagation","postDispatch","addProp","hook","Event","enumerable","originalEvent","writable","load","noBubble","trigger","blur","click","beforeunload","returnValue","props","isDefaultPrevented","defaultPrevented","relatedTarget","timeStamp","isSimulated","stopImmediatePropagation","altKey","bubbles","cancelable","changedTouches","ctrlKey","detail","eventPhase","metaKey","pageX","pageY","shiftKey","view","char","charCode","keyCode","buttons","clientX","clientY","offsetX","offsetY","pointerId","pointerType","screenX","screenY","targetTouches","toElement","touches","which","mouseenter","mouseleave","pointerenter","pointerleave","orig","related","rxhtmlTag","rnoInnerhtml","rchecked","rscriptTypeMasked","rcleanScript","manipulationTarget","content","disableScript","restoreScript","cloneCopyEvent","dest","pdataOld","pdataCur","udataOld","udataCur","fixInput","domManip","collection","hasScripts","iNoClone","html","_evalUrl","keepData","cleanData","dataAndEvents","deepDataAndEvents","srcElements","destElements","inPage","detach","append","prepend","insertBefore","before","after","replaceWith","replaceChild","appendTo","prependTo","insertAfter","replaceAll","original","insert","rmargin","rnumnonpx","getStyles","opener","getComputedStyle","computeStyleTests","cssText","container","divStyle","pixelPositionVal","reliableMarginLeftVal","marginLeft","boxSizingReliableVal","width","marginRight","pixelMarginRightVal","backgroundClip","clearCloneStyle","pixelPosition","boxSizingReliable","pixelMarginRight","reliableMarginLeft","curCSS","computed","minWidth","maxWidth","getPropertyValue","addGetHookIf","conditionFn","hookFn","rdisplayswap","cssShow","position","visibility","cssNormalTransform","letterSpacing","fontWeight","cssPrefixes","emptyStyle","vendorPropName","capName","setPositiveNumber","subtract","max","augmentWidthOrHeight","extra","isBorderBox","styles","getWidthOrHeight","valueIsBorderBox","getClientRects","getBoundingClientRect","cssHooks","opacity","animationIterationCount","columnCount","fillOpacity","flexGrow","flexShrink","lineHeight","order","orphans","widows","zIndex","zoom","cssProps","float","origName","isFinite","left","margin","padding","border","prefix","suffix","expand","expanded","parts","delay","time","fx","speeds","timeout","clearTimeout","opt","checkOn","optSelected","radioValue","boolHook","removeAttr","nType","attrHooks","attrNames","getter","lowercaseName","rfocusable","rclickable","removeProp","propFix","propHooks","tabindex","parseInt","for","class","rclass","getClass","addClass","classes","curValue","clazz","finalValue","removeClass","toggleClass","stateVal","classNames","hasClass","rreturn","rspaces","valHooks","optionSet","rfocusMorph","onlyHandlers","bubbleType","ontype","eventPath","isTrigger","parentWindow","simulate","triggerHandler","hover","fnOver","fnOut","focusin","attaches","rbracket","rCRLF","rsubmitterTypes","rsubmittable","buildParams","traditional","param","s","valueOrFunction","encodeURIComponent","serialize","serializeArray","wrapAll","firstElementChild","wrapInner","unwrap","hidden","visible","offsetWidth","offsetHeight","createHTMLDocument","implementation","keepScripts","parsed","getWindow","offset","setOffset","curPosition","curLeft","curCSSTop","curTop","curOffset","curCSSLeft","calculatePosition","curElem","using","win","rect","height","pageYOffset","clientTop","pageXOffset","clientLeft","offsetParent","parentOffset","scrollLeft","scrollTop","scrollTo","Height","Width","","defaultExtra","funcName","define","amd","_jQuery","_$","$","noConflict"],"mappings":"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","file":"jquery.slim.min.js"}
@@ -0,0 +1,36 @@
1
+ Copyright jQuery Foundation and other contributors, https://jquery.org/
2
+
3
+ This software consists of voluntary contributions made by many
4
+ individuals. For exact contribution history, see the revision history
5
+ available at https://github.com/jquery/sizzle
6
+
7
+ The following license applies to all parts of this software except as
8
+ documented below:
9
+
10
+ ====
11
+
12
+ Permission is hereby granted, free of charge, to any person obtaining
13
+ a copy of this software and associated documentation files (the
14
+ "Software"), to deal in the Software without restriction, including
15
+ without limitation the rights to use, copy, modify, merge, publish,
16
+ distribute, sublicense, and/or sell copies of the Software, and to
17
+ permit persons to whom the Software is furnished to do so, subject to
18
+ the following conditions:
19
+
20
+ The above copyright notice and this permission notice shall be
21
+ included in all copies or substantial portions of the Software.
22
+
23
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
27
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
28
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
29
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30
+
31
+ ====
32
+
33
+ All files located in the node_modules and external directories are
34
+ externally maintained libraries used by this software which have their
35
+ own licenses; we recommend you read them, as their terms may differ from
36
+ the terms above.
@@ -0,0 +1,2217 @@
1
+ /*!
2
+ * Sizzle CSS Selector Engine v2.3.0
3
+ * https://sizzlejs.com/
4
+ *
5
+ * Copyright jQuery Foundation and other contributors
6
+ * Released under the MIT license
7
+ * http://jquery.org/license
8
+ *
9
+ * Date: 2016-01-04
10
+ */
11
+ (function( window ) {
12
+
13
+ var i,
14
+ support,
15
+ Expr,
16
+ getText,
17
+ isXML,
18
+ tokenize,
19
+ compile,
20
+ select,
21
+ outermostContext,
22
+ sortInput,
23
+ hasDuplicate,
24
+
25
+ // Local document vars
26
+ setDocument,
27
+ document,
28
+ docElem,
29
+ documentIsHTML,
30
+ rbuggyQSA,
31
+ rbuggyMatches,
32
+ matches,
33
+ contains,
34
+
35
+ // Instance-specific data
36
+ expando = "sizzle" + 1 * new Date(),
37
+ preferredDoc = window.document,
38
+ dirruns = 0,
39
+ done = 0,
40
+ classCache = createCache(),
41
+ tokenCache = createCache(),
42
+ compilerCache = createCache(),
43
+ sortOrder = function( a, b ) {
44
+ if ( a === b ) {
45
+ hasDuplicate = true;
46
+ }
47
+ return 0;
48
+ },
49
+
50
+ // Instance methods
51
+ hasOwn = ({}).hasOwnProperty,
52
+ arr = [],
53
+ pop = arr.pop,
54
+ push_native = arr.push,
55
+ push = arr.push,
56
+ slice = arr.slice,
57
+ // Use a stripped-down indexOf as it's faster than native
58
+ // https://jsperf.com/thor-indexof-vs-for/5
59
+ indexOf = function( list, elem ) {
60
+ var i = 0,
61
+ len = list.length;
62
+ for ( ; i < len; i++ ) {
63
+ if ( list[i] === elem ) {
64
+ return i;
65
+ }
66
+ }
67
+ return -1;
68
+ },
69
+
70
+ booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
71
+
72
+ // Regular expressions
73
+
74
+ // http://www.w3.org/TR/css3-selectors/#whitespace
75
+ whitespace = "[\\x20\\t\\r\\n\\f]",
76
+
77
+ // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
78
+ identifier = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
79
+
80
+ // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors
81
+ attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace +
82
+ // Operator (capture 2)
83
+ "*([*^$|!~]?=)" + whitespace +
84
+ // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]"
85
+ "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace +
86
+ "*\\]",
87
+
88
+ pseudos = ":(" + identifier + ")(?:\\((" +
89
+ // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:
90
+ // 1. quoted (capture 3; capture 4 or capture 5)
91
+ "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" +
92
+ // 2. simple (capture 6)
93
+ "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" +
94
+ // 3. anything else (capture 2)
95
+ ".*" +
96
+ ")\\)|)",
97
+
98
+ // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
99
+ rwhitespace = new RegExp( whitespace + "+", "g" ),
100
+ rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
101
+
102
+ rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
103
+ rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ),
104
+
105
+ rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ),
106
+
107
+ rpseudo = new RegExp( pseudos ),
108
+ ridentifier = new RegExp( "^" + identifier + "$" ),
109
+
110
+ matchExpr = {
111
+ "ID": new RegExp( "^#(" + identifier + ")" ),
112
+ "CLASS": new RegExp( "^\\.(" + identifier + ")" ),
113
+ "TAG": new RegExp( "^(" + identifier + "|[*])" ),
114
+ "ATTR": new RegExp( "^" + attributes ),
115
+ "PSEUDO": new RegExp( "^" + pseudos ),
116
+ "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace +
117
+ "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace +
118
+ "*(\\d+)|))" + whitespace + "*\\)|)", "i" ),
119
+ "bool": new RegExp( "^(?:" + booleans + ")$", "i" ),
120
+ // For use in libraries implementing .is()
121
+ // We use this for POS matching in `select`
122
+ "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" +
123
+ whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" )
124
+ },
125
+
126
+ rinputs = /^(?:input|select|textarea|button)$/i,
127
+ rheader = /^h\d$/i,
128
+
129
+ rnative = /^[^{]+\{\s*\[native \w/,
130
+
131
+ // Easily-parseable/retrievable ID or TAG or CLASS selectors
132
+ rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
133
+
134
+ rsibling = /[+~]/,
135
+
136
+ // CSS escapes
137
+ // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters
138
+ runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ),
139
+ funescape = function( _, escaped, escapedWhitespace ) {
140
+ var high = "0x" + escaped - 0x10000;
141
+ // NaN means non-codepoint
142
+ // Support: Firefox<24
143
+ // Workaround erroneous numeric interpretation of +"0x"
144
+ return high !== high || escapedWhitespace ?
145
+ escaped :
146
+ high < 0 ?
147
+ // BMP codepoint
148
+ String.fromCharCode( high + 0x10000 ) :
149
+ // Supplemental Plane codepoint (surrogate pair)
150
+ String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
151
+ },
152
+
153
+ // CSS string/identifier serialization
154
+ // https://drafts.csswg.org/cssom/#common-serializing-idioms
155
+ rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,
156
+ fcssescape = function( ch, asCodePoint ) {
157
+ if ( asCodePoint ) {
158
+
159
+ // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER
160
+ if ( ch === "\0" ) {
161
+ return "\uFFFD";
162
+ }
163
+
164
+ // Control characters and (dependent upon position) numbers get escaped as code points
165
+ return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " ";
166
+ }
167
+
168
+ // Other potentially-special ASCII characters get backslash-escaped
169
+ return "\\" + ch;
170
+ },
171
+
172
+ // Used for iframes
173
+ // See setDocument()
174
+ // Removing the function wrapper causes a "Permission Denied"
175
+ // error in IE
176
+ unloadHandler = function() {
177
+ setDocument();
178
+ },
179
+
180
+ disabledAncestor = addCombinator(
181
+ function( elem ) {
182
+ return elem.disabled === true;
183
+ },
184
+ { dir: "parentNode", next: "legend" }
185
+ );
186
+
187
+ // Optimize for push.apply( _, NodeList )
188
+ try {
189
+ push.apply(
190
+ (arr = slice.call( preferredDoc.childNodes )),
191
+ preferredDoc.childNodes
192
+ );
193
+ // Support: Android<4.0
194
+ // Detect silently failing push.apply
195
+ arr[ preferredDoc.childNodes.length ].nodeType;
196
+ } catch ( e ) {
197
+ push = { apply: arr.length ?
198
+
199
+ // Leverage slice if possible
200
+ function( target, els ) {
201
+ push_native.apply( target, slice.call(els) );
202
+ } :
203
+
204
+ // Support: IE<9
205
+ // Otherwise append directly
206
+ function( target, els ) {
207
+ var j = target.length,
208
+ i = 0;
209
+ // Can't trust NodeList.length
210
+ while ( (target[j++] = els[i++]) ) {}
211
+ target.length = j - 1;
212
+ }
213
+ };
214
+ }
215
+
216
+ function Sizzle( selector, context, results, seed ) {
217
+ var m, i, elem, nid, match, groups, newSelector,
218
+ newContext = context && context.ownerDocument,
219
+
220
+ // nodeType defaults to 9, since context defaults to document
221
+ nodeType = context ? context.nodeType : 9;
222
+
223
+ results = results || [];
224
+
225
+ // Return early from calls with invalid selector or context
226
+ if ( typeof selector !== "string" || !selector ||
227
+ nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {
228
+
229
+ return results;
230
+ }
231
+
232
+ // Try to shortcut find operations (as opposed to filters) in HTML documents
233
+ if ( !seed ) {
234
+
235
+ if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {
236
+ setDocument( context );
237
+ }
238
+ context = context || document;
239
+
240
+ if ( documentIsHTML ) {
241
+
242
+ // If the selector is sufficiently simple, try using a "get*By*" DOM method
243
+ // (excepting DocumentFragment context, where the methods don't exist)
244
+ if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) {
245
+
246
+ // ID selector
247
+ if ( (m = match[1]) ) {
248
+
249
+ // Document context
250
+ if ( nodeType === 9 ) {
251
+ if ( (elem = context.getElementById( m )) ) {
252
+
253
+ // Support: IE, Opera, Webkit
254
+ // TODO: identify versions
255
+ // getElementById can match elements by name instead of ID
256
+ if ( elem.id === m ) {
257
+ results.push( elem );
258
+ return results;
259
+ }
260
+ } else {
261
+ return results;
262
+ }
263
+
264
+ // Element context
265
+ } else {
266
+
267
+ // Support: IE, Opera, Webkit
268
+ // TODO: identify versions
269
+ // getElementById can match elements by name instead of ID
270
+ if ( newContext && (elem = newContext.getElementById( m )) &&
271
+ contains( context, elem ) &&
272
+ elem.id === m ) {
273
+
274
+ results.push( elem );
275
+ return results;
276
+ }
277
+ }
278
+
279
+ // Type selector
280
+ } else if ( match[2] ) {
281
+ push.apply( results, context.getElementsByTagName( selector ) );
282
+ return results;
283
+
284
+ // Class selector
285
+ } else if ( (m = match[3]) && support.getElementsByClassName &&
286
+ context.getElementsByClassName ) {
287
+
288
+ push.apply( results, context.getElementsByClassName( m ) );
289
+ return results;
290
+ }
291
+ }
292
+
293
+ // Take advantage of querySelectorAll
294
+ if ( support.qsa &&
295
+ !compilerCache[ selector + " " ] &&
296
+ (!rbuggyQSA || !rbuggyQSA.test( selector )) ) {
297
+
298
+ if ( nodeType !== 1 ) {
299
+ newContext = context;
300
+ newSelector = selector;
301
+
302
+ // qSA looks outside Element context, which is not what we want
303
+ // Thanks to Andrew Dupont for this workaround technique
304
+ // Support: IE <=8
305
+ // Exclude object elements
306
+ } else if ( context.nodeName.toLowerCase() !== "object" ) {
307
+
308
+ // Capture the context ID, setting it first if necessary
309
+ if ( (nid = context.getAttribute( "id" )) ) {
310
+ nid = nid.replace( rcssescape, fcssescape );
311
+ } else {
312
+ context.setAttribute( "id", (nid = expando) );
313
+ }
314
+
315
+ // Prefix every selector in the list
316
+ groups = tokenize( selector );
317
+ i = groups.length;
318
+ while ( i-- ) {
319
+ groups[i] = "#" + nid + " " + toSelector( groups[i] );
320
+ }
321
+ newSelector = groups.join( "," );
322
+
323
+ // Expand context for sibling selectors
324
+ newContext = rsibling.test( selector ) && testContext( context.parentNode ) ||
325
+ context;
326
+ }
327
+
328
+ if ( newSelector ) {
329
+ try {
330
+ push.apply( results,
331
+ newContext.querySelectorAll( newSelector )
332
+ );
333
+ return results;
334
+ } catch ( qsaError ) {
335
+ } finally {
336
+ if ( nid === expando ) {
337
+ context.removeAttribute( "id" );
338
+ }
339
+ }
340
+ }
341
+ }
342
+ }
343
+ }
344
+
345
+ // All others
346
+ return select( selector.replace( rtrim, "$1" ), context, results, seed );
347
+ }
348
+
349
+ /**
350
+ * Create key-value caches of limited size
351
+ * @returns {function(string, object)} Returns the Object data after storing it on itself with
352
+ * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)
353
+ * deleting the oldest entry
354
+ */
355
+ function createCache() {
356
+ var keys = [];
357
+
358
+ function cache( key, value ) {
359
+ // Use (key + " ") to avoid collision with native prototype properties (see Issue #157)
360
+ if ( keys.push( key + " " ) > Expr.cacheLength ) {
361
+ // Only keep the most recent entries
362
+ delete cache[ keys.shift() ];
363
+ }
364
+ return (cache[ key + " " ] = value);
365
+ }
366
+ return cache;
367
+ }
368
+
369
+ /**
370
+ * Mark a function for special use by Sizzle
371
+ * @param {Function} fn The function to mark
372
+ */
373
+ function markFunction( fn ) {
374
+ fn[ expando ] = true;
375
+ return fn;
376
+ }
377
+
378
+ /**
379
+ * Support testing using an element
380
+ * @param {Function} fn Passed the created element and returns a boolean result
381
+ */
382
+ function assert( fn ) {
383
+ var el = document.createElement("fieldset");
384
+
385
+ try {
386
+ return !!fn( el );
387
+ } catch (e) {
388
+ return false;
389
+ } finally {
390
+ // Remove from its parent by default
391
+ if ( el.parentNode ) {
392
+ el.parentNode.removeChild( el );
393
+ }
394
+ // release memory in IE
395
+ el = null;
396
+ }
397
+ }
398
+
399
+ /**
400
+ * Adds the same handler for all of the specified attrs
401
+ * @param {String} attrs Pipe-separated list of attributes
402
+ * @param {Function} handler The method that will be applied
403
+ */
404
+ function addHandle( attrs, handler ) {
405
+ var arr = attrs.split("|"),
406
+ i = arr.length;
407
+
408
+ while ( i-- ) {
409
+ Expr.attrHandle[ arr[i] ] = handler;
410
+ }
411
+ }
412
+
413
+ /**
414
+ * Checks document order of two siblings
415
+ * @param {Element} a
416
+ * @param {Element} b
417
+ * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b
418
+ */
419
+ function siblingCheck( a, b ) {
420
+ var cur = b && a,
421
+ diff = cur && a.nodeType === 1 && b.nodeType === 1 &&
422
+ a.sourceIndex - b.sourceIndex;
423
+
424
+ // Use IE sourceIndex if available on both nodes
425
+ if ( diff ) {
426
+ return diff;
427
+ }
428
+
429
+ // Check if b follows a
430
+ if ( cur ) {
431
+ while ( (cur = cur.nextSibling) ) {
432
+ if ( cur === b ) {
433
+ return -1;
434
+ }
435
+ }
436
+ }
437
+
438
+ return a ? 1 : -1;
439
+ }
440
+
441
+ /**
442
+ * Returns a function to use in pseudos for input types
443
+ * @param {String} type
444
+ */
445
+ function createInputPseudo( type ) {
446
+ return function( elem ) {
447
+ var name = elem.nodeName.toLowerCase();
448
+ return name === "input" && elem.type === type;
449
+ };
450
+ }
451
+
452
+ /**
453
+ * Returns a function to use in pseudos for buttons
454
+ * @param {String} type
455
+ */
456
+ function createButtonPseudo( type ) {
457
+ return function( elem ) {
458
+ var name = elem.nodeName.toLowerCase();
459
+ return (name === "input" || name === "button") && elem.type === type;
460
+ };
461
+ }
462
+
463
+ /**
464
+ * Returns a function to use in pseudos for :enabled/:disabled
465
+ * @param {Boolean} disabled true for :disabled; false for :enabled
466
+ */
467
+ function createDisabledPseudo( disabled ) {
468
+ // Known :disabled false positives:
469
+ // IE: *[disabled]:not(button, input, select, textarea, optgroup, option, menuitem, fieldset)
470
+ // not IE: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable
471
+ return function( elem ) {
472
+
473
+ // Check form elements and option elements for explicit disabling
474
+ return "label" in elem && elem.disabled === disabled ||
475
+ "form" in elem && elem.disabled === disabled ||
476
+
477
+ // Check non-disabled form elements for fieldset[disabled] ancestors
478
+ "form" in elem && elem.disabled === false && (
479
+ // Support: IE6-11+
480
+ // Ancestry is covered for us
481
+ elem.isDisabled === disabled ||
482
+
483
+ // Otherwise, assume any non-<option> under fieldset[disabled] is disabled
484
+ /* jshint -W018 */
485
+ elem.isDisabled !== !disabled &&
486
+ ("label" in elem || !disabledAncestor( elem )) !== disabled
487
+ );
488
+ };
489
+ }
490
+
491
+ /**
492
+ * Returns a function to use in pseudos for positionals
493
+ * @param {Function} fn
494
+ */
495
+ function createPositionalPseudo( fn ) {
496
+ return markFunction(function( argument ) {
497
+ argument = +argument;
498
+ return markFunction(function( seed, matches ) {
499
+ var j,
500
+ matchIndexes = fn( [], seed.length, argument ),
501
+ i = matchIndexes.length;
502
+
503
+ // Match elements found at the specified indexes
504
+ while ( i-- ) {
505
+ if ( seed[ (j = matchIndexes[i]) ] ) {
506
+ seed[j] = !(matches[j] = seed[j]);
507
+ }
508
+ }
509
+ });
510
+ });
511
+ }
512
+
513
+ /**
514
+ * Checks a node for validity as a Sizzle context
515
+ * @param {Element|Object=} context
516
+ * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value
517
+ */
518
+ function testContext( context ) {
519
+ return context && typeof context.getElementsByTagName !== "undefined" && context;
520
+ }
521
+
522
+ // Expose support vars for convenience
523
+ support = Sizzle.support = {};
524
+
525
+ /**
526
+ * Detects XML nodes
527
+ * @param {Element|Object} elem An element or a document
528
+ * @returns {Boolean} True iff elem is a non-HTML XML node
529
+ */
530
+ isXML = Sizzle.isXML = function( elem ) {
531
+ // documentElement is verified for cases where it doesn't yet exist
532
+ // (such as loading iframes in IE - #4833)
533
+ var documentElement = elem && (elem.ownerDocument || elem).documentElement;
534
+ return documentElement ? documentElement.nodeName !== "HTML" : false;
535
+ };
536
+
537
+ /**
538
+ * Sets document-related variables once based on the current document
539
+ * @param {Element|Object} [doc] An element or document object to use to set the document
540
+ * @returns {Object} Returns the current document
541
+ */
542
+ setDocument = Sizzle.setDocument = function( node ) {
543
+ var hasCompare, subWindow,
544
+ doc = node ? node.ownerDocument || node : preferredDoc;
545
+
546
+ // Return early if doc is invalid or already selected
547
+ if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) {
548
+ return document;
549
+ }
550
+
551
+ // Update global variables
552
+ document = doc;
553
+ docElem = document.documentElement;
554
+ documentIsHTML = !isXML( document );
555
+
556
+ // Support: IE 9-11, Edge
557
+ // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936)
558
+ if ( preferredDoc !== document &&
559
+ (subWindow = document.defaultView) && subWindow.top !== subWindow ) {
560
+
561
+ // Support: IE 11, Edge
562
+ if ( subWindow.addEventListener ) {
563
+ subWindow.addEventListener( "unload", unloadHandler, false );
564
+
565
+ // Support: IE 9 - 10 only
566
+ } else if ( subWindow.attachEvent ) {
567
+ subWindow.attachEvent( "onunload", unloadHandler );
568
+ }
569
+ }
570
+
571
+ /* Attributes
572
+ ---------------------------------------------------------------------- */
573
+
574
+ // Support: IE<8
575
+ // Verify that getAttribute really returns attributes and not properties
576
+ // (excepting IE8 booleans)
577
+ support.attributes = assert(function( el ) {
578
+ el.className = "i";
579
+ return !el.getAttribute("className");
580
+ });
581
+
582
+ /* getElement(s)By*
583
+ ---------------------------------------------------------------------- */
584
+
585
+ // Check if getElementsByTagName("*") returns only elements
586
+ support.getElementsByTagName = assert(function( el ) {
587
+ el.appendChild( document.createComment("") );
588
+ return !el.getElementsByTagName("*").length;
589
+ });
590
+
591
+ // Support: IE<9
592
+ support.getElementsByClassName = rnative.test( document.getElementsByClassName );
593
+
594
+ // Support: IE<10
595
+ // Check if getElementById returns elements by name
596
+ // The broken getElementById methods don't pick up programmatically-set names,
597
+ // so use a roundabout getElementsByName test
598
+ support.getById = assert(function( el ) {
599
+ docElem.appendChild( el ).id = expando;
600
+ return !document.getElementsByName || !document.getElementsByName( expando ).length;
601
+ });
602
+
603
+ // ID find and filter
604
+ if ( support.getById ) {
605
+ Expr.find["ID"] = function( id, context ) {
606
+ if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
607
+ var m = context.getElementById( id );
608
+ return m ? [ m ] : [];
609
+ }
610
+ };
611
+ Expr.filter["ID"] = function( id ) {
612
+ var attrId = id.replace( runescape, funescape );
613
+ return function( elem ) {
614
+ return elem.getAttribute("id") === attrId;
615
+ };
616
+ };
617
+ } else {
618
+ // Support: IE6/7
619
+ // getElementById is not reliable as a find shortcut
620
+ delete Expr.find["ID"];
621
+
622
+ Expr.filter["ID"] = function( id ) {
623
+ var attrId = id.replace( runescape, funescape );
624
+ return function( elem ) {
625
+ var node = typeof elem.getAttributeNode !== "undefined" &&
626
+ elem.getAttributeNode("id");
627
+ return node && node.value === attrId;
628
+ };
629
+ };
630
+ }
631
+
632
+ // Tag
633
+ Expr.find["TAG"] = support.getElementsByTagName ?
634
+ function( tag, context ) {
635
+ if ( typeof context.getElementsByTagName !== "undefined" ) {
636
+ return context.getElementsByTagName( tag );
637
+
638
+ // DocumentFragment nodes don't have gEBTN
639
+ } else if ( support.qsa ) {
640
+ return context.querySelectorAll( tag );
641
+ }
642
+ } :
643
+
644
+ function( tag, context ) {
645
+ var elem,
646
+ tmp = [],
647
+ i = 0,
648
+ // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too
649
+ results = context.getElementsByTagName( tag );
650
+
651
+ // Filter out possible comments
652
+ if ( tag === "*" ) {
653
+ while ( (elem = results[i++]) ) {
654
+ if ( elem.nodeType === 1 ) {
655
+ tmp.push( elem );
656
+ }
657
+ }
658
+
659
+ return tmp;
660
+ }
661
+ return results;
662
+ };
663
+
664
+ // Class
665
+ Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) {
666
+ if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) {
667
+ return context.getElementsByClassName( className );
668
+ }
669
+ };
670
+
671
+ /* QSA/matchesSelector
672
+ ---------------------------------------------------------------------- */
673
+
674
+ // QSA and matchesSelector support
675
+
676
+ // matchesSelector(:active) reports false when true (IE9/Opera 11.5)
677
+ rbuggyMatches = [];
678
+
679
+ // qSa(:focus) reports false when true (Chrome 21)
680
+ // We allow this because of a bug in IE8/9 that throws an error
681
+ // whenever `document.activeElement` is accessed on an iframe
682
+ // So, we allow :focus to pass through QSA all the time to avoid the IE error
683
+ // See https://bugs.jquery.com/ticket/13378
684
+ rbuggyQSA = [];
685
+
686
+ if ( (support.qsa = rnative.test( document.querySelectorAll )) ) {
687
+ // Build QSA regex
688
+ // Regex strategy adopted from Diego Perini
689
+ assert(function( el ) {
690
+ // Select is set to empty string on purpose
691
+ // This is to test IE's treatment of not explicitly
692
+ // setting a boolean content attribute,
693
+ // since its presence should be enough
694
+ // https://bugs.jquery.com/ticket/12359
695
+ docElem.appendChild( el ).innerHTML = "<a id='" + expando + "'></a>" +
696
+ "<select id='" + expando + "-\r\\' msallowcapture=''>" +
697
+ "<option selected=''></option></select>";
698
+
699
+ // Support: IE8, Opera 11-12.16
700
+ // Nothing should be selected when empty strings follow ^= or $= or *=
701
+ // The test attribute must be unknown in Opera but "safe" for WinRT
702
+ // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section
703
+ if ( el.querySelectorAll("[msallowcapture^='']").length ) {
704
+ rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" );
705
+ }
706
+
707
+ // Support: IE8
708
+ // Boolean attributes and "value" are not treated correctly
709
+ if ( !el.querySelectorAll("[selected]").length ) {
710
+ rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" );
711
+ }
712
+
713
+ // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+
714
+ if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) {
715
+ rbuggyQSA.push("~=");
716
+ }
717
+
718
+ // Webkit/Opera - :checked should return selected option elements
719
+ // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
720
+ // IE8 throws error here and will not see later tests
721
+ if ( !el.querySelectorAll(":checked").length ) {
722
+ rbuggyQSA.push(":checked");
723
+ }
724
+
725
+ // Support: Safari 8+, iOS 8+
726
+ // https://bugs.webkit.org/show_bug.cgi?id=136851
727
+ // In-page `selector#id sibling-combinator selector` fails
728
+ if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) {
729
+ rbuggyQSA.push(".#.+[+~]");
730
+ }
731
+ });
732
+
733
+ assert(function( el ) {
734
+ el.innerHTML = "<a href='' disabled='disabled'></a>" +
735
+ "<select disabled='disabled'><option/></select>";
736
+
737
+ // Support: Windows 8 Native Apps
738
+ // The type and name attributes are restricted during .innerHTML assignment
739
+ var input = document.createElement("input");
740
+ input.setAttribute( "type", "hidden" );
741
+ el.appendChild( input ).setAttribute( "name", "D" );
742
+
743
+ // Support: IE8
744
+ // Enforce case-sensitivity of name attribute
745
+ if ( el.querySelectorAll("[name=d]").length ) {
746
+ rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" );
747
+ }
748
+
749
+ // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)
750
+ // IE8 throws error here and will not see later tests
751
+ if ( el.querySelectorAll(":enabled").length !== 2 ) {
752
+ rbuggyQSA.push( ":enabled", ":disabled" );
753
+ }
754
+
755
+ // Support: IE9-11+
756
+ // IE's :disabled selector does not pick up the children of disabled fieldsets
757
+ docElem.appendChild( el ).disabled = true;
758
+ if ( el.querySelectorAll(":disabled").length !== 2 ) {
759
+ rbuggyQSA.push( ":enabled", ":disabled" );
760
+ }
761
+
762
+ // Opera 10-11 does not throw on post-comma invalid pseudos
763
+ el.querySelectorAll("*,:x");
764
+ rbuggyQSA.push(",.*:");
765
+ });
766
+ }
767
+
768
+ if ( (support.matchesSelector = rnative.test( (matches = docElem.matches ||
769
+ docElem.webkitMatchesSelector ||
770
+ docElem.mozMatchesSelector ||
771
+ docElem.oMatchesSelector ||
772
+ docElem.msMatchesSelector) )) ) {
773
+
774
+ assert(function( el ) {
775
+ // Check to see if it's possible to do matchesSelector
776
+ // on a disconnected node (IE 9)
777
+ support.disconnectedMatch = matches.call( el, "*" );
778
+
779
+ // This should fail with an exception
780
+ // Gecko does not error, returns false instead
781
+ matches.call( el, "[s!='']:x" );
782
+ rbuggyMatches.push( "!=", pseudos );
783
+ });
784
+ }
785
+
786
+ rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") );
787
+ rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") );
788
+
789
+ /* Contains
790
+ ---------------------------------------------------------------------- */
791
+ hasCompare = rnative.test( docElem.compareDocumentPosition );
792
+
793
+ // Element contains another
794
+ // Purposefully self-exclusive
795
+ // As in, an element does not contain itself
796
+ contains = hasCompare || rnative.test( docElem.contains ) ?
797
+ function( a, b ) {
798
+ var adown = a.nodeType === 9 ? a.documentElement : a,
799
+ bup = b && b.parentNode;
800
+ return a === bup || !!( bup && bup.nodeType === 1 && (
801
+ adown.contains ?
802
+ adown.contains( bup ) :
803
+ a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16
804
+ ));
805
+ } :
806
+ function( a, b ) {
807
+ if ( b ) {
808
+ while ( (b = b.parentNode) ) {
809
+ if ( b === a ) {
810
+ return true;
811
+ }
812
+ }
813
+ }
814
+ return false;
815
+ };
816
+
817
+ /* Sorting
818
+ ---------------------------------------------------------------------- */
819
+
820
+ // Document order sorting
821
+ sortOrder = hasCompare ?
822
+ function( a, b ) {
823
+
824
+ // Flag for duplicate removal
825
+ if ( a === b ) {
826
+ hasDuplicate = true;
827
+ return 0;
828
+ }
829
+
830
+ // Sort on method existence if only one input has compareDocumentPosition
831
+ var compare = !a.compareDocumentPosition - !b.compareDocumentPosition;
832
+ if ( compare ) {
833
+ return compare;
834
+ }
835
+
836
+ // Calculate position if both inputs belong to the same document
837
+ compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ?
838
+ a.compareDocumentPosition( b ) :
839
+
840
+ // Otherwise we know they are disconnected
841
+ 1;
842
+
843
+ // Disconnected nodes
844
+ if ( compare & 1 ||
845
+ (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) {
846
+
847
+ // Choose the first element that is related to our preferred document
848
+ if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) {
849
+ return -1;
850
+ }
851
+ if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) {
852
+ return 1;
853
+ }
854
+
855
+ // Maintain original order
856
+ return sortInput ?
857
+ ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
858
+ 0;
859
+ }
860
+
861
+ return compare & 4 ? -1 : 1;
862
+ } :
863
+ function( a, b ) {
864
+ // Exit early if the nodes are identical
865
+ if ( a === b ) {
866
+ hasDuplicate = true;
867
+ return 0;
868
+ }
869
+
870
+ var cur,
871
+ i = 0,
872
+ aup = a.parentNode,
873
+ bup = b.parentNode,
874
+ ap = [ a ],
875
+ bp = [ b ];
876
+
877
+ // Parentless nodes are either documents or disconnected
878
+ if ( !aup || !bup ) {
879
+ return a === document ? -1 :
880
+ b === document ? 1 :
881
+ aup ? -1 :
882
+ bup ? 1 :
883
+ sortInput ?
884
+ ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
885
+ 0;
886
+
887
+ // If the nodes are siblings, we can do a quick check
888
+ } else if ( aup === bup ) {
889
+ return siblingCheck( a, b );
890
+ }
891
+
892
+ // Otherwise we need full lists of their ancestors for comparison
893
+ cur = a;
894
+ while ( (cur = cur.parentNode) ) {
895
+ ap.unshift( cur );
896
+ }
897
+ cur = b;
898
+ while ( (cur = cur.parentNode) ) {
899
+ bp.unshift( cur );
900
+ }
901
+
902
+ // Walk down the tree looking for a discrepancy
903
+ while ( ap[i] === bp[i] ) {
904
+ i++;
905
+ }
906
+
907
+ return i ?
908
+ // Do a sibling check if the nodes have a common ancestor
909
+ siblingCheck( ap[i], bp[i] ) :
910
+
911
+ // Otherwise nodes in our document sort first
912
+ ap[i] === preferredDoc ? -1 :
913
+ bp[i] === preferredDoc ? 1 :
914
+ 0;
915
+ };
916
+
917
+ return document;
918
+ };
919
+
920
+ Sizzle.matches = function( expr, elements ) {
921
+ return Sizzle( expr, null, null, elements );
922
+ };
923
+
924
+ Sizzle.matchesSelector = function( elem, expr ) {
925
+ // Set document vars if needed
926
+ if ( ( elem.ownerDocument || elem ) !== document ) {
927
+ setDocument( elem );
928
+ }
929
+
930
+ // Make sure that attribute selectors are quoted
931
+ expr = expr.replace( rattributeQuotes, "='$1']" );
932
+
933
+ if ( support.matchesSelector && documentIsHTML &&
934
+ !compilerCache[ expr + " " ] &&
935
+ ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&
936
+ ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) {
937
+
938
+ try {
939
+ var ret = matches.call( elem, expr );
940
+
941
+ // IE 9's matchesSelector returns false on disconnected nodes
942
+ if ( ret || support.disconnectedMatch ||
943
+ // As well, disconnected nodes are said to be in a document
944
+ // fragment in IE 9
945
+ elem.document && elem.document.nodeType !== 11 ) {
946
+ return ret;
947
+ }
948
+ } catch (e) {}
949
+ }
950
+
951
+ return Sizzle( expr, document, null, [ elem ] ).length > 0;
952
+ };
953
+
954
+ Sizzle.contains = function( context, elem ) {
955
+ // Set document vars if needed
956
+ if ( ( context.ownerDocument || context ) !== document ) {
957
+ setDocument( context );
958
+ }
959
+ return contains( context, elem );
960
+ };
961
+
962
+ Sizzle.attr = function( elem, name ) {
963
+ // Set document vars if needed
964
+ if ( ( elem.ownerDocument || elem ) !== document ) {
965
+ setDocument( elem );
966
+ }
967
+
968
+ var fn = Expr.attrHandle[ name.toLowerCase() ],
969
+ // Don't get fooled by Object.prototype properties (jQuery #13807)
970
+ val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?
971
+ fn( elem, name, !documentIsHTML ) :
972
+ undefined;
973
+
974
+ return val !== undefined ?
975
+ val :
976
+ support.attributes || !documentIsHTML ?
977
+ elem.getAttribute( name ) :
978
+ (val = elem.getAttributeNode(name)) && val.specified ?
979
+ val.value :
980
+ null;
981
+ };
982
+
983
+ Sizzle.escape = function( sel ) {
984
+ return (sel + "").replace( rcssescape, fcssescape );
985
+ };
986
+
987
+ Sizzle.error = function( msg ) {
988
+ throw new Error( "Syntax error, unrecognized expression: " + msg );
989
+ };
990
+
991
+ /**
992
+ * Document sorting and removing duplicates
993
+ * @param {ArrayLike} results
994
+ */
995
+ Sizzle.uniqueSort = function( results ) {
996
+ var elem,
997
+ duplicates = [],
998
+ j = 0,
999
+ i = 0;
1000
+
1001
+ // Unless we *know* we can detect duplicates, assume their presence
1002
+ hasDuplicate = !support.detectDuplicates;
1003
+ sortInput = !support.sortStable && results.slice( 0 );
1004
+ results.sort( sortOrder );
1005
+
1006
+ if ( hasDuplicate ) {
1007
+ while ( (elem = results[i++]) ) {
1008
+ if ( elem === results[ i ] ) {
1009
+ j = duplicates.push( i );
1010
+ }
1011
+ }
1012
+ while ( j-- ) {
1013
+ results.splice( duplicates[ j ], 1 );
1014
+ }
1015
+ }
1016
+
1017
+ // Clear input after sorting to release objects
1018
+ // See https://github.com/jquery/sizzle/pull/225
1019
+ sortInput = null;
1020
+
1021
+ return results;
1022
+ };
1023
+
1024
+ /**
1025
+ * Utility function for retrieving the text value of an array of DOM nodes
1026
+ * @param {Array|Element} elem
1027
+ */
1028
+ getText = Sizzle.getText = function( elem ) {
1029
+ var node,
1030
+ ret = "",
1031
+ i = 0,
1032
+ nodeType = elem.nodeType;
1033
+
1034
+ if ( !nodeType ) {
1035
+ // If no nodeType, this is expected to be an array
1036
+ while ( (node = elem[i++]) ) {
1037
+ // Do not traverse comment nodes
1038
+ ret += getText( node );
1039
+ }
1040
+ } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {
1041
+ // Use textContent for elements
1042
+ // innerText usage removed for consistency of new lines (jQuery #11153)
1043
+ if ( typeof elem.textContent === "string" ) {
1044
+ return elem.textContent;
1045
+ } else {
1046
+ // Traverse its children
1047
+ for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
1048
+ ret += getText( elem );
1049
+ }
1050
+ }
1051
+ } else if ( nodeType === 3 || nodeType === 4 ) {
1052
+ return elem.nodeValue;
1053
+ }
1054
+ // Do not include comment or processing instruction nodes
1055
+
1056
+ return ret;
1057
+ };
1058
+
1059
+ Expr = Sizzle.selectors = {
1060
+
1061
+ // Can be adjusted by the user
1062
+ cacheLength: 50,
1063
+
1064
+ createPseudo: markFunction,
1065
+
1066
+ match: matchExpr,
1067
+
1068
+ attrHandle: {},
1069
+
1070
+ find: {},
1071
+
1072
+ relative: {
1073
+ ">": { dir: "parentNode", first: true },
1074
+ " ": { dir: "parentNode" },
1075
+ "+": { dir: "previousSibling", first: true },
1076
+ "~": { dir: "previousSibling" }
1077
+ },
1078
+
1079
+ preFilter: {
1080
+ "ATTR": function( match ) {
1081
+ match[1] = match[1].replace( runescape, funescape );
1082
+
1083
+ // Move the given value to match[3] whether quoted or unquoted
1084
+ match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape );
1085
+
1086
+ if ( match[2] === "~=" ) {
1087
+ match[3] = " " + match[3] + " ";
1088
+ }
1089
+
1090
+ return match.slice( 0, 4 );
1091
+ },
1092
+
1093
+ "CHILD": function( match ) {
1094
+ /* matches from matchExpr["CHILD"]
1095
+ 1 type (only|nth|...)
1096
+ 2 what (child|of-type)
1097
+ 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...)
1098
+ 4 xn-component of xn+y argument ([+-]?\d*n|)
1099
+ 5 sign of xn-component
1100
+ 6 x of xn-component
1101
+ 7 sign of y-component
1102
+ 8 y of y-component
1103
+ */
1104
+ match[1] = match[1].toLowerCase();
1105
+
1106
+ if ( match[1].slice( 0, 3 ) === "nth" ) {
1107
+ // nth-* requires argument
1108
+ if ( !match[3] ) {
1109
+ Sizzle.error( match[0] );
1110
+ }
1111
+
1112
+ // numeric x and y parameters for Expr.filter.CHILD
1113
+ // remember that false/true cast respectively to 0/1
1114
+ match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) );
1115
+ match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" );
1116
+
1117
+ // other types prohibit arguments
1118
+ } else if ( match[3] ) {
1119
+ Sizzle.error( match[0] );
1120
+ }
1121
+
1122
+ return match;
1123
+ },
1124
+
1125
+ "PSEUDO": function( match ) {
1126
+ var excess,
1127
+ unquoted = !match[6] && match[2];
1128
+
1129
+ if ( matchExpr["CHILD"].test( match[0] ) ) {
1130
+ return null;
1131
+ }
1132
+
1133
+ // Accept quoted arguments as-is
1134
+ if ( match[3] ) {
1135
+ match[2] = match[4] || match[5] || "";
1136
+
1137
+ // Strip excess characters from unquoted arguments
1138
+ } else if ( unquoted && rpseudo.test( unquoted ) &&
1139
+ // Get excess from tokenize (recursively)
1140
+ (excess = tokenize( unquoted, true )) &&
1141
+ // advance to the next closing parenthesis
1142
+ (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) {
1143
+
1144
+ // excess is a negative index
1145
+ match[0] = match[0].slice( 0, excess );
1146
+ match[2] = unquoted.slice( 0, excess );
1147
+ }
1148
+
1149
+ // Return only captures needed by the pseudo filter method (type and argument)
1150
+ return match.slice( 0, 3 );
1151
+ }
1152
+ },
1153
+
1154
+ filter: {
1155
+
1156
+ "TAG": function( nodeNameSelector ) {
1157
+ var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();
1158
+ return nodeNameSelector === "*" ?
1159
+ function() { return true; } :
1160
+ function( elem ) {
1161
+ return elem.nodeName && elem.nodeName.toLowerCase() === nodeName;
1162
+ };
1163
+ },
1164
+
1165
+ "CLASS": function( className ) {
1166
+ var pattern = classCache[ className + " " ];
1167
+
1168
+ return pattern ||
1169
+ (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) &&
1170
+ classCache( className, function( elem ) {
1171
+ return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" );
1172
+ });
1173
+ },
1174
+
1175
+ "ATTR": function( name, operator, check ) {
1176
+ return function( elem ) {
1177
+ var result = Sizzle.attr( elem, name );
1178
+
1179
+ if ( result == null ) {
1180
+ return operator === "!=";
1181
+ }
1182
+ if ( !operator ) {
1183
+ return true;
1184
+ }
1185
+
1186
+ result += "";
1187
+
1188
+ return operator === "=" ? result === check :
1189
+ operator === "!=" ? result !== check :
1190
+ operator === "^=" ? check && result.indexOf( check ) === 0 :
1191
+ operator === "*=" ? check && result.indexOf( check ) > -1 :
1192
+ operator === "$=" ? check && result.slice( -check.length ) === check :
1193
+ operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 :
1194
+ operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" :
1195
+ false;
1196
+ };
1197
+ },
1198
+
1199
+ "CHILD": function( type, what, argument, first, last ) {
1200
+ var simple = type.slice( 0, 3 ) !== "nth",
1201
+ forward = type.slice( -4 ) !== "last",
1202
+ ofType = what === "of-type";
1203
+
1204
+ return first === 1 && last === 0 ?
1205
+
1206
+ // Shortcut for :nth-*(n)
1207
+ function( elem ) {
1208
+ return !!elem.parentNode;
1209
+ } :
1210
+
1211
+ function( elem, context, xml ) {
1212
+ var cache, uniqueCache, outerCache, node, nodeIndex, start,
1213
+ dir = simple !== forward ? "nextSibling" : "previousSibling",
1214
+ parent = elem.parentNode,
1215
+ name = ofType && elem.nodeName.toLowerCase(),
1216
+ useCache = !xml && !ofType,
1217
+ diff = false;
1218
+
1219
+ if ( parent ) {
1220
+
1221
+ // :(first|last|only)-(child|of-type)
1222
+ if ( simple ) {
1223
+ while ( dir ) {
1224
+ node = elem;
1225
+ while ( (node = node[ dir ]) ) {
1226
+ if ( ofType ?
1227
+ node.nodeName.toLowerCase() === name :
1228
+ node.nodeType === 1 ) {
1229
+
1230
+ return false;
1231
+ }
1232
+ }
1233
+ // Reverse direction for :only-* (if we haven't yet done so)
1234
+ start = dir = type === "only" && !start && "nextSibling";
1235
+ }
1236
+ return true;
1237
+ }
1238
+
1239
+ start = [ forward ? parent.firstChild : parent.lastChild ];
1240
+
1241
+ // non-xml :nth-child(...) stores cache data on `parent`
1242
+ if ( forward && useCache ) {
1243
+
1244
+ // Seek `elem` from a previously-cached index
1245
+
1246
+ // ...in a gzip-friendly way
1247
+ node = parent;
1248
+ outerCache = node[ expando ] || (node[ expando ] = {});
1249
+
1250
+ // Support: IE <9 only
1251
+ // Defend against cloned attroperties (jQuery gh-1709)
1252
+ uniqueCache = outerCache[ node.uniqueID ] ||
1253
+ (outerCache[ node.uniqueID ] = {});
1254
+
1255
+ cache = uniqueCache[ type ] || [];
1256
+ nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
1257
+ diff = nodeIndex && cache[ 2 ];
1258
+ node = nodeIndex && parent.childNodes[ nodeIndex ];
1259
+
1260
+ while ( (node = ++nodeIndex && node && node[ dir ] ||
1261
+
1262
+ // Fallback to seeking `elem` from the start
1263
+ (diff = nodeIndex = 0) || start.pop()) ) {
1264
+
1265
+ // When found, cache indexes on `parent` and break
1266
+ if ( node.nodeType === 1 && ++diff && node === elem ) {
1267
+ uniqueCache[ type ] = [ dirruns, nodeIndex, diff ];
1268
+ break;
1269
+ }
1270
+ }
1271
+
1272
+ } else {
1273
+ // Use previously-cached element index if available
1274
+ if ( useCache ) {
1275
+ // ...in a gzip-friendly way
1276
+ node = elem;
1277
+ outerCache = node[ expando ] || (node[ expando ] = {});
1278
+
1279
+ // Support: IE <9 only
1280
+ // Defend against cloned attroperties (jQuery gh-1709)
1281
+ uniqueCache = outerCache[ node.uniqueID ] ||
1282
+ (outerCache[ node.uniqueID ] = {});
1283
+
1284
+ cache = uniqueCache[ type ] || [];
1285
+ nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
1286
+ diff = nodeIndex;
1287
+ }
1288
+
1289
+ // xml :nth-child(...)
1290
+ // or :nth-last-child(...) or :nth(-last)?-of-type(...)
1291
+ if ( diff === false ) {
1292
+ // Use the same loop as above to seek `elem` from the start
1293
+ while ( (node = ++nodeIndex && node && node[ dir ] ||
1294
+ (diff = nodeIndex = 0) || start.pop()) ) {
1295
+
1296
+ if ( ( ofType ?
1297
+ node.nodeName.toLowerCase() === name :
1298
+ node.nodeType === 1 ) &&
1299
+ ++diff ) {
1300
+
1301
+ // Cache the index of each encountered element
1302
+ if ( useCache ) {
1303
+ outerCache = node[ expando ] || (node[ expando ] = {});
1304
+
1305
+ // Support: IE <9 only
1306
+ // Defend against cloned attroperties (jQuery gh-1709)
1307
+ uniqueCache = outerCache[ node.uniqueID ] ||
1308
+ (outerCache[ node.uniqueID ] = {});
1309
+
1310
+ uniqueCache[ type ] = [ dirruns, diff ];
1311
+ }
1312
+
1313
+ if ( node === elem ) {
1314
+ break;
1315
+ }
1316
+ }
1317
+ }
1318
+ }
1319
+ }
1320
+
1321
+ // Incorporate the offset, then check against cycle size
1322
+ diff -= last;
1323
+ return diff === first || ( diff % first === 0 && diff / first >= 0 );
1324
+ }
1325
+ };
1326
+ },
1327
+
1328
+ "PSEUDO": function( pseudo, argument ) {
1329
+ // pseudo-class names are case-insensitive
1330
+ // http://www.w3.org/TR/selectors/#pseudo-classes
1331
+ // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters
1332
+ // Remember that setFilters inherits from pseudos
1333
+ var args,
1334
+ fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||
1335
+ Sizzle.error( "unsupported pseudo: " + pseudo );
1336
+
1337
+ // The user may use createPseudo to indicate that
1338
+ // arguments are needed to create the filter function
1339
+ // just as Sizzle does
1340
+ if ( fn[ expando ] ) {
1341
+ return fn( argument );
1342
+ }
1343
+
1344
+ // But maintain support for old signatures
1345
+ if ( fn.length > 1 ) {
1346
+ args = [ pseudo, pseudo, "", argument ];
1347
+ return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?
1348
+ markFunction(function( seed, matches ) {
1349
+ var idx,
1350
+ matched = fn( seed, argument ),
1351
+ i = matched.length;
1352
+ while ( i-- ) {
1353
+ idx = indexOf( seed, matched[i] );
1354
+ seed[ idx ] = !( matches[ idx ] = matched[i] );
1355
+ }
1356
+ }) :
1357
+ function( elem ) {
1358
+ return fn( elem, 0, args );
1359
+ };
1360
+ }
1361
+
1362
+ return fn;
1363
+ }
1364
+ },
1365
+
1366
+ pseudos: {
1367
+ // Potentially complex pseudos
1368
+ "not": markFunction(function( selector ) {
1369
+ // Trim the selector passed to compile
1370
+ // to avoid treating leading and trailing
1371
+ // spaces as combinators
1372
+ var input = [],
1373
+ results = [],
1374
+ matcher = compile( selector.replace( rtrim, "$1" ) );
1375
+
1376
+ return matcher[ expando ] ?
1377
+ markFunction(function( seed, matches, context, xml ) {
1378
+ var elem,
1379
+ unmatched = matcher( seed, null, xml, [] ),
1380
+ i = seed.length;
1381
+
1382
+ // Match elements unmatched by `matcher`
1383
+ while ( i-- ) {
1384
+ if ( (elem = unmatched[i]) ) {
1385
+ seed[i] = !(matches[i] = elem);
1386
+ }
1387
+ }
1388
+ }) :
1389
+ function( elem, context, xml ) {
1390
+ input[0] = elem;
1391
+ matcher( input, null, xml, results );
1392
+ // Don't keep the element (issue #299)
1393
+ input[0] = null;
1394
+ return !results.pop();
1395
+ };
1396
+ }),
1397
+
1398
+ "has": markFunction(function( selector ) {
1399
+ return function( elem ) {
1400
+ return Sizzle( selector, elem ).length > 0;
1401
+ };
1402
+ }),
1403
+
1404
+ "contains": markFunction(function( text ) {
1405
+ text = text.replace( runescape, funescape );
1406
+ return function( elem ) {
1407
+ return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1;
1408
+ };
1409
+ }),
1410
+
1411
+ // "Whether an element is represented by a :lang() selector
1412
+ // is based solely on the element's language value
1413
+ // being equal to the identifier C,
1414
+ // or beginning with the identifier C immediately followed by "-".
1415
+ // The matching of C against the element's language value is performed case-insensitively.
1416
+ // The identifier C does not have to be a valid language name."
1417
+ // http://www.w3.org/TR/selectors/#lang-pseudo
1418
+ "lang": markFunction( function( lang ) {
1419
+ // lang value must be a valid identifier
1420
+ if ( !ridentifier.test(lang || "") ) {
1421
+ Sizzle.error( "unsupported lang: " + lang );
1422
+ }
1423
+ lang = lang.replace( runescape, funescape ).toLowerCase();
1424
+ return function( elem ) {
1425
+ var elemLang;
1426
+ do {
1427
+ if ( (elemLang = documentIsHTML ?
1428
+ elem.lang :
1429
+ elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) {
1430
+
1431
+ elemLang = elemLang.toLowerCase();
1432
+ return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0;
1433
+ }
1434
+ } while ( (elem = elem.parentNode) && elem.nodeType === 1 );
1435
+ return false;
1436
+ };
1437
+ }),
1438
+
1439
+ // Miscellaneous
1440
+ "target": function( elem ) {
1441
+ var hash = window.location && window.location.hash;
1442
+ return hash && hash.slice( 1 ) === elem.id;
1443
+ },
1444
+
1445
+ "root": function( elem ) {
1446
+ return elem === docElem;
1447
+ },
1448
+
1449
+ "focus": function( elem ) {
1450
+ return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);
1451
+ },
1452
+
1453
+ // Boolean properties
1454
+ "enabled": createDisabledPseudo( false ),
1455
+ "disabled": createDisabledPseudo( true ),
1456
+
1457
+ "checked": function( elem ) {
1458
+ // In CSS3, :checked should return both checked and selected elements
1459
+ // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
1460
+ var nodeName = elem.nodeName.toLowerCase();
1461
+ return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected);
1462
+ },
1463
+
1464
+ "selected": function( elem ) {
1465
+ // Accessing this property makes selected-by-default
1466
+ // options in Safari work properly
1467
+ if ( elem.parentNode ) {
1468
+ elem.parentNode.selectedIndex;
1469
+ }
1470
+
1471
+ return elem.selected === true;
1472
+ },
1473
+
1474
+ // Contents
1475
+ "empty": function( elem ) {
1476
+ // http://www.w3.org/TR/selectors/#empty-pseudo
1477
+ // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),
1478
+ // but not by others (comment: 8; processing instruction: 7; etc.)
1479
+ // nodeType < 6 works because attributes (2) do not appear as children
1480
+ for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
1481
+ if ( elem.nodeType < 6 ) {
1482
+ return false;
1483
+ }
1484
+ }
1485
+ return true;
1486
+ },
1487
+
1488
+ "parent": function( elem ) {
1489
+ return !Expr.pseudos["empty"]( elem );
1490
+ },
1491
+
1492
+ // Element/input types
1493
+ "header": function( elem ) {
1494
+ return rheader.test( elem.nodeName );
1495
+ },
1496
+
1497
+ "input": function( elem ) {
1498
+ return rinputs.test( elem.nodeName );
1499
+ },
1500
+
1501
+ "button": function( elem ) {
1502
+ var name = elem.nodeName.toLowerCase();
1503
+ return name === "input" && elem.type === "button" || name === "button";
1504
+ },
1505
+
1506
+ "text": function( elem ) {
1507
+ var attr;
1508
+ return elem.nodeName.toLowerCase() === "input" &&
1509
+ elem.type === "text" &&
1510
+
1511
+ // Support: IE<8
1512
+ // New HTML5 attribute values (e.g., "search") appear with elem.type === "text"
1513
+ ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" );
1514
+ },
1515
+
1516
+ // Position-in-collection
1517
+ "first": createPositionalPseudo(function() {
1518
+ return [ 0 ];
1519
+ }),
1520
+
1521
+ "last": createPositionalPseudo(function( matchIndexes, length ) {
1522
+ return [ length - 1 ];
1523
+ }),
1524
+
1525
+ "eq": createPositionalPseudo(function( matchIndexes, length, argument ) {
1526
+ return [ argument < 0 ? argument + length : argument ];
1527
+ }),
1528
+
1529
+ "even": createPositionalPseudo(function( matchIndexes, length ) {
1530
+ var i = 0;
1531
+ for ( ; i < length; i += 2 ) {
1532
+ matchIndexes.push( i );
1533
+ }
1534
+ return matchIndexes;
1535
+ }),
1536
+
1537
+ "odd": createPositionalPseudo(function( matchIndexes, length ) {
1538
+ var i = 1;
1539
+ for ( ; i < length; i += 2 ) {
1540
+ matchIndexes.push( i );
1541
+ }
1542
+ return matchIndexes;
1543
+ }),
1544
+
1545
+ "lt": createPositionalPseudo(function( matchIndexes, length, argument ) {
1546
+ var i = argument < 0 ? argument + length : argument;
1547
+ for ( ; --i >= 0; ) {
1548
+ matchIndexes.push( i );
1549
+ }
1550
+ return matchIndexes;
1551
+ }),
1552
+
1553
+ "gt": createPositionalPseudo(function( matchIndexes, length, argument ) {
1554
+ var i = argument < 0 ? argument + length : argument;
1555
+ for ( ; ++i < length; ) {
1556
+ matchIndexes.push( i );
1557
+ }
1558
+ return matchIndexes;
1559
+ })
1560
+ }
1561
+ };
1562
+
1563
+ Expr.pseudos["nth"] = Expr.pseudos["eq"];
1564
+
1565
+ // Add button/input type pseudos
1566
+ for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {
1567
+ Expr.pseudos[ i ] = createInputPseudo( i );
1568
+ }
1569
+ for ( i in { submit: true, reset: true } ) {
1570
+ Expr.pseudos[ i ] = createButtonPseudo( i );
1571
+ }
1572
+
1573
+ // Easy API for creating new setFilters
1574
+ function setFilters() {}
1575
+ setFilters.prototype = Expr.filters = Expr.pseudos;
1576
+ Expr.setFilters = new setFilters();
1577
+
1578
+ tokenize = Sizzle.tokenize = function( selector, parseOnly ) {
1579
+ var matched, match, tokens, type,
1580
+ soFar, groups, preFilters,
1581
+ cached = tokenCache[ selector + " " ];
1582
+
1583
+ if ( cached ) {
1584
+ return parseOnly ? 0 : cached.slice( 0 );
1585
+ }
1586
+
1587
+ soFar = selector;
1588
+ groups = [];
1589
+ preFilters = Expr.preFilter;
1590
+
1591
+ while ( soFar ) {
1592
+
1593
+ // Comma and first run
1594
+ if ( !matched || (match = rcomma.exec( soFar )) ) {
1595
+ if ( match ) {
1596
+ // Don't consume trailing commas as valid
1597
+ soFar = soFar.slice( match[0].length ) || soFar;
1598
+ }
1599
+ groups.push( (tokens = []) );
1600
+ }
1601
+
1602
+ matched = false;
1603
+
1604
+ // Combinators
1605
+ if ( (match = rcombinators.exec( soFar )) ) {
1606
+ matched = match.shift();
1607
+ tokens.push({
1608
+ value: matched,
1609
+ // Cast descendant combinators to space
1610
+ type: match[0].replace( rtrim, " " )
1611
+ });
1612
+ soFar = soFar.slice( matched.length );
1613
+ }
1614
+
1615
+ // Filters
1616
+ for ( type in Expr.filter ) {
1617
+ if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||
1618
+ (match = preFilters[ type ]( match ))) ) {
1619
+ matched = match.shift();
1620
+ tokens.push({
1621
+ value: matched,
1622
+ type: type,
1623
+ matches: match
1624
+ });
1625
+ soFar = soFar.slice( matched.length );
1626
+ }
1627
+ }
1628
+
1629
+ if ( !matched ) {
1630
+ break;
1631
+ }
1632
+ }
1633
+
1634
+ // Return the length of the invalid excess
1635
+ // if we're just parsing
1636
+ // Otherwise, throw an error or return tokens
1637
+ return parseOnly ?
1638
+ soFar.length :
1639
+ soFar ?
1640
+ Sizzle.error( selector ) :
1641
+ // Cache the tokens
1642
+ tokenCache( selector, groups ).slice( 0 );
1643
+ };
1644
+
1645
+ function toSelector( tokens ) {
1646
+ var i = 0,
1647
+ len = tokens.length,
1648
+ selector = "";
1649
+ for ( ; i < len; i++ ) {
1650
+ selector += tokens[i].value;
1651
+ }
1652
+ return selector;
1653
+ }
1654
+
1655
+ function addCombinator( matcher, combinator, base ) {
1656
+ var dir = combinator.dir,
1657
+ skip = combinator.next,
1658
+ key = skip || dir,
1659
+ checkNonElements = base && key === "parentNode",
1660
+ doneName = done++;
1661
+
1662
+ return combinator.first ?
1663
+ // Check against closest ancestor/preceding element
1664
+ function( elem, context, xml ) {
1665
+ while ( (elem = elem[ dir ]) ) {
1666
+ if ( elem.nodeType === 1 || checkNonElements ) {
1667
+ return matcher( elem, context, xml );
1668
+ }
1669
+ }
1670
+ } :
1671
+
1672
+ // Check against all ancestor/preceding elements
1673
+ function( elem, context, xml ) {
1674
+ var oldCache, uniqueCache, outerCache,
1675
+ newCache = [ dirruns, doneName ];
1676
+
1677
+ // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching
1678
+ if ( xml ) {
1679
+ while ( (elem = elem[ dir ]) ) {
1680
+ if ( elem.nodeType === 1 || checkNonElements ) {
1681
+ if ( matcher( elem, context, xml ) ) {
1682
+ return true;
1683
+ }
1684
+ }
1685
+ }
1686
+ } else {
1687
+ while ( (elem = elem[ dir ]) ) {
1688
+ if ( elem.nodeType === 1 || checkNonElements ) {
1689
+ outerCache = elem[ expando ] || (elem[ expando ] = {});
1690
+
1691
+ // Support: IE <9 only
1692
+ // Defend against cloned attroperties (jQuery gh-1709)
1693
+ uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {});
1694
+
1695
+ if ( skip && skip === elem.nodeName.toLowerCase() ) {
1696
+ elem = elem[ dir ] || elem;
1697
+ } else if ( (oldCache = uniqueCache[ key ]) &&
1698
+ oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {
1699
+
1700
+ // Assign to newCache so results back-propagate to previous elements
1701
+ return (newCache[ 2 ] = oldCache[ 2 ]);
1702
+ } else {
1703
+ // Reuse newcache so results back-propagate to previous elements
1704
+ uniqueCache[ key ] = newCache;
1705
+
1706
+ // A match means we're done; a fail means we have to keep checking
1707
+ if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) {
1708
+ return true;
1709
+ }
1710
+ }
1711
+ }
1712
+ }
1713
+ }
1714
+ };
1715
+ }
1716
+
1717
+ function elementMatcher( matchers ) {
1718
+ return matchers.length > 1 ?
1719
+ function( elem, context, xml ) {
1720
+ var i = matchers.length;
1721
+ while ( i-- ) {
1722
+ if ( !matchers[i]( elem, context, xml ) ) {
1723
+ return false;
1724
+ }
1725
+ }
1726
+ return true;
1727
+ } :
1728
+ matchers[0];
1729
+ }
1730
+
1731
+ function multipleContexts( selector, contexts, results ) {
1732
+ var i = 0,
1733
+ len = contexts.length;
1734
+ for ( ; i < len; i++ ) {
1735
+ Sizzle( selector, contexts[i], results );
1736
+ }
1737
+ return results;
1738
+ }
1739
+
1740
+ function condense( unmatched, map, filter, context, xml ) {
1741
+ var elem,
1742
+ newUnmatched = [],
1743
+ i = 0,
1744
+ len = unmatched.length,
1745
+ mapped = map != null;
1746
+
1747
+ for ( ; i < len; i++ ) {
1748
+ if ( (elem = unmatched[i]) ) {
1749
+ if ( !filter || filter( elem, context, xml ) ) {
1750
+ newUnmatched.push( elem );
1751
+ if ( mapped ) {
1752
+ map.push( i );
1753
+ }
1754
+ }
1755
+ }
1756
+ }
1757
+
1758
+ return newUnmatched;
1759
+ }
1760
+
1761
+ function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {
1762
+ if ( postFilter && !postFilter[ expando ] ) {
1763
+ postFilter = setMatcher( postFilter );
1764
+ }
1765
+ if ( postFinder && !postFinder[ expando ] ) {
1766
+ postFinder = setMatcher( postFinder, postSelector );
1767
+ }
1768
+ return markFunction(function( seed, results, context, xml ) {
1769
+ var temp, i, elem,
1770
+ preMap = [],
1771
+ postMap = [],
1772
+ preexisting = results.length,
1773
+
1774
+ // Get initial elements from seed or context
1775
+ elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ),
1776
+
1777
+ // Prefilter to get matcher input, preserving a map for seed-results synchronization
1778
+ matcherIn = preFilter && ( seed || !selector ) ?
1779
+ condense( elems, preMap, preFilter, context, xml ) :
1780
+ elems,
1781
+
1782
+ matcherOut = matcher ?
1783
+ // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,
1784
+ postFinder || ( seed ? preFilter : preexisting || postFilter ) ?
1785
+
1786
+ // ...intermediate processing is necessary
1787
+ [] :
1788
+
1789
+ // ...otherwise use results directly
1790
+ results :
1791
+ matcherIn;
1792
+
1793
+ // Find primary matches
1794
+ if ( matcher ) {
1795
+ matcher( matcherIn, matcherOut, context, xml );
1796
+ }
1797
+
1798
+ // Apply postFilter
1799
+ if ( postFilter ) {
1800
+ temp = condense( matcherOut, postMap );
1801
+ postFilter( temp, [], context, xml );
1802
+
1803
+ // Un-match failing elements by moving them back to matcherIn
1804
+ i = temp.length;
1805
+ while ( i-- ) {
1806
+ if ( (elem = temp[i]) ) {
1807
+ matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);
1808
+ }
1809
+ }
1810
+ }
1811
+
1812
+ if ( seed ) {
1813
+ if ( postFinder || preFilter ) {
1814
+ if ( postFinder ) {
1815
+ // Get the final matcherOut by condensing this intermediate into postFinder contexts
1816
+ temp = [];
1817
+ i = matcherOut.length;
1818
+ while ( i-- ) {
1819
+ if ( (elem = matcherOut[i]) ) {
1820
+ // Restore matcherIn since elem is not yet a final match
1821
+ temp.push( (matcherIn[i] = elem) );
1822
+ }
1823
+ }
1824
+ postFinder( null, (matcherOut = []), temp, xml );
1825
+ }
1826
+
1827
+ // Move matched elements from seed to results to keep them synchronized
1828
+ i = matcherOut.length;
1829
+ while ( i-- ) {
1830
+ if ( (elem = matcherOut[i]) &&
1831
+ (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) {
1832
+
1833
+ seed[temp] = !(results[temp] = elem);
1834
+ }
1835
+ }
1836
+ }
1837
+
1838
+ // Add elements to results, through postFinder if defined
1839
+ } else {
1840
+ matcherOut = condense(
1841
+ matcherOut === results ?
1842
+ matcherOut.splice( preexisting, matcherOut.length ) :
1843
+ matcherOut
1844
+ );
1845
+ if ( postFinder ) {
1846
+ postFinder( null, results, matcherOut, xml );
1847
+ } else {
1848
+ push.apply( results, matcherOut );
1849
+ }
1850
+ }
1851
+ });
1852
+ }
1853
+
1854
+ function matcherFromTokens( tokens ) {
1855
+ var checkContext, matcher, j,
1856
+ len = tokens.length,
1857
+ leadingRelative = Expr.relative[ tokens[0].type ],
1858
+ implicitRelative = leadingRelative || Expr.relative[" "],
1859
+ i = leadingRelative ? 1 : 0,
1860
+
1861
+ // The foundational matcher ensures that elements are reachable from top-level context(s)
1862
+ matchContext = addCombinator( function( elem ) {
1863
+ return elem === checkContext;
1864
+ }, implicitRelative, true ),
1865
+ matchAnyContext = addCombinator( function( elem ) {
1866
+ return indexOf( checkContext, elem ) > -1;
1867
+ }, implicitRelative, true ),
1868
+ matchers = [ function( elem, context, xml ) {
1869
+ var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (
1870
+ (checkContext = context).nodeType ?
1871
+ matchContext( elem, context, xml ) :
1872
+ matchAnyContext( elem, context, xml ) );
1873
+ // Avoid hanging onto element (issue #299)
1874
+ checkContext = null;
1875
+ return ret;
1876
+ } ];
1877
+
1878
+ for ( ; i < len; i++ ) {
1879
+ if ( (matcher = Expr.relative[ tokens[i].type ]) ) {
1880
+ matchers = [ addCombinator(elementMatcher( matchers ), matcher) ];
1881
+ } else {
1882
+ matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );
1883
+
1884
+ // Return special upon seeing a positional matcher
1885
+ if ( matcher[ expando ] ) {
1886
+ // Find the next relative operator (if any) for proper handling
1887
+ j = ++i;
1888
+ for ( ; j < len; j++ ) {
1889
+ if ( Expr.relative[ tokens[j].type ] ) {
1890
+ break;
1891
+ }
1892
+ }
1893
+ return setMatcher(
1894
+ i > 1 && elementMatcher( matchers ),
1895
+ i > 1 && toSelector(
1896
+ // If the preceding token was a descendant combinator, insert an implicit any-element `*`
1897
+ tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" })
1898
+ ).replace( rtrim, "$1" ),
1899
+ matcher,
1900
+ i < j && matcherFromTokens( tokens.slice( i, j ) ),
1901
+ j < len && matcherFromTokens( (tokens = tokens.slice( j )) ),
1902
+ j < len && toSelector( tokens )
1903
+ );
1904
+ }
1905
+ matchers.push( matcher );
1906
+ }
1907
+ }
1908
+
1909
+ return elementMatcher( matchers );
1910
+ }
1911
+
1912
+ function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
1913
+ var bySet = setMatchers.length > 0,
1914
+ byElement = elementMatchers.length > 0,
1915
+ superMatcher = function( seed, context, xml, results, outermost ) {
1916
+ var elem, j, matcher,
1917
+ matchedCount = 0,
1918
+ i = "0",
1919
+ unmatched = seed && [],
1920
+ setMatched = [],
1921
+ contextBackup = outermostContext,
1922
+ // We must always have either seed elements or outermost context
1923
+ elems = seed || byElement && Expr.find["TAG"]( "*", outermost ),
1924
+ // Use integer dirruns iff this is the outermost matcher
1925
+ dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1),
1926
+ len = elems.length;
1927
+
1928
+ if ( outermost ) {
1929
+ outermostContext = context === document || context || outermost;
1930
+ }
1931
+
1932
+ // Add elements passing elementMatchers directly to results
1933
+ // Support: IE<9, Safari
1934
+ // Tolerate NodeList properties (IE: "length"; Safari: <number>) matching elements by id
1935
+ for ( ; i !== len && (elem = elems[i]) != null; i++ ) {
1936
+ if ( byElement && elem ) {
1937
+ j = 0;
1938
+ if ( !context && elem.ownerDocument !== document ) {
1939
+ setDocument( elem );
1940
+ xml = !documentIsHTML;
1941
+ }
1942
+ while ( (matcher = elementMatchers[j++]) ) {
1943
+ if ( matcher( elem, context || document, xml) ) {
1944
+ results.push( elem );
1945
+ break;
1946
+ }
1947
+ }
1948
+ if ( outermost ) {
1949
+ dirruns = dirrunsUnique;
1950
+ }
1951
+ }
1952
+
1953
+ // Track unmatched elements for set filters
1954
+ if ( bySet ) {
1955
+ // They will have gone through all possible matchers
1956
+ if ( (elem = !matcher && elem) ) {
1957
+ matchedCount--;
1958
+ }
1959
+
1960
+ // Lengthen the array for every element, matched or not
1961
+ if ( seed ) {
1962
+ unmatched.push( elem );
1963
+ }
1964
+ }
1965
+ }
1966
+
1967
+ // `i` is now the count of elements visited above, and adding it to `matchedCount`
1968
+ // makes the latter nonnegative.
1969
+ matchedCount += i;
1970
+
1971
+ // Apply set filters to unmatched elements
1972
+ // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount`
1973
+ // equals `i`), unless we didn't visit _any_ elements in the above loop because we have
1974
+ // no element matchers and no seed.
1975
+ // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that
1976
+ // case, which will result in a "00" `matchedCount` that differs from `i` but is also
1977
+ // numerically zero.
1978
+ if ( bySet && i !== matchedCount ) {
1979
+ j = 0;
1980
+ while ( (matcher = setMatchers[j++]) ) {
1981
+ matcher( unmatched, setMatched, context, xml );
1982
+ }
1983
+
1984
+ if ( seed ) {
1985
+ // Reintegrate element matches to eliminate the need for sorting
1986
+ if ( matchedCount > 0 ) {
1987
+ while ( i-- ) {
1988
+ if ( !(unmatched[i] || setMatched[i]) ) {
1989
+ setMatched[i] = pop.call( results );
1990
+ }
1991
+ }
1992
+ }
1993
+
1994
+ // Discard index placeholder values to get only actual matches
1995
+ setMatched = condense( setMatched );
1996
+ }
1997
+
1998
+ // Add matches to results
1999
+ push.apply( results, setMatched );
2000
+
2001
+ // Seedless set matches succeeding multiple successful matchers stipulate sorting
2002
+ if ( outermost && !seed && setMatched.length > 0 &&
2003
+ ( matchedCount + setMatchers.length ) > 1 ) {
2004
+
2005
+ Sizzle.uniqueSort( results );
2006
+ }
2007
+ }
2008
+
2009
+ // Override manipulation of globals by nested matchers
2010
+ if ( outermost ) {
2011
+ dirruns = dirrunsUnique;
2012
+ outermostContext = contextBackup;
2013
+ }
2014
+
2015
+ return unmatched;
2016
+ };
2017
+
2018
+ return bySet ?
2019
+ markFunction( superMatcher ) :
2020
+ superMatcher;
2021
+ }
2022
+
2023
+ compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {
2024
+ var i,
2025
+ setMatchers = [],
2026
+ elementMatchers = [],
2027
+ cached = compilerCache[ selector + " " ];
2028
+
2029
+ if ( !cached ) {
2030
+ // Generate a function of recursive functions that can be used to check each element
2031
+ if ( !match ) {
2032
+ match = tokenize( selector );
2033
+ }
2034
+ i = match.length;
2035
+ while ( i-- ) {
2036
+ cached = matcherFromTokens( match[i] );
2037
+ if ( cached[ expando ] ) {
2038
+ setMatchers.push( cached );
2039
+ } else {
2040
+ elementMatchers.push( cached );
2041
+ }
2042
+ }
2043
+
2044
+ // Cache the compiled function
2045
+ cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
2046
+
2047
+ // Save selector and tokenization
2048
+ cached.selector = selector;
2049
+ }
2050
+ return cached;
2051
+ };
2052
+
2053
+ /**
2054
+ * A low-level selection function that works with Sizzle's compiled
2055
+ * selector functions
2056
+ * @param {String|Function} selector A selector or a pre-compiled
2057
+ * selector function built with Sizzle.compile
2058
+ * @param {Element} context
2059
+ * @param {Array} [results]
2060
+ * @param {Array} [seed] A set of elements to match against
2061
+ */
2062
+ select = Sizzle.select = function( selector, context, results, seed ) {
2063
+ var i, tokens, token, type, find,
2064
+ compiled = typeof selector === "function" && selector,
2065
+ match = !seed && tokenize( (selector = compiled.selector || selector) );
2066
+
2067
+ results = results || [];
2068
+
2069
+ // Try to minimize operations if there is only one selector in the list and no seed
2070
+ // (the latter of which guarantees us context)
2071
+ if ( match.length === 1 ) {
2072
+
2073
+ // Reduce context if the leading compound selector is an ID
2074
+ tokens = match[0] = match[0].slice( 0 );
2075
+ if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
2076
+ support.getById && context.nodeType === 9 && documentIsHTML &&
2077
+ Expr.relative[ tokens[1].type ] ) {
2078
+
2079
+ context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0];
2080
+ if ( !context ) {
2081
+ return results;
2082
+
2083
+ // Precompiled matchers will still verify ancestry, so step up a level
2084
+ } else if ( compiled ) {
2085
+ context = context.parentNode;
2086
+ }
2087
+
2088
+ selector = selector.slice( tokens.shift().value.length );
2089
+ }
2090
+
2091
+ // Fetch a seed set for right-to-left matching
2092
+ i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length;
2093
+ while ( i-- ) {
2094
+ token = tokens[i];
2095
+
2096
+ // Abort if we hit a combinator
2097
+ if ( Expr.relative[ (type = token.type) ] ) {
2098
+ break;
2099
+ }
2100
+ if ( (find = Expr.find[ type ]) ) {
2101
+ // Search, expanding context for leading sibling combinators
2102
+ if ( (seed = find(
2103
+ token.matches[0].replace( runescape, funescape ),
2104
+ rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context
2105
+ )) ) {
2106
+
2107
+ // If seed is empty or no tokens remain, we can return early
2108
+ tokens.splice( i, 1 );
2109
+ selector = seed.length && toSelector( tokens );
2110
+ if ( !selector ) {
2111
+ push.apply( results, seed );
2112
+ return results;
2113
+ }
2114
+
2115
+ break;
2116
+ }
2117
+ }
2118
+ }
2119
+ }
2120
+
2121
+ // Compile and execute a filtering function if one is not provided
2122
+ // Provide `match` to avoid retokenization if we modified the selector above
2123
+ ( compiled || compile( selector, match ) )(
2124
+ seed,
2125
+ context,
2126
+ !documentIsHTML,
2127
+ results,
2128
+ !context || rsibling.test( selector ) && testContext( context.parentNode ) || context
2129
+ );
2130
+ return results;
2131
+ };
2132
+
2133
+ // One-time assignments
2134
+
2135
+ // Sort stability
2136
+ support.sortStable = expando.split("").sort( sortOrder ).join("") === expando;
2137
+
2138
+ // Support: Chrome 14-35+
2139
+ // Always assume duplicates if they aren't passed to the comparison function
2140
+ support.detectDuplicates = !!hasDuplicate;
2141
+
2142
+ // Initialize against the default document
2143
+ setDocument();
2144
+
2145
+ // Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)
2146
+ // Detached nodes confoundingly follow *each other*
2147
+ support.sortDetached = assert(function( el ) {
2148
+ // Should return 1, but returns 4 (following)
2149
+ return el.compareDocumentPosition( document.createElement("fieldset") ) & 1;
2150
+ });
2151
+
2152
+ // Support: IE<8
2153
+ // Prevent attribute/property "interpolation"
2154
+ // https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx
2155
+ if ( !assert(function( el ) {
2156
+ el.innerHTML = "<a href='#'></a>";
2157
+ return el.firstChild.getAttribute("href") === "#" ;
2158
+ }) ) {
2159
+ addHandle( "type|href|height|width", function( elem, name, isXML ) {
2160
+ if ( !isXML ) {
2161
+ return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 );
2162
+ }
2163
+ });
2164
+ }
2165
+
2166
+ // Support: IE<9
2167
+ // Use defaultValue in place of getAttribute("value")
2168
+ if ( !support.attributes || !assert(function( el ) {
2169
+ el.innerHTML = "<input/>";
2170
+ el.firstChild.setAttribute( "value", "" );
2171
+ return el.firstChild.getAttribute( "value" ) === "";
2172
+ }) ) {
2173
+ addHandle( "value", function( elem, name, isXML ) {
2174
+ if ( !isXML && elem.nodeName.toLowerCase() === "input" ) {
2175
+ return elem.defaultValue;
2176
+ }
2177
+ });
2178
+ }
2179
+
2180
+ // Support: IE<9
2181
+ // Use getAttributeNode to fetch booleans when getAttribute lies
2182
+ if ( !assert(function( el ) {
2183
+ return el.getAttribute("disabled") == null;
2184
+ }) ) {
2185
+ addHandle( booleans, function( elem, name, isXML ) {
2186
+ var val;
2187
+ if ( !isXML ) {
2188
+ return elem[ name ] === true ? name.toLowerCase() :
2189
+ (val = elem.getAttributeNode( name )) && val.specified ?
2190
+ val.value :
2191
+ null;
2192
+ }
2193
+ });
2194
+ }
2195
+
2196
+ // EXPOSE
2197
+ var _sizzle = window.Sizzle;
2198
+
2199
+ Sizzle.noConflict = function() {
2200
+ if ( window.Sizzle === Sizzle ) {
2201
+ window.Sizzle = _sizzle;
2202
+ }
2203
+
2204
+ return Sizzle;
2205
+ };
2206
+
2207
+ if ( typeof define === "function" && define.amd ) {
2208
+ define(function() { return Sizzle; });
2209
+ // Sizzle requires that there be a global window in Common-JS like environments
2210
+ } else if ( typeof module !== "undefined" && module.exports ) {
2211
+ module.exports = Sizzle;
2212
+ } else {
2213
+ window.Sizzle = Sizzle;
2214
+ }
2215
+ // EXPOSE
2216
+
2217
+ })( window );