sweetie 1.0.2 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (172) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +30 -0
  3. data/.gitignore +3 -0
  4. data/.rubocop.yml +16 -0
  5. data/Gemfile +3 -2
  6. data/README.md +224 -28
  7. data/Rakefile +3 -2
  8. data/lib/sweetie/bitbucket.rb +22 -197
  9. data/lib/sweetie/bitbucket_stati_helper.rb +247 -0
  10. data/lib/sweetie/conversion.rb +91 -62
  11. data/lib/sweetie/helper.rb +60 -51
  12. data/lib/sweetie/version.rb +2 -1
  13. data/lib/sweetie.rb +2 -2
  14. data/spec/fixtures/bitbucket/expected_repositories.txt +1 -0
  15. data/spec/fixtures/bitbucket/repositories.json +1 -0
  16. data/spec/fixtures/jekyll/_config.yml +4 -0
  17. data/spec/fixtures/jekyll/_config_repositories.yml +7 -0
  18. data/spec/fixtures/jekyll/_expected_config.yml +4 -0
  19. data/spec/{source → fixtures/jekyll}/site/404.html +0 -0
  20. data/spec/{source → fixtures/jekyll}/site/about.html +0 -0
  21. data/spec/{source → fixtures/jekyll}/site/archiv.html +0 -0
  22. data/spec/{source → fixtures/jekyll}/site/atom.xml +0 -0
  23. data/spec/{source → fixtures/jekyll}/site/colophon.html +0 -0
  24. data/spec/{source → fixtures/jekyll}/site/contact.html +0 -0
  25. data/spec/{source → fixtures/jekyll}/site/follow.html +0 -0
  26. data/spec/{source → fixtures/jekyll}/site/images/2_avatars.gif +0 -0
  27. data/spec/{source → fixtures/jekyll}/site/images/favicon.png +0 -0
  28. data/spec/{source → fixtures/jekyll}/site/images/images-global/matthias_guenther.jpg +0 -0
  29. data/spec/{source → fixtures/jekyll}/site/images/images-global/matthias_guenther_thumbnail_normal.jpg +0 -0
  30. data/spec/{source → fixtures/jekyll}/site/images/images-global/matthias_guenther_thumbnail_small.jpg +0 -0
  31. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/closebox.png +0 -0
  32. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-caption-fill.png +0 -0
  33. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-caption-l.png +0 -0
  34. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-caption-r.png +0 -0
  35. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-shadow1.png +0 -0
  36. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-shadow2.png +0 -0
  37. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-shadow3.png +0 -0
  38. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-shadow4.png +0 -0
  39. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-shadow5.png +0 -0
  40. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-shadow6.png +0 -0
  41. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-shadow7.png +0 -0
  42. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-shadow8.png +0 -0
  43. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-1.png +0 -0
  44. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-10.png +0 -0
  45. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-11.png +0 -0
  46. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-12.png +0 -0
  47. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-2.png +0 -0
  48. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-3.png +0 -0
  49. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-4.png +0 -0
  50. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-5.png +0 -0
  51. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-6.png +0 -0
  52. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-7.png +0 -0
  53. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-8.png +0 -0
  54. data/spec/{source → fixtures/jekyll}/site/images/images-global/zoom/zoom-spin-9.png +0 -0
  55. data/spec/{source → fixtures/jekyll}/site/images/rails3.jpg +0 -0
  56. data/spec/{source → fixtures/jekyll}/site/index.html +0 -0
  57. data/spec/{source → fixtures/jekyll}/site/robots.txt +0 -0
  58. data/spec/{source → fixtures/jekyll}/site/sitemap.xml +0 -0
  59. data/spec/{source → fixtures/jekyll}/site/why-i-use-jekyll-for-blogging.html +0 -0
  60. data/spec/fixtures/middleman/build/2012-01-meetup/index.html +238 -0
  61. data/spec/fixtures/middleman/build/2012-03-meetup/index.html +217 -0
  62. data/spec/fixtures/middleman/build/2012-05-meetup/index.html +214 -0
  63. data/spec/fixtures/middleman/build/2012-07-meetup/index.html +210 -0
  64. data/spec/fixtures/middleman/build/2012-08-workshop/index.html +228 -0
  65. data/spec/fixtures/middleman/build/2012-09-meetup/index.html +231 -0
  66. data/spec/fixtures/middleman/build/2012-10-workshop/index.html +227 -0
  67. data/spec/fixtures/middleman/build/2012-11-meetup/index.html +229 -0
  68. data/spec/fixtures/middleman/build/2012-unusual-december-meetup/index.html +186 -0
  69. data/spec/fixtures/middleman/build/2013-01-meetup/index.html +226 -0
  70. data/spec/fixtures/middleman/build/404/index.html +157 -0
  71. data/spec/fixtures/middleman/build/CNAME +1 -0
  72. data/spec/fixtures/middleman/build/april-2014-meetup/index.html +221 -0
  73. data/spec/fixtures/middleman/build/april-2015-meetup/index.html +204 -0
  74. data/spec/fixtures/middleman/build/april-2017-meetup/index.html +210 -0
  75. data/spec/fixtures/middleman/build/assets/favicons/android-chrome-144x144.png +0 -0
  76. data/spec/fixtures/middleman/build/assets/favicons/android-chrome-192x192.png +0 -0
  77. data/spec/fixtures/middleman/build/assets/favicons/android-chrome-36x36.png +0 -0
  78. data/spec/fixtures/middleman/build/assets/favicons/android-chrome-48x48.png +0 -0
  79. data/spec/fixtures/middleman/build/assets/favicons/android-chrome-72x72.png +0 -0
  80. data/spec/fixtures/middleman/build/assets/favicons/android-chrome-96x96.png +0 -0
  81. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-114x114.png +0 -0
  82. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-120x120.png +0 -0
  83. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-144x144.png +0 -0
  84. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-152x152.png +0 -0
  85. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-180x180.png +0 -0
  86. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-57x57.png +0 -0
  87. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-60x60.png +0 -0
  88. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-72x72.png +0 -0
  89. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-76x76.png +0 -0
  90. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon-precomposed.png +0 -0
  91. data/spec/fixtures/middleman/build/assets/favicons/apple-touch-icon.png +0 -0
  92. data/spec/fixtures/middleman/build/assets/favicons/browserconfig.xml +12 -0
  93. data/spec/fixtures/middleman/build/assets/favicons/favicon-16x16.png +0 -0
  94. data/spec/fixtures/middleman/build/assets/favicons/favicon-32x32.png +0 -0
  95. data/spec/fixtures/middleman/build/assets/favicons/favicon-96x96.png +0 -0
  96. data/spec/fixtures/middleman/build/assets/favicons/favicon.ico +0 -0
  97. data/spec/fixtures/middleman/build/assets/favicons/manifest.json +41 -0
  98. data/spec/fixtures/middleman/build/assets/favicons/mstile-144x144.png +0 -0
  99. data/spec/fixtures/middleman/build/assets/favicons/mstile-150x150.png +0 -0
  100. data/spec/fixtures/middleman/build/assets/favicons/mstile-310x150.png +0 -0
  101. data/spec/fixtures/middleman/build/assets/favicons/mstile-310x310.png +0 -0
  102. data/spec/fixtures/middleman/build/assets/favicons/mstile-70x70.png +0 -0
  103. data/spec/fixtures/middleman/build/assets/favicons/safari-pinned-tab.svg +450 -0
  104. data/spec/fixtures/middleman/build/assets/images/launch_co_logo.png +0 -0
  105. data/spec/fixtures/middleman/build/assets/images/vimfest.png +0 -0
  106. data/spec/fixtures/middleman/build/assets/javascripts/application.js +12 -0
  107. data/spec/fixtures/middleman/build/assets/javascripts/jquery.utils.js +12 -0
  108. data/spec/fixtures/middleman/build/assets/javascripts/lib/validate.js +1 -0
  109. data/spec/fixtures/middleman/build/assets/stylesheets/application.css +5 -0
  110. data/spec/fixtures/middleman/build/assets/stylesheets/vendor/bootstrap.css +5 -0
  111. data/spec/fixtures/middleman/build/august-2013-meetup/index.html +208 -0
  112. data/spec/fixtures/middleman/build/blog/index.html +500 -0
  113. data/spec/fixtures/middleman/build/book-club-about-the-viml-primer/index.html +182 -0
  114. data/spec/fixtures/middleman/build/contact/index.html +155 -0
  115. data/spec/fixtures/middleman/build/data/vimberlin-2013-09_ctags/index.html +98 -0
  116. data/spec/fixtures/middleman/build/data/vimberlin-2013-09_vimprofiling/index.html +157 -0
  117. data/spec/fixtures/middleman/build/data/vimberlin-2014-01_vim_writing/index.html +70 -0
  118. data/spec/fixtures/middleman/build/december-2015-meetup/index.html +199 -0
  119. data/spec/fixtures/middleman/build/december-2016-meetup/index.html +224 -0
  120. data/spec/fixtures/middleman/build/february-2013-vim-beer-lin/index.html +190 -0
  121. data/spec/fixtures/middleman/build/february-2015-meetup/index.html +233 -0
  122. data/spec/fixtures/middleman/build/february-2016-meetup/index.html +271 -0
  123. data/spec/fixtures/middleman/build/feed.xml +2106 -0
  124. data/spec/fixtures/middleman/build/fonts/FontAwesome.otf +0 -0
  125. data/spec/fixtures/middleman/build/fonts/fontawesome-webfont.eot +0 -0
  126. data/spec/fixtures/middleman/build/fonts/fontawesome-webfont.svg +655 -0
  127. data/spec/fixtures/middleman/build/fonts/fontawesome-webfont.ttf +0 -0
  128. data/spec/fixtures/middleman/build/fonts/fontawesome-webfont.woff +0 -0
  129. data/spec/fixtures/middleman/build/fonts/fontawesome-webfont.woff2 +0 -0
  130. data/spec/fixtures/middleman/build/humans.txt +12 -0
  131. data/spec/fixtures/middleman/build/imprint/index.html +177 -0
  132. data/spec/fixtures/middleman/build/index.html +157 -0
  133. data/spec/fixtures/middleman/build/january-2014-meetup/index.html +257 -0
  134. data/spec/fixtures/middleman/build/january-2015-meetup/index.html +243 -0
  135. data/spec/fixtures/middleman/build/january-2016-meetup/index.html +202 -0
  136. data/spec/fixtures/middleman/build/january-2017-meetup/index.html +228 -0
  137. data/spec/fixtures/middleman/build/july-2015-meetup/index.html +207 -0
  138. data/spec/fixtures/middleman/build/june-2016-meetup/index.html +260 -0
  139. data/spec/fixtures/middleman/build/march-2-2017-meetup/index.html +201 -0
  140. data/spec/fixtures/middleman/build/march-2014-meetup/index.html +219 -0
  141. data/spec/fixtures/middleman/build/march-2016-meetup/index.html +221 -0
  142. data/spec/fixtures/middleman/build/march-2017-meetup/index.html +222 -0
  143. data/spec/fixtures/middleman/build/may-2013-meetup/index.html +234 -0
  144. data/spec/fixtures/middleman/build/may-2014-meetup/index.html +198 -0
  145. data/spec/fixtures/middleman/build/may-2015-meetup/index.html +202 -0
  146. data/spec/fixtures/middleman/build/may-2016-meetup/index.html +245 -0
  147. data/spec/fixtures/middleman/build/newsletter/index.html +171 -0
  148. data/spec/fixtures/middleman/build/november-2013-meetup/index.html +199 -0
  149. data/spec/fixtures/middleman/build/november-2015-meetup/index.html +402 -0
  150. data/spec/fixtures/middleman/build/november-2016-meetup/index.html +224 -0
  151. data/spec/fixtures/middleman/build/october-2013-meetup/index.html +210 -0
  152. data/spec/fixtures/middleman/build/october-2014-meetup/index.html +196 -0
  153. data/spec/fixtures/middleman/build/october-2016-meetup/index.html +222 -0
  154. data/spec/fixtures/middleman/build/robots.txt +6 -0
  155. data/spec/fixtures/middleman/build/september-2013-meetup/index.html +225 -0
  156. data/spec/fixtures/middleman/build/september-2014-meetup/index.html +211 -0
  157. data/spec/fixtures/middleman/build/sitemap.xml +297 -0
  158. data/spec/fixtures/middleman/build/vimfest-october-2015/index.html +303 -0
  159. data/spec/fixtures/middleman/config.rb +4 -0
  160. data/spec/fixtures/middleman/config_repositories.rb +7 -0
  161. data/spec/fixtures/middleman/expected_config.rb +4 -0
  162. data/spec/spec_helper.rb +2 -2
  163. data/spec/sweetie_bitbucket_spec.rb +26 -51
  164. data/spec/sweetie_bitbucket_stati_helper_spec.rb +124 -0
  165. data/spec/sweetie_conversion_spec.rb +105 -17
  166. data/spec/sweetie_helper_spec.rb +140 -0
  167. data/sweetie.gemspec +10 -9
  168. metadata +163 -56
  169. data/.travis.yml +0 -7
  170. data/spec/source/_config.yml +0 -18
  171. data/spec/source/bitbucket/user_repositories.json +0 -161
  172. data/spec/source/bitbucket/user_repositories_expectation.txt +0 -1
@@ -0,0 +1,450 @@
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
3
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
4
+ <svg version="1.0" xmlns="http://www.w3.org/2000/svg"
5
+ width="260.000000pt" height="260.000000pt" viewBox="0 0 260.000000 260.000000"
6
+ preserveAspectRatio="xMidYMid meet">
7
+ <metadata>
8
+ Created by potrace 1.11, written by Peter Selinger 2001-2013
9
+ </metadata>
10
+ <g transform="translate(0.000000,260.000000) scale(0.100000,-0.100000)"
11
+ fill="#000000" stroke="none">
12
+ <path d="M5 2589 c-8 -12 -14 -7 62 -63 35 -25 63 -52 63 -60 0 -31 23 -26
13
+ 118 26 53 29 119 64 146 78 l49 25 -52 3 c-31 2 -59 -2 -67 -9 -11 -9 -18 -9
14
+ -26 -1 -20 20 -38 13 -38 -13 0 -41 -29 -44 -62 -5 -34 41 -44 35 -24 -13 14
15
+ -34 13 -36 -5 -42 -25 -8 -26 -8 -42 41 -12 32 -19 39 -43 41 -16 1 -23 0 -16
16
+ -3 6 -3 12 -10 12 -16 0 -6 -11 -3 -25 6 -28 19 -41 20 -50 5z m46 -16 c9 -10
17
+ 25 -23 35 -30 10 -6 14 -12 9 -12 -6 -1 -26 12 -45 29 -19 16 -30 29 -25 30 6
18
+ 0 18 -8 26 -17z"/>
19
+ <path d="M1535 2590 c3 -5 8 -10 11 -10 2 0 4 5 4 10 0 6 -5 10 -11 10 -5 0
20
+ -7 -4 -4 -10z"/>
21
+ <path d="M2559 2591 c11 -7 9 -11 -9 -21 -25 -13 -22 -20 12 -24 20 -2 24 2
22
+ 26 26 2 23 -2 28 -20 28 -17 0 -19 -3 -9 -9z"/>
23
+ <path d="M2520 2579 c0 -5 5 -7 10 -4 6 3 10 8 10 11 0 2 -4 4 -10 4 -5 0 -10
24
+ -5 -10 -11z"/>
25
+ <path d="M1066 2562 c5 -4 52 -5 104 -2 l95 6 -104 2 c-58 1 -101 -2 -95 -6z"/>
26
+ <path d="M1298 2553 c7 -3 16 -2 19 1 4 3 -2 6 -13 5 -11 0 -14 -3 -6 -6z"/>
27
+ <path d="M0 2506 c0 -44 0 -44 68 -82 37 -21 79 -46 94 -58 15 -11 30 -17 34
28
+ -14 3 3 -14 20 -38 36 -38 27 -90 92 -72 92 4 0 -5 9 -20 21 -14 11 -30 18
29
+ -36 14 -5 -3 -7 0 -4 8 3 8 -2 17 -10 20 -13 5 -16 -2 -16 -37z"/>
30
+ <path d="M1650 2536 c0 -16 21 -26 56 -26 31 0 32 26 2 34 -37 10 -58 7 -58
31
+ -8z"/>
32
+ <path d="M2570 2519 c-10 -7 -11 -12 -4 -15 12 -5 2 -92 -16 -139 -14 -38 -13
33
+ -45 13 -55 16 -6 17 -9 5 -9 -9 -1 -20 -6 -24 -12 -4 -8 1 -9 17 -4 23 7 24 7
34
+ 4 -9 -11 -8 -15 -15 -10 -16 29 0 34 19 34 143 0 70 -1 127 -2 127 -1 0 -9 -5
35
+ -17 -11z"/>
36
+ <path d="M2330 2506 c8 -8 28 -18 43 -22 25 -6 28 -4 25 12 -2 14 -13 20 -43
37
+ 22 -36 3 -38 2 -25 -12z"/>
38
+ <path d="M685 2456 c-27 -14 -45 -25 -38 -25 6 -1 33 10 60 24 62 32 44 32
39
+ -22 1z"/>
40
+ <path d="M1143 2453 c20 -2 54 -2 75 0 20 2 3 4 -38 4 -41 0 -58 -2 -37 -4z"/>
41
+ <path d="M2523 2448 c-6 -7 -13 -26 -17 -42 -6 -25 -5 -28 7 -17 15 12 32 60
42
+ 24 67 -2 3 -9 -1 -14 -8z"/>
43
+ <path d="M1295 2443 c48 -10 131 -37 140 -45 14 -12 41 -10 29 2 -19 19 -118
44
+ 50 -154 49 -19 -1 -26 -3 -15 -6z"/>
45
+ <path d="M0 2426 c0 -7 10 -16 22 -19 31 -9 33 -2 3 17 -20 13 -25 14 -25 2z"/>
46
+ <path d="M1273 2413 c9 -2 25 -2 35 0 9 3 1 5 -18 5 -19 0 -27 -2 -17 -5z"/>
47
+ <path d="M1840 2412 c0 -10 62 -33 69 -26 9 8 -30 34 -51 34 -10 0 -18 -4 -18
48
+ -8z"/>
49
+ <path d="M2316 2391 c-8 -13 16 -30 52 -37 25 -5 32 -3 32 9 0 28 -70 51 -84
50
+ 28z"/>
51
+ <path d="M0 2375 c0 -8 7 -15 15 -15 19 0 19 16 0 24 -9 3 -15 0 -15 -9z"/>
52
+ <path d="M544 2375 c-10 -8 -14 -15 -8 -15 6 0 17 7 24 15 16 19 9 19 -16 0z"/>
53
+ <path d="M1416 2375 c10 -8 26 -14 34 -14 11 0 10 3 -4 14 -11 8 -27 15 -35
54
+ 15 -11 0 -10 -4 5 -15z"/>
55
+ <path d="M2110 2343 c0 -11 70 -26 79 -18 8 9 -6 16 -43 22 -21 3 -36 2 -36
56
+ -4z"/>
57
+ <path d="M1507 2279 c-6 -31 -32 -246 -57 -465 -16 -141 -14 -164 17 -196 15
58
+ -15 32 -28 38 -28 6 0 40 62 75 138 35 75 92 195 127 266 35 71 62 131 60 133
59
+ -6 5 -101 52 -102 50 -9 -16 -119 -270 -136 -316 -22 -56 -19 0 11 190 l32
60
+ 202 -30 29 -29 30 -6 -33z"/>
61
+ <path d="M2073 2303 c3 -2 47 -11 98 -19 76 -13 105 -13 163 -3 39 7 67 13 61
62
+ 15 -18 5 -326 12 -322 7z"/>
63
+ <path d="M2 2278 c3 -7 18 -15 34 -20 l29 -7 -25 19 c-29 22 -43 25 -38 8z"/>
64
+ <path d="M194 2250 c-51 -20 -114 -125 -114 -189 0 -28 28 -96 37 -88 3 4 13
65
+ -3 21 -14 20 -29 82 -55 92 -38 5 7 14 -11 24 -45 9 -31 21 -56 26 -56 5 0 5
66
+ 12 -1 29 -6 16 -14 51 -18 78 -6 45 -8 48 -35 45 -19 -2 -26 1 -21 9 5 8 1 9
67
+ -15 4 -17 -5 -21 -4 -15 6 6 9 3 10 -11 5 -10 -4 -15 -4 -12 0 4 4 -2 18 -12
68
+ 32 -11 13 -20 31 -20 39 0 20 40 96 59 110 19 15 95 17 121 3 13 -7 21 -5 31
69
+ 6 11 14 10 18 -6 31 -19 13 -18 14 8 8 15 -4 27 -3 27 3 0 5 -26 14 -57 21
70
+ -65 13 -80 13 -109 1z m51 -20 c-3 -5 -15 -10 -25 -10 -10 0 -22 -4 -25 -10
71
+ -3 -5 -16 -15 -28 -21 -22 -11 -22 -11 -2 8 36 35 97 60 80 33z"/>
72
+ <path d="M564 2217 c-78 -57 -112 -98 -154 -182 -33 -66 -35 -76 -35 -165 1
73
+ -87 13 -140 33 -140 4 0 8 63 9 140 2 193 6 201 178 354 54 49 40 45 -31 -7z"/>
74
+ <path d="M2541 2236 c-51 -18 -49 -33 3 -32 38 1 45 4 49 24 5 25 -3 26 -52 8z"/>
75
+ <path d="M0 2210 c0 -5 5 -10 11 -10 5 0 7 5 4 10 -3 6 -8 10 -11 10 -2 0 -4
76
+ -4 -4 -10z"/>
77
+ <path d="M362 2181 c-35 -48 -37 -56 -22 -66 6 -4 18 11 26 32 9 21 21 41 26
78
+ 44 6 4 8 13 6 20 -3 9 -17 -3 -36 -30z"/>
79
+ <path d="M403 2182 c-13 -10 -24 -31 -26 -50 -2 -17 -7 -35 -10 -39 -4 -3 -7
80
+ -11 -7 -17 0 -6 5 -3 11 7 6 9 14 15 19 12 5 -3 11 -1 15 5 3 5 1 10 -4 10 -6
81
+ 0 -11 11 -11 25 0 14 5 25 10 25 6 0 9 -3 9 -7 -3 -21 2 -34 11 -28 6 4 8 11
82
+ 5 16 -4 5 -1 9 4 9 6 0 11 11 11 25 0 29 -7 31 -37 7z"/>
83
+ <path d="M2571 2161 c-11 -7 -11 -9 0 -14 9 -3 7 -6 -6 -6 -11 -1 -27 -6 -35
84
+ -11 -12 -8 -10 -10 10 -10 33 0 53 14 48 33 -2 11 -7 14 -17 8z"/>
85
+ <path d="M2496 2151 c-4 -5 3 -7 14 -4 23 6 26 13 6 13 -8 0 -17 -4 -20 -9z"/>
86
+ <path d="M0 2100 c0 -5 10 -10 23 -10 18 0 19 2 7 10 -19 13 -30 13 -30 0z"/>
87
+ <path d="M1795 2073 c-3 -21 -17 -83 -30 -138 -81 -342 -97 -407 -101 -419 -4
88
+ -10 13 -21 52 -35 60 -23 84 -22 84 3 0 12 113 486 136 572 5 18 -2 22 -55 37
89
+ -33 9 -65 17 -70 17 -5 0 -12 -17 -16 -37z"/>
90
+ <path d="M2557 2103 c-17 -4 -21 -25 -4 -24 4 1 14 1 22 1 8 0 15 7 15 15 0
91
+ 15 -2 16 -33 8z"/>
92
+ <path d="M2346 2065 l-60 -22 -51 -146 c-28 -80 -54 -149 -58 -154 -5 -4 -5
93
+ 63 -1 150 l7 157 -70 0 -70 0 -16 -72 c-9 -40 -41 -176 -71 -303 -30 -126 -52
94
+ -233 -50 -237 3 -4 31 -8 63 -8 l58 0 33 150 c18 83 36 150 40 150 3 0 4 -65
95
+ 2 -145 -4 -138 -4 -145 15 -145 15 0 30 29 78 161 32 88 63 163 68 166 9 5 8
96
+ -3 -14 -77 -20 -70 -56 -225 -53 -228 1 -2 17 4 34 14 20 12 34 31 40 54 19
97
+ 66 139 555 137 555 -1 1 -29 -9 -61 -20z"/>
98
+ <path d="M2570 2060 c-13 -8 -13 -10 2 -10 9 0 20 5 23 10 8 13 -5 13 -25 0z"/>
99
+ <path d="M2513 2027 c-29 -5 -53 -13 -53 -17 0 -8 90 6 123 20 20 8 20 9 2 8
100
+ -11 0 -44 -5 -72 -11z"/>
101
+ <path d="M2556 2001 c-4 -5 3 -7 14 -4 23 6 26 13 6 13 -8 0 -17 -4 -20 -9z"/>
102
+ <path d="M290 1953 c0 -49 33 -145 57 -165 15 -12 16 -10 9 12 -4 14 -10 44
103
+ -13 68 -3 23 -10 42 -14 42 -5 0 -9 6 -9 14 0 7 -7 27 -15 42 l-15 29 0 -42z"/>
104
+ <path d="M0 1950 c0 -5 5 -10 10 -10 6 0 10 5 10 10 0 6 -4 10 -10 10 -5 0
105
+ -10 -4 -10 -10z"/>
106
+ <path d="M2495 1943 c-65 -7 -64 -22 1 -17 45 3 54 2 39 -6 -16 -9 -14 -9 14
107
+ -5 18 3 37 5 42 5 5 0 9 7 9 15 0 15 -16 17 -105 8z"/>
108
+ <path d="M2433 1883 c9 -2 23 -2 30 0 6 3 -1 5 -18 5 -16 0 -22 -2 -12 -5z"/>
109
+ <path d="M2568 1863 c6 -2 18 -2 25 0 6 3 1 5 -13 5 -14 0 -19 -2 -12 -5z"/>
110
+ <path d="M2580 1839 c0 -23 -21 -29 -106 -29 -42 0 -73 -4 -70 -8 3 -5 46 -8
111
+ 97 -7 96 1 110 8 90 42 -9 16 -10 16 -11 2z"/>
112
+ <path d="M0 1799 c0 -26 3 -29 33 -28 23 1 26 3 10 6 -13 2 -23 11 -23 19 0
113
+ 10 14 14 57 14 72 0 66 6 -14 13 l-63 5 0 -29z"/>
114
+ <path d="M290 1799 c0 -15 33 -69 42 -69 12 0 10 10 -13 46 -22 36 -29 41 -29
115
+ 23z"/>
116
+ <path d="M2415 1770 c-3 -5 -1 -10 4 -10 6 0 11 5 11 10 0 6 -2 10 -4 10 -3 0
117
+ -8 -4 -11 -10z"/>
118
+ <path d="M2565 1770 c-3 -5 -16 -10 -28 -11 -20 -1 -20 -2 3 -9 44 -14 60 -11
119
+ 60 10 0 21 -24 28 -35 10z"/>
120
+ <path d="M7 1743 c7 -2 19 -2 26 0 6 3 1 5 -13 5 -14 0 -19 -2 -13 -5z"/>
121
+ <path d="M7 1723 c7 -2 19 -2 26 0 6 3 1 5 -13 5 -14 0 -19 -2 -13 -5z"/>
122
+ <path d="M2510 1720 c-44 -6 -44 -6 23 -11 49 -3 67 -1 67 9 0 13 -16 13 -90
123
+ 2z"/>
124
+ <path d="M398 1672 c27 -37 73 -82 84 -82 14 0 7 14 -36 64 -43 52 -82 66 -48
125
+ 18z"/>
126
+ <path d="M2528 1683 c12 -2 32 -2 45 0 12 2 2 4 -23 4 -25 0 -35 -2 -22 -4z"/>
127
+ <path d="M0 1670 c0 -13 20 -13 40 0 12 8 9 10 -12 10 -16 0 -28 -4 -28 -10z"/>
128
+ <path d="M2555 1660 c3 -5 15 -10 26 -10 10 0 19 5 19 10 0 6 -12 10 -26 10
129
+ -14 0 -23 -4 -19 -10z"/>
130
+ <path d="M1024 1639 c-12 -20 11 -27 30 -8 19 19 19 19 -2 19 -11 0 -24 -5
131
+ -28 -11z"/>
132
+ <path d="M2585 1630 c-3 -5 -1 -10 4 -10 6 0 11 5 11 10 0 6 -2 10 -4 10 -3 0
133
+ -8 -4 -11 -10z"/>
134
+ <path d="M1235 1594 c-33 -18 -72 -36 -87 -39 -15 -4 -30 -10 -33 -15 -6 -10
135
+ 22 -2 109 29 63 22 81 33 75 48 -2 6 -31 -5 -64 -23z"/>
136
+ <path d="M2455 1610 c55 -10 110 -21 123 -25 15 -5 22 -3 22 7 0 10 -27 17
137
+ -102 26 -143 17 -161 13 -43 -8z"/>
138
+ <path d="M38 1613 c-21 -2 -38 -9 -38 -14 0 -10 58 -3 95 12 l20 8 -20 -1
139
+ c-11 -1 -37 -3 -57 -5z"/>
140
+ <path d="M171 1606 c-10 -12 -5 -24 24 -63 20 -26 106 -142 191 -258 160 -218
141
+ 212 -287 230 -308 12 -14 121 -158 144 -191 8 -11 18 -22 23 -24 4 -2 7 -8 7
142
+ -14 0 -5 9 -23 20 -39 26 -36 46 -105 55 -188 4 -35 11 -77 15 -92 4 -15 4
143
+ -31 0 -35 -4 -5 -13 -31 -18 -59 -9 -41 -8 -52 3 -61 8 -6 15 -19 15 -28 0 -9
144
+ 5 -16 11 -16 15 0 2 -50 -18 -72 -15 -16 -15 -18 0 -18 8 0 24 -10 34 -23 25
145
+ -33 43 -24 36 19 -3 18 -1 39 4 46 6 7 14 35 18 62 l7 48 21 -19 c12 -11 30
146
+ -23 40 -26 15 -6 17 -14 11 -55 -6 -45 -4 -52 24 -83 17 -19 33 -31 37 -27 4
147
+ 4 15 40 24 81 l18 73 -50 12 c-72 17 -127 56 -165 117 -27 46 -34 68 -43 156
148
+ -11 115 -32 172 -82 229 -38 44 -54 64 -88 110 -90 123 -205 276 -211 280 -4
149
+ 3 -26 33 -48 65 -49 72 -93 134 -140 196 -19 26 -42 57 -50 69 -8 13 -26 37
150
+ -40 54 -54 66 -53 65 -40 81 7 8 8 15 2 15 -5 0 -15 -6 -21 -14z m780 -1294
151
+ c14 -6 10 -44 -11 -102 l-19 -55 -1 38 c0 26 4 36 12 31 7 -4 8 -3 4 4 -4 7
152
+ -14 12 -22 12 -9 0 -14 11 -14 33 0 25 -3 29 -11 17 -8 -12 -9 -10 -5 10 3 14
153
+ 6 40 6 59 l0 34 26 -39 c15 -21 30 -40 35 -42z"/>
154
+ <path d="M901 324 c0 -11 3 -14 6 -6 3 7 2 16 -1 19 -3 4 -6 -2 -5 -13z"/>
155
+ <path d="M1036 1591 c-3 -5 -4 -16 0 -24 7 -20 46 -9 42 12 -4 18 -33 27 -42
156
+ 12z"/>
157
+ <path d="M43 1583 c-24 -2 -43 -8 -43 -14 0 -13 49 -10 90 6 35 14 29 15 -47
158
+ 8z"/>
159
+ <path d="M465 1548 c16 -79 118 -263 175 -317 46 -44 137 -97 204 -120 105
160
+ -35 119 -23 26 25 -43 22 -77 37 -74 33 2 -4 0 -10 -5 -13 -5 -4 -29 12 -52
161
+ 34 -24 22 -47 40 -52 40 -4 0 -6 4 -3 9 3 5 -6 30 -20 56 -20 35 -29 44 -36
162
+ 33 -7 -9 -8 -8 -4 6 8 23 -16 62 -43 71 -20 6 -71 96 -71 125 0 17 -30 50 -44
163
+ 50 -4 0 -5 -15 -1 -32z m133 -186 c6 -18 -15 -14 -22 4 -4 10 -1 14 6 12 6 -2
164
+ 14 -10 16 -16z m16 -48 c5 -14 4 -15 -9 -4 -17 14 -19 20 -6 20 5 0 12 -7 15
165
+ -16z"/>
166
+ <path d="M2568 1543 c6 -2 18 -2 25 0 6 3 1 5 -13 5 -14 0 -19 -2 -12 -5z"/>
167
+ <path d="M570 1531 c0 -14 25 -20 113 -26 l82 -4 -75 14 c-41 8 -85 17 -97 20
168
+ -13 3 -23 1 -23 -4z"/>
169
+ <path d="M1038 1518 c-34 -9 -38 -13 -38 -41 0 -36 18 -74 22 -47 1 8 2 26 2
170
+ 40 1 15 10 29 24 36 20 10 41 25 31 23 -2 -1 -21 -6 -41 -11z"/>
171
+ <path d="M2567 1515 c-16 -11 -16 -13 -1 -19 25 -9 34 -7 34 8 0 22 -13 26
172
+ -33 11z"/>
173
+ <path d="M2336 1501 c5 -5 53 -18 107 -29 106 -21 143 -38 62 -29 l-50 6 42
174
+ -14 c73 -24 98 -23 101 3 3 18 -1 22 -25 22 -15 0 -35 5 -43 10 -11 7 -2 9 30
175
+ 5 40 -4 41 -4 15 5 -16 5 -43 7 -60 4 -16 -3 -63 2 -103 10 -86 19 -89 19 -76
176
+ 7z"/>
177
+ <path d="M5 1490 c-3 -5 -2 -10 4 -10 5 0 13 5 16 10 3 6 2 10 -4 10 -5 0 -13
178
+ -4 -16 -10z"/>
179
+ <path d="M38 1457 c-21 -6 -38 -15 -38 -20 0 -5 8 -6 18 -2 9 4 27 10 40 12
180
+ 12 3 25 9 28 14 6 10 2 10 -48 -4z"/>
181
+ <path d="M23 1423 c-15 -3 -23 -12 -23 -24 0 -16 5 -18 28 -13 36 9 40 14 11
182
+ 14 l-24 1 25 14 c25 15 23 16 -17 8z"/>
183
+ <path d="M2433 1394 c3 -3 42 -16 86 -29 63 -17 81 -20 81 -9 0 7 -16 16 -37
184
+ 19 -21 3 -57 10 -80 16 -49 11 -59 11 -50 3z"/>
185
+ <path d="M2295 1350 c-7 -11 -3 -12 135 -59 52 -18 109 -39 127 -47 17 -8 34
186
+ -14 37 -14 3 0 6 22 6 49 0 49 0 49 -27 42 -35 -9 -41 -29 -11 -40 15 -6 17
187
+ -10 7 -10 -9 -1 -33 6 -52 14 -20 8 -44 12 -53 8 -11 -4 -15 -2 -11 4 4 6 -5
188
+ 13 -21 16 -15 3 -50 14 -79 26 -32 12 -54 17 -58 11z"/>
189
+ <path d="M712 1320 c0 -14 2 -19 5 -12 2 6 2 18 0 25 -3 6 -5 1 -5 -13z"/>
190
+ <path d="M2520 1320 c-9 -6 -10 -10 -3 -10 6 0 15 5 18 10 8 12 4 12 -15 0z"/>
191
+ <path d="M42 1302 c-23 -9 -42 -22 -42 -30 0 -7 3 -12 8 -10 4 2 26 12 50 22
192
+ 23 10 42 22 42 27 0 12 -7 11 -58 -9z"/>
193
+ <path d="M2055 1254 c-148 -50 -192 -55 -153 -16 6 6 8 15 4 19 -4 5 -21 -7
194
+ -37 -26 -25 -30 -34 -34 -74 -33 -33 0 -48 -4 -52 -15 -7 -19 13 -32 40 -25
195
+ 16 4 19 2 14 -11 -13 -35 -78 -128 -92 -133 -8 -4 -15 -10 -15 -15 0 -4 7 -6
196
+ 15 -3 9 4 23 -3 34 -17 l18 -23 37 22 c23 13 46 20 60 16 14 -3 32 3 50 17 23
197
+ 18 32 20 47 11 25 -16 62 2 80 37 7 14 26 36 41 49 37 31 36 45 -2 30 -17 -8
198
+ -38 -28 -48 -48 -9 -19 -25 -36 -35 -38 -18 -4 -18 -2 -2 22 31 48 9 49 -35 3
199
+ -55 -59 -94 -66 -54 -9 8 12 12 27 9 32 -3 6 -29 -15 -57 -45 -53 -58 -78 -69
200
+ -78 -34 0 19 43 102 65 125 5 5 46 18 90 26 118 24 210 60 209 81 -1 9 4 17
201
+ 12 17 8 0 14 5 14 10 0 6 -1 10 -2 9 -2 -1 -48 -16 -103 -35z"/>
202
+ <path d="M1648 1212 c-13 -15 -41 -52 -60 -82 -36 -55 -50 -70 -98 -103 -59
203
+ -41 -73 -7 -21 50 27 30 27 31 8 46 -20 16 -29 15 -83 -9 -39 -17 -94 -78 -94
204
+ -103 0 -27 29 -34 58 -15 26 17 26 17 5 25 -29 11 -20 41 22 74 57 42 79 28
205
+ 41 -28 -16 -23 -22 -43 -19 -61 6 -30 17 -31 58 -6 72 46 69 45 62 11 -6 -30
206
+ 5 -42 18 -20 4 6 21 -7 42 -31 43 -50 80 -70 116 -63 28 5 27 6 -25 36 -78 44
207
+ -84 57 -38 78 36 16 56 42 44 60 -7 12 -57 12 -69 0 -6 -5 -21 -12 -34 -16
208
+ l-24 -7 23 33 c13 19 43 55 67 81 24 26 43 52 43 57 0 22 -18 19 -42 -7z m2
209
+ -157 c0 -14 -54 -55 -72 -55 -21 0 -4 33 25 50 39 24 47 25 47 5z"/>
210
+ <path d="M2260 1211 c0 -6 63 -41 75 -41 3 0 5 5 5 10 0 6 -6 10 -12 10 -7 0
211
+ -25 7 -40 14 -16 8 -28 11 -28 7z"/>
212
+ <path d="M2560 1200 c8 -5 22 -9 30 -9 10 0 8 3 -5 9 -27 12 -43 12 -25 0z"/>
213
+ <path d="M2563 1174 c16 -8 31 -13 35 -10 8 8 1 12 -33 20 l-30 6 28 -16z"/>
214
+ <path d="M2 1155 c0 -20 3 -23 19 -15 29 16 35 33 9 25 -15 -5 -20 -4 -16 4 4
215
+ 6 3 11 -2 11 -5 0 -10 -11 -10 -25z"/>
216
+ <path d="M90 1142 c-88 -44 -90 -46 -90 -69 0 -21 8 -27 28 -20 4 1 6 5 5 9
217
+ -2 4 4 5 12 2 9 -4 15 0 15 8 0 8 25 33 56 56 65 48 54 54 -26 14z"/>
218
+ <path d="M1202 1150 c0 -14 2 -19 5 -12 2 6 2 18 0 25 -3 6 -5 1 -5 -13z"/>
219
+ <path d="M2350 1167 c0 -6 168 -107 177 -107 4 0 19 -10 33 -21 l25 -20 -25 7
220
+ -25 7 25 -22 25 -21 -25 9 c-14 5 -51 21 -83 35 -65 29 -67 30 -67 16 0 -5 12
221
+ -12 28 -16 15 -4 55 -22 89 -40 34 -19 64 -34 67 -34 2 0 4 22 4 49 l-1 50
222
+ -61 27 c-34 15 -63 30 -66 34 -13 18 -120 59 -120 47z"/>
223
+ <path d="M1915 1141 c-6 -11 9 -23 19 -14 9 9 7 23 -3 23 -6 0 -12 -4 -16 -9z"/>
224
+ <path d="M2555 1140 c3 -5 15 -10 26 -10 11 0 17 5 14 10 -3 6 -15 10 -26 10
225
+ -11 0 -17 -4 -14 -10z"/>
226
+ <path d="M2560 1116 c0 -2 9 -6 20 -9 11 -3 18 -1 14 4 -5 9 -34 13 -34 5z"/>
227
+ <path d="M2390 1105 c0 -5 119 -65 129 -65 10 0 -56 39 -94 54 -19 8 -35 13
228
+ -35 11z"/>
229
+ <path d="M1186 1082 c-2 -4 -1 -14 5 -22 7 -12 9 -10 9 8 0 23 -5 28 -14 14z"/>
230
+ <path d="M106 1027 c-10 -7 -30 -22 -45 -35 -14 -13 -33 -21 -43 -19 -15 4
231
+ -17 -2 -16 -53 l2 -59 48 41 c55 45 71 65 39 49 -11 -7 -21 -9 -21 -5 0 3 -12
232
+ -1 -26 -11 -48 -31 -35 -8 23 40 32 27 62 52 68 57 14 12 -7 9 -29 -5z m-36
233
+ -91 c0 -2 -8 -10 -17 -17 -16 -13 -17 -12 -4 4 13 16 21 21 21 13z"/>
234
+ <path d="M2375 1027 c47 -32 116 -69 121 -64 3 2 -24 21 -60 41 -63 35 -99 49
235
+ -61 23z"/>
236
+ <path d="M18 1023 c-10 -2 -18 -9 -18 -14 0 -6 8 -5 20 1 11 6 20 13 20 15 0
237
+ 3 -1 4 -2 4 -2 -1 -11 -3 -20 -6z"/>
238
+ <path d="M1170 1020 c0 -5 5 -10 10 -10 6 0 10 5 10 10 0 6 -4 10 -10 10 -5 0
239
+ -10 -4 -10 -10z"/>
240
+ <path d="M2225 1010 c3 -5 8 -10 11 -10 2 0 4 5 4 10 0 6 -5 10 -11 10 -5 0
241
+ -7 -4 -4 -10z"/>
242
+ <path d="M230 994 c0 -6 -19 -22 -42 -37 -24 -15 -72 -55 -108 -87 -36 -33
243
+ -68 -60 -72 -60 -5 0 -8 -18 -8 -40 0 -22 2 -40 5 -40 10 0 124 124 119 129
244
+ -2 3 -27 -17 -54 -44 -27 -27 -52 -46 -55 -44 -5 6 72 81 174 172 30 26 51 50
245
+ 47 54 -3 3 -6 2 -6 -3z"/>
246
+ <path d="M1240 989 c0 -5 5 -7 10 -4 6 3 10 8 10 11 0 2 -4 4 -10 4 -5 0 -10
247
+ -5 -10 -11z"/>
248
+ <path d="M2260 987 c8 -8 80 -58 160 -110 80 -53 151 -102 159 -108 11 -10 13
249
+ -10 9 2 -3 8 -2 24 3 36 9 24 -2 37 -72 77 -42 24 -59 25 -59 5 0 -4 22 -21
250
+ 49 -39 59 -37 95 -74 46 -46 -34 19 -113 71 -205 134 -34 23 -72 47 -83 53
251
+ -20 10 -20 10 -7 -4z"/>
252
+ <path d="M1160 968 c0 -9 -3 -23 -6 -32 -3 -9 -2 -16 4 -16 14 0 23 43 12 54
253
+ -7 7 -10 4 -10 -6z"/>
254
+ <path d="M2460 946 c27 -26 127 -85 134 -79 3 3 -26 25 -65 49 -73 45 -94 54
255
+ -69 30z"/>
256
+ <path d="M2520 946 c0 -5 65 -46 74 -46 18 0 2 18 -29 33 -37 18 -45 20 -45
257
+ 13z"/>
258
+ <path d="M68 896 c-15 -13 -37 -31 -49 -40 -13 -8 -21 -18 -18 -21 3 -2 27 15
259
+ 55 40 27 24 47 44 44 44 -3 0 -17 -10 -32 -23z"/>
260
+ <path d="M2427 909 c7 -7 15 -10 18 -7 3 3 -2 9 -12 12 -14 6 -15 5 -6 -5z"/>
261
+ <path d="M1140 880 c0 -14 -13 -78 -29 -143 -16 -65 -24 -114 -19 -109 5 5 23
262
+ 62 39 126 22 85 27 120 20 133 -9 16 -10 15 -11 -7z"/>
263
+ <path d="M1260 890 c0 -5 5 -10 10 -10 6 0 10 5 10 10 0 6 -4 10 -10 10 -5 0
264
+ -10 -4 -10 -10z"/>
265
+ <path d="M2134 885 c-3 -8 -14 -17 -25 -20 -10 -4 -19 -13 -19 -21 0 -8 -7
266
+ -17 -15 -20 -8 -4 -15 -10 -15 -15 0 -4 7 -6 15 -3 10 4 15 0 15 -15 0 -13 6
267
+ -21 16 -21 13 0 15 7 9 36 -5 29 -2 40 14 56 12 10 21 23 21 28 0 15 -10 12
268
+ -16 -5z"/>
269
+ <path d="M2180 882 c0 -10 44 -43 80 -61 15 -8 8 3 -20 28 -45 40 -60 48 -60
270
+ 33z"/>
271
+ <path d="M2340 886 c0 -4 103 -82 167 -126 12 -8 35 -25 52 -38 31 -23 31 -23
272
+ 31 -2 0 14 -15 30 -47 50 -27 16 -54 34 -60 40 -7 6 -16 11 -20 11 -18 3 -40
273
+ 14 -68 34 -38 28 -55 37 -55 31z"/>
274
+ <path d="M2260 867 c0 -3 51 -45 113 -95 146 -117 158 -128 149 -137 -4 -5 -2
275
+ -5 5 -1 19 11 54 -16 47 -36 -3 -10 -1 -18 5 -18 6 0 11 16 11 35 0 29 -6 39
276
+ -30 53 -16 9 -30 20 -30 24 0 4 -7 4 -17 1 -11 -4 -14 -3 -9 5 4 7 1 12 -6 12
277
+ -8 0 -30 11 -49 25 -19 14 -45 33 -58 42 -14 10 -43 32 -65 48 -49 37 -66 48
278
+ -66 42z"/>
279
+ <path d="M1190 850 c0 -5 9 -12 21 -15 22 -7 51 -63 41 -80 -3 -5 2 -4 11 4
280
+ 15 12 15 15 2 34 -8 12 -15 30 -15 41 0 11 -3 17 -6 13 -3 -3 -17 -2 -30 3
281
+ -14 6 -24 6 -24 0z"/>
282
+ <path d="M2160 814 c0 -6 23 -30 52 -55 91 -77 234 -221 213 -214 -15 5 -12
283
+ -2 13 -27 39 -41 40 -50 5 -42 -37 9 -53 22 -46 40 3 10 -2 14 -18 14 -20 0
284
+ -21 2 -9 11 12 8 11 9 -6 4 -16 -4 -27 1 -42 22 -11 15 -24 25 -28 21 -3 -4
285
+ 34 -49 85 -99 50 -51 91 -97 91 -102 0 -8 49 -1 59 9 3 2 -11 17 -30 33 -19
286
+ 16 -30 33 -26 37 5 5 24 -8 42 -28 19 -20 43 -42 55 -48 18 -10 20 -8 20 23 0
287
+ 28 -8 40 -51 75 -29 23 -75 63 -104 89 -28 27 -80 73 -115 103 -35 30 -73 64
288
+ -85 75 -55 52 -75 68 -75 59z m295 -354 c8 -13 -5 -13 -25 0 -13 8 -13 10 2
289
+ 10 9 0 20 -4 23 -10z m29 -36 c5 -14 4 -15 -9 -4 -17 14 -19 20 -6 20 5 0 12
290
+ -7 15 -16z"/>
291
+ <path d="M63 738 c-62 -54 -73 -68 -50 -68 11 0 34 22 96 93 36 40 23 33 -46
292
+ -25z"/>
293
+ <path d="M102 692 c-56 -54 -102 -101 -102 -105 0 -5 10 -7 22 -5 14 2 30 18
294
+ 42 43 12 22 30 44 41 50 24 12 110 103 103 110 -2 2 -50 -40 -106 -93z"/>
295
+ <path d="M195 730 c-27 -27 -46 -52 -43 -55 3 -3 22 13 42 35 20 22 36 36 36
296
+ 32 0 -5 -13 -21 -30 -37 -29 -28 -38 -45 -22 -45 4 1 24 23 46 51 54 70 34 83
297
+ -29 19z m55 30 c0 -5 -5 -10 -11 -10 -5 0 -7 5 -4 10 3 6 8 10 11 10 2 0 4 -4
298
+ 4 -10z"/>
299
+ <path d="M2047 749 c4 -22 0 -38 -16 -59 -11 -16 -21 -44 -21 -63 0 -18 -6
300
+ -42 -14 -52 -12 -17 -12 -21 2 -31 19 -14 9 -44 -17 -51 -11 -3 -19 -14 -19
301
+ -26 0 -25 -82 -338 -106 -407 -21 -61 -21 -60 24 -60 35 0 40 3 46 28 4 15 36
302
+ 140 71 277 35 138 70 279 78 314 8 35 17 72 20 82 5 13 1 19 -10 19 -13 0 -16
303
+ 6 -11 24 4 17 1 26 -10 30 -24 9 -24 8 -17 -25z m28 -69 c9 -14 -13 -50 -30
304
+ -50 -18 0 -20 31 -3 48 15 15 25 15 33 2z m-15 -85 c0 -16 -27 -32 -37 -21 -7
305
+ 7 16 36 28 36 5 0 9 -7 9 -15z"/>
306
+ <path d="M1170 732 c0 -22 -4 -42 -10 -44 -5 -1 -11 -17 -13 -33 -2 -17 -6
307
+ -36 -10 -42 -4 -6 12 -28 35 -49 l42 -38 6 25 c4 13 10 41 13 62 5 32 3 38 -9
308
+ 33 -18 -7 -40 35 -31 58 8 19 36 21 41 4 19 -62 29 -64 19 -4 -4 25 -10 35
309
+ -19 32 -7 -3 -24 4 -38 15 l-26 20 0 -39z"/>
310
+ <path d="M1971 739 c-12 -16 -30 -29 -39 -27 -9 1 -29 -9 -43 -24 -19 -19 -34
311
+ -25 -50 -21 -21 4 -20 2 5 -11 28 -16 30 -15 51 4 45 42 80 14 49 -39 -23 -39
312
+ -42 -46 -65 -25 -11 10 -19 12 -19 7 0 -14 -56 -37 -69 -28 -14 8 -14 52 -1
313
+ 60 12 7 13 25 3 25 -5 0 -16 -12 -27 -26 -13 -19 -15 -29 -7 -37 14 -14 15
314
+ -67 1 -67 -5 0 -10 -4 -10 -10 0 -5 9 -10 20 -10 28 0 38 -45 15 -70 -10 -11
315
+ -28 -20 -41 -20 -17 0 -23 -6 -26 -27 -2 -20 -9 -29 -25 -31 -18 -3 -23 -13
316
+ -33 -75 -7 -40 -15 -81 -19 -92 -26 -69 -34 -94 -38 -122 -3 -18 -11 -38 -19
317
+ -44 -29 -24 -10 -29 114 -29 l129 0 1 33 c1 17 17 89 36 158 19 69 40 154 46
318
+ 190 7 35 21 81 32 102 14 28 18 48 13 73 -4 26 -1 43 15 69 14 23 17 36 9 40
319
+ -15 10 -4 63 18 87 9 10 12 18 6 18 -5 0 -19 -14 -32 -31z m-98 -185 c8 -8
320
+ -11 -57 -26 -66 -15 -9 -47 9 -47 29 0 28 54 56 73 37z m64 -19 c6 -18 -23
321
+ -55 -44 -55 -18 0 -17 35 3 54 20 20 33 20 41 1z m-67 -81 c0 -15 -22 -44 -35
322
+ -44 -21 0 -28 19 -15 35 12 14 50 21 50 9z m-80 -59 c0 -19 -36 -39 -45 -25
323
+ -8 13 13 40 31 40 8 0 14 -7 14 -15z"/>
324
+ <path d="M2140 752 c0 -12 60 -65 67 -58 3 2 -4 13 -14 23 -34 33 -53 46 -53
325
+ 35z"/>
326
+ <path d="M411 649 c-54 -93 -58 -104 -43 -115 13 -9 19 -9 24 -1 13 20 9 30
327
+ -7 17 -23 -19 -19 -10 40 95 31 54 54 100 51 102 -2 3 -32 -41 -65 -98z"/>
328
+ <path d="M895 718 c6 -15 114 -72 122 -64 3 3 -11 12 -31 20 -21 9 -50 25 -67
329
+ 36 -18 13 -27 16 -24 8z"/>
330
+ <path d="M245 666 c-64 -73 -76 -98 -57 -116 13 -11 17 -11 28 5 16 22 18 39
331
+ 4 30 -21 -13 -8 12 35 70 25 33 45 61 45 62 0 10 -14 -3 -55 -51z"/>
332
+ <path d="M47 672 c-32 -33 -36 -54 -6 -26 20 18 44 54 36 54 -2 0 -15 -13 -30
333
+ -28z"/>
334
+ <path d="M2131 693 c2 -7 41 -49 85 -95 45 -46 84 -93 88 -105 4 -12 16 -25
335
+ 27 -28 10 -4 17 -11 14 -16 -4 -5 -1 -9 5 -9 5 0 31 -20 57 -45 49 -48 63 -54
336
+ 63 -30 0 8 -4 15 -10 15 -5 0 -82 73 -171 163 -88 89 -159 157 -158 150z"/>
337
+ <path d="M210 665 c-13 -14 -21 -27 -18 -30 2 -3 14 9 27 25 26 37 23 39 -9 5z"/>
338
+ <path d="M295 580 c-48 -64 -65 -94 -58 -101 8 -8 13 -2 18 20 4 17 16 37 26
339
+ 45 31 21 102 126 86 126 -2 0 -34 -41 -72 -90z"/>
340
+ <path d="M105 630 c-42 -44 -13 -70 32 -28 23 22 33 12 11 -10 -9 -9 -9 -12
341
+ -1 -12 18 0 24 16 17 44 -9 36 -28 38 -59 6z m35 6 c0 -2 -8 -10 -17 -17 -16
342
+ -13 -17 -12 -4 4 13 16 21 21 21 13z"/>
343
+ <path d="M2435 618 c22 -18 62 -57 89 -85 27 -29 53 -53 57 -53 18 0 8 23 -18
344
+ 44 -15 11 -49 40 -75 63 -26 23 -58 47 -70 53 -13 6 -5 -4 17 -22z"/>
345
+ <path d="M2460 636 c0 -2 8 -10 18 -17 15 -13 16 -12 3 4 -13 16 -21 21 -21
346
+ 13z"/>
347
+ <path d="M473 562 c-18 -32 -46 -70 -62 -85 -17 -14 -37 -40 -46 -57 -16 -31
348
+ -32 -42 -21 -14 3 8 2 13 -3 9 -5 -3 -21 -1 -36 5 -20 8 -24 7 -18 -3 4 -6 6
349
+ -22 4 -35 -2 -22 -1 -23 20 -12 13 8 41 10 71 7 49 -6 55 -3 38 23 -8 12 -10
350
+ 12 -10 1 0 -8 -2 -12 -5 -9 -10 9 33 95 50 101 9 4 13 11 10 17 -3 5 -1 10 4
351
+ 10 6 0 11 5 11 11 0 6 7 26 16 45 28 58 10 47 -23 -14z"/>
352
+ <path d="M592 507 c-23 -56 -42 -107 -42 -113 0 -6 15 -17 33 -25 17 -7 35
353
+ -17 39 -23 4 -7 9 -5 11 4 3 8 19 59 37 113 18 54 30 100 28 103 -5 5 -68
354
+ -157 -68 -175 0 -6 -4 -11 -10 -11 -5 0 -7 7 -4 15 4 8 2 15 -4 15 -5 0 -13
355
+ -8 -16 -17 -5 -11 -10 -13 -17 -6 -7 7 1 43 26 113 19 57 34 105 32 106 -2 2
356
+ -22 -42 -45 -99z"/>
357
+ <path d="M985 602 c-42 -9 -38 -22 6 -24 24 -1 51 -2 59 -3 21 -1 101 -49 121
358
+ -71 21 -25 31 -67 39 -161 l2 -28 15 34 c10 24 13 49 8 79 -14 97 -155 195
359
+ -250 174z"/>
360
+ <path d="M1644 592 c-19 -6 -20 -8 -5 -24 15 -15 17 -15 28 8 12 25 11 26 -23
361
+ 16z"/>
362
+ <path d="M335 579 c-4 -6 -5 -12 -2 -15 2 -3 7 2 10 11 7 17 1 20 -8 4z"/>
363
+ <path d="M50 570 c0 -5 5 -10 10 -10 6 0 10 5 10 10 0 6 -4 10 -10 10 -5 0
364
+ -10 -4 -10 -10z"/>
365
+ <path d="M244 558 c-42 -48 -48 -58 -33 -58 8 0 24 18 36 40 25 46 24 49 -3
366
+ 18z"/>
367
+ <path d="M2196 537 c22 -24 41 -42 43 -41 6 5 -62 84 -72 84 -5 0 8 -19 29
368
+ -43z"/>
369
+ <path d="M502 536 c-12 -20 -17 -38 -12 -41 9 -6 44 64 36 72 -2 2 -13 -12
370
+ -24 -31z"/>
371
+ <path d="M2576 537 c3 -10 9 -15 12 -12 3 3 0 11 -7 18 -10 9 -11 8 -5 -6z"/>
372
+ <path d="M1638 521 c-16 -19 -16 -20 3 -26 26 -9 31 -3 21 24 -7 21 -8 21 -24
373
+ 2z"/>
374
+ <path d="M2090 531 c0 -9 57 -71 66 -71 3 0 -9 18 -26 40 -32 41 -40 47 -40
375
+ 31z"/>
376
+ <path d="M797 524 c-4 -4 -7 -17 -7 -28 1 -19 1 -20 11 -3 11 19 8 43 -4 31z"/>
377
+ <path d="M1547 502 c2 -10 -7 -53 -22 -95 -25 -77 -74 -253 -81 -292 -3 -21
378
+ -17 -69 -29 -98 -7 -16 -1 -18 66 -15 l74 3 7 55 c7 56 18 105 38 175 23 79
379
+ 24 96 6 89 -22 -9 -46 13 -46 43 0 23 2 24 40 18 31 -5 40 -4 40 8 0 10 -8 13
380
+ -25 9 -14 -2 -32 1 -40 8 -19 16 -19 54 0 70 13 11 13 14 -2 26 -25 18 -32 17
381
+ -26 -4z m38 -216 c7 -29 6 -41 -2 -43 -7 -3 -15 -20 -19 -38 -7 -39 -51 -129
382
+ -57 -118 -14 26 -16 67 -3 98 14 34 32 122 28 138 -1 5 8 7 20 5 17 -2 25 -13
383
+ 33 -42z"/>
384
+ <path d="M1709 503 c-9 -2 -21 -19 -26 -38 -9 -29 -8 -34 9 -38 16 -5 19 -2
385
+ 14 16 -3 14 2 29 16 44 21 23 19 25 -13 16z"/>
386
+ <path d="M676 426 c-11 -31 -17 -59 -14 -62 7 -7 41 92 36 107 -2 6 -12 -15
387
+ -22 -45z"/>
388
+ <path d="M457 440 c-9 -16 -11 -32 -7 -35 8 -5 40 44 40 60 0 16 -21 1 -33
389
+ -25z"/>
390
+ <path d="M776 455 c-13 -34 -36 -148 -31 -153 3 -3 5 -2 5 3 0 4 9 0 20 -10
391
+ 11 -10 20 -16 21 -14 0 2 2 12 4 22 2 9 -1 17 -6 17 -5 0 -9 -5 -9 -12 0 -8
392
+ -3 -9 -10 -2 -8 8 -6 33 5 83 16 66 16 104 1 66z"/>
393
+ <path d="M2260 461 c0 -5 5 -13 10 -16 6 -3 10 -2 10 4 0 5 -4 13 -10 16 -5 3
394
+ -10 2 -10 -4z"/>
395
+ <path d="M2315 440 c10 -11 20 -20 23 -20 3 0 -3 9 -13 20 -10 11 -20 20 -23
396
+ 20 -3 0 3 -9 13 -20z"/>
397
+ <path d="M497 436 c-4 -10 -5 -21 -2 -24 9 -9 17 6 13 25 -3 17 -4 17 -11 -1z"/>
398
+ <path d="M2171 433 c78 -102 122 -143 136 -129 4 3 -2 15 -12 26 -12 13 -21
399
+ 17 -25 10 -4 -7 -13 -2 -22 12 -9 13 -27 37 -42 53 -14 17 -26 33 -26 38 0 4
400
+ -5 7 -11 7 -8 0 -7 -6 2 -17z"/>
401
+ <path d="M2060 433 c0 -6 8 -21 18 -34 10 -13 29 -41 41 -61 20 -34 21 -37 4
402
+ -31 -16 6 -16 5 -4 -10 8 -10 11 -21 7 -25 -8 -7 -40 27 -49 51 -2 6 -7 9 -11
403
+ 6 -3 -3 5 -27 20 -52 33 -60 13 -62 -22 -2 -14 25 -30 42 -35 39 -5 -3 -5 -13
404
+ 1 -24 14 -25 13 -30 -5 -24 -8 4 -15 2 -15 -3 0 -13 38 -47 53 -49 7 0 17 -2
405
+ 24 -2 7 -1 21 -11 31 -23 l20 -20 24 24 c24 24 24 25 7 48 -11 14 -18 38 -17
406
+ 56 1 23 -8 44 -37 80 -54 67 -55 69 -55 56z"/>
407
+ <path d="M2229 423 c5 -10 22 -29 37 -43 26 -23 25 -22 -5 18 -34 43 -49 55
408
+ -32 25z"/>
409
+ <path d="M2290 436 c0 -5 12 -25 27 -45 16 -20 26 -42 25 -50 -2 -7 1 -10 7
410
+ -6 7 3 8 0 5 -9 -8 -21 -12 -20 -35 7 -10 12 -18 18 -18 12 0 -14 59 -78 66
411
+ -71 3 3 1 12 -6 20 -9 11 -8 15 4 20 8 3 15 12 15 21 0 8 5 15 11 15 5 0 7 5
412
+ 3 11 -4 8 -9 7 -15 -2 -7 -11 -14 -8 -29 13 -39 50 -59 73 -60 64z"/>
413
+ <path d="M2170 395 c14 -16 26 -32 28 -34 1 -2 4 -2 7 1 3 2 -10 18 -28 34
414
+ l-32 29 25 -30z"/>
415
+ <path d="M2305 370 c10 -11 20 -20 23 -20 3 0 -3 9 -13 20 -10 11 -20 20 -23
416
+ 20 -3 0 3 -9 13 -20z"/>
417
+ <path d="M455 361 c-6 -11 9 -23 19 -14 9 9 7 23 -3 23 -6 0 -12 -4 -16 -9z"/>
418
+ <path d="M492 350 c-14 -23 -16 -40 -3 -40 9 0 25 49 19 56 -2 2 -9 -6 -16
419
+ -16z"/>
420
+ <path d="M518 327 c-19 -44 -23 -77 -10 -77 19 1 29 18 29 50 -1 19 3 43 7 53
421
+ 5 9 4 17 0 17 -5 0 -17 -19 -26 -43z"/>
422
+ <path d="M2496 351 c-12 -14 -14 -21 -6 -26 7 -4 10 -22 8 -41 -2 -19 -2 -33
423
+ 1 -31 4 2 24 12 47 22 34 16 41 24 42 49 0 17 -5 34 -11 38 -22 14 -64 8 -81
424
+ -11z"/>
425
+ <path d="M808 330 c-3 -17 -1 -33 4 -36 4 -3 8 1 8 8 0 7 3 23 6 36 4 12 2 22
426
+ -4 22 -5 0 -12 -14 -14 -30z"/>
427
+ <path d="M647 343 c-4 -3 -7 -14 -7 -24 0 -10 -5 -30 -12 -44 -10 -22 -17 -26
428
+ -39 -21 -42 8 -54 -14 -19 -36 29 -17 60 -15 60 3 0 5 10 9 22 9 12 0 19 3 16
429
+ 6 -4 3 -2 19 2 35 8 28 -3 42 -14 17 -3 -7 -3 4 0 25 6 36 4 44 -9 30z"/>
430
+ <path d="M2184 318 c-3 -4 -2 -12 1 -18 3 -5 1 -10 -6 -10 -9 0 -10 -3 -2 -11
431
+ 14 -14 55 10 49 28 -3 8 1 10 12 6 10 -4 14 -2 9 3 -11 11 -57 13 -63 2z"/>
432
+ <path d="M718 283 c-10 -3 -18 -8 -18 -13 0 -5 -3 -15 -6 -23 -3 -9 3 -16 16
433
+ -20 16 -4 23 1 31 20 11 29 3 42 -23 36z"/>
434
+ <path d="M2232 268 c-21 -26 -17 -41 13 -45 17 -2 40 -11 52 -18 32 -21 40 1
435
+ 12 31 -12 13 -19 27 -16 31 4 3 14 -2 22 -13 8 -10 15 -14 15 -8 0 16 -21 30
436
+ -47 32 -16 0 -20 -4 -17 -16 5 -15 4 -15 -9 1 -11 14 -17 15 -25 5z"/>
437
+ <path d="M982 240 c0 -14 2 -19 5 -12 2 6 2 18 0 25 -3 6 -5 1 -5 -13z"/>
438
+ <path d="M1402 218 c-12 -45 -7 -63 8 -38 9 14 14 80 6 80 -2 0 -8 -19 -14
439
+ -42z"/>
440
+ <path d="M2180 240 c0 -5 5 -10 11 -10 5 0 7 5 4 10 -3 6 -8 10 -11 10 -2 0
441
+ -4 -4 -4 -10z"/>
442
+ <path d="M2350 233 c1 -25 29 -58 68 -78 19 -9 35 -15 37 -13 2 2 5 19 7 38 1
443
+ 19 8 39 13 43 6 5 2 6 -8 3 -10 -3 -27 -6 -38 -6 -17 0 -18 -3 -9 -22 7 -14
444
+ -2 -8 -22 15 -36 41 -48 46 -48 20z"/>
445
+ <path d="M2334 176 c-8 -22 1 -30 21 -19 15 9 15 11 1 22 -13 11 -17 10 -22
446
+ -3z"/>
447
+ <path d="M1386 149 c-18 -52 -46 -139 -46 -144 0 -3 8 -5 19 -5 15 0 20 13 30
448
+ 76 7 42 10 78 7 81 -3 3 -8 0 -10 -8z"/>
449
+ </g>
450
+ </svg>
@@ -0,0 +1,12 @@
1
+ /**
2
+ * equalize.js
3
+ * Author & copyright (c) 2012: Tim Svensen
4
+ * Dual MIT & GPL license
5
+ *
6
+ * Page: http://tsvensen.github.com/equalize.js
7
+ * Repo: https://github.com/tsvensen/equalize.js/
8
+ */
9
+ !function(t){t.fn.equalize=function(e){var i,s,n=!1,r=!1;return t.isPlainObject(e)?(i=e.equalize||"height",n=e.children||!1,r=e.reset||!1):i=e||"height",t.isFunction(t.fn[i])?(s=0<i.indexOf("eight")?"height":"width",this.each(function(){var e=n?t(this).find(n):t(this).children(),a=0;e.each(function(){var e=t(this);r&&e.css(s,""),e=e[i](),e>a&&(a=e)}),e.css(s,a+"px")})):!1}}(jQuery),/*! jQuery Validation Plugin - v1.10.0 - 9/7/2012
10
+ * https://github.com/jzaefferer/jquery-validation
11
+ * Copyright (c) 2012 Jörn Zaefferer; Licensed MIT, GPL */
12
+ function(t){t.extend(t.fn,{validate:function(e){if(!this.length)return void(e&&e.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing"));var i=t.data(this[0],"validator");return i?i:(this.attr("novalidate","novalidate"),i=new t.validator(e,this[0]),t.data(this[0],"validator",i),i.settings.onsubmit&&(this.validateDelegate(":submit","click",function(e){i.settings.submitHandler&&(i.submitButton=e.target),t(e.target).hasClass("cancel")&&(i.cancelSubmit=!0)}),this.submit(function(e){function s(){var s;return i.settings.submitHandler?(i.submitButton&&(s=t("<input type='hidden'/>").attr("name",i.submitButton.name).val(i.submitButton.value).appendTo(i.currentForm)),i.settings.submitHandler.call(i,i.currentForm,e),i.submitButton&&s.remove(),!1):!0}return i.settings.debug&&e.preventDefault(),i.cancelSubmit?(i.cancelSubmit=!1,s()):i.form()?i.pendingRequest?(i.formSubmitted=!0,!1):s():(i.focusInvalid(),!1)})),i)},valid:function(){if(t(this[0]).is("form"))return this.validate().form();var e=!0,i=t(this[0].form).validate();return this.each(function(){e&=i.element(this)}),e},removeAttrs:function(e){var i={},s=this;return t.each(e.split(/\s/),function(t,e){i[e]=s.attr(e),s.removeAttr(e)}),i},rules:function(e,i){var s=this[0];if(e){var n=t.data(s.form,"validator").settings,r=n.rules,a=t.validator.staticRules(s);switch(e){case"add":t.extend(a,t.validator.normalizeRule(i)),r[s.name]=a,i.messages&&(n.messages[s.name]=t.extend(n.messages[s.name],i.messages));break;case"remove":if(!i)return delete r[s.name],a;var u={};return t.each(i.split(/\s/),function(t,e){u[e]=a[e],delete a[e]}),u}}var o=t.validator.normalizeRules(t.extend({},t.validator.metadataRules(s),t.validator.classRules(s),t.validator.attributeRules(s),t.validator.staticRules(s)),s);if(o.required){var l=o.required;delete o.required,o=t.extend({required:l},o)}return o}}),t.extend(t.expr[":"],{blank:function(e){return!t.trim(""+e.value)},filled:function(e){return!!t.trim(""+e.value)},unchecked:function(t){return!t.checked}}),t.validator=function(e,i){this.settings=t.extend(!0,{},t.validator.defaults,e),this.currentForm=i,this.init()},t.validator.format=function(e,i){return 1===arguments.length?function(){var i=t.makeArray(arguments);return i.unshift(e),t.validator.format.apply(this,i)}:(arguments.length>2&&i.constructor!==Array&&(i=t.makeArray(arguments).slice(1)),i.constructor!==Array&&(i=[i]),t.each(i,function(t,i){e=e.replace(new RegExp("\\{"+t+"\\}","g"),i)}),e)},t.extend(t.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:!0,errorContainer:t([]),errorLabelContainer:t([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(t,e){this.lastActive=t,this.settings.focusCleanup&&!this.blockFocusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,t,this.settings.errorClass,this.settings.validClass),this.addWrapper(this.errorsFor(t)).hide())},onfocusout:function(t,e){!this.checkable(t)&&(t.name in this.submitted||!this.optional(t))&&this.element(t)},onkeyup:function(t,e){(9!==e.which||""!==this.elementValue(t))&&(t.name in this.submitted||t===this.lastActive)&&this.element(t)},onclick:function(t,e){t.name in this.submitted?this.element(t):t.parentNode.name in this.submitted&&this.element(t.parentNode)},highlight:function(e,i,s){"radio"===e.type?this.findByName(e.name).addClass(i).removeClass(s):t(e).addClass(i).removeClass(s)},unhighlight:function(e,i,s){"radio"===e.type?this.findByName(e.name).removeClass(i).addClass(s):t(e).removeClass(i).addClass(s)}},setDefaults:function(e){t.extend(t.validator.defaults,e)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",maxlength:t.validator.format("Please enter no more than {0} characters."),minlength:t.validator.format("Please enter at least {0} characters."),rangelength:t.validator.format("Please enter a value between {0} and {1} characters long."),range:t.validator.format("Please enter a value between {0} and {1}."),max:t.validator.format("Please enter a value less than or equal to {0}."),min:t.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:!1,prototype:{init:function(){function e(e){var i=t.data(this[0].form,"validator"),s="on"+e.type.replace(/^validate/,"");i.settings[s]&&i.settings[s].call(i,this[0],e)}this.labelContainer=t(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||t(this.currentForm),this.containers=t(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var i=this.groups={};t.each(this.settings.groups,function(e,s){t.each(s.split(/\s/),function(t,s){i[s]=e})});var s=this.settings.rules;t.each(s,function(e,i){s[e]=t.validator.normalizeRule(i)}),t(this.currentForm).validateDelegate(":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'] ","focusin focusout keyup",e).validateDelegate("[type='radio'], [type='checkbox'], select, option","click",e),this.settings.invalidHandler&&t(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler)},form:function(){return this.checkForm(),t.extend(this.submitted,this.errorMap),this.invalid=t.extend({},this.errorMap),this.valid()||t(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var t=0,e=this.currentElements=this.elements();e[t];t++)this.check(e[t]);return this.valid()},element:function(e){e=this.validationTargetFor(this.clean(e)),this.lastElement=e,this.prepareElement(e),this.currentElements=t(e);var i=this.check(e)!==!1;return i?delete this.invalid[e.name]:this.invalid[e.name]=!0,this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),i},showErrors:function(e){if(e){t.extend(this.errorMap,e),this.errorList=[];for(var i in e)this.errorList.push({message:e[i],element:this.findByName(i)[0]});this.successList=t.grep(this.successList,function(t){return!(t.name in e)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){t.fn.resetForm&&t(this.currentForm).resetForm(),this.submitted={},this.lastElement=null,this.prepareForm(),this.hideErrors(),this.elements().removeClass(this.settings.errorClass).removeData("previousValue")},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(t){var e=0;for(var i in t)e++;return e},hideErrors:function(){this.addWrapper(this.toHide).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{t(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(e){}},findLastActive:function(){var e=this.lastActive;return e&&1===t.grep(this.errorList,function(t){return t.element.name===e.name}).length&&e},elements:function(){var e=this,i={};return t(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){return!this.name&&e.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.name in i||!e.objectLength(t(this).rules())?!1:(i[this.name]=!0,!0)})},clean:function(e){return t(e)[0]},errors:function(){var e=this.settings.errorClass.replace(" ",".");return t(this.settings.errorElement+"."+e,this.errorContext)},reset:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=t([]),this.toHide=t([]),this.currentElements=t([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(t){this.reset(),this.toHide=this.errorsFor(t)},elementValue:function(e){var i=t(e).attr("type"),s=t(e).val();return"radio"===i||"checkbox"===i?t('input[name="'+t(e).attr("name")+'"]:checked').val():"string"==typeof s?s.replace(/\r/g,""):s},check:function(e){e=this.validationTargetFor(this.clean(e));var i,s=t(e).rules(),n=!1,r=this.elementValue(e);for(var a in s){var u={method:a,parameters:s[a]};try{if(i=t.validator.methods[a].call(this,r,e,u.parameters),"dependency-mismatch"===i){n=!0;continue}if(n=!1,"pending"===i)return void(this.toHide=this.toHide.not(this.errorsFor(e)));if(!i)return this.formatAndAdd(e,u),!1}catch(o){throw this.settings.debug&&window.console&&console.log("exception occured when checking element "+e.id+", check the '"+u.method+"' method",o),o}}if(!n)return this.objectLength(s)&&this.successList.push(e),!0},customMetaMessage:function(e,i){if(t.metadata){var s=this.settings.meta?t(e).metadata()[this.settings.meta]:t(e).metadata();return s&&s.messages&&s.messages[i]}},customDataMessage:function(e,i){return t(e).data("msg-"+i.toLowerCase())||e.attributes&&t(e).attr("data-msg-"+i.toLowerCase())},customMessage:function(t,e){var i=this.settings.messages[t];return i&&(i.constructor===String?i:i[e])},findDefined:function(){for(var t=0;t<arguments.length;t++)if(void 0!==arguments[t])return arguments[t];return void 0},defaultMessage:function(e,i){return this.findDefined(this.customMessage(e.name,i),this.customDataMessage(e,i),this.customMetaMessage(e,i),!this.settings.ignoreTitle&&e.title||void 0,t.validator.messages[i],"<strong>Warning: No message defined for "+e.name+"</strong>")},formatAndAdd:function(e,i){var s=this.defaultMessage(e,i.method),n=/\$?\{(\d+)\}/g;"function"==typeof s?s=s.call(this,i.parameters,e):n.test(s)&&(s=t.validator.format(s.replace(n,"{$1}"),i.parameters)),this.errorList.push({message:s,element:e}),this.errorMap[e.name]=s,this.submitted[e.name]=s},addWrapper:function(t){return this.settings.wrapper&&(t=t.add(t.parent(this.settings.wrapper))),t},defaultShowErrors:function(){var t,e;for(t=0;this.errorList[t];t++){var i=this.errorList[t];this.settings.highlight&&this.settings.highlight.call(this,i.element,this.settings.errorClass,this.settings.validClass),this.showLabel(i.element,i.message)}if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(t=0;this.successList[t];t++)this.showLabel(this.successList[t]);if(this.settings.unhighlight)for(t=0,e=this.validElements();e[t];t++)this.settings.unhighlight.call(this,e[t],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return t(this.errorList).map(function(){return this.element})},showLabel:function(e,i){var s=this.errorsFor(e);s.length?(s.removeClass(this.settings.validClass).addClass(this.settings.errorClass),s.attr("generated")&&s.html(i)):(s=t("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(e),generated:!0}).addClass(this.settings.errorClass).html(i||""),this.settings.wrapper&&(s=s.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.append(s).length||(this.settings.errorPlacement?this.settings.errorPlacement(s,t(e)):s.insertAfter(e))),!i&&this.settings.success&&(s.text(""),"string"==typeof this.settings.success?s.addClass(this.settings.success):this.settings.success(s,e)),this.toShow=this.toShow.add(s)},errorsFor:function(e){var i=this.idOrName(e);return this.errors().filter(function(){return t(this).attr("for")===i})},idOrName:function(t){return this.groups[t.name]||(this.checkable(t)?t.name:t.id||t.name)},validationTargetFor:function(t){return this.checkable(t)&&(t=this.findByName(t.name).not(this.settings.ignore)[0]),t},checkable:function(t){return/radio|checkbox/i.test(t.type)},findByName:function(e){return t(this.currentForm).find('[name="'+e+'"]')},getLength:function(e,i){switch(i.nodeName.toLowerCase()){case"select":return t("option:selected",i).length;case"input":if(this.checkable(i))return this.findByName(i.name).filter(":checked").length}return e.length},depend:function(t,e){return this.dependTypes[typeof t]?this.dependTypes[typeof t](t,e):!0},dependTypes:{"boolean":function(t,e){return t},string:function(e,i){return!!t(e,i.form).length},"function":function(t,e){return t(e)}},optional:function(e){var i=this.elementValue(e);return!t.validator.methods.required.call(this,i,e)&&"dependency-mismatch"},startRequest:function(t){this.pending[t.name]||(this.pendingRequest++,this.pending[t.name]=!0)},stopRequest:function(e,i){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[e.name],i&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(t(this.currentForm).submit(),this.formSubmitted=!1):!i&&0===this.pendingRequest&&this.formSubmitted&&(t(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(e){return t.data(e,"previousValue")||t.data(e,"previousValue",{old:null,valid:!0,message:this.defaultMessage(e,"remote")})}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(e,i){e.constructor===String?this.classRuleSettings[e]=i:t.extend(this.classRuleSettings,e)},classRules:function(e){var i={},s=t(e).attr("class");return s&&t.each(s.split(" "),function(){this in t.validator.classRuleSettings&&t.extend(i,t.validator.classRuleSettings[this])}),i},attributeRules:function(e){var i={},s=t(e);for(var n in t.validator.methods){var r;"required"===n?(r=s.get(0).getAttribute(n),""===r&&(r=!0),r=!!r):r=s.attr(n),r?i[n]=r:s[0].getAttribute("type")===n&&(i[n]=!0)}return i.maxlength&&/-1|2147483647|524288/.test(i.maxlength)&&delete i.maxlength,i},metadataRules:function(e){if(!t.metadata)return{};var i=t.data(e.form,"validator").settings.meta;return i?t(e).metadata()[i]:t(e).metadata()},staticRules:function(e){var i={},s=t.data(e.form,"validator");return s.settings.rules&&(i=t.validator.normalizeRule(s.settings.rules[e.name])||{}),i},normalizeRules:function(e,i){return t.each(e,function(s,n){if(n===!1)return void delete e[s];if(n.param||n.depends){var r=!0;switch(typeof n.depends){case"string":r=!!t(n.depends,i.form).length;break;case"function":r=n.depends.call(i,i)}r?e[s]=void 0!==n.param?n.param:!0:delete e[s]}}),t.each(e,function(s,n){e[s]=t.isFunction(n)?n(i):n}),t.each(["minlength","maxlength","min","max"],function(){e[this]&&(e[this]=Number(e[this]))}),t.each(["rangelength","range"],function(){e[this]&&(e[this]=[Number(e[this][0]),Number(e[this][1])])}),t.validator.autoCreateRanges&&(e.min&&e.max&&(e.range=[e.min,e.max],delete e.min,delete e.max),e.minlength&&e.maxlength&&(e.rangelength=[e.minlength,e.maxlength],delete e.minlength,delete e.maxlength)),e.messages&&delete e.messages,e},normalizeRule:function(e){if("string"==typeof e){var i={};t.each(e.split(/\s/),function(){i[this]=!0}),e=i}return e},addMethod:function(e,i,s){t.validator.methods[e]=i,t.validator.messages[e]=void 0!==s?s:t.validator.messages[e],i.length<3&&t.validator.addClassRules(e,t.validator.normalizeRule(e))},methods:{required:function(e,i,s){if(!this.depend(s,i))return"dependency-mismatch";if("select"===i.nodeName.toLowerCase()){var n=t(i).val();return n&&n.length>0}return this.checkable(i)?this.getLength(e,i)>0:t.trim(e).length>0},remote:function(e,i,s){if(this.optional(i))return"dependency-mismatch";var n=this.previousValue(i);if(this.settings.messages[i.name]||(this.settings.messages[i.name]={}),n.originalMessage=this.settings.messages[i.name].remote,this.settings.messages[i.name].remote=n.message,s="string"==typeof s&&{url:s}||s,this.pending[i.name])return"pending";if(n.old===e)return n.valid;n.old=e;var r=this;this.startRequest(i);var a={};return a[i.name]=e,t.ajax(t.extend(!0,{url:s,mode:"abort",port:"validate"+i.name,dataType:"json",data:a,success:function(s){r.settings.messages[i.name].remote=n.originalMessage;var a=s===!0||"true"===s;if(a){var u=r.formSubmitted;r.prepareElement(i),r.formSubmitted=u,r.successList.push(i),delete r.invalid[i.name],r.showErrors()}else{var o={},l=s||r.defaultMessage(i,"remote");o[i.name]=n.message=t.isFunction(l)?l(e):l,r.invalid[i.name]=!0,r.showErrors(o)}n.valid=a,r.stopRequest(i,a)}},s)),"pending"},minlength:function(e,i,s){var n=t.isArray(e)?e.length:this.getLength(t.trim(e),i);return this.optional(i)||n>=s},maxlength:function(e,i,s){var n=t.isArray(e)?e.length:this.getLength(t.trim(e),i);return this.optional(i)||s>=n},rangelength:function(e,i,s){var n=t.isArray(e)?e.length:this.getLength(t.trim(e),i);return this.optional(i)||n>=s[0]&&n<=s[1]},min:function(t,e,i){return this.optional(e)||t>=i},max:function(t,e,i){return this.optional(e)||i>=t},range:function(t,e,i){return this.optional(e)||t>=i[0]&&t<=i[1]},email:function(t,e){return this.optional(e)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(t)},url:function(t,e){return this.optional(e)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(t)},date:function(t,e){return this.optional(e)||!/Invalid|NaN/.test(new Date(t))},dateISO:function(t,e){return this.optional(e)||/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/.test(t)},number:function(t,e){return this.optional(e)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(t)},digits:function(t,e){return this.optional(e)||/^\d+$/.test(t)},creditcard:function(t,e){if(this.optional(e))return"dependency-mismatch";if(/[^0-9 \-]+/.test(t))return!1;var i=0,s=0,n=!1;t=t.replace(/\D/g,"");for(var r=t.length-1;r>=0;r--){var a=t.charAt(r);s=parseInt(a,10),n&&(s*=2)>9&&(s-=9),i+=s,n=!n}return i%10===0},equalTo:function(e,i,s){var n=t(s);return this.settings.onfocusout&&n.unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){t(i).valid()}),e===n.val()}}}),t.format=t.validator.format}(jQuery),function(t){var e={};if(t.ajaxPrefilter)t.ajaxPrefilter(function(t,i,s){var n=t.port;"abort"===t.mode&&(e[n]&&e[n].abort(),e[n]=s)});else{var i=t.ajax;t.ajax=function(s){var n=("mode"in s?s:t.ajaxSettings).mode,r=("port"in s?s:t.ajaxSettings).port;return"abort"===n?(e[r]&&e[r].abort(),e[r]=i.apply(this,arguments)):i.apply(this,arguments)}}}(jQuery),function(t){!jQuery.event.special.focusin&&!jQuery.event.special.focusout&&document.addEventListener&&t.each({focus:"focusin",blur:"focusout"},function(e,i){function s(e){return e=t.event.fix(e),e.type=i,t.event.handle.call(this,e)}t.event.special[i]={setup:function(){this.addEventListener(e,s,!0)},teardown:function(){this.removeEventListener(e,s,!0)},handler:function(e){var s=arguments;return s[0]=t.event.fix(e),s[0].type=i,t.event.handle.apply(this,s)}}}),t.extend(t.fn,{validateDelegate:function(e,i,s){return this.bind(i,function(i){var n=t(i.target);return n.is(e)?s.apply(n,arguments):void 0})}})}(jQuery),jQuery.includeScript=function(t,e){return e=jQuery.extend(e||{},{dataType:"script",cache:!0,url:t}),jQuery.ajax(e)},$(function(){var t={highlight:function(t){$(t).closest(".form-group").addClass("has-error")},success:function(t){$(t).addClass("valid").closest(".form-group").removeClass("has-error")}};$("form.validate").each(function(){$(this).validate(t)}),$("form.mark-required").each(function(){$(".required").closest(".form-group").find(".control-label").append(' <span class="text-danger">*</span>')})}),$(function(){});
@@ -0,0 +1,12 @@
1
+ /**
2
+ * equalize.js
3
+ * Author & copyright (c) 2012: Tim Svensen
4
+ * Dual MIT & GPL license
5
+ *
6
+ * Page: http://tsvensen.github.com/equalize.js
7
+ * Repo: https://github.com/tsvensen/equalize.js/
8
+ */
9
+ !function(t){t.fn.equalize=function(e){var i,s,n=!1,r=!1;return t.isPlainObject(e)?(i=e.equalize||"height",n=e.children||!1,r=e.reset||!1):i=e||"height",t.isFunction(t.fn[i])?(s=0<i.indexOf("eight")?"height":"width",this.each(function(){var e=n?t(this).find(n):t(this).children(),a=0;e.each(function(){var e=t(this);r&&e.css(s,""),e=e[i](),e>a&&(a=e)}),e.css(s,a+"px")})):!1}}(jQuery),/*! jQuery Validation Plugin - v1.10.0 - 9/7/2012
10
+ * https://github.com/jzaefferer/jquery-validation
11
+ * Copyright (c) 2012 Jörn Zaefferer; Licensed MIT, GPL */
12
+ function(t){t.extend(t.fn,{validate:function(e){if(!this.length)return void(e&&e.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing"));var i=t.data(this[0],"validator");return i?i:(this.attr("novalidate","novalidate"),i=new t.validator(e,this[0]),t.data(this[0],"validator",i),i.settings.onsubmit&&(this.validateDelegate(":submit","click",function(e){i.settings.submitHandler&&(i.submitButton=e.target),t(e.target).hasClass("cancel")&&(i.cancelSubmit=!0)}),this.submit(function(e){function s(){var s;return i.settings.submitHandler?(i.submitButton&&(s=t("<input type='hidden'/>").attr("name",i.submitButton.name).val(i.submitButton.value).appendTo(i.currentForm)),i.settings.submitHandler.call(i,i.currentForm,e),i.submitButton&&s.remove(),!1):!0}return i.settings.debug&&e.preventDefault(),i.cancelSubmit?(i.cancelSubmit=!1,s()):i.form()?i.pendingRequest?(i.formSubmitted=!0,!1):s():(i.focusInvalid(),!1)})),i)},valid:function(){if(t(this[0]).is("form"))return this.validate().form();var e=!0,i=t(this[0].form).validate();return this.each(function(){e&=i.element(this)}),e},removeAttrs:function(e){var i={},s=this;return t.each(e.split(/\s/),function(t,e){i[e]=s.attr(e),s.removeAttr(e)}),i},rules:function(e,i){var s=this[0];if(e){var n=t.data(s.form,"validator").settings,r=n.rules,a=t.validator.staticRules(s);switch(e){case"add":t.extend(a,t.validator.normalizeRule(i)),r[s.name]=a,i.messages&&(n.messages[s.name]=t.extend(n.messages[s.name],i.messages));break;case"remove":if(!i)return delete r[s.name],a;var u={};return t.each(i.split(/\s/),function(t,e){u[e]=a[e],delete a[e]}),u}}var o=t.validator.normalizeRules(t.extend({},t.validator.metadataRules(s),t.validator.classRules(s),t.validator.attributeRules(s),t.validator.staticRules(s)),s);if(o.required){var l=o.required;delete o.required,o=t.extend({required:l},o)}return o}}),t.extend(t.expr[":"],{blank:function(e){return!t.trim(""+e.value)},filled:function(e){return!!t.trim(""+e.value)},unchecked:function(t){return!t.checked}}),t.validator=function(e,i){this.settings=t.extend(!0,{},t.validator.defaults,e),this.currentForm=i,this.init()},t.validator.format=function(e,i){return 1===arguments.length?function(){var i=t.makeArray(arguments);return i.unshift(e),t.validator.format.apply(this,i)}:(arguments.length>2&&i.constructor!==Array&&(i=t.makeArray(arguments).slice(1)),i.constructor!==Array&&(i=[i]),t.each(i,function(t,i){e=e.replace(new RegExp("\\{"+t+"\\}","g"),i)}),e)},t.extend(t.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:!0,errorContainer:t([]),errorLabelContainer:t([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(t,e){this.lastActive=t,this.settings.focusCleanup&&!this.blockFocusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,t,this.settings.errorClass,this.settings.validClass),this.addWrapper(this.errorsFor(t)).hide())},onfocusout:function(t,e){!this.checkable(t)&&(t.name in this.submitted||!this.optional(t))&&this.element(t)},onkeyup:function(t,e){(9!==e.which||""!==this.elementValue(t))&&(t.name in this.submitted||t===this.lastActive)&&this.element(t)},onclick:function(t,e){t.name in this.submitted?this.element(t):t.parentNode.name in this.submitted&&this.element(t.parentNode)},highlight:function(e,i,s){"radio"===e.type?this.findByName(e.name).addClass(i).removeClass(s):t(e).addClass(i).removeClass(s)},unhighlight:function(e,i,s){"radio"===e.type?this.findByName(e.name).removeClass(i).addClass(s):t(e).removeClass(i).addClass(s)}},setDefaults:function(e){t.extend(t.validator.defaults,e)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",maxlength:t.validator.format("Please enter no more than {0} characters."),minlength:t.validator.format("Please enter at least {0} characters."),rangelength:t.validator.format("Please enter a value between {0} and {1} characters long."),range:t.validator.format("Please enter a value between {0} and {1}."),max:t.validator.format("Please enter a value less than or equal to {0}."),min:t.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:!1,prototype:{init:function(){function e(e){var i=t.data(this[0].form,"validator"),s="on"+e.type.replace(/^validate/,"");i.settings[s]&&i.settings[s].call(i,this[0],e)}this.labelContainer=t(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||t(this.currentForm),this.containers=t(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var i=this.groups={};t.each(this.settings.groups,function(e,s){t.each(s.split(/\s/),function(t,s){i[s]=e})});var s=this.settings.rules;t.each(s,function(e,i){s[e]=t.validator.normalizeRule(i)}),t(this.currentForm).validateDelegate(":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'] ","focusin focusout keyup",e).validateDelegate("[type='radio'], [type='checkbox'], select, option","click",e),this.settings.invalidHandler&&t(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler)},form:function(){return this.checkForm(),t.extend(this.submitted,this.errorMap),this.invalid=t.extend({},this.errorMap),this.valid()||t(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var t=0,e=this.currentElements=this.elements();e[t];t++)this.check(e[t]);return this.valid()},element:function(e){e=this.validationTargetFor(this.clean(e)),this.lastElement=e,this.prepareElement(e),this.currentElements=t(e);var i=this.check(e)!==!1;return i?delete this.invalid[e.name]:this.invalid[e.name]=!0,this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),i},showErrors:function(e){if(e){t.extend(this.errorMap,e),this.errorList=[];for(var i in e)this.errorList.push({message:e[i],element:this.findByName(i)[0]});this.successList=t.grep(this.successList,function(t){return!(t.name in e)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){t.fn.resetForm&&t(this.currentForm).resetForm(),this.submitted={},this.lastElement=null,this.prepareForm(),this.hideErrors(),this.elements().removeClass(this.settings.errorClass).removeData("previousValue")},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(t){var e=0;for(var i in t)e++;return e},hideErrors:function(){this.addWrapper(this.toHide).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{t(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(e){}},findLastActive:function(){var e=this.lastActive;return e&&1===t.grep(this.errorList,function(t){return t.element.name===e.name}).length&&e},elements:function(){var e=this,i={};return t(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){return!this.name&&e.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.name in i||!e.objectLength(t(this).rules())?!1:(i[this.name]=!0,!0)})},clean:function(e){return t(e)[0]},errors:function(){var e=this.settings.errorClass.replace(" ",".");return t(this.settings.errorElement+"."+e,this.errorContext)},reset:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=t([]),this.toHide=t([]),this.currentElements=t([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(t){this.reset(),this.toHide=this.errorsFor(t)},elementValue:function(e){var i=t(e).attr("type"),s=t(e).val();return"radio"===i||"checkbox"===i?t('input[name="'+t(e).attr("name")+'"]:checked').val():"string"==typeof s?s.replace(/\r/g,""):s},check:function(e){e=this.validationTargetFor(this.clean(e));var i,s=t(e).rules(),n=!1,r=this.elementValue(e);for(var a in s){var u={method:a,parameters:s[a]};try{if(i=t.validator.methods[a].call(this,r,e,u.parameters),"dependency-mismatch"===i){n=!0;continue}if(n=!1,"pending"===i)return void(this.toHide=this.toHide.not(this.errorsFor(e)));if(!i)return this.formatAndAdd(e,u),!1}catch(o){throw this.settings.debug&&window.console&&console.log("exception occured when checking element "+e.id+", check the '"+u.method+"' method",o),o}}if(!n)return this.objectLength(s)&&this.successList.push(e),!0},customMetaMessage:function(e,i){if(t.metadata){var s=this.settings.meta?t(e).metadata()[this.settings.meta]:t(e).metadata();return s&&s.messages&&s.messages[i]}},customDataMessage:function(e,i){return t(e).data("msg-"+i.toLowerCase())||e.attributes&&t(e).attr("data-msg-"+i.toLowerCase())},customMessage:function(t,e){var i=this.settings.messages[t];return i&&(i.constructor===String?i:i[e])},findDefined:function(){for(var t=0;t<arguments.length;t++)if(void 0!==arguments[t])return arguments[t];return void 0},defaultMessage:function(e,i){return this.findDefined(this.customMessage(e.name,i),this.customDataMessage(e,i),this.customMetaMessage(e,i),!this.settings.ignoreTitle&&e.title||void 0,t.validator.messages[i],"<strong>Warning: No message defined for "+e.name+"</strong>")},formatAndAdd:function(e,i){var s=this.defaultMessage(e,i.method),n=/\$?\{(\d+)\}/g;"function"==typeof s?s=s.call(this,i.parameters,e):n.test(s)&&(s=t.validator.format(s.replace(n,"{$1}"),i.parameters)),this.errorList.push({message:s,element:e}),this.errorMap[e.name]=s,this.submitted[e.name]=s},addWrapper:function(t){return this.settings.wrapper&&(t=t.add(t.parent(this.settings.wrapper))),t},defaultShowErrors:function(){var t,e;for(t=0;this.errorList[t];t++){var i=this.errorList[t];this.settings.highlight&&this.settings.highlight.call(this,i.element,this.settings.errorClass,this.settings.validClass),this.showLabel(i.element,i.message)}if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(t=0;this.successList[t];t++)this.showLabel(this.successList[t]);if(this.settings.unhighlight)for(t=0,e=this.validElements();e[t];t++)this.settings.unhighlight.call(this,e[t],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return t(this.errorList).map(function(){return this.element})},showLabel:function(e,i){var s=this.errorsFor(e);s.length?(s.removeClass(this.settings.validClass).addClass(this.settings.errorClass),s.attr("generated")&&s.html(i)):(s=t("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(e),generated:!0}).addClass(this.settings.errorClass).html(i||""),this.settings.wrapper&&(s=s.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.append(s).length||(this.settings.errorPlacement?this.settings.errorPlacement(s,t(e)):s.insertAfter(e))),!i&&this.settings.success&&(s.text(""),"string"==typeof this.settings.success?s.addClass(this.settings.success):this.settings.success(s,e)),this.toShow=this.toShow.add(s)},errorsFor:function(e){var i=this.idOrName(e);return this.errors().filter(function(){return t(this).attr("for")===i})},idOrName:function(t){return this.groups[t.name]||(this.checkable(t)?t.name:t.id||t.name)},validationTargetFor:function(t){return this.checkable(t)&&(t=this.findByName(t.name).not(this.settings.ignore)[0]),t},checkable:function(t){return/radio|checkbox/i.test(t.type)},findByName:function(e){return t(this.currentForm).find('[name="'+e+'"]')},getLength:function(e,i){switch(i.nodeName.toLowerCase()){case"select":return t("option:selected",i).length;case"input":if(this.checkable(i))return this.findByName(i.name).filter(":checked").length}return e.length},depend:function(t,e){return this.dependTypes[typeof t]?this.dependTypes[typeof t](t,e):!0},dependTypes:{"boolean":function(t,e){return t},string:function(e,i){return!!t(e,i.form).length},"function":function(t,e){return t(e)}},optional:function(e){var i=this.elementValue(e);return!t.validator.methods.required.call(this,i,e)&&"dependency-mismatch"},startRequest:function(t){this.pending[t.name]||(this.pendingRequest++,this.pending[t.name]=!0)},stopRequest:function(e,i){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[e.name],i&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(t(this.currentForm).submit(),this.formSubmitted=!1):!i&&0===this.pendingRequest&&this.formSubmitted&&(t(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(e){return t.data(e,"previousValue")||t.data(e,"previousValue",{old:null,valid:!0,message:this.defaultMessage(e,"remote")})}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(e,i){e.constructor===String?this.classRuleSettings[e]=i:t.extend(this.classRuleSettings,e)},classRules:function(e){var i={},s=t(e).attr("class");return s&&t.each(s.split(" "),function(){this in t.validator.classRuleSettings&&t.extend(i,t.validator.classRuleSettings[this])}),i},attributeRules:function(e){var i={},s=t(e);for(var n in t.validator.methods){var r;"required"===n?(r=s.get(0).getAttribute(n),""===r&&(r=!0),r=!!r):r=s.attr(n),r?i[n]=r:s[0].getAttribute("type")===n&&(i[n]=!0)}return i.maxlength&&/-1|2147483647|524288/.test(i.maxlength)&&delete i.maxlength,i},metadataRules:function(e){if(!t.metadata)return{};var i=t.data(e.form,"validator").settings.meta;return i?t(e).metadata()[i]:t(e).metadata()},staticRules:function(e){var i={},s=t.data(e.form,"validator");return s.settings.rules&&(i=t.validator.normalizeRule(s.settings.rules[e.name])||{}),i},normalizeRules:function(e,i){return t.each(e,function(s,n){if(n===!1)return void delete e[s];if(n.param||n.depends){var r=!0;switch(typeof n.depends){case"string":r=!!t(n.depends,i.form).length;break;case"function":r=n.depends.call(i,i)}r?e[s]=void 0!==n.param?n.param:!0:delete e[s]}}),t.each(e,function(s,n){e[s]=t.isFunction(n)?n(i):n}),t.each(["minlength","maxlength","min","max"],function(){e[this]&&(e[this]=Number(e[this]))}),t.each(["rangelength","range"],function(){e[this]&&(e[this]=[Number(e[this][0]),Number(e[this][1])])}),t.validator.autoCreateRanges&&(e.min&&e.max&&(e.range=[e.min,e.max],delete e.min,delete e.max),e.minlength&&e.maxlength&&(e.rangelength=[e.minlength,e.maxlength],delete e.minlength,delete e.maxlength)),e.messages&&delete e.messages,e},normalizeRule:function(e){if("string"==typeof e){var i={};t.each(e.split(/\s/),function(){i[this]=!0}),e=i}return e},addMethod:function(e,i,s){t.validator.methods[e]=i,t.validator.messages[e]=void 0!==s?s:t.validator.messages[e],i.length<3&&t.validator.addClassRules(e,t.validator.normalizeRule(e))},methods:{required:function(e,i,s){if(!this.depend(s,i))return"dependency-mismatch";if("select"===i.nodeName.toLowerCase()){var n=t(i).val();return n&&n.length>0}return this.checkable(i)?this.getLength(e,i)>0:t.trim(e).length>0},remote:function(e,i,s){if(this.optional(i))return"dependency-mismatch";var n=this.previousValue(i);if(this.settings.messages[i.name]||(this.settings.messages[i.name]={}),n.originalMessage=this.settings.messages[i.name].remote,this.settings.messages[i.name].remote=n.message,s="string"==typeof s&&{url:s}||s,this.pending[i.name])return"pending";if(n.old===e)return n.valid;n.old=e;var r=this;this.startRequest(i);var a={};return a[i.name]=e,t.ajax(t.extend(!0,{url:s,mode:"abort",port:"validate"+i.name,dataType:"json",data:a,success:function(s){r.settings.messages[i.name].remote=n.originalMessage;var a=s===!0||"true"===s;if(a){var u=r.formSubmitted;r.prepareElement(i),r.formSubmitted=u,r.successList.push(i),delete r.invalid[i.name],r.showErrors()}else{var o={},l=s||r.defaultMessage(i,"remote");o[i.name]=n.message=t.isFunction(l)?l(e):l,r.invalid[i.name]=!0,r.showErrors(o)}n.valid=a,r.stopRequest(i,a)}},s)),"pending"},minlength:function(e,i,s){var n=t.isArray(e)?e.length:this.getLength(t.trim(e),i);return this.optional(i)||n>=s},maxlength:function(e,i,s){var n=t.isArray(e)?e.length:this.getLength(t.trim(e),i);return this.optional(i)||s>=n},rangelength:function(e,i,s){var n=t.isArray(e)?e.length:this.getLength(t.trim(e),i);return this.optional(i)||n>=s[0]&&n<=s[1]},min:function(t,e,i){return this.optional(e)||t>=i},max:function(t,e,i){return this.optional(e)||i>=t},range:function(t,e,i){return this.optional(e)||t>=i[0]&&t<=i[1]},email:function(t,e){return this.optional(e)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(t)},url:function(t,e){return this.optional(e)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(t)},date:function(t,e){return this.optional(e)||!/Invalid|NaN/.test(new Date(t))},dateISO:function(t,e){return this.optional(e)||/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/.test(t)},number:function(t,e){return this.optional(e)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(t)},digits:function(t,e){return this.optional(e)||/^\d+$/.test(t)},creditcard:function(t,e){if(this.optional(e))return"dependency-mismatch";if(/[^0-9 \-]+/.test(t))return!1;var i=0,s=0,n=!1;t=t.replace(/\D/g,"");for(var r=t.length-1;r>=0;r--){var a=t.charAt(r);s=parseInt(a,10),n&&(s*=2)>9&&(s-=9),i+=s,n=!n}return i%10===0},equalTo:function(e,i,s){var n=t(s);return this.settings.onfocusout&&n.unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){t(i).valid()}),e===n.val()}}}),t.format=t.validator.format}(jQuery),function(t){var e={};if(t.ajaxPrefilter)t.ajaxPrefilter(function(t,i,s){var n=t.port;"abort"===t.mode&&(e[n]&&e[n].abort(),e[n]=s)});else{var i=t.ajax;t.ajax=function(s){var n=("mode"in s?s:t.ajaxSettings).mode,r=("port"in s?s:t.ajaxSettings).port;return"abort"===n?(e[r]&&e[r].abort(),e[r]=i.apply(this,arguments)):i.apply(this,arguments)}}}(jQuery),function(t){!jQuery.event.special.focusin&&!jQuery.event.special.focusout&&document.addEventListener&&t.each({focus:"focusin",blur:"focusout"},function(e,i){function s(e){return e=t.event.fix(e),e.type=i,t.event.handle.call(this,e)}t.event.special[i]={setup:function(){this.addEventListener(e,s,!0)},teardown:function(){this.removeEventListener(e,s,!0)},handler:function(e){var s=arguments;return s[0]=t.event.fix(e),s[0].type=i,t.event.handle.apply(this,s)}}}),t.extend(t.fn,{validateDelegate:function(e,i,s){return this.bind(i,function(i){var n=t(i.target);return n.is(e)?s.apply(n,arguments):void 0})}})}(jQuery),jQuery.includeScript=function(t,e){return e=jQuery.extend(e||{},{dataType:"script",cache:!0,url:t}),jQuery.ajax(e)};
@@ -0,0 +1 @@
1
+ $(function(){var r={highlight:function(r){$(r).closest(".form-group").addClass("has-error")},success:function(r){$(r).addClass("valid").closest(".form-group").removeClass("has-error")}};$("form.validate").each(function(){$(this).validate(r)}),$("form.mark-required").each(function(){$(".required").closest(".form-group").find(".control-label").append(' <span class="text-danger">*</span>')})});