brakeman 6.2.2 → 7.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (583) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +62 -0
  3. data/README.md +4 -4
  4. data/bundle/load.rb +16 -14
  5. data/bundle/ruby/3.2.0/gems/csv-3.3.5/LICENSE.txt +33 -0
  6. data/bundle/ruby/3.2.0/gems/csv-3.3.5/NEWS.md +1009 -0
  7. data/bundle/ruby/3.2.0/gems/csv-3.3.5/README.md +55 -0
  8. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv/core_ext/array.rb +9 -0
  9. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv/core_ext/string.rb +9 -0
  10. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv/fields_converter.rb +96 -0
  11. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv/input_record_separator.rb +18 -0
  12. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv/parser.rb +1302 -0
  13. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv/row.rb +757 -0
  14. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv/table.rb +1055 -0
  15. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv/version.rb +6 -0
  16. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv/writer.rb +209 -0
  17. data/bundle/ruby/3.2.0/gems/csv-3.3.5/lib/csv.rb +3017 -0
  18. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/CHANGELOG.md +180 -4
  19. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/FAQ.md +1 -1
  20. data/bundle/ruby/3.2.0/gems/haml-6.4.0/Gemfile +34 -0
  21. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/MIT-LICENSE +1 -1
  22. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/README.md +23 -34
  23. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/REFERENCE.md +100 -171
  24. data/bundle/ruby/3.2.0/gems/haml-6.4.0/exe/haml +6 -0
  25. data/bundle/ruby/3.2.0/gems/haml-6.4.0/haml.gemspec +45 -0
  26. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/ambles.rb +20 -0
  27. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/attribute_builder.rb +162 -0
  28. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/attribute_compiler.rb +133 -0
  29. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/attribute_parser.rb +116 -0
  30. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/cli.rb +154 -0
  31. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/compiler/children_compiler.rb +155 -0
  32. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/compiler/comment_compiler.rb +51 -0
  33. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/compiler/doctype_compiler.rb +52 -0
  34. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/compiler/script_compiler.rb +114 -0
  35. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/compiler/silent_script_compiler.rb +24 -0
  36. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/compiler/tag_compiler.rb +76 -0
  37. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/compiler.rb +97 -0
  38. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/dynamic_merger.rb +67 -0
  39. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/engine.rb +59 -0
  40. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/lib/haml/error.rb +5 -4
  41. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/escape.rb +13 -0
  42. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/escape_any.rb +21 -0
  43. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/base.rb +12 -0
  44. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/cdata.rb +20 -0
  45. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/coffee.rb +17 -0
  46. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/css.rb +33 -0
  47. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/erb.rb +10 -0
  48. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/escaped.rb +22 -0
  49. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/javascript.rb +33 -0
  50. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/less.rb +20 -0
  51. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/markdown.rb +11 -0
  52. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/plain.rb +29 -0
  53. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/preserve.rb +22 -0
  54. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/ruby.rb +10 -0
  55. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/sass.rb +15 -0
  56. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/scss.rb +15 -0
  57. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/text_base.rb +25 -0
  58. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters/tilt_base.rb +59 -0
  59. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/filters.rb +75 -0
  60. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/force_escape.rb +29 -0
  61. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/helpers.rb +15 -0
  62. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/html.rb +22 -0
  63. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/identity.rb +13 -0
  64. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/object_ref.rb +35 -0
  65. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/lib/haml/parser.rb +159 -24
  66. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/rails_helpers.rb +53 -0
  67. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/rails_template.rb +62 -0
  68. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/railtie.rb +10 -0
  69. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/ruby_expression.rb +32 -0
  70. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/string_splitter.rb +140 -0
  71. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/template.rb +20 -0
  72. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/lib/haml/temple_line_counter.rb +2 -1
  73. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/lib/haml/util.rb +19 -15
  74. data/bundle/ruby/{3.1.0/gems/haml-5.2.2 → 3.2.0/gems/haml-6.4.0}/lib/haml/version.rb +1 -2
  75. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml/whitespace.rb +8 -0
  76. data/bundle/ruby/3.2.0/gems/haml-6.4.0/lib/haml.rb +13 -0
  77. data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/Changelog.md +4 -0
  78. data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/Gemfile +1 -0
  79. data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/list_renderer.rb +2 -2
  80. data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/menu.rb +7 -5
  81. data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/version.rb +1 -1
  82. data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline.rb +17 -12
  83. data/bundle/ruby/3.2.0/gems/parallel-1.27.0/lib/parallel/version.rb +4 -0
  84. data/bundle/ruby/{3.1.0/gems/parallel-1.26.3 → 3.2.0/gems/parallel-1.27.0}/lib/parallel.rb +1 -1
  85. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/config.rb +27 -26
  86. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/history.rb +3 -3
  87. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/io/ansi.rb +76 -138
  88. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/io/dumb.rb +16 -2
  89. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/io/windows.rb +77 -60
  90. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/io.rb +14 -0
  91. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/key_actor/base.rb +10 -4
  92. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/key_actor/emacs.rb +96 -96
  93. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/key_actor/vi_command.rb +182 -182
  94. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/key_actor/vi_insert.rb +137 -137
  95. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/key_stroke.rb +26 -16
  96. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/line_editor.rb +324 -516
  97. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/unicode/east_asian_width.rb +48 -23
  98. data/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/unicode.rb +421 -0
  99. data/bundle/ruby/3.2.0/gems/reline-0.6.3/lib/reline/version.rb +3 -0
  100. data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline.rb +41 -33
  101. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/NEWS.md +219 -1
  102. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/attribute.rb +7 -8
  103. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/cdata.rb +1 -1
  104. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/child.rb +2 -3
  105. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/comment.rb +1 -1
  106. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/doctype.rb +3 -8
  107. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/document.rb +21 -5
  108. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/element.rb +53 -59
  109. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/encoding.rb +3 -6
  110. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/functions.rb +3 -3
  111. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/instruction.rb +1 -1
  112. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/namespace.rb +4 -4
  113. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/node.rb +2 -2
  114. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parsers/baseparser.rb +208 -116
  115. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parsers/pullparser.rb +4 -0
  116. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parsers/xpathparser.rb +4 -4
  117. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/quickpath.rb +19 -18
  118. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/rexml.rb +1 -1
  119. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/security.rb +2 -2
  120. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/source.rb +68 -8
  121. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/text.rb +29 -57
  122. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/validation/relaxng.rb +27 -26
  123. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/validation/validation.rb +8 -8
  124. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/xpath.rb +2 -13
  125. data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/xpath_parser.rb +44 -42
  126. data/bundle/ruby/{3.1.0/gems/ruby2ruby-2.5.1 → 3.2.0/gems/ruby2ruby-2.5.2}/History.rdoc +6 -0
  127. data/bundle/ruby/{3.1.0/gems/ruby2ruby-2.5.1 → 3.2.0/gems/ruby2ruby-2.5.2}/lib/ruby2ruby.rb +7 -4
  128. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/History.rdoc +67 -0
  129. data/bundle/ruby/3.2.0/gems/ruby_parser-3.22.0/Manifest.txt +39 -0
  130. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/README.rdoc +15 -3
  131. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/compare/normalize.rb +19 -3
  132. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/gauntlet.md +35 -5
  133. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/lib/ruby_lexer.rb +9 -18
  134. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/lib/ruby_lexer.rex.rb +1 -2
  135. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/lib/ruby_parser.rb +18 -14
  136. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby_parser.yy → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser2.yy} +15 -22
  137. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby20_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser20.rb} +19 -22
  138. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby21_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser21.rb} +19 -22
  139. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby22_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser22.rb} +19 -22
  140. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby23_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser23.rb} +19 -22
  141. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby24_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser24.rb} +19 -22
  142. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby25_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser25.rb} +19 -22
  143. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby26_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser26.rb} +19 -22
  144. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby27_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser27.rb} +21 -24
  145. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby3_parser.yy → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser3.yy} +214 -79
  146. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby30_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser30.rb} +3339 -3351
  147. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3/lib/ruby31_parser.rb → 3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser31.rb} +3772 -3808
  148. data/bundle/ruby/3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser32.rb +13565 -0
  149. data/bundle/ruby/3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser33.rb +13653 -0
  150. data/bundle/ruby/3.2.0/gems/ruby_parser-3.22.0/lib/ruby_parser34.rb +13653 -0
  151. data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/lib/ruby_parser_extras.rb +109 -60
  152. data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/History.rdoc +20 -0
  153. data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/lib/pt_testcase.rb +1 -1
  154. data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/lib/sexp.rb +1 -1
  155. data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/lib/sexp_processor.rb +1 -1
  156. data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/CHANGES +4 -0
  157. data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/encoding.rb +1 -1
  158. data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/version.rb +1 -1
  159. data/bundle/ruby/3.2.0/gems/terminal-table-4.0.0/History.rdoc +149 -0
  160. data/bundle/ruby/3.2.0/gems/terminal-table-4.0.0/README.md +417 -0
  161. data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/lib/terminal-table/cell.rb +9 -9
  162. data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/lib/terminal-table/row.rb +18 -4
  163. data/bundle/ruby/3.2.0/gems/terminal-table-4.0.0/lib/terminal-table/separator.rb +66 -0
  164. data/bundle/ruby/3.2.0/gems/terminal-table-4.0.0/lib/terminal-table/style.rb +284 -0
  165. data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/lib/terminal-table/table.rb +49 -18
  166. data/bundle/ruby/3.2.0/gems/terminal-table-4.0.0/lib/terminal-table/util.rb +13 -0
  167. data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/lib/terminal-table/version.rb +1 -1
  168. data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/lib/terminal-table.rb +2 -2
  169. data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/terminal-table.gemspec +3 -4
  170. data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/creole.rb +2 -0
  171. data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/liquid.rb +0 -3
  172. data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/mapping.rb +3 -3
  173. data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/rdoc.rb +0 -8
  174. data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/template.rb +184 -28
  175. data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt.rb +9 -4
  176. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/CHANGELOG.md +299 -0
  177. data/bundle/ruby/{3.1.0/gems/unicode-display_width-1.8.0 → 3.2.0/gems/unicode-display_width-3.2.0}/MIT-LICENSE.txt +1 -1
  178. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/README.md +194 -0
  179. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/data/display_width.marshal.gz +0 -0
  180. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/lib/unicode/display_width/constants.rb +10 -0
  181. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/lib/unicode/display_width/emoji_support.rb +55 -0
  182. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/lib/unicode/display_width/index.rb +34 -0
  183. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/lib/unicode/display_width/no_string_ext.rb +8 -0
  184. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/lib/unicode/display_width/reline_ext.rb +14 -0
  185. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/lib/unicode/display_width/string_ext.rb +9 -0
  186. data/bundle/ruby/3.2.0/gems/unicode-display_width-3.2.0/lib/unicode/display_width.rb +247 -0
  187. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/CHANGELOG.md +202 -0
  188. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/CODE_OF_CONDUCT.md +74 -0
  189. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/Gemfile +9 -0
  190. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/Gemfile.lock +37 -0
  191. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/MIT-LICENSE.txt +20 -0
  192. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/README.md +205 -0
  193. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/data/emoji.marshal.gz +0 -0
  194. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/data/generate_constants.rb +344 -0
  195. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/constants.rb +50 -0
  196. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex.rb +8 -0
  197. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_basic.rb +8 -0
  198. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_emoji_keycap.rb +8 -0
  199. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_include_mqe.rb +8 -0
  200. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_include_mqe_uqe.rb +8 -0
  201. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_include_text.rb +8 -0
  202. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_picto.rb +8 -0
  203. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_picto_no_emoji.rb +8 -0
  204. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_possible.rb +8 -0
  205. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_prop_component.rb +8 -0
  206. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_prop_emoji.rb +8 -0
  207. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_prop_modifier.rb +8 -0
  208. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_prop_modifier_base.rb +8 -0
  209. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_prop_presentation.rb +8 -0
  210. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_text.rb +8 -0
  211. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_text_presentation.rb +8 -0
  212. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_valid.rb +8 -0
  213. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_valid_include_text.rb +8 -0
  214. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_well_formed.rb +8 -0
  215. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated/regex_well_formed_include_text.rb +8 -0
  216. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex.rb +8 -0
  217. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_basic.rb +8 -0
  218. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_emoji_keycap.rb +8 -0
  219. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_include_mqe.rb +8 -0
  220. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_include_mqe_uqe.rb +8 -0
  221. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_include_text.rb +8 -0
  222. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_picto.rb +8 -0
  223. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_picto_no_emoji.rb +8 -0
  224. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_possible.rb +8 -0
  225. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_prop_component.rb +8 -0
  226. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_prop_emoji.rb +8 -0
  227. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_prop_modifier.rb +8 -0
  228. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_prop_modifier_base.rb +8 -0
  229. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_prop_presentation.rb +8 -0
  230. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_text.rb +8 -0
  231. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_text_presentation.rb +8 -0
  232. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_valid.rb +8 -0
  233. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_valid_include_text.rb +8 -0
  234. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_well_formed.rb +8 -0
  235. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/generated_native/regex_well_formed_include_text.rb +8 -0
  236. data/bundle/ruby/{3.1.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width → 3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji}/index.rb +5 -3
  237. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/lazy_constants.rb +56 -0
  238. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji/list.rb +13 -0
  239. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/lib/unicode/emoji.rb +111 -0
  240. data/bundle/ruby/3.2.0/gems/unicode-emoji-4.2.0/unicode-emoji.gemspec +22 -0
  241. data/lib/brakeman/app_tree.rb +81 -24
  242. data/lib/brakeman/checks/base_check.rb +5 -2
  243. data/lib/brakeman/checks/check_deserialize.rb +4 -1
  244. data/lib/brakeman/checks/check_eol_rails.rb +1 -0
  245. data/lib/brakeman/checks/check_eol_ruby.rb +1 -0
  246. data/lib/brakeman/checks/check_evaluation.rb +45 -8
  247. data/lib/brakeman/checks/check_model_attr_accessible.rb +1 -0
  248. data/lib/brakeman/checks/check_render.rb +5 -0
  249. data/lib/brakeman/checks/check_sql.rb +13 -4
  250. data/lib/brakeman/checks/check_weak_rsa_key.rb +1 -1
  251. data/lib/brakeman/commandline.rb +5 -0
  252. data/lib/brakeman/file_parser.rb +2 -1
  253. data/lib/brakeman/file_path.rb +4 -0
  254. data/lib/brakeman/messages.rb +1 -1
  255. data/lib/brakeman/options.rb +16 -5
  256. data/lib/brakeman/parsers/haml6_embedded.rb +23 -0
  257. data/lib/brakeman/parsers/template_parser.rb +32 -7
  258. data/lib/brakeman/processor.rb +2 -0
  259. data/lib/brakeman/processors/alias_processor.rb +18 -4
  260. data/lib/brakeman/processors/base_processor.rb +2 -0
  261. data/lib/brakeman/processors/haml6_template_processor.rb +92 -0
  262. data/lib/brakeman/processors/haml_template_processor.rb +17 -2
  263. data/lib/brakeman/processors/lib/file_type_detector.rb +9 -7
  264. data/lib/brakeman/processors/lib/rails2_config_processor.rb +1 -1
  265. data/lib/brakeman/processors/lib/rails3_config_processor.rb +1 -1
  266. data/lib/brakeman/processors/lib/render_helper.rb +38 -1
  267. data/lib/brakeman/processors/template_processor.rb +1 -1
  268. data/lib/brakeman/report/ignore/config.rb +0 -1
  269. data/lib/brakeman/report/pager.rb +1 -1
  270. data/lib/brakeman/report/report_html.rb +1 -1
  271. data/lib/brakeman/report/report_junit.rb +4 -57
  272. data/lib/brakeman/report/report_sarif.rb +122 -2
  273. data/lib/brakeman/report/templates/header.html.erb +8 -3
  274. data/lib/brakeman/report/templates/ignored_warnings.html.erb +3 -3
  275. data/lib/brakeman/rescanner.rb +40 -390
  276. data/lib/brakeman/scanner.rb +84 -51
  277. data/lib/brakeman/tracker/file_cache.rb +83 -0
  278. data/lib/brakeman/tracker.rb +25 -2
  279. data/lib/brakeman/version.rb +1 -1
  280. data/lib/brakeman.rb +23 -2
  281. data/lib/ruby_parser/bm_sexp.rb +14 -0
  282. metadata +483 -405
  283. data/bundle/ruby/3.1.0/gems/haml-5.2.2/Gemfile +0 -16
  284. data/bundle/ruby/3.1.0/gems/haml-5.2.2/TODO +0 -24
  285. data/bundle/ruby/3.1.0/gems/haml-5.2.2/haml.gemspec +0 -45
  286. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/attribute_builder.rb +0 -219
  287. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/attribute_compiler.rb +0 -237
  288. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/attribute_parser.rb +0 -150
  289. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/buffer.rb +0 -182
  290. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/compiler.rb +0 -330
  291. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/engine.rb +0 -238
  292. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/escapable.rb +0 -77
  293. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/exec.rb +0 -347
  294. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/filters.rb +0 -399
  295. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/generator.rb +0 -42
  296. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/action_view_extensions.rb +0 -60
  297. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/action_view_mods.rb +0 -132
  298. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/action_view_xss_mods.rb +0 -60
  299. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/safe_erubi_template.rb +0 -20
  300. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/safe_erubis_template.rb +0 -33
  301. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers/xss_mods.rb +0 -114
  302. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/helpers.rb +0 -709
  303. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/options.rb +0 -273
  304. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/plugin.rb +0 -54
  305. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/railtie.rb +0 -53
  306. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/sass_rails_filter.rb +0 -47
  307. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/template/options.rb +0 -27
  308. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/template.rb +0 -39
  309. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml/temple_engine.rb +0 -124
  310. data/bundle/ruby/3.1.0/gems/haml-5.2.2/lib/haml.rb +0 -25
  311. data/bundle/ruby/3.1.0/gems/haml-5.2.2/yard/default/fulldoc/html/css/common.sass +0 -15
  312. data/bundle/ruby/3.1.0/gems/haml-5.2.2/yard/default/layout/html/footer.erb +0 -12
  313. data/bundle/ruby/3.1.0/gems/parallel-1.26.3/lib/parallel/version.rb +0 -4
  314. data/bundle/ruby/3.1.0/gems/reline-0.5.10/lib/reline/terminfo.rb +0 -158
  315. data/bundle/ruby/3.1.0/gems/reline-0.5.10/lib/reline/unicode.rb +0 -671
  316. data/bundle/ruby/3.1.0/gems/reline-0.5.10/lib/reline/version.rb +0 -3
  317. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/Manifest.txt +0 -48
  318. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby20_parser.y +0 -2707
  319. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby21_parser.y +0 -2724
  320. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby22_parser.y +0 -2735
  321. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby23_parser.y +0 -2737
  322. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby24_parser.y +0 -2745
  323. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby25_parser.y +0 -2745
  324. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby26_parser.y +0 -2760
  325. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby27_parser.y +0 -3360
  326. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby30_parser.y +0 -3508
  327. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby31_parser.y +0 -3542
  328. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby32_parser.rb +0 -13601
  329. data/bundle/ruby/3.1.0/gems/ruby_parser-3.20.3/lib/ruby32_parser.y +0 -3543
  330. data/bundle/ruby/3.1.0/gems/terminal-table-1.8.0/History.rdoc +0 -85
  331. data/bundle/ruby/3.1.0/gems/terminal-table-1.8.0/README.rdoc +0 -247
  332. data/bundle/ruby/3.1.0/gems/terminal-table-1.8.0/lib/terminal-table/separator.rb +0 -14
  333. data/bundle/ruby/3.1.0/gems/terminal-table-1.8.0/lib/terminal-table/style.rb +0 -79
  334. data/bundle/ruby/3.1.0/gems/tilt-2.4.0/lib/tilt/erubis.rb +0 -51
  335. data/bundle/ruby/3.1.0/gems/tilt-2.4.0/lib/tilt/maruku.rb +0 -10
  336. data/bundle/ruby/3.1.0/gems/tilt-2.4.0/lib/tilt/wikicloth.rb +0 -12
  337. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/CHANGELOG.md +0 -137
  338. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/README.md +0 -124
  339. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/data/display_width.marshal.gz +0 -0
  340. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width/constants.rb +0 -8
  341. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width/no_string_ext.rb +0 -7
  342. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width/string_ext.rb +0 -17
  343. data/bundle/ruby/3.1.0/gems/unicode-display_width-1.8.0/lib/unicode/display_width.rb +0 -51
  344. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/CHANGES.txt +0 -0
  345. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/MIT-LICENSE +0 -0
  346. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/README.txt +0 -0
  347. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/contrib/erubis +0 -0
  348. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/contrib/erubis-run.rb +0 -0
  349. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/contrib/inline-require +0 -0
  350. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/context.rb +0 -0
  351. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/converter.rb +0 -0
  352. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/ec.rb +0 -0
  353. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/ecpp.rb +0 -0
  354. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/ejava.rb +0 -0
  355. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/ejavascript.rb +0 -0
  356. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/enhanced.rb +0 -0
  357. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/eperl.rb +0 -0
  358. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/ephp.rb +0 -0
  359. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/eruby.rb +0 -0
  360. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/escheme.rb +0 -0
  361. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine/optimized.rb +0 -0
  362. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/engine.rb +0 -0
  363. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/enhancer.rb +0 -0
  364. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/error.rb +0 -0
  365. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/evaluator.rb +0 -0
  366. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/generator.rb +0 -0
  367. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/helper.rb +0 -0
  368. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/helpers/rails_form_helper.rb +0 -0
  369. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/helpers/rails_helper.rb +0 -0
  370. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/local-setting.rb +0 -0
  371. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/main.rb +0 -0
  372. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/preprocessing.rb +0 -0
  373. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/tiny.rb +0 -0
  374. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis/util.rb +0 -0
  375. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/lib/erubis.rb +0 -0
  376. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/erubis-2.7.0/setup.rb +0 -0
  377. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/AUTHORS +0 -0
  378. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/COPYING +0 -0
  379. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/LICENSE +0 -0
  380. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/README.md +0 -0
  381. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/TODO +0 -0
  382. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/highline.gemspec +0 -0
  383. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/builtin_styles.rb +0 -0
  384. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/color_scheme.rb +0 -0
  385. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/compatibility.rb +0 -0
  386. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/custom_errors.rb +0 -0
  387. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/import.rb +0 -0
  388. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/io_console_compatible.rb +0 -0
  389. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/list.rb +0 -0
  390. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/menu/item.rb +0 -0
  391. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/paginator.rb +0 -0
  392. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/question/answer_converter.rb +0 -0
  393. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/question.rb +0 -0
  394. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/question_asker.rb +0 -0
  395. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/simulate.rb +0 -0
  396. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/statement.rb +0 -0
  397. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/string.rb +0 -0
  398. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/string_extensions.rb +0 -0
  399. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/style.rb +0 -0
  400. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/template_renderer.rb +0 -0
  401. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/terminal/io_console.rb +0 -0
  402. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/terminal/ncurses.rb +0 -0
  403. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/terminal/unix_stty.rb +0 -0
  404. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/terminal.rb +0 -0
  405. /data/bundle/ruby/{3.1.0/gems/highline-3.1.1 → 3.2.0/gems/highline-3.1.2}/lib/highline/wrapper.rb +0 -0
  406. /data/bundle/ruby/{3.1.0/gems/parallel-1.26.3 → 3.2.0/gems/parallel-1.27.0}/MIT-LICENSE.txt +0 -0
  407. /data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/BSDL +0 -0
  408. /data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/COPYING +0 -0
  409. /data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/README.md +0 -0
  410. /data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/face.rb +0 -0
  411. /data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/key_actor/composite.rb +0 -0
  412. /data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/key_actor.rb +0 -0
  413. /data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/lib/reline/kill_ring.rb +0 -0
  414. /data/bundle/ruby/{3.1.0/gems/reline-0.5.10 → 3.2.0/gems/reline-0.6.3}/license_of_rb-readline +0 -0
  415. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/LICENSE.txt +0 -0
  416. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/README.md +0 -0
  417. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/attlistdecl.rb +0 -0
  418. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/dtd/attlistdecl.rb +0 -0
  419. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/dtd/dtd.rb +0 -0
  420. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/dtd/elementdecl.rb +0 -0
  421. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/dtd/entitydecl.rb +0 -0
  422. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/dtd/notationdecl.rb +0 -0
  423. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/entity.rb +0 -0
  424. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/formatters/default.rb +0 -0
  425. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/formatters/pretty.rb +0 -0
  426. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/formatters/transitive.rb +0 -0
  427. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/light/node.rb +0 -0
  428. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/output.rb +0 -0
  429. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parent.rb +0 -0
  430. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parseexception.rb +0 -0
  431. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parsers/lightparser.rb +0 -0
  432. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parsers/sax2parser.rb +0 -0
  433. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parsers/streamparser.rb +0 -0
  434. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parsers/treeparser.rb +0 -0
  435. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/parsers/ultralightparser.rb +0 -0
  436. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/sax2listener.rb +0 -0
  437. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/streamlistener.rb +0 -0
  438. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/undefinednamespaceexception.rb +0 -0
  439. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/validation/validationexception.rb +0 -0
  440. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/xmldecl.rb +0 -0
  441. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml/xmltokens.rb +0 -0
  442. /data/bundle/ruby/{3.1.0/gems/rexml-3.3.8 → 3.2.0/gems/rexml-3.4.4}/lib/rexml.rb +0 -0
  443. /data/bundle/ruby/{3.1.0/gems/ruby2ruby-2.5.1 → 3.2.0/gems/ruby2ruby-2.5.2}/Manifest.txt +0 -0
  444. /data/bundle/ruby/{3.1.0/gems/ruby2ruby-2.5.1 → 3.2.0/gems/ruby2ruby-2.5.2}/README.rdoc +0 -0
  445. /data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/debugging.md +0 -0
  446. /data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/lib/rp_extensions.rb +0 -0
  447. /data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/lib/rp_stringscanner.rb +0 -0
  448. /data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/lib/ruby_lexer.rex +0 -0
  449. /data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/lib/ruby_lexer_strings.rb +0 -0
  450. /data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/tools/munge.rb +0 -0
  451. /data/bundle/ruby/{3.1.0/gems/ruby_parser-3.20.3 → 3.2.0/gems/ruby_parser-3.22.0}/tools/ripper.rb +0 -0
  452. /data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/Manifest.txt +0 -0
  453. /data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/README.rdoc +0 -0
  454. /data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/lib/composite_sexp_processor.rb +0 -0
  455. /data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/lib/sexp_matcher.rb +0 -0
  456. /data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/lib/strict_sexp.rb +0 -0
  457. /data/bundle/ruby/{3.1.0/gems/sexp_processor-4.17.2 → 3.2.0/gems/sexp_processor-4.17.5}/lib/unique.rb +0 -0
  458. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/CHANGES +0 -0
  459. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/Gemfile +0 -0
  460. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/LICENSE +0 -0
  461. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/README.jp.md +0 -0
  462. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/README.md +0 -0
  463. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/code_attributes.rb +0 -0
  464. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/command.rb +0 -0
  465. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/controls.rb +0 -0
  466. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/do_inserter.rb +0 -0
  467. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/embedded.rb +0 -0
  468. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/end_inserter.rb +0 -0
  469. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/engine.rb +0 -0
  470. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/erb_converter.rb +0 -0
  471. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/filter.rb +0 -0
  472. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/grammar.rb +0 -0
  473. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/include.rb +0 -0
  474. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/interpolation.rb +0 -0
  475. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/logic_less/context.rb +0 -0
  476. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/logic_less/filter.rb +0 -0
  477. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/logic_less.rb +0 -0
  478. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/parser.rb +0 -0
  479. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/railtie.rb +0 -0
  480. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/smart/escaper.rb +0 -0
  481. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/smart/filter.rb +0 -0
  482. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/smart/parser.rb +0 -0
  483. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/smart.rb +0 -0
  484. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/splat/builder.rb +0 -0
  485. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/splat/filter.rb +0 -0
  486. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/template.rb +0 -0
  487. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/translator.rb +0 -0
  488. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim/version.rb +0 -0
  489. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/lib/slim.rb +0 -0
  490. /data/bundle/ruby/{3.1.0 → 3.2.0}/gems/slim-5.2.1/slim.gemspec +0 -0
  491. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/EXPRESSIONS.md +0 -0
  492. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/Gemfile +0 -0
  493. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/LICENSE +0 -0
  494. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/README.md +0 -0
  495. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/engine.rb +0 -0
  496. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/erb/engine.rb +0 -0
  497. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/erb/parser.rb +0 -0
  498. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/erb/template.rb +0 -0
  499. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/erb/trimming.rb +0 -0
  500. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/exceptions.rb +0 -0
  501. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filter.rb +0 -0
  502. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/ambles.rb +0 -0
  503. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/code_merger.rb +0 -0
  504. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/control_flow.rb +0 -0
  505. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/dynamic_inliner.rb +0 -0
  506. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/dynamic_merger.rb +0 -0
  507. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/eraser.rb +0 -0
  508. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/escapable.rb +0 -0
  509. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/multi_flattener.rb +0 -0
  510. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/remove_bom.rb +0 -0
  511. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/static_analyzer.rb +0 -0
  512. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/static_merger.rb +0 -0
  513. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/string_splitter.rb +0 -0
  514. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/filters/validator.rb +0 -0
  515. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/generator.rb +0 -0
  516. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/generators/array.rb +0 -0
  517. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/generators/array_buffer.rb +0 -0
  518. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/generators/erb.rb +0 -0
  519. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/generators/rails_output_buffer.rb +0 -0
  520. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/generators/string_buffer.rb +0 -0
  521. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/grammar.rb +0 -0
  522. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/html/attribute_merger.rb +0 -0
  523. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/html/attribute_remover.rb +0 -0
  524. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/html/attribute_sorter.rb +0 -0
  525. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/html/dispatcher.rb +0 -0
  526. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/html/fast.rb +0 -0
  527. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/html/filter.rb +0 -0
  528. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/html/pretty.rb +0 -0
  529. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/html/safe.rb +0 -0
  530. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/map.rb +0 -0
  531. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/mixins/dispatcher.rb +0 -0
  532. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/mixins/engine_dsl.rb +0 -0
  533. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/mixins/grammar_dsl.rb +0 -0
  534. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/mixins/options.rb +0 -0
  535. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/mixins/template.rb +0 -0
  536. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/parser.rb +0 -0
  537. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/static_analyzer.rb +0 -0
  538. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/templates/rails.rb +0 -0
  539. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/templates/tilt.rb +0 -0
  540. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/templates.rb +0 -0
  541. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple/utils.rb +0 -0
  542. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/lib/temple.rb +0 -0
  543. /data/bundle/ruby/{3.1.0/gems/temple-0.10.3 → 3.2.0/gems/temple-0.10.4}/temple.gemspec +0 -0
  544. /data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/Gemfile +0 -0
  545. /data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/LICENSE.txt +0 -0
  546. /data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/Manifest +0 -0
  547. /data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/Todo.rdoc +0 -0
  548. /data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/lib/terminal-table/import.rb +0 -0
  549. /data/bundle/ruby/{3.1.0/gems/terminal-table-1.8.0 → 3.2.0/gems/terminal-table-4.0.0}/lib/terminal-table/table_helper.rb +0 -0
  550. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/COPYING +0 -0
  551. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/_emacs_org.rb +0 -0
  552. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/_handlebars.rb +0 -0
  553. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/_jbuilder.rb +0 -0
  554. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/_org.rb +0 -0
  555. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/asciidoc.rb +0 -0
  556. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/babel.rb +0 -0
  557. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/builder.rb +0 -0
  558. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/cli.rb +0 -0
  559. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/coffee.rb +0 -0
  560. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/commonmarker.rb +0 -0
  561. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/csv.rb +0 -0
  562. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/erb.rb +0 -0
  563. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/erubi.rb +0 -0
  564. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/etanni.rb +0 -0
  565. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/haml.rb +0 -0
  566. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/kramdown.rb +0 -0
  567. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/livescript.rb +0 -0
  568. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/markaby.rb +0 -0
  569. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/nokogiri.rb +0 -0
  570. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/pandoc.rb +0 -0
  571. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/pipeline.rb +0 -0
  572. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/plain.rb +0 -0
  573. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/prawn.rb +0 -0
  574. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/radius.rb +0 -0
  575. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/rdiscount.rb +0 -0
  576. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/redcarpet.rb +0 -0
  577. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/redcloth.rb +0 -0
  578. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/rst-pandoc.rb +0 -0
  579. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/sass.rb +0 -0
  580. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/slim.rb +0 -0
  581. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/string.rb +0 -0
  582. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/typescript.rb +0 -0
  583. /data/bundle/ruby/{3.1.0/gems/tilt-2.4.0 → 3.2.0/gems/tilt-2.6.1}/lib/tilt/yajl.rb +0 -0
@@ -0,0 +1,344 @@
1
+ require_relative '../lib/unicode/emoji/constants'
2
+ require_relative '../lib/unicode/emoji/index'
3
+ require_relative '../lib/unicode/emoji/lazy_constants'
4
+
5
+ include Unicode::Emoji
6
+
7
+ def write_regexes(regexes, dirpath)
8
+ regexes.each do |const_name, regex|
9
+ write_regex(const_name, regex, dirpath)
10
+ end
11
+ end
12
+
13
+ def write_regex(const_name, regex, dirpath)
14
+ filename = const_name.to_s.downcase
15
+ filepath = File.join(dirpath, "#{filename}.rb")
16
+
17
+ File.write(filepath, <<~CONTENT)
18
+ # This file was generated by a script, please do not edit it by hand.
19
+ # See `$ rake generate_constants` and data/generate_constants.rb for more info.
20
+
21
+ module Unicode
22
+ module Emoji
23
+ #{const_name} = #{regex.inspect}
24
+ end
25
+ end
26
+ CONTENT
27
+ puts "#{const_name} written to #{filepath}"
28
+ end
29
+
30
+ # Converts [1, 2, 3, 5, 6, 20, 21, 22, 23, 100] (it does not need to be sorted) to [[1, 2, 3], [5, 6], [20, 21, 22, 23], [100]]
31
+ def groupify(arr)
32
+ arr = arr.sort
33
+ prev = nil
34
+ arr.slice_before do |el|
35
+ (prev.nil? || el != prev + 1).tap { prev = el }
36
+ end
37
+ end
38
+
39
+ # Converts [1, 2, 3, 5, 6, 20, 21, 22, 23, 100] (it does not need to be sorted) to [1..3, 5, 6, 20..23, 100]
40
+ def rangify(arr)
41
+ groupify(arr).map do |group|
42
+ group.size < 3 ? group : Range.new(group.first, group.last)
43
+ end.flatten
44
+ end
45
+
46
+ def pack(ord)
47
+ Regexp.escape(Array(ord).pack("U*"))
48
+ end
49
+
50
+ def join(*strings)
51
+ "(?:" + strings.join("|") + ")"
52
+ end
53
+
54
+ def character_class(ords_with_ranges)
55
+ "[" + ords_with_ranges.map{ |ord_or_range|
56
+ ord_or_range.is_a?(Range) ?
57
+ pack(ord_or_range.first) + "-" + pack(ord_or_range.last) :
58
+ pack(ord_or_range)
59
+ }.join +
60
+ "]"
61
+ end
62
+
63
+ def pack_and_join(ords)
64
+ if ords.any? { |e| e.is_a?(Array) }
65
+ join(*ords.map { |ord| pack(ord) })
66
+ else
67
+ character_class(rangify(ords))
68
+ end
69
+ end
70
+
71
+ def compile(emoji_character:, emoji_modifier:, emoji_modifier_base:, emoji_component:, emoji_presentation:, text_presentation:, picto:, picto_no_emoji:)
72
+ visual_component = pack_and_join(VISUAL_COMPONENT)
73
+
74
+ emoji_presentation_sequence = \
75
+ join(
76
+ text_presentation + pack(EMOJI_VARIATION_SELECTOR),
77
+ emoji_presentation + "(?!" + pack(TEXT_VARIATION_SELECTOR) + ")" + pack(EMOJI_VARIATION_SELECTOR) + "?",
78
+ )
79
+
80
+ non_component_emoji_presentation_sequence = \
81
+ "(?!" + emoji_component + ")" + emoji_presentation_sequence
82
+
83
+ basic_emoji = \
84
+ join(
85
+ non_component_emoji_presentation_sequence,
86
+ visual_component,
87
+ )
88
+
89
+ text_keycap_sequence = \
90
+ pack_and_join(EMOJI_KEYCAPS) + pack(EMOJI_KEYCAP_SUFFIX)
91
+
92
+ text_presentation_sequence = \
93
+ join(
94
+ text_presentation + "(?!" + join(emoji_modifier, pack(EMOJI_VARIATION_SELECTOR)) + ")" + pack(TEXT_VARIATION_SELECTOR) + "?",
95
+ emoji_presentation + pack(TEXT_VARIATION_SELECTOR),
96
+ )
97
+
98
+ text_emoji = \
99
+ join(
100
+ "(?!" + emoji_component + ")" + text_presentation_sequence,
101
+ text_keycap_sequence,
102
+ )
103
+
104
+ emoji_modifier_sequence = \
105
+ emoji_modifier_base + emoji_modifier
106
+
107
+ emoji_keycap_sequence = \
108
+ pack_and_join(EMOJI_KEYCAPS) + pack([EMOJI_VARIATION_SELECTOR, EMOJI_KEYCAP_SUFFIX])
109
+
110
+ emoji_valid_flag_sequence = \
111
+ pack_and_join(VALID_REGION_FLAGS)
112
+
113
+ emoji_well_formed_flag_sequence = \
114
+ '\p{RI}{2}'
115
+
116
+ emoji_core_sequence = \
117
+ join(
118
+ emoji_keycap_sequence,
119
+ emoji_modifier_sequence,
120
+ non_component_emoji_presentation_sequence,
121
+ )
122
+
123
+ # Sort to make sure complex sequences match first
124
+ emoji_rgi_tag_sequence = \
125
+ pack_and_join(RECOMMENDED_SUBDIVISION_FLAGS.sort_by(&:length).reverse)
126
+
127
+ emoji_valid_tag_sequence = \
128
+ "(?:" +
129
+ pack(EMOJI_TAG_BASE_FLAG) +
130
+ "(?:" + VALID_SUBDIVISIONS.sort_by(&:length).reverse.map{ |sd|
131
+ sd.tr("\u{30}-\u{39}\u{61}-\u{7A}", "\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}")
132
+ }.join("|") + ")" +
133
+ pack(CANCEL_TAG) +
134
+ ")"
135
+
136
+ emoji_well_formed_tag_sequence = \
137
+ "(?:" +
138
+ join(
139
+ non_component_emoji_presentation_sequence,
140
+ emoji_modifier_sequence,
141
+ ) +
142
+ pack_and_join(SPEC_TAGS) + "{1,30}" +
143
+ pack(CANCEL_TAG) +
144
+ ")"
145
+
146
+ # Sort to make sure complex sequences match first
147
+ emoji_rgi_zwj_sequence = \
148
+ pack_and_join(RECOMMENDED_ZWJ_SEQUENCES.sort_by(&:length).reverse)
149
+
150
+ # FQE+MQE: Make VS16 optional after ZWJ has appeared
151
+ emoji_rgi_include_mqe_zwj_sequence = emoji_rgi_zwj_sequence.gsub(
152
+ /#{ pack(ZWJ) }[^|]+?\K#{ pack(EMOJI_VARIATION_SELECTOR) }/,
153
+ pack(EMOJI_VARIATION_SELECTOR) + "?"
154
+ )
155
+
156
+ # FQE+MQE+UQE: Make all VS16 optional
157
+ emoji_rgi_include_mqe_uqe_zwj_sequence = emoji_rgi_zwj_sequence.gsub(
158
+ pack(EMOJI_VARIATION_SELECTOR),
159
+ pack(EMOJI_VARIATION_SELECTOR) + "?",
160
+ )
161
+
162
+ emoji_valid_zwj_element = \
163
+ join(
164
+ emoji_modifier_sequence,
165
+ emoji_presentation_sequence,
166
+ emoji_character,
167
+ )
168
+
169
+ emoji_valid_zwj_sequence = \
170
+ "(?:" +
171
+ "(?:" + emoji_valid_zwj_element + pack(ZWJ) + ")+" + emoji_valid_zwj_element +
172
+ ")"
173
+
174
+ emoji_rgi_sequence = \
175
+ join(
176
+ emoji_rgi_zwj_sequence,
177
+ emoji_rgi_tag_sequence,
178
+ emoji_valid_flag_sequence,
179
+ emoji_core_sequence,
180
+ visual_component,
181
+ )
182
+
183
+ emoji_rgi_sequence_include_text = \
184
+ join(
185
+ emoji_rgi_zwj_sequence,
186
+ emoji_rgi_tag_sequence,
187
+ emoji_valid_flag_sequence,
188
+ emoji_core_sequence,
189
+ visual_component,
190
+ text_emoji,
191
+ )
192
+
193
+ emoji_rgi_include_mqe_sequence = \
194
+ join(
195
+ emoji_rgi_include_mqe_zwj_sequence,
196
+ emoji_rgi_tag_sequence,
197
+ emoji_valid_flag_sequence,
198
+ emoji_core_sequence,
199
+ visual_component,
200
+ )
201
+
202
+ emoji_rgi_include_mqe_uqe_sequence = \
203
+ join(
204
+ emoji_rgi_include_mqe_uqe_zwj_sequence,
205
+ text_emoji, # also uqe
206
+ emoji_rgi_tag_sequence,
207
+ emoji_valid_flag_sequence,
208
+ emoji_core_sequence,
209
+ visual_component,
210
+ )
211
+
212
+ emoji_valid_sequence = \
213
+ join(
214
+ emoji_valid_zwj_sequence,
215
+ emoji_valid_tag_sequence,
216
+ emoji_valid_flag_sequence,
217
+ emoji_core_sequence,
218
+ visual_component,
219
+ )
220
+
221
+ emoji_valid_sequence_include_text = \
222
+ join(
223
+ emoji_valid_zwj_sequence,
224
+ emoji_valid_tag_sequence,
225
+ emoji_valid_flag_sequence,
226
+ emoji_core_sequence,
227
+ visual_component,
228
+ text_emoji,
229
+ )
230
+
231
+ emoji_well_formed_sequence = \
232
+ join(
233
+ emoji_valid_zwj_sequence,
234
+ emoji_well_formed_tag_sequence,
235
+ emoji_well_formed_flag_sequence,
236
+ emoji_core_sequence,
237
+ visual_component,
238
+ )
239
+
240
+ emoji_well_formed_sequence_include_text = \
241
+ join(
242
+ emoji_valid_zwj_sequence,
243
+ emoji_well_formed_tag_sequence,
244
+ emoji_well_formed_flag_sequence,
245
+ emoji_core_sequence,
246
+ visual_component,
247
+ text_emoji,
248
+ )
249
+
250
+ emoji_possible_modification = \
251
+ join(
252
+ emoji_modifier,
253
+ pack([EMOJI_VARIATION_SELECTOR, EMOJI_KEYCAP_SUFFIX]) + "?",
254
+ "[󠀠-󠁾]+󠁿" # raw tags
255
+ )
256
+
257
+ emoji_possible_zwj_element = \
258
+ join(
259
+ emoji_well_formed_flag_sequence,
260
+ emoji_character + emoji_possible_modification + "?"
261
+ )
262
+
263
+ emoji_possible = \
264
+ emoji_possible_zwj_element + "(?:" + pack(ZWJ) + emoji_possible_zwj_element + ")*"
265
+
266
+ regexes = {}
267
+
268
+ # Matches basic singleton emoji and all kind of sequences, but restrict zwj and tag sequences to known sequences (rgi)
269
+ regexes[:REGEX] = Regexp.compile(emoji_rgi_sequence)
270
+
271
+ # rgi + singleton text
272
+ regexes[:REGEX_INCLUDE_TEXT] = Regexp.compile(emoji_rgi_sequence_include_text)
273
+
274
+ # Matches basic singleton emoji and all kind of sequences, but restrict zwj and tag sequences to known sequences (rgi)
275
+ # Also make VS16 optional if not at first emoji character
276
+ regexes[:REGEX_INCLUDE_MQE] = Regexp.compile(emoji_rgi_include_mqe_sequence)
277
+
278
+ # Matches basic singleton emoji and all kind of sequences, but restrict zwj and tag sequences to known sequences (rgi)
279
+ # Also make VS16 optional even at first emoji character
280
+ regexes[:REGEX_INCLUDE_MQE_UQE] = Regexp.compile(emoji_rgi_include_mqe_uqe_sequence)
281
+
282
+ # Matches basic singleton emoji and all kind of valid sequences
283
+ regexes[:REGEX_VALID] = Regexp.compile(emoji_valid_sequence)
284
+
285
+ # valid + singleton text
286
+ regexes[:REGEX_VALID_INCLUDE_TEXT] = Regexp.compile(emoji_valid_sequence_include_text)
287
+
288
+ # Matches basic singleton emoji and all kind of sequences
289
+ regexes[:REGEX_WELL_FORMED] = Regexp.compile(emoji_well_formed_sequence)
290
+
291
+ # well-formed + singleton text
292
+ regexes[:REGEX_WELL_FORMED_INCLUDE_TEXT] = Regexp.compile(emoji_well_formed_sequence_include_text)
293
+
294
+ # Quick test which might lead to false positves
295
+ # See https://www.unicode.org/reports/tr51/#EBNF_and_Regex
296
+ regexes[:REGEX_POSSIBLE] = Regexp.compile(emoji_possible)
297
+
298
+ # Matches only basic single, non-textual emoji, ignores some components like simple digits
299
+ regexes[:REGEX_BASIC] = Regexp.compile(basic_emoji)
300
+
301
+ # Matches only basic single, textual emoji, ignores components like modifiers or simple digits
302
+ regexes[:REGEX_TEXT] = Regexp.compile(text_emoji)
303
+ regexes[:REGEX_TEXT_PRESENTATION] = Regexp.compile(text_presentation)
304
+
305
+ # Export regexes for Emoji properties so they can be used with newer Unicode than Ruby's
306
+ regexes[:REGEX_PROP_EMOJI] = Regexp.compile(emoji_character)
307
+ regexes[:REGEX_PROP_MODIFIER] = Regexp.compile(emoji_modifier)
308
+ regexes[:REGEX_PROP_MODIFIER_BASE] = Regexp.compile(emoji_modifier_base)
309
+ regexes[:REGEX_PROP_COMPONENT] = Regexp.compile(emoji_component)
310
+ regexes[:REGEX_PROP_PRESENTATION] = Regexp.compile(emoji_presentation)
311
+
312
+ # Same goes for ExtendedPictographic
313
+ regexes[:REGEX_PICTO] = Regexp.compile(picto)
314
+ regexes[:REGEX_PICTO_NO_EMOJI] = Regexp.compile(picto_no_emoji)
315
+
316
+ # Emoji keycaps
317
+ regexes[:REGEX_EMOJI_KEYCAP] = Regexp.compile(emoji_keycap_sequence)
318
+
319
+ regexes
320
+ end
321
+
322
+ regexes = compile(
323
+ emoji_character: pack_and_join(EMOJI_CHAR),
324
+ emoji_modifier: pack_and_join(EMOJI_MODIFIERS),
325
+ emoji_modifier_base: pack_and_join(EMOJI_MODIFIER_BASES),
326
+ emoji_component: pack_and_join(EMOJI_COMPONENT),
327
+ emoji_presentation: pack_and_join(EMOJI_PRESENTATION),
328
+ text_presentation: pack_and_join(TEXT_PRESENTATION),
329
+ picto: pack_and_join(EXTENDED_PICTOGRAPHIC),
330
+ picto_no_emoji: pack_and_join(EXTENDED_PICTOGRAPHIC_NO_EMOJI)
331
+ )
332
+ write_regexes(regexes, File.expand_path("../lib/unicode/emoji/generated", __dir__))
333
+
334
+ native_regexes = compile(
335
+ emoji_character: "\\p{Emoji}",
336
+ emoji_modifier: "\\p{EMod}",
337
+ emoji_modifier_base: "\\p{EBase}",
338
+ emoji_component: "\\p{EComp}",
339
+ emoji_presentation: "\\p{EPres}",
340
+ text_presentation: "[\\p{Emoji}&&\\P{EPres}]",
341
+ picto: "\\p{ExtPict}",
342
+ picto_no_emoji: "[\\p{ExtPict}&&\\P{Emoji}]"
343
+ )
344
+ write_regexes(native_regexes, File.expand_path("../lib/unicode/emoji/generated_native", __dir__))
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Unicode
4
+ module Emoji
5
+ VERSION = "4.2.0"
6
+ EMOJI_VERSION = "17.0"
7
+ UNICODE_VERSION = "17.0.0"
8
+ CLDR_VERSION = "48"
9
+ DATA_DIRECTORY = File.expand_path('../../../data', __dir__).freeze
10
+ INDEX_FILENAME = (DATA_DIRECTORY + "/emoji.marshal.gz").freeze
11
+
12
+ # Unicode properties, see https://www.unicode.org/Public/16.0.0/ucd/emoji/emoji-data.txt
13
+ PROPERTY_NAMES = {
14
+ E: "Emoji",
15
+ B: "Emoji_Modifier_Base",
16
+ M: "Emoji_Modifier",
17
+ C: "Emoji_Component",
18
+ P: "Emoji_Presentation",
19
+ X: "Extended_Pictographic",
20
+ }.freeze
21
+
22
+ # Variation Selector 16 (VS16), enables emoji presentation mode for preceding codepoint
23
+ EMOJI_VARIATION_SELECTOR = 0xFE0F
24
+
25
+ # Variation Selector 15 (VS15), enables text presentation mode for preceding codepoint
26
+ TEXT_VARIATION_SELECTOR = 0xFE0E
27
+
28
+ # First codepoint of tag-based subdivision flags
29
+ EMOJI_TAG_BASE_FLAG = 0x1F3F4
30
+
31
+ # Last codepoint of tag-based subdivision flags
32
+ CANCEL_TAG = 0xE007F
33
+
34
+ # Tags characters allowed in tag-based subdivision flags
35
+ SPEC_TAGS = [*0xE0030..0xE0039, *0xE0061..0xE007A].freeze
36
+
37
+ # Combining Enclosing Keycap character
38
+ EMOJI_KEYCAP_SUFFIX = 0x20E3
39
+
40
+ # Zero-width-joiner to enable combination of multiple Emoji in a sequence
41
+ ZWJ = 0x200D
42
+
43
+ # Two regional indicators make up a region
44
+ REGIONAL_INDICATORS = [*0x1F1E6..0x1F1FF].freeze
45
+
46
+ # The current list of Emoji components that should have a visual representation
47
+ # Currently skin tone modifiers + hair components
48
+ VISUAL_COMPONENT = [*0x1F3FB..0x1F3FF, *0x1F9B0..0x1F9B3].freeze
49
+ end
50
+ end
@@ -0,0 +1,8 @@
1
+ # This file was generated by a script, please do not edit it by hand.
2
+ # See `$ rake generate_constants` and data/generate_constants.rb for more info.
3
+
4
+ module Unicode
5
+ module Emoji
6
+ REGEX = /(?:(?:👩🏾‍❤️‍💋‍👩🏻|👩🏾‍❤️‍💋‍👨🏿|👩🏾‍❤️‍💋‍👨🏾|👨🏽‍❤️‍💋‍👨🏻|👨🏽‍❤️‍💋‍👨🏼|👨🏽‍❤️‍💋‍👨🏽|👨🏽‍❤️‍💋‍👨🏾|👨🏽‍❤️‍💋‍👨🏿|👩🏾‍❤️‍💋‍👨🏽|👩🏾‍❤️‍💋‍👨🏼|👩🏾‍❤️‍💋‍👨🏻|👨🏾‍❤️‍💋‍👨🏻|👨🏾‍❤️‍💋‍👨🏼|👨🏾‍❤️‍💋‍👨🏽|👨🏾‍❤️‍💋‍👨🏾|👨🏾‍❤️‍💋‍👨🏿|👩🏽‍❤️‍💋‍👩🏿|👩🏿‍❤️‍💋‍👩🏽|👩🏿‍❤️‍💋‍👩🏼|👩🏿‍❤️‍💋‍👩🏻|👩🏿‍❤️‍💋‍👨🏿|👩🏿‍❤️‍💋‍👨🏾|👩🏿‍❤️‍💋‍👨🏽|👩🏿‍❤️‍💋‍👨🏼|👩🏿‍❤️‍💋‍👨🏻|👨🏼‍❤️‍💋‍👨🏻|👨🏼‍❤️‍💋‍👨🏼|👨🏼‍❤️‍💋‍👨🏽|👨🏼‍❤️‍💋‍👨🏾|👨🏼‍❤️‍💋‍👨🏿|👩🏾‍❤️‍💋‍👩🏿|👩🏾‍❤️‍💋‍👩🏾|👩🏾‍❤️‍💋‍👩🏽|👩🏾‍❤️‍💋‍👩🏼|👩🏼‍❤️‍💋‍👩🏼|👩🏼‍❤️‍💋‍👩🏻|👩🏼‍❤️‍💋‍👨🏿|👩🏼‍❤️‍💋‍👨🏾|👩🏼‍❤️‍💋‍👨🏽|👩🏼‍❤️‍💋‍👨🏼|👩🏼‍❤️‍💋‍👨🏻|👩🏻‍❤️‍💋‍👨🏻|👩🏻‍❤️‍💋‍👨🏼|👩🏻‍❤️‍💋‍👨🏽|👩🏻‍❤️‍💋‍👨🏾|👩🏻‍❤️‍💋‍👨🏿|👩🏻‍❤️‍💋‍👩🏻|👩🏻‍❤️‍💋‍👩🏼|👩🏻‍❤️‍💋‍👩🏽|👩🏻‍❤️‍💋‍👩🏾|👩🏻‍❤️‍💋‍👩🏿|👩🏽‍❤️‍💋‍👩🏾|👩🏽‍❤️‍💋‍👩🏽|👩🏽‍❤️‍💋‍👩🏼|👩🏽‍❤️‍💋‍👩🏻|👩🏽‍❤️‍💋‍👨🏿|👩🏽‍❤️‍💋‍👨🏾|👩🏽‍❤️‍💋‍👨🏽|👩🏽‍❤️‍💋‍👨🏼|👩🏽‍❤️‍💋‍👨🏻|👨🏿‍❤️‍💋‍👨🏻|👨🏿‍❤️‍💋‍👨🏼|👨🏿‍❤️‍💋‍👨🏽|👨🏿‍❤️‍💋‍👨🏾|👨🏿‍❤️‍💋‍👨🏿|👩🏼‍❤️‍💋‍👩🏿|👩🏼‍❤️‍💋‍👩🏾|👨🏻‍❤️‍💋‍👨🏼|👨🏻‍❤️‍💋‍👨🏻|🧑🏼‍❤️‍💋‍🧑🏻|🧑🏼‍❤️‍💋‍🧑🏽|🧑🏼‍❤️‍💋‍🧑🏾|🧑🏼‍❤️‍💋‍🧑🏿|🧑🏽‍❤️‍💋‍🧑🏻|🧑🏽‍❤️‍💋‍🧑🏼|🧑🏽‍❤️‍💋‍🧑🏾|🧑🏽‍❤️‍💋‍🧑🏿|🧑🏾‍❤️‍💋‍🧑🏻|🧑🏾‍❤️‍💋‍🧑🏼|🧑🏾‍❤️‍💋‍🧑🏽|🧑🏾‍❤️‍💋‍🧑🏿|🧑🏿‍❤️‍💋‍🧑🏾|🧑🏿‍❤️‍💋‍🧑🏽|🧑🏿‍❤️‍💋‍🧑🏻|🧑🏿‍❤️‍💋‍🧑🏼|👩🏼‍❤️‍💋‍👩🏽|👩🏿‍❤️‍💋‍👩🏾|👩🏿‍❤️‍💋‍👩🏿|🧑🏻‍❤️‍💋‍🧑🏼|🧑🏻‍❤️‍💋‍🧑🏽|🧑🏻‍❤️‍💋‍🧑🏾|🧑🏻‍❤️‍💋‍🧑🏿|👨🏻‍❤️‍💋‍👨🏿|👨🏻‍❤️‍💋‍👨🏾|👨🏻‍❤️‍💋‍👨🏽|👩🏽‍❤️‍👩🏻|👩🏽‍❤️‍👨🏿|👩🏽‍❤️‍👨🏾|👩🏽‍❤️‍👨🏽|👩🏽‍❤️‍👨🏼|👩🏽‍❤️‍👨🏻|🧑🏿‍❤️‍🧑🏾|🚶🏿‍♀️‍➡️|🚶🏾‍♂️‍➡️|🚶🏾‍♀️‍➡️|🏃🏿‍♂️‍➡️|👩🏽‍❤️‍👩🏼|👩🏽‍❤️‍👩🏽|👩🏽‍❤️‍👩🏾|🚶🏿‍♂️‍➡️|🧑🏿‍❤️‍🧑🏽|🧑🏿‍❤️‍🧑🏼|🧑🏿‍❤️‍🧑🏻|🏃🏻‍♂️‍➡️|🏃🏻‍♀️‍➡️|👩🏼‍❤️‍👨🏻|👩🏼‍❤️‍👨🏼|👩🏼‍❤️‍👨🏽|🏃🏼‍♀️‍➡️|🏃🏼‍♂️‍➡️|👩🏼‍❤️‍👨🏾|🏃🏽‍♀️‍➡️|🏃🏽‍♂️‍➡️|🏃🏾‍♀️‍➡️|👩🏼‍❤️‍👨🏿|👩🏼‍❤️‍👩🏻|👩🏼‍❤️‍👩🏼|👩🏼‍❤️‍👩🏽|🏃🏾‍♂️‍➡️|🏃🏿‍♀️‍➡️|👩🏼‍❤️‍👩🏾|👩🏼‍❤️‍👩🏿|🚶🏻‍♀️‍➡️|🚶🏻‍♂️‍➡️|🚶🏼‍♀️‍➡️|🚶🏼‍♂️‍➡️|🚶🏽‍♀️‍➡️|🚶🏽‍♂️‍➡️|👩🏽‍❤️‍👩🏿|👩🏾‍❤️‍👩🏻|👩🏾‍❤️‍👩🏼|👩🏾‍❤️‍👩🏽|👩🏾‍❤️‍👩🏾|👩🏾‍❤️‍👩🏿|🧑🏼‍❤️‍🧑🏿|🧑🏼‍❤️‍🧑🏾|🧑🏼‍❤️‍🧑🏽|🧑🏼‍❤️‍🧑🏻|🧑🏻‍❤️‍🧑🏿|👩🏿‍❤️‍👨🏻|👩🏿‍❤️‍👨🏼|👩🏿‍❤️‍👨🏽|👩🏿‍❤️‍👨🏾|👩🏿‍❤️‍👨🏿|👩🏿‍❤️‍👩🏻|👩🏿‍❤️‍👩🏼|👩🏿‍❤️‍👩🏽|👩🏿‍❤️‍👩🏾|👩🏿‍❤️‍👩🏿|🧑🏻‍❤️‍🧑🏾|🧑🏻‍❤️‍🧑🏽|🧑🏻‍❤️‍🧑🏼|🧑🏾‍❤️‍🧑🏿|🧑🏾‍❤️‍🧑🏽|🧑🏾‍❤️‍🧑🏼|🧑🏾‍❤️‍🧑🏻|🧎🏿‍♂️‍➡️|🧎🏿‍♀️‍➡️|🧎🏾‍♂️‍➡️|🧎🏾‍♀️‍➡️|🧎🏽‍♂️‍➡️|🧎🏽‍♀️‍➡️|🧑🏽‍❤️‍🧑🏿|🧑🏽‍❤️‍🧑🏾|🧑🏽‍❤️‍🧑🏼|🧑🏽‍❤️‍🧑🏻|🧎🏼‍♂️‍➡️|🧎🏼‍♀️‍➡️|🧎🏻‍♂️‍➡️|🧎🏻‍♀️‍➡️|👩🏾‍❤️‍👨🏻|👩🏾‍❤️‍👨🏼|👩🏾‍❤️‍👨🏽|👩🏾‍❤️‍👨🏾|👩🏾‍❤️‍👨🏿|👩🏻‍❤️‍👩🏻|👩🏻‍❤️‍👨🏿|👩🏻‍❤️‍👨🏾|👩🏻‍❤️‍👨🏽|👩🏻‍❤️‍👨🏼|👩🏻‍❤️‍👨🏻|👨🏽‍❤️‍👨🏼|👨🏻‍❤️‍👨🏾|👨🏼‍❤️‍👨🏻|👩‍❤️‍💋‍👩|👩‍❤️‍💋‍👨|👨🏼‍❤️‍👨🏼|👨🏼‍❤️‍👨🏽|👨🏼‍❤️‍👨🏾|👨🏼‍❤️‍👨🏿|👨🏻‍❤️‍👨🏽|👨🏻‍❤️‍👨🏼|👨🏻‍❤️‍👨🏻|👨🏽‍❤️‍👨🏽|👨‍❤️‍💋‍👨|👨🏾‍❤️‍👨🏼|👨🏾‍❤️‍👨🏽|👨🏿‍❤️‍👨🏿|👨🏾‍❤️‍👨🏾|👨🏿‍❤️‍👨🏾|👨🏾‍❤️‍👨🏿|👨🏿‍❤️‍👨🏽|👨🏾‍❤️‍👨🏻|👨🏿‍❤️‍👨🏼|👨🏻‍❤️‍👨🏿|👨🏿‍❤️‍👨🏻|👨🏽‍❤️‍👨🏿|👨🏽‍❤️‍👨🏾|👨🏽‍❤️‍👨🏻|👩🏻‍❤️‍👩🏿|👩🏻‍❤️‍👩🏾|👩🏻‍❤️‍👩🏽|👩🏻‍❤️‍👩🏼|🧑🏼‍🐰‍🧑🏿|👨‍👨‍👧‍👦|🧑🏼‍🐰‍🧑🏾|🧑🏼‍🐰‍🧑🏽|🧑🏼‍🐰‍🧑🏻|🧑🏽‍🤝‍🧑🏿|🧑🏼‍🫯‍🧑🏻|🧑🏼‍🫯‍🧑🏽|🧑🏼‍🫯‍🧑🏾|🧑🏾‍🤝‍🧑🏻|🧑🏾‍🤝‍🧑🏼|🧑🏾‍🤝‍🧑🏽|🧑🏾‍🤝‍🧑🏾|🧑🏾‍🤝‍🧑🏿|🧑🏼‍🫯‍🧑🏿|🧑🏽‍🐰‍🧑🏻|🧑🏽‍🐰‍🧑🏼|🧑🏽‍🐰‍🧑🏾|🧑🏽‍🐰‍🧑🏿|👨‍👨‍👦‍👦|🧑🏽‍🫯‍🧑🏻|👨‍👩‍👦‍👦|👨‍👩‍👧‍👦|👨‍👩‍👧‍👧|🧑🏻‍🤝‍🧑🏿|🧑🏻‍🤝‍🧑🏾|🧑🏻‍🤝‍🧑🏽|🧑🏻‍🤝‍🧑🏼|🧑🏻‍🤝‍🧑🏻|👨🏻‍🐰‍👨🏼|👨🏻‍🐰‍👨🏽|👨🏻‍🐰‍👨🏾|👨🏻‍🐰‍👨🏿|👨🏻‍🤝‍👨🏼|👨🏻‍🤝‍👨🏽|👨🏻‍🤝‍👨🏾|🧑‍🧑‍🧒‍🧒|👩🏿‍🫯‍👩🏾|👩🏿‍🫯‍👩🏽|🧑🏽‍🤝‍🧑🏾|🧑🏽‍🤝‍🧑🏽|🧑🏽‍🤝‍🧑🏼|🧑🏽‍🤝‍🧑🏻|🧑🏻‍🫯‍🧑🏿|🧑🏻‍🫯‍🧑🏾|🧑🏻‍🫯‍🧑🏽|🧑🏻‍🫯‍🧑🏼|👨‍👨‍👧‍👧|🧑🏻‍🐰‍🧑🏿|🧑🏻‍🐰‍🧑🏾|🧑🏻‍🐰‍🧑🏽|🧑🏼‍🤝‍🧑🏿|🧑🏼‍🤝‍🧑🏾|🧑🏼‍🤝‍🧑🏽|🧑🏼‍🤝‍🧑🏼|🧑🏼‍🤝‍🧑🏻|🧑🏻‍🐰‍🧑🏼|🧑🏽‍🦼‍➡️|🧑🏽‍🦯‍➡️|🧑🏼‍🦽‍➡️|🧑🏼‍🦼‍➡️|🧑🏼‍🦯‍➡️|🧑🏻‍🦽‍➡️|🧑🏻‍🦼‍➡️|🧑🏻‍🦯‍➡️|👩🏿‍🦽‍➡️|👩🏿‍🦼‍➡️|👩🏿‍🦯‍➡️|👩🏾‍🦽‍➡️|👩🏾‍🦼‍➡️|👩🏾‍🦯‍➡️|👩🏽‍🦽‍➡️|👩🏽‍🦼‍➡️|👩🏽‍🦯‍➡️|👩🏼‍🦽‍➡️|🧑🏿‍🫯‍🧑🏾|🧑🏿‍🫯‍🧑🏽|🧑🏿‍🫯‍🧑🏼|🧑🏿‍🫯‍🧑🏻|🧑🏿‍🐰‍🧑🏾|🧑🏿‍🐰‍🧑🏽|🧑🏿‍🐰‍🧑🏼|🧑🏿‍🐰‍🧑🏻|🧑🏾‍🫯‍🧑🏿|🏃‍♂️‍➡️|🏃‍♀️‍➡️|🧑🏿‍🦽‍➡️|🧑🏿‍🦼‍➡️|🧑🏿‍🦯‍➡️|🧑🏾‍🦽‍➡️|🧑🏾‍🦼‍➡️|🧑🏾‍🦯‍➡️|🧑🏽‍🦽‍➡️|👩🏼‍🦼‍➡️|👨🏻‍🦼‍➡️|🚶‍♂️‍➡️|👨🏻‍🦯‍➡️|🧑🏾‍🫯‍🧑🏽|🧑🏾‍🫯‍🧑🏼|🧑🏾‍🫯‍🧑🏻|🧑🏿‍🤝‍🧑🏿|🧑🏾‍🐰‍🧑🏿|🧑🏿‍🤝‍🧑🏾|🧑🏾‍🐰‍🧑🏽|🧑🏿‍🤝‍🧑🏽|🧑🏾‍🐰‍🧑🏼|🧑🏿‍🤝‍🧑🏼|🧑🏾‍🐰‍🧑🏻|🧑🏿‍🤝‍🧑🏻|🧑🏽‍🫯‍🧑🏿|🧑🏽‍🫯‍🧑🏾|🧑🏽‍🫯‍🧑🏼|👩🏼‍🦯‍➡️|👩🏻‍🦽‍➡️|👩🏻‍🦼‍➡️|👩🏻‍🦯‍➡️|👨🏿‍🦽‍➡️|👨🏿‍🦼‍➡️|👨🏿‍🦯‍➡️|👨🏾‍🦽‍➡️|👨🏾‍🦼‍➡️|👨🏾‍🦯‍➡️|👨🏽‍🦽‍➡️|👨🏽‍🦼‍➡️|👨🏽‍🦯‍➡️|👨🏼‍🦽‍➡️|👨🏼‍🦼‍➡️|👨🏼‍🦯‍➡️|👨🏻‍🦽‍➡️|🚶‍♀️‍➡️|👩🏿‍🫯‍👩🏼|👨🏾‍🫯‍👨🏻|👨🏾‍🫯‍👨🏼|👨🏾‍🫯‍👨🏽|👨🏾‍🫯‍👨🏿|👨🏿‍🐰‍👨🏻|👨🏿‍🐰‍👨🏼|👨🏿‍🐰‍👨🏽|👨🏿‍🐰‍👨🏾|👨🏿‍🤝‍👨🏻|👨🏿‍🤝‍👨🏼|👨🏿‍🤝‍👨🏽|👨🏿‍🤝‍👨🏾|👨🏿‍🫯‍👨🏻|👩🏼‍🫯‍👩🏿|👩🏼‍🫯‍👩🏾|👩🏼‍🫯‍👩🏽|👩🏼‍🫯‍👩🏻|👨🏾‍🐰‍👨🏻|👩🏽‍🤝‍👩🏻|👨🏾‍🐰‍👨🏼|👩🏽‍🤝‍👨🏿|👨🏾‍🐰‍👨🏽|👩🏽‍🤝‍👨🏾|👨🏾‍🐰‍👨🏿|👩🏽‍🤝‍👨🏼|👨🏾‍🤝‍👨🏻|👩🏽‍🤝‍👨🏻|👨🏾‍🤝‍👨🏼|👩🏽‍🐰‍👩🏿|👩🏽‍🐰‍👩🏾|👩🏽‍🐰‍👩🏼|👩🏽‍🐰‍👩🏻|👨🏾‍🤝‍👨🏽|👨🏾‍🤝‍👨🏿|👩‍👩‍👧‍👧|👩🏻‍🫯‍👩🏿|👩🏻‍🫯‍👩🏾|👩🏻‍🫯‍👩🏽|👩🏻‍🫯‍👩🏼|👩🏻‍🤝‍👩🏿|👩🏻‍🤝‍👩🏾|👩🏻‍🤝‍👩🏽|👩🏻‍🤝‍👩🏼|👩🏻‍🤝‍👨🏿|👩🏻‍🤝‍👨🏾|👩🏻‍🤝‍👨🏽|👩🏻‍🤝‍👨🏼|👩🏻‍🐰‍👩🏿|👩🏻‍🐰‍👩🏾|👩🏻‍🐰‍👩🏽|👩🏻‍🐰‍👩🏼|👩🏼‍🤝‍👩🏿|👩🏼‍🤝‍👩🏾|👩🏼‍🤝‍👩🏽|👩🏼‍🤝‍👩🏻|👩🏼‍🤝‍👨🏿|👩🏼‍🤝‍👨🏾|👩🏼‍🤝‍👨🏽|👩🏼‍🤝‍👨🏻|👩🏼‍🐰‍👩🏿|👩🏼‍🐰‍👩🏾|👩🏼‍🐰‍👩🏽|👩🏼‍🐰‍👩🏻|👨🏿‍🫯‍👨🏼|👨🏿‍🫯‍👨🏽|👨🏿‍🫯‍👨🏾|👩‍👩‍👦‍👦|👨🏼‍🐰‍👨🏻|👨🏼‍🐰‍👨🏽|👨🏼‍🐰‍👨🏾|👨🏼‍🐰‍👨🏿|👨🏼‍🤝‍👨🏻|👨🏼‍🤝‍👨🏽|👨🏼‍🤝‍👨🏾|👨🏼‍🤝‍👨🏿|👨🏼‍🫯‍👨🏻|👨🏼‍🫯‍👨🏽|👩🏾‍🫯‍👩🏿|👩🏾‍🫯‍👩🏽|👩🏾‍🫯‍👩🏼|👩🏾‍🫯‍👩🏻|👩🏾‍🤝‍👩🏿|👩🏾‍🤝‍👩🏽|👩🏾‍🤝‍👩🏼|👩🏾‍🤝‍👩🏻|👩🏿‍🫯‍👩🏻|👩🏿‍🤝‍👩🏾|👩🏿‍🤝‍👩🏽|👩🏿‍🤝‍👩🏼|👩🏿‍🤝‍👩🏻|👩🏿‍🤝‍👨🏾|👩🏿‍🤝‍👨🏽|👩🏿‍🤝‍👨🏼|👩🏿‍🤝‍👨🏻|👩🏿‍🐰‍👩🏾|👩🏿‍🐰‍👩🏽|👩🏿‍🐰‍👩🏼|👩🏿‍🐰‍👩🏻|👨🏻‍🤝‍👨🏿|👨🏻‍🫯‍👨🏼|👨🏻‍🫯‍👨🏽|👨🏻‍🫯‍👨🏾|👨🏻‍🫯‍👨🏿|👩🏾‍🤝‍👨🏿|👨🏽‍🐰‍👨🏿|👨🏽‍🤝‍👨🏻|👨🏽‍🤝‍👨🏼|👨🏽‍🤝‍👨🏾|👨🏽‍🤝‍👨🏿|👨🏽‍🫯‍👨🏻|👨🏽‍🫯‍👨🏼|👨🏽‍🫯‍👨🏾|👨🏽‍🫯‍👨🏿|👩🏽‍🫯‍👩🏿|🧎‍♀️‍➡️|👩🏽‍🫯‍👩🏾|🧎‍♂️‍➡️|👩🏽‍🫯‍👩🏼|👩🏽‍🫯‍👩🏻|👩🏽‍🤝‍👩🏿|👩🏽‍🤝‍👩🏾|👩🏽‍🤝‍👩🏼|👩🏾‍🤝‍👨🏽|👩🏾‍🤝‍👨🏼|👩🏾‍🤝‍👨🏻|👩🏾‍🐰‍👩🏿|👩🏾‍🐰‍👩🏽|👩🏾‍🐰‍👩🏼|👩🏾‍🐰‍👩🏻|👨🏼‍🫯‍👨🏾|👨🏼‍🫯‍👨🏿|👨🏽‍🐰‍👨🏻|👨🏽‍🐰‍👨🏼|👨🏽‍🐰‍👨🏾|👩‍👩‍👧‍👦|👨‍🦽‍➡️|🧑‍🦯‍➡️|👨‍🦼‍➡️|🧑‍🦼‍➡️|👨‍🦯‍➡️|🧑‍🦽‍➡️|👩‍❤️‍👩|👩‍❤️‍👨|👩‍🦯‍➡️|👨‍❤️‍👨|👩‍🦼‍➡️|👩‍🦽‍➡️|🧖🏾‍♀️|🧖🏽‍♂️|🧖🏽‍♀️|🧖🏼‍♂️|🧖🏼‍♀️|🧖🏻‍♂️|🧖🏻‍♀️|👩🏾‍✈️|👩🏾‍⚖️|👩🏾‍⚕️|🧔🏿‍♂️|🧔🏿‍♀️|🧔🏾‍♂️|🚴🏻‍♀️|🧔🏾‍♀️|🧔🏽‍♂️|🧔🏽‍♀️|🧔🏼‍♂️|🧔🏼‍♀️|🧔🏻‍♂️|🧔🏻‍♀️|🧘🏻‍♂️|🧘🏻‍♀️|🧗🏿‍♂️|🧗🏿‍♀️|🧗🏾‍♂️|🧗🏾‍♀️|🧗🏽‍♂️|🧗🏽‍♀️|👩🏿‍✈️|👩🏿‍⚖️|👩🏿‍⚕️|🚣🏾‍♂️|🧗🏼‍♂️|🚣🏿‍♀️|🧗🏼‍♀️|🚣🏿‍♂️|🧗🏻‍♂️|🧗🏻‍♀️|🧖🏿‍♂️|🧖🏿‍♀️|🧖🏾‍♂️|🧎🏽‍♀️|🧎🏼‍♂️|🧎🏼‍♀️|🧎🏻‍♂️|🧎🏻‍♀️|👩🏼‍✈️|👩🏼‍⚖️|👩🏼‍⚕️|🚴🏽‍♀️|🚴🏽‍♂️|🧍🏿‍♂️|🚴🏾‍♀️|🧍🏿‍♀️|🧍🏾‍♂️|🧍🏾‍♀️|🧍🏽‍♂️|🧍🏽‍♀️|🧍🏼‍♂️|🧍🏼‍♀️|🧍🏻‍♂️|🧍🏻‍♀️|🧏🏿‍♂️|🧏🏿‍♀️|🧏🏾‍♂️|🧏🏾‍♀️|🧏🏽‍♂️|🧏🏽‍♀️|👩🏽‍✈️|👩🏽‍⚖️|👩🏽‍⚕️|🚴🏻‍♂️|🧏🏼‍♂️|🚴🏼‍♀️|🧏🏼‍♀️|🚴🏼‍♂️|🧏🏻‍♂️|🧏🏻‍♀️|🧎🏿‍♂️|🧎🏿‍♀️|🧎🏾‍♂️|🧎🏾‍♀️|🧎🏽‍♂️|🧑🏼‍⚕️|👩‍👧‍👧|👩‍👩‍👦|🧜🏻‍♀️|👩‍👩‍👧|🚣🏻‍♀️|🧛🏿‍♂️|🧛🏿‍♀️|🧛🏾‍♂️|🧛🏾‍♀️|🧛🏽‍♂️|🧛🏽‍♀️|🧛🏼‍♂️|🧛🏼‍♀️|🧛🏻‍♂️|🧛🏻‍♀️|🧚🏿‍♂️|🧚🏿‍♀️|🧑🏻‍✈️|🧑🏻‍⚖️|🧑🏻‍⚕️|🙎🏾‍♂️|🧝🏽‍♀️|🙎🏿‍♀️|🧝🏼‍♂️|🙎🏿‍♂️|🧝🏼‍♀️|🧝🏻‍♂️|🧝🏻‍♀️|🧜🏿‍♂️|🧜🏿‍♀️|🧜🏾‍♂️|🧜🏾‍♀️|🧜🏽‍♂️|🧜🏽‍♀️|🧜🏼‍♂️|🧜🏼‍♀️|🧜🏻‍♂️|👩‍👦‍👦|👩‍👧‍👦|🧑🏼‍✈️|🧑🏼‍⚖️|🧎🏿‍➡️|🧎🏾‍➡️|🧎🏽‍➡️|🧎🏼‍➡️|🧎🏻‍➡️|🚶🏿‍➡️|🚶🏾‍➡️|🚶🏽‍➡️|🚶🏼‍➡️|🚶🏻‍➡️|🧘🏿‍♂️|🚣🏽‍♀️|🧘🏿‍♀️|🚣🏽‍♂️|🧘🏾‍♂️|🚣🏾‍♀️|🧘🏾‍♀️|🧘🏽‍♂️|🧘🏽‍♀️|🧘🏼‍♂️|🧘🏼‍♀️|🚣🏻‍♂️|🧚🏾‍♂️|🚣🏼‍♀️|🧚🏾‍♀️|🚣🏼‍♂️|🧚🏽‍♂️|🧚🏽‍♀️|🧚🏼‍♂️|🧚🏼‍♀️|🧚🏻‍♂️|🧚🏻‍♀️|🧙🏿‍♂️|🧙🏿‍♀️|🧙🏾‍♂️|🧙🏾‍♀️|🧙🏽‍♂️|🧙🏽‍♀️|🧙🏼‍♂️|🧙🏼‍♀️|🧙🏻‍♂️|🧙🏻‍♀️|👨🏼‍✈️|👨🏼‍⚖️|👨🏼‍⚕️|🤷🏼‍♀️|🤷🏻‍♂️|🤷🏻‍♀️|🚶🏻‍♀️|🤵🏿‍♂️|🤵🏿‍♀️|🤵🏾‍♂️|🤵🏾‍♀️|🤵🏽‍♂️|🤵🏽‍♀️|🤵🏼‍♂️|🤵🏼‍♀️|🤵🏻‍♂️|🤵🏻‍♀️|🤦🏿‍♂️|🤦🏿‍♀️|👨🏻‍✈️|👨🏻‍⚖️|👨🏽‍✈️|👨🏽‍⚖️|👨🏽‍⚕️|🚵🏾‍♂️|🤸🏾‍♂️|🚵🏿‍♀️|🤸🏾‍♀️|🚵🏿‍♂️|🤸🏽‍♂️|🤸🏽‍♀️|🤸🏼‍♂️|🤸🏼‍♀️|🤸🏻‍♂️|🤸🏻‍♀️|🤷🏿‍♂️|🤷🏿‍♀️|🤷🏾‍♂️|🤷🏾‍♀️|🤷🏽‍♂️|🤷🏽‍♀️|🤷🏼‍♂️|🫱🏻‍🫲🏿|🏃🏿‍➡️|🏃🏾‍➡️|🏃🏽‍➡️|🏃🏼‍➡️|🏃🏻‍➡️|🫱🏼‍🫲🏻|🫱🏿‍🫲🏾|🫱🏿‍🫲🏽|🫱🏿‍🫲🏼|🫱🏿‍🫲🏻|🫱🏾‍🫲🏿|🫱🏾‍🫲🏽|🫱🏾‍🫲🏼|🫱🏾‍🫲🏻|🫱🏽‍🫲🏿|🫱🏽‍🫲🏾|🫱🏽‍🫲🏼|🫱🏽‍🫲🏻|🫱🏼‍🫲🏿|🫱🏼‍🫲🏾|👨🏻‍⚕️|🚶🏻‍♂️|🤦🏾‍♂️|🚶🏼‍♀️|🤦🏾‍♀️|🚶🏼‍♂️|🤦🏽‍♂️|🤦🏽‍♀️|🤦🏼‍♂️|🤦🏼‍♀️|🤦🏻‍♂️|🤦🏻‍♀️|🚶🏿‍♂️|🚶🏿‍♀️|🚶🏾‍♂️|🚶🏾‍♀️|🚶🏽‍♂️|🚶🏽‍♀️|🫱🏻‍🫲🏼|🫱🏻‍🫲🏽|🫱🏻‍🫲🏾|🦸🏽‍♀️|🦸🏼‍♂️|🦸🏼‍♀️|🦸🏻‍♂️|🦸🏻‍♀️|🤾🏿‍♂️|🤾🏿‍♀️|🤾🏾‍♂️|🤾🏾‍♀️|🚵🏻‍♀️|🤾🏽‍♂️|🤾🏽‍♀️|🤾🏼‍♂️|🤾🏼‍♀️|🤾🏻‍♂️|🤾🏻‍♀️|🤽🏿‍♂️|🤽🏿‍♀️|🤽🏾‍♂️|🤽🏾‍♀️|🤽🏽‍♂️|🦹🏿‍♂️|🦹🏿‍♀️|🦹🏾‍♂️|🦹🏾‍♀️|👩🏻‍✈️|👩🏻‍⚖️|👩🏻‍⚕️|🚴🏾‍♂️|🦹🏽‍♂️|🚴🏿‍♀️|🦹🏽‍♀️|🚴🏿‍♂️|🦹🏼‍♂️|🦹🏼‍♀️|🦹🏻‍♂️|🦹🏻‍♀️|🦸🏿‍♂️|🦸🏿‍♀️|🦸🏾‍♂️|🦸🏾‍♀️|🦸🏽‍♂️|👨🏾‍✈️|👨🏾‍⚖️|👨🏾‍⚕️|🚵🏽‍♀️|🧑‍🤝‍🧑|🚵🏽‍♂️|🧑‍🧑‍🧒|🚵🏾‍♀️|🤹🏿‍♂️|🧑‍🧒‍🧒|🤹🏿‍♀️|🤹🏾‍♂️|🤹🏾‍♀️|🤹🏽‍♂️|🤹🏽‍♀️|🤹🏼‍♂️|🤹🏼‍♀️|🤹🏻‍♂️|🤹🏻‍♀️|🤸🏿‍♂️|🤸🏿‍♀️|🤽🏽‍♀️|🤽🏼‍♂️|👨🏿‍✈️|👨🏿‍⚖️|👨🏿‍⚕️|🚵🏻‍♂️|🤽🏼‍♀️|🚵🏼‍♀️|🤽🏻‍♂️|🚵🏼‍♂️|🤽🏻‍♀️|🤼🏿‍♂️|🤼🏿‍♀️|🤼🏾‍♂️|🤼🏾‍♀️|🤼🏽‍♂️|🤼🏽‍♀️|🤼🏼‍♂️|🤼🏼‍♀️|🤼🏻‍♂️|🤼🏻‍♀️|👷🏽‍♀️|👷🏼‍♂️|👷🏼‍♀️|👷🏻‍♂️|👷🏻‍♀️|👳🏿‍♂️|👳🏿‍♀️|👳🏾‍♂️|👳🏾‍♀️|👳🏽‍♂️|👳🏽‍♀️|👳🏼‍♂️|👳🏼‍♀️|👳🏻‍♂️|👳🏻‍♀️|🏳️‍⚧️|👱🏿‍♂️|👱🏿‍♀️|👱🏾‍♂️|👱🏾‍♀️|👱🏽‍♂️|💂🏽‍♀️|💂🏼‍♂️|💂🏼‍♀️|💂🏻‍♂️|💂🏻‍♀️|💁🏿‍♂️|💁🏿‍♀️|💁🏾‍♂️|💁🏾‍♀️|💁🏽‍♂️|💁🏽‍♀️|💁🏼‍♂️|💁🏼‍♀️|💁🏻‍♂️|💁🏻‍♀️|👁️‍🗨️|👷🏿‍♂️|👷🏿‍♀️|👷🏾‍♂️|👷🏾‍♀️|👷🏽‍♂️|👯🏼‍♂️|👯🏼‍♀️|👯🏻‍♂️|👯🏻‍♀️|👮🏿‍♂️|👮🏿‍♀️|👮🏾‍♂️|👮🏾‍♀️|👮🏽‍♂️|👮🏽‍♀️|👮🏼‍♂️|👮🏼‍♀️|👮🏻‍♂️|👮🏻‍♀️|🏌️‍♂️|🏌️‍♀️|🏌🏿‍♂️|🏌🏿‍♀️|🏌🏾‍♂️|🏌🏾‍♀️|🏌🏽‍♂️|👱🏽‍♀️|👱🏼‍♂️|👱🏼‍♀️|👱🏻‍♂️|👱🏻‍♀️|👰🏿‍♂️|👰🏿‍♀️|👰🏾‍♂️|👰🏾‍♀️|👰🏽‍♂️|👰🏽‍♀️|👰🏼‍♂️|👰🏼‍♀️|👰🏻‍♂️|👰🏻‍♀️|👯🏿‍♂️|👯🏿‍♀️|👯🏾‍♂️|👯🏾‍♀️|👯🏽‍♂️|👯🏽‍♀️|👨‍👧‍👦|🙆🏿‍♂️|🙆🏿‍♀️|🙆🏾‍♂️|🙆🏾‍♀️|🙆🏽‍♂️|🙆🏽‍♀️|🙆🏼‍♂️|🙆🏼‍♀️|🙆🏻‍♂️|🙆🏻‍♀️|👨‍👧‍👧|👨‍👨‍👦|🙅🏿‍♂️|🙅🏿‍♀️|🙅🏾‍♂️|🙅🏾‍♀️|🙅🏽‍♂️|🙅🏽‍♀️|🙅🏼‍♂️|🙅🏼‍♀️|🙋🏿‍♂️|🙋🏿‍♀️|🙋🏾‍♂️|🙋🏾‍♀️|🙋🏽‍♂️|🙋🏽‍♀️|🙋🏼‍♂️|🙋🏼‍♀️|🙋🏻‍♂️|🙋🏻‍♀️|🙇🏿‍♂️|🙇🏿‍♀️|🙇🏾‍♂️|🙇🏾‍♀️|🙇🏽‍♂️|🙇🏽‍♀️|🙇🏼‍♂️|🙇🏼‍♀️|🙇🏻‍♂️|🙇🏻‍♀️|👨‍👦‍👦|💇🏼‍♂️|💇🏼‍♀️|💇🏻‍♂️|💇🏻‍♀️|💆🏿‍♂️|💆🏿‍♀️|💆🏾‍♂️|💆🏾‍♀️|💆🏽‍♂️|💆🏽‍♀️|💆🏼‍♂️|💆🏼‍♀️|💆🏻‍♂️|💆🏻‍♀️|👨‍👩‍👦|👨‍👩‍👧|💂🏿‍♂️|💂🏿‍♀️|💂🏾‍♂️|💂🏾‍♀️|💂🏽‍♂️|🙅🏻‍♂️|🙅🏻‍♀️|👨‍👨‍👧|🕵️‍♂️|🕵️‍♀️|🕵🏿‍♂️|🕵🏿‍♀️|🕵🏾‍♂️|🕵🏾‍♀️|🕵🏽‍♂️|🕵🏽‍♀️|🕵🏼‍♂️|🕵🏼‍♀️|🕵🏻‍♂️|🕵🏻‍♀️|💇🏿‍♂️|💇🏿‍♀️|💇🏾‍♂️|💇🏾‍♀️|💇🏽‍♂️|💇🏽‍♀️|🏌🏽‍♀️|⛹🏾‍♀️|⛹🏾‍♂️|⛹🏿‍♀️|⛹🏿‍♂️|⛹️‍♀️|⛹️‍♂️|🙍🏿‍♂️|🙍🏿‍♀️|🏃🏻‍♀️|🙍🏾‍♂️|🏃🏻‍♂️|🙍🏾‍♀️|🏃🏼‍♀️|🙍🏽‍♂️|🏃🏼‍♂️|🙍🏽‍♀️|🏃🏽‍♀️|🙍🏼‍♂️|🏃🏽‍♂️|🙍🏼‍♀️|🏃🏾‍♀️|🙍🏻‍♂️|🏃🏾‍♂️|🙍🏻‍♀️|🏃🏿‍♀️|🏃🏿‍♂️|🏄🏻‍♀️|🏄🏻‍♂️|🫱🏼‍🫲🏽|🧑🏽‍⚕️|🧑🏽‍⚖️|🧑🏽‍✈️|🧝🏽‍♂️|🧝🏾‍♀️|🧝🏾‍♂️|🧝🏿‍♀️|🧝🏿‍♂️|🙎🏾‍♀️|🙎🏽‍♂️|🙎🏽‍♀️|🧑🏾‍⚕️|🧑🏾‍⚖️|🧑🏾‍✈️|🙎🏼‍♂️|🙎🏼‍♀️|🙎🏻‍♂️|🧑🏿‍⚕️|🧑🏿‍⚖️|🧑🏿‍✈️|🙎🏻‍♀️|⛹🏻‍♀️|⛹🏻‍♂️|⛹🏼‍♀️|⛹🏼‍♂️|⛹🏽‍♀️|⛹🏽‍♂️|🏊🏻‍♀️|🏊🏻‍♂️|🏊🏼‍♀️|🏊🏼‍♂️|🏊🏽‍♀️|🏊🏽‍♂️|🏊🏾‍♀️|🏊🏾‍♂️|🏊🏿‍♀️|🏊🏿‍♂️|🏋🏻‍♀️|🏋🏻‍♂️|🏋🏼‍♀️|🏋🏼‍♂️|🏋🏽‍♀️|🏋🏽‍♂️|🏋🏾‍♀️|🏋🏾‍♂️|🏋🏿‍♀️|🏋🏿‍♂️|🏋️‍♀️|🏋️‍♂️|🏌🏻‍♀️|🏌🏻‍♂️|🏌🏼‍♀️|🏌🏼‍♂️|🏄🏿‍♀️|🏄🏾‍♂️|🏄🏾‍♀️|🏄🏽‍♂️|🏄🏽‍♀️|🏄🏿‍♂️|🏄🏼‍♂️|🏄🏼‍♀️|🤾‍♂️|👨🏽‍🦱|👨🏽‍🦲|👨🏽‍🦳|🧜‍♀️|👨🏾‍🦰|👨🏾‍🦱|👨🏾‍🦲|👨🏾‍🦳|👨🏿‍🦰|👨🏿‍🦱|🧜‍♂️|🤦‍♂️|🤷‍♀️|👩🏼‍🦲|🧑🏽‍🦱|👩🏼‍🦱|🤾‍♀️|👩🏼‍🦰|👩🏻‍🦳|👩🏻‍🦲|👩🏻‍🦱|👩🏻‍🦰|👨🏿‍🦳|🤵‍♂️|🤵‍♀️|🧑🏽‍🩰|👨🏿‍🦲|🧛‍♀️|🧛‍♂️|🧖‍♂️|🧎‍♂️|🧖‍♀️|🧑🏾‍🦰|🧑🏽‍🦳|🧑🏽‍🦲|🧝‍♂️|🧝‍♀️|🧑🏿‍🩰|🧑🏾‍🩰|🧎‍♀️|🧞‍♀️|🧞‍♂️|🧟‍♀️|🧟‍♂️|👨🏻‍🦰|👨🏻‍🦱|👨🏻‍🦲|👨🏻‍🦳|👨🏼‍🦰|👨🏼‍🦱|👨🏼‍🦲|🧏‍♀️|👨🏼‍🦳|🧑🏾‍🦳|👨🏽‍🦰|🧑🏿‍🦰|🧏‍♂️|❤️‍🩹|🤦‍♀️|🧑🏼‍🦰|🧑🏼‍🦱|🤹‍♀️|🤹‍♂️|🧑🏼‍🦲|🧍‍♀️|🧑🏿‍🦱|🧑🏿‍🦲|🧗‍♀️|🧗‍♂️|🙂‍↕️|🙂‍↔️|🏴‍☠️|🧔‍♀️|🧑🏼‍🦳|🧘‍♂️|🧘‍♀️|🧔‍♂️|🤼‍♀️|🤼‍♂️|😶‍🌫️|🧑🏽‍🦰|🐻‍❄️|🧑🏿‍🦳|⛓️‍💥|🦹‍♂️|🦹‍♀️|🧑🏾‍🦱|🧑🏾‍🦲|🤽‍♀️|🤽‍♂️|🏳️‍🌈|🤷‍♂️|🦸‍♀️|🦸‍♂️|❤️‍🔥|👩🏼‍🦳|🧚‍♂️|🧚‍♀️|👩🏽‍🦰|👩🏽‍🦱|👩🏽‍🦲|👩🏽‍🦳|👩🏾‍🦰|👩🏾‍🦱|🧑🏼‍🩰|🤸‍♀️|🤸‍♂️|🧑🏻‍🩰|👩🏾‍🦲|👩🏾‍🦳|👩🏿‍🦰|👩🏿‍🦱|🧙‍♂️|👩🏿‍🦲|👩🏿‍🦳|🧑🏻‍🦰|🧑🏻‍🦱|🧑🏻‍🦲|🧙‍♀️|🧍‍♂️|🧑🏻‍🦳|🚣‍♀️|🧑🏻‍🦽|🚣‍♂️|🧑🏻‍🦼|🧑🏻‍🦯|🧑🏻‍🚒|🧑🏻‍🚀|🧑🏻‍🔬|🧑🏻‍🔧|🧑🏻‍💼|🧑🏻‍💻|🧑🏻‍🏭|🧑🏻‍🏫|🧑🏻‍🎨|🧑🏻‍🎤|🧑🏻‍🎓|🧑🏻‍🎄|🧑🏻‍🍼|🧑🏻‍🍳|🧑🏻‍🌾|🧑‍✈️|🧑‍⚖️|🧑🏽‍🎄|🧑🏽‍🍼|🧑🏽‍🍳|🧑🏽‍🌾|🧑🏼‍🦽|🧑🏼‍🦼|🧑🏼‍🦯|🧑🏼‍🚒|🧑🏼‍🚀|🧑🏼‍🔬|🧑🏼‍🔧|🧑🏼‍💼|🧑🏼‍💻|🧑🏼‍🏭|🧑🏼‍🏫|🧑🏼‍🎨|🧑🏼‍🎤|🧑🏼‍🎓|🧑🏼‍🎄|🧑🏼‍🍼|🧑🏼‍🍳|🧑🏼‍🌾|👩🏾‍🦯|👩🏾‍🚒|👩🏾‍🚀|👩🏾‍🔬|👩🏾‍🔧|👩🏾‍💼|👩🏾‍💻|👩🏾‍🏭|👩🏾‍🏫|👩🏾‍🎨|👩🏾‍🎤|👩🏾‍🎓|👩🏾‍🍼|👩🏾‍🍳|👩🏾‍🌾|🚴‍♀️|👩🏽‍🦽|🚴‍♂️|👩🏽‍🦼|👩🏽‍🦯|👩🏽‍🚒|👩🏽‍🚀|🧑‍⚕️|🧎‍➡️|🚶‍➡️|👩🏿‍🦽|👩🏿‍🦼|👩🏿‍🦯|👩🏿‍🚒|👩🏿‍🚀|👩🏿‍🔬|👩🏿‍🔧|👩🏿‍💼|👩🏿‍💻|👩🏿‍🏭|👩🏿‍🏫|👩🏿‍🎨|👩🏿‍🎤|👩🏿‍🎓|👩🏿‍🍼|👩🏿‍🍳|👩🏿‍🌾|👩🏾‍🦽|👩🏾‍🦼|👰‍♂️|👰‍♀️|👯‍♂️|👯‍♀️|👮‍♂️|👮‍♀️|🏊‍♂️|🏊‍♀️|🏄‍♂️|🏄‍♀️|🙍‍♀️|🙍‍♂️|🏃‍♂️|🏃‍♀️|🙎‍♀️|🧑🏿‍🦽|🙎‍♂️|🧑🏿‍🦼|🧑🏿‍🦯|🧑🏿‍🚒|🧑🏿‍🚀|🧑🏿‍🔬|🙋‍♂️|🙋‍♀️|🙇‍♂️|🙇‍♀️|🙆‍♂️|🙆‍♀️|🙅‍♂️|🙅‍♀️|💇‍♂️|💇‍♀️|💆‍♂️|💆‍♀️|💂‍♂️|💂‍♀️|💁‍♂️|💁‍♀️|👷‍♂️|👷‍♀️|👳‍♂️|👳‍♀️|👱‍♂️|👱‍♀️|🧑🏾‍🏫|🧑🏾‍🎨|🧑🏾‍🎤|🧑🏾‍🎓|🧑🏾‍🎄|🧑🏾‍🍼|🧑🏾‍🍳|🧑🏾‍🌾|🧑🏽‍🦽|🧑🏽‍🦼|🧑🏽‍🦯|🧑🏽‍🚒|🧑🏽‍🚀|🧑🏽‍🔬|🧑🏽‍🔧|🧑🏽‍💼|🧑🏽‍💻|🧑🏽‍🏭|🧑🏽‍🏫|🧑🏽‍🎨|🧑🏽‍🎤|🧑🏽‍🎓|🧑🏿‍🔧|🧑🏿‍💼|🧑🏿‍💻|🧑🏿‍🏭|🧑🏿‍🏫|🧑🏿‍🎨|🧑🏿‍🎤|🧑🏿‍🎓|🧑🏿‍🎄|🧑🏿‍🍼|🧑🏿‍🍳|🧑🏿‍🌾|🧑🏾‍🦽|🧑🏾‍🦼|🧑🏾‍🦯|🧑🏾‍🚒|🧑🏾‍🚀|🧑🏾‍🔬|🧑🏾‍🔧|🧑🏾‍💼|🧑🏾‍💻|🧑🏾‍🏭|👨🏾‍🔧|👨🏾‍💼|👨🏾‍💻|👨🏾‍🏭|👨🏾‍🏫|👨🏾‍🎨|👨🏾‍🎤|👨🏾‍🎓|👨🏾‍🍼|👨🏾‍🍳|👨🏾‍🌾|👨🏽‍🦽|👨🏽‍🦼|👨🏽‍🦯|👨🏽‍🚒|👨🏽‍🚀|👨🏽‍🔬|👨🏽‍🔧|👨🏽‍💼|👨🏽‍💻|👨🏽‍🏭|👨🏽‍🏫|👨🏿‍🦼|👨🏿‍🦯|👨🏿‍🚒|👨🏿‍🚀|👨🏿‍🔬|👨🏿‍🔧|👨🏿‍💼|👨🏿‍💻|👨🏿‍🏭|👨🏿‍🏫|👨🏿‍🎨|👨🏿‍🎤|👨🏿‍🎓|👨🏿‍🍼|👨🏿‍🍳|👨🏿‍🌾|👨🏾‍🦽|👨🏾‍🦼|👨🏾‍🦯|👨🏾‍🚒|👨🏾‍🚀|👨🏾‍🔬|👨🏽‍🎨|🚶‍♀️|👨🏻‍🦽|🚶‍♂️|👨🏻‍🦼|👨🏻‍🦯|👨🏻‍🚒|👨🏻‍🚀|👨🏻‍🔬|👨🏻‍🔧|👨🏻‍💼|👨🏻‍💻|👨🏻‍🏭|👨🏻‍🏫|👨🏻‍🎨|👨🏻‍🎤|👨🏻‍🎓|👨🏻‍🍼|👨🏻‍🍳|👨🏻‍🌾|👨‍✈️|👨‍⚖️|👨‍⚕️|👨🏽‍🎤|👨🏽‍🎓|👨🏽‍🍼|👨🏽‍🍳|👨🏽‍🌾|👨🏼‍🦽|👨🏼‍🦼|👨🏼‍🦯|👨🏼‍🚒|👨🏼‍🚀|👨🏼‍🔬|👨🏼‍🔧|👨🏼‍💼|👨🏼‍💻|👨🏼‍🏭|👨🏼‍🏫|👨🏼‍🎨|👨🏼‍🎤|👨🏼‍🎓|👨🏼‍🍼|👨🏼‍🍳|👨🏼‍🌾|👩🏼‍🎨|👩🏼‍🎤|👩🏼‍🎓|👩🏼‍🍼|👩🏼‍🍳|👩🏼‍🌾|👩🏻‍🦽|👩🏻‍🦼|👩🏻‍🦯|👩🏻‍🚒|👩🏻‍🚀|👩🏻‍🔬|👩🏻‍🔧|👩🏻‍💼|👩🏻‍💻|👩🏻‍🏭|👩🏻‍🏫|👩🏻‍🎨|👩🏻‍🎤|👩🏻‍🎓|👩🏻‍🍼|👩🏻‍🍳|👩🏻‍🌾|👩🏽‍🔬|👩🏽‍🔧|👩🏽‍💼|👩🏽‍💻|👩🏽‍🏭|👩🏽‍🏫|👩🏽‍🎨|👩🏽‍🎤|👩🏽‍🎓|👩🏽‍🍼|👩🏽‍🍳|👩🏽‍🌾|👩🏼‍🦽|👩🏼‍🦼|👩🏼‍🦯|👩🏼‍🚒|👩🏼‍🚀|👩🏼‍🔬|👩🏼‍🔧|👩🏼‍💼|👩🏼‍💻|👩🏼‍🏭|👩🏼‍🏫|👨🏿‍🦽|🚵‍♀️|👩‍⚕️|👩‍⚖️|👩‍✈️|🚵‍♂️|🏃‍➡️|🐦‍🔥|🐦‍⬛|🐕‍🦺|🐈‍⬛|👨‍🚒|👨‍🦯|👨‍🦼|🍋‍🟩|🍄‍🟫|👨‍🦽|👩‍🎨|👩‍🎤|👩‍🎓|👩‍🌾|👩‍🍳|👩‍👦|👨‍👦|👨‍👧|👩‍👧|👨‍🌾|👨‍🍳|👨‍🍼|👨‍🎓|👨‍🎤|👨‍🎨|👨‍🏫|🧑‍🩰|👨‍🏭|👨‍💻|👨‍💼|👨‍🔧|😵‍💫|😮‍💨|👨‍🔬|👨‍🚀|🧑‍🦯|🧑‍🚒|🧑‍🚀|🧑‍🔬|🧑‍🔧|🧑‍💼|🧑‍💻|🧑‍🏭|🧑‍🏫|🧑‍🧒|🧑‍🎨|🧑‍🎤|🧑‍🎓|🧑‍🎄|🧑‍🍼|👩‍🦳|👩‍🦲|👩‍🦱|👩‍🦰|👩‍🦽|🧑‍🌾|👩‍🍼|👩‍🏫|👩‍🏭|👩‍💻|👩‍💼|👩‍🔧|👩‍🔬|👩‍🚀|👩‍🚒|👩‍🦯|👩‍🦼|👨‍🦰|🧑‍🦳|🧑‍🦲|🧑‍🦱|🧑‍🦰|👨‍🦱|👨‍🦲|👨‍🦳|🧑‍🦽|🧑‍🦼|🧑‍🍳)|(?:🏴󠁧󠁢󠁷󠁬󠁳󠁿|🏴󠁧󠁢󠁳󠁣󠁴󠁿|🏴󠁧󠁢󠁥󠁮󠁧󠁿)|(?:🇦🇨|🇦🇩|🇦🇪|🇦🇫|🇦🇬|🇦🇮|🇦🇱|🇦🇲|🇦🇴|🇦🇶|🇦🇷|🇦🇸|🇦🇹|🇦🇺|🇦🇼|🇦🇽|🇦🇿|🇧🇦|🇧🇧|🇧🇩|🇧🇪|🇧🇫|🇧🇬|🇧🇭|🇧🇮|🇧🇯|🇧🇱|🇧🇲|🇧🇳|🇧🇴|🇧🇶|🇧🇷|🇧🇸|🇧🇹|🇧🇻|🇧🇼|🇧🇾|🇧🇿|🇨🇦|🇨🇨|🇨🇩|🇨🇫|🇨🇬|🇨🇭|🇨🇮|🇨🇰|🇨🇱|🇨🇲|🇨🇳|🇨🇴|🇨🇵|🇨🇶|🇨🇷|🇨🇺|🇨🇻|🇨🇼|🇨🇽|🇨🇾|🇨🇿|🇩🇪|🇩🇬|🇩🇯|🇩🇰|🇩🇲|🇩🇴|🇩🇿|🇪🇦|🇪🇨|🇪🇪|🇪🇬|🇪🇭|🇪🇷|🇪🇸|🇪🇹|🇪🇺|🇫🇮|🇫🇯|🇫🇰|🇫🇲|🇫🇴|🇫🇷|🇬🇦|🇬🇧|🇬🇩|🇬🇪|🇬🇫|🇬🇬|🇬🇭|🇬🇮|🇬🇱|🇬🇲|🇬🇳|🇬🇵|🇬🇶|🇬🇷|🇬🇸|🇬🇹|🇬🇺|🇬🇼|🇬🇾|🇭🇰|🇭🇲|🇭🇳|🇭🇷|🇭🇹|🇭🇺|🇮🇨|🇮🇩|🇮🇪|🇮🇱|🇮🇲|🇮🇳|🇮🇴|🇮🇶|🇮🇷|🇮🇸|🇮🇹|🇯🇪|🇯🇲|🇯🇴|🇯🇵|🇰🇪|🇰🇬|🇰🇭|🇰🇮|🇰🇲|🇰🇳|🇰🇵|🇰🇷|🇰🇼|🇰🇾|🇰🇿|🇱🇦|🇱🇧|🇱🇨|🇱🇮|🇱🇰|🇱🇷|🇱🇸|🇱🇹|🇱🇺|🇱🇻|🇱🇾|🇲🇦|🇲🇨|🇲🇩|🇲🇪|🇲🇫|🇲🇬|🇲🇭|🇲🇰|🇲🇱|🇲🇲|🇲🇳|🇲🇴|🇲🇵|🇲🇶|🇲🇷|🇲🇸|🇲🇹|🇲🇺|🇲🇻|🇲🇼|🇲🇽|🇲🇾|🇲🇿|🇳🇦|🇳🇨|🇳🇪|🇳🇫|🇳🇬|🇳🇮|🇳🇱|🇳🇴|🇳🇵|🇳🇷|🇳🇺|🇳🇿|🇴🇲|🇵🇦|🇵🇪|🇵🇫|🇵🇬|🇵🇭|🇵🇰|🇵🇱|🇵🇲|🇵🇳|🇵🇷|🇵🇸|🇵🇹|🇵🇼|🇵🇾|🇶🇦|🇷🇪|🇷🇴|🇷🇸|🇷🇺|🇷🇼|🇸🇦|🇸🇧|🇸🇨|🇸🇩|🇸🇪|🇸🇬|🇸🇭|🇸🇮|🇸🇯|🇸🇰|🇸🇱|🇸🇲|🇸🇳|🇸🇴|🇸🇷|🇸🇸|🇸🇹|🇸🇻|🇸🇽|🇸🇾|🇸🇿|🇹🇦|🇹🇨|🇹🇩|🇹🇫|🇹🇬|🇹🇭|🇹🇯|🇹🇰|🇹🇱|🇹🇲|🇹🇳|🇹🇴|🇹🇷|🇹🇹|🇹🇻|🇹🇼|🇹🇿|🇺🇦|🇺🇬|🇺🇲|🇺🇳|🇺🇸|🇺🇾|🇺🇿|🇻🇦|🇻🇨|🇻🇪|🇻🇬|🇻🇮|🇻🇳|🇻🇺|🇼🇫|🇼🇸|🇽🇰|🇾🇪|🇾🇹|🇿🇦|🇿🇲|🇿🇼)|(?:[\#\*0-9]️⃣|[☝⛹✊-✍🎅🏂-🏄🏇🏊-🏌👂👃👆-👐👦-👸👼💁-💃💅-💇💏💑💪🕴🕵🕺🖐🖕🖖🙅-🙇🙋-🙏🚣🚴-🚶🛀🛌🤌🤏🤘-🤟🤦🤰-🤹🤼-🤾🥷🦵🦶🦸🦹🦻🧍-🧏🧑-🧝🫃-🫅🫰-🫸][🏻-🏿]|(?![\#\*0-9‍⃣️🇦-🇿🏻-🏿🦰-🦳󠀠-󠁿])(?:[\#\*0-9©®‼⁉™ℹ↔-↙↩↪⌨⏏⏭-⏯⏱⏲⏸-⏺Ⓜ▪▫▶◀◻◼☀-☄☎☑☘☝☠☢☣☦☪☮☯☸-☺♀♂♟♠♣♥♦♨♻♾⚒⚔-⚗⚙⚛⚜⚠⚧⚰⚱⛈⛏⛑⛓⛩⛰⛱⛴⛷-⛹✂✈✉✌✍✏✒✔✖✝✡✳✴❄❇❣❤➡⤴⤵⬅-⬇〰〽㊗㊙🅰🅱🅾🅿🈂🈷🌡🌤-🌬🌶🍽🎖🎗🎙-🎛🎞🎟🏋-🏎🏔-🏟🏳🏵🏷🐿👁📽🕉🕊🕯🕰🕳-🕹🖇🖊-🖍🖐🖥🖨🖱🖲🖼🗂-🗄🗑-🗓🗜-🗞🗡🗣🗨🗯🗳🗺🛋🛍-🛏🛠-🛥🛩🛰🛳]️|[⌚⌛⏩-⏬⏰⏳◽◾☔☕♈-♓♿⚓⚡⚪⚫⚽⚾⛄⛅⛎⛔⛪⛲⛳⛵⛺⛽✅✊✋✨❌❎❓-❕❗➕-➗➰➿⬛⬜⭐⭕🀄🃏🆎🆑-🆚🇦-🇿🈁🈚🈯🈲-🈶🈸-🈺🉐🉑🌀-🌠🌭-🌵🌷-🍼🍾-🎓🎠-🏊🏏-🏓🏠-🏰🏴🏸-🐾👀👂-📼📿-🔽🕋-🕎🕐-🕧🕺🖕🖖🖤🗻-🙏🚀-🛅🛌🛐-🛒🛕-🛘🛜-🛟🛫🛬🛴-🛼🟠-🟫🟰🤌-🤺🤼-🥅🥇-🧿🩰-🩼🪀-🪊🪎-🫆🫈🫍-🫜🫟-🫪🫯-🫸](?!︎)️?))|[🏻-🏿🦰-🦳])/
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # This file was generated by a script, please do not edit it by hand.
2
+ # See `$ rake generate_constants` and data/generate_constants.rb for more info.
3
+
4
+ module Unicode
5
+ module Emoji
6
+ REGEX_BASIC = /(?:(?![\#\*0-9‍⃣️🇦-🇿🏻-🏿🦰-🦳󠀠-󠁿])(?:[\#\*0-9©®‼⁉™ℹ↔-↙↩↪⌨⏏⏭-⏯⏱⏲⏸-⏺Ⓜ▪▫▶◀◻◼☀-☄☎☑☘☝☠☢☣☦☪☮☯☸-☺♀♂♟♠♣♥♦♨♻♾⚒⚔-⚗⚙⚛⚜⚠⚧⚰⚱⛈⛏⛑⛓⛩⛰⛱⛴⛷-⛹✂✈✉✌✍✏✒✔✖✝✡✳✴❄❇❣❤➡⤴⤵⬅-⬇〰〽㊗㊙🅰🅱🅾🅿🈂🈷🌡🌤-🌬🌶🍽🎖🎗🎙-🎛🎞🎟🏋-🏎🏔-🏟🏳🏵🏷🐿👁📽🕉🕊🕯🕰🕳-🕹🖇🖊-🖍🖐🖥🖨🖱🖲🖼🗂-🗄🗑-🗓🗜-🗞🗡🗣🗨🗯🗳🗺🛋🛍-🛏🛠-🛥🛩🛰🛳]️|[⌚⌛⏩-⏬⏰⏳◽◾☔☕♈-♓♿⚓⚡⚪⚫⚽⚾⛄⛅⛎⛔⛪⛲⛳⛵⛺⛽✅✊✋✨❌❎❓-❕❗➕-➗➰➿⬛⬜⭐⭕🀄🃏🆎🆑-🆚🇦-🇿🈁🈚🈯🈲-🈶🈸-🈺🉐🉑🌀-🌠🌭-🌵🌷-🍼🍾-🎓🎠-🏊🏏-🏓🏠-🏰🏴🏸-🐾👀👂-📼📿-🔽🕋-🕎🕐-🕧🕺🖕🖖🖤🗻-🙏🚀-🛅🛌🛐-🛒🛕-🛘🛜-🛟🛫🛬🛴-🛼🟠-🟫🟰🤌-🤺🤼-🥅🥇-🧿🩰-🩼🪀-🪊🪎-🫆🫈🫍-🫜🫟-🫪🫯-🫸](?!︎)️?)|[🏻-🏿🦰-🦳])/
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # This file was generated by a script, please do not edit it by hand.
2
+ # See `$ rake generate_constants` and data/generate_constants.rb for more info.
3
+
4
+ module Unicode
5
+ module Emoji
6
+ REGEX_EMOJI_KEYCAP = /[\#\*0-9]️⃣/
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # This file was generated by a script, please do not edit it by hand.
2
+ # See `$ rake generate_constants` and data/generate_constants.rb for more info.
3
+
4
+ module Unicode
5
+ module Emoji
6
+ REGEX_INCLUDE_MQE = /(?:(?:👩🏾‍❤️?‍💋‍👩🏻|👩🏾‍❤️?‍💋‍👨🏿|👩🏾‍❤️?‍💋‍👨🏾|👨🏽‍❤️?‍💋‍👨🏻|👨🏽‍❤️?‍💋‍👨🏼|👨🏽‍❤️?‍💋‍👨🏽|👨🏽‍❤️?‍💋‍👨🏾|👨🏽‍❤️?‍💋‍👨🏿|👩🏾‍❤️?‍💋‍👨🏽|👩🏾‍❤️?‍💋‍👨🏼|👩🏾‍❤️?‍💋‍👨🏻|👨🏾‍❤️?‍💋‍👨🏻|👨🏾‍❤️?‍💋‍👨🏼|👨🏾‍❤️?‍💋‍👨🏽|👨🏾‍❤️?‍💋‍👨🏾|👨🏾‍❤️?‍💋‍👨🏿|👩🏽‍❤️?‍💋‍👩🏿|👩🏿‍❤️?‍💋‍👩🏽|👩🏿‍❤️?‍💋‍👩🏼|👩🏿‍❤️?‍💋‍👩🏻|👩🏿‍❤️?‍💋‍👨🏿|👩🏿‍❤️?‍💋‍👨🏾|👩🏿‍❤️?‍💋‍👨🏽|👩🏿‍❤️?‍💋‍👨🏼|👩🏿‍❤️?‍💋‍👨🏻|👨🏼‍❤️?‍💋‍👨🏻|👨🏼‍❤️?‍💋‍👨🏼|👨🏼‍❤️?‍💋‍👨🏽|👨🏼‍❤️?‍💋‍👨🏾|👨🏼‍❤️?‍💋‍👨🏿|👩🏾‍❤️?‍💋‍👩🏿|👩🏾‍❤️?‍💋‍👩🏾|👩🏾‍❤️?‍💋‍👩🏽|👩🏾‍❤️?‍💋‍👩🏼|👩🏼‍❤️?‍💋‍👩🏼|👩🏼‍❤️?‍💋‍👩🏻|👩🏼‍❤️?‍💋‍👨🏿|👩🏼‍❤️?‍💋‍👨🏾|👩🏼‍❤️?‍💋‍👨🏽|👩🏼‍❤️?‍💋‍👨🏼|👩🏼‍❤️?‍💋‍👨🏻|👩🏻‍❤️?‍💋‍👨🏻|👩🏻‍❤️?‍💋‍👨🏼|👩🏻‍❤️?‍💋‍👨🏽|👩🏻‍❤️?‍💋‍👨🏾|👩🏻‍❤️?‍💋‍👨🏿|👩🏻‍❤️?‍💋‍👩🏻|👩🏻‍❤️?‍💋‍👩🏼|👩🏻‍❤️?‍💋‍👩🏽|👩🏻‍❤️?‍💋‍👩🏾|👩🏻‍❤️?‍💋‍👩🏿|👩🏽‍❤️?‍💋‍👩🏾|👩🏽‍❤️?‍💋‍👩🏽|👩🏽‍❤️?‍💋‍👩🏼|👩🏽‍❤️?‍💋‍👩🏻|👩🏽‍❤️?‍💋‍👨🏿|👩🏽‍❤️?‍💋‍👨🏾|👩🏽‍❤️?‍💋‍👨🏽|👩🏽‍❤️?‍💋‍👨🏼|👩🏽‍❤️?‍💋‍👨🏻|👨🏿‍❤️?‍💋‍👨🏻|👨🏿‍❤️?‍💋‍👨🏼|👨🏿‍❤️?‍💋‍👨🏽|👨🏿‍❤️?‍💋‍👨🏾|👨🏿‍❤️?‍💋‍👨🏿|👩🏼‍❤️?‍💋‍👩🏿|👩🏼‍❤️?‍💋‍👩🏾|👨🏻‍❤️?‍💋‍👨🏼|👨🏻‍❤️?‍💋‍👨🏻|🧑🏼‍❤️?‍💋‍🧑🏻|🧑🏼‍❤️?‍💋‍🧑🏽|🧑🏼‍❤️?‍💋‍🧑🏾|🧑🏼‍❤️?‍💋‍🧑🏿|🧑🏽‍❤️?‍💋‍🧑🏻|🧑🏽‍❤️?‍💋‍🧑🏼|🧑🏽‍❤️?‍💋‍🧑🏾|🧑🏽‍❤️?‍💋‍🧑🏿|🧑🏾‍❤️?‍💋‍🧑🏻|🧑🏾‍❤️?‍💋‍🧑🏼|🧑🏾‍❤️?‍💋‍🧑🏽|🧑🏾‍❤️?‍💋‍🧑🏿|🧑🏿‍❤️?‍💋‍🧑🏾|🧑🏿‍❤️?‍💋‍🧑🏽|🧑🏿‍❤️?‍💋‍🧑🏻|🧑🏿‍❤️?‍💋‍🧑🏼|👩🏼‍❤️?‍💋‍👩🏽|👩🏿‍❤️?‍💋‍👩🏾|👩🏿‍❤️?‍💋‍👩🏿|🧑🏻‍❤️?‍💋‍🧑🏼|🧑🏻‍❤️?‍💋‍🧑🏽|🧑🏻‍❤️?‍💋‍🧑🏾|🧑🏻‍❤️?‍💋‍🧑🏿|👨🏻‍❤️?‍💋‍👨🏿|👨🏻‍❤️?‍💋‍👨🏾|👨🏻‍❤️?‍💋‍👨🏽|👩🏽‍❤️?‍👩🏻|👩🏽‍❤️?‍👨🏿|👩🏽‍❤️?‍👨🏾|👩🏽‍❤️?‍👨🏽|👩🏽‍❤️?‍👨🏼|👩🏽‍❤️?‍👨🏻|🧑🏿‍❤️?‍🧑🏾|🚶🏿‍♀️?‍➡️?|🚶🏾‍♂️?‍➡️?|🚶🏾‍♀️?‍➡️?|🏃🏿‍♂️?‍➡️?|👩🏽‍❤️?‍👩🏼|👩🏽‍❤️?‍👩🏽|👩🏽‍❤️?‍👩🏾|🚶🏿‍♂️?‍➡️?|🧑🏿‍❤️?‍🧑🏽|🧑🏿‍❤️?‍🧑🏼|🧑🏿‍❤️?‍🧑🏻|🏃🏻‍♂️?‍➡️?|🏃🏻‍♀️?‍➡️?|👩🏼‍❤️?‍👨🏻|👩🏼‍❤️?‍👨🏼|👩🏼‍❤️?‍👨🏽|🏃🏼‍♀️?‍➡️?|🏃🏼‍♂️?‍➡️?|👩🏼‍❤️?‍👨🏾|🏃🏽‍♀️?‍➡️?|🏃🏽‍♂️?‍➡️?|🏃🏾‍♀️?‍➡️?|👩🏼‍❤️?‍👨🏿|👩🏼‍❤️?‍👩🏻|👩🏼‍❤️?‍👩🏼|👩🏼‍❤️?‍👩🏽|🏃🏾‍♂️?‍➡️?|🏃🏿‍♀️?‍➡️?|👩🏼‍❤️?‍👩🏾|👩🏼‍❤️?‍👩🏿|🚶🏻‍♀️?‍➡️?|🚶🏻‍♂️?‍➡️?|🚶🏼‍♀️?‍➡️?|🚶🏼‍♂️?‍➡️?|🚶🏽‍♀️?‍➡️?|🚶🏽‍♂️?‍➡️?|👩🏽‍❤️?‍👩🏿|👩🏾‍❤️?‍👩🏻|👩🏾‍❤️?‍👩🏼|👩🏾‍❤️?‍👩🏽|👩🏾‍❤️?‍👩🏾|👩🏾‍❤️?‍👩🏿|🧑🏼‍❤️?‍🧑🏿|🧑🏼‍❤️?‍🧑🏾|🧑🏼‍❤️?‍🧑🏽|🧑🏼‍❤️?‍🧑🏻|🧑🏻‍❤️?‍🧑🏿|👩🏿‍❤️?‍👨🏻|👩🏿‍❤️?‍👨🏼|👩🏿‍❤️?‍👨🏽|👩🏿‍❤️?‍👨🏾|👩🏿‍❤️?‍👨🏿|👩🏿‍❤️?‍👩🏻|👩🏿‍❤️?‍👩🏼|👩🏿‍❤️?‍👩🏽|👩🏿‍❤️?‍👩🏾|👩🏿‍❤️?‍👩🏿|🧑🏻‍❤️?‍🧑🏾|🧑🏻‍❤️?‍🧑🏽|🧑🏻‍❤️?‍🧑🏼|🧑🏾‍❤️?‍🧑🏿|🧑🏾‍❤️?‍🧑🏽|🧑🏾‍❤️?‍🧑🏼|🧑🏾‍❤️?‍🧑🏻|🧎🏿‍♂️?‍➡️?|🧎🏿‍♀️?‍➡️?|🧎🏾‍♂️?‍➡️?|🧎🏾‍♀️?‍➡️?|🧎🏽‍♂️?‍➡️?|🧎🏽‍♀️?‍➡️?|🧑🏽‍❤️?‍🧑🏿|🧑🏽‍❤️?‍🧑🏾|🧑🏽‍❤️?‍🧑🏼|🧑🏽‍❤️?‍🧑🏻|🧎🏼‍♂️?‍➡️?|🧎🏼‍♀️?‍➡️?|🧎🏻‍♂️?‍➡️?|🧎🏻‍♀️?‍➡️?|👩🏾‍❤️?‍👨🏻|👩🏾‍❤️?‍👨🏼|👩🏾‍❤️?‍👨🏽|👩🏾‍❤️?‍👨🏾|👩🏾‍❤️?‍👨🏿|👩🏻‍❤️?‍👩🏻|👩🏻‍❤️?‍👨🏿|👩🏻‍❤️?‍👨🏾|👩🏻‍❤️?‍👨🏽|👩🏻‍❤️?‍👨🏼|👩🏻‍❤️?‍👨🏻|👨🏽‍❤️?‍👨🏼|👨🏻‍❤️?‍👨🏾|👨🏼‍❤️?‍👨🏻|👩‍❤️?‍💋‍👩|👩‍❤️?‍💋‍👨|👨🏼‍❤️?‍👨🏼|👨🏼‍❤️?‍👨🏽|👨🏼‍❤️?‍👨🏾|👨🏼‍❤️?‍👨🏿|👨🏻‍❤️?‍👨🏽|👨🏻‍❤️?‍👨🏼|👨🏻‍❤️?‍👨🏻|👨🏽‍❤️?‍👨🏽|👨‍❤️?‍💋‍👨|👨🏾‍❤️?‍👨🏼|👨🏾‍❤️?‍👨🏽|👨🏿‍❤️?‍👨🏿|👨🏾‍❤️?‍👨🏾|👨🏿‍❤️?‍👨🏾|👨🏾‍❤️?‍👨🏿|👨🏿‍❤️?‍👨🏽|👨🏾‍❤️?‍👨🏻|👨🏿‍❤️?‍👨🏼|👨🏻‍❤️?‍👨🏿|👨🏿‍❤️?‍👨🏻|👨🏽‍❤️?‍👨🏿|👨🏽‍❤️?‍👨🏾|👨🏽‍❤️?‍👨🏻|👩🏻‍❤️?‍👩🏿|👩🏻‍❤️?‍👩🏾|👩🏻‍❤️?‍👩🏽|👩🏻‍❤️?‍👩🏼|🧑🏼‍🐰‍🧑🏿|👨‍👨‍👧‍👦|🧑🏼‍🐰‍🧑🏾|🧑🏼‍🐰‍🧑🏽|🧑🏼‍🐰‍🧑🏻|🧑🏽‍🤝‍🧑🏿|🧑🏼‍🫯‍🧑🏻|🧑🏼‍🫯‍🧑🏽|🧑🏼‍🫯‍🧑🏾|🧑🏾‍🤝‍🧑🏻|🧑🏾‍🤝‍🧑🏼|🧑🏾‍🤝‍🧑🏽|🧑🏾‍🤝‍🧑🏾|🧑🏾‍🤝‍🧑🏿|🧑🏼‍🫯‍🧑🏿|🧑🏽‍🐰‍🧑🏻|🧑🏽‍🐰‍🧑🏼|🧑🏽‍🐰‍🧑🏾|🧑🏽‍🐰‍🧑🏿|👨‍👨‍👦‍👦|🧑🏽‍🫯‍🧑🏻|👨‍👩‍👦‍👦|👨‍👩‍👧‍👦|👨‍👩‍👧‍👧|🧑🏻‍🤝‍🧑🏿|🧑🏻‍🤝‍🧑🏾|🧑🏻‍🤝‍🧑🏽|🧑🏻‍🤝‍🧑🏼|🧑🏻‍🤝‍🧑🏻|👨🏻‍🐰‍👨🏼|👨🏻‍🐰‍👨🏽|👨🏻‍🐰‍👨🏾|👨🏻‍🐰‍👨🏿|👨🏻‍🤝‍👨🏼|👨🏻‍🤝‍👨🏽|👨🏻‍🤝‍👨🏾|🧑‍🧑‍🧒‍🧒|👩🏿‍🫯‍👩🏾|👩🏿‍🫯‍👩🏽|🧑🏽‍🤝‍🧑🏾|🧑🏽‍🤝‍🧑🏽|🧑🏽‍🤝‍🧑🏼|🧑🏽‍🤝‍🧑🏻|🧑🏻‍🫯‍🧑🏿|🧑🏻‍🫯‍🧑🏾|🧑🏻‍🫯‍🧑🏽|🧑🏻‍🫯‍🧑🏼|👨‍👨‍👧‍👧|🧑🏻‍🐰‍🧑🏿|🧑🏻‍🐰‍🧑🏾|🧑🏻‍🐰‍🧑🏽|🧑🏼‍🤝‍🧑🏿|🧑🏼‍🤝‍🧑🏾|🧑🏼‍🤝‍🧑🏽|🧑🏼‍🤝‍🧑🏼|🧑🏼‍🤝‍🧑🏻|🧑🏻‍🐰‍🧑🏼|🧑🏽‍🦼‍➡️?|🧑🏽‍🦯‍➡️?|🧑🏼‍🦽‍➡️?|🧑🏼‍🦼‍➡️?|🧑🏼‍🦯‍➡️?|🧑🏻‍🦽‍➡️?|🧑🏻‍🦼‍➡️?|🧑🏻‍🦯‍➡️?|👩🏿‍🦽‍➡️?|👩🏿‍🦼‍➡️?|👩🏿‍🦯‍➡️?|👩🏾‍🦽‍➡️?|👩🏾‍🦼‍➡️?|👩🏾‍🦯‍➡️?|👩🏽‍🦽‍➡️?|👩🏽‍🦼‍➡️?|👩🏽‍🦯‍➡️?|👩🏼‍🦽‍➡️?|🧑🏿‍🫯‍🧑🏾|🧑🏿‍🫯‍🧑🏽|🧑🏿‍🫯‍🧑🏼|🧑🏿‍🫯‍🧑🏻|🧑🏿‍🐰‍🧑🏾|🧑🏿‍🐰‍🧑🏽|🧑🏿‍🐰‍🧑🏼|🧑🏿‍🐰‍🧑🏻|🧑🏾‍🫯‍🧑🏿|🏃‍♂️?‍➡️?|🏃‍♀️?‍➡️?|🧑🏿‍🦽‍➡️?|🧑🏿‍🦼‍➡️?|🧑🏿‍🦯‍➡️?|🧑🏾‍🦽‍➡️?|🧑🏾‍🦼‍➡️?|🧑🏾‍🦯‍➡️?|🧑🏽‍🦽‍➡️?|👩🏼‍🦼‍➡️?|👨🏻‍🦼‍➡️?|🚶‍♂️?‍➡️?|👨🏻‍🦯‍➡️?|🧑🏾‍🫯‍🧑🏽|🧑🏾‍🫯‍🧑🏼|🧑🏾‍🫯‍🧑🏻|🧑🏿‍🤝‍🧑🏿|🧑🏾‍🐰‍🧑🏿|🧑🏿‍🤝‍🧑🏾|🧑🏾‍🐰‍🧑🏽|🧑🏿‍🤝‍🧑🏽|🧑🏾‍🐰‍🧑🏼|🧑🏿‍🤝‍🧑🏼|🧑🏾‍🐰‍🧑🏻|🧑🏿‍🤝‍🧑🏻|🧑🏽‍🫯‍🧑🏿|🧑🏽‍🫯‍🧑🏾|🧑🏽‍🫯‍🧑🏼|👩🏼‍🦯‍➡️?|👩🏻‍🦽‍➡️?|👩🏻‍🦼‍➡️?|👩🏻‍🦯‍➡️?|👨🏿‍🦽‍➡️?|👨🏿‍🦼‍➡️?|👨🏿‍🦯‍➡️?|👨🏾‍🦽‍➡️?|👨🏾‍🦼‍➡️?|👨🏾‍🦯‍➡️?|👨🏽‍🦽‍➡️?|👨🏽‍🦼‍➡️?|👨🏽‍🦯‍➡️?|👨🏼‍🦽‍➡️?|👨🏼‍🦼‍➡️?|👨🏼‍🦯‍➡️?|👨🏻‍🦽‍➡️?|🚶‍♀️?‍➡️?|👩🏿‍🫯‍👩🏼|👨🏾‍🫯‍👨🏻|👨🏾‍🫯‍👨🏼|👨🏾‍🫯‍👨🏽|👨🏾‍🫯‍👨🏿|👨🏿‍🐰‍👨🏻|👨🏿‍🐰‍👨🏼|👨🏿‍🐰‍👨🏽|👨🏿‍🐰‍👨🏾|👨🏿‍🤝‍👨🏻|👨🏿‍🤝‍👨🏼|👨🏿‍🤝‍👨🏽|👨🏿‍🤝‍👨🏾|👨🏿‍🫯‍👨🏻|👩🏼‍🫯‍👩🏿|👩🏼‍🫯‍👩🏾|👩🏼‍🫯‍👩🏽|👩🏼‍🫯‍👩🏻|👨🏾‍🐰‍👨🏻|👩🏽‍🤝‍👩🏻|👨🏾‍🐰‍👨🏼|👩🏽‍🤝‍👨🏿|👨🏾‍🐰‍👨🏽|👩🏽‍🤝‍👨🏾|👨🏾‍🐰‍👨🏿|👩🏽‍🤝‍👨🏼|👨🏾‍🤝‍👨🏻|👩🏽‍🤝‍👨🏻|👨🏾‍🤝‍👨🏼|👩🏽‍🐰‍👩🏿|👩🏽‍🐰‍👩🏾|👩🏽‍🐰‍👩🏼|👩🏽‍🐰‍👩🏻|👨🏾‍🤝‍👨🏽|👨🏾‍🤝‍👨🏿|👩‍👩‍👧‍👧|👩🏻‍🫯‍👩🏿|👩🏻‍🫯‍👩🏾|👩🏻‍🫯‍👩🏽|👩🏻‍🫯‍👩🏼|👩🏻‍🤝‍👩🏿|👩🏻‍🤝‍👩🏾|👩🏻‍🤝‍👩🏽|👩🏻‍🤝‍👩🏼|👩🏻‍🤝‍👨🏿|👩🏻‍🤝‍👨🏾|👩🏻‍🤝‍👨🏽|👩🏻‍🤝‍👨🏼|👩🏻‍🐰‍👩🏿|👩🏻‍🐰‍👩🏾|👩🏻‍🐰‍👩🏽|👩🏻‍🐰‍👩🏼|👩🏼‍🤝‍👩🏿|👩🏼‍🤝‍👩🏾|👩🏼‍🤝‍👩🏽|👩🏼‍🤝‍👩🏻|👩🏼‍🤝‍👨🏿|👩🏼‍🤝‍👨🏾|👩🏼‍🤝‍👨🏽|👩🏼‍🤝‍👨🏻|👩🏼‍🐰‍👩🏿|👩🏼‍🐰‍👩🏾|👩🏼‍🐰‍👩🏽|👩🏼‍🐰‍👩🏻|👨🏿‍🫯‍👨🏼|👨🏿‍🫯‍👨🏽|👨🏿‍🫯‍👨🏾|👩‍👩‍👦‍👦|👨🏼‍🐰‍👨🏻|👨🏼‍🐰‍👨🏽|👨🏼‍🐰‍👨🏾|👨🏼‍🐰‍👨🏿|👨🏼‍🤝‍👨🏻|👨🏼‍🤝‍👨🏽|👨🏼‍🤝‍👨🏾|👨🏼‍🤝‍👨🏿|👨🏼‍🫯‍👨🏻|👨🏼‍🫯‍👨🏽|👩🏾‍🫯‍👩🏿|👩🏾‍🫯‍👩🏽|👩🏾‍🫯‍👩🏼|👩🏾‍🫯‍👩🏻|👩🏾‍🤝‍👩🏿|👩🏾‍🤝‍👩🏽|👩🏾‍🤝‍👩🏼|👩🏾‍🤝‍👩🏻|👩🏿‍🫯‍👩🏻|👩🏿‍🤝‍👩🏾|👩🏿‍🤝‍👩🏽|👩🏿‍🤝‍👩🏼|👩🏿‍🤝‍👩🏻|👩🏿‍🤝‍👨🏾|👩🏿‍🤝‍👨🏽|👩🏿‍🤝‍👨🏼|👩🏿‍🤝‍👨🏻|👩🏿‍🐰‍👩🏾|👩🏿‍🐰‍👩🏽|👩🏿‍🐰‍👩🏼|👩🏿‍🐰‍👩🏻|👨🏻‍🤝‍👨🏿|👨🏻‍🫯‍👨🏼|👨🏻‍🫯‍👨🏽|👨🏻‍🫯‍👨🏾|👨🏻‍🫯‍👨🏿|👩🏾‍🤝‍👨🏿|👨🏽‍🐰‍👨🏿|👨🏽‍🤝‍👨🏻|👨🏽‍🤝‍👨🏼|👨🏽‍🤝‍👨🏾|👨🏽‍🤝‍👨🏿|👨🏽‍🫯‍👨🏻|👨🏽‍🫯‍👨🏼|👨🏽‍🫯‍👨🏾|👨🏽‍🫯‍👨🏿|👩🏽‍🫯‍👩🏿|🧎‍♀️?‍➡️?|👩🏽‍🫯‍👩🏾|🧎‍♂️?‍➡️?|👩🏽‍🫯‍👩🏼|👩🏽‍🫯‍👩🏻|👩🏽‍🤝‍👩🏿|👩🏽‍🤝‍👩🏾|👩🏽‍🤝‍👩🏼|👩🏾‍🤝‍👨🏽|👩🏾‍🤝‍👨🏼|👩🏾‍🤝‍👨🏻|👩🏾‍🐰‍👩🏿|👩🏾‍🐰‍👩🏽|👩🏾‍🐰‍👩🏼|👩🏾‍🐰‍👩🏻|👨🏼‍🫯‍👨🏾|👨🏼‍🫯‍👨🏿|👨🏽‍🐰‍👨🏻|👨🏽‍🐰‍👨🏼|👨🏽‍🐰‍👨🏾|👩‍👩‍👧‍👦|👨‍🦽‍➡️?|🧑‍🦯‍➡️?|👨‍🦼‍➡️?|🧑‍🦼‍➡️?|👨‍🦯‍➡️?|🧑‍🦽‍➡️?|👩‍❤️?‍👩|👩‍❤️?‍👨|👩‍🦯‍➡️?|👨‍❤️?‍👨|👩‍🦼‍➡️?|👩‍🦽‍➡️?|🧖🏾‍♀️?|🧖🏽‍♂️?|🧖🏽‍♀️?|🧖🏼‍♂️?|🧖🏼‍♀️?|🧖🏻‍♂️?|🧖🏻‍♀️?|👩🏾‍✈️?|👩🏾‍⚖️?|👩🏾‍⚕️?|🧔🏿‍♂️?|🧔🏿‍♀️?|🧔🏾‍♂️?|🚴🏻‍♀️?|🧔🏾‍♀️?|🧔🏽‍♂️?|🧔🏽‍♀️?|🧔🏼‍♂️?|🧔🏼‍♀️?|🧔🏻‍♂️?|🧔🏻‍♀️?|🧘🏻‍♂️?|🧘🏻‍♀️?|🧗🏿‍♂️?|🧗🏿‍♀️?|🧗🏾‍♂️?|🧗🏾‍♀️?|🧗🏽‍♂️?|🧗🏽‍♀️?|👩🏿‍✈️?|👩🏿‍⚖️?|👩🏿‍⚕️?|🚣🏾‍♂️?|🧗🏼‍♂️?|🚣🏿‍♀️?|🧗🏼‍♀️?|🚣🏿‍♂️?|🧗🏻‍♂️?|🧗🏻‍♀️?|🧖🏿‍♂️?|🧖🏿‍♀️?|🧖🏾‍♂️?|🧎🏽‍♀️?|🧎🏼‍♂️?|🧎🏼‍♀️?|🧎🏻‍♂️?|🧎🏻‍♀️?|👩🏼‍✈️?|👩🏼‍⚖️?|👩🏼‍⚕️?|🚴🏽‍♀️?|🚴🏽‍♂️?|🧍🏿‍♂️?|🚴🏾‍♀️?|🧍🏿‍♀️?|🧍🏾‍♂️?|🧍🏾‍♀️?|🧍🏽‍♂️?|🧍🏽‍♀️?|🧍🏼‍♂️?|🧍🏼‍♀️?|🧍🏻‍♂️?|🧍🏻‍♀️?|🧏🏿‍♂️?|🧏🏿‍♀️?|🧏🏾‍♂️?|🧏🏾‍♀️?|🧏🏽‍♂️?|🧏🏽‍♀️?|👩🏽‍✈️?|👩🏽‍⚖️?|👩🏽‍⚕️?|🚴🏻‍♂️?|🧏🏼‍♂️?|🚴🏼‍♀️?|🧏🏼‍♀️?|🚴🏼‍♂️?|🧏🏻‍♂️?|🧏🏻‍♀️?|🧎🏿‍♂️?|🧎🏿‍♀️?|🧎🏾‍♂️?|🧎🏾‍♀️?|🧎🏽‍♂️?|🧑🏼‍⚕️?|👩‍👧‍👧|👩‍👩‍👦|🧜🏻‍♀️?|👩‍👩‍👧|🚣🏻‍♀️?|🧛🏿‍♂️?|🧛🏿‍♀️?|🧛🏾‍♂️?|🧛🏾‍♀️?|🧛🏽‍♂️?|🧛🏽‍♀️?|🧛🏼‍♂️?|🧛🏼‍♀️?|🧛🏻‍♂️?|🧛🏻‍♀️?|🧚🏿‍♂️?|🧚🏿‍♀️?|🧑🏻‍✈️?|🧑🏻‍⚖️?|🧑🏻‍⚕️?|🙎🏾‍♂️?|🧝🏽‍♀️?|🙎🏿‍♀️?|🧝🏼‍♂️?|🙎🏿‍♂️?|🧝🏼‍♀️?|🧝🏻‍♂️?|🧝🏻‍♀️?|🧜🏿‍♂️?|🧜🏿‍♀️?|🧜🏾‍♂️?|🧜🏾‍♀️?|🧜🏽‍♂️?|🧜🏽‍♀️?|🧜🏼‍♂️?|🧜🏼‍♀️?|🧜🏻‍♂️?|👩‍👦‍👦|👩‍👧‍👦|🧑🏼‍✈️?|🧑🏼‍⚖️?|🧎🏿‍➡️?|🧎🏾‍➡️?|🧎🏽‍➡️?|🧎🏼‍➡️?|🧎🏻‍➡️?|🚶🏿‍➡️?|🚶🏾‍➡️?|🚶🏽‍➡️?|🚶🏼‍➡️?|🚶🏻‍➡️?|🧘🏿‍♂️?|🚣🏽‍♀️?|🧘🏿‍♀️?|🚣🏽‍♂️?|🧘🏾‍♂️?|🚣🏾‍♀️?|🧘🏾‍♀️?|🧘🏽‍♂️?|🧘🏽‍♀️?|🧘🏼‍♂️?|🧘🏼‍♀️?|🚣🏻‍♂️?|🧚🏾‍♂️?|🚣🏼‍♀️?|🧚🏾‍♀️?|🚣🏼‍♂️?|🧚🏽‍♂️?|🧚🏽‍♀️?|🧚🏼‍♂️?|🧚🏼‍♀️?|🧚🏻‍♂️?|🧚🏻‍♀️?|🧙🏿‍♂️?|🧙🏿‍♀️?|🧙🏾‍♂️?|🧙🏾‍♀️?|🧙🏽‍♂️?|🧙🏽‍♀️?|🧙🏼‍♂️?|🧙🏼‍♀️?|🧙🏻‍♂️?|🧙🏻‍♀️?|👨🏼‍✈️?|👨🏼‍⚖️?|👨🏼‍⚕️?|🤷🏼‍♀️?|🤷🏻‍♂️?|🤷🏻‍♀️?|🚶🏻‍♀️?|🤵🏿‍♂️?|🤵🏿‍♀️?|🤵🏾‍♂️?|🤵🏾‍♀️?|🤵🏽‍♂️?|🤵🏽‍♀️?|🤵🏼‍♂️?|🤵🏼‍♀️?|🤵🏻‍♂️?|🤵🏻‍♀️?|🤦🏿‍♂️?|🤦🏿‍♀️?|👨🏻‍✈️?|👨🏻‍⚖️?|👨🏽‍✈️?|👨🏽‍⚖️?|👨🏽‍⚕️?|🚵🏾‍♂️?|🤸🏾‍♂️?|🚵🏿‍♀️?|🤸🏾‍♀️?|🚵🏿‍♂️?|🤸🏽‍♂️?|🤸🏽‍♀️?|🤸🏼‍♂️?|🤸🏼‍♀️?|🤸🏻‍♂️?|🤸🏻‍♀️?|🤷🏿‍♂️?|🤷🏿‍♀️?|🤷🏾‍♂️?|🤷🏾‍♀️?|🤷🏽‍♂️?|🤷🏽‍♀️?|🤷🏼‍♂️?|🫱🏻‍🫲🏿|🏃🏿‍➡️?|🏃🏾‍➡️?|🏃🏽‍➡️?|🏃🏼‍➡️?|🏃🏻‍➡️?|🫱🏼‍🫲🏻|🫱🏿‍🫲🏾|🫱🏿‍🫲🏽|🫱🏿‍🫲🏼|🫱🏿‍🫲🏻|🫱🏾‍🫲🏿|🫱🏾‍🫲🏽|🫱🏾‍🫲🏼|🫱🏾‍🫲🏻|🫱🏽‍🫲🏿|🫱🏽‍🫲🏾|🫱🏽‍🫲🏼|🫱🏽‍🫲🏻|🫱🏼‍🫲🏿|🫱🏼‍🫲🏾|👨🏻‍⚕️?|🚶🏻‍♂️?|🤦🏾‍♂️?|🚶🏼‍♀️?|🤦🏾‍♀️?|🚶🏼‍♂️?|🤦🏽‍♂️?|🤦🏽‍♀️?|🤦🏼‍♂️?|🤦🏼‍♀️?|🤦🏻‍♂️?|🤦🏻‍♀️?|🚶🏿‍♂️?|🚶🏿‍♀️?|🚶🏾‍♂️?|🚶🏾‍♀️?|🚶🏽‍♂️?|🚶🏽‍♀️?|🫱🏻‍🫲🏼|🫱🏻‍🫲🏽|🫱🏻‍🫲🏾|🦸🏽‍♀️?|🦸🏼‍♂️?|🦸🏼‍♀️?|🦸🏻‍♂️?|🦸🏻‍♀️?|🤾🏿‍♂️?|🤾🏿‍♀️?|🤾🏾‍♂️?|🤾🏾‍♀️?|🚵🏻‍♀️?|🤾🏽‍♂️?|🤾🏽‍♀️?|🤾🏼‍♂️?|🤾🏼‍♀️?|🤾🏻‍♂️?|🤾🏻‍♀️?|🤽🏿‍♂️?|🤽🏿‍♀️?|🤽🏾‍♂️?|🤽🏾‍♀️?|🤽🏽‍♂️?|🦹🏿‍♂️?|🦹🏿‍♀️?|🦹🏾‍♂️?|🦹🏾‍♀️?|👩🏻‍✈️?|👩🏻‍⚖️?|👩🏻‍⚕️?|🚴🏾‍♂️?|🦹🏽‍♂️?|🚴🏿‍♀️?|🦹🏽‍♀️?|🚴🏿‍♂️?|🦹🏼‍♂️?|🦹🏼‍♀️?|🦹🏻‍♂️?|🦹🏻‍♀️?|🦸🏿‍♂️?|🦸🏿‍♀️?|🦸🏾‍♂️?|🦸🏾‍♀️?|🦸🏽‍♂️?|👨🏾‍✈️?|👨🏾‍⚖️?|👨🏾‍⚕️?|🚵🏽‍♀️?|🧑‍🤝‍🧑|🚵🏽‍♂️?|🧑‍🧑‍🧒|🚵🏾‍♀️?|🤹🏿‍♂️?|🧑‍🧒‍🧒|🤹🏿‍♀️?|🤹🏾‍♂️?|🤹🏾‍♀️?|🤹🏽‍♂️?|🤹🏽‍♀️?|🤹🏼‍♂️?|🤹🏼‍♀️?|🤹🏻‍♂️?|🤹🏻‍♀️?|🤸🏿‍♂️?|🤸🏿‍♀️?|🤽🏽‍♀️?|🤽🏼‍♂️?|👨🏿‍✈️?|👨🏿‍⚖️?|👨🏿‍⚕️?|🚵🏻‍♂️?|🤽🏼‍♀️?|🚵🏼‍♀️?|🤽🏻‍♂️?|🚵🏼‍♂️?|🤽🏻‍♀️?|🤼🏿‍♂️?|🤼🏿‍♀️?|🤼🏾‍♂️?|🤼🏾‍♀️?|🤼🏽‍♂️?|🤼🏽‍♀️?|🤼🏼‍♂️?|🤼🏼‍♀️?|🤼🏻‍♂️?|🤼🏻‍♀️?|👷🏽‍♀️?|👷🏼‍♂️?|👷🏼‍♀️?|👷🏻‍♂️?|👷🏻‍♀️?|👳🏿‍♂️?|👳🏿‍♀️?|👳🏾‍♂️?|👳🏾‍♀️?|👳🏽‍♂️?|👳🏽‍♀️?|👳🏼‍♂️?|👳🏼‍♀️?|👳🏻‍♂️?|👳🏻‍♀️?|🏳️‍⚧️?|👱🏿‍♂️?|👱🏿‍♀️?|👱🏾‍♂️?|👱🏾‍♀️?|👱🏽‍♂️?|💂🏽‍♀️?|💂🏼‍♂️?|💂🏼‍♀️?|💂🏻‍♂️?|💂🏻‍♀️?|💁🏿‍♂️?|💁🏿‍♀️?|💁🏾‍♂️?|💁🏾‍♀️?|💁🏽‍♂️?|💁🏽‍♀️?|💁🏼‍♂️?|💁🏼‍♀️?|💁🏻‍♂️?|💁🏻‍♀️?|👁️‍🗨️?|👷🏿‍♂️?|👷🏿‍♀️?|👷🏾‍♂️?|👷🏾‍♀️?|👷🏽‍♂️?|👯🏼‍♂️?|👯🏼‍♀️?|👯🏻‍♂️?|👯🏻‍♀️?|👮🏿‍♂️?|👮🏿‍♀️?|👮🏾‍♂️?|👮🏾‍♀️?|👮🏽‍♂️?|👮🏽‍♀️?|👮🏼‍♂️?|👮🏼‍♀️?|👮🏻‍♂️?|👮🏻‍♀️?|🏌️‍♂️?|🏌️‍♀️?|🏌🏿‍♂️?|🏌🏿‍♀️?|🏌🏾‍♂️?|🏌🏾‍♀️?|🏌🏽‍♂️?|👱🏽‍♀️?|👱🏼‍♂️?|👱🏼‍♀️?|👱🏻‍♂️?|👱🏻‍♀️?|👰🏿‍♂️?|👰🏿‍♀️?|👰🏾‍♂️?|👰🏾‍♀️?|👰🏽‍♂️?|👰🏽‍♀️?|👰🏼‍♂️?|👰🏼‍♀️?|👰🏻‍♂️?|👰🏻‍♀️?|👯🏿‍♂️?|👯🏿‍♀️?|👯🏾‍♂️?|👯🏾‍♀️?|👯🏽‍♂️?|👯🏽‍♀️?|👨‍👧‍👦|🙆🏿‍♂️?|🙆🏿‍♀️?|🙆🏾‍♂️?|🙆🏾‍♀️?|🙆🏽‍♂️?|🙆🏽‍♀️?|🙆🏼‍♂️?|🙆🏼‍♀️?|🙆🏻‍♂️?|🙆🏻‍♀️?|👨‍👧‍👧|👨‍👨‍👦|🙅🏿‍♂️?|🙅🏿‍♀️?|🙅🏾‍♂️?|🙅🏾‍♀️?|🙅🏽‍♂️?|🙅🏽‍♀️?|🙅🏼‍♂️?|🙅🏼‍♀️?|🙋🏿‍♂️?|🙋🏿‍♀️?|🙋🏾‍♂️?|🙋🏾‍♀️?|🙋🏽‍♂️?|🙋🏽‍♀️?|🙋🏼‍♂️?|🙋🏼‍♀️?|🙋🏻‍♂️?|🙋🏻‍♀️?|🙇🏿‍♂️?|🙇🏿‍♀️?|🙇🏾‍♂️?|🙇🏾‍♀️?|🙇🏽‍♂️?|🙇🏽‍♀️?|🙇🏼‍♂️?|🙇🏼‍♀️?|🙇🏻‍♂️?|🙇🏻‍♀️?|👨‍👦‍👦|💇🏼‍♂️?|💇🏼‍♀️?|💇🏻‍♂️?|💇🏻‍♀️?|💆🏿‍♂️?|💆🏿‍♀️?|💆🏾‍♂️?|💆🏾‍♀️?|💆🏽‍♂️?|💆🏽‍♀️?|💆🏼‍♂️?|💆🏼‍♀️?|💆🏻‍♂️?|💆🏻‍♀️?|👨‍👩‍👦|👨‍👩‍👧|💂🏿‍♂️?|💂🏿‍♀️?|💂🏾‍♂️?|💂🏾‍♀️?|💂🏽‍♂️?|🙅🏻‍♂️?|🙅🏻‍♀️?|👨‍👨‍👧|🕵️‍♂️?|🕵️‍♀️?|🕵🏿‍♂️?|🕵🏿‍♀️?|🕵🏾‍♂️?|🕵🏾‍♀️?|🕵🏽‍♂️?|🕵🏽‍♀️?|🕵🏼‍♂️?|🕵🏼‍♀️?|🕵🏻‍♂️?|🕵🏻‍♀️?|💇🏿‍♂️?|💇🏿‍♀️?|💇🏾‍♂️?|💇🏾‍♀️?|💇🏽‍♂️?|💇🏽‍♀️?|🏌🏽‍♀️?|⛹🏾‍♀️?|⛹🏾‍♂️?|⛹🏿‍♀️?|⛹🏿‍♂️?|⛹️‍♀️?|⛹️‍♂️?|🙍🏿‍♂️?|🙍🏿‍♀️?|🏃🏻‍♀️?|🙍🏾‍♂️?|🏃🏻‍♂️?|🙍🏾‍♀️?|🏃🏼‍♀️?|🙍🏽‍♂️?|🏃🏼‍♂️?|🙍🏽‍♀️?|🏃🏽‍♀️?|🙍🏼‍♂️?|🏃🏽‍♂️?|🙍🏼‍♀️?|🏃🏾‍♀️?|🙍🏻‍♂️?|🏃🏾‍♂️?|🙍🏻‍♀️?|🏃🏿‍♀️?|🏃🏿‍♂️?|🏄🏻‍♀️?|🏄🏻‍♂️?|🫱🏼‍🫲🏽|🧑🏽‍⚕️?|🧑🏽‍⚖️?|🧑🏽‍✈️?|🧝🏽‍♂️?|🧝🏾‍♀️?|🧝🏾‍♂️?|🧝🏿‍♀️?|🧝🏿‍♂️?|🙎🏾‍♀️?|🙎🏽‍♂️?|🙎🏽‍♀️?|🧑🏾‍⚕️?|🧑🏾‍⚖️?|🧑🏾‍✈️?|🙎🏼‍♂️?|🙎🏼‍♀️?|🙎🏻‍♂️?|🧑🏿‍⚕️?|🧑🏿‍⚖️?|🧑🏿‍✈️?|🙎🏻‍♀️?|⛹🏻‍♀️?|⛹🏻‍♂️?|⛹🏼‍♀️?|⛹🏼‍♂️?|⛹🏽‍♀️?|⛹🏽‍♂️?|🏊🏻‍♀️?|🏊🏻‍♂️?|🏊🏼‍♀️?|🏊🏼‍♂️?|🏊🏽‍♀️?|🏊🏽‍♂️?|🏊🏾‍♀️?|🏊🏾‍♂️?|🏊🏿‍♀️?|🏊🏿‍♂️?|🏋🏻‍♀️?|🏋🏻‍♂️?|🏋🏼‍♀️?|🏋🏼‍♂️?|🏋🏽‍♀️?|🏋🏽‍♂️?|🏋🏾‍♀️?|🏋🏾‍♂️?|🏋🏿‍♀️?|🏋🏿‍♂️?|🏋️‍♀️?|🏋️‍♂️?|🏌🏻‍♀️?|🏌🏻‍♂️?|🏌🏼‍♀️?|🏌🏼‍♂️?|🏄🏿‍♀️?|🏄🏾‍♂️?|🏄🏾‍♀️?|🏄🏽‍♂️?|🏄🏽‍♀️?|🏄🏿‍♂️?|🏄🏼‍♂️?|🏄🏼‍♀️?|🤾‍♂️?|👨🏽‍🦱|👨🏽‍🦲|👨🏽‍🦳|🧜‍♀️?|👨🏾‍🦰|👨🏾‍🦱|👨🏾‍🦲|👨🏾‍🦳|👨🏿‍🦰|👨🏿‍🦱|🧜‍♂️?|🤦‍♂️?|🤷‍♀️?|👩🏼‍🦲|🧑🏽‍🦱|👩🏼‍🦱|🤾‍♀️?|👩🏼‍🦰|👩🏻‍🦳|👩🏻‍🦲|👩🏻‍🦱|👩🏻‍🦰|👨🏿‍🦳|🤵‍♂️?|🤵‍♀️?|🧑🏽‍🩰|👨🏿‍🦲|🧛‍♀️?|🧛‍♂️?|🧖‍♂️?|🧎‍♂️?|🧖‍♀️?|🧑🏾‍🦰|🧑🏽‍🦳|🧑🏽‍🦲|🧝‍♂️?|🧝‍♀️?|🧑🏿‍🩰|🧑🏾‍🩰|🧎‍♀️?|🧞‍♀️?|🧞‍♂️?|🧟‍♀️?|🧟‍♂️?|👨🏻‍🦰|👨🏻‍🦱|👨🏻‍🦲|👨🏻‍🦳|👨🏼‍🦰|👨🏼‍🦱|👨🏼‍🦲|🧏‍♀️?|👨🏼‍🦳|🧑🏾‍🦳|👨🏽‍🦰|🧑🏿‍🦰|🧏‍♂️?|❤️‍🩹|🤦‍♀️?|🧑🏼‍🦰|🧑🏼‍🦱|🤹‍♀️?|🤹‍♂️?|🧑🏼‍🦲|🧍‍♀️?|🧑🏿‍🦱|🧑🏿‍🦲|🧗‍♀️?|🧗‍♂️?|🙂‍↕️?|🙂‍↔️?|🏴‍☠️?|🧔‍♀️?|🧑🏼‍🦳|🧘‍♂️?|🧘‍♀️?|🧔‍♂️?|🤼‍♀️?|🤼‍♂️?|😶‍🌫️?|🧑🏽‍🦰|🐻‍❄️?|🧑🏿‍🦳|⛓️‍💥|🦹‍♂️?|🦹‍♀️?|🧑🏾‍🦱|🧑🏾‍🦲|🤽‍♀️?|🤽‍♂️?|🏳️‍🌈|🤷‍♂️?|🦸‍♀️?|🦸‍♂️?|❤️‍🔥|👩🏼‍🦳|🧚‍♂️?|🧚‍♀️?|👩🏽‍🦰|👩🏽‍🦱|👩🏽‍🦲|👩🏽‍🦳|👩🏾‍🦰|👩🏾‍🦱|🧑🏼‍🩰|🤸‍♀️?|🤸‍♂️?|🧑🏻‍🩰|👩🏾‍🦲|👩🏾‍🦳|👩🏿‍🦰|👩🏿‍🦱|🧙‍♂️?|👩🏿‍🦲|👩🏿‍🦳|🧑🏻‍🦰|🧑🏻‍🦱|🧑🏻‍🦲|🧙‍♀️?|🧍‍♂️?|🧑🏻‍🦳|🚣‍♀️?|🧑🏻‍🦽|🚣‍♂️?|🧑🏻‍🦼|🧑🏻‍🦯|🧑🏻‍🚒|🧑🏻‍🚀|🧑🏻‍🔬|🧑🏻‍🔧|🧑🏻‍💼|🧑🏻‍💻|🧑🏻‍🏭|🧑🏻‍🏫|🧑🏻‍🎨|🧑🏻‍🎤|🧑🏻‍🎓|🧑🏻‍🎄|🧑🏻‍🍼|🧑🏻‍🍳|🧑🏻‍🌾|🧑‍✈️?|🧑‍⚖️?|🧑🏽‍🎄|🧑🏽‍🍼|🧑🏽‍🍳|🧑🏽‍🌾|🧑🏼‍🦽|🧑🏼‍🦼|🧑🏼‍🦯|🧑🏼‍🚒|🧑🏼‍🚀|🧑🏼‍🔬|🧑🏼‍🔧|🧑🏼‍💼|🧑🏼‍💻|🧑🏼‍🏭|🧑🏼‍🏫|🧑🏼‍🎨|🧑🏼‍🎤|🧑🏼‍🎓|🧑🏼‍🎄|🧑🏼‍🍼|🧑🏼‍🍳|🧑🏼‍🌾|👩🏾‍🦯|👩🏾‍🚒|👩🏾‍🚀|👩🏾‍🔬|👩🏾‍🔧|👩🏾‍💼|👩🏾‍💻|👩🏾‍🏭|👩🏾‍🏫|👩🏾‍🎨|👩🏾‍🎤|👩🏾‍🎓|👩🏾‍🍼|👩🏾‍🍳|👩🏾‍🌾|🚴‍♀️?|👩🏽‍🦽|🚴‍♂️?|👩🏽‍🦼|👩🏽‍🦯|👩🏽‍🚒|👩🏽‍🚀|🧑‍⚕️?|🧎‍➡️?|🚶‍➡️?|👩🏿‍🦽|👩🏿‍🦼|👩🏿‍🦯|👩🏿‍🚒|👩🏿‍🚀|👩🏿‍🔬|👩🏿‍🔧|👩🏿‍💼|👩🏿‍💻|👩🏿‍🏭|👩🏿‍🏫|👩🏿‍🎨|👩🏿‍🎤|👩🏿‍🎓|👩🏿‍🍼|👩🏿‍🍳|👩🏿‍🌾|👩🏾‍🦽|👩🏾‍🦼|👰‍♂️?|👰‍♀️?|👯‍♂️?|👯‍♀️?|👮‍♂️?|👮‍♀️?|🏊‍♂️?|🏊‍♀️?|🏄‍♂️?|🏄‍♀️?|🙍‍♀️?|🙍‍♂️?|🏃‍♂️?|🏃‍♀️?|🙎‍♀️?|🧑🏿‍🦽|🙎‍♂️?|🧑🏿‍🦼|🧑🏿‍🦯|🧑🏿‍🚒|🧑🏿‍🚀|🧑🏿‍🔬|🙋‍♂️?|🙋‍♀️?|🙇‍♂️?|🙇‍♀️?|🙆‍♂️?|🙆‍♀️?|🙅‍♂️?|🙅‍♀️?|💇‍♂️?|💇‍♀️?|💆‍♂️?|💆‍♀️?|💂‍♂️?|💂‍♀️?|💁‍♂️?|💁‍♀️?|👷‍♂️?|👷‍♀️?|👳‍♂️?|👳‍♀️?|👱‍♂️?|👱‍♀️?|🧑🏾‍🏫|🧑🏾‍🎨|🧑🏾‍🎤|🧑🏾‍🎓|🧑🏾‍🎄|🧑🏾‍🍼|🧑🏾‍🍳|🧑🏾‍🌾|🧑🏽‍🦽|🧑🏽‍🦼|🧑🏽‍🦯|🧑🏽‍🚒|🧑🏽‍🚀|🧑🏽‍🔬|🧑🏽‍🔧|🧑🏽‍💼|🧑🏽‍💻|🧑🏽‍🏭|🧑🏽‍🏫|🧑🏽‍🎨|🧑🏽‍🎤|🧑🏽‍🎓|🧑🏿‍🔧|🧑🏿‍💼|🧑🏿‍💻|🧑🏿‍🏭|🧑🏿‍🏫|🧑🏿‍🎨|🧑🏿‍🎤|🧑🏿‍🎓|🧑🏿‍🎄|🧑🏿‍🍼|🧑🏿‍🍳|🧑🏿‍🌾|🧑🏾‍🦽|🧑🏾‍🦼|🧑🏾‍🦯|🧑🏾‍🚒|🧑🏾‍🚀|🧑🏾‍🔬|🧑🏾‍🔧|🧑🏾‍💼|🧑🏾‍💻|🧑🏾‍🏭|👨🏾‍🔧|👨🏾‍💼|👨🏾‍💻|👨🏾‍🏭|👨🏾‍🏫|👨🏾‍🎨|👨🏾‍🎤|👨🏾‍🎓|👨🏾‍🍼|👨🏾‍🍳|👨🏾‍🌾|👨🏽‍🦽|👨🏽‍🦼|👨🏽‍🦯|👨🏽‍🚒|👨🏽‍🚀|👨🏽‍🔬|👨🏽‍🔧|👨🏽‍💼|👨🏽‍💻|👨🏽‍🏭|👨🏽‍🏫|👨🏿‍🦼|👨🏿‍🦯|👨🏿‍🚒|👨🏿‍🚀|👨🏿‍🔬|👨🏿‍🔧|👨🏿‍💼|👨🏿‍💻|👨🏿‍🏭|👨🏿‍🏫|👨🏿‍🎨|👨🏿‍🎤|👨🏿‍🎓|👨🏿‍🍼|👨🏿‍🍳|👨🏿‍🌾|👨🏾‍🦽|👨🏾‍🦼|👨🏾‍🦯|👨🏾‍🚒|👨🏾‍🚀|👨🏾‍🔬|👨🏽‍🎨|🚶‍♀️?|👨🏻‍🦽|🚶‍♂️?|👨🏻‍🦼|👨🏻‍🦯|👨🏻‍🚒|👨🏻‍🚀|👨🏻‍🔬|👨🏻‍🔧|👨🏻‍💼|👨🏻‍💻|👨🏻‍🏭|👨🏻‍🏫|👨🏻‍🎨|👨🏻‍🎤|👨🏻‍🎓|👨🏻‍🍼|👨🏻‍🍳|👨🏻‍🌾|👨‍✈️?|👨‍⚖️?|👨‍⚕️?|👨🏽‍🎤|👨🏽‍🎓|👨🏽‍🍼|👨🏽‍🍳|👨🏽‍🌾|👨🏼‍🦽|👨🏼‍🦼|👨🏼‍🦯|👨🏼‍🚒|👨🏼‍🚀|👨🏼‍🔬|👨🏼‍🔧|👨🏼‍💼|👨🏼‍💻|👨🏼‍🏭|👨🏼‍🏫|👨🏼‍🎨|👨🏼‍🎤|👨🏼‍🎓|👨🏼‍🍼|👨🏼‍🍳|👨🏼‍🌾|👩🏼‍🎨|👩🏼‍🎤|👩🏼‍🎓|👩🏼‍🍼|👩🏼‍🍳|👩🏼‍🌾|👩🏻‍🦽|👩🏻‍🦼|👩🏻‍🦯|👩🏻‍🚒|👩🏻‍🚀|👩🏻‍🔬|👩🏻‍🔧|👩🏻‍💼|👩🏻‍💻|👩🏻‍🏭|👩🏻‍🏫|👩🏻‍🎨|👩🏻‍🎤|👩🏻‍🎓|👩🏻‍🍼|👩🏻‍🍳|👩🏻‍🌾|👩🏽‍🔬|👩🏽‍🔧|👩🏽‍💼|👩🏽‍💻|👩🏽‍🏭|👩🏽‍🏫|👩🏽‍🎨|👩🏽‍🎤|👩🏽‍🎓|👩🏽‍🍼|👩🏽‍🍳|👩🏽‍🌾|👩🏼‍🦽|👩🏼‍🦼|👩🏼‍🦯|👩🏼‍🚒|👩🏼‍🚀|👩🏼‍🔬|👩🏼‍🔧|👩🏼‍💼|👩🏼‍💻|👩🏼‍🏭|👩🏼‍🏫|👨🏿‍🦽|🚵‍♀️?|👩‍⚕️?|👩‍⚖️?|👩‍✈️?|🚵‍♂️?|🏃‍➡️?|🐦‍🔥|🐦‍⬛|🐕‍🦺|🐈‍⬛|👨‍🚒|👨‍🦯|👨‍🦼|🍋‍🟩|🍄‍🟫|👨‍🦽|👩‍🎨|👩‍🎤|👩‍🎓|👩‍🌾|👩‍🍳|👩‍👦|👨‍👦|👨‍👧|👩‍👧|👨‍🌾|👨‍🍳|👨‍🍼|👨‍🎓|👨‍🎤|👨‍🎨|👨‍🏫|🧑‍🩰|👨‍🏭|👨‍💻|👨‍💼|👨‍🔧|😵‍💫|😮‍💨|👨‍🔬|👨‍🚀|🧑‍🦯|🧑‍🚒|🧑‍🚀|🧑‍🔬|🧑‍🔧|🧑‍💼|🧑‍💻|🧑‍🏭|🧑‍🏫|🧑‍🧒|🧑‍🎨|🧑‍🎤|🧑‍🎓|🧑‍🎄|🧑‍🍼|👩‍🦳|👩‍🦲|👩‍🦱|👩‍🦰|👩‍🦽|🧑‍🌾|👩‍🍼|👩‍🏫|👩‍🏭|👩‍💻|👩‍💼|👩‍🔧|👩‍🔬|👩‍🚀|👩‍🚒|👩‍🦯|👩‍🦼|👨‍🦰|🧑‍🦳|🧑‍🦲|🧑‍🦱|🧑‍🦰|👨‍🦱|👨‍🦲|👨‍🦳|🧑‍🦽|🧑‍🦼|🧑‍🍳)|(?:🏴󠁧󠁢󠁷󠁬󠁳󠁿|🏴󠁧󠁢󠁳󠁣󠁴󠁿|🏴󠁧󠁢󠁥󠁮󠁧󠁿)|(?:🇦🇨|🇦🇩|🇦🇪|🇦🇫|🇦🇬|🇦🇮|🇦🇱|🇦🇲|🇦🇴|🇦🇶|🇦🇷|🇦🇸|🇦🇹|🇦🇺|🇦🇼|🇦🇽|🇦🇿|🇧🇦|🇧🇧|🇧🇩|🇧🇪|🇧🇫|🇧🇬|🇧🇭|🇧🇮|🇧🇯|🇧🇱|🇧🇲|🇧🇳|🇧🇴|🇧🇶|🇧🇷|🇧🇸|🇧🇹|🇧🇻|🇧🇼|🇧🇾|🇧🇿|🇨🇦|🇨🇨|🇨🇩|🇨🇫|🇨🇬|🇨🇭|🇨🇮|🇨🇰|🇨🇱|🇨🇲|🇨🇳|🇨🇴|🇨🇵|🇨🇶|🇨🇷|🇨🇺|🇨🇻|🇨🇼|🇨🇽|🇨🇾|🇨🇿|🇩🇪|🇩🇬|🇩🇯|🇩🇰|🇩🇲|🇩🇴|🇩🇿|🇪🇦|🇪🇨|🇪🇪|🇪🇬|🇪🇭|🇪🇷|🇪🇸|🇪🇹|🇪🇺|🇫🇮|🇫🇯|🇫🇰|🇫🇲|🇫🇴|🇫🇷|🇬🇦|🇬🇧|🇬🇩|🇬🇪|🇬🇫|🇬🇬|🇬🇭|🇬🇮|🇬🇱|🇬🇲|🇬🇳|🇬🇵|🇬🇶|🇬🇷|🇬🇸|🇬🇹|🇬🇺|🇬🇼|🇬🇾|🇭🇰|🇭🇲|🇭🇳|🇭🇷|🇭🇹|🇭🇺|🇮🇨|🇮🇩|🇮🇪|🇮🇱|🇮🇲|🇮🇳|🇮🇴|🇮🇶|🇮🇷|🇮🇸|🇮🇹|🇯🇪|🇯🇲|🇯🇴|🇯🇵|🇰🇪|🇰🇬|🇰🇭|🇰🇮|🇰🇲|🇰🇳|🇰🇵|🇰🇷|🇰🇼|🇰🇾|🇰🇿|🇱🇦|🇱🇧|🇱🇨|🇱🇮|🇱🇰|🇱🇷|🇱🇸|🇱🇹|🇱🇺|🇱🇻|🇱🇾|🇲🇦|🇲🇨|🇲🇩|🇲🇪|🇲🇫|🇲🇬|🇲🇭|🇲🇰|🇲🇱|🇲🇲|🇲🇳|🇲🇴|🇲🇵|🇲🇶|🇲🇷|🇲🇸|🇲🇹|🇲🇺|🇲🇻|🇲🇼|🇲🇽|🇲🇾|🇲🇿|🇳🇦|🇳🇨|🇳🇪|🇳🇫|🇳🇬|🇳🇮|🇳🇱|🇳🇴|🇳🇵|🇳🇷|🇳🇺|🇳🇿|🇴🇲|🇵🇦|🇵🇪|🇵🇫|🇵🇬|🇵🇭|🇵🇰|🇵🇱|🇵🇲|🇵🇳|🇵🇷|🇵🇸|🇵🇹|🇵🇼|🇵🇾|🇶🇦|🇷🇪|🇷🇴|🇷🇸|🇷🇺|🇷🇼|🇸🇦|🇸🇧|🇸🇨|🇸🇩|🇸🇪|🇸🇬|🇸🇭|🇸🇮|🇸🇯|🇸🇰|🇸🇱|🇸🇲|🇸🇳|🇸🇴|🇸🇷|🇸🇸|🇸🇹|🇸🇻|🇸🇽|🇸🇾|🇸🇿|🇹🇦|🇹🇨|🇹🇩|🇹🇫|🇹🇬|🇹🇭|🇹🇯|🇹🇰|🇹🇱|🇹🇲|🇹🇳|🇹🇴|🇹🇷|🇹🇹|🇹🇻|🇹🇼|🇹🇿|🇺🇦|🇺🇬|🇺🇲|🇺🇳|🇺🇸|🇺🇾|🇺🇿|🇻🇦|🇻🇨|🇻🇪|🇻🇬|🇻🇮|🇻🇳|🇻🇺|🇼🇫|🇼🇸|🇽🇰|🇾🇪|🇾🇹|🇿🇦|🇿🇲|🇿🇼)|(?:[\#\*0-9]️⃣|[☝⛹✊-✍🎅🏂-🏄🏇🏊-🏌👂👃👆-👐👦-👸👼💁-💃💅-💇💏💑💪🕴🕵🕺🖐🖕🖖🙅-🙇🙋-🙏🚣🚴-🚶🛀🛌🤌🤏🤘-🤟🤦🤰-🤹🤼-🤾🥷🦵🦶🦸🦹🦻🧍-🧏🧑-🧝🫃-🫅🫰-🫸][🏻-🏿]|(?![\#\*0-9‍⃣️🇦-🇿🏻-🏿🦰-🦳󠀠-󠁿])(?:[\#\*0-9©®‼⁉™ℹ↔-↙↩↪⌨⏏⏭-⏯⏱⏲⏸-⏺Ⓜ▪▫▶◀◻◼☀-☄☎☑☘☝☠☢☣☦☪☮☯☸-☺♀♂♟♠♣♥♦♨♻♾⚒⚔-⚗⚙⚛⚜⚠⚧⚰⚱⛈⛏⛑⛓⛩⛰⛱⛴⛷-⛹✂✈✉✌✍✏✒✔✖✝✡✳✴❄❇❣❤➡⤴⤵⬅-⬇〰〽㊗㊙🅰🅱🅾🅿🈂🈷🌡🌤-🌬🌶🍽🎖🎗🎙-🎛🎞🎟🏋-🏎🏔-🏟🏳🏵🏷🐿👁📽🕉🕊🕯🕰🕳-🕹🖇🖊-🖍🖐🖥🖨🖱🖲🖼🗂-🗄🗑-🗓🗜-🗞🗡🗣🗨🗯🗳🗺🛋🛍-🛏🛠-🛥🛩🛰🛳]️|[⌚⌛⏩-⏬⏰⏳◽◾☔☕♈-♓♿⚓⚡⚪⚫⚽⚾⛄⛅⛎⛔⛪⛲⛳⛵⛺⛽✅✊✋✨❌❎❓-❕❗➕-➗➰➿⬛⬜⭐⭕🀄🃏🆎🆑-🆚🇦-🇿🈁🈚🈯🈲-🈶🈸-🈺🉐🉑🌀-🌠🌭-🌵🌷-🍼🍾-🎓🎠-🏊🏏-🏓🏠-🏰🏴🏸-🐾👀👂-📼📿-🔽🕋-🕎🕐-🕧🕺🖕🖖🖤🗻-🙏🚀-🛅🛌🛐-🛒🛕-🛘🛜-🛟🛫🛬🛴-🛼🟠-🟫🟰🤌-🤺🤼-🥅🥇-🧿🩰-🩼🪀-🪊🪎-🫆🫈🫍-🫜🫟-🫪🫯-🫸](?!︎)️?))|[🏻-🏿🦰-🦳])/
7
+ end
8
+ end