Yoast SEO - Version 8.0

Version Description

Download this release

Release Info

Developer Yoast
Plugin Icon 128x128 Yoast SEO
Version 8.0
Comparing to
See all releases

Code changes from version 7.9.1 to 8.0

Files changed (82) hide show
  1. admin/ajax.php +15 -0
  2. admin/class-admin-asset-dev-server-location.php +1 -20
  3. admin/class-admin-asset-manager.php +86 -35
  4. admin/class-admin-gutenberg-compatibility-notification.php +89 -0
  5. admin/class-admin.php +7 -1
  6. admin/class-cornerstone-field.php +0 -57
  7. admin/class-cornerstone.php +1 -1
  8. admin/class-expose-shortlinks.php +32 -0
  9. admin/class-gutenberg-compatibility.php +101 -0
  10. admin/class-keyword-synonyms-modal.php +7 -2
  11. admin/class-multiple-keywords-modal.php +66 -0
  12. admin/class-structured-data-blocks.php +50 -0
  13. admin/class-yoast-form.php +13 -2
  14. admin/class-yoast-network-admin.php +299 -0
  15. admin/class-yoast-network-settings-api.php +157 -0
  16. admin/formatter/class-metabox-formatter.php +36 -2
  17. admin/menu/class-admin-menu.php +19 -150
  18. admin/menu/class-base-menu.php +258 -0
  19. admin/menu/class-network-admin-menu.php +47 -35
  20. admin/metabox/class-metabox-add-keyword-tab.php +0 -69
  21. admin/metabox/{class-metabox-keyword-synonyms-button.php → class-metabox-keyword-synonyms-config.php} +9 -15
  22. admin/metabox/class-metabox-multiple-keywords-config.php +44 -0
  23. admin/metabox/class-metabox-section-react.php +99 -0
  24. admin/metabox/class-metabox-tab-section.php +9 -0
  25. admin/metabox/class-metabox.php +24 -212
  26. admin/pages/network.php +6 -139
  27. admin/taxonomy/class-taxonomy-content-fields.php +6 -25
  28. admin/taxonomy/class-taxonomy-fields-presenter.php +0 -38
  29. admin/taxonomy/class-taxonomy-metabox.php +5 -61
  30. admin/taxonomy/class-taxonomy.php +1 -2
  31. admin/views/tabs/network/general.php +51 -0
  32. admin/views/tabs/network/restore-site.php +34 -0
  33. css/dist/{admin-global-791-rtl.min.css → admin-global-800-rtl.min.css} +0 -0
  34. css/dist/{admin-global-791.min.css → admin-global-800.min.css} +0 -0
  35. css/dist/{adminbar-791-rtl.min.css → adminbar-800-rtl.min.css} +0 -0
  36. css/dist/{adminbar-791.min.css → adminbar-800.min.css} +0 -0
  37. css/dist/{alerts-791-rtl.min.css → alerts-800-rtl.min.css} +0 -0
  38. css/dist/{alerts-791.min.css → alerts-800.min.css} +0 -0
  39. css/dist/{dashboard-791-rtl.min.css → dashboard-800-rtl.min.css} +0 -0
  40. css/dist/{dashboard-791.min.css → dashboard-800.min.css} +0 -0
  41. css/dist/{edit-page-791-rtl.min.css → edit-page-800-rtl.min.css} +0 -0
  42. css/dist/{edit-page-791.min.css → edit-page-800.min.css} +0 -0
  43. css/dist/{featured-image-791-rtl.min.css → featured-image-800-rtl.min.css} +0 -0
  44. css/dist/{featured-image-791.min.css → featured-image-800.min.css} +0 -0
  45. css/dist/{filter-explanation-791-rtl.min.css → filter-explanation-800-rtl.min.css} +0 -0
  46. css/dist/{filter-explanation-791.min.css → filter-explanation-800.min.css} +0 -0
  47. css/dist/{inside-editor-791-rtl.min.css → inside-editor-800-rtl.min.css} +0 -0
  48. css/dist/{inside-editor-791.min.css → inside-editor-800.min.css} +0 -0
  49. css/dist/metabox-791-rtl.min.css +0 -1
  50. css/dist/metabox-791.min.css +0 -1
  51. css/dist/metabox-800-rtl.min.css +1 -0
  52. css/dist/metabox-800.min.css +1 -0
  53. css/dist/{metabox-primary-category-791-rtl.min.css → metabox-primary-category-800-rtl.min.css} +0 -0
  54. css/dist/{metabox-primary-category-791.min.css → metabox-primary-category-800.min.css} +0 -0
  55. css/dist/{search-appearance-791-rtl.min.css → search-appearance-800-rtl.min.css} +0 -0
  56. css/dist/{search-appearance-791.min.css → search-appearance-800.min.css} +0 -0
  57. css/dist/snippet-791-rtl.min.css +0 -1
  58. css/dist/snippet-791.min.css +0 -1
  59. css/dist/structured-data-blocks-800-rtl.min.css +1 -0
  60. css/dist/structured-data-blocks-800.min.css +1 -0
  61. css/dist/{toggle-switch-791-rtl.min.css → toggle-switch-800-rtl.min.css} +0 -0
  62. css/dist/{toggle-switch-791.min.css → toggle-switch-800.min.css} +0 -0
  63. css/dist/{wpseo-dismissible-791-rtl.min.css → wpseo-dismissible-800-rtl.min.css} +0 -0
  64. css/dist/{wpseo-dismissible-791.min.css → wpseo-dismissible-800.min.css} +0 -0
  65. css/dist/{yoast-components-791-rtl.min.css → yoast-components-800-rtl.min.css} +0 -0
  66. css/dist/{yoast-components-791.min.css → yoast-components-800.min.css} +0 -0
  67. css/dist/{yoast-extensions-791-rtl.min.css → yoast-extensions-800-rtl.min.css} +0 -0
  68. css/dist/{yoast-extensions-791.min.css → yoast-extensions-800.min.css} +0 -0
  69. css/dist/{yst_plugin_tools-791-rtl.min.css → yst_plugin_tools-800-rtl.min.css} +0 -0
  70. css/dist/{yst_plugin_tools-791.min.css → yst_plugin_tools-800.min.css} +0 -0
  71. css/dist/{yst_seo_score-791-rtl.min.css → yst_seo_score-800-rtl.min.css} +0 -0
  72. css/dist/{yst_seo_score-791.min.css → yst_seo_score-800.min.css} +0 -0
  73. inc/class-wpseo-admin-bar-menu.php +626 -0
  74. inc/class-wpseo-meta.php +32 -47
  75. inc/class-wpseo-utils.php +17 -0
  76. inc/interface-wpseo-wordpress-ajax-integration.php +19 -0
  77. inc/options/class-wpseo-option.php +12 -2
  78. inc/options/class-wpseo-options.php +1 -1
  79. inc/sitemaps/class-sitemaps-cache-validator.php +2 -0
  80. inc/sitemaps/class-sitemaps-router.php +6 -1
  81. inc/wpseo-non-ajax-functions.php +85 -303
  82. js/dist/analysis-791.min.js +0 -13
admin/ajax.php CHANGED
@@ -332,6 +332,21 @@ function ajax_get_term_keyword_usage() {
332
 
333
  add_action( 'wp_ajax_get_term_keyword_usage', 'ajax_get_term_keyword_usage' );
334
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
335
  // Crawl Issue Manager AJAX hooks.
336
  new WPSEO_GSC_Ajax();
337
 
332
 
333
  add_action( 'wp_ajax_get_term_keyword_usage', 'ajax_get_term_keyword_usage' );
334
 
335
+ /**
336
+ * Registers hooks for all AJAX integrations.
337
+ *
338
+ * @return void
339
+ */
340
+ function wpseo_register_ajax_integrations() {
341
+ $integrations = array( new Yoast_Network_Admin() );
342
+
343
+ foreach ( $integrations as $integration ) {
344
+ $integration->register_ajax_hooks();
345
+ }
346
+ }
347
+
348
+ wpseo_register_ajax_integrations();
349
+
350
  // Crawl Issue Manager AJAX hooks.
351
  new WPSEO_GSC_Ajax();
352
 
admin/class-admin-asset-dev-server-location.php CHANGED
@@ -11,25 +11,6 @@
11
  final class WPSEO_Admin_Asset_Dev_Server_Location implements WPSEO_Admin_Asset_Location {
12
  const DEFAULT_URL = 'http://localhost:8080';
13
 
14
- /**
15
- * @var array
16
- */
17
- private static $dev_server_script = array(
18
- 'analysis',
19
- 'commons',
20
- 'configuration-wizard',
21
- 'search-appearance',
22
- 'wp-seo-dashboard-widget',
23
- 'wp-seo-help-center',
24
- 'wp-seo-metabox',
25
- 'wp-seo-modal',
26
- 'wp-seo-post-scraper',
27
- 'wp-seo-replacevar-plugin',
28
- 'wp-seo-term-scraper',
29
- 'wp-seo-modal',
30
- 'wp-seo-wp-globals-backport',
31
- );
32
-
33
  /**
34
  * @var string
35
  */
@@ -63,7 +44,7 @@ final class WPSEO_Admin_Asset_Dev_Server_Location implements WPSEO_Admin_Asset_L
63
  $flat_version = $asset_manager->flatten_version( WPSEO_VERSION );
64
  $version_less_source = str_replace( '-' . $flat_version, '', $asset->get_src() );
65
 
66
- if ( ! in_array( $version_less_source, self::$dev_server_script, true ) ) {
67
  return $this->get_default_url( $asset, $type );
68
  }
69
 
11
  final class WPSEO_Admin_Asset_Dev_Server_Location implements WPSEO_Admin_Asset_Location {
12
  const DEFAULT_URL = 'http://localhost:8080';
13
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
  /**
15
  * @var string
16
  */
44
  $flat_version = $asset_manager->flatten_version( WPSEO_VERSION );
45
  $version_less_source = str_replace( '-' . $flat_version, '', $asset->get_src() );
46
 
47
+ if ( false !== strpos( $version_less_source, 'select2' ) ) {
48
  return $this->get_default_url( $asset, $type );
49
  }
50
 
admin/class-admin-asset-manager.php CHANGED
@@ -193,9 +193,10 @@ class WPSEO_Admin_Asset_Manager {
193
  $backport_wp_dependencies = array( self::PREFIX . 'react-dependencies' );
194
 
195
  // If Gutenberg is present we can borrow their globals for our own.
196
- if ( function_exists( 'gutenberg_register_scripts_and_styles' ) ) {
197
  $backport_wp_dependencies[] = 'wp-element';
198
  $backport_wp_dependencies[] = 'wp-data';
 
199
 
200
  /*
201
  * The version of TinyMCE that Gutenberg uses is incompatible with
@@ -210,15 +211,24 @@ class WPSEO_Admin_Asset_Manager {
210
  wp_register_script( 'tinymce-latest', includes_url( 'js/tinymce/' ) . 'wp-tinymce.php', array( 'jquery' ), false, true );
211
  }
212
  }
 
 
 
 
 
 
 
 
 
 
 
 
213
 
214
  return array(
215
  array(
216
  'name' => 'react-dependencies',
217
  // Load webpack-commons for bundle support.
218
  'src' => 'commons-' . $flat_version,
219
- 'deps' => array(
220
- self::PREFIX . 'babel-polyfill',
221
- ),
222
  ),
223
  array(
224
  'name' => 'search-appearance',
@@ -255,7 +265,7 @@ class WPSEO_Admin_Asset_Manager {
255
  'jquery-ui-progressbar',
256
  self::PREFIX . 'select2',
257
  self::PREFIX . 'select2-translations',
258
- self::PREFIX . 'babel-polyfill',
259
  ),
260
  ),
261
  array(
@@ -264,23 +274,29 @@ class WPSEO_Admin_Asset_Manager {
264
  'deps' => array(
265
  'jquery',
266
  'jquery-ui-core',
267
- self::PREFIX . 'babel-polyfill',
268
  ),
269
  ),
270
  array(
271
- 'name' => 'bulk-editor',
272
- 'src' => 'wp-seo-bulk-editor-' . $flat_version,
273
- 'deps' => array( 'jquery', self::PREFIX . 'babel-polyfill' ),
274
  ),
275
  array(
276
- 'name' => 'dismissible',
277
- 'src' => 'wp-seo-dismissible-' . $flat_version,
278
- 'deps' => array( 'jquery', self::PREFIX . 'babel-polyfill' ),
 
 
 
279
  ),
280
  array(
281
  'name' => 'admin-global-script',
282
  'src' => 'wp-seo-admin-global-' . $flat_version,
283
- 'deps' => array( 'jquery', self::PREFIX . 'babel-polyfill' ),
 
 
 
284
  ),
285
  array(
286
  'name' => 'metabox',
@@ -298,13 +314,15 @@ class WPSEO_Admin_Asset_Manager {
298
  'src' => 'wp-seo-featured-image-' . $flat_version,
299
  'deps' => array(
300
  'jquery',
301
- self::PREFIX . 'babel-polyfill',
302
  ),
303
  ),
304
  array(
305
  'name' => 'admin-gsc',
306
  'src' => 'wp-seo-admin-gsc-' . $flat_version,
307
- 'deps' => array( self::PREFIX . 'babel-polyfill' ),
 
 
308
  'in_footer' => false,
309
  ),
310
  array(
@@ -316,6 +334,7 @@ class WPSEO_Admin_Asset_Manager {
316
  'wp-util',
317
  self::PREFIX . 'wp-globals-backport',
318
  self::PREFIX . 'analysis',
 
319
  ),
320
  ),
321
  array(
@@ -331,7 +350,7 @@ class WPSEO_Admin_Asset_Manager {
331
  'name' => 'replacevar-plugin',
332
  'src' => 'wp-seo-replacevar-plugin-' . $flat_version,
333
  'deps' => array(
334
- self::PREFIX . 'babel-polyfill',
335
  self::PREFIX . 'analysis',
336
  ),
337
  ),
@@ -339,7 +358,7 @@ class WPSEO_Admin_Asset_Manager {
339
  'name' => 'shortcode-plugin',
340
  'src' => 'wp-seo-shortcode-plugin-' . $flat_version,
341
  'deps' => array(
342
- self::PREFIX . 'babel-polyfill',
343
  self::PREFIX . 'analysis',
344
  ),
345
  ),
@@ -350,8 +369,8 @@ class WPSEO_Admin_Asset_Manager {
350
  'jquery',
351
  'jquery-ui-core',
352
  'jquery-ui-progressbar',
353
- self::PREFIX . 'babel-polyfill',
354
  self::PREFIX . 'analysis',
 
355
  ),
356
  ),
357
  array(
@@ -360,7 +379,7 @@ class WPSEO_Admin_Asset_Manager {
360
  'deps' => array(
361
  'jquery',
362
  'wp-util',
363
- self::PREFIX . 'babel-polyfill',
364
  ),
365
  ),
366
  array(
@@ -390,15 +409,6 @@ class WPSEO_Admin_Asset_Manager {
390
  self::PREFIX . 'wp-globals-backport',
391
  ),
392
  ),
393
- // Register for backwards-compatiblity.
394
- array(
395
- 'name' => 'polyfill',
396
- 'src' => 'wp-seo-babel-polyfill-' . $flat_version,
397
- ),
398
- array(
399
- 'name' => 'babel-polyfill',
400
- 'src' => 'wp-seo-babel-polyfill-' . $flat_version,
401
- ),
402
  array(
403
  'name' => 'reindex-links',
404
  'src' => 'wp-seo-reindex-links-' . $flat_version,
@@ -406,17 +416,24 @@ class WPSEO_Admin_Asset_Manager {
406
  'jquery',
407
  'jquery-ui-core',
408
  'jquery-ui-progressbar',
 
409
  ),
410
  ),
411
  array(
412
  'name' => 'edit-page-script',
413
  'src' => 'wp-seo-edit-page-' . $flat_version,
414
- 'deps' => array( 'jquery' ),
 
 
 
415
  ),
416
  array(
417
  'name' => 'quick-edit-handler',
418
  'src' => 'wp-seo-quick-edit-handler-' . $flat_version,
419
- 'deps' => array( 'jquery' ),
 
 
 
420
  'in_footer' => true,
421
  ),
422
  array(
@@ -425,6 +442,7 @@ class WPSEO_Admin_Asset_Manager {
425
  'deps' => array(
426
  'wp-api',
427
  'jquery',
 
428
  ),
429
  ),
430
  array(
@@ -439,12 +457,20 @@ class WPSEO_Admin_Asset_Manager {
439
  array(
440
  'name' => 'filter-explanation',
441
  'src' => 'wp-seo-filter-explanation-' . $flat_version,
442
- 'deps' => array( 'jquery' ),
 
 
 
443
  ),
444
  array(
445
  'name' => 'analysis',
446
  'src' => 'analysis-' . $flat_version,
447
  ),
 
 
 
 
 
448
  );
449
  }
450
 
@@ -499,10 +525,6 @@ class WPSEO_Admin_Asset_Manager {
499
  'name' => 'scoring',
500
  'src' => 'yst_seo_score-' . $flat_version,
501
  ),
502
- array(
503
- 'name' => 'snippet',
504
- 'src' => 'snippet-' . $flat_version,
505
- ),
506
  array(
507
  'name' => 'adminbar',
508
  'src' => 'adminbar-' . $flat_version,
@@ -538,6 +560,35 @@ class WPSEO_Admin_Asset_Manager {
538
  'name' => 'search-appearance',
539
  'src' => 'search-appearance-' . $flat_version,
540
  ),
 
 
 
 
 
541
  );
542
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
543
  }
193
  $backport_wp_dependencies = array( self::PREFIX . 'react-dependencies' );
194
 
195
  // If Gutenberg is present we can borrow their globals for our own.
196
+ if ( $this->should_load_gutenberg_assets() ) {
197
  $backport_wp_dependencies[] = 'wp-element';
198
  $backport_wp_dependencies[] = 'wp-data';
199
+ $backport_wp_dependencies[] = 'wp-components';
200
 
201
  /*
202
  * The version of TinyMCE that Gutenberg uses is incompatible with
211
  wp_register_script( 'tinymce-latest', includes_url( 'js/tinymce/' ) . 'wp-tinymce.php', array( 'jquery' ), false, true );
212
  }
213
  }
214
+ else {
215
+ if ( wp_script_is( 'lodash', 'registered' ) ) {
216
+ $backport_wp_dependencies[] = 'lodash';
217
+ }
218
+ else {
219
+ if ( ! wp_script_is( self::PREFIX . 'lodash', 'registered' ) ) {
220
+ wp_register_script( self::PREFIX . 'lodash', plugins_url( 'js/vendor/lodash.min.js', WPSEO_FILE ) );
221
+ wp_add_inline_script( self::PREFIX . 'lodash', 'window.lodash = _.noConflict();', 'after' );
222
+ }
223
+ $backport_wp_dependencies[] = self::PREFIX . 'lodash';
224
+ }
225
+ }
226
 
227
  return array(
228
  array(
229
  'name' => 'react-dependencies',
230
  // Load webpack-commons for bundle support.
231
  'src' => 'commons-' . $flat_version,
 
 
 
232
  ),
233
  array(
234
  'name' => 'search-appearance',
265
  'jquery-ui-progressbar',
266
  self::PREFIX . 'select2',
267
  self::PREFIX . 'select2-translations',
268
+ self::PREFIX . 'react-dependencies',
269
  ),
270
  ),
271
  array(
274
  'deps' => array(
275
  'jquery',
276
  'jquery-ui-core',
277
+ self::PREFIX . 'react-dependencies',
278
  ),
279
  ),
280
  array(
281
+ 'name' => 'network-admin-script',
282
+ 'src' => 'wp-seo-network-admin-' . $flat_version,
283
+ 'deps' => array( 'jquery' ),
284
  ),
285
  array(
286
+ 'name' => 'bulk-editor',
287
+ 'src' => 'wp-seo-bulk-editor-' . $flat_version,
288
+ 'deps' => array(
289
+ 'jquery',
290
+ self::PREFIX . 'react-dependencies',
291
+ ),
292
  ),
293
  array(
294
  'name' => 'admin-global-script',
295
  'src' => 'wp-seo-admin-global-' . $flat_version,
296
+ 'deps' => array(
297
+ 'jquery',
298
+ self::PREFIX . 'react-dependencies',
299
+ ),
300
  ),
301
  array(
302
  'name' => 'metabox',
314
  'src' => 'wp-seo-featured-image-' . $flat_version,
315
  'deps' => array(
316
  'jquery',
317
+ self::PREFIX . 'react-dependencies',
318
  ),
319
  ),
320
  array(
321
  'name' => 'admin-gsc',
322
  'src' => 'wp-seo-admin-gsc-' . $flat_version,
323
+ 'deps' => array(
324
+ self::PREFIX . 'react-dependencies',
325
+ ),
326
  'in_footer' => false,
327
  ),
328
  array(
334
  'wp-util',
335
  self::PREFIX . 'wp-globals-backport',
336
  self::PREFIX . 'analysis',
337
+ self::PREFIX . 'react-dependencies',
338
  ),
339
  ),
340
  array(
350
  'name' => 'replacevar-plugin',
351
  'src' => 'wp-seo-replacevar-plugin-' . $flat_version,
352
  'deps' => array(
353
+ self::PREFIX . 'react-dependencies',
354
  self::PREFIX . 'analysis',
355
  ),
356
  ),
358
  'name' => 'shortcode-plugin',
359
  'src' => 'wp-seo-shortcode-plugin-' . $flat_version,
360
  'deps' => array(
361
+ self::PREFIX . 'react-dependencies',
362
  self::PREFIX . 'analysis',
363
  ),
364
  ),
369
  'jquery',
370
  'jquery-ui-core',
371
  'jquery-ui-progressbar',
 
372
  self::PREFIX . 'analysis',
373
+ self::PREFIX . 'react-dependencies',
374
  ),
375
  ),
376
  array(
379
  'deps' => array(
380
  'jquery',
381
  'wp-util',
382
+ self::PREFIX . 'react-dependencies',
383
  ),
384
  ),
385
  array(
409
  self::PREFIX . 'wp-globals-backport',
410
  ),
411
  ),
 
 
 
 
 
 
 
 
 
412
  array(
413
  'name' => 'reindex-links',
414
  'src' => 'wp-seo-reindex-links-' . $flat_version,
416
  'jquery',
417
  'jquery-ui-core',
418
  'jquery-ui-progressbar',
419
+ self::PREFIX . 'react-dependencies',
420
  ),
421
  ),
422
  array(
423
  'name' => 'edit-page-script',
424
  'src' => 'wp-seo-edit-page-' . $flat_version,
425
+ 'deps' => array(
426
+ 'jquery',
427
+ self::PREFIX . 'react-dependencies',
428
+ ),
429
  ),
430
  array(
431
  'name' => 'quick-edit-handler',
432
  'src' => 'wp-seo-quick-edit-handler-' . $flat_version,
433
+ 'deps' => array(
434
+ 'jquery',
435
+ self::PREFIX . 'react-dependencies',
436
+ ),
437
  'in_footer' => true,
438
  ),
439
  array(
442
  'deps' => array(
443
  'wp-api',
444
  'jquery',
445
+ self::PREFIX . 'react-dependencies',
446
  ),
447
  ),
448
  array(
457
  array(
458
  'name' => 'filter-explanation',
459
  'src' => 'wp-seo-filter-explanation-' . $flat_version,
460
+ 'deps' => array(
461
+ 'jquery',
462
+ self::PREFIX . 'react-dependencies',
463
+ ),
464
  ),
465
  array(
466
  'name' => 'analysis',
467
  'src' => 'analysis-' . $flat_version,
468
  ),
469
+ array(
470
+ 'name' => 'structured-data-blocks',
471
+ 'src' => 'wp-seo-structured-data-blocks-' . $flat_version,
472
+ 'deps' => array( 'wp-blocks', 'wp-i18n', 'wp-element' ),
473
+ ),
474
  );
475
  }
476
 
525
  'name' => 'scoring',
526
  'src' => 'yst_seo_score-' . $flat_version,
527
  ),
 
 
 
 
528
  array(
529
  'name' => 'adminbar',
530
  'src' => 'adminbar-' . $flat_version,
560
  'name' => 'search-appearance',
561
  'src' => 'search-appearance-' . $flat_version,
562
  ),
563
+ array(
564
+ 'name' => 'structured-data-blocks',
565
+ 'src' => 'structured-data-blocks-' . $flat_version,
566
+ 'deps' => array( 'wp-edit-blocks' ),
567
+ ),
568
  );
569
  }
570
+
571
+ /**
572
+ * Checks if the Gutenberg assets must be loaded.
573
+ *
574
+ * @return bool True wheter Gutenberg assets must be loaded.
575
+ */
576
+ protected function should_load_gutenberg_assets() {
577
+ // When Gutenberg is not active, just return false.
578
+ if ( ! function_exists( 'gutenberg_register_scripts_and_styles' ) ) {
579
+ return false;
580
+ }
581
+
582
+ // When working in the classic editor shipped with Gutenberg, the assets shouldn't be loaded. Fixes IE11 bug.
583
+ if ( isset( $_GET['classic-editor'] ) ) {
584
+ return false;
585
+ }
586
+
587
+ // When classic editor plugin and Gutenberg are active, the Gutenberg assets shouldn't be loaded.
588
+ if ( function_exists( 'classic_editor_is_gutenberg_active' ) && classic_editor_is_gutenberg_active() ) {
589
+ return false;
590
+ }
591
+
592
+ return true;
593
+ }
594
  }
admin/class-admin-gutenberg-compatibility-notification.php ADDED
@@ -0,0 +1,89 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Admin
6
+ */
7
+
8
+ /**
9
+ * Handles the Gutenberg Compatibility notification showing and hiding.
10
+ */
11
+ class WPSEO_Admin_Gutenberg_Compatibility_Notification implements WPSEO_WordPress_Integration {
12
+
13
+ /**
14
+ * Notification ID to use.
15
+ *
16
+ * @var string
17
+ */
18
+ private $notification_id = 'wpseo-outdated-gutenberg-plugin';
19
+
20
+ /**
21
+ * @var WPSEO_Gutenberg_Compatibility
22
+ */
23
+ private $compatibility_checker;
24
+
25
+ /**
26
+ * @var Yoast_Notification_Center
27
+ */
28
+ private $notification_center;
29
+
30
+ /**
31
+ * WPSEO_Admin_Gutenberg_Compatibility_Notification constructor.
32
+ */
33
+ public function __construct() {
34
+ $this->compatibility_checker = new WPSEO_Gutenberg_Compatibility();
35
+ $this->notification_center = Yoast_Notification_Center::get();
36
+ }
37
+
38
+ /**
39
+ * Registers all hooks to WordPress.
40
+ *
41
+ * @return void
42
+ */
43
+ public function register_hooks() {
44
+ add_action( 'admin_init', array( $this, 'manage_notification' ) );
45
+ }
46
+
47
+ /**
48
+ * Manages if the notification should be shown or removed.
49
+ *
50
+ * @return void
51
+ */
52
+ public function manage_notification() {
53
+ if ( ! $this->compatibility_checker->is_installed() || $this->compatibility_checker->is_fully_compatible() ) {
54
+ $this->notification_center->remove_notification_by_id( $this->notification_id );
55
+
56
+ return;
57
+ }
58
+
59
+ $this->add_notification();
60
+ }
61
+
62
+ /**
63
+ * Adds the notification to the notificaton center.
64
+ *
65
+ * @return void
66
+ */
67
+ private function add_notification() {
68
+ $level = $this->compatibility_checker->is_below_minimum() ? Yoast_Notification::ERROR : Yoast_Notification::WARNING;
69
+
70
+ $message = sprintf(
71
+ /* translators: %1$s expands to Yoast SEO, %2$s expands to the installed version, %3$s expands to Gutenberg */
72
+ __( '%1$s detected you are using version %2$s of %3$s, please update to the latest version to prevent compatibility issues.', 'wordpress-seo' ),
73
+ 'Yoast SEO',
74
+ $this->compatibility_checker->get_installed_version(),
75
+ 'Gutenberg'
76
+ );
77
+
78
+ $notification = new Yoast_Notification(
79
+ $message,
80
+ array(
81
+ 'id' => $this->notification_id,
82
+ 'type' => $level,
83
+ 'priority' => 1,
84
+ )
85
+ );
86
+
87
+ $this->notification_center->add_notification( $notification );
88
+ }
89
+ }
admin/class-admin.php CHANGED
@@ -48,7 +48,10 @@ class WPSEO_Admin {
48
  );
49
 
50
  if ( WPSEO_Metabox::is_post_overview( $pagenow ) || WPSEO_Metabox::is_post_edit( $pagenow ) ) {
51
- $this->admin_features['primary_category'] = new WPSEO_Primary_Term_Admin();
 
 
 
52
  }
53
 
54
  if ( filter_input( INPUT_GET, 'page' ) === 'wpseo_tools' && filter_input( INPUT_GET, 'tool' ) === null ) {
@@ -92,11 +95,14 @@ class WPSEO_Admin {
92
 
93
  new Yoast_Modal();
94
 
 
95
  $integrations[] = new WPSEO_Yoast_Columns();
96
  $integrations[] = new WPSEO_License_Page_Manager();
97
  $integrations[] = new WPSEO_Statistic_Integration();
98
  $integrations[] = new WPSEO_Capability_Manager_Integration( WPSEO_Capability_Manager_Factory::get() );
99
  $integrations[] = new WPSEO_Admin_Media_Purge_Notification();
 
 
100
  $integrations = array_merge( $integrations, $this->initialize_seo_links() );
101
 
102
  /** @var WPSEO_WordPress_Integration $integration */
48
  );
49
 
50
  if ( WPSEO_Metabox::is_post_overview( $pagenow ) || WPSEO_Metabox::is_post_edit( $pagenow ) ) {
51
+ $this->admin_features['primary_category'] = new WPSEO_Primary_Term_Admin();
52
+ if ( defined( 'YOAST_FEATURE_GUTENBERG_STRUCTURED_DATA_BLOCKS' ) ) {
53
+ $this->admin_features['structured_data_blocks'] = new WPSEO_Structured_Data_Blocks();
54
+ }
55
  }
56
 
57
  if ( filter_input( INPUT_GET, 'page' ) === 'wpseo_tools' && filter_input( INPUT_GET, 'tool' ) === null ) {
95
 
96
  new Yoast_Modal();
97
 
98
+ $integrations[] = new Yoast_Network_Admin();
99
  $integrations[] = new WPSEO_Yoast_Columns();
100
  $integrations[] = new WPSEO_License_Page_Manager();
101
  $integrations[] = new WPSEO_Statistic_Integration();
102
  $integrations[] = new WPSEO_Capability_Manager_Integration( WPSEO_Capability_Manager_Factory::get() );
103
  $integrations[] = new WPSEO_Admin_Media_Purge_Notification();
104
+ $integrations[] = new WPSEO_Admin_Gutenberg_Compatibility_Notification();
105
+ $integrations[] = new WPSEO_Expose_Shortlinks();
106
  $integrations = array_merge( $integrations, $this->initialize_seo_links() );
107
 
108
  /** @var WPSEO_WordPress_Integration $integration */
admin/class-cornerstone-field.php DELETED
@@ -1,57 +0,0 @@
1
- <?php
2
- /**
3
- * WPSEO plugin file.
4
- *
5
- * @package WPSEO\Admin
6
- */
7
-
8
- /**
9
- * Adds a checkbox to the focus keyword section.
10
- */
11
- class WPSEO_Cornerstone_Field {
12
-
13
- /**
14
- * Returns a label with a checkbox in it. Make it possible to mark the page as cornerstone content.
15
- *
16
- * @param WP_POST $post The post object.
17
- *
18
- * @return string The HTML to show.
19
- */
20
- public function get_html( $post ) {
21
-
22
- $post_types = apply_filters( 'wpseo_cornerstone_post_types', WPSEO_Post_Type::get_accessible_post_types() );
23
- if ( ! is_array( $post_types ) || ! isset( $post_types[ get_post_type( $post ) ] ) ) {
24
- return '';
25
- }
26
-
27
- $return = '';
28
- $return .= sprintf(
29
- '<input id="%1$s" class="wpseo-cornerstone-checkbox" type="checkbox" value="1" name="%1$s" %2$s/>',
30
- WPSEO_Cornerstone::FIELD_NAME,
31
- checked( $this->get_meta_value( $post->ID ), '1', false )
32
- );
33
-
34
- $return .= sprintf( '<label for="%1$s">', WPSEO_Cornerstone::FIELD_NAME );
35
-
36
- $return .= sprintf(
37
- /* translators: 1: link open tag; 2: link close tag. */
38
- __( 'This article is %1$scornerstone content%2$s', 'wordpress-seo' ),
39
- '<a href="' . WPSEO_Shortlinker::get( 'https://yoa.st/metabox-help-cornerstone' ) . '" target="_blank">',
40
- '</a>'
41
- );
42
- $return .= '</label>';
43
-
44
- return $return;
45
- }
46
-
47
- /**
48
- * Gets the meta value from the database.
49
- *
50
- * @param int $post_id The post id to get the meta value for.
51
- *
52
- * @return null|string The meta value from the database.
53
- */
54
- protected function get_meta_value( $post_id ) {
55
- return WPSEO_Meta::get_value( WPSEO_Cornerstone::META_NAME, $post_id );
56
- }
57
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/class-cornerstone.php CHANGED
@@ -55,7 +55,7 @@ class WPSEO_Cornerstone {
55
  * @return bool True when checkbox is checked.
56
  */
57
  protected function is_cornerstone_content() {
58
- return filter_input( INPUT_POST, self::FIELD_NAME ) === '1';
59
  }
60
 
61
  /**
55
  * @return bool True when checkbox is checked.
56
  */
57
  protected function is_cornerstone_content() {
58
+ return filter_input( INPUT_POST, self::FIELD_NAME ) === 'true';
59
  }
60
 
61
  /**
admin/class-expose-shortlinks.php ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Admin
6
+ */
7
+
8
+ /**
9
+ * Exposes shortlinks in a global, so that we can pass them to our Javascript components.
10
+ */
11
+ class WPSEO_Expose_Shortlinks implements WPSEO_WordPress_Integration {
12
+
13
+ /**
14
+ * Registers all hooks to WordPress
15
+ */
16
+ public function register_hooks() {
17
+ add_filter( 'wpseo_admin_l10n', array( $this, 'expose_shortlinks' ) );
18
+ }
19
+
20
+ /**
21
+ * @param array $input The array to add shortlinks to.
22
+ *
23
+ * @return array
24
+ */
25
+ public function expose_shortlinks( $input ) {
26
+ $input['shortlinks.focus_keyword_info'] = WPSEO_Shortlinker::get( 'https://yoa.st/focus-keyword' );
27
+ $input['shortlinks.snippet_preview_info'] = WPSEO_Shortlinker::get( 'https://yoa.st/snippet-preview' );
28
+ $input['shortlinks.cornerstone_content_info'] = WPSEO_Shortlinker::get( 'https://yoa.st/1i9' );
29
+
30
+ return $input;
31
+ }
32
+ }
admin/class-gutenberg-compatibility.php ADDED
@@ -0,0 +1,101 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Gutenberg_Compatibility
6
+ */
7
+
8
+ /**
9
+ * Class WPSEO_Gutenberg_Compatibility
10
+ */
11
+ class WPSEO_Gutenberg_Compatibility {
12
+
13
+ /**
14
+ * The currently released version of Gutenberg.
15
+ */
16
+ const CURRENT_RELEASE = '3.5.0';
17
+
18
+ /**
19
+ * The minimally supported version of Gutenberg by the plugin.
20
+ */
21
+ const MINIMUM_SUPPORTED = '2.8.0';
22
+
23
+ /**
24
+ * @var string
25
+ */
26
+ protected $current_version;
27
+
28
+ /**
29
+ * WPSEO_Gutenberg_Compatibility constructor.
30
+ */
31
+ public function __construct() {
32
+ $this->current_version = $this->detect_installed_gutenberg_version();
33
+ }
34
+
35
+ /**
36
+ * Determines whether or not Gutenberg is installed.
37
+ *
38
+ * @return bool Whether or not Gutenberg is installed.
39
+ */
40
+ public function is_installed() {
41
+ return $this->current_version !== '';
42
+ }
43
+
44
+ /**
45
+ * Determines whether or not the currently installed version of Gutenberg is below the minimum supported version.
46
+ *
47
+ * @return bool True if the currently installed version is below the minimum supported version. False otherwise.
48
+ */
49
+ public function is_below_minimum() {
50
+ return version_compare( $this->current_version, $this->get_minimum_supported_version(), '<' );
51
+ }
52
+
53
+ /**
54
+ * Gets the currently installed version.
55
+ *
56
+ * @return string The currently installed version.
57
+ */
58
+ public function get_installed_version() {
59
+ return $this->current_version;
60
+ }
61
+
62
+ /**
63
+ * Determines whether or not the currently installed version of Gutenberg is the latest, fully compatible version.
64
+ *
65
+ * @return bool Whether or not the currently installed version is fully compatible.
66
+ */
67
+ public function is_fully_compatible() {
68
+ return version_compare( $this->current_version, $this->get_latest_release(), '>=' );
69
+ }
70
+
71
+ /**
72
+ * Gets the latest released version of Gutenberg.
73
+ *
74
+ * @return string The latest release.
75
+ */
76
+ protected function get_latest_release() {
77
+ return self::CURRENT_RELEASE;
78
+ }
79
+
80
+ /**
81
+ * Gets the minimum supported version of Gutenberg.
82
+ *
83
+ * @return string The minumum supported release.
84
+ */
85
+ protected function get_minimum_supported_version() {
86
+ return self::MINIMUM_SUPPORTED;
87
+ }
88
+
89
+ /**
90
+ * Detects the currently installed Gutenberg version.
91
+ *
92
+ * @return string The currently installed Gutenberg version. Empty if the version couldn't be detected.
93
+ */
94
+ protected function detect_installed_gutenberg_version() {
95
+ if ( defined( 'GUTENBERG_VERSION' ) ) {
96
+ return GUTENBERG_VERSION;
97
+ }
98
+
99
+ return '';
100
+ }
101
+ }
admin/class-keyword-synonyms-modal.php CHANGED
@@ -27,12 +27,14 @@ class WPSEO_Keyword_Synonyms_Modal {
27
  'link' => WPSEO_Shortlinker::get( 'https://yoa.st/pe-premium-page' ),
28
  'other' => sprintf(
29
  /* translators: %s expands to 'Yoast SEO Premium'. */
30
- __( 'Other benefits of %s for you:', 'wordpress-seo' ), 'Yoast SEO Premium'
 
31
  ),
32
  'buylink' => WPSEO_Shortlinker::get( 'https://yoa.st/keyword-synonyms-popup' ),
33
  'buy' => sprintf(
34
  /* translators: %s expands to 'Yoast SEO Premium'. */
35
- __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium'
 
36
  ),
37
  'small' => __( '1 year free updates and upgrades included!', 'wordpress-seo' ),
38
  'a11yNotice.opensInNewTab' => __( '(Opens in a new browser tab)', 'wordpress-seo' ),
@@ -46,6 +48,7 @@ class WPSEO_Keyword_Synonyms_Modal {
46
  */
47
  public function get_translations_for_js() {
48
  $translations = $this->get_translations();
 
49
  return array(
50
  'locale' => WPSEO_Utils::get_user_locale(),
51
  'intl' => $translations,
@@ -54,6 +57,8 @@ class WPSEO_Keyword_Synonyms_Modal {
54
 
55
  /**
56
  * Prints the localized Keyword Synonyms modal translations for JS.
 
 
57
  */
58
  public function enqueue_translations() {
59
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'admin-global-script', 'yoastKeywordSynonymsModalL10n', $this->get_translations_for_js() );
27
  'link' => WPSEO_Shortlinker::get( 'https://yoa.st/pe-premium-page' ),
28
  'other' => sprintf(
29
  /* translators: %s expands to 'Yoast SEO Premium'. */
30
+ __( 'Other benefits of %s for you:', 'wordpress-seo' ),
31
+ 'Yoast SEO Premium'
32
  ),
33
  'buylink' => WPSEO_Shortlinker::get( 'https://yoa.st/keyword-synonyms-popup' ),
34
  'buy' => sprintf(
35
  /* translators: %s expands to 'Yoast SEO Premium'. */
36
+ __( 'Get %s now!', 'wordpress-seo' ),
37
+ 'Yoast SEO Premium'
38
  ),
39
  'small' => __( '1 year free updates and upgrades included!', 'wordpress-seo' ),
40
  'a11yNotice.opensInNewTab' => __( '(Opens in a new browser tab)', 'wordpress-seo' ),
48
  */
49
  public function get_translations_for_js() {
50
  $translations = $this->get_translations();
51
+
52
  return array(
53
  'locale' => WPSEO_Utils::get_user_locale(),
54
  'intl' => $translations,
57
 
58
  /**
59
  * Prints the localized Keyword Synonyms modal translations for JS.
60
+ *
61
+ * @return void
62
  */
63
  public function enqueue_translations() {
64
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'admin-global-script', 'yoastKeywordSynonymsModalL10n', $this->get_translations_for_js() );
admin/class-multiple-keywords-modal.php ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @package WPSEO\Admin
4
+ */
5
+
6
+ /**
7
+ * Class to print out the translatable strings for the Multiple Keywords modal.
8
+ */
9
+ class WPSEO_Multiple_Keywords_Modal {
10
+
11
+ /**
12
+ * Returns the translations for the Multiple Keywords modal.
13
+ *
14
+ * These strings are not escaped because they're meant to be used with React
15
+ * which already takes care of that. If used in PHP, they should be escaped.
16
+ *
17
+ * @return array Translated text strings for the Multiple Keywords modal.
18
+ */
19
+ public function get_translations() {
20
+ return array(
21
+ 'title' => __( 'Would you like to add another keyword?', 'wordpress-seo' ),
22
+ 'intro' => sprintf(
23
+ /* translators: %1$s expands to a 'Yoast SEO Premium' text linked to the yoast.com website. */
24
+ __( 'Great news: you can, with %1$s!', 'wordpress-seo' ),
25
+ '{{link}}Yoast SEO Premium{{/link}}'
26
+ ),
27
+ 'link' => WPSEO_Shortlinker::get( 'https://yoa.st/pe-premium-page' ),
28
+ 'other' => sprintf(
29
+ /* translators: %s expands to 'Yoast SEO Premium'. */
30
+ __( 'Other benefits of %s for you:', 'wordpress-seo' ),
31
+ 'Yoast SEO Premium'
32
+ ),
33
+ 'buylink' => WPSEO_Shortlinker::get( 'https://yoa.st/add-keywords-popup' ),
34
+ 'buy' => sprintf(
35
+ /* translators: %s expands to 'Yoast SEO Premium'. */
36
+ __( 'Get %s now!', 'wordpress-seo' ),
37
+ 'Yoast SEO Premium'
38
+ ),
39
+ 'small' => __( '1 year free updates and upgrades included!', 'wordpress-seo' ),
40
+ 'a11yNotice.opensInNewTab' => __( '(Opens in a new browser tab)', 'wordpress-seo' ),
41
+ );
42
+ }
43
+
44
+ /**
45
+ * Passes translations to JS for the Multiple Keywords modal component.
46
+ *
47
+ * @return array Translated text strings for the Multiple Keywords modal component.
48
+ */
49
+ public function get_translations_for_js() {
50
+ $translations = $this->get_translations();
51
+
52
+ return array(
53
+ 'locale' => WPSEO_Utils::get_user_locale(),
54
+ 'intl' => $translations,
55
+ );
56
+ }
57
+
58
+ /**
59
+ * Prints the localized Multiple Keywords modal translations for JS.
60
+ *
61
+ * @return void
62
+ */
63
+ public function enqueue_translations() {
64
+ wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'admin-global-script', 'yoastMultipleKeywordsModalL10n', $this->get_translations_for_js() );
65
+ }
66
+ }
admin/class-structured-data-blocks.php ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Admin
6
+ */
7
+
8
+ /**
9
+ * Class to load assets required for structured data blocks.
10
+ */
11
+ class WPSEO_Structured_Data_Blocks {
12
+ /**
13
+ * @var WPSEO_Admin_Asset_Manager
14
+ */
15
+ protected $asset_manager;
16
+
17
+ /**
18
+ * WPSEO_Structured_Data_Blocks constructor.
19
+ */
20
+ public function __construct() {
21
+ $this->asset_manager = new WPSEO_Admin_Asset_Manager();
22
+
23
+ add_action( 'enqueue_block_editor_assets', array( $this, 'enqueue_block_editor_assets' ) );
24
+ add_filter( 'block_categories', array( $this, 'add_block_category' ) );
25
+ }
26
+
27
+ /**
28
+ * Enqueue Gutenberg block assets for backend editor.
29
+ */
30
+ public function enqueue_block_editor_assets() {
31
+ $this->asset_manager->enqueue_script( 'structured-data-blocks' );
32
+ $this->asset_manager->enqueue_style( 'structured-data-blocks' );
33
+ }
34
+
35
+ /**
36
+ * Adds the structured data blocks category to the Gutenberg categories.
37
+ *
38
+ * @param array $categories The current categories.
39
+ *
40
+ * @return array The updated categories.
41
+ */
42
+ public function add_block_category( $categories ) {
43
+ $categories[] = array(
44
+ 'slug' => 'yoast-structured-data-blocks',
45
+ 'title' => __( 'Structured Data Blocks', 'wordpress-seo' ),
46
+ );
47
+
48
+ return $categories;
49
+ }
50
+ }
admin/class-yoast-form.php CHANGED
@@ -76,8 +76,19 @@ class Yoast_Form {
76
  <?php
77
  if ( $form === true ) {
78
  $enctype = ( $contains_files ) ? ' enctype="multipart/form-data"' : '';
79
- echo '<form action="' . esc_url( admin_url( 'options.php' ) ) . '" method="post" id="wpseo-conf"' . $enctype . ' accept-charset="' . esc_attr( get_bloginfo( 'charset' ) ) . '">';
80
- settings_fields( $option_long_name );
 
 
 
 
 
 
 
 
 
 
 
81
  }
82
  $this->set_option( $option );
83
  }
76
  <?php
77
  if ( $form === true ) {
78
  $enctype = ( $contains_files ) ? ' enctype="multipart/form-data"' : '';
79
+
80
+ $network_admin = new Yoast_Network_Admin();
81
+ if ( $network_admin->meets_requirements() ) {
82
+ $action_url = network_admin_url( 'settings.php' );
83
+ $hidden_fields_cb = array( $network_admin, 'settings_fields' );
84
+ }
85
+ else {
86
+ $action_url = admin_url( 'options.php' );
87
+ $hidden_fields_cb = 'settings_fields';
88
+ }
89
+
90
+ echo '<form action="' . esc_url( $action_url ) . '" method="post" id="wpseo-conf"' . $enctype . ' accept-charset="' . esc_attr( get_bloginfo( 'charset' ) ) . '">';
91
+ call_user_func( $hidden_fields_cb, $option_long_name );
92
  }
93
  $this->set_option( $option );
94
  }
admin/class-yoast-network-admin.php ADDED
@@ -0,0 +1,299 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Internals
6
+ */
7
+
8
+ /**
9
+ * Multisite utility class for network admin functionality.
10
+ */
11
+ class Yoast_Network_Admin implements WPSEO_WordPress_Integration, WPSEO_WordPress_AJAX_Integration {
12
+
13
+ /**
14
+ * Action identifier for updating plugin network options.
15
+ */
16
+ const UPDATE_OPTIONS_ACTION = 'yoast_handle_network_options';
17
+
18
+ /**
19
+ * Action identifier for restoring a site.
20
+ */
21
+ const RESTORE_SITE_ACTION = 'yoast_restore_site';
22
+
23
+ /**
24
+ * Gets the available sites as choices, e.g. for a dropdown.
25
+ *
26
+ * @param bool $include_empty Optional. Whether to include an initial placeholder choice.
27
+ *
28
+ * @return array Choices as $site_id => $site_label pairs.
29
+ */
30
+ public function get_site_choices( $include_empty = false ) {
31
+ $choices = array();
32
+
33
+ if ( $include_empty ) {
34
+ $choices['-'] = __( 'None', 'wordpress-seo' );
35
+ }
36
+
37
+ $sites = get_sites( array( 'deleted' => 0 ) );
38
+ foreach ( $sites as $site ) {
39
+ $choices[ $site->blog_id ] = $site->blog_id . ': ' . $site->domain . $site->path;
40
+
41
+ $site_states = $this->get_site_states( $site );
42
+ if ( ! empty( $site_states ) ) {
43
+ $choices[ $site->blog_id ] .= ' [' . implode( ', ', $site_states ) . ']';
44
+ }
45
+ }
46
+
47
+ return $choices;
48
+ }
49
+
50
+ /**
51
+ * Gets the states of a site.
52
+ *
53
+ * @param WP_Site $site Site object.
54
+ *
55
+ * @return array Array of $state_slug => $state_label pairs.
56
+ */
57
+ public function get_site_states( $site ) {
58
+ $available_states = array(
59
+ 'public' => __( 'public', 'wordpress-seo' ),
60
+ 'archived' => __( 'archived', 'wordpress-seo' ),
61
+ 'mature' => __( 'mature', 'wordpress-seo' ),
62
+ 'spam' => __( 'spam', 'wordpress-seo' ),
63
+ 'deleted' => __( 'deleted', 'wordpress-seo' ),
64
+ );
65
+
66
+ $site_states = array();
67
+ foreach ( $available_states as $state_slug => $state_label ) {
68
+ if ( $site->$state_slug === '1' ) {
69
+ $site_states[ $state_slug ] = $state_label;
70
+ }
71
+ }
72
+
73
+ return $site_states;
74
+ }
75
+
76
+ /**
77
+ * Handles a request to update plugin network options.
78
+ *
79
+ * This method works similar to how option updates are handled in `wp-admin/options.php` and
80
+ * `wp-admin/network/settings.php`.
81
+ *
82
+ * @return void
83
+ */
84
+ public function handle_update_options_request() {
85
+ $option_group = filter_input( INPUT_POST, 'network_option_group', FILTER_SANITIZE_STRING );
86
+
87
+ $this->verify_request( "{$option_group}-network-options" );
88
+
89
+ $whitelist_options = Yoast_Network_Settings_API::get()->get_whitelist_options( $option_group );
90
+
91
+ if ( empty( $whitelist_options ) ) {
92
+ add_settings_error( $option_group, 'settings_updated', __( 'You are not allowed to modify unregistered network settings.', 'wordpress-seo' ), 'error' );
93
+
94
+ $this->terminate_request();
95
+ return;
96
+ }
97
+
98
+ foreach ( $whitelist_options as $option_name ) {
99
+ $value = null;
100
+ if ( isset( $_POST[ $option_name ] ) ) { // WPCS: CSRF ok.
101
+ $value = wp_unslash( $_POST[ $option_name ] ); // WPCS: CSRF ok.
102
+ }
103
+
104
+ WPSEO_Options::update_site_option( $option_name, $value );
105
+ }
106
+
107
+ $settings_errors = get_settings_errors();
108
+ if ( empty( $settings_errors ) ) {
109
+ add_settings_error( $option_group, 'settings_updated', __( 'Settings Updated.', 'wordpress-seo' ), 'updated' );
110
+ }
111
+
112
+ $this->terminate_request();
113
+ }
114
+
115
+ /**
116
+ * Handles a request to restore a site's default settings.
117
+ *
118
+ * @return void
119
+ */
120
+ public function handle_restore_site_request() {
121
+ $this->verify_request( 'wpseo-network-restore', 'restore_site_nonce' );
122
+
123
+ $option_group = 'wpseo_ms';
124
+
125
+ $site_id = ! empty( $_POST[ $option_group ]['site_id'] ) ? (int) $_POST[ $option_group ]['site_id'] : 0; // WPCS: CSRF ok.
126
+ if ( ! $site_id ) {
127
+ add_settings_error( $option_group, 'settings_updated', __( 'No site has been selected to restore.', 'wordpress-seo' ), 'error' );
128
+
129
+ $this->terminate_request();
130
+ return;
131
+ }
132
+
133
+ $site = get_site( $site_id );
134
+ if ( ! $site ) {
135
+ /* translators: %s expands to the ID of a site within a multisite network. */
136
+ add_settings_error( $option_group, 'settings_updated', sprintf( __( 'Site with ID %d not found.', 'wordpress-seo' ), $site_id ), 'error' );
137
+ }
138
+ else {
139
+ WPSEO_Options::reset_ms_blog( $site_id );
140
+
141
+ /* translators: %s expands to the name of a site within a multisite network. */
142
+ add_settings_error( $option_group, 'settings_updated', sprintf( __( '%s restored to default SEO settings.', 'wordpress-seo' ), esc_html( $site->blogname ) ), 'updated' );
143
+ }
144
+
145
+ $this->terminate_request();
146
+ }
147
+
148
+ /**
149
+ * Outputs nonce, action and option group fields for a network settings page in the plugin.
150
+ *
151
+ * @param string $option_group Option group name for the current page.
152
+ *
153
+ * @return void
154
+ */
155
+ public function settings_fields( $option_group ) {
156
+ ?>
157
+ <input type="hidden" name="network_option_group" value="<?php echo esc_attr( $option_group ); ?>" />
158
+ <input type="hidden" name="action" value="<?php echo esc_attr( self::UPDATE_OPTIONS_ACTION ); ?>" />
159
+ <?php
160
+ wp_nonce_field( "$option_group-network-options" );
161
+ }
162
+
163
+ /**
164
+ * Enqueues network admin assets.
165
+ *
166
+ * @return void
167
+ */
168
+ public function enqueue_assets() {
169
+ $asset_manager = new WPSEO_Admin_Asset_Manager();
170
+ $asset_manager->enqueue_script( 'network-admin-script' );
171
+
172
+ wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'network-admin-script', 'wpseoNetworkAdminGlobalL10n', array(
173
+
174
+ /* translators: %s: success message */
175
+ 'success_prefix' => __( 'Success: %s', 'wordpress-seo' ),
176
+
177
+ /* translators: %s: error message */
178
+ 'error_prefix' => __( 'Error: %s', 'wordpress-seo' ),
179
+ ) );
180
+ }
181
+
182
+ /**
183
+ * Hooks in the necessary actions and filters.
184
+ *
185
+ * @return void
186
+ */
187
+ public function register_hooks() {
188
+
189
+ if ( ! $this->meets_requirements() ) {
190
+ return;
191
+ }
192
+
193
+ add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_assets' ) );
194
+
195
+ add_action( 'admin_action_' . self::UPDATE_OPTIONS_ACTION, array( $this, 'handle_update_options_request' ) );
196
+ add_action( 'admin_action_' . self::RESTORE_SITE_ACTION, array( $this, 'handle_restore_site_request' ) );
197
+ }
198
+
199
+ /**
200
+ * Hooks in the necessary AJAX actions.
201
+ *
202
+ * @return void
203
+ */
204
+ public function register_ajax_hooks() {
205
+ add_action( 'wp_ajax_' . self::UPDATE_OPTIONS_ACTION, array( $this, 'handle_update_options_request' ) );
206
+ add_action( 'wp_ajax_' . self::RESTORE_SITE_ACTION, array( $this, 'handle_restore_site_request' ) );
207
+ }
208
+
209
+ /**
210
+ * Checks whether the requirements to use this class are met.
211
+ *
212
+ * @return bool True if requirements are met, false otherwise.
213
+ */
214
+ public function meets_requirements() {
215
+ return is_multisite() && is_network_admin();
216
+ }
217
+
218
+ /**
219
+ * Verifies that the current request is valid.
220
+ *
221
+ * @param string $action Nonce action.
222
+ * @param string $query_arg Optional. Nonce query argument. Default '_wpnonce'.
223
+ *
224
+ * @return void
225
+ */
226
+ public function verify_request( $action, $query_arg = '_wpnonce' ) {
227
+ $has_access = current_user_can( 'wpseo_manage_network_options' );
228
+
229
+ if ( wp_doing_ajax() ) {
230
+ check_ajax_referer( $action, $query_arg );
231
+
232
+ if ( ! $has_access ) {
233
+ wp_die( -1, 403 );
234
+ }
235
+ return;
236
+ }
237
+
238
+ check_admin_referer( $action, $query_arg );
239
+
240
+ if ( ! $has_access ) {
241
+ wp_die( __( 'You are not allowed to perform this action.', 'wordpress-seo' ) );
242
+ }
243
+ }
244
+
245
+ /**
246
+ * Terminates the current request by either redirecting back or sending an AJAX response.
247
+ *
248
+ * @return void
249
+ */
250
+ public function terminate_request() {
251
+ if ( wp_doing_ajax() ) {
252
+ $settings_errors = get_settings_errors();
253
+
254
+ if ( ! empty( $settings_errors ) && $settings_errors[0]['type'] === 'updated' ) {
255
+ wp_send_json_success( $settings_errors, 200 );
256
+ }
257
+
258
+ wp_send_json_error( $settings_errors, 400 );
259
+ }
260
+
261
+ $this->persist_settings_errors();
262
+ $this->redirect_back( array( 'settings-updated' => 'true' ) );
263
+ }
264
+
265
+ /**
266
+ * Persists settings errors.
267
+ *
268
+ * Settings errors are stored in a transient for 30 seconds so that this transient
269
+ * can be retrieved on the next page load.
270
+ *
271
+ * @return void
272
+ */
273
+ protected function persist_settings_errors() {
274
+ /*
275
+ * A regular transient is used here, since it is automatically cleared right after the redirect.
276
+ * A network transient would be cleaner, but would require a lot of copied code from core for
277
+ * just a minor adjustment when displaying settings errors.
278
+ */
279
+ set_transient( 'settings_errors', get_settings_errors(), 30 );
280
+ }
281
+
282
+ /**
283
+ * Redirects back to the referer URL, with optional query arguments.
284
+ *
285
+ * @param array $query_args Optional. Query arguments to add to the redirect URL. Default none.
286
+ *
287
+ * @return void
288
+ */
289
+ protected function redirect_back( $query_args = array() ) {
290
+ $sendback = wp_get_referer();
291
+
292
+ if ( ! empty( $query_args ) ) {
293
+ $sendback = add_query_arg( $query_args, $sendback );
294
+ }
295
+
296
+ wp_safe_redirect( $sendback );
297
+ exit;
298
+ }
299
+ }
admin/class-yoast-network-settings-api.php ADDED
@@ -0,0 +1,157 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Admin\Network
6
+ */
7
+
8
+ /**
9
+ * Implements a network settings API for the plugin's multisite settings.
10
+ */
11
+ class Yoast_Network_Settings_API {
12
+
13
+ /**
14
+ * @var array Registered network settings.
15
+ */
16
+ private $registered_settings = array();
17
+
18
+ /**
19
+ * @var array Options whitelist, keyed by option group.
20
+ */
21
+ private $whitelist_options = array();
22
+
23
+ /**
24
+ * @var Yoast_Network_Settings_API The singleton instance of this class.
25
+ */
26
+ private static $instance = null;
27
+
28
+ /**
29
+ * Registers a network setting and its data.
30
+ *
31
+ * @param string $option_group The group the network option is part of.
32
+ * @param string $option_name The name of the network option to sanitize and save.
33
+ * @param array $args {
34
+ * Optional. Data used to describe the network setting when registered.
35
+ *
36
+ * @type callable $sanitize_callback A callback function that sanitizes the network option's value.
37
+ * @type mixed $default Default value when calling `get_network_option()`.
38
+ * }
39
+ *
40
+ * @return void
41
+ */
42
+ public function register_setting( $option_group, $option_name, $args = array() ) {
43
+
44
+ $args = wp_parse_args( $args, array(
45
+ 'group' => $option_group,
46
+ 'sanitize_callback' => null,
47
+ ) );
48
+
49
+ if ( ! isset( $this->whitelist_options[ $option_group ] ) ) {
50
+ $this->whitelist_options[ $option_group ] = array();
51
+ }
52
+
53
+ $this->whitelist_options[ $option_group ][] = $option_name;
54
+
55
+ if ( ! empty( $args['sanitize_callback'] ) ) {
56
+ add_filter( "sanitize_option_{$option_name}", array( $this, 'filter_sanitize_option' ), 10, 2 );
57
+ }
58
+
59
+ if ( array_key_exists( 'default', $args ) ) {
60
+ add_filter( "default_site_option_{$option_name}", array( $this, 'filter_default_option' ), 10, 2 );
61
+ }
62
+
63
+ $this->registered_settings[ $option_name ] = $args;
64
+ }
65
+
66
+ /**
67
+ * Gets the registered settings and their data.
68
+ *
69
+ * @return array Array of $option_name => $data pairs.
70
+ */
71
+ public function get_registered_settings() {
72
+ return $this->registered_settings;
73
+ }
74
+
75
+ /**
76
+ * Gets the whitelisted options for a given option group.
77
+ *
78
+ * @param string $option_group Option group.
79
+ *
80
+ * @return array List of option names, or empty array if unknown option group.
81
+ */
82
+ public function get_whitelist_options( $option_group ) {
83
+ if ( ! isset( $this->whitelist_options[ $option_group ] ) ) {
84
+ return array();
85
+ }
86
+
87
+ return $this->whitelist_options[ $option_group ];
88
+ }
89
+
90
+ /**
91
+ * Filters sanitization for a network option value.
92
+ *
93
+ * This method is added as a filter to `sanitize_option_{$option}` for network options that are
94
+ * registered with a sanitize callback.
95
+ *
96
+ * @param string $value The sanitized option value.
97
+ * @param string $option The option name.
98
+ *
99
+ * @return string The filtered sanitized option value.
100
+ */
101
+ public function filter_sanitize_option( $value, $option ) {
102
+
103
+ if ( empty( $this->registered_settings[ $option ] ) ) {
104
+ return $value;
105
+ }
106
+
107
+ return call_user_func( $this->registered_settings[ $option ]['sanitize_callback'], $value );
108
+ }
109
+
110
+ /**
111
+ * Filters the default value for a network option.
112
+ *
113
+ * This function is added as a filter to `default_site_option_{$option}` for network options that
114
+ * are registered with a default.
115
+ *
116
+ * @param mixed $default Existing default value to return.
117
+ * @param string $option The option name.
118
+ *
119
+ * @return mixed The filtered default value.
120
+ */
121
+ public function filter_default_option( $default, $option ) {
122
+
123
+ // If a default value was manually passed to the function, allow it to override.
124
+ if ( $default !== false ) {
125
+ return $default;
126
+ }
127
+
128
+ if ( empty( $this->registered_settings[ $option ] ) ) {
129
+ return $default;
130
+ }
131
+
132
+ return $this->registered_settings[ $option ]['default'];
133
+ }
134
+
135
+ /**
136
+ * Checks whether the requirements to use this class are met.
137
+ *
138
+ * @return bool True if requirements are met, false otherwise.
139
+ */
140
+ public function meets_requirements() {
141
+ return is_multisite();
142
+ }
143
+
144
+ /**
145
+ * Gets the singleton instance of this class.
146
+ *
147
+ * @return Yoast_Network_Settings_API The singleton instance.
148
+ */
149
+ public static function get() {
150
+
151
+ if ( self::$instance === null ) {
152
+ self::$instance = new self();
153
+ }
154
+
155
+ return self::$instance;
156
+ }
157
+ }
admin/formatter/class-metabox-formatter.php CHANGED
@@ -45,6 +45,9 @@ class WPSEO_Metabox_Formatter {
45
  $analysis_seo = new WPSEO_Metabox_Analysis_SEO();
46
  $analysis_readability = new WPSEO_Metabox_Analysis_Readability();
47
 
 
 
 
48
  return array(
49
  'language' => WPSEO_Language_Utils::get_site_language_name(),
50
  'settings_link' => $this->get_settings_link(),
@@ -53,7 +56,6 @@ class WPSEO_Metabox_Formatter {
53
  'base_url' => '',
54
  'contentTab' => __( 'Readability', 'wordpress-seo' ),
55
  'keywordTab' => __( 'Keyword:', 'wordpress-seo' ),
56
- 'enterFocusKeyword' => __( 'Enter your focus keyword', 'wordpress-seo' ),
57
  'removeKeyword' => __( 'Remove keyword', 'wordpress-seo' ),
58
  'contentLocale' => get_locale(),
59
  'userLocale' => WPSEO_Utils::get_user_locale(),
@@ -63,9 +65,10 @@ class WPSEO_Metabox_Formatter {
63
  'metadesc_template' => '',
64
  'contentAnalysisActive' => $analysis_readability->is_enabled() ? 1 : 0,
65
  'keywordAnalysisActive' => $analysis_seo->is_enabled() ? 1 : 0,
 
66
  'intl' => $this->get_content_analysis_component_translations(),
67
  'isRtl' => is_rtl(),
68
- 'gutenbergSidebar' => defined( 'YOAST_FEATURE_GUTENBERG_SIDEBAR' ) && YOAST_FEATURE_GUTENBERG_SIDEBAR,
69
 
70
  /**
71
  * Filter to determine if the markers should be enabled or not.
@@ -172,6 +175,37 @@ class WPSEO_Metabox_Formatter {
172
  );
173
  }
174
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
175
  /**
176
  * Returns Jed compatible YoastSEO.js translations.
177
  *
45
  $analysis_seo = new WPSEO_Metabox_Analysis_SEO();
46
  $analysis_readability = new WPSEO_Metabox_Analysis_Readability();
47
 
48
+ $premium_benefits = new WPSEO_Premium_Benefits_List();
49
+ $premium_benefits->enqueue_translations();
50
+
51
  return array(
52
  'language' => WPSEO_Language_Utils::get_site_language_name(),
53
  'settings_link' => $this->get_settings_link(),
56
  'base_url' => '',
57
  'contentTab' => __( 'Readability', 'wordpress-seo' ),
58
  'keywordTab' => __( 'Keyword:', 'wordpress-seo' ),
 
59
  'removeKeyword' => __( 'Remove keyword', 'wordpress-seo' ),
60
  'contentLocale' => get_locale(),
61
  'userLocale' => WPSEO_Utils::get_user_locale(),
65
  'metadesc_template' => '',
66
  'contentAnalysisActive' => $analysis_readability->is_enabled() ? 1 : 0,
67
  'keywordAnalysisActive' => $analysis_seo->is_enabled() ? 1 : 0,
68
+ 'cornerstoneActive' => WPSEO_Options::get( 'enable_cornerstone_content', false ) ? 1 : 0,
69
  'intl' => $this->get_content_analysis_component_translations(),
70
  'isRtl' => is_rtl(),
71
+ 'addKeywordUpsell' => $this->get_add_keyword_upsell_translations(),
72
 
73
  /**
74
  * Filter to determine if the markers should be enabled or not.
175
  );
176
  }
177
 
178
+ /**
179
+ * Returns the translations for the Add Keyword modal.
180
+ *
181
+ * These strings are not escaped because they're meant to be used with React
182
+ * which already takes care of that. If used in PHP, they should be escaped.
183
+ *
184
+ * @return array Translated text strings for the Add Keyword modal.
185
+ */
186
+ public function get_add_keyword_upsell_translations() {
187
+ return array(
188
+ 'title' => __( 'Would you like to add more than one keyword?', 'wordpress-seo' ),
189
+ 'intro' => sprintf(
190
+ /* translators: %1$s expands to a 'Yoast SEO Premium' text linked to the yoast.com website. */
191
+ __( 'Great news: you can, with %1$s!', 'wordpress-seo' ),
192
+ '{{link}}Yoast SEO Premium{{/link}}'
193
+ ),
194
+ 'link' => WPSEO_Shortlinker::get( 'https://yoa.st/pe-premium-page' ),
195
+ 'other' => sprintf(
196
+ /* translators: %s expands to 'Yoast SEO Premium'. */
197
+ __( 'Other benefits of %s for you:', 'wordpress-seo' ), 'Yoast SEO Premium'
198
+ ),
199
+ 'buylink' => WPSEO_Shortlinker::get( 'https://yoa.st/add-keywords-popup' ),
200
+ 'buy' => sprintf(
201
+ /* translators: %s expands to 'Yoast SEO Premium'. */
202
+ __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium'
203
+ ),
204
+ 'small' => __( '1 year free updates and upgrades included!', 'wordpress-seo' ),
205
+ 'a11yNotice.opensInNewTab' => __( '(Opens in a new browser tab)', 'wordpress-seo' ),
206
+ );
207
+ }
208
+
209
  /**
210
  * Returns Jed compatible YoastSEO.js translations.
211
  *
admin/menu/class-admin-menu.php CHANGED
@@ -8,18 +8,7 @@
8
  /**
9
  * Registers the admin menu on the left of the admin area.
10
  */
11
- class WPSEO_Admin_Menu implements WPSEO_WordPress_Integration {
12
- /** @var WPSEO_Menu Menu */
13
- protected $menu;
14
-
15
- /**
16
- * Constructs the Admin Menu.
17
- *
18
- * @param WPSEO_Menu $menu Menu to use.
19
- */
20
- public function __construct( WPSEO_Menu $menu ) {
21
- $this->menu = $menu;
22
- }
23
 
24
  /**
25
  * Registers all hooks to WordPress.
@@ -35,7 +24,7 @@ class WPSEO_Admin_Menu implements WPSEO_WordPress_Integration {
35
  * Registers the menu item submenus.
36
  */
37
  public function register_settings_page() {
38
- $can_manage_options = WPSEO_Capability_Utils::current_user_can( $this->get_manage_capability() );
39
 
40
  if ( $can_manage_options ) {
41
  /*
@@ -48,13 +37,14 @@ class WPSEO_Admin_Menu implements WPSEO_WordPress_Integration {
48
  'Yoast SEO: ' . __( 'Dashboard', 'wordpress-seo' ),
49
  __( 'SEO', 'wordpress-seo' ) . ' ' . $this->get_notification_counter(),
50
  $this->get_manage_capability(),
51
- $this->menu->get_page_identifier(),
52
  $this->get_admin_page_callback(),
53
  WPSEO_Utils::get_icon_svg(),
54
  '99.31337'
55
  );
56
 
57
- $admin_page_hooks[ $this->menu->get_page_identifier() ] = 'seo'; // Wipe notification bits from hooks. R.
 
58
  }
59
 
60
  // Get all submenu pages.
@@ -74,55 +64,34 @@ class WPSEO_Admin_Menu implements WPSEO_WordPress_Integration {
74
  }
75
  }
76
 
77
- /**
78
- * Registers submenu pages as menu pages.
79
- *
80
- * @param array $submenu_pages List of submenu pages.
81
- */
82
- protected function register_menu_pages( $submenu_pages ) {
83
- if ( ! is_array( $submenu_pages ) || $submenu_pages === array() ) {
84
- return;
85
- }
86
-
87
- // Loop through submenu pages and add them.
88
- foreach ( $submenu_pages as $submenu_page ) {
89
- if ( $submenu_page[3] === $this->get_manage_capability() ) {
90
- continue;
91
- }
92
-
93
- // Register submenu as menu page.
94
- add_menu_page(
95
- 'Yoast SEO: ' . $submenu_page[2],
96
- $submenu_page[2],
97
- $submenu_page[3],
98
- $submenu_page[4],
99
- $submenu_page[5],
100
- WPSEO_Utils::get_icon_svg(),
101
- '99.31337'
102
- );
103
- }
104
- }
105
-
106
  /**
107
  * Returns the list of registered submenu pages.
108
  *
109
  * @return array List of registered submenu pages.
110
  */
111
- protected function get_submenu_pages() {
112
  global $wpseo_admin;
113
 
114
- /** WPSEO_Admin $wpseo_admin */
115
- $admin_features = $wpseo_admin->get_admin_features();
 
 
 
 
 
 
 
 
116
 
117
  // Submenu pages.
118
  $submenu_pages = array(
119
- $this->get_submenu_page( __( 'General', 'wordpress-seo' ), $this->menu->get_page_identifier() ),
120
  $this->get_submenu_page( __( 'Search Appearance', 'wordpress-seo' ), 'wpseo_titles' ),
121
  $this->get_submenu_page(
122
  __( 'Search Console', 'wordpress-seo' ),
123
  'wpseo_search_console',
124
- array( $admin_features['google_search_console'], 'display' ),
125
- array( array( $admin_features['google_search_console'], 'set_help' ) )
126
  ),
127
  $this->get_submenu_page( __( 'Social', 'wordpress-seo' ), 'wpseo_social' ),
128
  $this->get_submenu_page( __( 'Tools', 'wordpress-seo' ), 'wpseo_tools' ),
@@ -137,82 +106,6 @@ class WPSEO_Admin_Menu implements WPSEO_WordPress_Integration {
137
  return (array) apply_filters( 'wpseo_submenu_pages', $submenu_pages );
138
  }
139
 
140
- /**
141
- * Creates a submenu formatted array.
142
- *
143
- * @param string $page_title Page title to use.
144
- * @param string $page_slug Page slug to use.
145
- * @param callable $callback Optional. Callback which handles the page request.
146
- * @param callable[] $hook Optional. Hook to trigger when the page is registered.
147
- *
148
- * @return array Formatted submenu.
149
- */
150
- protected function get_submenu_page( $page_title, $page_slug, $callback = null, $hook = null ) {
151
- if ( $callback === null ) {
152
- $callback = $this->get_admin_page_callback();
153
- }
154
-
155
- return array(
156
- $this->menu->get_page_identifier(),
157
- '',
158
- $page_title,
159
- $this->get_manage_capability(),
160
- $page_slug,
161
- $callback,
162
- $hook,
163
- );
164
- }
165
-
166
- /**
167
- * Registers the submenu pages.
168
- *
169
- * This is only done when the user has the `wpseo_manage_options` capability,
170
- * thus all capabilities can be set to this capability.
171
- *
172
- * @param array $submenu_pages List of submenu pages to register.
173
- *
174
- * @return void
175
- */
176
- protected function register_submenu_pages( $submenu_pages ) {
177
- if ( ! is_array( $submenu_pages ) || $submenu_pages === array() ) {
178
- return;
179
- }
180
-
181
- // Loop through submenu pages and add them.
182
- foreach ( $submenu_pages as $submenu_page ) {
183
- $page_title = $submenu_page[2];
184
-
185
- // We cannot use $submenu_page[1] because add-ons define that, so hard-code this value.
186
- if ( $submenu_page[4] === 'wpseo_licenses' ) {
187
- $page_title = $this->get_license_page_title();
188
- }
189
-
190
- $page_title .= ' - Yoast SEO';
191
-
192
- /*
193
- * Add submenu page.
194
- *
195
- * If we don't register this on `wpseo_manage_options`, admin users with only this capability
196
- * will not be able to see the submenus which are configured with something else,
197
- * thus all submenu pages are registered with the `wpseo_manage_options` capability here.
198
- */
199
- $admin_page = add_submenu_page( $submenu_page[0], $page_title, $submenu_page[2], $this->get_manage_capability(), $submenu_page[4], $submenu_page[5] );
200
-
201
- // Check if we need to hook.
202
- if ( isset( $submenu_page[6] ) && ( is_array( $submenu_page[6] ) && $submenu_page[6] !== array() ) ) {
203
- foreach ( $submenu_page[6] as $submenu_page_action ) {
204
- add_action( 'load-' . $admin_page, $submenu_page_action );
205
- }
206
- }
207
- }
208
-
209
- // Use WordPress global $submenu to directly access it's properties.
210
- global $submenu;
211
- if ( isset( $submenu[ $this->menu->get_page_identifier() ] ) && WPSEO_Capability_Utils::current_user_can( $this->get_manage_capability() ) ) {
212
- $submenu[ $this->menu->get_page_identifier() ][0][0] = __( 'General', 'wordpress-seo' );
213
- }
214
- }
215
-
216
  /**
217
  * Returns the notification count in HTML format.
218
  *
@@ -245,28 +138,4 @@ class WPSEO_Admin_Menu implements WPSEO_WordPress_Integration {
245
  */
246
  return apply_filters_deprecated( 'wpseo_manage_options_capability', array( 'wpseo_manage_options' ), 'WPSEO 5.5.0', false, 'Use the introduced wpseo_manage_options capability instead.' );
247
  }
248
-
249
- /**
250
- * Returns the page handler callback.
251
- *
252
- * @return array Callback page handler.
253
- */
254
- protected function get_admin_page_callback() {
255
- return array( $this->menu, 'load_page' );
256
- }
257
-
258
- /**
259
- * Returns the page title to use for the licenses page.
260
- *
261
- * @return string The title for the license page.
262
- */
263
- protected function get_license_page_title() {
264
- static $title = null;
265
-
266
- if ( $title === null ) {
267
- $title = __( 'Premium', 'wordpress-seo' );
268
- }
269
-
270
- return $title;
271
- }
272
  }
8
  /**
9
  * Registers the admin menu on the left of the admin area.
10
  */
11
+ class WPSEO_Admin_Menu extends WPSEO_Base_Menu {
 
 
 
 
 
 
 
 
 
 
 
12
 
13
  /**
14
  * Registers all hooks to WordPress.
24
  * Registers the menu item submenus.
25
  */
26
  public function register_settings_page() {
27
+ $can_manage_options = $this->check_manage_capability();
28
 
29
  if ( $can_manage_options ) {
30
  /*
37
  'Yoast SEO: ' . __( 'Dashboard', 'wordpress-seo' ),
38
  __( 'SEO', 'wordpress-seo' ) . ' ' . $this->get_notification_counter(),
39
  $this->get_manage_capability(),
40
+ $this->get_page_identifier(),
41
  $this->get_admin_page_callback(),
42
  WPSEO_Utils::get_icon_svg(),
43
  '99.31337'
44
  );
45
 
46
+ // Wipe notification bits from hooks.
47
+ $admin_page_hooks[ $this->get_page_identifier() ] = 'seo';
48
  }
49
 
50
  // Get all submenu pages.
64
  }
65
  }
66
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
67
  /**
68
  * Returns the list of registered submenu pages.
69
  *
70
  * @return array List of registered submenu pages.
71
  */
72
+ public function get_submenu_pages() {
73
  global $wpseo_admin;
74
 
75
+ $search_console_callback = null;
76
+ $search_console_hook_callbacks = null;
77
+
78
+ // Account for when the available submenu pages are requested from outside the admin.
79
+ if ( isset( $wpseo_admin ) ) {
80
+ $admin_features = $wpseo_admin->get_admin_features();
81
+
82
+ $search_console_callback = array( $admin_features['google_search_console'], 'display' );
83
+ $search_console_hook_callbacks = array( array( $admin_features['google_search_console'], 'set_help' ) );
84
+ }
85
 
86
  // Submenu pages.
87
  $submenu_pages = array(
88
+ $this->get_submenu_page( __( 'General', 'wordpress-seo' ), $this->get_page_identifier() ),
89
  $this->get_submenu_page( __( 'Search Appearance', 'wordpress-seo' ), 'wpseo_titles' ),
90
  $this->get_submenu_page(
91
  __( 'Search Console', 'wordpress-seo' ),
92
  'wpseo_search_console',
93
+ $search_console_callback,
94
+ $search_console_hook_callbacks
95
  ),
96
  $this->get_submenu_page( __( 'Social', 'wordpress-seo' ), 'wpseo_social' ),
97
  $this->get_submenu_page( __( 'Tools', 'wordpress-seo' ), 'wpseo_tools' ),
106
  return (array) apply_filters( 'wpseo_submenu_pages', $submenu_pages );
107
  }
108
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
109
  /**
110
  * Returns the notification count in HTML format.
111
  *
138
  */
139
  return apply_filters_deprecated( 'wpseo_manage_options_capability', array( 'wpseo_manage_options' ), 'WPSEO 5.5.0', false, 'Use the introduced wpseo_manage_options capability instead.' );
140
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
141
  }
admin/menu/class-base-menu.php ADDED
@@ -0,0 +1,258 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Admin\Menu
6
+ */
7
+
8
+ /**
9
+ * Admin menu base class.
10
+ */
11
+ abstract class WPSEO_Base_Menu implements WPSEO_WordPress_Integration {
12
+
13
+ /** @var WPSEO_Menu Menu */
14
+ protected $menu;
15
+
16
+ /**
17
+ * Constructs the Admin Menu.
18
+ *
19
+ * @param WPSEO_Menu $menu Menu to use.
20
+ */
21
+ public function __construct( WPSEO_Menu $menu ) {
22
+ $this->menu = $menu;
23
+ }
24
+
25
+ /**
26
+ * Returns the list of registered submenu pages.
27
+ *
28
+ * @return array List of registered submenu pages.
29
+ */
30
+ abstract public function get_submenu_pages();
31
+
32
+ /**
33
+ * Creates a submenu formatted array.
34
+ *
35
+ * @param string $page_title Page title to use.
36
+ * @param string $page_slug Page slug to use.
37
+ * @param callable $callback Optional. Callback which handles the page request.
38
+ * @param callable[] $hook Optional. Hook to trigger when the page is registered.
39
+ *
40
+ * @return array Formatted submenu.
41
+ */
42
+ protected function get_submenu_page( $page_title, $page_slug, $callback = null, $hook = null ) {
43
+ if ( $callback === null ) {
44
+ $callback = $this->get_admin_page_callback();
45
+ }
46
+
47
+ return array(
48
+ $this->get_page_identifier(),
49
+ '',
50
+ $page_title,
51
+ $this->get_manage_capability(),
52
+ $page_slug,
53
+ $callback,
54
+ $hook,
55
+ );
56
+ }
57
+
58
+ /**
59
+ * Registers submenu pages as menu pages.
60
+ *
61
+ * This method should only be used if the user does not have the required capabilities
62
+ * to access the parent menu page.
63
+ *
64
+ * @param array $submenu_pages List of submenu pages to register.
65
+ *
66
+ * @return void
67
+ */
68
+ protected function register_menu_pages( $submenu_pages ) {
69
+ if ( ! is_array( $submenu_pages ) || empty( $submenu_pages ) ) {
70
+ return;
71
+ }
72
+
73
+ // Loop through submenu pages and add them.
74
+ array_walk( $submenu_pages, array( $this, 'register_menu_page' ) );
75
+ }
76
+
77
+ /**
78
+ * Registers submenu pages.
79
+ *
80
+ * @param array $submenu_pages List of submenu pages to register.
81
+ *
82
+ * @return void
83
+ */
84
+ protected function register_submenu_pages( $submenu_pages ) {
85
+ if ( ! is_array( $submenu_pages ) || empty( $submenu_pages ) ) {
86
+ return;
87
+ }
88
+
89
+ // Loop through submenu pages and add them.
90
+ array_walk( $submenu_pages, array( $this, 'register_submenu_page' ) );
91
+
92
+ // Set the first submenu title to the title of the first submenu page.
93
+ global $submenu;
94
+ if ( isset( $submenu[ $this->get_page_identifier() ] ) && $this->check_manage_capability() ) {
95
+ $submenu[ $this->get_page_identifier() ][0][0] = $submenu_pages[0][2];
96
+ }
97
+ }
98
+
99
+ /**
100
+ * Registers a submenu page as a menu page.
101
+ *
102
+ * This method should only be used if the user does not have the required capabilities
103
+ * to access the parent menu page.
104
+ *
105
+ * @param array $submenu_page {
106
+ * Submenu page definition.
107
+ *
108
+ * @type string $0 Parent menu page slug.
109
+ * @type string $1 Page title, currently unused.
110
+ * @type string $2 Title to display in the menu.
111
+ * @type string $3 Required capability to access the page.
112
+ * @type string $4 Page slug.
113
+ * @type callable $5 Callback to run when the page is rendered.
114
+ * @type array $6 Optional. List of callbacks to run when the page is loaded.
115
+ * }
116
+ *
117
+ * @return void
118
+ */
119
+ protected function register_menu_page( $submenu_page ) {
120
+
121
+ // If the submenu page requires the general manage capability, it must be added as an actual submenu page.
122
+ if ( $submenu_page[3] === $this->get_manage_capability() ) {
123
+ return;
124
+ }
125
+
126
+ $page_title = 'Yoast SEO: ' . $submenu_page[2];
127
+
128
+ // Register submenu page as menu page.
129
+ $hook_suffix = add_menu_page(
130
+ $page_title,
131
+ $submenu_page[2],
132
+ $submenu_page[3],
133
+ $submenu_page[4],
134
+ $submenu_page[5],
135
+ WPSEO_Utils::get_icon_svg(),
136
+ '99.31337'
137
+ );
138
+
139
+ // If necessary, add hooks for the submenu page.
140
+ if ( isset( $submenu_page[6] ) && ( is_array( $submenu_page[6] ) ) ) {
141
+ $this->add_page_hooks( $hook_suffix, $submenu_page[6] );
142
+ }
143
+ }
144
+
145
+ /**
146
+ * Registers a submenu page.
147
+ *
148
+ * This method will override the capability of the page to automatically use the
149
+ * general manage capability. Use the `register_menu_page()` method if the submenu
150
+ * page should actually use a different capability.
151
+ *
152
+ * @param array $submenu_page {
153
+ * Submenu page definition.
154
+ *
155
+ * @type string $0 Parent menu page slug.
156
+ * @type string $1 Page title, currently unused.
157
+ * @type string $2 Title to display in the menu.
158
+ * @type string $3 Required capability to access the page.
159
+ * @type string $4 Page slug.
160
+ * @type callable $5 Callback to run when the page is rendered.
161
+ * @type array $6 Optional. List of callbacks to run when the page is loaded.
162
+ * }
163
+ *
164
+ * @return void
165
+ */
166
+ protected function register_submenu_page( $submenu_page ) {
167
+ $page_title = $submenu_page[2];
168
+
169
+ // We cannot use $submenu_page[1] because add-ons define that, so hard-code this value.
170
+ if ( $submenu_page[4] === 'wpseo_licenses' ) {
171
+ $page_title = $this->get_license_page_title();
172
+ }
173
+
174
+ $page_title .= ' - Yoast SEO';
175
+
176
+ // Force the general manage capability to be used.
177
+ $submenu_page[3] = $this->get_manage_capability();
178
+
179
+ // Register submenu page.
180
+ $hook_suffix = add_submenu_page(
181
+ $submenu_page[0],
182
+ $page_title,
183
+ $submenu_page[2],
184
+ $submenu_page[3],
185
+ $submenu_page[4],
186
+ $submenu_page[5]
187
+ );
188
+
189
+ // If necessary, add hooks for the submenu page.
190
+ if ( isset( $submenu_page[6] ) && ( is_array( $submenu_page[6] ) ) ) {
191
+ $this->add_page_hooks( $hook_suffix, $submenu_page[6] );
192
+ }
193
+ }
194
+
195
+ /**
196
+ * Adds hook callbacks for a given admin page hook suffix.
197
+ *
198
+ * @param string $hook_suffix Admin page hook suffix, as returned by `add_menu_page()`
199
+ * or `add_submenu_page()`.
200
+ * @param array $callbacks Callbacks to add.
201
+ *
202
+ * @return void
203
+ */
204
+ protected function add_page_hooks( $hook_suffix, array $callbacks ) {
205
+ foreach ( $callbacks as $callback ) {
206
+ add_action( 'load-' . $hook_suffix, $callback );
207
+ }
208
+ }
209
+
210
+ /**
211
+ * Gets the main admin page identifier.
212
+ *
213
+ * @return string Admin page identifier.
214
+ */
215
+ protected function get_page_identifier() {
216
+ return $this->menu->get_page_identifier();
217
+ }
218
+
219
+ /**
220
+ * Checks whether the current user has capabilities to manage all options.
221
+ *
222
+ * @return bool True if capabilities are sufficient, false otherwise.
223
+ */
224
+ protected function check_manage_capability() {
225
+ return WPSEO_Capability_Utils::current_user_can( $this->get_manage_capability() );
226
+ }
227
+
228
+ /**
229
+ * Returns the capability that is required to manage all options.
230
+ *
231
+ * @return string Capability to check against.
232
+ */
233
+ abstract protected function get_manage_capability();
234
+
235
+ /**
236
+ * Returns the page handler callback.
237
+ *
238
+ * @return array Callback page handler.
239
+ */
240
+ protected function get_admin_page_callback() {
241
+ return array( $this->menu, 'load_page' );
242
+ }
243
+
244
+ /**
245
+ * Returns the page title to use for the licenses page.
246
+ *
247
+ * @return string The title for the license page.
248
+ */
249
+ protected function get_license_page_title() {
250
+ static $title = null;
251
+
252
+ if ( $title === null ) {
253
+ $title = __( 'Premium', 'wordpress-seo' );
254
+ }
255
+
256
+ return $title;
257
+ }
258
+ }
admin/menu/class-network-admin-menu.php CHANGED
@@ -8,18 +8,7 @@
8
  /**
9
  * Network Admin Menu handler.
10
  */
11
- class WPSEO_Network_Admin_Menu implements WPSEO_WordPress_Integration {
12
- /** @var WPSEO_Menu Menu */
13
- protected $menu;
14
-
15
- /**
16
- * WPSEO_Network_Admin_Menu constructor.
17
- *
18
- * @param WPSEO_Menu $menu Menu to use.
19
- */
20
- public function __construct( WPSEO_Menu $menu ) {
21
- $this->menu = $menu;
22
- }
23
 
24
  /**
25
  * Registers all hooks to WordPress.
@@ -37,41 +26,46 @@ class WPSEO_Network_Admin_Menu implements WPSEO_WordPress_Integration {
37
  * @return void
38
  */
39
  public function register_settings_page() {
40
- if ( ! WPSEO_Capability_Utils::current_user_can( 'wpseo_manage_options' ) ) {
41
  return;
42
  }
43
 
44
- $page_callback = array( $this->menu, 'load_page' );
45
-
46
  add_menu_page(
47
- 'Yoast SEO: ' . __( 'MultiSite Settings', 'wordpress-seo' ),
48
  __( 'SEO', 'wordpress-seo' ),
49
- 'delete_users',
50
- $this->menu->get_page_identifier(),
51
  array( $this, 'network_config_page' ),
52
  WPSEO_Utils::get_icon_svg()
53
  );
54
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
  if ( WPSEO_Utils::allow_system_file_edit() === true ) {
56
- add_submenu_page(
57
- $this->menu->get_page_identifier(),
58
- 'Yoast SEO: ' . __( 'Edit Files', 'wordpress-seo' ),
59
- __( 'Edit Files', 'wordpress-seo' ),
60
- 'delete_users',
61
- 'wpseo_files',
62
- $page_callback
63
- );
64
  }
65
 
66
- // Add Extension submenu page.
67
- add_submenu_page(
68
- $this->menu->get_page_identifier(),
69
- 'Yoast SEO: ' . __( 'Extensions', 'wordpress-seo' ),
70
- __( 'Extensions', 'wordpress-seo' ),
71
- 'delete_users',
72
- 'wpseo_licenses',
73
- $page_callback
74
- );
75
  }
76
 
77
  /**
@@ -82,4 +76,22 @@ class WPSEO_Network_Admin_Menu implements WPSEO_WordPress_Integration {
82
  public function network_config_page() {
83
  require_once WPSEO_PATH . 'admin/pages/network.php';
84
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
85
  }
8
  /**
9
  * Network Admin Menu handler.
10
  */
11
+ class WPSEO_Network_Admin_Menu extends WPSEO_Base_Menu {
 
 
 
 
 
 
 
 
 
 
 
12
 
13
  /**
14
  * Registers all hooks to WordPress.
26
  * @return void
27
  */
28
  public function register_settings_page() {
29
+ if ( ! $this->check_manage_capability() ) {
30
  return;
31
  }
32
 
 
 
33
  add_menu_page(
34
+ __( 'Network Settings', 'wordpress-seo' ) . ' - Yoast SEO',
35
  __( 'SEO', 'wordpress-seo' ),
36
+ $this->get_manage_capability(),
37
+ $this->get_page_identifier(),
38
  array( $this, 'network_config_page' ),
39
  WPSEO_Utils::get_icon_svg()
40
  );
41
 
42
+ $submenu_pages = $this->get_submenu_pages();
43
+ $this->register_submenu_pages( $submenu_pages );
44
+ }
45
+
46
+ /**
47
+ * Returns the list of registered submenu pages.
48
+ *
49
+ * @return array List of registered submenu pages.
50
+ */
51
+ public function get_submenu_pages() {
52
+
53
+ // Submenu pages.
54
+ $submenu_pages = array(
55
+ $this->get_submenu_page(
56
+ __( 'General', 'wordpress-seo' ),
57
+ $this->get_page_identifier(),
58
+ array( $this, 'network_config_page' )
59
+ ),
60
+ );
61
+
62
  if ( WPSEO_Utils::allow_system_file_edit() === true ) {
63
+ $submenu_pages[] = $this->get_submenu_page( __( 'Edit Files', 'wordpress-seo' ), 'wpseo_files' );
 
 
 
 
 
 
 
64
  }
65
 
66
+ $submenu_pages[] = $this->get_submenu_page( __( 'Extensions', 'wordpress-seo' ), 'wpseo_licenses' );
67
+
68
+ return $submenu_pages;
 
 
 
 
 
 
69
  }
70
 
71
  /**
76
  public function network_config_page() {
77
  require_once WPSEO_PATH . 'admin/pages/network.php';
78
  }
79
+
80
+ /**
81
+ * Checks whether the current user has capabilities to manage all options.
82
+ *
83
+ * @return bool True if capabilities are sufficient, false otherwise.
84
+ */
85
+ protected function check_manage_capability() {
86
+ return current_user_can( $this->get_manage_capability() );
87
+ }
88
+
89
+ /**
90
+ * Returns the capability that is required to manage all options.
91
+ *
92
+ * @return string Capability to check against.
93
+ */
94
+ protected function get_manage_capability() {
95
+ return 'wpseo_manage_network_options';
96
+ }
97
  }
admin/metabox/class-metabox-add-keyword-tab.php DELETED
@@ -1,69 +0,0 @@
1
- <?php
2
- /**
3
- * WPSEO plugin file.
4
- *
5
- * @package WPSEO\Admin\Metabox
6
- */
7
-
8
- /**
9
- * Tab to add a keyword to analyze.
10
- */
11
- class WPSEO_Metabox_Add_Keyword_Tab implements WPSEO_Metabox_Tab {
12
-
13
- /**
14
- * Returns a button because a link is inappropriate here.
15
- *
16
- * @return string
17
- */
18
- public function link() {
19
-
20
- if ( ! WPSEO_UTILS::is_yoast_seo_premium() ) {
21
- $add_keyword_modal_config = array(
22
- 'mountHook' => '.wpseo-tab-add-keyword',
23
- 'openButtonIcon' => 'plus',
24
- 'intl' => array(
25
- 'open' => __( 'Add keyword', 'wordpress-seo' ),
26
- 'modalAriaLabel' => sprintf(
27
- /* translators: %s expands to 'Yoast SEO Premium'. */
28
- __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium'
29
- ),
30
- 'heading' => sprintf(
31
- /* translators: %s expands to 'Yoast SEO Premium'. */
32
- __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium'
33
- ),
34
- ),
35
- 'classes' => array(
36
- 'openButton' => 'wpseo-add-keyword button button-link',
37
- ),
38
- 'content' => 'AddKeyword',
39
- );
40
-
41
- $translations = new WPSEO_Add_Keyword_Modal();
42
- $translations->enqueue_translations();
43
- $benefits = new WPSEO_Premium_Benefits_List();
44
- $benefits->enqueue_translations();
45
- Yoast_Modal::add( $add_keyword_modal_config );
46
- }
47
-
48
- // Keep the default Add Keyword button for Premium. On free it's replaced by React.
49
- ob_start();
50
- ?>
51
- <li class="wpseo-tab-add-keyword">
52
- <button type="button" class="wpseo-add-keyword button button-link">
53
- <span class="wpseo-add-keyword-plus" aria-hidden="true">+</span>
54
- <?php esc_html_e( 'Add keyword', 'wordpress-seo' ); ?>
55
- </button>
56
- </li>
57
- <?php
58
- return ob_get_clean();
59
- }
60
-
61
- /**
62
- * Returns an empty string because this tab has no content.
63
- *
64
- * @return string
65
- */
66
- public function content() {
67
- return '';
68
- }
69
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/metabox/{class-metabox-keyword-synonyms-button.php → class-metabox-keyword-synonyms-config.php} RENAMED
@@ -8,28 +8,24 @@
8
  /**
9
  * Button to show the premium upsell.
10
  */
11
- class WPSEO_Metabox_Keyword_Synonyms_Button {
12
 
13
  /**
14
- * Returns a button because a link is inappropriate here.
15
  *
16
- * @return string
17
  */
18
- public function get_link() {
19
-
20
  $keyword_synonyms_modal_config = array(
21
- 'mountHook' => '.wpseo-button-keyword-synonyms',
22
  'openButtonIcon' => '',
23
  'intl' => array(
24
- 'open' => __( '+ Add synonyms', 'wordpress-seo' ),
25
- 'modalAriaLabel' => sprintf(
26
  /* translators: %s expands to 'Yoast SEO Premium'. */
27
- __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium'
28
- ),
29
- 'heading' => sprintf(
30
  /* translators: %s expands to 'Yoast SEO Premium'. */
31
- __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium'
32
- ),
33
  ),
34
  'classes' => array(
35
  'openButton' => 'wpseo-keyword-synonyms button-link',
@@ -44,7 +40,5 @@ class WPSEO_Metabox_Keyword_Synonyms_Button {
44
  $benefits->enqueue_translations();
45
 
46
  Yoast_Modal::add( $keyword_synonyms_modal_config );
47
-
48
- return '<div class="wpseo-button-keyword-synonyms"></div>';
49
  }
50
  }
8
  /**
9
  * Button to show the premium upsell.
10
  */
11
+ class WPSEO_Metabox_Keyword_Synonyms_Config {
12
 
13
  /**
14
+ * Enqueues the translations necessary for the synonyms modal + button
15
  *
16
+ * @return void
17
  */
18
+ public function enqueue_translations() {
 
19
  $keyword_synonyms_modal_config = array(
 
20
  'openButtonIcon' => '',
21
  'intl' => array(
22
+ 'open' => '+ ' . __( 'Add synonyms', 'wordpress-seo' ),
23
+ 'modalAriaLabel' =>
24
  /* translators: %s expands to 'Yoast SEO Premium'. */
25
+ sprintf( __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium' ),
26
+ 'heading' =>
 
27
  /* translators: %s expands to 'Yoast SEO Premium'. */
28
+ sprintf( __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium' ),
 
29
  ),
30
  'classes' => array(
31
  'openButton' => 'wpseo-keyword-synonyms button-link',
40
  $benefits->enqueue_translations();
41
 
42
  Yoast_Modal::add( $keyword_synonyms_modal_config );
 
 
43
  }
44
  }
admin/metabox/class-metabox-multiple-keywords-config.php ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Admin\Metabox
6
+ */
7
+
8
+ /**
9
+ * Button to show the premium upsell.
10
+ */
11
+ class WPSEO_Metabox_Multiple_Keywords_Config {
12
+
13
+ /**
14
+ * Enqueues the translations necessary for the multiple keywords modal + button
15
+ *
16
+ * @return void
17
+ */
18
+ public function enqueue_translations() {
19
+ $multiple_keywords_modal_config = array(
20
+ 'openButtonIcon' => '',
21
+ 'intl' => array(
22
+ 'open' => '+ ' . __( 'Add additional keyword', 'wordpress-seo' ),
23
+ 'modalAriaLabel' =>
24
+ /* translators: %s expands to 'Yoast SEO Premium'. */
25
+ sprintf( __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium' ),
26
+ 'heading' =>
27
+ /* translators: %s expands to 'Yoast SEO Premium'. */
28
+ sprintf( __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium' ),
29
+ ),
30
+ 'classes' => array(
31
+ 'openButton' => 'wpseo-multiple-keywords button-link',
32
+ ),
33
+ 'content' => 'MultipleKeywords',
34
+ );
35
+
36
+ $translations = new WPSEO_Multiple_Keywords_Modal();
37
+ $translations->enqueue_translations();
38
+
39
+ $benefits = new WPSEO_Premium_Benefits_List();
40
+ $benefits->enqueue_translations();
41
+
42
+ Yoast_Modal::add( $multiple_keywords_modal_config );
43
+ }
44
+ }
admin/metabox/class-metabox-section-react.php ADDED
@@ -0,0 +1,99 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Admin
6
+ */
7
+
8
+ /**
9
+ * Generates and displays the React root element for a metabox section.
10
+ */
11
+ class WPSEO_Metabox_Section_React implements WPSEO_Metabox_Section {
12
+ /**
13
+ * Name of the section, used as an identifier in the HTML.
14
+ *
15
+ * @var string
16
+ */
17
+ public $name;
18
+
19
+ /**
20
+ * Content to use before the React root node.
21
+ *
22
+ * @var string
23
+ */
24
+ public $content;
25
+
26
+ /**
27
+ * Content to use to display the button to open this content block.
28
+ *
29
+ * @var string
30
+ */
31
+ private $link_content;
32
+
33
+ /**
34
+ * Class to add to the link.
35
+ *
36
+ * @var string
37
+ */
38
+ private $link_class;
39
+
40
+ /**
41
+ * Aria label to use for the link.
42
+ *
43
+ * @var string
44
+ */
45
+ private $link_aria_label;
46
+
47
+ /**
48
+ * Constructor.
49
+ *
50
+ * @param string $name The name of the section, used as an identifier in the html. Can only contain URL safe characters.
51
+ * @param string $link_content The text content of the section link.
52
+ * @param string $content Optional. Content to use above the React root element.
53
+ * @param array $options Optional link attributes.
54
+ */
55
+ public function __construct( $name, $link_content, $content = '', array $options = array() ) {
56
+ $this->name = $name;
57
+ $this->content = $content;
58
+
59
+ $default_options = array(
60
+ 'link_class' => '',
61
+ 'link_aria_label' => '',
62
+ );
63
+
64
+ $options = wp_parse_args( $options, $default_options );
65
+
66
+ $this->link_content = $link_content;
67
+ $this->link_class = $options['link_class'];
68
+ $this->link_aria_label = $options['link_aria_label'];
69
+ }
70
+
71
+ /**
72
+ * Outputs the section link.
73
+ *
74
+ * @return void
75
+ */
76
+ public function display_link() {
77
+ printf(
78
+ '<li><a href="#wpseo-meta-section-%1$s" class="wpseo-meta-section-link %2$s"%3$s>%4$s</a></li>',
79
+ esc_attr( $this->name ),
80
+ esc_attr( $this->link_class ),
81
+ ( '' !== $this->link_aria_label ) ? ' aria-label="' . esc_attr( $this->link_aria_label ) . '"' : '',
82
+ $this->link_content
83
+ );
84
+ }
85
+
86
+ /**
87
+ * Outputs the section content.
88
+ *
89
+ * @return void
90
+ */
91
+ public function display_content() {
92
+ $html = sprintf( '<div id="%1$s" class="wpseo-meta-section">', esc_attr( 'wpseo-meta-section-' . $this->name ) );
93
+ $html .= $this->content;
94
+ $html .= '<div id="wpseo-metabox-root" class="wpseo-metabox-root"></div>';
95
+ $html .= '</div>';
96
+
97
+ echo $html;
98
+ }
99
+ }
admin/metabox/class-metabox-tab-section.php CHANGED
@@ -165,4 +165,13 @@ class WPSEO_Metabox_Tab_Section implements WPSEO_Metabox_Section {
165
  }
166
  return $content;
167
  }
 
 
 
 
 
 
 
 
 
168
  }
165
  }
166
  return $content;
167
  }
168
+
169
+ /**
170
+ * Gets the name of the tab section.
171
+ *
172
+ * @return string The name of the tab section.
173
+ */
174
+ public function get_name() {
175
+ return $this->name;
176
+ }
177
  }
admin/metabox/class-metabox.php CHANGED
@@ -37,8 +37,6 @@ class WPSEO_Metabox extends WPSEO_Meta {
37
  add_action( 'post_submitbox_start', array( $this, 'publish_box' ) );
38
  add_action( 'admin_init', array( $this, 'setup_page_analysis' ) );
39
  add_action( 'admin_init', array( $this, 'translate_meta_boxes' ) );
40
- add_action( 'admin_footer', array( $this, 'template_keyword_tab' ) );
41
- add_action( 'admin_footer', array( $this, 'template_generic_tab' ) );
42
 
43
  // Check if one of the social settings is checked in the options, if so, initialize the social_admin object.
44
  if ( WPSEO_Options::get( 'opengraph', false ) || WPSEO_Options::get( 'twitter', false ) ) {
@@ -59,19 +57,6 @@ class WPSEO_Metabox extends WPSEO_Meta {
59
  * the main meta box definition array in the class WPSEO_Meta() as well!!!!
60
  */
61
  public static function translate_meta_boxes() {
62
- self::$meta_fields['general']['snippetpreview']['title'] = __( 'Snippet editor', 'wordpress-seo' );
63
-
64
- self::$meta_fields['general']['pageanalysis']['title'] = __( 'Analysis', 'wordpress-seo' );
65
- /* translators: 1: link open tag; 2: link close tag. */
66
- self::$meta_fields['general']['pageanalysis']['help'] = sprintf( __( 'This is the content analysis, a collection of content checks that analyze the content of your page. %1$sLearn more about the Content Analysis Tool%2$s.', 'wordpress-seo' ), '<a target="_blank" href="' . WPSEO_Shortlinker::get( 'https://yoa.st/content-analysis' ) . '">', '</a>' );
67
- self::$meta_fields['general']['pageanalysis']['help-button'] = __( 'Show information about the content analysis', 'wordpress-seo' );
68
-
69
- self::$meta_fields['general']['focuskw_text_input']['title'] = __( 'Focus keyword', 'wordpress-seo' );
70
- self::$meta_fields['general']['focuskw_text_input']['label'] = __( 'Enter a focus keyword', 'wordpress-seo' );
71
- /* translators: 1: link open tag; 2: link close tag. */
72
- self::$meta_fields['general']['focuskw_text_input']['help'] = sprintf( __( 'Pick the main keyword or keyphrase that this post/page is about. %1$sLearn more about the Focus Keyword%2$s.', 'wordpress-seo' ), '<a target="_blank" href="' . WPSEO_Shortlinker::get( 'https://yoa.st/focus-keyword' ) . '">', '</a>' );
73
- self::$meta_fields['general']['focuskw_text_input']['help-button'] = __( 'Show information about the focus keyword', 'wordpress-seo' );
74
-
75
  self::$meta_fields['general']['title']['title'] = __( 'SEO title', 'wordpress-seo' );
76
 
77
  self::$meta_fields['general']['metadesc']['title'] = __( 'Meta description', 'wordpress-seo' );
@@ -278,7 +263,7 @@ class WPSEO_Metabox extends WPSEO_Meta {
278
  }
279
 
280
  /**
281
- * Pass some variables to js for the edit / post page overview, snippet preview, etc.
282
  *
283
  * @return array
284
  */
@@ -341,6 +326,17 @@ class WPSEO_Metabox extends WPSEO_Meta {
341
  echo '</div>';
342
  }
343
 
 
 
 
 
 
 
 
 
 
 
 
344
  /**
345
  * Returns the relevant metabox sections for the current view.
346
  *
@@ -360,10 +356,6 @@ class WPSEO_Metabox extends WPSEO_Meta {
360
  $content_sections[] = $this->get_advanced_meta_section();
361
  }
362
 
363
- if ( ! defined( 'WPSEO_PREMIUM_FILE' ) ) {
364
- $content_sections[] = $this->get_buy_premium_section();
365
- }
366
-
367
  if ( has_action( 'wpseo_tab_header' ) || has_action( 'wpseo_tab_content' ) ) {
368
  $content_sections[] = $this->get_addons_meta_section();
369
  }
@@ -379,23 +371,10 @@ class WPSEO_Metabox extends WPSEO_Meta {
379
  private function get_content_meta_section() {
380
  $content = $this->get_tab_content( 'general' );
381
 
382
- $tabs = array();
383
-
384
- $tabs[] = new WPSEO_Metabox_Form_Tab(
385
- 'content',
386
- $content,
387
- '',
388
- array(
389
- 'tab_class' => 'yoast-seo__remove-tab',
390
- )
391
- );
392
-
393
- $tabs[] = new WPSEO_Metabox_Add_Keyword_Tab();
394
-
395
- return new WPSEO_Metabox_Tab_Section(
396
  'content',
397
  '<span class="screen-reader-text">' . __( 'Content optimization', 'wordpress-seo' ) . '</span><span class="yst-traffic-light-container">' . WPSEO_Utils::traffic_light_svg() . '</span>',
398
- $tabs,
399
  array(
400
  'link_aria_label' => __( 'Content optimization', 'wordpress-seo' ),
401
  'link_class' => 'yoast-tooltip yoast-tooltip-e',
@@ -437,78 +416,13 @@ class WPSEO_Metabox extends WPSEO_Meta {
437
  * @return string
438
  */
439
  private function get_buy_premium_link() {
440
- return sprintf( "<div class='%s'><a href='#wpseo-meta-section-premium' class='wpseo-meta-section-link'><span class='dashicons dashicons-star-filled wpseo-buy-premium'></span>%s</a></div>",
441
  'wpseo-metabox-buy-premium',
 
442
  __( 'Go Premium', 'wordpress-seo' )
443
  );
444
  }
445
 
446
- /**
447
- * Returns the metabox section for the Premium section.
448
- *
449
- * @return WPSEO_Metabox_Section
450
- */
451
- private function get_buy_premium_section() {
452
- $content = sprintf( "<div class='wpseo-premium-description'>
453
- %s
454
- <ul class='wpseo-premium-advantages-list'>
455
- <li>
456
- <strong>%s</strong> - %s
457
- </li>
458
- <li>
459
- <strong>%s</strong> - %s
460
- </li>
461
- <li>
462
- <strong>%s</strong> - %s
463
- </li>
464
- <li>
465
- <strong>%s</strong> - %s
466
- </li>
467
- </ul>
468
-
469
- <a target='_blank' id='wpseo-buy-premium-popup-button' class='button button-buy-premium wpseo-metabox-go-to' href='%s'>
470
- %s
471
- </a>
472
-
473
- <p><a target='_blank' class='wpseo-metabox-go-to' href='%s'>%s</a></p>
474
- </div>",
475
- /* translators: %1$s expands to Yoast SEO Premium. */
476
- sprintf( __( 'You\'re not getting the benefits of %1$s yet. If you had %1$s, you could use its awesome features:', 'wordpress-seo' ), 'Yoast SEO Premium' ),
477
- __( 'Redirect manager', 'wordpress-seo' ),
478
- __( 'Create and manage redirects within your WordPress install.', 'wordpress-seo' ),
479
- __( 'Multiple focus keywords', 'wordpress-seo' ),
480
- __( 'Optimize a single post for up to 5 keywords.', 'wordpress-seo' ),
481
- __( 'Social Previews', 'wordpress-seo' ),
482
- __( 'Check what your Facebook or Twitter post will look like.', 'wordpress-seo' ),
483
- __( 'Premium support', 'wordpress-seo' ),
484
- __( 'Gain access to our 24/7 support team.', 'wordpress-seo' ),
485
- WPSEO_Shortlinker::get( 'https://yoa.st/pe-buy-premium' ),
486
- /* translators: %s expands to Yoast SEO Premium. */
487
- sprintf( __( 'Get %s now!', 'wordpress-seo' ), 'Yoast SEO Premium' ),
488
- WPSEO_Shortlinker::get( 'https://yoa.st/pe-premium-page' ),
489
- __( 'More info', 'wordpress-seo' )
490
- );
491
-
492
- $tab = new WPSEO_Metabox_Form_Tab(
493
- 'premium',
494
- $content,
495
- 'Yoast SEO Premium',
496
- array(
497
- 'single' => true,
498
- )
499
- );
500
-
501
- return new WPSEO_Metabox_Tab_Section(
502
- 'premium',
503
- '<span class="dashicons dashicons-star-filled wpseo-buy-premium"></span>',
504
- array( $tab ),
505
- array(
506
- 'link_aria_label' => 'Yoast SEO Premium',
507
- 'link_class' => 'yoast-tooltip yoast-tooltip-e',
508
- )
509
- );
510
- }
511
-
512
  /**
513
  * Returns a metabox section dedicated to hosting metabox tabs that have been added by other plugins through the
514
  * `wpseo_tab_header` and `wpseo_tab_content` actions.
@@ -595,41 +509,15 @@ class WPSEO_Metabox extends WPSEO_Meta {
595
  $description = '<p id="' . $esc_form_key . '-desc" class="yoast-metabox__description">' . $meta_field_def['description'] . '</p>';
596
  }
597
 
598
- switch ( $meta_field_def['type'] ) {
599
- case 'pageanalysis':
600
- if ( WPSEO_Options::get( 'content_analysis_active' ) === false && WPSEO_Options::get( 'keyword_analysis_active' ) === false ) {
601
- break;
602
- }
603
-
604
- $content .= '<div id="pageanalysis"></div>';
605
- break;
606
- case 'snippetpreview':
607
- $content .= '<div id="wpseosnippet" class="wpseosnippet"></div>';
608
- break;
609
- case 'focuskeyword':
610
- if ( $placeholder !== '' ) {
611
- $placeholder = ' placeholder="' . esc_attr( $placeholder ) . '"';
612
- }
613
-
614
- $content .= '<div id="wpseofocuskeyword">';
615
- $content .= '<section class="yoast-section" id="wpseo-focuskeyword-section">';
616
- $content .= '<h3 class="yoast-section__heading yoast-section__heading-icon yoast-section__heading-icon-key">' . esc_html( $meta_field_def['title'] ) . '</h3>';
617
- $content .= '<label for="' . $esc_form_key . '" class="screen-reader-text">' . esc_html( $meta_field_def['label'] ) . '</label>';
618
- $content .= '<input type="text"' . $placeholder . ' id="' . $esc_form_key . '" autocomplete="off" name="' . $esc_form_key . '" value="' . esc_attr( $meta_value ) . '" class="large-text' . $class . '"/>';
619
 
620
- if ( WPSEO_UTILS::is_yoast_seo_premium() === false ) {
621
- $button = new WPSEO_Metabox_Keyword_Synonyms_Button();
622
- $content .= $button->get_link();
623
- }
624
-
625
- if ( WPSEO_Options::get( 'enable_cornerstone_content', false ) ) {
626
- $cornerstone_field = new WPSEO_Cornerstone_Field();
627
 
628
- $content .= $cornerstone_field->get_html( $this->get_metabox_post() );
629
- }
630
- $content .= '</section>';
631
- $content .= '</div>';
632
- break;
633
  case 'text':
634
  $ac = '';
635
  if ( isset( $meta_field_def['autocomplete'] ) && $meta_field_def['autocomplete'] === false ) {
@@ -749,16 +637,6 @@ class WPSEO_Metabox extends WPSEO_Meta {
749
  $label = '';
750
  }
751
 
752
- // Special meta box sections such as the Snippet Preview, the Analysis, etc.
753
- if ( in_array( $meta_field_def['type'], array(
754
- 'snippetpreview',
755
- 'pageanalysis',
756
- 'focuskeyword',
757
- ), true )
758
- ) {
759
- return $this->create_content_box( $content, $meta_field_def['type'], $help_button, $help_panel );
760
- }
761
-
762
  // Other meta box content or form fields.
763
  if ( $meta_field_def['type'] === 'hidden' ) {
764
  $html = $content;
@@ -771,23 +649,6 @@ class WPSEO_Metabox extends WPSEO_Meta {
771
  return $html;
772
  }
773
 
774
- /**
775
- * Creates a sections specific row.
776
- *
777
- * @param string $content The content to show.
778
- * @param string $hidden_help_name Escaped form key name.
779
- * @param string $help_button The help button.
780
- * @param string $help_panel The help text.
781
- *
782
- * @return string
783
- */
784
- private function create_content_box( $content, $hidden_help_name, $help_button, $help_panel ) {
785
- $html = $content;
786
- $html .= '<div class="wpseo_hidden" id="help-yoast-' . $hidden_help_name . '">' . $help_button . $help_panel . '</div>';
787
-
788
- return $html;
789
- }
790
-
791
  /**
792
  * Save the WP SEO metadata for posts.
793
  *
@@ -912,7 +773,6 @@ class WPSEO_Metabox extends WPSEO_Meta {
912
 
913
  $asset_manager->enqueue_style( 'metabox-css' );
914
  $asset_manager->enqueue_style( 'scoring' );
915
- $asset_manager->enqueue_style( 'snippet' );
916
  $asset_manager->enqueue_style( 'select2' );
917
 
918
  $asset_manager->enqueue_script( 'metabox' );
@@ -936,7 +796,7 @@ class WPSEO_Metabox extends WPSEO_Meta {
936
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'replacevar-plugin', 'wpseoReplaceVarsL10n', $this->localize_replace_vars_script() );
937
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'shortcode-plugin', 'wpseoShortcodePluginL10n', $this->localize_shortcode_plugin_script() );
938
 
939
- wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'metabox', 'wpseoAdminL10n', WPSEO_Help_Center::get_translated_texts() );
940
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'metabox', 'wpseoSelect2Locale', WPSEO_Utils::get_language( WPSEO_Utils::get_user_locale() ) );
941
 
942
  if ( post_type_supports( get_post_type(), 'thumbnail' ) ) {
@@ -1113,54 +973,6 @@ class WPSEO_Metabox extends WPSEO_Meta {
1113
  return $custom_replace_vars;
1114
  }
1115
 
1116
- /**
1117
- * Generic tab.
1118
- */
1119
- public function template_generic_tab() {
1120
- // This template belongs to the post scraper so don't echo it if it isn't enqueued.
1121
- if ( ! wp_script_is( WPSEO_Admin_Asset_Manager::PREFIX . 'post-scraper' ) ) {
1122
- return;
1123
- }
1124
-
1125
- echo '<script type="text/html" id="tmpl-generic_tab">
1126
- <li class="<# if ( data.classes ) { #>{{data.classes}}<# } #><# if ( data.active ) { #> active<# } #>">
1127
- <a class="wpseo_tablink" href="#wpseo_generic" data-score="{{data.score}}">
1128
- <span class="wpseo-score-icon {{data.score}}"></span>
1129
- <span class="wpseo-tab-prefix">{{data.prefix}}</span>
1130
- <span class="wpseo-tab-label">{{data.label}}</span>
1131
- <span class="screen-reader-text wpseo-generic-tab-textual-score">{{data.scoreText}}</span>
1132
- </a>
1133
- <# if ( data.hideable ) { #>
1134
- <button type="button" class="remove-tab" aria-label="{{data.removeLabel}}"><span>x</span></button>
1135
- <# } #>
1136
- </li>
1137
- </script>';
1138
- }
1139
-
1140
- /**
1141
- * Keyword tab for enabling analysis of multiple keywords.
1142
- */
1143
- public function template_keyword_tab() {
1144
- // This template belongs to the post scraper so don't echo it if it isn't enqueued.
1145
- if ( ! wp_script_is( WPSEO_Admin_Asset_Manager::PREFIX . 'post-scraper' ) ) {
1146
- return;
1147
- }
1148
-
1149
- echo '<script type="text/html" id="tmpl-keyword_tab">
1150
- <li class="<# if ( data.classes ) { #>{{data.classes}}<# } #><# if ( data.active ) { #> active<# } #>">
1151
- <a class="wpseo_tablink" href="#wpseo_content" data-keyword="{{data.keyword}}" data-score="{{data.score}}">
1152
- <span class="wpseo-score-icon {{data.score}}"></span>
1153
- <span class="wpseo-tab-prefix">{{data.prefix}}</span>
1154
- <em class="wpseo-keyword">{{data.label}}</em>
1155
- <span class="screen-reader-text wpseo-keyword-tab-textual-score">{{data.scoreText}}</span>
1156
- </a>
1157
- <# if ( data.hideable ) { #>
1158
- <button type="button" class="remove-keyword" aria-label="{{data.removeLabel}}"><span>x</span></button>
1159
- <# } #>
1160
- </li>
1161
- </script>';
1162
- }
1163
-
1164
  /**
1165
  * @param string $page The page to check for the post overview page.
1166
  *
37
  add_action( 'post_submitbox_start', array( $this, 'publish_box' ) );
38
  add_action( 'admin_init', array( $this, 'setup_page_analysis' ) );
39
  add_action( 'admin_init', array( $this, 'translate_meta_boxes' ) );
 
 
40
 
41
  // Check if one of the social settings is checked in the options, if so, initialize the social_admin object.
42
  if ( WPSEO_Options::get( 'opengraph', false ) || WPSEO_Options::get( 'twitter', false ) ) {
57
  * the main meta box definition array in the class WPSEO_Meta() as well!!!!
58
  */
59
  public static function translate_meta_boxes() {
 
 
 
 
 
 
 
 
 
 
 
 
 
60
  self::$meta_fields['general']['title']['title'] = __( 'SEO title', 'wordpress-seo' );
61
 
62
  self::$meta_fields['general']['metadesc']['title'] = __( 'Meta description', 'wordpress-seo' );
263
  }
264
 
265
  /**
266
+ * Pass some variables to js for the edit / post page overview, etc.
267
  *
268
  * @return array
269
  */
326
  echo '</div>';
327
  }
328
 
329
+ /**
330
+ * Determines whether the React section should be rendered.
331
+ *
332
+ * @param string $section_name The name of the section.
333
+ *
334
+ * @return bool Whether the React section should be rendered.
335
+ */
336
+ private function should_load_react_section( $section_name ) {
337
+ return $section_name === 'content';
338
+ }
339
+
340
  /**
341
  * Returns the relevant metabox sections for the current view.
342
  *
356
  $content_sections[] = $this->get_advanced_meta_section();
357
  }
358
 
 
 
 
 
359
  if ( has_action( 'wpseo_tab_header' ) || has_action( 'wpseo_tab_content' ) ) {
360
  $content_sections[] = $this->get_addons_meta_section();
361
  }
371
  private function get_content_meta_section() {
372
  $content = $this->get_tab_content( 'general' );
373
 
374
+ return new WPSEO_Metabox_Section_React(
 
 
 
 
 
 
 
 
 
 
 
 
 
375
  'content',
376
  '<span class="screen-reader-text">' . __( 'Content optimization', 'wordpress-seo' ) . '</span><span class="yst-traffic-light-container">' . WPSEO_Utils::traffic_light_svg() . '</span>',
377
+ $content,
378
  array(
379
  'link_aria_label' => __( 'Content optimization', 'wordpress-seo' ),
380
  'link_class' => 'yoast-tooltip yoast-tooltip-e',
416
  * @return string
417
  */
418
  private function get_buy_premium_link() {
419
+ return sprintf( '<div class="%1$s"><a target="_blank" rel="noopener noreferrer" href="%2$s" class="wpseo-meta-section-link"><span class="dashicons dashicons-star-filled wpseo-buy-premium"></span>%3$s</a></div>',
420
  'wpseo-metabox-buy-premium',
421
+ esc_url( WPSEO_Shortlinker::get( 'https://yoa.st/pe-premium-page' ) ),
422
  __( 'Go Premium', 'wordpress-seo' )
423
  );
424
  }
425
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
426
  /**
427
  * Returns a metabox section dedicated to hosting metabox tabs that have been added by other plugins through the
428
  * `wpseo_tab_header` and `wpseo_tab_content` actions.
509
  $description = '<p id="' . $esc_form_key . '-desc" class="yoast-metabox__description">' . $meta_field_def['description'] . '</p>';
510
  }
511
 
512
+ if ( WPSEO_Utils::is_yoast_seo_premium() === false ) {
513
+ $button = new WPSEO_Metabox_Keyword_Synonyms_Config();
514
+ $button->enqueue_translations();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
515
 
516
+ $multiple_keywords_button = new WPSEO_Metabox_Multiple_Keywords_Config();
517
+ $multiple_keywords_button->enqueue_translations();
518
+ }
 
 
 
 
519
 
520
+ switch ( $meta_field_def['type'] ) {
 
 
 
 
521
  case 'text':
522
  $ac = '';
523
  if ( isset( $meta_field_def['autocomplete'] ) && $meta_field_def['autocomplete'] === false ) {
637
  $label = '';
638
  }
639
 
 
 
 
 
 
 
 
 
 
 
640
  // Other meta box content or form fields.
641
  if ( $meta_field_def['type'] === 'hidden' ) {
642
  $html = $content;
649
  return $html;
650
  }
651
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
652
  /**
653
  * Save the WP SEO metadata for posts.
654
  *
773
 
774
  $asset_manager->enqueue_style( 'metabox-css' );
775
  $asset_manager->enqueue_style( 'scoring' );
 
776
  $asset_manager->enqueue_style( 'select2' );
777
 
778
  $asset_manager->enqueue_script( 'metabox' );
796
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'replacevar-plugin', 'wpseoReplaceVarsL10n', $this->localize_replace_vars_script() );
797
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'shortcode-plugin', 'wpseoShortcodePluginL10n', $this->localize_shortcode_plugin_script() );
798
 
799
+ wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'metabox', 'wpseoAdminL10n', WPSEO_Utils::get_admin_l10n() );
800
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'metabox', 'wpseoSelect2Locale', WPSEO_Utils::get_language( WPSEO_Utils::get_user_locale() ) );
801
 
802
  if ( post_type_supports( get_post_type(), 'thumbnail' ) ) {
973
  return $custom_replace_vars;
974
  }
975
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
976
  /**
977
  * @param string $page The page to check for the post overview page.
978
  *
admin/pages/network.php CHANGED
@@ -12,144 +12,11 @@ if ( ! defined( 'WPSEO_VERSION' ) ) {
12
  }
13
 
14
  $yform = Yoast_Form::get_instance();
 
15
 
16
- $options = get_site_option( 'wpseo_ms' );
 
 
 
17
 
18
- if ( isset( $_POST['wpseo_submit'] ) ) {
19
- check_admin_referer( 'wpseo-network-settings' );
20
-
21
- foreach ( array( 'access', 'defaultblog' ) as $opt ) {
22
- $options[ $opt ] = $_POST['wpseo_ms'][ $opt ];
23
- }
24
- unset( $opt );
25
- WPSEO_Options::update_site_option( 'wpseo_ms', $options );
26
- add_settings_error( 'wpseo_ms', 'settings_updated', __( 'Settings Updated.', 'wordpress-seo' ), 'updated' );
27
- }
28
-
29
- if ( isset( $_POST['wpseo_restore_blog'] ) ) {
30
- check_admin_referer( 'wpseo-network-restore' );
31
- if ( isset( $_POST['wpseo_ms']['restoreblog'] ) && is_numeric( $_POST['wpseo_ms']['restoreblog'] ) ) {
32
- $restoreblog = (int) WPSEO_Utils::validate_int( $_POST['wpseo_ms']['restoreblog'] );
33
- $blog = get_blog_details( $restoreblog );
34
-
35
- if ( $blog ) {
36
- WPSEO_Options::reset_ms_blog( $restoreblog );
37
- /* translators: %s expands to the name of a blog within a multi-site network. */
38
- add_settings_error( 'wpseo_ms', 'settings_updated', sprintf( __( '%s restored to default SEO settings.', 'wordpress-seo' ), esc_html( $blog->blogname ) ), 'updated' );
39
- }
40
- else {
41
- /* translators: %s expands to the ID of a blog within a multi-site network. */
42
- add_settings_error( 'wpseo_ms', 'settings_updated', sprintf( __( 'Blog %s not found.', 'wordpress-seo' ), esc_html( $restoreblog ) ), 'error' );
43
- }
44
- unset( $restoreblog, $blog );
45
- }
46
- }
47
-
48
- /* Set up selectbox dropdowns for smaller networks (usability) */
49
- $use_dropdown = true;
50
- if ( get_blog_count() > 100 ) {
51
- $use_dropdown = false;
52
- }
53
- else {
54
-
55
- $sites = array_map( 'get_object_vars', get_sites( array( 'deleted' => 0 ) ) );
56
-
57
- if ( is_array( $sites ) && $sites !== array() ) {
58
- $dropdown_input = array(
59
- '-' => __( 'None', 'wordpress-seo' ),
60
- );
61
-
62
- foreach ( $sites as $site ) {
63
- $dropdown_input[ $site['blog_id'] ] = $site['blog_id'] . ': ' . $site['domain'];
64
-
65
- $blog_states = array();
66
- if ( $site['public'] === '1' ) {
67
- $blog_states[] = __( 'public', 'wordpress-seo' );
68
- }
69
- if ( $site['archived'] === '1' ) {
70
- $blog_states[] = __( 'archived', 'wordpress-seo' );
71
- }
72
- if ( $site['mature'] === '1' ) {
73
- $blog_states[] = __( 'mature', 'wordpress-seo' );
74
- }
75
- if ( $site['spam'] === '1' ) {
76
- $blog_states[] = __( 'spam', 'wordpress-seo' );
77
- }
78
- if ( $blog_states !== array() ) {
79
- $dropdown_input[ $site['blog_id'] ] .= ' [' . implode( ', ', $blog_states ) . ']';
80
- }
81
- }
82
- unset( $site, $blog_states );
83
- }
84
- else {
85
- $use_dropdown = false;
86
- }
87
- unset( $sites );
88
- }
89
-
90
- $yform->admin_header( false, 'wpseo_ms' );
91
-
92
- echo '<h2>', esc_html__( 'MultiSite Settings', 'wordpress-seo' ), '</h2>';
93
- echo '<form method="post" accept-charset="', esc_attr( get_bloginfo( 'charset' ) ), '">';
94
- wp_nonce_field( 'wpseo-network-settings', '_wpnonce', true, true );
95
-
96
- /* {@internal Important: Make sure the options added to the array here are in line with the options set in the WPSEO_Option_MS::$allowed_access_options property.}} */
97
- $yform->select(
98
- 'access',
99
- /* translators: %1$s expands to Yoast SEO */
100
- sprintf( __( 'Who should have access to the %1$s settings', 'wordpress-seo' ), 'Yoast SEO' ),
101
- array(
102
- 'admin' => __( 'Site Admins (default)', 'wordpress-seo' ),
103
- 'superadmin' => __( 'Super Admins only', 'wordpress-seo' ),
104
- ),
105
- 'wpseo_ms'
106
- );
107
-
108
- if ( $use_dropdown === true ) {
109
- $yform->select(
110
- 'defaultblog',
111
- __( 'New sites in the network inherit their SEO settings from this site', 'wordpress-seo' ),
112
- $dropdown_input,
113
- 'wpseo_ms'
114
- );
115
- echo '<p>' . esc_html__( 'Choose the site whose settings you want to use as default for all sites that are added to your network. If you choose \'None\', the normal plugin defaults will be used.', 'wordpress-seo' ) . '</p>';
116
- }
117
- else {
118
- $yform->textinput( 'defaultblog', __( 'New sites in the network inherit their SEO settings from this site', 'wordpress-seo' ), 'wpseo_ms' );
119
- echo '<p>';
120
- printf(
121
- /* translators: 1: link open tag; 2: link close tag. */
122
- esc_html__( 'Enter the %1$sSite ID%2$s for the site whose settings you want to use as default for all sites that are added to your network. Leave empty for none (i.e. the normal plugin defaults will be used).', 'wordpress-seo' ),
123
- '<a href="' . esc_url( network_admin_url( 'sites.php' ) ) . '">',
124
- '</a>'
125
- );
126
- echo '</p>';
127
- }
128
- echo '<p><strong>' . esc_html__( 'Take note:', 'wordpress-seo' ) . '</strong> ' . esc_html__( 'Privacy sensitive (FB admins and such), theme specific (title rewrite) and a few very site specific settings will not be imported to new blogs.', 'wordpress-seo' ) . '</p>';
129
-
130
-
131
- echo '<input type="submit" name="wpseo_submit" class="button button-primary" value="' . esc_attr__( 'Save MultiSite Settings', 'wordpress-seo' ) . '"/>';
132
- echo '</form>';
133
-
134
- echo '<h2>' . esc_html__( 'Restore site to default settings', 'wordpress-seo' ) . '</h2>';
135
- echo '<form method="post" accept-charset="' . esc_attr( get_bloginfo( 'charset' ) ) . '">';
136
- wp_nonce_field( 'wpseo-network-restore', '_wpnonce', true, true );
137
- echo '<p>' . esc_html__( 'Using this form you can reset a site to the default SEO settings.', 'wordpress-seo' ) . '</p>';
138
-
139
- if ( $use_dropdown === true ) {
140
- unset( $dropdown_input['-'] );
141
- $yform->select(
142
- 'restoreblog',
143
- __( 'Site ID', 'wordpress-seo' ),
144
- $dropdown_input,
145
- 'wpseo_ms'
146
- );
147
- }
148
- else {
149
- $yform->textinput( 'restoreblog', __( 'Blog ID', 'wordpress-seo' ), 'wpseo_ms' );
150
- }
151
-
152
- echo '<input type="submit" name="wpseo_restore_blog" value="' . esc_attr__( 'Restore site to defaults', 'wordpress-seo' ) . '" class="button"/>';
153
- echo '</form>';
154
-
155
- $yform->admin_footer( false );
12
  }
13
 
14
  $yform = Yoast_Form::get_instance();
15
+ $yform->admin_header( true, 'wpseo_ms' );
16
 
17
+ $tabs = new WPSEO_Option_Tabs( 'network' );
18
+ $tabs->add_tab( new WPSEO_Option_Tab( 'general', __( 'General', 'wordpress-seo' ) ) );
19
+ $tabs->add_tab( new WPSEO_Option_Tab( 'restore-site', __( 'Restore Site', 'wordpress-seo' ), array( 'save_button' => false ) ) );
20
+ $tabs->display( $yform );
21
 
22
+ $yform->admin_footer();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/taxonomy/class-taxonomy-content-fields.php CHANGED
@@ -17,31 +17,6 @@ class WPSEO_Taxonomy_Content_Fields extends WPSEO_Taxonomy_Fields {
17
  */
18
  public function get() {
19
  $fields = array(
20
- 'snippet' => $this->get_field_config(
21
- __( 'Snippet editor', 'wordpress-seo' ),
22
- '',
23
- 'snippetpreview'
24
- ),
25
- 'focuskw' => $this->get_field_config(
26
- __( 'Focus keyword', 'wordpress-seo' ),
27
- '',
28
- 'focuskeyword',
29
- array(
30
- 'help-button' => __( 'Show information about the focus keyword', 'wordpress-seo' ),
31
- /* translators: 1: link open tag; 2: link close tag. */
32
- 'help' => sprintf( __( 'Pick the main keyword or keyphrase that this post/page is about. %1$sLearn more about the Focus Keyword%2$s.', 'wordpress-seo' ), '<a target="_blank" href="' . WPSEO_Shortlinker::get( 'https://yoa.st/focus-keyword' ) . '">', '</a>' ),
33
- )
34
- ),
35
- 'analysis' => $this->get_field_config(
36
- __( 'Analysis', 'wordpress-seo' ),
37
- '',
38
- 'pageanalysis',
39
- array(
40
- 'help-button' => __( 'Show information about the content analysis', 'wordpress-seo' ),
41
- /* translators: 1: link open tag; 2: link close tag. */
42
- 'help' => sprintf( __( 'This is the content analysis, a collection of content checks that analyze the content of your page. %1$sLearn more about the Content Analysis Tool%2$s.', 'wordpress-seo' ), '<a target="_blank" href="' . WPSEO_Shortlinker::get( 'https://yoa.st/content-analysis' ) . '">', '</a>' ),
43
- )
44
- ),
45
  'title' => $this->get_field_config(
46
  '',
47
  '',
@@ -66,6 +41,12 @@ class WPSEO_Taxonomy_Content_Fields extends WPSEO_Taxonomy_Fields {
66
  'hidden',
67
  ''
68
  ),
 
 
 
 
 
 
69
  );
70
 
71
  return $this->filter_hidden_fields( $fields );
17
  */
18
  public function get() {
19
  $fields = array(
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20
  'title' => $this->get_field_config(
21
  '',
22
  '',
41
  'hidden',
42
  ''
43
  ),
44
+ 'focuskw' => $this->get_field_config(
45
+ '',
46
+ '',
47
+ 'hidden',
48
+ ''
49
+ ),
50
  );
51
 
52
  return $this->filter_hidden_fields( $fields );
admin/taxonomy/class-taxonomy-fields-presenter.php CHANGED
@@ -58,10 +58,6 @@ class WPSEO_Taxonomy_Fields_Presenter {
58
  $help_button_text = isset( $field_configuration['options']['help-button'] ) ? $field_configuration['options']['help-button'] : '';
59
  $help = new WPSEO_Admin_Help_Panel( $field_name, $help_button_text, $help_content );
60
 
61
- if ( in_array( $field_configuration['type'], array( 'focuskeyword', 'pageanalysis', 'snippetpreview' ), true ) ) {
62
- return $this->parse_section_row( $field, $field_configuration['type'], $help );
63
- }
64
-
65
  return $this->parse_row( $label, $help, $field );
66
  }
67
 
@@ -92,25 +88,6 @@ class WPSEO_Taxonomy_Fields_Presenter {
92
  $field .= '<div id="' . $field_name . '"></div>';
93
  break;
94
 
95
- case 'snippetpreview':
96
- $field .= '<div id="wpseosnippet" class="wpseosnippet"></div>';
97
- break;
98
- case 'pageanalysis':
99
- if ( WPSEO_Options::get( 'content_analysis_active', true ) === false && WPSEO_Options::get( 'keyword_analysis_active', true ) === false ) {
100
- break;
101
- }
102
-
103
- $field .= '<div id="pageanalysis"></div>';
104
- break;
105
- case 'focuskeyword':
106
- $field .= '<div id="wpseofocuskeyword">';
107
- $field .= '<section class="yoast-section" id="wpseo-focuskeyword-section">';
108
- $field .= '<h3 class="yoast-section__heading yoast-section__heading-icon yoast-section__heading-icon-key">' . __( 'Focus keyword', 'wordpress-seo' ) . '</h3>';
109
- $field .= '<label for="' . $field_name . '" class="screen-reader-text">' . __( 'Enter a focus keyword', 'wordpress-seo' ) . '</label>';
110
- $field .= '<input type="text" id="' . $field_name . '" autocomplete="off" name="' . $field_name . '" value="' . esc_attr( $field_value ) . '" class="large-text' . $class . '"/><br />';
111
- $field .= '</section>';
112
- $field .= '</div>';
113
- break;
114
  case 'text':
115
  $field .= '<input name="' . $field_name . '" id="' . $field_name . '" ' . $class . ' type="text" value="' . esc_attr( $field_value ) . '" size="40"' . $aria_describedby . '/>';
116
  break;
@@ -213,19 +190,4 @@ class WPSEO_Taxonomy_Fields_Presenter {
213
 
214
  return $field;
215
  }
216
-
217
- /**
218
- * Creates a sections specific row.
219
- *
220
- * @param string $content The content to show.
221
- * @param string $esc_form_key Escaped form key name.
222
- * @param WPSEO_Admin_Help_Panel $help The help button.
223
- *
224
- * @return string
225
- */
226
- private function parse_section_row( $content, $esc_form_key, WPSEO_Admin_Help_Panel $help ) {
227
- $html = $content;
228
- $html .= '<div class="wpseo_hidden" id="help-yoast-' . $esc_form_key . '">' . $help->get_button_html() . $help->get_panel_html() . '</div>';
229
- return $html;
230
- }
231
  }
58
  $help_button_text = isset( $field_configuration['options']['help-button'] ) ? $field_configuration['options']['help-button'] : '';
59
  $help = new WPSEO_Admin_Help_Panel( $field_name, $help_button_text, $help_content );
60
 
 
 
 
 
61
  return $this->parse_row( $label, $help, $field );
62
  }
63
 
88
  $field .= '<div id="' . $field_name . '"></div>';
89
  break;
90
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
91
  case 'text':
92
  $field .= '<input name="' . $field_name . '" id="' . $field_name . '" ' . $class . ' type="text" value="' . esc_attr( $field_value ) . '" size="40"' . $aria_describedby . '/>';
93
  break;
190
 
191
  return $field;
192
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
193
  }
admin/taxonomy/class-taxonomy-metabox.php CHANGED
@@ -45,9 +45,6 @@ class WPSEO_Taxonomy_Metabox {
45
  $this->term = $term;
46
  $this->taxonomy = $taxonomy;
47
  $this->taxonomy_tab_content = new WPSEO_Taxonomy_Fields_Presenter( $this->term );
48
-
49
- add_action( 'admin_footer', array( $this, 'template_generic_tab' ) );
50
- add_action( 'admin_footer', array( $this, 'template_keyword_tab' ) );
51
  }
52
 
53
  /**
@@ -82,6 +79,7 @@ class WPSEO_Taxonomy_Metabox {
82
  echo $this->get_buy_premium_link();
83
  }
84
 
 
85
  echo '<div class="wpseo-metabox-sidebar"><ul>';
86
 
87
  foreach ( $content_sections as $content_section ) {
@@ -97,7 +95,9 @@ class WPSEO_Taxonomy_Metabox {
97
  foreach ( $content_sections as $content_section ) {
98
  $content_section->display_content();
99
  }
 
100
  echo '</div></div>';
 
101
  }
102
 
103
  /**
@@ -129,19 +129,11 @@ class WPSEO_Taxonomy_Metabox {
129
  $taxonomy_content_fields = new WPSEO_Taxonomy_Content_Fields( $this->term );
130
  $content = $this->taxonomy_tab_content->html( $taxonomy_content_fields->get( $this->term ) );
131
 
132
- $tab = new WPSEO_Metabox_Form_Tab(
133
- 'content',
134
- $content,
135
- '',
136
- array(
137
- 'tab_class' => 'yoast-seo__remove-tab',
138
- )
139
- );
140
 
141
- return new WPSEO_Metabox_Tab_Section(
142
  'content',
143
  '<span class="screen-reader-text">' . __( 'Content optimization', 'wordpress-seo' ) . '</span><span class="yst-traffic-light-container">' . WPSEO_Utils::traffic_light_svg() . '</span>',
144
- array( $tab ),
145
  array(
146
  'link_aria_label' => __( 'Content optimization', 'wordpress-seo' ),
147
  'link_class' => 'yoast-tooltip yoast-tooltip-e',
@@ -319,52 +311,4 @@ class WPSEO_Taxonomy_Metabox {
319
  )
320
  );
321
  }
322
-
323
- /**
324
- * Generic tab.
325
- */
326
- public function template_generic_tab() {
327
- // This template belongs to the post scraper so don't echo it if it isn't enqueued.
328
- if ( ! wp_script_is( WPSEO_Admin_Asset_Manager::PREFIX . 'term-scraper' ) ) {
329
- return;
330
- }
331
-
332
- echo '<script type="text/html" id="tmpl-generic_tab">
333
- <li class="<# if ( data.classes ) { #>{{data.classes}}<# } #><# if ( data.active ) { #> active<# } #>">
334
- <a class="wpseo_tablink" href="#wpseo_generic" data-score="{{data.score}}">
335
- <span class="wpseo-score-icon {{data.score}}"></span>
336
- <span class="wpseo-tab-prefix">{{data.prefix}}</span>
337
- <span class="wpseo-tab-label">{{data.label}}</span>
338
- <span class="screen-reader-text wpseo-generic-tab-textual-score">{{data.scoreText}}</span>
339
- </a>
340
- <# if ( data.hideable ) { #>
341
- <button type="button" class="remove-tab" aria-label="{{data.removeLabel}}"><span>x</span></button>
342
- <# } #>
343
- </li>
344
- </script>';
345
- }
346
-
347
- /**
348
- * Keyword tab for enabling analysis of multiple keywords.
349
- */
350
- public function template_keyword_tab() {
351
- // This template belongs to the term scraper so don't echo it if it isn't enqueued.
352
- if ( ! wp_script_is( WPSEO_Admin_Asset_Manager::PREFIX . 'term-scraper' ) ) {
353
- return;
354
- }
355
-
356
- echo '<script type="text/html" id="tmpl-keyword_tab">
357
- <li class="<# if ( data.classes ) { #>{{data.classes}}<# } #><# if ( data.active ) { #> active<# } #>">
358
- <a class="wpseo_tablink" href="#wpseo_content" data-keyword="{{data.keyword}}" data-score="{{data.score}}">
359
- <span class="wpseo-score-icon {{data.score}}"></span>
360
- <span class="wpseo-tab-prefix">{{data.prefix}}</span>
361
- <em class="wpseo-keyword">{{data.label}}</em>
362
- <span class="screen-reader-text wpseo-keyword-tab-textual-score">{{data.scoreText}}</span>
363
- </a>
364
- <# if ( data.hideable ) { #>
365
- <button type="button" class="remove-keyword" aria-label="{{data.removeLabel}}"><span>x</span></button>
366
- <# } #>
367
- </li>
368
- </script>';
369
- }
370
  }
45
  $this->term = $term;
46
  $this->taxonomy = $taxonomy;
47
  $this->taxonomy_tab_content = new WPSEO_Taxonomy_Fields_Presenter( $this->term );
 
 
 
48
  }
49
 
50
  /**
79
  echo $this->get_buy_premium_link();
80
  }
81
 
82
+ echo '<div class="wpseo-metabox-content">';
83
  echo '<div class="wpseo-metabox-sidebar"><ul>';
84
 
85
  foreach ( $content_sections as $content_section ) {
95
  foreach ( $content_sections as $content_section ) {
96
  $content_section->display_content();
97
  }
98
+
99
  echo '</div></div>';
100
+ echo '</div>';
101
  }
102
 
103
  /**
129
  $taxonomy_content_fields = new WPSEO_Taxonomy_Content_Fields( $this->term );
130
  $content = $this->taxonomy_tab_content->html( $taxonomy_content_fields->get( $this->term ) );
131
 
 
 
 
 
 
 
 
 
132
 
133
+ return new WPSEO_Metabox_Section_React(
134
  'content',
135
  '<span class="screen-reader-text">' . __( 'Content optimization', 'wordpress-seo' ) . '</span><span class="yst-traffic-light-container">' . WPSEO_Utils::traffic_light_svg() . '</span>',
136
+ $content,
137
  array(
138
  'link_aria_label' => __( 'Content optimization', 'wordpress-seo' ),
139
  'link_class' => 'yoast-tooltip yoast-tooltip-e',
311
  )
312
  );
313
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
314
  }
admin/taxonomy/class-taxonomy.php CHANGED
@@ -100,7 +100,6 @@ class WPSEO_Taxonomy {
100
  wp_enqueue_media(); // Enqueue files needed for upload functionality.
101
 
102
  $asset_manager->enqueue_style( 'metabox-css' );
103
- $asset_manager->enqueue_style( 'snippet' );
104
  $asset_manager->enqueue_style( 'scoring' );
105
  $asset_manager->enqueue_script( 'metabox' );
106
  $asset_manager->enqueue_script( 'term-scraper' );
@@ -116,7 +115,7 @@ class WPSEO_Taxonomy {
116
 
117
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'replacevar-plugin', 'wpseoReplaceVarsL10n', $this->localize_replace_vars_script() );
118
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'metabox', 'wpseoSelect2Locale', WPSEO_Utils::get_language( WPSEO_Utils::get_user_locale() ) );
119
- wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'metabox', 'wpseoAdminL10n', WPSEO_Help_Center::get_translated_texts() );
120
 
121
  $asset_manager->enqueue_script( 'admin-media' );
122
 
100
  wp_enqueue_media(); // Enqueue files needed for upload functionality.
101
 
102
  $asset_manager->enqueue_style( 'metabox-css' );
 
103
  $asset_manager->enqueue_style( 'scoring' );
104
  $asset_manager->enqueue_script( 'metabox' );
105
  $asset_manager->enqueue_script( 'term-scraper' );
115
 
116
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'replacevar-plugin', 'wpseoReplaceVarsL10n', $this->localize_replace_vars_script() );
117
  wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'metabox', 'wpseoSelect2Locale', WPSEO_Utils::get_language( WPSEO_Utils::get_user_locale() ) );
118
+ wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'metabox', 'wpseoAdminL10n', WPSEO_Utils::get_admin_l10n() );
119
 
120
  $asset_manager->enqueue_script( 'admin-media' );
121
 
admin/views/tabs/network/general.php ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Admin\Views
6
+ */
7
+
8
+ /**
9
+ * @var Yoast_Form $yform
10
+ */
11
+
12
+ if ( ! defined( 'WPSEO_VERSION' ) ) {
13
+ header( 'Status: 403 Forbidden' );
14
+ header( 'HTTP/1.1 403 Forbidden' );
15
+ exit();
16
+ }
17
+
18
+ /* {@internal Important: Make sure the options added to the array here are in line with the options set in the WPSEO_Option_MS::$allowed_access_options property.}} */
19
+ $yform->select(
20
+ 'access',
21
+ /* translators: %1$s expands to Yoast SEO */
22
+ sprintf( __( 'Who should have access to the %1$s settings', 'wordpress-seo' ), 'Yoast SEO' ),
23
+ array(
24
+ 'admin' => __( 'Site Admins (default)', 'wordpress-seo' ),
25
+ 'superadmin' => __( 'Super Admins only', 'wordpress-seo' ),
26
+ )
27
+ );
28
+
29
+ if ( get_blog_count() <= 100 ) {
30
+ $network_admin = new Yoast_Network_Admin();
31
+
32
+ $yform->select(
33
+ 'defaultblog',
34
+ __( 'New sites in the network inherit their SEO settings from this site', 'wordpress-seo' ),
35
+ $network_admin->get_site_choices( true )
36
+ );
37
+ echo '<p>' . esc_html__( 'Choose the site whose settings you want to use as default for all sites that are added to your network. If you choose \'None\', the normal plugin defaults will be used.', 'wordpress-seo' ) . '</p>';
38
+ }
39
+ else {
40
+ $yform->textinput( 'defaultblog', __( 'New sites in the network inherit their SEO settings from this site', 'wordpress-seo' ) );
41
+ echo '<p>';
42
+ printf(
43
+ /* translators: 1: link open tag; 2: link close tag. */
44
+ esc_html__( 'Enter the %1$sSite ID%2$s for the site whose settings you want to use as default for all sites that are added to your network. Leave empty for none (i.e. the normal plugin defaults will be used).', 'wordpress-seo' ),
45
+ '<a href="' . esc_url( network_admin_url( 'sites.php' ) ) . '">',
46
+ '</a>'
47
+ );
48
+ echo '</p>';
49
+ }
50
+
51
+ echo '<p><strong>' . esc_html__( 'Take note:', 'wordpress-seo' ) . '</strong> ' . esc_html__( 'Privacy sensitive (FB admins and such), theme specific (title rewrite) and a few very site specific settings will not be imported to new sites.', 'wordpress-seo' ) . '</p>';
admin/views/tabs/network/restore-site.php ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO\Admin\Views
6
+ */
7
+
8
+ /**
9
+ * @var Yoast_Form $yform
10
+ */
11
+
12
+ if ( ! defined( 'WPSEO_VERSION' ) ) {
13
+ header( 'Status: 403 Forbidden' );
14
+ header( 'HTTP/1.1 403 Forbidden' );
15
+ exit();
16
+ }
17
+
18
+ echo '<p>' . esc_html__( 'Using this form you can reset a site to the default SEO settings.', 'wordpress-seo' ) . '</p>';
19
+
20
+ if ( get_blog_count() <= 100 ) {
21
+ $network_admin = new Yoast_Network_Admin();
22
+
23
+ $yform->select(
24
+ 'site_id',
25
+ __( 'Site ID', 'wordpress-seo' ),
26
+ $network_admin->get_site_choices()
27
+ );
28
+ }
29
+ else {
30
+ $yform->textinput( 'site_id', __( 'Site ID', 'wordpress-seo' ) );
31
+ }
32
+
33
+ wp_nonce_field( 'wpseo-network-restore', 'restore_site_nonce', false );
34
+ echo '<button type="submit" name="action" value="' . esc_attr( Yoast_Network_Admin::RESTORE_SITE_ACTION ) . '" class="button button-primary">' . esc_html__( 'Restore site to defaults', 'wordpress-seo' ) . '</button>';
css/dist/{admin-global-791-rtl.min.css → admin-global-800-rtl.min.css} RENAMED
File without changes
css/dist/{admin-global-791.min.css → admin-global-800.min.css} RENAMED
File without changes
css/dist/{adminbar-791-rtl.min.css → adminbar-800-rtl.min.css} RENAMED
File without changes
css/dist/{adminbar-791.min.css → adminbar-800.min.css} RENAMED
File without changes
css/dist/{alerts-791-rtl.min.css → alerts-800-rtl.min.css} RENAMED
File without changes
css/dist/{alerts-791.min.css → alerts-800.min.css} RENAMED
File without changes
css/dist/{dashboard-791-rtl.min.css → dashboard-800-rtl.min.css} RENAMED
File without changes
css/dist/{dashboard-791.min.css → dashboard-800.min.css} RENAMED
File without changes
css/dist/{edit-page-791-rtl.min.css → edit-page-800-rtl.min.css} RENAMED
File without changes
css/dist/{edit-page-791.min.css → edit-page-800.min.css} RENAMED
File without changes
css/dist/{featured-image-791-rtl.min.css → featured-image-800-rtl.min.css} RENAMED
File without changes
css/dist/{featured-image-791.min.css → featured-image-800.min.css} RENAMED
File without changes
css/dist/{filter-explanation-791-rtl.min.css → filter-explanation-800-rtl.min.css} RENAMED
File without changes
css/dist/{filter-explanation-791.min.css → filter-explanation-800.min.css} RENAMED
File without changes
css/dist/{inside-editor-791-rtl.min.css → inside-editor-800-rtl.min.css} RENAMED
File without changes
css/dist/{inside-editor-791.min.css → inside-editor-800.min.css} RENAMED
File without changes
css/dist/metabox-791-rtl.min.css DELETED
@@ -1 +0,0 @@
1
- .yoast-section{width:auto;max-width:640px}.snippet_container:after,.snippet_container:before{display:table;content:" "}.snippet_container:after{clear:both}.snippet-editor__view{clear:both;background:#fff}.snippet-editor__view-toggle{display:inline-block;margin-top:10px;margin-right:20px;border:1px solid #dbdbdb;border-radius:4px;background-color:#f7f7f7;vertical-align:top}.snippet-editor__view-icon{float:right;width:31px;height:31px;border:none;border-bottom:4px solid transparent;outline:0;background-color:transparent;background-repeat:no-repeat;background-position:center,center;cursor:pointer}.snippet-editor__view-icon:focus,.snippet-editor__view-icon:hover{border-color:#1074a8;background-color:#fff;transition:.15s color ease-in-out,.15s background-color ease-in-out,.15s border-color ease-in-out}.snippet-editor__view-icon--active{border-color:#555;transition:.15s color ease-in-out,.15s background-color ease-in-out,.15s border-color ease-in-out}.snippet-editor__view-icon.yoast-tooltip:before{bottom:-10px}.snippet-editor__view-icon.yoast-tooltip:after{margin-top:10px}.snippet-editor__view-icon-desktop{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1728%20992v%2D832q0%2D13%2D9%2E5%2D22%2E5t%2D22%2E5%2D9%2E5h%2D1600q%2D13%200%2D22%2E5%209%2E5t%2D9%2E5%2022%2E5v832q0%2013%209%2E5%2022%2E5t22%2E5%209%2E5h1600q13%200%2022%2E5%2D9%2E5t9%2E5%2D22%2E5zm128%2D832v1088q0%2066%2D47%20113t%2D113%2047h%2D544q0%2037%2016%2077%2E5t32%2071%2016%2043%2E5q0%2026%2D19%2045t%2D45%2019h%2D512q%2D26%200%2D45%2D19t%2D19%2D45q0%2D14%2016%2D44t32%2D70%2016%2D78h%2D544q%2D66%200%2D113%2D47t%2D47%2D113v%2D1088q0%2D66%2047%2D113t113%2D47h1600q66%200%20113%2047t47%20113z%22%2F%3E%3C%2Fsvg%3E");background-size:18px}.snippet-editor__view-icon-desktop:focus,.snippet-editor__view-icon-desktop:hover{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231074a8%22%20d%3D%22M1728%20992v%2D832q0%2D13%2D9%2E5%2D22%2E5t%2D22%2E5%2D9%2E5h%2D1600q%2D13%200%2D22%2E5%209%2E5t%2D9%2E5%2022%2E5v832q0%2013%209%2E5%2022%2E5t22%2E5%209%2E5h1600q13%200%2022%2E5%2D9%2E5t9%2E5%2D22%2E5zm128%2D832v1088q0%2066%2D47%20113t%2D113%2047h%2D544q0%2037%2016%2077%2E5t32%2071%2016%2043%2E5q0%2026%2D19%2045t%2D45%2019h%2D512q%2D26%200%2D45%2D19t%2D19%2D45q0%2D14%2016%2D44t32%2D70%2016%2D78h%2D544q%2D66%200%2D113%2D47t%2D47%2D113v%2D1088q0%2D66%2047%2D113t113%2D47h1600q66%200%20113%2047t47%20113z%22%2F%3E%3C%2Fsvg%3E")}.snippet-editor__view-icon-mobile{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M976%201408q0%2D33%2D23%2E5%2D56%2E5t%2D56%2E5%2D23%2E5%2D56%2E5%2023%2E5%2D23%2E5%2056%2E5%2023%2E5%2056%2E5%2056%2E5%2023%2E5%2056%2E5%2D23%2E5%2023%2E5%2D56%2E5zm208%2D160v%2D704q0%2D13%2D9%2E5%2D22%2E5t%2D22%2E5%2D9%2E5h%2D512q%2D13%200%2D22%2E5%209%2E5t%2D9%2E5%2022%2E5v704q0%2013%209%2E5%2022%2E5t22%2E5%209%2E5h512q13%200%2022%2E5%2D9%2E5t9%2E5%2D22%2E5zm%2D192%2D848q0%2D16%2D16%2D16h%2D160q%2D16%200%2D16%2016t16%2016h160q16%200%2016%2D16zm288%2D16v1024q0%2052%2D38%2090t%2D90%2038h%2D512q%2D52%200%2D90%2D38t%2D38%2D90v%2D1024q0%2D52%2038%2D90t90%2D38h512q52%200%2090%2038t38%2090z%22%2F%3E%3C%2Fsvg%3E");background-size:22px}.snippet-editor__view-icon-mobile:focus,.snippet-editor__view-icon-mobile:hover{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231074a8%22%20d%3D%22M976%201408q0%2D33%2D23%2E5%2D56%2E5t%2D56%2E5%2D23%2E5%2D56%2E5%2023%2E5%2D23%2E5%2056%2E5%2023%2E5%2056%2E5%2056%2E5%2023%2E5%2056%2E5%2D23%2E5%2023%2E5%2D56%2E5zm208%2D160v%2D704q0%2D13%2D9%2E5%2D22%2E5t%2D22%2E5%2D9%2E5h%2D512q%2D13%200%2D22%2E5%209%2E5t%2D9%2E5%2022%2E5v704q0%2013%209%2E5%2022%2E5t22%2E5%209%2E5h512q13%200%2022%2E5%2D9%2E5t9%2E5%2D22%2E5zm%2D192%2D848q0%2D16%2D16%2D16h%2D160q%2D16%200%2D16%2016t16%2016h160q16%200%2016%2D16zm288%2D16v1024q0%2052%2D38%2090t%2D90%2038h%2D512q%2D52%200%2D90%2D38t%2D38%2D90v%2D1024q0%2D52%2038%2D90t90%2D38h512q52%200%2090%2038t38%2090z%22%2F%3E%3C%2Fsvg%3E")}.snippet-editor__view--desktop{overflow:auto;width:640px;max-width:100%;padding:0 20px}.snippet-editor__view .snippet_container__title{width:600px;white-space:nowrap}.snippet-editor__view .snippet_container__title .title{display:inline-block;overflow:hidden;max-width:600px;vertical-align:top;text-overflow:ellipsis}.snippet-editor__view .snippet_container__title .title#snippet_sitename{display:inline}.snippet-editor__view .snippet_container__url{width:600px;line-height:1;white-space:nowrap}.snippet-editor__view .snippet_container__url .urlFull{display:inline-block;overflow:hidden;max-width:586px;font-size:14px;line-height:16px;vertical-align:top;text-overflow:ellipsis}.snippet-editor__view .snippet_container .down_arrow{display:inline-block;margin-top:6px;margin-right:6px;border-top:5px solid #006621;border-left:4px solid transparent;border-right:4px solid transparent;vertical-align:top}.snippet-editor__view .snippet_container__meta{width:600px}.snippet-editor__view--mobile{margin:0 20px 10px;padding:11px 0;border-bottom:1px hidden #fff;border-radius:2px;box-shadow:0 1px 2px rgba(0,0,0,.2)}.snippet-editor__view--mobile .snippet_container{display:block;line-height:20px}.snippet-editor__view--mobile .snippet_container__meta,.snippet-editor__view--mobile .snippet_container__title,.snippet-editor__view--mobile .snippet_container__url{box-sizing:border-box;width:100%}.snippet-editor__view--mobile .snippet_container__title{overflow:visible;padding:0 16px;white-space:normal;word-wrap:break-word}.snippet-editor__view--mobile .snippet_container__title .title{font-size:16px;line-height:20px}.snippet-editor__view--mobile .snippet_container__url{margin-bottom:9px;padding:0 16px 9px;border-bottom:1px solid #ebebeb}.snippet-editor__view--mobile .snippet_container__url .urlFull{max-width:100%;font-size:14px;line-height:20px}.snippet-editor__view--mobile .snippet_container .down_arrow{display:none}.snippet-editor__view--mobile .snippet_container__meta{padding:0 16px;font-size:14px;line-height:20px}.snippet-editor__view--mobile .snippet_container .desc{font-size:14px;line-height:20px}.snippet-editor__is-scrollable-hintwrapper{display:none;margin:1em 0 5px;text-align:center}.snippet-editor__view--desktop.snippet-editor__view--desktop-has-scroll+.snippet-editor__is-scrollable-hintwrapper{display:block}.snippet-editor__is-scrollable-hint{display:inline-block}.snippet-editor__is-scrollable-hint:before{display:inline-block;margin-left:10px;font-size:20px;line-height:inherit;vertical-align:text-top;content:"\21c4"}.snippet-editor__container{position:relative;cursor:pointer}.snippet-editor__container.editable-preview__container--no-caret{cursor:auto}.snippet-editor__heading{margin:0 0 15px;padding:8px 20px;color:#555;font-family:"Open Sans",sans-serif;font-size:.9rem;font-weight:300}.snippet-editor__heading-editor{border-top:1px solid #f7f7f7}.snippet-editor__heading-icon{padding-right:45px;background-repeat:no-repeat;background-position:right 20px top .6em;background-size:16px}.snippet-editor__container--focus:before,.snippet-editor__container--focus:hover:before,.snippet-editor__container:hover:before{position:absolute;right:-22px;width:24px;height:24px;background-size:25px;content:"";display:block;top:-3px}.snippet-editor__heading-icon-eye{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1664%20960q%2D152%2D236%2D381%2D353%2061%20104%2061%20225%200%20185%2D131%2E5%20316%2E5t%2D316%2E5%20131%2E5%2D316%2E5%2D131%2E5%2D131%2E5%2D316%2E5q0%2D121%2061%2D225%2D229%20117%2D381%20353%20133%20205%20333%2E5%20326%2E5t434%2E5%20121%2E5%20434%2E5%2D121%2E5%20333%2E5%2D326%2E5zm%2D720%2D384q0%2D20%2D14%2D34t%2D34%2D14q%2D125%200%2D214%2E5%2089%2E5t%2D89%2E5%20214%2E5q0%2020%2014%2034t34%2014%2034%2D14%2014%2D34q0%2D86%2061%2D147t147%2D61q20%200%2034%2D14t14%2D34zm848%20384q0%2034%2D20%2069%2D140%20230%2D376%2E5%20368%2E5t%2D499%2E5%20138%2E5%2D499%2E5%2D139%2D376%2E5%2D368q%2D20%2D35%2D20%2D69t20%2D69q140%2D229%20376%2E5%2D368t499%2E5%2D139%20499%2E5%20139%20376%2E5%20368q20%2035%2020%2069z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__container:hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23bfbfbf%22%20d%3D%22M1152%20896q0%2026%2D19%2045l%2D448%20448q%2D19%2019%2D45%2019t%2D45%2D19%2D19%2D45v%2D896q0%2D26%2019%2D45t45%2D19%2045%2019l448%20448q19%2019%2019%2045z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__container--focus:before,.snippet-editor__container--focus:hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1152%20896q0%2026%2D19%2045l%2D448%20448q%2D19%2019%2D45%2019t%2D45%2D19%2D19%2D45v%2D896q0%2D26%2019%2D45t45%2D19%2045%2019l448%20448q19%2019%2019%2045z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__preview{max-width:640px;padding:0 0 15px}.snippet-editor__preview #help-yoast-snippetpreview{padding:0 20px}.snippet-editor__button{padding:8px 10px;border:1px solid #dbdbdb;border-radius:4px;color:#555;background:#f7f7f7;font-size:.8rem;line-height:15px;cursor:pointer}.snippet-editor__edit-button{display:inline-block;box-sizing:border-box;margin-top:10px;padding-right:32px;background:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M491%201536l91%2D91%2D235%2D235%2D91%2091v107h128v128h107zm523%2D928q0%2D22%2D22%2D22%2D10%200%2D17%207l%2D542%20542q%2D7%207%2D7%2017%200%2022%2022%2022%2010%200%2017%2D7l542%2D542q7%2D7%207%2D17zm%2D54%2D192l416%20416%2D832%20832h%2D416v%2D416zm683%2096q0%2053%2D37%2090l%2D166%20166%2D416%2D416%20166%2D165q36%2D38%2090%2D38%2053%200%2091%2038l235%20234q37%2039%2037%2091z%22%20%2F%3E%3C%2Fsvg%3E") right 8px top 50% no-repeat #f7f7f7;background-size:16px}.snippet-editor__form{padding:20px}.snippet-editor__label{display:block;position:relative;width:100%;margin-top:1em}.snippet-editor__label--focus:before,.snippet-editor__label--hover:before{right:-22px;width:24px;height:24px;background-size:25px;display:block;content:"";position:absolute}.snippet-editor__label:first-child{margin-top:0}.snippet-editor__label--hover:before{top:-3px;top:20px;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23bfbfbf%22%20d%3D%22M1152%20896q0%2026%2D19%2045l%2D448%20448q%2D19%2019%2D45%2019t%2D45%2D19%2D19%2D45v%2D896q0%2D26%2019%2D45t45%2D19%2045%2019l448%20448q19%2019%2019%2045z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__label--focus:before{top:-3px;top:20px;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231074a8%22%20d%3D%22M1152%20896q0%2026%2D19%2045l%2D448%20448q%2D19%2019%2D45%2019t%2D45%2D19%2D19%2D45v%2D896q0%2D26%2019%2D45t45%2D19%2045%2019l448%20448q19%2019%2019%2045z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__input{display:block;box-sizing:border-box;width:100%;max-width:100%;margin-top:5px;border:1px solid #bfbfbf}.snippet-editor__input:focus{border:1px solid #1074a8;outline:0}.rtl .snippet-editor__container:hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23bfbfbf%22%20d%3D%22M1216%20448v896q0%2026%2D19%2045t%2D45%2019%2D45%2D19l%2D448%2D448q%2D19%2D19%2D19%2D45t19%2D45l448%2D448q19%2D19%2045%2D19t45%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E")}.rtl .snippet-editor__container--focus:before,.rtl .snippet-editor__container--focus:hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1216%20448v896q0%2026%2D19%2045t%2D45%2019%2D45%2D19l%2D448%2D448q%2D19%2D19%2D19%2D45t19%2D45l448%2D448q19%2D19%2045%2D19t45%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E")}.rtl .snippet-editor__label--hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23bfbfbf%22%20d%3D%22M1216%20448v896q0%2026%2D19%2045t%2D45%2019%2D45%2D19l%2D448%2D448q%2D19%2D19%2D19%2D45t19%2D45l448%2D448q19%2D19%2045%2D19t45%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E")}.rtl .snippet-editor__label--focus:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231074a8%22%20d%3D%22M1216%20448v896q0%2026%2D19%2045t%2D45%2019%2D45%2D19l%2D448%2D448q%2D19%2D19%2D19%2D45t19%2D45l448%2D448q19%2D19%2045%2D19t45%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E")}.snippet-editor__meta-description{height:84px}.snippet-editor__submit{margin-top:1em}#snippet_cite{min-width:20px}#meta_container{clear:both;min-height:20px}.snippet_container .title{margin:0;color:#1e0fbe;font-size:18px;font-weight:400;line-height:1.2;text-decoration:none}.snippet-editor__date,.snippet_container .desc{font-size:13px;line-height:1.4}.snippet_container .url{color:#006621;font-style:normal}.snippet_container .url strong{font-weight:700}.snippet_container .desc-default{color:#545454}.snippet_container .desc-default strong{color:#6a6a6a;font-weight:700}.snippet_container .desc-render{color:#777}.snippet_container .tooLong{color:red!important}.snippet-editor__field--invalid{color:red}.snippet-editor__progress{display:block;box-sizing:border-box;width:100%;height:8px;margin-top:5px;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.snippet-editor__progress::-webkit-progress-bar{height:8px;border:1px solid #bfbfbf;background-color:#f7f7f7}.snippet-editor__progress--fallback{height:8px;border:1px solid #bfbfbf;background-color:#f7f7f7}.snippet-editor__progress-bar{width:0;max-width:100%;height:100%}.snippet-editor__date{color:grey}.snippet-editor--hidden{display:none}.yoast-measurement-elements-holder{position:absolute;right:-9999em}.snippet-editor__progress--bad[value]{color:#dc3232}.snippet-editor__progress--bad[value]::-webkit-progress-value{background-color:#dc3232;transition:width 250ms}.snippet-editor__progress--bad[value]::-moz-progress-bar{background-color:#dc3232}.snippet-editor__progress--bad[value] .snippet-editor__progress-bar{background-color:#dc3232}.snippet-editor__progress--ok[value]{color:#ee7c1b}.snippet-editor__progress--ok[value]::-webkit-progress-value{background-color:#ee7c1b;transition:width 250ms}.snippet-editor__progress--ok[value]::-moz-progress-bar{background-color:#ee7c1b}.snippet-editor__progress--ok[value] .snippet-editor__progress-bar{background-color:#ee7c1b}.snippet-editor__progress--good[value]{color:#7ad03a}.snippet-editor__progress--good[value]::-webkit-progress-value{background-color:#7ad03a;transition:width 250ms}.snippet-editor__progress--good[value]::-moz-progress-bar{background-color:#7ad03a}.snippet-editor__progress--good[value] .snippet-editor__progress-bar{background-color:#7ad03a}.wpseoanalysis{padding-left:0}.wpseo-score-text{float:right;width:86%;width:calc(100% - 56px)}.assessment-results .wpseo-score-icon{float:right;width:12px;height:12px;margin:3px 0 0 10px;border-radius:50%;background:#888}.wpseo-score-icon.good{background-color:#7ad03a}.wpseo-score-icon.ok{background-color:#ee7c1b}.wpseo-score-icon.bad{background-color:#dc3232}.wpseo-score-icon.na{background-color:#999}.wpseo-score-icon.noindex{background-color:#1e8cbe}li.score{margin-bottom:6px;list-style-type:none!important}li.score:after{display:table;clear:both;content:""}.screen-reader-text{overflow:hidden;clip:rect(1px,1px,1px,1px);position:absolute!important;width:1px;height:1px}.assessment-results{clear:both}.assessment-results__mark.icon-eye-active,.assessment-results__mark.icon-eye-disabled,.assessment-results__mark.icon-eye-inactive{float:right;width:28px;height:28px;margin:-5px 3px 0;padding:4px;border:0;border-radius:100%;outline:0;background:center no-repeat;background-size:16px;cursor:pointer}.assessment-results__mark.icon-eye-inactive{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1664%20960q%2D152%2D236%2D381%2D353%2061%20104%2061%20225%200%20185%2D131%2E5%20316%2E5t%2D316%2E5%20131%2E5%2D316%2E5%2D131%2E5%2D131%2E5%2D316%2E5q0%2D121%2061%2D225%2D229%20117%2D381%20353%20133%20205%20333%2E5%20326%2E5t434%2E5%20121%2E5%20434%2E5%2D121%2E5%20333%2E5%2D326%2E5zm%2D720%2D384q0%2D20%2D14%2D34t%2D34%2D14q%2D125%200%2D214%2E5%2089%2E5t%2D89%2E5%20214%2E5q0%2020%2014%2034t34%2014%2034%2D14%2014%2D34q0%2D86%2061%2D147t147%2D61q20%200%2034%2D14t14%2D34zm848%20384q0%2034%2D20%2069%2D140%20230%2D376%2E5%20368%2E5t%2D499%2E5%20138%2E5%2D499%2E5%2D139%2D376%2E5%2D368q%2D20%2D35%2D20%2D69t20%2D69q140%2D229%20376%2E5%2D368t499%2E5%2D139%20499%2E5%20139%20376%2E5%20368q20%2035%2020%2069z%22%20%2F%3E%3C%2Fsvg%3E")}.assessment-results__mark.icon-eye-active{background-color:#a4286a;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M1664%20960q%2D152%2D236%2D381%2D353%2061%20104%2061%20225%200%20185%2D131%2E5%20316%2E5t%2D316%2E5%20131%2E5%2D316%2E5%2D131%2E5%2D131%2E5%2D316%2E5q0%2D121%2061%2D225%2D229%20117%2D381%20353%20133%20205%20333%2E5%20326%2E5t434%2E5%20121%2E5%20434%2E5%2D121%2E5%20333%2E5%2D326%2E5zm%2D720%2D384q0%2D20%2D14%2D34t%2D34%2D14q%2D125%200%2D214%2E5%2089%2E5t%2D89%2E5%20214%2E5q0%2020%2014%2034t34%2014%2034%2D14%2014%2D34q0%2D86%2061%2D147t147%2D61q20%200%2034%2D14t14%2D34zm848%20384q0%2034%2D20%2069%2D140%20230%2D376%2E5%20368%2E5t%2D499%2E5%20138%2E5%2D499%2E5%2D139%2D376%2E5%2D368q%2D20%2D35%2D20%2D69t20%2D69q140%2D229%20376%2E5%2D368t499%2E5%2D139%20499%2E5%20139%20376%2E5%20368q20%2035%2020%2069z%22%20%2F%3E%3C%2Fsvg%3E")}.assessment-results__mark.icon-eye-disabled{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23e6e6e6%22%20d%3D%22M1664%20960q%2D152%2D236%2D381%2D353%2061%20104%2061%20225%200%20185%2D131%2E5%20316%2E5t%2D316%2E5%20131%2E5%2D316%2E5%2D131%2E5%2D131%2E5%2D316%2E5q0%2D121%2061%2D225%2D229%20117%2D381%20353%20133%20205%20333%2E5%20326%2E5t434%2E5%20121%2E5%20434%2E5%2D121%2E5%20333%2E5%2D326%2E5zm%2D720%2D384q0%2D20%2D14%2D34t%2D34%2D14q%2D125%200%2D214%2E5%2089%2E5t%2D89%2E5%20214%2E5q0%2020%2014%2034t34%2014%2034%2D14%2014%2D34q0%2D86%2061%2D147t147%2D61q20%200%2034%2D14t14%2D34zm848%20384q0%2034%2D20%2069%2D140%20230%2D376%2E5%20368%2E5t%2D499%2E5%20138%2E5%2D499%2E5%2D139%2D376%2E5%2D368q%2D20%2D35%2D20%2D69t20%2D69q140%2D229%20376%2E5%2D368t499%2E5%2D139%20499%2E5%20139%20376%2E5%20368q20%2035%2020%2069z%22%20%2F%3E%3C%2Fsvg%3E")}.assessment-results__mark:focus{border-radius:100%;box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}.assessment-results__mark-container{display:inline-block;float:left;width:33px;min-height:1px}.YoastSEO_msg .left,.YoastSEO_msg .right{display:none}@keyframes animatedBackground{from{background-position:100% 0}to{background-position:0 0}}.YoastSEO_msg .bufferbar{display:block;width:100%;height:12px;margin:10px 0;border:1px solid #dfdfdf;background-image:linear-gradient(to right,#fff,#0063ff,#fff,#0063ff);background-position:100% 0;background-size:300% 100%;animation:animatedBackground 5s linear infinite}.yoast-tooltip{position:relative}button.yoast-tooltip{overflow:visible}.yoast-tooltip::after{display:none;position:absolute;z-index:1000000;padding:6px 8px 5px;border-radius:3px;opacity:0;color:#fff;background:rgba(0,0,0,.8);text-shadow:none;font:normal normal 11px/1.45454545 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";text-align:center;white-space:pre;text-decoration:none;letter-spacing:normal;text-transform:none;word-wrap:break-word;content:attr(aria-label);pointer-events:none;-webkit-font-smoothing:subpixel-antialiased}.yoast-tooltip-alt::after{content:attr(data-label)}.yoast-tooltip::before{display:none;position:absolute;z-index:1000001;width:0;height:0;border:5px solid transparent;opacity:0;color:rgba(0,0,0,.8);content:"\00a0";pointer-events:none}@keyframes yoast-tooltip-appear{from{opacity:0}to{opacity:1}}.yoast-tooltip:active::after,.yoast-tooltip:active::before,.yoast-tooltip:focus::after,.yoast-tooltip:focus::before,.yoast-tooltip:hover::after,.yoast-tooltip:hover::before{display:inline-block;text-decoration:none;animation-name:yoast-tooltip-appear;animation-duration:.1s;animation-timing-function:ease-in;animation-delay:.4s;animation-fill-mode:forwards}.yoast-tooltip-no-delay:active::after,.yoast-tooltip-no-delay:active::before,.yoast-tooltip-no-delay:focus::after,.yoast-tooltip-no-delay:focus::before,.yoast-tooltip-no-delay:hover::after,.yoast-tooltip-no-delay:hover::before{opacity:1;animation:none}.yoast-tooltip-multiline:active::after,.yoast-tooltip-multiline:focus::after,.yoast-tooltip-multiline:hover::after{display:table-cell}.yoast-tooltip-s::after,.yoast-tooltip-se::after,.yoast-tooltip-sw::after{top:100%;left:50%;margin-top:5px}.yoast-tooltip-s::before,.yoast-tooltip-se::before,.yoast-tooltip-sw::before{top:auto;left:50%;bottom:-5px;margin-left:-5px;border-bottom-color:rgba(0,0,0,.8)}.yoast-tooltip-se::after{left:auto;right:50%;margin-right:-15px}.yoast-tooltip-sw::after{margin-left:-15px}.yoast-tooltip-n::after,.yoast-tooltip-ne::after,.yoast-tooltip-nw::after{left:50%;bottom:100%;margin-bottom:5px}.yoast-tooltip-n::before,.yoast-tooltip-ne::before,.yoast-tooltip-nw::before{top:-5px;left:50%;bottom:auto;margin-left:-5px;border-top-color:rgba(0,0,0,.8)}.yoast-tooltip-ne::after{left:auto;right:50%;margin-right:-15px}.yoast-tooltip-nw::after{margin-left:-15px}.yoast-tooltip-n::after,.yoast-tooltip-s::after{-ms-transform:translateX(-50%);transform:translateX(-50%)}.yoast-tooltip-w::after{left:100%;bottom:50%;margin-left:5px;-ms-transform:translateY(50%);transform:translateY(50%)}.yoast-tooltip-w::before{top:50%;bottom:50%;right:-5px;margin-top:-5px;border-right-color:rgba(0,0,0,.8)}.yoast-tooltip-e::after{bottom:50%;right:100%;margin-right:5px;-ms-transform:translateY(50%);transform:translateY(50%)}.yoast-tooltip-e::before{top:50%;left:-5px;bottom:50%;margin-top:-5px;border-left-color:rgba(0,0,0,.8)}.yoast-tooltip-multiline::after{width:250px;width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:250px;border-collapse:separate;white-space:pre-line;word-wrap:normal;word-break:break-word}.yoast-tooltip-multiline.yoast-tooltip-n::after,.yoast-tooltip-multiline.yoast-tooltip-s::after{left:auto;right:50%;-ms-transform:translateX(50%);transform:translateX(50%)}.yoast-tooltip-multiline.yoast-tooltip-e::after,.yoast-tooltip-multiline.yoast-tooltip-w::after{left:100%}@media screen and (min-width:0\0){.yoast-tooltip-multiline::after{width:250px}}.yoast-tooltip-sticky::after,.yoast-tooltip-sticky::before{display:inline-block}.yoast-tooltip-sticky.yoast-tooltip-multiline::after{display:table-cell}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min--moz-device-pixel-ratio:2),only screen and (-moz-min-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2),only screen and (min-resolution:192dpi),only screen and (min-resolution:2dppx){.yoast-tooltip-w::after{margin-left:4.5px}}.postbox .yoast-help-center__button{min-height:0;margin:0;padding:8px 0;border:none;color:#0073aa;box-shadow:none;font:inherit;text-decoration:underline;text-transform:none}.wpseotab label,.wpseotab legend{font-weight:600}.postbox .yoast-help-center__button svg{margin:0 13px}#edittag .yoast-video-tutorial__video-container{float:none;max-width:100%;margin:0 auto}#edittag .yoast-video-tutorial__descriptions{margin:0 auto;padding:0}@media screen and (max-width:1480px){#poststuff .yoast-video-tutorial__video-container{float:none;max-width:100%;margin:0 auto}#poststuff .yoast-video-tutorial__descriptions{margin:0 auto;padding:0}}.wpseo-metabox #yoast-help-center-container{margin:8px 0}.draftJsMentionPlugin__mention__29BEd,.draftJsMentionPlugin__mention__29BEd:visited{display:inline-block;padding-left:2px;padding-right:2px;border-radius:2px;color:#575f67;background:#e6f3ff;text-decoration:none;cursor:pointer}.draftJsMentionPlugin__mention__29BEd:focus,.draftJsMentionPlugin__mention__29BEd:hover{outline:0;color:#677584;background:#edf5fd}.draftJsMentionPlugin__mention__29BEd:active{color:#222;background:#455261}.draftJsMentionPlugin__mentionSuggestionsEntry__3mSwm{padding:7px 10px 3px;transition:background-color .4s cubic-bezier(.27,1.27,.48,.56)}.draftJsMentionPlugin__mentionSuggestionsEntry__3mSwm:active{background-color:#cce7ff}.draftJsMentionPlugin__mentionSuggestionsEntryFocused__3LcTd{background-color:#e6f3ff}.draftJsMentionPlugin__mentionSuggestionsEntryText__3Jobq{display:inline-block;overflow:hidden;max-width:368px;margin-bottom:.2em;margin-right:8px;font-size:.9em;white-space:nowrap;text-overflow:ellipsis}.draftJsMentionPlugin__mentionSuggestionsEntryAvatar__1xgA9{display:inline-block;width:24px;height:24px;border-radius:12px}.draftJsMentionPlugin__mentionSuggestions__2DWjA{display:-ms-flexbox;display:flex;flex-direction:column;position:absolute;z-index:2;box-sizing:border-box;min-width:220px;max-width:440px;margin-top:.4em;padding-top:8px;padding-bottom:8px;border:1px solid #eee;border-radius:2px;background:#fff;box-shadow:0 4px 30px 0 #dcdcdc;cursor:pointer;-ms-transform:scale(0);transform:scale(0);-ms-flex-direction:column}#edittag>#wp-description-wrap,.DraftEditorPlaceholder-hidden{display:none}.DraftEditor-root,.public-DraftEditor-block{position:relative}.DraftEditor-editorContainer,.DraftEditor-root,.public-DraftEditor-content{height:inherit;text-align:initial}.public-DraftEditor-content[contenteditable=true]{-webkit-user-modify:read-write-plaintext-only}.DraftEditor-editorContainer{position:relative;z-index:1;border-left:.1px solid transparent;background-color:rgba(255,255,255,0)}.DraftEditor-alignLeft .public-DraftStyleDefault-block{text-align:left}.DraftEditor-alignLeft .public-DraftEditorPlaceholder-root{left:0;text-align:left}.DraftEditor-alignCenter .public-DraftStyleDefault-block{text-align:center}.DraftEditor-alignCenter .public-DraftEditorPlaceholder-root{width:100%;margin:0 auto;text-align:center}.DraftEditor-alignRight .public-DraftStyleDefault-block{text-align:right}.DraftEditor-alignRight .public-DraftEditorPlaceholder-root{right:0;text-align:right}.public-DraftEditorPlaceholder-root{position:absolute;z-index:1;color:#9197a3}.public-DraftEditorPlaceholder-hasFocus{color:#bdc1c9}.public-DraftStyleDefault-block{position:relative;white-space:pre-wrap}.public-DraftStyleDefault-ltr{text-align:left;direction:ltr}.public-DraftStyleDefault-rtl{text-align:right;direction:rtl}.public-DraftStyleDefault-listLTR{direction:ltr}.public-DraftStyleDefault-listRTL{direction:rtl}.public-DraftStyleDefault-ol,.public-DraftStyleDefault-ul{margin:16px 0;padding:0}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-listLTR{margin-left:1.5em}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-listRTL{margin-right:1.5em}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-listLTR{margin-left:3em}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-listRTL{margin-right:3em}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-listLTR{margin-left:4.5em}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-listRTL{margin-right:4.5em}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-listLTR{margin-left:6em}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-listRTL{margin-right:6em}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-listLTR{margin-left:7.5em}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-listRTL{margin-right:7.5em}.public-DraftStyleDefault-unorderedListItem{position:relative;list-style-type:square}.public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth0{list-style-type:disc}.public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth1{list-style-type:circle}.public-DraftStyleDefault-orderedListItem{position:relative;list-style-type:none}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listLTR:before{position:absolute;left:-36px;width:30px;text-align:right}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listRTL:before{position:absolute;right:-36px;width:30px;text-align:left}.public-DraftStyleDefault-orderedListItem:before{content:counter(ol0) ". ";counter-increment:ol0}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth1:before{content:counter(ol1) ". ";counter-increment:ol1}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth2:before{content:counter(ol2) ". ";counter-increment:ol2}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth3:before{content:counter(ol3) ". ";counter-increment:ol3}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth4:before{content:counter(ol4) ". ";counter-increment:ol4}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-reset{counter-reset:ol0}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-reset{counter-reset:ol1}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-reset{counter-reset:ol2}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-reset{counter-reset:ol3}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-reset{counter-reset:ol4}#wpseo_meta{box-sizing:border-box}#wpseo_meta *,#wpseo_meta :after,#wpseo_meta :before{box-sizing:inherit}#wp-description-wrap .wp-editor-area{border:0}.term-description-wrap td>textarea#description{min-height:530px}ul.wpseo-metabox-tabs{display:none;margin-top:6px;margin-bottom:0}ul.wpseo-metabox-tabs:after{display:table;clear:both;content:""}.wpseo-metabox-tabs-div ul{list-style:none}ul.wpseo-metabox-tabs li.active{background-color:#fdfdfd}.wpseo-meta-section{display:none;width:100%;max-width:calc(100% - 50px);vertical-align:top}.wpseo-meta-section.active{display:inline-block}.wpseo-metabox-sidebar{float:right;width:50px;padding:0;background-color:#fff}.wpseo-metabox-sidebar ul{margin:0}.wpseo-metabox-sidebar li{display:inline-block;margin-bottom:0;padding:5px}.wpseo-metabox-sidebar a{display:inline-block;width:35px;height:35px;font-size:20px;line-height:30px;text-decoration:none}.wpseo-metabox-sidebar li span{margin:3px -5px 0 0;padding:0 5px 0 2px;border:0 solid transparent;border-right-width:3px;border-radius:3px}.wpseo-metabox-sidebar li span.wpseo-buy-premium{color:#a4286a}.wpseo-metabox-sidebar li span.wpseo-buy-premium:hover{color:#832055}.wpseo-metabox-sidebar li.active span{border-color:#333;color:#333}.wpseo-metabox-sidebar li.active span.wpseo-buy-premium{border-color:#a4286a;color:#a4286a}.wpseo-metabox-sidebar li.active span.wpseo-buy-premium:hover{border-color:#832055;color:#832055}ul.wpseo-metabox-tabs li{float:right;margin-left:5px;margin-bottom:-1px;padding:0;border:1px solid #dfdfdf;border-bottom:0 none}ul.wpseo-metabox-tabs li .wpseo-keyword{display:inline-block;overflow:hidden;max-width:8em;max-width:8rem;vertical-align:top;white-space:nowrap;text-overflow:ellipsis}.wpseotab{display:none;padding:20px 35px;border:1px solid #ddd;background-color:#fdfdfd}.wpseotab .wpseo-cornerstone-checkbox{margin-left:.5em}.wpseotab.content{padding:20px 15px}.wpseotab.active{display:block}#wpseofocuskeyword,#wpseosnippet{margin-bottom:2em}#wpseo-focuskeyword-section .wpseo-keyword-synonyms{margin-top:16px}.wpseo-metabox-tabs .wpseo_tablink{display:inline-block;padding:5px 12px 6px;vertical-align:top;text-decoration:none}.wpseo-metabox-tabs .wpseo_content_tab a,.wpseo-metabox-tabs .wpseo_content_tab+.wpseo_keyword_tab a{padding-left:12px}.wpseo-metabox-tabs .wpseo-score-icon{margin-right:0}#wpseo-meta-section-social .wpseo-metabox-tabs .wpseo_tablink{padding:5px 7px}.wpseo-metabox-tabs .wpseo_tablink .dashicons{width:16px;height:16px;font-size:16px}.wpseo-metabox-sidebar .dashicons{width:30px;height:30px;font-size:30px}.wpseo-metabox-tabs-div div.wpseo-tabs-panel{overflow:auto;padding:.5em .9em;border:1px solid}#wpseo_meta .inside{margin:0}#wpseo_meta .inside::after{display:table;clear:both;content:""}#wpseo_meta .postbox .inside .wpseotab{font-size:13px!important}.wpseotab .select2-container,.wpseotab input,.wpseotab label,.wpseotab p.error-message,.wpseotab textarea,.yoast-metabox__description{max-width:600px}.wpseotab fieldset{padding-top:5px}.wpseotab label{display:block}.wpseotab input[type=checkbox]+label,.wpseotab input[type=radio]+label{display:inline-block;font-weight:400}.wpseotab fieldset,.wpseotab label{margin-top:2em;margin-bottom:.5em}.wpseotab input[type=checkbox],.wpseotab input[type=checkbox]+label{margin-top:2em;margin-bottom:0;font-size:1em}.wpseotab fieldset:first-child,.wpseotab input[type=checkbox]:first-child,.wpseotab input[type=checkbox]:first-child+label,.wpseotab label:first-child{margin-top:10px}.wpseotab input[type=radio]{margin-top:0}.wpseotab input[type=radio]+label{margin:0 0 0 1em}.wpseotab p.error-message,.yoast-metabox__description{margin:.5em 0}.wpseotab #yoast_wpseo_focuskw_text_input,.wpseotab select[multiple]{margin-top:0}.wpseotab .wpseo_image_upload_button{margin-right:3px}.good,.warn,.wrong{font-weight:600}.good{color:green}.warn{color:maroon}.wrong{color:#dc3232}#current_seo_title span{padding:2px 5px;background-color:#ffffe0}#focuskwresults ul{margin:0}#focuskwresults li,#focuskwresults p{font-size:13px}#focuskwresults li{margin:0 20px 0 0;list-style-type:disc}.wpseo_hidden{display:none}.wpseo_msg{margin:5px 0 10px;padding:0 5px;border:1px solid #e6db55;background-color:#ffffe0}ul.wpseo-metabox-tabs li.wpseo-tab-add-keyword{border:1px dashed #dfdfdf;border-bottom:none}.wpseo-tab-add-keyword .wpseo-add-keyword.button{height:auto;padding:5px 10px 5px 12px;background:0 0;box-shadow:none;font-size:inherit;font-weight:700;line-height:inherit;vertical-align:top;text-decoration:none}.wpseo-tab-add-keyword .wpseo-add-keyword.button:focus{box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}.wpseo-tab-add-keyword .wpseo-add-keyword.button:active{-ms-transform:none;transform:none}.wpseo-add-keyword-plus{display:inline-block;margin:-1px 0 0 3px;font-size:20px;vertical-align:top}#wpseo-add-keyword-popup-title{margin:1em 0;font-size:1.3em}.snippet-editor__button.snippet-editor__edit-button:focus{border-color:#5b9dd9;outline:0;color:#23282d;background-color:#fafafa;box-shadow:0 0 3px rgba(0,115,170,.8)}.wpseo-admin-page .subsubsub li{display:inline;max-width:none}.yoast-seo-help-container{float:right;width:100%;max-width:none}.yoast-seo-help-container .yoast-help-panel{margin:.5em 0!important}.wpseo_content_wrapper p.search-box{margin:10px 0 5px}.wpseo-metabox-tabs .active a{color:#333}#wpseotab .ui-widget-content .ui-state-hover{border:1px solid #dfdfdf;color:#333;background:#f1f1f1}.yst-traffic-light-container{display:block;height:30px}.yst-traffic-light{width:19px;height:30px;margin:0 5px 0 0}.yst-traffic-light .traffic-light-color{display:none}.yst-traffic-light.bad .traffic-light-red,.yst-traffic-light.good .traffic-light-green,.yst-traffic-light.init .traffic-light-init,.yst-traffic-light.na .traffic-light-empty,.yst-traffic-light.ok .traffic-light-orange{display:inline}#wpseo-score{float:right;margin:0 -5px 0 5px}.yoast-seo-score .yoast-logo.svg{float:right;width:18px;height:18px;margin-left:5px;background:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23999%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E") no-repeat;background-size:18px}.yoast-seo-score .yoast-logo.svg.good{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%237ad03a%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.ok{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23ee7c1b%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.bad{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23dc3232%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.na{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23999%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.noindex{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231e8cbe%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.term-php .wpseo-taxonomy-metabox-postbox>h2{margin:0;padding:8px 12px;border-bottom:1px solid #eee;font-size:14px;line-height:1.4}.wpseo-buy-premium{margin-left:5px;color:#a4286a}.wpseo-metabox-go-to::after{position:static;top:auto;left:auto;width:auto;height:auto;border:none;content:" \00BB"}#wpseo-buy-premium-popup-button.button-buy-premium{border-color:#a4286a;color:#fff;background:#a4286a}.wpseo-metabox-buy-premium{position:absolute;top:0;left:12px;padding:8px 0}.wpseo-metabox-buy-premium .dashicons{text-decoration:none}.wpseosnippet .yoast-section{width:auto;max-width:640px;padding:0}#TB_window #TB_ajaxContent p{margin:5px 0 0;padding:5px 0 0}#TB_window #TB_ajaxContent ul{margin:5px 0 10px}#TB_window #TB_ajaxContent li{margin:5px 0 0;list-style:none}#TB_window #TB_ajaxContent li::before{margin:0 0 0 10px;font-weight:700;content:"+"}.yoast-section__heading-icon-list{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M384%201408q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm0%2D512q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm1408%20416v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5zm%2D1408%2D928q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm1408%20416v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5zm0%2D512v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-section__heading-icon-key{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M832%20512q0%2D80%2D56%2D136t%2D136%2D56%2D136%2056%2D56%20136q0%2042%2019%2083%2D41%2D19%2D83%2D19%2D80%200%2D136%2056t%2D56%20136%2056%20136%20136%2056%20136%2D56%2056%2D136q0%2D42%2D19%2D83%2041%2019%2083%2019%2080%200%20136%2D56t56%2D136zm851%20704q0%2017%2D49%2066t%2D66%2049q%2D9%200%2D28%2E5%2D16t%2D36%2E5%2D33%2D38%2E5%2D40%2D24%2E5%2D26l%2D96%2096%20220%20220q28%2028%2028%2068%200%2042%2D39%2081t%2D81%2039q%2D40%200%2D68%2D28l%2D671%2D671q%2D176%20131%2D365%20131%2D163%200%2D265%2E5%2D102%2E5t%2D102%2E5%2D265%2E5q0%2D160%2095%2D313t248%2D248%20313%2D95q163%200%20265%2E5%20102%2E5t102%2E5%20265%2E5q0%20189%2D131%20365l355%20355%2096%2D96q%2D3%2D3%2D26%2D24%2E5t%2D40%2D38%2E5%2D33%2D36%2E5%2D16%2D28%2E5q0%2D17%2049%2D66t66%2D49q13%200%2023%2010%206%206%2046%2044%2E5t82%2079%2E5%2086%2E5%2086%2073%2078%2028%2E5%2041z%22%2F%3E%3C%2Fsvg%3E")}.yoast-section__heading-icon-edit{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M491%201536l91%2D91%2D235%2D235%2D91%2091v107h128v128h107zm523%2D928q0%2D22%2D22%2D22%2D10%200%2D17%207l%2D542%20542q%2D7%207%2D7%2017%200%2022%2022%2022%2010%200%2017%2D7l542%2D542q7%2D7%207%2D17zm%2D54%2D192l416%20416%2D832%20832h%2D416v%2D416zm683%2096q0%2053%2D37%2090l%2D166%20166%2D416%2D416%20166%2D165q36%2D38%2090%2D38%2053%200%2091%2038l235%20234q37%2039%2037%2091z%22%20%2F%3E%3C%2Fsvg%3E")}.yoast-section{position:relative;padding:0 20px 15px;background-color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2)}.yoast-section__heading{margin:0 -20px 15px;padding:8px 20px;color:#555;font-family:"Open Sans",sans-serif;font-size:1rem;font-weight:300}.yoast-section__heading-icon{padding-right:44px;background-repeat:no-repeat;background-position:right 20px top .6em;background-size:16px}.yoast-section,.yoast-section *,.yoast-section :after,.yoast-section :before,.yoast-section:after,.yoast-section:before{box-sizing:border-box}.yoast-tooltip.yoast-tooltip-hidden::after,.yoast-tooltip.yoast-tooltip-hidden::before{display:none}.screen-reader-text.wpseo-generic-tab-textual-score,.screen-reader-text.wpseo-keyword-tab-textual-score{display:block}.yoast-notice-go-premium{margin:0;border-right-color:#a4286a;background:#f1f1f1}@media screen and (max-width:782px){.wpseo-metabox-sidebar{display:inline-block;float:none;width:auto;margin:0 -5px 10px 0;padding:0;vertical-align:top}.wpseo-meta-section.active{display:block;clear:both;max-width:none}.wpseo-metabox-sidebar ul{display:inline-block}.wpseo-metabox-sidebar li{float:right;text-align:center}.wpseo-metabox-sidebar .wpseo-meta-section-link{width:40px;height:40px}.wpseo-meta-section-link .dashicons,.wpseo-meta-section-link .yst-traffic-light-container{display:block;width:40px;height:45px;margin:0;padding:5px 0 0;border-bottom-width:3px;border-right-width:0}.wpseo-meta-section-link .dashicons:before,.wpseo-meta-section-link .yst-traffic-light{margin:0}.wpseo-meta-section-link .dashicons-admin-generic:before{position:relative;right:1px}.wpseo-metabox-buy-premium .wpseo-buy-premium{display:inline-block;width:20px;height:20px;margin-left:5px;padding:0}.yoast-help-panel{max-width:none!important}#wpseo-crawl-issues-table-form .subsubsub{float:none;max-width:calc(100vw - 20px)}#wpseo-crawl-issues-table-form .yoast-help-button{margin-top:3px}.wpseotab select[multiple]{height:auto!important}}@media screen and (max-width:600px){.wpseotab{padding:20px}.wpseotab.content{padding:20px 0}}
 
css/dist/metabox-791.min.css DELETED
@@ -1 +0,0 @@
1
- .yoast-section{width:auto;max-width:640px}.snippet_container:after,.snippet_container:before{display:table;content:" "}.snippet_container:after{clear:both}.snippet-editor__view{clear:both;background:#fff}.snippet-editor__view-toggle{display:inline-block;margin-top:10px;margin-left:20px;border:1px solid #dbdbdb;border-radius:4px;background-color:#f7f7f7;vertical-align:top}.snippet-editor__view-icon{float:left;width:31px;height:31px;border:none;border-bottom:4px solid transparent;outline:0;background-color:transparent;background-repeat:no-repeat;background-position:center,center;cursor:pointer}.snippet-editor__view-icon:focus,.snippet-editor__view-icon:hover{border-color:#1074a8;background-color:#fff;transition:.15s color ease-in-out,.15s background-color ease-in-out,.15s border-color ease-in-out}.snippet-editor__view-icon--active{border-color:#555;transition:.15s color ease-in-out,.15s background-color ease-in-out,.15s border-color ease-in-out}.snippet-editor__view-icon.yoast-tooltip:before{bottom:-10px}.snippet-editor__view-icon.yoast-tooltip:after{margin-top:10px}.snippet-editor__view-icon-desktop{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1728%20992v%2D832q0%2D13%2D9%2E5%2D22%2E5t%2D22%2E5%2D9%2E5h%2D1600q%2D13%200%2D22%2E5%209%2E5t%2D9%2E5%2022%2E5v832q0%2013%209%2E5%2022%2E5t22%2E5%209%2E5h1600q13%200%2022%2E5%2D9%2E5t9%2E5%2D22%2E5zm128%2D832v1088q0%2066%2D47%20113t%2D113%2047h%2D544q0%2037%2016%2077%2E5t32%2071%2016%2043%2E5q0%2026%2D19%2045t%2D45%2019h%2D512q%2D26%200%2D45%2D19t%2D19%2D45q0%2D14%2016%2D44t32%2D70%2016%2D78h%2D544q%2D66%200%2D113%2D47t%2D47%2D113v%2D1088q0%2D66%2047%2D113t113%2D47h1600q66%200%20113%2047t47%20113z%22%2F%3E%3C%2Fsvg%3E");background-size:18px}.snippet-editor__view-icon-desktop:focus,.snippet-editor__view-icon-desktop:hover{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231074a8%22%20d%3D%22M1728%20992v%2D832q0%2D13%2D9%2E5%2D22%2E5t%2D22%2E5%2D9%2E5h%2D1600q%2D13%200%2D22%2E5%209%2E5t%2D9%2E5%2022%2E5v832q0%2013%209%2E5%2022%2E5t22%2E5%209%2E5h1600q13%200%2022%2E5%2D9%2E5t9%2E5%2D22%2E5zm128%2D832v1088q0%2066%2D47%20113t%2D113%2047h%2D544q0%2037%2016%2077%2E5t32%2071%2016%2043%2E5q0%2026%2D19%2045t%2D45%2019h%2D512q%2D26%200%2D45%2D19t%2D19%2D45q0%2D14%2016%2D44t32%2D70%2016%2D78h%2D544q%2D66%200%2D113%2D47t%2D47%2D113v%2D1088q0%2D66%2047%2D113t113%2D47h1600q66%200%20113%2047t47%20113z%22%2F%3E%3C%2Fsvg%3E")}.snippet-editor__view-icon-mobile{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M976%201408q0%2D33%2D23%2E5%2D56%2E5t%2D56%2E5%2D23%2E5%2D56%2E5%2023%2E5%2D23%2E5%2056%2E5%2023%2E5%2056%2E5%2056%2E5%2023%2E5%2056%2E5%2D23%2E5%2023%2E5%2D56%2E5zm208%2D160v%2D704q0%2D13%2D9%2E5%2D22%2E5t%2D22%2E5%2D9%2E5h%2D512q%2D13%200%2D22%2E5%209%2E5t%2D9%2E5%2022%2E5v704q0%2013%209%2E5%2022%2E5t22%2E5%209%2E5h512q13%200%2022%2E5%2D9%2E5t9%2E5%2D22%2E5zm%2D192%2D848q0%2D16%2D16%2D16h%2D160q%2D16%200%2D16%2016t16%2016h160q16%200%2016%2D16zm288%2D16v1024q0%2052%2D38%2090t%2D90%2038h%2D512q%2D52%200%2D90%2D38t%2D38%2D90v%2D1024q0%2D52%2038%2D90t90%2D38h512q52%200%2090%2038t38%2090z%22%2F%3E%3C%2Fsvg%3E");background-size:22px}.snippet-editor__view-icon-mobile:focus,.snippet-editor__view-icon-mobile:hover{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231074a8%22%20d%3D%22M976%201408q0%2D33%2D23%2E5%2D56%2E5t%2D56%2E5%2D23%2E5%2D56%2E5%2023%2E5%2D23%2E5%2056%2E5%2023%2E5%2056%2E5%2056%2E5%2023%2E5%2056%2E5%2D23%2E5%2023%2E5%2D56%2E5zm208%2D160v%2D704q0%2D13%2D9%2E5%2D22%2E5t%2D22%2E5%2D9%2E5h%2D512q%2D13%200%2D22%2E5%209%2E5t%2D9%2E5%2022%2E5v704q0%2013%209%2E5%2022%2E5t22%2E5%209%2E5h512q13%200%2022%2E5%2D9%2E5t9%2E5%2D22%2E5zm%2D192%2D848q0%2D16%2D16%2D16h%2D160q%2D16%200%2D16%2016t16%2016h160q16%200%2016%2D16zm288%2D16v1024q0%2052%2D38%2090t%2D90%2038h%2D512q%2D52%200%2D90%2D38t%2D38%2D90v%2D1024q0%2D52%2038%2D90t90%2D38h512q52%200%2090%2038t38%2090z%22%2F%3E%3C%2Fsvg%3E")}.snippet-editor__view--desktop{overflow:auto;width:640px;max-width:100%;padding:0 20px}.snippet-editor__view .snippet_container__title{width:600px;white-space:nowrap}.snippet-editor__view .snippet_container__title .title{display:inline-block;overflow:hidden;max-width:600px;vertical-align:top;text-overflow:ellipsis}.snippet-editor__view .snippet_container__title .title#snippet_sitename{display:inline}.snippet-editor__view .snippet_container__url{width:600px;line-height:1;white-space:nowrap}.snippet-editor__view .snippet_container__url .urlFull{display:inline-block;overflow:hidden;max-width:586px;font-size:14px;line-height:16px;vertical-align:top;text-overflow:ellipsis}.snippet-editor__view .snippet_container .down_arrow{display:inline-block;margin-top:6px;margin-left:6px;border-top:5px solid #006621;border-right:4px solid transparent;border-left:4px solid transparent;vertical-align:top}.snippet-editor__view .snippet_container__meta{width:600px}.snippet-editor__view--mobile{margin:0 20px 10px;padding:11px 0;border-bottom:1px hidden #fff;border-radius:2px;box-shadow:0 1px 2px rgba(0,0,0,.2)}.snippet-editor__view--mobile .snippet_container{display:block;line-height:20px}.snippet-editor__view--mobile .snippet_container__meta,.snippet-editor__view--mobile .snippet_container__title,.snippet-editor__view--mobile .snippet_container__url{box-sizing:border-box;width:100%}.snippet-editor__view--mobile .snippet_container__title{overflow:visible;padding:0 16px;white-space:normal;word-wrap:break-word}.snippet-editor__view--mobile .snippet_container__title .title{font-size:16px;line-height:20px}.snippet-editor__view--mobile .snippet_container__url{margin-bottom:9px;padding:0 16px 9px;border-bottom:1px solid #ebebeb}.snippet-editor__view--mobile .snippet_container__url .urlFull{max-width:100%;font-size:14px;line-height:20px}.snippet-editor__view--mobile .snippet_container .down_arrow{display:none}.snippet-editor__view--mobile .snippet_container__meta{padding:0 16px;font-size:14px;line-height:20px}.snippet-editor__view--mobile .snippet_container .desc{font-size:14px;line-height:20px}.snippet-editor__is-scrollable-hintwrapper{display:none;margin:1em 0 5px;text-align:center}.snippet-editor__view--desktop.snippet-editor__view--desktop-has-scroll+.snippet-editor__is-scrollable-hintwrapper{display:block}.snippet-editor__is-scrollable-hint{display:inline-block}.snippet-editor__is-scrollable-hint:before{display:inline-block;margin-right:10px;font-size:20px;line-height:inherit;vertical-align:text-top;content:"\21c4"}.snippet-editor__container{position:relative;cursor:pointer}.snippet-editor__container.editable-preview__container--no-caret{cursor:auto}.snippet-editor__heading{margin:0 0 15px;padding:8px 20px;color:#555;font-family:"Open Sans",sans-serif;font-size:.9rem;font-weight:300}.snippet-editor__heading-editor{border-top:1px solid #f7f7f7}.snippet-editor__heading-icon{padding-left:45px;background-repeat:no-repeat;background-position:left 20px top .6em;background-size:16px}.snippet-editor__container--focus:before,.snippet-editor__container--focus:hover:before,.snippet-editor__container:hover:before{position:absolute;left:-22px;width:24px;height:24px;background-size:25px;content:"";display:block;top:-3px}.snippet-editor__heading-icon-eye{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1664%20960q%2D152%2D236%2D381%2D353%2061%20104%2061%20225%200%20185%2D131%2E5%20316%2E5t%2D316%2E5%20131%2E5%2D316%2E5%2D131%2E5%2D131%2E5%2D316%2E5q0%2D121%2061%2D225%2D229%20117%2D381%20353%20133%20205%20333%2E5%20326%2E5t434%2E5%20121%2E5%20434%2E5%2D121%2E5%20333%2E5%2D326%2E5zm%2D720%2D384q0%2D20%2D14%2D34t%2D34%2D14q%2D125%200%2D214%2E5%2089%2E5t%2D89%2E5%20214%2E5q0%2020%2014%2034t34%2014%2034%2D14%2014%2D34q0%2D86%2061%2D147t147%2D61q20%200%2034%2D14t14%2D34zm848%20384q0%2034%2D20%2069%2D140%20230%2D376%2E5%20368%2E5t%2D499%2E5%20138%2E5%2D499%2E5%2D139%2D376%2E5%2D368q%2D20%2D35%2D20%2D69t20%2D69q140%2D229%20376%2E5%2D368t499%2E5%2D139%20499%2E5%20139%20376%2E5%20368q20%2035%2020%2069z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__container:hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23bfbfbf%22%20d%3D%22M1152%20896q0%2026%2D19%2045l%2D448%20448q%2D19%2019%2D45%2019t%2D45%2D19%2D19%2D45v%2D896q0%2D26%2019%2D45t45%2D19%2045%2019l448%20448q19%2019%2019%2045z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__container--focus:before,.snippet-editor__container--focus:hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1152%20896q0%2026%2D19%2045l%2D448%20448q%2D19%2019%2D45%2019t%2D45%2D19%2D19%2D45v%2D896q0%2D26%2019%2D45t45%2D19%2045%2019l448%20448q19%2019%2019%2045z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__preview{max-width:640px;padding:0 0 15px}.snippet-editor__preview #help-yoast-snippetpreview{padding:0 20px}.snippet-editor__button{padding:8px 10px;border:1px solid #dbdbdb;border-radius:4px;color:#555;background:#f7f7f7;font-size:.8rem;line-height:15px;cursor:pointer}.snippet-editor__edit-button{display:inline-block;box-sizing:border-box;margin-top:10px;padding-left:32px;background:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M491%201536l91%2D91%2D235%2D235%2D91%2091v107h128v128h107zm523%2D928q0%2D22%2D22%2D22%2D10%200%2D17%207l%2D542%20542q%2D7%207%2D7%2017%200%2022%2022%2022%2010%200%2017%2D7l542%2D542q7%2D7%207%2D17zm%2D54%2D192l416%20416%2D832%20832h%2D416v%2D416zm683%2096q0%2053%2D37%2090l%2D166%20166%2D416%2D416%20166%2D165q36%2D38%2090%2D38%2053%200%2091%2038l235%20234q37%2039%2037%2091z%22%20%2F%3E%3C%2Fsvg%3E") left 8px top 50% no-repeat #f7f7f7;background-size:16px}.snippet-editor__form{padding:20px}.snippet-editor__label{display:block;position:relative;width:100%;margin-top:1em}.snippet-editor__label--focus:before,.snippet-editor__label--hover:before{left:-22px;width:24px;height:24px;background-size:25px;display:block;content:"";position:absolute}.snippet-editor__label:first-child{margin-top:0}.snippet-editor__label--hover:before{top:-3px;top:20px;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23bfbfbf%22%20d%3D%22M1152%20896q0%2026%2D19%2045l%2D448%20448q%2D19%2019%2D45%2019t%2D45%2D19%2D19%2D45v%2D896q0%2D26%2019%2D45t45%2D19%2045%2019l448%20448q19%2019%2019%2045z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__label--focus:before{top:-3px;top:20px;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231074a8%22%20d%3D%22M1152%20896q0%2026%2D19%2045l%2D448%20448q%2D19%2019%2D45%2019t%2D45%2D19%2D19%2D45v%2D896q0%2D26%2019%2D45t45%2D19%2045%2019l448%20448q19%2019%2019%2045z%22%20%2F%3E%3C%2Fsvg%3E")}.snippet-editor__input{display:block;box-sizing:border-box;width:100%;max-width:100%;margin-top:5px;border:1px solid #bfbfbf}.snippet-editor__input:focus{border:1px solid #1074a8;outline:0}.rtl .snippet-editor__container:hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23bfbfbf%22%20d%3D%22M1216%20448v896q0%2026%2D19%2045t%2D45%2019%2D45%2D19l%2D448%2D448q%2D19%2D19%2D19%2D45t19%2D45l448%2D448q19%2D19%2045%2D19t45%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E")}.rtl .snippet-editor__container--focus:before,.rtl .snippet-editor__container--focus:hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1216%20448v896q0%2026%2D19%2045t%2D45%2019%2D45%2D19l%2D448%2D448q%2D19%2D19%2D19%2D45t19%2D45l448%2D448q19%2D19%2045%2D19t45%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E")}.rtl .snippet-editor__label--hover:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23bfbfbf%22%20d%3D%22M1216%20448v896q0%2026%2D19%2045t%2D45%2019%2D45%2D19l%2D448%2D448q%2D19%2D19%2D19%2D45t19%2D45l448%2D448q19%2D19%2045%2D19t45%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E")}.rtl .snippet-editor__label--focus:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231074a8%22%20d%3D%22M1216%20448v896q0%2026%2D19%2045t%2D45%2019%2D45%2D19l%2D448%2D448q%2D19%2D19%2D19%2D45t19%2D45l448%2D448q19%2D19%2045%2D19t45%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E")}.snippet-editor__meta-description{height:84px}.snippet-editor__submit{margin-top:1em}#snippet_cite{min-width:20px}#meta_container{clear:both;min-height:20px}.snippet_container .title{margin:0;color:#1e0fbe;font-size:18px;font-weight:400;line-height:1.2;text-decoration:none}.snippet-editor__date,.snippet_container .desc{font-size:13px;line-height:1.4}.snippet_container .url{color:#006621;font-style:normal}.snippet_container .url strong{font-weight:700}.snippet_container .desc-default{color:#545454}.snippet_container .desc-default strong{color:#6a6a6a;font-weight:700}.snippet_container .desc-render{color:#777}.snippet_container .tooLong{color:red!important}.snippet-editor__field--invalid{color:red}.snippet-editor__progress{display:block;box-sizing:border-box;width:100%;height:8px;margin-top:5px;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.snippet-editor__progress::-webkit-progress-bar{height:8px;border:1px solid #bfbfbf;background-color:#f7f7f7}.snippet-editor__progress--fallback{height:8px;border:1px solid #bfbfbf;background-color:#f7f7f7}.snippet-editor__progress-bar{width:0;max-width:100%;height:100%}.snippet-editor__date{color:grey}.snippet-editor--hidden{display:none}.yoast-measurement-elements-holder{position:absolute;left:-9999em}.snippet-editor__progress--bad[value]{color:#dc3232}.snippet-editor__progress--bad[value]::-webkit-progress-value{background-color:#dc3232;transition:width 250ms}.snippet-editor__progress--bad[value]::-moz-progress-bar{background-color:#dc3232}.snippet-editor__progress--bad[value] .snippet-editor__progress-bar{background-color:#dc3232}.snippet-editor__progress--ok[value]{color:#ee7c1b}.snippet-editor__progress--ok[value]::-webkit-progress-value{background-color:#ee7c1b;transition:width 250ms}.snippet-editor__progress--ok[value]::-moz-progress-bar{background-color:#ee7c1b}.snippet-editor__progress--ok[value] .snippet-editor__progress-bar{background-color:#ee7c1b}.snippet-editor__progress--good[value]{color:#7ad03a}.snippet-editor__progress--good[value]::-webkit-progress-value{background-color:#7ad03a;transition:width 250ms}.snippet-editor__progress--good[value]::-moz-progress-bar{background-color:#7ad03a}.snippet-editor__progress--good[value] .snippet-editor__progress-bar{background-color:#7ad03a}.wpseoanalysis{padding-right:0}.wpseo-score-text{float:left;width:86%;width:calc(100% - 56px)}.assessment-results .wpseo-score-icon{float:left;width:12px;height:12px;margin:3px 10px 0 0;border-radius:50%;background:#888}.wpseo-score-icon.good{background-color:#7ad03a}.wpseo-score-icon.ok{background-color:#ee7c1b}.wpseo-score-icon.bad{background-color:#dc3232}.wpseo-score-icon.na{background-color:#999}.wpseo-score-icon.noindex{background-color:#1e8cbe}li.score{margin-bottom:6px;list-style-type:none!important}li.score:after{display:table;clear:both;content:""}.screen-reader-text{overflow:hidden;clip:rect(1px,1px,1px,1px);position:absolute!important;width:1px;height:1px}.assessment-results{clear:both}.assessment-results__mark.icon-eye-active,.assessment-results__mark.icon-eye-disabled,.assessment-results__mark.icon-eye-inactive{float:left;width:28px;height:28px;margin:-5px 3px 0;padding:4px;border:0;border-radius:100%;outline:0;background:center no-repeat;background-size:16px;cursor:pointer}.assessment-results__mark.icon-eye-inactive{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M1664%20960q%2D152%2D236%2D381%2D353%2061%20104%2061%20225%200%20185%2D131%2E5%20316%2E5t%2D316%2E5%20131%2E5%2D316%2E5%2D131%2E5%2D131%2E5%2D316%2E5q0%2D121%2061%2D225%2D229%20117%2D381%20353%20133%20205%20333%2E5%20326%2E5t434%2E5%20121%2E5%20434%2E5%2D121%2E5%20333%2E5%2D326%2E5zm%2D720%2D384q0%2D20%2D14%2D34t%2D34%2D14q%2D125%200%2D214%2E5%2089%2E5t%2D89%2E5%20214%2E5q0%2020%2014%2034t34%2014%2034%2D14%2014%2D34q0%2D86%2061%2D147t147%2D61q20%200%2034%2D14t14%2D34zm848%20384q0%2034%2D20%2069%2D140%20230%2D376%2E5%20368%2E5t%2D499%2E5%20138%2E5%2D499%2E5%2D139%2D376%2E5%2D368q%2D20%2D35%2D20%2D69t20%2D69q140%2D229%20376%2E5%2D368t499%2E5%2D139%20499%2E5%20139%20376%2E5%20368q20%2035%2020%2069z%22%20%2F%3E%3C%2Fsvg%3E")}.assessment-results__mark.icon-eye-active{background-color:#a4286a;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M1664%20960q%2D152%2D236%2D381%2D353%2061%20104%2061%20225%200%20185%2D131%2E5%20316%2E5t%2D316%2E5%20131%2E5%2D316%2E5%2D131%2E5%2D131%2E5%2D316%2E5q0%2D121%2061%2D225%2D229%20117%2D381%20353%20133%20205%20333%2E5%20326%2E5t434%2E5%20121%2E5%20434%2E5%2D121%2E5%20333%2E5%2D326%2E5zm%2D720%2D384q0%2D20%2D14%2D34t%2D34%2D14q%2D125%200%2D214%2E5%2089%2E5t%2D89%2E5%20214%2E5q0%2020%2014%2034t34%2014%2034%2D14%2014%2D34q0%2D86%2061%2D147t147%2D61q20%200%2034%2D14t14%2D34zm848%20384q0%2034%2D20%2069%2D140%20230%2D376%2E5%20368%2E5t%2D499%2E5%20138%2E5%2D499%2E5%2D139%2D376%2E5%2D368q%2D20%2D35%2D20%2D69t20%2D69q140%2D229%20376%2E5%2D368t499%2E5%2D139%20499%2E5%20139%20376%2E5%20368q20%2035%2020%2069z%22%20%2F%3E%3C%2Fsvg%3E")}.assessment-results__mark.icon-eye-disabled{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23e6e6e6%22%20d%3D%22M1664%20960q%2D152%2D236%2D381%2D353%2061%20104%2061%20225%200%20185%2D131%2E5%20316%2E5t%2D316%2E5%20131%2E5%2D316%2E5%2D131%2E5%2D131%2E5%2D316%2E5q0%2D121%2061%2D225%2D229%20117%2D381%20353%20133%20205%20333%2E5%20326%2E5t434%2E5%20121%2E5%20434%2E5%2D121%2E5%20333%2E5%2D326%2E5zm%2D720%2D384q0%2D20%2D14%2D34t%2D34%2D14q%2D125%200%2D214%2E5%2089%2E5t%2D89%2E5%20214%2E5q0%2020%2014%2034t34%2014%2034%2D14%2014%2D34q0%2D86%2061%2D147t147%2D61q20%200%2034%2D14t14%2D34zm848%20384q0%2034%2D20%2069%2D140%20230%2D376%2E5%20368%2E5t%2D499%2E5%20138%2E5%2D499%2E5%2D139%2D376%2E5%2D368q%2D20%2D35%2D20%2D69t20%2D69q140%2D229%20376%2E5%2D368t499%2E5%2D139%20499%2E5%20139%20376%2E5%20368q20%2035%2020%2069z%22%20%2F%3E%3C%2Fsvg%3E")}.assessment-results__mark:focus{border-radius:100%;box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}.assessment-results__mark-container{display:inline-block;float:right;width:33px;min-height:1px}.YoastSEO_msg .left,.YoastSEO_msg .right{display:none}@keyframes animatedBackground{from{background-position:0 0}to{background-position:100% 0}}.YoastSEO_msg .bufferbar{display:block;width:100%;height:12px;margin:10px 0;border:1px solid #dfdfdf;background-image:linear-gradient(to left,#fff,#0063ff,#fff,#0063ff);background-position:0 0;background-size:300% 100%;animation:animatedBackground 5s linear infinite}.yoast-tooltip{position:relative}button.yoast-tooltip{overflow:visible}.yoast-tooltip::after{display:none;position:absolute;z-index:1000000;padding:6px 8px 5px;border-radius:3px;opacity:0;color:#fff;background:rgba(0,0,0,.8);text-shadow:none;font:normal normal 11px/1.45454545 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";text-align:center;white-space:pre;text-decoration:none;letter-spacing:normal;text-transform:none;word-wrap:break-word;content:attr(aria-label);pointer-events:none;-webkit-font-smoothing:subpixel-antialiased}.yoast-tooltip-alt::after{content:attr(data-label)}.yoast-tooltip::before{display:none;position:absolute;z-index:1000001;width:0;height:0;border:5px solid transparent;opacity:0;color:rgba(0,0,0,.8);content:"\00a0";pointer-events:none}@keyframes yoast-tooltip-appear{from{opacity:0}to{opacity:1}}.yoast-tooltip:active::after,.yoast-tooltip:active::before,.yoast-tooltip:focus::after,.yoast-tooltip:focus::before,.yoast-tooltip:hover::after,.yoast-tooltip:hover::before{display:inline-block;text-decoration:none;animation-name:yoast-tooltip-appear;animation-duration:.1s;animation-timing-function:ease-in;animation-delay:.4s;animation-fill-mode:forwards}.yoast-tooltip-no-delay:active::after,.yoast-tooltip-no-delay:active::before,.yoast-tooltip-no-delay:focus::after,.yoast-tooltip-no-delay:focus::before,.yoast-tooltip-no-delay:hover::after,.yoast-tooltip-no-delay:hover::before{opacity:1;animation:none}.yoast-tooltip-multiline:active::after,.yoast-tooltip-multiline:focus::after,.yoast-tooltip-multiline:hover::after{display:table-cell}.yoast-tooltip-s::after,.yoast-tooltip-se::after,.yoast-tooltip-sw::after{top:100%;right:50%;margin-top:5px}.yoast-tooltip-s::before,.yoast-tooltip-se::before,.yoast-tooltip-sw::before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.yoast-tooltip-se::after{right:auto;left:50%;margin-left:-15px}.yoast-tooltip-sw::after{margin-right:-15px}.yoast-tooltip-n::after,.yoast-tooltip-ne::after,.yoast-tooltip-nw::after{right:50%;bottom:100%;margin-bottom:5px}.yoast-tooltip-n::before,.yoast-tooltip-ne::before,.yoast-tooltip-nw::before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.yoast-tooltip-ne::after{right:auto;left:50%;margin-left:-15px}.yoast-tooltip-nw::after{margin-right:-15px}.yoast-tooltip-n::after,.yoast-tooltip-s::after{-ms-transform:translateX(50%);transform:translateX(50%)}.yoast-tooltip-w::after{right:100%;bottom:50%;margin-right:5px;-ms-transform:translateY(50%);transform:translateY(50%)}.yoast-tooltip-w::before{top:50%;bottom:50%;left:-5px;margin-top:-5px;border-left-color:rgba(0,0,0,.8)}.yoast-tooltip-e::after{bottom:50%;left:100%;margin-left:5px;-ms-transform:translateY(50%);transform:translateY(50%)}.yoast-tooltip-e::before{top:50%;right:-5px;bottom:50%;margin-top:-5px;border-right-color:rgba(0,0,0,.8)}.yoast-tooltip-multiline::after{width:250px;width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:250px;border-collapse:separate;white-space:pre-line;word-wrap:normal;word-break:break-word}.yoast-tooltip-multiline.yoast-tooltip-n::after,.yoast-tooltip-multiline.yoast-tooltip-s::after{right:auto;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%)}.yoast-tooltip-multiline.yoast-tooltip-e::after,.yoast-tooltip-multiline.yoast-tooltip-w::after{right:100%}@media screen and (min-width:0\0){.yoast-tooltip-multiline::after{width:250px}}.yoast-tooltip-sticky::after,.yoast-tooltip-sticky::before{display:inline-block}.yoast-tooltip-sticky.yoast-tooltip-multiline::after{display:table-cell}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min--moz-device-pixel-ratio:2),only screen and (-moz-min-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2),only screen and (min-resolution:192dpi),only screen and (min-resolution:2dppx){.yoast-tooltip-w::after{margin-right:4.5px}}.postbox .yoast-help-center__button{min-height:0;margin:0;padding:8px 0;border:none;color:#0073aa;box-shadow:none;font:inherit;text-decoration:underline;text-transform:none}.wpseotab label,.wpseotab legend{font-weight:600}.postbox .yoast-help-center__button svg{margin:0 13px}#edittag .yoast-video-tutorial__video-container{float:none;max-width:100%;margin:0 auto}#edittag .yoast-video-tutorial__descriptions{margin:0 auto;padding:0}@media screen and (max-width:1480px){#poststuff .yoast-video-tutorial__video-container{float:none;max-width:100%;margin:0 auto}#poststuff .yoast-video-tutorial__descriptions{margin:0 auto;padding:0}}.wpseo-metabox #yoast-help-center-container{margin:8px 0}.draftJsMentionPlugin__mention__29BEd,.draftJsMentionPlugin__mention__29BEd:visited{display:inline-block;padding-right:2px;padding-left:2px;border-radius:2px;color:#575f67;background:#e6f3ff;text-decoration:none;cursor:pointer}.draftJsMentionPlugin__mention__29BEd:focus,.draftJsMentionPlugin__mention__29BEd:hover{outline:0;color:#677584;background:#edf5fd}.draftJsMentionPlugin__mention__29BEd:active{color:#222;background:#455261}.draftJsMentionPlugin__mentionSuggestionsEntry__3mSwm{padding:7px 10px 3px;transition:background-color .4s cubic-bezier(.27,1.27,.48,.56)}.draftJsMentionPlugin__mentionSuggestionsEntry__3mSwm:active{background-color:#cce7ff}.draftJsMentionPlugin__mentionSuggestionsEntryFocused__3LcTd{background-color:#e6f3ff}.draftJsMentionPlugin__mentionSuggestionsEntryText__3Jobq{display:inline-block;overflow:hidden;max-width:368px;margin-bottom:.2em;margin-left:8px;font-size:.9em;white-space:nowrap;text-overflow:ellipsis}.draftJsMentionPlugin__mentionSuggestionsEntryAvatar__1xgA9{display:inline-block;width:24px;height:24px;border-radius:12px}.draftJsMentionPlugin__mentionSuggestions__2DWjA{display:-ms-flexbox;display:flex;flex-direction:column;position:absolute;z-index:2;box-sizing:border-box;min-width:220px;max-width:440px;margin-top:.4em;padding-top:8px;padding-bottom:8px;border:1px solid #eee;border-radius:2px;background:#fff;box-shadow:0 4px 30px 0 #dcdcdc;cursor:pointer;-ms-transform:scale(0);transform:scale(0);-ms-flex-direction:column}#edittag>#wp-description-wrap,.DraftEditorPlaceholder-hidden{display:none}.DraftEditor-root,.public-DraftEditor-block{position:relative}.DraftEditor-editorContainer,.DraftEditor-root,.public-DraftEditor-content{height:inherit;text-align:initial}.public-DraftEditor-content[contenteditable=true]{-webkit-user-modify:read-write-plaintext-only}.DraftEditor-editorContainer{position:relative;z-index:1;border-left:.1px solid transparent;background-color:rgba(255,255,255,0)}.DraftEditor-alignLeft .public-DraftStyleDefault-block{text-align:left}.DraftEditor-alignLeft .public-DraftEditorPlaceholder-root{left:0;text-align:left}.DraftEditor-alignCenter .public-DraftStyleDefault-block{text-align:center}.DraftEditor-alignCenter .public-DraftEditorPlaceholder-root{width:100%;margin:0 auto;text-align:center}.DraftEditor-alignRight .public-DraftStyleDefault-block{text-align:right}.DraftEditor-alignRight .public-DraftEditorPlaceholder-root{right:0;text-align:right}.public-DraftEditorPlaceholder-root{position:absolute;z-index:1;color:#9197a3}.public-DraftEditorPlaceholder-hasFocus{color:#bdc1c9}.public-DraftStyleDefault-block{position:relative;white-space:pre-wrap}.public-DraftStyleDefault-ltr{text-align:left;direction:ltr}.public-DraftStyleDefault-rtl{text-align:right;direction:rtl}.public-DraftStyleDefault-listLTR{direction:ltr}.public-DraftStyleDefault-listRTL{direction:rtl}.public-DraftStyleDefault-ol,.public-DraftStyleDefault-ul{margin:16px 0;padding:0}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-listLTR{margin-left:1.5em}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-listRTL{margin-right:1.5em}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-listLTR{margin-left:3em}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-listRTL{margin-right:3em}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-listLTR{margin-left:4.5em}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-listRTL{margin-right:4.5em}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-listLTR{margin-left:6em}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-listRTL{margin-right:6em}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-listLTR{margin-left:7.5em}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-listRTL{margin-right:7.5em}.public-DraftStyleDefault-unorderedListItem{position:relative;list-style-type:square}.public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth0{list-style-type:disc}.public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth1{list-style-type:circle}.public-DraftStyleDefault-orderedListItem{position:relative;list-style-type:none}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listLTR:before{position:absolute;left:-36px;width:30px;text-align:right}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listRTL:before{position:absolute;right:-36px;width:30px;text-align:left}.public-DraftStyleDefault-orderedListItem:before{content:counter(ol0) ". ";counter-increment:ol0}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth1:before{content:counter(ol1) ". ";counter-increment:ol1}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth2:before{content:counter(ol2) ". ";counter-increment:ol2}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth3:before{content:counter(ol3) ". ";counter-increment:ol3}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth4:before{content:counter(ol4) ". ";counter-increment:ol4}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-reset{counter-reset:ol0}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-reset{counter-reset:ol1}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-reset{counter-reset:ol2}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-reset{counter-reset:ol3}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-reset{counter-reset:ol4}#wpseo_meta{box-sizing:border-box}#wpseo_meta *,#wpseo_meta :after,#wpseo_meta :before{box-sizing:inherit}#wp-description-wrap .wp-editor-area{border:0}.term-description-wrap td>textarea#description{min-height:530px}ul.wpseo-metabox-tabs{display:none;margin-top:6px;margin-bottom:0}ul.wpseo-metabox-tabs:after{display:table;clear:both;content:""}.wpseo-metabox-tabs-div ul{list-style:none}ul.wpseo-metabox-tabs li.active{background-color:#fdfdfd}.wpseo-meta-section{display:none;width:100%;max-width:calc(100% - 50px);vertical-align:top}.wpseo-meta-section.active{display:inline-block}.wpseo-metabox-sidebar{float:left;width:50px;padding:0;background-color:#fff}.wpseo-metabox-sidebar ul{margin:0}.wpseo-metabox-sidebar li{display:inline-block;margin-bottom:0;padding:5px}.wpseo-metabox-sidebar a{display:inline-block;width:35px;height:35px;font-size:20px;line-height:30px;text-decoration:none}.wpseo-metabox-sidebar li span{margin:3px 0 0 -5px;padding:0 2px 0 5px;border:0 solid transparent;border-left-width:3px;border-radius:3px}.wpseo-metabox-sidebar li span.wpseo-buy-premium{color:#a4286a}.wpseo-metabox-sidebar li span.wpseo-buy-premium:hover{color:#832055}.wpseo-metabox-sidebar li.active span{border-color:#333;color:#333}.wpseo-metabox-sidebar li.active span.wpseo-buy-premium{border-color:#a4286a;color:#a4286a}.wpseo-metabox-sidebar li.active span.wpseo-buy-premium:hover{border-color:#832055;color:#832055}ul.wpseo-metabox-tabs li{float:left;margin-right:5px;margin-bottom:-1px;padding:0;border:1px solid #dfdfdf;border-bottom:0 none}ul.wpseo-metabox-tabs li .wpseo-keyword{display:inline-block;overflow:hidden;max-width:8em;max-width:8rem;vertical-align:top;white-space:nowrap;text-overflow:ellipsis}.wpseotab{display:none;padding:20px 35px;border:1px solid #ddd;background-color:#fdfdfd}.wpseotab .wpseo-cornerstone-checkbox{margin-right:.5em}.wpseotab.content{padding:20px 15px}.wpseotab.active{display:block}#wpseofocuskeyword,#wpseosnippet{margin-bottom:2em}#wpseo-focuskeyword-section .wpseo-keyword-synonyms{margin-top:16px}.wpseo-metabox-tabs .wpseo_tablink{display:inline-block;padding:5px 12px 6px;vertical-align:top;text-decoration:none}.wpseo-metabox-tabs .wpseo_content_tab a,.wpseo-metabox-tabs .wpseo_content_tab+.wpseo_keyword_tab a{padding-right:12px}.wpseo-metabox-tabs .wpseo-score-icon{margin-left:0}#wpseo-meta-section-social .wpseo-metabox-tabs .wpseo_tablink{padding:5px 7px}.wpseo-metabox-tabs .wpseo_tablink .dashicons{width:16px;height:16px;font-size:16px}.wpseo-metabox-sidebar .dashicons{width:30px;height:30px;font-size:30px}.wpseo-metabox-tabs-div div.wpseo-tabs-panel{overflow:auto;padding:.5em .9em;border:1px solid}#wpseo_meta .inside{margin:0}#wpseo_meta .inside::after{display:table;clear:both;content:""}#wpseo_meta .postbox .inside .wpseotab{font-size:13px!important}.wpseotab .select2-container,.wpseotab input,.wpseotab label,.wpseotab p.error-message,.wpseotab textarea,.yoast-metabox__description{max-width:600px}.wpseotab fieldset{padding-top:5px}.wpseotab label{display:block}.wpseotab input[type=checkbox]+label,.wpseotab input[type=radio]+label{display:inline-block;font-weight:400}.wpseotab fieldset,.wpseotab label{margin-top:2em;margin-bottom:.5em}.wpseotab input[type=checkbox],.wpseotab input[type=checkbox]+label{margin-top:2em;margin-bottom:0;font-size:1em}.wpseotab fieldset:first-child,.wpseotab input[type=checkbox]:first-child,.wpseotab input[type=checkbox]:first-child+label,.wpseotab label:first-child{margin-top:10px}.wpseotab input[type=radio]{margin-top:0}.wpseotab input[type=radio]+label{margin:0 1em 0 0}.wpseotab p.error-message,.yoast-metabox__description{margin:.5em 0}.wpseotab #yoast_wpseo_focuskw_text_input,.wpseotab select[multiple]{margin-top:0}.wpseotab .wpseo_image_upload_button{margin-left:3px}.good,.warn,.wrong{font-weight:600}.good{color:green}.warn{color:maroon}.wrong{color:#dc3232}#current_seo_title span{padding:2px 5px;background-color:#ffffe0}#focuskwresults ul{margin:0}#focuskwresults li,#focuskwresults p{font-size:13px}#focuskwresults li{margin:0 0 0 20px;list-style-type:disc}.wpseo_hidden{display:none}.wpseo_msg{margin:5px 0 10px;padding:0 5px;border:1px solid #e6db55;background-color:#ffffe0}ul.wpseo-metabox-tabs li.wpseo-tab-add-keyword{border:1px dashed #dfdfdf;border-bottom:none}.wpseo-tab-add-keyword .wpseo-add-keyword.button{height:auto;padding:5px 12px 5px 10px;background:0 0;box-shadow:none;font-size:inherit;font-weight:700;line-height:inherit;vertical-align:top;text-decoration:none}.wpseo-tab-add-keyword .wpseo-add-keyword.button:focus{box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}.wpseo-tab-add-keyword .wpseo-add-keyword.button:active{-ms-transform:none;transform:none}.wpseo-add-keyword-plus{display:inline-block;margin:-1px 3px 0 0;font-size:20px;vertical-align:top}#wpseo-add-keyword-popup-title{margin:1em 0;font-size:1.3em}.snippet-editor__button.snippet-editor__edit-button:focus{border-color:#5b9dd9;outline:0;color:#23282d;background-color:#fafafa;box-shadow:0 0 3px rgba(0,115,170,.8)}.wpseo-admin-page .subsubsub li{display:inline;max-width:none}.yoast-seo-help-container{float:left;width:100%;max-width:none}.yoast-seo-help-container .yoast-help-panel{margin:.5em 0!important}.wpseo_content_wrapper p.search-box{margin:10px 0 5px}.wpseo-metabox-tabs .active a{color:#333}#wpseotab .ui-widget-content .ui-state-hover{border:1px solid #dfdfdf;color:#333;background:#f1f1f1}.yst-traffic-light-container{display:block;height:30px}.yst-traffic-light{width:19px;height:30px;margin:0 0 0 5px}.yst-traffic-light .traffic-light-color{display:none}.yst-traffic-light.bad .traffic-light-red,.yst-traffic-light.good .traffic-light-green,.yst-traffic-light.init .traffic-light-init,.yst-traffic-light.na .traffic-light-empty,.yst-traffic-light.ok .traffic-light-orange{display:inline}#wpseo-score{float:left;margin:0 5px 0 -5px}.yoast-seo-score .yoast-logo.svg{float:left;width:18px;height:18px;margin-right:5px;background:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23999%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E") no-repeat;background-size:18px}.yoast-seo-score .yoast-logo.svg.good{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%237ad03a%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.ok{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23ee7c1b%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.bad{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23dc3232%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.na{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23999%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.noindex{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231e8cbe%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.term-php .wpseo-taxonomy-metabox-postbox>h2{margin:0;padding:8px 12px;border-bottom:1px solid #eee;font-size:14px;line-height:1.4}.wpseo-buy-premium{margin-right:5px;color:#a4286a}.wpseo-metabox-go-to::after{position:static;top:auto;right:auto;width:auto;height:auto;border:none;content:" \00BB"}#wpseo-buy-premium-popup-button.button-buy-premium{border-color:#a4286a;color:#fff;background:#a4286a}.wpseo-metabox-buy-premium{position:absolute;top:0;right:12px;padding:8px 0}.wpseo-metabox-buy-premium .dashicons{text-decoration:none}.wpseosnippet .yoast-section{width:auto;max-width:640px;padding:0}#TB_window #TB_ajaxContent p{margin:5px 0 0;padding:5px 0 0}#TB_window #TB_ajaxContent ul{margin:5px 0 10px}#TB_window #TB_ajaxContent li{margin:5px 0 0;list-style:none}#TB_window #TB_ajaxContent li::before{margin:0 10px 0 0;font-weight:700;content:"+"}.yoast-section__heading-icon-list{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M384%201408q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm0%2D512q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm1408%20416v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5zm%2D1408%2D928q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm1408%20416v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5zm0%2D512v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-section__heading-icon-key{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M832%20512q0%2D80%2D56%2D136t%2D136%2D56%2D136%2056%2D56%20136q0%2042%2019%2083%2D41%2D19%2D83%2D19%2D80%200%2D136%2056t%2D56%20136%2056%20136%20136%2056%20136%2D56%2056%2D136q0%2D42%2D19%2D83%2041%2019%2083%2019%2080%200%20136%2D56t56%2D136zm851%20704q0%2017%2D49%2066t%2D66%2049q%2D9%200%2D28%2E5%2D16t%2D36%2E5%2D33%2D38%2E5%2D40%2D24%2E5%2D26l%2D96%2096%20220%20220q28%2028%2028%2068%200%2042%2D39%2081t%2D81%2039q%2D40%200%2D68%2D28l%2D671%2D671q%2D176%20131%2D365%20131%2D163%200%2D265%2E5%2D102%2E5t%2D102%2E5%2D265%2E5q0%2D160%2095%2D313t248%2D248%20313%2D95q163%200%20265%2E5%20102%2E5t102%2E5%20265%2E5q0%20189%2D131%20365l355%20355%2096%2D96q%2D3%2D3%2D26%2D24%2E5t%2D40%2D38%2E5%2D33%2D36%2E5%2D16%2D28%2E5q0%2D17%2049%2D66t66%2D49q13%200%2023%2010%206%206%2046%2044%2E5t82%2079%2E5%2086%2E5%2086%2073%2078%2028%2E5%2041z%22%2F%3E%3C%2Fsvg%3E")}.yoast-section__heading-icon-edit{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M491%201536l91%2D91%2D235%2D235%2D91%2091v107h128v128h107zm523%2D928q0%2D22%2D22%2D22%2D10%200%2D17%207l%2D542%20542q%2D7%207%2D7%2017%200%2022%2022%2022%2010%200%2017%2D7l542%2D542q7%2D7%207%2D17zm%2D54%2D192l416%20416%2D832%20832h%2D416v%2D416zm683%2096q0%2053%2D37%2090l%2D166%20166%2D416%2D416%20166%2D165q36%2D38%2090%2D38%2053%200%2091%2038l235%20234q37%2039%2037%2091z%22%20%2F%3E%3C%2Fsvg%3E")}.yoast-section{position:relative;padding:0 20px 15px;background-color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2)}.yoast-section__heading{margin:0 -20px 15px;padding:8px 20px;color:#555;font-family:"Open Sans",sans-serif;font-size:1rem;font-weight:300}.yoast-section__heading-icon{padding-left:44px;background-repeat:no-repeat;background-position:left 20px top .6em;background-size:16px}.yoast-section,.yoast-section *,.yoast-section :after,.yoast-section :before,.yoast-section:after,.yoast-section:before{box-sizing:border-box}.yoast-tooltip.yoast-tooltip-hidden::after,.yoast-tooltip.yoast-tooltip-hidden::before{display:none}.screen-reader-text.wpseo-generic-tab-textual-score,.screen-reader-text.wpseo-keyword-tab-textual-score{display:block}.yoast-notice-go-premium{margin:0;border-left-color:#a4286a;background:#f1f1f1}@media screen and (max-width:782px){.wpseo-metabox-sidebar{display:inline-block;float:none;width:auto;margin:0 0 10px -5px;padding:0;vertical-align:top}.wpseo-meta-section.active{display:block;clear:both;max-width:none}.wpseo-metabox-sidebar ul{display:inline-block}.wpseo-metabox-sidebar li{float:left;text-align:center}.wpseo-metabox-sidebar .wpseo-meta-section-link{width:40px;height:40px}.wpseo-meta-section-link .dashicons,.wpseo-meta-section-link .yst-traffic-light-container{display:block;width:40px;height:45px;margin:0;padding:5px 0 0;border-bottom-width:3px;border-left-width:0}.wpseo-meta-section-link .dashicons:before,.wpseo-meta-section-link .yst-traffic-light{margin:0}.wpseo-meta-section-link .dashicons-admin-generic:before{position:relative;left:1px}.wpseo-metabox-buy-premium .wpseo-buy-premium{display:inline-block;width:20px;height:20px;margin-right:5px;padding:0}.yoast-help-panel{max-width:none!important}#wpseo-crawl-issues-table-form .subsubsub{float:none;max-width:calc(100vw - 20px)}#wpseo-crawl-issues-table-form .yoast-help-button{margin-top:3px}.wpseotab select[multiple]{height:auto!important}}@media screen and (max-width:600px){.wpseotab{padding:20px}.wpseotab.content{padding:20px 0}}
 
css/dist/metabox-800-rtl.min.css ADDED
@@ -0,0 +1 @@
 
1
+ .yoast-tooltip{position:relative}button.yoast-tooltip{overflow:visible}.yoast-tooltip::after{display:none;position:absolute;z-index:1000000;padding:6px 8px 5px;border-radius:3px;opacity:0;color:#fff;background:rgba(0,0,0,.8);text-shadow:none;font:normal normal 11px/1.45454545 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";text-align:center;white-space:pre;text-decoration:none;letter-spacing:normal;text-transform:none;word-wrap:break-word;content:attr(aria-label);pointer-events:none;-webkit-font-smoothing:subpixel-antialiased}.yoast-tooltip-alt::after{content:attr(data-label)}.yoast-tooltip::before{display:none;position:absolute;z-index:1000001;width:0;height:0;border:5px solid transparent;opacity:0;color:rgba(0,0,0,.8);content:"\00a0";pointer-events:none}@keyframes yoast-tooltip-appear{from{opacity:0}to{opacity:1}}.yoast-tooltip:active::after,.yoast-tooltip:active::before,.yoast-tooltip:focus::after,.yoast-tooltip:focus::before,.yoast-tooltip:hover::after,.yoast-tooltip:hover::before{display:inline-block;text-decoration:none;animation-name:yoast-tooltip-appear;animation-duration:.1s;animation-timing-function:ease-in;animation-delay:.4s;animation-fill-mode:forwards}.yoast-tooltip-no-delay:active::after,.yoast-tooltip-no-delay:active::before,.yoast-tooltip-no-delay:focus::after,.yoast-tooltip-no-delay:focus::before,.yoast-tooltip-no-delay:hover::after,.yoast-tooltip-no-delay:hover::before{opacity:1;animation:none}.yoast-tooltip-multiline:active::after,.yoast-tooltip-multiline:focus::after,.yoast-tooltip-multiline:hover::after{display:table-cell}.yoast-tooltip-s::after,.yoast-tooltip-se::after,.yoast-tooltip-sw::after{top:100%;left:50%;margin-top:5px}.yoast-tooltip-s::before,.yoast-tooltip-se::before,.yoast-tooltip-sw::before{top:auto;left:50%;bottom:-5px;margin-left:-5px;border-bottom-color:rgba(0,0,0,.8)}.yoast-tooltip-se::after{left:auto;right:50%;margin-right:-15px}.yoast-tooltip-sw::after{margin-left:-15px}.yoast-tooltip-n::after,.yoast-tooltip-ne::after,.yoast-tooltip-nw::after{left:50%;bottom:100%;margin-bottom:5px}.yoast-tooltip-n::before,.yoast-tooltip-ne::before,.yoast-tooltip-nw::before{top:-5px;left:50%;bottom:auto;margin-left:-5px;border-top-color:rgba(0,0,0,.8)}.yoast-tooltip-ne::after{left:auto;right:50%;margin-right:-15px}.yoast-tooltip-nw::after{margin-left:-15px}.yoast-tooltip-n::after,.yoast-tooltip-s::after{-ms-transform:translateX(-50%);transform:translateX(-50%)}.yoast-tooltip-w::after{left:100%;bottom:50%;margin-left:5px;-ms-transform:translateY(50%);transform:translateY(50%)}.yoast-tooltip-w::before{top:50%;bottom:50%;right:-5px;margin-top:-5px;border-right-color:rgba(0,0,0,.8)}.yoast-tooltip-e::after{bottom:50%;right:100%;margin-right:5px;-ms-transform:translateY(50%);transform:translateY(50%)}.yoast-tooltip-e::before{top:50%;left:-5px;bottom:50%;margin-top:-5px;border-left-color:rgba(0,0,0,.8)}.yoast-tooltip-multiline::after{width:250px;width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:250px;border-collapse:separate;white-space:pre-line;word-wrap:normal;word-break:break-word}.yoast-tooltip-multiline.yoast-tooltip-n::after,.yoast-tooltip-multiline.yoast-tooltip-s::after{left:auto;right:50%;-ms-transform:translateX(50%);transform:translateX(50%)}.yoast-tooltip-multiline.yoast-tooltip-e::after,.yoast-tooltip-multiline.yoast-tooltip-w::after{left:100%}@media screen and (min-width:0\0){.yoast-tooltip-multiline::after{width:250px}}.yoast-tooltip-sticky::after,.yoast-tooltip-sticky::before{display:inline-block}.yoast-tooltip-sticky.yoast-tooltip-multiline::after{display:table-cell}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min--moz-device-pixel-ratio:2),only screen and (-moz-min-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2),only screen and (min-resolution:192dpi),only screen and (min-resolution:2dppx){.yoast-tooltip-w::after{margin-left:4.5px}}.postbox .yoast-help-center__button{min-height:0;margin:0;padding:8px 0;border:none;color:#0073aa;box-shadow:none;font:inherit;text-decoration:underline;text-transform:none}.wpseotab label,.wpseotab legend{font-weight:600}.postbox .yoast-help-center__button svg{margin:0 13px}#edittag .yoast-video-tutorial__video-container{float:none;max-width:100%;margin:0 auto}#edittag .yoast-video-tutorial__descriptions{margin:0 auto;padding:0}@media screen and (max-width:1480px){#poststuff .yoast-video-tutorial__video-container{float:none;max-width:100%;margin:0 auto}#poststuff .yoast-video-tutorial__descriptions{margin:0 auto;padding:0}}.wpseo-metabox #yoast-help-center-container{margin:8px 0}.draftJsMentionPlugin__mention__29BEd,.draftJsMentionPlugin__mention__29BEd:visited{display:inline-block;padding-left:2px;padding-right:2px;border-radius:2px;color:#575f67;background:#e6f3ff;text-decoration:none;cursor:pointer}.draftJsMentionPlugin__mention__29BEd:focus,.draftJsMentionPlugin__mention__29BEd:hover{outline:0;color:#677584;background:#edf5fd}.draftJsMentionPlugin__mention__29BEd:active{color:#222;background:#455261}.draftJsMentionPlugin__mentionSuggestionsEntry__3mSwm{padding:7px 10px 3px;transition:background-color .4s cubic-bezier(.27,1.27,.48,.56)}.draftJsMentionPlugin__mentionSuggestionsEntry__3mSwm:active{background-color:#cce7ff}.draftJsMentionPlugin__mentionSuggestionsEntryFocused__3LcTd{background-color:#e6f3ff}.draftJsMentionPlugin__mentionSuggestionsEntryText__3Jobq{display:inline-block;overflow:hidden;max-width:368px;margin-bottom:.2em;margin-right:8px;font-size:.9em;white-space:nowrap;text-overflow:ellipsis}.draftJsMentionPlugin__mentionSuggestionsEntryAvatar__1xgA9{display:inline-block;width:24px;height:24px;border-radius:12px}.draftJsMentionPlugin__mentionSuggestions__2DWjA{display:-ms-flexbox;display:flex;flex-direction:column;position:absolute;z-index:2;box-sizing:border-box;min-width:220px;max-width:440px;margin-top:.4em;padding-top:8px;padding-bottom:8px;border:1px solid #eee;border-radius:2px;background:#fff;box-shadow:0 4px 30px 0 #dcdcdc;cursor:pointer;-ms-transform:scale(0);transform:scale(0);-ms-flex-direction:column}#edittag>#wp-description-wrap,.DraftEditorPlaceholder-hidden{display:none}.DraftEditor-root,.public-DraftEditor-block{position:relative}.DraftEditor-editorContainer,.DraftEditor-root,.public-DraftEditor-content{height:inherit;text-align:initial}.public-DraftEditor-content[contenteditable=true]{-webkit-user-modify:read-write-plaintext-only}.DraftEditor-editorContainer{position:relative;z-index:1;border-left:.1px solid transparent;background-color:rgba(255,255,255,0)}.DraftEditor-alignLeft .public-DraftStyleDefault-block{text-align:left}.DraftEditor-alignLeft .public-DraftEditorPlaceholder-root{left:0;text-align:left}.DraftEditor-alignCenter .public-DraftStyleDefault-block{text-align:center}.DraftEditor-alignCenter .public-DraftEditorPlaceholder-root{width:100%;margin:0 auto;text-align:center}.DraftEditor-alignRight .public-DraftStyleDefault-block{text-align:right}.DraftEditor-alignRight .public-DraftEditorPlaceholder-root{right:0;text-align:right}.public-DraftEditorPlaceholder-root{position:absolute;z-index:1;color:#9197a3}.public-DraftEditorPlaceholder-hasFocus{color:#bdc1c9}.public-DraftStyleDefault-block{position:relative;white-space:pre-wrap}.public-DraftStyleDefault-ltr{text-align:left;direction:ltr}.public-DraftStyleDefault-rtl{text-align:right;direction:rtl}.public-DraftStyleDefault-listLTR{direction:ltr}.public-DraftStyleDefault-listRTL{direction:rtl}.public-DraftStyleDefault-ol,.public-DraftStyleDefault-ul{margin:16px 0;padding:0}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-listLTR{margin-left:1.5em}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-listRTL{margin-right:1.5em}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-listLTR{margin-left:3em}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-listRTL{margin-right:3em}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-listLTR{margin-left:4.5em}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-listRTL{margin-right:4.5em}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-listLTR{margin-left:6em}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-listRTL{margin-right:6em}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-listLTR{margin-left:7.5em}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-listRTL{margin-right:7.5em}.public-DraftStyleDefault-unorderedListItem{position:relative;list-style-type:square}.public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth0{list-style-type:disc}.public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth1{list-style-type:circle}.public-DraftStyleDefault-orderedListItem{position:relative;list-style-type:none}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listLTR:before{position:absolute;left:-36px;width:30px;text-align:right}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listRTL:before{position:absolute;right:-36px;width:30px;text-align:left}.public-DraftStyleDefault-orderedListItem:before{content:counter(ol0) ". ";counter-increment:ol0}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth1:before{content:counter(ol1) ". ";counter-increment:ol1}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth2:before{content:counter(ol2) ". ";counter-increment:ol2}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth3:before{content:counter(ol3) ". ";counter-increment:ol3}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth4:before{content:counter(ol4) ". ";counter-increment:ol4}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-reset{counter-reset:ol0}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-reset{counter-reset:ol1}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-reset{counter-reset:ol2}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-reset{counter-reset:ol3}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-reset{counter-reset:ol4}#wpseo_meta{box-sizing:border-box}#wpseo_meta *,#wpseo_meta :after,#wpseo_meta :before{box-sizing:inherit}#wp-description-wrap .wp-editor-area{border:0}.term-description-wrap td>textarea#description{min-height:530px}ul.wpseo-metabox-tabs{display:none;margin-top:6px;margin-bottom:0}ul.wpseo-metabox-tabs:after{display:table;clear:both;content:""}.wpseo-metabox-tabs-div{margin:0 5px 5px}.wpseo-metabox-tabs-div ul{list-style:none}#wpseo-meta-section-addons{padding:0 5px 5px}#wpseo-meta-section-addons .wpseo-metabox-tabs-div{margin:0}ul.wpseo-metabox-tabs li.active{background-color:#fdfdfd}.wpseo-meta-section,.wpseo-meta-section-react{display:none;width:100%;max-width:calc(100% - 50px);height:auto;min-height:100%;vertical-align:top}.wpseo-meta-section.active{display:inline-block;box-shadow:0 1px 2px rgba(0,0,0,.2)}.wpseo-meta-section-react.active{display:block;margin-bottom:10px;box-shadow:0 1px 2px rgba(0,0,0,.2)}.wpseo-metabox-content{display:-ms-flexbox;display:flex}.wpseo-metabox-sidebar{width:46px;padding:0;background-color:#fff}.wpseo-metabox-sidebar ul{margin:0 0 0 1px}.wpseo-metabox-sidebar ul li:nth-child(1){z-index:10}.wpseo-metabox-sidebar ul li:nth-child(2){z-index:9}.wpseo-metabox-sidebar ul li:nth-child(3){z-index:8}.wpseo-metabox-sidebar ul li:nth-child(4){z-index:7}.wpseo-metabox-sidebar ul li:nth-child(5){z-index:6}.wpseo-metabox-sidebar ul li:nth-child(6){z-index:5}.wpseo-metabox-sidebar ul li{display:block;position:relative;margin-bottom:0;box-shadow:0 1px 2px rgba(0,0,0,.2);text-align:center}.wpseo-metabox-sidebar ul li a{padding:8px;color:#000;background-color:#f8f8f8}.wpseo-metabox-sidebar ul li .yst-traffic-light{margin:0}.wpseo-metabox-sidebar ul li span.dashicons{width:100%}.wpseo-metabox-sidebar ul li span.wpseo-buy-premium{color:#a4286a}.wpseo-metabox-sidebar ul li span.wpseo-buy-premium:hover{color:#832055}.wpseo-metabox-sidebar ul li.active{z-index:50}.wpseo-metabox-sidebar ul li.active:after{display:block;float:left;position:absolute;z-index:110;top:0;left:-3px;width:3px;height:46px;background-color:#fff;content:" "}.wpseo-metabox-sidebar ul li.active a{color:#0073aa;background-color:#fff}.wpseo-metabox-sidebar ul li.active span.wpseo-buy-premium{border-color:#a4286a;color:#a4286a}.wpseo-metabox-sidebar ul li.active span.wpseo-buy-premium:hover{border-color:#832055;color:#832055}.wpseo-metabox-sidebar a{display:block;padding:5px;vertical-align:middle;text-decoration:none}ul.wpseo-metabox-tabs li{float:right;margin-left:5px;margin-bottom:-1px;padding:0;border:1px solid #dfdfdf;border-bottom:0 none}ul.wpseo-metabox-tabs li .wpseo-keyword{display:inline-block;overflow:hidden;max-width:8em;max-width:8rem;vertical-align:top;white-space:nowrap;text-overflow:ellipsis}.wpseotab{display:none;padding:16px;border:1px solid #ddd;background-color:#fdfdfd}.wpseotab .wpseo-cornerstone-checkbox{margin-left:.5em}.wpseotab.content{padding:20px 15px}.wpseotab.active{display:block}.wpseo-metabox-tabs .wpseo_tablink{display:inline-block;padding:5px 12px 6px;vertical-align:top;text-decoration:none}.wpseo-metabox-tabs .wpseo_content_tab a{padding-left:12px}.wpseo-metabox-tabs .wpseo-score-icon{margin-right:0}#wpseo-meta-section-social .wpseo-metabox-tabs .wpseo_tablink{padding:5px 7px}.wpseo-metabox-tabs .wpseo_tablink .dashicons{width:16px;height:16px;font-size:16px}.wpseo-metabox-sidebar .dashicons{width:30px;height:30px;font-size:30px}.wpseo-metabox-tabs-div div.wpseo-tabs-panel{overflow:auto;padding:.5em .9em;border:1px solid}#wpseo_meta .inside{margin:0}#wpseo_meta .inside::after{display:table;clear:both;content:""}#wpseo_meta .postbox .inside .wpseotab{font-size:13px!important}.wpseotab .select2-container,.wpseotab input,.wpseotab label,.wpseotab p.error-message,.wpseotab textarea,.yoast-metabox__description{max-width:600px}.wpseotab fieldset{padding-top:5px}.wpseotab label{display:block}.wpseotab input[type=radio]+label,.wpseotab input[type=checkbox]+label{display:inline-block;font-weight:400}.wpseotab fieldset,.wpseotab label{margin-top:2em;margin-bottom:.5em}.wpseotab input[type=checkbox],.wpseotab input[type=checkbox]+label{margin-top:2em;margin-bottom:0;font-size:1em}.wpseotab fieldset:first-child,.wpseotab input[type=checkbox]:first-child,.wpseotab input[type=checkbox]:first-child+label,.wpseotab label:first-child{margin-top:10px}.wpseotab input[type=radio]{margin-top:0}.wpseotab input[type=radio]+label{margin:0 0 0 1em}.wpseotab p.error-message,.yoast-metabox__description{margin:.5em 0}.wpseotab select[multiple]{margin-top:0}.wpseotab .wpseo_image_upload_button{margin-right:3px}.good,.warn,.wrong{font-weight:600}.good{color:green}.warn{color:maroon}.wrong{color:#dc3232}#current_seo_title span{padding:2px 5px;background-color:#ffffe0}#focuskwresults ul{margin:0}#focuskwresults li,#focuskwresults p{font-size:13px}#focuskwresults li{margin:0 20px 0 0;list-style-type:disc}.wpseo_hidden{display:none}.wpseo_msg{margin:5px 0 10px;padding:0 5px;border:1px solid #e6db55;background-color:#ffffe0}ul.wpseo-metabox-tabs li.wpseo-tab-add-keyword{border:1px dashed #dfdfdf;border-bottom:none}.wpseo-tab-add-keyword .wpseo-add-keyword.button{height:auto;padding:5px 10px 5px 12px;background:0 0;box-shadow:none;font-size:inherit;font-weight:700;line-height:inherit;vertical-align:top;text-decoration:none}.wpseo-tab-add-keyword .wpseo-add-keyword.button:focus{box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}.wpseo-tab-add-keyword .wpseo-add-keyword.button:active{-ms-transform:none;transform:none}.wpseo-add-keyword-plus{display:inline-block;margin:-1px 0 0 3px;font-size:20px;vertical-align:top}#wpseo-add-keyword-popup-title{margin:1em 0;font-size:1.3em}.snippet-editor__button.snippet-editor__edit-button:focus{border-color:#5b9dd9;outline:0;color:#23282d;background-color:#fafafa;box-shadow:0 0 3px rgba(0,115,170,.8)}.wpseo-admin-page .subsubsub li{display:inline;max-width:none}.yoast-seo-help-container{float:right;width:100%;max-width:none}.yoast-seo-help-container .yoast-help-panel{margin:.5em 0!important}.wpseo_content_wrapper p.search-box{margin:10px 0 5px}.wpseo-metabox-tabs .active a{color:#333}#wpseotab .ui-widget-content .ui-state-hover{border:1px solid #dfdfdf;color:#333;background:#f1f1f1}.yst-traffic-light-container{display:block;height:30px}.yst-traffic-light{width:19px;height:30px;margin:0 5px 0 0}.yst-traffic-light .traffic-light-color{display:none}.yst-traffic-light.bad .traffic-light-red,.yst-traffic-light.good .traffic-light-green,.yst-traffic-light.init .traffic-light-init,.yst-traffic-light.na .traffic-light-empty,.yst-traffic-light.ok .traffic-light-orange{display:inline}#wpseo-score{float:right;margin:0 -5px 0 5px}.yoast-seo-score .yoast-logo.svg{float:right;width:18px;height:18px;margin-left:5px;background:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23999%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E") no-repeat;background-size:18px}.yoast-seo-score .yoast-logo.svg.good{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%237ad03a%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.ok{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23ee7c1b%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.bad{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23dc3232%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.na{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23999%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.noindex{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231e8cbe%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.term-php .wpseo-taxonomy-metabox-postbox>h2{margin:0;padding:8px 12px;border-bottom:1px solid #eee;font-size:14px;line-height:1.4}.wpseo-buy-premium{margin-left:5px;color:#a4286a}.wpseo-metabox-go-to::after{position:static;top:auto;left:auto;width:auto;height:auto;border:none;content:" \00BB"}#wpseo-buy-premium-popup-button.button-buy-premium{border-color:#a4286a;color:#fff;background:#a4286a}.wpseo-metabox-buy-premium{position:absolute;top:0;left:12px;padding:8px 0}.wpseo-metabox-buy-premium .dashicons{text-decoration:none}#TB_window #TB_ajaxContent p{margin:5px 0 0;padding:5px 0 0}#TB_window #TB_ajaxContent ul{margin:5px 0 10px}#TB_window #TB_ajaxContent li{margin:5px 0 0;list-style:none}#TB_window #TB_ajaxContent li::before{margin:0 0 0 10px;font-weight:700;content:"+"}.yoast-section__heading-icon-list{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M384%201408q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm0%2D512q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm1408%20416v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5zm%2D1408%2D928q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm1408%20416v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5zm0%2D512v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-section__heading-icon-key{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M832%20512q0%2D80%2D56%2D136t%2D136%2D56%2D136%2056%2D56%20136q0%2042%2019%2083%2D41%2D19%2D83%2D19%2D80%200%2D136%2056t%2D56%20136%2056%20136%20136%2056%20136%2D56%2056%2D136q0%2D42%2D19%2D83%2041%2019%2083%2019%2080%200%20136%2D56t56%2D136zm851%20704q0%2017%2D49%2066t%2D66%2049q%2D9%200%2D28%2E5%2D16t%2D36%2E5%2D33%2D38%2E5%2D40%2D24%2E5%2D26l%2D96%2096%20220%20220q28%2028%2028%2068%200%2042%2D39%2081t%2D81%2039q%2D40%200%2D68%2D28l%2D671%2D671q%2D176%20131%2D365%20131%2D163%200%2D265%2E5%2D102%2E5t%2D102%2E5%2D265%2E5q0%2D160%2095%2D313t248%2D248%20313%2D95q163%200%20265%2E5%20102%2E5t102%2E5%20265%2E5q0%20189%2D131%20365l355%20355%2096%2D96q%2D3%2D3%2D26%2D24%2E5t%2D40%2D38%2E5%2D33%2D36%2E5%2D16%2D28%2E5q0%2D17%2049%2D66t66%2D49q13%200%2023%2010%206%206%2046%2044%2E5t82%2079%2E5%2086%2E5%2086%2073%2078%2028%2E5%2041z%22%2F%3E%3C%2Fsvg%3E")}.yoast-section__heading-icon-edit{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M491%201536l91%2D91%2D235%2D235%2D91%2091v107h128v128h107zm523%2D928q0%2D22%2D22%2D22%2D10%200%2D17%207l%2D542%20542q%2D7%207%2D7%2017%200%2022%2022%2022%2010%200%2017%2D7l542%2D542q7%2D7%207%2D17zm%2D54%2D192l416%20416%2D832%20832h%2D416v%2D416zm683%2096q0%2053%2D37%2090l%2D166%20166%2D416%2D416%20166%2D165q36%2D38%2090%2D38%2053%200%2091%2038l235%20234q37%2039%2037%2091z%22%20%2F%3E%3C%2Fsvg%3E")}.yoast-section{position:relative;padding:0 20px 15px;background-color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2)}.yoast-section__heading{margin:0 -20px 15px;padding:8px 20px;color:#555;font-family:"Open Sans",sans-serif;font-size:1rem;font-weight:300}.yoast-section__heading-icon{padding-right:44px;background-repeat:no-repeat;background-position:right 20px top .6em;background-size:16px}.yoast-section,.yoast-section *,.yoast-section :after,.yoast-section :before,.yoast-section:after,.yoast-section:before{box-sizing:border-box}.yoast-tooltip.yoast-tooltip-hidden::after,.yoast-tooltip.yoast-tooltip-hidden::before{display:none}.screen-reader-text.wpseo-generic-tab-textual-score,.screen-reader-text.wpseo-keyword-tab-textual-score{display:block}.yoast-notice-go-premium{margin:0;border-right-color:#a4286a;background:#f1f1f1}@media screen and (max-width:782px){.wpseo-metabox-buy-premium .wpseo-buy-premium{display:inline-block;width:20px;height:20px;margin-left:5px;padding:0}.yoast-help-panel{max-width:none!important}#wpseo-crawl-issues-table-form .subsubsub{float:none;max-width:calc(100vw - 20px)}#wpseo-crawl-issues-table-form .yoast-help-button{margin-top:3px}.wpseotab select[multiple]{height:auto!important}}@media screen and (max-width:600px){.wpseotab.content{padding:16px 0}}
css/dist/metabox-800.min.css ADDED
@@ -0,0 +1 @@
 
1
+ .yoast-tooltip{position:relative}button.yoast-tooltip{overflow:visible}.yoast-tooltip::after{display:none;position:absolute;z-index:1000000;padding:6px 8px 5px;border-radius:3px;opacity:0;color:#fff;background:rgba(0,0,0,.8);text-shadow:none;font:normal normal 11px/1.45454545 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";text-align:center;white-space:pre;text-decoration:none;letter-spacing:normal;text-transform:none;word-wrap:break-word;content:attr(aria-label);pointer-events:none;-webkit-font-smoothing:subpixel-antialiased}.yoast-tooltip-alt::after{content:attr(data-label)}.yoast-tooltip::before{display:none;position:absolute;z-index:1000001;width:0;height:0;border:5px solid transparent;opacity:0;color:rgba(0,0,0,.8);content:"\00a0";pointer-events:none}@keyframes yoast-tooltip-appear{from{opacity:0}to{opacity:1}}.yoast-tooltip:active::after,.yoast-tooltip:active::before,.yoast-tooltip:focus::after,.yoast-tooltip:focus::before,.yoast-tooltip:hover::after,.yoast-tooltip:hover::before{display:inline-block;text-decoration:none;animation-name:yoast-tooltip-appear;animation-duration:.1s;animation-timing-function:ease-in;animation-delay:.4s;animation-fill-mode:forwards}.yoast-tooltip-no-delay:active::after,.yoast-tooltip-no-delay:active::before,.yoast-tooltip-no-delay:focus::after,.yoast-tooltip-no-delay:focus::before,.yoast-tooltip-no-delay:hover::after,.yoast-tooltip-no-delay:hover::before{opacity:1;animation:none}.yoast-tooltip-multiline:active::after,.yoast-tooltip-multiline:focus::after,.yoast-tooltip-multiline:hover::after{display:table-cell}.yoast-tooltip-s::after,.yoast-tooltip-se::after,.yoast-tooltip-sw::after{top:100%;right:50%;margin-top:5px}.yoast-tooltip-s::before,.yoast-tooltip-se::before,.yoast-tooltip-sw::before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.yoast-tooltip-se::after{right:auto;left:50%;margin-left:-15px}.yoast-tooltip-sw::after{margin-right:-15px}.yoast-tooltip-n::after,.yoast-tooltip-ne::after,.yoast-tooltip-nw::after{right:50%;bottom:100%;margin-bottom:5px}.yoast-tooltip-n::before,.yoast-tooltip-ne::before,.yoast-tooltip-nw::before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.yoast-tooltip-ne::after{right:auto;left:50%;margin-left:-15px}.yoast-tooltip-nw::after{margin-right:-15px}.yoast-tooltip-n::after,.yoast-tooltip-s::after{-ms-transform:translateX(50%);transform:translateX(50%)}.yoast-tooltip-w::after{right:100%;bottom:50%;margin-right:5px;-ms-transform:translateY(50%);transform:translateY(50%)}.yoast-tooltip-w::before{top:50%;bottom:50%;left:-5px;margin-top:-5px;border-left-color:rgba(0,0,0,.8)}.yoast-tooltip-e::after{bottom:50%;left:100%;margin-left:5px;-ms-transform:translateY(50%);transform:translateY(50%)}.yoast-tooltip-e::before{top:50%;right:-5px;bottom:50%;margin-top:-5px;border-right-color:rgba(0,0,0,.8)}.yoast-tooltip-multiline::after{width:250px;width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:250px;border-collapse:separate;white-space:pre-line;word-wrap:normal;word-break:break-word}.yoast-tooltip-multiline.yoast-tooltip-n::after,.yoast-tooltip-multiline.yoast-tooltip-s::after{right:auto;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%)}.yoast-tooltip-multiline.yoast-tooltip-e::after,.yoast-tooltip-multiline.yoast-tooltip-w::after{right:100%}@media screen and (min-width:0\0){.yoast-tooltip-multiline::after{width:250px}}.yoast-tooltip-sticky::after,.yoast-tooltip-sticky::before{display:inline-block}.yoast-tooltip-sticky.yoast-tooltip-multiline::after{display:table-cell}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min--moz-device-pixel-ratio:2),only screen and (-moz-min-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2),only screen and (min-resolution:192dpi),only screen and (min-resolution:2dppx){.yoast-tooltip-w::after{margin-right:4.5px}}.postbox .yoast-help-center__button{min-height:0;margin:0;padding:8px 0;border:none;color:#0073aa;box-shadow:none;font:inherit;text-decoration:underline;text-transform:none}.wpseotab label,.wpseotab legend{font-weight:600}.postbox .yoast-help-center__button svg{margin:0 13px}#edittag .yoast-video-tutorial__video-container{float:none;max-width:100%;margin:0 auto}#edittag .yoast-video-tutorial__descriptions{margin:0 auto;padding:0}@media screen and (max-width:1480px){#poststuff .yoast-video-tutorial__video-container{float:none;max-width:100%;margin:0 auto}#poststuff .yoast-video-tutorial__descriptions{margin:0 auto;padding:0}}.wpseo-metabox #yoast-help-center-container{margin:8px 0}.draftJsMentionPlugin__mention__29BEd,.draftJsMentionPlugin__mention__29BEd:visited{display:inline-block;padding-right:2px;padding-left:2px;border-radius:2px;color:#575f67;background:#e6f3ff;text-decoration:none;cursor:pointer}.draftJsMentionPlugin__mention__29BEd:focus,.draftJsMentionPlugin__mention__29BEd:hover{outline:0;color:#677584;background:#edf5fd}.draftJsMentionPlugin__mention__29BEd:active{color:#222;background:#455261}.draftJsMentionPlugin__mentionSuggestionsEntry__3mSwm{padding:7px 10px 3px;transition:background-color .4s cubic-bezier(.27,1.27,.48,.56)}.draftJsMentionPlugin__mentionSuggestionsEntry__3mSwm:active{background-color:#cce7ff}.draftJsMentionPlugin__mentionSuggestionsEntryFocused__3LcTd{background-color:#e6f3ff}.draftJsMentionPlugin__mentionSuggestionsEntryText__3Jobq{display:inline-block;overflow:hidden;max-width:368px;margin-bottom:.2em;margin-left:8px;font-size:.9em;white-space:nowrap;text-overflow:ellipsis}.draftJsMentionPlugin__mentionSuggestionsEntryAvatar__1xgA9{display:inline-block;width:24px;height:24px;border-radius:12px}.draftJsMentionPlugin__mentionSuggestions__2DWjA{display:-ms-flexbox;display:flex;flex-direction:column;position:absolute;z-index:2;box-sizing:border-box;min-width:220px;max-width:440px;margin-top:.4em;padding-top:8px;padding-bottom:8px;border:1px solid #eee;border-radius:2px;background:#fff;box-shadow:0 4px 30px 0 #dcdcdc;cursor:pointer;-ms-transform:scale(0);transform:scale(0);-ms-flex-direction:column}#edittag>#wp-description-wrap,.DraftEditorPlaceholder-hidden{display:none}.DraftEditor-root,.public-DraftEditor-block{position:relative}.DraftEditor-editorContainer,.DraftEditor-root,.public-DraftEditor-content{height:inherit;text-align:initial}.public-DraftEditor-content[contenteditable=true]{-webkit-user-modify:read-write-plaintext-only}.DraftEditor-editorContainer{position:relative;z-index:1;border-left:.1px solid transparent;background-color:rgba(255,255,255,0)}.DraftEditor-alignLeft .public-DraftStyleDefault-block{text-align:left}.DraftEditor-alignLeft .public-DraftEditorPlaceholder-root{left:0;text-align:left}.DraftEditor-alignCenter .public-DraftStyleDefault-block{text-align:center}.DraftEditor-alignCenter .public-DraftEditorPlaceholder-root{width:100%;margin:0 auto;text-align:center}.DraftEditor-alignRight .public-DraftStyleDefault-block{text-align:right}.DraftEditor-alignRight .public-DraftEditorPlaceholder-root{right:0;text-align:right}.public-DraftEditorPlaceholder-root{position:absolute;z-index:1;color:#9197a3}.public-DraftEditorPlaceholder-hasFocus{color:#bdc1c9}.public-DraftStyleDefault-block{position:relative;white-space:pre-wrap}.public-DraftStyleDefault-ltr{text-align:left;direction:ltr}.public-DraftStyleDefault-rtl{text-align:right;direction:rtl}.public-DraftStyleDefault-listLTR{direction:ltr}.public-DraftStyleDefault-listRTL{direction:rtl}.public-DraftStyleDefault-ol,.public-DraftStyleDefault-ul{margin:16px 0;padding:0}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-listLTR{margin-left:1.5em}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-listRTL{margin-right:1.5em}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-listLTR{margin-left:3em}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-listRTL{margin-right:3em}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-listLTR{margin-left:4.5em}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-listRTL{margin-right:4.5em}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-listLTR{margin-left:6em}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-listRTL{margin-right:6em}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-listLTR{margin-left:7.5em}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-listRTL{margin-right:7.5em}.public-DraftStyleDefault-unorderedListItem{position:relative;list-style-type:square}.public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth0{list-style-type:disc}.public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth1{list-style-type:circle}.public-DraftStyleDefault-orderedListItem{position:relative;list-style-type:none}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listLTR:before{position:absolute;left:-36px;width:30px;text-align:right}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listRTL:before{position:absolute;right:-36px;width:30px;text-align:left}.public-DraftStyleDefault-orderedListItem:before{content:counter(ol0) ". ";counter-increment:ol0}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth1:before{content:counter(ol1) ". ";counter-increment:ol1}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth2:before{content:counter(ol2) ". ";counter-increment:ol2}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth3:before{content:counter(ol3) ". ";counter-increment:ol3}.public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth4:before{content:counter(ol4) ". ";counter-increment:ol4}.public-DraftStyleDefault-depth0.public-DraftStyleDefault-reset{counter-reset:ol0}.public-DraftStyleDefault-depth1.public-DraftStyleDefault-reset{counter-reset:ol1}.public-DraftStyleDefault-depth2.public-DraftStyleDefault-reset{counter-reset:ol2}.public-DraftStyleDefault-depth3.public-DraftStyleDefault-reset{counter-reset:ol3}.public-DraftStyleDefault-depth4.public-DraftStyleDefault-reset{counter-reset:ol4}#wpseo_meta{box-sizing:border-box}#wpseo_meta *,#wpseo_meta :after,#wpseo_meta :before{box-sizing:inherit}#wp-description-wrap .wp-editor-area{border:0}.term-description-wrap td>textarea#description{min-height:530px}ul.wpseo-metabox-tabs{display:none;margin-top:6px;margin-bottom:0}ul.wpseo-metabox-tabs:after{display:table;clear:both;content:""}.wpseo-metabox-tabs-div{margin:0 5px 5px}.wpseo-metabox-tabs-div ul{list-style:none}#wpseo-meta-section-addons{padding:0 5px 5px}#wpseo-meta-section-addons .wpseo-metabox-tabs-div{margin:0}ul.wpseo-metabox-tabs li.active{background-color:#fdfdfd}.wpseo-meta-section,.wpseo-meta-section-react{display:none;width:100%;max-width:calc(100% - 50px);height:auto;min-height:100%;vertical-align:top}.wpseo-meta-section.active{display:inline-block;box-shadow:0 1px 2px rgba(0,0,0,.2)}.wpseo-meta-section-react.active{display:block;margin-bottom:10px;box-shadow:0 1px 2px rgba(0,0,0,.2)}.wpseo-metabox-content{display:-ms-flexbox;display:flex}.wpseo-metabox-sidebar{width:46px;padding:0;background-color:#fff}.wpseo-metabox-sidebar ul{margin:0 1px 0 0}.wpseo-metabox-sidebar ul li:nth-child(1){z-index:10}.wpseo-metabox-sidebar ul li:nth-child(2){z-index:9}.wpseo-metabox-sidebar ul li:nth-child(3){z-index:8}.wpseo-metabox-sidebar ul li:nth-child(4){z-index:7}.wpseo-metabox-sidebar ul li:nth-child(5){z-index:6}.wpseo-metabox-sidebar ul li:nth-child(6){z-index:5}.wpseo-metabox-sidebar ul li{display:block;position:relative;margin-bottom:0;box-shadow:0 1px 2px rgba(0,0,0,.2);text-align:center}.wpseo-metabox-sidebar ul li a{padding:8px;color:#000;background-color:#f8f8f8}.wpseo-metabox-sidebar ul li .yst-traffic-light{margin:0}.wpseo-metabox-sidebar ul li span.dashicons{width:100%}.wpseo-metabox-sidebar ul li span.wpseo-buy-premium{color:#a4286a}.wpseo-metabox-sidebar ul li span.wpseo-buy-premium:hover{color:#832055}.wpseo-metabox-sidebar ul li.active{z-index:50}.wpseo-metabox-sidebar ul li.active:after{display:block;float:right;position:absolute;z-index:110;top:0;right:-3px;width:3px;height:46px;background-color:#fff;content:" "}.wpseo-metabox-sidebar ul li.active a{color:#0073aa;background-color:#fff}.wpseo-metabox-sidebar ul li.active span.wpseo-buy-premium{border-color:#a4286a;color:#a4286a}.wpseo-metabox-sidebar ul li.active span.wpseo-buy-premium:hover{border-color:#832055;color:#832055}.wpseo-metabox-sidebar a{display:block;padding:5px;vertical-align:middle;text-decoration:none}ul.wpseo-metabox-tabs li{float:left;margin-right:5px;margin-bottom:-1px;padding:0;border:1px solid #dfdfdf;border-bottom:0 none}ul.wpseo-metabox-tabs li .wpseo-keyword{display:inline-block;overflow:hidden;max-width:8em;max-width:8rem;vertical-align:top;white-space:nowrap;text-overflow:ellipsis}.wpseotab{display:none;padding:16px;border:1px solid #ddd;background-color:#fdfdfd}.wpseotab .wpseo-cornerstone-checkbox{margin-right:.5em}.wpseotab.content{padding:20px 15px}.wpseotab.active{display:block}.wpseo-metabox-tabs .wpseo_tablink{display:inline-block;padding:5px 12px 6px;vertical-align:top;text-decoration:none}.wpseo-metabox-tabs .wpseo_content_tab a{padding-right:12px}.wpseo-metabox-tabs .wpseo-score-icon{margin-left:0}#wpseo-meta-section-social .wpseo-metabox-tabs .wpseo_tablink{padding:5px 7px}.wpseo-metabox-tabs .wpseo_tablink .dashicons{width:16px;height:16px;font-size:16px}.wpseo-metabox-sidebar .dashicons{width:30px;height:30px;font-size:30px}.wpseo-metabox-tabs-div div.wpseo-tabs-panel{overflow:auto;padding:.5em .9em;border:1px solid}#wpseo_meta .inside{margin:0}#wpseo_meta .inside::after{display:table;clear:both;content:""}#wpseo_meta .postbox .inside .wpseotab{font-size:13px!important}.wpseotab .select2-container,.wpseotab input,.wpseotab label,.wpseotab p.error-message,.wpseotab textarea,.yoast-metabox__description{max-width:600px}.wpseotab fieldset{padding-top:5px}.wpseotab label{display:block}.wpseotab input[type=radio]+label,.wpseotab input[type=checkbox]+label{display:inline-block;font-weight:400}.wpseotab fieldset,.wpseotab label{margin-top:2em;margin-bottom:.5em}.wpseotab input[type=checkbox],.wpseotab input[type=checkbox]+label{margin-top:2em;margin-bottom:0;font-size:1em}.wpseotab fieldset:first-child,.wpseotab input[type=checkbox]:first-child,.wpseotab input[type=checkbox]:first-child+label,.wpseotab label:first-child{margin-top:10px}.wpseotab input[type=radio]{margin-top:0}.wpseotab input[type=radio]+label{margin:0 1em 0 0}.wpseotab p.error-message,.yoast-metabox__description{margin:.5em 0}.wpseotab select[multiple]{margin-top:0}.wpseotab .wpseo_image_upload_button{margin-left:3px}.good,.warn,.wrong{font-weight:600}.good{color:green}.warn{color:maroon}.wrong{color:#dc3232}#current_seo_title span{padding:2px 5px;background-color:#ffffe0}#focuskwresults ul{margin:0}#focuskwresults li,#focuskwresults p{font-size:13px}#focuskwresults li{margin:0 0 0 20px;list-style-type:disc}.wpseo_hidden{display:none}.wpseo_msg{margin:5px 0 10px;padding:0 5px;border:1px solid #e6db55;background-color:#ffffe0}ul.wpseo-metabox-tabs li.wpseo-tab-add-keyword{border:1px dashed #dfdfdf;border-bottom:none}.wpseo-tab-add-keyword .wpseo-add-keyword.button{height:auto;padding:5px 12px 5px 10px;background:0 0;box-shadow:none;font-size:inherit;font-weight:700;line-height:inherit;vertical-align:top;text-decoration:none}.wpseo-tab-add-keyword .wpseo-add-keyword.button:focus{box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,.8)}.wpseo-tab-add-keyword .wpseo-add-keyword.button:active{-ms-transform:none;transform:none}.wpseo-add-keyword-plus{display:inline-block;margin:-1px 3px 0 0;font-size:20px;vertical-align:top}#wpseo-add-keyword-popup-title{margin:1em 0;font-size:1.3em}.snippet-editor__button.snippet-editor__edit-button:focus{border-color:#5b9dd9;outline:0;color:#23282d;background-color:#fafafa;box-shadow:0 0 3px rgba(0,115,170,.8)}.wpseo-admin-page .subsubsub li{display:inline;max-width:none}.yoast-seo-help-container{float:left;width:100%;max-width:none}.yoast-seo-help-container .yoast-help-panel{margin:.5em 0!important}.wpseo_content_wrapper p.search-box{margin:10px 0 5px}.wpseo-metabox-tabs .active a{color:#333}#wpseotab .ui-widget-content .ui-state-hover{border:1px solid #dfdfdf;color:#333;background:#f1f1f1}.yst-traffic-light-container{display:block;height:30px}.yst-traffic-light{width:19px;height:30px;margin:0 0 0 5px}.yst-traffic-light .traffic-light-color{display:none}.yst-traffic-light.bad .traffic-light-red,.yst-traffic-light.good .traffic-light-green,.yst-traffic-light.init .traffic-light-init,.yst-traffic-light.na .traffic-light-empty,.yst-traffic-light.ok .traffic-light-orange{display:inline}#wpseo-score{float:left;margin:0 5px 0 -5px}.yoast-seo-score .yoast-logo.svg{float:left;width:18px;height:18px;margin-right:5px;background:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23999%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E") no-repeat;background-size:18px}.yoast-seo-score .yoast-logo.svg.good{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%237ad03a%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.ok{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23ee7c1b%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.bad{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23dc3232%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.na{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23999%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-seo-score .yoast-logo.svg.noindex{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%231e8cbe%22%20d%3D%22M403%20218h691l%2D26%2072h%2D665q%2D110%200%2D188%2E5%2079t%2D78%2E5%20189v771q0%2095%2060%2E5%20169%2E5t153%2E5%2093%2E5q23%205%2098%205v72h%2D45q%2D140%200%2D239%2E5%2D100t%2D99%2E5%2D240v%2D771q0%2D140%2099%2E5%2D240t239%2E5%2D100zm851%2D218h247l%2D482%201294q%2D23%2061%2D40%2E5%20103%2E5t%2D45%2098%2D54%2093%2E5%2D64%2E5%2078%2E5%2D79%2E5%2065%2D95%2E5%2041%2D116%2018%2E5v%2D195q163%2D26%20220%2D182%2020%2D52%2020%2D105%200%2D54%2D20%2D106l%2D285%2D733h228l187%20585zm474%20558v1111h%2D795q37%2D55%2045%2D73h678v%2D1038q0%2D85%2D49%2E5%2D155t%2D129%2E5%2D99l25%2D67q101%2034%20163%2E5%20123%2E5t62%2E5%20197%2E5z%22%2F%3E%3C%2Fsvg%3E")}.term-php .wpseo-taxonomy-metabox-postbox>h2{margin:0;padding:8px 12px;border-bottom:1px solid #eee;font-size:14px;line-height:1.4}.wpseo-buy-premium{margin-right:5px;color:#a4286a}.wpseo-metabox-go-to::after{position:static;top:auto;right:auto;width:auto;height:auto;border:none;content:" \00BB"}#wpseo-buy-premium-popup-button.button-buy-premium{border-color:#a4286a;color:#fff;background:#a4286a}.wpseo-metabox-buy-premium{position:absolute;top:0;right:12px;padding:8px 0}.wpseo-metabox-buy-premium .dashicons{text-decoration:none}#TB_window #TB_ajaxContent p{margin:5px 0 0;padding:5px 0 0}#TB_window #TB_ajaxContent ul{margin:5px 0 10px}#TB_window #TB_ajaxContent li{margin:5px 0 0;list-style:none}#TB_window #TB_ajaxContent li::before{margin:0 10px 0 0;font-weight:700;content:"+"}.yoast-section__heading-icon-list{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M384%201408q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm0%2D512q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm1408%20416v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5zm%2D1408%2D928q0%2080%2D56%20136t%2D136%2056%2D136%2D56%2D56%2D136%2056%2D136%20136%2D56%20136%2056%2056%20136zm1408%20416v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5zm0%2D512v192q0%2013%2D9%2E5%2022%2E5t%2D22%2E5%209%2E5h%2D1216q%2D13%200%2D22%2E5%2D9%2E5t%2D9%2E5%2D22%2E5v%2D192q0%2D13%209%2E5%2D22%2E5t22%2E5%2D9%2E5h1216q13%200%2022%2E5%209%2E5t9%2E5%2022%2E5z%22%2F%3E%3C%2Fsvg%3E")}.yoast-section__heading-icon-key{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M832%20512q0%2D80%2D56%2D136t%2D136%2D56%2D136%2056%2D56%20136q0%2042%2019%2083%2D41%2D19%2D83%2D19%2D80%200%2D136%2056t%2D56%20136%2056%20136%20136%2056%20136%2D56%2056%2D136q0%2D42%2D19%2D83%2041%2019%2083%2019%2080%200%20136%2D56t56%2D136zm851%20704q0%2017%2D49%2066t%2D66%2049q%2D9%200%2D28%2E5%2D16t%2D36%2E5%2D33%2D38%2E5%2D40%2D24%2E5%2D26l%2D96%2096%20220%20220q28%2028%2028%2068%200%2042%2D39%2081t%2D81%2039q%2D40%200%2D68%2D28l%2D671%2D671q%2D176%20131%2D365%20131%2D163%200%2D265%2E5%2D102%2E5t%2D102%2E5%2D265%2E5q0%2D160%2095%2D313t248%2D248%20313%2D95q163%200%20265%2E5%20102%2E5t102%2E5%20265%2E5q0%20189%2D131%20365l355%20355%2096%2D96q%2D3%2D3%2D26%2D24%2E5t%2D40%2D38%2E5%2D33%2D36%2E5%2D16%2D28%2E5q0%2D17%2049%2D66t66%2D49q13%200%2023%2010%206%206%2046%2044%2E5t82%2079%2E5%2086%2E5%2086%2073%2078%2028%2E5%2041z%22%2F%3E%3C%2Fsvg%3E")}.yoast-section__heading-icon-edit{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20role%3D%22img%22%20aria%2Dhidden%3D%22true%22%20focusable%3D%22false%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M491%201536l91%2D91%2D235%2D235%2D91%2091v107h128v128h107zm523%2D928q0%2D22%2D22%2D22%2D10%200%2D17%207l%2D542%20542q%2D7%207%2D7%2017%200%2022%2022%2022%2010%200%2017%2D7l542%2D542q7%2D7%207%2D17zm%2D54%2D192l416%20416%2D832%20832h%2D416v%2D416zm683%2096q0%2053%2D37%2090l%2D166%20166%2D416%2D416%20166%2D165q36%2D38%2090%2D38%2053%200%2091%2038l235%20234q37%2039%2037%2091z%22%20%2F%3E%3C%2Fsvg%3E")}.yoast-section{position:relative;padding:0 20px 15px;background-color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2)}.yoast-section__heading{margin:0 -20px 15px;padding:8px 20px;color:#555;font-family:"Open Sans",sans-serif;font-size:1rem;font-weight:300}.yoast-section__heading-icon{padding-left:44px;background-repeat:no-repeat;background-position:left 20px top .6em;background-size:16px}.yoast-section,.yoast-section *,.yoast-section :after,.yoast-section :before,.yoast-section:after,.yoast-section:before{box-sizing:border-box}.yoast-tooltip.yoast-tooltip-hidden::after,.yoast-tooltip.yoast-tooltip-hidden::before{display:none}.screen-reader-text.wpseo-generic-tab-textual-score,.screen-reader-text.wpseo-keyword-tab-textual-score{display:block}.yoast-notice-go-premium{margin:0;border-left-color:#a4286a;background:#f1f1f1}@media screen and (max-width:782px){.wpseo-metabox-buy-premium .wpseo-buy-premium{display:inline-block;width:20px;height:20px;margin-right:5px;padding:0}.yoast-help-panel{max-width:none!important}#wpseo-crawl-issues-table-form .subsubsub{float:none;max-width:calc(100vw - 20px)}#wpseo-crawl-issues-table-form .yoast-help-button{margin-top:3px}.wpseotab select[multiple]{height:auto!important}}@media screen and (max-width:600px){.wpseotab.content{padding:16px 0}}
css/dist/{metabox-primary-category-791-rtl.min.css → metabox-primary-category-800-rtl.min.css} RENAMED
File without changes
css/dist/{metabox-primary-category-791.min.css → metabox-primary-category-800.min.css} RENAMED
File without changes
css/dist/{search-appearance-791-rtl.min.css → search-appearance-800-rtl.min.css} RENAMED
File without changes
css/dist/{search-appearance-791.min.css → search-appearance-800.min.css} RENAMED
File without changes
css/dist/snippet-791-rtl.min.css DELETED
@@ -1 +0,0 @@
1
- #snippet_preview{font-family:Arial,Helvetica,sans-serif;font-style:normal}.wpseosnippet .snippet-editor__label{font-size:1rem;font-weight:400;line-height:1}input[type=text].snippet-editor__field--invalid{color:#dc3232}
 
css/dist/snippet-791.min.css DELETED
@@ -1 +0,0 @@
1
- #snippet_preview{font-family:Arial,Helvetica,sans-serif;font-style:normal}.wpseosnippet .snippet-editor__label{font-size:1rem;font-weight:400;line-height:1}input[type=text].snippet-editor__field--invalid{color:#dc3232}
 
css/dist/structured-data-blocks-800-rtl.min.css ADDED
@@ -0,0 +1 @@
 
1
+ .schema-how-to-buttons button.components-icon-button:not(:disabled):not([aria-disabled=true]):not(.is-default):hover,.schema-how-to-step-button-container button.components-icon-button:not(:disabled):not([aria-disabled=true]):not(.is-default):hover,button.schema-how-to-duration-button.components-icon-button:not(:disabled):not([aria-disabled=true]):not(.is-default):hover{color:#007cba;box-shadow:none}.schema-how-to-duration .schema-how-to-duration-input[type=number]{width:40px;margin:0 2px;text-align:left;-moz-appearance:textfield}.schema-how-to-duration .schema-how-to-duration-input[type=number]::-webkit-inner-spin-button,.schema-how-to-duration .schema-how-to-duration-input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.schema-how-to-buttons{text-align:center}button.schema-how-to-duration-button.components-icon-button{position:relative;top:5px;padding:8px 0}input+button.schema-how-to-duration-button.components-icon-button{padding:8px}.schema-how-to-description{margin:8px 0}.schema-how-to-step{position:relative;margin:4px 0;padding:8px 32px 8px 4px;border:1px solid #d3d3d3;list-style-type:none}.schema-how-to-step-mover{position:absolute;top:0;right:-29px}.schema-how-to-step-button{margin:0}.schema-how-to-step-number{position:absolute;right:4px;width:24px;text-align:left}.schema-how-to-step-button-container{text-align:left}.schema-how-to-step-button-container .schema-how-to-step-add-media{float:right}
css/dist/structured-data-blocks-800.min.css ADDED
@@ -0,0 +1 @@
 
1
+ .schema-how-to-buttons button.components-icon-button:not(:disabled):not([aria-disabled=true]):not(.is-default):hover,.schema-how-to-step-button-container button.components-icon-button:not(:disabled):not([aria-disabled=true]):not(.is-default):hover,button.schema-how-to-duration-button.components-icon-button:not(:disabled):not([aria-disabled=true]):not(.is-default):hover{color:#007cba;box-shadow:none}.schema-how-to-duration .schema-how-to-duration-input[type=number]{width:40px;margin:0 2px;text-align:right;-moz-appearance:textfield}.schema-how-to-duration .schema-how-to-duration-input[type=number]::-webkit-inner-spin-button,.schema-how-to-duration .schema-how-to-duration-input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.schema-how-to-buttons{text-align:center}button.schema-how-to-duration-button.components-icon-button{position:relative;top:5px;padding:8px 0}input+button.schema-how-to-duration-button.components-icon-button{padding:8px}.schema-how-to-description{margin:8px 0}.schema-how-to-step{position:relative;margin:4px 0;padding:8px 4px 8px 32px;border:1px solid #d3d3d3;list-style-type:none}.schema-how-to-step-mover{position:absolute;top:0;left:-29px}.schema-how-to-step-button{margin:0}.schema-how-to-step-number{position:absolute;left:4px;width:24px;text-align:right}.schema-how-to-step-button-container{text-align:right}.schema-how-to-step-button-container .schema-how-to-step-add-media{float:left}
css/dist/{toggle-switch-791-rtl.min.css → toggle-switch-800-rtl.min.css} RENAMED
File without changes
css/dist/{toggle-switch-791.min.css → toggle-switch-800.min.css} RENAMED
File without changes
css/dist/{wpseo-dismissible-791-rtl.min.css → wpseo-dismissible-800-rtl.min.css} RENAMED
File without changes
css/dist/{wpseo-dismissible-791.min.css → wpseo-dismissible-800.min.css} RENAMED
File without changes
css/dist/{yoast-components-791-rtl.min.css → yoast-components-800-rtl.min.css} RENAMED
File without changes
css/dist/{yoast-components-791.min.css → yoast-components-800.min.css} RENAMED
File without changes
css/dist/{yoast-extensions-791-rtl.min.css → yoast-extensions-800-rtl.min.css} RENAMED
File without changes
css/dist/{yoast-extensions-791.min.css → yoast-extensions-800.min.css} RENAMED
File without changes
css/dist/{yst_plugin_tools-791-rtl.min.css → yst_plugin_tools-800-rtl.min.css} RENAMED
File without changes
css/dist/{yst_plugin_tools-791.min.css → yst_plugin_tools-800.min.css} RENAMED
File without changes
css/dist/{yst_seo_score-791-rtl.min.css → yst_seo_score-800-rtl.min.css} RENAMED
File without changes
css/dist/{yst_seo_score-791.min.css → yst_seo_score-800.min.css} RENAMED
File without changes
inc/class-wpseo-admin-bar-menu.php ADDED
@@ -0,0 +1,626 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO
6
+ */
7
+
8
+ /**
9
+ * Class for the Yoast SEO admin bar menu.
10
+ */
11
+ class WPSEO_Admin_Bar_Menu implements WPSEO_WordPress_Integration {
12
+
13
+ /** The identifier used for the menu. */
14
+ const MENU_IDENTIFIER = 'wpseo-menu';
15
+
16
+ /** The identifier used for the Keyword Research submenu. */
17
+ const KEYWORD_RESEARCH_SUBMENU_IDENTIFIER = 'wpseo-kwresearch';
18
+
19
+ /** The identifier used for the Analysis submenu. */
20
+ const ANALYSIS_SUBMENU_IDENTIFIER = 'wpseo-analysis';
21
+
22
+ /** The identifier used for the Settings submenu. */
23
+ const SETTINGS_SUBMENU_IDENTIFIER = 'wpseo-settings';
24
+
25
+ /** The identifier used for the Network Settings submenu. */
26
+ const NETWORK_SETTINGS_SUBMENU_IDENTIFIER = 'wpseo-network-settings';
27
+
28
+ /** @var WPSEO_Admin_Asset_Manager Asset manager instance. */
29
+ protected $asset_manager;
30
+
31
+ /**
32
+ * Constructor.
33
+ *
34
+ * Sets the asset manager to use.
35
+ *
36
+ * @param WPSEO_Admin_Asset_Manager $asset_manager Optional. Asset manager to use.
37
+ */
38
+ public function __construct( WPSEO_Admin_Asset_Manager $asset_manager = null ) {
39
+ if ( ! $asset_manager ) {
40
+ $asset_manager = new WPSEO_Admin_Asset_Manager();
41
+ }
42
+
43
+ $this->asset_manager = $asset_manager;
44
+ }
45
+
46
+ /**
47
+ * Adds the admin bar menu.
48
+ *
49
+ * @param WP_Admin_Bar $wp_admin_bar Admin bar instance to add the menu to.
50
+ *
51
+ * @return void
52
+ */
53
+ public function add_menu( WP_Admin_Bar $wp_admin_bar ) {
54
+
55
+ // If the current user can't write posts, this is all of no use, so let's not output an admin menu.
56
+ if ( ! current_user_can( 'edit_posts' ) ) {
57
+ return;
58
+ }
59
+
60
+ $this->add_root_menu( $wp_admin_bar );
61
+ $this->add_keyword_research_submenu( $wp_admin_bar );
62
+
63
+ if ( ! is_admin() ) {
64
+ $this->add_analysis_submenu( $wp_admin_bar );
65
+ }
66
+
67
+ if ( ! is_admin() || is_blog_admin() ) {
68
+ $this->add_settings_submenu( $wp_admin_bar );
69
+ }
70
+ elseif ( is_network_admin() ) {
71
+ $this->add_network_settings_submenu( $wp_admin_bar );
72
+ }
73
+ }
74
+
75
+ /**
76
+ * Enqueues admin bar assets.
77
+ *
78
+ * @return void
79
+ */
80
+ public function enqueue_assets() {
81
+ if ( ! is_admin_bar_showing() ) {
82
+ return;
83
+ }
84
+
85
+ // If the current user can't write posts, this is all of no use, so let's not output an admin menu.
86
+ if ( ! current_user_can( 'edit_posts' ) ) {
87
+ return;
88
+ }
89
+
90
+ $this->asset_manager->register_assets();
91
+ $this->asset_manager->enqueue_style( 'adminbar' );
92
+ }
93
+
94
+ /**
95
+ * Registers the hooks.
96
+ *
97
+ * @return void
98
+ */
99
+ public function register_hooks() {
100
+ if ( ! $this->meets_requirements() ) {
101
+ return;
102
+ }
103
+
104
+ add_action( 'admin_bar_menu', array( $this, 'add_menu' ), 95 );
105
+
106
+ add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_assets' ) );
107
+ add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_assets' ) );
108
+ }
109
+
110
+ /**
111
+ * Checks whether the requirements to use this class are met.
112
+ *
113
+ * @return bool True if requirements are met, false otherwise.
114
+ */
115
+ public function meets_requirements() {
116
+ if ( is_network_admin() ) {
117
+ return true;
118
+ }
119
+
120
+ if ( WPSEO_Options::get( 'enable_admin_bar_menu' ) !== true ) {
121
+ return false;
122
+ }
123
+
124
+ return ! is_admin() || is_blog_admin();
125
+ }
126
+
127
+ /**
128
+ * Adds the admin bar root menu.
129
+ *
130
+ * @param WP_Admin_Bar $wp_admin_bar Admin bar instance to add the menu to.
131
+ *
132
+ * @return void
133
+ */
134
+ protected function add_root_menu( WP_Admin_Bar $wp_admin_bar ) {
135
+ $title = $this->get_title();
136
+
137
+ $score = '';
138
+ $settings_url = '';
139
+ $counter = '';
140
+ $alert_popup = '';
141
+
142
+ $post = $this->get_singular_post();
143
+ if ( $post ) {
144
+ $score = $this->get_post_score( $post );
145
+ }
146
+
147
+ $term = $this->get_singular_term();
148
+ if ( $term ) {
149
+ $score = $this->get_term_score( $term );
150
+ }
151
+
152
+ $can_manage_options = $this->can_manage_options();
153
+
154
+ if ( $can_manage_options ) {
155
+ $settings_url = $this->get_settings_page_url();
156
+ }
157
+
158
+ if ( empty( $score ) && ! is_network_admin() && $can_manage_options ) {
159
+ $counter = $this->get_notification_counter();
160
+ $alert_popup = $this->get_notification_alert_popup();
161
+ }
162
+
163
+ $wp_admin_bar->add_menu( array(
164
+ 'id' => self::MENU_IDENTIFIER,
165
+ 'title' => $title . $score . $counter . $alert_popup,
166
+ 'href' => $settings_url,
167
+ 'meta' => array( 'tabindex' => ! empty( $settings_url ) ? false : '0' ),
168
+ ) );
169
+
170
+ if ( ! empty( $counter ) ) {
171
+ $wp_admin_bar->add_menu( array(
172
+ 'parent' => self::MENU_IDENTIFIER,
173
+ 'id' => 'wpseo-notifications',
174
+ 'title' => __( 'Notifications', 'wordpress-seo' ) . $counter,
175
+ 'href' => $settings_url,
176
+ 'meta' => array( 'tabindex' => ! empty( $settings_url ) ? false : '0' ),
177
+ ) );
178
+ }
179
+
180
+ if ( ! is_network_admin() && $can_manage_options ) {
181
+ $wp_admin_bar->add_menu( array(
182
+ 'parent' => self::MENU_IDENTIFIER,
183
+ 'id' => 'wpseo-configuration-wizard',
184
+ 'title' => __( 'Configuration Wizard', 'wordpress-seo' ),
185
+ 'href' => admin_url( 'admin.php?page=' . WPSEO_Configuration_Page::PAGE_IDENTIFIER ),
186
+ ) );
187
+ }
188
+ }
189
+
190
+ /**
191
+ * Adds the admin bar keyword research submenu.
192
+ *
193
+ * @param WP_Admin_Bar $wp_admin_bar Admin bar instance to add the menu to.
194
+ *
195
+ * @return void
196
+ */
197
+ protected function add_keyword_research_submenu( WP_Admin_Bar $wp_admin_bar ) {
198
+ $adwords_url = 'https://adwords.google.com/keywordplanner';
199
+ $trends_url = 'https://www.google.com/trends/explore';
200
+ $seobook_url = 'http://tools.seobook.com/keyword-tools/seobook/';
201
+
202
+ $post = $this->get_singular_post();
203
+ if ( $post ) {
204
+ $focus_keyword = $this->get_post_focus_keyword( $post );
205
+
206
+ if ( ! empty( $focus_keyword ) ) {
207
+ $trends_url .= '#q=' . urlencode( $focus_keyword );
208
+ $seobook_url .= '?keyword=' . urlencode( $focus_keyword );
209
+ }
210
+ }
211
+
212
+ $wp_admin_bar->add_menu( array(
213
+ 'parent' => self::MENU_IDENTIFIER,
214
+ 'id' => self::KEYWORD_RESEARCH_SUBMENU_IDENTIFIER,
215
+ 'title' => __( 'Keyword Research', 'wordpress-seo' ),
216
+ 'meta' => array( 'tabindex' => '0' ),
217
+ ) );
218
+ $wp_admin_bar->add_menu( array(
219
+ 'parent' => self::KEYWORD_RESEARCH_SUBMENU_IDENTIFIER,
220
+ 'id' => 'wpseo-adwordsexternal',
221
+ 'title' => __( 'AdWords External', 'wordpress-seo' ),
222
+ 'href' => $adwords_url,
223
+ 'meta' => array( 'target' => '_blank' ),
224
+ ) );
225
+ $wp_admin_bar->add_menu( array(
226
+ 'parent' => self::KEYWORD_RESEARCH_SUBMENU_IDENTIFIER,
227
+ 'id' => 'wpseo-googleinsights',
228
+ 'title' => __( 'Google Trends', 'wordpress-seo' ),
229
+ 'href' => $trends_url,
230
+ 'meta' => array( 'target' => '_blank' ),
231
+ ) );
232
+ $wp_admin_bar->add_menu( array(
233
+ 'parent' => self::KEYWORD_RESEARCH_SUBMENU_IDENTIFIER,
234
+ 'id' => 'wpseo-wordtracker',
235
+ 'title' => __( 'SEO Book', 'wordpress-seo' ),
236
+ 'href' => $seobook_url,
237
+ 'meta' => array( 'target' => '_blank' ),
238
+ ) );
239
+ }
240
+
241
+ /**
242
+ * Adds the admin bar analysis submenu.
243
+ *
244
+ * @param WP_Admin_Bar $wp_admin_bar Admin bar instance to add the menu to.
245
+ *
246
+ * @return void
247
+ */
248
+ protected function add_analysis_submenu( WP_Admin_Bar $wp_admin_bar ) {
249
+ $url = WPSEO_Frontend::get_instance()->canonical( false );
250
+ $focus_keyword = '';
251
+
252
+ if ( ! $url ) {
253
+ return;
254
+ }
255
+
256
+ $post = $this->get_singular_post();
257
+ if ( $post ) {
258
+ $focus_keyword = $this->get_post_focus_keyword( $post );
259
+ }
260
+
261
+ $wp_admin_bar->add_menu( array(
262
+ 'parent' => self::MENU_IDENTIFIER,
263
+ 'id' => self::ANALYSIS_SUBMENU_IDENTIFIER,
264
+ 'title' => __( 'Analyze this page', 'wordpress-seo' ),
265
+ 'meta' => array( 'tabindex' => '0' ),
266
+ ) );
267
+ $wp_admin_bar->add_menu( array(
268
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
269
+ 'id' => 'wpseo-inlinks-ose',
270
+ 'title' => __( 'Check Inlinks (OSE)', 'wordpress-seo' ),
271
+ 'href' => '//moz.com/researchtools/ose/links?site=' . urlencode( $url ),
272
+ 'meta' => array( 'target' => '_blank' ),
273
+ ) );
274
+ $wp_admin_bar->add_menu( array(
275
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
276
+ 'id' => 'wpseo-kwdensity',
277
+ 'title' => __( 'Check Keyword Density', 'wordpress-seo' ),
278
+ // HTTPS not available.
279
+ 'href' => 'http://www.zippy.co.uk/keyworddensity/index.php?url=' . urlencode( $url ) . '&keyword=' . urlencode( $focus_keyword ),
280
+ 'meta' => array( 'target' => '_blank' ),
281
+ ) );
282
+ $wp_admin_bar->add_menu( array(
283
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
284
+ 'id' => 'wpseo-cache',
285
+ 'title' => __( 'Check Google Cache', 'wordpress-seo' ),
286
+ 'href' => '//webcache.googleusercontent.com/search?strip=1&q=cache:' . urlencode( $url ),
287
+ 'meta' => array( 'target' => '_blank' ),
288
+ ) );
289
+ $wp_admin_bar->add_menu( array(
290
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
291
+ 'id' => 'wpseo-header',
292
+ 'title' => __( 'Check Headers', 'wordpress-seo' ),
293
+ 'href' => '//quixapp.com/headers/?r=' . urlencode( $url ),
294
+ 'meta' => array( 'target' => '_blank' ),
295
+ ) );
296
+ $wp_admin_bar->add_menu( array(
297
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
298
+ 'id' => 'wpseo-structureddata',
299
+ 'title' => __( 'Google Structured Data Test', 'wordpress-seo' ),
300
+ 'href' => 'https://search.google.com/structured-data/testing-tool#url=' . urlencode( $url ),
301
+ 'meta' => array( 'target' => '_blank' ),
302
+ ) );
303
+ $wp_admin_bar->add_menu( array(
304
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
305
+ 'id' => 'wpseo-facebookdebug',
306
+ 'title' => __( 'Facebook Debugger', 'wordpress-seo' ),
307
+ 'href' => '//developers.facebook.com/tools/debug/og/object?q=' . urlencode( $url ),
308
+ 'meta' => array( 'target' => '_blank' ),
309
+ ) );
310
+ $wp_admin_bar->add_menu( array(
311
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
312
+ 'id' => 'wpseo-pinterestvalidator',
313
+ 'title' => __( 'Pinterest Rich Pins Validator', 'wordpress-seo' ),
314
+ 'href' => 'https://developers.pinterest.com/tools/url-debugger/?link=' . urlencode( $url ),
315
+ 'meta' => array( 'target' => '_blank' ),
316
+ ) );
317
+ $wp_admin_bar->add_menu( array(
318
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
319
+ 'id' => 'wpseo-htmlvalidation',
320
+ 'title' => __( 'HTML Validator', 'wordpress-seo' ),
321
+ 'href' => '//validator.w3.org/check?uri=' . urlencode( $url ),
322
+ 'meta' => array( 'target' => '_blank' ),
323
+ ) );
324
+ $wp_admin_bar->add_menu( array(
325
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
326
+ 'id' => 'wpseo-cssvalidation',
327
+ 'title' => __( 'CSS Validator', 'wordpress-seo' ),
328
+ 'href' => '//jigsaw.w3.org/css-validator/validator?uri=' . urlencode( $url ),
329
+ 'meta' => array( 'target' => '_blank' ),
330
+ ) );
331
+ $wp_admin_bar->add_menu( array(
332
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
333
+ 'id' => 'wpseo-pagespeed',
334
+ 'title' => __( 'Google Page Speed Test', 'wordpress-seo' ),
335
+ 'href' => '//developers.google.com/speed/pagespeed/insights/?url=' . urlencode( $url ),
336
+ 'meta' => array( 'target' => '_blank' ),
337
+ ) );
338
+ $wp_admin_bar->add_menu( array(
339
+ 'parent' => self::ANALYSIS_SUBMENU_IDENTIFIER,
340
+ 'id' => 'wpseo-google-mobile-friendly',
341
+ 'title' => __( 'Mobile-Friendly Test', 'wordpress-seo' ),
342
+ 'href' => 'https://www.google.com/webmasters/tools/mobile-friendly/?url=' . urlencode( $url ),
343
+ 'meta' => array( 'target' => '_blank' ),
344
+ ) );
345
+ }
346
+
347
+ /**
348
+ * Adds the admin bar settings submenu.
349
+ *
350
+ * @param WP_Admin_Bar $wp_admin_bar Admin bar instance to add the menu to.
351
+ *
352
+ * @return void
353
+ */
354
+ protected function add_settings_submenu( WP_Admin_Bar $wp_admin_bar ) {
355
+ if ( ! $this->can_manage_options() ) {
356
+ return;
357
+ }
358
+
359
+ $admin_menu = new WPSEO_Admin_Menu( new WPSEO_Menu() );
360
+ $submenu_pages = $admin_menu->get_submenu_pages();
361
+
362
+ $wp_admin_bar->add_menu( array(
363
+ 'parent' => self::MENU_IDENTIFIER,
364
+ 'id' => self::SETTINGS_SUBMENU_IDENTIFIER,
365
+ 'title' => __( 'SEO Settings', 'wordpress-seo' ),
366
+ 'meta' => array( 'tabindex' => '0' ),
367
+ ) );
368
+
369
+ foreach ( $submenu_pages as $submenu_page ) {
370
+ if ( ! current_user_can( $submenu_page[3] ) ) {
371
+ continue;
372
+ }
373
+
374
+ $id = 'wpseo-' . str_replace( '_', '-', str_replace( 'wpseo_', '', $submenu_page[4] ) );
375
+ if ( $id === 'wpseo-dashboard' ) {
376
+ $id = 'wpseo-general';
377
+ }
378
+
379
+ $wp_admin_bar->add_menu( array(
380
+ 'parent' => self::SETTINGS_SUBMENU_IDENTIFIER,
381
+ 'id' => $id,
382
+ 'title' => $submenu_page[2],
383
+ 'href' => admin_url( 'admin.php?page=' . urlencode( $submenu_page[4] ) ),
384
+ ) );
385
+ }
386
+ }
387
+
388
+ /**
389
+ * Adds the admin bar network settings submenu.
390
+ *
391
+ * @param WP_Admin_Bar $wp_admin_bar Admin bar instance to add the menu to.
392
+ *
393
+ * @return void
394
+ */
395
+ protected function add_network_settings_submenu( WP_Admin_Bar $wp_admin_bar ) {
396
+ if ( ! $this->can_manage_options() ) {
397
+ return;
398
+ }
399
+
400
+ $network_admin_menu = new WPSEO_Network_Admin_Menu( new WPSEO_Menu() );
401
+ $submenu_pages = $network_admin_menu->get_submenu_pages();
402
+
403
+ $wp_admin_bar->add_menu( array(
404
+ 'parent' => self::MENU_IDENTIFIER,
405
+ 'id' => self::NETWORK_SETTINGS_SUBMENU_IDENTIFIER,
406
+ 'title' => __( 'SEO Settings', 'wordpress-seo' ),
407
+ 'meta' => array( 'tabindex' => '0' ),
408
+ ) );
409
+
410
+ foreach ( $submenu_pages as $submenu_page ) {
411
+ if ( ! current_user_can( $submenu_page[3] ) ) {
412
+ continue;
413
+ }
414
+
415
+ $id = 'wpseo-' . str_replace( '_', '-', str_replace( 'wpseo_', '', $submenu_page[4] ) );
416
+ if ( $id === 'wpseo-dashboard' ) {
417
+ $id = 'wpseo-general';
418
+ }
419
+
420
+ $wp_admin_bar->add_menu( array(
421
+ 'parent' => self::NETWORK_SETTINGS_SUBMENU_IDENTIFIER,
422
+ 'id' => $id,
423
+ 'title' => $submenu_page[2],
424
+ 'href' => network_admin_url( 'admin.php?page=' . urlencode( $submenu_page[4] ) ),
425
+ ) );
426
+ }
427
+ }
428
+
429
+ /**
430
+ * Gets the menu title markup.
431
+ *
432
+ * @return string Admin bar title markup.
433
+ */
434
+ protected function get_title() {
435
+ return '<div id="yoast-ab-icon" class="ab-item yoast-logo svg"><span class="screen-reader-text">' . __( 'SEO', 'wordpress-seo' ) . '</span></div>';
436
+ }
437
+
438
+ /**
439
+ * Gets the current post if in a singular post context.
440
+ *
441
+ * @global string $pagenow Current page identifier.
442
+ * @global WP_Post|null $post Current post object, or null if none available.
443
+ *
444
+ * @return WP_Post|null Post object, or null if not in singular context.
445
+ */
446
+ protected function get_singular_post() {
447
+ global $pagenow, $post;
448
+
449
+ if ( ! is_singular() && ( ! is_blog_admin() || ! WPSEO_Metabox::is_post_edit( $pagenow ) ) ) {
450
+ return null;
451
+ }
452
+
453
+ if ( ! isset( $post ) || ! is_object( $post ) ) {
454
+ return null;
455
+ }
456
+
457
+ return $post;
458
+ }
459
+
460
+ /**
461
+ * Gets the focus keyword for a given post.
462
+ *
463
+ * @param WP_Post $post Post object to get its focus keyword.
464
+ *
465
+ * @return string Focus keyword, or empty string if none available.
466
+ */
467
+ protected function get_post_focus_keyword( WP_Post $post ) {
468
+ if ( apply_filters( 'wpseo_use_page_analysis', true ) !== true ) {
469
+ return '';
470
+ }
471
+
472
+ return WPSEO_Meta::get_value( 'focuskw', $post->ID );
473
+ }
474
+
475
+ /**
476
+ * Gets the score for a given post.
477
+ *
478
+ * @param WP_Post $post Post object to get its score.
479
+ *
480
+ * @return string Score markup, or empty string if none available.
481
+ */
482
+ protected function get_post_score( WP_Post $post ) {
483
+ if ( apply_filters( 'wpseo_use_page_analysis', true ) !== true ) {
484
+ return '';
485
+ }
486
+
487
+ $analysis_seo = new WPSEO_Metabox_Analysis_SEO();
488
+ $analysis_readability = new WPSEO_Metabox_Analysis_Readability();
489
+
490
+ if ( $analysis_seo->is_enabled() ) {
491
+ return $this->get_score( WPSEO_Meta::get_value( 'linkdex', $post->ID ) );
492
+ }
493
+
494
+ if ( $analysis_readability->is_enabled() ) {
495
+ return $this->get_score( WPSEO_Meta::get_value( 'content_score', $post->ID ) );
496
+ }
497
+
498
+ return '';
499
+ }
500
+
501
+ /**
502
+ * Gets the current term if in a singular term context.
503
+ *
504
+ * @global string $pagenow Current page identifier.
505
+ * @global WP_Query $wp_query Current query object.
506
+ * @global WP_Term|null $tag Current term object, or null if none available.
507
+ *
508
+ * @return WP_Term|null Term object, or null if not in singular context.
509
+ */
510
+ protected function get_singular_term() {
511
+ global $pagenow, $wp_query, $tag;
512
+
513
+ if ( is_category() || is_tag() || is_tax() ) {
514
+ return $wp_query->get_queried_object();
515
+ }
516
+
517
+ if ( WPSEO_Taxonomy::is_term_edit( $pagenow ) && ! WPSEO_Taxonomy::is_term_overview( $pagenow ) && isset( $tag ) && is_object( $tag ) && ! is_wp_error( $tag ) ) {
518
+ return get_term( $tag->term_id );
519
+ }
520
+
521
+ return null;
522
+ }
523
+
524
+ /**
525
+ * Gets the score for a given term.
526
+ *
527
+ * @param WP_Term $term Term object to get its score.
528
+ *
529
+ * @return string Score markup, or empty string if none available.
530
+ */
531
+ protected function get_term_score( WP_Term $term ) {
532
+ $analysis_seo = new WPSEO_Metabox_Analysis_SEO();
533
+ $analysis_readability = new WPSEO_Metabox_Analysis_Readability();
534
+
535
+ if ( $analysis_seo->is_enabled() ) {
536
+ return $this->get_score( WPSEO_Taxonomy_Meta::get_term_meta( $term->term_id, $term->taxonomy, 'linkdex' ) );
537
+ }
538
+
539
+ if ( $analysis_readability->is_enabled() ) {
540
+ return $this->get_score( WPSEO_Taxonomy_Meta::get_term_meta( $term->term_id, $term->taxonomy, 'content_score' ) );
541
+ }
542
+
543
+ return '';
544
+ }
545
+
546
+ /**
547
+ * Takes the SEO score and makes the score icon for the admin bar for it.
548
+ *
549
+ * @param int $score The 0-100 rating of the score. Can be either SEO score or content score.
550
+ *
551
+ * @return string Score markup.
552
+ */
553
+ protected function get_score( $score ) {
554
+ $score = WPSEO_Utils::translate_score( $score );
555
+
556
+ $score_adminbar_element = '<div class="wpseo-score-icon adminbar-seo-score ' . $score . '"><span class="adminbar-seo-score-text screen-reader-text"></span></div>';
557
+
558
+ return $score_adminbar_element;
559
+ }
560
+
561
+ /**
562
+ * Gets the URL to the main admin settings page.
563
+ *
564
+ * @return string Admin settings page URL.
565
+ */
566
+ protected function get_settings_page_url() {
567
+ return self_admin_url( 'admin.php?page=' . WPSEO_Admin::PAGE_IDENTIFIER );
568
+ }
569
+
570
+ /**
571
+ * Gets the notification counter if in a valid context.
572
+ *
573
+ * @return string Notification counter markup, or empty string if not available.
574
+ */
575
+ protected function get_notification_counter() {
576
+ $notification_center = Yoast_Notification_Center::get();
577
+ $notification_count = $notification_center->get_notification_count();
578
+
579
+ if ( ! $notification_count ) {
580
+ return '';
581
+ }
582
+
583
+ /* translators: %s: number of notifications */
584
+ $counter_screen_reader_text = sprintf( _n( '%s notification', '%s notifications', $notification_count, 'wordpress-seo' ), number_format_i18n( $notification_count ) );
585
+
586
+ return sprintf( ' <div class="wp-core-ui wp-ui-notification yoast-issue-counter"><span aria-hidden="true">%d</span><span class="screen-reader-text">%s</span></div>', $notification_count, $counter_screen_reader_text );
587
+ }
588
+
589
+ /**
590
+ * Gets the notification alert popup if in a valid context.
591
+ *
592
+ * @return string Notification alert popup markup, or empty string if not available.
593
+ */
594
+ protected function get_notification_alert_popup() {
595
+ $notification_center = Yoast_Notification_Center::get();
596
+ $new_notifications = $notification_center->get_new_notifications();
597
+ $new_notifications_count = count( $new_notifications );
598
+
599
+ if ( ! $new_notifications_count ) {
600
+ return '';
601
+ }
602
+
603
+ $notification = sprintf(
604
+ /* translators: %d resolves to the number of alerts being added. */
605
+ _n( 'You have %d new issue concerning your SEO!', 'You have %d new issues concerning your SEO!', $new_notifications_count, 'wordpress-seo' ),
606
+ $new_notifications_count
607
+ );
608
+ if ( $new_notifications_count === 1 ) {
609
+ $notification = sprintf(
610
+ __( 'You have a new issue concerning your SEO!', 'wordpress-seo' ),
611
+ $new_notifications_count
612
+ );
613
+ }
614
+
615
+ return '<div class="yoast-issue-added">' . $notification . '</div>';
616
+ }
617
+
618
+ /**
619
+ * Checks whether the current user can manage options in the current context.
620
+ *
621
+ * @return bool True if capabilities are sufficient, false otherwise.
622
+ */
623
+ protected function can_manage_options() {
624
+ return is_network_admin() && current_user_can( 'wpseo_manage_network_options' ) || ! is_network_admin() && WPSEO_Capability_Utils::current_user_can( 'wpseo_manage_options' );
625
+ }
626
+ }
inc/class-wpseo-meta.php CHANGED
@@ -65,7 +65,7 @@ class WPSEO_Meta {
65
  * @var array $meta_fields Meta box field definitions for the meta box form
66
  * Array format:
67
  * (required) 'type' => (string) field type. i.e. text / textarea / checkbox /
68
- * radio / select / multiselect / upload / snippetpreview etc
69
  * (required) 'title' => (string) table row title
70
  * (recommended) 'default_value' => (string|array) default value for the field
71
  * IMPORTANT:
@@ -102,21 +102,6 @@ class WPSEO_Meta {
102
  */
103
  public static $meta_fields = array(
104
  'general' => array(
105
- 'snippetpreview' => array(
106
- 'type' => 'snippetpreview',
107
- 'title' => '', // Translation added later.
108
- 'help' => '', // Translation added later.
109
- 'help-button' => '', // Translation added later.
110
- ),
111
- 'focuskw_text_input' => array(
112
- 'type' => 'focuskeyword',
113
- 'title' => '', // Translation added later.
114
- 'default_value' => '',
115
- 'autocomplete' => false,
116
- 'help' => '', // Translation added later.
117
- 'description' => '<div id="focuskwresults"></div>',
118
- 'help-button' => '', // Translation added later.
119
- ),
120
  'focuskw' => array(
121
  'type' => 'hidden',
122
  'title' => '',
@@ -150,17 +135,11 @@ class WPSEO_Meta {
150
  'description' => '',
151
  ),
152
  'is_cornerstone' => array(
153
- 'type' => 'non-form',
154
  'title' => 'is_cornerstone',
155
- 'default_value' => '0',
156
  'description' => '',
157
  ),
158
- 'pageanalysis' => array(
159
- 'type' => 'pageanalysis',
160
- 'title' => '', // Translation added later.
161
- 'help' => '', // Translation added later.
162
- 'help-button' => '', // Translation added later.
163
- ),
164
  ),
165
  'advanced' => array(
166
  'meta-robots-noindex' => array(
@@ -298,30 +277,28 @@ class WPSEO_Meta {
298
 
299
  foreach ( self::$meta_fields as $subset => $field_group ) {
300
  foreach ( $field_group as $key => $field_def ) {
301
- if ( $field_def['type'] !== 'snippetpreview' ) {
302
- if ( $register === true ) {
303
- register_meta( 'post', self::$meta_prefix . $key, array(
304
- 'sanitize_callback' => array( __CLASS__, 'sanitize_post_meta' ),
305
- ) );
306
- }
307
- else {
308
- add_filter( 'sanitize_post_meta_' . self::$meta_prefix . $key, array( __CLASS__, 'sanitize_post_meta' ), 10, 2 );
309
- }
310
 
311
- // Set the $fields_index property for efficiency.
312
- self::$fields_index[ self::$meta_prefix . $key ] = array(
313
- 'subset' => $subset,
314
- 'key' => $key,
315
- );
316
 
317
- // Set the $defaults property for efficiency.
318
- if ( isset( $field_def['default_value'] ) ) {
319
- self::$defaults[ self::$meta_prefix . $key ] = $field_def['default_value'];
320
- }
321
- else {
322
- // Meta will always be a string, so let's make the meta meta default also a string.
323
- self::$defaults[ self::$meta_prefix . $key ] = '';
324
- }
325
  }
326
  }
327
  }
@@ -489,6 +466,14 @@ class WPSEO_Meta {
489
  }
490
  break;
491
 
 
 
 
 
 
 
 
 
492
 
493
  case ( $field_def['type'] === 'textarea' ):
494
  if ( is_string( $meta_value ) ) {
@@ -875,7 +860,7 @@ class WPSEO_Meta {
875
 
876
  foreach ( self::$meta_fields as $subset => $field_group ) {
877
  foreach ( $field_group as $key => $field_def ) {
878
- if ( $field_def['type'] === 'snippetpreview' || ! isset( $field_def['default_value'] ) ) {
879
  continue;
880
  }
881
 
65
  * @var array $meta_fields Meta box field definitions for the meta box form
66
  * Array format:
67
  * (required) 'type' => (string) field type. i.e. text / textarea / checkbox /
68
+ * radio / select / multiselect / upload etc
69
  * (required) 'title' => (string) table row title
70
  * (recommended) 'default_value' => (string|array) default value for the field
71
  * IMPORTANT:
102
  */
103
  public static $meta_fields = array(
104
  'general' => array(
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
105
  'focuskw' => array(
106
  'type' => 'hidden',
107
  'title' => '',
135
  'description' => '',
136
  ),
137
  'is_cornerstone' => array(
138
+ 'type' => 'hidden',
139
  'title' => 'is_cornerstone',
140
+ 'default_value' => 'false',
141
  'description' => '',
142
  ),
 
 
 
 
 
 
143
  ),
144
  'advanced' => array(
145
  'meta-robots-noindex' => array(
277
 
278
  foreach ( self::$meta_fields as $subset => $field_group ) {
279
  foreach ( $field_group as $key => $field_def ) {
280
+ if ( $register === true ) {
281
+ register_meta( 'post', self::$meta_prefix . $key, array(
282
+ 'sanitize_callback' => array( __CLASS__, 'sanitize_post_meta' ),
283
+ ) );
284
+ }
285
+ else {
286
+ add_filter( 'sanitize_post_meta_' . self::$meta_prefix . $key, array( __CLASS__, 'sanitize_post_meta' ), 10, 2 );
287
+ }
 
288
 
289
+ // Set the $fields_index property for efficiency.
290
+ self::$fields_index[ self::$meta_prefix . $key ] = array(
291
+ 'subset' => $subset,
292
+ 'key' => $key,
293
+ );
294
 
295
+ // Set the $defaults property for efficiency.
296
+ if ( isset( $field_def['default_value'] ) ) {
297
+ self::$defaults[ self::$meta_prefix . $key ] = $field_def['default_value'];
298
+ }
299
+ else {
300
+ // Meta will always be a string, so let's make the meta meta default also a string.
301
+ self::$defaults[ self::$meta_prefix . $key ] = '';
 
302
  }
303
  }
304
  }
466
  }
467
  break;
468
 
469
+ case ( $field_def['type'] === 'hidden' && $meta_key === self::$meta_prefix . 'is_cornerstone' ):
470
+ $clean = $meta_value;
471
+
472
+ // This used to be a checkbox, then became a hidden input. To make sure the value remains consistent, we cast 'true' to '1'.
473
+ if ( $meta_value === 'true' ) {
474
+ $clean = '1';
475
+ }
476
+ break;
477
 
478
  case ( $field_def['type'] === 'textarea' ):
479
  if ( is_string( $meta_value ) ) {
860
 
861
  foreach ( self::$meta_fields as $subset => $field_group ) {
862
  foreach ( $field_group as $key => $field_def ) {
863
+ if ( ! isset( $field_def['default_value'] ) ) {
864
  continue;
865
  }
866
 
inc/class-wpseo-utils.php CHANGED
@@ -1097,4 +1097,21 @@ SVG;
1097
  public static function is_woocommerce_active() {
1098
  return class_exists( 'Woocommerce' );
1099
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1100
  }
1097
  public static function is_woocommerce_active() {
1098
  return class_exists( 'Woocommerce' );
1099
  }
1100
+
1101
+ /**
1102
+ * Getter for the Adminl10n array. Applies the wpseo_admin_l10n filter.
1103
+ *
1104
+ * @return array The Adminl10n array.
1105
+ */
1106
+ public static function get_admin_l10n() {
1107
+ $wpseo_admin_l10n = array();
1108
+ $wpseo_admin_l10n = array_merge( $wpseo_admin_l10n, WPSEO_Help_Center::get_translated_texts() );
1109
+
1110
+ $additional_entries = apply_filters( 'wpseo_admin_l10n', array() );
1111
+ if ( is_array( $additional_entries ) ) {
1112
+ $wpseo_admin_l10n = array_merge( $wpseo_admin_l10n, $additional_entries );
1113
+ }
1114
+
1115
+ return $wpseo_admin_l10n;
1116
+ }
1117
  }
inc/interface-wpseo-wordpress-ajax-integration.php ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPSEO plugin file.
4
+ *
5
+ * @package WPSEO
6
+ */
7
+
8
+ /**
9
+ * An interface for registering AJAX integrations with WordPress.
10
+ */
11
+ interface WPSEO_WordPress_AJAX_Integration {
12
+
13
+ /**
14
+ * Registers all AJAX hooks to WordPress.
15
+ *
16
+ * @return void
17
+ */
18
+ public function register_ajax_hooks();
19
+ }
inc/options/class-wpseo-option.php CHANGED
@@ -416,9 +416,19 @@ abstract class WPSEO_Option {
416
  * @return void
417
  */
418
  public function register_setting() {
419
- if ( WPSEO_Capability_Utils::current_user_can( 'wpseo_manage_options' ) ) {
420
- register_setting( $this->group_name, $this->option_name );
421
  }
 
 
 
 
 
 
 
 
 
 
422
  }
423
 
424
 
416
  * @return void
417
  */
418
  public function register_setting() {
419
+ if ( ! WPSEO_Capability_Utils::current_user_can( 'wpseo_manage_options' ) ) {
420
+ return;
421
  }
422
+
423
+ if ( $this->multisite_only === true ) {
424
+ $network_settings_api = Yoast_Network_Settings_API::get();
425
+ if ( $network_settings_api->meets_requirements() ) {
426
+ $network_settings_api->register_setting( $this->group_name, $this->option_name );
427
+ }
428
+ return;
429
+ }
430
+
431
+ register_setting( $this->group_name, $this->option_name );
432
  }
433
 
434
 
inc/options/class-wpseo-options.php CHANGED
@@ -113,7 +113,7 @@ class WPSEO_Options {
113
  * @return bool
114
  */
115
  public static function update_site_option( $option_name, $value ) {
116
- if ( is_network_admin() && isset( self::$option_instances[ $option_name ] ) ) {
117
  return self::$option_instances[ $option_name ]->update_site_option( $value );
118
  }
119
 
113
  * @return bool
114
  */
115
  public static function update_site_option( $option_name, $value ) {
116
+ if ( is_multisite() && isset( self::$option_instances[ $option_name ] ) ) {
117
  return self::$option_instances[ $option_name ]->update_site_option( $value );
118
  }
119
 
inc/sitemaps/class-sitemaps-cache-validator.php CHANGED
@@ -179,6 +179,8 @@ class WPSEO_Sitemaps_Cache_Validator {
179
  // Delete transients.
180
  $query = sprintf( 'DELETE FROM %1$s WHERE %2$s', $wpdb->options, implode( ' OR ', $where ) );
181
  $wpdb->query( $query );
 
 
182
  }
183
 
184
  /**
179
  // Delete transients.
180
  $query = sprintf( 'DELETE FROM %1$s WHERE %2$s', $wpdb->options, implode( ' OR ', $where ) );
181
  $wpdb->query( $query );
182
+
183
+ wp_cache_delete( 'alloptions', 'options' );
184
  }
185
 
186
  /**
inc/sitemaps/class-sitemaps-router.php CHANGED
@@ -65,7 +65,12 @@ class WPSEO_Sitemaps_Router {
65
  $current_url = 'https://';
66
  }
67
 
68
- $current_url .= sanitize_text_field( $_SERVER['SERVER_NAME'] );
 
 
 
 
 
69
  $current_url .= sanitize_text_field( $_SERVER['REQUEST_URI'] );
70
 
71
  if ( home_url( '/sitemap.xml' ) === $current_url && $wp_query->is_404 ) {
65
  $current_url = 'https://';
66
  }
67
 
68
+ $domain = $_SERVER['SERVER_NAME'];
69
+ if ( ! empty( $_SERVER['HTTP_HOST'] ) ) {
70
+ $domain = $_SERVER['HTTP_HOST'];
71
+ }
72
+
73
+ $current_url .= sanitize_text_field( $domain );
74
  $current_url .= sanitize_text_field( $_SERVER['REQUEST_URI'] );
75
 
76
  if ( home_url( '/sitemap.xml' ) === $current_url && $wp_query->is_404 ) {
inc/wpseo-non-ajax-functions.php CHANGED
@@ -12,298 +12,92 @@ if ( ! defined( 'WPSEO_VERSION' ) ) {
12
  }
13
 
14
  /**
15
- * Adds an SEO admin bar menu with several options. If the current user is an admin he can also go straight to several settings menu's from here.
 
 
16
  */
17
- function wpseo_admin_bar_menu() {
18
- // If the current user can't write posts, this is all of no use, so let's not output an admin menu.
19
- if ( ! current_user_can( 'edit_posts' ) ) {
20
- return;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  }
22
 
23
- $options = WPSEO_Options::get_options( array( 'wpseo', 'wpseo_ms' ) );
 
 
 
24
 
25
- if ( $options['enable_admin_bar_menu'] !== true ) {
26
- return;
 
27
  }
28
 
29
- global $wp_admin_bar, $post;
 
 
 
30
 
31
- $focuskw = '';
32
- $score = '';
33
- // By default, the top level menu item has no link.
34
- $seo_url = '';
35
- // By default, make the no-link top level menu item focusable.
36
- $top_level_link_tabindex = '0';
37
 
38
- $analysis_seo = new WPSEO_Metabox_Analysis_SEO();
39
- $analysis_readability = new WPSEO_Metabox_Analysis_Readability();
40
 
41
- if ( ( is_singular() || ( is_admin() && WPSEO_Metabox::is_post_edit( $GLOBALS['pagenow'] ) ) ) && isset( $post ) && is_object( $post ) && apply_filters( 'wpseo_use_page_analysis', true ) === true
42
- ) {
43
- $focuskw = WPSEO_Meta::get_value( 'focuskw', $post->ID );
44
 
45
- if ( $analysis_seo->is_enabled() ) {
46
- $score = wpseo_adminbar_seo_score();
47
- }
48
- elseif ( $analysis_readability->is_enabled() ) {
49
- $score = wpseo_adminbar_content_score();
50
- }
51
- }
 
 
 
52
 
53
- if ( is_category() || is_tag() || ( WPSEO_Taxonomy::is_term_edit( $GLOBALS['pagenow'] ) && ! WPSEO_Taxonomy::is_term_overview( $GLOBALS['pagenow'] ) ) || is_tax() ) {
54
- if ( $analysis_seo->is_enabled() ) {
55
- $score = wpseo_tax_adminbar_seo_score();
56
- }
57
- elseif ( $analysis_readability->is_enabled() ) {
58
- $score = wpseo_tax_adminbar_content_score();
59
- }
60
- }
61
 
62
- // Never display notifications for network admin.
63
- $counter = '';
64
- $alert_popup = '';
65
-
66
- // Determine is user is admin or network admin.
67
- $can_manage_seo = WPSEO_Capability_Utils::current_user_can( 'wpseo_manage_options' );
68
-
69
- // Set the top level menu item content for admins and network admins.
70
- if ( $can_manage_seo ) {
71
-
72
- // Link the top level menu item to the Yoast Dashboard page.
73
- $seo_url = get_admin_url( null, 'admin.php?page=' . WPSEO_Admin::PAGE_IDENTIFIER );
74
- // Since admins will get a real link, there's no need for a tabindex attribute.
75
- $top_level_link_tabindex = false;
76
-
77
- if ( '' === $score ) {
78
-
79
- // Notification information.
80
- $notification_center = Yoast_Notification_Center::get();
81
- $notification_count = $notification_center->get_notification_count();
82
- $new_notifications = $notification_center->get_new_notifications();
83
- $new_notifications_count = count( $new_notifications );
84
-
85
- if ( $notification_count > 0 ) {
86
- // Always show Alerts page when clicking on the main link.
87
- /* translators: %s: number of notifications */
88
- $counter_screen_reader_text = sprintf( _n( '%s notification', '%s notifications', $notification_count, 'wordpress-seo' ), number_format_i18n( $notification_count ) );
89
-
90
- $counter = sprintf( ' <div class="wp-core-ui wp-ui-notification yoast-issue-counter"><span aria-hidden="true">%d</span><span class="screen-reader-text">%s</span></div>', $notification_count, $counter_screen_reader_text );
91
- }
92
-
93
- if ( $new_notifications_count ) {
94
- $notification = sprintf(
95
- /* translators: %d resolves to the number of alerts being added. */
96
- _n( 'You have %d new issue concerning your SEO!', 'You have %d new issues concerning your SEO!', $new_notifications_count, 'wordpress-seo' ),
97
- $new_notifications_count
98
- );
99
- if ( $new_notifications_count === 1 ) {
100
- $notification = sprintf(
101
- __( 'You have a new issue concerning your SEO!', 'wordpress-seo' ),
102
- $new_notifications_count
103
- );
104
- }
105
- $alert_popup = '<div class="yoast-issue-added">' . $notification . '</div>';
106
- }
107
- }
108
  }
109
 
110
- $title = '<div id="yoast-ab-icon" class="ab-item yoast-logo svg"><span class="screen-reader-text">' . __( 'SEO', 'wordpress-seo' ) . '</span></div>';
111
-
112
- $wp_admin_bar->add_menu( array(
113
- 'id' => 'wpseo-menu',
114
- 'title' => $title . $score . $counter . $alert_popup,
115
- 'href' => $seo_url,
116
- 'meta' => array( 'tabindex' => $top_level_link_tabindex ),
117
- ) );
118
- if ( ! empty( $notification_count ) ) {
119
- $wp_admin_bar->add_menu( array(
120
- 'parent' => 'wpseo-menu',
121
- 'id' => 'wpseo-notifications',
122
- 'title' => __( 'Notifications', 'wordpress-seo' ) . $counter,
123
- 'href' => $seo_url,
124
- 'meta' => array( 'tabindex' => $top_level_link_tabindex ),
125
- ) );
126
- }
127
 
128
- if ( WPSEO_Capability_Utils::current_user_can( 'wpseo_manage_options' ) ) {
129
- $wp_admin_bar->add_menu( array(
130
- 'parent' => 'wpseo-menu',
131
- 'id' => 'wpseo-configuration-wizard',
132
- 'title' => __( 'Configuration Wizard', 'wordpress-seo' ),
133
- 'href' => admin_url( 'admin.php?page=' . WPSEO_Configuration_Page::PAGE_IDENTIFIER ),
134
- ) );
135
- }
136
- $wp_admin_bar->add_menu( array(
137
- 'parent' => 'wpseo-menu',
138
- 'id' => 'wpseo-kwresearch',
139
- 'title' => __( 'Keyword Research', 'wordpress-seo' ),
140
- 'meta' => array( 'tabindex' => '0' ),
141
- ) );
142
- $wp_admin_bar->add_menu( array(
143
- 'parent' => 'wpseo-kwresearch',
144
- 'id' => 'wpseo-adwordsexternal',
145
- 'title' => __( 'AdWords External', 'wordpress-seo' ),
146
- 'href' => 'https://adwords.google.com/keywordplanner',
147
- 'meta' => array( 'target' => '_blank' ),
148
- ) );
149
- $wp_admin_bar->add_menu( array(
150
- 'parent' => 'wpseo-kwresearch',
151
- 'id' => 'wpseo-googleinsights',
152
- 'title' => __( 'Google Trends', 'wordpress-seo' ),
153
- 'href' => 'https://www.google.com/trends/explore#q=' . urlencode( $focuskw ),
154
- 'meta' => array( 'target' => '_blank' ),
155
- ) );
156
- $wp_admin_bar->add_menu( array(
157
- 'parent' => 'wpseo-kwresearch',
158
- 'id' => 'wpseo-wordtracker',
159
- 'title' => __( 'SEO Book', 'wordpress-seo' ),
160
- 'href' => 'http://tools.seobook.com/keyword-tools/seobook/?keyword=' . urlencode( $focuskw ),
161
- 'meta' => array( 'target' => '_blank' ),
162
- ) );
163
-
164
- if ( ! is_admin() ) {
165
- $url = WPSEO_Frontend::get_instance()->canonical( false );
166
-
167
- if ( is_string( $url ) ) {
168
- $wp_admin_bar->add_menu( array(
169
- 'parent' => 'wpseo-menu',
170
- 'id' => 'wpseo-analysis',
171
- 'title' => __( 'Analyze this page', 'wordpress-seo' ),
172
- 'meta' => array( 'tabindex' => '0' ),
173
- ) );
174
- $wp_admin_bar->add_menu( array(
175
- 'parent' => 'wpseo-analysis',
176
- 'id' => 'wpseo-inlinks-ose',
177
- 'title' => __( 'Check Inlinks (OSE)', 'wordpress-seo' ),
178
- 'href' => '//moz.com/researchtools/ose/links?site=' . urlencode( $url ),
179
- 'meta' => array( 'target' => '_blank' ),
180
- ) );
181
- $wp_admin_bar->add_menu( array(
182
- 'parent' => 'wpseo-analysis',
183
- 'id' => 'wpseo-kwdensity',
184
- 'title' => __( 'Check Keyword Density', 'wordpress-seo' ),
185
- // HTTPS not available.
186
- 'href' => 'http://www.zippy.co.uk/keyworddensity/index.php?url=' . urlencode( $url ) . '&keyword=' . urlencode( $focuskw ),
187
- 'meta' => array( 'target' => '_blank' ),
188
- ) );
189
- $wp_admin_bar->add_menu( array(
190
- 'parent' => 'wpseo-analysis',
191
- 'id' => 'wpseo-cache',
192
- 'title' => __( 'Check Google Cache', 'wordpress-seo' ),
193
- 'href' => '//webcache.googleusercontent.com/search?strip=1&q=cache:' . urlencode( $url ),
194
- 'meta' => array( 'target' => '_blank' ),
195
- ) );
196
- $wp_admin_bar->add_menu( array(
197
- 'parent' => 'wpseo-analysis',
198
- 'id' => 'wpseo-header',
199
- 'title' => __( 'Check Headers', 'wordpress-seo' ),
200
- 'href' => '//quixapp.com/headers/?r=' . urlencode( $url ),
201
- 'meta' => array( 'target' => '_blank' ),
202
- ) );
203
- $wp_admin_bar->add_menu( array(
204
- 'parent' => 'wpseo-analysis',
205
- 'id' => 'wpseo-structureddata',
206
- 'title' => __( 'Google Structured Data Test', 'wordpress-seo' ),
207
- 'href' => 'https://search.google.com/structured-data/testing-tool#url=' . urlencode( $url ),
208
- 'meta' => array( 'target' => '_blank' ),
209
- ) );
210
- $wp_admin_bar->add_menu( array(
211
- 'parent' => 'wpseo-analysis',
212
- 'id' => 'wpseo-facebookdebug',
213
- 'title' => __( 'Facebook Debugger', 'wordpress-seo' ),
214
- 'href' => '//developers.facebook.com/tools/debug/og/object?q=' . urlencode( $url ),
215
- 'meta' => array( 'target' => '_blank' ),
216
- ) );
217
- $wp_admin_bar->add_menu( array(
218
- 'parent' => 'wpseo-analysis',
219
- 'id' => 'wpseo-pinterestvalidator',
220
- 'title' => __( 'Pinterest Rich Pins Validator', 'wordpress-seo' ),
221
- 'href' => 'https://developers.pinterest.com/tools/url-debugger/?link=' . urlencode( $url ),
222
- 'meta' => array( 'target' => '_blank' ),
223
- ) );
224
- $wp_admin_bar->add_menu( array(
225
- 'parent' => 'wpseo-analysis',
226
- 'id' => 'wpseo-htmlvalidation',
227
- 'title' => __( 'HTML Validator', 'wordpress-seo' ),
228
- 'href' => '//validator.w3.org/check?uri=' . urlencode( $url ),
229
- 'meta' => array( 'target' => '_blank' ),
230
- ) );
231
- $wp_admin_bar->add_menu( array(
232
- 'parent' => 'wpseo-analysis',
233
- 'id' => 'wpseo-cssvalidation',
234
- 'title' => __( 'CSS Validator', 'wordpress-seo' ),
235
- 'href' => '//jigsaw.w3.org/css-validator/validator?uri=' . urlencode( $url ),
236
- 'meta' => array( 'target' => '_blank' ),
237
- ) );
238
- $wp_admin_bar->add_menu( array(
239
- 'parent' => 'wpseo-analysis',
240
- 'id' => 'wpseo-pagespeed',
241
- 'title' => __( 'Google Page Speed Test', 'wordpress-seo' ),
242
- 'href' => '//developers.google.com/speed/pagespeed/insights/?url=' . urlencode( $url ),
243
- 'meta' => array( 'target' => '_blank' ),
244
- ) );
245
- $wp_admin_bar->add_menu( array(
246
- 'parent' => 'wpseo-analysis',
247
- 'id' => 'wpseo-google-mobile-friendly',
248
- 'title' => __( 'Mobile-Friendly Test', 'wordpress-seo' ),
249
- 'href' => 'https://www.google.com/webmasters/tools/mobile-friendly/?url=' . urlencode( $url ),
250
- 'meta' => array( 'target' => '_blank' ),
251
- ) );
252
- }
253
  }
254
 
255
- if ( $can_manage_seo ) {
256
- $wp_admin_bar->add_menu( array(
257
- 'parent' => 'wpseo-menu',
258
- 'id' => 'wpseo-settings',
259
- 'title' => __( 'SEO Settings', 'wordpress-seo' ),
260
- 'meta' => array( 'tabindex' => '0' ),
261
- ) );
262
- $wp_admin_bar->add_menu( array(
263
- 'parent' => 'wpseo-settings',
264
- 'id' => 'wpseo-general',
265
- 'title' => __( 'General', 'wordpress-seo' ),
266
- 'href' => admin_url( 'admin.php?page=wpseo_dashboard' ),
267
- ) );
268
- $wp_admin_bar->add_menu( array(
269
- 'parent' => 'wpseo-settings',
270
- 'id' => 'wpseo-titles',
271
- 'title' => __( 'Search Appearance', 'wordpress-seo' ),
272
- 'href' => admin_url( 'admin.php?page=wpseo_titles' ),
273
- ) );
274
- $wp_admin_bar->add_menu( array(
275
- 'parent' => 'wpseo-settings',
276
- 'id' => 'wpseo-search-console',
277
- 'title' => __( 'Search Console', 'wordpress-seo' ),
278
- 'href' => admin_url( 'admin.php?page=wpseo_search_console' ),
279
- ) );
280
- $wp_admin_bar->add_menu( array(
281
- 'parent' => 'wpseo-settings',
282
- 'id' => 'wpseo-social',
283
- 'title' => __( 'Social', 'wordpress-seo' ),
284
- 'href' => admin_url( 'admin.php?page=wpseo_social' ),
285
- ) );
286
- $wp_admin_bar->add_menu( array(
287
- 'parent' => 'wpseo-settings',
288
- 'id' => 'wpseo-tools',
289
- 'title' => __( 'Tools', 'wordpress-seo' ),
290
- 'href' => admin_url( 'admin.php?page=wpseo_tools' ),
291
- ) );
292
- $wp_admin_bar->add_menu( array(
293
- 'parent' => 'wpseo-settings',
294
- 'id' => 'wpseo-licenses',
295
- 'title' => __( 'Premium', 'wordpress-seo' ),
296
- 'href' => admin_url( 'admin.php?page=wpseo_licenses' ),
297
- ) );
298
- }
299
  }
300
 
301
  /**
302
  * Returns the SEO score element for the admin bar.
303
  *
 
 
304
  * @return string
305
  */
306
  function wpseo_adminbar_seo_score() {
 
 
307
  $rating = WPSEO_Meta::get_value( 'linkdex', get_the_ID() );
308
 
309
  return wpseo_adminbar_score( $rating );
@@ -312,9 +106,13 @@ function wpseo_adminbar_seo_score() {
312
  /**
313
  * Returns the content score element for the adminbar.
314
  *
 
 
315
  * @return string
316
  */
317
  function wpseo_adminbar_content_score() {
 
 
318
  $rating = WPSEO_Meta::get_value( 'content_score', get_the_ID() );
319
 
320
  return wpseo_adminbar_score( $rating );
@@ -323,9 +121,13 @@ function wpseo_adminbar_content_score() {
323
  /**
324
  * Returns the SEO score element for the adminbar.
325
  *
 
 
326
  * @return string
327
  */
328
  function wpseo_tax_adminbar_seo_score() {
 
 
329
  $rating = 0;
330
 
331
  if ( is_tax() || is_category() || is_tag() ) {
@@ -338,9 +140,13 @@ function wpseo_tax_adminbar_seo_score() {
338
  /**
339
  * Returns the Content score element for the adminbar.
340
  *
 
 
341
  * @return string
342
  */
343
  function wpseo_tax_adminbar_content_score() {
 
 
344
  $rating = 0;
345
 
346
  if ( is_tax() || is_category() || is_tag() ) {
@@ -353,11 +159,15 @@ function wpseo_tax_adminbar_content_score() {
353
  /**
354
  * Takes The SEO score and makes the score icon for the adminbar with it.
355
  *
 
 
356
  * @param int $score The 0-100 rating of the score. Can be either SEO score or content score.
357
  *
358
  * @return string $score_adminbar_element
359
  */
360
  function wpseo_adminbar_score( $score ) {
 
 
361
  $score = WPSEO_Utils::translate_score( $score );
362
 
363
  $score_adminbar_element = '<div class="wpseo-score-icon adminbar-seo-score ' . $score . '"><span class="adminbar-seo-score-text screen-reader-text"></span></div>';
@@ -365,54 +175,26 @@ function wpseo_adminbar_score( $score ) {
365
  return $score_adminbar_element;
366
  }
367
 
368
- add_action( 'admin_bar_menu', 'wpseo_admin_bar_menu', 95 );
369
-
370
  /**
371
  * Enqueue CSS to format the Yoast SEO adminbar item.
 
 
372
  */
373
  function wpseo_admin_bar_style() {
 
 
374
  if ( ! is_admin_bar_showing() || WPSEO_Options::get( 'enable_admin_bar_menu' ) !== true ) {
375
  return;
376
  }
377
 
378
- $asset_manager = new WPSEO_Admin_Asset_Manager();
379
- $asset_manager->register_assets();
380
- $asset_manager->enqueue_style( 'adminbar' );
381
- }
382
-
383
- add_action( 'wp_enqueue_scripts', 'wpseo_admin_bar_style' );
384
- add_action( 'admin_enqueue_scripts', 'wpseo_admin_bar_style' );
385
-
386
- /**
387
- * Allows editing of the meta fields through weblog editors like Marsedit.
388
- *
389
- * @param array $allcaps Capabilities that must all be true to allow action.
390
- * @param array $cap Array of capabilities to be checked, unused here.
391
- * @param array $args List of arguments for the specific cap to be checked.
392
- *
393
- * @return array $allcaps
394
- */
395
- function allow_custom_field_edits( $allcaps, $cap, $args ) {
396
- // $args[0] holds the capability.
397
- // $args[2] holds the post ID.
398
- // $args[3] holds the custom field.
399
- // Make sure the request is to edit or add a post meta (this is usually also the second value in $cap,
400
- // but this is safer to check).
401
- if ( in_array( $args[0], array( 'edit_post_meta', 'add_post_meta' ), true ) ) {
402
- // Only allow editing rights for users who have the rights to edit this post and make sure
403
- // the meta value starts with _yoast_wpseo (WPSEO_Meta::$meta_prefix).
404
- if ( ( isset( $args[2] ) && current_user_can( 'edit_post', $args[2] ) ) && ( ( isset( $args[3] ) && $args[3] !== '' ) && strpos( $args[3], WPSEO_Meta::$meta_prefix ) === 0 ) ) {
405
- $allcaps[ $args[0] ] = true;
406
- }
407
  }
408
 
409
- return $allcaps;
 
410
  }
411
 
412
- add_filter( 'user_has_cap', 'allow_custom_field_edits', 0, 3 );
413
-
414
- /********************** DEPRECATED FUNCTIONS **********************/
415
-
416
  /**
417
  * Detects if the advanced settings are enabled.
418
  *
12
  }
13
 
14
  /**
15
+ * Initializes the admin bar.
16
+ *
17
+ * @return void
18
  */
19
+ function wpseo_initialize_admin_bar() {
20
+ $admin_bar_menu = new WPSEO_Admin_Bar_Menu();
21
+ $admin_bar_menu->register_hooks();
22
+ }
23
+ add_action( 'wp_loaded', 'wpseo_initialize_admin_bar' );
24
+
25
+ /**
26
+ * Allows editing of the meta fields through weblog editors like Marsedit.
27
+ *
28
+ * @param array $required_capabilities Capabilities that must all be true to allow action.
29
+ * @param array $capabilities Array of capabilities to be checked, unused here.
30
+ * @param array $args List of arguments for the specific capabilities to be checked.
31
+ *
32
+ * @return array $required_capabilities Filtered capabilities.
33
+ */
34
+ function allow_custom_field_edits( $required_capabilities, $capabilities, $args ) {
35
+ if ( ! in_array( $args[0], array( 'edit_post_meta', 'add_post_meta' ), true ) ) {
36
+ return $required_capabilities;
37
  }
38
 
39
+ // If this is provided, it is the post ID.
40
+ if ( empty( $args[2] ) ) {
41
+ return $required_capabilities;
42
+ }
43
 
44
+ // If this is provided, it is the custom field.
45
+ if ( empty( $args[3] ) ) {
46
+ return $required_capabilities;
47
  }
48
 
49
+ // If the meta key is part of the plugin, grant capabilities accordingly.
50
+ if ( strpos( $args[3], WPSEO_Meta::$meta_prefix ) === 0 && current_user_can( 'edit_post', $args[2] ) ) {
51
+ $required_capabilities[ $args[0] ] = true;
52
+ }
53
 
54
+ return $required_capabilities;
55
+ }
 
 
 
 
56
 
57
+ add_filter( 'user_has_cap', 'allow_custom_field_edits', 0, 3 );
 
58
 
59
+ /********************** DEPRECATED FUNCTIONS **********************/
 
 
60
 
61
+ /**
62
+ * Adds an SEO admin bar menu to the site admin, with several options.
63
+ *
64
+ * If the current user is an admin he can also go straight to several settings menu's from here.
65
+ *
66
+ * @deprecated 7.9 Use WPSEO_Admin_Bar_Menu::add_menu() instead
67
+ *
68
+ * @return void
69
+ */
70
+ function wpseo_admin_bar_menu() {
71
 
72
+ _deprecated_function( __FUNCTION__, 'WPSEO 7.9', 'WPSEO_Admin_Bar_Menu::add_menu()' );
 
 
 
 
 
 
 
73
 
74
+ // Only use this admin bar menu for the site admin.
75
+ if ( is_admin() && ! is_blog_admin() ) {
76
+ return;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
77
  }
78
 
79
+ $options = WPSEO_Options::get_options( array( 'wpseo', 'wpseo_ms' ) );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
80
 
81
+ if ( $options['enable_admin_bar_menu'] !== true ) {
82
+ return;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83
  }
84
 
85
+ global $wp_admin_bar;
86
+
87
+ $admin_bar_menu = new WPSEO_Admin_Bar_Menu();
88
+ $admin_bar_menu->add_menu( $wp_admin_bar );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
89
  }
90
 
91
  /**
92
  * Returns the SEO score element for the admin bar.
93
  *
94
+ * @deprecated 7.9
95
+ *
96
  * @return string
97
  */
98
  function wpseo_adminbar_seo_score() {
99
+ _deprecated_function( __FUNCTION__, 'WPSEO 7.9', null );
100
+
101
  $rating = WPSEO_Meta::get_value( 'linkdex', get_the_ID() );
102
 
103
  return wpseo_adminbar_score( $rating );
106
  /**
107
  * Returns the content score element for the adminbar.
108
  *
109
+ * @deprecated 7.9
110
+ *
111
  * @return string
112
  */
113
  function wpseo_adminbar_content_score() {
114
+ _deprecated_function( __FUNCTION__, 'WPSEO 7.9', null );
115
+
116
  $rating = WPSEO_Meta::get_value( 'content_score', get_the_ID() );
117
 
118
  return wpseo_adminbar_score( $rating );
121
  /**
122
  * Returns the SEO score element for the adminbar.
123
  *
124
+ * @deprecated 7.9
125
+ *
126
  * @return string
127
  */
128
  function wpseo_tax_adminbar_seo_score() {
129
+ _deprecated_function( __FUNCTION__, 'WPSEO 7.9', null );
130
+
131
  $rating = 0;
132
 
133
  if ( is_tax() || is_category() || is_tag() ) {
140
  /**
141
  * Returns the Content score element for the adminbar.
142
  *
143
+ * @deprecated 7.9
144
+ *
145
  * @return string
146
  */
147
  function wpseo_tax_adminbar_content_score() {
148
+ _deprecated_function( __FUNCTION__, 'WPSEO 7.9', null );
149
+
150
  $rating = 0;
151
 
152
  if ( is_tax() || is_category() || is_tag() ) {
159
  /**
160
  * Takes The SEO score and makes the score icon for the adminbar with it.
161
  *
162
+ * @deprecated 7.9
163
+ *
164
  * @param int $score The 0-100 rating of the score. Can be either SEO score or content score.
165
  *
166
  * @return string $score_adminbar_element
167
  */
168
  function wpseo_adminbar_score( $score ) {
169
+ _deprecated_function( __FUNCTION__, 'WPSEO 7.9', null );
170
+
171
  $score = WPSEO_Utils::translate_score( $score );
172
 
173
  $score_adminbar_element = '<div class="wpseo-score-icon adminbar-seo-score ' . $score . '"><span class="adminbar-seo-score-text screen-reader-text"></span></div>';
175
  return $score_adminbar_element;
176
  }
177
 
 
 
178
  /**
179
  * Enqueue CSS to format the Yoast SEO adminbar item.
180
+ *
181
+ * @deprecated 7.9 Use WPSEO_Admin_Bar_Menu::enqueue_assets() instead
182
  */
183
  function wpseo_admin_bar_style() {
184
+ _deprecated_function( __FUNCTION__, 'WPSEO 7.9', 'WPSEO_Admin_Bar_Menu::enqueue_assets()' );
185
+
186
  if ( ! is_admin_bar_showing() || WPSEO_Options::get( 'enable_admin_bar_menu' ) !== true ) {
187
  return;
188
  }
189
 
190
+ if ( is_admin() && ! is_blog_admin() ) {
191
+ return;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
192
  }
193
 
194
+ $admin_bar_menu = new WPSEO_Admin_Bar_Menu();
195
+ $admin_bar_menu->enqueue_assets();
196
  }
197
 
 
 
 
 
198
  /**
199
  * Detects if the advanced settings are enabled.
200
  *
js/dist/analysis-791.min.js DELETED
@@ -1,13 +0,0 @@
1
- yoastWebpackJsonp([4],[,,,,,,,,,function(a,e){var t;t=function(){return this}();try{t=t||Function("return this")()||(0,eval)("this")}catch(a){"object"==typeof window&&(t=window)}a.exports=t},,,,,,,,,,,,,,,function(a,e,t){function i(a,e){return(n(a)?r:o)(a,s(e))}var r=t(564),o=t(292),s=t(605),n=t(39);a.exports=i},,,,,,,,function(a,e){a.exports=function(a){return a.webpackPolyfill||(a.deprecate=function(){},a.paths=[],a.children||(a.children=[]),Object.defineProperty(a,"loaded",{enumerable:!0,get:function(){return a.l}}),Object.defineProperty(a,"id",{enumerable:!0,get:function(){return a.i}}),a.webpackPolyfill=1),a}},function(a,e,t){"use strict";var i=t(41),r=t(405),o=function(){return[]},s=function(a){this._hasScore=!1,this._identifier="",this._hasMarks=!1,this._marker=o,this.score=0,this.text="",i(a)&&(a={}),i(a.score)||this.setScore(a.score),i(a.text)||this.setText(a.text)};s.prototype.hasScore=function(){return this._hasScore},s.prototype.getScore=function(){return this.score},s.prototype.setScore=function(a){r(a)&&(this.score=a,this._hasScore=!0)},s.prototype.hasText=function(){return""!==this.text},s.prototype.getText=function(){return this.text},s.prototype.setText=function(a){i(a)&&(a=""),this.text=a},s.prototype.setIdentifier=function(a){this._identifier=a},s.prototype.getIdentifier=function(){return this._identifier},s.prototype.setMarker=function(a){this._marker=a},s.prototype.hasMarker=function(){return this._hasMarks&&this._marker!==o},s.prototype.getMarker=function(){return this._marker},s.prototype.setHasMarks=function(a){this._hasMarks=a},s.prototype.hasMarks=function(){return this._hasMarks},a.exports=s},,,,,,function(a,e){var t=Array.isArray;a.exports=t},function(a,e){function t(a){var e=typeof a;return null!=a&&("object"==e||"function"==e)}a.exports=t},function(a,e){function t(a){return void 0===a}a.exports=t},,,,,,,function(a,e){"function"==typeof Object.create?a.exports=function(a,e){a.super_=e,a.prototype=Object.create(e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})}:a.exports=function(a,e){a.super_=e;var t=function(){};t.prototype=e.prototype,a.prototype=new t,a.prototype.constructor=a}},,,,,function(a,e){function t(a){return null!=a&&"object"==typeof a}a.exports=t},,,function(a,e,t){"use strict";a.exports=function(a){return a=a.replace(/\s{2,}/g," "),a=a.replace(/\s\./g,"."),a=a.replace(/^\s+|\s+$/g,"")}},,,,,,function(a,e,t){var i=t(334),r="object"==typeof self&&self&&self.Object===Object&&self,o=i||r||Function("return this")();a.exports=o},,,,,,function(a,e,t){function i(a,e){return(n(a)?r:s)(a,o(e,3))}var r=t(176),o=t(276),s=t(1104),n=t(39);a.exports=i},function(a,e,t){var i=t(451),r=t(573),o=r(function(a,e,t){i(a,e,t)});a.exports=o},,,function(a,e,t){function i(a){return null==a?void 0===a?d:n:l&&l in Object(a)?o(a):s(a)}var r=t(142),o=t(599),s=t(600),n="[object Null]",d="[object Undefined]",l=r?r.toStringTag:void 0;a.exports=i},,function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}var r=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}(),o=function(){function a(){i(this,a)}return r(a,[{key:"getResult",value:function(a,e,t){throw"The method getResult is not implemented"}},{key:"isApplicable",value:function(a){return!0}}]),a}();a.exports=o},function(a,e,t){function i(a){return null!=a&&o(a.length)&&!r(a)}var r=t(170),o=t(278);a.exports=i},,,,,,,,,,,function(a,e,t){(function(a,i){function r(a,t){var i={seen:[],stylize:s};return arguments.length>=3&&(i.depth=arguments[2]),arguments.length>=4&&(i.colors=arguments[3]),f(t)?i.showHidden=t:t&&e._extend(i,t),w(i.showHidden)&&(i.showHidden=!1),w(i.depth)&&(i.depth=2),w(i.colors)&&(i.colors=!1),w(i.customInspect)&&(i.customInspect=!0),i.colors&&(i.stylize=o),d(i,a,i.depth)}function o(a,e){var t=r.styles[e];return t?"["+r.colors[t][0]+"m"+a+"["+r.colors[t][1]+"m":a}function s(a,e){return a}function n(a){var e={};return a.forEach(function(a,t){e[a]=!0}),e}function d(a,t,i){if(a.customInspect&&t&&q(t.inspect)&&t.inspect!==e.inspect&&(!t.constructor||t.constructor.prototype!==t)){var r=t.inspect(i,a);return z(r)||(r=d(a,r,i)),r}var o=l(a,t);if(o)return o;var s=Object.keys(t),f=n(s);if(a.showHidden&&(s=Object.getOwnPropertyNames(t)),j(t)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return c(t);if(0===s.length){if(q(t)){var b=t.name?": "+t.name:"";return a.stylize("[Function"+b+"]","special")}if(x(t))return a.stylize(RegExp.prototype.toString.call(t),"regexp");if(_(t))return a.stylize(Date.prototype.toString.call(t),"date");if(j(t))return c(t)}var h="",v=!1,y=["{","}"];if(m(t)&&(v=!0,y=["[","]"]),q(t)){h=" [Function"+(t.name?": "+t.name:"")+"]"}if(x(t)&&(h=" "+RegExp.prototype.toString.call(t)),_(t)&&(h=" "+Date.prototype.toUTCString.call(t)),j(t)&&(h=" "+c(t)),0===s.length&&(!v||0==t.length))return y[0]+h+y[1];if(i<0)return x(t)?a.stylize(RegExp.prototype.toString.call(t),"regexp"):a.stylize("[Object]","special");a.seen.push(t);var w;return w=v?u(a,t,i,f,s):s.map(function(e){return p(a,t,i,f,e,v)}),a.seen.pop(),g(w,h,y)}function l(a,e){if(w(e))return a.stylize("undefined","undefined");if(z(e)){var t="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return a.stylize(t,"string")}return v(e)?a.stylize(""+e,"number"):f(e)?a.stylize(""+e,"boolean"):b(e)?a.stylize("null","null"):void 0}function c(a){return"["+Error.prototype.toString.call(a)+"]"}function u(a,e,t,i,r){for(var o=[],s=0,n=e.length;s<n;++s)C(e,String(s))?o.push(p(a,e,t,i,String(s),!0)):o.push("");return r.forEach(function(r){r.match(/^\d+$/)||o.push(p(a,e,t,i,r,!0))}),o}function p(a,e,t,i,r,o){var s,n,l;if(l=Object.getOwnPropertyDescriptor(e,r)||{value:e[r]},l.get?n=l.set?a.stylize("[Getter/Setter]","special"):a.stylize("[Getter]","special"):l.set&&(n=a.stylize("[Setter]","special")),C(i,r)||(s="["+r+"]"),n||(a.seen.indexOf(l.value)<0?(n=b(t)?d(a,l.value,null):d(a,l.value,t-1),n.indexOf("\n")>-1&&(n=o?n.split("\n").map(function(a){return" "+a}).join("\n").substr(2):"\n"+n.split("\n").map(function(a){return" "+a}).join("\n"))):n=a.stylize("[Circular]","special")),w(s)){if(o&&r.match(/^\d+$/))return n;s=JSON.stringify(""+r),s.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=a.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=a.stylize(s,"string"))}return s+": "+n}function g(a,e,t){var i=0;return a.reduce(function(a,e){return i++,e.indexOf("\n")>=0&&i++,a+e.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?t[0]+(""===e?"":e+"\n ")+" "+a.join(",\n ")+" "+t[1]:t[0]+e+" "+a.join(", ")+" "+t[1]}function m(a){return Array.isArray(a)}function f(a){return"boolean"==typeof a}function b(a){return null===a}function h(a){return null==a}function v(a){return"number"==typeof a}function z(a){return"string"==typeof a}function y(a){return"symbol"==typeof a}function w(a){return void 0===a}function x(a){return k(a)&&"[object RegExp]"===S(a)}function k(a){return"object"==typeof a&&null!==a}function _(a){return k(a)&&"[object Date]"===S(a)}function j(a){return k(a)&&("[object Error]"===S(a)||a instanceof Error)}function q(a){return"function"==typeof a}function E(a){return null===a||"boolean"==typeof a||"number"==typeof a||"string"==typeof a||"symbol"==typeof a||void 0===a}function S(a){return Object.prototype.toString.call(a)}function A(a){return a<10?"0"+a.toString(10):a.toString(10)}function T(){var a=new Date,e=[A(a.getHours()),A(a.getMinutes()),A(a.getSeconds())].join(":");return[a.getDate(),R[a.getMonth()],e].join(" ")}function C(a,e){return Object.prototype.hasOwnProperty.call(a,e)}var O=/%[sdj%]/g;e.format=function(a){if(!z(a)){for(var e=[],t=0;t<arguments.length;t++)e.push(r(arguments[t]));return e.join(" ")}for(var t=1,i=arguments,o=i.length,s=String(a).replace(O,function(a){if("%%"===a)return"%";if(t>=o)return a;switch(a){case"%s":return String(i[t++]);case"%d":return Number(i[t++]);case"%j":try{return JSON.stringify(i[t++])}catch(a){return"[Circular]"}default:return a}}),n=i[t];t<o;n=i[++t])b(n)||!k(n)?s+=" "+n:s+=" "+r(n);return s},e.deprecate=function(t,r){function o(){if(!s){if(i.throwDeprecation)throw new Error(r);i.traceDeprecation?console.trace(r):console.error(r),s=!0}return t.apply(this,arguments)}if(w(a.process))return function(){return e.deprecate(t,r).apply(this,arguments)};if(!0===i.noDeprecation)return t;var s=!1;return o};var D,P={};e.debuglog=function(a){if(w(D)&&(D=Object({NODE_ENV:"production"}).NODE_DEBUG||""),a=a.toUpperCase(),!P[a])if(new RegExp("\\b"+a+"\\b","i").test(D)){var t=i.pid;P[a]=function(){var i=e.format.apply(e,arguments);console.error("%s %d: %s",a,t,i)}}else P[a]=function(){};return P[a]},e.inspect=r,r.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},r.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.isArray=m,e.isBoolean=f,e.isNull=b,e.isNullOrUndefined=h,e.isNumber=v,e.isString=z,e.isSymbol=y,e.isUndefined=w,e.isRegExp=x,e.isObject=k,e.isDate=_,e.isError=j,e.isFunction=q,e.isPrimitive=E,e.isBuffer=t(1258);var R=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];e.log=function(){console.log("%s - %s",T(),e.format.apply(e,arguments))},e.inherits=t(1259),e._extend=function(a,e){if(!e||!k(e))return a;for(var t=Object.keys(e),i=t.length;i--;)a[t[i]]=e[t[i]];return a}}).call(e,t(9),t(141))},,,,,,,,,,,,,,function(a,e,t){function i(a){if(null==a)return!0;if(d(a)&&(n(a)||"string"==typeof a||"function"==typeof a.splice||l(a)||u(a)||s(a)))return!a.length;var e=o(a);if(e==p||e==g)return!a.size;if(c(a))return!r(a).length;for(var t in a)if(f.call(a,t))return!1;return!0}var r=t(419),o=t(753),s=t(182),n=t(39),d=t(75),l=t(194),c=t(175),u=t(220),p="[object Map]",g="[object Set]",m=Object.prototype,f=m.hasOwnProperty;a.exports=i},,,,,function(a,e,t){function i(a){return a=r(a),a&&s.test(a)?a.replace(o,"\\$&"):a}var r=t(365),o=/[\\^$.*+?()[\]{}|]/g,s=RegExp(o.source);a.exports=i},,,,,function(a,e){function t(a,e){return a===e||a!==a&&e!==e}a.exports=t},,,,,function(a,e,t){function i(a,e){return(n(a)?r:o)(a,s(e,3))}var r=t(752),o=t(1105),s=t(276),n=t(39);a.exports=i},function(a,e,t){"use strict";var i=t(56),r=t(364).blockElements,o=new RegExp("^<("+r.join("|")+")[^>]*?>","i"),s=new RegExp("</("+r.join("|")+")[^>]*?>$","i"),n=function(a){return a=a.replace(/^(<\/([^>]+)>)+/i,""),a=a.replace(/(<([^\/>]+)>)+$/i,"")},d=function(a){return a=a.replace(o,""),a=a.replace(s,"")},l=function(a){return a=a.replace(/(<([^>]+)>)/gi," "),a=i(a)};a.exports={stripFullTags:l,stripIncompleteTags:n,stripBlockTagsAtStartEnd:d}},function(a,e,t){function i(a,e){var t=o(a,e);return r(t)?t:void 0}var r=t(609),o=t(612);a.exports=i},,,,,,,function(a,e,t){"use strict";a.exports=function(a){return a.split("_")[0]}},function(a,e,t){function i(a,e){if("function"!=typeof a||null!=e&&"function"!=typeof e)throw new TypeError(o);var t=function(){var i=arguments,r=e?e.apply(this,i):i[0],o=t.cache;if(o.has(r))return o.get(r);var s=a.apply(this,i);return t.cache=o.set(r,s)||o,s};return t.cache=new(i.Cache||r),t}var r=t(280),o="Expected a function";i.Cache=r,a.exports=i},,,function(a,e){function t(a){return a}a.exports=t},,,,,,,,,,,,,,function(a,e,t){var i=t(62),r=i.Symbol;a.exports=r},function(a,e,t){var i=t(117),r=i(Object,"create");a.exports=r},function(a,e,t){function i(a){var e=-1,t=null==a?0:a.length;for(this.clear();++e<t;){var i=a[e];this.set(i[0],i[1])}}var r=t(617),o=t(618),s=t(619),n=t(620),d=t(621);i.prototype.clear=r,i.prototype.delete=o,i.prototype.get=s,i.prototype.has=n,i.prototype.set=d,a.exports=i},function(a,e,t){function i(a,e){for(var t=a.length;t--;)if(r(a[t][0],e))return t;return-1}var r=t(110);a.exports=i},function(a,e,t){function i(a,e){var t=a.__data__;return r(e)?t["string"==typeof e?"string":"hash"]:t.map}var r=t(623);a.exports=i},,,,,,,,,,,function(a,e,t){function i(a,e,t,i){a=o(a)?a:d(a),t=t&&!i?n(t):0;var c=a.length;return t<0&&(t=l(c+t,0)),s(a)?t<=c&&a.indexOf(e,t)>-1:!!c&&r(a,e,t)>-1}var r=t(1036),o=t(75),s=t(1147),n=t(736),d=t(1148),l=Math.max;a.exports=i},,,,,,,,,,,,,function(a,e,t){function i(a){if(!o(a))return!1;var e=r(a);return e==n||e==d||e==s||e==l}var r=t(72),o=t(40),s="[object AsyncFunction]",n="[object Function]",d="[object GeneratorFunction]",l="[object Proxy]";a.exports=i},,,,,function(a,e){function t(a){var e=a&&a.constructor;return a===("function"==typeof e&&e.prototype||i)}var i=Object.prototype;a.exports=t},function(a,e){function t(a,e){for(var t=-1,i=null==a?0:a.length,r=Array(i);++t<i;)r[t]=e(a[t],t,a);return r}a.exports=t},,function(a,e,t){/**
2
- * @preserve jed.js https://github.com/SlexAxton/Jed
3
- */
4
- !function(t,i){function r(a){return g.PF.compile(a||"nplurals=2; plural=(n != 1);")}function o(a,e){this._key=a,this._i18n=e}var s=Array.prototype,n=Object.prototype,d=s.slice,l=n.hasOwnProperty,c=s.forEach,u={},p={forEach:function(a,e,t){var i,r,o;if(null!==a)if(c&&a.forEach===c)a.forEach(e,t);else if(a.length===+a.length){for(i=0,r=a.length;i<r;i++)if(i in a&&e.call(t,a[i],i,a)===u)return}else for(o in a)if(l.call(a,o)&&e.call(t,a[o],o,a)===u)return},extend:function(a){return this.forEach(d.call(arguments,1),function(e){for(var t in e)a[t]=e[t]}),a}},g=function(a){if(this.defaults={locale_data:{messages:{"":{domain:"messages",lang:"en",plural_forms:"nplurals=2; plural=(n != 1);"}}},domain:"messages",debug:!1},this.options=p.extend({},this.defaults,a),this.textdomain(this.options.domain),a.domain&&!this.options.locale_data[this.options.domain])throw new Error("Text domain set to non-existent domain: `"+a.domain+"`")};g.context_delimiter=String.fromCharCode(4),p.extend(o.prototype,{onDomain:function(a){return this._domain=a,this},withContext:function(a){return this._context=a,this},ifPlural:function(a,e){return this._val=a,this._pkey=e,this},fetch:function(a){return"[object Array]"!={}.toString.call(a)&&(a=[].slice.call(arguments,0)),(a&&a.length?g.sprintf:function(a){return a})(this._i18n.dcnpgettext(this._domain,this._context,this._key,this._pkey,this._val),a)}}),p.extend(g.prototype,{translate:function(a){return new o(a,this)},textdomain:function(a){if(!a)return this._textdomain;this._textdomain=a},gettext:function(a){/**
5
- * @preserve jed.js https://github.com/SlexAxton/Jed
6
- */
7
- return this.dcnpgettext.call(this,void 0,void 0,a)},dgettext:function(a,e){return this.dcnpgettext.call(this,a,void 0,e)},dcgettext:function(a,e){return this.dcnpgettext.call(this,a,void 0,e)},ngettext:function(a,e,t){return this.dcnpgettext.call(this,void 0,void 0,a,e,t)},dngettext:function(a,e,t,i){return this.dcnpgettext.call(this,a,void 0,e,t,i)},dcngettext:function(a,e,t,i){return this.dcnpgettext.call(this,a,void 0,e,t,i)},pgettext:function(a,e){return this.dcnpgettext.call(this,void 0,a,e)},dpgettext:function(a,e,t){return this.dcnpgettext.call(this,a,e,t)},dcpgettext:function(a,e,t){return this.dcnpgettext.call(this,a,e,t)},npgettext:function(a,e,t,i){return this.dcnpgettext.call(this,void 0,a,e,t,i)},dnpgettext:function(a,e,t,i,r){return this.dcnpgettext.call(this,a,e,t,i,r)},dcnpgettext:function(a,e,t,i,o){i=i||t,a=a||this._textdomain;var s;if(!this.options)return s=new g,s.dcnpgettext.call(s,void 0,void 0,t,i,o);if(!this.options.locale_data)throw new Error("No locale data provided.");if(!this.options.locale_data[a])throw new Error("Domain `"+a+"` was not found.");if(!this.options.locale_data[a][""])throw new Error("No locale meta information provided.");if(!t)throw new Error("No translation key found.");var n,d,l,c=e?e+g.context_delimiter+t:t,u=this.options.locale_data,p=u[a],m=(u.messages||this.defaults.locale_data.messages)[""],f=p[""].plural_forms||p[""]["Plural-Forms"]||p[""]["plural-forms"]||m.plural_forms||m["Plural-Forms"]||m["plural-forms"];if(void 0===o)l=0;else{if("number"!=typeof o&&(o=parseInt(o,10),isNaN(o)))throw new Error("The number that was passed in is not a number.");l=r(f)(o)}if(!p)throw new Error("No domain named `"+a+"` could be found.");return!(n=p[c])||l>n.length?(this.options.missing_key_callback&&this.options.missing_key_callback(c,a),d=[t,i],!0===this.options.debug&&console.log(d[r(f)(o)]),d[r()(o)]):(d=n[l])||(d=[t,i],d[r()(o)])}});var m=function(){function a(a){return Object.prototype.toString.call(a).slice(8,-1).toLowerCase()}function e(a,e){for(var t=[];e>0;t[--e]=a);return t.join("")}var t=function(){return t.cache.hasOwnProperty(arguments[0])||(t.cache[arguments[0]]=t.parse(arguments[0])),t.format.call(null,t.cache[arguments[0]],arguments)};return t.format=function(t,i){var r,o,s,n,d,l,c,u=1,p=t.length,g="",f=[];for(o=0;o<p;o++)if("string"===(g=a(t[o])))f.push(t[o]);else if("array"===g){if(n=t[o],n[2])for(r=i[u],s=0;s<n[2].length;s++){if(!r.hasOwnProperty(n[2][s]))throw m('[sprintf] property "%s" does not exist',n[2][s]);r=r[n[2][s]]}else r=n[1]?i[n[1]]:i[u++];if(/[^s]/.test(n[8])&&"number"!=a(r))throw m("[sprintf] expecting number but found %s",a(r));switch(void 0!==r&&null!==r||(r=""),n[8]){case"b":r=r.toString(2);break;case"c":r=String.fromCharCode(r);break;case"d":r=parseInt(r,10);break;case"e":r=n[7]?r.toExponential(n[7]):r.toExponential();break;case"f":r=n[7]?parseFloat(r).toFixed(n[7]):parseFloat(r);break;case"o":r=r.toString(8);break;case"s":r=(r=String(r))&&n[7]?r.substring(0,n[7]):r;break;case"u":r=Math.abs(r);break;case"x":r=r.toString(16);break;case"X":r=r.toString(16).toUpperCase()}r=/[def]/.test(n[8])&&n[3]&&r>=0?"+"+r:r,l=n[4]?"0"==n[4]?"0":n[4].charAt(1):" ",c=n[6]-String(r).length,d=n[6]?e(l,c):"",f.push(n[5]?r+d:d+r)}return f.join("")},t.cache={},t.parse=function(a){for(var e=a,t=[],i=[],r=0;e;){if(null!==(t=/^[^\x25]+/.exec(e)))i.push(t[0]);else if(null!==(t=/^\x25{2}/.exec(e)))i.push("%");else{if(null===(t=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(e)))throw"[sprintf] huh?";if(t[2]){r|=1;var o=[],s=t[2],n=[];if(null===(n=/^([a-z_][a-z_\d]*)/i.exec(s)))throw"[sprintf] huh?";for(o.push(n[1]);""!==(s=s.substring(n[0].length));)if(null!==(n=/^\.([a-z_][a-z_\d]*)/i.exec(s)))o.push(n[1]);else{if(null===(n=/^\[(\d+)\]/.exec(s)))throw"[sprintf] huh?";o.push(n[1])}t[2]=o}else r|=2;if(3===r)throw"[sprintf] mixing positional and named placeholders is not (yet) supported";i.push(t)}e=e.substring(t[0].length)}return i},t}(),f=function(a,e){return e.unshift(a),m.apply(null,e)};g.parse_plural=function(a,e){return a=a.replace(/n/g,e),g.parse_expression(a)},g.sprintf=function(a,e){return"[object Array]"=={}.toString.call(e)?f(a,[].slice.call(e)):m.apply(this,[].slice.call(arguments))},g.prototype.sprintf=function(){return g.sprintf.apply(this,arguments)},g.PF={},g.PF.parse=function(a){var e=g.PF.extractPluralExpr(a);return g.PF.parser.parse.call(g.PF.parser,e)},g.PF.compile=function(a){function e(a){return!0===a?1:a||0}var t=g.PF.parse(a);return function(a){return e(g.PF.interpreter(t)(a))}},g.PF.interpreter=function(a){return function(e){switch(a.type){case"GROUP":return g.PF.interpreter(a.expr)(e);case"TERNARY":return g.PF.interpreter(a.expr)(e)?g.PF.interpreter(a.truthy)(e):g.PF.interpreter(a.falsey)(e);case"OR":return g.PF.interpreter(a.left)(e)||g.PF.interpreter(a.right)(e);case"AND":return g.PF.interpreter(a.left)(e)&&g.PF.interpreter(a.right)(e);case"LT":return g.PF.interpreter(a.left)(e)<g.PF.interpreter(a.right)(e);case"GT":return g.PF.interpreter(a.left)(e)>g.PF.interpreter(a.right)(e);case"LTE":return g.PF.interpreter(a.left)(e)<=g.PF.interpreter(a.right)(e);case"GTE":return g.PF.interpreter(a.left)(e)>=g.PF.interpreter(a.right)(e);case"EQ":return g.PF.interpreter(a.left)(e)==g.PF.interpreter(a.right)(e);case"NEQ":return g.PF.interpreter(a.left)(e)!=g.PF.interpreter(a.right)(e);case"MOD":return g.PF.interpreter(a.left)(e)%g.PF.interpreter(a.right)(e);case"VAR":return e;case"NUM":return a.val;default:throw new Error("Invalid Token found.")}}},g.PF.extractPluralExpr=function(a){a=a.replace(/^\s\s*/,"").replace(/\s\s*$/,""),/;\s*$/.test(a)||(a=a.concat(";"));var e,t=/nplurals\=(\d+);/,i=/plural\=(.*);/,r=a.match(t),o={};if(!(r.length>1))throw new Error("nplurals not found in plural_forms string: "+a);if(o.nplurals=r[1],a=a.replace(t,""),!((e=a.match(i))&&e.length>1))throw new Error("`plural` expression not found: "+a);return e[1]},g.PF.parser=function(){var a={trace:function(){},yy:{},symbols_:{error:2,expressions:3,e:4,EOF:5,"?":6,":":7,"||":8,"&&":9,"<":10,"<=":11,">":12,">=":13,"!=":14,"==":15,"%":16,"(":17,")":18,n:19,NUMBER:20,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",6:"?",7:":",8:"||",9:"&&",10:"<",11:"<=",12:">",13:">=",14:"!=",15:"==",16:"%",17:"(",18:")",19:"n",20:"NUMBER"},productions_:[0,[3,2],[4,5],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,1],[4,1]],performAction:function(a,e,t,i,r,o,s){var n=o.length-1;switch(r){case 1:return{type:"GROUP",expr:o[n-1]};case 2:this.$={type:"TERNARY",expr:o[n-4],truthy:o[n-2],falsey:o[n]};break;case 3:this.$={type:"OR",left:o[n-2],right:o[n]};break;case 4:this.$={type:"AND",left:o[n-2],right:o[n]};break;case 5:this.$={type:"LT",left:o[n-2],right:o[n]};break;case 6:this.$={type:"LTE",left:o[n-2],right:o[n]};break;case 7:this.$={type:"GT",left:o[n-2],right:o[n]};break;case 8:this.$={type:"GTE",left:o[n-2],right:o[n]};break;case 9:this.$={type:"NEQ",left:o[n-2],right:o[n]};break;case 10:this.$={type:"EQ",left:o[n-2],right:o[n]};break;case 11:this.$={type:"MOD",left:o[n-2],right:o[n]};break;case 12:this.$={type:"GROUP",expr:o[n-1]};break;case 13:this.$={type:"VAR"};break;case 14:this.$={type:"NUM",val:Number(a)}}},table:[{3:1,4:2,17:[1,3],19:[1,4],20:[1,5]},{1:[3]},{5:[1,6],6:[1,7],8:[1,8],9:[1,9],10:[1,10],11:[1,11],12:[1,12],13:[1,13],14:[1,14],15:[1,15],16:[1,16]},{4:17,17:[1,3],19:[1,4],20:[1,5]},{5:[2,13],6:[2,13],7:[2,13],8:[2,13],9:[2,13],10:[2,13],11:[2,13],12:[2,13],13:[2,13],14:[2,13],15:[2,13],16:[2,13],18:[2,13]},{5:[2,14],6:[2,14],7:[2,14],8:[2,14],9:[2,14],10:[2,14],11:[2,14],12:[2,14],13:[2,14],14:[2,14],15:[2,14],16:[2,14],18:[2,14]},{1:[2,1]},{4:18,17:[1,3],19:[1,4],20:[1,5]},{4:19,17:[1,3],19:[1,4],20:[1,5]},{4:20,17:[1,3],19:[1,4],20:[1,5]},{4:21,17:[1,3],19:[1,4],20:[1,5]},{4:22,17:[1,3],19:[1,4],20:[1,5]},{4:23,17:[1,3],19:[1,4],20:[1,5]},{4:24,17:[1,3],19:[1,4],20:[1,5]},{4:25,17:[1,3],19:[1,4],20:[1,5]},{4:26,17:[1,3],19:[1,4],20:[1,5]},{4:27,17:[1,3],19:[1,4],20:[1,5]},{6:[1,7],8:[1,8],9:[1,9],10:[1,10],11:[1,11],12:[1,12],13:[1,13],14:[1,14],15:[1,15],16:[1,16],18:[1,28]},{6:[1,7],7:[1,29],8:[1,8],9:[1,9],10:[1,10],11:[1,11],12:[1,12],13:[1,13],14:[1,14],15:[1,15],16:[1,16]},{5:[2,3],6:[2,3],7:[2,3],8:[2,3],9:[1,9],10:[1,10],11:[1,11],12:[1,12],13:[1,13],14:[1,14],15:[1,15],16:[1,16],18:[2,3]},{5:[2,4],6:[2,4],7:[2,4],8:[2,4],9:[2,4],10:[1,10],11:[1,11],12:[1,12],13:[1,13],14:[1,14],15:[1,15],16:[1,16],18:[2,4]},{5:[2,5],6:[2,5],7:[2,5],8:[2,5],9:[2,5],10:[2,5],11:[2,5],12:[2,5],13:[2,5],14:[2,5],15:[2,5],16:[1,16],18:[2,5]},{5:[2,6],6:[2,6],7:[2,6],8:[2,6],9:[2,6],10:[2,6],11:[2,6],12:[2,6],13:[2,6],14:[2,6],15:[2,6],16:[1,16],18:[2,6]},{5:[2,7],6:[2,7],7:[2,7],8:[2,7],9:[2,7],10:[2,7],11:[2,7],12:[2,7],13:[2,7],14:[2,7],15:[2,7],16:[1,16],18:[2,7]},{5:[2,8],6:[2,8],7:[2,8],8:[2,8],9:[2,8],10:[2,8],11:[2,8],12:[2,8],13:[2,8],14:[2,8],15:[2,8],16:[1,16],18:[2,8]},{5:[2,9],6:[2,9],7:[2,9],8:[2,9],9:[2,9],10:[2,9],11:[2,9],12:[2,9],13:[2,9],14:[2,9],15:[2,9],16:[1,16],18:[2,9]},{5:[2,10],6:[2,10],7:[2,10],8:[2,10],9:[2,10],10:[2,10],11:[2,10],12:[2,10],13:[2,10],14:[2,10],15:[2,10],16:[1,16],18:[2,10]},{5:[2,11],6:[2,11],7:[2,11],8:[2,11],9:[2,11],10:[2,11],11:[2,11],12:[2,11],13:[2,11],14:[2,11],15:[2,11],16:[2,11],18:[2,11]},{5:[2,12],6:[2,12],7:[2,12],8:[2,12],9:[2,12],10:[2,12],11:[2,12],12:[2,12],13:[2,12],14:[2,12],15:[2,12],16:[2,12],18:[2,12]},{4:30,17:[1,3],19:[1,4],20:[1,5]},{5:[2,2],6:[1,7],7:[2,2],8:[1,8],9:[1,9],10:[1,10],11:[1,11],12:[1,12],13:[1,13],14:[1,14],15:[1,15],16:[1,16],18:[2,2]}],defaultActions:{6:[2,1]},parseError:function(a,e){throw new Error(a)},parse:function(a){function e(){var a;return a=t.lexer.lex()||1,"number"!=typeof a&&(a=t.symbols_[a]||a),a}var t=this,i=[0],r=[null],o=[],s=this.table,n="",d=0,l=0,c=0,u=2;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,void 0===this.lexer.yylloc&&(this.lexer.yylloc={});var p=this.lexer.yylloc;o.push(p),"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var g,m,f,b,h,v,z,y,w,x={};;){if(f=i[i.length-1],this.defaultActions[f]?b=this.defaultActions[f]:(null==g&&(g=e()),b=s[f]&&s[f][g]),void 0===b||!b.length||!b[0]){if(!c){w=[];for(v in s[f])this.terminals_[v]&&v>2&&w.push("'"+this.terminals_[v]+"'");var k="";k=this.lexer.showPosition?"Parse error on line "+(d+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+w.join(", ")+", got '"+this.terminals_[g]+"'":"Parse error on line "+(d+1)+": Unexpected "+(1==g?"end of input":"'"+(this.terminals_[g]||g)+"'"),this.parseError(k,{text:this.lexer.match,token:this.terminals_[g]||g,line:this.lexer.yylineno,loc:p,expected:w})}if(3==c){if(1==g)throw new Error(k||"Parsing halted.");l=this.lexer.yyleng,n=this.lexer.yytext,d=this.lexer.yylineno,p=this.lexer.yylloc,g=e()}for(;;){if(u.toString()in s[f])break;if(0==f)throw new Error(k||"Parsing halted.");!function(a){i.length=i.length-2*a,r.length=r.length-a,o.length=o.length-a}(1),f=i[i.length-1]}m=g,g=u,f=i[i.length-1],b=s[f]&&s[f][u],c=3}if(b[0]instanceof Array&&b.length>1)throw new Error("Parse Error: multiple actions possible at state: "+f+", token: "+g);switch(b[0]){case 1:i.push(g),r.push(this.lexer.yytext),o.push(this.lexer.yylloc),i.push(b[1]),g=null,m?(g=m,m=null):(l=this.lexer.yyleng,n=this.lexer.yytext,d=this.lexer.yylineno,p=this.lexer.yylloc,c>0&&c--);break;case 2:if(z=this.productions_[b[1]][1],x.$=r[r.length-z],x._$={first_line:o[o.length-(z||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(z||1)].first_column,last_column:o[o.length-1].last_column},void 0!==(h=this.performAction.call(x,n,l,d,this.yy,b[1],r,o)))return h;z&&(i=i.slice(0,-1*z*2),r=r.slice(0,-1*z),o=o.slice(0,-1*z)),i.push(this.productions_[b[1]][0]),r.push(x.$),o.push(x._$),y=s[i[i.length-2]][i[i.length-1]],i.push(y);break;case 3:return!0}}return!0}},e=function(){var a={EOF:1,parseError:function(a,e){if(!this.yy.parseError)throw new Error(a);this.yy.parseError(a,e)},setInput:function(a){return this._input=a,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this},input:function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.match+=a,this.matched+=a,a.match(/\n/)&&this.yylineno++,this._input=this._input.slice(1),a},unput:function(a){return this._input=a+this._input,this},more:function(){return this._more=!0,this},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),e=new Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+e+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var a,e;this._more||(this.yytext="",this.match="");for(var t=this._currentRules(),i=0;i<t.length;i++)if(a=this._input.match(this.rules[t[i]]))return e=a[0].match(/\n.*/g),e&&(this.yylineno+=e.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:e?e[e.length-1].length-1:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this._more=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],this.performAction.call(this,this.yy,this,t[i],this.conditionStack[this.conditionStack.length-1])||void 0;if(""===this._input)return this.EOF;this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var a=this.next();return void 0!==a?a:this.lex()},begin:function(a){this.conditionStack.push(a)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(a){this.begin(a)}};return a.performAction=function(a,e,t,i){switch(t){case 0:break;case 1:return 20;case 2:return 19;case 3:return 8;case 4:return 9;case 5:return 6;case 6:return 7;case 7:return 11;case 8:return 13;case 9:return 10;case 10:return 12;case 11:return 14;case 12:return 15;case 13:return 16;case 14:return 17;case 15:return 18;case 16:return 5;case 17:return"INVALID"}},a.rules=[/^\s+/,/^[0-9]+(\.[0-9]+)?\b/,/^n\b/,/^\|\|/,/^&&/,/^\?/,/^:/,/^<=/,/^>=/,/^</,/^>/,/^!=/,/^==/,/^%/,/^\(/,/^\)/,/^$/,/^./],a.conditions={INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],inclusive:!0}},a}();return a.lexer=e,a}(),void 0!==a&&a.exports&&(e=a.exports=g),e.Jed=g}()},,,,function(a,e,t){var i=t(598),r=t(53),o=Object.prototype,s=o.hasOwnProperty,n=o.propertyIsEnumerable,d=i(function(){return arguments}())?i:function(a){return r(a)&&s.call(a,"callee")&&!n.call(a,"callee")};a.exports=d},,,,,,,,,,function(a,e,t){"use strict";var i=t(235);a.exports=function(a){return i(a).length}},function(a,e,t){function i(a){return s(a)?r(a):o(a)}var r=t(333),o=t(419),s=t(75);a.exports=i},function(a,e,t){(function(a){var i=t(62),r=t(601),o="object"==typeof e&&e&&!e.nodeType&&e,s=o&&"object"==typeof a&&a&&!a.nodeType&&a,n=s&&s.exports===o,d=n?i.Buffer:void 0,l=d?d.isBuffer:void 0,c=l||r;a.exports=c}).call(e,t(32)(a))},,,,,,,,,,,,function(a,e,t){function i(a,e,t){"__proto__"==e&&r?r(a,e,{configurable:!0,enumerable:!0,value:t,writable:!0}):a[e]=t}var r=t(340);a.exports=i},function(a,e,t){"use strict";function i(a,e,t){return a>e&&a<=t}function r(a,e,t){return a>=e&&a<t}function o(a,e,t){return a>=e&&a<=t}a.exports={inRange:i,inRangeStartInclusive:r,inRangeEndInclusive:i,inRangeStartEndInclusive:o}},,,,,,,,,,,function(a,e,t){"use strict";function i(){M=[],b=q(function(a){M.push(a)}),b.addRule(D,"html-start"),b.addRule(P,"html-end"),b.addRule(B,"block-start"),b.addRule(F,"block-end"),b.addRule(T,"full-stop"),b.addRule(C,"sentence-delimiter"),b.addRule(O,"sentence")}function r(a){return a!==a.toLocaleLowerCase()}function o(a){return!y(parseInt(a,10))}function s(a){return/<br/.test(a)}function n(a){return"'"===(a=S(a))||'"'===a}function d(a){return"¿"===a||"¡"===a}function l(a){return i(),b.onText(a),b.end(),M}function c(a){return a.replace(/\s+/," ")}function u(a){var e="";return v(a[0])||(e+=a[0].src),v(a[1])||(e+=a[1].src),e=c(e)}function p(a){return r(a)||o(a)||n(a)||d(a)}function g(a){return!v(a)&&("html-start"===a.type||"html-end"===a.type||"block-start"===a.type)}function m(a){var e,t,i=[],r="";do{t=!1;var n=a[0],d=a[a.length-1];"html-start"===n.type&&"html-end"===d.type&&(a=a.slice(1,a.length-1),t=!0)}while(t&&a.length>1);return z(a,function(t,n){var d,l,c=a[n+1],m=a[n+2];switch(t.type){case"html-start":case"html-end":s(t.src)?(i.push(r),r=""):r+=t.src;break;case"sentence":r+=t.src;break;case"sentence-delimiter":r+=t.src,v(c)||"block-end"===c.type||"sentence-delimiter"===c.type||(i.push(r),r="");break;case"full-stop":if(r+=t.src,l=u([c,m]),d=l.length>=2,e=d?l[1]:"",d&&o(l[0]))break;(d&&p(e)||g(c))&&(i.push(r),r="");break;case"block-start":r+=t.src;break;case"block-end":if(r+=t.src,l=u([c,m]),d=l.length>=2,e=d?l[0]:"",d&&o(l[0]))break;(d&&p(e)||g(c))&&(i.push(r),r="")}}),""!==r&&i.push(r),i=h(i,function(a){return a.trim()})}function f(a){var e=l(a);return 0===e.length?[]:m(e)}var b,h=t(68),v=t(41),z=t(24),y=t(1250),w=t(115),x=t(589),k=t(100),_=t(1111),j=t(125),q=t(417),E=t(364).getBlocks,S=t(330).normalize,A=t(1107).unifyNonBreakingSpace,T=new RegExp("^[.]$"),C=new RegExp("^[?!;…]$"),O=new RegExp("^[^.?!;…<\\(\\)\\[\\]]+$"),D=/^<([^>\s\/]+)[^>]*>$/im,P=/^<\/([^>\s]+)[^>]*>$/im,R=new RegExp("\n\r|\n|\r"),B=/^\s*[[({]\s*$/,F=/^\s*[\])}]\s*$/,M=[],L=j(f);a.exports=function(a){a=A(a);var e,t=E(a);return t=x(t,function(a){return a.split(R)}),e=x(t,L),w(e,_(k))}},function(a,e){function t(a,e){var t=typeof a;return!!(e=null==e?i:e)&&("number"==t||"symbol"!=t&&r.test(a))&&a>-1&&a%1==0&&a<e}var i=9007199254740991,r=/^(?:0|[1-9]\d*)$/;a.exports=t},function(a,e,t){var i=t(602),r=t(279),o=t(418),s=o&&o.isTypedArray,n=s?r(s):i;a.exports=n},,,,,,,,,,,,function(a,e,t){function i(a){return s(a)?r(a,!0):o(a)}var r=t(333),o=t(647),s=t(75);a.exports=i},function(a,e,t){function i(a,e){return s(o(a,e,r),a+"")}var r=t(128),o=t(454),s=t(455);a.exports=i},function(a,e){function t(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function i(a){return"function"==typeof a}function r(a){return"number"==typeof a}function o(a){return"object"==typeof a&&null!==a}function s(a){return void 0===a}a.exports=t,t.EventEmitter=t,t.prototype._events=void 0,t.prototype._maxListeners=void 0,t.defaultMaxListeners=10,t.prototype.setMaxListeners=function(a){if(!r(a)||a<0||isNaN(a))throw TypeError("n must be a positive number");return this._maxListeners=a,this},t.prototype.emit=function(a){var e,t,r,n,d,l;if(this._events||(this._events={}),"error"===a&&(!this._events.error||o(this._events.error)&&!this._events.error.length)){if((e=arguments[1])instanceof Error)throw e;var c=new Error('Uncaught, unspecified "error" event. ('+e+")");throw c.context=e,c}if(t=this._events[a],s(t))return!1;if(i(t))switch(arguments.length){case 1:t.call(this);break;case 2:t.call(this,arguments[1]);break;case 3:t.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),t.apply(this,n)}else if(o(t))for(n=Array.prototype.slice.call(arguments,1),l=t.slice(),r=l.length,d=0;d<r;d++)l[d].apply(this,n);return!0},t.prototype.addListener=function(a,e){var r;if(!i(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",a,i(e.listener)?e.listener:e),this._events[a]?o(this._events[a])?this._events[a].push(e):this._events[a]=[this._events[a],e]:this._events[a]=e,o(this._events[a])&&!this._events[a].warned&&(r=s(this._maxListeners)?t.defaultMaxListeners:this._maxListeners)&&r>0&&this._events[a].length>r&&(this._events[a].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[a].length),"function"==typeof console.trace&&console.trace()),this},t.prototype.on=t.prototype.addListener,t.prototype.once=function(a,e){function t(){this.removeListener(a,t),r||(r=!0,e.apply(this,arguments))}if(!i(e))throw TypeError("listener must be a function");var r=!1;return t.listener=e,this.on(a,t),this},t.prototype.removeListener=function(a,e){var t,r,s,n;if(!i(e))throw TypeError("listener must be a function");if(!this._events||!this._events[a])return this;if(t=this._events[a],s=t.length,r=-1,t===e||i(t.listener)&&t.listener===e)delete this._events[a],this._events.removeListener&&this.emit("removeListener",a,e);else if(o(t)){for(n=s;n-- >0;)if(t[n]===e||t[n].listener&&t[n].listener===e){r=n;break}if(r<0)return this;1===t.length?(t.length=0,delete this._events[a]):t.splice(r,1),this._events.removeListener&&this.emit("removeListener",a,e)}return this},t.prototype.removeAllListeners=function(a){var e,t;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[a]&&delete this._events[a],this;if(0===arguments.length){for(e in this._events)"removeListener"!==e&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(t=this._events[a],i(t))this.removeListener(a,t);else if(t)for(;t.length;)this.removeListener(a,t[t.length-1]);return delete this._events[a],this},t.prototype.listeners=function(a){return this._events&&this._events[a]?i(this._events[a])?[this._events[a]]:this._events[a].slice():[]},t.prototype.listenerCount=function(a){if(this._events){var e=this._events[a];if(i(e))return 1;if(e)return e.length}return 0},t.listenerCount=function(a,e){return a.listenerCount(e)}},function(a,e,t){"use strict";var i=t(116).stripFullTags,r=t(56),o=t(732),s=t(68),n=t(115);a.exports=function(a){if(""===(a=r(i(a))))return[];var e=a.split(/\s/g);return e=s(e,function(a){return o(a)}),n(e,function(a){return""!==a.trim()})}},function(a,e,t){"use strict";a.exports=function(a){var e,t,i,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1],o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return e='[ \\u00a0 \\n\\r\\t.,()”“〝〞〟‟„"+\\-;!¡?¿:/»«‹›'+o+"<>",t="(^|"+e+"'‘’‛`])",i=r?"($|((?="+e+"]))|((['‘’‛`])("+e+"])))":"($|("+e+"])|((['‘’‛`])("+e+"])))",t+a+i}},function(a,e,t){function i(a){return"symbol"==typeof a||o(a)&&r(a)==s}var r=t(72),o=t(53),s="[object Symbol]";a.exports=i},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){function i(a){return"function"==typeof a?a:null==a?s:"object"==typeof a?n(a)?o(a[0],a[1]):r(a):d(a)}var r=t(1222),o=t(1235),s=t(128),n=t(39),d=t(1240);a.exports=i},function(a,e,t){"use strict";var i=t(1106),r=t(56),o=t(732),s=t(1107).unifyAllSpaces,n=t(1108),d=t(330).normalize,l=t(68);a.exports=function(a,e,t,c){a=i(a),a=s(a),a=d(a),e=d(e);var u=n(a,e,t,c);return u=l(u,function(a){return r(o(a))}),{count:u.length,matches:u}}},function(a,e){function t(a){return"number"==typeof a&&a>-1&&a%1==0&&a<=i}var i=9007199254740991;a.exports=t},function(a,e){function t(a){return function(e){return a(e)}}a.exports=t},function(a,e,t){function i(a){var e=-1,t=null==a?0:a.length;for(this.clear();++e<t;){var i=a[e];this.set(i[0],i[1])}}var r=t(606),o=t(622),s=t(624),n=t(625),d=t(626);i.prototype.clear=r,i.prototype.delete=o,i.prototype.get=s,i.prototype.has=n,i.prototype.set=d,a.exports=i},function(a,e,t){var i=t(117),r=t(62),o=i(r,"Map");a.exports=o},,,,,,,,,,function(a,e,t){"use strict";var i=t(595);a.exports=function(a){for(var e=i(),t=0;t<e.length;t++)a=a.replace(e[t].letters,e[t].base);return a}},function(a,e,t){var i=t(596),r=t(604),o=r(i);a.exports=o},,function(a,e,t){"use strict";function i(a,e){if(a.map)return a.map(e);for(var t=[],i=0;i<a.length;i++)t.push(e(a[i],i));return t}var r=function(a){switch(typeof a){case"string":return a;case"boolean":return a?"true":"false";case"number":return isFinite(a)?a:"";default:return""}};a.exports=function(a,e,t,n){return e=e||"&",t=t||"=",null===a&&(a=void 0),"object"==typeof a?i(s(a),function(s){var n=encodeURIComponent(r(s))+t;return o(a[s])?i(a[s],function(a){return n+encodeURIComponent(r(a))}).join(e):n+encodeURIComponent(r(a[s]))}).join(e):n?encodeURIComponent(r(n))+t+encodeURIComponent(r(a)):""};var o=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)},s=Object.keys||function(a){var e=[];for(var t in a)Object.prototype.hasOwnProperty.call(a,t)&&e.push(t);return e}},,,,,,,,function(a,e,t){var i=t(335),r=i(Object.getPrototypeOf,Object);a.exports=r},,,,,,,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){"use strict";function i(a){return a.replace(/[‘’‛`]/g,"'")}function r(a){return a.replace(/[“”〝〞〟‟„]/g,'"')}function o(a){return r(i(a))}a.exports={normalizeSingle:i,normalizeDouble:r,normalize:o}},function(a,e,t){"use strict";function i(a){if(!(this instanceof i))return new i(a);l.call(this,a),c.call(this,a),a&&!1===a.readable&&(this.readable=!1),a&&!1===a.writable&&(this.writable=!1),this.allowHalfOpen=!0,a&&!1===a.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",r)}function r(){this.allowHalfOpen||this._writableState.ended||s.nextTick(o,this)}function o(a){a.end()}var s=t(734),n=Object.keys||function(a){var e=[];for(var t in a)e.push(t);return e};a.exports=i;var d=t(559);d.inherits=t(48);var l=t(1124),c=t(1044);d.inherits(i,l);for(var u=n(c.prototype),p=0;p<u.length;p++){var g=u[p];i.prototype[g]||(i.prototype[g]=c.prototype[g])}Object.defineProperty(i.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(i.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(a){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=a,this._writableState.destroyed=a)}}),i.prototype._destroy=function(a,e){this.push(null),this.end(),s.nextTick(e,a)}},function(a,e,t){var i=t(597),r=i();a.exports=r},function(a,e,t){function i(a,e){var t=s(a),i=!t&&o(a),c=!t&&!i&&n(a),p=!t&&!i&&!c&&l(a),g=t||i||c||p,m=g?r(a.length,String):[],f=m.length;for(var b in a)!e&&!u.call(a,b)||g&&("length"==b||c&&("offset"==b||"parent"==b)||p&&("buffer"==b||"byteLength"==b||"byteOffset"==b)||d(b,f))||m.push(b);return m}var r=t(565),o=t(182),s=t(39),n=t(194),d=t(219),l=t(220),c=Object.prototype,u=c.hasOwnProperty;a.exports=i},function(a,e,t){(function(e){var t="object"==typeof e&&e&&e.Object===Object&&e;a.exports=t}).call(e,t(9))},function(a,e){function t(a,e){return function(t){return a(e(t))}}a.exports=t},,,function(a,e,t){function i(a){var e=this.__data__=new r(a);this.size=e.size}var r=t(144),o=t(639),s=t(640),n=t(641),d=t(642),l=t(643);i.prototype.clear=o,i.prototype.delete=s,i.prototype.get=n,i.prototype.has=d,i.prototype.set=l,a.exports=i},function(a,e,t){function i(a,e,t){(void 0===t||o(a[e],t))&&(void 0!==t||e in a)||r(a,e,t)}var r=t(206),o=t(110);a.exports=i},function(a,e,t){var i=t(117),r=function(){try{var a=i(Object,"defineProperty");return a({},"",{}),a}catch(a){}}();a.exports=r},function(a,e){function t(a,e){return"__proto__"==e?void 0:a[e]}a.exports=t},,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){"use strict";function i(){_=[],n=w(function(a){_.push(a)}),n.addRule(v,"content"),n.addRule(z,"greater-than-sign-content"),n.addRule(p,"block-start"),n.addRule(g,"block-end"),n.addRule(m,"inline-start"),n.addRule(f,"inline-end"),n.addRule(b,"other-element-start"),n.addRule(h,"other-element-end")}function r(a){return c.test(a)}function o(a){return u.test(a)}function s(a){var e=[],t=0,r="",o="",s="";return a=a.replace(y,""),i(),n.onText(a),n.end(),x(_,function(a,i){var n=_[i+1];switch(a.type){case"content":case"greater-than-sign-content":case"inline-start":case"inline-end":case"other-tag":case"other-element-start":case"other-element-end":case"greater than sign":n&&(0!==t||"block-start"!==n.type&&"block-end"!==n.type)?o+=a.src:(o+=a.src,e.push(o),r="",o="",s="");break;case"block-start":0!==t&&(""!==o.trim()&&e.push(o),o="",s=""),t++,r=a.src;break;case"block-end":t--,s=a.src,""!==r&&""!==s?e.push(r+o+s):""!==o.trim()&&e.push(o),r="",o="",s=""}t<0&&(t=0)}),e}var n,d=["address","article","aside","blockquote","canvas","dd","div","dl","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","li","main","nav","noscript","ol","output","p","pre","section","table","tfoot","ul","video"],l=["b","big","i","small","tt","abbr","acronym","cite","code","dfn","em","kbd","strong","samp","time","var","a","bdo","br","img","map","object","q","script","span","sub","sup","button","input","label","select","textarea"],c=new RegExp("^("+d.join("|")+")$","i"),u=new RegExp("^("+l.join("|")+")$","i"),p=new RegExp("^<("+d.join("|")+")[^>]*?>$","i"),g=new RegExp("^</("+d.join("|")+")[^>]*?>$","i"),m=new RegExp("^<("+l.join("|")+")[^>]*>$","i"),f=new RegExp("^</("+l.join("|")+")[^>]*>$","i"),b=/^<([^>\s\/]+)[^>]*>$/,h=/^<\/([^>\s]+)[^>]*>$/,v=/^[^<]+$/,z=/^<[^><]*$/,y=/<!--(.|[\r\n])*?-->/g,w=t(417),x=t(24),k=t(125),_=[];a.exports={blockElements:d,inlineElements:l,isBlockElement:r,isInlineElement:o,getBlocks:k(s)}},function(a,e,t){function i(a){return null==a?"":r(a)}var r=t(627);a.exports=i},,,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){function i(a){return o(a)&&r(a)}var r=t(75),o=t(53);a.exports=i},function(a,e,t){function i(a,e,t,i){var s=!t;t||(t={});for(var n=-1,d=e.length;++n<d;){var l=e[n],c=i?i(t[l],a[l],l,t,a):void 0;void 0===c&&(c=a[l]),s?o(t,l,c):r(t,l,c)}return t}var r=t(404),o=t(206);a.exports=i},function(a,e,t){function i(a,e,t){if(!n(t))return!1;var i=typeof e;return!!("number"==i?o(t)&&s(e,t.length):"string"==i&&e in t)&&r(t[e],a)}var r=t(110),o=t(75),s=t(219),n=t(40);a.exports=i},,,,,,,function(a,e,t){"use strict";var i=t(236),r=t(68);a.exports=function(a,e){var t,o=e||!1;return t="("+r(a,function(a){return o?a:i(a,!0)}).join(")|(")+")",new RegExp(t,"ig")}},function(a,e,t){"use strict";var i=t(24),r=t(235),o=t(1364)(),s=o.regularParticiples,n=o.irregularParticiples,d=t(1370),l=t(1375),c=t(1376),u=t(1377),p=t(1378);a.exports=function(a,e,t){var o=r(a),g=[];return i(o,function(i){var r="";if(0!==s(i,t).length&&(r="regular"),0!==n(i,t).length&&(r="irregular"),""!==r)switch(t){case"fr":g.push(new l(i,a,{auxiliaries:e,type:r,language:t}));break;case"es":g.push(new c(i,a,{auxiliaries:e,type:r,language:t}));break;case"it":g.push(new u(i,a,{auxiliaries:e,type:r,language:t}));break;case"nl":g.push(new p(i,a,{auxiliaries:e,type:r,language:t}));break;case"en":default:g.push(new d(i,a,{auxiliaries:e,type:r,language:t}))}}),g}},function(a,e,t){"use strict";var i=t(1149).getType,r=t(1149).isSameType,o=t(1062),s=t(24),n={auxiliaries:[],type:"",language:""},d=function(a){s(a,function(a,e){var t=i(n[e]);if(!1===r(a,t))throw Error("Attribute "+e+" has invalid type. Expected "+t+", got "+i(a)+".")})},l=function(a,e,t){this.setParticiple(a),this.setSentencePart(e),this._determinesSentencePartIsPassive=!1,t=t||{},o(t,n),d(t),this._attributes=t};l.prototype.setParticiple=function(a){if(""===a)throw Error("The participle should not be empty.");this._participle=a},l.prototype.getParticiple=function(){return this._participle},l.prototype.setSentencePart=function(a){if(""===a)throw Error("The sentence part should not be empty.");this._sentencePart=a},l.prototype.getSentencePart=function(){return this._sentencePart},l.prototype.getType=function(){return this._attributes.type},l.prototype.getAuxiliaries=function(){return this._attributes.auxiliaries},l.prototype.getLanguage=function(){return this._attributes.language},l.prototype.determinesSentencePartIsPassive=function(){return this._determinesSentencePartIsPassive},l.prototype.setSentencePartPassiveness=function(a){if(!r(a,"boolean"))throw Error("Passiveness had invalid type. Expected boolean, got "+i(a)+".");this._determinesSentencePartIsPassive=a},a.exports=l},function(a,e,t){"use strict";var i=function(a,e,t){this._sentencePartText=a,this._auxiliaries=e,this._locale=t,this._isPassive=!1};i.prototype.getSentencePartText=function(){return this._sentencePartText},i.prototype.isPassive=function(){return this._isPassive},i.prototype.getAuxiliaries=function(){return this._auxiliaries},i.prototype.getLocale=function(){return this._locale},i.prototype.setPassive=function(a){this._isPassive=a},a.exports=i},function(a,e,t){"use strict";var i=t(594);a.exports=function(a,e){for(var t=i(e),r=0;r<t.length;r++)a=a.replace(t[r].letter,t[r].alternative);return a}},function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":s(e))&&"function"!=typeof e?a:e}function o(a,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":s(e)));a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(a,e):a.__proto__=e)}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}();Object.defineProperty(e,"__esModule",{value:!0});var d=t(69),l=t(33),c=t(74),u=t(456),p=u.default.maxMeta,g=function(a){function e(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i(this,e);var t=r(this,(e.__proto__||Object.getPrototypeOf(e)).call(this)),o={recommendedMaximumLength:120,maximumLength:p,scores:{noMetaDescription:1,tooLong:6,tooShort:6,correctLength:9}};return t.identifier="metaDescriptionLength",t._config=d(o,a),t}return o(e,a),n(e,[{key:"getMaximumLength",value:function(){return this._config.maximumLength}},{key:"getResult",value:function(a,e,t){var i=e.getResearch("metaDescriptionLength"),r=new l;return r.setScore(this.calculateScore(i)),r.setText(this.translateScore(i,t)),r.max=this._config.maximumLength,r.actual=i,r}},{key:"calculateScore",value:function(a){return 0===a?this._config.scores.noMetaDescription:a<=this._config.recommendedMaximumLength?this._config.scores.tooShort:a>this._config.maximumLength?this._config.scores.tooLong:a>=this._config.recommendedMaximumLength&&a<=this._config.maximumLength?this._config.scores.correctLength:0}},{key:"translateScore",value:function(a,e){var t="<a href='https://yoa.st/2pg' target='_blank'>";return 0===a?e.sprintf(e.dgettext("js-text-analysis","No %1$smeta description%2$s has been specified. Search engines will display copy from the page instead."),t,"</a>"):a<=this._config.recommendedMaximumLength?e.sprintf(e.dgettext("js-text-analysis","The %1$smeta description%2$s is under %3$d characters long. However, up to %4$d characters are available."),t,"</a>",this._config.recommendedMaximumLength,this._config.maximumLength):a>this._config.maximumLength?e.sprintf(e.dgettext("js-text-analysis","The %1$smeta description%2$s is over %3$d characters. Reducing the length will ensure the entire description will be visible."),t,"</a>",this._config.maximumLength):a>=this._config.recommendedMaximumLength&&a<=this._config.maximumLength?e.sprintf(e.dgettext("js-text-analysis","The %1$smeta description%2$s has a nice length."),t,"</a>"):void 0}}]),e}(c);a.exports=g},function(a,e,t){function i(a,e,t){var i=a[e];n.call(a,e)&&o(i,t)&&(void 0!==t||e in a)||r(a,e,t)}var r=t(206),o=t(110),s=Object.prototype,n=s.hasOwnProperty;a.exports=i},function(a,e,t){function i(a){return"number"==typeof a||o(a)&&r(a)==s}var r=t(72),o=t(53),s="[object Number]";a.exports=i},function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":s(e))&&"function"!=typeof e?a:e}function o(a,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":s(e)));a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(a,e):a.__proto__=e)}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}(),d=t(69),l=t(33),c=t(74),u=t(207).inRangeEndInclusive,p=600,g=function(a){function e(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i(this,e);var t=r(this,(e.__proto__||Object.getPrototypeOf(e)).call(this)),o={minLength:400,maxLength:p,scores:{noTitle:1,widthTooShort:6,widthTooLong:3,widthCorrect:9}};return t.identifier="titleWidth",t._config=d(o,a),t}return o(e,a),n(e,[{key:"getMaximumLength",value:function(){return p}},{key:"getResult",value:function(a,e,t){var i=e.getResearch("pageTitleWidth"),r=new l;return r.setScore(this.calculateScore(i)),r.setText(this.translateScore(i,t)),r.max=this._config.maxLength,r.actual=i,r}},{key:"calculateScore",value:function(a){return u(a,1,400)?this._config.scores.widthTooShort:u(a,this._config.minLength,this._config.maxLength)?this._config.scores.widthCorrect:a>this._config.maxLength?this._config.scores.widthTooLong:this._config.scores.noTitle}},{key:"translateScore",value:function(a,e){var t="<a href='https://yoa.st/2po' target='_blank'>";return u(a,1,400)?e.sprintf(e.dgettext("js-text-analysis","The %1$sSEO title%2$s is too short. Use the space to add keyword variations or create compelling call-to-action copy."),t,"</a>"):u(a,this._config.minLength,this._config.maxLength)?e.sprintf(e.dgettext("js-text-analysis","The %1$sSEO title%2$s has a nice length."),t,"</a>"):a>this._config.maxLength?e.sprintf(e.dgettext("js-text-analysis","The %1$sSEO title%2$s is wider than the viewable limit."),t,"</a>"):e.sprintf(e.dgettext("js-text-analysis","Please create an %1$sSEO title%2$s."),t,"</a>")}}]),e}(c);a.exports=g},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){var a=document.createElement("div");return a.id="yoast-measurement-element",a.style.position="absolute",a.style.left="-9999em",a.style.top=0,a.style.height=0,a.style.overflow="hidden",a.style.fontFamily="Arial",a.style.fontSize="16px",a.style.fontWeight="400",document.body.appendChild(a),a};e.measureTextWidth=function(a){var e=document.getElementById("yoast-measurement-element");return e||(e=i()),e.innerHTML=a,e.offsetWidth}},,,,,,function(a,e,t){function i(e,t){return delete a.exports[e],a.exports[e]=t,t}var r=t(1118),o=t(1265);a.exports={Parser:r,Tokenizer:t(1119),ElementType:t(558),DomHandler:o,get FeedHandler(){return i("FeedHandler",t(1267))},get Stream(){return i("Stream",t(1268))},get WritableStream(){return i("WritableStream",t(1123))},get ProxyHandler(){return i("ProxyHandler",t(1283))},get DomUtils(){return i("DomUtils",t(1284))},get CollectingHandler(){return i("CollectingHandler",t(1296))},DefaultHandler:o,get RssHandler(){return i("RssHandler",this.FeedHandler)},parseDOM:function(a,e){var t=new o(e);return new r(t,e).end(a),t.dom},parseFeed:function(e,t){var i=new a.exports.FeedHandler(t);return new r(i,t).end(e),i.dom},createDomStream:function(a,e,t){var i=new o(a,e,t);return new r(i,e)},EVENTS:{attribute:2,cdatastart:0,cdataend:0,text:1,processinginstruction:2,comment:1,commentend:0,closetag:1,opentag:2,opentagname:1,error:1,end:0}}},,function(a,e,t){"use strict";var i=t(41),r=t(291),o=t(236),s=t(416),n=t(105),d=t(125);a.exports=d(function(a,e,t){return i(e)&&(e=""),(i(t)||!0===t)&&(a=r(a)),a=s(a),a=n(a),a=o(a,!1,e),new RegExp(a,"ig")})},function(a,e,t){"use strict";var i=t(116).stripFullTags,r=t(56);a.exports=function(a){return a=i(a),a=r(a)}},function(a,e){var t=function(a,e){var t;for(t=0;t<a.length;t++)if(a[t].regex.test(e))return a[t]},i=function(a,e){var i,r,o;for(i=0;i<e.length;i++)if(r=t(a,e.substring(0,i+1)))o=r;else if(o)return{max_index:i,rule:o};return o?{max_index:e.length,rule:o}:void 0};a.exports=function(a){var e="",r=[],o=1,s=1,n=function(e,t){a({type:t,src:e,line:o,col:s});var i=e.split("\n");o+=i.length-1,s=(i.length>1?1:s)+i[i.length-1].length};return{addRule:function(a,e){r.push({regex:a,type:e})},onText:function(a){for(var t=e+a,o=i(r,t);o&&o.max_index!==t.length;)n(t.substring(0,o.max_index),o.rule.type),t=t.substring(o.max_index),o=i(r,t);e=t},end:function(){if(0!==e.length){var a=t(r,e);if(!a){var i=new Error("unable to tokenize");throw i.tokenizer2={buffer:e,line:o,col:s},i}n(e,a.type)}}}}},function(a,e,t){(function(a){var i=t(334),r="object"==typeof e&&e&&!e.nodeType&&e,o=r&&"object"==typeof a&&a&&!a.nodeType&&a,s=o&&o.exports===r,n=s&&i.process,d=function(){try{var a=o&&o.require&&o.require("util").types;return a||n&&n.binding&&n.binding("util")}catch(a){}}();a.exports=d}).call(e,t(32)(a))},function(a,e,t){function i(a){if(!r(a))return o(a);var e=[];for(var t in Object(a))n.call(a,t)&&"constructor"!=t&&e.push(t);return e}var r=t(175),o=t(603),s=Object.prototype,n=s.hasOwnProperty;a.exports=i},function(a,e){function t(a){if(null!=a){try{return r.call(a)}catch(a){}try{return a+""}catch(a){}}return""}var i=Function.prototype,r=i.toString;a.exports=t},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){function i(a,e,t,u,p){a!==e&&s(e,function(s,l){if(d(s))p||(p=new r),n(a,e,l,t,i,u,p);else{var g=u?u(c(a,l),s,l+"",a,e,p):void 0;void 0===g&&(g=s),o(a,l,g)}},l)}var r=t(338),o=t(339),s=t(332),n=t(644),d=t(40),l=t(232),c=t(341);a.exports=i},function(a,e,t){function i(a){var e=new a.constructor(a.byteLength);return new r(e).set(new r(a)),e}var r=t(453);a.exports=i},function(a,e,t){var i=t(62),r=i.Uint8Array;a.exports=r},function(a,e,t){function i(a,e,t){return e=o(void 0===e?a.length-1:e,0),function(){for(var i=arguments,s=-1,n=o(i.length-e,0),d=Array(n);++s<n;)d[s]=i[e+s];s=-1;for(var l=Array(e+1);++s<e;)l[s]=i[s];return l[e]=t(d),r(a,this,l)}}var r=t(574),o=Math.max;a.exports=i},function(a,e,t){var i=t(649),r=t(651),o=r(i);a.exports=o},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i={queue:["wordCount","keywordDensity","subHeadings","stopwords","fleschReading","linkCount","imageCount","urlKeyword","urlLength","metaDescriptionLength","metaDescriptionKeyword","pageTitleKeyword","pageTitleLength","firstParagraph","urlStopwords","keywordDoubles","keyphraseSizeCheck"],stopWords:["a","about","above","after","again","against","all","am","an","and","any","are","as","at","be","because","been","before","being","below","between","both","but","by","could","did","do","does","doing","down","during","each","few","for","from","further","had","has","have","having","he","he'd","he'll","he's","her","here","here's","hers","herself","him","himself","his","how","how's","i","i'd","i'll","i'm","i've","if","in","into","is","it","it's","its","itself","let's","me","more","most","my","myself","nor","of","on","once","only","or","other","ought","our","ours","ourselves","out","over","own","same","she","she'd","she'll","she's","should","so","some","such","than","that","that's","the","their","theirs","them","themselves","then","there","there's","these","they","they'd","they'll","they're","they've","this","those","through","to","too","under","until","up","very","was","we","we'd","we'll","we're","we've","were","what","what's","when","when's","where","where's","which","while","who","who's","whom","why","why's","with","would","you","you'd","you'll","you're","you've","your","yours","yourself","yourselves"],wordsToRemove:[" a"," in"," an"," on"," for"," the"," and"],maxSlugLength:20,maxUrlLength:40,maxMeta:156};e.default=i},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){function i(a){if("string"==typeof a||r(a))return a;var e=a+"";return"0"==e&&1/a==-o?"-0":e}var r=t(237),o=1/0;a.exports=i},function(a,e,t){"use strict";function i(a){r(a,{original:"",marked:""}),this._properties=a}var r=t(1062);i.prototype.getOriginal=function(){return this._properties.original},i.prototype.getMarked=function(){return this._properties.marked},i.prototype.applyWithReplace=function(a){return a.split(this._properties.original).join(this._properties.marked)},a.exports=i},function(a,e){a.exports={Text:"text",Directive:"directive",Comment:"comment",Script:"script",Style:"style",Tag:"tag",CDATA:"cdata",Doctype:"doctype",isTag:function(a){return"tag"===a.type||"script"===a.type||"style"===a.type}}},function(a,e,t){(function(a){function t(a){return Array.isArray?Array.isArray(a):"[object Array]"===b(a)}function i(a){return"boolean"==typeof a}function r(a){return null===a}function o(a){return null==a}function s(a){return"number"==typeof a}function n(a){return"string"==typeof a}function d(a){return"symbol"==typeof a}function l(a){return void 0===a}function c(a){return"[object RegExp]"===b(a)}function u(a){return"object"==typeof a&&null!==a}function p(a){return"[object Date]"===b(a)}function g(a){return"[object Error]"===b(a)||a instanceof Error}function m(a){return"function"==typeof a}function f(a){return null===a||"boolean"==typeof a||"number"==typeof a||"string"==typeof a||"symbol"==typeof a||void 0===a}function b(a){return Object.prototype.toString.call(a)}e.isArray=t,e.isBoolean=i,e.isNull=r,e.isNullOrUndefined=o,e.isNumber=s,e.isString=n,e.isSymbol=d,e.isUndefined=l,e.isRegExp=c,e.isObject=u,e.isDate=p,e.isError=g,e.isFunction=m,e.isPrimitive=f,e.isBuffer=a.isBuffer}).call(e,t(1043).Buffer)},function(a,e,t){"use strict";var i=t(100);a.exports=function(){if(i(this.getParticiple()))return void this.setSentencePartPassiveness(!1);this.setSentencePartPassiveness(this.isPassive())}},function(a,e,t){"use strict";var i=t(1049),r=t(1150),o=t(398),s=t(1050)().cannotDirectlyPrecedePassiveParticiple,n=t(1051)().cannotDirectlyPrecedePassiveParticiple,d=t(1053)().cannotDirectlyPrecedePassiveParticiple,l=t(1054)().cannotDirectlyPrecedePassiveParticiple,c=t(1151)().cannotDirectlyPrecedePassiveParticiple;a.exports=function(a,e,t){var u=void 0;switch(t){case"fr":u=o(s);break;case"es":u=o(d);break;case"it":u=o(l);break;case"nl":u=o(c);break;case"en":default:u=o(n)}var p=i(a,u);return r(p,e)}},function(a,e,t){"use strict";var i=["bekommst","bekommt","bekamst","bekommest","bekommet","bekämest","bekämst","bekämet","bekämt","gekriegt","gehörst","gehört","gehörtest","gehörtet","gehörest","gehöret","erhältst","erhält","erhaltet","erhielt","erhieltest","erhieltst","erhieltet","erhaltest"],r=["werde","wirst","wird","werden","werdet","wurde","ward","wurdest","wardst","wurden","wurdet","worden","werdest","würde","würdest","würden","würdet","bekomme","bekommen","bekam","bekamen","bekäme","bekämen","kriege","kriegst","kriegt","kriegen","kriegte","kriegtest","kriegten","kriegtet","kriegest","krieget","gehöre","gehören","gehörte","gehörten","erhalte","erhalten","erhielten","erhielte"],o=["werden","bekommen","kriegen","gehören","erhalten"];a.exports=function(){return{participleLike:i,otherAuxiliaries:r.concat(o),filteredAuxiliaries:i.concat(r),infinitiveAuxiliaries:o,allAuxiliaries:i.concat(r,o)}}},,function(a,e){function t(a,e){for(var t=-1,i=null==a?0:a.length;++t<i&&!1!==e(a[t],t,a););return a}a.exports=t},function(a,e){function t(a,e){for(var t=-1,i=Array(a);++t<a;)i[t]=e(t);return i}a.exports=t},function(a,e,t){"use strict";function i(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}function r(a,e,t){if(a&&l.isObject(a)&&a instanceof i)return a;var r=new i;return r.parse(a,e,t),r}function o(a){return l.isString(a)&&(a=r(a)),a instanceof i?a.format():i.prototype.format.call(a)}function s(a,e){return r(a,!1,!0).resolve(e)}function n(a,e){return a?r(a,!1,!0).resolveObject(e):e}var d=t(628),l=t(629);e.parse=r,e.resolve=s,e.resolveObject=n,e.format=o,e.Url=i;var c=/^([a-z0-9.+-]+:)/i,u=/:[0-9]*$/,p=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,g=["<",">",'"',"`"," ","\r","\n","\t"],m=["{","}","|","\\","^","`"].concat(g),f=["'"].concat(m),b=["%","/","?",";","#"].concat(f),h=["/","?","#"],v=/^[+a-z0-9A-Z_-]{0,63}$/,z=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,y={javascript:!0,"javascript:":!0},w={javascript:!0,"javascript:":!0},x={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},k=t(630);i.prototype.parse=function(a,e,t){if(!l.isString(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var i=a.indexOf("?"),r=-1!==i&&i<a.indexOf("#")?"?":"#",o=a.split(r),s=/\\/g;o[0]=o[0].replace(s,"/"),a=o.join(r);var n=a;if(n=n.trim(),!t&&1===a.split("#").length){var u=p.exec(n);if(u)return this.path=n,this.href=n,this.pathname=u[1],u[2]?(this.search=u[2],this.query=e?k.parse(this.search.substr(1)):this.search.substr(1)):e&&(this.search="",this.query={}),this}var g=c.exec(n);if(g){g=g[0];var m=g.toLowerCase();this.protocol=m,n=n.substr(g.length)}if(t||g||n.match(/^\/\/[^@\/]+@[^@\/]+/)){var _="//"===n.substr(0,2);!_||g&&w[g]||(n=n.substr(2),this.slashes=!0)}if(!w[g]&&(_||g&&!x[g])){for(var j=-1,q=0;q<h.length;q++){var E=n.indexOf(h[q]);-1!==E&&(-1===j||E<j)&&(j=E)}var S,A;A=-1===j?n.lastIndexOf("@"):n.lastIndexOf("@",j),-1!==A&&(S=n.slice(0,A),n=n.slice(A+1),this.auth=decodeURIComponent(S)),j=-1;for(var q=0;q<b.length;q++){var E=n.indexOf(b[q]);-1!==E&&(-1===j||E<j)&&(j=E)}-1===j&&(j=n.length),this.host=n.slice(0,j),n=n.slice(j),this.parseHost(),this.hostname=this.hostname||"";var T="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!T)for(var C=this.hostname.split(/\./),q=0,O=C.length;q<O;q++){var D=C[q];if(D&&!D.match(v)){for(var P="",R=0,B=D.length;R<B;R++)D.charCodeAt(R)>127?P+="x":P+=D[R];if(!P.match(v)){var F=C.slice(0,q),M=C.slice(q+1),L=D.match(z);L&&(F.push(L[1]),M.unshift(L[2])),M.length&&(n="/"+M.join(".")+n),this.hostname=F.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),T||(this.hostname=d.toASCII(this.hostname));var I=this.port?":"+this.port:"",$=this.hostname||"";this.host=$+I,this.href+=this.host,T&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==n[0]&&(n="/"+n))}if(!y[m])for(var q=0,O=f.length;q<O;q++){var N=f[q];if(-1!==n.indexOf(N)){var U=encodeURIComponent(N);U===N&&(U=escape(N)),n=n.split(N).join(U)}}var W=n.indexOf("#");-1!==W&&(this.hash=n.substr(W),n=n.slice(0,W));var H=n.indexOf("?");if(-1!==H?(this.search=n.substr(H),this.query=n.substr(H+1),e&&(this.query=k.parse(this.query)),n=n.slice(0,H)):e&&(this.search="",this.query={}),n&&(this.pathname=n),x[m]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var I=this.pathname||"",K=this.search||"";this.path=I+K}return this.href=this.format(),this},i.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var e=this.protocol||"",t=this.pathname||"",i=this.hash||"",r=!1,o="";this.host?r=a+this.host:this.hostname&&(r=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(r+=":"+this.port)),this.query&&l.isObject(this.query)&&Object.keys(this.query).length&&(o=k.stringify(this.query));var s=this.search||o&&"?"+o||"";return e&&":"!==e.substr(-1)&&(e+=":"),this.slashes||(!e||x[e])&&!1!==r?(r="//"+(r||""),t&&"/"!==t.charAt(0)&&(t="/"+t)):r||(r=""),i&&"#"!==i.charAt(0)&&(i="#"+i),s&&"?"!==s.charAt(0)&&(s="?"+s),t=t.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),s=s.replace("#","%23"),e+r+t+s+i},i.prototype.resolve=function(a){return this.resolveObject(r(a,!1,!0)).format()},i.prototype.resolveObject=function(a){if(l.isString(a)){var e=new i;e.parse(a,!1,!0),a=e}for(var t=new i,r=Object.keys(this),o=0;o<r.length;o++){var s=r[o];t[s]=this[s]}if(t.hash=a.hash,""===a.href)return t.href=t.format(),t;if(a.slashes&&!a.protocol){for(var n=Object.keys(a),d=0;d<n.length;d++){var c=n[d];"protocol"!==c&&(t[c]=a[c])}return x[t.protocol]&&t.hostname&&!t.pathname&&(t.path=t.pathname="/"),t.href=t.format(),t}if(a.protocol&&a.protocol!==t.protocol){if(!x[a.protocol]){for(var u=Object.keys(a),p=0;p<u.length;p++){var g=u[p];t[g]=a[g]}return t.href=t.format(),t}if(t.protocol=a.protocol,a.host||w[a.protocol])t.pathname=a.pathname;else{for(var m=(a.pathname||"").split("/");m.length&&!(a.host=m.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==m[0]&&m.unshift(""),m.length<2&&m.unshift(""),t.pathname=m.join("/")}if(t.search=a.search,t.query=a.query,t.host=a.host||"",t.auth=a.auth,t.hostname=a.hostname||a.host,t.port=a.port,t.pathname||t.search){var f=t.pathname||"",b=t.search||"";t.path=f+b}return t.slashes=t.slashes||a.slashes,t.href=t.format(),t}var h=t.pathname&&"/"===t.pathname.charAt(0),v=a.host||a.pathname&&"/"===a.pathname.charAt(0),z=v||h||t.host&&a.pathname,y=z,k=t.pathname&&t.pathname.split("/")||[],m=a.pathname&&a.pathname.split("/")||[],_=t.protocol&&!x[t.protocol];if(_&&(t.hostname="",t.port=null,t.host&&(""===k[0]?k[0]=t.host:k.unshift(t.host)),t.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===m[0]?m[0]=a.host:m.unshift(a.host)),a.host=null),z=z&&(""===m[0]||""===k[0])),v)t.host=a.host||""===a.host?a.host:t.host,t.hostname=a.hostname||""===a.hostname?a.hostname:t.hostname,t.search=a.search,t.query=a.query,k=m;else if(m.length)k||(k=[]),k.pop(),k=k.concat(m),t.search=a.search,t.query=a.query;else if(!l.isNullOrUndefined(a.search)){if(_){t.hostname=t.host=k.shift();var j=!!(t.host&&t.host.indexOf("@")>0)&&t.host.split("@");j&&(t.auth=j.shift(),t.host=t.hostname=j.shift())}return t.search=a.search,t.query=a.query,l.isNull(t.pathname)&&l.isNull(t.search)||(t.path=(t.pathname?t.pathname:"")+(t.search?t.search:"")),t.href=t.format(),t}if(!k.length)return t.pathname=null,t.search?t.path="/"+t.search:t.path=null,t.href=t.format(),t;for(var q=k.slice(-1)[0],E=(t.host||a.host||k.length>1)&&("."===q||".."===q)||""===q,S=0,A=k.length;A>=0;A--)q=k[A],"."===q?k.splice(A,1):".."===q?(k.splice(A,1),S++):S&&(k.splice(A,1),S--);if(!z&&!y)for(;S--;S)k.unshift("..");!z||""===k[0]||k[0]&&"/"===k[0].charAt(0)||k.unshift(""),E&&"/"!==k.join("/").substr(-1)&&k.push("");var T=""===k[0]||k[0]&&"/"===k[0].charAt(0);if(_){t.hostname=t.host=T?"":k.length?k.shift():"";var j=!!(t.host&&t.host.indexOf("@")>0)&&t.host.split("@");j&&(t.auth=j.shift(),t.host=t.hostname=j.shift())}return z=z||t.host&&k.length,z&&!T&&k.unshift(""),k.length?t.pathname=k.join("/"):(t.pathname=null,t.path=null),l.isNull(t.pathname)&&l.isNull(t.search)||(t.path=(t.pathname?t.pathname:"")+(t.search?t.search:"")),t.auth=a.auth||t.auth,t.slashes=t.slashes||a.slashes,t.href=t.format(),t},i.prototype.parseHost=function(){var a=this.host,e=u.exec(a);e&&(e=e[0],":"!==e&&(this.port=e.substr(1)),a=a.substr(0,a.length-e.length)),a&&(this.hostname=a)}},,function(a,e,t){(function(a){function i(a,e){if(e)return a.slice();var t=a.length,i=l?l(t):new a.constructor(t);return a.copy(i),i}var r=t(62),o="object"==typeof e&&e&&!e.nodeType&&e,s=o&&"object"==typeof a&&a&&!a.nodeType&&a,n=s&&s.exports===o,d=n?r.Buffer:void 0,l=d?d.allocUnsafe:void 0;a.exports=i}).call(e,t(32)(a))},function(a,e,t){function i(a,e){var t=e?r(a.buffer):a.buffer;return new a.constructor(t,a.byteOffset,a.length)}var r=t(452);a.exports=i},function(a,e){function t(a,e){var t=-1,i=a.length;for(e||(e=Array(i));++t<i;)e[t]=a[t];return e}a.exports=t},function(a,e,t){function i(a){return"function"!=typeof a.constructor||s(a)?{}:r(o(a))}var r=t(645),o=t(302),s=t(175);a.exports=i},function(a,e,t){function i(a){if(!s(a)||r(a)!=n)return!1;var e=o(a);if(null===e)return!0;var t=u.call(e,"constructor")&&e.constructor;return"function"==typeof t&&t instanceof t&&c.call(t)==p}var r=t(72),o=t(302),s=t(53),n="[object Object]",d=Function.prototype,l=Object.prototype,c=d.toString,u=l.hasOwnProperty,p=c.call(Object);a.exports=i},function(a,e,t){function i(a){return r(function(e,t){var i=-1,r=t.length,s=r>1?t[r-1]:void 0,n=r>2?t[2]:void 0;for(s=a.length>3&&"function"==typeof s?(r--,s):void 0,n&&o(t[0],t[1],n)&&(s=r<3?void 0:s,r=1),e=Object(e);++i<r;){var d=t[i];d&&a(e,d,i,s)}return e})}var r=t(233),o=t(391);a.exports=i},function(a,e){function t(a,e,t){switch(t.length){case 0:return a.call(e);case 1:return a.call(e,t[0]);case 2:return a.call(e,t[0],t[1]);case 3:return a.call(e,t[0],t[1],t[2])}return a.apply(e,t)}a.exports=t},function(a,e,t){(function(a,e){!function(a,t){"use strict";function i(a){"function"!=typeof a&&(a=new Function(""+a));for(var e=new Array(arguments.length-1),t=0;t<e.length;t++)e[t]=arguments[t+1];var i={callback:a,args:e};return l[d]=i,n(d),d++}function r(a){delete l[a]}function o(a){var e=a.callback,i=a.args;switch(i.length){case 0:e();break;case 1:e(i[0]);break;case 2:e(i[0],i[1]);break;case 3:e(i[0],i[1],i[2]);break;default:e.apply(t,i)}}function s(a){if(c)setTimeout(s,0,a);else{var e=l[a];if(e){c=!0;try{o(e)}finally{r(a),c=!1}}}}if(!a.setImmediate){var n,d=1,l={},c=!1,u=a.document,p=Object.getPrototypeOf&&Object.getPrototypeOf(a);p=p&&p.setTimeout?p:a,"[object process]"==={}.toString.call(a.process)?function(){n=function(a){e.nextTick(function(){s(a)})}}():function(){if(a.postMessage&&!a.importScripts){var e=!0,t=a.onmessage;return a.onmessage=function(){e=!1},a.postMessage("","*"),a.onmessage=t,e}}()?function(){var e="setImmediate$"+Math.random()+"$",t=function(t){t.source===a&&"string"==typeof t.data&&0===t.data.indexOf(e)&&s(+t.data.slice(e.length))};a.addEventListener?a.addEventListener("message",t,!1):a.attachEvent("onmessage",t),n=function(t){a.postMessage(e+t,"*")}}():a.MessageChannel?function(){var a=new MessageChannel;a.port1.onmessage=function(a){s(a.data)},n=function(e){a.port2.postMessage(e)}}():u&&"onreadystatechange"in u.createElement("script")?function(){var a=u.documentElement;n=function(e){var t=u.createElement("script");t.onreadystatechange=function(){s(e),t.onreadystatechange=null,a.removeChild(t),t=null},a.appendChild(t)}}():function(){n=function(a){setTimeout(s,0,a)}}(),p.setImmediate=i,p.clearImmediate=r}}("undefined"==typeof self?void 0===a?this:a:self)}).call(e,t(9),t(141))},,function(a,e,t){"use strict";a.exports=function(){return[" ","\\n","\\r","\\t"," "," ",".",",","'","(",")",'"',"+","-",";","!","?",":","/","»","«","‹","›","<",">"]}},,,,,,,,,,function(a,e,t){"use strict";a.exports=function(a){return Math.round(a)===a?Math.round(a):Math.round(10*a)/10}},function(a,e,t){"use strict";var i=t(1242),r=t(330).normalize,o=t(1249),s=t(1035),n=t(100),d=t(218),l=t(398),c=t(1252),u=t(557);a.exports=function(a){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],t=a.getKeyword(),p=o(a.getSynonyms()),g=r(a.getText()),m=d(g),f=[];if(!0===e?f=f.concat(t):(f=f.concat(t,p).filter(Boolean),f.sort(function(a,e){return e.length-a.length})),n(f))return{count:0,matches:[],markings:[],matchesIndices:[]};var b=[],h=[],v=[],z=0,y=0,w=[];return m.forEach(function(a){h=i(a,f).matches,h.length>0&&(h.forEach(function(e){var t=a.indexOf(e,y);w.push({index:t+z,match:e}),y+=t+e.length}),v=v.concat(new u({original:a,marked:a.replace(l(h),function(a){return c(a)})}))),b=b.concat(h),z+=a.length+1}),{count:b.length,matches:s(b).sort(function(a,e){return e.length-a.length}),markings:v,matchesIndices:w}}},function(a,e,t){function i(a,e){return r(o(a,e),1)}var r=t(590),o=t(68);a.exports=i},function(a,e,t){function i(a,e,t,s,n){var d=-1,l=a.length;for(t||(t=o),n||(n=[]);++d<l;){var c=a[d];e>0&&t(c)?e>1?i(c,e-1,t,s,n):r(n,c):s||(n[n.length]=c)}return n}var r=t(1059),o=t(1251);a.exports=i},,,,function(a,e,t){"use strict";var i=t(124),r=t(41),o={es:[{letter:/[\u00F1]/g,alternative:"n"},{letter:/[\u00D1]/g,alternative:"N"},{letter:/[\u00E1]/g,alternative:"a"},{letter:/[\u00C1]/g,alternative:"A"},{letter:/[\u00E9]/g,alternative:"e"},{letter:/[\u00C9]/g,alternative:"E"},{letter:/[\u00ED]/g,alternative:"i"},{letter:/[\u00CD]/g,alternative:"I"},{letter:/[\u00F3]/g,alternative:"o"},{letter:/[\u00D3]/g,alternative:"O"},{letter:/[\u00FA\u00FC]/g,alternative:"u"},{letter:/[\u00DA\u00DC]/g,alternative:"U"}],pl:[{letter:/[\u0105]/g,alternative:"a"},{letter:/[\u0104]/g,alternative:"A"},{letter:/[\u0107]/g,alternative:"c"},{letter:/[\u0106]/g,alternative:"C"},{letter:/[\u0119]/g,alternative:"e"},{letter:/[\u0118]/g,alternative:"E"},{letter:/[\u0142]/g,alternative:"l"},{letter:/[\u0141]/g,alternative:"L"},{letter:/[\u0144]/g,alternative:"n"},{letter:/[\u0143]/g,alternative:"N"},{letter:/[\u00F3]/g,alternative:"o"},{letter:/[\u00D3]/g,alternative:"O"},{letter:/[\u015B]/g,alternative:"s"},{letter:/[\u015A]/g,alternative:"S"},{letter:/[\u017A\u017C]/g,alternative:"z"},{letter:/[\u0179\u017B]/g,alternative:"Z"}],de:[{letter:/[\u00E4]/g,alternative:"ae"},{letter:/[\u00C4]/g,alternative:"Ae"},{letter:/[\u00FC]/g,alternative:"ue"},{letter:/[\u00DC]/g,alternative:"Ue"},{letter:/[\u00F6]/g,alternative:"oe"},{letter:/[\u00D6]/g,alternative:"Oe"},{letter:/[\u00DF]/g,alternative:"ss"},{letter:/[\u1E9E]/g,alternative:"SS"}],nbnn:[{letter:/[\u00E6\u04D5]/g,alternative:"ae"},{letter:/[\u00C6\u04D4]/g,alternative:"Ae"},{letter:/[\u00E5]/g,alternative:"aa"},{letter:/[\u00C5]/g,alternative:"Aa"},{letter:/[\u00F8]/g,alternative:"oe"},{letter:/[\u00D8]/g,alternative:"Oe"},{letter:/[\u00E9\u00E8\u00EA]/g,alternative:"e"},{letter:/[\u00C9\u00C8\u00CA]/g,alternative:"E"},{letter:/[\u00F3\u00F2\u00F4]/g,alternative:"o"},{letter:/[\u00D3\u00D2\u00D4]/g,alternative:"O"}],sv:[{letter:/[\u00E5]/g,alternative:"aa"},{letter:/[\u00C5]/g,alternative:"Aa"},{letter:/[\u00E4]/g,alternative:"ae"},{letter:/[\u00C4]/g,alternative:"Ae"},{letter:/[\u00F6]/g,alternative:"oe"},{letter:/[\u00D6]/g,alternative:"Oe"},{letter:/[\u00E9]/g,alternative:"e"},{letter:/[\u00C9]/g,alternative:"E"},{letter:/[\u00E0]/g,alternative:"a"},{letter:/[\u00C0]/g,alternative:"A"}],fi:[{letter:/[\u00E5]/g,alternative:"aa"},{letter:/[\u00C5]/g,alternative:"Aa"},{letter:/[\u00E4]/g,alternative:"a"},{letter:/[\u00C4]/g,alternative:"A"},{letter:/[\u00F6]/g,alternative:"o"},{letter:/[\u00D6]/g,alternative:"O"},{letter:/[\u017E]/g,alternative:"zh"},{letter:/[\u017D]/g,alternative:"Zh"},{letter:/[\u0161]/g,alternative:"sh"},{letter:/[\u0160]/g,alternative:"Sh"}],da:[{letter:/[\u00E5]/g,alternative:"aa"},{letter:/[\u00C5]/g,alternative:"Aa"},{letter:/[\u00E6\u04D5]/g,alternative:"ae"},{letter:/[\u00C6\u04D4]/g,alternative:"Ae"},{letter:/[\u00C4]/g,alternative:"Ae"},{letter:/[\u00F8]/g,alternative:"oe"},{letter:/[\u00D8]/g,alternative:"Oe"},{letter:/[\u00E9]/g,alternative:"e"},{letter:/[\u00C9]/g,alternative:"E"}],tr:[{letter:/[\u00E7]/g,alternative:"c"},{letter:/[\u00C7]/g,alternative:"C"},{letter:/[\u011F]/g,alternative:"g"},{letter:/[\u011E]/g,alternative:"G"},{letter:/[\u00F6]/g,alternative:"o"},{letter:/[\u00D6]/g,alternative:"O"},{letter:/[\u015F]/g,alternative:"s"},{letter:/[\u015E]/g,alternative:"S"},{letter:/[\u00E2]/g,alternative:"a"},{letter:/[\u00C2]/g,alternative:"A"},{letter:/[\u0131\u00EE]/g,alternative:"i"},{letter:/[\u0130\u00CE]/g,alternative:"I"},{letter:/[\u00FC\u00FB]/g,alternative:"u"},{letter:/[\u00DC\u00DB]/g,alternative:"U"}],lv:[{letter:/[\u0101]/g,alternative:"a"},{letter:/[\u0100]/g,alternative:"A"},{letter:/[\u010D]/g,alternative:"c"},{letter:/[\u010C]/g,alternative:"C"},{letter:/[\u0113]/g,alternative:"e"},{letter:/[\u0112]/g,alternative:"E"},{letter:/[\u0123]/g,alternative:"g"},{letter:/[\u0122]/g,alternative:"G"},{letter:/[\u012B]/g,alternative:"i"},{letter:/[\u012A]/g,alternative:"I"},{letter:/[\u0137]/g,alternative:"k"},{letter:/[\u0136]/g,alternative:"K"},{letter:/[\u013C]/g,alternative:"l"},{letter:/[\u013B]/g,alternative:"L"},{letter:/[\u0146]/g,alternative:"n"},{letter:/[\u0145]/g,alternative:"N"},{letter:/[\u0161]/g,alternative:"s"},{letter:/[\u0160]/g,alternative:"S"},{letter:/[\u016B]/g,alternative:"u"},{letter:/[\u016A]/g,alternative:"U"},{letter:/[\u017E]/g,alternative:"z"},{letter:/[\u017D]/g,alternative:"Z"}],is:[{letter:/[\u00E1]/g,alternative:"a"},{letter:/[\u00C1]/g,alternative:"A"},{letter:/[\u00F0]/g,alternative:"d"},{letter:/[\u00D0]/g,alternative:"D"},{letter:/[\u00E9]/g,alternative:"e"},{letter:/[\u00C9]/g,alternative:"E"},{letter:/[\u00ED]/g,alternative:"i"},{letter:/[\u00CD]/g,alternative:"I"},{letter:/[\u00F3\u00F6]/g,alternative:"o"},{letter:/[\u00D3\u00D6]/g,alternative:"O"},{letter:/[\u00FA]/g,alternative:"u"},{letter:/[\u00DA]/g,alternative:"U"},{letter:/[\u00FD]/g,alternative:"y"},{letter:/[\u00DD]/g,alternative:"Y"},{letter:/[\u00FE]/g,alternative:"th"},{letter:/[\u00DE]/g,alternative:"Th"},{letter:/[\u00E6\u04D5]/g,alternative:"ae"},{letter:/[\u00C6\u04D4]/g,alternative:"Ae"}],fa:[{letter:/[\u00E1]/g,alternative:"a"},{letter:/[\u00C1]/g,alternative:"A"},{letter:/[\u00F0]/g,alternative:"d"},{letter:/[\u00D0]/g,alternative:"D"},{letter:/[\u00ED]/g,alternative:"i"},{letter:/[\u00CD]/g,alternative:"I"},{letter:/[\u00FD]/g,alternative:"y"},{letter:/[\u00DD]/g,alternative:"Y"},{letter:/[\u00FA]/g,alternative:"u"},{letter:/[\u00DA]/g,alternative:"U"},{letter:/[\u00F3\u00F8]/g,alternative:"o"},{letter:/[\u00D3\u00D8]/g,alternative:"O"},{letter:/[\u00E6\u04D5]/g,alternative:"ae"},{letter:/[\u00C6\u04D4]/g,alternative:"Ae"}],cs:[{letter:/[\u00E1]/g,alternative:"a"},{letter:/[\u00C1]/g,alternative:"A"},{letter:/[\u010D]/g,alternative:"c"},{letter:/[\u010C]/g,alternative:"C"},{letter:/[\u010F]/g,alternative:"d"},{letter:/[\u010E]/g,alternative:"D"},{letter:/[\u00ED]/g,alternative:"i"},{letter:/[\u00CD]/g,alternative:"I"},{letter:/[\u0148]/g,alternative:"n"},{letter:/[\u0147]/g,alternative:"N"},{letter:/[\u00F3]/g,alternative:"o"},{letter:/[\u00D3]/g,alternative:"O"},{letter:/[\u0159]/g,alternative:"r"},{letter:/[\u0158]/g,alternative:"R"},{letter:/[\u0161]/g,alternative:"s"},{letter:/[\u0160]/g,alternative:"S"},{letter:/[\u0165]/g,alternative:"t"},{letter:/[\u0164]/g,alternative:"T"},{letter:/[\u00FD]/g,alternative:"y"},{letter:/[\u00DD]/g,alternative:"Y"},{letter:/[\u017E]/g,alternative:"z"},{letter:/[\u017D]/g,alternative:"Z"},{letter:/[\u00E9\u011B]/g,alternative:"e"},{letter:/[\u00C9\u011A]/g,alternative:"E"},{letter:/[\u00FA\u016F]/g,alternative:"u"},{letter:/[\u00DA\u016E]/g,alternative:"U"}],ru:[{letter:/[\u0430]/g,alternative:"a"},{letter:/[\u0410]/g,alternative:"A"},{letter:/[\u0431]/g,alternative:"b"},{letter:/[\u0411]/g,alternative:"B"},{letter:/[\u0432]/g,alternative:"v"},{letter:/[\u0412]/g,alternative:"V"},{letter:/[\u0433]/g,alternative:"g"},{letter:/[\u0413]/g,alternative:"G"},{letter:/[\u0434]/g,alternative:"d"},{letter:/[\u0414]/g,alternative:"D"},{letter:/[\u0435]/g,alternative:"e"},{letter:/[\u0415]/g,alternative:"E"},{letter:/[\u0436]/g,alternative:"zh"},{letter:/[\u0416]/g,alternative:"Zh"},{letter:/[\u0437]/g,alternative:"z"},{letter:/[\u0417]/g,alternative:"Z"},{letter:/[\u0456\u0438\u0439]/g,alternative:"i"},{letter:/[\u0406\u0418\u0419]/g,alternative:"I"},{letter:/[\u043A]/g,alternative:"k"},{letter:/[\u041A]/g,alternative:"K"},{letter:/[\u043B]/g,alternative:"l"},{letter:/[\u041B]/g,alternative:"L"},{letter:/[\u043C]/g,alternative:"m"},{letter:/[\u041C]/g,alternative:"M"},{letter:/[\u043D]/g,alternative:"n"},{letter:/[\u041D]/g,alternative:"N"},{letter:/[\u0440]/g,alternative:"r"},{letter:/[\u0420]/g,alternative:"R"},{letter:/[\u043E]/g,alternative:"o"},{letter:/[\u041E]/g,alternative:"O"},{letter:/[\u043F]/g,alternative:"p"},{letter:/[\u041F]/g,alternative:"P"},{letter:/[\u0441]/g,alternative:"s"},{letter:/[\u0421]/g,alternative:"S"},{letter:/[\u0442]/g,alternative:"t"},{letter:/[\u0422]/g,alternative:"T"},{letter:/[\u0443]/g,alternative:"u"},{letter:/[\u0423]/g,alternative:"U"},{letter:/[\u0444]/g,alternative:"f"},{letter:/[\u0424]/g,alternative:"F"},{letter:/[\u0445]/g,alternative:"kh"},{letter:/[\u0425]/g,alternative:"Kh"},{letter:/[\u0446]/g,alternative:"ts"},{letter:/[\u0426]/g,alternative:"Ts"},{letter:/[\u0447]/g,alternative:"ch"},{letter:/[\u0427]/g,alternative:"Ch"},{letter:/[\u0448]/g,alternative:"sh"},{letter:/[\u0428]/g,alternative:"Sh"},{letter:/[\u0449]/g,alternative:"shch"},{letter:/[\u0429]/g,alternative:"Shch"},{letter:/[\u044A]/g,alternative:"ie"},{letter:/[\u042A]/g,alternative:"Ie"},{letter:/[\u044B]/g,alternative:"y"},{letter:/[\u042B]/g,alternative:"Y"},{letter:/[\u044C]/g,alternative:""},{letter:/[\u042C]/g,alternative:""},{letter:/[\u0451\u044D]/g,alternative:"e"},{letter:/[\u0401\u042D]/g,alternative:"E"},{letter:/[\u044E]/g,alternative:"iu"},{letter:/[\u042E]/g,alternative:"Iu"},{letter:/[\u044F]/g,alternative:"ia"},{letter:/[\u042F]/g,alternative:"Ia"}],eo:[{letter:/[\u0109]/g,alternative:"ch"},{letter:/[\u0108]/g,alternative:"Ch"},{letter:/[\u011d]/g,alternative:"gh"},{letter:/[\u011c]/g,alternative:"Gh"},{letter:/[\u0125]/g,alternative:"hx"},{letter:/[\u0124]/g,alternative:"Hx"},{letter:/[\u0135]/g,alternative:"jx"},{letter:/[\u0134]/g,alternative:"Jx"},{letter:/[\u015d]/g,alternative:"sx"},{letter:/[\u015c]/g,alternative:"Sx"},{letter:/[\u016d]/g,alternative:"ux"},{letter:/[\u016c]/g,alternative:"Ux"}],af:[{letter:/[\u00E8\u00EA\u00EB]/g,alternative:"e"},{letter:/[\u00CB\u00C8\u00CA]/g,alternative:"E"},{letter:/[\u00EE\u00EF]/g,alternative:"i"},{letter:/[\u00CE\u00CF]/g,alternative:"I"},{letter:/[\u00F4\u00F6]/g,alternative:"o"},{letter:/[\u00D4\u00D6]/g,alternative:"O"},{letter:/[\u00FB\u00FC]/g,alternative:"u"},{letter:/[\u00DB\u00DC]/g,alternative:"U"}],ca:[{letter:/[\u00E0]/g,alternative:"a"},{letter:/[\u00C0]/g,alternative:"A"},{letter:/[\u00E9|\u00E8]/g,alternative:"e"},{letter:/[\u00C9|\u00C8]/g,alternative:"E"},{letter:/[\u00ED|\u00EF]/g,alternative:"i"},{letter:/[\u00CD|\u00CF]/g,alternative:"I"},{letter:/[\u00F3|\u00F2]/g,alternative:"o"},{letter:/[\u00D3|\u00D2]/g,alternative:"O"},{letter:/[\u00FA|\u00FC]/g,alternative:"u"},{letter:/[\u00DA|\u00DC]/g,alternative:"U"},{letter:/[\u00E7]/g,alternative:"c"},{letter:/[\u00C7]/g,alternative:"C"}],ast:[{letter:/[\u00F1]/g,alternative:"n"},{letter:/[\u00D1]/g,alternative:"N"}],an:[{letter:/[\u00FC]/g,alternative:"u"},{letter:/[\u00F1]/g,alternative:"ny"},{letter:/[\u00E7]/g,alternative:"c"},{letter:/[\u00ED]/g,alternative:"i"},{letter:/[\u00F3]/g,alternative:"o"},{letter:/[\u00E1]/g,alternative:"a"},{letter:/[\u00DC]/g,alternative:"U"},{letter:/[\u00D1]/g,alternative:"Ny"},{letter:/[\u00C7]/g,alternative:"C"},{letter:/[\u00CD]/g,alternative:"I"},{letter:/[\u00D3]/g,alternative:"O"},{letter:/[\u00C1]/g,alternative:"A"}],ay:[{letter:/(([\u00EF])|([\u00ED]))/g,alternative:"i"},{letter:/(([\u00CF])|([\u00CD]))/g,alternative:"I"},{letter:/[\u00E4]/g,alternative:"a"},{letter:/[\u00C4]/g,alternative:"A"},{letter:/[\u00FC]/g,alternative:"u"},{letter:/[\u00DC]/g,alternative:"U"},{letter:/[\u0027]/g,alternative:""},{letter:/[\u00F1]/g,alternative:"n"},{letter:/[\u00D1]/g,alternative:"N"}],en:[{letter:/[\u00E6\u04D5]/g,alternative:"ae"},{letter:/[\u00C6\u04D4]/g,alternative:"Ae"},{letter:/[\u0153]/g,alternative:"oe"},{letter:/[\u0152]/g,alternative:"Oe"},{letter:/[\u00EB\u00E9]/g,alternative:"e"},{letter:/[\u00C9\u00CB]/g,alternative:"E"},{letter:/[\u00F4\u00F6]/g,alternative:"o"},{letter:/[\u00D4\u00D6]/g,alternative:"O"},{letter:/[\u00EF]/g,alternative:"i"},{letter:/[\u00CF]/g,alternative:"I"},{letter:/[\u00E7]/g,alternative:"c"},{letter:/[\u00C7]/g,alternative:"C"},{letter:/[\u00F1]/g,alternative:"n"},{letter:/[\u00D1]/g,alternative:"N"},{letter:/[\u00FC]/g,alternative:"u"},{letter:/[\u00DC]/g,alternative:"U"},{letter:/[\u00E4]/g,alternative:"a"},{letter:/[\u00C4]/g,alternative:"A"}],fr:[{letter:/[\u00E6\u04D5]/g,alternative:"ae"},{letter:/[\u00C6\u04D4]/g,alternative:"Ae"},{letter:/[\u0153]/g,alternative:"oe"},{letter:/[\u0152]/g,alternative:"Oe"},{letter:/[\u00E9\u00E8\u00EB\u00EA]/g,alternative:"e"},{letter:/[\u00C9\u00C8\u00CB\u00CA]/g,alternative:"E"},{letter:/[\u00E0\u00E2]/g,alternative:"a"},{letter:/[\u00C0\u00C2]/g,alternative:"A"},{letter:/[\u00EF\u00EE]/g,alternative:"i"},{letter:/[\u00CF\u00CE]/g,alternative:"I"},{letter:/[\u00F9\u00FB\u00FC]/g,alternative:"u"},{letter:/[\u00D9\u00DB\u00DC]/g,alternative:"U"},{letter:/[\u00F4]/g,alternative:"o"},{letter:/[\u00D4]/g,alternative:"O"},{letter:/[\u00FF]/g,alternative:"y"},{letter:/[\u0178]/g,alternative:"Y"},{letter:/[\u00E7]/g,alternative:"c"},{letter:/[\u00C7]/g,alternative:"C"},{letter:/[\u00F1]/g,alternative:"n"},{letter:/[\u00D1]/g,alternative:"N"}],it:[{letter:/[\u00E0]/g,alternative:"a"},{letter:/[\u00C0]/g,alternative:"A"},{letter:/[\u00E9\u00E8]/g,alternative:"e"},{letter:/[\u00C9\u00C8]/g,alternative:"E"},{letter:/[\u00EC\u00ED\u00EE]/g,alternative:"i"},{letter:/[\u00CC\u00CD\u00CE]/g,alternative:"I"},{letter:/[\u00F3\u00F2]/g,alternative:"o"},{letter:/[\u00D3\u00D2]/g,alternative:"O"},{letter:/[\u00F9\u00FA]/g,alternative:"u"},{letter:/[\u00D9\u00DA]/g,alternative:"U"}],nl:[{letter:/[\u00E7]/g,alternative:"c"},{letter:/[\u00C7]/g,alternative:"C"},{letter:/[\u00F1]/g,alternative:"n"},{letter:/[\u00D1]/g,alternative:"N"},{letter:/[\u00E9\u00E8\u00EA\u00EB]/g,alternative:"e"},{letter:/[\u00C9\u00C8\u00CA\u00CB]/g,alternative:"E"},{letter:/[\u00F4\u00F6]/g,alternative:"o"},{letter:/[\u00D4\u00D6]/g,alternative:"O"},{letter:/[\u00EF]/g,alternative:"i"},{letter:/[\u00CF]/g,alternative:"I"},{letter:/[\u00FC]/g,alternative:"u"},{letter:/[\u00DC]/g,alternative:"U"},{letter:/[\u00E4]/g,alternative:"a"},{letter:/[\u00C4]/g,alternative:"A"}],bm:[{letter:/[\u025B]/g,alternative:"e"},{letter:/[\u0190]/g,alternative:"E"},{letter:/[\u0272]/g,alternative:"ny"},{letter:/[\u019D]/g,alternative:"Ny"},{letter:/[\u014B]/g,alternative:"ng"},{letter:/[\u014A]/g,alternative:"Ng"},{letter:/[\u0254]/g,alternative:"o"},{letter:/[\u0186]/g,alternative:"O"}],uk:[{letter:/[\u0431]/g,alternative:"b"},{letter:/[\u0411]/g,alternative:"B"},{letter:/[\u0432]/g,alternative:"v"},{letter:/[\u0412]/g,alternative:"V"},{letter:/[\u0433]/g,alternative:"h"},{letter:/[\u0413]/g,alternative:"H"},{letter:/[\u0491]/g,alternative:"g"},{letter:/[\u0490]/g,alternative:"G"},{letter:/[\u0434]/g,alternative:"d"},{letter:/[\u0414]/g,alternative:"D"},{letter:/[\u043A]/g,alternative:"k"},{letter:/[\u041A]/g,alternative:"K"},{letter:/[\u043B]/g,alternative:"l"},{letter:/[\u041B]/g,alternative:"L"},{letter:/[\u043C]/g,alternative:"m"},{letter:/[\u041C]/g,alternative:"M"},{letter:/[\u0070]/g,alternative:"r"},{letter:/[\u0050]/g,alternative:"R"},{letter:/[\u043F]/g,alternative:"p"},{letter:/[\u041F]/g,alternative:"P"},{letter:/[\u0441]/g,alternative:"s"},{letter:/[\u0421]/g,alternative:"S"},{letter:/[\u0442]/g,alternative:"t"},{letter:/[\u0422]/g,alternative:"T"},{letter:/[\u0443]/g,alternative:"u"},{letter:/[\u0423]/g,alternative:"U"},{letter:/[\u0444]/g,alternative:"f"},{letter:/[\u0424]/g,alternative:"F"},{letter:/[\u0445]/g,alternative:"kh"},{letter:/[\u0425]/g,alternative:"Kh"},{letter:/[\u0446]/g,alternative:"ts"},{letter:/[\u0426]/g,alternative:"Ts"},{letter:/[\u0447]/g,alternative:"ch"},{letter:/[\u0427]/g,alternative:"Ch"},{letter:/[\u0448]/g,alternative:"sh"},{letter:/[\u0428]/g,alternative:"Sh"},{letter:/[\u0449]/g,alternative:"shch"},{letter:/[\u0429]/g,alternative:"Shch"},{letter:/[\u044C\u042C]/g,alternative:""},{letter:/[\u0436]/g,alternative:"zh"},{letter:/[\u0416]/g,alternative:"Zh"},{letter:/[\u0437]/g,alternative:"z"},{letter:/[\u0417]/g,alternative:"Z"},{letter:/[\u0438]/g,alternative:"y"},{letter:/[\u0418]/g,alternative:"Y"},{letter:/^[\u0454]/g,alternative:"ye"},{letter:/[\s][\u0454]/g,alternative:" ye"},{letter:/[\u0454]/g,alternative:"ie"},{letter:/^[\u0404]/g,alternative:"Ye"},{letter:/[\s][\u0404]/g,alternative:" Ye"},{letter:/[\u0404]/g,alternative:"IE"},{letter:/^[\u0457]/g,alternative:"yi"},{letter:/[\s][\u0457]/g,alternative:" yi"},{letter:/[\u0457]/g,alternative:"i"},{letter:/^[\u0407]/g,alternative:"Yi"},{letter:/[\s][\u0407]/g,alternative:" Yi"},{letter:/[\u0407]/g,alternative:"I"},{letter:/^[\u0439]/g,alternative:"y"},{letter:/[\s][\u0439]/g,alternative:" y"},{letter:/[\u0439]/g,alternative:"i"},{letter:/^[\u0419]/g,alternative:"Y"},{letter:/[\s][\u0419]/g,alternative:" Y"},{letter:/[\u0419]/g,alternative:"I"},{letter:/^[\u044E]/g,alternative:"yu"},{letter:/[\s][\u044E]/g,alternative:" yu"},{letter:/[\u044E]/g,alternative:"iu"},{letter:/^[\u042E]/g,alternative:"Yu"},{letter:/[\s][\u042E]/g,alternative:" Yu"},{letter:/[\u042E]/g,alternative:"IU"},{letter:/^[\u044F]/g,alternative:"ya"},{letter:/[\s][\u044F]/g,alternative:" ya"},{letter:/[\u044F]/g,alternative:"ia"},{letter:/^[\u042F]/g,alternative:"Ya"},{letter:/[\s][\u042F]/g,alternative:" Ya"},{letter:/[\u042F]/g,alternative:"IA"}],br:[{letter:/\u0063\u0027\u0068/g,alternative:"ch"},{letter:/\u0043\u0027\u0048/g,alternative:"CH"},{letter:/[\u00e2]/g,alternative:"a"},{letter:/[\u00c2]/g,alternative:"A"},{letter:/[\u00ea]/g,alternative:"e"},{letter:/[\u00ca]/g,alternative:"E"},{letter:/[\u00ee]/g,alternative:"i"},{letter:/[\u00ce]/g,alternative:"I"},{letter:/[\u00f4]/g,alternative:"o"},{letter:/[\u00d4]/g,alternative:"O"},{letter:/[\u00fb\u00f9\u00fc]/g,alternative:"u"},{letter:/[\u00db\u00d9\u00dc]/g,alternative:"U"},{letter:/[\u00f1]/g,alternative:"n"},{letter:/[\u00d1]/g,alternative:"N"}],ch:[{letter:/[\u0027]/g,alternative:""},{letter:/[\u00e5]/g,alternative:"a"},{letter:/[\u00c5]/g,alternative:"A"},{letter:/[\u00f1]/g,alternative:"n"},{letter:/[\u00d1]/g,alternative:"N"}],co:[{letter:/[\u00e2\u00e0]/g,alternative:"a"},{letter:/[\u00c2\u00c0]/g,alternative:"A"},{letter:/[\u00e6\u04d5]/g,alternative:"ae"},{letter:/[\u00c6\u04d4]/g,alternative:"Ae"},{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/[\u00e9\u00ea\u00e8\u00eb]/g,alternative:"e"},{letter:/[\u00c9\u00ca\u00c8\u00cb]/g,alternative:"E"},{letter:/[\u00ec\u00ee\u00ef]/g,alternative:"i"},{letter:/[\u00cc\u00ce\u00cf]/g,alternative:"I"},{letter:/[\u00f1]/g,alternative:"n"},{letter:/[\u00d1]/g,alternative:"N"},{letter:/[\u00f4\u00f2]/g,alternative:"o"},{letter:/[\u00d4\u00d2]/g,alternative:"O"},{letter:/[\u0153]/g,alternative:"oe"},{letter:/[\u0152]]/g,alternative:"Oe"},{letter:/[\u00f9\u00fc]/g,alternative:"u"},{letter:/[\u00d9\u00dc]/g,alternative:"U"},{letter:/[\u00ff]/g,alternative:"y"},{letter:/[\u0178]/g,alternative:"Y"}],csb:[{letter:/[\u0105\u00e3]/g,alternative:"a"},{letter:/[\u0104\u00c3]/g,alternative:"A"},{letter:/[\u00e9\u00eb]/g,alternative:"e"},{letter:/[\u00c9\u00cb]/g,alternative:"E"},{letter:/[\u0142]/g,alternative:"l"},{letter:/[\u0141]/g,alternative:"L"},{letter:/[\u0144]/g,alternative:"n"},{letter:/[\u0143]/g,alternative:"N"},{letter:/[\u00f2\u00f3\u00f4]/g,alternative:"o"},{letter:/[\u00d2\u00d3\u00d4]/g,alternative:"O"},{letter:/[\u00f9]/g,alternative:"u"},{letter:/[\u00d9]/g,alternative:"U"},{letter:/[\u017c]/g,alternative:"z"},{letter:/[\u017b]/g,alternative:"Z"}],cy:[{letter:/[\u00e2]/g,alternative:"a"},{letter:/[\u00c2]/g,alternative:"A"},{letter:/[\u00ea]/g,alternative:"e"},{letter:/[\u00ca]/g,alternative:"E"},{letter:/[\u00ee]/g,alternative:"i"},{letter:/[\u00ce]/g,alternative:"I"},{letter:/[\u00f4]/g,alternative:"o"},{letter:/[\u00d4]/g,alternative:"O"},{letter:/[\u00fb]/g,alternative:"u"},{letter:/[\u00db]/g,alternative:"U"},{letter:/[\u0175]/g,alternative:"w"},{letter:/[\u0174]/g,alternative:"W"},{letter:/[\u0177]/g,alternative:"y"},{letter:/[\u0176]/g,alternative:"Y"}],ee:[{letter:/[\u0256]/g,alternative:"d"},{letter:/[\u0189]/g,alternative:"D"},{letter:/[\u025b]/g,alternative:"e"},{letter:/[\u0190]/g,alternative:"E"},{letter:/[\u0192]/g,alternative:"f"},{letter:/[\u0191]/g,alternative:"F"},{letter:/[\u0263]/g,alternative:"g"},{letter:/[\u0194]/g,alternative:"G"},{letter:/[\u014b]/g,alternative:"ng"},{letter:/[\u014a]/g,alternative:"Ng"},{letter:/[\u0254]/g,alternative:"o"},{letter:/[\u0186]/g,alternative:"O"},{letter:/[\u028b]/g,alternative:"w"},{letter:/[\u01b2]/g,alternative:"W"},{letter:/\u0061\u0303/g,alternative:"a"},{letter:/[\u00e1\u00e0\u01ce\u00e2\u00e3]/g,alternative:"a"},{letter:/\u0041\u0303/g,alternative:"A"},{letter:/[\u00c1\u00c0\u01cd\u00c2\u00c3]/g,alternative:"A"},{letter:/[\u00e9\u00e8\u011b\u00ea]/g,alternative:"e"},{letter:/[\u00c9\u00c8\u011a\u00ca]/g,alternative:"E"},{letter:/[\u00f3\u00f2\u01d2\u00f4]/g,alternative:"o"},{letter:/[\u00d3\u00d2\u01d1\u00d4]/g,alternative:"O"},{letter:/[\u00fa\u00f9\u01d4\u00fb]/g,alternative:"u"},{letter:/[\u00da\u00d9\u01d3\u00db]/g,alternative:"U"},{letter:/[\u00ed\u00ec\u01d0\u00ee]/g,alternative:"i"},{letter:/[\u00cd\u00cc\u01cf\u00ce]/g,alternative:"I"}],et:[{letter:/[\u0161]/g,alternative:"sh"},{letter:/[\u0160]/g,alternative:"Sh"},{letter:/[\u017e]/g,alternative:"zh"},{letter:/[\u017d]/g,alternative:"Zh"},{letter:/[\u00f5\u00f6]/g,alternative:"o"},{letter:/[\u00d6\u00d5]/g,alternative:"O"},{letter:/[\u00e4]/g,alternative:"a"},{letter:/[\u00c4]/g,alternative:"A"},{letter:/[\u00fc]/g,alternative:"u"},{letter:/[\u00dc]/g,alternative:"U"}],eu:[{letter:/[\u00f1]/g,alternative:"n"},{letter:/[\u00d1]/g,alternative:"N"},{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/[\u00fc]/g,alternative:"u"},{letter:/[\u00dc]/g,alternative:"U"}],fuc:[{letter:/[\u0253]/g,alternative:"b"},{letter:/[\u0181]/g,alternative:"B"},{letter:/[\u0257]/g,alternative:"d"},{letter:/[\u018a]/g,alternative:"D"},{letter:/[\u014b]/g,alternative:"ng"},{letter:/[\u014a]/g,alternative:"Ng"},{letter:/[\u0272\u00f1]/g,alternative:"ny"},{letter:/[\u019d\u00d1]/g,alternative:"Ny"},{letter:/[\u01b4]/g,alternative:"y"},{letter:/[\u01b3]/g,alternative:"Y"},{letter:/[\u0260]/g,alternative:"g"},{letter:/[\u0193]/g,alternative:"G"}],fj:[{letter:/[\u0101]/g,alternative:"a"},{letter:/[\u0100]/g,alternative:"A"},{letter:/[\u0113]/g,alternative:"e"},{letter:/[\u0112]/g,alternative:"E"},{letter:/[\u012b]/g,alternative:"i"},{letter:/[\u012a]/g,alternative:"I"},{letter:/[\u016b]/g,alternative:"u"},{letter:/[\u016a]/g,alternative:"U"},{letter:/[\u014d]/g,alternative:"o"},{letter:/[\u014c]/g,alternative:"O"}],frp:[{letter:/[\u00e2]/g,alternative:"a"},{letter:/[\u00c2]/g,alternative:"A"},{letter:/[\u00ea\u00e8\u00e9]/g,alternative:"e"},{letter:/[\u00ca\u00c8\u00c9]/g,alternative:"E"},{letter:/[\u00ee]/g,alternative:"i"},{letter:/[\u00ce]/g,alternative:"I"},{letter:/[\u00fb\u00fc]/g,alternative:"u"},{letter:/[\u00db\u00dc]/g,alternative:"U"},{letter:/[\u00f4]/g,alternative:"o"},{letter:/[\u00d4]/g,alternative:"O"}],fur:[{letter:/[\u00E7]/g,alternative:"c"},{letter:/[\u00C7]/g,alternative:"C"},{letter:/[\u00e0\u00e2]/g,alternative:"a"},{letter:/[\u00c0\u00c2]/g,alternative:"A"},{letter:/[\u00e8\u00ea]/g,alternative:"e"},{letter:/[\u00c8\u00ca]/g,alternative:"E"},{letter:/[\u00ec\u00ee]/g,alternative:"i"},{letter:/[\u00cc\u00ce]/g,alternative:"I"},{letter:/[\u00f2\u00f4]/g,alternative:"o"},{letter:/[\u00d2\u00d4]/g,alternative:"O"},{letter:/[\u00f9\u00fb]/g,alternative:"u"},{letter:/[\u00d9\u00db]/g,alternative:"U"},{letter:/[\u010d]/g,alternative:"c"},{letter:/[\u010c]/g,alternative:"C"},{letter:/[\u011f]/g,alternative:"g"},{letter:/[\u011e]/g,alternative:"G"},{letter:/[\u0161]/g,alternative:"s"},{letter:/[\u0160]/g,alternative:"S"}],fy:[{letter:/[\u00e2\u0101\u00e4\u00e5]/g,alternative:"a"},{letter:/[\u00c2\u0100\u00c4\u00c5]/g,alternative:"A"},{letter:/[\u00ea\u00e9\u0113]/g,alternative:"e"},{letter:/[\u00ca\u00c9\u0112]/g,alternative:"E"},{letter:/[\u00f4\u00f6]/g,alternative:"o"},{letter:/[\u00d4\u00d6]/g,alternative:"O"},{letter:/[\u00fa\u00fb\u00fc]/g,alternative:"u"},{letter:/[\u00da\u00db\u00dc]/g,alternative:"U"},{letter:/[\u00ed]/g,alternative:"i"},{letter:/[\u00cd]/g,alternative:"I"},{letter:/[\u0111\u00f0]/g,alternative:"d"},{letter:/[\u0110\u00d0]/g,alternative:"D"}],ga:[{letter:/[\u00e1]/g,alternative:"a"},{letter:/[\u00c1]/g,alternative:"A"},{letter:/[\u00e9]/g,alternative:"e"},{letter:/[\u00c9]/g,alternative:"E"},{letter:/[\u00f3]/g,alternative:"o"},{letter:/[\u00d3]/g,alternative:"O"},{letter:/[\u00fa]/g,alternative:"u"},{letter:/[\u00da]/g,alternative:"U"},{letter:/[\u00ed]/g,alternative:"i"},{letter:/[\u00cd]/g,alternative:"I"}],gd:[{letter:/[\u00e0]/g,alternative:"a"},{letter:/[\u00c0]/g,alternative:"A"},{letter:/[\u00e8]/g,alternative:"e"},{letter:/[\u00c8]/g,alternative:"E"},{letter:/[\u00f2]/g,alternative:"o"},{letter:/[\u00d2]/g,alternative:"O"},{letter:/[\u00f9]/g,alternative:"u"},{letter:/[\u00d9]/g,alternative:"U"},{letter:/[\u00ec]/g,alternative:"i"},{letter:/[\u00cc]/g,alternative:"I"}],gl:[{letter:/[\u00e1\u00e0]/g,alternative:"a"},{letter:/[\u00c1\u00c0]/g,alternative:"A"},{letter:/[\u00e9\u00ea]/g,alternative:"e"},{letter:/[\u00c9\u00ca]/g,alternative:"E"},{letter:/[\u00ed\u00ef]/g,alternative:"i"},{letter:/[\u00cd\u00cf]/g,alternative:"I"},{letter:/[\u00f3]/g,alternative:"o"},{letter:/[\u00d3]/g,alternative:"O"},{letter:/[\u00fa\u00fc]/g,alternative:"u"},{letter:/[\u00da\u00dc]/g,alternative:"U"},{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/[\u00f1]/g,alternative:"n"},{letter:/[\u00d1]/g,alternative:"N"}],gn:[{letter:/[\u2019]/g,alternative:""},{letter:/\u0067\u0303/g,alternative:"g"},{letter:/\u0047\u0303/g,alternative:"G"},{letter:/[\u00e3]/g,alternative:"a"},{letter:/[\u00c3]/g,alternative:"A"},{letter:/[\u1ebd]/g,alternative:"e"},{letter:/[\u1ebc]/g,alternative:"E"},{letter:/[\u0129]/g,alternative:"i"},{letter:/[\u0128]/g,alternative:"I"},{letter:/[\u00f5]/g,alternative:"o"},{letter:/[\u00d5]/g,alternative:"O"},{letter:/[\u00f1]/g,alternative:"n"},{letter:/[\u00d1]/g,alternative:"N"},{letter:/[\u0169]/g,alternative:"u"},{letter:/[\u0168]/g,alternative:"U"},{letter:/[\u1ef9]/g,alternative:"y"},{letter:/[\u1ef8]/g,alternative:"Y"}],gsw:[{letter:/[\u00e4]/g,alternative:"a"},{letter:/[\u00c4]/g,alternative:"A"},{letter:/[\u00f6]/g,alternative:"o"},{letter:/[\u00d6]/g,alternative:"O"},{letter:/[\u00fc]/g,alternative:"u"},{letter:/[\u00dc]/g,alternative:"U"}],hat:[{letter:/[\u00e8]/g,alternative:"e"},{letter:/[\u00c8]/g,alternative:"E"},{letter:/[\u00f2]/g,alternative:"o"},{letter:/[\u00d2]/g,alternative:"O"}],haw:[{letter:/[\u02bb\u0027\u2019]/g,alternative:""},{letter:/[\u0101]/g,alternative:"a"},{letter:/[\u0113]/g,alternative:"e"},{letter:/[\u012b]/g,alternative:"i"},{letter:/[\u014d]/g,alternative:"o"},{letter:/[\u016b]/g,alternative:"u"},{letter:/[\u0100]/g,alternative:"A"},{letter:/[\u0112]/g,alternative:"E"},{letter:/[\u012a]/g,alternative:"I"},{letter:/[\u014c]/g,alternative:"O"},{letter:/[\u016a]/g,alternative:"U"}],hr:[{letter:/[\u010d\u0107]/g,alternative:"c"},{letter:/[\u010c\u0106]/g,alternative:"C"},{letter:/[\u0111]/g,alternative:"dj"},{letter:/[\u0110]/g,alternative:"Dj"},{letter:/[\u0161]/g,alternative:"s"},{letter:/[\u0160]/g,alternative:"S"},{letter:/[\u017e]/g,alternative:"z"},{letter:/[\u017d]/g,alternative:"Z"},{letter:/[\u01c4]/g,alternative:"DZ"},{letter:/[\u01c5]/g,alternative:"Dz"},{letter:/[\u01c6]/g,alternative:"dz"}],ka:[{letter:/[\u10d0]/g,alternative:"a"},{letter:/[\u10d1]/g,alternative:"b"},{letter:/[\u10d2]/g,alternative:"g"},{letter:/[\u10d3]/g,alternative:"d"},{letter:/[\u10d4]/g,alternative:"e"},{letter:/[\u10d5]/g,alternative:"v"},{letter:/[\u10d6]/g,alternative:"z"},{letter:/[\u10d7]/g,alternative:"t"},{letter:/[\u10d8]/g,alternative:"i"},{letter:/[\u10d9]/g,alternative:"k"},{letter:/[\u10da]/g,alternative:"l"},{letter:/[\u10db]/g,alternative:"m"},{letter:/[\u10dc]/g,alternative:"n"},{letter:/[\u10dd]/g,alternative:"o"},{letter:/[\u10de]/g,alternative:"p"},{letter:/[\u10df]/g,alternative:"zh"},{letter:/[\u10e0]/g,alternative:"r"},{letter:/[\u10e1]/g,alternative:"s"},{letter:/[\u10e2]/g,alternative:"t"},{letter:/[\u10e3]/g,alternative:"u"},{letter:/[\u10e4]/g,alternative:"p"},{letter:/[\u10e5]/g,alternative:"k"},{letter:/[\u10e6]/g,alternative:"gh"},{letter:/[\u10e7]/g,alternative:"q"},{letter:/[\u10e8]/g,alternative:"sh"},{letter:/[\u10e9]/g,alternative:"ch"},{letter:/[\u10ea]/g,alternative:"ts"},{letter:/[\u10eb]/g,alternative:"dz"},{letter:/[\u10ec]/g,alternative:"ts"},{letter:/[\u10ed]/g,alternative:"ch"},{letter:/[\u10ee]/g,alternative:"kh"},{letter:/[\u10ef]/g,alternative:"j"},{letter:/[\u10f0]/g,alternative:"h"}],kal:[{letter:/[\u00E5]/g,alternative:"aa"},{letter:/[\u00C5]/g,alternative:"Aa"},{letter:/[\u00E6\u04D5]/g,alternative:"ae"},{letter:/[\u00C6\u04D4]/g,alternative:"Ae"},{letter:/[\u00C4]/g,alternative:"Ae"},{letter:/[\u00F8]/g,alternative:"oe"},{letter:/[\u00D8]/g,alternative:"Oe"}],kin:[{letter:/[\u2019\u0027]/g,alternative:""}],lb:[{letter:/[\u00e4]/g,alternative:"a"},{letter:/[\u00c4]/g,alternative:"A"},{letter:/[\u00eb\u00e9]/g,alternative:"e"},{letter:/[\u00cb\u00c9]/g,alternative:"E"}],li:[{letter:/[\u00e1\u00e2\u00e0\u00e4]/g,alternative:"a"},{letter:/[\u00c1\u00c2\u00c0\u00c4]/g,alternative:"A"},{letter:/[\u00eb\u00e8\u00ea]/g,alternative:"e"},{letter:/[\u00cb\u00c8\u00ca]/g,alternative:"E"},{letter:/[\u00f6\u00f3]/g,alternative:"o"},{letter:/[\u00d6\u00d3]/g,alternative:"O"}],lin:[{letter:/[\u00e1\u00e2\u01ce]/g,alternative:"a"},{letter:/[\u00c1\u00c2\u01cd]/g,alternative:"A"},{letter:/\u025b\u0301/g,alternative:"e"},{letter:/\u025b\u0302/g,alternative:"e"},{letter:/\u025b\u030c/g,alternative:"e"},{letter:/[\u00e9\u00ea\u011b\u025b]/g,alternative:"e"},{letter:/\u0190\u0301/g,alternative:"E"},{letter:/\u0190\u0302/g,alternative:"E"},{letter:/\u0190\u030c/g,alternative:"E"},{letter:/[\u00c9\u00ca\u011a\u0190]/g,alternative:"E"},{letter:/[\u00ed\u00ee\u01d0]/g,alternative:"i"},{letter:/[\u00cd\u00ce\u01cf]/g,alternative:"I"},{letter:/\u0254\u0301/g,alternative:"o"},{letter:/\u0254\u0302/g,alternative:"o"},{letter:/\u0254\u030c/g,alternative:"o"},{letter:/[\u00f3\u00f4\u01d2\u0254]/g,alternative:"o"},{letter:/\u0186\u0301/g,alternative:"O"},{letter:/\u0186\u0302/g,alternative:"O"},{letter:/\u0186\u030c/g,alternative:"O"},{letter:/[\u00d3\u00d4\u01d1\u0186]/g,alternative:"O"},{letter:/[\u00fa]/g,alternative:"u"},{letter:/[\u00da]/g,alternative:"U"}],lt:[{letter:/[\u0105]/g,alternative:"a"},{letter:/[\u0104]/g,alternative:"A"},{letter:/[\u010d]/g,alternative:"c"},{letter:/[\u010c]/g,alternative:"C"},{letter:/[\u0119\u0117]/g,alternative:"e"},{letter:/[\u0118\u0116]/g,alternative:"E"},{letter:/[\u012f]/g,alternative:"i"},{letter:/[\u012e]/g,alternative:"I"},{letter:/[\u0161]/g,alternative:"s"},{letter:/[\u0160]/g,alternative:"S"},{letter:/[\u0173\u016b]/g,alternative:"u"},{letter:/[\u0172\u016a]/g,alternative:"U"},{letter:/[\u017e]/g,alternative:"z"},{letter:/[\u017d]/g,alternative:"Z"}],mg:[{letter:/[\u00f4]/g,alternative:"ao"},{letter:/[\u00d4]/g,alternative:"Ao"}],mk:[{letter:/[\u0430]/g,alternative:"a"},{letter:/[\u0410]/g,alternative:"A"},{letter:/[\u0431]/g,alternative:"b"},{letter:/[\u0411]/g,alternative:"B"},{letter:/[\u0432]/g,alternative:"v"},{letter:/[\u0412]/g,alternative:"V"},{letter:/[\u0433]/g,alternative:"g"},{letter:/[\u0413]/g,alternative:"G"},{letter:/[\u0434]/g,alternative:"d"},{letter:/[\u0414]/g,alternative:"D"},{letter:/[\u0453]/g,alternative:"gj"},{letter:/[\u0403]/g,alternative:"Gj"},{letter:/[\u0435]/g,alternative:"e"},{letter:/[\u0415]/g,alternative:"E"},{letter:/[\u0436]/g,alternative:"zh"},{letter:/[\u0416]/g,alternative:"Zh"},{letter:/[\u0437]/g,alternative:"z"},{letter:/[\u0417]/g,alternative:"Z"},{letter:/[\u0455]/g,alternative:"dz"},{letter:/[\u0405]/g,alternative:"Dz"},{letter:/[\u0438]/g,alternative:"i"},{letter:/[\u0418]/g,alternative:"I"},{letter:/[\u0458]/g,alternative:"j"},{letter:/[\u0408]/g,alternative:"J"},{letter:/[\u043A]/g,alternative:"k"},{letter:/[\u041A]/g,alternative:"K"},{letter:/[\u043B]/g,alternative:"l"},{letter:/[\u041B]/g,alternative:"L"},{letter:/[\u0459]/g,alternative:"lj"},{letter:/[\u0409]/g,alternative:"Lj"},{letter:/[\u043C]/g,alternative:"m"},{letter:/[\u041C]/g,alternative:"M"},{letter:/[\u043D]/g,alternative:"n"},{letter:/[\u041D]/g,alternative:"N"},{letter:/[\u045A]/g,alternative:"nj"},{letter:/[\u040A]/g,alternative:"Nj"},{letter:/[\u043E]/g,alternative:"o"},{letter:/[\u041E]/g,alternative:"O"},{letter:/[\u0440]/g,alternative:"r"},{letter:/[\u0420]/g,alternative:"R"},{letter:/[\u043F]/g,alternative:"p"},{letter:/[\u041F]/g,alternative:"P"},{letter:/[\u0441]/g,alternative:"s"},{letter:/[\u0421]/g,alternative:"S"},{letter:/[\u0442]/g,alternative:"t"},{letter:/[\u0422]/g,alternative:"T"},{letter:/[\u045C]/g,alternative:"kj"},{letter:/[\u040C]/g,alternative:"Kj"},{letter:/[\u0443]/g,alternative:"u"},{letter:/[\u0423]/g,alternative:"U"},{letter:/[\u0444]/g,alternative:"f"},{letter:/[\u0424]/g,alternative:"F"},{letter:/[\u0445]/g,alternative:"h"},{letter:/[\u0425]/g,alternative:"H"},{letter:/[\u0446]/g,alternative:"c"},{letter:/[\u0426]/g,alternative:"C"},{letter:/[\u0447]/g,alternative:"ch"},{letter:/[\u0427]/g,alternative:"Ch"},{letter:/[\u045F]/g,alternative:"dj"},{letter:/[\u040F]/g,alternative:"Dj"},{letter:/[\u0448]/g,alternative:"sh"},{letter:/[\u0428]/g,alternative:"Sh"}],mri:[{letter:/[\u0101]/g,alternative:"aa"},{letter:/[\u0100]/g,alternative:"Aa"},{letter:/[\u0113]/g,alternative:"ee"},{letter:/[\u0112]/g,alternative:"Ee"},{letter:/[\u012b]/g,alternative:"ii"},{letter:/[\u012a]/g,alternative:"Ii"},{letter:/[\u014d]/g,alternative:"oo"},{letter:/[\u014c]/g,alternative:"Oo"},{letter:/[\u016b]/g,alternative:"uu"},{letter:/[\u016a]/g,alternative:"Uu"}],mwl:[{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/[\u00e1]/g,alternative:"a"},{letter:/[\u00c1]/g,alternative:"A"},{letter:/[\u00e9\u00ea]/g,alternative:"e"},{letter:/[\u00c9\u00ca]/g,alternative:"E"},{letter:/[\u00ed]/g,alternative:"i"},{letter:/[\u00cd]/g,alternative:"I"},{letter:/[\u00f3\u00f4]/g,alternative:"o"},{letter:/[\u00d3\u00d4]/g,alternative:"O"},{letter:/[\u00fa\u0169]/g,alternative:"u"},{letter:/[\u00da\u0168]/g,alternative:"U"}],oci:[{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/[\u00e0\u00e1]/g,alternative:"a"},{letter:/[\u00c0\u00c1]/g,alternative:"A"},{letter:/[\u00e8\u00e9]/g,alternative:"e"},{letter:/[\u00c8\u00c9]/g,alternative:"E"},{letter:/[\u00ed\u00ef]/g,alternative:"i"},{letter:/[\u00cd\u00cf]/g,alternative:"I"},{letter:/[\u00f2\u00f3]/g,alternative:"o"},{letter:/[\u00d2\u00d3]/g,alternative:"O"},{letter:/[\u00fa\u00fc]/g,alternative:"u"},{letter:/[\u00da\u00dc]/g,alternative:"U"},{letter:/[\u00b7]/g,alternative:""}],orm:[{letter:/[\u0027]/g,alternative:""}],pt:[{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/[\u00e1\u00e2\u00e3\u00e0]/g,alternative:"a"},{letter:/[\u00c1\u00c2\u00c3\u00c0]/g,alternative:"A"},{letter:/[\u00e9\u00ea]/g,alternative:"e"},{letter:/[\u00c9\u00ca]/g,alternative:"E"},{letter:/[\u00ed]/g,alternative:"i"},{letter:/[\u00cd]/g,alternative:"I"},{letter:/[\u00f3\u00f4\u00f5]/g,alternative:"o"},{letter:/[\u00d3\u00d4\u00d5]/g,alternative:"O"},{letter:/[\u00fa]/g,alternative:"u"},{letter:/[\u00da]/g,alternative:"U"}],roh:[{letter:/[\u00e9\u00e8\u00ea]/g,alternative:"e"},{letter:/[\u00c9\u00c8\u00ca]/g,alternative:"E"},{letter:/[\u00ef]/g,alternative:"i"},{letter:/[\u00cf]/g,alternative:"I"},{letter:/[\u00f6]/g,alternative:"oe"},{letter:/[\u00d6]/g,alternative:"Oe"},{letter:/[\u00fc]/g,alternative:"ue"},{letter:/[\u00dc]/g,alternative:"Ue"},{letter:/[\u00e4]/g,alternative:"ae"},{letter:/[\u00c4]/g,alternative:"Ae"}],rup:[{letter:/[\u00e3]/g,alternative:"a"},{letter:/[\u00c3]/g,alternative:"A"}],ro:[{letter:/[\u0103\u00e2]/g,alternative:"a"},{letter:/[\u0102\u00c2]/g,alternative:"A"},{letter:/[\u00ee]/g,alternative:"i"},{letter:/[\u00ce]/g,alternative:"I"},{letter:/[\u0219\u015f]/g,alternative:"s"},{letter:/[\u0218\u015e]/g,alternative:"S"},{letter:/[\u021b\u0163]/g,alternative:"t"},{letter:/[\u021a\u0162]/g,alternative:"T"}],tlh:[{letter:/[\u2019\u0027]/g,alternative:""}],sk:[{letter:/[\u01c4]/g,alternative:"DZ"},{letter:/[\u01c5]/g,alternative:"Dz"},{letter:/[\u01c6]/g,alternative:"dz"},{letter:/[\u00e1\u00e4]/g,alternative:"a"},{letter:/[\u00c1\u00c4]/g,alternative:"A"},{letter:/[\u010d]/g,alternative:"c"},{letter:/[\u010c]/g,alternative:"C"},{letter:/[\u010f]/g,alternative:"d"},{letter:/[\u010e]/g,alternative:"D"},{letter:/[\u00e9]/g,alternative:"e"},{letter:/[\u00c9]/g,alternative:"E"},{letter:/[\u00ed]/g,alternative:"i"},{letter:/[\u00cd]/g,alternative:"I"},{letter:/[\u013e\u013a]/g,alternative:"l"},{letter:/[\u013d\u0139]/g,alternative:"L"},{letter:/[\u0148]/g,alternative:"n"},{letter:/[\u0147]/g,alternative:"N"},{letter:/[\u00f3\u00f4]/g,alternative:"o"},{letter:/[\u00d3\u00d4]/g,alternative:"O"},{letter:/[\u0155]/g,alternative:"r"},{letter:/[\u0154]/g,alternative:"R"},{letter:/[\u0161]/g,alternative:"s"},{letter:/[\u0160]/g,alternative:"S"},{letter:/[\u0165]/g,alternative:"t"},{letter:/[\u0164]/g,alternative:"T"},{letter:/[\u00fa]/g,alternative:"u"},{letter:/[\u00da]/g,alternative:"U"},{letter:/[\u00fd]/g,alternative:"y"},{letter:/[\u00dd]/g,alternative:"Y"},{letter:/[\u017e]/g,alternative:"z"},{letter:/[\u017d]/g,alternative:"Z"}],sl:[{letter:/[\u010d\u0107]/g,alternative:"c"},{letter:/[\u010c\u0106]/g,alternative:"C"},{letter:/[\u0111]/g,alternative:"d"},{letter:/[\u0110]/g,alternative:"D"},{letter:/[\u0161]/g,alternative:"s"},{letter:/[\u0160]/g,alternative:"S"},{letter:/[\u017e]/g,alternative:"z"},{letter:/[\u017d]/g,alternative:"Z"},{letter:/[\u00e0\u00e1\u0203\u0201]/g,alternative:"a"},{letter:/[\u00c0\u00c1\u0202\u0200]/g,alternative:"A"},{letter:/[\u00e8\u00e9\u0207\u0205]/g,alternative:"e"},{letter:/\u01dd\u0300/g,alternative:"e"},{letter:/\u01dd\u030f/g,alternative:"e"},{letter:/\u1eb9\u0301/g,alternative:"e"},{letter:/\u1eb9\u0311/g,alternative:"e"},{letter:/[\u00c8\u00c9\u0206\u0204]/g,alternative:"E"},{letter:/\u018e\u030f/g,alternative:"E"},{letter:/\u018e\u0300/g,alternative:"E"},{letter:/\u1eb8\u0311/g,alternative:"E"},{letter:/\u1eb8\u0301/g,alternative:"E"},{letter:/[\u00ec\u00ed\u020b\u0209]/g,alternative:"i"},{letter:/[\u00cc\u00cd\u020a\u0208]/g,alternative:"I"},{letter:/[\u00f2\u00f3\u020f\u020d]/g,alternative:"o"},{letter:/\u1ecd\u0311/g,alternative:"o"},{letter:/\u1ecd\u0301/g,alternative:"o"},{letter:/\u1ecc\u0311/g,alternative:"O"},{letter:/\u1ecc\u0301/g,alternative:"O"},{letter:/[\u00d2\u00d3\u020e\u020c]/g,alternative:"O"},{letter:/[\u00f9\u00fa\u0217\u0215]/g,alternative:"u"},{letter:/[\u00d9\u00da\u0216\u0214]/g,alternative:"U"},{letter:/[\u0155\u0213]/g,alternative:"r"},{letter:/[\u0154\u0212]/g,alternative:"R"}],sq:[{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/[\u00eb]/g,alternative:"e"},{letter:/[\u00cb]/g,alternative:"E"}],hu:[{letter:/[\u00e1]/g,alternative:"a"},{letter:/[\u00c1]/g,alternative:"A"},{letter:/[\u00e9]/g,alternative:"e"},{letter:/[\u00c9]/g,alternative:"E"},{letter:/[\u00ed]/g,alternative:"i"},{letter:/[\u00cd]/g,alternative:"I"},{letter:/[\u00f3\u00f6\u0151]/g,alternative:"o"},{letter:/[\u00d3\u00d6\u0150]/g,alternative:"O"},{letter:/[\u00fa\u00fc\u0171]/g,alternative:"u"},{letter:/[\u00da\u00dc\u0170]/g,alternative:"U"}],srd:[{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/[\u00e0\u00e1]/g,alternative:"a"},{letter:/[\u00c0\u00c1]/g,alternative:"A"},{letter:/[\u00e8\u00e9]/g,alternative:"e"},{letter:/[\u00c8\u00c9]/g,alternative:"E"},{letter:/[\u00ed\u00ef]/g,alternative:"i"},{letter:/[\u00cd\u00cf]/g,alternative:"I"},{letter:/[\u00f2\u00f3]/g,alternative:"o"},{letter:/[\u00d2\u00d3]/g,alternative:"O"},{letter:/[\u00fa\u00f9]/g,alternative:"u"},{letter:/[\u00da\u00d9]/g,alternative:"U"}],szl:[{letter:/[\u0107]/g,alternative:"c"},{letter:/[\u0106]/g,alternative:"C"},{letter:/[\u00e3]/g,alternative:"a"},{letter:/[\u00c3]/g,alternative:"A"},{letter:/[\u0142]/g,alternative:"u"},{letter:/[\u0141]/g,alternative:"U"},{letter:/[\u006e]/g,alternative:"n"},{letter:/[\u004e]/g,alternative:"N"},{letter:/[\u014f\u014d\u00f4\u00f5]/g,alternative:"o"},{letter:/[\u014e\u014c\u00d4\u00d5]/g,alternative:"O"},{letter:/[\u015b]/g,alternative:"s"},{letter:/[\u015a]/g,alternative:"S"},{letter:/[\u017a\u017c\u017e]/g,alternative:"z"},{letter:/[\u0179\u017b\u017d]/g,alternative:"Z"},{letter:/[\u016f]/g,alternative:"u"},{letter:/[\u016e]/g,alternative:"U"},{letter:/[\u010d]/g,alternative:"cz"},{letter:/[\u010c]/g,alternative:"Cz"},{letter:/[\u0159]/g,alternative:"rz"},{letter:/[\u0158]/g,alternative:"Rz"},{letter:/[\u0161]/g,alternative:"sz"},{letter:/[\u0160]/g,alternative:"Sz"}],tah:[{letter:/[\u0101\u00e2\u00e0]/g,alternative:"a"},{letter:/[\u0100\u00c2\u00c0]/g,alternative:"A"},{letter:/[\u00ef\u00ee\u00ec]/g,alternative:"i"},{letter:/[\u00cf\u00ce\u00cc]/g,alternative:"I"},{letter:/[\u0113\u00ea\u00e9]/g,alternative:"e"},{letter:/[\u0112\u00ca\u00c9]/g,alternative:"E"},{letter:/[\u016b\u00fb\u00fa]/g,alternative:"u"},{letter:/[\u016a\u00db\u00da]/g,alternative:"U"},{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/[\u00f2\u00f4\u014d]/g,alternative:"o"},{letter:/[\u00d2\u00d4\u014c]/g,alternative:"O"},{letter:/[\u2019\u0027\u2018]/g,alternative:""}],vec:[{letter:/\u0073\u002d\u0063/g,alternative:"sc"},{letter:/\u0053\u002d\u0043/g,alternative:"SC"},{letter:/\u0073\u0027\u0063/g,alternative:"sc"},{letter:/\u0053\u0027\u0043/g,alternative:"SC"},{letter:/\u0073\u2019\u0063/g,alternative:"sc"},{letter:/\u0053\u2019\u0043/g,alternative:"SC"},{letter:/\u0073\u2018\u0063/g,alternative:"sc"},{letter:/\u0053\u2018\u0043/g,alternative:"SC"},{letter:/\u0053\u002d\u0063/g,alternative:"Sc"},{letter:/\u0053\u0027\u0063/g,alternative:"Sc"},{letter:/\u0053\u2019\u0063/g,alternative:"Sc"},{letter:/\u0053\u2018\u0063/g,alternative:"Sc"},{letter:/\u0063\u2019/g,alternative:"c"},{letter:/\u0043\u2019/g,alternative:"C"},{letter:/\u0063\u2018/g,alternative:"c"},{letter:/\u0043\u2018/g,alternative:"C"},{letter:/\u0063\u0027/g,alternative:"c"},{letter:/\u0043\u0027/g,alternative:"C"},{letter:/[\u00e0\u00e1\u00e2]/g,alternative:"a"},{letter:/[\u00c0\u00c1\u00c2]/g,alternative:"A"},{letter:/[\u00e8\u00e9]/g,alternative:"e"},{letter:/[\u00c8\u00c9]/g,alternative:"E"},{letter:/[\u00f2\u00f3]/g,alternative:"o"},{letter:/[\u00d2\u00d3]/g,alternative:"O"},{letter:/[\u00f9\u00fa]/g,alternative:"u"},{letter:/[\u00d9\u00da]/g,alternative:"U"},{letter:/[\u00e7\u010d\u010b]/g,alternative:"c"},{letter:/[\u00c7\u010c\u010a]/g,alternative:"C"},{letter:/[\u0142]/g,alternative:"l"},{letter:/[\u00a3\u0141]/g,alternative:"L"},{letter:/\ud835\udeff/g,alternative:"dh"},{letter:/[\u0111\u03b4]/g,alternative:"dh"},{letter:/[\u0110\u0394]/g,alternative:"Dh"}],wa:[{letter:/[\u00e2\u00e5]/g,alternative:"a"},{letter:/[\u00c2\u00c5]/g,alternative:"A"},{letter:/[\u00e7]/g,alternative:"c"},{letter:/[\u00c7]/g,alternative:"C"},{letter:/\u0065\u030a/g,alternative:"e"},{letter:/\u0045\u030a/g,alternative:"E"},{letter:/[\u00eb\u00ea\u00e8\u00e9]/g,alternative:"e"},{letter:/[\u00c9\u00c8\u00ca\u00cb]/g,alternative:"E"},{letter:/[\u00ee]/g,alternative:"i"},{letter:/[\u00ce]/g,alternative:"I"},{letter:/[\u00f4\u00f6]/g,alternative:"o"},{letter:/[\u00d6\u00d4]/g,alternative:"O"},{letter:/[\u00fb]/g,alternative:"u"},{letter:/[\u00db]/g,alternative:"U"}],yor:[{letter:/[\u00e1\u00e0]/g,alternative:"a"},{letter:/[\u00c1\u00c0]/g,alternative:"A"},{letter:/[\u00ec\u00ed]/g,alternative:"i"},{letter:/[\u00cc\u00cd]/g,alternative:"I"},{letter:/\u1ecd\u0301/g,alternative:"o"},{letter:/\u1ecc\u0301/g,alternative:"O"},{letter:/\u1ecd\u0300/g,alternative:"o"},{letter:/\u1ecc\u0300/g,alternative:"O"},{letter:/[\u00f3\u00f2\u1ecd]/g,alternative:"o"},{letter:/[\u00d3\u00d2\u1ecc]/g,alternative:"O"},{letter:/[\u00fa\u00f9]/g,alternative:"u"},{letter:/[\u00da\u00d9]/g,alternative:"U"},{letter:/\u1eb9\u0301/g,alternative:"e"},{letter:/\u1eb8\u0301/g,alternative:"E"},{letter:/\u1eb9\u0300/g,alternative:"e"},{letter:/\u1eb8\u0300/g,alternative:"E"},{letter:/[\u00e9\u00e8\u1eb9]/g,alternative:"e"},{letter:/[\u00c9\u00c8\u1eb8]/g,alternative:"E"},{letter:/[\u1e63]/g,alternative:"s"},{letter:/[\u1e62]/g,alternative:"S"}]};a.exports=function(a){if(r(a))return[];switch(i(a)){case"es":return o.es;case"pl":return o.pl;case"de":return o.de;case"nb":case"nn":return o.nbnn;case"sv":return o.sv;case"fi":return o.fi;case"da":return o.da;case"tr":return o.tr;case"lv":return o.lv;case"is":return o.is;case"fa":return o.fa;case"cs":return o.cs;case"ru":return o.ru;case"eo":return o.eo;case"af":return o.af;case"bal":case"ca":return o.ca;case"ast":return o.ast;case"an":return o.an;case"ay":return o.ay;case"en":return o.en;case"fr":return o.fr;case"it":return o.it;case"nl":return o.nl;case"bm":return o.bm;case"uk":return o.uk;case"br":return o.br;case"ch":return o.ch;case"csb":return o.csb;case"cy":return o.cy;case"ee":return o.ee;case"et":return o.et;case"eu":return o.eu;case"fuc":return o.fuc;case"fj":return o.fj;case"frp":return o.frp;case"fur":return o.fur;case"fy":return o.fy;case"ga":return o.ga;case"gd":return o.gd;case"gl":return o.gl;case"gn":return o.gn;case"gsw":return o.gsw;case"hat":return o.hat;case"haw":return o.haw;case"hr":return o.hr;case"ka":return o.ka;case"kal":return o.kal;case"kin":return o.kin;case"lb":return o.lb;case"li":return o.li;case"lin":return o.lin;case"lt":return o.lt;case"mg":return o.mg;case"mk":return o.mk;case"mri":return o.mri;case"mwl":return o.mwl;case"oci":return o.oci;case"orm":return o.orm;case"pt":return o.pt;case"roh":return o.roh;case"rup":return o.rup;case"ro":return o.ro;case"tlh":return o.tlh;case"sk":return o.sk;case"sl":return o.sl;case"sq":return o.sq;case"hu":return o.hu;case"srd":return o.srd;case"szl":return o.szl;case"tah":return o.tah;case"vec":return o.vec;case"wa":return o.wa;case"yor":return o.yor;default:return[]}}},function(a,e,t){"use strict";a.exports=function(){return[{base:"a",letters:/[\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250]/g},{base:"aa",letters:/[\uA733]/g},{base:"ae",letters:/[\u00E6\u01FD\u01E3]/g},{base:"ao",letters:/[\uA735]/g},{base:"au",letters:/[\uA737]/g},{base:"av",letters:/[\uA739\uA73B]/g},{base:"ay",letters:/[\uA73D]/g},{base:"b",letters:/[\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253]/g},{base:"c",letters:/[\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184]/g},{base:"d",letters:/[\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A]/g},{base:"dz",letters:/[\u01F3\u01C6]/g},{base:"e",letters:/[\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD]/g},{base:"f",letters:/[\u0066\u24D5\uFF46\u1E1F\u0192\uA77C]/g},{base:"g",letters:/[\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F]/g},{base:"h",letters:/[\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265]/g},{base:"hv",letters:/[\u0195]/g},{base:"i",letters:/[\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131]/g},{base:"j",letters:/[\u006A\u24D9\uFF4A\u0135\u01F0\u0249]/g},{base:"k",letters:/[\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3]/g},{base:"l",letters:/[\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747]/g},{base:"lj",letters:/[\u01C9]/g},{base:"m",letters:/[\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F]/g},{base:"n",letters:/[\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5]/g},{base:"nj",letters:/[\u01CC]/g},{base:"o",letters:/[\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275]/g},{base:"oi",letters:/[\u01A3]/g},{base:"ou",letters:/[\u0223]/g},{base:"oo",letters:/[\uA74F]/g},{base:"p",letters:/[\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755]/g},{base:"q",letters:/[\u0071\u24E0\uFF51\u024B\uA757\uA759]/g},{base:"r",letters:/[\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783]/g},{base:"s",letters:/[\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B]/g},{base:"t",letters:/[\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787]/g},{base:"tz",letters:/[\uA729]/g},{base:"u",letters:/[\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289]/g},{base:"v",letters:/[\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C]/g},{base:"vy",letters:/[\uA761]/g},{base:"w",letters:/[\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73]/g},{base:"x",letters:/[\u0078\u24E7\uFF58\u1E8B\u1E8D]/g},{base:"y",letters:/[\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF]/g},{base:"z",letters:/[\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763]/g}]}},function(a,e,t){function i(a,e){return a&&r(a,e,o)}var r=t(332),o=t(193);a.exports=i},function(a,e){function t(a){return function(e,t,i){for(var r=-1,o=Object(e),s=i(e),n=s.length;n--;){var d=s[a?n:++r];if(!1===t(o[d],d,o))break}return e}}a.exports=t},function(a,e,t){function i(a){return o(a)&&r(a)==s}var r=t(72),o=t(53),s="[object Arguments]";a.exports=i},function(a,e,t){function i(a){var e=s.call(a,d),t=a[d];try{a[d]=void 0;var i=!0}catch(a){}var r=n.call(a);return i&&(e?a[d]=t:delete a[d]),r}var r=t(142),o=Object.prototype,s=o.hasOwnProperty,n=o.toString,d=r?r.toStringTag:void 0;a.exports=i},function(a,e){function t(a){return r.call(a)}var i=Object.prototype,r=i.toString;a.exports=t},function(a,e){function t(){return!1}a.exports=t},function(a,e,t){function i(a){return s(a)&&o(a.length)&&!!n[r(a)]}var r=t(72),o=t(278),s=t(53),n={};n["[object Float32Array]"]=n["[object Float64Array]"]=n["[object Int8Array]"]=n["[object Int16Array]"]=n["[object Int32Array]"]=n["[object Uint8Array]"]=n["[object Uint8ClampedArray]"]=n["[object Uint16Array]"]=n["[object Uint32Array]"]=!0,n["[object Arguments]"]=n["[object Array]"]=n["[object ArrayBuffer]"]=n["[object Boolean]"]=n["[object DataView]"]=n["[object Date]"]=n["[object Error]"]=n["[object Function]"]=n["[object Map]"]=n["[object Number]"]=n["[object Object]"]=n["[object RegExp]"]=n["[object Set]"]=n["[object String]"]=n["[object WeakMap]"]=!1,a.exports=i},function(a,e,t){var i=t(335),r=i(Object.keys,Object);a.exports=r},function(a,e,t){function i(a,e){return function(t,i){if(null==t)return t;if(!r(t))return a(t,i);for(var o=t.length,s=e?o:-1,n=Object(t);(e?s--:++s<o)&&!1!==i(n[s],s,n););return t}}var r=t(75);a.exports=i},function(a,e,t){function i(a){return"function"==typeof a?a:r}var r=t(128);a.exports=i},function(a,e,t){function i(){this.size=0,this.__data__={hash:new r,map:new(s||o),string:new r}}var r=t(607),o=t(144),s=t(281);a.exports=i},function(a,e,t){function i(a){var e=-1,t=null==a?0:a.length;for(this.clear();++e<t;){var i=a[e];this.set(i[0],i[1])}}var r=t(608),o=t(613),s=t(614),n=t(615),d=t(616);i.prototype.clear=r,i.prototype.delete=o,i.prototype.get=s,i.prototype.has=n,i.prototype.set=d,a.exports=i},function(a,e,t){function i(){this.__data__=r?r(null):{},this.size=0}var r=t(143);a.exports=i},function(a,e,t){function i(a){return!(!s(a)||o(a))&&(r(a)?m:l).test(n(a))}var r=t(170),o=t(610),s=t(40),n=t(420),d=/[\\^$.*+?()[\]{}|]/g,l=/^\[object .+?Constructor\]$/,c=Function.prototype,u=Object.prototype,p=c.toString,g=u.hasOwnProperty,m=RegExp("^"+p.call(g).replace(d,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");a.exports=i},function(a,e,t){function i(a){return!!o&&o in a}var r=t(611),o=function(){var a=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||"");return a?"Symbol(src)_1."+a:""}();a.exports=i},function(a,e,t){var i=t(62),r=i["__core-js_shared__"];a.exports=r},function(a,e){function t(a,e){return null==a?void 0:a[e]}a.exports=t},function(a,e){function t(a){var e=this.has(a)&&delete this.__data__[a];return this.size-=e?1:0,e}a.exports=t},function(a,e,t){function i(a){var e=this.__data__;if(r){var t=e[a];return t===o?void 0:t}return n.call(e,a)?e[a]:void 0}var r=t(143),o="__lodash_hash_undefined__",s=Object.prototype,n=s.hasOwnProperty;a.exports=i},function(a,e,t){function i(a){var e=this.__data__;return r?void 0!==e[a]:s.call(e,a)}var r=t(143),o=Object.prototype,s=o.hasOwnProperty;a.exports=i},function(a,e,t){function i(a,e){var t=this.__data__;return this.size+=this.has(a)?0:1,t[a]=r&&void 0===e?o:e,this}var r=t(143),o="__lodash_hash_undefined__";a.exports=i},function(a,e){function t(){this.__data__=[],this.size=0}a.exports=t},function(a,e,t){function i(a){var e=this.__data__,t=r(e,a);return!(t<0)&&(t==e.length-1?e.pop():s.call(e,t,1),--this.size,!0)}var r=t(145),o=Array.prototype,s=o.splice;a.exports=i},function(a,e,t){function i(a){var e=this.__data__,t=r(e,a);return t<0?void 0:e[t][1]}var r=t(145);a.exports=i},function(a,e,t){function i(a){return r(this.__data__,a)>-1}var r=t(145);a.exports=i},function(a,e,t){function i(a,e){var t=this.__data__,i=r(t,a);return i<0?(++this.size,t.push([a,e])):t[i][1]=e,this}var r=t(145);a.exports=i},function(a,e,t){function i(a){var e=r(this,a).delete(a);return this.size-=e?1:0,e}var r=t(146);a.exports=i},function(a,e){function t(a){var e=typeof a;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==a:null===a}a.exports=t},function(a,e,t){function i(a){return r(this,a).get(a)}var r=t(146);a.exports=i},function(a,e,t){function i(a){return r(this,a).has(a)}var r=t(146);a.exports=i},function(a,e,t){function i(a,e){var t=r(this,a),i=t.size;return t.set(a,e),this.size+=t.size==i?0:1,this}var r=t(146);a.exports=i},function(a,e,t){function i(a){if("string"==typeof a)return a;if(s(a))return o(a,i)+"";if(n(a))return c?c.call(a):"";var e=a+"";return"0"==e&&1/a==-d?"-0":e}var r=t(142),o=t(176),s=t(39),n=t(237),d=1/0,l=r?r.prototype:void 0,c=l?l.toString:void 0;a.exports=i},function(a,e,t){(function(a,i){var r;!function(o){function s(a){throw new RangeError(O[a])}function n(a,e){for(var t=a.length,i=[];t--;)i[t]=e(a[t]);return i}function d(a,e){var t=a.split("@"),i="";return t.length>1&&(i=t[0]+"@",a=t[1]),a=a.replace(C,"."),i+n(a.split("."),e).join(".")}function l(a){for(var e,t,i=[],r=0,o=a.length;r<o;)e=a.charCodeAt(r++),e>=55296&&e<=56319&&r<o?(t=a.charCodeAt(r++),56320==(64512&t)?i.push(((1023&e)<<10)+(1023&t)+65536):(i.push(e),r--)):i.push(e);return i}function c(a){return n(a,function(a){var e="";return a>65535&&(a-=65536,e+=R(a>>>10&1023|55296),a=56320|1023&a),e+=R(a)}).join("")}function u(a){return a-48<10?a-22:a-65<26?a-65:a-97<26?a-97:w}function p(a,e){return a+22+75*(a<26)-((0!=e)<<5)}function g(a,e,t){var i=0;for(a=t?P(a/j):a>>1,a+=P(a/e);a>D*k>>1;i+=w)a=P(a/D);return P(i+(D+1)*a/(a+_))}function m(a){var e,t,i,r,o,n,d,l,p,m,f=[],b=a.length,h=0,v=E,z=q;for(t=a.lastIndexOf(S),t<0&&(t=0),i=0;i<t;++i)a.charCodeAt(i)>=128&&s("not-basic"),f.push(a.charCodeAt(i));for(r=t>0?t+1:0;r<b;){for(o=h,n=1,d=w;r>=b&&s("invalid-input"),l=u(a.charCodeAt(r++)),(l>=w||l>P((y-h)/n))&&s("overflow"),h+=l*n,p=d<=z?x:d>=z+k?k:d-z,!(l<p);d+=w)m=w-p,n>P(y/m)&&s("overflow"),n*=m;e=f.length+1,z=g(h-o,e,0==o),P(h/e)>y-v&&s("overflow"),v+=P(h/e),h%=e,f.splice(h++,0,v)}return c(f)}function f(a){var e,t,i,r,o,n,d,c,u,m,f,b,h,v,z,_=[];for(a=l(a),b=a.length,e=E,t=0,o=q,n=0;n<b;++n)(f=a[n])<128&&_.push(R(f));for(i=r=_.length,r&&_.push(S);i<b;){for(d=y,n=0;n<b;++n)(f=a[n])>=e&&f<d&&(d=f);for(h=i+1,d-e>P((y-t)/h)&&s("overflow"),t+=(d-e)*h,e=d,n=0;n<b;++n)if(f=a[n],f<e&&++t>y&&s("overflow"),f==e){for(c=t,u=w;m=u<=o?x:u>=o+k?k:u-o,!(c<m);u+=w)z=c-m,v=w-m,_.push(R(p(m+z%v,0))),c=P(z/v);_.push(R(p(c,0))),o=g(t,h,i==r),t=0,++i}++t,++e}return _.join("")}function b(a){return d(a,function(a){return A.test(a)?m(a.slice(4).toLowerCase()):a})}function h(a){return d(a,function(a){return T.test(a)?"xn--"+f(a):a})}var v=("object"==typeof e&&e&&e.nodeType,"object"==typeof a&&a&&a.nodeType,"object"==typeof i&&i);var z,y=2147483647,w=36,x=1,k=26,_=38,j=700,q=72,E=128,S="-",A=/^xn--/,T=/[^\x20-\x7E]/,C=/[\x2E\u3002\uFF0E\uFF61]/g,O={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},D=w-x,P=Math.floor,R=String.fromCharCode;z={version:"1.4.1",ucs2:{decode:l,encode:c},decode:m,encode:f,toASCII:h,toUnicode:b},void 0!==(r=function(){return z}.call(e,t,e,a))&&(a.exports=r)}()}).call(e,t(32)(a),t(9))},function(a,e,t){"use strict";a.exports={isString:function(a){return"string"==typeof a},isObject:function(a){return"object"==typeof a&&null!==a},isNull:function(a){return null===a},isNullOrUndefined:function(a){return null==a}}},function(a,e,t){"use strict";e.decode=e.parse=t(631),e.encode=e.stringify=t(294)},function(a,e,t){"use strict";function i(a,e){return Object.prototype.hasOwnProperty.call(a,e)}a.exports=function(a,e,t,o){e=e||"&",t=t||"=";var s={};if("string"!=typeof a||0===a.length)return s;var n=/\+/g;a=a.split(e);var d=1e3;o&&"number"==typeof o.maxKeys&&(d=o.maxKeys);var l=a.length;d>0&&l>d&&(l=d);for(var c=0;c<l;++c){var u,p,g,m,f=a[c].replace(n,"%20"),b=f.indexOf(t);b>=0?(u=f.substr(0,b),p=f.substr(b+1)):(u=f,p=""),g=decodeURIComponent(u),m=decodeURIComponent(p),i(s,g)?r(s[g])?s[g].push(m):s[g]=[s[g],m]:s[g]=m}return s};var r=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},,,,,,,,function(a,e,t){function i(){this.__data__=new r,this.size=0}var r=t(144);a.exports=i},function(a,e){function t(a){var e=this.__data__,t=e.delete(a);return this.size=e.size,t}a.exports=t},function(a,e){function t(a){return this.__data__.get(a)}a.exports=t},function(a,e){function t(a){return this.__data__.has(a)}a.exports=t},function(a,e,t){function i(a,e){var t=this.__data__;if(t instanceof r){var i=t.__data__;if(!o||i.length<n-1)return i.push([a,e]),this.size=++t.size,this;t=this.__data__=new s(i)}return t.set(a,e),this.size=t.size,this}var r=t(144),o=t(281),s=t(280),n=200;a.exports=i},function(a,e,t){function i(a,e,t,i,z,y,w){var x=h(a,t),k=h(e,t),_=w.get(k);if(_)return void r(a,t,_);var j=y?y(x,k,t+"",a,e,w):void 0,q=void 0===j;if(q){var E=c(k),S=!E&&p(k),A=!E&&!S&&b(k);j=k,E||S||A?c(x)?j=x:u(x)?j=n(x):S?(q=!1,j=o(k,!0)):A?(q=!1,j=s(k,!0)):j=[]:f(k)||l(k)?(j=x,l(x)?j=v(x):(!m(x)||i&&g(x))&&(j=d(k))):q=!1}q&&(w.set(k,j),z(j,k,i,y,w),w.delete(k)),r(a,t,j)}var r=t(339),o=t(568),s=t(569),n=t(570),d=t(571),l=t(182),c=t(39),u=t(389),p=t(194),g=t(170),m=t(40),f=t(572),b=t(220),h=t(341),v=t(646);a.exports=i},function(a,e,t){var i=t(40),r=Object.create,o=function(){function a(){}return function(e){if(!i(e))return{};if(r)return r(e);a.prototype=e;var t=new a;return a.prototype=void 0,t}}();a.exports=o},function(a,e,t){function i(a){return r(a,o(a))}var r=t(390),o=t(232);a.exports=i},function(a,e,t){function i(a){if(!r(a))return s(a);var e=o(a),t=[];for(var i in a)("constructor"!=i||!e&&d.call(a,i))&&t.push(i);return t}var r=t(40),o=t(175),s=t(648),n=Object.prototype,d=n.hasOwnProperty;a.exports=i},function(a,e){function t(a){var e=[];if(null!=a)for(var t in Object(a))e.push(t);return e}a.exports=t},function(a,e,t){var i=t(650),r=t(340),o=t(128),s=r?function(a,e){return r(a,"toString",{configurable:!0,enumerable:!1,value:i(e),writable:!0})}:o;a.exports=s},function(a,e){function t(a){return function(){return a}}a.exports=t},function(a,e){function t(a){var e=0,t=0;return function(){var s=o(),n=r-(s-t);if(t=s,n>0){if(++e>=i)return arguments[0]}else e=0;return a.apply(void 0,arguments)}}var i=800,r=16,o=Date.now;a.exports=t},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){"use strict";var i=new RegExp("^[\\–\\-\\(\\)_\\[\\]’“”\"'.?!:;,¿¡«»‹›—×+&<>]+"),r=new RegExp("[\\–\\-\\(\\)_\\[\\]’“”\"'.?!:;,¿¡«»‹›—×+&<>]+$");a.exports=function(a){return a=a.replace(i,""),a=a.replace(r,"")}},function(a,e,t){function i(a,e){return r(a)?a:o(a,e)?[a]:s(n(a))}var r=t(39),o=t(1034),s=t(1237),n=t(365);a.exports=i},function(a,e,t){"use strict";(function(e){function t(a,t,i,r){if("function"!=typeof a)throw new TypeError('"callback" argument must be a function');var o,s,n=arguments.length;switch(n){case 0:case 1:return e.nextTick(a);case 2:return e.nextTick(function(){a.call(null,t)});case 3:return e.nextTick(function(){a.call(null,t,i)});case 4:return e.nextTick(function(){a.call(null,t,i,r)});default:for(o=new Array(n-1),s=0;s<o.length;)o[s++]=arguments[s];return e.nextTick(function(){a.apply(null,o)})}}!e.version||0===e.version.indexOf("v0.")||0===e.version.indexOf("v1.")&&0!==e.version.indexOf("v1.8.")?a.exports={nextTick:t}:a.exports=e}).call(e,t(141))},function(a,e,t){function i(a,e){for(var t in a)e[t]=a[t]}function r(a,e,t){return s(a,e,t)}var o=t(1043),s=o.Buffer;s.from&&s.alloc&&s.allocUnsafe&&s.allocUnsafeSlow?a.exports=o:(i(o,e),e.Buffer=r),i(s,r),r.from=function(a,e,t){if("number"==typeof a)throw new TypeError("Argument must not be a number");return s(a,e,t)},r.alloc=function(a,e,t){if("number"!=typeof a)throw new TypeError("Argument must be a number");var i=s(a);return void 0!==e?"string"==typeof t?i.fill(e,t):i.fill(e):i.fill(0),i},r.allocUnsafe=function(a){if("number"!=typeof a)throw new TypeError("Argument must be a number");return s(a)},r.allocUnsafeSlow=function(a){if("number"!=typeof a)throw new TypeError("Argument must be a number");return o.SlowBuffer(a)}},function(a,e,t){function i(a){var e=r(a),t=e%1;return e===e?t?e-t:e:0}var r=t(1133);a.exports=i},function(a,e,t){"use strict";var i=t(1049),r=t(1372),o=t(398),s=t(1050)().cannotBeBetweenPassiveAuxiliaryAndParticiple,n=t(1051)().cannotBeBetweenPassiveAuxiliaryAndParticiple,d=t(1053)().cannotBeBetweenPassiveAuxiliaryAndParticiple,l=t(1054)().cannotBeBetweenPassiveAuxiliaryAndParticiple;a.exports=function(a,e,t){var c;switch(t){case"fr":c=o(s);break;case"es":c=o(d);break;case"it":c=o(l);break;case"en":default:c=o(n)}var u=i(a,c);return r(u,e)}},function(a,e,t){"use strict";var i=["allé","arrivé","décédé","demeuré","entré","été","né","resté","retombé","tombé","achalandé","aéroporté","affilé","affixé","âgé","aîné","aisé","aligoté","alizé","alliacé","alluré","alphabétisé","alvéolé","aminé","ammoniaqué","ampoulé","archi-prouvé","archi-usé","asexué","autoguidé","autopropulsé","aviné","baleiné","barbelé","baryté","bien-aimé","bisexué","bouqueté","brioché","burkinabé","cagoulé","calamistré","cannelé","carabiné","carboné","caréné","carié","carminé","carné","carpé","censé","cérusé","charançonné","chenillé","chocolaté","chtarbé","citronné","cofondé","contrecollé","côtelé","courbaturé","crawlé","crossé","crustacé","cutané","damasquiné","damassé","débellé","décavé","déguenillé","demi-paralysé","denté","dépenaillé","désenchanté","désodé","diapré","ébranché","écervelé","effréné","effronté","éhonté","embourgeoisé","embroussaillé","embruiné","émerillonné","encalminé","encaustiqué","encorné","endiablé","endiamanté","enfoiré","enfouraillé","ensellé","entrelardé","éploré","ergoté","erroné","étagé","éthéré","éversé","éwé","ex-associé","exorbité","expansé","famé","férié","fibré","filoguidé","flammé","fleurdelisé","fliqué","flûté","forcené","fortuné","foulbé","frelaté","friqué","futé","gazonné","gracieusé","gradé","granulé","herminé","hiérarchisé","huppé","hydrogéné","igné","illettré","illimité","imbriqué","immaculé","immérité","immodéré","immunodéprimé","impayé","impensé","impollué","imprononcé","inaccoutumé","inachevé","inactivé","inadapté","inaltéré","inanimé","inapproprié","inarticulé","inavoué","inchangé","inconditionné","inconsidéré","inconsolé","incontesté","incontrôlé","incréé","indéfriché","indéterminé","indifférencié","indiscipliné","indiscuté","indivisé","indompté","inébranlé","inemployé","inentamé","inespéré","inexpérimenté","inexpliqué","inexploité","inexploré","inexprimé","infondé","informulé","infortuné","inhabité","inimité","injustifié","inné","innommé","inoccupé","inopiné","inorganisé","inoublié","insensé","insoupçonné","instantané","insubordonné","insurpassé","intentionné","interallié","intouché","inusité","inutilisé","invertébré","inviolé","iodé","irraisonné","irréalisé","lacté","lamé","lamifié","larvé","laryngé","léopardé","lettré","lié","lifté","losangé","luné","lunetté","madré","maillé","malaisé","malavisé","maléficié","malfamé","malformé","malintentionné","mendé","ménopausé","mentholé","mi-accablé","mi-allongé","mi-café","mi-consterné","mi-enterré","mi-étonné","mi-pincé","mi-terrorisé","miellé","millimétré","miraculé","momentané","monoclé","monté","mordoré","mort-né","névrosé","nitré","non-initié","nouveau-né","olé-olé","ongulé","paillé","palé","papilionacé","paqueté","paraffiné","passé","pasteurisé","patenté","paysagé","pédonculé","pestiféré","platiné","pocheté","polychromé","poplité","potelé","pourpré","praliné","précité","prédigéré","préencollé","préfabriqué","prématuré","premier-né","préprogrammé","prostré","protéiné","pyramidé","quadrilobé","racé","re-café","re-rêvé","re-vérifié","rebarré","redécoré","relargué","remonté","rentré","résiné","ressuscité","réticulé","retourné","revérifié","revivifié","rose-thé","safrané","satiné","saumoné","sébacé","sensé","sexué","sigillé","silicosé","simultané","sinistré","soufré","sous-cutané","sous-développé","sous-qualifié","soussigné","spiralé","spontané","stratifié","sulfaté","sulfuré","sulfurisé","suractivé","suranné","surbooké","surbrodé","surdéveloppé","surdimensionné","surdoué","surentraîné","suroxygéné","surpeuplé","surqualifié","susmentionné","susnommé","systématisé","tarabiscoté","taupé","thrombosé","tiercé","timoré","tiqueté","transcutané","triphasé","usagé","usité","vallonné","vanillé","vascularisé","veinulé","venté","vergé","vert-de-grisé","vertébré","vitaminé","vulcanisé","zélé"],r=["à-côté","abbé","absurdité","accessibilité","acerbité","acidité","acmé","acné","âcreté","activité","actualité","acuité","adaptabilité","adiposité","admissibilité","adversité","affabilité","affectivité","affidé","affinité","agilité","agressivité","alacrité","alcalinité","altérité","amabilité","ambiguïté","amé","aménité","américanité","amirauté","amitié","amoralité","ancestralité","ancienneté","anfractuosité","angulosité","animalité","animosité","anormalité","anti-acné","anti-cité","anti-criminalité","anti-gravité","anti-intimité","anti-société","antigravité","antiquité","anxiété","aparté","applicabilité","âpreté","archevêché","aridité","artificialité","asexualité","asociabilité","aspérité","assiduité","astarté","atrocité","austérité","authenticité","autodafé","autorité","avé","aveugle-né","avidité","ébriété","effectivité","efficacité","égalité","élasticité","électricité","élément-clé","élémentarité","éligibilité","émotivité","empaffé","énormité","entièreté","entité","enviandé","épitomé","équanimité","équité","étanchéité","éternité","ethnicité","étrangéité","étrangeté","euromarché","évêché","éventualité","ex-abbé","ex-fiancé","excentricité","exclusivité","exemplarité","exhaustivité","exiguïté","extériorité","externalité","exterritorialité","extrémité","idée-clé","identité","illégalité","illégitimité","imbécillité","immatérialité","immaturité","immédiateté","immensité","immobilité","immoralité","immortalité","immuabilité","immunité","immutabilité","impalpabilité","impartialité","impassibilité","impeccabilité","impécuniosité","impénétrabilité","imperméabilité","impersonnalité","impétuosité","impiété","implacabilité","impopularité","impossibilité","impraticabilité","imprévisibilité","improbabilité","impudicité","impulsivité","impunité","impureté","inaccessibilité","inactivité","inanité","inauthenticité","incapacité","incommodité","incommunicabilité","incompatibilité","incongruité","incorruptibilité","incrédibilité","incrédulité","incuriosité","indemnité","indestructibilité","indignité","indisponibilité","individualité","indivisibilité","indocilité","industrie-clé","inefficacité","inégalité","inéligibilité","inéluctabilité","inévitabilité","inexorabilité","infaillibilité","infécondité","infériorité","infertilité","infidélité","infinité","infirmité","inflammabilité","inflexibilité","ingéniosité","ingénuité","inhospitalité","inhumanité","inimitié","iniquité","innocuité","inopportunité","insalubrité","insanité","insécurité","insensibilité","inséparabilité","insincérité","insipidité","insonorité","instabilité","instantanéité","insularité","intangibilité","intégralité","intégrité","intelligibilité","intemporalité","intensité","intentionnalité","interactivité","intériorité","intimité","intrépidité","inusabilité","inutilité","invalidité","inventivité","invincibilité","inviolabilité","invisibilité","invulnérabilité","irrationalité","irréalité","irrecevabilité","irrégularité","irréligiosité","irresponsabilité","irréversibilité","irrévocabilité","irritabilité","obésité","objectivité","obliquité","obscénité","obscurité","obséquiosité","officialité","oiseau-clé","oisiveté","okoumé","onctuosité","opacité","opiniâtreté","opportunité","oralité","originalité","ubiquité","ukulélé","unanimité","unicité","uniformité","unilatéralité","unité","universalité","université","urbanité","utilité","yé-yé","yéyé","achillée","almée","aménorrhée","année","anti-nausée","apnée","apogée","araignée","arrière-pensée","assiettée","athénée","auloffée","aveugle-née","avrillée","azalée","échauffourée","écuellée","élysée","embardée","empyrée","épée","épopée","étuvée","ex-allée","ex-dulcinée","ex-fiancée","ex-lycée","idée","ipomée","odyssée","onomatopée","orchidée","orée","orphée","urée"],o=["banalité","bas-côté","beaupré","beauté","bébé","bédé","bénédicité","bénignité","bestialité","bien-fondé","biodiversité","bipolarité","bisexualité","blé","bonté","bout-rimé","bovidé","brièveté","brutalité","caducité","café","callosité","camélidé","canapé","capacité","capillarité","captivité","carte-clé","caté","catholicité","causalité","causticité","cavité","cécité","célébrité","célérité","cérébralité","cétacé","charité","chassé-croisé","chasteté","cherté","chétivité","chimpanzé","chrétienté","ciné","cinéma-vérité","circularité","citoyenneté","civilité","clandé","clandestinité","clarté","clé","clergé","co-propriété","coaccusé","cochonceté","code-clé","collectivité","collégialité","combativité","comestibilité","comité","commodité","communauté","communicabilité","compacité","comparabilité","compatibilité","compétitivité","complémentarité","complexité","complicité","comptabilité","comté","concavité","condé","conductibilité","conductivité","confidentialité","conformité","confraternité","congé","conjugalité","connectivité","consanguinité","constitutionnalité","contiguïté","continuité","contrariété","contre-gré","contre-plaqué","contre-vérité","contreplaqué","contrevérité","convexité","convivialité","coopé","copropriété","cordialité","coré","coriacité","corporalité","côté","créativité","crédibilité","crédulité","crétacé","criminalité","cruauté","crudité","culpabilité","cupidité","curiosité","cybercafé","cyprinidé","dangerosité","daphné","dé","débotté","décimalité","décision-clé","déclivité","déductibilité","défectuosité","degré","déité","déloyauté","demi-clarté","demi-degré","demi-liberté","demi-obscurité","demi-vérité","dénatalité","densité","député","dératé","dernier-né","désirabilité","dextérité","difficulté","difformité","dignité","discontinuité","disparité","disponibilité","diversité","divinité","docilité","domesticité","doyenné","dualité","duché","duplicité","durabilité","dureté","faculté","faillibilité","faisabilité","familiarité","fatalité","fatuité","fausseté","fébrilité","fécondité","félidé","félinité","féminité","féodalité","fermeté","férocité","ferté","fertilité","festivité","fétidité","fiabilité","fibrillé","fidélité","fierté","finalité","fiscalité","fixité","flaccidité","flatuosité","flexibilité","flexuosité","flottabilité","fluidité","fonctionnalité","formalité","fossé","fragilité","francité","fraternité","friabilité","frigidité","frilosité","fringillidé","frivolité","frugalité","fugacité","furtivité","futilité","gaieté","gaîté","gallinacé","gémellité","généralité","générosité","génialité","génitalité","germanité","gibbosité","globalité","godemiché","gracieuseté","gracilité","grand-duché","granité","gratuité","gravidité","gré","grossièreté","habileté","habitabilité","haute-fidélité","henné","hérédité","hétérogénéité","hétérosexualité","hilarité","histocompatibilité","historicité","homme-clé","homogénéité","homosexualité","honnêteté","honorabilité","horizontalité","hospitalité","hostilité","humanité","humidité","humilité","hyperacidité","hyperactivité","hypercoagulabilité","hyperémotivité","hypermarché","hyperréactivité","hypersensibilité","jovialité","joyeuseté","jubé","judaïcité","judaïté","judéité","juvénilité","karaoké","karaté","karité","kiné","koré","lâcheté","laïcité","lamedé","lascivité","latéralité","latinité","laubé","laxité","lé","légalité","légèreté","légitimité","lèse-majesté","létalité","lettre-clé","libéralité","liberté","licéité","limpidité","liquidité","lisibilité","littéralité","lividité","localité","longanimité","longévité","loquacité","loyauté","lubricité","lucidité","luminosité","macramé","magnanimité","majesté","majorité","mal-aimé","mal-baisé","malhonnêteté","malignité","malinké","malléabilité","malpropreté","maniabilité","manoeuvrabilité","marginalité","masculinité","maskinongé","massivité","matérialité","maternité","matité","maturité","mauvaiseté","méchanceté","médiocrité","médiumnité","mémé","mémorabilité","mendicité","mensualité","mentalité","merveillosité","méticulosité","mi-capacité","mi-été","mi-meublé","mi-porté","mi-réalité","mi-résigné","miché","microgravité","minorité","mitoyenneté","mixité","mobilité","mocheté","modalité","modernité","modicité","moment-clé","mondanité","monstruosité","mont-de-piété","monumentalité","mooré","moralité","morbidité","morosité","mortalité","mot-clé","motilité","motricité","mousmé","mucosité","multiplicité","multipropriété","municipalité","musicalité","mutabilité","mutité","mutualité","naïveté","narghilé","narguilé","natalité","nationalité","nativité","navigabilité","nébulosité","négativité","néné","nervosité","nescafé","netteté","neutralité","névé","niakoué","niébé","nocivité","non-conformité","non-culpabilité","nordicité","normalité","notabilité","notoriété","nouveauté","nouvelleté","nubilité","nudité","nue-propriété","nullité","nuptialité","papauté","papé","parenté","parité","partialité","particularité","passiveté","passivité","pâté","paternité","pause-café","pauses-café","pauvreté","pédé","pédégé","pénalité","pépé","pérennité","perfectibilité","périodicité","perméabilité","permissivité","péroné","perpétuité","perplexité","perré","personnage-clé","personnalité","perspicacité","perversité","pèse-bébé","petit-salé","photosensibilité","phrase-clé","pilosité","pisé","pitié","placidité","plasticité","plausibilité","pluralité","pluviosité","point-clé","poiré","poire-vérité","polarité","polycopié","polytonalité","ponctualité","pongé","popularité","porosité","portabilité","porte-bébé","porte-clé","position-clé","positivité","possessivité","possibilité","poste-clé","postérité","potentialité","pousse-café","pré","pré-salé","précarité","préciosité","précocité","prématurité","prévisibilité","prévôté","prieuré","primauté","principauté","priorité","privauté","probabilité","probité","prodigalité","productivité","profitabilité","prolixité","promiscuité","proportionnalité","propreté","propriété","prospérité","proximité","psyché","puberté","publicité","pudicité","puérilité","pugnacité","puîné","pureté","pusillanimité","qualité","quantité","quarté","quasi-impossibilité","quasi-impunité","quasi-nudité","quasi-totalité","quasi-unanimité","question-clé","quinté","quotidienneté","quotité","radioactivité","raisiné","rapacité","raphé","rapidité","rareté","rationalité","raucité","ré","réactivité","réalité","récépissé","réceptivité","recevabilité","réciprocité","récré","régularité","relativité","religiosité","rentabilité","reportage-vérité","respectabilité","responsabilité","réversibilité","rigidité","risibilité","rivalité","romanité","rotondité","roulé-boulé","royauté","rugosité","rusticité","sagacité","saint-honoré","sainteté","saké","salacité","saleté","salinité","salmonidé","salubrité","santé","sapidité","satiété","sauveté","scène-clé","scientificité","scissiparité","scolarité","scrupulosité","sécurité","sédentarité","sélectivité","semi-liberté","séné","sénevé","sénilité","sensibilité","sensorialité","sensualité","sentimentalité","septicité","sérénité","sergé","séropositivité","sérosité","serviabilité","servilité","sévérité","sexualité","similarité","simplicité","simultanéité","sincérité","singularité","sinuosité","sobriété","sociabilité","société","solennité","solidarité","solidité","solubilité","soluté","solvabilité","sommité","somptuosité","sonorité","sordidité","sororité","soudaineté","sous-comité","sous-humanité","souveraineté","spasticité","spécialité","spécificité","sphéricité","spiritualité","spontanéité","sportivité","spumosité","stabilité","sténopé","stérilité","stupidité","suavité","subjectivité","sublimité","subtilité","succédané","suggestibilité","suggestivité","superficialité","superfluité","supériorité","supermarché","supraconductivité","suractivité","surcapacité","surdité","sûreté","surgé","surhumanité","surintensité","surréalité","susceptibilité","suzeraineté","synthé","taboulé","taciturnité","tamouré","tangibilité","tarpé","technicité","télé","témérité","témoin-clé","temporalité","ténacité","tendreté","ténébrionidé","ténuité","territorialité","tévé","thé","théâtralité","tiaré","timidité","tollé","tonalité","tonicité","totalité","toxicité","traçabilité","tranquillité","translucidité","transsexualité","trinité","trivialité","tsé-tsé","tubérosité","turbé","vacuité","vahiné","validité","vanité","variabilité","variété","vassalité","vastité","velléité","vélocité","vénalité","vénusté","véracité","verbosité","vérité","versatilité","verticalité","vétusté","viabilité","vicinalité","vicomté","viduité","virginité","virilité","virtualité","virtuosité","viscosité","visibilité","vitalité","vivacité","volatilité","volonté","volubilité","volupté","voracité","vulgarité","vulnérabilité","batée","becquée","billevesée","bolée","bondrée","borée","bouée","bougainvillée","brouettée","buée","caducée","canne-épée","casserolée","cavée","centaurée","cépée","céphalée","charretée","chaudronnée","chicorée","chorée","cochlée","cochonnée","colée","contre-allée","contre-plongée","corvée","coryphée","cucurbitacée","cuillerée","culée","cylindrée","demi-journée","demi-volée","denrée","dernière-née","diarrhée","diatomée","dionée","dragée","dulcinée","dysménorrhée","dyspnée","fée","feuillée","flopée","fournée","fricassée","friselée","galathée","galée","giboulée","giroflée","gonorrhée","goulée","graminée","guinée","gynécée","haquenée","hottée","hyménée","hyperborée","hypogée","journée","lance-fusée","litée","logorrhée","lycée","macchabée","mainlevée","maisonnée","mal-aimée","mal-baisée","maréchaussée","marée","mausolée","mélopée","mi-effrontée","mi-journée","miellée","mijaurée","mosquée","moteur-fusée","muflée","nausée","nuée","nuitée","panacée","pâtée","peignée","pelletée","pépée","périgée","périnée","pharmacopée","pipée","platée","pochetée","pochetée","poignée","poirée","poisson-épée","porte-épée","potée","poupée","première-née","prérentrée","presse-purée","prytanée","purée","quasi-fiancée","ramée","raz-de-marée","resucée","rétrofusée","rez-de-chaussée","risée","ruchée","scarabée","séborrhée","sigisbée","simagrée","singe-araignée","soirée","solanacée","tablée","tinée","trachée","trâlée","transfusée","travée","trépanée","trochée","trophée","vallée","ventrée","vesprée"],s=["bé","cré","crédié","é","loucedé","eussé","hé","malgré","moitié-moitié","ohé","olé","ollé","sacrédié","d'emblée","quasi-instantanée"];a.exports=function(){return{adjectivesVerbs:i,nounsStartingWithVowel:r,nounsStartingWithConsonant:o,others:s}}},function(a,e,t){"use strict";var i=t(1433),r=t(124);a.exports=function(a,e){var t=r(a);return i(e,t)>-1}},,,,,,,,,,function(a,e,t){"use strict";a.exports=function(a){return a.replace(new RegExp("<yoastmark[^>]*>","g"),"").replace(new RegExp("</yoastmark>","g"),"")}},function(a,e,t){function i(a){var e=-1,t=null==a?0:a.length;for(this.__data__=new r;++e<t;)this.add(a[e])}var r=t(280),o=t(1225),s=t(1226);i.prototype.add=i.prototype.push=o,i.prototype.has=s,a.exports=i},function(a,e){function t(a,e){return a.has(e)}a.exports=t},function(a,e){function t(a,e){for(var t=-1,i=null==a?0:a.length,r=0,o=[];++t<i;){var s=a[t];e(s,t,a)&&(o[r++]=s)}return o}a.exports=t},function(a,e,t){var i=t(1231),r=t(281),o=t(1232),s=t(1099),n=t(1233),d=t(72),l=t(420),c=l(i),u=l(r),p=l(o),g=l(s),m=l(n),f=d;(i&&"[object DataView]"!=f(new i(new ArrayBuffer(1)))||r&&"[object Map]"!=f(new r)||o&&"[object Promise]"!=f(o.resolve())||s&&"[object Set]"!=f(new s)||n&&"[object WeakMap]"!=f(new n))&&(f=function(a){var e=d(a),t="[object Object]"==e?a.constructor:void 0,i=t?l(t):"";if(i)switch(i){case c:return"[object DataView]";case u:return"[object Map]";case p:return"[object Promise]";case g:return"[object Set]";case m:return"[object WeakMap]"}return e}),a.exports=f},function(a,e,t){"use strict";a.exports=function(a){return"<yoastmark class='yoast-text-mark'>"+a+"</yoastmark>"}},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){"use strict";var i=function(a){return-1===a?"error":0===a?"feedback":a<=4?"bad":a>4&&a<=7?"ok":a>7?"good":""};a.exports=i},,,,,,,function(a,e){function t(a){var e=-1,t=Array(a.size);return a.forEach(function(a){t[++e]=a}),t}a.exports=t},function(a,e,t){function i(a,e){e=r(e,a);for(var t=0,i=e.length;null!=a&&t<i;)a=a[o(e[t++])];return t&&t==i?a:void 0}var r=t(733),o=t(556);a.exports=i},function(a,e,t){function i(a,e){if(r(a))return!1;var t=typeof a;return!("number"!=t&&"symbol"!=t&&"boolean"!=t&&null!=a&&!o(a))||(n.test(a)||!s.test(a)||null!=e&&a in Object(e))}var r=t(39),o=t(237),s=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;a.exports=i},function(a,e,t){function i(a){return a&&a.length?r(a):[]}var r=t(1109);a.exports=i},function(a,e,t){function i(a,e,t){return e===e?s(a,e,t):r(a,o,t)}var r=t(1110),o=t(1245),s=t(1246);a.exports=i},function(a,e,t){"use strict";var i=t(1115),r=t(1038),o=t(1430),s=t(33),n=t(1432).showTrace,d=t(41),l=t(170),c=t(24),u=t(115),p=t(68),g=t(1132),m=t(1046),f=function(a,e){this.setI18n(a),this._assessments=[],this._options=e||{}};f.prototype.setI18n=function(a){if(d(a))throw new r("The assessor requires an i18n object.");this.i18n=a},f.prototype.getAvailableAssessments=function(){return this._assessments},f.prototype.isApplicable=function(a,e,t){return!a.hasOwnProperty("isApplicable")&&"function"!=typeof a.isApplicable||a.isApplicable(e,t)},f.prototype.hasMarker=function(a){return!(!d(window)&&!d(window.yoastHideMarkers)&&window.yoastHideMarkers)&&(l(this._options.marker)&&(a.hasOwnProperty("getMarks")||"function"==typeof a.getMarks))},f.prototype.getSpecificMarker=function(){return this._options.marker},f.prototype.getPaper=function(){return this._lastPaper},f.prototype.getMarker=function(a,e,t){var i=this._options.marker;return function(){var r=a.getMarks(e,t);r=o(r),i(e,r)}},f.prototype.assess=function(a){var e=new i(a),t=this.getAvailableAssessments();this.results=[],t=u(t,function(t){return this.isApplicable(t,a,e)}.bind(this)),this.setHasMarkers(!1),this.results=p(t,this.executeAssessment.bind(this,a,e)),this._lastPaper=a},f.prototype.setHasMarkers=function(a){this._hasMarkers=a},f.prototype.hasMarkers=function(){return this._hasMarkers},f.prototype.executeAssessment=function(a,e,t){var i;try{i=t.getResult(a,e,this.i18n),i.setIdentifier(t.identifier),i.hasMarks()&&this.hasMarker(t)&&(this.setHasMarkers(!0),i.setMarker(this.getMarker(t,a,e)))}catch(a){n(a),i=new s,i.setScore(-1),i.setText(this.i18n.sprintf(this.i18n.dgettext("js-text-analysis","An error occurred in the '%1$s' assessment"),t.identifier,a))}return i},f.prototype.getValidResults=function(){return u(this.results,function(a){return this.isValidResult(a)}.bind(this))},f.prototype.isValidResult=function(a){return a.hasScore()&&a.hasText()},f.prototype.calculateOverallScore=function(){var a=this.getValidResults(),e=0;return c(a,function(a){e+=a.getScore()}),Math.round(e/(9*a.length)*100)||0},f.prototype.addAssessment=function(a,e){return e.hasOwnProperty("identifier")||(e.identifier=a),this._assessments.push(e),!0},f.prototype.removeAssessment=function(a){var e=g(this._assessments,function(e){return e.hasOwnProperty("identifier")&&a===e.identifier});-1!==e&&this._assessments.splice(e,1)},f.prototype.getAssessment=function(a){return m(this._assessments,function(e){return e.hasOwnProperty("identifier")&&a===e.identifier})},f.prototype.getApplicableAssessments=function(){var a=this.getAvailableAssessments();return u(a,function(a){return this.isApplicable(a,this.getPaper())}.bind(this))},a.exports=f},function(a,e,t){"use strict";a.exports=function(a){Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.message=a},t(86).inherits(a.exports,Error)},function(a,e,t){"use strict";function i(a){return a.split("#")[0]}function r(a){return a.split("?")[0]}function o(a){return a.replace(/\/$/,"")}function s(a){return o(a)+"/"}function n(a){var e=m.exec(a);return null===e?"":e[2]}function d(a,e){return a=r(i(a)),e=r(i(e)),s(a)===s(e)}function l(a){return a=f.parse(a),a.hostname}function c(a){return f.parse(a).protocol}function u(a,e){var t=f.parse(a,!1,!0);return-1===a.indexOf("//")&&0===a.indexOf("/")||0!==a.indexOf("#")&&(!t.host||t.host===e)}function p(a){return!!a&&("http:"===a||"https:"===a)}function g(a){return 0===a.indexOf("#")}var m=/href=(["'])([^"']+)\1/i,f=t(566);a.exports={removeHash:i,removeQueryArgs:r,removeTrailingSlash:o,addTrailingSlash:s,getFromAnchorTag:n,areEqual:d,getHostname:l,getProtocol:c,isInternalLink:u,protocolIsHttpScheme:p,isRelativeFragmentURL:g}},function(a,e){a.exports={Aacute:"Á",aacute:"á",Abreve:"Ă",abreve:"ă",ac:"∾",acd:"∿",acE:"∾̳",Acirc:"Â",acirc:"â",acute:"´",Acy:"А",acy:"а",AElig:"Æ",aelig:"æ",af:"⁡",Afr:"𝔄",afr:"𝔞",Agrave:"À",agrave:"à",alefsym:"ℵ",aleph:"ℵ",Alpha:"Α",alpha:"α",Amacr:"Ā",amacr:"ā",amalg:"⨿",amp:"&",AMP:"&",andand:"⩕",And:"⩓",and:"∧",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angmsd:"∡",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",Aogon:"Ą",aogon:"ą",Aopf:"𝔸",aopf:"𝕒",apacir:"⩯",ap:"≈",apE:"⩰",ape:"≊",apid:"≋",apos:"'",ApplyFunction:"⁡",approx:"≈",approxeq:"≊",Aring:"Å",aring:"å",Ascr:"𝒜",ascr:"𝒶",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",barwed:"⌅",Barwed:"⌆",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",Bcy:"Б",bcy:"б",bdquo:"„",becaus:"∵",because:"∵",Because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",Beta:"Β",beta:"β",beth:"ℶ",between:"≬",Bfr:"𝔅",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bNot:"⫭",bnot:"⌐",Bopf:"𝔹",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxdl:"┐",boxdL:"╕",boxDl:"╖",boxDL:"╗",boxdr:"┌",boxdR:"╒",boxDr:"╓",boxDR:"╔",boxh:"─",boxH:"═",boxhd:"┬",boxHd:"╤",boxhD:"╥",boxHD:"╦",boxhu:"┴",boxHu:"╧",boxhU:"╨",boxHU:"╩",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxuL:"╛",boxUl:"╜",boxUL:"╝",boxur:"└",boxuR:"╘",boxUr:"╙",boxUR:"╚",boxv:"│",boxV:"║",boxvh:"┼",boxvH:"╪",boxVh:"╫",boxVH:"╬",boxvl:"┤",boxvL:"╡",boxVl:"╢",boxVL:"╣",boxvr:"├",boxvR:"╞",boxVr:"╟",boxVR:"╠",bprime:"‵",breve:"˘",Breve:"˘",brvbar:"¦",bscr:"𝒷",Bscr:"ℬ",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsolb:"⧅",bsol:"\\",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",Bumpeq:"≎",bumpeq:"≏",Cacute:"Ć",cacute:"ć",capand:"⩄",capbrcup:"⩉",capcap:"⩋",cap:"∩",Cap:"⋒",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",Ccaron:"Č",ccaron:"č",Ccedil:"Ç",ccedil:"ç",Ccirc:"Ĉ",ccirc:"ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",Cdot:"Ċ",cdot:"ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",CenterDot:"·",cfr:"𝔠",Cfr:"ℭ",CHcy:"Ч",chcy:"ч",check:"✓",checkmark:"✓",Chi:"Χ",chi:"χ",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cir:"○",cirE:"⧃",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",colon:":",Colon:"∷",Colone:"⩴",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",conint:"∮",Conint:"∯",ContourIntegral:"∮",copf:"𝕔",Copf:"ℂ",coprod:"∐",Coproduct:"∐",copy:"©",COPY:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",cross:"✗",Cross:"⨯",Cscr:"𝒞",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cupbrcap:"⩈",cupcap:"⩆",CupCap:"≍",cup:"∪",Cup:"⋓",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dagger:"†",Dagger:"‡",daleth:"ℸ",darr:"↓",Darr:"↡",dArr:"⇓",dash:"‐",Dashv:"⫤",dashv:"⊣",dbkarow:"⤏",dblac:"˝",Dcaron:"Ď",dcaron:"ď",Dcy:"Д",dcy:"д",ddagger:"‡",ddarr:"⇊",DD:"ⅅ",dd:"ⅆ",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",Delta:"Δ",delta:"δ",demptyv:"⦱",dfisht:"⥿",Dfr:"𝔇",dfr:"𝔡",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",diamond:"⋄",Diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",DJcy:"Ђ",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",Dopf:"𝔻",dopf:"𝕕",Dot:"¨",dot:"˙",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrowBar:"⤓",downarrow:"↓",DownArrow:"↓",Downarrow:"⇓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVectorBar:"⥖",DownLeftVector:"↽",DownRightTeeVector:"⥟",DownRightVectorBar:"⥗",DownRightVector:"⇁",DownTeeArrow:"↧",DownTee:"⊤",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",Dscr:"𝒟",dscr:"𝒹",DScy:"Ѕ",dscy:"ѕ",dsol:"⧶",Dstrok:"Đ",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",DZcy:"Џ",dzcy:"џ",dzigrarr:"⟿",Eacute:"É",eacute:"é",easter:"⩮",Ecaron:"Ě",ecaron:"ě",Ecirc:"Ê",ecirc:"ê",ecir:"≖",ecolon:"≕",Ecy:"Э",ecy:"э",eDDot:"⩷",Edot:"Ė",edot:"ė",eDot:"≑",ee:"ⅇ",efDot:"≒",Efr:"𝔈",efr:"𝔢",eg:"⪚",Egrave:"È",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",Emacr:"Ē",emacr:"ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp13:" ",emsp14:" ",emsp:" ",ENG:"Ŋ",eng:"ŋ",ensp:" ",Eogon:"Ę",eogon:"ę",Eopf:"𝔼",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",Epsilon:"Ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",escr:"ℯ",Escr:"ℰ",esdot:"≐",Esim:"⩳",esim:"≂",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",exponentiale:"ⅇ",ExponentialE:"ⅇ",fallingdotseq:"≒",Fcy:"Ф",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",Ffr:"𝔉",ffr:"𝔣",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",Fopf:"𝔽",fopf:"𝕗",forall:"∀",ForAll:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",Fscr:"ℱ",gacute:"ǵ",Gamma:"Γ",gamma:"γ",Gammad:"Ϝ",gammad:"ϝ",gap:"⪆",Gbreve:"Ğ",gbreve:"ğ",Gcedil:"Ģ",Gcirc:"Ĝ",gcirc:"ĝ",Gcy:"Г",gcy:"г",Gdot:"Ġ",gdot:"ġ",ge:"≥",gE:"≧",gEl:"⪌",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",gescc:"⪩",ges:"⩾",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",Gfr:"𝔊",gfr:"𝔤",gg:"≫",Gg:"⋙",ggg:"⋙",gimel:"ℷ",GJcy:"Ѓ",gjcy:"ѓ",gla:"⪥",gl:"≷",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gnE:"≩",gneq:"⪈",gneqq:"≩",gnsim:"⋧",Gopf:"𝔾",gopf:"𝕘",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",gtcc:"⪧",gtcir:"⩺",gt:">",GT:">",Gt:"≫",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",HARDcy:"Ъ",hardcy:"ъ",harrcir:"⥈",harr:"↔",hArr:"⇔",harrw:"↭",Hat:"^",hbar:"ℏ",Hcirc:"Ĥ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",Hfr:"ℌ",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",Hopf:"ℍ",horbar:"―",HorizontalLine:"─",hscr:"𝒽",Hscr:"ℋ",hslash:"ℏ",Hstrok:"Ħ",hstrok:"ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",Iacute:"Í",iacute:"í",ic:"⁣",Icirc:"Î",icirc:"î",Icy:"И",icy:"и",Idot:"İ",IEcy:"Е",iecy:"е",iexcl:"¡",iff:"⇔",ifr:"𝔦",Ifr:"ℑ",Igrave:"Ì",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",IJlig:"IJ",ijlig:"ij",Imacr:"Ī",imacr:"ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",Im:"ℑ",imof:"⊷",imped:"Ƶ",Implies:"⇒",incare:"℅",in:"∈",infin:"∞",infintie:"⧝",inodot:"ı",intcal:"⊺",int:"∫",Int:"∬",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"⁣",InvisibleTimes:"⁢",IOcy:"Ё",iocy:"ё",Iogon:"Į",iogon:"į",Iopf:"𝕀",iopf:"𝕚",Iota:"Ι",iota:"ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",Iscr:"ℐ",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"⁢",Itilde:"Ĩ",itilde:"ĩ",Iukcy:"І",iukcy:"і",Iuml:"Ï",iuml:"ï",Jcirc:"Ĵ",jcirc:"ĵ",Jcy:"Й",jcy:"й",Jfr:"𝔍",jfr:"𝔧",jmath:"ȷ",Jopf:"𝕁",jopf:"𝕛",Jscr:"𝒥",jscr:"𝒿",Jsercy:"Ј",jsercy:"ј",Jukcy:"Є",jukcy:"є",Kappa:"Κ",kappa:"κ",kappav:"ϰ",Kcedil:"Ķ",kcedil:"ķ",Kcy:"К",kcy:"к",Kfr:"𝔎",kfr:"𝔨",kgreen:"ĸ",KHcy:"Х",khcy:"х",KJcy:"Ќ",kjcy:"ќ",Kopf:"𝕂",kopf:"𝕜",Kscr:"𝒦",kscr:"𝓀",lAarr:"⇚",Lacute:"Ĺ",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",Lambda:"Λ",lambda:"λ",lang:"⟨",Lang:"⟪",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",larrb:"⇤",larrbfs:"⤟",larr:"←",Larr:"↞",lArr:"⇐",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",latail:"⤙",lAtail:"⤛",lat:"⪫",late:"⪭",lates:"⪭︀",lbarr:"⤌",lBarr:"⤎",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",Lcaron:"Ľ",lcaron:"ľ",Lcedil:"Ļ",lcedil:"ļ",lceil:"⌈",lcub:"{",Lcy:"Л",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",lE:"≦",LeftAngleBracket:"⟨",LeftArrowBar:"⇤",leftarrow:"←",LeftArrow:"←",Leftarrow:"⇐",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVectorBar:"⥙",LeftDownVector:"⇃",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",LeftRightArrow:"↔",Leftrightarrow:"⇔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTeeArrow:"↤",LeftTee:"⊣",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangleBar:"⧏",LeftTriangle:"⊲",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVectorBar:"⥘",LeftUpVector:"↿",LeftVectorBar:"⥒",LeftVector:"↼",lEg:"⪋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",lescc:"⪨",les:"⩽",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",Lfr:"𝔏",lfr:"𝔩",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",LJcy:"Љ",ljcy:"љ",llarr:"⇇",ll:"≪",Ll:"⋘",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",Lmidot:"Ŀ",lmidot:"ŀ",lmoustache:"⎰",lmoust:"⎰",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lnE:"≨",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",LongLeftArrow:"⟵",Longleftarrow:"⟸",longleftrightarrow:"⟷",LongLeftRightArrow:"⟷",Longleftrightarrow:"⟺",longmapsto:"⟼",longrightarrow:"⟶",LongRightArrow:"⟶",Longrightarrow:"⟹",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",Lopf:"𝕃",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",Lscr:"ℒ",lsh:"↰",Lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",Lstrok:"Ł",lstrok:"ł",ltcc:"⪦",ltcir:"⩹",lt:"<",LT:"<",Lt:"≪",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",Map:"⤅",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",Mcy:"М",mcy:"м",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",mfr:"𝔪",mho:"℧",micro:"µ",midast:"*",midcir:"⫰",mid:"∣",middot:"·",minusb:"⊟",minus:"−",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",Mopf:"𝕄",mopf:"𝕞",mp:"∓",mscr:"𝓂",Mscr:"ℳ",mstpos:"∾",Mu:"Μ",mu:"μ",multimap:"⊸",mumap:"⊸",nabla:"∇",Nacute:"Ń",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natural:"♮",naturals:"ℕ",natur:"♮",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",Ncaron:"Ň",ncaron:"ň",Ncedil:"Ņ",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",Ncy:"Н",ncy:"н",ndash:"–",nearhk:"⤤",nearr:"↗",neArr:"⇗",nearrow:"↗",ne:"≠",nedot:"≐̸",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:"\n",nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nharr:"↮",nhArr:"⇎",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlarr:"↚",nlArr:"⇍",nldr:"‥",nlE:"≦̸",nle:"≰",nleftarrow:"↚",nLeftarrow:"⇍",nleftrightarrow:"↮",nLeftrightarrow:"⇎",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"⁠",NonBreakingSpace:" ",nopf:"𝕟",Nopf:"ℕ",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangleBar:"⧏̸",NotLeftTriangle:"⋪",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangleBar:"⧐̸",NotRightTriangle:"⋫",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",nparallel:"∦",npar:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",nprec:"⊀",npreceq:"⪯̸",npre:"⪯̸",nrarrc:"⤳̸",nrarr:"↛",nrArr:"⇏",nrarrw:"↝̸",nrightarrow:"↛",nRightarrow:"⇏",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwarr:"↖",nwArr:"⇖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",Ocirc:"Ô",ocirc:"ô",ocir:"⊚",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",orarr:"↻",Or:"⩔",or:"∨",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"ℴ",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",otimesas:"⨶",Otimes:"⨷",otimes:"⊗",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",para:"¶",parallel:"∥",par:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",Pfr:"𝔓",pfr:"𝔭",Phi:"Φ",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",Pi:"Π",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plus:"+",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",popf:"𝕡",Popf:"ℙ",pound:"£",prap:"⪷",Pr:"⪻",pr:"≺",prcue:"≼",precapprox:"⪷",prec:"≺",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",pre:"⪯",prE:"⪳",precsim:"≾",prime:"′",Prime:"″",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportional:"∝",Proportion:"∷",propto:"∝",prsim:"≾",prurel:"⊰",Pscr:"𝒫",pscr:"𝓅",Psi:"Ψ",psi:"ψ",puncsp:" ",Qfr:"𝔔",qfr:"𝔮",qint:"⨌",qopf:"𝕢",Qopf:"ℚ",qprime:"⁗",Qscr:"𝒬",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',QUOT:'"',rAarr:"⇛",race:"∽̱",Racute:"Ŕ",racute:"ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",Rang:"⟫",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarr:"→",Rarr:"↠",rArr:"⇒",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",Rarrtl:"⤖",rarrtl:"↣",rarrw:"↝",ratail:"⤚",rAtail:"⤜",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rBarr:"⤏",RBarr:"⤐",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",Rcaron:"Ř",rcaron:"ř",Rcedil:"Ŗ",rcedil:"ŗ",rceil:"⌉",rcub:"}",Rcy:"Р",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",Re:"ℜ",rect:"▭",reg:"®",REG:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",Rfr:"ℜ",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",Rho:"Ρ",rho:"ρ",rhov:"ϱ",RightAngleBracket:"⟩",RightArrowBar:"⇥",rightarrow:"→",RightArrow:"→",Rightarrow:"⇒",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVectorBar:"⥕",RightDownVector:"⇂",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTeeArrow:"↦",RightTee:"⊢",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangleBar:"⧐",RightTriangle:"⊳",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVectorBar:"⥔",RightUpVector:"↾",RightVectorBar:"⥓",RightVector:"⇀",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"‏",rmoustache:"⎱",rmoust:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",Ropf:"ℝ",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",rscr:"𝓇",Rscr:"ℛ",rsh:"↱",Rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",Sacute:"Ś",sacute:"ś",sbquo:"‚",scap:"⪸",Scaron:"Š",scaron:"š",Sc:"⪼",sc:"≻",sccue:"≽",sce:"⪰",scE:"⪴",Scedil:"Ş",scedil:"ş",Scirc:"Ŝ",scirc:"ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",Scy:"С",scy:"с",sdotb:"⊡",sdot:"⋅",sdote:"⩦",searhk:"⤥",searr:"↘",seArr:"⇘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",Sfr:"𝔖",sfr:"𝔰",sfrown:"⌢",sharp:"♯",SHCHcy:"Щ",shchcy:"щ",SHcy:"Ш",shcy:"ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"­",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",SOFTcy:"Ь",softcy:"ь",solbar:"⌿",solb:"⧄",sol:"/",Sopf:"𝕊",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",square:"□",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squ:"□",squf:"▪",srarr:"→",Sscr:"𝒮",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",Star:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",Sub:"⋐",subdot:"⪽",subE:"⫅",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",subset:"⊂",Subset:"⋐",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succapprox:"⪸",succ:"≻",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",sum:"∑",Sum:"∑",sung:"♪",sup1:"¹",sup2:"²",sup3:"³",sup:"⊃",Sup:"⋑",supdot:"⪾",supdsub:"⫘",supE:"⫆",supe:"⊇",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",supset:"⊃",Supset:"⋑",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swarr:"↙",swArr:"⇙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:"\t",target:"⌖",Tau:"Τ",tau:"τ",tbrk:"⎴",Tcaron:"Ť",tcaron:"ť",Tcedil:"Ţ",tcedil:"ţ",Tcy:"Т",tcy:"т",tdot:"⃛",telrec:"⌕",Tfr:"𝔗",tfr:"𝔱",there4:"∴",therefore:"∴",Therefore:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:"  ",ThinSpace:" ",thinsp:" ",thkap:"≈",thksim:"∼",THORN:"Þ",thorn:"þ",tilde:"˜",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",timesbar:"⨱",timesb:"⊠",times:"×",timesd:"⨰",tint:"∭",toea:"⤨",topbot:"⌶",topcir:"⫱",top:"⊤",Topf:"𝕋",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",TRADE:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",Tscr:"𝒯",tscr:"𝓉",TScy:"Ц",tscy:"ц",TSHcy:"Ћ",tshcy:"ћ",Tstrok:"Ŧ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",Uacute:"Ú",uacute:"ú",uarr:"↑",Uarr:"↟",uArr:"⇑",Uarrocir:"⥉",Ubrcy:"Ў",ubrcy:"ў",Ubreve:"Ŭ",ubreve:"ŭ",Ucirc:"Û",ucirc:"û",Ucy:"У",ucy:"у",udarr:"⇅",Udblac:"Ű",udblac:"ű",udhar:"⥮",ufisht:"⥾",Ufr:"𝔘",ufr:"𝔲",Ugrave:"Ù",ugrave:"ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",Umacr:"Ū",umacr:"ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",uogon:"ų",Uopf:"𝕌",uopf:"𝕦",UpArrowBar:"⤒",uparrow:"↑",UpArrow:"↑",Uparrow:"⇑",UpArrowDownArrow:"⇅",updownarrow:"↕",UpDownArrow:"↕",Updownarrow:"⇕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",upsi:"υ",Upsi:"ϒ",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",UpTeeArrow:"↥",UpTee:"⊥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",Uring:"Ů",uring:"ů",urtri:"◹",Uscr:"𝒰",uscr:"𝓊",utdot:"⋰",Utilde:"Ũ",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",Uuml:"Ü",uuml:"ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",vArr:"⇕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vBar:"⫨",Vbar:"⫫",vBarv:"⫩",Vcy:"В",vcy:"в",vdash:"⊢",vDash:"⊨",Vdash:"⊩",VDash:"⊫",Vdashl:"⫦",veebar:"⊻",vee:"∨",Vee:"⋁",veeeq:"≚",vellip:"⋮",verbar:"|",Verbar:"‖",vert:"|",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",Vopf:"𝕍",vopf:"𝕧",vprop:"∝",vrtri:"⊳",Vscr:"𝒱",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",Vvdash:"⊪",vzigzag:"⦚",Wcirc:"Ŵ",wcirc:"ŵ",wedbar:"⩟",wedge:"∧",Wedge:"⋀",wedgeq:"≙",weierp:"℘",Wfr:"𝔚",wfr:"𝔴",Wopf:"𝕎",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",Wscr:"𝒲",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",Xfr:"𝔛",xfr:"𝔵",xharr:"⟷",xhArr:"⟺",Xi:"Ξ",xi:"ξ",xlarr:"⟵",xlArr:"⟸",xmap:"⟼",xnis:"⋻",xodot:"⨀",Xopf:"𝕏",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrarr:"⟶",xrArr:"⟹",Xscr:"𝒳",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",Yacute:"Ý",yacute:"ý",YAcy:"Я",yacy:"я",Ycirc:"Ŷ",ycirc:"ŷ",Ycy:"Ы",ycy:"ы",yen:"¥",Yfr:"𝔜",yfr:"𝔶",YIcy:"Ї",yicy:"ї",Yopf:"𝕐",yopf:"𝕪",Yscr:"𝒴",yscr:"𝓎",YUcy:"Ю",yucy:"ю",yuml:"ÿ",Yuml:"Ÿ",Zacute:"Ź",zacute:"ź",Zcaron:"Ž",zcaron:"ž",Zcy:"З",zcy:"з",Zdot:"Ż",zdot:"ż",zeetrf:"ℨ",ZeroWidthSpace:"​",Zeta:"Ζ",zeta:"ζ",zfr:"𝔷",Zfr:"ℨ",ZHcy:"Ж",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",Zopf:"ℤ",Zscr:"𝒵",zscr:"𝓏",zwj:"‍",zwnj:"‌"}},function(a,e){a.exports={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'}},function(a,e,t){e=a.exports=t(1124),e.Stream=e,e.Readable=e,e.Writable=t(1044),e.Duplex=t(331),e.Transform=t(1128),e.PassThrough=t(1277)},function(a,e,t){"use strict";(function(a){function i(){return o.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function r(a,e){if(i()<e)throw new RangeError("Invalid typed array length");return o.TYPED_ARRAY_SUPPORT?(a=new Uint8Array(e),a.__proto__=o.prototype):(null===a&&(a=new o(e)),a.length=e),a}function o(a,e,t){if(!(o.TYPED_ARRAY_SUPPORT||this instanceof o))return new o(a,e,t);if("number"==typeof a){if("string"==typeof e)throw new Error("If encoding is specified then the first argument must be a string");return l(this,a)}return s(this,a,e,t)}function s(a,e,t,i){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer?p(a,e,t,i):"string"==typeof e?c(a,e,t):g(a,e)}function n(a){if("number"!=typeof a)throw new TypeError('"size" argument must be a number');if(a<0)throw new RangeError('"size" argument must not be negative')}function d(a,e,t,i){return n(e),e<=0?r(a,e):void 0!==t?"string"==typeof i?r(a,e).fill(t,i):r(a,e).fill(t):r(a,e)}function l(a,e){if(n(e),a=r(a,e<0?0:0|m(e)),!o.TYPED_ARRAY_SUPPORT)for(var t=0;t<e;++t)a[t]=0;return a}function c(a,e,t){if("string"==typeof t&&""!==t||(t="utf8"),!o.isEncoding(t))throw new TypeError('"encoding" must be a valid string encoding');var i=0|b(e,t);a=r(a,i);var s=a.write(e,t);return s!==i&&(a=a.slice(0,s)),a}function u(a,e){var t=e.length<0?0:0|m(e.length);a=r(a,t);for(var i=0;i<t;i+=1)a[i]=255&e[i];return a}function p(a,e,t,i){if(e.byteLength,t<0||e.byteLength<t)throw new RangeError("'offset' is out of bounds");if(e.byteLength<t+(i||0))throw new RangeError("'length' is out of bounds");return e=void 0===t&&void 0===i?new Uint8Array(e):void 0===i?new Uint8Array(e,t):new Uint8Array(e,t,i),o.TYPED_ARRAY_SUPPORT?(a=e,a.__proto__=o.prototype):a=u(a,e),a}function g(a,e){if(o.isBuffer(e)){var t=0|m(e.length);return a=r(a,t),0===a.length?a:(e.copy(a,0,0,t),a)}if(e){if("undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return"number"!=typeof e.length||G(e.length)?r(a,0):u(a,e);if("Buffer"===e.type&&X(e.data))return u(a,e.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function m(a){if(a>=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|a}function f(a){return+a!=a&&(a=0),o.alloc(+a)}function b(a,e){if(o.isBuffer(a))return a.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(a)||a instanceof ArrayBuffer))return a.byteLength;"string"!=typeof a&&(a=""+a);var t=a.length;if(0===t)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":case void 0:return W(a).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*t;case"hex":return t>>>1;case"base64":return V(a).length;default:if(i)return W(a).length;e=(""+e).toLowerCase(),i=!0}}function h(a,e,t){var i=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===t||t>this.length)&&(t=this.length),t<=0)return"";if(t>>>=0,e>>>=0,t<=e)return"";for(a||(a="utf8");;)switch(a){case"hex":return O(this,e,t);case"utf8":case"utf-8":return S(this,e,t);case"ascii":return T(this,e,t);case"latin1":case"binary":return C(this,e,t);case"base64":return E(this,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return D(this,e,t);default:if(i)throw new TypeError("Unknown encoding: "+a);a=(a+"").toLowerCase(),i=!0}}function v(a,e,t){var i=a[e];a[e]=a[t],a[t]=i}function z(a,e,t,i,r){if(0===a.length)return-1;if("string"==typeof t?(i=t,t=0):t>2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,isNaN(t)&&(t=r?0:a.length-1),t<0&&(t=a.length+t),t>=a.length){if(r)return-1;t=a.length-1}else if(t<0){if(!r)return-1;t=0}if("string"==typeof e&&(e=o.from(e,i)),o.isBuffer(e))return 0===e.length?-1:y(a,e,t,i,r);if("number"==typeof e)return e&=255,o.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(a,e,t):Uint8Array.prototype.lastIndexOf.call(a,e,t):y(a,[e],t,i,r);throw new TypeError("val must be string, number or Buffer")}function y(a,e,t,i,r){function o(a,e){return 1===s?a[e]:a.readUInt16BE(e*s)}var s=1,n=a.length,d=e.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(a.length<2||e.length<2)return-1;s=2,n/=2,d/=2,t/=2}var l;if(r){var c=-1;for(l=t;l<n;l++)if(o(a,l)===o(e,-1===c?0:l-c)){if(-1===c&&(c=l),l-c+1===d)return c*s}else-1!==c&&(l-=l-c),c=-1}else for(t+d>n&&(t=n-d),l=t;l>=0;l--){for(var u=!0,p=0;p<d;p++)if(o(a,l+p)!==o(e,p)){u=!1;break}if(u)return l}return-1}function w(a,e,t,i){t=Number(t)||0;var r=a.length-t;i?(i=Number(i))>r&&(i=r):i=r;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");i>o/2&&(i=o/2);for(var s=0;s<i;++s){var n=parseInt(e.substr(2*s,2),16);if(isNaN(n))return s;a[t+s]=n}return s}function x(a,e,t,i){return Y(W(e,a.length-t),a,t,i)}function k(a,e,t,i){return Y(H(e),a,t,i)}function _(a,e,t,i){return k(a,e,t,i)}function j(a,e,t,i){return Y(V(e),a,t,i)}function q(a,e,t,i){return Y(K(e,a.length-t),a,t,i)}function E(a,e,t){return 0===e&&t===a.length?Z.fromByteArray(a):Z.fromByteArray(a.slice(e,t))}function S(a,e,t){t=Math.min(a.length,t);for(var i=[],r=e;r<t;){var o=a[r],s=null,n=o>239?4:o>223?3:o>191?2:1;if(r+n<=t){var d,l,c,u;switch(n){case 1:o<128&&(s=o);break;case 2:d=a[r+1],128==(192&d)&&(u=(31&o)<<6|63&d)>127&&(s=u);break;case 3:d=a[r+1],l=a[r+2],128==(192&d)&&128==(192&l)&&(u=(15&o)<<12|(63&d)<<6|63&l)>2047&&(u<55296||u>57343)&&(s=u);break;case 4:d=a[r+1],l=a[r+2],c=a[r+3],128==(192&d)&&128==(192&l)&&128==(192&c)&&(u=(15&o)<<18|(63&d)<<12|(63&l)<<6|63&c)>65535&&u<1114112&&(s=u)}}null===s?(s=65533,n=1):s>65535&&(s-=65536,i.push(s>>>10&1023|55296),s=56320|1023&s),i.push(s),r+=n}return A(i)}function A(a){var e=a.length;if(e<=Q)return String.fromCharCode.apply(String,a);for(var t="",i=0;i<e;)t+=String.fromCharCode.apply(String,a.slice(i,i+=Q));return t}function T(a,e,t){var i="";t=Math.min(a.length,t);for(var r=e;r<t;++r)i+=String.fromCharCode(127&a[r]);return i}function C(a,e,t){var i="";t=Math.min(a.length,t);for(var r=e;r<t;++r)i+=String.fromCharCode(a[r]);return i}function O(a,e,t){var i=a.length;(!e||e<0)&&(e=0),(!t||t<0||t>i)&&(t=i);for(var r="",o=e;o<t;++o)r+=U(a[o]);return r}function D(a,e,t){for(var i=a.slice(e,t),r="",o=0;o<i.length;o+=2)r+=String.fromCharCode(i[o]+256*i[o+1]);return r}function P(a,e,t){if(a%1!=0||a<0)throw new RangeError("offset is not uint");if(a+e>t)throw new RangeError("Trying to access beyond buffer length")}function R(a,e,t,i,r,s){if(!o.isBuffer(a))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||e<s)throw new RangeError('"value" argument is out of bounds');if(t+i>a.length)throw new RangeError("Index out of range")}function B(a,e,t,i){e<0&&(e=65535+e+1);for(var r=0,o=Math.min(a.length-t,2);r<o;++r)a[t+r]=(e&255<<8*(i?r:1-r))>>>8*(i?r:1-r)}function F(a,e,t,i){e<0&&(e=4294967295+e+1);for(var r=0,o=Math.min(a.length-t,4);r<o;++r)a[t+r]=e>>>8*(i?r:3-r)&255}function M(a,e,t,i,r,o){if(t+i>a.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function L(a,e,t,i,r){return r||M(a,e,t,4,3.4028234663852886e38,-3.4028234663852886e38),J.write(a,e,t,i,23,4),t+4}function I(a,e,t,i,r){return r||M(a,e,t,8,1.7976931348623157e308,-1.7976931348623157e308),J.write(a,e,t,i,52,8),t+8}function $(a){if(a=N(a).replace(aa,""),a.length<2)return"";for(;a.length%4!=0;)a+="=";return a}function N(a){return a.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function U(a){return a<16?"0"+a.toString(16):a.toString(16)}function W(a,e){e=e||1/0;for(var t,i=a.length,r=null,o=[],s=0;s<i;++s){if((t=a.charCodeAt(s))>55295&&t<57344){if(!r){if(t>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(s+1===i){(e-=3)>-1&&o.push(239,191,189);continue}r=t;continue}if(t<56320){(e-=3)>-1&&o.push(239,191,189),r=t;continue}t=65536+(r-55296<<10|t-56320)}else r&&(e-=3)>-1&&o.push(239,191,189);if(r=null,t<128){if((e-=1)<0)break;o.push(t)}else if(t<2048){if((e-=2)<0)break;o.push(t>>6|192,63&t|128)}else if(t<65536){if((e-=3)<0)break;o.push(t>>12|224,t>>6&63|128,63&t|128)}else{if(!(t<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(t>>18|240,t>>12&63|128,t>>6&63|128,63&t|128)}}return o}function H(a){for(var e=[],t=0;t<a.length;++t)e.push(255&a.charCodeAt(t));return e}function K(a,e){for(var t,i,r,o=[],s=0;s<a.length&&!((e-=2)<0);++s)t=a.charCodeAt(s),i=t>>8,r=t%256,o.push(r),o.push(i);return o}function V(a){return Z.toByteArray($(a))}function Y(a,e,t,i){for(var r=0;r<i&&!(r+t>=e.length||r>=a.length);++r)e[r+t]=a[r];return r}function G(a){return a!==a}/*!
8
- * The buffer module from node.js, for the browser.
9
- *
10
- * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
11
- * @license MIT
12
- */
13
- var Z=t(1270),J=t(1271),X=t(1125);e.Buffer=o,e.SlowBuffer=f,e.INSPECT_MAX_BYTES=50,o.TYPED_ARRAY_SUPPORT=void 0!==a.TYPED_ARRAY_SUPPORT?a.TYPED_ARRAY_SUPPORT:function(){try{var a=new Uint8Array(1);return a.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===a.foo()&&"function"==typeof a.subarray&&0===a.subarray(1,1).byteLength}catch(a){return!1}}(),e.kMaxLength=i(),o.poolSize=8192,o._augment=function(a){return a.__proto__=o.prototype,a},o.from=function(a,e,t){return s(null,a,e,t)},o.TYPED_ARRAY_SUPPORT&&(o.prototype.__proto__=Uint8Array.prototype,o.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&o[Symbol.species]===o&&Object.defineProperty(o,Symbol.species,{value:null,configurable:!0})),o.alloc=function(a,e,t){return d(null,a,e,t)},o.allocUnsafe=function(a){return l(null,a)},o.allocUnsafeSlow=function(a){return l(null,a)},o.isBuffer=function(a){return!(null==a||!a._isBuffer)},o.compare=function(a,e){if(!o.isBuffer(a)||!o.isBuffer(e))throw new TypeError("Arguments must be Buffers");if(a===e)return 0;for(var t=a.length,i=e.length,r=0,s=Math.min(t,i);r<s;++r)if(a[r]!==e[r]){t=a[r],i=e[r];break}return t<i?-1:i<t?1:0},o.isEncoding=function(a){switch(String(a).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},o.concat=function(a,e){if(!X(a))throw new TypeError('"list" argument must be an Array of Buffers');if(0===a.length)return o.alloc(0);var t;if(void 0===e)for(e=0,t=0;t<a.length;++t)e+=a[t].length;var i=o.allocUnsafe(e),r=0;for(t=0;t<a.length;++t){var s=a[t];if(!o.isBuffer(s))throw new TypeError('"list" argument must be an Array of Buffers');s.copy(i,r),r+=s.length}return i},o.byteLength=b,o.prototype._isBuffer=!0,o.prototype.swap16=function(){var a=this.length;if(a%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<a;e+=2)v(this,e,e+1);return this},o.prototype.swap32=function(){var a=this.length;if(a%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var e=0;e<a;e+=4)v(this,e,e+3),v(this,e+1,e+2);return this},o.prototype.swap64=function(){var a=this.length;if(a%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var e=0;e<a;e+=8)v(this,e,e+7),v(this,e+1,e+6),v(this,e+2,e+5),v(this,e+3,e+4);return this},o.prototype.toString=function(){var a=0|this.length;return 0===a?"":0===arguments.length?S(this,0,a):h.apply(this,arguments)},o.prototype.equals=function(a){if(!o.isBuffer(a))throw new TypeError("Argument must be a Buffer");return this===a||0===o.compare(this,a)},o.prototype.inspect=function(){var a="",t=e.INSPECT_MAX_BYTES;return this.length>0&&(a=this.toString("hex",0,t).match(/.{2}/g).join(" "),this.length>t&&(a+=" ... ")),"<Buffer "+a+">"},o.prototype.compare=function(a,e,t,i,r){if(!o.isBuffer(a))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===t&&(t=a?a.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),e<0||t>a.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&e>=t)return 0;if(i>=r)return-1;if(e>=t)return 1;if(e>>>=0,t>>>=0,i>>>=0,r>>>=0,this===a)return 0;for(var s=r-i,n=t-e,d=Math.min(s,n),l=this.slice(i,r),c=a.slice(e,t),u=0;u<d;++u)if(l[u]!==c[u]){s=l[u],n=c[u];break}return s<n?-1:n<s?1:0},o.prototype.includes=function(a,e,t){return-1!==this.indexOf(a,e,t)},o.prototype.indexOf=function(a,e,t){return z(this,a,e,t,!0)},o.prototype.lastIndexOf=function(a,e,t){return z(this,a,e,t,!1)},o.prototype.write=function(a,e,t,i){if(void 0===e)i="utf8",t=this.length,e=0;else if(void 0===t&&"string"==typeof e)i=e,t=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e|=0,isFinite(t)?(t|=0,void 0===i&&(i="utf8")):(i=t,t=void 0)}var r=this.length-e;if((void 0===t||t>r)&&(t=r),a.length>0&&(t<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var o=!1;;)switch(i){case"hex":return w(this,a,e,t);case"utf8":case"utf-8":return x(this,a,e,t);case"ascii":return k(this,a,e,t);case"latin1":case"binary":return _(this,a,e,t);case"base64":return j(this,a,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return q(this,a,e,t);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Q=4096;o.prototype.slice=function(a,e){var t=this.length;a=~~a,e=void 0===e?t:~~e,a<0?(a+=t)<0&&(a=0):a>t&&(a=t),e<0?(e+=t)<0&&(e=0):e>t&&(e=t),e<a&&(e=a);var i;if(o.TYPED_ARRAY_SUPPORT)i=this.subarray(a,e),i.__proto__=o.prototype;else{var r=e-a;i=new o(r,void 0);for(var s=0;s<r;++s)i[s]=this[s+a]}return i},o.prototype.readUIntLE=function(a,e,t){a|=0,e|=0,t||P(a,e,this.length);for(var i=this[a],r=1,o=0;++o<e&&(r*=256);)i+=this[a+o]*r;return i},o.prototype.readUIntBE=function(a,e,t){a|=0,e|=0,t||P(a,e,this.length);for(var i=this[a+--e],r=1;e>0&&(r*=256);)i+=this[a+--e]*r;return i},o.prototype.readUInt8=function(a,e){return e||P(a,1,this.length),this[a]},o.prototype.readUInt16LE=function(a,e){return e||P(a,2,this.length),this[a]|this[a+1]<<8},o.prototype.readUInt16BE=function(a,e){return e||P(a,2,this.length),this[a]<<8|this[a+1]},o.prototype.readUInt32LE=function(a,e){return e||P(a,4,this.length),(this[a]|this[a+1]<<8|this[a+2]<<16)+16777216*this[a+3]},o.prototype.readUInt32BE=function(a,e){return e||P(a,4,this.length),16777216*this[a]+(this[a+1]<<16|this[a+2]<<8|this[a+3])},o.prototype.readIntLE=function(a,e,t){a|=0,e|=0,t||P(a,e,this.length);for(var i=this[a],r=1,o=0;++o<e&&(r*=256);)i+=this[a+o]*r;return r*=128,i>=r&&(i-=Math.pow(2,8*e)),i},o.prototype.readIntBE=function(a,e,t){a|=0,e|=0,t||P(a,e,this.length);for(var i=e,r=1,o=this[a+--i];i>0&&(r*=256);)o+=this[a+--i]*r;return r*=128,o>=r&&(o-=Math.pow(2,8*e)),o},o.prototype.readInt8=function(a,e){return e||P(a,1,this.length),128&this[a]?-1*(255-this[a]+1):this[a]},o.prototype.readInt16LE=function(a,e){e||P(a,2,this.length);var t=this[a]|this[a+1]<<8;return 32768&t?4294901760|t:t},o.prototype.readInt16BE=function(a,e){e||P(a,2,this.length);var t=this[a+1]|this[a]<<8;return 32768&t?4294901760|t:t},o.prototype.readInt32LE=function(a,e){return e||P(a,4,this.length),this[a]|this[a+1]<<8|this[a+2]<<16|this[a+3]<<24},o.prototype.readInt32BE=function(a,e){return e||P(a,4,this.length),this[a]<<24|this[a+1]<<16|this[a+2]<<8|this[a+3]},o.prototype.readFloatLE=function(a,e){return e||P(a,4,this.length),J.read(this,a,!0,23,4)},o.prototype.readFloatBE=function(a,e){return e||P(a,4,this.length),J.read(this,a,!1,23,4)},o.prototype.readDoubleLE=function(a,e){return e||P(a,8,this.length),J.read(this,a,!0,52,8)},o.prototype.readDoubleBE=function(a,e){return e||P(a,8,this.length),J.read(this,a,!1,52,8)},o.prototype.writeUIntLE=function(a,e,t,i){if(a=+a,e|=0,t|=0,!i){R(this,a,e,t,Math.pow(2,8*t)-1,0)}var r=1,o=0;for(this[e]=255&a;++o<t&&(r*=256);)this[e+o]=a/r&255;return e+t},o.prototype.writeUIntBE=function(a,e,t,i){if(a=+a,e|=0,t|=0,!i){R(this,a,e,t,Math.pow(2,8*t)-1,0)}var r=t-1,o=1;for(this[e+r]=255&a;--r>=0&&(o*=256);)this[e+r]=a/o&255;return e+t},o.prototype.writeUInt8=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,1,255,0),o.TYPED_ARRAY_SUPPORT||(a=Math.floor(a)),this[e]=255&a,e+1},o.prototype.writeUInt16LE=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,2,65535,0),o.TYPED_ARRAY_SUPPORT?(this[e]=255&a,this[e+1]=a>>>8):B(this,a,e,!0),e+2},o.prototype.writeUInt16BE=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,2,65535,0),o.TYPED_ARRAY_SUPPORT?(this[e]=a>>>8,this[e+1]=255&a):B(this,a,e,!1),e+2},o.prototype.writeUInt32LE=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,4,4294967295,0),o.TYPED_ARRAY_SUPPORT?(this[e+3]=a>>>24,this[e+2]=a>>>16,this[e+1]=a>>>8,this[e]=255&a):F(this,a,e,!0),e+4},o.prototype.writeUInt32BE=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,4,4294967295,0),o.TYPED_ARRAY_SUPPORT?(this[e]=a>>>24,this[e+1]=a>>>16,this[e+2]=a>>>8,this[e+3]=255&a):F(this,a,e,!1),e+4},o.prototype.writeIntLE=function(a,e,t,i){if(a=+a,e|=0,!i){var r=Math.pow(2,8*t-1);R(this,a,e,t,r-1,-r)}var o=0,s=1,n=0;for(this[e]=255&a;++o<t&&(s*=256);)a<0&&0===n&&0!==this[e+o-1]&&(n=1),this[e+o]=(a/s>>0)-n&255;return e+t},o.prototype.writeIntBE=function(a,e,t,i){if(a=+a,e|=0,!i){var r=Math.pow(2,8*t-1);R(this,a,e,t,r-1,-r)}var o=t-1,s=1,n=0;for(this[e+o]=255&a;--o>=0&&(s*=256);)a<0&&0===n&&0!==this[e+o+1]&&(n=1),this[e+o]=(a/s>>0)-n&255;return e+t},o.prototype.writeInt8=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,1,127,-128),o.TYPED_ARRAY_SUPPORT||(a=Math.floor(a)),a<0&&(a=255+a+1),this[e]=255&a,e+1},o.prototype.writeInt16LE=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,2,32767,-32768),o.TYPED_ARRAY_SUPPORT?(this[e]=255&a,this[e+1]=a>>>8):B(this,a,e,!0),e+2},o.prototype.writeInt16BE=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,2,32767,-32768),o.TYPED_ARRAY_SUPPORT?(this[e]=a>>>8,this[e+1]=255&a):B(this,a,e,!1),e+2},o.prototype.writeInt32LE=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,4,2147483647,-2147483648),o.TYPED_ARRAY_SUPPORT?(this[e]=255&a,this[e+1]=a>>>8,this[e+2]=a>>>16,this[e+3]=a>>>24):F(this,a,e,!0),e+4},o.prototype.writeInt32BE=function(a,e,t){return a=+a,e|=0,t||R(this,a,e,4,2147483647,-2147483648),a<0&&(a=4294967295+a+1),o.TYPED_ARRAY_SUPPORT?(this[e]=a>>>24,this[e+1]=a>>>16,this[e+2]=a>>>8,this[e+3]=255&a):F(this,a,e,!1),e+4},o.prototype.writeFloatLE=function(a,e,t){return L(this,a,e,!0,t)},o.prototype.writeFloatBE=function(a,e,t){return L(this,a,e,!1,t)},o.prototype.writeDoubleLE=function(a,e,t){return I(this,a,e,!0,t)},o.prototype.writeDoubleBE=function(a,e,t){return I(this,a,e,!1,t)},o.prototype.copy=function(a,e,t,i){if(t||(t=0),i||0===i||(i=this.length),e>=a.length&&(e=a.length),e||(e=0),i>0&&i<t&&(i=t),i===t)return 0;if(0===a.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(t<0||t>=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),a.length-e<i-t&&(i=a.length-e+t);var r,s=i-t;if(this===a&&t<e&&e<i)for(r=s-1;r>=0;--r)a[r+e]=this[r+t];else if(s<1e3||!o.TYPED_ARRAY_SUPPORT)for(r=0;r<s;++r)a[r+e]=this[r+t];else Uint8Array.prototype.set.call(a,this.subarray(t,t+s),e);return s},o.prototype.fill=function(a,e,t,i){if("string"==typeof a){if("string"==typeof e?(i=e,e=0,t=this.length):"string"==typeof t&&(i=t,t=this.length),1===a.length){var r=a.charCodeAt(0);r<256&&(a=r)}if(void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!o.isEncoding(i))throw new TypeError("Unknown encoding: "+i)}else"number"==typeof a&&(a&=255);if(e<0||this.length<e||this.length<t)throw new RangeError("Out of range index");if(t<=e)return this;e>>>=0,t=void 0===t?this.length:t>>>0,a||(a=0);var s;if("number"==typeof a)for(s=e;s<t;++s)this[s]=a;else{var n=o.isBuffer(a)?a:W(new o(a,i).toString()),d=n.length;for(s=0;s<t-e;++s)this[s+e]=n[s%d]}return this};var aa=/[^+\/0-9A-Za-z-_]/g}).call(e,t(9))},function(a,e,t){"use strict";(function(e,i,r){function o(a){var e=this;this.next=null,this.entry=null,this.finish=function(){E(e,a)}}function s(a){return P.from(a)}function n(a){return P.isBuffer(a)||a instanceof R}function d(){}function l(a,e){A=A||t(331),a=a||{};var i=e instanceof A;this.objectMode=!!a.objectMode,i&&(this.objectMode=this.objectMode||!!a.writableObjectMode);var r=a.highWaterMark,s=a.writableHighWaterMark,n=this.objectMode?16:16384;this.highWaterMark=r||0===r?r:i&&(s||0===s)?s:n,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===a.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=a.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(a){v(e,a)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function c(a){if(A=A||t(331),!(F.call(c,this)||this instanceof A))return new c(a);this._writableState=new l(a,this),this.writable=!0,a&&("function"==typeof a.write&&(this._write=a.write),"function"==typeof a.writev&&(this._writev=a.writev),"function"==typeof a.destroy&&(this._destroy=a.destroy),"function"==typeof a.final&&(this._final=a.final)),D.call(this)}function u(a,e){var t=new Error("write after end");a.emit("error",t),S.nextTick(e,t)}function p(a,e,t,i){var r=!0,o=!1;return null===t?o=new TypeError("May not write null values to stream"):"string"==typeof t||void 0===t||e.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(a.emit("error",o),S.nextTick(i,o),r=!1),r}function g(a,e,t){return a.objectMode||!1===a.decodeStrings||"string"!=typeof e||(e=P.from(e,t)),e}function m(a,e,t,i,r,o){if(!t){var s=g(e,i,r);i!==s&&(t=!0,r="buffer",i=s)}var n=e.objectMode?1:i.length;e.length+=n;var d=e.length<e.highWaterMark;if(d||(e.needDrain=!0),e.writing||e.corked){var l=e.lastBufferedRequest;e.lastBufferedRequest={chunk:i,encoding:r,isBuf:t,callback:o,next:null},l?l.next=e.lastBufferedRequest:e.bufferedRequest=e.lastBufferedRequest,e.bufferedRequestCount+=1}else f(a,e,!1,n,i,r,o);return d}function f(a,e,t,i,r,o,s){e.writelen=i,e.writecb=s,e.writing=!0,e.sync=!0,t?a._writev(r,e.onwrite):a._write(r,o,e.onwrite),e.sync=!1}function b(a,e,t,i,r){--e.pendingcb,t?(S.nextTick(r,i),S.nextTick(j,a,e),a._writableState.errorEmitted=!0,a.emit("error",i)):(r(i),a._writableState.errorEmitted=!0,a.emit("error",i),j(a,e))}function h(a){a.writing=!1,a.writecb=null,a.length-=a.writelen,a.writelen=0}function v(a,e){var t=a._writableState,i=t.sync,r=t.writecb;if(h(t),e)b(a,t,i,e,r);else{var o=x(t);o||t.corked||t.bufferProcessing||!t.bufferedRequest||w(a,t),i?T(z,a,t,o,r):z(a,t,o,r)}}function z(a,e,t,i){t||y(a,e),e.pendingcb--,i(),j(a,e)}function y(a,e){0===e.length&&e.needDrain&&(e.needDrain=!1,a.emit("drain"))}function w(a,e){e.bufferProcessing=!0;var t=e.bufferedRequest;if(a._writev&&t&&t.next){var i=e.bufferedRequestCount,r=new Array(i),s=e.corkedRequestsFree;s.entry=t;for(var n=0,d=!0;t;)r[n]=t,t.isBuf||(d=!1),t=t.next,n+=1;r.allBuffers=d,f(a,e,!0,e.length,r,"",s.finish),e.pendingcb++,e.lastBufferedRequest=null,s.next?(e.corkedRequestsFree=s.next,s.next=null):e.corkedRequestsFree=new o(e),e.bufferedRequestCount=0}else{for(;t;){var l=t.chunk,c=t.encoding,u=t.callback;if(f(a,e,!1,e.objectMode?1:l.length,l,c,u),t=t.next,e.bufferedRequestCount--,e.writing)break}null===t&&(e.lastBufferedRequest=null)}e.bufferedRequest=t,e.bufferProcessing=!1}function x(a){return a.ending&&0===a.length&&null===a.bufferedRequest&&!a.finished&&!a.writing}function k(a,e){a._final(function(t){e.pendingcb--,t&&a.emit("error",t),e.prefinished=!0,a.emit("prefinish"),j(a,e)})}function _(a,e){e.prefinished||e.finalCalled||("function"==typeof a._final?(e.pendingcb++,e.finalCalled=!0,S.nextTick(k,a,e)):(e.prefinished=!0,a.emit("prefinish")))}function j(a,e){var t=x(e);return t&&(_(a,e),0===e.pendingcb&&(e.finished=!0,a.emit("finish"))),t}function q(a,e,t){e.ending=!0,j(a,e),t&&(e.finished?S.nextTick(t):a.once("finish",t)),e.ended=!0,a.writable=!1}function E(a,e,t){var i=a.entry;for(a.entry=null;i;){var r=i.callback;e.pendingcb--,r(t),i=i.next}e.corkedRequestsFree?e.corkedRequestsFree.next=a:e.corkedRequestsFree=a}var S=t(734);a.exports=c;var A,T=!e.browser&&["v0.10","v0.9."].indexOf(e.version.slice(0,5))>-1?i:S.nextTick;c.WritableState=l;var C=t(559);C.inherits=t(48);var O={deprecate:t(1276)},D=t(1126),P=t(735).Buffer,R=r.Uint8Array||function(){},B=t(1127);C.inherits(c,D),l.prototype.getBuffer=function(){for(var a=this.bufferedRequest,e=[];a;)e.push(a),a=a.next;return e},function(){try{Object.defineProperty(l.prototype,"buffer",{get:O.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(a){}}();var F;"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(F=Function.prototype[Symbol.hasInstance],Object.defineProperty(c,Symbol.hasInstance,{value:function(a){return!!F.call(this,a)||this===c&&(a&&a._writableState instanceof l)}})):F=function(a){return a instanceof this},c.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},c.prototype.write=function(a,e,t){var i=this._writableState,r=!1,o=!i.objectMode&&n(a);return o&&!P.isBuffer(a)&&(a=s(a)),"function"==typeof e&&(t=e,e=null),o?e="buffer":e||(e=i.defaultEncoding),"function"!=typeof t&&(t=d),i.ended?u(this,t):(o||p(this,i,a,t))&&(i.pendingcb++,r=m(this,i,o,a,e,t)),r},c.prototype.cork=function(){this._writableState.corked++},c.prototype.uncork=function(){var a=this._writableState;a.corked&&(a.corked--,a.writing||a.corked||a.finished||a.bufferProcessing||!a.bufferedRequest||w(this,a))},c.prototype.setDefaultEncoding=function(a){if("string"==typeof a&&(a=a.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((a+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+a);return this._writableState.defaultEncoding=a,this},Object.defineProperty(c.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),c.prototype._write=function(a,e,t){t(new Error("_write() is not implemented"))},c.prototype._writev=null,c.prototype.end=function(a,e,t){var i=this._writableState;"function"==typeof a?(t=a,a=null,e=null):"function"==typeof e&&(t=e,e=null),null!==a&&void 0!==a&&this.write(a,e),i.corked&&(i.corked=1,this.uncork()),i.ending||i.finished||q(this,i,t)},Object.defineProperty(c.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(a){this._writableState&&(this._writableState.destroyed=a)}}),c.prototype.destroy=B.destroy,c.prototype._undestroy=B.undestroy,c.prototype._destroy=function(a,e){this.end(),e(a)}}).call(e,t(141),t(1275).setImmediate,t(9))},function(a,e,t){"use strict";function i(a){if(!a)return"utf8";for(var e;;)switch(a){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return a;default:if(e)return;a=(""+a).toLowerCase(),e=!0}}function r(a){var e=i(a);if("string"!=typeof e&&(v.isEncoding===z||!z(a)))throw new Error("Unknown encoding: "+a);return e||a}function o(a){this.encoding=r(a);var e;switch(this.encoding){case"utf16le":this.text=p,this.end=g,e=4;break;case"utf8":this.fillLast=l,e=4;break;case"base64":this.text=m,this.end=f,e=3;break;default:return this.write=b,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=v.allocUnsafe(e)}function s(a){return a<=127?0:a>>5==6?2:a>>4==14?3:a>>3==30?4:-1}function n(a,e,t){var i=e.length-1;if(i<t)return 0;var r=s(e[i]);return r>=0?(r>0&&(a.lastNeed=r-1),r):--i<t?0:(r=s(e[i]))>=0?(r>0&&(a.lastNeed=r-2),r):--i<t?0:(r=s(e[i]),r>=0?(r>0&&(2===r?r=0:a.lastNeed=r-3),r):0)}function d(a,e,t){if(128!=(192&e[0]))return a.lastNeed=0,"�".repeat(t);if(a.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return a.lastNeed=1,"�".repeat(t+1);if(a.lastNeed>2&&e.length>2&&128!=(192&e[2]))return a.lastNeed=2,"�".repeat(t+2)}}function l(a){var e=this.lastTotal-this.lastNeed,t=d(this,a,e);return void 0!==t?t:this.lastNeed<=a.length?(a.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(a.copy(this.lastChar,e,0,a.length),void(this.lastNeed-=a.length))}function c(a,e){var t=n(this,a,e);if(!this.lastNeed)return a.toString("utf8",e);this.lastTotal=t;var i=a.length-(t-this.lastNeed);return a.copy(this.lastChar,0,i),a.toString("utf8",e,i)}function u(a){var e=a&&a.length?this.write(a):"";return this.lastNeed?e+"�".repeat(this.lastTotal-this.lastNeed):e}function p(a,e){if((a.length-e)%2==0){var t=a.toString("utf16le",e);if(t){var i=t.charCodeAt(t.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=a[a.length-2],this.lastChar[1]=a[a.length-1],t.slice(0,-1)}return t}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=a[a.length-1],a.toString("utf16le",e,a.length-1)}function g(a){var e=a&&a.length?this.write(a):"";if(this.lastNeed){var t=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,t)}return e}function m(a,e){var t=(a.length-e)%3;return 0===t?a.toString("base64",e):(this.lastNeed=3-t,this.lastTotal=3,1===t?this.lastChar[0]=a[a.length-1]:(this.lastChar[0]=a[a.length-2],this.lastChar[1]=a[a.length-1]),a.toString("base64",e,a.length-t))}function f(a){var e=a&&a.length?this.write(a):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function b(a){return a.toString(this.encoding)}function h(a){return a&&a.length?this.write(a):""}var v=t(735).Buffer,z=v.isEncoding||function(a){switch((a=""+a)&&a.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};e.StringDecoder=o,o.prototype.write=function(a){if(0===a.length)return"";var e,t;if(this.lastNeed){if(void 0===(e=this.fillLast(a)))return"";t=this.lastNeed,this.lastNeed=0}else t=0;return t<a.length?e?e+this.text(a,t):this.text(a,t):e||""},o.prototype.end=u,o.prototype.text=c,o.prototype.fillLast=function(a){if(this.lastNeed<=a.length)return a.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);a.copy(this.lastChar,this.lastTotal-this.lastNeed,0,a.length),this.lastNeed-=a.length}},function(a,e,t){var i=t(1320),r=t(1132),o=i(r);a.exports=o},function(a,e,t){"use strict";var i=t(577)(),r=t(157),o=t(236),s=function(a){return r(i,a)},n=function(a,e){a=a.toLocaleLowerCase(),e=e.toLocaleLowerCase();var t=o(a),i=e.search(new RegExp(t,"ig"));if(-1===i)return!1;i>0&&(i+=1);var r=i+a.length,n=s(e[i-1])||0===i,d=s(e[r])||r===e.length;return n&&d};a.exports={characterInBoundary:s,isWordInSentence:n}},function(a,e,t){"use strict";var i=["abâtardi","abattu","abêti","aboli","abouti","abruti","abstenu","abstrait","accompli","accouru","accroupi","accru","accueilli","adjoint","adouci","advenu","affadi","affaibli","affermi","agi","agrandi","aguerri","ahuri","aigri","alangui","alenti","alourdi","aluni","amaigri","amati","amerri","aminci","amoindri","amolli","amorti","anéanti","apâli","aperçu","aplani","appartenu","appauvri","appendu","appesanti","applaudi","approfondi","arrondi","assagi","assailli","assaini","asservi","assombri","assorti","assoupi","assoupli","assourdi","assouvi","assujetti","astreint","attendri","attendu","atterri","attiédi","attrait","autodétruit","avachi","aveuli","avili","banni","barri","bâti","battu","béni","blanchi","blêmi","bleui","blondi","blotti","bonni","bouffi","bouilli","bruni","bu","calmi","candi","ceint","chéri","choisi","circonscrit","circonvenu","combattu","comparu","compati","conclu","concouru","condescendu","conduit","confit","confondu","conjoint","connu","consenti","construit","contenu","contraint","contredit","contrefait","contrevenu","convaincu","convenu","converti","coproduit","correspondu","couru","cousu","craint","cramoisi","crépi","croupi","cru","cueilli","cuit","débattu","décati","déchu","déconfit","déconstruit","décousu","découvert","décrépi","décrit","décru","déçu","dédit","déduit","défailli","défendu","défini","défleuri","défraîchi","dégarni","dégluti","dégourdi","démenti","démoli","démordu","démuni","départi","dépeint","dépendu","dépéri","déplu","dépoli","dépourvu","désobéi","desservi","déteint","détendu","détenu","détruit","dévêtu","discouru","disjoint","disparu","distendu","distrait","dit","diverti","dormi","durci","ébahi","ébaubi","ébaudi","éclairci","éconduit","écrit","élargi","élu","embelli","embouti","émoulu","empli","empreint","empuanti","ému","enchéri","encouru","endolori","endormi","enduit","endurci","enfoui","enfreint","enfui","englouti","engourdi","enhardi","enjoint","enlaidi","ennobli","enorgueilli","enrichi","enseveli","entendu","entr'aperçu","entraperçu","entreclos","entremis","entretenu","entrevu","entrouvert","envahi","épanoui","éperdu","équarri","équivalu","estourbi","établi","éteint","étendu","étourdi","étréci","étreint","eu","évanoui","exclu","extrait","faibli","fait","fallu","farci","feint","fendu","fini","fléchi","fleuri","fondu","forci","foui","fourbi","fourni","foutu","fraîchi","franchi","frémi","frit","fui","garanti","garni","gauchi","gémi","glapi","grandi","grossi","guéri","haï","imparti","induit","infléchi","inscrit","instruit","interdit","interrompu","interverti","introduit","inverti","investi","jailli","jauni","joint","joui","langui","loti","lu","maintenu","méconnu","mécru","médit","menti","minci","moisi","moiti","molli","mordu","morfondu","moulu","mugi","muni","nanti","noirci","nourri","nui","obéi","obscurci","obtenu","offert","oint","ouï","ourdi","ouvert","pâli","parcouru","paru","pâti","peint","pendu","perçu","péri","perverti","pétri","plaint","portrait","pourfendu","pourri","poursuivi","pourvu","prédéfini","prédit","préétabli","prémuni","prescrit","prétendu","prévalu","prévenu","prévu","produit","promu","proscrit","pu","puni","rabattu","rabougri","radouci","raffermi","ragaillardi","raidi","rajeuni","ralenti","ramolli","ranci","ravi","réadmis","réagi","réappris","rebâti","rebattu","rebondi","rebu","reconnu","reconstruit","reconverti","recouru","recouvert","recrépi","récrit","recru","reçu","recueilli","recuit","redécouvert","redéfini","redit","réduit","réécrit","réélu","réentendu","refendu","réfléchi","refondu","refoutu","refroidi","regarni","régi","réinscrit","réintroduit","réinvesti","rejoint","réjoui","relu","relui","rembruni","remordu","rempli","renchéri","rendormi","rendu","rentrait","répandu","reparcouru","réparti","reparu","repeint","rependu","repenti","reperdu","répondu","reproduit","résolu","resplendi","ressaisi","resservi","restreint","resurgi","rétabli","retendu","retenu","retraduit","retrait","retranscrit","rétréci","réuni","réussi","revécu","revendu","reverdi","reverni","revêtu","revu","ri","roidi","rosi","rôti","rougi","roussi","rousti","rouvert","rugi","saisi","sali","satisfait","sauri","secouru","séduit","senti","serti","servi","sévi","souffert","souri","sous-entendu","sous-tendu","souscrit","soustrait","soutenu","souvenu","su","subi","subvenu","suffi","suivi","surenchéri","surgi","suri","survécu","suspendu","tapi","tari","teint","tendu","tenu","terni","terri","tiédi","tondu","tordu","traduit","trahi","trait","transcrit","transi","travesti","tressailli","uni","vagi","vaincu","valu","vécu","vendu","verdi","verni","vêtu","vieilli","vomi","voulu","vu"],r=["absous","absoute","absoutes","dissous","dissoute","dissoutes","crû","crus","crue","crues","dû","dus","dues","mû","mus","mue","mues"],o=["repris","démis","omis","dépris","retransmis","assis","promis","circoncis","permis","compris","mépris","inclus","soumis","rassis","sursis","enclos","acquis","compromis","commis","désappris","appris","conquis","transmis","remis","surpris","reconquis","mis","enquis","pris","admis","clos","émis","entrepris","épris","requis"];a.exports=function(){return{irregularsRegular:i,irregularsIrregular:r,irregularsEndingInS:o}}},function(a,e,t){"use strict";a.exports=function(a,e){for(var t=[],i=e.exec(a);null!==i;i=e.exec(a))t.push({match:i[0],index:i.index});return t}},function(a,e,t){"use strict";var i=t(1141)().singleWords,r=["le","la","les","un","une","des","aux","du","au","d'un","d'une","l'un","l'une"],o=["deux","trois","quatre","cinq","six","sept","huit","neuf","dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf","vingt","trente","quarante","cinquante","soixante","soixante-dix","quatre-vingt","quatre-vingt-dix","septante","huitante","octante","nonante","cent","mille","million","milliard"],s=["second","secondes","deuxième","deuxièmes","troisième","troisièmes","quatrième","quatrièmes","cinquième","cinquièmes","sixième","sixièmes","septième","septièmes","huitième","huitièmes","neuvième","neuvièmes","dixième","dixièmes","onzième","onzièmes","douzième","douzièmes","treizième","treizièmes","quatorzième","quatorzièmes","quinzième","quinzièmes","seizième","seizièmes","dix-septième","dix-septièmes","dix-huitième","dix-huitièmes","dix-neuvième","dix-neuvièmes","vingtième","vingtièmes"],n=["je","tu","il","elle","on","nous","vous","ils","elles","qu'il","qu'elle","qu'ils","qu'elles","qu'on","d'elle","d'elles"],d=["moi","toi","lui","soi","eux","d'eux","qu'eux"],l=["me","te"],c=["celui","celle","ceux","celles","ce","celui-ci","celui-là","celle-ci","celle-là","ceux-ci","ceux-là","celles-ci","celles-là","ceci","cela","ça","cette","cet","ces"],u=["mon","ton","son","ma","ta","sa","mes","tes","ses","notre","votre","leur","nos","vos","leurs"],p=["beaucoup","peu","quelque","quelques","tous","tout","toute","toutes","plusieurs","plein","chaque","suffisant","suffisante","suffisantes","suffisants","faible","moins","tant","plus","divers","diverse","diverses"],g=["se"],m=["aucun","aucune","autre","autres","d'autres","certain","certaine","certaines","certains","chacun","chacune","même","mêmes","quelqu'un","quelqu'une","quelques'uns","quelques'unes","autrui","nul","personne","quiconque","rien","d'aucunes","d'aucuns","nuls","nules","l'autre","tel","telle","tels","telles"],f=["qui","que","lequel","laquelle","auquel","auxquels","auxquelles","duquel","desquels","desquelles","dont","où","quoi"],b=["combien","comment","pourquoi","d'où"],h=["quel","quels","quelle"],v=["y","n'y"],z=["là","ici","d'ici","voici"],y=["a","a-t-elle","a-t-il","a-t-on","ai","ai-je","aie","as","as-tu","aura","aurai","auraient","aurais","aurait","auras","aurez","auriez","aurons","auront","avaient","avais","avait","avez","avez-vous","aviez","avions","avons","avons-nous","ayez","ayons","eu","eûmes","eurent","eus","eut","eûtes","j'ai","j'aurai","j'avais","j'eus","ont","ont-elles","ont-ils","vais","vas","va","allons","allez","vont","vais-je","vas-tu","va-t-il","va-t-elle","va-t-on","allons-nous","allez-vous","vont-elles","vont-ils","allé","allés","j'allai","allai","allas","alla","allâmes","allâtes","allèrent","j'allais","allais","allait","allions","alliez","allaient","j'irai","iras","ira","irons","irez","iront","j'aille","aille","ailles","aillent","j'allasse","allasse","allasses","allât","allassions","allassiez","allassent","j'irais","irais","irait","irions","iriez","iraient","allant","viens","vient","venons","venez","viennent","viens-je","viens-de","vient-il","vient-elle","vient-on","venons-nous","venez-vous","viennent-elles","viennent-ils","vins","vint","vînmes","vîntes","vinrent","venu","venus","venais","venait","venions","veniez","venaient","viendrai","viendras","viendra","viendrons","viendrez","viendront","vienne","viennes","vinsse","vinsses","vînt","vinssions","vinssiez","vinssent","viendrais","viendrait","viendrions","viendriez","viendraient","venant","dois","doit","devons","devez","doivent","dois-je","dois-tu","doit-il","doit-elle","doit-on","devons-nous","devez-vous","doivent-elles","doivent-ils","dus","dut","dûmes","dûtes","durent","dû","devais","devait","devions","deviez","devaient","devrai","devras","devra","devrons","devrez","devront","doive","doives","dusse","dusses","dût","dussions","dussiez","dussent","devrais","devrait","devrions","devriez","devraient","peux","peut","pouvons","pouvez","peuvent","peux-je","peux-tu","peut-il","peut-elle","peut-on","pouvons-nous","pouvez-vous","peuvent-ils","peuvent-elles","pus","put","pûmes","pûtes","purent","pu","pouvais","pouvait","pouvions","pouviez","pouvaient","pourrai","pourras","pourra","pourrons","pourrez","pourront","puisse","puisses","puissions","puissiez","puissent","pusse","pusses","pût","pussions","pussiez","pussent","pourrais","pourrait","pourrions","pourriez","pourraient","pouvant","semble","sembles","semblons","semblez","semblent","semble-je","sembles-il","sembles-elle","sembles-on","semblons-nous","semblez-vous","semblent-ils","semblent-elles","semblai","semblas","sembla","semblâmes","semblâtes","semblèrent","semblais","semblait","semblions","sembliez","semblaient","semblerai","sembleras","semblera","semblerons","semblerez","sembleront","semblé","semblasse","semblasses","semblât","semblassions","semblassiez","semblassent","semblerais","semblerait","semblerions","sembleriez","sembleraient","parais","paraît","ait","paraissons","paraissez","paraissent","parais-je","parais-tu","paraît-il","paraît-elle","paraît-on","ait-il","ait-elle","ait-on","paraissons-nous","paraissez-vous","paraissent-ils","paraissent-elles","parus","parut","parûmes","parûtes","parurent","paraissais","paraissait","paraissions","paraissiez","paraissaient","paraîtrai","paraîtras","paraîtra","paraîtrons","paraîtrez","paraîtront","paru","paraisse","paraisses","parusse","parusses","parût","parussions","parussiez","parussent","paraîtrais","paraîtrait","paraîtrions","paraîtriez","paraîtraient","paraitrais","paraitrait","paraitrions","paraitriez","paraitraient","paraissant","mets","met","mettons","mettez","mettent","mets-je","mets-tu","met-il","met-elle","met-on","mettons-nous","mettez-vous","mettent-ils","mettent-elles","mis","mit","mîmes","mîtes","mirent","mettais","mettait","mettions","mettiez","mettaient","mettrai","mettras","mettra","mettrons","mettrez","mettront","mette","mettes","misse","misses","mît","missions","missiez","missent","mettrais","mettrait","mettrions","mettriez","mettraient","mettant","finis","finit","finissons","finissez","finissent","finis-je","finis-tu","finit-il","finit-elle","finit-on","finissons-nous","finissez-vous","finissent-ils","finissent-elles","finîmes","finîtes","finirent","finissais","finissait","finissions","finissiez","finissaient","finirai","finiras","finira","finirons","finirez","finiront","fini","finisse","finisses","finît","finirais","finirait","finirions","finiriez","finiraient","finissant","n'a","n'ai","n'aie","n'as","n'aura","n'aurai","n'auraient","n'aurais","n'aurait","n'auras","n'aurez","n'auriez","n'aurons","n'auront","n'avaient","n'avais","n'avait","n'avez","n'avez-vous","n'aviez","n'avions","n'avons","n'avons-nous","n'ayez","n'ayons","n'ont","n'ont-elles","n'ont-ils","n'allons","n'allez","n'allais","n'allait","n'allions","n'alliez","n'allaient","n'iras","n'ira","n'irons","n'irez","n'iront","qu'a"],w=["avoir","aller","venir","devoir","pouvoir","sembler","paraître","paraitre","mettre","finir","d'avoir","d'aller","n'avoir"],x=["suis","es","est","est-ce","n'est","sommes","êtes","sont","suis-je","es-tu","est-il","est-elle","est-on","sommes-nous","êtes-vous","sont-ils","sont-elles","étais","était","étions","étiez","étaient","serai","seras","sera","serons","serez","seront","serais","serait","serions","seriez","seraient","sois","soit","soyons","soyez","soient","été","n'es","n'est-ce","n'êtes","n'était","n'étais","n'étions","n'étiez","n'étaient","qu'est"],k=["être","d'être"],_=["à","après","d'après","au-delà","au-dessous","au-dessus","avant","avec","concernant","chez","contre","dans","de","depuis","derrière","dès","devant","durant","en","entre","envers","environ","hormis","hors","jusque","jusqu'à","jusqu'au","jusqu'aux","loin","moyennant","outre","par","parmi","pendant","pour","près","quant","sans","sous","sur","travers","vers","voilà"],j=["et","ni","or","ou"],q=["non","pas","seulement","sitôt","aussitôt","d'autre"],E=["afin","autant","comme","d'autant","d'ici","quand","lors","parce","si","tandis"],S=["dit","disent","dit-il","dit-elle","disent-ils","disent-elles","disait","disait-il","disait-elle","disaient-ils","disaient-elles","dirent","demande","demandent","demande-t-il","demande-t-elle","demandent-ils","demandent-elles","demandait","demandaient","demandait-il","demandait-elle","demandaient-ils","demandaient-elles","demanda","demanda-t-il","demanda-t-elle","demandé","pense","pensent","pense-t-il","pense-t-elle","pensent-ils","pensent-elles","pensait","pensaient","pensait-il","pensait-elle","pensaient-ils","pensaient-elles","pensa","pensa-t-il","pensa-t-elle","pensé","affirme","affirme-t-il","affirme-t-elle","affirmé","avoue","avoue-t-il","avoue-t-elle","avoué","concède","concède-t-il","concède-t-elle","concédé","confie","confie-t-il","confie-t-elle","confié","continue","continue-t-il","continue-t-elle","continué","déclame","déclame-t-il","déclame-t-elle","déclamé","déclare","déclare-t-il","déclare-t-elle","déclaré","déplore","déplore-t-il","déplore-t-elle","déploré","explique","explique-t-il","explique-t-elle","expliqué","lance","lance-t-il","lance-t-elle","lancé","narre","narre-t-il","narre-t-elle","narré","raconte","raconte-t-il","raconte-t-elle","raconté","rappelle","rappelle-t-il","rappelle-t-elle","rappelé","réagit","réagit-il","réagit-elle","réagi","répond","répond-il","répond-elle","répondu","rétorque","rétorque-t-il","rétorque-t-elle","rétorqué","souligne","souligne-t-il","souligne-t-elle","souligné","affirme-t-il","affirme-t-elle","ajoute-t-il","ajoute-t-elle","analyse-t-il","analyse-t-elle","avance-t-il","avance-t-elle","écrit-il","écrit-elle","indique-t-il","indique-t-elle","poursuit-il","poursuit-elle","précise-t-il","précise-t-elle","résume-t-il","résume-t-elle","souvient-il","souvient-elle","témoigne-t-il","témoigne-t-elle"],A=["dire","penser","demander","concéder","continuer","confier","déclamer","déclarer","déplorer","expliquer","lancer","narrer","raconter","rappeler","réagir","répondre","rétorquer","souligner","affirmer","ajouter","analyser","avancer","écrire","indiquer","poursuivre","préciser","résumer","témoigner"],T=["encore","éternellement","immédiatement","compris","comprenant","inclus","naturellement","particulièrement","notablement","actuellement","maintenant","ordinairement","généralement","habituellement","d'habitude","vraiment","finalement","uniquement","peut-être","initialement","déjà","c.-à-d","souvent","fréquemment","régulièrement","simplement","éventuellement","quelquefois","parfois","probable","plausible","jamais","toujours","incidemment","accidentellement","récemment","dernièrement","relativement","clairement","évidemment","apparemment","pourvu"],C=["assez","trop","tellement","presque","très","absolument","extrêmement","quasi","quasiment","fort"],O=["fais","fait","faisons","faites","font","fais-je","fait-il","fait-elle","fait-on","faisons-nous","faites-vous","font-ils","font-elles","fis","fit","fîmes","fîtes","firent","faisais","faisait","faisions","faisiez","faisaient","ferai","feras","fera","ferons","ferez","feront","veux","veut","voulons","voulez","veulent","voulus","voulut","voulûmes","voulûtes","voulurent","voulais","voulait","voulions","vouliez","voulaient","voudrai","voudras","voudra","voudrons","voudrez","voudront","voulu","veux-je","veux-tu","veut-il","veut-elle","veut-on","voulons-nous","voulez-vous","veulent-ils","veulent-elles","voudrais","voudrait","voudrions","voudriez","voudraient","voulant"],D=["faire","vouloir"],P=["antérieur","antérieures","antérieurs","antérieure","précédent","précédents","précédente","précédentes","facile","faciles","simple","simples","vite","vites","vitesse","vitesses","difficile","difficiles","propre","propres","long","longe","longs","longes","longue","longues","bas","basse","basses","ordinaire","ordinaires","bref","brefs","brève","brèves","sûr","sûrs","sûre","sûres","sure","sures","surs","habituel","habituels","habituelle","habituelles","soi-disant","surtout","récent","récents","récente","récentes","total","totaux","totale","totales","complet","complets","complète","complètes","possible","possibles","communément","constamment","facilement","continuellement","directement","légèrement","dernier","derniers","dernière","dernières","différent","différents","différente","différentes","similaire","similaires","pareil","pareils","pareille","pareilles","largement","mal","super","bien","pire","pires","suivants","suivante","suivantes","prochain","prochaine","prochains","prochaines","proche","proches","fur"],R=["nouveau","nouvel","nouvelle","nouveaux","nouvelles","vieux","vieil","vieille","vieilles","beau","bel","belle","belles","bon","bons","bonne","bonnes","grand","grande","grands","grandes","haut","hauts","haute","hautes","petit","petite","petits","petites","meilleur","meilleurs","meilleure","meilleures","joli","jolis","jolie","jolies","gros","grosse","grosses","mauvais","mauvaise","mauvaises","dernier","derniers","dernière","dernières"],B=["ah","ha","oh","ho","bis","plouf","vlan","ciel","pouf","paf","crac","hurrah","allo","stop","bravo","ô","eh","hé","aïe","oef","ahi","fi","zest","hem","holà","chut"],F=["mg","g","kg","ml","dl","cl","l","grammes","gram","once","onces","oz","lbs","càc","cc","càd","càs","càt","cd","cs","ct"],M=["minute","minutes","heure","heures","journée","journées","semaine","semaines","mois","année","années","aujourd'hui","demain","hier","après-demain","avant-hier"],L=["chose","choses","façon","façons","pièce","pièces","truc","trucs","fois","cas","aspect","aspects","objet","objets","idée","idées","thème","thèmes","sujet","sujets","personnes","manière","manières","sorte","sortes"],I=["ne","oui","d'accord","amen","euro","euros","etc"],$=["mme","mmes","mlle","mlles","mm","dr","pr"],N=["jr","sr"];a.exports=function(){return{filteredAtEnding:[].concat(s,w,D,k,A,R),filteredAtBeginning:P,filteredAtBeginningAndEnding:[].concat(r,_,j,c,C,p,u),filteredAnywhere:[].concat(i,n,l,d,g,B,o,x,S,y,O,m,q,E,h,f,z,I,v,F,M,L),cannotDirectlyPrecedePassiveParticiple:[].concat(r,_,d,l,u,g,m,b,h,o,s,O,S,D),cannotBeBetweenPassiveAuxiliaryAndParticiple:[].concat(y,w),all:[].concat(r,o,s,c,u,g,n,l,f,p,m,b,v,z,y,w,h,x,k,_,j,q,E,S,A,i,T,C,O,D,B,P,R,F,L,I,M,$,N)}}},function(a,e,t){"use strict";var i=t(1052)().filteredAuxiliaries,r=t(1052)().notFilteredAuxiliaries,o=t(1139)().singleWords,s=["the","an","a"],n=["one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen","twenty","hundred","hundreds","thousand","thousands","million","millions","billion","billions"],d=["first","second","third","fourth","fifth","sixth","seventh","eighth","ninth","tenth","eleventh","twelfth","thirteenth","fourteenth","fifteenth","sixteenth","seventeenth","eighteenth","nineteenth","twentieth"],l=["i","you","he","she","it","we","they"],c=["me","him","us","them"],u=["this","that","these","those"],p=["my","your","his","her","its","their","our","mine","yours","hers","theirs","ours"],g=["all","some","many","lot","lots","ton","tons","bit","no","every","enough","little","much","more","most","plenty","several","few","fewer","kind","kinds"],m=["myself","yourself","himself","herself","itself","oneself","ourselves","yourselves","themselves"],f=["none","nobody","everyone","everybody","someone","somebody","anyone","anybody","nothing","everything","something","anything","each","other","whatever","whichever","whoever","whomever","whomsoever","whosoever","others","neither","both","either","any","such"],b=["one's","nobody's","everyone's","everybody's","someone's","somebody's","anyone's","anybody's","nothing's","everything's","something's","anything's","whoever's","others'","other's","another's","neither's","either's"],h=["which","what","whose"],v=["who","whom"],z=["where","how","why","whether","wherever","whyever","wheresoever","whensoever","howsoever","whysoever","whatsoever","whereso","whomso","whenso","howso","whyso","whoso","whatso"],y=["therefor","therein","hereby","hereto","wherein","therewith","herewith","wherewith","thereby"],w=["there","here","whither","thither","hither","whence","thence"],x=["always","once","twice","thrice"],k=["can","cannot","can't","could","couldn't","could've","dare","dares","dared","do","don't","does","doesn't","did","didn't","done","have","haven't","had","hadn't","has","hasn't","i've","you've","we've","they've","i'd","you'd","he'd","she'd","it'd","we'd","they'd","would","wouldn't","would've","may","might","must","need","needn't","needs","ought","shall","shalln't","shan't","should","shouldn't","will","won't","i'll","you'll","he'll","she'll","it'll","we'll","they'll","there's","there're","there'll","here's","here're","there'll"],_=["appear","appears","appeared","become","becomes","became","come","comes","came","keep","keeps","kept","remain","remains","remained","stay","stays","stayed","turn","turns","turned"],j=["doing","daring","having","appearing","becoming","coming","keeping","remaining","staying","saying","asking","stating","seeming","letting","making","setting","showing","putting","adding","going","using","trying","containing"],q=["in","from","with","under","throughout","atop","for","on","of","to","aboard","about","above","abreast","absent","across","adjacent","after","against","along","alongside","amid","mid","among","apropos","apud","around","as","astride","at","ontop","afore","tofore","behind","ahind","below","ablow","beneath","neath","beside","between","atween","beyond","ayond","by","chez","circa","spite","down","except","into","less","like","minus","near","nearer","nearest","anear","notwithstanding","off","onto","opposite","out","outen","over","past","per","pre","qua","sans","sauf","sithence","through","thru","truout","toward","underneath","up","upon","upside","versus","via","vis-à-vis","without","ago","apart","aside","aslant","away","withal","towards","amidst","amongst","midst","whilst"],E=["back","within","forward","backward","ahead"],S=["and","or","and/or","yet"],A=["sooner","just","only"],T=["if","even"],C=["say","says","said","claimed","ask","asks","asked","stated","explain","explains","explained","think","thinks","talks","talked","announces","announced","tells","told","discusses","discussed","suggests","suggested","understands","understood"],O=["again","definitely","eternally","expressively","instead","expressly","immediately","including","instantly","namely","naturally","next","notably","now","nowadays","ordinarily","positively","truly","ultimately","uniquely","usually","almost","maybe","probably","granted","initially","too","actually","already","e.g","i.e","often","regularly","simply","optionally","perhaps","sometimes","likely","never","ever","else","inasmuch","provided","currently","incidentally","elsewhere","particular","recently","relatively","f.i","clearly","apparently"],D=["highly","very","really","extremely","absolutely","completely","totally","utterly","quite","somewhat","seriously","fairly","fully","amazingly"],P=["seem","seems","seemed","let","let's","lets","make","makes","made","want","showed","shown","go","goes","went","gone","take","takes","took","taken","put","puts","use","used","try","tries","tried","mean","means","meant","called","based","add","adds","added","contain","contains","contained","consist","consists","consisted","ensure","ensures","ensured"],R=["new","newer","newest","old","older","oldest","previous","good","well","better","best","big","bigger","biggest","easy","easier","easiest","fast","faster","fastest","far","hard","harder","hardest","least","own","large","larger","largest","long","longer","longest","low","lower","lowest","high","higher","highest","regular","simple","simpler","simplest","small","smaller","smallest","tiny","tinier","tiniest","short","shorter","shortest","main","actual","nice","nicer","nicest","real","same","able","certain","usual","so-called","mainly","mostly","recent","anymore","complete","lately","possible","commonly","constantly","continually","directly","easily","nearly","slightly","somewhere","estimated","latest","different","similar","widely","bad","worse","worst","great","specific","available","average","awful","awesome","basic","beautiful","busy","current","entire","everywhere","important","major","multiple","normal","necessary","obvious","partly","special","last","early","earlier","earliest","young","younger","youngest",""],B=["oh","wow","tut-tut","tsk-tsk","ugh","whew","phew","yeah","yea","shh","oops","ouch","aha","yikes"],F=["tbs","tbsp","spk","lb","qt","pk","bu","oz","pt","mod","doz","hr","f.g","ml","dl","cl","l","mg","g","kg","quart"],M=["seconds","minute","minutes","hour","hours","day","days","week","weeks","month","months","year","years","today","tomorrow","yesterday"],L=["thing","things","way","ways","matter","case","likelihood","ones","piece","pieces","stuff","times","part","parts","percent","instance","instances","aspect","aspects","item","items","idea","theme","person","instance","instances","detail","details","factor","factors","difference","differences"],I=["not","yes","sure","top","bottom","ok","okay","amen","aka","etc","etcetera","sorry","please"],$=["ms","mss","mrs","mr","dr","prof"],N=["jr","sr"];a.exports=function(){return{filteredAtEnding:[].concat(d,j,R),filteredAtBeginningAndEnding:[].concat(s,q,S,u,D,g,p),filteredAnywhere:[].concat(o,x,l,c,m,B,n,i,k,_,C,P,f,A,T,h,v,z,w,I,E,y,F,M,L),cannotDirectlyPrecedePassiveParticiple:[].concat(s,q,u,p,d,j,g),cannotBeBetweenPassiveAuxiliaryAndParticiple:[].concat(k,_,C,P),all:[].concat(s,n,d,u,p,m,l,c,g,f,j,b,h,v,z,y,w,x,E,i,r,k,_,q,S,A,T,C,o,O,D,P,B,R,F,L,I,$,N)}}},function(a,e,t){"use strict";var i=["am","is","are","was","were","been","get","gets","got","gotten","be","she's","he's","it's","i'm","we're","they're","you're","isn't","weren't","wasn't","that's","aren't"],r=["being","getting","having","what's"];a.exports=function(){return{filteredAuxiliaries:i,notFilteredAuxiliaries:r,all:i.concat(r)}}},function(a,e,t){"use strict";var i=t(1142)().singleWords,r=["el","la","los","las","un","una","unos","unas"],o=["dos","tres","cuatro","cinco","seis","siete","ocho","nueve","diez","once","doce","trece","catorce","quince","dieciseis","diecisiete","dieciocho","diecinueve","veinte","cien","centena","mil","millon","millones"],s=["primera","segunda","tercera","cuarto","cuarta","quinto","quinta","sexto","sexta","septimo","septima","octavo","octava","noveno","novena","décimo","décima","vigésimo","vigésima","primeros","primeras","segundos","segundas","terceros","terceras","cuartos","cuartas","quintos","quintas","sextos","sextas","septimos","septimas","octavos","octavas","novenos","novenas","décimos","décimas","vigésimos","vigésimas"],n=["yo","tú","él","ella","ello","nosotros","nosotras","vosotros","vosotras","ustedes","ellos","ellas"],d=["me","te","lo","se","nos","os","les"],l=["mí","ti","ud","uds","usted","sí"],c=["conmigo","contigo","consigo"],u=["este","ese","aquel","esta","esa","aquella","estos","esos","aquellos","estas","esas","aquellas","esto","eso","aquello"],p=["mi","mis","mío","míos","mía","mías","nuestro","nuestros","nuestra","nuestras","tuyo","tuyos","tuya","tuyas","tu","tus","vuestro","vuestros","vuestra","vuestras","suyo","suyos","suya","suyas","su","sus"],g=["bastante","bastantes","mucho","muchas","mucha","muchos","demasiado","demasiada","demasiados","demasiadas","poco","poca","pocos","pocas","demás","otros","otras","todo","toda","todos","todas"],m=["alguien","algo","algún","alguno","alguna","algunos","algunas","nadie","nada","ningún","ninguno","ninguna","ningunos","ningunas","tanto","tantos","tanta","tantas"],f=["cuyas","cual"],b=["cuyo"],h=["comoquiera","cualesquiera","cualquier","cuanta","cuantas","cuanto","cuantos","cuál","cuáles","cuánta","cuántas","cuánto","cuántos","cómo","dondequiera","dónde","quien","quienes","quienquiera","quién","quiénes","qué"],v=["allí","ahí","allá","aquí","acá","adónde","delante","detrás","debajo","adelante","atrás","adentro","afuera"],z=["he","has","ha","hay","hemos","habéis","han","hube","hubiste","hubo","hubimos","hubisteis","hubieron","había","habías","habíamos","habíais","habían","habría","habrías","habríais","habrían","habré","habrás","habrá","habremos","habréis","habrán","haya","hayas","hayamos","hayáis","hayan","hubiera","hubieras","hubiéramos","hubierais","hubieran","hubiese","hubieses","hubiésemos","hubieseis","hubiesen","hubiere","hubieres","hubiéremos","hubiereis","hubieren","habed","habido","debo","debes","debe","debemos","debéis","deben","debí","debiste","debió","debimos","debisteis","debieron","debía","debías","debíamos","debíais","debían","debería","deberías","deberíamos","deberíais","deberían","deberé","deberás","deberá","deberemos","deberéis","deberán","deba","debas","debamos","debáis","deban","debiera","debieras","debiéramos","debierais","debieran","debiese","debieses","debiésemos","debieseis","debiesen","debiere","debieres","debiéremos","debiereis","debieren","debed","debido","empiezo","empiezas","empieza","empezáis","empiezan","empecé","empezaste","empezó","empezamos","empezasteis","empezaron","empezaba","empezabas","empezábamos","empezabais","empezaban","empezaría","empezarías","empezaríamos","empezaríais","empezarían","empezaré","empezarás","empezará","empezaremos","empezaréis","empezarán","empiece","empieces","empecemos","empecéis","empiecen","empezara","empezaras","empezáramos","empezarais","empezaran","empezase","empezases","empezásemos","empezaseis","empezasen","empezare","empezares","empezáremos","empezareis","empezaren","empezad","empezado","comienzo","comienzas","comienza","comenzamos","comenzáis","comienzan","comencé","comenzaste","comenzó","comenzasteis","comenzaron","comenzaba","comenzabas","comenzábamos","comenzabais","comenzaban","comenzaría","comenzarías","comenzaríamos","comenzaríais","comenzarían","comenzaré","comenzarás","comenzará","comenzaremos","comenzaréis","comenzarán","comience","comiences","comencemos","comencéis","comiencen","comenzara","comenzaras","comenzáramos","comenzarais","comenzaran","comenzase","comenzases","comenzásemos","comenzaseis","comenzasen","comenzare","comenzares","comenzáremos","comenzareis","comenzaren","comenzad","comenzado","sigo","sigues","sigue","seguimos","seguis","siguen","seguí","seguiste","siguió","seguisteis","siguieron","seguía","seguías","seguíamos","seguíais","seguían","seguiría","seguirías","seguiríamos","seguiríais","seguirían","seguiré","seguirás","seguirá","seguiremos","seguiréis","seguirán","siga","sigas","sigamos","sigáis","sigan","siguiera","siguieras","siguiéramos","siguierais","siguieran","siguiese","siguieses","siguiésemos","siguieseis","siguiesen","siguiere","siguieres","siguiéremos","siguiereis","siguieren","seguid","seguido","tengo","tienes","tiene","tenemos","tenéis","tienen","tuve","tuviste","tuvo","tuvimos","tuvisteis","tuvieron","tenía","tenías","teníamos","teníais","tenían","tendría","tendrías","tendríamos","tendríais","tendrían","tendré","tendrás","tendrá","tendremos","tendréis","tendrán","tenga","tengas","tengamos","tengáis","tengan","tuviera","tuvieras","tuviéramos","tuvierais","tuvieran","tuviese","tuvieses","tuviésemos","tuvieseis","tuviesen","tuviere","tuvieres","tuviéremos","tuviereis","tuvieren","ten","tened","tenido","ando","andas","andamos","andáis","andan","anduve","anduviste","anduvo","anduvimos","anduvisteis","anduvieron","andaba","andabas","andábamos","andabais","andaban","andaría","andarías","andaríamos","andaríais","andarían","andaré","andarás","andará","andaremos","andaréis","andarán","ande","andes","andemos","andéis","anden","anduviera","anduvieras","anduviéramos","anduvierais","anduvieran","anduviese","anduvieses","anduviésemos","anduvieseis","anduviesen","anduviere","anduvieres","anduviéremos","anduviereis","anduvieren","andad","andado","quedo","quedas","queda","quedamos","quedáis","quedan","quedé","quedasteis","quedaron","quedaba","quedabas","quedábamos","quedabais","quedaban","quedaría","quedarías","quedaríamos","quedaríais","quedarían","quedaré","quedarás","quedará","quedaremos","quedaréis","quedarán","quede","quedes","quedemos","quedéis","queden","quedara","quedaras","quedáramos","quedarais","quedaran","quedase","quedases","quedásemos","quedaseis","quedasen","quedare","quedares","quedáremos","quedareis","quedaren","quedad","quedado","hallo","hallas","halla","hallamos","halláis","hallan","hallé","hallaste","halló","hallasteis","hallaron","hallaba","hallabas","hallábamos","hallabais","hallaban","hallaría","hallarías","hallaríamos","hallaríais","hallarían","hallaré","hallarás","hallará","hallaremos","hallaréis","hallarán","halle","halles","hallemos","halléis","hallen","hallara","hallaras","halláramos","hallarais","hallaran","hallase","hallases","hallásemos","hallaseis","hallasen","hallare","hallares","halláremos","hallareis","hallaren","hallad","hallado","vengo","vienes","viene","venimos","venis","vienen","vine","viniste","vino","vinimos","vinisteis","vinieron","venía","vanías","verníamos","veníais","venían","vendría","vendrías","vendríamos","vendíais","vendrían","vendré","vendrás","vendrá","vendremos","vendréis","vendrán","venga","vengas","vengamos","vengáis","vengan","viniera","vinieras","viniéramos","vinierais","vinieran","viniese","vinieses","viniésemos","vinieseis","viniesen","viniere","vinieres","viniéremos","viniereis","vinieren","ven","venid","venido","abro","abres","abre","abrismos","abrís","abren","abrí","abriste","abrió","abristeis","abrieron","abría","abrías","abríais","abrían","abriría","abrirías","abriríamos","abriríais","abrirían","abriré","abrirás","abrirá","abriremos","abriréis","abrirán","abra","abras","abramos","abráis","abran","abriera","abrieras","abriéramos","abrierais","abrieran","abriese","abrieses","abriésemos","abrieseis","abriesen","abriere","abrieres","abriéremos","abriereis","abrieren","abrid","abierto","voy","vas","va","vamos","vais","van","iba","ibas","íbamos","ibais","iban","iría","irías","iríamos","iríais","irían","iré","irás","irá","iremos","iréis","irán","vaya","vayas","vayamos","vayáis","vayan","ve","id","ido","acabo","acabas","acaba","acabamos","acabáis","acaban","acabé","acabaste","acabó","acabasteis","acabaron","acababa","acababas","acabábamos","acababais","acababan","acabaría","acabarías","acabaríamos","acabaríais","acabarían","acabaré","acabarás","acabará","acabaremos","acabaréis","acabarán","acabe","acabes","acabemos","acabéis","acaben","acabara","acabaras","acabáramos","acabarais","acabaran","acabase","acabases","acabásemos","acabaseis","acabasen","acabare","acabares","acabáremos","acabareis","acabaren","acabad","acabado","llevo","llevas","lleva","llevamos","lleváis","llevan","llevé","llevaste","llevó","llevasteis","llevaron","llevaba","llevabas","llevábamos","llevabais","llevaban","llevaría","llevarías","llevaríamos","llevaríais","llevarían","llevaré","llevarás","llevará","llevaremos","llevaréis","llevarán","lleve","lleves","llevemos","llevéis","lleven","llevara","llevaras","lleváramos","llevarais","llevaran","llevase","llevases","llevásemos","llevaseis","llevasen","llevare","llevares","lleváremos","llevareis","llevaren","llevad","llevado","alcanzo","alcanzas","alcanza","alcanzamos","alcanzáis","alcanzan","alcancé","alcanzaste","alcanzó","alcanzasteis","alcanzaron","alcanzaba","alcanzabas","alcanzábamos","alcanzabais","alcanzaban","alcanzaría","alcanzarías","alcanzaríamos","alcanzaríais","alcanzarían","alcanzaré","alcanzarás","alcanzará","alcanzaremos","alcanzaréis","alcanzarán","alcance","alcances","alcancemos","alcancéis","alcancen","alcanzara","alcanzaras","alcanzáramos","alcanzarais","alcanzaran","alcanzase","alcanzases","alcanzásemos","alcanzaseis","alcanzasen","alcanzare","alcanzares","alcanzáremos","alcanzareis","alcanzaren","alcanzad","alcanzado","digo","dices","dice","decimos","decís","dicen","dije","dijiste","dijo","dijimos","dijisteis","dijeron","decía","decías","decíamos","decíais","decían","diría","dirías","diríamos","diríais","dirían","diré","dirás","dirá","diremos","diréis","dirán","diga","digas","digamos","digáis","digan","dijera","dijeras","dijéramos","dijerais","dijeran","dijese","dijeses","dijésemos","dijeseis","dijesen","dijere","dijeres","dijéremos","dijereis","dijeren","di","decid","dicho","continúo","continúas","continúa","continuamos","continuáis","continúan","continué","continuaste","continuó","continuasteis","continuaron","continuaba","continuabas","continuábamos","continuabais","continuaban","continuaría","continuarías","continuaríamos","continuaríais","continuarían","continuaré","continuarás","continuará","continuaremos","continuaréis","continuarán","continúe","continúes","continuemos","continuéis","continúen","continuara","continuaras","continuáramos","continuarais","continuaran","continuase","continuases","continuásemos","continuaseis","continuasen","continuare","continuares","continuáremos","continuareis","continuaren","continuad","continuado","resulto","resultas","resulta","resultamos","resultáis","resultan","resulté","resultaste","resultó","resultasteis","resultaron","resultaba","resultabas","resultábamos","resultabais","resultaban","resultaría","resultarías","resultaríamos","resultaríais","resultarían","resultaré","resultarás","resultará","resultaremos","resultaréis","resultarán","resulte","resultes","resultemos","resultéis","resulten","resultara","resultaras","resultáramos","resultarais","resultaran","resultase","resultases","resultásemos","resultaseis","resultasen","resultare","resultares","resultáremos","resultareis","resultaren","resultad","resultado","puedo","puedes","puede","podemos","podéis","pueden","pude","pudiste","pudo","pudimos","pudisteis","pudieron","podía","podías","podíamos","podíais","podían","podría","podrías","podríamos","podríais","podrían","podré","podrás","podrá","podremos","podréis","podrán","pueda","puedas","podamos","podáis","puedan","pudiera","pudieras","pudiéramos","pudierais","pudieran","pudiese","pudieses","pudiésemos","pudieseis","pudiesen","pudiere","pudieres","pudiéremos","pudiereis","pudieren","poded","podido","quiero","quieres","quiere","queremos","queréis","quieren","quise","quisiste","quiso","quisimos","quisisteis","quisieron","quería","querías","queríamos","queríais","querían","querría","querrías","querríamos","querríais","querrían","querré","querrás","querrá","querremos","querréis","querrán","quiera","quieras","queramos","queráis","quieran","quisiera","quisieras","quisiéramos","quisierais","quisieran","quisiese","quisieses","quisiésemos","quisieseis","quisiesen","quisiere","quisieres","quisiéremos","quisiereis","quisieren","quered","querido","sabes","sabe","sabemos","sabéis","saben","supe","supiste","supo","supimos","supisteis","supieron","sabía","sabías","sabíamos","sabíais","sabían","sabría","sabrías","sabríamos","sabríais","sabrían","sabré","sabrás","sabrá","sabremos","sabréis","sabrán","sepa","sepas","sepamos","sepáis","sepan","supiera","supieras","supiéramos","supierais","supieran","supiese","supieses","supiésemos","supieseis","supiesen","supiere","supieres","supiéremos","supiereis","supieren","sabed","sabido","suelo","sueles","suele","solemos","soléis","suelen","solí","soliste","solió","solimos","solisteis","solieron","solía","solías","solíamos","solíais","solían","solería","solerías","soleríamos","soleríais","solerían","soleré","solerás","solerá","soleremos","soleréis","solerán","suela","suelas","solamos","soláis","suelan","soliera","solieras","soliéramos","solierais","solieran","soliese","solieses","soliésemos","solieseis","soliesen","soliere","solieres","soliéremos","soliereis","solieren","soled","solido","necesito","necesitas","necesitamos","necesitáis","necesitan","necesité","necesitaste","necesitó","necesitasteis","necesitaron","necesitaba","necesitabas","necesitábamos","necesitabais","necesitaban","necesitaría","necesitarías","necesitaríamos","necesitaríais","necesitarían","necesitaré","necesitarás","necesitará","necesitaremos","necesitaréis","necesitarán","necesite","necesites","necesitemos","necesitéis","necesiten","necesitara","necesitaras","necesitáramos","necesitarais","necesitaran","necesitase","necesitases","necesitásemos","necesitaseis","necesitasen","necesitare","necesitares","necesitáremos","necesitareis","necesitaren","necesita","necesitad","necesitado"],y=["haber","deber","empezar","comenzar","seguir","tener","andar","quedar","hallar","venir","abrir","ir","acabar","llevar","alcanzar","decir","continuar","resultar","poder","querer","saber","soler","necesitar"],w=["estoy","estás","está","estamos","estáis","están","estuve","estuviste","estuvo","estuvimos","estuvisteis","estuvieron","estuba","estabas","estábamos","estabais","estaban","estraría","estarías","estaríamos","estaríais","estarían","estaré","estarás","estará","estaremos","estaréis","estarán","esté","estés","estemos","estéis","estén","estuviera","estuviese","estuvieras","estuviéramos","estuvierais","estuvieran","estuvieses","estuviésemos","estuvieseis","estuviesen","estuviere","estuvieres","estuviéremos","estuviereis","estuvieren","estad","estado"],x=["soy","eres","es","somos","sois","son","fui","fuiste","fuimos","fuisteis","fueron","era","eras","éramos","erais","eran","sería","serías","seríamos","seríais","serían","seré","serás","seremos","seréis","serán","sea","seas","seamos","seáis","sean","fueras","fuéramos","fuerais","fueran","fuese","fueses","fuésemos","fueseis","fuesen","fuere","fueres","fuéremos","fuereis","fueren","sé","sed","sido"],k=["estar"],_=["ser"],j=["a","ante","abajo","adonde","al","allende","alrededor","amén","antes","arriba","aun","bajo","cabe","cabo","con","contigo","contra","de","dejante","del","dentro","desde","donde","durante","en","encima","entre","excepto","fuera","hacia","hasta","incluso","mediante","más","opuesto","par","para","próximo","salvo","según","sin","so","sobre","tras","versus","vía"],q=["cerca"],E=["o","y","entonces","e","u","ni","bien","ora"],S=["igual"],A=["apenas","segun","que"],T=["apunto","apunta","confieso","confiesa","confesaba","revelado","revelo","revela","revelaba","declarado","declaro","declara","declaba","señalo","señala","señalaba","declaraba","comento","comenta"],C=["básicamente","esencialmente","primeramente","siempre","nunca","ahora","quizá","acaso","inclusive","probablemente","verdaderamente","seguramente","jamás","obviamente","indiscutiblement","inmediatamente","previamente"],O=["muy","tan","completamente","suficiente","tal","tales"],D=["hago","haces","hace","hacemos","hacéis","hacen","hice","hiciste","hizo","hicimos","hicisteis","hicieron","hacía","hacías","hacíamos","hacíais","hacían","haría,","harías","haríamos","haríais","harían","haré","harás","hará","haremos","haréis","harán","haga","hagas","hagamos","hagáis","hagan","hiciera","hicieras","hiciéramos","hicierais","hicieran","hiciese","hicieses","hiciésemos","hicieseis","hiciesen","hiciere","hicieres","hiciéremos","hiciereis","hicieren","haz","haced","hecho","parezco","pareces","parece","parecemos","parecéis","parecen","parecí","pareciste","pareció","parecimos","parecisteis","parecieron","parecía","parecías","parecíamos","parecíais","parecían","parecería","parecerías","pareceríamos","pareceríais","parecerían","pareceré","parecerás","parecerá","pareceremos","pareceréis","parecerán","parezca","parezcas","parezcamos","parezcáis","parezcan","pareciera","parecieras","pareciéramos","parecierais","parecieran","pareciese","parecieses","pareciésemos","parecieseis","pareciesen","pareciere","parecieres","pareciéremos","pareciereis","parecieren","pareced","parecido"],P=["hacer","parecer"],R=["enfrente","mejor","peor","menos","claro","bueno","nuevo","nueva","nuevos","nuevas","viejo","viejos","vieja","viejas","anterior","grande","gran","grandes","mayores","fácil","fáciles","rápido","rápida","rápidos","rápidas","lejos","lejas","difícil","difíciles","propio","propios","propia","propias","largo","larga","largos","largas","bajos","baja","bajas","alto","alta","altos","altas","regular","regulares","normal","pequeño","pequeña","pequeños","pequeñas","diminuta","diminuto","diminutas","diminutos","chiquitito","chiquititos","chiquitita","chiquititas","corta","corto","cortas","cortos","principal","principales","mismo","mismos","misma","mismas","capaz","capaces","cierta","cierto","ciertas","ciertos","llamado","llamada","llamados","llamadas","mayormente","reciente","recientes","completa","completo","completas","completos","absoluta","absoluto","absolutas","absolutos","últimamente","posible","común","comúnes","comúnmente","constantemente","continuamente","directamente","fácilmente","casi","ligeramente","estima","estimada","estimado","aproximada","aproximadamente","última","últimas","último","últimos","diferente","diferentes","similar","mal","malo","malos","mala","malas","perfectamente","excelente","final","general"],B=["ah","eh","ejem","ele","achís","adiós","agur","ajá","ajajá","ala","alá","albricias","aleluya","alerta","alirón","aló","amalaya","ar","aro","arrarray","arre","arsa","atatay","aúpa","ax","ay","ayayay","bah","banzai","barajo","bla","bravo","buf","bum","ca","caguendiós","canastos","caracho","caracoles","carajo","caramba","carape","caray","cáscaras","cáspita","cataplum","ce","chao","chau","che","chis","chist","chitón","cho","chucho","chus","cielos","clo","coche","cochi","cojones","concho","coño","córcholis","cuchí","cuidado","cuz","demonio","demontre","despacio","diablo","diantre","dios","ea","epa","equilicuá","estúpido","eureka","evohé","exacto","fantástico","firmes","fo","forte","gua","gualá","guarte","guay","hala","hale","he","hi","hin","hola","hopo","huesque","huiche","huichó","huifa","hurra","huy","ja","jajajá","jajay","jaque","jau","jo","jobar","joder","jolín","jopo","leñe","listo","malhayas","mamola","mecachis","miéchica","mondo","moste","mutis","nanay","narices","oh","ojalá","ojo","okay","ole","olé","órdiga","oste","ostras","ox","oxte","paf","pardiez","paso","pucha","puf","puff","pumba","puñeta","quia","quiúbole","recórcholis","rediez","rediós","salve","sanseacabó","sniff","socorro","ta","tararira","tate","tururú","uf","uh","ui","upa","uste","uy","victoria","vítor","viva","za","zambomba","zapateta","zape","zas"],F=["kg","mg","gr","g","km","m","l","ml","cl"],M=["minuto","minutos","hora","horas","día","días","semana","semanas","mes","meses","año","años","hoy","mañana","ayer"],L=["cosa","cosas","manera","maneras","caso","casos","pieza","piezas","vez","veces","parte","partes","porcentaje","instancia","aspecto","aspectos","punto","puntos","objeto","objectos","persona","personas"],I=["no","euros"],$=["sra","sras","srta","sr","sres","dra","dr","profa","prof"],N=["jr","sr"];a.exports=function(){return{filteredAtBeginning:R,filteredAtEnding:[].concat(s,y,k,_,P),filteredAtBeginningAndEnding:[].concat(r,j,E,u,O,g,p),filteredAnywhere:[].concat(i,n,d,l,c,B,o,z,w,x,T,D,m,S,A,f,b,h,v,I,q,F,M,L),cannotDirectlyPrecedePassiveParticiple:[].concat(r,j,d,p,m,h,o,s,D,P,T,f,b,c,l,q),cannotBeBetweenPassiveAuxiliaryAndParticiple:[].concat(w,k),all:[].concat(r,o,s,u,p,n,c,l,d,g,m,f,b,h,v,q,z,y,w,x,k,_,j,E,S,A,T,i,C,O,D,P,B,R,F,L,I,$,N)}}},function(a,e,t){"use strict";var i=t(1144)().singleWords,r=["il","i","la","le","lo","gli","un","uno","una"],o=["due","tre","quattro","cinque","sette","otto","nove","dieci","undici","dodici","tredici","quattordici","quindici","sedici","diciassette","diciotto","diciannove","venti","cento","mille","mila","duemila","tremila","quattromila","cinquemila","seimila","settemila","ottomila","novemila","diecimila","milione","milioni","miliardo","miliardi"],s=["prima","primi","prime","secondo","seconda","secondi","seconde","terzo","terza","terzi","terze","quarto","quarta","quarti","quarte","quinto","quinta","quinti","quinte","sesto","sesta","sesti","seste","settimo","settima","settimi","settime","ottavo","ottava","ottavi","ottave","nono","nona","noni","none","decimo","decima","decimi","decime","undicesimo","undicesima","undicesimi","undicesime","dodicesimo","dodicesima","dodicesimi","dodicesime","tredicesimo","tredicesima","tredicesimi","tredicesime","quattordicesimo","quattordicesima","quattordicesimi","quattordicesime","quindicesimo","quindicesima","quindicesimi","quindicesime","sedicesimo","sedicesima","sedicesimi","sedicesime","diciassettesimo","diciassettesima","diciassettesimi","diciassettesime","diciannovesimo","diciannovesima","diciannovesimi","diciannovesime","ventesimo","ventesima","ventesimi","ventesime"],n=["io","tu","egli","esso","lui","ella","essa","lei","noi","voi","essi","esse","loro"],d=["mi","ti","si","ci","vi","li","me","te","se","glie","glielo","gliela","glieli","gliele","gliene","ce","ve"],l=["sé"],c=["ciò","codesto","codesta","codesti","codeste","colei","colui","coloro","costei","costui","costoro","medesimo","medesima","medesimi","medesime","questo","questa","questi","queste","quello","quella","quelli","quelle","quel","quei","quegli"],u=["mio","mia","miei","mie","tuo","tua","tuoi","tue","suo","sua","suoi","sue","nostro","nostra","nostri","nostre","vostro","vostra","vostri","vostre"],p=["affatto","alcun","alcuna","alcune","alcuni","alcuno","bastantemente","grandemente","massimamente","meno","minimamente","molta","molte","molti","moltissimo","molto","nessun","nessuna","nessuno","niente","nulla","ogni","più","po'","poca","poche","pochi","poco","pochissime","pochissimi","qualche","qualsiasi","qualunque","quintali","rara","rarissima","rarissimo","raro","spesso","spessissimo","sufficientemente","taluno","taluna","taluni","talune","tanta","tante","tanti","tantissime","tantissimi","tanto","tonnellate","troppa","troppe","troppi","troppo","tutta","tutte","tutti","tutto"],g=["alcunché","alcunchè","altro","altra","altri","altre","certa","certi","certe","checché","checchè","chicchessia","chiunque","ciascuno","ciascuna","ciascun","diverso","diversa","diversi","diverse","parecchio","parecchia","parecchi","parecchie","qualcosa","qualcuno","qualcuna","vario","varia","vari","varie"],m=["che","cosa","cui","qual","quale","quali"],f=["chi","quanta","quante","quanti","quanto"],b=["com'è","com'era","com'erano","donde","d'onde","dove","dov'è","dov'era","dov'erano","dovunque"],h=["ne"],v=["accanto","altrove","attorno","dappertutto","giù","là","laggiù","lassù","lì","ovunque","qua","quaggiù","quassù","qui"],z=["vengano","vengo","vengono","veniamo","veniate","venimmo","venisse","venissero","venissi","venissimo","veniste","venisti","venite","veniva","venivamo","venivano","venivate","venivi","venivo","venne","vennero","venni","verrà","verrai","verranno","verrebbe","verrebbero","verrei","verremmo","verremo","verreste","verresti","verrete","verrò","viene","vieni"],y=["venire","venir"],w=["abbi","abbia","abbiamo","abbiano","abbiate","abbiente","avemmo","avendo","avente","avesse","avessero","avessi","avessimo","aveste","avesti","avete","aveva","avevamo","avevano","avevate","avevi","avevo","avrà","avrai","avranno","avrebbe","avrebbero","avrei","avremmo","avremo","avreste","avresti","avrete","avrò","avuto","ebbe","ebbero","ebbi","ha","hai","hanno","ho","l'abbi","l'abbia","l'abbiamo","l'abbiano","l'abbiate","l'abbiente","l'avemmo","l'avendo","l'avente","l'avesse","l'avessero","l'avessi","l'avessimo","l'aveste","l'avesti","l'avete","l'aveva","l'avevamo","l'avevano","l'avevate","l'avevi","l'avevo","l'avrà","l'avrai","l'avranno","l'avrebbe","l'avrebbero","l'avrei","l'avremmo","l'avremo","l'avreste","l'avresti","l'avrete","l'avrò","l'avuto","l'ebbe","l'ebbero","l'ebbi","l'ha","l'hai","l'hanno","l'ho","possa","possano","possiamo","possiate","posso","possono","poté","potei","potemmo","potendo","potente","poterono","potesse","potessero","potessi","potessimo","poteste","potesti","potete","potette","potettero","potetti","poteva","potevamo","potevano","potevate","potevi","potevo","potrà","potrai","potranno","potrebbe","potrebbero","potrei","potremmo","potremo","potreste","potresti","potrete","potrò","potuto","può","puoi","voglia","vogliamo","vogliano","vogliate","voglio","vogliono","volemmo","volendo","volente","volesse","volessero","volessi","volessimo","voleste","volesti","volete","voleva","volevamo","volevano","volevate","volevi","volevo","volle","vollero","volli","voluto","vorrà","vorrai","vorranno","vorrebbe","vorrebbero","vorrei","vorremmo","vorremo","vorreste","vorresti","vorrete","vorrò","vuoi","vuole","debba","debbano","debbono","deva","deve","devi","devo","devono","dobbiamo","dobbiate","dové","dovei","dovemmo","dovendo","doverono","dovesse","dovessero","dovessi","dovessimo","doveste","dovesti","dovete","dovette","dovettero","dovetti","doveva","dovevamo","dovevano","dovevate","dovevi","dovevo","dovrà","dovrai","dovranno","dovrebbe","dovrebbero","dovrei","dovremmo","dovremo","dovreste","dovresti","dovrete","dovrò","dovuto","sa","sai","sanno","sapemmo","sapendo","sapesse","sapessero","sapessi","sapessimo","sapeste","sapesti","sapete","sapeva","sapevamo","sapevano","sapevate","sapevi","sapevo","sappi","sappia","sappiamo","sappiano","sappiate","saprà","saprai","sapranno","saprebbe","saprebbero","saprei","sapremmo","sapremo","sapreste","sapresti","saprete","saprò","saputo","seppe","seppero","seppi","so","soglia","sogliamo","sogliano","sogliate","soglio","sogliono","solesse","solessero","solessi","solessimo","soleste","solete","soleva","solevamo","solevano","solevate","solevi","solevo","suoli","sta","stai","stando","stanno","stante","starà","starai","staranno","staremo","starete","starò","stava","stavamo","stavano","stavate","stavi","stavo","stemmo","stessero","stessimo","steste","stesti","stette","stettero","stetti","stia","stiamo","stiano","stiate","sto"],x=["avere","l'avere","aver","l'aver","potere","poter","volere","voler","dovere","dover","sapere","saper","solere","stare","star"],k=["è","e'","era","erano","eravamo","eravate","eri","ero","essendo","essente","fosse","fossero","fossi","fossimo","foste","fosti","fu","fui","fummo","furono","sarà","sarai","saranno","sarebbe","sarebbero","sarei","saremmo","saremo","sareste","saresti","sarete","sarò","sei","sia","siamo","siano","siate","siete","sii","sono","stata","state","stati","stato"],_=["essere","esser"],j=["di","del","dello","della","dei","degli","delle","a","ad","al","allo","alla","ai","agli","alle","da","dal","dallo","dalla","dai","dagli","dalle","in","nel","nello","nella","nei","negli","nelle","con","col","collo","colla","coi","cogli","colle","su","sul","sullo","sulla","sui","sugli","sulle","per","pel","pello","pella","pei","pegli","tra","fra","attraverso","circa","contro","davanti","dentro","dietro","entro","escluso","fuori","insieme","intorno","lontano","lungo","mediante","oltre","presso","rasente","riguardo","senza","sopra","sotto","tramite","vicino"],q=["e","ed","o","oppure"],E=["tale","l'uno","l'altro","tali","dall'altra"],S=["anziché","anzichè","fuorché","fuorchè","giacché","giacchè","laddove","modo","ove","qualora","quantunque","volta"],A=["dice","dicono","diceva","dicevano","disse","dissero","detto","domanda","domandano","domandava","domandavano","domandò","domandarono","domandato","afferma","affermato","aggiunge","aggiunto","ammette","ammesso","annuncia","annunciato","assicura","assicurato","chiede","chiesto","commentato","conclude","concluso","continua","continuato","denuncia","denunciato","dichiara","dichiarato","esordisce","esordito","inizia","iniziato","precisato","prosegue","proseguito","racconta","raccontato","recita","recitato","replica","replicato","risponde","risposto","rimarca","rimarcato","rivela","rivelato","scandisce","scandito","scrive","scritto","segnala","segnalato","sottolinea","sottolineato","spiega","spiegato"],T=["affermare","aggiungere","ammettere","annunciare","assicurare","chiedere","commentare","concludere","continuare","denunciare","dichiarare","esordire","iniziare","precisare","proseguire","raccontare","recitare","replicare","rispondere","rimarcare","rivelare","scandire","scrivere","segnalare","sottolineare","spiegare"],C=["eventualmente","forse","mai","probabilmente"],O=["addirittura","assolutamente","ben","estremamente","mica","nemmeno","quasi"],D=["fa","fa'","faccia","facciamo","facciano","facciate","faccio","facemmo","facendo","facente","facesse","facessero","facessi","facessimo","faceste","facesti","faceva","facevamo","facevano","facevate","facevi","facevo","fai","fanno","farà","farai","faranno","farebbe","farebbero","farei","faremmo","faremo","fareste","faresti","farete","farò","fate","fatto","fece","fecero","feci","fo"],P=["fare"],R=["anteriore","anteriori","precedente","precedenti","facile","facili","facilissimo","facilissima","facilissimi","facilissime","semplice","semplici","semplicissima","semplicissimo","semplicissimi","semplicissime","semplicemente","rapido","rapida","rapidi","rapide","veloce","veloci","differente","difficile","difficili","difficilissimo","difficilissima","difficilissimi","difficilissime","basso","bassa","bassi","basse","alto","alta","alti","alte","normale","normali","normalmente","corto","corta","corti","corte","breve","brevi","recente","recenti","totale","totali","completo","completa","completi","complete","possibile","possibili","ultimo","ultima","ultimi","ultime","differenti","simile","simili","prossimo","prossima","prossimi","prossime","giusto","giusta","giusti","giuste","giustamente","cosiddetto","bene","meglio","benissimo","male","peggio","malissimo","comunemente","constantemente","direttamente","esattamente","facilmente","generalmente","leggermente","personalmente","recentemente","sinceramente","solamente","avanti","indietro"],B=["nuovo","nuova","nuovi","nuove","vecchio","vecchia","vecchi","vecchie","bello","bella","belli","belle","bellissimo","bellissima","bellissimi","bellissime","buono","buona","buoni","buone","buonissimo","buonissima","buonissimi","buonissime","grande","grandi","grandissimo","grandissima","grandissimi","grandissime","lunga","lunghi","lunghe","piccolo","piccola","piccoli","piccole","piccolissimo","piccolissima","piccolissimi","piccolissime","proprio","propria","propri","proprie","solito","solita","soliti","solite","stesso","stessa","stessi","stesse"],F=["accidenti","acciderba","ah","aah","ahi","ahia","ahimé","bah","beh","boh","ca","caspita","chissà","de'","diamine","ecco","eh","ehi","eeh","ehilà","ehm","gna","ih","magari","macché","macchè","mah","mhm","nca","neh","oibò","oh","ohe","ohé","ohilá","ohibò","ohimé","okay","ok","olà","poh","pota","puah","sorbole","to'","toh","ts","uff","uffa","uh","uhi"],M=["cc","g","hg","hl","kg","l","prs","pz","q.b.","qb","ta","tz"],L=["minuto","minuti","ora","ore","giorno","giorni","giornata","giornate","settimana","settimane","mese","mesi","anno","anni","oggi","domani","ieri","stamattina","stanotte","stasera","tardi"],I=["aspetto","aspetti","caso","casi","cose","idea","idee","istanza","maniera","oggetto","oggetti","parte","parti","persona","persone","pezzo","pezzi","punto","punti","sorta","sorte","tema","temi","volte"],$=["sì","no","non","€","euro","euros","ecc","eccetera"],N=["sig.na","sig.ra","sig","sigg","dr","dr.ssa","dott","dott.ssa","prof","prof.ssa","gent","gent.mo","gent.mi","gent.ma","gent.me","egr","egr.i","egr.ia","egr.ie","preg.mo","preg.mo","preg.ma","preg.me","ill","ill.mo","ill.mi","ill.ma","ill.me","cav","on","spett"];a.exports=function(){return{filteredAtBeginning:R,filteredAtEnding:[].concat(s,T,y,x,_,P,B),filteredAtBeginningAndEnding:[].concat(r,j,q,c,O,p,u),filteredAnywhere:[].concat(i,n,d,l,F,o,z,w,k,A,D,g,E,S,m,f,b,v,$,h,M,L,I),cannotDirectlyPrecedePassiveParticiple:[].concat(r,j,d,u,g,o,s,D,P,A,m,f,l,b),cannotBeBetweenPassiveAuxiliaryAndParticiple:[].concat(w,x),all:[].concat(r,o,s,c,u,n,d,l,p,g,f,b,m,h,v,z,y,w,x,k,_,j,q,E,S,A,T,i,C,O,D,P,F,R,B,M,I,$,L,N)}}},function(a,e,t){"use strict";function i(a,e){for(var t,i=0,r=a.length,o=[];(t=e.indexOf(a,i))>-1;){var s=d(e[t-1])||0===t,n=d(e[t+r])||e.length===t+r;s&&n&&o.push({index:t,match:a}),i=t+r}return o}var r=t(41),o=t(24),s=t(56),n=t(1047).isWordInSentence,d=t(1047).characterInBoundary,l=function(a,e){var t=[];return o(a,function(a){a=s(a),n(a,e)&&(t=t.concat(i(a,e)))}),t},c=function(a){return a.sort(function(a,e){return a.index>e.index})},u=function(a){a=c(a);for(var e=[],t=0;t<a.length;t++)!r(a[t+1])&&a[t+1].index<a[t].index+a[t].match.length?(e.push(a[t]),t++):e.push(a[t]);return e},p=function(a,e){var t=[];return o(a,function(a){if(a=s(a),!n(a,e))return t;t=t.concat(i(a,e))}),t=t.sort(function(a,e){return a.index<e.index?-1:a.index>e.index?1:0})};a.exports={getIndicesByWord:i,getIndicesByWordList:l,filterIndices:u,sortIndices:c,getIndicesByWordListSorted:p}},,,,function(a,e){function t(a,e){for(var t=-1,i=e.length,r=a.length;++t<i;)a[r+t]=e[t];return a}a.exports=t},function(a,e,t){function i(a,e){return!!(null==a?0:a.length)&&r(a,e,0)>-1}var r=t(1036);a.exports=i},function(a,e){function t(a,e,t){for(var i=-1,r=null==a?0:a.length;++i<r;)if(t(e,a[i]))return!0;return!1}a.exports=t},function(a,e,t){var i=t(233),r=t(110),o=t(391),s=t(232),n=Object.prototype,d=n.hasOwnProperty,l=i(function(a,e){a=Object(a);var t=-1,i=e.length,l=i>2?e[2]:void 0;for(l&&o(e[0],e[1],l)&&(i=1);++t<i;)for(var c=e[t],u=s(c),p=-1,g=u.length;++p<g;){var m=u[p],f=a[m];(void 0===f||r(f,n[m])&&!d.call(a,m))&&(a[m]=c[m])}return a});a.exports=l},function(a,e,t){function i(a){if("number"==typeof a)return a;if(o(a))return s;if(r(a)){var e="function"==typeof a.valueOf?a.valueOf():a;a=r(e)?e+"":e}if("string"!=typeof a)return 0===a?a:+a;a=a.replace(n,"");var t=l.test(a);return t||c.test(a)?u(a.slice(2),t?2:8):d.test(a)?s:+a}var r=t(40),o=t(237),s=NaN,n=/^\s+|\s+$/g,d=/^[-+]0x[0-9a-f]+$/i,l=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt;a.exports=i},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":s(e))&&"function"!=typeof e?a:e}function o(a,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":s(e)));a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(a,e):a.__proto__=e)}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}();Object.defineProperty(e,"__esModule",{value:!0});var d=t(69),l=t(74),c=t(33),u=function(a){function e(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i(this,e);var t=r(this,(e.__proto__||Object.getPrototypeOf(e)).call(this)),o={parameters:{recommendedMinimum:1},scores:{good:9,bad:3},url:"<a href='https://yoa.st/2pc' target='_blank'>"};return t.identifier="introductionKeyword",t._config=d(o,a),t}return o(e,a),n(e,[{key:"getResult",value:function(a,e,t){var i=new c;this._firstParagraphMatches=e.getResearch("firstParagraph");var r=this.calculateResult(t);return i.setScore(r.score),i.setText(r.resultText),i}},{key:"isApplicable",value:function(a){return a.hasKeyword()&&a.hasText()}},{key:"calculateResult",value:function(a){return this._firstParagraphMatches>=this._config.parameters.recommendedMinimum?{score:this._config.scores.good,resultText:a.sprintf(a.dgettext("js-text-analysis","The focus keyword appears in the %1$sfirst paragraph%2$s of the copy."),this._config.url,"</a>")}:{score:this._config.scores.bad,resultText:a.sprintf(a.dgettext("js-text-analysis","The focus keyword doesn't appear in the %1$sfirst paragraph%2$s of the copy. Make sure the topic is clear immediately."),this._config.url,"</a>")}}}]),e}(l);e.default=u},function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":s(e))&&"function"!=typeof e?a:e}function o(a,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":s(e)));a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(a,e):a.__proto__=e)}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}();Object.defineProperty(e,"__esModule",{value:!0});var d=t(41),l=t(69),c=t(74),u=t(33),p=function(a){function e(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i(this,e);var t=r(this,(e.__proto__||Object.getPrototypeOf(e)).call(this)),o={parameters:{recommendedMinimum:1,acceptableMaximum:10},scores:{veryBad:-999,consideration:0},urlNoOrGoodKeyword:"<a href='https://yoa.st/2pdd' target='_blank'>",urlKeyphraseTooLong:"<a href='https://yoa.st/2pd' target='_blank'>"};return t.identifier="keyphraseLength",t._config=l(o,a),t}return o(e,a),n(e,[{key:"getResult",value:function(a,e,t){this._keyphraseLength=e.getResearch("keyphraseLength");var i=new u,r=this.calculateResult(t);return d(r)||(i.setScore(r.score),i.setText(r.resultText)),i}},{key:"calculateResult",value:function(a){return this._keyphraseLength<this._config.parameters.recommendedMinimum?{score:this._config.scores.veryBad,resultText:a.sprintf(a.dgettext("js-text-analysis","No %1$sfocus keyword%2$s was set for this page. If you do not set a focus keyword, no score can be calculated."),this._config.urlNoOrGoodKeyword,"</a>")}:this._keyphraseLength>this._config.parameters.acceptableMaximum?{score:this._config.scores.consideration,resultText:a.sprintf(a.dgettext("js-text-analysis","The %1$skeyphrase%2$s is over 10 words, a keyphrase should be shorter."),this._config.urlKeyphraseTooLong,"</a>")}:void 0}}]),e}(c);e.default=p},function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":s(e))&&"function"!=typeof e?a:e}function o(a,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":s(e)));a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(a,e):a.__proto__=e)}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}();Object.defineProperty(e,"__esModule",{value:!0});var d=t(69),l=t(74),c=t(33),u=t(192),p=t(207),g=t(587),m=t(588),f=p.inRangeEndInclusive,b=p.inRangeStartInclusive,h=p.inRangeStartEndInclusive,v=function(a){function e(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i(this,e);var t=r(this,(e.__proto__||Object.getPrototypeOf(e)).call(this)),o={parameters:{overMaximum:3.5,maximum:2.5,minimum:.5},scores:{wayOverMaximum:-50,overMaximum:-10,correctDensity:9,underMinimum:4},url:"<a href='https://yoa.st/2pe' target='_blank'>"};return t.identifier="keywordDensity",t._config=d(o,a),t}return o(e,a),n(e,[{key:"getResult",value:function(a,e,t){var i=new c;this._keywordCount=e.getResearch("keywordCount").count,this._keywordDensity=e.getResearch("getKeywordDensity");var r=this.calculateResult(t);return i.setScore(r.score),i.setText(r.resultText),i.setHasMarks(this._keywordCount>0),i}},{key:"hasNoMatches",value:function(){return 0===this._keywordCount}},{key:"hasTooFewMatches",value:function(){return b(this._keywordDensity,0,this._config.parameters.minimum)}},{key:"hasGoodNumberOfMatches",value:function(){return h(this._keywordDensity,this._config.parameters.minimum,this._config.parameters.maximum)}},{key:"hasTooManyMatches",value:function(){return f(this._keywordDensity,this._config.parameters.maximum,this._config.parameters.overMaximum)}},{key:"calculateResult",value:function(a){var e=this._config.parameters.maximum+"%",t=g(this._keywordDensity),i=t+"%";return this.hasNoMatches()?{score:this._config.scores.underMinimum,resultText:a.sprintf(a.dgettext("js-text-analysis","The exact-match %3$skeyword density%4$s is %1$s, which is too low; the focus keyword was found %2$d times.",this._keywordCount),i,this._keywordCount,this._config.url,"</a>")}:this.hasTooFewMatches()?{score:this._config.scores.underMinimum,resultText:a.sprintf(a.dngettext("js-text-analysis","The exact-match %3$skeyword density%4$s is %1$s, which is too low; the focus keyword was found %2$d time.","The exact-match %3$skeyword density%4$s is %1$s, which is too low; the focus keyword was found %2$d times.",this._keywordCount),i,this._keywordCount,this._config.url,"</a>")}:this.hasGoodNumberOfMatches()?{score:this._config.scores.correctDensity,resultText:a.sprintf(a.dngettext("js-text-analysis","The exact-match %3$skeyword density%4$s is %1$s, which is great; the focus keyword was found %2$d time.","The exact-match %3$skeyword density%4$s is %1$s, which is great; the focus keyword was found %2$d times.",this._keywordCount),i,this._keywordCount,this._config.url,"</a>")}:this.hasTooManyMatches()?{score:this._config.scores.overMaximum,resultText:a.sprintf(a.dngettext("js-text-analysis","The exact-match %4$skeyword density%5$s is %1$s, which is over the advised %3$s maximum; the focus keyword was found %2$d time.","The exact-match %4$skeyword density%5$s is %1$s, which is over the advised %3$s maximum; the focus keyword was found %2$d times.",this._keywordCount),i,this._keywordCount,e,this._config.url,"</a>")}:{score:this._config.scores.wayOverMaximum,resultText:a.sprintf(a.dngettext("js-text-analysis","The exact-match %4$skeyword density%5$s is %1$s, which is way over the advised %3$s maximum; the focus keyword was found %2$d time.","The exact-match %4$skeyword density%5$s is %1$s, which is way over the advised %3$s maximum; the focus keyword was found %2$d times.",this._keywordCount),i,this._keywordCount,e,this._config.url,"</a>")}}},{key:"getMarks",value:function(a){return m(a,!0).markings}},{key:"isApplicable",value:function(a){return a.hasText()&&a.hasKeyword()&&u(a.getText())>=100}}]),e}(l);e.default=v},function(a,e,t){function i(a,e,t,s,n){return a===e||(null==a||null==e||!o(a)&&!o(e)?a!==a&&e!==e:r(a,e,t,s,i,n))}var r=t(1224),o=t(53);a.exports=i},function(a,e,t){function i(a,e,t,i,l,c){var u=t&n,p=a.length,g=e.length;if(p!=g&&!(u&&g>p))return!1;var m=c.get(a);if(m&&c.get(e))return m==e;var f=-1,b=!0,h=t&d?new r:void 0;for(c.set(a,e),c.set(e,a);++f<p;){var v=a[f],z=e[f];if(i)var y=u?i(z,v,f,e,a,c):i(v,z,f,a,e,c);if(void 0!==y){if(y)continue;b=!1;break}if(h){if(!o(e,function(a,e){if(!s(h,e)&&(v===a||l(v,a,t,i,c)))return h.push(e)})){b=!1;break}}else if(v!==z&&!l(v,z,t,i,c)){b=!1;break}}return c.delete(a),c.delete(e),b}var r=t(750),o=t(1227),s=t(751),n=1,d=2;a.exports=i},function(a,e,t){var i=t(752),r=t(1165),o=Object.prototype,s=o.propertyIsEnumerable,n=Object.getOwnPropertySymbols,d=n?function(a){return null==a?[]:(a=Object(a),i(n(a),function(e){return s.call(a,e)}))}:r;a.exports=d},function(a,e,t){var i=t(117),r=t(62),o=i(r,"Set");a.exports=o},function(a,e,t){function i(a){return a===a&&!r(a)}var r=t(40);a.exports=i},function(a,e){function t(a,e){return function(t){return null!=t&&(t[a]===e&&(void 0!==e||a in Object(t)))}}a.exports=t},function(a,e,t){function i(a,e){return null!=a&&o(a,e,r)}var r=t(1239),o=t(1103);a.exports=i},function(a,e,t){function i(a,e,t){e=r(e,a);for(var i=-1,c=e.length,u=!1;++i<c;){var p=l(e[i]);if(!(u=null!=a&&t(a,p)))break;a=a[p]}return u||++i!=c?u:!!(c=null==a?0:a.length)&&d(c)&&n(p,c)&&(s(a)||o(a))}var r=t(733),o=t(182),s=t(39),n=t(219),d=t(278),l=t(556);a.exports=i},function(a,e,t){function i(a,e){var t=-1,i=o(a)?Array(a.length):[];return r(a,function(a,r,o){i[++t]=e(a,r,o)}),i}var r=t(292),o=t(75);a.exports=i},function(a,e,t){function i(a,e){var t=[];return r(a,function(a,i,r){e(a,i,r)&&t.push(a)}),t}var r=t(292);a.exports=i},function(a,e,t){"use strict";var i=t(56);a.exports=function(a){return a=a.replace(/<(?!li|\/li|p|\/p|h1|\/h1|h2|\/h2|h3|\/h3|h4|\/h4|h5|\/h5|h6|\/h6|dd).*?>/g,""),a=i(a)}},function(a,e,t){"use strict";var i=function(a){return a.replace(/&nbsp;/g," ")},r=function(a){return a.replace(/\s/g," ")},o=function(a){return a=i(a),r(a)};a.exports={unifyNonBreakingSpace:i,unifyWhiteSpace:r,unifyAllSpaces:o}},function(a,e,t){"use strict";var i=t(68),r=t(236),o=t(56),s=t(402),n=t(1243),d=function(a){return a=r(a),new RegExp(a,"ig")};a.exports=function(a,e,t){var r=d(e),l=a.match(r)||[];a=a.replace(r,"");var c=s(e,t),u=d(c),p=a.match(u)||[],g=l.concat(p),m=n(e,t);if(m!==c){var f=d(m),b=a.match(f)||[];g=g.concat(b)}return i(g,function(a){return o(a)})}},function(a,e,t){function i(a,e,t){var i=-1,u=o,p=a.length,g=!0,m=[],f=m;if(t)g=!1,u=s;else if(p>=c){var b=e?null:d(a);if(b)return l(b);g=!1,u=n,f=new r}else f=e?[]:m;a:for(;++i<p;){var h=a[i],v=e?e(h):h;if(h=t||0!==h?h:0,g&&v===v){for(var z=f.length;z--;)if(f[z]===v)continue a;e&&f.push(v),m.push(h)}else u(f,v,t)||(f!==m&&f.push(v),m.push(h))}return m}var r=t(750),o=t(1060),s=t(1061),n=t(751),d=t(1247),l=t(1032),c=200;a.exports=i},function(a,e){function t(a,e,t,i){for(var r=a.length,o=t+(i?1:-1);i?o--:++o<r;)if(e(a[o],o,a))return o;return-1}a.exports=t},function(a,e){function t(a){if("function"!=typeof a)throw new TypeError(i);return function(){var e=arguments;switch(e.length){case 0:return!a.call(this);case 1:return!a.call(this,e[0]);case 2:return!a.call(this,e[0],e[1]);case 3:return!a.call(this,e[0],e[1],e[2])}return!a.apply(this,e)}}var i="Expected a function";a.exports=t},function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":s(e))&&"function"!=typeof e?a:e}function o(a,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":s(e)));a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(a,e):a.__proto__=e)}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}();Object.defineProperty(e,"__esModule",{value:!0});var d=t(69),l=t(74),c=t(33),u=function(a){function e(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i(this,e);var t=r(this,(e.__proto__||Object.getPrototypeOf(e)).call(this)),o={parameters:{recommendedMinimum:1},scores:{good:9,bad:3},url:"<a href='https://yoa.st/2pf' target='_blank'>"};return t.identifier="metaDescriptionKeyword",t._config=d(o,a),t}return o(e,a),n(e,[{key:"getResult",value:function(a,e,t){this._keywordMatches=e.getResearch("metaDescriptionKeyword");var i=new c,r=this.calculateResult(t);return i.setScore(r.score),i.setText(r.resultText),i}},{key:"calculateResult",value:function(a){return this._keywordMatches>=this._config.parameters.recommendedMinimum?{score:this._config.scores.good,resultText:a.sprintf(a.dngettext("js-text-analysis","The meta description %1$scontains the focus keyword%2$s."),this._config.url,"</a>")}:{score:this._config.scores.bad,resultText:a.sprintf(a.dgettext("js-text-analysis","A meta description has been specified, but it %1$sdoes not contain the focus keyword%2$s."),this._config.url,"</a>")}}},{key:"isApplicable",value:function(a){return a.hasKeyword()&&a.hasDescription()}}]),e}(l);e.default=u},function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":s(e))&&"function"!=typeof e?a:e}function o(a,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":s(e)));a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(a,e):a.__proto__=e)}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}();Object.defineProperty(e,"__esModule",{value:!0});var d=t(69),l=t(1254),c=t(74),u=t(33),p=function(a){function e(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i(this,e);var t=r(this,(e.__proto__||Object.getPrototypeOf(e)).call(this)),o={parameters:{recommendedMinimum:1,recommendedPosition:0},scores:{good:9,okay:6,bad:2},url:"<a href='https://yoa.st/2pn' target='_blank'>"};return t.identifier="titleKeyword",t._config=d(o,a),t}return o(e,a),n(e,[{key:"getResult",value:function(a,e,t){this._keywordMatches=e.getResearch("findKeywordInPageTitle"),this._keyword=l(a.getKeyword());var i=new u,r=this.calculateResult(t);return i.setScore(r.score),i.setText(r.resultText),i}},{key:"isApplicable",value:function(a){return a.hasKeyword()&&a.hasTitle()}},{key:"calculateResult",value:function(a){var e=this._keywordMatches.matches,t=this._keywordMatches.position;return e<this._config.parameters.recommendedMinimum?{score:this._config.scores.bad,resultText:a.sprintf(a.dgettext("js-text-analysis","The focus keyword '%1$s' does not appear in the %2$sSEO title%3$s."),this._keyword,this._config.url,"</a>")}:e>=this._config.parameters.recommendedMinimum&&t===this._config.parameters.recommendedPosition?{score:this._config.scores.good,resultText:a.sprintf(a.dgettext("js-text-analysis","The %1$sSEO title%2$s contains the focus keyword, at the beginning which is considered to improve rankings."),this._config.url,"</a>")}:{score:this._config.scores.okay,resultText:a.sprintf(a.dgettext("js-text-analysis","The %1$sSEO title%2$s contains the focus keyword, but it does not appear at the beginning; try and move it to the beginning."),this._config.url,"</a>")}}}]),e}(c);e.default=p},function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":s(e))&&"function"!=typeof e?a:e}function o(a,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":s(e)));a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(a,e):a.__proto__=e)}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}();Object.defineProperty(e,"__esModule",{value:!0});var d=t(69),l=t(74),c=t(33),u=function(a){function e(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i(this,e);var t=r(this,(e.__proto__||Object.getPrototypeOf(e)).call(this)),o={scores:{noKeywordInUrl:6,good:9},url:"<a href='https://yoa.st/2pp' target='_blank'>"};return t.identifier="urlKeyword",t._config=d(o,a),t}return o(e,a),n(e,[{key:"getResult",value:function(a,e,t){this._totalKeywords=e.getResearch("keywordCountInUrl");var i=new c,r=this.calculateResult(t);return i.setScore(r.score),i.setText(r.resultText),i}},{key:"isApplicable",value:function(a){return a.hasKeyword()&&a.hasUrl()}},{key:"calculateResult",value:function(a){return 0===this._totalKeywords?{score:this._config.scores.noKeywordInUrl,resultText:a.sprintf(a.dgettext("js-text-analysis","The focus keyword does not appear in the %1$sURL%2$s for this page. If you decide to rename the URL be sure to check the old URL 301 redirects to the new one!"),this._config.url,"</a>")}:{score:this._config.scores.good,resultText:a.sprintf(a.dgettext("js-text-analysis","The focus keyword appears in the %1$sURL%2$s for this page."),this._config.url,"</a>")}}}]),e}(l);e.default=u},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=t(1257),r=t(69),o=t(1167),s=t(1038),n=t(41),d=t(100),l=t(1116),c=t(1260),u=t(1297),p=t(1129),g=t(1298),m=t(1299),f=t(1300),b=t(1304),h=t(1305),v=t(1306),z=t(1308),y=t(1309),w=t(1330),x=t(1135),k=t(1332),_=t(1334),j=t(1335),q=t(1336),E=t(1337),S=t(1339),A=t(1340),T=t(1341),C=t(1342),O=t(1343),D=t(1344),P=t(1346),R=t(1360),B=t(1404),F=t(1413),M=t(1423),L=t(1424),I=t(588),$=t(1425),N=function(a){this.setPaper(a),this.defaultResearches={urlLength:g,wordCountInText:l,findKeywordInPageTitle:m,calculateFleschReading:y,getLinkStatistics:c,getLinks:p,linkCount:u,imageCount:x,altTagCount:k,matchKeywordInSubheadings:f,keywordCount:h,getKeywordDensity:b,stopWordsInKeyword:v,stopWordsInUrl:z,metaDescriptionLength:w,keyphraseLength:_,keywordCountInUrl:q,firstParagraph:E,metaDescriptionKeyword:j,pageTitleWidth:S,wordComplexity:A,getParagraphLength:T,countSentencesFromText:C,countSentencesFromDescription:O,getSubheadingTextLengths:D,findTransitionWords:P,passiveVoice:R,getSentenceBeginnings:B,relevantWords:F,readingTime:M,getTopicDensity:L,topicCount:I,sentences:i.default,largestKeywordDistance:$},this.customResearches={}};N.prototype.setPaper=function(a){this.paper=a},N.prototype.addResearch=function(a,e){if(n(a)||d(a))throw new s("Research name cannot be empty");if(!(e instanceof Function))throw new o("The research requires a Function callback.");this.customResearches[a]=e},N.prototype.hasResearch=function(a){return Object.keys(this.getAvailableResearches()).filter(function(e){return e===a}).length>0},N.prototype.getAvailableResearches=function(){return r(this.defaultResearches,this.customResearches)},N.prototype.getResearch=function(a){if(n(a)||d(a))throw new s("Research name cannot be empty");return!!this.hasResearch(a)&&this.getAvailableResearches()[a](this.paper,this)},a.exports=N},function(a,e,t){"use strict";var i=t(192);a.exports=function(a){return i(a.getText())}},function(a,e,t){"use strict";a.exports=function(a){var e;return e=a.match(/<a(?:[^>]+)?>(.*?)<\/a>/gi),null===e&&(e=[]),e}},function(a,e,t){function i(a,e){this._options=e||{},this._cbs=a||{},this._tagname="",this._attribname="",this._attribvalue="",this._attribs=null,this._stack=[],this.startIndex=0,this.endIndex=null,this._lowerCaseTagNames="lowerCaseTags"in this._options?!!this._options.lowerCaseTags:!this._options.xmlMode,this._lowerCaseAttributeNames="lowerCaseAttributeNames"in this._options?!!this._options.lowerCaseAttributeNames:!this._options.xmlMode,this._options.Tokenizer&&(r=this._options.Tokenizer),this._tokenizer=new r(this._options,this),this._cbs.onparserinit&&this._cbs.onparserinit(this)}var r=t(1119),o={input:!0,option:!0,optgroup:!0,select:!0,button:!0,datalist:!0,textarea:!0},s={tr:{tr:!0,th:!0,td:!0},th:{th:!0},td:{thead:!0,th:!0,td:!0},body:{head:!0,link:!0,script:!0},li:{li:!0},p:{p:!0},h1:{p:!0},h2:{p:!0},h3:{p:!0},h4:{p:!0},h5:{p:!0},h6:{p:!0},select:o,input:o,output:o,button:o,datalist:o,textarea:o,option:{option:!0},optgroup:{optgroup:!0}},n={__proto__:null,area:!0,base:!0,basefont:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,isindex:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,path:!0,circle:!0,ellipse:!0,line:!0,rect:!0,use:!0,stop:!0,polyline:!0,polygon:!0},d=/\s|\//;t(48)(i,t(234).EventEmitter),i.prototype._updatePosition=function(a){null===this.endIndex?this._tokenizer._sectionStart<=a?this.startIndex=0:this.startIndex=this._tokenizer._sectionStart-a:this.startIndex=this.endIndex+1,this.endIndex=this._tokenizer.getAbsoluteIndex()},i.prototype.ontext=function(a){this._updatePosition(1),this.endIndex--,this._cbs.ontext&&this._cbs.ontext(a)},i.prototype.onopentagname=function(a){if(this._lowerCaseTagNames&&(a=a.toLowerCase()),this._tagname=a,!this._options.xmlMode&&a in s)for(var e;(e=this._stack[this._stack.length-1])in s[a];this.onclosetag(e));!this._options.xmlMode&&a in n||this._stack.push(a),this._cbs.onopentagname&&this._cbs.onopentagname(a),this._cbs.onopentag&&(this._attribs={})},i.prototype.onopentagend=function(){this._updatePosition(1),this._attribs&&(this._cbs.onopentag&&this._cbs.onopentag(this._tagname,this._attribs),this._attribs=null),!this._options.xmlMode&&this._cbs.onclosetag&&this._tagname in n&&this._cbs.onclosetag(this._tagname),this._tagname=""},i.prototype.onclosetag=function(a){if(this._updatePosition(1),this._lowerCaseTagNames&&(a=a.toLowerCase()),!this._stack.length||a in n&&!this._options.xmlMode)this._options.xmlMode||"br"!==a&&"p"!==a||(this.onopentagname(a),this._closeCurrentTag());else{var e=this._stack.lastIndexOf(a);if(-1!==e)if(this._cbs.onclosetag)for(e=this._stack.length-e;e--;)this._cbs.onclosetag(this._stack.pop());else this._stack.length=e;else"p"!==a||this._options.xmlMode||(this.onopentagname(a),this._closeCurrentTag())}},i.prototype.onselfclosingtag=function(){this._options.xmlMode||this._options.recognizeSelfClosing?this._closeCurrentTag():this.onopentagend()},i.prototype._closeCurrentTag=function(){var a=this._tagname;this.onopentagend(),this._stack[this._stack.length-1]===a&&(this._cbs.onclosetag&&this._cbs.onclosetag(a),this._stack.pop())},i.prototype.onattribname=function(a){this._lowerCaseAttributeNames&&(a=a.toLowerCase()),this._attribname=a},i.prototype.onattribdata=function(a){this._attribvalue+=a},i.prototype.onattribend=function(){this._cbs.onattribute&&this._cbs.onattribute(this._attribname,this._attribvalue),this._attribs&&!Object.prototype.hasOwnProperty.call(this._attribs,this._attribname)&&(this._attribs[this._attribname]=this._attribvalue),this._attribname="",this._attribvalue=""},i.prototype._getInstructionName=function(a){var e=a.search(d),t=e<0?a:a.substr(0,e);return this._lowerCaseTagNames&&(t=t.toLowerCase()),t},i.prototype.ondeclaration=function(a){if(this._cbs.onprocessinginstruction){var e=this._getInstructionName(a);this._cbs.onprocessinginstruction("!"+e,"!"+a)}},i.prototype.onprocessinginstruction=function(a){if(this._cbs.onprocessinginstruction){var e=this._getInstructionName(a);this._cbs.onprocessinginstruction("?"+e,"?"+a)}},i.prototype.oncomment=function(a){this._updatePosition(4),this._cbs.oncomment&&this._cbs.oncomment(a),this._cbs.oncommentend&&this._cbs.oncommentend()},i.prototype.oncdata=function(a){this._updatePosition(1),this._options.xmlMode||this._options.recognizeCDATA?(this._cbs.oncdatastart&&this._cbs.oncdatastart(),this._cbs.ontext&&this._cbs.ontext(a),this._cbs.oncdataend&&this._cbs.oncdataend()):this.oncomment("[CDATA["+a+"]]")},i.prototype.onerror=function(a){this._cbs.onerror&&this._cbs.onerror(a)},i.prototype.onend=function(){if(this._cbs.onclosetag)for(var a=this._stack.length;a>0;this._cbs.onclosetag(this._stack[--a]));this._cbs.onend&&this._cbs.onend()},i.prototype.reset=function(){this._cbs.onreset&&this._cbs.onreset(),this._tokenizer.reset(),this._tagname="",this._attribname="",this._attribs=null,this._stack=[],this._cbs.onparserinit&&this._cbs.onparserinit(this)},i.prototype.parseComplete=function(a){this.reset(),this.end(a)},i.prototype.write=function(a){this._tokenizer.write(a)},i.prototype.end=function(a){this._tokenizer.end(a)},i.prototype.pause=function(){this._tokenizer.pause()},i.prototype.resume=function(){this._tokenizer.resume()},i.prototype.parseChunk=i.prototype.write,i.prototype.done=i.prototype.end,a.exports=i},function(a,e,t){function i(a){return" "===a||"\n"===a||"\t"===a||"\f"===a||"\r"===a}function r(a,e,t){var i=a.toLowerCase();return a===i?function(a){a===i?this._state=e:(this._state=t,this._index--)}:function(r){r===i||r===a?this._state=e:(this._state=t,this._index--)}}function o(a,e){var t=a.toLowerCase();return function(i){i===t||i===a?this._state=e:(this._state=m,this._index--)}}function s(a,e){this._state=p,this._buffer="",this._sectionStart=0,this._index=0,this._bufferOffset=0,this._baseState=p,this._special=ma,this._cbs=e,this._running=!0,this._ended=!1,this._xmlMode=!(!a||!a.xmlMode),this._decodeEntities=!(!a||!a.decodeEntities)}a.exports=s;var n=t(1120),d=t(1040),l=t(1121),c=t(1041),u=0,p=u++,g=u++,m=u++,f=u++,b=u++,h=u++,v=u++,z=u++,y=u++,w=u++,x=u++,k=u++,_=u++,j=u++,q=u++,E=u++,S=u++,A=u++,T=u++,C=u++,O=u++,D=u++,P=u++,R=u++,B=u++,F=u++,M=u++,L=u++,I=u++,$=u++,N=u++,U=u++,W=u++,H=u++,K=u++,V=u++,Y=u++,G=u++,Z=u++,J=u++,X=u++,Q=u++,aa=u++,ea=u++,ta=u++,ia=u++,ra=u++,oa=u++,sa=u++,na=u++,da=u++,la=u++,ca=u++,ua=u++,pa=u++,ga=0,ma=ga++,fa=ga++,ba=ga++;s.prototype._stateText=function(a){"<"===a?(this._index>this._sectionStart&&this._cbs.ontext(this._getSection()),this._state=g,this._sectionStart=this._index):this._decodeEntities&&this._special===ma&&"&"===a&&(this._index>this._sectionStart&&this._cbs.ontext(this._getSection()),this._baseState=p,this._state=da,this._sectionStart=this._index)},s.prototype._stateBeforeTagName=function(a){"/"===a?this._state=b:"<"===a?(this._cbs.ontext(this._getSection()),this._sectionStart=this._index):">"===a||this._special!==ma||i(a)?this._state=p:"!"===a?(this._state=q,this._sectionStart=this._index+1):"?"===a?(this._state=S,this._sectionStart=this._index+1):(this._state=this._xmlMode||"s"!==a&&"S"!==a?m:N,this._sectionStart=this._index)},s.prototype._stateInTagName=function(a){("/"===a||">"===a||i(a))&&(this._emitToken("onopentagname"),this._state=z,this._index--)},s.prototype._stateBeforeCloseingTagName=function(a){i(a)||(">"===a?this._state=p:this._special!==ma?"s"===a||"S"===a?this._state=U:(this._state=p,this._index--):(this._state=h,this._sectionStart=this._index))},s.prototype._stateInCloseingTagName=function(a){(">"===a||i(a))&&(this._emitToken("onclosetag"),this._state=v,this._index--)},s.prototype._stateAfterCloseingTagName=function(a){">"===a&&(this._state=p,this._sectionStart=this._index+1)},s.prototype._stateBeforeAttributeName=function(a){">"===a?(this._cbs.onopentagend(),this._state=p,this._sectionStart=this._index+1):"/"===a?this._state=f:i(a)||(this._state=y,this._sectionStart=this._index)},s.prototype._stateInSelfClosingTag=function(a){">"===a?(this._cbs.onselfclosingtag(),this._state=p,this._sectionStart=this._index+1):i(a)||(this._state=z,this._index--)},s.prototype._stateInAttributeName=function(a){("="===a||"/"===a||">"===a||i(a))&&(this._cbs.onattribname(this._getSection()),this._sectionStart=-1,this._state=w,this._index--)},s.prototype._stateAfterAttributeName=function(a){"="===a?this._state=x:"/"===a||">"===a?(this._cbs.onattribend(),this._state=z,this._index--):i(a)||(this._cbs.onattribend(),this._state=y,this._sectionStart=this._index)},s.prototype._stateBeforeAttributeValue=function(a){'"'===a?(this._state=k,this._sectionStart=this._index+1):"'"===a?(this._state=_,this._sectionStart=this._index+1):i(a)||(this._state=j,this._sectionStart=this._index,this._index--)},s.prototype._stateInAttributeValueDoubleQuotes=function(a){'"'===a?(this._emitToken("onattribdata"),this._cbs.onattribend(),this._state=z):this._decodeEntities&&"&"===a&&(this._emitToken("onattribdata"),this._baseState=this._state,this._state=da,this._sectionStart=this._index)},s.prototype._stateInAttributeValueSingleQuotes=function(a){"'"===a?(this._emitToken("onattribdata"),this._cbs.onattribend(),this._state=z):this._decodeEntities&&"&"===a&&(this._emitToken("onattribdata"),this._baseState=this._state,this._state=da,this._sectionStart=this._index)},s.prototype._stateInAttributeValueNoQuotes=function(a){i(a)||">"===a?(this._emitToken("onattribdata"),this._cbs.onattribend(),this._state=z,this._index--):this._decodeEntities&&"&"===a&&(this._emitToken("onattribdata"),this._baseState=this._state,this._state=da,this._sectionStart=this._index)},s.prototype._stateBeforeDeclaration=function(a){this._state="["===a?D:"-"===a?A:E},s.prototype._stateInDeclaration=function(a){">"===a&&(this._cbs.ondeclaration(this._getSection()),this._state=p,this._sectionStart=this._index+1)},s.prototype._stateInProcessingInstruction=function(a){">"===a&&(this._cbs.onprocessinginstruction(this._getSection()),this._state=p,this._sectionStart=this._index+1)},s.prototype._stateBeforeComment=function(a){"-"===a?(this._state=T,this._sectionStart=this._index+1):this._state=E},s.prototype._stateInComment=function(a){"-"===a&&(this._state=C)},s.prototype._stateAfterComment1=function(a){this._state="-"===a?O:T},s.prototype._stateAfterComment2=function(a){">"===a?(this._cbs.oncomment(this._buffer.substring(this._sectionStart,this._index-2)),this._state=p,this._sectionStart=this._index+1):"-"!==a&&(this._state=T)},s.prototype._stateBeforeCdata1=r("C",P,E),s.prototype._stateBeforeCdata2=r("D",R,E),s.prototype._stateBeforeCdata3=r("A",B,E),s.prototype._stateBeforeCdata4=r("T",F,E),s.prototype._stateBeforeCdata5=r("A",M,E),s.prototype._stateBeforeCdata6=function(a){"["===a?(this._state=L,this._sectionStart=this._index+1):(this._state=E,this._index--)},s.prototype._stateInCdata=function(a){"]"===a&&(this._state=I)},s.prototype._stateAfterCdata1=function(a,e){return function(t){t===a&&(this._state=e)}}("]",$),s.prototype._stateAfterCdata2=function(a){">"===a?(this._cbs.oncdata(this._buffer.substring(this._sectionStart,this._index-2)),this._state=p,this._sectionStart=this._index+1):"]"!==a&&(this._state=L)},s.prototype._stateBeforeSpecial=function(a){"c"===a||"C"===a?this._state=W:"t"===a||"T"===a?this._state=aa:(this._state=m,this._index--)},s.prototype._stateBeforeSpecialEnd=function(a){this._special!==fa||"c"!==a&&"C"!==a?this._special!==ba||"t"!==a&&"T"!==a?this._state=p:this._state=ra:this._state=G},s.prototype._stateBeforeScript1=o("R",H),s.prototype._stateBeforeScript2=o("I",K),s.prototype._stateBeforeScript3=o("P",V),s.prototype._stateBeforeScript4=o("T",Y),s.prototype._stateBeforeScript5=function(a){("/"===a||">"===a||i(a))&&(this._special=fa),this._state=m,this._index--},s.prototype._stateAfterScript1=r("R",Z,p),s.prototype._stateAfterScript2=r("I",J,p),s.prototype._stateAfterScript3=r("P",X,p),s.prototype._stateAfterScript4=r("T",Q,p),s.prototype._stateAfterScript5=function(a){">"===a||i(a)?(this._special=ma,this._state=h,this._sectionStart=this._index-6,this._index--):this._state=p},s.prototype._stateBeforeStyle1=o("Y",ea),s.prototype._stateBeforeStyle2=o("L",ta),s.prototype._stateBeforeStyle3=o("E",ia),s.prototype._stateBeforeStyle4=function(a){("/"===a||">"===a||i(a))&&(this._special=ba),this._state=m,this._index--},s.prototype._stateAfterStyle1=r("Y",oa,p),s.prototype._stateAfterStyle2=r("L",sa,p),s.prototype._stateAfterStyle3=r("E",na,p),s.prototype._stateAfterStyle4=function(a){">"===a||i(a)?(this._special=ma,this._state=h,this._sectionStart=this._index-5,this._index--):this._state=p},s.prototype._stateBeforeEntity=r("#",la,ca),s.prototype._stateBeforeNumericEntity=r("X",pa,ua),s.prototype._parseNamedEntityStrict=function(){if(this._sectionStart+1<this._index){var a=this._buffer.substring(this._sectionStart+1,this._index),e=this._xmlMode?c:d;e.hasOwnProperty(a)&&(this._emitPartial(e[a]),this._sectionStart=this._index+1)}},s.prototype._parseLegacyEntity=function(){var a=this._sectionStart+1,e=this._index-a;for(e>6&&(e=6);e>=2;){var t=this._buffer.substr(a,e);if(l.hasOwnProperty(t))return this._emitPartial(l[t]),void(this._sectionStart+=e+1);e--}},s.prototype._stateInNamedEntity=function(a){";"===a?(this._parseNamedEntityStrict(),this._sectionStart+1<this._index&&!this._xmlMode&&this._parseLegacyEntity(),this._state=this._baseState):(a<"a"||a>"z")&&(a<"A"||a>"Z")&&(a<"0"||a>"9")&&(this._xmlMode||this._sectionStart+1===this._index||(this._baseState!==p?"="!==a&&this._parseNamedEntityStrict():this._parseLegacyEntity()),this._state=this._baseState,this._index--)},s.prototype._decodeNumericEntity=function(a,e){var t=this._sectionStart+a;if(t!==this._index){var i=this._buffer.substring(t,this._index),r=parseInt(i,e);this._emitPartial(n(r)),this._sectionStart=this._index}else this._sectionStart--;this._state=this._baseState},s.prototype._stateInNumericEntity=function(a){";"===a?(this._decodeNumericEntity(2,10),this._sectionStart++):(a<"0"||a>"9")&&(this._xmlMode?this._state=this._baseState:this._decodeNumericEntity(2,10),this._index--)},s.prototype._stateInHexEntity=function(a){";"===a?(this._decodeNumericEntity(3,16),this._sectionStart++):(a<"a"||a>"f")&&(a<"A"||a>"F")&&(a<"0"||a>"9")&&(this._xmlMode?this._state=this._baseState:this._decodeNumericEntity(3,16),this._index--)},s.prototype._cleanup=function(){this._sectionStart<0?(this._buffer="",this._bufferOffset+=this._index,this._index=0):this._running&&(this._state===p?(this._sectionStart!==this._index&&this._cbs.ontext(this._buffer.substr(this._sectionStart)),this._buffer="",this._bufferOffset+=this._index,this._index=0):this._sectionStart===this._index?(this._buffer="",this._bufferOffset+=this._index,this._index=0):(this._buffer=this._buffer.substr(this._sectionStart),this._index-=this._sectionStart,this._bufferOffset+=this._sectionStart),this._sectionStart=0)},s.prototype.write=function(a){this._ended&&this._cbs.onerror(Error(".write() after done!")),this._buffer+=a,this._parse()},s.prototype._parse=function(){for(;this._index<this._buffer.length&&this._running;){var a=this._buffer.charAt(this._index);this._state===p?this._stateText(a):this._state===g?this._stateBeforeTagName(a):this._state===m?this._stateInTagName(a):this._state===b?this._stateBeforeCloseingTagName(a):this._state===h?this._stateInCloseingTagName(a):this._state===v?this._stateAfterCloseingTagName(a):this._state===f?this._stateInSelfClosingTag(a):this._state===z?this._stateBeforeAttributeName(a):this._state===y?this._stateInAttributeName(a):this._state===w?this._stateAfterAttributeName(a):this._state===x?this._stateBeforeAttributeValue(a):this._state===k?this._stateInAttributeValueDoubleQuotes(a):this._state===_?this._stateInAttributeValueSingleQuotes(a):this._state===j?this._stateInAttributeValueNoQuotes(a):this._state===q?this._stateBeforeDeclaration(a):this._state===E?this._stateInDeclaration(a):this._state===S?this._stateInProcessingInstruction(a):this._state===A?this._stateBeforeComment(a):this._state===T?this._stateInComment(a):this._state===C?this._stateAfterComment1(a):this._state===O?this._stateAfterComment2(a):this._state===D?this._stateBeforeCdata1(a):this._state===P?this._stateBeforeCdata2(a):this._state===R?this._stateBeforeCdata3(a):this._state===B?this._stateBeforeCdata4(a):this._state===F?this._stateBeforeCdata5(a):this._state===M?this._stateBeforeCdata6(a):this._state===L?this._stateInCdata(a):this._state===I?this._stateAfterCdata1(a):this._state===$?this._stateAfterCdata2(a):this._state===N?this._stateBeforeSpecial(a):this._state===U?this._stateBeforeSpecialEnd(a):this._state===W?this._stateBeforeScript1(a):this._state===H?this._stateBeforeScript2(a):this._state===K?this._stateBeforeScript3(a):this._state===V?this._stateBeforeScript4(a):this._state===Y?this._stateBeforeScript5(a):this._state===G?this._stateAfterScript1(a):this._state===Z?this._stateAfterScript2(a):this._state===J?this._stateAfterScript3(a):this._state===X?this._stateAfterScript4(a):this._state===Q?this._stateAfterScript5(a):this._state===aa?this._stateBeforeStyle1(a):this._state===ea?this._stateBeforeStyle2(a):this._state===ta?this._stateBeforeStyle3(a):this._state===ia?this._stateBeforeStyle4(a):this._state===ra?this._stateAfterStyle1(a):this._state===oa?this._stateAfterStyle2(a):this._state===sa?this._stateAfterStyle3(a):this._state===na?this._stateAfterStyle4(a):this._state===da?this._stateBeforeEntity(a):this._state===la?this._stateBeforeNumericEntity(a):this._state===ca?this._stateInNamedEntity(a):this._state===ua?this._stateInNumericEntity(a):this._state===pa?this._stateInHexEntity(a):this._cbs.onerror(Error("unknown _state"),this._state),this._index++}this._cleanup()},s.prototype.pause=function(){this._running=!1},s.prototype.resume=function(){this._running=!0,this._index<this._buffer.length&&this._parse(),this._ended&&this._finish()},s.prototype.end=function(a){this._ended&&this._cbs.onerror(Error(".end() after done!")),a&&this.write(a),this._ended=!0,this._running&&this._finish()},s.prototype._finish=function(){this._sectionStart<this._index&&this._handleTrailingData(),this._cbs.onend()},s.prototype._handleTrailingData=function(){var a=this._buffer.substr(this._sectionStart);this._state===L||this._state===I||this._state===$?this._cbs.oncdata(a):this._state===T||this._state===C||this._state===O?this._cbs.oncomment(a):this._state!==ca||this._xmlMode?this._state!==ua||this._xmlMode?this._state!==pa||this._xmlMode?this._state!==m&&this._state!==z&&this._state!==x&&this._state!==w&&this._state!==y&&this._state!==_&&this._state!==k&&this._state!==j&&this._state!==h&&this._cbs.ontext(a):(this._decodeNumericEntity(3,16),this._sectionStart<this._index&&(this._state=this._baseState,this._handleTrailingData())):(this._decodeNumericEntity(2,10),this._sectionStart<this._index&&(this._state=this._baseState,this._handleTrailingData())):(this._parseLegacyEntity(),this._sectionStart<this._index&&(this._state=this._baseState,this._handleTrailingData()))},s.prototype.reset=function(){s.call(this,{xmlMode:this._xmlMode,decodeEntities:this._decodeEntities},this._cbs)},s.prototype.getAbsoluteIndex=function(){return this._bufferOffset+this._index},s.prototype._getSection=function(){return this._buffer.substring(this._sectionStart,this._index)},s.prototype._emitToken=function(a){this._cbs[a](this._getSection()),this._sectionStart=-1},s.prototype._emitPartial=function(a){this._baseState!==p?this._cbs.onattribdata(a):this._cbs.ontext(a)}},function(a,e,t){function i(a){if(a>=55296&&a<=57343||a>1114111)return"�";a in r&&(a=r[a]);var e="";return a>65535&&(a-=65536,e+=String.fromCharCode(a>>>10&1023|55296),a=56320|1023&a),e+=String.fromCharCode(a)}var r=t(1264);a.exports=i},function(a,e){a.exports={Aacute:"Á",aacute:"á",Acirc:"Â",acirc:"â",acute:"´",AElig:"Æ",aelig:"æ",Agrave:"À",agrave:"à",amp:"&",AMP:"&",Aring:"Å",aring:"å",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",brvbar:"¦",Ccedil:"Ç",ccedil:"ç",cedil:"¸",cent:"¢",copy:"©",COPY:"©",curren:"¤",deg:"°",divide:"÷",Eacute:"É",eacute:"é",Ecirc:"Ê",ecirc:"ê",Egrave:"È",egrave:"è",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",frac12:"½",frac14:"¼",frac34:"¾",gt:">",GT:">",Iacute:"Í",iacute:"í",Icirc:"Î",icirc:"î",iexcl:"¡",Igrave:"Ì",igrave:"ì",iquest:"¿",Iuml:"Ï",iuml:"ï",laquo:"«",lt:"<",LT:"<",macr:"¯",micro:"µ",middot:"·",nbsp:" ",not:"¬",Ntilde:"Ñ",ntilde:"ñ",Oacute:"Ó",oacute:"ó",Ocirc:"Ô",ocirc:"ô",Ograve:"Ò",ograve:"ò",ordf:"ª",ordm:"º",Oslash:"Ø",oslash:"ø",Otilde:"Õ",otilde:"õ",Ouml:"Ö",ouml:"ö",para:"¶",plusmn:"±",pound:"£",quot:'"',QUOT:'"',raquo:"»",reg:"®",REG:"®",sect:"§",shy:"­",sup1:"¹",sup2:"²",sup3:"³",szlig:"ß",THORN:"Þ",thorn:"þ",times:"×",Uacute:"Ú",uacute:"ú",Ucirc:"Û",ucirc:"û",Ugrave:"Ù",ugrave:"ù",uml:"¨",Uuml:"Ü",uuml:"ü",Yacute:"Ý",yacute:"ý",yen:"¥",yuml:"ÿ"}},function(a,e){var t=a.exports={get firstChild(){var a=this.children;return a&&a[0]||null},get lastChild(){var a=this.children;return a&&a[a.length-1]||null},get nodeType(){return r[this.type]||r.element}},i={tagName:"name",childNodes:"children",parentNode:"parent",previousSibling:"prev",nextSibling:"next",nodeValue:"data"},r={element:1,text:3,cdata:4,comment:8};Object.keys(i).forEach(function(a){var e=i[a];Object.defineProperty(t,a,{get:function(){return this[e]||null},set:function(a){return this[e]=a,a}})})},function(a,e,t){function i(a,e){var t=this._parser=new r(a,e),i=this._decoder=new s;o.call(this,{decodeStrings:!1}),this.once("finish",function(){t.end(i.end())})}a.exports=i;var r=t(1118),o=t(1269).Writable||t(1282).Writable,s=t(1045).StringDecoder,n=t(1043).Buffer;t(48)(i,o),o.prototype._write=function(a,e,t){a instanceof n&&(a=this._decoder.write(a)),this._parser.write(a),t()}},function(a,e,t){"use strict";(function(e,i){function r(a){return F.from(a)}function o(a){return F.isBuffer(a)||a instanceof M}function s(a,e,t){if("function"==typeof a.prependListener)return a.prependListener(e,t);a._events&&a._events[e]?P(a._events[e])?a._events[e].unshift(t):a._events[e]=[t,a._events[e]]:a.on(e,t)}function n(a,e){D=D||t(331),a=a||{};var i=e instanceof D;this.objectMode=!!a.objectMode,i&&(this.objectMode=this.objectMode||!!a.readableObjectMode);var r=a.highWaterMark,o=a.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=r||0===r?r:i&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new U,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=a.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,a.encoding&&(N||(N=t(1045).StringDecoder),this.decoder=new N(a.encoding),this.encoding=a.encoding)}function d(a){if(D=D||t(331),!(this instanceof d))return new d(a);this._readableState=new n(a,this),this.readable=!0,a&&("function"==typeof a.read&&(this._read=a.read),"function"==typeof a.destroy&&(this._destroy=a.destroy)),B.call(this)}function l(a,e,t,i,o){var s=a._readableState;if(null===e)s.reading=!1,f(a,s);else{var n;o||(n=u(s,e)),n?a.emit("error",n):s.objectMode||e&&e.length>0?("string"==typeof e||s.objectMode||Object.getPrototypeOf(e)===F.prototype||(e=r(e)),i?s.endEmitted?a.emit("error",new Error("stream.unshift() after end event")):c(a,s,e,!0):s.ended?a.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!t?(e=s.decoder.write(e),s.objectMode||0!==e.length?c(a,s,e,!1):v(a,s)):c(a,s,e,!1))):i||(s.reading=!1)}return p(s)}function c(a,e,t,i){e.flowing&&0===e.length&&!e.sync?(a.emit("data",t),a.read(0)):(e.length+=e.objectMode?1:t.length,i?e.buffer.unshift(t):e.buffer.push(t),e.needReadable&&b(a)),v(a,e)}function u(a,e){var t;return o(e)||"string"==typeof e||void 0===e||a.objectMode||(t=new TypeError("Invalid non-string/buffer chunk")),t}function p(a){return!a.ended&&(a.needReadable||a.length<a.highWaterMark||0===a.length)}function g(a){return a>=K?a=K:(a--,a|=a>>>1,a|=a>>>2,a|=a>>>4,a|=a>>>8,a|=a>>>16,a++),a}function m(a,e){return a<=0||0===e.length&&e.ended?0:e.objectMode?1:a!==a?e.flowing&&e.length?e.buffer.head.data.length:e.length:(a>e.highWaterMark&&(e.highWaterMark=g(a)),a<=e.length?a:e.ended?e.length:(e.needReadable=!0,0))}function f(a,e){if(!e.ended){if(e.decoder){var t=e.decoder.end();t&&t.length&&(e.buffer.push(t),e.length+=e.objectMode?1:t.length)}e.ended=!0,b(a)}}function b(a){var e=a._readableState;e.needReadable=!1,e.emittedReadable||($("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?O.nextTick(h,a):h(a))}function h(a){$("emit readable"),a.emit("readable"),_(a)}function v(a,e){e.readingMore||(e.readingMore=!0,O.nextTick(z,a,e))}function z(a,e){for(var t=e.length;!e.reading&&!e.flowing&&!e.ended&&e.length<e.highWaterMark&&($("maybeReadMore read 0"),a.read(0),t!==e.length);)t=e.length;e.readingMore=!1}function y(a){return function(){var e=a._readableState;$("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&R(a,"data")&&(e.flowing=!0,_(a))}}function w(a){$("readable nexttick read 0"),a.read(0)}function x(a,e){e.resumeScheduled||(e.resumeScheduled=!0,O.nextTick(k,a,e))}function k(a,e){e.reading||($("resume read 0"),a.read(0)),e.resumeScheduled=!1,e.awaitDrain=0,a.emit("resume"),_(a),e.flowing&&!e.reading&&a.read(0)}function _(a){var e=a._readableState;for($("flow",e.flowing);e.flowing&&null!==a.read(););}function j(a,e){if(0===e.length)return null;var t;return e.objectMode?t=e.buffer.shift():!a||a>=e.length?(t=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.head.data:e.buffer.concat(e.length),e.buffer.clear()):t=q(a,e.buffer,e.decoder),t}function q(a,e,t){var i;return a<e.head.data.length?(i=e.head.data.slice(0,a),e.head.data=e.head.data.slice(a)):i=a===e.head.data.length?e.shift():t?E(a,e):S(a,e),i}function E(a,e){var t=e.head,i=1,r=t.data;for(a-=r.length;t=t.next;){var o=t.data,s=a>o.length?o.length:a;if(s===o.length?r+=o:r+=o.slice(0,a),0===(a-=s)){s===o.length?(++i,t.next?e.head=t.next:e.head=e.tail=null):(e.head=t,t.data=o.slice(s));break}++i}return e.length-=i,r}function S(a,e){var t=F.allocUnsafe(a),i=e.head,r=1;for(i.data.copy(t),a-=i.data.length;i=i.next;){var o=i.data,s=a>o.length?o.length:a;if(o.copy(t,t.length-a,0,s),0===(a-=s)){s===o.length?(++r,i.next?e.head=i.next:e.head=e.tail=null):(e.head=i,i.data=o.slice(s));break}++r}return e.length-=r,t}function A(a){var e=a._readableState;if(e.length>0)throw new Error('"endReadable()" called on non-empty stream');e.endEmitted||(e.ended=!0,O.nextTick(T,e,a))}function T(a,e){a.endEmitted||0!==a.length||(a.endEmitted=!0,e.readable=!1,e.emit("end"))}function C(a,e){for(var t=0,i=a.length;t<i;t++)if(a[t]===e)return t;return-1}var O=t(734);a.exports=d;var D,P=t(1125);d.ReadableState=n;var R=(t(234).EventEmitter,function(a,e){return a.listeners(e).length}),B=t(1126),F=t(735).Buffer,M=e.Uint8Array||function(){},L=t(559);L.inherits=t(48);var I=t(1272),$=void 0;$=I&&I.debuglog?I.debuglog("stream"):function(){};var N,U=t(1273),W=t(1127);L.inherits(d,B);var H=["error","close","destroy","pause","resume"];Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(a){this._readableState&&(this._readableState.destroyed=a)}}),d.prototype.destroy=W.destroy,d.prototype._undestroy=W.undestroy,d.prototype._destroy=function(a,e){this.push(null),e(a)},d.prototype.push=function(a,e){var t,i=this._readableState;return i.objectMode?t=!0:"string"==typeof a&&(e=e||i.defaultEncoding,e!==i.encoding&&(a=F.from(a,e),e=""),t=!0),l(this,a,e,!1,t)},d.prototype.unshift=function(a){return l(this,a,null,!0,!1)},d.prototype.isPaused=function(){return!1===this._readableState.flowing},d.prototype.setEncoding=function(a){return N||(N=t(1045).StringDecoder),this._readableState.decoder=new N(a),this._readableState.encoding=a,this};var K=8388608;d.prototype.read=function(a){$("read",a),a=parseInt(a,10);var e=this._readableState,t=a;if(0!==a&&(e.emittedReadable=!1),0===a&&e.needReadable&&(e.length>=e.highWaterMark||e.ended))return $("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?A(this):b(this),null;if(0===(a=m(a,e))&&e.ended)return 0===e.length&&A(this),null;var i=e.needReadable;$("need readable",i),(0===e.length||e.length-a<e.highWaterMark)&&(i=!0,$("length less than watermark",i)),e.ended||e.reading?(i=!1,$("reading or ended",i)):i&&($("do read"),e.reading=!0,e.sync=!0,0===e.length&&(e.needReadable=!0),this._read(e.highWaterMark),e.sync=!1,e.reading||(a=m(t,e)));var r;return r=a>0?j(a,e):null,null===r?(e.needReadable=!0,a=0):e.length-=a,0===e.length&&(e.ended||(e.needReadable=!0),t!==a&&e.ended&&A(this)),null!==r&&this.emit("data",r),r},d.prototype._read=function(a){this.emit("error",new Error("_read() is not implemented"))},d.prototype.pipe=function(a,e){function t(a,e){$("onunpipe"),a===p&&e&&!1===e.hasUnpiped&&(e.hasUnpiped=!0,o())}function r(){$("onend"),a.end()}function o(){$("cleanup"),a.removeListener("close",l),a.removeListener("finish",c),a.removeListener("drain",b),a.removeListener("error",d),a.removeListener("unpipe",t),p.removeListener("end",r),p.removeListener("end",u),p.removeListener("data",n),h=!0,!g.awaitDrain||a._writableState&&!a._writableState.needDrain||b()}function n(e){$("ondata"),v=!1,!1!==a.write(e)||v||((1===g.pipesCount&&g.pipes===a||g.pipesCount>1&&-1!==C(g.pipes,a))&&!h&&($("false write response, pause",p._readableState.awaitDrain),p._readableState.awaitDrain++,v=!0),p.pause())}function d(e){$("onerror",e),u(),a.removeListener("error",d),0===R(a,"error")&&a.emit("error",e)}function l(){a.removeListener("finish",c),u()}function c(){$("onfinish"),a.removeListener("close",l),u()}function u(){$("unpipe"),p.unpipe(a)}var p=this,g=this._readableState;switch(g.pipesCount){case 0:g.pipes=a;break;case 1:g.pipes=[g.pipes,a];break;default:g.pipes.push(a)}g.pipesCount+=1,$("pipe count=%d opts=%j",g.pipesCount,e);var m=(!e||!1!==e.end)&&a!==i.stdout&&a!==i.stderr,f=m?r:u;g.endEmitted?O.nextTick(f):p.once("end",f),a.on("unpipe",t);var b=y(p);a.on("drain",b);var h=!1,v=!1;return p.on("data",n),s(a,"error",d),a.once("close",l),a.once("finish",c),a.emit("pipe",p),g.flowing||($("pipe resume"),p.resume()),a},d.prototype.unpipe=function(a){var e=this._readableState,t={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return a&&a!==e.pipes?this:(a||(a=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,a&&a.emit("unpipe",this,t),this);if(!a){var i=e.pipes,r=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o<r;o++)i[o].emit("unpipe",this,t);return this}var s=C(e.pipes,a);return-1===s?this:(e.pipes.splice(s,1),e.pipesCount-=1,1===e.pipesCount&&(e.pipes=e.pipes[0]),a.emit("unpipe",this,t),this)},d.prototype.on=function(a,e){var t=B.prototype.on.call(this,a,e);if("data"===a)!1!==this._readableState.flowing&&this.resume();else if("readable"===a){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&b(this):O.nextTick(w,this))}return t},d.prototype.addListener=d.prototype.on,d.prototype.resume=function(){var a=this._readableState;return a.flowing||($("resume"),a.flowing=!0,x(this,a)),this},d.prototype.pause=function(){return $("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&($("pause"),this._readableState.flowing=!1,this.emit("pause")),this},d.prototype.wrap=function(a){var e=this,t=this._readableState,i=!1;a.on("end",function(){if($("wrapped end"),t.decoder&&!t.ended){var a=t.decoder.end();a&&a.length&&e.push(a)}e.push(null)}),a.on("data",function(r){if($("wrapped data"),t.decoder&&(r=t.decoder.write(r)),(!t.objectMode||null!==r&&void 0!==r)&&(t.objectMode||r&&r.length)){e.push(r)||(i=!0,a.pause())}});for(var r in a)void 0===this[r]&&"function"==typeof a[r]&&(this[r]=function(e){return function(){return a[e].apply(a,arguments)}}(r));for(var o=0;o<H.length;o++)a.on(H[o],this.emit.bind(this,H[o]));return this._read=function(e){$("wrapped _read",e),i&&(i=!1,a.resume())},this},Object.defineProperty(d.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),d._fromList=j}).call(e,t(9),t(141))},function(a,e){var t={}.toString;a.exports=Array.isArray||function(a){return"[object Array]"==t.call(a)}},function(a,e,t){a.exports=t(234).EventEmitter},function(a,e,t){"use strict";function i(a,e){var t=this,i=this._readableState&&this._readableState.destroyed,r=this._writableState&&this._writableState.destroyed;return i||r?(e?e(a):!a||this._writableState&&this._writableState.errorEmitted||s.nextTick(o,this,a),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(a||null,function(a){!e&&a?(s.nextTick(o,t,a),t._writableState&&(t._writableState.errorEmitted=!0)):e&&e(a)}),this)}function r(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function o(a,e){a.emit("error",e)}var s=t(734);a.exports={destroy:i,undestroy:r}},function(a,e,t){"use strict";function i(a,e){var t=this._transformState;t.transforming=!1;var i=t.writecb;if(!i)return this.emit("error",new Error("write callback called multiple times"));t.writechunk=null,t.writecb=null,null!=e&&this.push(e),i(a);var r=this._readableState;r.reading=!1,(r.needReadable||r.length<r.highWaterMark)&&this._read(r.highWaterMark)}function r(a){if(!(this instanceof r))return new r(a);n.call(this,a),this._transformState={afterTransform:i.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,a&&("function"==typeof a.transform&&(this._transform=a.transform),"function"==typeof a.flush&&(this._flush=a.flush)),this.on("prefinish",o)}function o(){var a=this;"function"==typeof this._flush?this._flush(function(e,t){s(a,e,t)}):s(this,null,null)}function s(a,e,t){if(e)return a.emit("error",e);if(null!=t&&a.push(t),a._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(a._transformState.transforming)throw new Error("Calling transform done when still transforming");return a.push(null)}a.exports=r;var n=t(331),d=t(559);d.inherits=t(48),d.inherits(r,n),r.prototype.push=function(a,e){return this._transformState.needTransform=!1,n.prototype.push.call(this,a,e)},r.prototype._transform=function(a,e,t){throw new Error("_transform() is not implemented")},r.prototype._write=function(a,e,t){var i=this._transformState;if(i.writecb=t,i.writechunk=a,i.writeencoding=e,!i.transforming){var r=this._readableState;(i.needTransform||r.needReadable||r.length<r.highWaterMark)&&this._read(r.highWaterMark)}},r.prototype._read=function(a){var e=this._transformState;null!==e.writechunk&&e.writecb&&!e.transforming?(e.transforming=!0,this._transform(e.writechunk,e.writeencoding,e.afterTransform)):e.needTransform=!0},r.prototype._destroy=function(a,e){var t=this;n.prototype._destroy.call(this,a,function(a){e(a),t.emit("close")})}},function(a,e,t){"use strict";var i=t(1117),r=t(68),o=t(1039);a.exports=function(a){var e=i(a.getText());return r(e,o.getFromAnchorTag)}},function(a,e,t){"use strict";var i=t(1307)(),r=t(415);a.exports=function(a){var e,t=[];for(e=0;e<i.length;e++)null!==a.match(r(i[e]))&&t.push(i[e]);return t}},function(a,e,t){"use strict";function i(a){var e=[],t=a.deviations;return l(t.words)||l(t.words.fragments)||(e=g(t.words.fragments,function(a,e){return c(a,function(a){return a.location=e,new f(a)})})),e}var r=t(1312),o=t(235),s=t(24),n=t(115),d=t(1046),l=t(41),c=t(68),u=t(1169),p=t(125),g=t(589),m=t(1322),f=t(1324),b=function(a,e){var t=0,i=new RegExp("[^"+r(e).vowels+"]","ig"),o=a.split(i);return t+=n(o,function(a){return""!==a}).length},h=function(a,e){return new m(r(e)).countSyllables(a)},v=function(a,e){var t=r(e).deviations.words.full,i=d(t,function(e){return e.word===a});return l(i)?0:i.syllables},z=p(i),y=function(a,e){var t=z(r(e)),i=a,o=0;return s(t,function(a){a.occursIn(i)&&(i=a.removeFrom(i),o+=a.getSyllables())}),{word:i,syllableCount:o}},w=function(a,e){var t=0;return t+=b(a,e),t+=h(a,e)},x=function(a,e){var t=0,i=v(a,e);if(0!==i)return i;var r=y(a,e);return a=r.word,t+=r.syllableCount,t+=w(a,e)},k=function(a,e){a=a.toLocaleLowerCase();var t=o(a),i=c(t,function(a){return x(a,e)});return u(i)};a.exports=k},function(a,e,t){function i(a,e,t){var i=null==a?0:a.length;if(!i)return-1;var d=null==t?0:s(t);return d<0&&(d=n(i+d,0)),r(a,o(e,3),d)}var r=t(1110),o=t(276),s=t(736),n=Math.max;a.exports=i},function(a,e,t){function i(a){if(!a)return 0===a?a:0;if((a=r(a))===o||a===-o){return(a<0?-1:1)*s}return a===a?a:0}var r=t(1063),o=1/0,s=1.7976931348623157e308;a.exports=i},function(a,e,t){function i(a){return(null==a?0:a.length)?r(a,1):[]}var r=t(590);a.exports=i},function(a,e,t){"use strict";var i=t(1136);a.exports=function(a){return i(a.getText()).length}},function(a,e,t){"use strict";var i=t(1331);a.exports=function(a){return i(a,"<img(?:[^>]+)?>")}},function(a,e,t){"use strict";var i=t(68),r=t(589),o=t(115),s=t(364).getBlocks,n=function(a){for(var e,t=[],r=/<p(?:[^>]+)?>(.*?)<\/p>/gi;null!==(e=r.exec(a));)t.push(e);return i(t,function(a){return a[1]})};a.exports=function(a){var e=n(a);if(e.length>0)return e;var t=s(a);return t=o(t,function(a){return 0!==a.indexOf("<h")}),e=r(t,function(a){return a.split("\n\n")}),e.length>0?e:[a]}},function(a,e,t){"use strict";var i=t(192),r=t(24),o=t(116).stripFullTags;a.exports=function(a){var e=[];return r(a,function(a){var t=o(a);i(t)<=0||e.push({sentence:a,sentenceLength:i(a)})}),e}},function(a,e,t){"use strict";var i=["accordingly","additionally","afterward","afterwards","albeit","also","although","altogether","another","basically","because","before","besides","but","certainly","chiefly","comparatively","concurrently","consequently","contrarily","conversely","correspondingly","despite","doubtedly","during","e.g.","earlier","emphatically","equally","especially","eventually","evidently","explicitly","finally","firstly","following","formerly","forthwith","fourthly","further","furthermore","generally","hence","henceforth","however","i.e.","identically","indeed","instead","last","lastly","later","lest","likewise","markedly","meanwhile","moreover","nevertheless","nonetheless","nor","notwithstanding","obviously","occasionally","otherwise","overall","particularly","presently","previously","rather","regardless","secondly","shortly","significantly","similarly","simultaneously","since","so","soon","specifically","still","straightaway","subsequently","surely","surprisingly","than","then","thereafter","therefore","thereupon","thirdly","though","thus","till","undeniably","undoubtedly","unless","unlike","unquestionably","until","when","whenever","whereas","while"],r=["above all","after all","after that","all in all","all of a sudden","all things considered","analogous to","although this may be true","analogous to","another key point","as a matter of fact","as a result","as an illustration","as can be seen","as has been noted","as I have noted","as I have said","as I have shown","as long as","as much as","as shown above","as soon as","as well as","at any rate","at first","at last","at least","at length","at the present time","at the same time","at this instant","at this point","at this time","balanced against","being that","by all means","by and large","by comparison","by the same token","by the time","compared to","be that as it may","coupled with","different from","due to","equally important","even if","even more","even so","even though","first thing to remember","for example","for fear that","for instance","for one thing","for that reason","for the most part","for the purpose of","for the same reason","for this purpose","for this reason","from time to time","given that","given these points","important to realize","in a word","in addition","in another case","in any case","in any event","in brief","in case","in conclusion","in contrast","in detail","in due time","in effect","in either case","in essence","in fact","in general","in light of","in like fashion","in like manner","in order that","in order to","in other words","in particular","in reality","in short","in similar fashion","in spite of","in sum","in summary","in that case","in the event that","in the final analysis","in the first place","in the fourth place","in the hope that","in the light of","in the long run","in the meantime","in the same fashion","in the same way","in the second place","in the third place","in this case","in this situation","in time","in truth","in view of","inasmuch as","most compelling evidence","most important","must be remembered","not to mention","now that","of course","on account of","on balance","on condition that","on one hand","on the condition that","on the contrary","on the negative side","on the other hand","on the positive side","on the whole","on this occasion","once","once in a while","only if","owing to","point often overlooked","prior to","provided that","seeing that","so as to","so far","so long as","so that","sooner or later","such as","summing up","take the case of","that is","that is to say","then again","this time","to be sure","to begin with","to clarify","to conclude","to demonstrate","to emphasize","to enumerate","to explain","to illustrate","to list","to point out","to put it another way","to put it differently","to repeat","to rephrase it","to say nothing of","to sum up","to summarize","to that end","to the end that","to this end","together with","under those circumstances","until now","up against","up to the present time","vis a vis","what's more","while it may be true","while this may be true","with attention to","with the result that","with this in mind","with this intention","with this purpose in mind","without a doubt","without delay","without doubt","without reservation"];a.exports=function(){return{singleWords:i,multipleWords:r,allWords:i.concat(r)}}},function(a,e,t){"use strict";var i=["aber","abschließend","abschliessend","alldieweil","allerdings","also","anderenteils","andererseits","andernteils","anfaenglich","anfänglich","anfangs","angenommen","anschliessend","anschließend","aufgrund","ausgenommen","ausserdem","außerdem","beispielsweise","bevor","beziehungsweise","bspw","bzw","d.h","da","dabei","dadurch","dafuer","dafür","dagegen","daher","dahingegen","danach","dann","darauf","darum","dass","davor","dazu","dementgegen","dementsprechend","demgegenüber","demgegenueber","demgemaess","demgemäß","demzufolge","denn","dennoch","dergestalt","desto","deshalb","desungeachtet","deswegen","doch","dort","drittens","ebenfalls","ebenso","endlich","ehe","einerseits","einesteils","entsprechend","entweder","erst","erstens","falls","ferner","folgerichtig","folglich","fürderhin","fuerderhin","genauso","hierdurch","hierzu","hingegen","immerhin","indem","indes","indessen","infolge","infolgedessen","insofern","insoweit","inzwischen","jedenfalls","jedoch","kurzum","m.a.w","mitnichten","mitunter","möglicherweise","moeglicherweise","nachdem","nebenher","nichtsdestotrotz","nichtsdestoweniger","ob","obenrein","obgleich","obschon","obwohl","obzwar","ohnehin","richtigerweise","schliesslich","schließlich","seit","seitdem","sobald","sodass","so dass","sofern","sogar","solang","solange","somit","sondern","sooft","soviel","soweit","sowie","sowohl","statt","stattdessen","trotz","trotzdem","überdies","übrigens","ueberdies","uebrigens","ungeachtet","vielmehr","vorausgesetzt","vorher","waehrend","während","währenddessen","waehrenddessen","weder","wegen","weil","weiter","weiterhin","wenn","wenngleich","wennschon","wennzwar","weshalb","widrigenfalls","wiewohl","wobei","wohingegen","z.b","zudem","zuerst","zufolge","zuletzt","zumal","zuvor","zwar","zweitens"],r=["abgesehen von","abgesehen davon","als dass","als wenn","anders ausgedrückt","anders ausgedrueckt","anders formuliert","anders gefasst","anders gefragt","anders gesagt","anders gesprochen","anstatt dass","auch wenn","auf grund","auf jeden fall","aus diesem grund","ausser dass","außer dass","ausser wenn","außer wenn","besser ausgedrückt","besser ausgedrueckt","besser formuliert","besser gesagt","besser gesprochen","bloss dass","bloß dass","das heisst","das heißt","des weiteren","dessen ungeachtet","ebenso wie","genauso wie","geschweige denn","im fall","im falle","im folgenden","im gegensatz dazu","im grunde genommen","in diesem sinne","je nachdem","kurz gesagt","mit anderen worten","ohne dass","so dass","umso mehr als","umso weniger als","umso mehr, als","umso weniger, als","unbeschadet dessen","und zwar","ungeachtet dessen","unter dem strich","zum beispiel"];a.exports=function(){return{singleWords:i,multipleWords:r,allWords:i.concat(r)}}},function(a,e,t){"use strict";var i=["ainsi","alors","aussi","car","cependant","certainement","certes","conséquemment","d'abord","d'ailleurs","d'après","davantage","désormais","deuxièmement","donc","dorénavant","effectivement","également","enfin","ensuite","entre-temps","essentiellement","excepté","finalement","globalement","jusqu'ici","là-dessus","lorsque","mais","malgré","néanmoins","notamment","partant","plutôt","pourtant","précédemment","premièrement","probablement","puis","puisque","quoique","sauf","selon","semblablement","sinon","suivant","toutefois","troisièmement"],r=["à cause de","à ce jour","à ce propos","à ce sujet","à cet égard","à cette fin","à compter de","à condition que","à défaut de","à force de","à juste titre","à la lumière de","à la suite de","à l'aide de","à l'appui de","à l'encontre de","à l'époque actuelle","à l'exception de","à l'exclusion de","à l'heure actuelle","à l'image de","à l'instar de","à l'inverse","à l'inverse de","à l'opposé","à la condition que","à mesure que","à moins que","à nouveau","à partir de","à première vue","à savoir","à seule fin que","à supposer que","à tel point que","à tout prendre","à vrai dire","afin de","afin d'attirer l'attention sur","afin que","ainsi donc","ainsi que","alors que","antérieurement","après cela","après quoi","après que","après réflexion","après tout","attendu que","au cas où","au contraire","au fond","au fur et à mesure","au lieu de","au même temps","au moment où","au moyen de","au point que","au risque de","au surplus","au total","aussi bien que","aussitôt que","autant que","autrement dit","avant que","avant tout","ayant fini","bien que","c'est à dire que","c'est ainsi que","c'est dans ce but que","c'est dire","c'est le cas de","c'est pour cela que","c'est la raison pour laquelle","c'est pourquoi","c'est qu'en effet","c'est-à-dire","ça confirme que","ça montre que","ça prouve que","cela étant","cela dit","cependant que","compte tenu","comme l'illustre","comme le souligne","comme on pouvait s'y attendre","comme quoi","comme si","commençons par examiner","comparativement à","conformément à","contrairement à","considérons par exemple","d'autant plus","d'autant que","d'autre part","d'ici là","d'où","d'un autre côté","d'un côté","d'une façon générale","dans ce cas","dans ces conditions","dans cet esprit","dans l'ensemble","dans l'état actuel des choses","dans l'éventualité où","dans l'hypothèse où","dans la mesure où","dans le but de","dans le cadre de","dans le cas où","dans les circonstances actuelles","dans les grandes lignes","dans un autre ordre d'idée","dans un délai de","de ce fait","de cette façon","de crainte que","de façon à","de façon à ce que","de façon que","de fait","de l'autre côté","de la même manière","de la même façon que","de manière que","de même","de même qu'à","de même que","de nos jours","de peur que","de prime abord","de sorte que","de surcroît","de telle manière que","de telle sorte que","de toute évidence","de toute façon","de toute manière","depuis que","dès lors que","dès maintenant","dès qua","dès que","du fait que","du moins","du moment que","du point de vue de","du reste","d'ici là","d'ores et déjà","en admettant que","en attendant que","en bref","en cas de","en cas que","en ce cas","en ce domaine","en ce moment","en ce qui a trait à","en ce qui concerne","en ce sens","en cela","en comparaison de","en conclusion","en conformité avec","en conséquence","en d'autres termes","en définitive","en dépit de","en dernier lieu","en deuxième lieu","en effet","en face de","en fait","en fin de compte","en général","en guise de conclusion","en matière de","en même temps que","en outre","en particulier","en plus","en premier lieu","en principe","en raison de","en réalité","en règle générale","en résumé","en revanche","en second lieu","en somme","en sorte que","en supposant que","en tant que","en terminant","en théorie","en tout cas","en tout premier lieu","en troisième lieu","en un mot","en vérité","en vue que","encore que","encore une fois","entre autres","et même","et puis","étant donné qu'à","étant donné que","face à","grâce à","il est à noter que","il est indéniable que","il est question de","il est vrai que","il faut dire aussi que","il faut reconnaître que","il faut souligner que","il ne faut pas oublier que","il s'ensuit que","il suffit de prendre pour exemple","jusqu'ici","il y a aussi","jusqu'à ce que","jusqu'à ce jour","jusqu'à maintenant","jusqu'à présent","jusqu'au moment où","jusqu'ici","l'aspect le plus important de","l'exemple le plus significatif","jusqu'au moment où","la preuve c'est que","loin que","mais en réalité","malgré cela","malgré tout","même si","mentionnons que","mis à part le fait que","notons que","nul doute que","ou bien","outre cela","où que","par ailleurs","par conséquent","par contre","par exception","par exemple","par la suite","par l'entremise de","par l'intermédiaire de","par rapport à","par suite","par suite de","par surcroît","parce que","pareillement","partant de ce fait","pas du tout","pendant que","plus précisément","plus tard","pour ainsi dire","pour autant que","pour ce qui est de","pour ces motifs","pour ces raisons","pour cette raison","pour commencer","pour conclure","pour le moment","pour marquer la causalité","pour l'instant","pour peu que","pour prendre un autre exemple","pour que","pour résumé","pour terminer","pour tout dire","pour toutes ces raisons","pourvu que","prenons le cas de","quand bien même que","quand même","quant à","quel que soit","qui plus est","qui que","quitte à","quoi qu'il en soit","quoi que","quoiqu'il en soit","sans délai","sans doute","sans parler de","sans préjuger","sans tarder","sauf si","selon que","si bien que","si ce n'est que","si l'on songe que","sitôt que","somme toute","sous cette réserve","sous prétexte que","sous réserve de","sous réserve que","suivant que","supposé que","sur le plan de","tandis que","tant et si bien que","tant que","tel que","tellement que","touchant à","tout à fait","tout bien pesé","tout compte fait","tout d'abord","tout d'abord examinons","tout d'abord il faut dire que","tout de même","tout en reconnaissant que","une fois de plus","vu que"];a.exports=function(){return{singleWords:i,multipleWords:r,allWords:i.concat(r)}}},function(a,e,t){"use strict";var i=["además","adicional","así","asimismo","aún","aunque","ciertamente","como","concluyendo","conque","contrariamente","cuando","decididamente","decisivamente","después","diferentemente","efectivamente","entonces","especialmente","específicamente","eventualmente","evidentemente","finalmente","frecuentemente","generalmente","igualmente","lógicamente","luego","mas","mientras","pero","por","porque","posteriormente","primero","principalmente","pronto","próximamente","pues","raramente","realmente","seguidamente","segundo","semejantemente","si","siguiente","sino","súbitamente","supongamos","también","tampoco","tercero","verbigracia","vice-versa","ya"],r=["a causa de","a continuación","a diferencia de","a fin de cuentas","a la inversa","a la misma vez","a más de","a más de esto","a menos que","a no ser que","a pesar de","a pesar de eso","a pesar de todo","a peser de","a propósito","a saber","a todo esto","ahora bien","al contrario","al fin y al cabo","al final","al inicio","al mismo tiempo","al principio","ante todo","antes bien","antes de","antes de nada","antes que nada","aparte de","as así como","así como","así mismo","así pues","así que","así y todo","aún así","claro está que","claro que","claro que sí","como caso típico","como decíamos","como era de esperar","como es de esperar","como muestra","como resultado","como se ha notado","como sigue","comparado con","con el objeto de","con el propósito de","con que","con relación a","con tal de que","con todo","dado que","de ahí","de cierta manera","de cualquier manera","de cualquier modo","de ello resulta que","de este modo","de golpe","de hecho","de igual manera","de igual modo","de igualmanera","de la manera siguiente","de la misma forma","de la misma manera","de manera semejante","del mismo modo","de modo que","de nuevo","de otra manera","de otro modo","de pronto","de qualquier manera","de repente","de suerte que","de tal modo","de todas formas","de todas maneras","de todos modos","de veras","debido a","debido a que","del mismo modo","dentro de poco","desde entonces","después de","después de todo","ejemplo de esto","el caso es que","en aquel tiempo","en cambio","en cierto modo","en comparación con","en conclusión","en concreto","en conformidad con","en consecuencia","en consiguiente","en contraste con","en cualquier caso","en cuanto","en cuanto a","en definitiva","en efecto","en el caso de que","en este sentido","en fin","en fin de cuentas","en general","en lugar de","en otras palabras","en otro orden","en otros términos","en particular","en primer lugar","en primer término","en primera instancia","en realidad","en relación a","en relación con","en representación de","en resumen","en resumidas cuentas","en segundo lugar","en seguida","en síntesis","en suma","en todo caso","en último término","en verdad","en vez de","en virtud de","entre ellas figura","entre ellos figura","es cierto que","es decir","es evidente que","es incuestionable","es indudable","es más","está claro que","esto indica","excepto si","generalmente por ejemplo","gracias a","hasta aquí","hasta cierto punto","hasta el momento","hay que añadir","igual que","la mayor parte del tiempo","la mayoría del tiempo","lo que es peor","más tarde","mejor dicho","mientras tanto","mirándolo todo","nadie puede ignorar","no faltaría más","no obstante","o sea","otra vez","otro aspecto","par ilustrar","para concluir","para conclusión","para continuar","para empezar","para finalizar","para mencionar una cosa","para que","para resumir","para terminar","pongamos por caso","por añadidura","por cierto","por consiguiente","por ejemplo","por el consiguiente","por el contrario","por el hecho que","por eso","por esta razón","por esto","por fin","por la mayor parte","por lo general","por lo que","por lo tanto","por otro lado","por otra parte","por otro lado","por supuesto","por tanto","por último","por un lado","por una parte","primero que nada","primero que todo","pues bien","puesto que","rara vez","resulta que","sea como sea","seguidamente entre tanto","si bien","siempre que","siempre y cuando","sigue que","sin duda","sin embargo","sin ir más lejos","sobre todo","supuesto que","tal como","tales como","tan pronto como","tanto como","una vez","ya que"];a.exports=function(){return{singleWords:i,multipleWords:r,allWords:i.concat(r)}}},function(a,e,t){"use strict";var i=["aangezien","al","aldus","allereerst","als","alsook","anderzijds","bijgevolg","bijvoorbeeld","bovendien","concluderend","daardoor","daarentegen","daarmee","daarna","daarnaast","daarom","daartoe","daarvoor","dadelijk","dan","desondanks","dienovereenkomstig","dientegevolge","doch","doordat","dus","echter","eerst","evenals","eveneens","evenzeer","hierom","hoewel","immers","indien","integendeel","intussen","kortom","later","maar","mits","nadat","namelijk","net als","niettemin","noch","ofschoon","omdat","ondanks","ondertussen","ook","opdat","resumerend","samengevat","samenvattend","tegenwoordig","teneinde","tenzij","terwijl","tevens","toch","toen","uiteindelijk","vanwege","vervolgens","voorafgaand","vooralsnog","voordat","voorts","vroeger","waardoor","waarmee","waaronder","wanneer","want","zoals","zodat","zodoende","zodra"],r=["aan de andere kant","aan de ene kant","aangenomen dat","al met al","alles afwegend","alles bij elkaar","alles in aanmerking nemend","als gevolg van","anders gezegd","daar staat tegenover","daarbij komt","daaruit volgt","dat betekent","dat blijkt uit","de oorzaak daarvan is","de oorzaak hiervan is","door middel van","een voorbeeld hiervan","een voorbeeld van","gesteld dat","hetzelfde als","hieruit kunnen we afleiden","hieruit volgt","hoe het ook zij","in de derde plaats","in de eerste plaats","in de tweede plaats","in één woord","in het bijzonder","in het geval dat","in plaats van","in tegenstelling tot","in vergelijking met","maar ook","met als doel","met andere woorden","met behulp van","met de bedoeling","neem nou","net als","om kort te gaan","onder andere","op dezelfde wijze","stel dat","te danken aan","te wijten aan","ten derde","ten eerste","ten gevolge van","ten slotte","ten tweede","ter conclusie","ter illustratie","ter verduidelijking","tot nog toe","tot slot","vandaar dat","vergeleken met","voor het geval dat"];a.exports=function(){return{singleWords:i,multipleWords:r,allWords:i.concat(r)}}},function(a,e,t){"use strict";var i=["abbastanza","acciocché","acciocchè","adesso","affinché","affinchè","allora","almeno","alquanto","altrettanto","altrimenti","analogamente","anche","ancora","antecedentemente","anzi","anzitutto","apertamente","appena","assai","attualmente","benché","benchè","beninteso","bensì","brevemente","bruscamente","casomai","celermente","certamente","certo","chiaramente","ciononostante","cioé","cioè","comparabilmente","come","complessivamente","completamente","comunque","concisamente","concludendo","conformemente","congiuntamente","conseguentemente","considerando","considerato","considerevolmente","contemporaneamente","continuamente","contrariamente","controbilanciato","così","cosicché","cosicchè","dapprima","dato","davvero","definitivamente","dettagliatamente","differentemente","diversamente","dopo","dopodiché","dopodichè","durante","dunque","eccetto","eccome","effettivamente","egualmente","elencando","enfaticamente","eppure","esaurientemente","esplicitamente","espressamente","estesamente","evidentemente","finalmente","finché","finchè","fino","finora","fintanto","fintanto che","fintantoché","fintantochè","fondamentalmente","frattanto","frequentemente","generalmente","già","gradualmente","illustrando","immantinente","immediatamente","importantissimo","incontestabilmente","incredibilmente","indipendentemente","indiscutibilmente","indubbiamente","infatti","infine","innanzitutto","innegabilmente","inoltre","insomma","intanto","interamente","istantaneamente","invece","logicamente","lentamente","ma","malgrado","marcatamente","memorabile","mentre","motivatamente","naturalmente","né","nè","neanche","neppure","nonché","nonchè","nondimeno","nonostante","notevolmente","occasionalmente","oltretutto","onde","onestamente","ossia","ostinatamente","ovvero","ovviamente","parimenti","particolarmente","peraltro","perché","perchè","perciò","perlomeno","però","pertanto","pesantemente","piuttosto","poi","poiché","poichè","praticamente","precedentemente","preferibilmente","precisamente","prematuramente","presto","prima","primariamente","primo","principalmente","prontamente","proporzionalmente","pure","purché","purchè","quando","quanto","quantomeno","quindi","raramente","realmente","relativamente","riassumendo","riformulando","ripetutamente","saltuariamente","schiettamente","sebbene","secondariamente","secondo","sempre","sennò","seguente","sensibilmente","seppure","seriamente","siccome","sicuramente","significativamente","similmente","simultaneamente","singolarmente","sinteticamente","solitamente","solo","soltanto","soprattutto","sopravvalutato","sorprendentemente","sostanzialmente","sottolineando","sottovalutato","specialmente","specificamente","specificatamente","subitamente","subito","successivamente","successivo","talmente","terzo","totalmente","tranne","tuttavia","ugualmente","ulteriormente","ultimamente","veramente","verosimilmente","visto"],r=["a breve","a causa","a causa di","a condizione che","a conseguenza","a conti fatti","a differenza di","a differenza del","a differenza della","a differenza dei","a differenza degli","a differenza delle","a dire il vero","a dire la verità","a dirla tutta","a dispetto di","a lungo","a lungo termine","a maggior ragione","a meno che non","a parte","a patto che","a prescindere","a prima vista","a proposito","a qualunque costo","a quanto","a quel proposito","a quel tempo","a quell'epoca","a questo fine","a questo proposito","a questo punto","a questo riguardo","a questo scopo","a riguardo","a seguire","a seguito","a sottolineare","a tal fine","a tal proposito","a tempo debito","a tutti gli effetti","a tutti i costi","a una prima occhiata","ad eccezione di","ad esempio","ad essere maliziosi","ad essere sinceri","ad ogni buon conto","ad ogni costo","ad ogni modo","ad una prima occhiata","adesso che","al che","al contrario","al contrario di","al fine di","al fine di fare","al giorno d'oggi","al momento","al momento giusto","al momento opportuno","al più presto","al posto di","al suo posto","al termine","all'epoca","all'infuori di","all'inizio","all'opposto","all'ultimo","alla fine","alla fine della fiera","alla luce","alla luce di","alla lunga","alla moda","alla stessa maniera","allo scopo di","allo stesso modo","allo stesso tempo","anch'esso","anch'io","anche se","ancora più","ancora di più","assumendo che","bisogna chiarire che","bisogna considerare che","causato da","ciò nondimeno","ciò nonostante","col tempo","con il tempo","come a dire","come abbiamo dimostrato","come è stato notato","come è stato detto","come è stato dimostrato","come hanno detto","come ho detto","come ho dimostrato","come ho notato","come potete notare","come potete vedere","come puoi notare","come puoi vedere","come si è dimostrato","come si può vedere","come si può notare","come sopra indicato","comunque sia","con attenzione","con enfasi","con il risultato che","con l'obiettivo di","con ostinazione","con questa intenzione","con questa idea","con queste idee","con questo in testa","con questo scopo","così che","così da","d'altra parte","d'altro canto","d'altro lato","d'altronde","d'ora in avanti","d'ora in poi","da allora","da quando","da quanto","da quel momento","da quella volta","da questo momento in poi","da questo momento","da qui","da ultimo","da un certo punto di vista","da un lato","da una parte","dall'altro lato","dall'epoca","dal che","dato che","dato per assunto che","davanti a","del tutto","dell'epoca","detto questo","di certo","di colpo","di conseguenza","di fatto","di fronte","di fronte a","di lì a poco","di punto in bianco","di quando in quando","di quanto non sia","di quel tempo","di qui a","di rado","di seguito","di si","di sicuro","di solito","di tanto in tanto","di tutt'altra pasta","di quando in quando","differente da","diversamente da","diverso da","dopotutto","dovuto a","e anche","e inoltre","entro breve","fermo restando che","faccia a faccia","fin da","fin dall'inizio","fin quando","finché non","finchè non","fin dal primo momento","fin dall'inizio","fino a","fino a questo momento","fino ad oggi","fino ai giorni nostri","fino adesso","fino a un certo punto","fino adesso","fra quanto","il prima possibile","in aggiunta","in altre parole","in altri termini","in ambo i casi","in breve","in caso di","in conclusione","in conformità","in confronto","in confronto a","in conseguenza","in considerazione","in considerazione di","in definitiva","in dettaglio","importante rendersi conto","in effetti","in entrambi i casi","in fin dei conti","in generale","in genere","in linea di massima","in poche parole","il più possibile","in maggior parte","in maniera analoga","in maniera convincente","in maniera esauriente","in maniera esaustiva","in maniera esplicita","in maniera evidente","in maniera incontestabile","in maniera indiscutibile","in maniera innegabile","in maniera significativa","in maniera simile","in modo allusivo","in modo analogo","in modo che","in modo convincente","in modo da","in modo identico","in modo notevole","in modo significativo","in modo significativo","in modo simile","in ogni caso","in ogni modo","in ogni momento","in parte considerevole","in parti uguali","in particolare","in particolare per","in particolare","in più","in pratica","in precedenza","in prima battuta","in prima istanza","in primo luogo","in rapporto","in qualche modo","in qualsiasi modo","in qualsiasi momento","in qualunque modo","in qualunque momento","in quarta battuta","in quarta istanza","in quarto luogo","in quel caso","in quelle circostanze","in questa occasione","in questa situazione","in questo caso","in questo caso particolare","in questo istante","in questo momento","in rare occasioni","in realtà","in seconda battuta","in seconda istanza","in secondo luogo","in seguito","in sintesi","in sostanza","in tempo","in terza battuta","in terza istanza","in terzo luogo","in totale","in tutto","in ugual maniera","in ugual misura","in ugual modo","in ultima analisi","in ultima istanza","in un altro caso","in una parola","in verità","insieme a","insieme con","invece che","invece di","la prima cosa da considerare","la prima cosa da tenere a mente","lo stesso","mentre potrebbe essere vero","motivo per cui","motivo per il quale","ne consegue che","ne deriva che","nei dettagli","nel caso","nel caso che","nel caso in cui","nel complesso","nel corso del","nel corso di","nel frattempo","nel lungo periodo","nel mentre","nell'eventualità che","nella misura in cui","nella speranza che","nella stessa maniera","nella stessa misura","nello specifico","nello stesso modo","nello stesso momento","nello stesso stile","non appena","non per essere maliziosi","non più da","nonostante ciò","nonostante tutto","ogni qualvolta","ogni tanto","ogni volta","oltre a","oltre a ciò","ora che","passo dopo passo","per causa di","per certo","per chiarezza","per chiarire","per come","per concludere","per conto di","per contro","per cui","per davvero","per di più","per dirla in altro modo","per dirla meglio","per dirla tutta","per es.","per esempio","per essere sinceri","per far vedere","per farla breve","per finire","per l'avvenire","per l'ultima volta","per la maggior parte","per la stessa ragione","per la verità","per lo più","per mettere in luce","per metterla in altro modo","per non dire di","per non parlare di","per ora","per ovvi motivi","per paura di","per paura dei","per paura delle","per paura degli","per prima cosa","per quanto","per questa ragione","per questo motivo","per riassumere","per sottolineare","per timore","per trarre le conclusioni","per ultima","per ultime","per ultimi","per ultimo","per via di","perché si","perchè si","perfino se","piano piano","più di ogni altra cosa","più di tutto","più facilmente","più importante","più tardi","poco a poco","poco dopo","prendiamo il caso di","presto o tardi","prima che","prima di","prima di ogni cosa","prima di tutto","prima o dopo","prima o poi","questo è probabilmente vero","questo potrebbe essere vero","restando inteso che","riassumendo","quanto prima","questa volta","se confrontato con","se e solo se","se no","seduta stante","sempreché","semprechè","sempre che","senz'altro","senza alcun riguardo","senza dubbio","senz'ombra di dubbio","senza ombra di dubbio","senza riguardo per","senza tregua","senza ulteriore ritardo","sia quel che sia","solo se","sotto questa luce","sperando che","sta volta","su tutto","subito dopo","sul serio","tanto per cominciare","tanto quanto","tra breve","tra l'altro","tra poco","tra quanto","tutte le volte","tutti insieme","tutto a un tratto","tutto ad un tratto","tutto d'un tratto","tutto considerato","tutto sommato","un passo alla volta","un tempo","una volta","una volta ogni tanto","unito a","va chiarito che","va considerato che","vada come vada","vale a dire","visto che"];a.exports=function(){return{singleWords:i,multipleWords:r,allWords:i.concat(r)}}},function(a,e,t){"use strict";var i=["ademais","afinal","aliás","analogamente","anteriormente","assim","certamente","conforme","conquanto","contudo","decerto","embora","enfim","enquanto","então","entretanto","eventualmente","igualmente","inegavelmente","inesperadamente","mas","outrossim","pois","porquanto","porque","portanto","posteriormente","precipuamente","primeiramente","primordialmente","principalmente","salvo","semelhantemente","similarmente","sobretudo","surpreendentemente","todavia"],r=["a fim de","a fim de que","a menos que","a princípio","a saber","acima de tudo","ainda assim","ainda mais","ainda que","além disso","antes de mais nada","antes de tudo","antes que","ao mesmo tempo","ao passo que","ao propósito","apesar de","às vezes","assim como","assim que","assim sendo","assim também","bem como","com a finalidade de","com efeito","com o fim de","com o intuito de","com o propósito de","com toda a certeza","como resultado","como se","da mesma forma","de acordo com","de conformidade com","de fato","de maneira idêntica","de tal forma que","de tal sorte que","depois que","desde que","dessa forma","dessa maneira","desse modo","do mesmo modo","é provável","em conclusão","em contrapartida","em contraste com","em outras palavras","em primeiro lugar","em princípio","em resumo","em seguida","em segundo lugar","em síntese","em suma","em terceiro lugar","em virtude de","finalmente agora atualmente","isto é","já que","logo após","logo depois","logo que","mesmo que","não apenas","nesse hiato","nesse ínterim","nesse meio tempo","nesse sentido","no entanto","no momento em que","ou por outra","ou seja","para que","pelo contrário","por analogia","por causa de","por certo","por conseguinte","por conseqüência","por exemplo","por fim","por isso","por mais que","por menos que","por outro lado","posto que","se acaso","se bem que","seja como for","sem dúvida","só para exemplificar","só para ilustrar","só que","sob o mesmo ponto de vista","talvez provavelmente","tanto quanto","uma vez que","visto que"];a.exports=function(){return{singleWords:i,multipleWords:r,allWords:i.concat(r)}}},function(a,e,t){"use strict";var i=["безусловно","бесспорно","вероятно","вестимо","вдобавок","видимо","вишь","во-вторых","во-первых","вообще-то","впрочем","дабы","едва","ежели","если","затем ","зачем","ибо","итак","кабы","кажется","кажись","коли","кстати","лишь","лучше","наверно","наверное","например","небось","нежели","несомненно","но","однако","особенно","оттого","отчего","поди","пожалуй","позволь","позвольте","покамест","покуда","поскольку","потому","притом","причем","только","хотя","чтоб","чтобы","чуть","якобы"],r=["а вдобавок","а вот","а именно","а не то","а не","а потом","а также","без всякого сомнения","без того чтобы не","без того, чтобы не","благодаря тому","более того","будто бы","будь то","буквально","в итоге","в конце концов","в общей сложности","в общем-то","в общем","в отношении того что","в отношении того, что","в принципе","в противовес тому что","в противовес тому, что","в противоположность тому","в результате","в самом деле","в свою очередь","в связи с тем что","в связи с тем","в силу того что","в силу того","в силу чего","в случа","в сравнении с тем","в сущности говоря","в сущности","в таком случае","в то время как","в то время, как","в том случае","в частности","в-третьих","ввиду того","вернее говоря","вероятнее всего","видите ли","видишь ли","вместе с тем","вместо того","вне всякого сомнения","вне сомнения","во всяком случае","воля ваша","воля твоя","вообще говоря","вопреки тому","вплоть до того","вроде того как","вроде того что","вроде того","вроде того","вследствие того что","вследствие чего","грубо говоря","да еще","да и то","дай бог память","даром что","для того чтобы","для того, чтобы","до тех пор пока","до тех пор, пока","до того как","до того, как","едва лишь","едва только","ежели бы","если угодно","жалко, что","жаль, что","за счет того что","за счет того, что","знамо дело","и вот еще","из-за того что","из-за того, что","иначе говоря","исходя из того","к вашему сведению","к несчастью","к огорчению","к примеру сказать","к примеру","к прискорбию","к радости","к слову сказать","к сожалению","к стыду своему","к стыду","к счастью","к твоему сведению","к тому же","к удивлению","к ужасу","к чести","как будто","как бы там ни было","как бы то ни было","как бы","как вам известно","как вдруг","как видите","как видишь","как видно","как водится","как выяснилось","как выясняется","как говорилось","как говорится","как если бы","как знать","как известно","как на заказ","как назло","как нарочно","как ни говори","как ни говорите","как ни странно","как оказалось","как оказывается","как полагается","как положено","как правило","как принято говорить","как принято","как сказано","как скоро","как следствие","как словно","как только","как хотите","как это ни странно","ко всему прочему","коль скоро","коль уж","коротко говоря","короче говоря","кроме всего прочего","кстати говоря","кстати сказать","лишь бы","лишь только","мало сказать","мало того","между нами говоря","между прочим","между тем как","может статься","можно подумать","мягко выражаясь","мягко говоря","на беду","на ваш взгляд","на мой взгляд","на несчастье","на основании того что","на основании того, что","на первый взгляд","на самом деле","на случай","на твой взгляд","на худой конец","надо полагать","наряду с тем что","наряду с тем","насчет того что","насчет того, что","не в пример тому как","не в пример тому, как","не то чтобы","невзирая на то","независимо от того","несмотря на то","ничего не скажешь","но вообще-то","но кроме того","однако же","откровенно сказать","относительно того что","относительно того, что","перед тем","по вашему мнению","по видимости","по всей вероятности","по всей видимости","по данным","по замыслу","по идее","по крайней мере","по мере того как","по мере того, как","по мнению","по моему мнению","по обыкновению","по обычаю","по определению","по поводу того","по правде говоря","по правде сказать","по правде","по преданию","по причине того","по прогнозам","по сведениям","по своему обыкновению","по слухам","по совести говоря","по совести сказать","по совести","по сообщению","по сообщениям","по справедливости говоря","по справедливости","по сравнению","по статистике","по сути говоря","по сути дела","по сути","по существу говоря","по существу","по счастью","по твоему мнению","по чести говоря","по чести признаться","по чести сказать","по-вашему","по-видимому","по-ихнему","по-моему","по-нашему","по-твоему","под видом того что","под видом того, что","под предлогом","подобно тому","подумать только","помимо всего прочего","помимо всего","помимо того","помимо того","помимо этого","понятное дело","попросту говоря","попросту сказать","после того","потому как","потому что","правду говоря","правду сказать","правильнее говоря","прежде всего","прежде нежели","прежде чем","при всем том","при условии что","при условии, что","против обыкновения","проще говоря","проще сказать","прямо-таки как","пускай бы","равно как","ради того чтобы","разве что","разумеется","с вашего позволения","с вашего разрешения","с другой стороны","с моей точки зрения","с одной стороны","с позволения сказать","с твоего позволения","с твоего разрешения","с тем чтобы","с тех пор как","с той целью чтобы","с точки зрения","само собой разумеется","сверх того что","сверх того","сказать по правде","сказать по совести","сказать по чести","скорее всего","смотря по тому","со своей стороны","собственно говоря","совсем как","стало быть","стоит отметить","строго говоря","судя по всему","судя по тому","так или иначе","так как","так что","так чтобы","тем более что","тем не менее","тем паче что","то бишь","то есть","тогда как","только бы","только лишь","только чуть","точнее говоря","точнее сказать","точно так же","что и говорить","что ни говори","что ни говорите","чуть лишь","чуть только","шутка ли сказать","шутка ли","шутка сказать","это значит, что"];a.exports=function(){return{singleWords:i,multipleWords:r,allWords:i.concat(r)}}},function(a,e,t){function i(a){return"string"==typeof a||!o(a)&&s(a)&&r(a)==n}var r=t(72),o=t(39),s=t(53),n="[object String]";a.exports=i},function(a,e,t){function i(a){return null==a?[]:r(a,o(a))}var r=t(1359),o=t(193);a.exports=i},function(a,e,t){"use strict";var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},r="function"==typeof Symbol&&"symbol"===i(Symbol.iterator)?function(a){return void 0===a?"undefined":i(a)}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":void 0===a?"undefined":i(a)},o=function(a){return Array.isArray(a)?"array":void 0===a?"undefined":r(a)},s=function(a,e){return o(a)===e};a.exports={getType:o,isSameType:s}},function(a,e,t){"use strict";var i=t(100),r=t(24),o=t(157);a.exports=function(a,e){var t=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],s=t?1:0;if(i(a))return!1;var n=[];return r(a,function(a){var e=a.index+a.match.length+s;n.push(e)}),o(n,e)}},function(a,e,t){"use strict";var i=t(1143)().singleWords,r=["de","het","een","der","des","den"],o=["eén","één","twee","drie","vier","vijf","zes","zeven","acht","negen","tien","elf","twaalf","dertien","veertien","vijftien","zestien","zeventien","achttien","negentien","twintig","honderd","honderden","duizend","duizenden","miljoen","miljoenen","biljoen","biljoenen"],s=["eerste","tweede","derde","vierde","vijfde","zesde","zevende","achtste","negende","tiende","elfde","twaalfde","dertiende","veertiende","vijftiende","zestiende","zeventiende","achttiende","negentiende","twinstigste"],n=["ik","je","jij","hij","ze","we","wij","jullie","zij","u","ge","gij","men"],d=["mij","jou","hem","haar","hen","hun","uw"],l=["dit","dat","deze","die","zelf"],c=["mijn","mijne","jouw","jouwe","zijne","hare","ons","onze","hunne","uwe","elkaars","elkanders"],u=["alle","sommige","sommigen","weinig","weinige","weinigen","veel","vele","velen","geen","beetje","elke","elk","genoeg","meer","meest","meeste","meesten","paar","zoveel","enkele","enkelen","zoveelste","hoeveelste","laatste","laatsten","iedere","allemaal","zekere","ander","andere","gene","enig","enige","verscheidene","verschillende","voldoende","allerlei","allerhande","enerlei","enerhande","beiderlei","beiderhande","tweeërlei","tweeërhande","drieërlei","drieërhande","velerlei","velerhande","menigerlei","menigerhande","enigerlei","enigerhande","generlei","generhande"],p=["mezelf","mijzelf","jezelf","jouzelf","zichzelf","haarzelf","hemzelf","onszelf","julliezelf","henzelf","hunzelf","uzelf","zich"],g=["mekaar","elkaar","elkander","mekander"],m=["iedereen","ieder","eenieder","alleman","allen","alles","iemand","niemand","iets","niets","menigeen"],f=["ieders","aller","iedereens","eenieders"],b=["welke","welk","wat","wie","wiens","wier"],h=["hoe","waarom","waar","hoezo","hoeveel"],v=["daaraan","daarachter","daaraf","daarbij","daarbinnen","daarboven","daarbuiten","daardoorheen","daarheen","daarin","daarjegens","daarmede","daarnaar","daarnaartoe","daaromtrent","daaronder","daarop","daarover","daaroverheen","daarrond","daartegen","daartussen","daartussenuit","daaruit","daarvan","daarvandaan","eraan","erachter","erachteraan","eraf","erbij","erbinnen","erboven","erbuiten","erdoor","erdoorheen","erheen","erin","erjegens","ermede","ermee","erna","ernaar","ernaartoe","ernaast","erom","eromtrent","eronder","eronderdoor","erop","eropaf","eropuit","erover","eroverheen","errond","ertegen","ertegenaan","ertoe","ertussen","ertussenuit","eruit","ervan","ervandaan","ervandoor","ervoor","hieraan","hierachter","hieraf","hierbij","hierbinnen","hierboven","hierbuiten","hierdoor","hierdoorheen","hierheen","hierin","hierjegens","hierlangs","hiermede","hiermee","hierna","hiernaar","hiernaartoe","hiernaast","hieromheen","hieromtrent","hieronder","hierop","hierover","hieroverheen","hierrond","hiertegen","hiertoe","hiertussen","hiertussenuit","hieruit","hiervan","hiervandaan","hiervoor","vandaan","waaraan","waarachter","waaraf","waarbij","waarboven","waarbuiten","waardoorheen","waarheen","waarin","waarjegens","waarmede","waarna","waarnaar","waarnaartoe","waarnaast","waarop","waarover","waaroverheen","waarrond","waartegen","waartegenin","waartoe","waartussen","waartussenuit","waaruit","waarvan","waarvandaan","waarvoor"],z=["daar","hier","ginder","daarginds","ginds","ver","veraf","ergens","nergens","overal","dichtbij","kortbij"],y=["word","wordt","werd","werden","ben","bent","is","was","waren"],w=["worden","zijn"],x=["heb","hebt","heeft","hadden","had","kun","kan","kunt","kon","konden","mag","mocht","mochten","dien","dient","diende","dienden","moet","moest","moesten","ga","gaat","ging","gingen"],k=["hebben","kunnen","mogen","dienen","moeten","gaan"],_=["blijkt","blijk","bleek","bleken","gebleken","dunkt","dunk","dunkte","dunkten","gedunkt","heet","heette","heetten","geheten","lijkt","lijk","geleken","leek","leken","schijn","schijnt","scheen","schenen","toescheen","toeschijnt","toeschijn","toeschenen"],j=["blijken","dunken","heten","lijken","schijnen","toeschijnen"],q=["à","aan","aangaande","achter","behalve","behoudens","beneden","benevens","benoorden","benoordoosten","benoordwesten","beoosten","betreffende","bewesten","bezijden","bezuiden","bezuidoosten","bezuidwesten","bij","binnen","blijkens","boven","bovenaan","buiten","circa","conform","contra","cum","dankzij","door","gedurende","gezien","in","ingevolge","inzake","jegens","krachtens","langs","luidens","met","middels","na","naar","naast","nabij","namens","nevens","niettegenstaande","nopens","om","omstreeks","omtrent","onder","onderaan","ongeacht","onverminderd","op","over","overeenkomstig","per","plus","post","richting","rond","rondom","spijts","staande","te","tegen","tegenover","ten","ter","tijdens","tot","tussen","uit","van","vanaf","vanuit","versus","via","vis-à-vis","volgens","voor","voorbij","wegens","zijdens","zonder"],E=["af","heen","mee","toe","achterop","onderin","voorin","bovenop","buitenop","achteraan","onderop","binnenin","tevoren"],S=["en","alsmede","of","ofwel","en/of"],A=["zowel","evenmin","zomin","hetzij"],T=["vermits","dewijl","dorodien","naardien","nademaal","overmits","wijl","eer","eerdat","aleer","vooraleer","alvorens","totdat","zolang","sinds","sedert","ingeval","tenware","alhoewel","hoezeer","uitgezonderd","zoverre","zover","naargelang","naarmate","alsof"],C=["zegt","zei","vraagt","vroeg","denkt","dacht","stelt","pleit","pleitte"],O=["absoluut","zeker","ongetwijfeld","sowieso","onmiddelijk","meteen","inclusief","direct","ogenblikkelijk","terstond","natuurlijk","vanzelfsprekend","gewoonlijk","normaliter","doorgaans","werkelijk","daadwerkelijk","inderdaad","waarachtig","oprecht","bijna","meestal","misschien","waarschijnlijk","wellicht","mogelijk","vermoedelijk","allicht","aannemelijk","oorspronkelijk","aanvankelijk","initieel","eigenlijk","feitelijk","wezenlijk","juist","reeds","alvast","bijv.","vaak","dikwijls","veelal","geregeld","menigmaal","regelmatig","veelvuldig","eenvoudigweg","simpelweg","louter","kortweg","stomweg","domweg","zomaar","eventueel","mogelijkerwijs","eens","weleens","nooit","ooit","anders","momenteel","thans","incidenteel","trouwens","elders","volgend","recent","onlangs","recentelijk","laatst","zojuist","relatief","duidelijk","overduidelijk","klaarblijkelijk","nadrukkelijk","ogenschijnlijk","kennelijk","schijnbaar","alweer","continu","herhaaldelijk","nog","steeds","nu"],D=["zeer","erg","redelijk","flink","tikkeltje","bijzonder","ernstig","enigszins","zo","tamelijk","nogal","behoorlijk","zwaar","heel","hele","reuze","buitengewoon","ontzettend","vreselijk"],P=["laat","liet","lieten","kom","komt","kwam","kwamen","maakt","maak","maakte","maakten","doe","doet","deed","deden","vindt","vind","vond","vonden"],R=["laten","komen","maken","doen","vinden"],B=["nieuw","nieuwe","nieuwer","nieuwere","nieuwst","nieuwste","oud","oude","ouder","oudere","oudst","oudste","vorig","vorige","goed","goede","beter","betere","best","beste","groot","grote","groter","grotere","grootst","grootste","makkelijk","makkelijke","makkelijker","makkelijkere","makkelijkst","makkelijste","gemakkelijk","gemakkelijke","gemakkelijker","gemakkelijkere","gemakkelijkst","gemakkelijste","simpel","simpele","simpeler","simpelere","simpelst","simpelste","snel","snelle","sneller","snellere","snelst","snelste","verre","verder","verdere","verst","verste","lang","lange","langer","langere","langst","langste","hard","harde","harder","hardere","hardst","hardste","minder","mindere","minst","minste","eigen","laag","lage","lager","lagere","laagst","laagste","hoog","hoge","hoger","hogere","hoogst","hoogste","klein","kleine","kleiner","kleinere","kleinst","kleinste","kort","korte","korter","kortere","kortst","kortste","herhaaldelijke","directe","ongeveer","slecht","slechte","slechter","slechtere","slechtst","slechtste","zulke","zulk","zo'n","zulks","er","extreem","extreme","bijbehorende","bijbehorend","niet"],F=["oh","wauw","hèhè","hè","hé","au","ai","jaja","welja","jawel","ssst","heremijntijd","hemeltjelief","aha","foei","hmm","nou","nee","tja","nja","okido","ho","halt","komaan","komop","verrek","nietwaar","brr","oef","ach","och","bah","enfin","afijn","haha","hihi","hatsjie","hatsjoe","hm","tring","vroem","boem","hopla"],M=["ml","cl","dl","l","tl","el","mg","g","gr","kg","ca","theel","min","sec","uur"],L=["seconde","secondes","seconden","minuut","minuten","uur","uren","dag","dagen","week","weken","maand","maanden","jaar","jaren","vandaag","morgen","overmorgen","gisteren","eergisteren","'s","morgens","avonds","middags","nachts"],I=["ding","dingen","manier","manieren","item","items","keer","maal","procent","geval","aspect","persoon","personen","deel"],$=["wel","ja","neen","oké","oke","okee","ok","zoiets","€","euro"],N=["mevr","dhr","mr","dr","prof"],U=["jr","sr"];a.exports=function(){return{filteredAtBeginning:[].concat(w,k,j,R),filteredAtEnding:[].concat(s,B),filteredAtBeginningAndEnding:[].concat(r,q,S,l,D,u),filteredAnywhere:[].concat(i,n,d,p,F,o,y,x,_,C,P,m,A,T,h,b,z,$,E,v,M,L,I,g,c),cannotDirectlyPrecedePassiveParticiple:[].concat(r,h,o,c,p,f,_,j,q),all:[].concat(r,o,s,l,c,p,g,n,d,u,m,f,b,h,v,z,E,y,w,x,k,_,j,q,S,A,T,C,i,O,D,P,R,F,B,M,I,$,N,U)}}},function(a,e,t){var i=t(176),r=t(1373),o=t(233),s=t(1374),n=o(function(a){var e=i(a,s);return e.length&&e[0]===a[0]?r(e):[]});a.exports=n},function(a,e,t){"use strict";var i=t(235),r=t(1380)(),o=r.verbsBeginningWithErVerEntBeZerHerUber,s=r.verbsBeginningWithGe,n=r.verbsWithGeInMiddle,d=r.verbsWithErVerEntBeZerHerUberInMiddle,l=r.verbsEndingWithIert,c=t(1381)(),u=t(1382),p=t(24),g=t(157);a.exports=function(a,e,t){var r=i(a),m=[];return p(r,function(i){return 0!==s(i).length?void m.push(new u(i,a,{auxiliaries:e,type:"ge at beginning",language:t})):0!==n(i).length?void m.push(new u(i,a,{auxiliaries:e,type:"ge in the middle",language:t})):0!==o(i).length?void m.push(new u(i,a,{auxiliaries:e,type:"er/ver/ent/be/zer/her at beginning",language:t})):0!==d(i).length?void m.push(new u(i,a,{auxiliaries:e,type:"er/ver/ent/be/zer/her in the middle",language:t})):(0!==l(i).length&&m.push(new u(i,a,{auxiliaries:e,type:"iert at the end",language:t})),void(g(c,i)&&m.push(new u(i,a,{auxiliaries:e,type:"irregular",language:t}))))}),m}},function(a,e,t){"use strict";a.exports=function(){return["word","wordt","worden","werd","werden","wordend"]}},function(a,e,t){function i(a,e){return null!=a&&o(a,e,r)}var r=t(1416),o=t(1103);a.exports=i},function(a,e,t){"use strict";var i=t(33),r=t(739),o=["en"],s=function(a,e){return a>0?{score:0,text:e.dngettext("js-text-analysis","The focus keyword contains a stop word. This may or may not be wise depending on the circumstances. %1$sLearn more about the stop words%2$s.","The focus keyword contains %3$d stop words. This may or may not be wise depending on the circumstances. %1$sLearn more about the stop words%2$s.",a)}:{}},n=function(a,e,t){var r=e.getResearch("stopWordsInKeyword"),o=s(r.length,t),n=new i;return n.setScore(o.score),n.setText(t.sprintf(o.text,"<a href='https://yoa.st/stopwords/' target='_blank'>","</a>",r.length)),n};a.exports={identifier:"keywordStopWords",getResult:n,isApplicable:function(a){var e=r(a.getLocale(),o);return a.hasKeyword()&&e}}},function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==(void 0===e?"undefined":s(e))&&"function"!=typeof e?a:e}function o(a,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+(void 0===e?"undefined":s(e)));a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(a,e):a.__proto__=e)}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n=function(){function a(a,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}return function(e,t,i){return t&&a(e.prototype,t),i&&a(e,i),e}}(),d=t(69),l=t(33),c=t(74),u=function(a){function e(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i(this,e);var t=r(this,(e.__proto__||Object.getPrototypeOf(e)).call(this)),o={scores:{tooLong:6}};return t.identifier="urlLength",t._config=d(o,a),t}return o(e,a),n(e,[{key:"getResult",value:function(a,e,t){var i=e.getResearch("urlLength"),r=new l;return r.setScore(this.calculateScore(i)),r.setText(this.translateScore(i,t)),r}},{key:"isApplicable",value:function(a){return a.hasUrl()}},{key:"calculateScore",value:function(a){return a?this._config.scores.tooLong:null}},{key:"translateScore",value:function(a,e){return a?e.dgettext("js-text-analysis","The slug for this page is a bit long, consider shortening it."):""}}]),e}(c);a.exports=u},function(a,e,t){"use strict";var i=t(33),r=t(739),o=["en"],s=function(a,e){return a>0?{score:5,text:e.dngettext("js-text-analysis","The slug for this page contains a %1$sstop word%2$s, consider removing it.","The slug for this page contains %1$sstop words%2$s, consider removing them.",a)}:{}},n=function(a,e,t){var r=e.getResearch("stopWordsInUrl"),o=s(r.length,t),n=new i;return n.setScore(o.score),n.setText(t.sprintf(o.text,"<a href='"+t.dgettext("js-text-analysis","http://en.wikipedia.org/wiki/Stop_words")+"' target='_blank'>","</a>")),n};a.exports={identifier:"urlStopWords",isApplicable:function(a){return r(a.getLocale(),o)},getResult:n}},function(a,e,t){function i(a,e,t){return e=o(e),void 0===t?(t=e,e=0):t=o(t),a=s(a),r(a,e,t)}var r=t(1435),o=t(1133),s=t(1063);a.exports=i},,,,function(a,e,t){function i(a){return r(a,s,o)}var r=t(1164),o=t(1098),s=t(193);a.exports=i},function(a,e,t){function i(a,e,t){var i=e(a);return o(a)?i:r(i,t(a))}var r=t(1059),o=t(39);a.exports=i},function(a,e){function t(){return[]}a.exports=t},function(a,e){function t(a){return function(e){return null==e?void 0:e[a]}}a.exports=t},function(a,e,t){"use strict";a.exports=function(a){Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.message=a},t(86).inherits(a.exports,Error)},function(a,e,t){"use strict";function i(a){for(var e,t=[],i=/<h([1-6])(?:[^>]+)?>(.*?)<\/h\1>/gi;null!==(e=i.exec(a));)t.push(e);return t}function r(a){var e=i(a);return e=o(e,function(a){return a[0]})}var o=t(68);a.exports={getSubheadings:i,getSubheadingContents:r}},function(a,e,t){function i(a){return a&&a.length?r(a,o):0}var r=t(1321),o=t(128);a.exports=i},function(a,e,t){var i=t(590),r=t(1426),o=t(233),s=t(391),n=o(function(a,e){if(null==a)return[];var t=e.length;return t>1&&s(a,e[0],e[1])?e=[]:t>2&&s(e[0],e[1],e[2])&&(e=[e[0]]),r(a,i(e,1),[])});a.exports=n},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(a,e,t){function i(a){var e=o(a);return 1==e.length&&e[0][2]?s(e[0][0],e[0][1]):function(t){return t===a||r(t,a,e)}}var r=t(1223),o=t(1234),s=t(1101);a.exports=i},function(a,e,t){function i(a,e,t,i){var d=t.length,l=d,c=!i;if(null==a)return!l;for(a=Object(a);d--;){var u=t[d];if(c&&u[2]?u[1]!==a[u[0]]:!(u[0]in a))return!1}for(;++d<l;){u=t[d];var p=u[0],g=a[p],m=u[1];if(c&&u[2]){if(void 0===g&&!(p in a))return!1}else{var f=new r;if(i)var b=i(g,m,p,a,e,f);if(!(void 0===b?o(m,g,s|n,i,f):b))return!1}}return!0}var r=t(338),o=t(1096),s=1,n=2;a.exports=i},function(a,e,t){function i(a,e,t,i,b,v){var z=l(a),y=l(e),w=z?m:d(a),x=y?m:d(e);w=w==g?f:w,x=x==g?f:x;var k=w==f,_=x==f,j=w==x;if(j&&c(a)){if(!c(e))return!1;z=!0,k=!1}if(j&&!k)return v||(v=new r),z||u(a)?o(a,e,t,i,b,v):s(a,e,w,t,i,b,v);if(!(t&p)){var q=k&&h.call(a,"__wrapped__"),E=_&&h.call(e,"__wrapped__");if(q||E){var S=q?a.value():a,A=E?e.value():e;return v||(v=new r),b(S,A,t,i,v)}}return!!j&&(v||(v=new r),n(a,e,t,i,b,v))}var r=t(338),o=t(1097),s=t(1228),n=t(1230),d=t(753),l=t(39),c=t(194),u=t(220),p=1,g="[object Arguments]",m="[object Array]",f="[object Object]",b=Object.prototype,h=b.hasOwnProperty;a.exports=i},function(a,e){function t(a){return this.__data__.set(a,i),this}var i="__lodash_hash_undefined__";a.exports=t},function(a,e){function t(a){return this.__data__.has(a)}a.exports=t},function(a,e){function t(a,e){for(var t=-1,i=null==a?0:a.length;++t<i;)if(e(a[t],t,a))return!0;return!1}a.exports=t},function(a,e,t){function i(a,e,t,i,r,k,j){switch(t){case x:if(a.byteLength!=e.byteLength||a.byteOffset!=e.byteOffset)return!1;a=a.buffer,e=e.buffer;case w:return!(a.byteLength!=e.byteLength||!k(new o(a),new o(e)));case p:case g:case b:return s(+a,+e);case m:return a.name==e.name&&a.message==e.message;case h:case z:return a==e+"";case f:var q=d;case v:var E=i&c;if(q||(q=l),a.size!=e.size&&!E)return!1;var S=j.get(a);if(S)return S==e;i|=u,j.set(a,e);var A=n(q(a),q(e),i,r,k,j);return j.delete(a),A;case y:if(_)return _.call(a)==_.call(e)}return!1}var r=t(142),o=t(453),s=t(110),n=t(1097),d=t(1229),l=t(1032),c=1,u=2,p="[object Boolean]",g="[object Date]",m="[object Error]",f="[object Map]",b="[object Number]",h="[object RegExp]",v="[object Set]",z="[object String]",y="[object Symbol]",w="[object ArrayBuffer]",x="[object DataView]",k=r?r.prototype:void 0,_=k?k.valueOf:void 0;a.exports=i},function(a,e){function t(a){var e=-1,t=Array(a.size);return a.forEach(function(a,i){t[++e]=[i,a]}),t}a.exports=t},function(a,e,t){function i(a,e,t,i,s,d){var l=t&o,c=r(a),u=c.length;if(u!=r(e).length&&!l)return!1;for(var p=u;p--;){var g=c[p];if(!(l?g in e:n.call(e,g)))return!1}var m=d.get(a);if(m&&d.get(e))return m==e;var f=!0;d.set(a,e),d.set(e,a);for(var b=l;++p<u;){g=c[p];var h=a[g],v=e[g];if(i)var z=l?i(v,h,g,e,a,d):i(h,v,g,a,e,d);if(!(void 0===z?h===v||s(h,v,t,i,d):z)){f=!1;break}b||(b="constructor"==g)}if(f&&!b){var y=a.constructor,w=e.constructor;y!=w&&"constructor"in a&&"constructor"in e&&!("function"==typeof y&&y instanceof y&&"function"==typeof w&&w instanceof w)&&(f=!1)}return d.delete(a),d.delete(e),f}var r=t(1163),o=1,s=Object.prototype,n=s.hasOwnProperty;a.exports=i},function(a,e,t){var i=t(117),r=t(62),o=i(r,"DataView");a.exports=o},function(a,e,t){var i=t(117),r=t(62),o=i(r,"Promise");a.exports=o},function(a,e,t){var i=t(117),r=t(62),o=i(r,"WeakMap");a.exports=o},function(a,e,t){function i(a){for(var e=o(a),t=e.length;t--;){var i=e[t],s=a[i];e[t]=[i,s,r(s)]}return e}var r=t(1100),o=t(193);a.exports=i},function(a,e,t){function i(a,e){return n(a)&&d(e)?l(c(a),e):function(t){var i=o(t,a);return void 0===i&&i===e?s(t,a):r(e,i,u|p)}}var r=t(1096),o=t(1236),s=t(1102),n=t(1034),d=t(1100),l=t(1101),c=t(556),u=1,p=2;a.exports=i},function(a,e,t){function i(a,e,t){var i=null==a?void 0:r(a,e);return void 0===i?t:i}var r=t(1033);a.exports=i},function(a,e,t){var i=t(1238),r=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,o=/\\(\\)?/g,s=i(function(a){var e=[];return 46===a.charCodeAt(0)&&e.push(""),a.replace(r,function(a,t,i,r){e.push(i?r.replace(o,"$1"):t||a)}),e});a.exports=s},function(a,e,t){function i(a){var e=r(a,function(a){return t.size===o&&t.clear(),a}),t=e.cache;return e}var r=t(125),o=500;a.exports=i},function(a,e){function t(a,e){return null!=a&&e in Object(a)}a.exports=t},function(a,e,t){function i(a){return s(a)?r(n(a)):o(a)}var r=t(1166),o=t(1241),s=t(1034),n=t(556);a.exports=i},function(a,e,t){function i(a){return function(e){return r(e,a)}}var r=t(1033);a.exports=i},function(a,e,t){"use strict";var i=t(56),r=t(732),o=t(277),s=t(1035);a.exports=function(a,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"en_EN",n=0,d=[];return s(e).forEach(function(e){var i=o(a,e,t);n+=i.count,d=d.concat(i.matches)}),null===d&&(d=[]),d=d.map(function(a){return i(r(a))}),{count:n,matches:d}}},function(a,e,t){"use strict";var i=t(1244);a.exports=function(a,e){for(var t=i(e),r=t.length-1;r>=0;r--)a=a.replace(t[r].letter,t[r].alternative);return a}},function(a,e,t){"use strict";var i=t(124),r=t(41),o=[{letter:/[\u00A3]/g,alternative:""},{letter:/[\u20AC]/g,alternative:"E"},{letter:/[\u00AA]/g,alternative:"a"},{letter:/[\u00BA]/g,alternative:"o"},{letter:/[\u00C0]/g,alternative:"A"},{letter:/[\u00C1]/g,alternative:"A"},{letter:/[\u00C2]/g,alternative:"A"},{letter:/[\u00C3]/g,alternative:"A"},{letter:/[\u00C4]/g,alternative:"A"},{letter:/[\u00C5]/g,alternative:"A"},{letter:/[\u00C6]/g,alternative:"AE"},{letter:/[\u00C7]/g,alternative:"C"},{letter:/[\u00C8]/g,alternative:"E"},{letter:/[\u00C9]/g,alternative:"E"},{letter:/[\u00CA]/g,alternative:"E"},{letter:/[\u00CB]/g,alternative:"E"},{letter:/[\u00CC]/g,alternative:"I"},{letter:/[\u00CD]/g,alternative:"I"},{letter:/[\u00CE]/g,alternative:"I"},{letter:/[\u00CF]/g,alternative:"I"},{letter:/[\u00D0]/g,alternative:"D"},{letter:/[\u00D1]/g,alternative:"N"},{letter:/[\u00D2]/g,alternative:"O"},{letter:/[\u00D3]/g,alternative:"O"},{letter:/[\u00D4]/g,alternative:"O"},{letter:/[\u00D5]/g,alternative:"O"},{letter:/[\u00D6]/g,alternative:"O"},{letter:/[\u00D8]/g,alternative:"O"},{letter:/[\u00D9]/g,alternative:"U"},{letter:/[\u00DA]/g,alternative:"U"},{letter:/[\u00DB]/g,alternative:"U"},{letter:/[\u00DC]/g,alternative:"U"},{letter:/[\u00DD]/g,alternative:"Y"},{letter:/[\u00DE]/g,alternative:"TH"},{letter:/[\u00DF]/g,alternative:"s"},{letter:/[\u00E0]/g,alternative:"a"},{letter:/[\u00E1]/g,alternative:"a"},{letter:/[\u00E2]/g,alternative:"a"},{letter:/[\u00E3]/g,alternative:"a"},{letter:/[\u00E4]/g,alternative:"a"},{letter:/[\u00E5]/g,alternative:"a"},{letter:/[\u00E6]/g,alternative:"ae"},{letter:/[\u00E7]/g,alternative:"c"},{letter:/[\u00E8]/g,alternative:"e"},{letter:/[\u00E9]/g,alternative:"e"},{letter:/[\u00EA]/g,alternative:"e"},{letter:/[\u00EB]/g,alternative:"e"},{letter:/[\u00EC]/g,alternative:"i"},{letter:/[\u00ED]/g,alternative:"i"},{letter:/[\u00EE]/g,alternative:"i"},{letter:/[\u00EF]/g,alternative:"i"},{letter:/[\u00F0]/g,alternative:"d"},{letter:/[\u00F1]/g,alternative:"n"},{letter:/[\u00F2]/g,alternative:"o"},{letter:/[\u00F3]/g,alternative:"o"},{letter:/[\u00F4]/g,alternative:"o"},{letter:/[\u00F5]/g,alternative:"o"},{letter:/[\u00F6]/g,alternative:"o"},{letter:/[\u00F8]/g,alternative:"o"},{letter:/[\u00F9]/g,alternative:"u"},{letter:/[\u00FA]/g,alternative:"u"},{letter:/[\u00FB]/g,alternative:"u"},{letter:/[\u00FC]/g,alternative:"u"},{letter:/[\u00FD]/g,alternative:"y"},{letter:/[\u00FE]/g,alternative:"th"},{letter:/[\u00FF]/g,alternative:"y"},{letter:/[\u0100]/g,alternative:"A"},{letter:/[\u0101]/g,alternative:"a"},{letter:/[\u0102]/g,alternative:"A"},{letter:/[\u0103]/g,alternative:"a"},{letter:/[\u0104]/g,alternative:"A"},{letter:/[\u0105]/g,alternative:"a"},{letter:/[\u0106]/g,alternative:"C"},{letter:/[\u0107]/g,alternative:"c"},{letter:/[\u0108]/g,alternative:"C"},{letter:/[\u0109]/g,alternative:"c"},{letter:/[\u010A]/g,alternative:"C"},{letter:/[\u010B]/g,alternative:"c"},{letter:/[\u010C]/g,alternative:"C"},{letter:/[\u010D]/g,alternative:"c"},{letter:/[\u010E]/g,alternative:"D"},{letter:/[\u010F]/g,alternative:"d"},{letter:/[\u0110]/g,alternative:"D"},{letter:/[\u0111]/g,alternative:"d"},{letter:/[\u0112]/g,alternative:"E"},{letter:/[\u0113]/g,alternative:"e"},{letter:/[\u0114]/g,alternative:"E"},{letter:/[\u0115]/g,alternative:"e"},{letter:/[\u0116]/g,alternative:"E"},{letter:/[\u0117]/g,alternative:"e"},{letter:/[\u0118]/g,alternative:"E"},{letter:/[\u0119]/g,alternative:"e"},{letter:/[\u011A]/g,alternative:"E"},{letter:/[\u011B]/g,alternative:"e"},{letter:/[\u011C]/g,alternative:"G"},{letter:/[\u011D]/g,alternative:"g"},{letter:/[\u011E]/g,alternative:"G"},{letter:/[\u011F]/g,alternative:"g"},{letter:/[\u0120]/g,alternative:"G"},{letter:/[\u0121]/g,alternative:"g"},{letter:/[\u0122]/g,alternative:"G"},{letter:/[\u0123]/g,alternative:"g"},{letter:/[\u0124]/g,alternative:"H"},{letter:/[\u0125]/g,alternative:"h"},{letter:/[\u0126]/g,alternative:"H"},{letter:/[\u0127]/g,alternative:"h"},{letter:/[\u0128]/g,alternative:"I"},{letter:/[\u0129]/g,alternative:"i"},{letter:/[\u012A]/g,alternative:"I"},{letter:/[\u012B]/g,alternative:"i"},{letter:/[\u012C]/g,alternative:"I"},{letter:/[\u012D]/g,alternative:"i"},{letter:/[\u012E]/g,alternative:"I"},{letter:/[\u012F]/g,alternative:"i"},{letter:/[\u0130]/g,alternative:"I"},{letter:/[\u0131]/g,alternative:"i"},{letter:/[\u0132]/g,alternative:"IJ"},{letter:/[\u0133]/g,alternative:"ij"},{letter:/[\u0134]/g,alternative:"J"},{letter:/[\u0135]/g,alternative:"j"},{letter:/[\u0136]/g,alternative:"K"},{letter:/[\u0137]/g,alternative:"k"},{letter:/[\u0138]/g,alternative:"k"},{letter:/[\u0139]/g,alternative:"L"},{letter:/[\u013A]/g,alternative:"l"},{letter:/[\u013B]/g,alternative:"L"},{letter:/[\u013C]/g,alternative:"l"},{letter:/[\u013D]/g,alternative:"L"},{letter:/[\u013E]/g,alternative:"l"},{letter:/[\u013F]/g,alternative:"L"},{letter:/[\u0140]/g,alternative:"l"},{letter:/[\u0141]/g,alternative:"L"},{letter:/[\u0142]/g,alternative:"l"},{letter:/[\u0143]/g,alternative:"N"},{letter:/[\u0144]/g,alternative:"n"},{letter:/[\u0145]/g,alternative:"N"},{letter:/[\u0146]/g,alternative:"n"},{letter:/[\u0147]/g,alternative:"N"},{letter:/[\u0148]/g,alternative:"n"},{letter:/[\u0149]/g,alternative:"n"},{letter:/[\u014A]/g,alternative:"N"},{letter:/[\u014B]/g,alternative:"n"},{letter:/[\u014C]/g,alternative:"O"},{letter:/[\u014D]/g,alternative:"o"},{letter:/[\u014E]/g,alternative:"O"},{letter:/[\u014F]/g,alternative:"o"},{letter:/[\u0150]/g,alternative:"O"},{letter:/[\u0151]/g,alternative:"o"},{letter:/[\u0152]/g,alternative:"OE"},{letter:/[\u0153]/g,alternative:"oe"},{letter:/[\u0154]/g,alternative:"R"},{letter:/[\u0155]/g,alternative:"r"},{letter:/[\u0156]/g,alternative:"R"},{letter:/[\u0157]/g,alternative:"r"},{letter:/[\u0158]/g,alternative:"R"},{letter:/[\u0159]/g,alternative:"r"},{letter:/[\u015A]/g,alternative:"S"},{letter:/[\u015B]/g,alternative:"s"},{letter:/[\u015C]/g,alternative:"S"},{letter:/[\u015D]/g,alternative:"s"},{letter:/[\u015E]/g,alternative:"S"},{letter:/[\u015F]/g,alternative:"s"},{letter:/[\u0160]/g,alternative:"S"},{letter:/[\u0161]/g,alternative:"s"},{letter:/[\u0162]/g,alternative:"T"},{letter:/[\u0163]/g,alternative:"t"},{letter:/[\u0164]/g,alternative:"T"},{letter:/[\u0165]/g,alternative:"t"},{letter:/[\u0166]/g,alternative:"T"},{letter:/[\u0167]/g,alternative:"t"},{letter:/[\u0168]/g,alternative:"U"},{letter:/[\u0169]/g,alternative:"u"},{letter:/[\u016A]/g,alternative:"U"},{letter:/[\u016B]/g,alternative:"u"},{letter:/[\u016C]/g,alternative:"U"},{letter:/[\u016D]/g,alternative:"u"},{letter:/[\u016E]/g,alternative:"U"},{letter:/[\u016F]/g,alternative:"u"},{letter:/[\u0170]/g,alternative:"U"},{letter:/[\u0171]/g,alternative:"u"},{letter:/[\u0172]/g,alternative:"U"},{letter:/[\u0173]/g,alternative:"u"},{letter:/[\u0174]/g,alternative:"W"},{letter:/[\u0175]/g,alternative:"w"},{letter:/[\u0176]/g,alternative:"Y"},{letter:/[\u0177]/g,alternative:"y"},{letter:/[\u0178]/g,alternative:"Y"},{letter:/[\u0179]/g,alternative:"Z"},{letter:/[\u017A]/g,alternative:"z"},{letter:/[\u017B]/g,alternative:"Z"},{letter:/[\u017C]/g,alternative:"z"},{letter:/[\u017D]/g,alternative:"Z"},{letter:/[\u017E]/g,alternative:"z"},{letter:/[\u017F]/g,alternative:"s"},{letter:/[\u01A0]/g,alternative:"O"},{letter:/[\u01A1]/g,alternative:"o"},{letter:/[\u01AF]/g,alternative:"U"},{letter:/[\u01B0]/g,alternative:"u"},{letter:/[\u01CD]/g,alternative:"A"},{letter:/[\u01CE]/g,alternative:"a"},{letter:/[\u01CF]/g,alternative:"I"},{letter:/[\u01D0]/g,alternative:"i"},{letter:/[\u01D1]/g,alternative:"O"},{letter:/[\u01D2]/g,alternative:"o"},{letter:/[\u01D3]/g,alternative:"U"},{letter:/[\u01D4]/g,alternative:"u"},{letter:/[\u01D5]/g,alternative:"U"},{letter:/[\u01D6]/g,alternative:"u"},{letter:/[\u01D7]/g,alternative:"U"},{letter:/[\u01D8]/g,alternative:"u"},{letter:/[\u01D9]/g,alternative:"U"},{letter:/[\u01DA]/g,alternative:"u"},{letter:/[\u01DB]/g,alternative:"U"},{letter:/[\u01DC]/g,alternative:"u"},{letter:/[\u0218]/g,alternative:"S"},{letter:/[\u0219]/g,alternative:"s"},{letter:/[\u021A]/g,alternative:"T"},{letter:/[\u021B]/g,alternative:"t"},{letter:/[\u0251]/g,alternative:"a"},{letter:/[\u1EA0]/g,alternative:"A"},{letter:/[\u1EA1]/g,alternative:"a"},{letter:/[\u1EA2]/g,alternative:"A"},{letter:/[\u1EA3]/g,alternative:"a"},{letter:/[\u1EA4]/g,alternative:"A"},{letter:/[\u1EA5]/g,alternative:"a"},{letter:/[\u1EA6]/g,alternative:"A"},{letter:/[\u1EA7]/g,alternative:"a"},{letter:/[\u1EA8]/g,alternative:"A"},{letter:/[\u1EA9]/g,alternative:"a"},{letter:/[\u1EAA]/g,alternative:"A"},{letter:/[\u1EAB]/g,alternative:"a"},{letter:/[\u1EA6]/g,alternative:"A"},{letter:/[\u1EAD]/g,alternative:"a"},{letter:/[\u1EAE]/g,alternative:"A"},{letter:/[\u1EAF]/g,alternative:"a"},{letter:/[\u1EB0]/g,alternative:"A"},{letter:/[\u1EB1]/g,alternative:"a"},{letter:/[\u1EB2]/g,alternative:"A"},{letter:/[\u1EB3]/g,alternative:"a"},{letter:/[\u1EB4]/g,alternative:"A"},{letter:/[\u1EB5]/g,alternative:"a"},{letter:/[\u1EB6]/g,alternative:"A"},{letter:/[\u1EB7]/g,alternative:"a"},{letter:/[\u1EB8]/g,alternative:"E"},{letter:/[\u1EB9]/g,alternative:"e"},{letter:/[\u1EBA]/g,alternative:"E"},{letter:/[\u1EBB]/g,alternative:"e"},{letter:/[\u1EBC]/g,alternative:"E"},{letter:/[\u1EBD]/g,alternative:"e"},{letter:/[\u1EBE]/g,alternative:"E"},{letter:/[\u1EBF]/g,alternative:"e"},{letter:/[\u1EC0]/g,alternative:"E"},{letter:/[\u1EC1]/g,alternative:"e"},{letter:/[\u1EC2]/g,alternative:"E"},{letter:/[\u1EC3]/g,alternative:"e"},{letter:/[\u1EC4]/g,alternative:"E"},{letter:/[\u1EC5]/g,alternative:"e"},{letter:/[\u1EC6]/g,alternative:"E"},{letter:/[\u1EC7]/g,alternative:"e"},{letter:/[\u1EC8]/g,alternative:"I"},{letter:/[\u1EC9]/g,alternative:"i"},{letter:/[\u1ECA]/g,alternative:"I"},{letter:/[\u1ECB]/g,alternative:"i"},{letter:/[\u1ECC]/g,alternative:"O"},{letter:/[\u1ECD]/g,alternative:"o"},{letter:/[\u1ECE]/g,alternative:"O"},{letter:/[\u1ECF]/g,alternative:"o"},{letter:/[\u1ED0]/g,alternative:"O"},{letter:/[\u1ED1]/g,alternative:"o"},{letter:/[\u1ED2]/g,alternative:"O"},{letter:/[\u1ED3]/g,alternative:"o"},{letter:/[\u1ED4]/g,alternative:"O"},{letter:/[\u1ED5]/g,alternative:"o"},{letter:/[\u1ED6]/g,alternative:"O"},{letter:/[\u1ED7]/g,alternative:"o"},{letter:/[\u1ED8]/g,alternative:"O"},{letter:/[\u1ED9]/g,alternative:"o"},{letter:/[\u1EDA]/g,alternative:"O"},{letter:/[\u1EDB]/g,alternative:"o"},{letter:/[\u1EDC]/g,alternative:"O"},{letter:/[\u1EDD]/g,alternative:"o"},{letter:/[\u1EDE]/g,alternative:"O"},{letter:/[\u1EDF]/g,alternative:"o"},{letter:/[\u1EE0]/g,alternative:"O"},{letter:/[\u1EE1]/g,alternative:"o"},{letter:/[\u1EE2]/g,alternative:"O"},{letter:/[\u1EE3]/g,alternative:"o"},{letter:/[\u1EE4]/g,alternative:"U"},{letter:/[\u1EE5]/g,alternative:"u"},{letter:/[\u1EE6]/g,alternative:"U"},{letter:/[\u1EE7]/g,alternative:"u"},{letter:/[\u1EE8]/g,alternative:"U"},{letter:/[\u1EE9]/g,alternative:"u"},{letter:/[\u1EEA]/g,alternative:"U"},{letter:/[\u1EEB]/g,alternative:"u"},{letter:/[\u1EEC]/g,alternative:"U"},{letter:/[\u1EED]/g,alternative:"u"},{letter:/[\u1EEE]/g,alternative:"U"},{letter:/[\u1EEF]/g,alternative:"u"},{letter:/[\u1EF0]/g,alternative:"U"},{letter:/[\u1EF1]/g,alternative:"u"},{letter:/[\u1EF2]/g,alternative:"Y"},{letter:/[\u1EF3]/g,alternative:"y"},{letter:/[\u1EF4]/g,alternative:"Y"},{letter:/[\u1EF5]/g,alternative:"y"},{letter:/[\u1EF6]/g,alternative:"Y"},{letter:/[\u1EF7]/g,alternative:"y"},{letter:/[\u1EF8]/g,alternative:"Y"},{letter:/[\u1EF9]/g,alternative:"y"}],s={de:[{letter:/[\u00C4]/g,alternative:"Ae"},{letter:/[\u00E4]/g,alternative:"ae"},{letter:/[\u00D6]/g,alternative:"Oe"},{letter:/[\u00F6]/g,alternative:"oe"},{letter:/[\u00DC]/g,alternative:"Ue"},{letter:/[\u00FC]/g,alternative:"ue"},{letter:/[\u1E9E]/g,alternative:"SS"},{letter:/[\u00DF]/g,alternative:"ss"}],da:[{letter:/[\u00C6]/g,alternative:"Ae"},{letter:/[\u00E6]/g,alternative:"ae"},{letter:/[\u00D8]/g,alternative:"Oe"},{letter:/[\u00F8]/g,alternative:"oe"},{letter:/[\u00C5]/g,alternative:"Aa"},{letter:/[\u00E5]/g,alternative:"aa"}],ca:[{letter:/[\u00B7]/g,alternative:"ll"}],srAndBs:[{letter:/[\u0110]/g,alternative:"DJ"},{letter:/[\u0111]/g,alternative:"dj"}]},n=function(a){switch(a){case"de":return s.de;case"da":return s.da;case"ca":return s.ca;case"sr":case"bs":return s.srAndBs;default:return[]}};a.exports=function(a){if(r(a))return[];var e=o;return e=e.concat(n(i(a)))}},function(a,e){function t(a){return a!==a}a.exports=t},function(a,e){function t(a,e,t){for(var i=t-1,r=a.length;++i<r;)if(a[i]===e)return i;return-1}a.exports=t},function(a,e,t){var i=t(1099),r=t(1248),o=t(1032),s=i&&1/o(new i([,-0]))[1]==1/0?function(a){return new i(a)}:r;a.exports=s},function(a,e){function t(){}a.exports=t},function(a,e,t){"use strict";var i=t(56),r=t(732);a.exports=function(a){var e=a.split(",");return e=e.map(function(a){return r(i(a))}).filter(function(a){return a})}},function(a,e,t){function i(a){return r(a)&&a!=+a}var r=t(405);a.exports=i},function(a,e,t){function i(a){return s(a)||o(a)||!!(n&&a&&a[n])}var r=t(142),o=t(182),s=t(39),n=r?r.isConcatSpreadable:void 0;a.exports=i},function(a,e,t){"use strict";var i=t(1253),r=i.stripWordBoundariesStart,o=i.stripWordBoundariesEnd;a.exports=function(a){var e=r(a),t="",i="";if(e!==a){var s=a.search(e);t=a.substr(0,s)}var n=o(e);if(n!==e){var d=e.search(n)+n.length;i=e.substr(d)}return t+"<yoastmark class='yoast-text-mark'>"+n+"</yoastmark>"+i}},function(a,e,t){"use strict";var i="[ \\u00a0 \\n\\r\\t.,'()\"+-;!?:/»«‹›<>]",r=new RegExp("^("+i+"+)","ig"),o=new RegExp("("+i+"+$)","ig"),s=function(a){return a=a.replace(r,"")},n=function(a){return a=a.replace(o,"")},d=function(a){return a=a.replace(r,""),a=a.replace(o,"")};a.exports={stripWordBoundariesStart:s,stripWordBoundariesEnd:n,stripWordBoundariesEverywhere:d}},function(a,e,t){function i(a){return a=o(a),a&&n.test(a)?a.replace(s,r):a}var r=t(1255),o=t(365),s=/[&<>"']/g,n=RegExp(s.source);a.exports=i},function(a,e,t){var i=t(1256),r={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},o=i(r);a.exports=o},function(a,e){function t(a){return function(e){return null==a?void 0:a[e]}}a.exports=t},function(a,e,t){"use strict";function i(a){return r(a.getText())}Object.defineProperty(e,"__esModule",{value:!0});var r=t(218);e.default=i},function(a,e){a.exports=function(a){return a&&"object"==typeof a&&"function"==typeof a.copy&&"function"==typeof a.fill&&"function"==typeof a.readUInt8}},function(a,e){"function"==typeof Object.create?a.exports=function(a,e){a.super_=e,a.prototype=Object.create(e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})}:a.exports=function(a,e){a.super_=e;var t=function(){};t.prototype=e.prototype,a.prototype=new t,a.prototype.constructor=a}},function(a,e,t){"use strict";var i=t(1117),r=t(1261),o=t(1262),s=t(1263),n=t(1039),d=t(105),l=function(a,e,t){return""!==a&&r(e,a,t)},c=function(a){for(var e=d(a.getKeyword()),t=a.getLocale(),r=i(a.getText()),c=a.getPermalink(),u={total:r.length,totalNaKeyword:0,keyword:{totalKeyword:0,matchedAnchors:[]},internalTotal:0,internalDofollow:0,internalNofollow:0,externalTotal:0,externalDofollow:0,externalNofollow:0,otherTotal:0,otherDofollow:0,otherNofollow:0},p=0;p<r.length;p++){var g=r[p],m=n.getFromAnchorTag(g),f=n.areEqual(m,c);l(e,g,t)&&!f&&(u.keyword.totalKeyword++,u.keyword.matchedAnchors.push(g));var b=o(g,c),h=s(g);u[b+"Total"]++,u[b+h]++}return u};a.exports=function(a){return c(a)}},function(a,e,t){"use strict";var i=t(1108),r=t(105);a.exports=function(a,e,t){var o=a.match(/>(.*)/gi);return e=r(e),null!==o&&(o=o[0].replace(/<.*?>\s?/gi,""),i(o,e,t).length>0)}},function(a,e,t){"use strict";var i=t(1039);a.exports=function(a,e){var t=i.getFromAnchorTag(a),r=i.getProtocol(t);return r&&!i.protocolIsHttpScheme(r)||i.isRelativeFragmentURL(t)?"other":i.isInternalLink(t,i.getHostname(e))?"internal":"external"}},function(a,e,t){"use strict";var i=t(413);a.exports=function(a){var e="Dofollow",t=new i.Parser({onopentag:function(a,t){"a"===a&&t.rel&&t.rel.toLowerCase().split(/\s/).includes("nofollow")&&(e="Nofollow")}});return t.write(a),t.end(),e}},function(a,e){a.exports={0:65533,128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376}},function(a,e,t){function i(a,e,t){"object"==typeof a?(t=e,e=a,a=null):"function"==typeof e&&(t=e,e=d),this._callback=a,this._options=e||d,this._elementCB=t,this.dom=[],this._done=!1,this._tagStack=[],this._parser=this._parser||null}var r=t(558),o=/\s+/g,s=t(1122),n=t(1266),d={normalizeWhitespace:!1,withStartIndices:!1,withEndIndices:!1};i.prototype.onparserinit=function(a){this._parser=a},i.prototype.onreset=function(){i.call(this,this._callback,this._options,this._elementCB)},i.prototype.onend=function(){this._done||(this._done=!0,this._parser=null,this._handleCallback(null))},i.prototype._handleCallback=i.prototype.onerror=function(a){if("function"==typeof this._callback)this._callback(a,this.dom);else if(a)throw a},i.prototype.onclosetag=function(){var a=this._tagStack.pop();this._options.withEndIndices&&(a.endIndex=this._parser.endIndex),this._elementCB&&this._elementCB(a)},i.prototype._createDomElement=function(a){if(!this._options.withDomLvl1)return a;var e;e="tag"===a.type?Object.create(n):Object.create(s);for(var t in a)a.hasOwnProperty(t)&&(e[t]=a[t]);return e},i.prototype._addDomElement=function(a){var e=this._tagStack[this._tagStack.length-1],t=e?e.children:this.dom,i=t[t.length-1];a.next=null,this._options.withStartIndices&&(a.startIndex=this._parser.startIndex),this._options.withEndIndices&&(a.endIndex=this._parser.endIndex),i?(a.prev=i,i.next=a):a.prev=null,t.push(a),a.parent=e||null},i.prototype.onopentag=function(a,e){var t={type:"script"===a?r.Script:"style"===a?r.Style:r.Tag,name:a,attribs:e,children:[]},i=this._createDomElement(t);this._addDomElement(i),this._tagStack.push(i)},i.prototype.ontext=function(a){var e,t=this._options.normalizeWhitespace||this._options.ignoreWhitespace;if(!this._tagStack.length&&this.dom.length&&(e=this.dom[this.dom.length-1]).type===r.Text)t?e.data=(e.data+a).replace(o," "):e.data+=a;else if(this._tagStack.length&&(e=this._tagStack[this._tagStack.length-1])&&(e=e.children[e.children.length-1])&&e.type===r.Text)t?e.data=(e.data+a).replace(o," "):e.data+=a;else{t&&(a=a.replace(o," "));var i=this._createDomElement({data:a,type:r.Text});this._addDomElement(i)}},i.prototype.oncomment=function(a){var e=this._tagStack[this._tagStack.length-1];if(e&&e.type===r.Comment)return void(e.data+=a);var t={data:a,type:r.Comment},i=this._createDomElement(t);this._addDomElement(i),this._tagStack.push(i)},i.prototype.oncdatastart=function(){var a={children:[{data:"",type:r.Text}],type:r.CDATA},e=this._createDomElement(a);this._addDomElement(e),this._tagStack.push(e)},i.prototype.oncommentend=i.prototype.oncdataend=function(){this._tagStack.pop()},i.prototype.onprocessinginstruction=function(a,e){var t=this._createDomElement({name:a,data:e,type:r.Directive});this._addDomElement(t)},a.exports=i},function(a,e,t){var i=t(1122),r=a.exports=Object.create(i),o={tagName:"name"};Object.keys(o).forEach(function(a){var e=o[a];Object.defineProperty(r,a,{get:function(){return this[e]||null},set:function(a){return this[e]=a,a}})})},function(a,e,t){function i(a,e){this.init(a,e)}function r(a,e){return c.getElementsByTagName(a,e,!0)}function o(a,e){return c.getElementsByTagName(a,e,!0,1)[0]}function s(a,e,t){return c.getText(c.getElementsByTagName(a,e,t,1)).trim()}function n(a,e,t,i,r){var o=s(t,i,r);o&&(a[e]=o)}var d=t(413),l=d.DomHandler,c=d.DomUtils;t(48)(i,l),i.prototype.init=l;var u=function(a){return"rss"===a||"feed"===a||"rdf:RDF"===a};i.prototype.onend=function(){var a,e,t={},i=o(u,this.dom);i&&("feed"===i.name?(e=i.children,t.type="atom",n(t,"id","id",e),n(t,"title","title",e),(a=o("link",e))&&(a=a.attribs)&&(a=a.href)&&(t.link=a),n(t,"description","subtitle",e),(a=s("updated",e))&&(t.updated=new Date(a)),n(t,"author","email",e,!0),t.items=r("entry",e).map(function(a){var e,t={};return a=a.children,n(t,"id","id",a),n(t,"title","title",a),(e=o("link",a))&&(e=e.attribs)&&(e=e.href)&&(t.link=e),(e=s("summary",a)||s("content",a))&&(t.description=e),(e=s("updated",a))&&(t.pubDate=new Date(e)),t})):(e=o("channel",i.children).children,t.type=i.name.substr(0,3),t.id="",n(t,"title","title",e),n(t,"link","link",e),n(t,"description","description",e),(a=s("lastBuildDate",e))&&(t.updated=new Date(a)),n(t,"author","managingEditor",e,!0),t.items=r("item",i.children).map(function(a){var e,t={};return a=a.children,n(t,"id","guid",a),n(t,"title","title",a),n(t,"link","link",a),n(t,"description","description",a),(e=s("pubDate",a))&&(t.pubDate=new Date(e)),t}))),this.dom=t,l.prototype._handleCallback.call(this,i?null:Error("couldn't find root of feed"))},a.exports=i},function(a,e,t){function i(a){o.call(this,new r(this),a)}function r(a){this.scope=a}a.exports=i;var o=t(1123);t(48)(i,o),i.prototype.readable=!0;var s=t(413).EVENTS;Object.keys(s).forEach(function(a){if(0===s[a])r.prototype["on"+a]=function(){this.scope.emit(a)};else if(1===s[a])r.prototype["on"+a]=function(e){this.scope.emit(a,e)};else{if(2!==s[a])throw Error("wrong number of arguments!");r.prototype["on"+a]=function(e,t){this.scope.emit(a,e,t)}}})},function(a,e,t){function i(){r.call(this)}a.exports=i;var r=t(234).EventEmitter;t(48)(i,r),i.Readable=t(1042),i.Writable=t(1278),i.Duplex=t(1279),i.Transform=t(1280),i.PassThrough=t(1281),i.Stream=i,i.prototype.pipe=function(a,e){function t(e){a.writable&&!1===a.write(e)&&l.pause&&l.pause()}function i(){l.readable&&l.resume&&l.resume()}function o(){c||(c=!0,a.end())}function s(){c||(c=!0,"function"==typeof a.destroy&&a.destroy())}function n(a){if(d(),0===r.listenerCount(this,"error"))throw a}function d(){l.removeListener("data",t),a.removeListener("drain",i),l.removeListener("end",o),l.removeListener("close",s),l.removeListener("error",n),a.removeListener("error",n),l.removeListener("end",d),l.removeListener("close",d),a.removeListener("close",d)}var l=this;l.on("data",t),a.on("drain",i),a._isStdio||e&&!1===e.end||(l.on("end",o),l.on("close",s));var c=!1;return l.on("error",n),a.on("error",n),l.on("end",d),l.on("close",d),a.on("close",d),a.emit("pipe",l),a}},function(a,e,t){"use strict";function i(a){var e=a.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var t=a.indexOf("=");return-1===t&&(t=e),[t,t===e?0:4-t%4]}function r(a){var e=i(a),t=e[0],r=e[1];return 3*(t+r)/4-r}function o(a,e,t){return 3*(e+t)/4-t}function s(a){for(var e,t=i(a),r=t[0],s=t[1],n=new p(o(a,r,s)),d=0,l=s>0?r-4:r,c=0;c<l;c+=4)e=u[a.charCodeAt(c)]<<18|u[a.charCodeAt(c+1)]<<12|u[a.charCodeAt(c+2)]<<6|u[a.charCodeAt(c+3)],n[d++]=e>>16&255,n[d++]=e>>8&255,n[d++]=255&e;return 2===s&&(e=u[a.charCodeAt(c)]<<2|u[a.charCodeAt(c+1)]>>4,n[d++]=255&e),1===s&&(e=u[a.charCodeAt(c)]<<10|u[a.charCodeAt(c+1)]<<4|u[a.charCodeAt(c+2)]>>2,n[d++]=e>>8&255,n[d++]=255&e),n}function n(a){return c[a>>18&63]+c[a>>12&63]+c[a>>6&63]+c[63&a]}function d(a,e,t){for(var i,r=[],o=e;o<t;o+=3)i=(a[o]<<16&16711680)+(a[o+1]<<8&65280)+(255&a[o+2]),r.push(n(i));return r.join("")}function l(a){for(var e,t=a.length,i=t%3,r=[],o=0,s=t-i;o<s;o+=16383)r.push(d(a,o,o+16383>s?s:o+16383));return 1===i?(e=a[t-1],r.push(c[e>>2]+c[e<<4&63]+"==")):2===i&&(e=(a[t-2]<<8)+a[t-1],r.push(c[e>>10]+c[e>>4&63]+c[e<<2&63]+"=")),r.join("")}e.byteLength=r,e.toByteArray=s,e.fromByteArray=l;for(var c=[],u=[],p="undefined"!=typeof Uint8Array?Uint8Array:Array,g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",m=0,f=g.length;m<f;++m)c[m]=g[m],u[g.charCodeAt(m)]=m;u["-".charCodeAt(0)]=62,u["_".charCodeAt(0)]=63},function(a,e){e.read=function(a,e,t,i,r){var o,s,n=8*r-i-1,d=(1<<n)-1,l=d>>1,c=-7,u=t?r-1:0,p=t?-1:1,g=a[e+u];for(u+=p,o=g&(1<<-c)-1,g>>=-c,c+=n;c>0;o=256*o+a[e+u],u+=p,c-=8);for(s=o&(1<<-c)-1,o>>=-c,c+=i;c>0;s=256*s+a[e+u],u+=p,c-=8);if(0===o)o=1-l;else{if(o===d)return s?NaN:1/0*(g?-1:1);s+=Math.pow(2,i),o-=l}return(g?-1:1)*s*Math.pow(2,o-i)},e.write=function(a,e,t,i,r,o){var s,n,d,l=8*o-r-1,c=(1<<l)-1,u=c>>1,p=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,g=i?0:o-1,m=i?1:-1,f=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(n=isNaN(e)?1:0,s=c):(s=Math.floor(Math.log(e)/Math.LN2),e*(d=Math.pow(2,-s))<1&&(s--,d*=2),e+=s+u>=1?p/d:p*Math.pow(2,1-u),e*d>=2&&(s++,d/=2),s+u>=c?(n=0,s=c):s+u>=1?(n=(e*d-1)*Math.pow(2,r),s+=u):(n=e*Math.pow(2,u-1)*Math.pow(2,r),s=0));r>=8;a[t+g]=255&n,g+=m,n/=256,r-=8);for(s=s<<r|n,l+=r;l>0;a[t+g]=255&s,g+=m,s/=256,l-=8);a[t+g-m]|=128*f}},function(a,e){},function(a,e,t){"use strict";function i(a,e){if(!(a instanceof e))throw new TypeError("Cannot call a class as a function")}function r(a,e,t){a.copy(e,t)}var o=t(735).Buffer,s=t(1274);a.exports=function(){function a(){i(this,a),this.head=null,this.tail=null,this.length=0}return a.prototype.push=function(a){var e={data:a,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length},a.prototype.unshift=function(a){var e={data:a,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},a.prototype.shift=function(){if(0!==this.length){var a=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,a}},a.prototype.clear=function(){this.head=this.tail=null,this.length=0},a.prototype.join=function(a){if(0===this.length)return"";for(var e=this.head,t=""+e.data;e=e.next;)t+=a+e.data;return t},a.prototype.concat=function(a){if(0===this.length)return o.alloc(0);if(1===this.length)return this.head.data;for(var e=o.allocUnsafe(a>>>0),t=this.head,i=0;t;)r(t.data,e,i),i+=t.data.length,t=t.next;return e},a}(),s&&s.inspect&&s.inspect.custom&&(a.exports.prototype[s.inspect.custom]=function(){var a=s.inspect({length:this.length});return this.constructor.name+" "+a})},function(a,e){},function(a,e,t){function i(a,e){this._id=a,this._clearFn=e}var r=Function.prototype.apply;e.setTimeout=function(){return new i(r.call(setTimeout,window,arguments),clearTimeout)},e.setInterval=function(){return new i(r.call(setInterval,window,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(a){a&&a.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(window,this._id)},e.enroll=function(a,e){clearTimeout(a._idleTimeoutId),a._idleTimeout=e},e.unenroll=function(a){clearTimeout(a._idleTimeoutId),a._idleTimeout=-1},e._unrefActive=e.active=function(a){clearTimeout(a._idleTimeoutId);var e=a._idleTimeout;e>=0&&(a._idleTimeoutId=setTimeout(function(){a._onTimeout&&a._onTimeout()},e))},t(575),e.setImmediate=setImmediate,e.clearImmediate=clearImmediate},function(a,e,t){(function(e){function t(a,e){function t(){if(!r){if(i("throwDeprecation"))throw new Error(e);i("traceDeprecation")?console.trace(e):console.warn(e),r=!0}return a.apply(this,arguments)}if(i("noDeprecation"))return a;var r=!1;return t}function i(a){try{if(!e.localStorage)return!1}catch(a){return!1}var t=e.localStorage[a];return null!=t&&"true"===String(t).toLowerCase()}a.exports=t}).call(e,t(9))},function(a,e,t){"use strict";function i(a){if(!(this instanceof i))return new i(a);r.call(this,a)}a.exports=i;var r=t(1128),o=t(559);o.inherits=t(48),o.inherits(i,r),i.prototype._transform=function(a,e,t){t(null,a)}},function(a,e,t){a.exports=t(1044)},function(a,e,t){a.exports=t(331)},function(a,e,t){a.exports=t(1042).Transform},function(a,e,t){a.exports=t(1042).PassThrough},function(a,e){},function(a,e,t){function i(a){this._cbs=a||{}}a.exports=i;var r=t(413).EVENTS;Object.keys(r).forEach(function(a){if(0===r[a])a="on"+a,i.prototype[a]=function(){this._cbs[a]&&this._cbs[a]()};else if(1===r[a])a="on"+a,i.prototype[a]=function(e){this._cbs[a]&&this._cbs[a](e)};else{if(2!==r[a])throw Error("wrong number of arguments");a="on"+a,i.prototype[a]=function(e,t){this._cbs[a]&&this._cbs[a](e,t)}}})},function(a,e,t){var i=a.exports;[t(1285),t(1291),t(1292),t(1293),t(1294),t(1295)].forEach(function(a){Object.keys(a).forEach(function(e){i[e]=a[e].bind(i)})})},function(a,e,t){function i(a,e){return a.children?a.children.map(function(a){return s(a,e)}).join(""):""}function r(a){return Array.isArray(a)?a.map(r).join(""):n(a)?"br"===a.name?"\n":r(a.children):a.type===o.CDATA?r(a.children):a.type===o.Text?a.data:""}var o=t(558),s=t(1286),n=o.isTag;a.exports={getInnerHTML:i,getOuterHTML:s,getText:r}},function(a,e,t){function i(a,e){if(a){var t,i="";for(var r in a)t=a[r],i&&(i+=" "),!t&&u[r]?i+=r:i+=r+'="'+(e.decodeEntities?c.encodeXML(t):t)+'"';return i}}function r(a,e){"svg"===a.name&&(e={decodeEntities:e.decodeEntities,xmlMode:!0});var t="<"+a.name,r=i(a.attribs,e);return r&&(t+=" "+r),!e.xmlMode||a.children&&0!==a.children.length?(t+=">",a.children&&(t+=m(a.children,e)),g[a.name]&&!e.xmlMode||(t+="</"+a.name+">")):t+="/>",t}function o(a){return"<"+a.data+">"}function s(a,e){var t=a.data||"";return!e.decodeEntities||a.parent&&a.parent.name in p||(t=c.encodeXML(t)),t}function n(a){return"<![CDATA["+a.children[0].data+"]]>"}function d(a){return"\x3c!--"+a.data+"--\x3e"}var l=t(1287),c=t(1288),u={__proto__:null,allowfullscreen:!0,async:!0,autofocus:!0,autoplay:!0,checked:!0,controls:!0,default:!0,defer:!0,disabled:!0,hidden:!0,ismap:!0,loop:!0,multiple:!0,muted:!0,open:!0,readonly:!0,required:!0,reversed:!0,scoped:!0,seamless:!0,selected:!0,typemustmatch:!0},p={__proto__:null,style:!0,script:!0,xmp:!0,iframe:!0,noembed:!0,noframes:!0,plaintext:!0,noscript:!0},g={__proto__:null,area:!0,base:!0,basefont:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,isindex:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},m=a.exports=function(a,e){Array.isArray(a)||a.cheerio||(a=[a]),e=e||{};for(var t="",i=0;i<a.length;i++){var c=a[i];"root"===c.type?t+=m(c.children,e):l.isTag(c)?t+=r(c,e):c.type===l.Directive?t+=o(c):c.type===l.Comment?t+=d(c):c.type===l.CDATA?t+=n(c):t+=s(c,e)}return t}},function(a,e){a.exports={Text:"text",Directive:"directive",Comment:"comment",Script:"script",Style:"style",Tag:"tag",CDATA:"cdata",isTag:function(a){return"tag"===a.type||"script"===a.type||"style"===a.type}}},function(a,e,t){var i=t(1289),r=t(1290);e.decode=function(a,e){return(!e||e<=0?r.XML:r.HTML)(a)},e.decodeStrict=function(a,e){return(!e||e<=0?r.XML:r.HTMLStrict)(a)},e.encode=function(a,e){return(!e||e<=0?i.XML:i.HTML)(a)},e.encodeXML=i.XML,e.encodeHTML4=e.encodeHTML5=e.encodeHTML=i.HTML,e.decodeXML=e.decodeXMLStrict=r.XML,e.decodeHTML4=e.decodeHTML5=e.decodeHTML=r.HTML,e.decodeHTML4Strict=e.decodeHTML5Strict=e.decodeHTMLStrict=r.HTMLStrict,e.escape=i.escape},function(a,e,t){function i(a){return Object.keys(a).sort().reduce(function(e,t){return e[a[t]]="&"+t+";",e},{})}function r(a){var e=[],t=[];return Object.keys(a).forEach(function(a){1===a.length?e.push("\\"+a):t.push(a)}),t.unshift("["+e.join("")+"]"),new RegExp(t.join("|"),"g")}function o(a){return"&#x"+a.charCodeAt(0).toString(16).toUpperCase()+";"}function s(a){return"&#x"+(1024*(a.charCodeAt(0)-55296)+a.charCodeAt(1)-56320+65536).toString(16).toUpperCase()+";"}function n(a,e){function t(e){return a[e]}return function(a){return a.replace(e,t).replace(m,s).replace(g,o)}}function d(a){return a.replace(f,o).replace(m,s).replace(g,o)}var l=i(t(1041)),c=r(l);e.XML=n(l,c);var u=i(t(1040)),p=r(u);e.HTML=n(u,p);var g=/[^\0-\x7F]/g,m=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,f=r(l);e.escape=d},function(a,e,t){function i(a){var e=Object.keys(a).join("|"),t=o(a);e+="|#[xX][\\da-fA-F]+|#\\d+";var i=new RegExp("&(?:"+e+");","g");return function(a){return String(a).replace(i,t)}}function r(a,e){return a<e?1:-1}function o(a){return function(e){return"#"===e.charAt(1)?l("X"===e.charAt(2)||"x"===e.charAt(2)?parseInt(e.substr(3),16):parseInt(e.substr(2),10)):a[e.slice(1,-1)]}}var s=t(1040),n=t(1121),d=t(1041),l=t(1120),c=i(d),u=i(s),p=function(){function a(a){return";"!==a.substr(-1)&&(a+=";"),c(a)}for(var e=Object.keys(n).sort(r),t=Object.keys(s).sort(r),i=0,d=0;i<t.length;i++)e[d]===t[i]?(t[i]+=";?",d++):t[i]+=";";var l=new RegExp("&(?:"+t.join("|")+"|#[xX][\\da-fA-F]+;?|#\\d+;?)","g"),c=o(s);return function(e){return String(e).replace(l,a)}}();a.exports={XML:c,HTML:p,HTMLStrict:u}},function(a,e){var t=e.getChildren=function(a){return a.children},i=e.getParent=function(a){return a.parent};e.getSiblings=function(a){var e=i(a);return e?t(e):[a]},e.getAttributeValue=function(a,e){return a.attribs&&a.attribs[e]},e.hasAttrib=function(a,e){return!!a.attribs&&hasOwnProperty.call(a.attribs,e)},e.getName=function(a){return a.name}},function(a,e){e.removeElement=function(a){if(a.prev&&(a.prev.next=a.next),a.next&&(a.next.prev=a.prev),a.parent){var e=a.parent.children;e.splice(e.lastIndexOf(a),1)}},e.replaceElement=function(a,e){var t=e.prev=a.prev;t&&(t.next=e);var i=e.next=a.next;i&&(i.prev=e);var r=e.parent=a.parent;if(r){var o=r.children;o[o.lastIndexOf(a)]=e}},e.appendChild=function(a,e){if(e.parent=a,1!==a.children.push(e)){var t=a.children[a.children.length-2];t.next=e,e.prev=t,e.next=null}},e.append=function(a,e){var t=a.parent,i=a.next;if(e.next=i,e.prev=a,a.next=e,e.parent=t,i){if(i.prev=e,t){var r=t.children;r.splice(r.lastIndexOf(i),0,e)}}else t&&t.children.push(e)},e.prepend=function(a,e){var t=a.parent;if(t){var i=t.children;i.splice(i.lastIndexOf(a),0,e)}a.prev&&(a.prev.next=e),e.parent=t,e.prev=a.prev,e.next=a,a.prev=e}},function(a,e,t){function i(a,e,t,i){return Array.isArray(e)||(e=[e]),"number"==typeof i&&isFinite(i)||(i=1/0),r(a,e,!1!==t,i)}function r(a,e,t,i){for(var o,s=[],n=0,d=e.length;n<d&&!(a(e[n])&&(s.push(e[n]),--i<=0))&&(o=e[n].children,!(t&&o&&o.length>0&&(o=r(a,o,t,i),s=s.concat(o),(i-=o.length)<=0)));n++);return s}function o(a,e){for(var t=0,i=e.length;t<i;t++)if(a(e[t]))return e[t];return null}function s(a,e){for(var t=null,i=0,r=e.length;i<r&&!t;i++)l(e[i])&&(a(e[i])?t=e[i]:e[i].children.length>0&&(t=s(a,e[i].children)));return t}function n(a,e){for(var t=0,i=e.length;t<i;t++)if(l(e[t])&&(a(e[t])||e[t].children.length>0&&n(a,e[t].children)))return!0;return!1}function d(a,e){for(var t=[],i=e.slice();i.length;){var r=i.shift();l(r)&&(r.children&&r.children.length>0&&i.unshift.apply(i,r.children),a(r)&&t.push(r))}return t}var l=t(558).isTag;a.exports={filter:i,find:r,findOneChild:o,findOne:s,existsOne:n,findAll:d}},function(a,e,t){function i(a,e){return"function"==typeof e?function(t){return t.attribs&&e(t.attribs[a])}:function(t){return t.attribs&&t.attribs[a]===e}}function r(a,e){return function(t){return a(t)||e(t)}}var o=t(558),s=e.isTag=o.isTag;e.testElement=function(a,e){for(var t in a)if(a.hasOwnProperty(t)){if("tag_name"===t){if(!s(e)||!a.tag_name(e.name))return!1}else if("tag_type"===t){if(!a.tag_type(e.type))return!1}else if("tag_contains"===t){if(s(e)||!a.tag_contains(e.data))return!1}else if(!e.attribs||!a[t](e.attribs[t]))return!1}else;return!0};var n={tag_name:function(a){return"function"==typeof a?function(e){return s(e)&&a(e.name)}:"*"===a?s:function(e){return s(e)&&e.name===a}},tag_type:function(a){return"function"==typeof a?function(e){return a(e.type)}:function(e){return e.type===a}},tag_contains:function(a){return"function"==typeof a?function(e){return!s(e)&&a(e.data)}:function(e){return!s(e)&&e.data===a}}};e.getElements=function(a,e,t,o){var s=Object.keys(a).map(function(e){var t=a[e];return e in n?n[e](t):i(e,t)});return 0===s.length?[]:this.filter(s.reduce(r),e,t,o)},e.getElementById=function(a,e,t){return Array.isArray(e)||(e=[e]),this.findOne(i("id",a),e,!1!==t)},e.getElementsByTagName=function(a,e,t,i){return this.filter(n.tag_name(a),e,t,i)},e.getElementsByTagType=function(a,e,t,i){return this.filter(n.tag_type(a),e,t,i)}},function(a,e){e.removeSubsets=function(a){for(var e,t,i,r=a.length;--r>-1;){for(e=t=a[r],a[r]=null,i=!0;t;){if(a.indexOf(t)>-1){i=!1,a.splice(r,1);break}t=t.parent}i&&(a[r]=e)}return a};var t={DISCONNECTED:1,PRECEDING:2,FOLLOWING:4,CONTAINS:8,CONTAINED_BY:16},i=e.compareDocumentPosition=function(a,e){var i,r,o,s,n,d,l=[],c=[];if(a===e)return 0;for(i=a;i;)l.unshift(i),i=i.parent;for(i=e;i;)c.unshift(i),i=i.parent;for(d=0;l[d]===c[d];)d++;return 0===d?t.DISCONNECTED:(r=l[d-1],o=r.children,s=l[d],n=c[d],o.indexOf(s)>o.indexOf(n)?r===e?t.FOLLOWING|t.CONTAINED_BY:t.FOLLOWING:r===a?t.PRECEDING|t.CONTAINS:t.PRECEDING)};e.uniqueSort=function(a){var e,r,o=a.length;for(a=a.slice();--o>-1;)e=a[o],(r=a.indexOf(e))>-1&&r<o&&a.splice(o,1);return a.sort(function(a,e){var r=i(a,e);return r&t.PRECEDING?-1:r&t.FOLLOWING?1:0}),a}},function(a,e,t){function i(a){this._cbs=a||{},this.events=[]}a.exports=i;var r=t(413).EVENTS;Object.keys(r).forEach(function(a){if(0===r[a])a="on"+a,i.prototype[a]=function(){this.events.push([a]),this._cbs[a]&&this._cbs[a]()};else if(1===r[a])a="on"+a,i.prototype[a]=function(e){this.events.push([a,e]),this._cbs[a]&&this._cbs[a](e)};else{if(2!==r[a])throw Error("wrong number of arguments");a="on"+a,i.prototype[a]=function(e,t){this.events.push([a,e,t]),this._cbs[a]&&this._cbs[a](e,t)}}}),i.prototype.onreset=function(){this.events=[],this._cbs.onreset&&this._cbs.onreset()},i.prototype.restart=function(){this._cbs.onreset&&this._cbs.onreset();for(var a=0,e=this.events.length;a<e;a++)if(this._cbs[this.events[a][0]]){var t=this.events[a].length;1===t?this._cbs[this.events[a][0]]():2===t?this._cbs[this.events[a][0]](this.events[a][1]):this._cbs[this.events[a][0]](this.events[a][1],this.events[a][2])}}},function(a,e,t){"use strict";var i=t(1129);a.exports=function(a){return i(a).length}},function(a,e,t){"use strict";a.exports=function(a){var e=a.getUrl().length,t=a.getKeyword().length;return e>40&&e>t+20}},function(a,e,t){"use strict";var i=t(277),r=t(330).normalize,o=t(105);a.exports=function(a){var e=r(a.getTitle()),t=o(r(a.getKeyword()).toLocaleLowerCase()),s=a.getLocale(),n={matches:0,position:-1};return n.matches=i(e,t,s).count,n.position=e.toLocaleLowerCase().indexOf(t),n}},function(a,e,t){"use strict";var i=t(1106),r=t(1301),o=t(1168).getSubheadingContents,s=t(105);a.exports=function(a){var e=a.getText(),t=s(a.getKeyword()),n=a.getLocale(),d={count:0};e=i(e);var l=o(e);return 0!==l.length&&(d.count=l.length,d.matches=r(l,t,n)),d}},function(a,e,t){"use strict";var i=t(1302),r=t(1303)(),o=t(277);a.exports=function(a,e,t){var s=-1;if(null!==a){s=0;for(var n=0;n<a.length;n++){var d=i(a[n],r);(o(d,e,t).count>0||o(a[n],e,t).count>0)&&s++}}return s}},function(a,e,t){"use strict";a.exports=function(a,e,t){return a=a.replace(e,t)}},function(a,e,t){"use strict";a.exports=function(){return[" a"," in"," an"," on"," for"," the"," and"]}},function(a,e,t){"use strict";var i=t(192);a.exports=function(a,e){var t=i(a.getText());return 0===t?0:e.getResearch("keywordCount").count/t*100}},function(a,e,t){"use strict";var i=t(277),r=t(1035),o=t(105);a.exports=function(a){var e=o(a.getKeyword()),t=a.getText(),s=a.getLocale(),n=i(t,e,s);return{count:n.count,matches:r(n.matches).sort(function(a,e){return e.length-a.length})}}},function(a,e,t){"use strict";var i=t(1130),r=t(105);a.exports=function(a){var e=r(a.getKeyword());return i(e)}},function(a,e,t){"use strict";a.exports=function(){return["a","about","above","after","again","against","all","am","an","and","any","are","as","at","be","because","been","before","being","below","between","both","but","by","could","did","do","does","doing","down","during","each","few","for","from","further","had","has","have","having","he","he'd","he'll","he's","her","here","here's","hers","herself","him","himself","his","how","how's","i","i'd","i'll","i'm","i've","if","in","into","is","it","it's","its","itself","let's","me","more","most","my","myself","nor","of","on","once","only","or","other","ought","our","ours","ourselves","out","over","own","same","she","she'd","she'll","she's","should","so","some","such","than","that","that's","the","their","theirs","them","themselves","then","there","there's","these","they","they'd","they'll","they're","they've","this","those","through","to","too","under","until","up","very","was","we","we'd","we'll","we're","we've","were","what","what's","when","when's","where","where's","which","while","who","who's","whom","why","why's","with","would","you","you'd","you'll","you're","you've","your","yours","yourself","yourselves"]}},function(a,e,t){"use strict";var i=t(1130);a.exports=function(a){return i(a.getUrl().replace(/[-_]/g," "))}},function(a,e,t){"use strict";var i=t(1310),r=t(1311),o=t(192),s=t(1131),n=t(587),d=t(124),l=function(a,e){return a/e};a.exports=function(a){var e=void 0,t=a.getText(),c=a.getLocale(),u=d(c);if(""===t)return 0;t=i(t);var p=r(t),g=o(t);if(0===p||0===g)return 0;var m=s(t,c),f=l(g,p),b=m*(100/g);switch(u){case"nl":e=206.84-.77*b-.93*f;break;case"de":e=180-f-58.5*m/g;break;case"it":e=217-1.3*f-.6*b;break;case"ru":e=206.835-1.3*g/p-60.1*m/g;break;case"es":e=206.84-1.02*g/p-.6*b;break;case"fr":e=207-1.015*g/p-73.6*m/g;break;case"en":default:e=206.835-1.015*f-m/g*84.6}return n(e)}},function(a,e,t){"use strict";var i=t(56);a.exports=function(a){return a=a.replace(/\b[0-9]+\b/g,""),a=i(a),"."===a&&(a=""),a}},function(a,e,t){"use strict";var i=t(218);a.exports=function(a){for(var e=i(a),t=0,r=0;r<e.length;r++)t++;return t}},function(a,e,t){"use strict";var i=t(124),r=(t(41),t(1313)),o=t(1314),s=t(1315),n=t(1316),d=t(1317),l=t(1318),c=t(1319),u={de:r,nl:s,en:o,it:n,ru:d,fr:l,es:c};a.exports=function(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"en_US",e=i(a);return u.hasOwnProperty(e)?u[e]:u.en}},function(a,e){a.exports={vowels:"aeiouyäöüáéâàèîêâûôœ",deviations:{vowels:[{fragments:["ouil","deaux","deau$","oard","äthiop","euil","veau","eau$","ueue","lienisch","ance$","ence$","time$","once$","ziat","guette","ête","ôte$","[hp]omme$","[qdscn]ue$","aire$","ture$","êpe$","[^q]ui$","tiche$","vice$","oile$","zial","cruis","leas","coa[ct]","[^i]deal","[fw]eat","[lsx]ed$"],countModifier:-1},{fragments:["aau","a[äöüo]","äue","äeu","aei","aue","aeu","ael","ai[aeo]","saik","aismus","ä[aeoi]","auä","éa","e[äaoö]","ei[eo]","ee[aeiou]","eu[aäe]","eum$","eü","o[aäöü]","poet","oo[eo]","oie","oei[^l]","oeu[^f]","öa","[fgrz]ieu","mieun","tieur","ieum","i[aiuü]","[^l]iä","[^s]chien","io[bcdfhjkmpqtuvwx]","[bdhmprv]ion","[lr]ior","[^g]io[gs]","[dr]ioz","elioz","zioni","bio[lnorz]","iö[^s]","ie[ei]","rier$","öi[eg]","[^r]öisch","[^gqv]u[aeéioöuü]","quie$","quie[^s]","uäu","^us-","^it-","üe","naiv","aisch$","aische$","aische[nrs]$","[lst]ien","dien$","gois","[^g]rient","[aeiou]y[aeiou]","byi","yä","[a-z]y[ao]","yau","koor","scient","eriel","[dg]oing"],countModifier:1},{fragments:["eauü","ioi","ioo","ioa","iii","oai","eueu"],countModifier:1}],words:{full:[{word:"beach",syllables:1},{word:"beat",syllables:1},{word:"beau",syllables:1},{word:"beaune",syllables:1},{word:"belle",syllables:1},{word:"bouche",syllables:1},{word:"brake",syllables:1},{word:"cache",syllables:1},{word:"chaiselongue",syllables:2},{word:"choke",syllables:1},{word:"cordiale",syllables:3},{word:"core",syllables:1},{word:"dope",syllables:1},{word:"eat",syllables:1},{word:"eye",syllables:1},{word:"fake",syllables:1},{word:"fame",syllables:1},{word:"fatigue",syllables:2},{word:"femme",syllables:1},{word:"force",syllables:1},{word:"game",syllables:1},{word:"games",syllables:1},{word:"gate",syllables:1},{word:"grande",syllables:1},{word:"ice",syllables:1},{word:"ion",syllables:2},{word:"joke",syllables:1},{word:"jupe",syllables:1},{word:"maisch",syllables:1},{word:"maische",syllables:2},{word:"move",syllables:1},{word:"native",syllables:2},{word:"nice",syllables:1},{word:"one",syllables:1},{word:"pipe",syllables:1},{word:"prime",syllables:1},{word:"rate",syllables:1},{word:"rhythm",syllables:2},{word:"ride",syllables:1},{word:"rides",syllables:1},{word:"rien",syllables:2},{word:"save",syllables:1},{word:"science",syllables:2},{word:"siècle",syllables:1},{word:"site",syllables:1},{word:"suite",syllables:1},{word:"take",syllables:1},{word:"taupe",syllables:1},{word:"universe",syllables:3},{word:"vogue",syllables:1},{word:"wave",syllables:1},{word:"zion",syllables:2}],fragments:{global:[{word:"abreaktion",syllables:4},{word:"adware",syllables:2},{word:"affaire",syllables:3},{word:"aiguière",syllables:2},{word:"anisette",syllables:3},{word:"appeal",syllables:2},{word:"backstage",syllables:2},{word:"bankrate",syllables:2},{word:"baseball",syllables:2},{word:"basejump",syllables:2},{word:"beachcomber",syllables:3},{word:"beachvolleyball",syllables:4},{word:"beagle",syllables:2},{word:"beamer",syllables:2},{word:"beamer",syllables:2},{word:"béarnaise",syllables:3},{word:"beaufort",syllables:2},{word:"beaujolais",syllables:3},{word:"beauté",syllables:2},{word:"beauty",syllables:2},{word:"belgier",syllables:3},{word:"bestien",syllables:2},{word:"biskuit",syllables:2},{word:"bleach",syllables:1},{word:"blue",syllables:1},{word:"board",syllables:1},{word:"boat",syllables:1},{word:"bodysuit",syllables:3},{word:"bordelaise",syllables:3},{word:"break",syllables:1},{word:"build",syllables:1},{word:"bureau",syllables:2},{word:"business",syllables:2},{word:"cabrio",syllables:3},{word:"cabriolet",syllables:4},{word:"cachesexe",syllables:2},{word:"camaieu",syllables:3},{word:"canyon",syllables:2},{word:"case",syllables:1},{word:"catsuit",syllables:2},{word:"centime",syllables:3},{word:"chaise",syllables:2},{word:"champion",syllables:2},{word:"championat",syllables:3},{word:"chapiteau",syllables:3},{word:"chateau",syllables:2},{word:"château",syllables:2},{word:"cheat",syllables:1},{word:"cheese",syllables:1},{word:"chihuahua",syllables:3},{word:"choice",syllables:1},{word:"circonflexe",syllables:3},{word:"clean",syllables:1},{word:"cloche",syllables:1},{word:"close",syllables:1},{word:"clothes",syllables:1},{word:"commerce",syllables:2},{word:"crime",syllables:1},{word:"crossrate",syllables:2},{word:"cuisine",syllables:2},{word:"culotte",syllables:2},{word:"death",syllables:1},{word:"defense",syllables:2},{word:"détente",syllables:2},{word:"dread",syllables:1},{word:"dream",syllables:1},{word:"dresscode",syllables:2},{word:"dungeon",syllables:2},{word:"easy",syllables:2},{word:"engagement",syllables:3},{word:"entente",syllables:2},{word:"eye-catcher",syllables:3},{word:"eyecatcher",syllables:3},{word:"eyeliner",syllables:3},{word:"eyeword",syllables:2},{word:"fashion",syllables:2},{word:"feature",syllables:2},{word:"ferien",syllables:3},{word:"fineliner",syllables:3},{word:"fisheye",syllables:2},{word:"flake",syllables:1},{word:"flambeau",syllables:2},{word:"flatrate",syllables:2},{word:"fleece",syllables:1},{word:"fraîche",syllables:1},{word:"freak",syllables:1},{word:"frites",syllables:1},{word:"future",syllables:2},{word:"gaelic",syllables:2},{word:"game-show",syllables:2},{word:"gameboy",syllables:2},{word:"gamepad",syllables:2},{word:"gameplay",syllables:2},{word:"gameport",syllables:2},{word:"gameshow",syllables:2},{word:"garigue",syllables:2},{word:"garrigue",syllables:2},{word:"gatefold",syllables:2},{word:"gateway",syllables:2},{word:"geflashed",syllables:2},{word:"georgier",syllables:4},{word:"goal",syllables:1},{word:"grapefruit",syllables:2},{word:"great",syllables:1},{word:"groupware",syllables:2},{word:"gueule",syllables:1},{word:"guide",syllables:1},{word:"guilloche",syllables:2},{word:"gynäzeen",syllables:4},{word:"gynözeen",syllables:4},{word:"haircare",syllables:2},{word:"hardcore",syllables:2},{word:"hardware",syllables:2},{word:"head",syllables:1},{word:"hearing",syllables:2},{word:"heart",syllables:1},{word:"heavy",syllables:2},{word:"hedge",syllables:1},{word:"heroin",syllables:3},{word:"inclusive",syllables:3},{word:"initiative",syllables:4},{word:"inside",syllables:2},{word:"jaguar",syllables:3},{word:"jalousette",syllables:3},{word:"jeans",syllables:1},{word:"jeunesse",syllables:2},{word:"juice",syllables:1},{word:"jukebox",syllables:2},{word:"jumpsuit",syllables:2},{word:"kanarien",syllables:4},{word:"kapriole",syllables:4},{word:"karosserielinie",syllables:6},{word:"konopeen",syllables:4},{word:"lacrosse",syllables:2},{word:"laplace",syllables:2},{word:"late-",syllables:1},{word:"lead",syllables:1},{word:"league",syllables:1},{word:"learn",syllables:1},{word:"légière",syllables:2},{word:"lizenziat",syllables:4},{word:"load",syllables:1},{word:"lotterielos",syllables:4},{word:"lounge",syllables:1},{word:"lyzeen",syllables:3},{word:"madame",syllables:2},{word:"mademoiselle",syllables:3},{word:"magier",syllables:3},{word:"make-up",syllables:2},{word:"malware",syllables:2},{word:"management",syllables:3},{word:"manteau",syllables:2},{word:"mausoleen",syllables:4},{word:"mauve",syllables:1},{word:"medien",syllables:3},{word:"mesdames",syllables:2},{word:"mesopotamien",syllables:6},{word:"milliarde",syllables:3},{word:"missile",syllables:2},{word:"miszellaneen",syllables:5},{word:"mousse",syllables:1},{word:"mousseline",syllables:3},{word:"museen",syllables:3},{word:"musette",syllables:2},{word:"nahuatl",syllables:2},{word:"noisette",syllables:2},{word:"notebook",syllables:2},{word:"nuance",syllables:3},{word:"nuklease",syllables:4},{word:"odeen",syllables:3},{word:"offline",syllables:2},{word:"offside",syllables:2},{word:"oleaster",syllables:4},{word:"on-stage",syllables:2},{word:"online",syllables:2},{word:"orpheen",syllables:3},{word:"parforceritt",syllables:3},{word:"patiens",syllables:2},{word:"patient",syllables:2},{word:"peace",syllables:1},{word:"peace",syllables:1},{word:"peanuts",syllables:2},{word:"people",syllables:2},{word:"perineen",syllables:4},{word:"peritoneen",syllables:5},{word:"picture",syllables:2},{word:"piece",syllables:1},{word:"pipeline",syllables:2},{word:"plateau",syllables:2},{word:"poesie",syllables:3},{word:"poleposition",syllables:4},{word:"portemanteau",syllables:3},{word:"portemonnaie",syllables:3},{word:"primerate",syllables:2},{word:"primerate",syllables:2},{word:"primetime",syllables:2},{word:"protease",syllables:4},{word:"protein",syllables:3},{word:"prytaneen",syllables:4},{word:"quotient",syllables:2},{word:"radio",syllables:3},{word:"reader",syllables:2},{word:"ready",syllables:2},{word:"reallife",syllables:2},{word:"repeat",syllables:2},{word:"retake",syllables:2},{word:"rigole",syllables:2},{word:"risolle",syllables:2},{word:"road",syllables:1},{word:"roaming",syllables:2},{word:"roquefort",syllables:2},{word:"safe",syllables:1},{word:"savonette",syllables:3},{word:"sciencefiction",syllables:3},{word:"search",syllables:1},{word:"selfmade",syllables:2},{word:"septime",syllables:3},{word:"serapeen",syllables:4},{word:"service",syllables:2},{word:"serviette",syllables:2},{word:"share",syllables:1},{word:"shave",syllables:1},{word:"shore",syllables:1},{word:"sidebar",syllables:2},{word:"sideboard",syllables:2},{word:"sidekick",syllables:2},{word:"silhouette",syllables:3},{word:"sitemap",syllables:2},{word:"slide",syllables:1},{word:"sneak",syllables:1},{word:"soap",syllables:1},{word:"softcore",syllables:2},{word:"software",syllables:2},{word:"soutanelle",syllables:3},{word:"speak",syllables:1},{word:"special",syllables:2},{word:"spracheinstellung",syllables:5},{word:"spyware",syllables:2},{word:"square",syllables:1},{word:"stagediving",syllables:3},{word:"stakeholder",syllables:3},{word:"statement",syllables:2},{word:"steady",syllables:2},{word:"steak",syllables:1},{word:"stealth",syllables:1},{word:"steam",syllables:1},{word:"stoned",syllables:1},{word:"stracciatella",syllables:4},{word:"stream",syllables:1},{word:"stride",syllables:1},{word:"strike",syllables:1},{word:"suitcase",syllables:2},{word:"sweepstake",syllables:2},{word:"t-bone",syllables:2},{word:"t-shirt",syllables:1},{word:"tailgate",syllables:2},{word:"take-off",syllables:2},{word:"take-over",syllables:3},{word:"takeaway",syllables:3},{word:"takeoff",syllables:2},{word:"takeover",syllables:3},{word:"throat",syllables:1},{word:"time-out",syllables:2},{word:"timelag",syllables:2},{word:"timeline",syllables:2},{word:"timesharing",syllables:3},{word:"toast",syllables:1},{word:"traubenmaische",syllables:4},{word:"tristesse",syllables:2},{word:"usenet",syllables:2},{word:"varietät",syllables:4},{word:"varieté",syllables:4},{word:"vinaigrette",syllables:3},{word:"vintage",syllables:2},{word:"violett",syllables:3},{word:"voice",syllables:1},{word:"wakeboard",syllables:2},{word:"washed",syllables:1},{word:"waveboard",syllables:2},{word:"wear",syllables:1},{word:"wear",syllables:1},{word:"website",syllables:2},{word:"white",syllables:1},{word:"widescreen",syllables:2},{word:"wire",syllables:1},{word:"yacht",syllables:1},{word:"yorkshire",syllables:2},{word:"éprouvette",syllables:3,notFollowedBy:["n"]},{word:"galette",syllables:2,notFollowedBy:["n"]},{word:"gigue",syllables:1,notFollowedBy:["n"]},{word:"groove",syllables:1,notFollowedBy:["n"]},{word:"morgue",syllables:1,notFollowedBy:["n"]},{word:"paillette",syllables:2,notFollowedBy:["n"]},{word:"raclette",syllables:2,notFollowedBy:["n"]},{word:"roulette",syllables:2,notFollowedBy:["n"]},{word:"spike",syllables:1,notFollowedBy:["n"]},{word:"style",syllables:1,notFollowedBy:["n"]},{word:"tablette",syllables:2,notFollowedBy:["n"]},{word:"grunge",syllables:1,notFollowedBy:["r"]},{word:"size",syllables:1,notFollowedBy:["r"]},{word:"value",syllables:1,notFollowedBy:["r"]},{word:"quiche",syllables:1,notFollowedBy:["s"]},{word:"house",syllables:1,notFollowedBy:["n","s"]},{word:"sauce",syllables:1,notFollowedBy:["n","s"]},{word:"space",syllables:1,notFollowedBy:["n","s"]},{word:"airline",syllables:2,notFollowedBy:["n","r"]},{word:"autosave",syllables:3,notFollowedBy:["n","r"]},{word:"bagpipe",syllables:2,notFollowedBy:["n","r"]},{word:"bike",syllables:1,notFollowedBy:["n","r"]},{word:"dance",syllables:1,notFollowedBy:["n","r"]},{word:"deadline",syllables:2,notFollowedBy:["n","r"]},{word:"halfpipe",syllables:2,notFollowedBy:["n","r"]},{word:"headline",syllables:2,notFollowedBy:["n","r"]},{word:"home",syllables:1,notFollowedBy:["n","r"]},{word:"hornpipe",syllables:2,notFollowedBy:["n","r"]},{word:"hotline",syllables:2,notFollowedBy:["n","r"]},{word:"infoline",syllables:3,notFollowedBy:["n","r"]},{word:"inline",syllables:2,notFollowedBy:["n","r"]},{word:"kite",syllables:1,notFollowedBy:["n","r"]},{word:"rollerblade",syllables:1,notFollowedBy:["n","r"]},{word:"score",syllables:1,notFollowedBy:["n","r"]},{word:"skyline",syllables:2,notFollowedBy:["n","r"]},{word:"slackline",syllables:2,notFollowedBy:["n","r"]},{word:"slice",syllables:1,notFollowedBy:["n","r","s"]},{word:"snooze",syllables:1,notFollowedBy:["n","r"]},{word:"storyline",syllables:3,notFollowedBy:["n","r"]},{word:"office",syllables:2,notFollowedBy:["s","r"]},{word:"space",syllables:1,notFollowedBy:["n","s","r"]},{word:"tease",syllables:1,notFollowedBy:["n","s","r"]},{word:"cache",syllables:1,notFollowedBy:["t"]}],atBeginningOrEnd:[{word:"case",syllables:1},{word:"life",syllables:1},{word:"teak",syllables:1},{word:"team",syllables:1},{word:"creme",syllables:1,notFollowedBy:["n","r"]},{word:"crème",syllables:1,notFollowedBy:["n","r"]},{word:"drive",syllables:1,notFollowedBy:["n","r"]},{word:"skate",syllables:1,notFollowedBy:["n","r"]},{word:"update",syllables:2,notFollowedBy:["n","r"]},{word:"upgrade",syllables:2,notFollowedBy:["n","r"]}],atBeginning:[{word:"anion",syllables:3},{word:"facelift",syllables:2},{word:"jiu",syllables:1},{word:"pace",syllables:1},{word:"shake",syllables:1},{word:"tea",syllables:1},{word:"trade",syllables:1},{word:"deal",syllables:1}],atEnd:[{word:"face",syllables:1},{word:"file",syllables:1},{word:"mousse",syllables:1},{word:"plate",syllables:1},{word:"tape",syllables:1},{word:"byte",syllables:1,alsoFollowedBy:["s"]},{word:"cape",syllables:1,alsoFollowedBy:["s"]},{word:"five",syllables:1,alsoFollowedBy:["s"]},{word:"hype",syllables:1,alsoFollowedBy:["s"]},{word:"leak",syllables:1,alsoFollowedBy:["s"]},{word:"like",syllables:1,alsoFollowedBy:["s"]},{word:"make",syllables:1,alsoFollowedBy:["s"]},{word:"phone",syllables:1,alsoFollowedBy:["s"]},{word:"rave",syllables:1,alsoFollowedBy:["s"]},{word:"regime",syllables:2,alsoFollowedBy:["s"]},{word:"statue",syllables:2,alsoFollowedBy:["s"]},{word:"store",syllables:1,alsoFollowedBy:["s"]},{word:"wave",syllables:1,alsoFollowedBy:["s"]},{word:"date",syllables:1,notFollowedBy:["n"]},{word:"image",syllables:2,notFollowedBy:["s"]}]}}}}},function(a,e){a.exports={vowels:"aeiouy",deviations:{vowels:[{fragments:["cial","tia","cius","giu","ion","[^bdnprv]iou","sia$","[^aeiuot]{2,}ed$","[aeiouy][^aeiuoyts]{1,}e$","[a-z]ely$","[cgy]ed$","rved$","[aeiouy][dt]es?$","eau","ieu","oeu","[aeiouy][^aeiouydt]e[sd]?$","[aeouy]rse$","^eye"],countModifier:-1},{fragments:["ia","iu","ii","io","[aeio][aeiou]{2}","[aeiou]ing","[^aeiou]ying","ui[aeou]"],countModifier:1},{fragments:["^ree[jmnpqrsx]","^reele","^reeva","riet","dien","[aeiouym][bdp]le$","uei","uou","^mc","ism$","[^l]lien","^coa[dglx].","[^gqauieo]ua[^auieo]","dn't$","uity$","ie(r|st)","[aeiouw]y[aeiou]","[^ao]ire[ds]","[^ao]ire$"],countModifier:1},{fragments:["eoa","eoo","ioa","ioe","ioo"],countModifier:1}],words:{full:[{word:"business",syllables:2},{word:"coheiress",syllables:3},{word:"colonel",syllables:2},{word:"heiress",syllables:2},{word:"i.e",syllables:2},{word:"shoreline",syllables:2},{word:"simile",syllables:3},{word:"unheired",syllables:2},{word:"wednesday",syllables:2}],fragments:{global:[{word:"coyote",syllables:3},{word:"graveyard",syllables:2},{word:"lawyer",syllables:2}]}}}}},function(a,e){a.exports={vowels:"aáäâeéëêiíïîoóöôuúüûy",deviations:{vowels:[{fragments:["ue$","dge$","[tcp]iënt","ace$","[br]each","[ainpr]tiaal","[io]tiaan","gua[yc]","[^i]deal","tive$","load","[^e]coke","[^s]core$"],countModifier:-1},{fragments:["aä","aeu","aie","ao","ë","eo","eú","ieau","ea$","ea[^u]","ei[ej]","eu[iu]","ï","iei","ienne","[^l]ieu[^w]","[^l]ieu$","i[auiy]","stion","[^cstx]io","^sion","riè","oö","oa","oeing","oie","[eu]ü","[^q]u[aeèo]","uie","[bhnpr]ieel","[bhnpr]iël"],countModifier:1},{fragments:["[aeolu]y[aeéèoóu]"],countModifier:1}],words:{full:[{word:"bye",syllables:1},{word:"core",syllables:1},{word:"cure",syllables:1},{word:"dei",syllables:2},{word:"dope",syllables:1},{word:"dude",syllables:1},{word:"fake",syllables:1},{word:"fame",syllables:1},{word:"five",syllables:1},{word:"hole",syllables:1},{word:"least",syllables:1},{word:"lone",syllables:1},{word:"minute",syllables:2},{word:"move",syllables:1},{word:"nice",syllables:1},{word:"one",syllables:1},{word:"state",syllables:1},{word:"surplace",syllables:2},{word:"take",syllables:1},{word:"trade",syllables:1},{word:"wide",syllables:1}],fragments:{global:[{word:"adieu",syllables:2},{word:"airline",syllables:2},{word:"airmiles",syllables:2},{word:"alien",syllables:3},{word:"ambient",syllables:3},{word:"announcement",syllables:3},{word:"appearance",syllables:3},{word:"appeasement",syllables:3},{word:"atheneum",syllables:4},{word:"awesome",syllables:2},{word:"baccalaurei",syllables:5},{word:"baccalaureus",syllables:5},{word:"baseball",syllables:3},{word:"basejump",syllables:2},{word:"banlieue",syllables:3},{word:"bapao",syllables:2},{word:"barbecue",syllables:3},{word:"beamer",syllables:2},{word:"beanie",syllables:2},{word:"beat",syllables:1},{word:"belle",syllables:2},{word:"bête",syllables:1},{word:"bingewatch",syllables:2},{word:"blocnote",syllables:2},{word:"blue",syllables:1},{word:"board",syllables:1},{word:"break",syllables:1},{word:"broad",syllables:1},{word:"bulls-eye",syllables:2},{word:"business",syllables:2},{word:"byebye",syllables:2},{word:"cacao",syllables:2},{word:"caesar",syllables:2},{word:"camaieu",syllables:3},{word:"caoutchouc",syllables:2},{word:"carbolineum",syllables:5},{word:"catchphrase",syllables:1},{word:"carrier",syllables:3},{word:"cheat",syllables:1},{word:"cheese",syllables:1},{word:"circonflexe",syllables:3},{word:"clean",syllables:1},{word:"cloak",syllables:1},{word:"cobuying",syllables:3},{word:"comeback",syllables:2},{word:"comfortzone",syllables:3},{word:"communiqué",syllables:4},{word:"conopeum",syllables:4},{word:"console",syllables:2},{word:"corporate",syllables:3},{word:"coûte",syllables:1},{word:"creamer",syllables:2},{word:"crime",syllables:1},{word:"cruesli",syllables:2},{word:"deadline",syllables:2},{word:"deautoriseren",syllables:6},{word:"deuce",syllables:1},{word:"deum",syllables:2},{word:"dirndl",syllables:2},{word:"dread",syllables:2},{word:"dreamteam",syllables:2},{word:"drone",syllables:1},{word:"enquête",syllables:3},{word:"escape",syllables:2},{word:"exposure",syllables:3},{word:"extranei",syllables:4},{word:"extraneus",syllables:4},{word:"eyecatcher",syllables:3},{word:"eyeliner",syllables:3},{word:"eyeopener",syllables:4},{word:"eyetracker",syllables:3},{word:"eyetracking",syllables:3},{word:"fairtrade",syllables:2},{word:"fauteuil",syllables:2},{word:"feature",syllables:2},{word:"feuilletee",syllables:3},{word:"feuilleton",syllables:3},{word:"fisheye",syllables:2},{word:"fineliner",syllables:3},{word:"finetunen",syllables:3},{word:"forehand",syllables:2},{word:"freak",syllables:1},{word:"fusioneren",syllables:4},{word:"gayparade",syllables:3},{word:"gaypride",syllables:2},{word:"goal",syllables:1},{word:"grapefruit",syllables:2},{word:"gruyère",syllables:3},{word:"guele",syllables:1},{word:"guerrilla",syllables:3},{word:"guest",syllables:1},{word:"hardware",syllables:2},{word:"haute",syllables:1},{word:"healing",syllables:2},{word:"heater",syllables:2},{word:"heavy",syllables:2},{word:"hoax",syllables:1},{word:"hotline",syllables:2},{word:"idee-fixe",syllables:3},{word:"inclusive",syllables:3},{word:"inline",syllables:2},{word:"intake",syllables:2},{word:"intensive",syllables:3},{word:"jeans",syllables:1},{word:"Jones",syllables:1},{word:"jubileum",syllables:4},{word:"kalfsribeye",syllables:3},{word:"kraaiennest",syllables:3},{word:"lastminute",syllables:3},{word:"learning",syllables:2},{word:"league",syllables:1},{word:"line-up",syllables:2},{word:"linoleum",syllables:4},{word:"load",syllables:1},{word:"loafer",syllables:2},{word:"longread",syllables:2},{word:"lookalike",syllables:3},{word:"louis",syllables:3},{word:"lyceum",syllables:3},{word:"magazine",syllables:3},{word:"mainstream",syllables:2},{word:"make-over",syllables:3},{word:"make-up",syllables:2},{word:"malware",syllables:2},{word:"marmoleum",syllables:4},{word:"mausoleum",syllables:4},{word:"medeauteur",syllables:4},{word:"midlifecrisis",syllables:4},{word:"migraineaura",syllables:5},{word:"milkshake",syllables:2},{word:"millefeuille",syllables:4},{word:"mixed",syllables:1},{word:"muesli",syllables:2},{word:"museum",syllables:3},{word:"must-have",syllables:2},{word:"must-read",syllables:2},{word:"notebook",syllables:2},{word:"nonsense",syllables:2},{word:"nowhere",syllables:2},{word:"nurture",syllables:2},{word:"offline",syllables:2},{word:"oneliner",syllables:3},{word:"onesie",syllables:2},{word:"online",syllables:2},{word:"opinion",syllables:3},{word:"paella",syllables:3},{word:"pacemaker",syllables:3},{word:"panache",syllables:2},{word:"papegaaienneus",syllables:5},{word:"passe-partout",syllables:3},{word:"peanuts",syllables:2},{word:"perigeum",syllables:4},{word:"perineum",syllables:4},{word:"perpetuum",syllables:4},{word:"petroleum",syllables:4},{word:"phone",syllables:3},{word:"picture",syllables:2},{word:"placemat",syllables:2},{word:"porte-manteau",syllables:3},{word:"portefeuille",syllables:4},{word:"presse-papier",syllables:3},{word:"primetime",syllables:2},{word:"queen",syllables:1},{word:"questionnaire",syllables:3},{word:"queue",syllables:1},{word:"reader",syllables:2},{word:"reality",syllables:3},{word:"reallife",syllables:2},{word:"remake",syllables:2},{word:"repeat",syllables:2},{word:"repertoire",syllables:3},{word:"research",syllables:2},{word:"reverence",syllables:3},{word:"ribeye",syllables:2},{word:"ringtone",syllables:3},{word:"road",syllables:1},{word:"roaming",syllables:2},{word:"sciencefiction",syllables:4},{word:"selfmade",syllables:2},{word:"sidekick",syllables:2},{word:"sightseeing",syllables:3},{word:"skyline",syllables:2},{word:"smile",syllables:1},{word:"sneaky",syllables:2},{word:"software",syllables:2},{word:"sparerib",syllables:2},{word:"speaker",syllables:2},{word:"spread",syllables:1},{word:"statement",syllables:2},{word:"steak",syllables:1},{word:"steeplechase",syllables:3},{word:"stonewash",syllables:2},{word:"store",syllables:1},{word:"streaken",syllables:2},{word:"stream",syllables:1},{word:"streetware",syllables:1},{word:"supersoaker",syllables:4},{word:"surprise-party",syllables:4},{word:"sweater",syllables:2},{word:"teaser",syllables:2},{word:"tenue",syllables:2},{word:"template",syllables:2},{word:"timeline",syllables:2},{word:"tissue",syllables:2},{word:"toast",syllables:1},{word:"tête-à-tête",syllables:3},{word:"typecast",syllables:2},{word:"unique",syllables:2},{word:"ureum",syllables:3},{word:"vibe",syllables:1},{word:"vieux",syllables:1},{word:"ville",syllables:1},{word:"vintage",syllables:2},{word:"wandelyup",syllables:3},{word:"wiseguy",syllables:2},{word:"wake-up-call",syllables:3},{word:"webcare",syllables:2},{word:"winegum",syllables:2},{word:"base",syllables:1,notFollowedBy:["e","n","r"]},{word:"game",syllables:1,notFollowedBy:["n","l","r"]},{word:"style",syllables:1,notFollowedBy:["n","s"]},{word:"douche",syllables:1,notFollowedBy:["n","s"]},{word:"space",syllables:1,notFollowedBy:["n","s"]},{word:"striptease",syllables:2,notFollowedBy:["n","s"]},{word:"jive",syllables:1,notFollowedBy:["n","r"]},{word:"keynote",syllables:2,notFollowedBy:["n","r"]},{word:"mountainbike",syllables:3,notFollowedBy:["n","r"]},{word:"face",syllables:1,notFollowedBy:["n","t"]},{word:"challenge",syllables:2,notFollowedBy:["n","r","s"]},{word:"cruise",syllables:1,notFollowedBy:["n","r","s"]},{word:"house",syllables:1,notFollowedBy:["n","r","s"]},{word:"dance",syllables:1,notFollowedBy:["n","r","s"]},{word:"franchise",syllables:2,notFollowedBy:["n","r","s"]},{word:"freelance",syllables:2,notFollowedBy:["n","r","s"]},{word:"lease",syllables:1,notFollowedBy:["n","r","s"]},{word:"linedance",syllables:2,notFollowedBy:["n","r","s"]},{word:"lounge",syllables:1,notFollowedBy:["n","r","s"]},{word:"merchandise",syllables:3,notFollowedBy:["n","r","s"]},{word:"performance",syllables:3,notFollowedBy:["n","r","s"]},{word:"release",syllables:2,notFollowedBy:["n","r","s"]},{word:"resource",syllables:2,notFollowedBy:["n","r","s"]},{word:"cache",syllables:1,notFollowedBy:["c","l","n","t","x"]},{word:"office",syllables:2,notFollowedBy:["r","s"]},{word:"close",syllables:1,notFollowedBy:["r","t"]}],atBeginningOrEnd:[{word:"byte",syllables:1},{word:"cake",syllables:1},{word:"care",syllables:1},{word:"coach",syllables:1},{word:"coat",syllables:1},{word:"earl",syllables:1},{word:"foam",syllables:1},{word:"gate",syllables:1},{word:"head",syllables:1},{word:"home",syllables:1},{word:"live",syllables:1},{word:"safe",syllables:1},{word:"site",syllables:1},{word:"soap",syllables:1},{word:"teak",syllables:1},{word:"team",syllables:1},{word:"wave",syllables:1},{word:"brace",syllables:1,notFollowedBy:["s"]},{word:"case",syllables:1,notFollowedBy:["s"]},{word:"fleece",syllables:1,notFollowedBy:["s"]},{word:"service",syllables:2,notFollowedBy:["s"]},{word:"voice",syllables:1,notFollowedBy:["s"]},{word:"kite",syllables:1,notFollowedBy:["n","r"]},{word:"skate",syllables:1,notFollowedBy:["n","r"]},{word:"race",syllables:1,notFollowedBy:["n","r","s"]}],atBeginning:[{word:"coke",syllables:1},{word:"deal",syllables:1},{word:"image",syllables:2,notFollowedBy:["s"]}],atEnd:[{word:"force",syllables:1},{word:"tea",syllables:1},{word:"time",syllables:1},{word:"date",syllables:1,alsoFollowedBy:["s"]},{word:"hype",syllables:1,alsoFollowedBy:["s"]},{word:"quote",syllables:1,alsoFollowedBy:["s"]},{word:"tape",syllables:1,alsoFollowedBy:["s"]},{word:"upgrade",syllables:2,alsoFollowedBy:["s"]}]}}}}},function(a,e){a.exports={vowels:"aeiouyàèéìîïòù",deviations:{vowels:[{fragments:["a[íúeo]","e[íúao]","o[íúaeè]","í[aeo]","ú[aeo]","ai[aeou]","àii","aiì","au[eé]","ei[aàeèé]","èia","ia[èiì]","iài","oi[aàeèo]","òia","óio","uí","ui[aàó]","ùio","ouï","coo[cmnpr]","lcool","coòf","[aeuioìùèéàò]y[aeuioíìùèàó]","ìa$","èa$"],countModifier:1},{fragments:["aoi","aoì","ioe","riae","ïa$"],countModifier:1}],words:{full:[{word:"via",syllables:2},{word:"guaime",syllables:3},{word:"guaina",syllables:3},{word:"coke",syllables:1},{word:"frame",syllables:1},{word:"goal",syllables:1},{word:"live",syllables:1},{word:"mouse",syllables:1},{word:"coon",syllables:1}],fragments:{global:[{word:"mayoyào",syllables:4},{word:"eye-liner",syllables:3},{word:"scooner",syllables:2},{word:"cocoon",syllables:2},{word:"silhouette",syllables:4},{word:"circuíto",syllables:4},{word:"cruento",syllables:3},{word:"cruènto",syllables:3},{word:"rituale",syllables:4},{word:"duello",syllables:3},{word:"fuorviante",syllables:4},{word:"league",syllables:1},{word:"leader",syllables:2},{word:"appeal",syllables:2},{word:"backstage",syllables:2},{word:"badge",syllables:1},{word:"baseball",syllables:2},{word:"beauty",syllables:2},{word:"bondage",syllables:2,notFollowedBy:["s"]},{word:"break",syllables:1},{word:"brokerage",syllables:3},{word:"business",syllables:2},{word:"cache",syllables:2,notFollowedBy:["s","r"]},{word:"cashmere",syllables:2},{word:"challenge",syllables:2,notFollowedBy:["s","r"]},{word:"charleston",syllables:2},{word:"cheap",syllables:1},{word:"cottage",syllables:2,notFollowedBy:["s"]},{word:"cruise",syllables:1,notFollowedBy:["s","r"]},{word:"device",syllables:2,notFollowedBy:["s"]},{word:"downgrade",syllables:2,notFollowedBy:["d"]},{word:"download",syllables:2},{word:"drive",syllables:1,notFollowedBy:["r"]},{word:"endorsement",syllables:3},{word:"drive",syllables:1,notFollowedBy:["r"]},{word:"executive",syllables:4},{word:"firmware",syllables:2},{word:"fobia",syllables:3},{word:"float",syllables:1},{word:"freak",syllables:1},{word:"game",syllables:1,notFollowedBy:["r"]},{word:"guideline",syllables:2},{word:"hardware",syllables:2},{word:"homeless",syllables:2},{word:"hardware",syllables:1,notFollowedBy:["r"]},{word:"hardware",syllables:1,notFollowedBy:["r"]},{word:"hardware",syllables:1,notFollowedBy:["r"]},{word:"hospice",syllables:2,notFollowedBy:["s"]},{word:"impeachment",syllables:3},{word:"jeans",syllables:1},{word:"jukebox",syllables:2},{word:"leasing",syllables:2},{word:"lease",syllables:1,notFollowedBy:["s"]},{word:"lounge",syllables:1,notFollowedBy:["r","s"]},{word:"magazine",syllables:3},{word:"notebook",syllables:2},{word:"office",syllables:2,notFollowedBy:["r","s"]},{word:"online",syllables:2},{word:"offline",syllables:2},{word:"overcoat",syllables:3},{word:"offside",syllables:2,notFollowedBy:["r"]},{word:"overdrive",syllables:3},{word:"oversize",syllables:3},{word:"pacemaker",syllables:3},{word:"package",syllables:2,notFollowedBy:["r","s"]},{word:"pancake",syllables:2},{word:"performance",syllables:3},{word:"premium",syllables:3},{word:"ragtime",syllables:2},{word:"reading",syllables:2},{word:"residence",syllables:3,notFollowedBy:["s"]},{word:"roaming",syllables:2},{word:"rollerblade",syllables:3,notFollowedBy:["r"]},{word:"royalty",syllables:3},{word:"shake",syllables:1,notFollowedBy:["r"]},{word:"shale",syllables:1},{word:"shampooing",syllables:3},{word:"shareware",syllables:2},{word:"shearling",syllables:2},{word:"sidecar",syllables:2},{word:"hardware",syllables:1,notFollowedBy:["r"]},{word:"skate",syllables:1,notFollowedBy:["n","r"]},{word:"trial",syllables:2},{word:"toast",syllables:1},{word:"texture",syllables:2},{word:"testimonial",syllables:5},{word:"teaser",syllables:2},{word:"sweater",syllables:2},{word:"suspense",syllables:2,notFollowedBy:["r"]},{word:"subroutine",syllables:3},{word:"steadicam",syllables:3},{word:"spread",syllables:1},{word:"speaker",syllables:2},{word:"board",syllables:1},{word:"sneaker",syllables:2},{word:"smartphone",syllables:2},{word:"slide",syllables:1,notFollowedBy:["r"]},{word:"skyline",syllables:2},{word:"skinhead",syllables:2},{word:"update",syllables:2,notFollowedBy:["r"]},{word:"upgrade",syllables:2,notFollowedBy:["r"]},{word:"upload",syllables:2},{word:"vintage",syllables:2},{word:"wakeboard",syllables:2},{word:"website",syllables:2},{word:"welfare",syllables:2},{word:"yeah",syllables:1},{word:"yearling",syllables:2}],atEnd:[{word:"byte",syllables:1,alsoFollowedBy:["s"]},{word:"bite",syllables:1,alsoFollowedBy:["s"]},{word:"beat",syllables:1,alsoFollowedBy:["s"]},{word:"coach",syllables:1},{word:"line",syllables:1,alsoFollowedBy:["s"]}],atBeginning:[{word:"cheese",syllables:1},{word:"head",syllables:1},{word:"streak",syllables:1}],atBeginningOrEnd:[{word:"team",syllables:1},{word:"stream",syllables:1}]}}}}},function(a,e){a.exports={vowels:"аоиеёэыуюя",deviations:{vowels:[{fragments:["[аоиеёэыуюя][аоиеёэыуюя]"],countModifier:1},{fragments:["[аоиеёэыуюя][аоиеёэыуюя][аоиеёэыуюя]"],countModifier:1}],words:{full:[],fragments:[]}}}},function(a,e){a.exports={vowels:"aeiouyàâéèêëîïûüùôæœ",deviations:{vowels:[{fragments:["[ptf]aon(ne)?[s]?$"],countModifier:-1},{fragments:["aoul","[^eéiïou]e(s|nt)?$","[qg]ue(s|nt)?$"],countModifier:-1},{fragments:["o[ëaéèï]"],countModifier:1},{fragments:["a[eéèïüo]","é[aâèéiîuo]","ii[oe]","[aeéuo]y[aâeéèoui]","coe[^u]","zoo","coop","coord","poly[ae]","[bcd]ry[oa]","[bcdfgptv][rl](ou|u|i)[aéèouâ]","ouez","[blmnt]uio","uoia","ment$","yua","[bcdfgptv][rl](i|u|eu)e([ltz]|r[s]?$|n[^t])","[^aeiuyàâéèêëîïûüùôæœqg]uie[rz]$"],countModifier:1}],words:{full:[{word:"ok",syllables:2},{word:"eyeliner",syllables:3},{word:"coati",syllables:3},{word:"que",syllables:1},{word:"flouer",syllables:2},{word:"relouer",syllables:3},{word:"évaluons",syllables:4},{word:"instituons",syllables:4},{word:"atténuons",syllables:4},{word:"remuons",syllables:3},{word:"redestribuons",syllables:5},{word:"suons",syllables:2},{word:"reconstituons",syllables:5},{word:"dent",syllables:1},{word:"fréquent",syllables:2},{word:"permanent",syllables:3},{word:"mécontent",syllables:3},{word:"grandiloquent",syllables:4},{word:"continent",syllables:3},{word:"occident",syllables:3},{word:"référent",syllables:3},{word:"indigent",syllables:3},{word:"concurrent",syllables:3},{word:"gent",syllables:1},{word:"différent",syllables:3},{word:"strident",syllables:2},{word:"équivalent",syllables:4},{word:"ardent",syllables:2},{word:"impotent",syllables:3},{word:"argent",syllables:2},{word:"immanent",syllables:3},{word:"indécent",syllables:3},{word:"effluent",syllables:3},{word:"agent",syllables:2},{word:"dolent",syllables:2},{word:"contingent",syllables:3},{word:"impénitent",syllables:4},{word:"adjacent",syllables:3},{word:"incident",syllables:3},{word:"content",syllables:2},{word:"incontinent",syllables:4},{word:"éloquent",syllables:3},{word:"convent",syllables:2},{word:"dissident",syllables:3},{word:"innocent",syllables:3},{word:"ventripotent",syllables:4},{word:"convalescent",syllables:4},{word:"accident",syllables:3},{word:"récent",syllables:2},{word:"absent",syllables:2},{word:"décadent",syllables:3},{word:"réticent",syllables:3},{word:"évent",syllables:2},{word:"souvent",syllables:2},{word:"intelligent",syllables:3},{word:"inhérent",syllables:3},{word:"adolescent",syllables:4},{word:"couvent",syllables:2},{word:"cent",syllables:1},{word:"urgent",syllables:2},{word:"précédent",syllables:3},{word:"imprudent",syllables:3},{word:"torrent",syllables:2},{word:"abstinent",syllables:3},{word:"indifférent",syllables:4},{word:"excédent",syllables:3},{word:"déférent",syllables:3},{word:"incandescent",syllables:4},{word:"intermittent",syllables:4},{word:"présent",syllables:3},{word:"astringent",syllables:3},{word:"trident",syllables:2},{word:"impertinent",syllables:4},{word:"détergent",syllables:3},{word:"évident",syllables:3},{word:"influent",syllables:3},{word:"pertinent",syllables:3},{word:"subséquent",syllables:3},{word:"féculent",syllables:3},{word:"déférent",syllables:3},{word:"ambivalent",syllables:4},{word:"omnipotent",syllables:4},{word:"décent",syllables:2},{word:"compétent",syllables:3},{word:"adhérent",syllables:3},{word:"afférent",syllables:3},{word:"luminescent",syllables:4},{word:"lent",syllables:1},{word:"apparent",syllables:3},{word:"effervescent",syllables:4},{word:"parent",syllables:2},{word:"pénitent",syllables:3},{word:"fluorescent",syllables:3},{word:"impudent",syllables:3},{word:"diligent",syllables:3},{word:"entregent",syllables:3},{word:"flatulent",syllables:3},{word:"serpent",syllables:2},{word:"violent",syllables:2},{word:"somnolent",syllables:3},{word:"déliquescent",syllables:4},{word:"proéminent",syllables:4},{word:"résident",syllables:3},{word:"putrescent",syllables:3},{word:"talent",syllables:2},{word:"spumescent",syllables:3},{word:"tangent",syllables:2},{word:"chiendent",syllables:2},{word:"négligent",syllables:3},{word:"antécédent",syllables:4},{word:"régent",syllables:2},{word:"polyvalent",syllables:4},{word:"latent",syllables:2},{word:"opulent",syllables:3},{word:"arpent",syllables:2},{word:"adent",syllables:2},{word:"concupiscent",syllables:4},{word:"sanguinolent",syllables:4},{word:"opalescent",syllables:4},{word:"prudent",syllables:2},{word:"conséquent",syllables:3},{word:"pourcent",syllables:2},{word:"transparent",syllables:3},{word:"sergent",syllables:2},{word:"diligent",syllables:3},{word:"inconséquent",syllables:4},{word:"turbulent",syllables:3},{word:"fervent",syllables:2},{word:"truculent",syllables:3},{word:"interférent",syllables:4},{word:"confluent",syllables:3},{word:"succulent",syllables:3},{word:"purulent",syllables:3},{word:"patent",syllables:2},{word:"indulgent",syllables:3},{word:"engoulevent",syllables:4},{word:"auvent",syllables:2},{word:"président",syllables:3},{word:"confident",syllables:3},{word:"incompétent",syllables:4},{word:"accent",syllables:2},{word:"arborescent",syllables:4},{word:"contrevent",syllables:3},{word:"cohérent",syllables:3},{word:"relent",syllables:2},{word:"insolent",syllables:3},{word:"virulent",syllables:3},{word:"rémanent",syllables:3},{word:"vent",syllables:1},{word:"turgescent",syllables:3},{word:"incohérent",syllables:4},{word:"malcontent",syllables:3},{word:"lactescent",syllables:3},{word:"inintelligent",syllables:5},{word:"omniprésent",syllables:4},{word:"récurrent",syllables:3},{word:"covalent",syllables:3},{word:"éminent",syllables:3},{word:"onguent",syllables:2},{word:"indolent",syllables:3},{word:"event",syllables:2},{word:"corpulent",syllables:3},{word:"divergent",syllables:3},{word:"excellent",syllables:3},{word:"phosphorescent",syllables:4},{word:"évanescent",syllables:4},{word:"paravent",syllables:3},{word:"avent",syllables:2},{word:"iridescent",syllables:4},{word:"prénomment",syllables:2},{word:"consument",syllables:2},{word:"dégomment",syllables:2},{word:"enveniment",syllables:3},{word:"proclament",syllables:2},{word:"chôment",syllables:1},{word:"infirment",syllables:2},{word:"briment",syllables:1},{word:"fument",syllables:1},{word:"acclament",syllables:2},{word:"referment",syllables:2},{word:"impriment",syllables:2},{word:"paument",syllables:1},{word:"déciment",syllables:2},{word:"accoutument",syllables:3},{word:"essaiment",syllables:2},{word:"ferment",syllables:1},{word:"dépriment",syllables:2},{word:"raniment",syllables:2},{word:"programment",syllables:2},{word:"fantasment",syllables:2},{word:"animent",syllables:2},{word:"affirment",syllables:2},{word:"filment",syllables:1},{word:"dament",syllables:1},{word:"parsèment",syllables:3},{word:"priment",syllables:1},{word:"assomment",syllables:2},{word:"rament",syllables:1},{word:"pâment",syllables:1},{word:"conforment",syllables:2},{word:"embaument",syllables:2},{word:"calment",syllables:1},{word:"blasphèment",syllables:2},{word:"désarment",syllables:2},{word:"consomment",syllables:2},{word:"griment",syllables:1},{word:"abîment",syllables:2},{word:"blâment",syllables:1},{word:"endorment",syllables:2},{word:"allument",syllables:2},{word:"blâment",syllables:1},{word:"confirment",syllables:2},{word:"escriment",syllables:2},{word:"trament",syllables:1},{word:"hument",syllables:1},{word:"surnomment",syllables:2},{word:"écument",syllables:2},{word:"triment",syllables:1},{word:"estiment",syllables:2},{word:"rallument",syllables:2},{word:"enflamment",syllables:2},{word:"riment",syllables:1},{word:"plument",syllables:1},{word:"suppriment",syllables:2},{word:"gomment",syllables:1},{word:"affament",syllables:2},{word:"friment",syllables:1},{word:"clament",syllables:1},{word:"dorment",syllables:1},{word:"dénomment",syllables:2},{word:"entament",syllables:2},{word:"arriment",syllables:2},{word:"résument",syllables:2},{word:"enrhument",syllables:2},{word:"rendorment",syllables:2},{word:"compriment",syllables:2},{word:"aiment",syllables:1},{word:"rythment",syllables:1},{word:"périment",syllables:2},{word:"réclament",syllables:2},{word:"subliment",syllables:2},{word:"brument",syllables:1},{word:"embrument",syllables:2},{word:"germent",syllables:1},{word:"renferment",syllables:2},{word:"sèment",syllables:1},{word:"reforment",syllables:2},{word:"liment",syllables:1},{word:"cament",syllables:1},{word:"parfument",syllables:2},{word:"arment",syllables:1},{word:"brament",syllables:1},{word:"déforment",syllables:2},{word:"assument",syllables:2},{word:"crament",syllables:1},{word:"exclament",syllables:2},{word:"forment",syllables:1},{word:"diffament",syllables:2},{word:"somment",syllables:1},{word:"oppriment",syllables:2},{word:"miment",syllables:1},{word:"enferment",syllables:2},{word:"nomment",syllables:1},{word:"reprogramment",syllables:3},{word:"transforment",syllables:2},{word:"expriment",syllables:2},{word:"informent",syllables:2},{word:"légitiment",syllables:3},{word:"de",syllables:1},{word:"le",syllables:1},{word:"je",syllables:1},{word:"te",syllables:1},{word:"ce",syllables:1},{word:"ne",syllables:1},{word:"re",syllables:1},{word:"me",syllables:1},{word:"se",syllables:1},{word:"ses",syllables:1},{word:"mes",syllables:1},{word:"mes",syllables:1},{word:"ces",syllables:1},{word:"des",syllables:1},{word:"tes",syllables:1},{word:"les",syllables:1},{word:"oye",syllables:1},{word:"es",syllables:1},{word:"remerciâmes",syllables:4},{word:"herniaires",syllables:3},{word:"autopsiais",syllables:4},{word:"août",syllables:1}],fragments:{global:[{word:"business",syllables:2},{word:"skate",syllables:1},{word:"board",syllables:1},{word:"coach",syllables:1},{word:"roadster",syllables:2},{word:"soap",syllables:1},{word:"goal",syllables:1},{word:"coaltar",syllables:2},{word:"loader",syllables:2},{word:"coat",syllables:1},{word:"baseball",syllables:2},{word:"foëne",syllables:1},{word:"cacaoyer",syllables:4},{word:"scoop",syllables:1},{word:"zoom",syllables:1},{word:"bazooka",syllables:3},{word:"tatoueu",syllables:3},{word:"cloueu",syllables:2},{word:"déchouer",syllables:2},{word:"écrouelles",syllables:3},{word:"maestria",syllables:3},{word:"maestro",syllables:3},{word:"vitae",syllables:3},{word:"paella",syllables:3},{word:"vae",syllables:2},{word:"thaï",syllables:1},{word:"skaï",syllables:1},{word:"masaï",syllables:2},{word:"samouraï",syllables:3},{word:"bonsaï",syllables:2},{word:"bonzaï",syllables:2},{word:"aïkido",syllables:3},{word:"daïquiri",syllables:3},{word:"pagaïe",syllables:2},{word:"chiite",syllables:2},{word:"pays",syllables:2},{word:"antiaérien",syllables:5},{word:"bleui",syllables:2},{word:"remerciai",syllables:4},{word:"monstrueu",syllables:3},{word:"niakoué",syllables:3},{word:"minoen",syllables:3},{word:"groenlandais",syllables:4},{word:"remerciant",syllables:4},{word:"skiant",syllables:2},{word:"ruade",syllables:2},{word:"weltanschauung",syllables:4}],atBeginning:[{word:"roast",syllables:1},{word:"taï",syllables:1}],atEnd:[{word:"écrouer",syllables:3},{word:"clouer",syllables:2}]}}}}},function(a,e){a.exports={vowels:"aeiouáéíóúü",deviations:{vowels:[{fragments:["i[ií]","[íú][aeo]","o[aáeéíóú]","uu","flu[iea]","ru[ie]","eio","eu[aá]","oi[aó]","[iu]ei","ui[éu]","^anti[aeoá]","^zoo","coo","microo"],countModifier:1},{fragments:["[eéó][aáeéíoóú]"],countModifier:1},{fragments:["[aáü][aáeéiíoóú]","eoi","oeu","[eu]au"],countModifier:1}],words:{full:[{word:"scooter",syllables:2},{word:"y",syllables:1},{word:"beat",syllables:1},{word:"via",syllables:2},{word:"ok",syllables:2}],fragments:{global:[{word:"business",syllables:2},{word:"coach",syllables:1},{word:"reggae",syllables:2},{word:"mail",syllables:1},{word:"airbag",syllables:2},{word:"affaire",syllables:2},{word:"training",syllables:2},{word:"hawaian",syllables:3},{word:"saharaui",syllables:3},{word:"nouveau",syllables:2},{word:"chapeau",syllables:2},{word:"free",syllables:1},{word:"green",syllables:1},{word:"jeep",syllables:1},{word:"toffee",syllables:2},{word:"tweet",syllables:1},{word:"tweed",syllables:1},{word:"semiautomátic",syllables:6},{word:"estadou",syllables:4},{word:"broadway",syllables:2},{word:"board",syllables:1},{word:"load",syllables:1},{word:"roaming",syllables:2},{word:"heavy",syllables:2},{word:"break",syllables:1}]}}}}},function(a,e,t){function i(a){return function(e,t,i){var n=Object(e);if(!o(e)){var d=r(t,3);e=s(e),t=function(a){return d(n[a],a,n)}}var l=a(e,t,i);return l>-1?n[d?e[l]:l]:void 0}}var r=t(276),o=t(75),s=t(193);a.exports=i},function(a,e){function t(a,e){for(var t,i=-1,r=a.length;++i<r;){var o=e(a[i]);void 0!==o&&(t=void 0===t?o:t+o)}return t}a.exports=t},function(a,e,t){"use strict";var i=t(1323),r=t(41),o=t(24),s=function(a){this.countSteps=[],r(a)||this.createSyllableCountSteps(a.deviations.vowels)};s.prototype.createSyllableCountSteps=function(a){o(a,function(a){this.countSteps.push(new i(a))}.bind(this))},s.prototype.getAvailableSyllableCountSteps=function(){return this.countSteps},s.prototype.countSyllables=function(a){var e=0;return o(this.countSteps,function(t){e+=t.countSyllables(a)}),e},a.exports=s},function(a,e,t){"use strict";var i=t(41),r=t(398),o=function(a){this._hasRegex=!1,this._regex="",this._multiplier="",this.createRegex(a)};o.prototype.hasRegex=function(){return this._hasRegex},o.prototype.createRegex=function(a){i(a)||i(a.fragments)||(this._hasRegex=!0,this._regex=r(a.fragments,!0),this._multiplier=a.countModifier)},o.prototype.getRegex=function(){return this._regex},o.prototype.countSyllables=function(a){if(this._hasRegex){return(a.match(this._regex)||[]).length*this._multiplier}return 0},a.exports=o},function(a,e,t){"use strict";function i(a){this._location=a.location,this._fragment=a.word,this._syllables=a.syllables,this._regex=null,this._options=o(a,["notFollowedBy","alsoFollowedBy"])}var r=t(41),o=t(1325);i.prototype.createRegex=function(){var a="",e=this._options,t=this._fragment;switch(r(e.notFollowedBy)||(t+="(?!["+e.notFollowedBy.join("")+"])"),r(e.alsoFollowedBy)||(t+="["+e.alsoFollowedBy.join("")+"]?"),this._location){case"atBeginning":a="^"+t;break;case"atEnd":a=t+"$";break;case"atBeginningOrEnd":a="(^"+t+")|("+t+"$)";break;default:a=t}this._regex=new RegExp(a)},i.prototype.getRegex=function(){return null===this._regex&&this.createRegex(),this._regex},i.prototype.occursIn=function(a){return this.getRegex().test(a)},i.prototype.removeFrom=function(a){return a.replace(this._fragment," ")},i.prototype.getSyllables=function(){return this._syllables},a.exports=i},function(a,e,t){var i=t(1326),r=t(1329),o=r(function(a,e){return null==a?{}:i(a,e)});a.exports=o},function(a,e,t){function i(a,e){return r(a,e,function(e,t){return o(a,t)})}var r=t(1327),o=t(1102);a.exports=i},function(a,e,t){function i(a,e,t){for(var i=-1,n=e.length,d={};++i<n;){var l=e[i],c=r(a,l);t(c,l)&&o(d,s(l,a),c)}return d}var r=t(1033),o=t(1328),s=t(733);a.exports=i},function(a,e,t){function i(a,e,t,i){if(!n(a))return a;e=o(e,a);for(var l=-1,c=e.length,u=c-1,p=a;null!=p&&++l<c;){var g=d(e[l]),m=t;if(l!=u){var f=p[g];m=i?i(f,g,p):void 0,void 0===m&&(m=n(f)?f:s(e[l+1])?[]:{})}r(p,g,m),p=p[g]}return a}var r=t(404),o=t(733),s=t(219),n=t(40),d=t(556);a.exports=i},function(a,e,t){function i(a){return s(o(a,void 0,r),a+"")}var r=t(1134),o=t(454),s=t(455);a.exports=i},function(a,e,t){"use strict";a.exports=function(a){return a.getDescription().length}},function(a,e,t){"use strict";a.exports=function(a,e){var t=new RegExp(e,"ig"),i=a.match(t);return null===i&&(i=[]),i}},function(a,e,t){"use strict";var i=t(1136),r=t(1333),o=t(277),s=t(105),n=function(a,e,t){for(var i={noAlt:0,withAlt:0,withAltKeyword:0,withAltNonKeyword:0},s=0;s<a.length;s++){var n=r(a[s]);""!==n?""!==e||""===n?0!==o(n,e,t).count||""===n?o(n,e,t).count>0&&i.withAltKeyword++:i.withAltNonKeyword++:i.withAlt++:i.noAlt++}return i};a.exports=function(a){var e=s(a.getKeyword().toLocaleLowerCase());return n(i(a.getText()),e,a.getLocale())}},function(a,e,t){"use strict";var i=t(56),r=/alt=(['"])(.*?)\1/i;a.exports=function(a){var e="",t=a.match(r);return null!==t&&(e=i(t[2]),e=e.replace(/&quot;/g,'"'),e=e.replace(/&#039;/g,"'")),e}},function(a,e,t){"use strict";function i(a){var e=o(a.getKeyword());return r(e)}var r=t(192),o=t(416);a.exports=i},function(a,e,t){"use strict";var i=t(277),r=t(105);a.exports=function(a){if(""===a.getDescription())return-1;var e=r(a.getKeyword());return i(a.getDescription(),e,a.getLocale()).count}},function(a,e,t){"use strict";var i=t(277),r=t(105);a.exports=function(a){var e=a.getKeyword().replace("'","").replace(/\s/gi,"-");return e=r(e),i(a.getUrl(),e,a.getLocale()).count}},function(a,e,t){"use strict";var i=t(1137),r=t(277),o=t(105),s=t(1338),n=t(100);a.exports=function(a){var e=i(a.getText()),t=o(a.getKeyword().toLocaleLowerCase()),d=s(e,n)[0]||"";return r(d,t,a.getLocale()).count}},function(a,e,t){function i(a,e){return(n(a)?r:o)(a,d(s(e,3)))}var r=t(752),o=t(1105),s=t(276),n=t(39),d=t(1111);a.exports=i},function(a,e,t){"use strict";a.exports=function(a){return a.hasTitle()?a.getTitleWidth():0}},function(a,e,t){"use strict";var i=t(235),r=t(1131),o=t(218),s=t(68),n=t(24),d=function(a){var e=i(a),t=[];return n(e,function(a,e){t.push({word:a,wordIndex:e,complexity:r(a)})}),t};a.exports=function(a){var e=o(a.getText());return s(e,function(a){return{sentence:a,words:d(a)}})}},function(a,e,t){"use strict";var i=t(192),r=t(1137),o=t(115);a.exports=function(a){var e=a.getText(),t=r(e),s=[];return t.map(function(a){s.push({wordCount:i(a),text:a})}),o(s,function(a){return a.wordCount>0})}},function(a,e,t){"use strict";var i=t(218),r=t(1138);a.exports=function(a){var e=i(a.getText());return r(e)}},function(a,e,t){"use strict";var i=t(218),r=t(1138);a.exports=function(a){var e=i(a.getDescription());return r(e)}},function(a,e,t){"use strict";var i=t(1345),r=t(192),o=t(24);a.exports=function(a){var e=a.getText(),t=i(e),s=[];return o(t,function(a){s.push({text:a,wordCount:r(a)})}),s}},function(a,e,t){"use strict";var i=t(100);a.exports=function(a){a=a.replace(/\|/gi,""),a=a.replace(/<h([1-6])(?:[^>]+)?>(.*?)<\/h\1>/gi,"|");var e=a.split("|");return i(e[0])&&e.shift(),e}},function(a,e,t){"use strict";var i=t(1347),r=t(218),o=t(330).normalizeSingle,s=t(1348),n=t(1047).isWordInSentence,d=t(24),l=t(115),c=t(125),u=c(i),p=function(a,e){a=o(a);var t=u(e);return a.match(t)},g=function(a,e){return a=o(a),l(e,function(e){return n(e,a)})},m=function(a,e){var t=[];return d(a,function(a){var i=p(a,e.twoPartTransitionWords());if(null!==i)return void t.push({sentence:a,transitionWords:i});var r=g(a,e.transitionWords);return 0!==r.length?void t.push({sentence:a,transitionWords:r}):void 0}),t};a.exports=function(a){var e=a.getLocale(),t=s(e),i=r(a.getText()),o=m(i,t);return{totalSentences:i.length,sentenceResults:o,transitionWordSentences:o.length}}},function(a,e,t){"use strict";var i=t(236),r=function(a){return a=a.map(function(a){return i(a)}),a.join("(.*?)")};a.exports=function(a){a=a.map(function(a){return r(a)});var e="("+a.join(")|(")+")";return new RegExp(e,"ig")}},function(a,e,t){"use strict";var i=t(1139)().allWords,r=t(1349),o=t(1140)().allWords,s=t(1350),n=t(1141)().allWords,d=t(1351),l=t(1142)().allWords,c=t(1352),u=t(1143)().allWords,p=t(1353),g=t(1144)().allWords,m=t(1354),f=t(1145)().allWords,b=t(1355),h=t(1146)().allWords,v=t(1356),z=t(1357)().allWords,y=t(1358),w=t(124);a.exports=function(a){switch(w(a)){case"de":return{transitionWords:o,twoPartTransitionWords:s};case"es":return{transitionWords:l,twoPartTransitionWords:c};case"fr":return{transitionWords:n,twoPartTransitionWords:d};case"nl":return{transitionWords:u,twoPartTransitionWords:p};case"it":return{transitionWords:g,twoPartTransitionWords:m};case"pt":return{transitionWords:f,twoPartTransitionWords:b};case"ru":return{transitionWords:h,twoPartTransitionWords:v};case"ca":return{transitionWords:z,twoPartTransitionWords:y};default:case"en":return{transitionWords:i,twoPartTransitionWords:r}}}},function(a,e,t){"use strict";a.exports=function(){return[["both","and"],["if","then"],["not only","but also"],["neither","nor"],["either","or"],["not","but"],["whether","or"],["no sooner","than"]]}},function(a,e,t){"use strict";a.exports=function(){return[["anstatt","dass"],["bald","bald"],["dadurch","dass"],["dessen ungeachtet","dass"],["entweder","oder"],["einerseits","andererseits"],["erst","wenn"],["je","desto"],["je","umsto"],["nicht nur","sondern auch"],["ob","oder"],["ohne","dass"],["so","dass"],["sowohl","als auch"],["sowohl","wie auch"],["unbeschadet dessen","dass"],["weder","noch"],["wenn","auch"],["wenn","schon"],["nicht weil","sondern"]]}},function(a,e,t){"use strict";a.exports=function(){return[["à première vue","mais à bien considérer les choses"],["à première vue","mais toute réflexion faite"],["aussi","que"],["autant de","que"],["certes","mais"],["d'un côté","de l'autre côté"],["d'un côté","de l'autre"],["d'un côté","d'un autre côté"],["d'une part","d'autre part"],["d'une parte","de l'autre parte"],["moins de","que"],["non seulement","mais aussi"],["non seulement","mais en outre"],["non seulement","mais encore"],["plus de","que"],["quelque","que"],["si","que"],["soit","soit"],["tantôt","tantôt"],["tout d'abord","ensuite"],["tout","que"]]}},function(a,e,t){"use strict";a.exports=function(){return[["de un lado","de otra parte"],["de un lado","de otro"],["no","sino que"],["no","sino"],["por un lado","por otro lado"],["por una parte","por otra parte"],["por una parte","por otra"],["tanto","como"],["bien","bien"]]}},function(a,e,t){"use strict";a.exports=function(){return[["aan de ene kant","aan de andere kant"],["enerzijds","anderzijds"],["natuurlijk","maar"],["niet alleen","maar ook"],["noch","noch"],["zowel","als"]]}},function(a,e,t){"use strict";a.exports=function(){return[["né","né"],["non","ma"],["non prima","che"],["non prima","di"],["non solo","ma anche"],["o","o"],["se","allora"],["se","o"],["sia","che"]]}},function(a,e,t){"use strict";a.exports=function(){return[["não apenas","como também"],["não só","bem como"],["não só","como também"],["não só","mas também"],["ora","ora"],["ou","ou"],["quer","quer"]]}},function(a,e,t){"use strict";a.exports=function(){return[["будь то","или"],["возможно","а может быть"],["возможно","возможно"],["достаточно","чтобы"],["едва","как"],["ежели","то"],["если говорить о","то"],["если и не","то"],["если не","то"],["если","то"],["мало того что","еще и"],["мало того, что","еще и"],["не сказать чтобы","но"],["не сказать, чтобы","но"],["не столько","сколько"],["не то чтобы","но"],["не только не","но и"],["стоило","как"],["так как","то"],["только","как"],["хоть бы","а то"],["хоть","хоть"],["хотя","но"],["чем","лучше бы"],["чем","тем"],["что касается","то"]]}},function(a,e,t){"use strict";var i=["abans","així","altrament","anteriorment","breument","contràriament","després","doncs","efectivament","endemés","finalment","generalment","igualment","malgrat","mentre","parallelament","però","perquè","primerament","resumidament","resumint","sinó","sobretot","també","tanmateix"],r=["a banda d'això","a continuació","a fi de","a fi que","a força de","a manera de resum","a més","a tall d'exemple","a tall de recapitulació","a tall de resum","al capdavall","al contrari","al mateix temps","amb relació a","amb tot plegat","ara bé","atès que","com a conseqüència","com a exemple","com a resultat","com a resum","com que","comptat i debatut","considerant que","convé destacar","convé recalcar","convé ressaltar que","d'altra banda","d’una banda","d’una forma breu","de la mateixa manera","de manera parallela","de manera que","degut a","deixant de banda","dit d'una altra manera","donat que","en a resum","en altres paraules","en canvi","en conclusió","en conjunt","en conseqüència","encara que","en darrer lloc","en darrer terme","en definitiva","en efect","en general","en particular","en pocs mots","en poques paraules","en primer lloc","en relació amb","en resum","en segon lloc","en síntesi","en suma","en tercer lloc","en últim terme","és a dir","és més","és per això que","fins i tot","gràcies a","gràcies de","igual com","igual que","ja que","llevat que","més aviat","més tard","no obstant","o sia","o sigui","pel fet que","pel general","pel que","per acabar","per això","per altra banda","per aquest motiu","per causa de","per causa que","per cert","per començar","per concloure","per concretar","per contra","per exemple","per illustrar","per l'altra part","per l'altre cantó","per la qual cosa","per posar un exemple","per raó de","per raó que","per tal de","per tal que","per tant","per últim","per un cantó","per un costat","per una altra banda","per una part","quant a","recapitulant","respecte de","s'ha de tenir en compte que","sempre que","tal com s’ha dit","tan bon punt","tenint en compte que","tot i","tot seguit","val la pena dir que","vist que"];a.exports=function(){return{singleWords:i,multipleWords:r,allWords:i.concat(r)}}},function(a,e,t){"use strict";a.exports=function(){return[["ara","ara"],["ni","ni"]]}},function(a,e,t){function i(a,e){return r(e,function(e){return a[e]})}var r=t(176);a.exports=i},function(a,e,t){"use strict";var i=t(218),r=t(116).stripFullTags,o=t(124),s=t(1361),n=t(24),d=t(1362),l=t(1384),c=t(1386),u=t(1399),p=["ru","tr"],g=["en","de","nl","fr","es","it","pt","cn"],m=function(a,e){var t=[];return n(a,function(a){var i=r(a.getSentenceText()).toLocaleLowerCase();a.setPassive(l(i,e)),!0===a.isPassive()&&t.push(a.getSentenceText())}),{passiveSentences:t}},f=function(a,e){var t=[];return n(a,function(a){var i=r(a.getSentenceText()).toLocaleLowerCase(),o=[];o="de"===e||"nl"===e?u(i,e):c(i,e);var s=!1;n(o,function(a){a.setPassive(d(a.getSentencePartText(),a.getAuxiliaries(),e)),s=s||a.isPassive()}),s&&t.push(a.getSentenceText())}),{passiveSentences:t}};a.exports=function(a){var e=a.getText(),t=a.getLocale(),r=o(t),n=i(e).map(function(a){return new s(a)}),d=n.length;return p.includes(r)?{total:d,passives:m(n,r).passiveSentences}:g.includes(r)?{total:d,passives:f(n,r).passiveSentences}:void 0}},function(a,e,t){"use strict";var i={locale:"en_US"},r=function(a,e){this._sentenceText=a||"",this._locale=e||i.locale,this._isPassive=!1};r.prototype.getSentenceText=function(){return this._sentenceText},r.prototype.getLocale=function(){return this._locale},r.prototype.isPassive=function(){return this._isPassive},r.prototype.setPassive=function(a){this._isPassive=a},a.exports=r},function(a,e,t){"use strict";var i=t(1363),r=t(399),o=t(562)().allAuxiliaries,s=t(1153),n=t(1154)(),d={de:{auxiliaries:o},nl:{auxiliaries:n}};a.exports=function(a,e,t){var o=[];if("de"===t||"nl"===t){if(!e.some(function(a){return d[t].auxiliaries.includes(a)}))return!1;"de"===t&&(o=s(a,e,t)),"nl"===t&&(o=r(a,e,t))}else o=r(a,e,t);return i(o)}},function(a,e,t){"use strict";var i=t(24);a.exports=function(a){var e=!1;return i(a,function(a){if(a.determinesSentencePartIsPassive())return void(e=!0)}),e}},function(a,e,t){"use strict";var i=t(1046),r=t(24),o=t(125),s=t(157),n=t(1365),d=t(1366)(),l=t(1048)().irregularsRegular,c=t(1048)().irregularsIrregular,u=t(1048)().irregularsEndingInS,p=t(1367)(),g=t(1368)(),m=t(1369)(),f=/^(ge|be|ont|ver|her|er)\S+(d|t)$/gi,b=/^(aan|af|bij|binnen|los|mee|na|neer|om|onder|samen|terug|tegen|toe|uit|vast)(ge)\S+(d|t|n)$/gi,h={en:{regularParticiplesRegex:/\w+ed($|[ \n\r\t.,'()"+\-;!?:\/»«‹›<>])/gi},fr:{regularParticiplesRegex:/\S+(é|ée|és|ées)($|[ \n\r\t.,'()"+\-;!?:\/»«‹›<>])/gi},nl:{regularParticipleRegexPattern1:f,regularParticipleRegexPattern2:b}},v=function(a,e){if("es"===e||"it"===e)return[];var t=[];return Object.keys(h[e]).forEach(function(i){var r=a.match(h[e][i]);null!==r&&t.push(r)}),t=n(t)},z=function(a,e,t){var i=[];return r(e,function(e){var r=new RegExp("^"+e+t+"?$","ig"),o=a.match(r);o&&i.push(o[0])}),i},y=function(a,e){var t=[];switch(e){case"fr":t=t.concat(z(a,l,"(e|s|es)")),t=t.concat(z(a,u,"(e|es)")),i(c,function(e){e===a&&t.push(e)});break;case"es":s(p,a)&&t.push(a);break;case"it":s(g,a)&&t.push(a);break;case"nl":s(m,a)&&t.push(a);break;case"en":default:i(d,function(e){e===a&&t.push(e)})}return t};a.exports=function(){return{regularParticiples:o(v),irregularParticiples:o(y)}}},function(a,e,t){function i(a){return(null==a?0:a.length)?r(a,o):[]}var r=t(590),o=1/0;a.exports=i},function(a,e,t){"use strict";a.exports=function(){return["arisen","awoken","reawoken","babysat","backslid","backslidden","beat","beaten","become","begun","bent","unbent","bet","bid","outbid","rebid","underbid","overbid","bidden","bitten","blown","bought","overbought","bound","unbound","rebound","broadcast","rebroadcast","broken","brought","browbeat","browbeaten","built","prebuilt","rebuilt","overbuilt","burnt","burst","bust","cast","miscast","recast","caught","chosen","clung","come","overcome","cost","crept","cut","undercut","recut","daydreamt","dealt","misdealt","redealt","disproven","done","predone","outdone","misdone","redone","overdone","undone","drawn","outdrawn","redrawn","overdrawn","dreamt","driven","outdriven","drunk","outdrunk","overdrunk","dug","dwelt","eaten","overeaten","fallen","felt","fit","refit","retrofit","flown","outflown","flung","forbidden","forecast","foregone","foreseen","foretold","forgiven","forgotten","forsaken","fought","outfought","found","frostbitten","frozen","unfrozen","given","gone","undergone","gotten","ground","reground","grown","outgrown","regrown","had","handwritten","heard","reheard","misheard","overheard","held","hewn","hidden","unhidden","hit","hung","rehung","overhung","unhung","hurt","inlaid","input","interwound","interwoven","jerry-built","kept","knelt","knit","reknit","unknit","known","laid","mislaid","relaid","overlaid","lain","underlain","leant","leapt","outleapt","learnt","unlearnt","relearnt","mislearnt","left","lent","let","lip-read","lit","relit","lost","made","premade","remade","meant","met","mown","offset","paid","prepaid","repaid","overpaid","partaken","proofread","proven","put","quick-frozen","quit","read","misread","reread","retread","rewaken","rid","ridden","outridden","overridden","risen","roughcast","run","outrun","rerun","overrun","rung","said","sand-cast","sat","outsat","sawn","seen","overseen","sent","resent","set","preset","reset","misset","sewn","resewn","oversewn","unsewn","shaken","shat","shaven","shit","shone","outshone","shorn","shot","outshot","overshot","shown","shrunk","preshrunk","shut","sight-read","slain","slept","outslept","overslept","slid","slit","slung","unslung","slunk","smelt","outsmelt","snuck","sold","undersold","presold","outsold","resold","oversold","sought","sown","spat","spelt","misspelt","spent","underspent","outspent","misspent","overspent","spilt","overspilt","spit","split","spoilt","spoken","outspoken","misspoken","overspoken","spread","sprung","spun","unspun","stolen","stood","understood","misunderstood","strewn","stricken","stridden","striven","struck","strung","unstrung","stuck","unstuck","stung","stunk","sublet","sunburnt","sung","outsung","sunk","sweat","swept","swollen","sworn","outsworn","swum","outswum","swung","taken","undertaken","mistaken","retaken","overtaken","taught","mistaught","retaught","telecast","test-driven","test-flown","thought","outthought","rethought","overthought","thrown","outthrown","overthrown","thrust","told","retold","torn","retorn","trod","trodden","typecast","typeset","upheld","upset","waylaid","wept","wet","rewet","withdrawn","withheld","withstood","woken","won","rewon","worn","reworn","wound","rewound","overwound","unwound","woven","rewoven","unwoven","written","typewritten","underwritten","outwritten","miswritten","rewritten","overwritten","wrung"]}},function(a,e,t){"use strict";a.exports=function(){return["abajado","abalanzado","abaleado","abandonado","abaratado","abarcado","abarrotado","abastecido","abatido","abdicado","abierto","abismado","abjurado","ablandado","abocado","abochornado","abofeteado","abolido","abollado","abombado","abominado","abonado","abordado","aborrecido","aborregado","abortado","abotonado","abrasado","abrazado","abrevado","abreviado","abrigado","abrochado","abrogado","abroquelado","abrumado","absorbido","abstenido","abstraído","absuelto","abucheado","abultado","abundado","aburguesado","aburrido","abusado","acabado","acallado","acalorado","acaparado","acariciado","acarreado","acatado","acaudillado","accedido","accionado","acechado","aceitado","acelerado","acentuado","aceptado","acerado","acercado","acertado","achacado","achantado","achatado","achicado","acicalado","acidificado","aclarado","aclimatado","acobardado","acodado","acogido","acojonado","acometido","acomodado","acompañado","acompasado","acongojado","aconsejado","acontecido","acopiado","acoplado","acordado","acordonado","acorralado","acortado","acosado","acostado","acostumbrado","acotado","acrecentado","acreditado","acrisolado","activado","actuado","acuchillado","acuciado","acudido","acuerpado","acumulado","acunado","acuñado","acurrucado","acusado","adaptado","adecentado","adelantado","adelgazado","adentrado","adeudado","adherido","adicionado","adiestrado","adivinado","adjetivado","adjudicado","adjuntado","administrado","admirado","admitido","adoctrinado","adolecido","adoptado","adorado","adormecido","adornado","adquirido","aducido","adueñado","adulado","adulterado","advertido","afanado","afeado","afectado","afeitado","aferrado","afianzado","afinado","afirmado","afligido","aflorado","afrentado","afrontado","agachado","agarrado","agarrotado","agasajado","agenciado","agigantado","agilizado","agitado","aglutinado","agobiado","agolpado","agonizado","agostado","agotado","agradado","agradecido","agrandado","agravado","agraviado","agredido","agregado","agriado","agrietado","agrupado","aguado","aguantado","aguardado","agudizado","aguijoneado","agujereado","aguzado","ahogado","ahondado","ahorcado","ahorrado","ahuecado","ahuyentado","aireado","aislado","ajustado","ajusticiado","alabado","alagado","alambrado","alardeado","alargado","alarmado","albergado","alborotado","alcanzado","aleccionado","alegado","alegrado","alejado","alentado","alertado","alfabetizado","alfombrado","aliado","alienado","aligerado","alimentado","aliñado","alineado","alisado","alistado","aliviado","alivianado","allanado","almacenado","almorzado","alojado","alquilado","alterado","alternado","alucinado","aludido","alumbrado","alzado","amado","amaestrado","amagado","amainado","amalgamado","amamantado","amansado","amargado","amarrado","amasado","ambicionado","amedrentado","amenazado","amenizado","ameritado","ametrallado","amilanado","aminorado","amnistiado","amoldado","amonestado","amontonado","amordazado","amortajado","amortiguado","amortizado","amotinado","amparado","ampayado","ampliado","amplificado","amputado","amueblado","añadido","analizado","anatematizado","andado","anegado","anestesiado","anexado","anexionado","anhelado","anidado","anillado","animado","aniquilado","anisado","añorado","anotado","anoticiado","ansiado","antecedido","antepuesto","anticipado","antojado","anudado","anulado","anunciado","apabullado","apachurrado","apaciguado","apadrinado","apagado","apalancado","apaleado","apañado","apantallado","aparcado","apareado","aparecido","aparentado","apartado","apeado","apedreado","apelado","apellidado","apelmazado","apercibido","apersonado","apestado","apetecido","apiadado","apilado","apiñado","apisonado","aplacado","aplanado","aplastado","aplaudido","aplazado","aplicado","apoderado","apoltronado","aporreado","aportado","aposentado","apostado","apostatado","apostillado","apoyado","apreciado","aprehendido","apremiado","aprendido","apresado","apresurado","apretado","apretujado","aprisionado","aprobado","aprovechado","aprovisionado","aproximado","apuñalado","apuñaleado","apuntado","apuntalado","apuntillado","apurado","aquejado","aquietado","aquilatado","arañado","arbitrado","archivado","arengado","argüido","argumentado","armado","armonizado","aromatizado","arqueado","arrancado","arrasado","arrastrado","arreado","arrebatado","arreciado","arreglado","arrellanado","arremangado","arremetido","arrendado","arrepentido","arrestado","arriado","arribado","arriesgado","arrimado","arrinconado","arrodillado","arrogado","arrojado","arrollado","arropado","arruinado","arrullado","articulado","asado","asaltado","ascendido","aseado","asechado","asediado","asegurado","asemejado","asentado","asentido","aserrado","asesinado","asesorado","asestado","aseverado","asfixiado","asido","asignado","asilado","asimilado","asistido","asolado","asoleado","asomado","asombrado","aspirado","astillado","asumido","asustado","atacado","atado","atajado","atarantado","atascado","atemorizado","atemperado","atenazado","atendido","atenido","atentado","atenuado","aterrado","aterrorizado","atesorado","atestiguado","atiborrado","atisbado","atizado","atomizado","atontado","atorado","atormentado","atornillado","atosigado","atracado","atragantado","atraído","atrancado","atrapado","atrasado","atravesado","atrevido","atribuido","atrincherado","atrofiado","atropellado","aturdido","auditado","augurado","aumentado","aunado","aupado","auscultado","ausentado","autenticado","autentificado","autodefinido","autoeditado","automatizado","autorizado","autorregulado","auxiliado","avalado","avanzado","avasallado","avenido","aventado","aventajado","aventurado","averiado","averiguado","avezado","avisado","avispado","avistado","avivado","avizorado","avocado","ayudado","azotado","azuzado","babeado","bailado","bajado","balaceado","balanceado","bañado","banalizado","bancado","bandeado","barajado","barrido","basado","bastardeado","basureado","batallado","bateado","batido","bautizado","beatificado","bebido","beneficiado","besado","bifurcado","birlado","blandido","blanqueado","blasfemado","blindado","bloqueado","boicoteado","bombardeado","bombeado","bonificado","bordeado","borrado","borroneado","bosquejado","bostezado","botado","boxeado","bregado","brillado","brincado","brindado","bromeado","brotado","bruñido","buceado","burlado","buscado","cabeceado","cabido","cabildeado","cabreado","cacareado","cachado","cacheado","cacheteado","caducado","cagado","calado","calculado","caldeado","calefaccionado","calendarizado","calentado","calibrado","calificado","caligrafiado","callado","calmado","calumniado","calzado","cambiado","caminado","camuflado","canalizado","cancelado","canjeado","cansado","cantado","capado","capeado","capitalizado","capitulado","captado","capturado","caracterizado","carburado","carcomido","cardado","careado","carecido","cargado","caricaturizado","cartografiado","cascado","castigado","castrado","catado","catalizado","catalogado","catapultado","cateado","categorizado","causado","cauterizado","cautivado","cavado","cavilado","cazado","cebado","cedido","cegado","cejado","celebrado","cenado","ceñido","censurado","centrifugado","centuplicado","cepillado","cercado","cercenado","cerciorado","cernido","cerrado","cesado","chafado","chamuscado","chantajeado","chapado","charlado","chateado","chequeado","chiflado","chillado","chingado","chirriado","chivado","chocado","chorreado","choteado","chupado","chutado","cicatrizado","cifrado","cimentado","cincelado","circulado","circuncidado","circundado","citado","clamado","clarificado","clasificado","claudicado","clausurado","clavado","clicado","clonado","coaccionado","coadyuvado","coagulado","coaligado","coartado","cobijado","cobrado","cocido","cocinado","codeado","codiciado","codificado","codirigido","coexistido","cofinanciado","cogido","cohabitado","cohibido","coincidido","colaborado","colacionado","colado","colapsado","coleccionado","colectado","colectivizado","colgado","colisionado","colmado","colocado","colonizado","coloreado","columpiado","combatido","combinado","comentado","comenzado","comerciado","comercializado","cometido","comido","comisionado","compactado","compadecido","compaginado","comparado","comparecido","compartido","compatibilizado","compelido","compendiado","compenetrado","compensado","compilado","complacido","complementado","completado","complotado","comportado","comprado","comprendido","comprimido","comprobado","comprometido","compuesto","compulsado","computado","comulgado","comunicado","concatenado","concebido","concedido","concelebrado","concentrado","conceptuado","conceptualizado","concertado","concienciado","concientizado","conciliado","concitado","concluido","concordado","concretado","concretizado","conculcado","concursado","condenado","condensado","condicionado","condimentado","condolido","condonado","conducido","conectado","conexionado","confabulado","confeccionado","conferido","confesado","confiado","configurado","confirmado","confiscado","confluido","conformado","confortado","confrontado","confundido","congeniado","congestionado","congratulado","congregado","conjeturado","conjugado","conjuntado","conjurado","conllevado","conmemorado","conminado","conmocionado","conmovido","conmutado","connotado","conquistado","consagrado","conseguido","consensuado","consentido","conservado","considerado","consignado","consistido","consolado","consolidado","conspirado","constado","constatado","constelado","constitucionalizado","constituido","constreñido","construido","consultado","consumado","consumido","contabilizado","contactado","contado","contagiado","contemplado","contendido","contenido","contentado","contestado","contextualizado","continuado","contorneado","contraatacado","contrabandeado","contradicho","contrahecho","contraído","contrapesado","contrapuesto","contrariado","contrarrestado","contrastado","contratado","contravenido","contribuido","contristado","controlado","convalidado","convencido","convenido","convergido","conversado","convertido","convidado","convivido","convocado","convulsionado","cooperado","cooptado","coordinado","copado","copiado","coproducido","copulado","coqueteado","corchado","coreado","coreografiado","corneado","coronado","corporizado","corregido","correlacionado","correspondido","correteado","corrido","corroborado","corroído","corrompido","cortado","cortejado","cosechado","cosido","cosificado","costado","costeado","cotejado","cotizado","creado","creído","criado","cribado","criminalizado","crispado","cristalizado","cristianizado","criticado","cronometrado","crucificado","crujido","cruzado","cuadriplicado","cuadruplicado","cuajado","cuantificado","cuarteado","cubierto","cuestionado","cuidado","culeado","culminado","culpabilizado","culpado","cultivado","culturizado","cumplido","cumplimentado","cundido","curado","curioseado","currado","cursado","curvado","custodiado","dado","dañado","danzado","datado","dateado","debatido","debido","debilitado","debitado","debutado","decaído","decantado","decapitado","decepcionado","decidido","declamado","declarado","declinado","decodificado","decolorado","decomisado","decrecido","decretado","dedicado","deducido","defecado","defendido","defenestrado","deferido","definido","deformado","defraudado","degenerado","deglutido","degollado","degradado","degustado","deificado","dejado","delatado","delegado","deleitado","deletreado","deliberado","delimitado","delineado","delinquido","demandado","demarcado","demediado","demeritado","democratizado","demolido","demonizado","demorado","demostrado","demudado","denegado","denigrado","denominado","denostado","denotado","denunciado","deparado","departido","dependido","depilado","deplorado","deportado","depositado","depreciado","depredado","deprimido","depuesto","depurado","derechizado","derivado","derogado","derramado","derretido","derribado","derrocado","derrochado","derrotado","derruido","derrumbado","desabrochado","desacatado","desacelerado","desacomodado","desaconsejado","desacoplado","desacralizado","desacreditado","desactivado","desafiado","desafinado","desaguado","desahogado","desairado","desajustado","desalentado","desalineado","desalojado","desandado","desangrado","desanimado","desaparecido","desapegado","desaprendido","desaprobado","desaprovechado","desarmado","desarraigado","desarreglado","desarrollado","desarticulado","desaseado","desasido","desasosegado","desatado","desatendido","desautorizado","desayunado","desbancado","desbandado","desbaratado","desbarrancado","desbastado","desbloqueado","desbocado","desbordado","desbrozado","descabalgado","descabezado","descaderado","descalabrado","descalificado","descansado","descargado","descarriado","descarrilado","descartado","descascarado","descascarillado","descendido","descentrado","descifrado","descocido","descodificado","descojonado","descolgado","descolocado","descolonizado","descompensado","descomprimido","descompuesto","desconectado","desconfiado","descongelado","desconocido","descontado","descontaminado","descontextualizado","descontinuado","desconvocado","descorazonado","descorchado","descorrido","descosido","descoyuntado","descreído","descristianizado","descuadrado","descuartizado","descubierto","descuidado","desdeñado","desdibujado","desdicho","desdoblado","deseado","desecado","desechado","desembarazado","desembarcado","desembocado","desembolsado","desempacado","desempañado","desempaquetado","desempeñado","desempolvado","desenamorado","desencadenado","desencajado","desencarnado","desenchufado","desenfocado","desenfundado","desenganchado","desengrasado","desenmascarado","desenredado","desenrollado","desentendido","desenterrado","desentonado","desentrañado","desenvainado","desenvuelto","desequilibrado","desertado","desestabilizado","desestimado","desfalcado","desfallecido","desfigurado","desfondado","desgajado","desgañitado","desgarrado","desgastado","desglosado","desgobernado","desgranado","desguazado","deshecho","desheredado","deshidratado","deshilachado","deshojado","deshonrado","deshuesado","deshumanizado","designado","desilusionado","desincentivado","desinfectado","desinflado","desinflamado","desinformado","desinhibido","desinstalado","desintegrado","desintoxicado","desistido","desjarretado","deslegitimado","desleído","desligado","deslindado","deslizado","deslucido","deslumbrado","desmadrado","desmalezado","desmantelado","desmaquillado","desmarcado","desmayado","desmejorado","desmembrado","desmentido","desmenuzado","desmerecido","desmigado","desmitificado","desmoldado","desmontado","desmoralizado","desmoronado","desmotivado","desmovilizado","desnaturalizado","desnivelado","desnucado","desnudado","desobedecido","desobligado","desoído","desollado","desorganizado","desorientado","despachado","desparasitado","desparecido","desparramado","despedazado","despedido","despegado","despeinado","despejado","despellejado","despeñado","despenalizado","desperdiciado","despersonalizado","despertado","despilfarrado","despintado","despiojado","despistado","desplazado","desplegado","desplomado","desplumado","despojado","despolitizado","desposado","desposeído","despotricado","despreciado","desprendido","despreocupado","desprestigiado","desprogramado","despulpado","despuntado","desquiciado","desquitado","destacado","destapado","desteñido","desterrado","destetado","destilado","destituido","destrabado","destripado","destronado","destrozado","destruido","desunido","desvalijado","desvalorizado","desvanecido","desvelado","desvestido","desviado","desvinculado","desvirtuado","desvivido","detectado","detenido","detentado","deteriorado","determinado","detestado","detonado","devaluado","devanado","devastado","develado","devengado","devenido","devorado","devuelto","diagnosticado","diagramado","dializado","dialogado","dibujado","dicho","dictado","dictaminado","diezmado","difamado","diferenciado","diferido","dificultado","difuminado","difundido","digerido","digitado","dignado","dignificado","dilapidado","dilatado","diligenciado","dilucidado","diluido","dimensionado","dimitido","dinamitado","dinamizado","dirimido","discernido","disciplinado","discontinuado","discrepado","discriminado","disculpado","discurrido","discutido","diseccionado","diseminado","diseñado","disentido","disertado","disfrazado","disfrutado","disgregado","disgustado","disimulado","disipado","dislocado","disminuido","disociado","dispensado","dispersado","dispuesto","disputado","distado","distanciado","distendido","distinguido","distorsionado","distraído","distribuido","disuadido","disuelto","divagado","diversificado","divertido","dividido","divinizado","divisado","divorciado","divulgado","doblado","doblegado","doctorado","documentado","dogmatizado","dolido","domado","domesticado","dominado","donado","dopado","dormido","dosificado","dotado","dragado","dramatizado","drenado","drogado","duchado","dudado","dulcificado","duplicado","durado","echado","eclipsado","eclosionado","economizado","ecualizado","edificado","editado","educado","efectuado","ejecutado","ejemplificado","ejercido","ejercitado","elaborado","electrizado","electrocutado","elevado","elidido","eliminado","elogiado","elucubrado","eludido","emanado","emancipado","embadurnado","embalado","embalsamado","embanderado","embarcado","embargado","embarrado","embarrancado","embaucado","embebido","embelesado","embellecido","embestido","embolado","embolsado","emborrachado","emborronado","emboscado","embotado","embriagado","embrollado","embrutecido","embuchado","emergido","emigrado","emitido","emocionado","empacado","empachado","empadronado","empalado","empalmado","empanado","empañado","empantanado","empapelado","empaquetado","emparejado","empastado","empatado","empecinado","empeñado","empeorado","empequeñecido","emperrado","empezado","empinado","emplazado","empleado","empobrecido","empoderado","empollado","empolvado","emponzoñado","emprendido","empujado","empuñado","emputado","emulado","emulsionado","enajenado","enaltecido","enamorado","enarbolado","enardecido","encabezado","encabritado","encabronado","encadenado","encajado","encajonado","encallado","encamado","encaminado","encandilado","encanecido","encañonado","encantado","encaprichado","encapsulado","encarado","encaramado","encarecido","encargado","encariñado","encarnado","encarrilado","encartado","encasillado","encasquetado","encasquillado","encastrado","encausado","encauzado","enceguecido","encendido","encerado","encerrado","encharcado","enchufado","encimado","encogido","encolado","encolerizado","encolumnado","encomendado","enconado","encontrado","encordado","encrespado","encuadrado","encubierto","encuerado","encumbrado","enderezado","endeudado","endilgado","endiosado","endosado","endulzado","endurecido","enemistado","energizado","enervado","enfadado","enfangado","enfatizado","enfermado","enfiestado","enfilado","enflaquecido","enfocado","enfrascado","enfrentado","enfriado","enfurecido","engalanado","engañado","enganchado","engarzado","engatusado","engendrado","englobado","engolosinado","engordado","engranado","engrandecido","engrasado","engreído","engrosado","engullido","enharinado","enhebrado","enjuagado","enjugado","enjuiciado","enlazado","enlistado","enlodado","enloquecido","enlozado","enlutado","enmarañado","enmascarado","enmendado","enmohecido","enmudecido","ennegrecido","ennoblecido","enorgullecido","enrarecido","enredado","enripiado","enriquecido","enrocado","enrojecido","enrolado","enrollado","enroscado","enrumbado","ensalzado","ensamblado","ensañado","ensanchado","ensartado","ensayado","ensebado","enseñado","enseñoreado","ensillado","ensoberbecido","ensogado","ensombrecido","ensoñado","ensordecido","ensuciado","entablado","entallado","entendido","enterado","enternecido","enterrado","entibiado","entintado","entonado","entorpecido","entrado","entrampado","entrañado","entreabierto","entrecomillado","entrecruzado","entregado","entrelazado","entremetido","entremezclado","entrenado","entresacado","entretejido","entretenido","entreverado","entrevistado","entristecido","entrometido","entronado","entroncado","entronizado","entumecido","enturbiado","entusiasmado","enumerado","enunciado","envainado","envalentonado","envanecido","envasado","envejecido","envenenado","envestido","enviado","enviciado","envidiado","envilecido","enviudado","envuelto","enzarzado","equilibrado","equiparado","equivocado","erigido","erizado","erogado","erosionado","erotizado","erradicado","errado","esbozado","escabullido","escalado","escaldado","escalfado","escamado","escamoteado","escampado","escandalizado","escaneado","escapado","escaqueado","escarbado","escarchado","escarmentado","escarnecido","escaseado","escatimado","escenificado","escindido","esclarecido","esclavizado","escocido","escogido","escolarizado","escoltado","escondido","escorado","escrachado","escrito","escrutado","escuchado","escudado","escudriñado","esculpido","escupido","escurrido","esforzado","esfumado","esgrimido","esmerado","esmerilado","espabilado","espaciado","españolizado","espantado","esparcido","especificado","especulado","esperado","espesado","espetado","espiado","espigado","espinado","espirado","espiritualizado","espoleado","espolvoreado","esponjado","esponsorizado","esposado","esquematizado","esquiado","esquilado","esquilmado","esquivado","estabilizado","establecido","estacionado","estafado","estallado","estampado","estancado","estaqueado","estatizado","estatuido","esterificado","esterilizado","estigmatizado","estilizado","estimado","estimulado","estipulado","estirado","estorbado","estornudado","estragado","estrangulado","estrechado","estrellado","estremecido","estrenado","estresado","estriado","estropeado","estructurado","estrujado","estudiado","eternizado","etiquetado","evacuado","evadido","evaluado","evangelizado","evaporado","evidenciado","eviscerado","evitado","evocado","evolucionado","exacerbado","exagerado","exaltado","examinado","exasperado","excarcelado","excavado","excedido","exceptuado","excitado","exclamado","excluido","excretado","exculpado","excusado","execrado","exhalado","exhibido","exhortado","exhumado","exigido","exilado","eximido","existido","exonerado","exorcizado","expandido","expedido","expedientado","expelido","expendido","experimentado","expiado","expirado","explayado","explicado","explicitado","explorado","explosionado","explotado","expoliado","exportado","expresado","exprimido","expropiado","expuesto","expulsado","expurgado","extendido","exteriorizado","exterminado","externado","externalizado","extinguido","extirpado","extorsionado","extractado","extraditado","extraído","extralimitado","extrañado","extrapolado","extraviado","extremado","extruido","exudado","eyaculado","eyectado","fabricado","fabulado","facilitado","facturado","facultado","fagocitado","fajado","fallado","fallecido","falsado","falseado","falsificado","familiarizado","fantaseado","fascinado","fastidiado","fatigado","favorecido","fecundado","felicitado","feminizado","fenecido","fermentado","fertilizado","festejado","fiado","fichado","fidelizado","figurado","fijado","filmado","filosofado","filtrado","finalizado","financiado","fincado","fingido","finiquitado","firmado","fiscalizado","fisurado","flagelado","flameado","flanqueado","flaqueado","fletado","flexibilizado","flexionado","flipado","floreado","florecido","flotado","fluctuado","focalizado","fogueado","foliado","follado","fomentado","fondeado","forcejeado","forestado","forjado","formado","formalizado","formateado","formulado","fornicado","forrado","fortalecido","forzado","fotocopiado","fotografiado","fracasado","fraccionado","fracturado","fragmentado","fraguado","franqueado","frecuentado","fregado","frenado","fresado","friccionado","frotado","fructificado","fruncido","fugado","fulminado","fumado","fumigado","funcionado","fundado","fundamentado","fundido","fungido","fusilado","fusionado","fustigado","gafado","ganado","gangrenado","garabateado","garantido","garantizado","garrido","gaseado","gastado","gemido","generado","generalizado","gerenciado","germinado","gestado","gestionado","girado","glorificado","glosado","gobernado","goleado","golpeado","gozado","grabado","graduado","graficado","granjeado","grapado","gratificado","gravado","gravitado","gritado","gruñido","guardado","guarecido","guarnecido","guerreado","guiado","guillotinado","guiñado","guindado","guisado","gustado","habilitado","habitado","habituado","hablado","halado","halagado","hallado","hartado","hechizado","hecho","helenizado","henchido","hendido","heredado","herido","hermanado","herrado","hervido","hibernado","hibridado","hidratado","higienizado","hilado","hilvanado","hincado","hinchado","hipnotizado","hipotecado","historiado","hojeado","holgado","hollado","homenajeado","homogeneizado","homologado","honrado","horadado","horneado","horrorizado","hospedado","hostigado","hostilizado","huido","humanado","humanizado","humectado","humedecido","humillado","hundido","hurgado","hurtado","ideado","idealizado","identificado","ideologizado","idiotizado","idolatrado","ignorado","igualado","ilegalizado","iluminado","ilusionado","ilustrado","imaginado","imbricado","imitado","impactado","impartido","impedido","impelido","imperado","impermeabilizado","implantado","implementado","implicado","implorado","importado","importunado","imposibilitado","impresionado","improvisado","impuesto","impugnado","impulsado","imputado","inaugurado","incautado","incendiado","incentivado","incinerado","incitado","inclinado","incluido","incoado","incomodado","incorporado","incrementado","increpado","incriminado","incubado","inculcado","inculpado","incumplido","incurrido","incursionado","indagado","indemnizado","independizado","indexado","indicado","indigestado","indignado","indispuesto","individuado","inducido","indultado","inervado","infamado","infartado","infectado","inferido","inficionado","infiltrado","inflado","inflamado","infligido","influenciado","influido","informado","infravalorado","infringido","infundido","ingeniado","ingerido","ingresado","inhabilitado","inhalado","inhibido","inhumado","iniciado","inicializado","injertado","injuriado","inmigrado","inmiscuido","inmolado","inmortalizado","inmovilizado","inmunizado","innovado","inoculado","inquietado","inquirido","insensibilizado","insertado","insinuado","insistido","inspeccionado","inspirado","instado","instalado","instaurado","instigado","instituido","instruido","instrumentado","instrumentalizado","insuflado","insultado","insumido","integrado","intelectualizado","intensificado","intentado","interactuado","intercalado","intercambiado","intercedido","interceptado","interesado","interferido","interiorizado","intermediado","internacionalizado","internalizado","interpelado","interpolado","interpretado","interpuesto","interrogado","interrumpido","intervenido","intimado","intimidado","intitulado","intoxicado","intrigado","introducido","intuido","inundado","inutilizado","invadido","invalidado","inventado","inventariado","invertido","investido","investigado","invitado","invocado","involucionado","inyectado","ionizado","ironizado","irradiado","irrespetado","irrigado","irritado","irrogado","irrumpido","jactado","jalado","jaleado","jalonado","jaqueado","jerarquizado","jodido","jorobado","jubilado","jugado","juntado","jurado","juramentado","justificado","juzgado","laborado","labrado","laburado","lacado","lacerado","lactado","ladeado","ladrado","lamentado","lamido","laminado","languidecido","lanzado","lapidado","laqueado","largado","lastimado","lastrado","latido","laudado","lavado","legalizado","legislado","legitimado","leído","lesionado","leudado","levantado","liado","liberado","liberalizado","libertado","librado","licitado","licuado","liderizado","lidiado","ligado","lijado","limado","limitado","limpiado","linchado","liquidado","litigado","llagado","llamado","llegado","llenado","llevado","llorado","localizado","logrado","lubricado","luchado","lucido","lucrado","lustrado","macerado","machacado","macheteado","machucado","madreado","madrugado","madurado","magnetizado","magnificado","malacostumbrado","malbaratado","malcriado","maleado","malentendido","malgastado","malinterpretado","malogrado","maltratado","malversado","mamado","manchado","mancillado","mandado","manejado","mangado","mangoneado","manifestado","maniobrado","manipulado","manoseado","manteado","mantenido","manufacturado","maquillado","maquinado","maravillado","marcado","marchitado","mareado","marginado","maridado","martillado","martirizado","masacrado","masajeado","mascado","masificado","masticado","masturbado","matado","materializado","matizado","matriculado","maximizado","meado","mecanografiado","mechado","mecido","mediado","mediatizado","medicado","medido","meditado","medrado","mejorado","mellado","memorizado","mencionado","meneado","menguado","menoscabado","menospreciado","menstruado","mensualizado","mensurado","mentado","mentalizado","mentido","mercadeado","mercantilizado","merecido","merendado","mermado","merodeado","mesurado","metamorfoseado","metido","mezclado","migrado","militado","militarizado","mimado","mimetizado","minado","minimizado","ministrado","minusvalorado","mirado","mistificado","mitificado","mitigado","modelado","modernizado","modificado","modulado","mofado","mojado","moldeado","molestado","molido","monetizado","monitorizado","monopolizado","montado","morado","moralizado","mordido","mordisqueado","mortificado","mosqueado","mostrado","motejado","motivado","movido","movilizado","mudado","muestreado","multado","multiplicado","munido","murmurado","mutado","mutilado","nacionalizado","narcotizado","narrado","naufragado","navegado","necesitado","negado","negociado","neutralizado","ninguneado","nivelado","nombrado","nominado","noqueado","normado","normalizado","notado","notificado","nutrido","obcecado","obedecido","objetado","objetivado","obligado","obliterado","obnubilado","obrado","obsequiado","observado","obsesionado","obstaculizado","obstruido","obtenido","obturado","obviado","ocasionado","ocluido","ocultado","ocupado","odiado","ofendido","ofertado","oficiado","oficializado","ofrecido","ofrendado","ofuscado","oído","ojeado","olfateado","olido","olvidado","omitido","ondeado","ondulado","opacado","operado","opinado","oprimido","optado","optimizado","opuesto","orado","orbitado","ordenado","ordeñado","organizado","orientado","originado","orillado","orinado","ornado","ornamentado","orquestado","osado","oscilado","oscurecido","osificado","ostentado","otorgado","ovacionado","ovulado","oxidado","oxigenado","pacificado","pactado","padecido","paganizado","paginado","paladeado","paliado","palpado","parado","parafraseado","paralizado","parapetado","parasitado","parcelado","parchado","parcheado","pareado","parido","parodiado","parqueado","participado","particularizado","partido","pasado","paseado","pastoreado","pataleado","pateado","patentado","patentizado","patinado","patrullado","pecado","pedaleado","pedido","pegado","peinado","pellizcado","penalizado","penetrado","pensado","percatado","percibido","percutido","perdido","perdonado","perdurado","perecido","peregrinado","perfeccionado","perfilado","perforado","perfumado","pergeñado","peritado","perjudicado","perjurado","permeado","permitido","permutado","pernoctado","perpetrado","perpetuado","perseguido","perseverado","persistido","personado","personalizado","personificado","persuadido","pertenecido","pertrechado","perturbado","pervertido","pervivido","pescado","petado","peticionado","picado","picaneado","picoteado","pifiado","pignorado","pillado","pilotado","piloteado","pincelado","pinchado","pintado","pintarrajeado","pinzado","pirado","pirateado","pisado","pisoteado","pitado","placido","plagiado","planchado","planeado","plantado","planteado","plasmado","platicado","plegado","pluralizado","podado","poetizado","polemizado","politizado","pololeado","ponderado","pontificado","popularizado","porfiado","portado","porteado","posado","posesionado","posibilitado","posicionado","pospuesto","posteado","postergado","postrado","postulado","potenciado","practicado","precarizado","precedido","preceptuado","precintado","precipitado","precisado","preconizado","predicado","predicho","predispuesto","predominado","preferido","prefigurado","pregonado","preguntado","prejuzgado","premiado","prendado","prendido","preocupado","preparado","presagiado","prescindido","presenciado","presentado","presentido","preservado","presidido","presionado","prestado","prestigiado","presumido","presurizado","pretendido","preterido","prevalecido","prevalido","prevaricado","prevenido","previsto","primado","principiado","pringado","priorizado","privatizado","probado","problematizado","procedido","procesado","proclamado","procreado","procurado","prodigado","producido","profanado","proferido","profesado","profesionalizado","profetizado","profundizado","programado","progresado","prohibido","prohijado","proletarizado","proliferado","prologado","prolongado","promediado","prometido","promocionado","promovido","promulgado","pronosticado","pronunciado","propagado","propalado","propendido","propiciado","propinado","proporcionado","propuesto","propugnado","propulsado","prorrateado","prorrogado","proseguido","prosperado","prostituido","protegido","protestado","protocolizado","provenido","provocado","proyectado","psicoanalizado","publicado","publicitado","puesto","pugnado","pujado","pulido","pulsado","pululado","pulverizado","punado","punteado","puntuado","puntualizado","punzado","purgado","purificado","puteado","quebrado","quebrantado","quejado","quemado","querellado","querido","quintuplicado","quitado","racionado","racionalizado","radiado","radicado","radicalizado","raído","rajado","ralentizado","rapado","rapeado","raptado","rascado","rasgado","rasguñado","raspado","rastreado","rasurado","ratificado","rayado","razonado","reabierto","reabsorbido","reaccionado","reactivado","readaptado","readmitido","reafirmado","reagrupado","reajustado","realimentado","realizado","realzado","reanimado","reanudado","reaparecido","rearmado","reasumido","reavivado","rebajado","rebalsado","rebanado","rebasado","rebatido","rebautizado","rebelado","reblandecido","rebobinado","rebosado","rebotado","rebozado","rebuscado","recabado","recaído","recalado","recalcado","recalentado","recalificado","recapacitado","recapitulado","recargado","recatado","recaudado","receptado","recetado","rechazado","recibido","reciclado","recitado","reclamado","reclinado","reclutado","recobrado","recocido","recogido","recolectado","recomendado","recomenzado","recompensado","recompuesto","reconcentrado","reconciliado","reconducido","reconfortado","reconocido","reconquistado","reconsiderado","reconstituido","reconstruido","reconvenido","reconvertido","recopilado","recordado","recorrido","recortado","recreado","recriminado","recrudecido","rectificado","recubierto","reculado","recuperado","recurrido","recusado","redactado","redefinido","redescubierto","redimensionado","redimido","rediseñado","redistribuido","redituado","redoblado","redondeado","reducido","redundado","reedificado","reeditado","reeducado","reelaborado","reembolsado","reemplazado","reencarnado","reencauchado","reencontrado","reenganchado","reenviado","reescrito","reestructurado","reexaminado","refaccionado","referido","refinado","refinanciado","reflejado","reflexionado","reflotado","reforestado","reformado","reforzado","refractado","refrenado","refrendado","refrescado","refrigerado","refundido","refutado","regado","regalado","regañado","regateado","regenerado","regentado","regenteado","regido","regionalizado","registrado","reglado","reglamentado","regocijado","regodeado","regresado","regulado","regularizado","regurgitado","rehabilitado","rehecho","rehogado","rehuido","rehusado","reído","reinado","reincidido","reincorporado","reingresado","reiniciado","reinsertado","reinstalado","reinstaurado","reintegrado","reinventado","reinvertido","reiterado","reivindicado","rejuvenecido","relajado","relamido","relanzado","relatado","relativizado","relegado","releído","relevado","religado","rellenado","remachado","remado","remangado","remarcado","rematado","remecido","remediado","rememorado","remendado","remitido","remodelado","remojado","remolcado","remontado","removido","remplazado","renacido","rendido","renegado","renegociado","reñido","renombrado","renovado","rentabilizado","rentado","renunciado","reordenado","reorganizado","reorientado","reparado","repartido","repasado","repatriado","repelido","repensado","repercutido","repescado","repetido","repicado","repintado","replanteado","replegado","replicado","repoblado","reportado","reporteado","reposado","repreguntado","reprendido","represado","representado","reprimido","reprobado","reprochado","reproducido","repudiado","repuesto","repugnado","repuntado","reputado","requerido","requisado","resaltado","resarcido","resbalado","rescatado","rescindido","resecado","reseñado","reservado","reseteado","resguardado","residido","resignado","resistido","resonado","respaldado","respetado","respirado","resplandecido","respondido","responsabilizado","resquebrajado","restablecido","restado","restaurado","restituido","restregado","resucitado","resuelto","resumido","resurgido","retado","retardado","retenido","retirado","retocado","retomado","retorcido","retornado","retractado","retraído","retransmitido","retrasado","retratado","retribuido","retrotraído","retumbado","reunido","reunificado","reutilizado","revalidado","revalorizado","revaluado","revelado","revendido","reventado","reverdecido","reverenciado","revertido","revestido","revirado","revisado","revitalizado","revivido","revocado","revolcado","revoloteado","revolucionado","revuelto","ridiculizado","rifado","rimado","rivalizado","rizado","robado","robustecido","rociado","rodado","rodeado","rogado","roído","rondado","rotado","roto","rotulado","roturado","rozado","ruborizado","rubricado","rugido","rumiado","rumorado","sabido","saboreado","saboteado","sacado","saciado","sacralizado","sacrificado","sacudido","saldado","salpimentado","salpullido","saltado","salteado","saludado","salvado","salvaguardado","sanado","saneado","sangrado","santificado","saqueado","satanizado","satirizado","satisfecho","sazonado","secado","seccionado","secretado","secuenciado","secuestrado","secundado","sedimentado","seducido","segado","segmentado","segregado","seguido","seleccionado","sembrado","señalado","sensibilizado","sentado","sentenciado","sentido","separado","serenado","serrado","servido","significado","silenciado","simbolizado","simpatizado","simplificado","simulado","sincerado","sincronizado","sindicado","sindicalizado","singularizado","sintetizado","sintonizado","sistematizado","situado","sobado","sobornado","sobrado","sobrecargado","sobrecogido","sobreentendido","sobreestimado","sobrellevado","sobrentendido","sobrepasado","sobrepuesto","sobresalido","sobresaltado","sobrestimado","sobrevenido","sobrevivido","sobrevolado","socavado","socializado","socorrido","sodomizado","sofocado","sojuzgado","solapado","solicitado","solidarizado","solidificado","soliviantado","soltado","solucionado","solventado","sombreado","sometido","sonado","soñado","sondeado","sonreído","sonrojado","sopesado","soplado","soportado","sorbido","sorprendido","sorteado","sosegado","soslayado","sospechado","sostenido","suavizado","subastado","subcontratado","subdividido","subestimado","subido","sublevado","sublimado","subrayado","subrogado","subsanado","subsidiado","subsistido","substraído","subsumido","subvertido","subyugado","succionado","sucedido","sucumbido","sudado","sufragado","sufrido","sugerido","sugestionado","suicidado","sujetado","sumado","sumergido","suministrado","supeditado","superado","superpuesto","supervisado","suplantado","suplicado","suplido","suprimido","supuesto","surcado","surtido","suscitado","suspendido","suspirado","sustanciado","sustantivado","sustentado","sustituido","sustraído","susurrado","suturado","tabulado","tachado","talado","taladrado","tallado","tambaleado","tamizado","tañido","tanteado","tapado","tapizado","taponado","tarareado","tardado","tasado","tatuado","tecleado","tejido","telefoneado","televisado","temido","templado","tendido","tenido","tensado","tentado","teorizado","terciado","tergiversado","terminado","territorializado","testado","testeado","testificado","testimoniado","tildado","timado","timbrado","tinturado","tipeado","tipificado","tirado","tiranizado","tironeado","tiroteado","titubeado","tiznado","tocado","tolerado","tomado","tonificado","topado","toqueteado","torcido","toreado","tornado","tornasolado","torneado","torpedeado","torturado","tosido","tostado","totalizado","trabado","trabajado","traducido","traficado","tragado","traicionado","traído","trajinado","tramado","tramitado","trancado","tranquilizado","transcendido","transcurrido","transferido","transfigurado","transformado","transfundido","transgredido","transigido","transitado","transliterado","translucido","transmitido","transmutado","transparentado","transpirado","transportado","transpuesto","trasegado","trasgredido","trasladado","traslapado","traslucido","trasnochado","traspapelado","traspasado","trasplantado","traspuesto","trasquilado","trasteado","trastocado","trastornado","trasvasado","tratado","trazado","trenzado","trepado","tributado","trincado","triplicado","triturado","triunfado","trivializado","trocado","troceado","tronado","tronchado","truncado","tumbado","tuneado","turbado","turnado","tutelado","ufanado","ultimado","uncido","ungido","unido","universalizado","untado","urbanizado","urdido","usado","usufructuado","usurpado","utilizado","vacado","vaciado","vacilado","vacunado","vagado","validado","valido","valorado","valorizado","valuado","vanagloriado","vandalizado","vaporizado","variado","vaticinado","vedado","vehiculado","vejado","velado","vencido","vendado","vendido","venerado","vengado","ventilado","veraneado","verbalizado","verificado","versado","versionado","vertebrado","vertido","vestido","vetado","viabilizado","viajado","vibrado","victimado","victimizado","vigilado","vigorizado","vilipendiado","vindicado","violado","violentado","virado","visado","visibilizado","visitado","vislumbrado","visto","visualizado","vitoreado","vitrificado","vituperado","vivido","vivificado","vocalizado","voceado","vociferado","volado","volatilizado","volcado","volteado","vomitado","votado","vuelto","vulcanizado","vulgarizado","vulnerado","yuxtapuesto","zafado","zambullido","zampado","zanjado","zarandeado","zarpado","zozobrado","zumbado","zurcido","zurrado","abajada","abalanzada","abaleada","abandonada","abaratada","abarcada","abarrotada","abastecida","abatida","abdicada","abierta","abismada","abjurada","ablandada","abocada","abochornada","abofeteada","abolida","abollada","abombada","abominada","abonada","abordada","aborrecida","aborregada","abortada","abotonada","abrasada","abrazada","abrevada","abreviada","abrigada","abrochada","abrogada","abroquelada","abrumada","absorbida","abstenida","abstraída","absuelta","abucheada","abultada","abundada","aburguesada","aburrida","abusada","acabada","acallada","acalorada","acaparada","acariciada","acarreada","acatada","acaudillada","accedida","accionada","acechada","aceitada","acelerada","acentuada","aceptada","acerada","acercada","acertada","achacada","achantada","achatada","achicada","acicalada","acidificada","aclarada","aclimatada","acobardada","acodada","acogida","acojonada","acometida","acomodada","acompañada","acompasada","acongojada","aconsejada","acontecida","acopiada","acoplada","acordada","acordonada","acorralada","acortada","acosada","acostada","acostumbrada","acotada","acrecentada","acreditada","acrisolada","activada","actuada","acuchillada","acuciada","acudida","acuerpada","acumulada","acunada","acuñada","acurrucada","acusada","adaptada","adecentada","adelantada","adelgazada","adentrada","adeudada","adherida","adicionada","adiestrada","adivinada","adjetivada","adjudicada","adjuntada","administrada","admirada","admitida","adoctrinada","adolecida","adoptada","adorada","adormecida","adornada","adquirida","aducida","adueñada","adulada","adulterada","advertida","afanada","afeada","afectada","afeitada","aferrada","afianzada","afinada","afirmada","afligida","aflorada","afrentada","afrontada","agachada","agarrada","agarrotada","agasajada","agenciada","agigantada","agilizada","agitada","aglutinada","agobiada","agolpada","agonizada","agostada","agotada","agradada","agradecida","agrandada","agravada","agraviada","agredida","agregada","agriada","agrietada","agrupada","aguada","aguantada","aguardada","agudizada","aguijoneada","agujereada","aguzada","ahogada","ahondada","ahorcada","ahorrada","ahuecada","ahuyentada","aireada","aislada","ajustada","ajusticiada","alabada","alagada","alambrada","alardeada","alargada","alarmada","albergada","alborotada","alcanzada","aleccionada","alegada","alegrada","alejada","alentada","alertada","alfabetizada","alfombrada","aliada","alienada","aligerada","alimentada","aliñada","alineada","alisada","alistada","aliviada","alivianada","allanada","almacenada","almorzada","alojada","alquilada","alterada","alternada","alucinada","aludida","alumbrada","alzada","amada","amaestrada","amagada","amainada","amalgamada","amamantada","amansada","amargada","amarrada","amasada","ambicionada","amedrentada","amenazada","amenizada","ameritada","ametrallada","amilanada","aminorada","amnistiada","amoldada","amonestada","amontonada","amordazada","amortajada","amortiguada","amortizada","amotinada","amparada","ampayada","ampliada","amplificada","amputada","amueblada","añadida","analizada","anatematizada","andada","anegada","anestesiada","anexada","anexionada","anhelada","anidada","anillada","animada","aniquilada","anisada","añorada","anotada","anoticiada","ansiada","antecedida","antepuesta","anticipada","antojada","anudada","anulada","anunciada","apabullada","apachurrada","apaciguada","apadrinada","apagada","apalancada","apaleada","apañada","apantallada","aparcada","apareada","aparecida","aparentada","apartada","apeada","apedreada","apelada","apellidada","apelmazada","apercibida","apersonada","apestada","apetecida","apiadada","apilada","apiñada","apisonada","aplacada","aplanada","aplastada","aplaudida","aplazada","aplicada","apoderada","apoltronada","aporreada","aportada","aposentada","apostada","apostatada","apostillada","apoyada","apreciada","aprehendida","apremiada","aprendida","apresada","apresurada","apretada","apretujada","aprisionada","aprobada","aprovechada","aprovisionada","aproximada","apuñalada","apuñaleada","apuntada","apuntalada","apuntillada","apurada","aquejada","aquietada","aquilatada","arañada","arbitrada","archivada","arengada","argüida","argumentada","armada","armonizada","aromatizada","arqueada","arrancada","arrasada","arrastrada","arreada","arrebatada","arreciada","arreglada","arrellanada","arremangada","arremetida","arrendada","arrepentida","arrestada","arriada","arribada","arriesgada","arrimada","arrinconada","arrodillada","arrogada","arrojada","arrollada","arropada","arruinada","arrullada","articulada","asada","asaltada","ascendida","aseada","asechada","asediada","asegurada","asemejada","asentada","asentida","aserrada","asesinada","asesorada","asestada","aseverada","asfixiada","asida","asignada","asilada","asimilada","asistida","asolada","asoleada","asomada","asombrada","aspirada","astillada","asumida","asustada","atacada","atada","atajada","atarantada","atascada","atemorizada","atemperada","atenazada","atendida","atenida","atentada","atenuada","aterrada","aterrorizada","atesorada","atestiguada","atiborrada","atisbada","atizada","atomizada","atontada","atorada","atormentada","atornillada","atosigada","atracada","atragantada","atraída","atrancada","atrapada","atrasada","atravesada","atrevida","atribuida","atrincherada","atrofiada","atropellada","aturdida","auditada","augurada","aumentada","aunada","aupada","auscultada","ausentada","autenticada","autentificada","autodefinida","autoeditada","automatizada","autorizada","autorregulada","auxiliada","avalada","avanzada","avasallada","avenida","aventada","aventajada","aventurada","averiada","averiguada","avezada","avisada","avispada","avistada","avivada","avizorada","avocada","ayudada","azotada","azuzada","babeada","bailada","bajada","balaceada","balanceada","bañada","banalizada","bancada","bandeada","barajada","barrida","basada","bastardeada","basureada","batallada","bateada","batida","bautizada","beatificada","bebida","beneficiada","besada","bifurcada","birlada","blandida","blanqueada","blasfemada","blindada","bloqueada","boicoteada","bombardeada","bombeada","bonificada","bordeada","borrada","borroneada","bosquejada","bostezada","botada","boxeada","bregada","brillada","brincada","brindada","bromeada","brotada","bruñida","buceada","burlada","buscada","cabeceada","cabida","cabildeada","cabreada","cacareada","cachada","cacheada","cacheteada","caducada","cagada","calada","calculada","caldeada","calefaccionada","calendarizada","calentada","calibrada","calificada","caligrafiada","callada","calmada","calumniada","calzada","cambiada","caminada","camuflada","canalizada","cancelada","canjeada","cansada","cantada","capada","capeada","capitalizada","capitulada","captada","capturada","caracterizada","carburada","carcomida","cardada","careada","carecida","cargada","caricaturizada","cartografiada","cascada","castigada","castrada","catada","catalizada","catalogada","catapultada","cateada","categorizada","causada","cauterizada","cautivada","cavada","cavilada","cazada","cebada","cedida","cegada","cejada","celebrada","cenada","ceñida","censurada","centrifugada","centuplicada","cepillada","cercada","cercenada","cerciorada","cernida","cerrada","cesada","chafada","chamuscada","chantajeada","chapada","charlada","chateada","chequeada","chiflada","chillada","chingada","chirriada","chivada","chocada","chorreada","choteada","chupada","chutada","cicatrizada","cifrada","cimentada","cincelada","circulada","circuncidada","circundada","citada","clamada","clarificada","clasificada","claudicada","clausurada","clavada","clicada","clonada","coaccionada","coadyuvada","coagulada","coaligada","coartada","cobijada","cobrada","cocida","cocinada","codeada","codiciada","codificada","codirigida","coexistida","cofinanciada","cogida","cohabitada","cohibida","coincidida","colaborada","colacionada","colada","colapsada","coleccionada","colectada","colectivizada","colgada","colisionada","colmada","colocada","colonizada","coloreada","columpiada","combatida","combinada","comentada","comenzada","comerciada","comercializada","cometida","comida","comisionada","compactada","compadecida","compaginada","comparada","comparecida","compartida","compatibilizada","compelida","compendiada","compenetrada","compensada","compilada","complacida","complementada","completada","complotada","comportada","comprada","comprendida","comprimida","comprobada","comprometida","compuesta","compulsada","computada","comulgada","comunicada","concatenada","concebida","concedida","concelebrada","concentrada","conceptuada","conceptualizada","concertada","concienciada","concientizada","conciliada","concitada","concluida","concordada","concretada","concretizada","conculcada","concursada","condenada","condensada","condicionada","condimentada","condolida","condonada","conducida","conectada","conexionada","confabulada","confeccionada","conferida","confesada","confiada","configurada","confirmada","confiscada","confluida","conformada","confortada","confrontada","confundida","congeniada","congestionada","congratulada","congregada","conjeturada","conjugada","conjuntada","conjurada","conllevada","conmemorada","conminada","conmocionada","conmovida","conmutada","connotada","conquistada","consagrada","conseguida","consensuada","consentida","conservada","considerada","consignada","consistida","consolada","consolidada","conspirada","constada","constatada","constelada","constitucionalizada","constituida","constreñida","construida","consultada","consumada","consumida","contabilizada","contactada","contada","contagiada","contemplada","contendida","contenida","contentada","contestada","contextualizada","continuada","contorneada","contraatacada","contrabandeada","contradicha","contrahecha","contraída","contrapesada","contrapuesta","contrariada","contrarrestada","contrastada","contratada","contravenida","contribuida","contristada","controlada","convalidada","convencida","convenida","convergida","conversada","convertida","convidada","convivida","convocada","convulsionada","cooperada","cooptada","coordinada","copada","copiada","coproducida","copulada","coqueteada","corchada","coreada","coreografiada","corneada","coronada","corporizada","corregida","correlacionada","correspondida","correteada","corrida","corroborada","corroída","corrompida","cortada","cortejada","cosechada","cosida","cosificada","costada","costeada","cotejada","cotizada","creada","creída","criada","cribada","criminalizada","crispada","cristalizada","cristianizada","criticada","cronometrada","crucificada","crujida","cruzada","cuadriplicada","cuadruplicada","cuajada","cuantificada","cuarteada","cubierta","cuestionada","cuidada","culeada","culminada","culpabilizada","culpada","cultivada","culturizada","cumplida","cumplimentada","cundida","curada","curioseada","currada","cursada","curvada","custodiada","dada","dañada","danzada","datada","dateada","debatida","debida","debilitada","debitada","debutada","decaída","decantada","decapitada","decepcionada","decidida","declamada","declarada","declinada","decodificada","decolorada","decomisada","decrecida","decretada","dedicada","deducida","defecada","defendida","defenestrada","deferida","definida","deformada","defraudada","degenerada","deglutida","degollada","degradada","degustada","deificada","dejada","delatada","delegada","deleitada","deletreada","deliberada","delimitada","delineada","delinquida","demandada","demarcada","demediada","demeritada","democratizada","demolida","demonizada","demorada","demostrada","demudada","denegada","denigrada","denominada","denostada","denotada","denunciada","deparada","departida","dependida","depilada","deplorada","deportada","depositada","depreciada","depredada","deprimida","depuesta","depurada","derechizada","derivada","derogada","derramada","derretida","derribada","derrocada","derrochada","derrotada","derruida","derrumbada","desabrochada","desacatada","desacelerada","desacomodada","desaconsejada","desacoplada","desacralizada","desacreditada","desactivada","desafiada","desafinada","desaguada","desahogada","desairada","desajustada","desalentada","desalineada","desalojada","desandada","desangrada","desanimada","desaparecida","desapegada","desaprendida","desaprobada","desaprovechada","desarmada","desarraigada","desarreglada","desarrollada","desarticulada","desaseada","desasida","desasosegada","desatada","desatendida","desautorizada","desayunada","desbancada","desbandada","desbaratada","desbarrancada","desbastada","desbloqueada","desbocada","desbordada","desbrozada","descabalgada","descabezada","descaderada","descalabrada","descalificada","descansada","descargada","descarriada","descarrilada","descartada","descascarada","descascarillada","descendida","descentrada","descifrada","descocida","descodificada","descojonada","descolgada","descolocada","descolonizada","descompensada","descomprimida","descompuesta","desconectada","desconfiada","descongelada","desconocida","descontada","descontaminada","descontextualizada","descontinuada","desconvocada","descorazonada","descorchada","descorrida","descosida","descoyuntada","descreída","descristianizada","descuadrada","descuartizada","descubierta","descuidada","desdeñada","desdibujada","desdicha","desdoblada","deseada","desecada","desechada","desembarazada","desembarcada","desembocada","desembolsada","desempacada","desempañada","desempaquetada","desempeñada","desempolvada","desenamorada","desencadenada","desencajada","desencarnada","desenchufada","desenfocada","desenfundada","desenganchada","desengrasada","desenmascarada","desenredada","desenrollada","desentendida","desenterrada","desentonada","desentrañada","desenvainada","desenvuelta","desequilibrada","desertada","desestabilizada","desestimada","desfalcada","desfallecida","desfigurada","desfondada","desgajada","desgañitada","desgarrada","desgastada","desglosada","desgobernada","desgranada","desguazada","deshecha","desheredada","deshidratada","deshilachada","deshojada","deshonrada","deshuesada","deshumanizada","designada","desilusionada","desincentivada","desinfectada","desinflada","desinflamada","desinformada","desinhibida","desinstalada","desintegrada","desintoxicada","desistida","desjarretada","deslegitimada","desleída","desligada","deslindada","deslizada","deslucida","deslumbrada","desmadrada","desmalezada","desmantelada","desmaquillada","desmarcada","desmayada","desmejorada","desmembrada","desmentida","desmenuzada","desmerecida","desmigada","desmitificada","desmoldada","desmontada","desmoralizada","desmoronada","desmotivada","desmovilizada","desnaturalizada","desnivelada","desnucada","desnudada","desobedecida","desobligada","desoída","desollada","desorganizada","desorientada","despachada","desparasitada","desparecida","desparramada","despedazada","despedida","despegada","despeinada","despejada","despellejada","despeñada","despenalizada","desperdiciada","despersonalizada","despertada","despilfarrada","despintada","despiojada","despistada","desplazada","desplegada","desplomada","desplumada","despojada","despolitizada","desposada","desposeída","despotricada","despreciada","desprendida","despreocupada","desprestigiada","desprogramada","despulpada","despuntada","desquiciada","desquitada","destacada","destapada","desteñida","desterrada","destetada","destilada","destituida","destrabada","destripada","destronada","destrozada","destruida","desunida","desvalijada","desvalorizada","desvanecida","desvelada","desvestida","desviada","desvinculada","desvirtuada","desvivida","detectada","detenida","detentada","deteriorada","determinada","detestada","detonada","devaluada","devanada","devastada","develada","devengada","devenida","devorada","devuelta","diagnosticada","diagramada","dializada","dialogada","dibujada","dicha","dictada","dictaminada","diezmada","difamada","diferenciada","diferida","dificultada","difuminada","difundida","digerida","digitada","dignada","dignificada","dilapidada","dilatada","diligenciada","dilucidada","diluida","dimensionada","dimitida","dinamitada","dinamizada","dirimida","discernida","disciplinada","discontinuada","discrepada","discriminada","disculpada","discurrida","discutida","diseccionada","diseminada","diseñada","disentida","disertada","disfrazada","disfrutada","disgregada","disgustada","disimulada","disipada","dislocada","disminuida","disociada","dispensada","dispersada","dispuesta","disputada","distada","distanciada","distendida","distinguida","distorsionada","distraída","distribuida","disuadida","disuelta","divagada","diversificada","divertida","dividida","divinizada","divisada","divorciada","divulgada","doblada","doblegada","doctorada","documentada","dogmatizada","dolida","domada","domesticada","dominada","donada","dopada","dormida","dosificada","dotada","dragada","dramatizada","drenada","drogada","duchada","dudada","dulcificada","duplicada","durada","echada","eclipsada","eclosionada","economizada","ecualizada","edificada","editada","educada","efectuada","ejecutada","ejemplificada","ejercida","ejercitada","elaborada","electrizada","electrocutada","elevada","elidida","eliminada","elogiada","elucubrada","eludida","emanada","emancipada","embadurnada","embalada","embalsamada","embanderada","embarcada","embargada","embarrada","embarrancada","embaucada","embebida","embelesada","embellecida","embestida","embolada","embolsada","emborrachada","emborronada","emboscada","embotada","embriagada","embrollada","embrutecida","embuchada","emergida","emigrada","emitida","emocionada","empacada","empachada","empadronada","empalada","empalmada","empanada","empañada","empantanada","empapelada","empaquetada","emparejada","empastada","empatada","empecinada","empeñada","empeorada","empequeñecida","emperrada","empezada","empinada","emplazada","empleada","empobrecida","empoderada","empollada","empolvada","emponzoñada","emprendida","empujada","empuñada","emputada","emulada","emulsionada","enajenada","enaltecida","enamorada","enarbolada","enardecida","encabezada","encabritada","encabronada","encadenada","encajada","encajonada","encallada","encamada","encaminada","encandilada","encanecida","encañonada","encantada","encaprichada","encapsulada","encarada","encaramada","encarecida","encargada","encariñada","encarnada","encarrilada","encartada","encasillada","encasquetada","encasquillada","encastrada","encausada","encauzada","enceguecida","encendida","encerada","encerrada","encharcada","enchufada","encimada","encogida","encolada","encolerizada","encolumnada","encomendada","enconada","encontrada","encordada","encrespada","encuadrada","encubierta","encuerada","encumbrada","enderezada","endeudada","endilgada","endiosada","endosada","endulzada","endurecida","enemistada","energizada","enervada","enfadada","enfangada","enfatizada","enfermada","enfiestada","enfilada","enflaquecida","enfocada","enfrascada","enfrentada","enfriada","enfurecida","engalanada","engañada","enganchada","engarzada","engatusada","engendrada","englobada","engolosinada","engordada","engranada","engrandecida","engrasada","engreída","engrosada","engullida","enharinada","enhebrada","enjuagada","enjugada","enjuiciada","enlazada","enlistada","enlodada","enloquecida","enlozada","enlutada","enmarañada","enmascarada","enmendada","enmohecida","enmudecida","ennegrecida","ennoblecida","enorgullecida","enrarecida","enredada","enripiada","enriquecida","enrocada","enrojecida","enrolada","enrollada","enroscada","enrumbada","ensalzada","ensamblada","ensañada","ensanchada","ensartada","ensayada","ensebada","enseñada","enseñoreada","ensillada","ensoberbecida","ensogada","ensombrecida","ensoñada","ensordecida","ensuciada","entablada","entallada","entendida","enterada","enternecida","enterrada","entibiada","entintada","entonada","entorpecida","entrada","entrampada","entrañada","entreabierta","entrecomillada","entrecruzada","entregada","entrelazada","entremetida","entremezclada","entrenada","entresacada","entretejida","entretenida","entreverada","entrevistada","entristecida","entrometida","entronada","entroncada","entronizada","entumecida","enturbiada","entusiasmada","enumerada","enunciada","envainada","envalentonada","envanecida","envasada","envejecida","envenenada","envestida","enviada","enviciada","envidiada","envilecida","enviudada","envuelta","enzarzada","equilibrada","equiparada","equivocada","erigida","erizada","erogada","erosionada","erotizada","erradicada","errada","esbozada","escabullida","escalada","escaldada","escalfada","escamada","escamoteada","escampada","escandalizada","escaneada","escapada","escaqueada","escarbada","escarchada","escarmentada","escarnecida","escaseada","escatimada","escenificada","escindida","esclarecida","esclavizada","escocida","escogida","escolarizada","escoltada","escondida","escorada","escrachada","escrita","escrutada","escuchada","escudada","escudriñada","esculpida","escupida","escurrida","esforzada","esfumada","esgrimida","esmerada","esmerilada","espabilada","espaciada","españolizada","espantada","esparcida","especificada","especulada","esperada","espesada","espetada","espiada","espigada","espinada","espirada","espiritualizada","espoleada","espolvoreada","esponjada","esponsorizada","esposada","esquematizada","esquiada","esquilada","esquilmada","esquivada","estabilizada","establecida","estacionada","estafada","estallada","estampada","estancada","estaqueada","estatizada","estatuida","esterificada","esterilizada","estigmatizada","estilizada","estimada","estimulada","estipulada","estirada","estorbada","estornudada","estragada","estrangulada","estrechada","estrellada","estremecida","estrenada","estresada","estriada","estropeada","estructurada","estrujada","estudiada","eternizada","etiquetada","evacuada","evadida","evaluada","evangelizada","evaporada","evidenciada","eviscerada","evitada","evocada","evolucionada","exacerbada","exagerada","exaltada","examinada","exasperada","excarcelada","excavada","excedida","exceptuada","excitada","exclamada","excluida","excretada","exculpada","excusada","execrada","exhalada","exhibida","exhortada","exhumada","exigida","exilada","eximida","existida","exonerada","exorcizada","expandida","expedida","expedientada","expelida","expendida","experimentada","expiada","expirada","explayada","explicada","explicitada","explorada","explosionada","explotada","expoliada","exportada","expresada","exprimida","expropiada","expuesta","expulsada","expurgada","extendida","exteriorizada","exterminada","externada","externalizada","extinguida","extirpada","extorsionada","extractada","extraditada","extraída","extralimitada","extrañada","extrapolada","extraviada","extremada","extruida","exudada","eyaculada","eyectada","fabricada","fabulada","facilitada","facturada","facultada","fagocitada","fajada","fallada","fallecida","falsada","falseada","falsificada","familiarizada","fantaseada","fascinada","fastidiada","fatigada","favorecida","fecundada","felicitada","feminizada","fenecida","fermentada","fertilizada","festejada","fiada","fichada","fidelizada","figurada","fijada","filmada","filosofada","filtrada","finalizada","financiada","fincada","fingida","finiquitada","firmada","fiscalizada","fisurada","flagelada","flameada","flanqueada","flaqueada","fletada","flexibilizada","flexionada","flipada","floreada","florecida","flotada","fluctuada","focalizada","fogueada","foliada","follada","fomentada","fondeada","forcejeada","forestada","forjada","formada","formalizada","formateada","formulada","fornicada","forrada","fortalecida","forzada","fotocopiada","fotografiada","fracasada","fraccionada","fracturada","fragmentada","fraguada","franqueada","frecuentada","fregada","frenada","fresada","friccionada","frotada","fructificada","fruncida","fugada","fulminada","fumada","fumigada","funcionada","fundada","fundamentada","fundida","fungida","fusilada","fusionada","fustigada","gafada","ganada","gangrenada","garabateada","garantida","garantizada","garrida","gaseada","gastada","gemida","generada","generalizada","gerenciada","germinada","gestada","gestionada","girada","glorificada","glosada","gobernada","goleada","golpeada","gozada","grabada","graduada","graficada","granjeada","grapada","gratificada","gravada","gravitada","gritada","gruñida","guardada","guarecida","guarnecida","guerreada","guiada","guillotinada","guiñada","guindada","guisada","gustada","habilitada","habitada","habituada","hablada","halada","halagada","hallada","hartada","hechizada","hecha","helenizada","henchida","hendida","heredada","herida","hermanada","herrada","hervida","hibernada","hibridada","hidratada","higienizada","hilada","hilvanada","hincada","hinchada","hipnotizada","hipotecada","historiada","hojeada","holgada","hollada","homenajeada","homogeneizada","homologada","honrada","horadada","horneada","horrorizada","hospedada","hostigada","hostilizada","huida","humanada","humanizada","humectada","humedecida","humillada","hundida","hurgada","hurtada","ideada","idealizada","identificada","ideologizada","idiotizada","idolatrada","ignorada","igualada","ilegalizada","iluminada","ilusionada","ilustrada","imaginada","imbricada","imitada","impactada","impartida","impedida","impelida","imperada","impermeabilizada","implantada","implementada","implicada","implorada","importada","importunada","imposibilitada","impresionada","improvisada","impuesta","impugnada","impulsada","imputada","inaugurada","incautada","incendiada","incentivada","incinerada","incitada","inclinada","incluida","incoada","incomodada","incorporada","incrementada","increpada","incriminada","incubada","inculcada","inculpada","incumplida","incurrida","incursionada","indagada","indemnizada","independizada","indexada","indicada","indigestada","indignada","indispuesta","individuada","inducida","indultada","inervada","infamada","infartada","infectada","inferida","inficionada","infiltrada","inflada","inflamada","infligida","influenciada","influida","informada","infravalorada","infringida","infundida","ingeniada","ingerida","ingresada","inhabilitada","inhalada","inhibida","inhumada","iniciada","inicializada","injertada","injuriada","inmigrada","inmiscuida","inmolada","inmortalizada","inmovilizada","inmunizada","innovada","inoculada","inquietada","inquirida","insensibilizada","insertada","insinuada","insistida","inspeccionada","inspirada","instada","instalada","instaurada","instigada","instituida","instruida","instrumentada","instrumentalizada","insuflada","insultada","insumida","integrada","intelectualizada","intensificada","intentada","interactuada","intercalada","intercambiada","intercedida","interceptada","interesada","interferida","interiorizada","intermediada","internacionalizada","internalizada","interpelada","interpolada","interpretada","interpuesta","interrogada","interrumpida","intervenida","intimada","intimidada","intitulada","intoxicada","intrigada","introducida","intuida","inundada","inutilizada","invadida","invalidada","inventada","inventariada","invertida","investida","investigada","invitada","invocada","involucionada","inyectada","ionizada","ironizada","irradiada","irrespetada","irrigada","irritada","irrogada","irrumpida","jactada","jalada","jaleada","jalonada","jaqueada","jerarquizada","jodida","jorobada","jubilada","jugada","juntada","jurada","juramentada","justificada","juzgada","laborada","labrada","laburada","lacada","lacerada","lactada","ladeada","ladrada","lamentada","lamida","laminada","languidecida","lanzada","lapidada","laqueada","largada","lastimada","lastrada","latida","laudada","lavada","legalizada","legislada","legitimada","leída","lesionada","leudada","levantada","liada","liberada","liberalizada","libertada","librada","licitada","licuada","liderizada","lidiada","ligada","lijada","limada","limitada","limpiada","linchada","liquidada","litigada","llagada","llamada","llegada","llenada","llevada","llorada","localizada","lograda","lubricada","luchada","lucida","lucrada","lustrada","macerada","machacada","macheteada","machucada","madreada","madrugada","madurada","magnetizada","magnificada","malacostumbrada","malbaratada","malcriada","maleada","malentendida","malgastada","malinterpretada","malograda","maltratada","malversada","mamada","manchada","mancillada","mandada","manejada","mangada","mangoneada","manifestada","maniobrada","manipulada","manoseada","manteada","mantenida","manufacturada","maquillada","maquinada","maravillada","marcada","marchitada","mareada","marginada","maridada","martillada","martirizada","masacrada","masajeada","mascada","masificada","masticada","masturbada","matada","materializada","matizada","matriculada","maximizada","meada","mecanografiada","mechada","mecida","mediada","mediatizada","medicada","medida","meditada","medrada","mejorada","mellada","memorizada","mencionada","meneada","menguada","menoscabada","menospreciada","menstruada","mensualizada","mensurada","mentada","mentalizada","mentida","mercadeada","mercantilizada","merecida","merendada","mermada","merodeada","mesurada","metamorfoseada","metida","mezclada","migrada","militada","militarizada","mimada","mimetizada","minada","minimizada","ministrada","minusvalorada","mirada","mistificada","mitificada","mitigada","modelada","modernizada","modificada","modulada","mofada","mojada","moldeada","molestada","molida","monetizada","monitorizada","monopolizada","montada","morada","moralizada","mordida","mordisqueada","mortificada","mosqueada","mostrada","motejada","motivada","movida","movilizada","mudada","muestreada","multada","multiplicada","munida","murmurada","mutada","mutilada","nacionalizada","narcotizada","narrada","naufragada","navegada","necesitada","negada","negociada","neutralizada","ninguneada","nivelada","nombrada","nominada","noqueada","normada","normalizada","notada","notificada","nutrida","obcecada","obedecida","objetada","objetivada","obligada","obliterada","obnubilada","obrada","obsequiada","observada","obsesionada","obstaculizada","obstruida","obtenida","obturada","obviada","ocasionada","ocluida","ocultada","ocupada","odiada","ofendida","ofertada","oficiada","oficializada","ofrecida","ofrendada","ofuscada","oída","ojeada","olfateada","olida","olvidada","omitida","ondeada","ondulada","opacada","operada","opinada","oprimida","optada","optimizada","opuesta","orada","orbitada","ordenada","ordeñada","organizada","orientada","originada","orillada","orinada","ornada","ornamentada","orquestada","osada","oscilada","oscurecida","osificada","ostentada","otorgada","ovacionada","ovulada","oxidada","oxigenada","pacificada","pactada","padecida","paganizada","paginada","paladeada","paliada","palpada","parada","parafraseada","paralizada","parapetada","parasitada","parcelada","parchada","parcheada","pareada","parida","parodiada","parqueada","participada","particularizada","partida","pasada","paseada","pastoreada","pataleada","pateada","patentada","patentizada","patinada","patrullada","pecada","pedaleada","pedida","pegada","peinada","pellizcada","penalizada","penetrada","pensada","percatada","percibida","percutida","perdida","perdonada","perdurada","perecida","peregrinada","perfeccionada","perfilada","perforada","perfumada","pergeñada","peritada","perjudicada","perjurada","permeada","permitida","permutada","pernoctada","perpetrada","perpetuada","perseguida","perseverada","persistida","personada","personalizada","personificada","persuadida","pertenecida","pertrechada","perturbada","pervertida","pervivida","pescada","petada","peticionada","picada","picaneada","picoteada","pifiada","pignorada","pillada","pilotada","piloteada","pincelada","pinchada","pintada","pintarrajeada","pinzada","pirada","pirateada","pisada","pisoteada","pitada","placida","plagiada","planchada","planeada","plantada","planteada","plasmada","platicada","plegada","pluralizada","podada","poetizada","polemizada","politizada","pololeada","ponderada","pontificada","popularizada","porfiada","portada","porteada","posada","posesionada","posibilitada","posicionada","pospuesta","posteada","postergada","postrada","postulada","potenciada","practicada","precarizada","precedida","preceptuada","precintada","precipitada","precisada","preconizada","predicada","predicha","predispuesta","predominada","preferida","prefigurada","pregonada","preguntada","prejuzgada","premiada","prendada","prendida","preocupada","preparada","presagiada","prescindida","presenciada","presentada","presentida","preservada","presidida","presionada","prestada","prestigiada","presumida","presurizada","pretendida","preterida","prevalecida","prevalida","prevaricada","prevenida","prevista","primada","principiada","pringada","priorizada","privatizada","probada","problematizada","procedida","procesada","proclamada","procreada","procurada","prodigada","producida","profanada","proferida","profesada","profesionalizada","profetizada","profundizada","programada","progresada","prohibida","prohijada","proletarizada","proliferada","prologada","prolongada","promediada","prometida","promocionada","promovida","promulgada","pronosticada","pronunciada","propagada","propalada","propendida","propiciada","propinada","proporcionada","propuesta","propugnada","propulsada","prorrateada","prorrogada","proseguida","prosperada","prostituida","protegida","protestada","protocolizada","provenida","provocada","proyectada","psicoanalizada","publicada","publicitada","puesta","pugnada","pujada","pulida","pulsada","pululada","pulverizada","punada","punteada","puntuada","puntualizada","punzada","purgada","purificada","puteada","quebrada","quebrantada","quejada","quemada","querellada","querida","quintuplicada","quitada","racionada","racionalizada","radiada","radicada","radicalizada","raída","rajada","ralentizada","rapada","rapeada","raptada","rascada","rasgada","rasguñada","raspada","rastreada","rasurada","ratificada","rayada","razonada","reabierta","reabsorbida","reaccionada","reactivada","readaptada","readmitida","reafirmada","reagrupada","reajustada","realimentada","realizada","realzada","reanimada","reanudada","reaparecida","rearmada","reasumida","reavivada","rebajada","rebalsada","rebanada","rebasada","rebatida","rebautizada","rebelada","reblandecida","rebobinada","rebosada","rebotada","rebozada","rebuscada","recabada","recaída","recalada","recalcada","recalentada","recalificada","recapacitada","recapitulada","recargada","recatada","recaudada","receptada","recetada","rechazada","recibida","reciclada","recitada","reclamada","reclinada","reclutada","recobrada","recocida","recogida","recolectada","recomendada","recomenzada","recompensada","recompuesta","reconcentrada","reconciliada","reconducida","reconfortada","reconocida","reconquistada","reconsiderada","reconstituida","reconstruida","reconvenida","reconvertida","recopilada","recordada","recorrida","recortada","recreada","recriminada","recrudecida","rectificada","recubierta","reculada","recuperada","recurrida","recusada","redactada","redefinida","redescubierta","redimensionada","redimida","rediseñada","redistribuida","redituada","redoblada","redondeada","reducida","redundada","reedificada","reeditada","reeducada","reelaborada","reembolsada","reemplazada","reencarnada","reencauchada","reencontrada","reenganchada","reenviada","reescrita","reestructurada","reexaminada","refaccionada","referida","refinada","refinanciada","reflejada","reflexionada","reflotada","reforestada","reformada","reforzada","refractada","refrenada","refrendada","refrescada","refrigerada","refundida","refutada","regada","regalada","regañada","regateada","regenerada","regentada","regenteada","regida","regionalizada","registrada","reglada","reglamentada","regocijada","regodeada","regresada","regulada","regularizada","regurgitada","rehabilitada","rehecha","rehogada","rehuida","rehusada","reída","reinada","reincidida","reincorporada","reingresada","reiniciada","reinsertada","reinstalada","reinstaurada","reintegrada","reinventada","reinvertida","reiterada","reivindicada","rejuvenecida","relajada","relamida","relanzada","relatada","relativizada","relegada","releída","relevada","religada","rellenada","remachada","remada","remangada","remarcada","rematada","remecida","remediada","rememorada","remendada","remitida","remodelada","remojada","remolcada","remontada","removida","remplazada","renacida","rendida","renegada","renegociada","reñida","renombrada","renovada","rentabilizada","rentada","renunciada","reordenada","reorganizada","reorientada","reparada","repartida","repasada","repatriada","repelida","repensada","repercutida","repescada","repetida","repicada","repintada","replanteada","replegada","replicada","repoblada","reportada","reporteada","reposada","repreguntada","reprendida","represada","representada","reprimida","reprobada","reprochada","reproducida","repudiada","repuesta","repugnada","repuntada","reputada","requerida","requisada","resaltada","resarcida","resbalada","rescatada","rescindida","resecada","reseñada","reservada","reseteada","resguardada","residida","resignada","resistida","resonada","respaldada","respetada","respirada","resplandecida","respondida","responsabilizada","resquebrajada","restablecida","restada","restaurada","restituida","restregada","resucitada","resuelta","resumida","resurgida","retada","retardada","retenida","retirada","retocada","retomada","retorcida","retornada","retractada","retraída","retransmitida","retrasada","retratada","retribuida","retrotraída","retumbada","reunida","reunificada","reutilizada","revalidada","revalorizada","revaluada","revelada","revendida","reventada","reverdecida","reverenciada","revertida","revestida","revirada","revisada","revitalizada","revivida","revocada","revolcada","revoloteada","revolucionada","revuelta","ridiculizada","rifada","rimada","rivalizada","rizada","robada","robustecida","rociada","rodada","rodeada","rogada","roída","rondada","rotada","rota","rotulada","roturada","rozada","ruborizada","rubricada","rugida","rumiada","rumorada","sabida","saboreada","saboteada","sacada","saciada","sacralizada","sacrificada","sacudida","saldada","salpimentada","salpullida","saltada","salteada","saludada","salvada","salvaguardada","sanada","saneada","sangrada","santificada","saqueada","satanizada","satirizada","satisfecha","sazonada","secada","seccionada","secretada","secuenciada","secuestrada","secundada","sedimentada","seducida","segada","segmentada","segregada","seguida","seleccionada","sembrada","señalada","sensibilizada","sentada","sentenciada","sentida","separada","serenada","serrada","servida","significada","silenciada","simbolizada","simpatizada","simplificada","simulada","sincerada","sincronizada","sindicada","sindicalizada","singularizada","sintetizada","sintonizada","sistematizada","situada","sobada","sobornada","sobrada","sobrecargada","sobrecogida","sobreentendida","sobreestimada","sobrellevada","sobrentendida","sobrepasada","sobrepuesta","sobresalida","sobresaltada","sobrestimada","sobrevenida","sobrevivida","sobrevolada","socavada","socializada","socorrida","sodomizada","sofocada","sojuzgada","solapada","solicitada","solidarizada","solidificada","soliviantada","soltada","solucionada","solventada","sombreada","sometida","sonada","soñada","sondeada","sonreída","sonrojada","sopesada","soplada","soportada","sorbida","sorprendida","sorteada","sosegada","soslayada","sospechada","sostenida","suavizada","subastada","subcontratada","subdividida","subestimada","subida","sublevada","sublimada","subrayada","subrogada","subsanada","subsidiada","subsistida","substraída","subsumida","subvertida","subyugada","succionada","sucedida","sucumbida","sudada","sufragada","sufrida","sugerida","sugestionada","suicidada","sujetada","sumada","sumergida","suministrada","supeditada","superada","superpuesta","supervisada","suplantada","suplicada","suplida","suprimida","supuesta","surcada","surtida","suscitada","suspendida","suspirada","sustanciada","sustantivada","sustentada","sustituida","sustraída","susurrada","suturada","tabulada","tachada","talada","taladrada","tallada","tambaleada","tamizada","tañida","tanteada","tapada","tapizada","taponada","tarareada","tardada","tasada","tatuada","tecleada","tejida","telefoneada","televisada","temida","templada","tendida","tenida","tensada","tentada","teorizada","terciada","tergiversada","terminada","territorializada","testada","testeada","testificada","testimoniada","tildada","timada","timbrada","tinturada","tipeada","tipificada","tirada","tiranizada","tironeada","tiroteada","titubeada","tiznada","tocada","tolerada","tomada","tonificada","topada","toqueteada","torcida","toreada","tornada","tornasolada","torneada","torpedeada","torturada","tosida","tostada","totalizada","trabada","trabajada","traducida","traficada","tragada","traicionada","traída","trajinada","tramada","tramitada","trancada","tranquilizada","transcendida","transcurrida","transferida","transfigurada","transformada","transfundida","transgredida","transigida","transitada","transliterada","translucida","transmitida","transmutada","transparentada","transpirada","transportada","transpuesta","trasegada","trasgredida","trasladada","traslapada","traslucida","trasnochada","traspapelada","traspasada","trasplantada","traspuesta","trasquilada","trasteada","trastocada","trastornada","trasvasada","tratada","trazada","trenzada","trepada","tributada","trincada","triplicada","triturada","triunfada","trivializada","trocada","troceada","tronada","tronchada","truncada","tumbada","tuneada","turbada","turnada","tutelada","ufanada","ultimada","uncida","ungida","unida","universalizada","untada","urbanizada","urdida","usada","usufructuada","usurpada","utilizada","vacada","vaciada","vacilada","vacunada","vagada","validada","valida","valorada","valorizada","valuada","vanagloriada","vandalizada","vaporizada","variada","vaticinada","vedada","vehiculada","vejada","velada","vencida","vendada","vendida","venerada","vengada","ventilada","veraneada","verbalizada","verificada","versada","versionada","vertebrada","vertida","vestida","vetada","viabilizada","viajada","vibrada","victimada","victimizada","vigilada","vigorizada","vilipendiada","vindicada","violada","violentada","virada","visada","visibilizada","visitada","vislumbrada","vista","visualizada","vitoreada","vitrificada","vituperada","vivida","vivificada","vocalizada","voceada","vociferada","volada","volatilizada","volcada","volteada","vomitada","votada","vuelta","vulcanizada","vulgarizada","vulnerada","yuxtapuesta","zafada","zambullida","zampada","zanjada","zarandeada","zarpada","zozobrada","zumbada","zurcida","zurrada","abajados","abalanzados","abaleados","abandonados","abaratados","abarcados","abarrotados","abastecidos","abatidos","abdicados","abiertos","abismados","abjurados","ablandados","abocados","abochornados","abofeteados","abolidos","abollados","abombados","abominados","abonados","abordados","aborrecidos","aborregados","abortados","abotonados","abrasados","abrazados","abrevados","abreviados","abrigados","abrochados","abrogados","abroquelados","abrumados","absorbidos","abstenidos","abstraídos","absueltos","abucheados","abultados","abundados","aburguesados","aburridos","abusados","acabados","acallados","acalorados","acaparados","acariciados","acarreados","acatados","acaudillados","accedidos","accionados","acechados","aceitados","acelerados","acentuados","aceptados","acerados","acercados","acertados","achacados","achantados","achatados","achicados","acicalados","acidificados","aclarados","aclimatados","acobardados","acodados","acogidos","acojonados","acometidos","acomodados","acompañados","acompasados","acongojados","aconsejados","acontecidos","acopiados","acoplados","acordados","acordonados","acorralados","acortados","acosados","acostados","acostumbrados","acotados","acrecentados","acreditados","acrisolados","activados","actuados","acuchillados","acuciados","acudidos","acuerpados","acumulados","acunados","acuñados","acurrucados","acusados","adaptados","adecentados","adelantados","adelgazados","adentrados","adeudados","adheridos","adicionados","adiestrados","adivinados","adjetivados","adjudicados","adjuntados","administrados","admirados","admitidos","adoctrinados","adolecidos","adoptados","adorados","adormecidos","adornados","adquiridos","aducidos","adueñados","adulados","adulterados","advertidos","afanados","afeados","afectados","afeitados","aferrados","afianzados","afinados","afirmados","afligidos","aflorados","afrentados","afrontados","agachados","agarrados","agarrotados","agasajados","agenciados","agigantados","agilizados","agitados","aglutinados","agobiados","agolpados","agonizados","agostados","agotados","agradados","agradecidos","agrandados","agravados","agraviados","agredidos","agregados","agriados","agrietados","agrupados","aguados","aguantados","aguardados","agudizados","aguijoneados","agujereados","aguzados","ahogados","ahondados","ahorcados","ahorrados","ahuecados","ahuyentados","aireados","aislados","ajustados","ajusticiados","alabados","alagados","alambrados","alardeados","alargados","alarmados","albergados","alborotados","alcanzados","aleccionados","alegados","alegrados","alejados","alentados","alertados","alfabetizados","alfombrados","aliados","alienados","aligerados","alimentados","aliñados","alineados","alisados","alistados","aliviados","alivianados","allanados","almacenados","almorzados","alojados","alquilados","alterados","alternados","alucinados","aludidos","alumbrados","alzados","amados","amaestrados","amagados","amainados","amalgamados","amamantados","amansados","amargados","amarrados","amasados","ambicionados","amedrentados","amenazados","amenizados","ameritados","ametrallados","amilanados","aminorados","amnistiados","amoldados","amonestados","amontonados","amordazados","amortajados","amortiguados","amortizados","amotinados","amparados","ampayados","ampliados","amplificados","amputados","amueblados","añadidos","analizados","anatematizados","andados","anegados","anestesiados","anexados","anexionados","anhelados","anidados","anillados","animados","aniquilados","anisados","añorados","anotados","anoticiados","ansiados","antecedidos","antepuestos","anticipados","antojados","anudados","anulados","anunciados","apabullados","apachurrados","apaciguados","apadrinados","apagados","apalancados","apaleados","apañados","apantallados","aparcados","apareados","aparecidos","aparentados","apartados","apeados","apedreados","apelados","apellidados","apelmazados","apercibidos","apersonados","apestados","apetecidos","apiadados","apilados","apiñados","apisonados","aplacados","aplanados","aplastados","aplaudidos","aplazados","aplicados","apoderados","apoltronados","aporreados","aportados","aposentados","apostados","apostatados","apostillados","apoyados","apreciados","aprehendidos","apremiados","aprendidos","apresados","apresurados","apretados","apretujados","aprisionados","aprobados","aprovechados","aprovisionados","aproximados","apuñalados","apuñaleados","apuntados","apuntalados","apuntillados","apurados","aquejados","aquietados","aquilatados","arañados","arbitrados","archivados","arengados","argüidos","argumentados","armados","armonizados","aromatizados","arqueados","arrancados","arrasados","arrastrados","arreados","arrebatados","arreciados","arreglados","arrellanados","arremangados","arremetidos","arrendados","arrepentidos","arrestados","arriados","arribados","arriesgados","arrimados","arrinconados","arrodillados","arrogados","arrojados","arrollados","arropados","arruinados","arrullados","articulados","asados","asaltados","ascendidos","aseados","asechados","asediados","asegurados","asemejados","asentados","asentidos","aserrados","asesinados","asesorados","asestados","aseverados","asfixiados","asidos","asignados","asilados","asimilados","asistidos","asolados","asoleados","asomados","asombrados","aspirados","astillados","asumidos","asustados","atacados","atados","atajados","atarantados","atascados","atemorizados","atemperados","atenazados","atendidos","atenidos","atentados","atenuados","aterrados","aterrorizados","atesorados","atestiguados","atiborrados","atisbados","atizados","atomizados","atontados","atorados","atormentados","atornillados","atosigados","atracados","atragantados","atraídos","atrancados","atrapados","atrasados","atravesados","atrevidos","atribuidos","atrincherados","atrofiados","atropellados","aturdidos","auditados","augurados","aumentados","aunados","aupados","auscultados","ausentados","autenticados","autentificados","autodefinidos","autoeditados","automatizados","autorizados","autorregulados","auxiliados","avalados","avanzados","avasallados","avenidos","aventados","aventajados","aventurados","averiados","averiguados","avezados","avisados","avispados","avistados","avivados","avizorados","avocados","ayudados","azotados","azuzados","babeados","bailados","bajados","balaceados","balanceados","bañados","banalizados","bancados","bandeados","barajados","barridos","basados","bastardeados","basureados","batallados","bateados","batidos","bautizados","beatificados","bebidos","beneficiados","besados","bifurcados","birlados","blandidos","blanqueados","blasfemados","blindados","bloqueados","boicoteados","bombardeados","bombeados","bonificados","bordeados","borrados","borroneados","bosquejados","bostezados","botados","boxeados","bregados","brillados","brincados","brindados","bromeados","brotados","bruñidos","buceados","burlados","buscados","cabeceados","cabidos","cabildeados","cabreados","cacareados","cachados","cacheados","cacheteados","caducados","cagados","calados","calculados","caldeados","calefaccionados","calendarizados","calentados","calibrados","calificados","caligrafiados","callados","calmados","calumniados","calzados","cambiados","caminados","camuflados","canalizados","cancelados","canjeados","cansados","cantados","capados","capeados","capitalizados","capitulados","captados","capturados","caracterizados","carburados","carcomidos","cardados","careados","carecidos","cargados","caricaturizados","cartografiados","cascados","castigados","castrados","catados","catalizados","catalogados","catapultados","cateados","categorizados","causados","cauterizados","cautivados","cavados","cavilados","cazados","cebados","cedidos","cegados","cejados","celebrados","cenados","ceñidos","censurados","centrifugados","centuplicados","cepillados","cercados","cercenados","cerciorados","cernidos","cerrados","cesados","chafados","chamuscados","chantajeados","chapados","charlados","chateados","chequeados","chiflados","chillados","chingados","chirriados","chivados","chocados","chorreados","choteados","chupados","chutados","cicatrizados","cifrados","cimentados","cincelados","circulados","circuncidados","circundados","citados","clamados","clarificados","clasificados","claudicados","clausurados","clavados","clicados","clonados","coaccionados","coadyuvados","coagulados","coaligados","coartados","cobijados","cobrados","cocidos","cocinados","codeados","codiciados","codificados","codirigidos","coexistidos","cofinanciados","cogidos","cohabitados","cohibidos","coincididos","colaborados","colacionados","colados","colapsados","coleccionados","colectados","colectivizados","colgados","colisionados","colmados","colocados","colonizados","coloreados","columpiados","combatidos","combinados","comentados","comenzados","comerciados","comercializados","cometidos","comidos","comisionados","compactados","compadecidos","compaginados","comparados","comparecidos","compartidos","compatibilizados","compelidos","compendiados","compenetrados","compensados","compilados","complacidos","complementados","completados","complotados","comportados","comprados","comprendidos","comprimidos","comprobados","comprometidos","compuestos","compulsados","computados","comulgados","comunicados","concatenados","concebidos","concedidos","concelebrados","concentrados","conceptuados","conceptualizados","concertados","concienciados","concientizados","conciliados","concitados","concluidos","concordados","concretados","concretizados","conculcados","concursados","condenados","condensados","condicionados","condimentados","condolidos","condonados","conducidos","conectados","conexionados","confabulados","confeccionados","conferidos","confesados","confiados","configurados","confirmados","confiscados","confluidos","conformados","confortados","confrontados","confundidos","congeniados","congestionados","congratulados","congregados","conjeturados","conjugados","conjuntados","conjurados","conllevados","conmemorados","conminados","conmocionados","conmovidos","conmutados","connotados","conquistados","consagrados","conseguidos","consensuados","consentidos","conservados","considerados","consignados","consistidos","consolados","consolidados","conspirados","constados","constatados","constelados","constitucionalizados","constituidos","constreñidos","construidos","consultados","consumados","consumidos","contabilizados","contactados","contados","contagiados","contemplados","contendidos","contenidos","contentados","contestados","contextualizados","continuados","contorneados","contraatacados","contrabandeados","contradichos","contrahechos","contraídos","contrapesados","contrapuestos","contrariados","contrarrestados","contrastados","contratados","contravenidos","contribuidos","contristados","controlados","convalidados","convencidos","convenidos","convergidos","conversados","convertidos","convidados","convividos","convocados","convulsionados","cooperados","cooptados","coordinados","copados","copiados","coproducidos","copulados","coqueteados","corchados","coreados","coreografiados","corneados","coronados","corporizados","corregidos","correlacionados","correspondidos","correteados","corridos","corroborados","corroídos","corrompidos","cortados","cortejados","cosechados","cosidos","cosificados","costados","costeados","cotejados","cotizados","creados","creídos","criados","cribados","criminalizados","crispados","cristalizados","cristianizados","criticados","cronometrados","crucificados","crujidos","cruzados","cuadriplicados","cuadruplicados","cuajados","cuantificados","cuarteados","cubiertos","cuestionados","cuidados","culeados","culminados","culpabilizados","culpados","cultivados","culturizados","cumplidos","cumplimentados","cundidos","curados","curioseados","currados","cursados","curvados","custodiados","dados","dañados","danzados","datados","dateados","debatidos","debidos","debilitados","debitados","debutados","decaídos","decantados","decapitados","decepcionados","decididos","declamados","declarados","declinados","decodificados","decolorados","decomisados","decrecidos","decretados","dedicados","deducidos","defecados","defendidos","defenestrados","deferidos","definidos","deformados","defraudados","degenerados","deglutidos","degollados","degradados","degustados","deificados","dejados","delatados","delegados","deleitados","deletreados","deliberados","delimitados","delineados","delinquidos","demandados","demarcados","demediados","demeritados","democratizados","demolidos","demonizados","demorados","demostrados","demudados","denegados","denigrados","denominados","denostados","denotados","denunciados","deparados","departidos","dependidos","depilados","deplorados","deportados","depositados","depreciados","depredados","deprimidos","depuestos","depurados","derechizados","derivados","derogados","derramados","derretidos","derribados","derrocados","derrochados","derrotados","derruidos","derrumbados","desabrochados","desacatados","desacelerados","desacomodados","desaconsejados","desacoplados","desacralizados","desacreditados","desactivados","desafiados","desafinados","desaguados","desahogados","desairados","desajustados","desalentados","desalineados","desalojados","desandados","desangrados","desanimados","desaparecidos","desapegados","desaprendidos","desaprobados","desaprovechados","desarmados","desarraigados","desarreglados","desarrollados","desarticulados","desaseados","desasidos","desasosegados","desatados","desatendidos","desautorizados","desayunados","desbancados","desbandados","desbaratados","desbarrancados","desbastados","desbloqueados","desbocados","desbordados","desbrozados","descabalgados","descabezados","descaderados","descalabrados","descalificados","descansados","descargados","descarriados","descarrilados","descartados","descascarados","descascarillados","descendidos","descentrados","descifrados","descocidos","descodificados","descojonados","descolgados","descolocados","descolonizados","descompensados","descomprimidos","descompuestos","desconectados","desconfiados","descongelados","desconocidos","descontados","descontaminados","descontextualizados","descontinuados","desconvocados","descorazonados","descorchados","descorridos","descosidos","descoyuntados","descreídos","descristianizados","descuadrados","descuartizados","descubiertos","descuidados","desdeñados","desdibujados","desdichos","desdoblados","deseados","desecados","desechados","desembarazados","desembarcados","desembocados","desembolsados","desempacados","desempañados","desempaquetados","desempeñados","desempolvados","desenamorados","desencadenados","desencajados","desencarnados","desenchufados","desenfocados","desenfundados","desenganchados","desengrasados","desenmascarados","desenredados","desenrollados","desentendidos","desenterrados","desentonados","desentrañados","desenvainados","desenvueltos","desequilibrados","desertados","desestabilizados","desestimados","desfalcados","desfallecidos","desfigurados","desfondados","desgajados","desgañitados","desgarrados","desgastados","desglosados","desgobernados","desgranados","desguazados","deshechos","desheredados","deshidratados","deshilachados","deshojados","deshonrados","deshuesados","deshumanizados","designados","desilusionados","desincentivados","desinfectados","desinflados","desinflamados","desinformados","desinhibidos","desinstalados","desintegrados","desintoxicados","desistidos","desjarretados","deslegitimados","desleídos","desligados","deslindados","deslizados","deslucidos","deslumbrados","desmadrados","desmalezados","desmantelados","desmaquillados","desmarcados","desmayados","desmejorados","desmembrados","desmentidos","desmenuzados","desmerecidos","desmigados","desmitificados","desmoldados","desmontados","desmoralizados","desmoronados","desmotivados","desmovilizados","desnaturalizados","desnivelados","desnucados","desnudados","desobedecidos","desobligados","desoídos","desollados","desorganizados","desorientados","despachados","desparasitados","desparecidos","desparramados","despedazados","despedidos","despegados","despeinados","despejados","despellejados","despeñados","despenalizados","desperdiciados","despersonalizados","despertados","despilfarrados","despintados","despiojados","despistados","desplazados","desplegados","desplomados","desplumados","despojados","despolitizados","desposados","desposeídos","despotricados","despreciados","desprendidos","despreocupados","desprestigiados","desprogramados","despulpados","despuntados","desquiciados","desquitados","destacados","destapados","desteñidos","desterrados","destetados","destilados","destituidos","destrabados","destripados","destronados","destrozados","destruidos","desunidos","desvalijados","desvalorizados","desvanecidos","desvelados","desvestidos","desviados","desvinculados","desvirtuados","desvividos","detectados","detenidos","detentados","deteriorados","determinados","detestados","detonados","devaluados","devanados","devastados","develados","devengados","devenidos","devorados","devueltos","diagnosticados","diagramados","dializados","dialogados","dibujados","dichos","dictados","dictaminados","diezmados","difamados","diferenciados","diferidos","dificultados","difuminados","difundidos","digeridos","digitados","dignados","dignificados","dilapidados","dilatados","diligenciados","dilucidados","diluidos","dimensionados","dimitidos","dinamitados","dinamizados","dirimidos","discernidos","disciplinados","discontinuados","discrepados","discriminados","disculpados","discurridos","discutidos","diseccionados","diseminados","diseñados","disentidos","disertados","disfrazados","disfrutados","disgregados","disgustados","disimulados","disipados","dislocados","disminuidos","disociados","dispensados","dispersados","dispuestos","disputados","distados","distanciados","distendidos","distinguidos","distorsionados","distraídos","distribuidos","disuadidos","disueltos","divagados","diversificados","divertidos","divididos","divinizados","divisados","divorciados","divulgados","doblados","doblegados","doctorados","documentados","dogmatizados","dolidos","domados","domesticados","dominados","donados","dopados","dormidos","dosificados","dotados","dragados","dramatizados","drenados","drogados","duchados","dudados","dulcificados","duplicados","durados","echados","eclipsados","eclosionados","economizados","ecualizados","edificados","editados","educados","efectuados","ejecutados","ejemplificados","ejercidos","ejercitados","elaborados","electrizados","electrocutados","elevados","elididos","eliminados","elogiados","elucubrados","eludidos","emanados","emancipados","embadurnados","embalados","embalsamados","embanderados","embarcados","embargados","embarrados","embarrancados","embaucados","embebidos","embelesados","embellecidos","embestidos","embolados","embolsados","emborrachados","emborronados","emboscados","embotados","embriagados","embrollados","embrutecidos","embuchados","emergidos","emigrados","emitidos","emocionados","empacados","empachados","empadronados","empalados","empalmados","empanados","empañados","empantanados","empapelados","empaquetados","emparejados","empastados","empatados","empecinados","empeñados","empeorados","empequeñecidos","emperrados","empezados","empinados","emplazados","empleados","empobrecidos","empoderados","empollados","empolvados","emponzoñados","emprendidos","empujados","empuñados","emputados","emulados","emulsionados","enajenados","enaltecidos","enamorados","enarbolados","enardecidos","encabezados","encabritados","encabronados","encadenados","encajados","encajonados","encallados","encamados","encaminados","encandilados","encanecidos","encañonados","encantados","encaprichados","encapsulados","encarados","encaramados","encarecidos","encargados","encariñados","encarnados","encarrilados","encartados","encasillados","encasquetados","encasquillados","encastrados","encausados","encauzados","enceguecidos","encendidos","encerados","encerrados","encharcados","enchufados","encimados","encogidos","encolados","encolerizados","encolumnados","encomendados","enconados","encontrados","encordados","encrespados","encuadrados","encubiertos","encuerados","encumbrados","enderezados","endeudados","endilgados","endiosados","endosados","endulzados","endurecidos","enemistados","energizados","enervados","enfadados","enfangados","enfatizados","enfermados","enfiestados","enfilados","enflaquecidos","enfocados","enfrascados","enfrentados","enfriados","enfurecidos","engalanados","engañados","enganchados","engarzados","engatusados","engendrados","englobados","engolosinados","engordados","engranados","engrandecidos","engrasados","engreídos","engrosados","engullidos","enharinados","enhebrados","enjuagados","enjugados","enjuiciados","enlazados","enlistados","enlodados","enloquecidos","enlozados","enlutados","enmarañados","enmascarados","enmendados","enmohecidos","enmudecidos","ennegrecidos","ennoblecidos","enorgullecidos","enrarecidos","enredados","enripiados","enriquecidos","enrocados","enrojecidos","enrolados","enrollados","enroscados","enrumbados","ensalzados","ensamblados","ensañados","ensanchados","ensartados","ensayados","ensebados","enseñados","enseñoreados","ensillados","ensoberbecidos","ensogados","ensombrecidos","ensoñados","ensordecidos","ensuciados","entablados","entallados","entendidos","enterados","enternecidos","enterrados","entibiados","entintados","entonados","entorpecidos","entrados","entrampados","entrañados","entreabiertos","entrecomillados","entrecruzados","entregados","entrelazados","entremetidos","entremezclados","entrenados","entresacados","entretejidos","entretenidos","entreverados","entrevistados","entristecidos","entrometidos","entronados","entroncados","entronizados","entumecidos","enturbiados","entusiasmados","enumerados","enunciados","envainados","envalentonados","envanecidos","envasados","envejecidos","envenenados","envestidos","enviados","enviciados","envidiados","envilecidos","enviudados","envueltos","enzarzados","equilibrados","equiparados","equivocados","erigidos","erizados","erogados","erosionados","erotizados","erradicados","errados","esbozados","escabullidos","escalados","escaldados","escalfados","escamados","escamoteados","escampados","escandalizados","escaneados","escapados","escaqueados","escarbados","escarchados","escarmentados","escarnecidos","escaseados","escatimados","escenificados","escindidos","esclarecidos","esclavizados","escocidos","escogidos","escolarizados","escoltados","escondidos","escorados","escrachados","escritos","escrutados","escuchados","escudados","escudriñados","esculpidos","escupidos","escurridos","esforzados","esfumados","esgrimidos","esmerados","esmerilados","espabilados","espaciados","españolizados","espantados","esparcidos","especificados","especulados","esperados","espesados","espetados","espiados","espigados","espinados","espirados","espiritualizados","espoleados","espolvoreados","esponjados","esponsorizados","esposados","esquematizados","esquiados","esquilados","esquilmados","esquivados","estabilizados","establecidos","estacionados","estafados","estallados","estampados","estancados","estaqueados","estatizados","estatuidos","esterificados","esterilizados","estigmatizados","estilizados","estimados","estimulados","estipulados","estirados","estorbados","estornudados","estragados","estrangulados","estrechados","estrellados","estremecidos","estrenados","estresados","estriados","estropeados","estructurados","estrujados","estudiados","eternizados","etiquetados","evacuados","evadidos","evaluados","evangelizados","evaporados","evidenciados","eviscerados","evitados","evocados","evolucionados","exacerbados","exagerados","exaltados","examinados","exasperados","excarcelados","excavados","excedidos","exceptuados","excitados","exclamados","excluidos","excretados","exculpados","excusados","execrados","exhalados","exhibidos","exhortados","exhumados","exigidos","exilados","eximidos","existidos","exonerados","exorcizados","expandidos","expedidos","expedientados","expelidos","expendidos","experimentados","expiados","expirados","explayados","explicados","explicitados","explorados","explosionados","explotados","expoliados","exportados","expresados","exprimidos","expropiados","expuestos","expulsados","expurgados","extendidos","exteriorizados","exterminados","externados","externalizados","extinguidos","extirpados","extorsionados","extractados","extraditados","extraídos","extralimitados","extrañados","extrapolados","extraviados","extremados","extruidos","exudados","eyaculados","eyectados","fabricados","fabulados","facilitados","facturados","facultados","fagocitados","fajados","fallados","fallecidos","falsados","falseados","falsificados","familiarizados","fantaseados","fascinados","fastidiados","fatigados","favorecidos","fecundados","felicitados","feminizados","fenecidos","fermentados","fertilizados","festejados","fiados","fichados","fidelizados","figurados","fijados","filmados","filosofados","filtrados","finalizados","financiados","fincados","fingidos","finiquitados","firmados","fiscalizados","fisurados","flagelados","flameados","flanqueados","flaqueados","fletados","flexibilizados","flexionados","flipados","floreados","florecidos","flotados","fluctuados","focalizados","fogueados","foliados","follados","fomentados","fondeados","forcejeados","forestados","forjados","formados","formalizados","formateados","formulados","fornicados","forrados","fortalecidos","forzados","fotocopiados","fotografiados","fracasados","fraccionados","fracturados","fragmentados","fraguados","franqueados","frecuentados","fregados","frenados","fresados","friccionados","frotados","fructificados","fruncidos","fugados","fulminados","fumados","fumigados","funcionados","fundados","fundamentados","fundidos","fungidos","fusilados","fusionados","fustigados","gafados","ganados","gangrenados","garabateados","garantidos","garantizados","garridos","gaseados","gastados","gemidos","generados","generalizados","gerenciados","germinados","gestados","gestionados","girados","glorificados","glosados","gobernados","goleados","golpeados","gozados","grabados","graduados","graficados","granjeados","grapados","gratificados","gravados","gravitados","gritados","gruñidos","guardados","guarecidos","guarnecidos","guerreados","guiados","guillotinados","guiñados","guindados","guisados","gustados","habilitados","habitados","habituados","hablados","halados","halagados","hallados","hartados","hechizados","hechos","helenizados","henchidos","hendidos","heredados","heridos","hermanados","herrados","hervidos","hibernados","hibridados","hidratados","higienizados","hilados","hilvanados","hincados","hinchados","hipnotizados","hipotecados","historiados","hojeados","holgados","hollados","homenajeados","homogeneizados","homologados","honrados","horadados","horneados","horrorizados","hospedados","hostigados","hostilizados","huidos","humanados","humanizados","humectados","humedecidos","humillados","hundidos","hurgados","hurtados","ideados","idealizados","identificados","ideologizados","idiotizados","idolatrados","ignorados","igualados","ilegalizados","iluminados","ilusionados","ilustrados","imaginados","imbricados","imitados","impactados","impartidos","impedidos","impelidos","imperados","impermeabilizados","implantados","implementados","implicados","implorados","importados","importunados","imposibilitados","impresionados","improvisados","impuestos","impugnados","impulsados","imputados","inaugurados","incautados","incendiados","incentivados","incinerados","incitados","inclinados","incluidos","incoados","incomodados","incorporados","incrementados","increpados","incriminados","incubados","inculcados","inculpados","incumplidos","incurridos","incursionados","indagados","indemnizados","independizados","indexados","indicados","indigestados","indignados","indispuestos","individuados","inducidos","indultados","inervados","infamados","infartados","infectados","inferidos","inficionados","infiltrados","inflados","inflamados","infligidos","influenciados","influidos","informados","infravalorados","infringidos","infundidos","ingeniados","ingeridos","ingresados","inhabilitados","inhalados","inhibidos","inhumados","iniciados","inicializados","injertados","injuriados","inmigrados","inmiscuidos","inmolados","inmortalizados","inmovilizados","inmunizados","innovados","inoculados","inquietados","inquiridos","insensibilizados","insertados","insinuados","insistidos","inspeccionados","inspirados","instados","instalados","instaurados","instigados","instituidos","instruidos","instrumentados","instrumentalizados","insuflados","insultados","insumidos","integrados","intelectualizados","intensificados","intentados","interactuados","intercalados","intercambiados","intercedidos","interceptados","interesados","interferidos","interiorizados","intermediados","internacionalizados","internalizados","interpelados","interpolados","interpretados","interpuestos","interrogados","interrumpidos","intervenidos","intimados","intimidados","intitulados","intoxicados","intrigados","introducidos","intuidos","inundados","inutilizados","invadidos","invalidados","inventados","inventariados","invertidos","investidos","investigados","invitados","invocados","involucionados","inyectados","ionizados","ironizados","irradiados","irrespetados","irrigados","irritados","irrogados","irrumpidos","jactados","jalados","jaleados","jalonados","jaqueados","jerarquizados","jodidos","jorobados","jubilados","jugados","juntados","jurados","juramentados","justificados","juzgados","laborados","labrados","laburados","lacados","lacerados","lactados","ladeados","ladrados","lamentados","lamidos","laminados","languidecidos","lanzados","lapidados","laqueados","largados","lastimados","lastrados","latidos","laudados","lavados","legalizados","legislados","legitimados","leídos","lesionados","leudados","levantados","liados","liberados","liberalizados","libertados","librados","licitados","licuados","liderizados","lidiados","ligados","lijados","limados","limitados","limpiados","linchados","liquidados","litigados","llagados","llamados","llegados","llenados","llevados","llorados","localizados","logrados","lubricados","luchados","lucidos","lucrados","lustrados","macerados","machacados","macheteados","machucados","madreados","madrugados","madurados","magnetizados","magnificados","malacostumbrados","malbaratados","malcriados","maleados","malentendidos","malgastados","malinterpretados","malogrados","maltratados","malversados","mamados","manchados","mancillados","mandados","manejados","mangados","mangoneados","manifestados","maniobrados","manipulados","manoseados","manteados","mantenidos","manufacturados","maquillados","maquinados","maravillados","marcados","marchitados","mareados","marginados","maridados","martillados","martirizados","masacrados","masajeados","mascados","masificados","masticados","masturbados","matados","materializados","matizados","matriculados","maximizados","meados","mecanografiados","mechados","mecidos","mediados","mediatizados","medicados","medidos","meditados","medrados","mejorados","mellados","memorizados","mencionados","meneados","menguados","menoscabados","menospreciados","menstruados","mensualizados","mensurados","mentados","mentalizados","mentidos","mercadeados","mercantilizados","merecidos","merendados","mermados","merodeados","mesurados","metamorfoseados","metidos","mezclados","migrados","militados","militarizados","mimados","mimetizados","minados","minimizados","ministrados","minusvalorados","mirados","mistificados","mitificados","mitigados","modelados","modernizados","modificados","modulados","mofados","mojados","moldeados","molestados","molidos","monetizados","monitorizados","monopolizados","montados","morados","moralizados","mordidos","mordisqueados","mortificados","mosqueados","mostrados","motejados","motivados","movidos","movilizados","mudados","muestreados","multados","multiplicados","munidos","murmurados","mutados","mutilados","nacionalizados","narcotizados","narrados","naufragados","navegados","necesitados","negados","negociados","neutralizados","ninguneados","nivelados","nombrados","nominados","noqueados","normados","normalizados","notados","notificados","nutridos","obcecados","obedecidos","objetados","objetivados","obligados","obliterados","obnubilados","obrados","obsequiados","observados","obsesionados","obstaculizados","obstruidos","obtenidos","obturados","obviados","ocasionados","ocluidos","ocultados","ocupados","odiados","ofendidos","ofertados","oficiados","oficializados","ofrecidos","ofrendados","ofuscados","oídos","ojeados","olfateados","olidos","olvidados","omitidos","ondeados","ondulados","opacados","operados","opinados","oprimidos","optados","optimizados","opuestos","orados","orbitados","ordenados","ordeñados","organizados","orientados","originados","orillados","orinados","ornados","ornamentados","orquestados","osados","oscilados","oscurecidos","osificados","ostentados","otorgados","ovacionados","ovulados","oxidados","oxigenados","pacificados","pactados","padecidos","paganizados","paginados","paladeados","paliados","palpados","parados","parafraseados","paralizados","parapetados","parasitados","parcelados","parchados","parcheados","pareados","paridos","parodiados","parqueados","participados","particularizados","partidos","pasados","paseados","pastoreados","pataleados","pateados","patentados","patentizados","patinados","patrullados","pecados","pedaleados","pedidos","pegados","peinados","pellizcados","penalizados","penetrados","pensados","percatados","percibidos","percutidos","perdidos","perdonados","perdurados","perecidos","peregrinados","perfeccionados","perfilados","perforados","perfumados","pergeñados","peritados","perjudicados","perjurados","permeados","permitidos","permutados","pernoctados","perpetrados","perpetuados","perseguidos","perseverados","persistidos","personados","personalizados","personificados","persuadidos","pertenecidos","pertrechados","perturbados","pervertidos","pervividos","pescados","petados","peticionados","picados","picaneados","picoteados","pifiados","pignorados","pillados","pilotados","piloteados","pincelados","pinchados","pintados","pintarrajeados","pinzados","pirados","pirateados","pisados","pisoteados","pitados","placidos","plagiados","planchados","planeados","plantados","planteados","plasmados","platicados","plegados","pluralizados","podados","poetizados","polemizados","politizados","pololeados","ponderados","pontificados","popularizados","porfiados","portados","porteados","posados","posesionados","posibilitados","posicionados","pospuestos","posteados","postergados","postrados","postulados","potenciados","practicados","precarizados","precedidos","preceptuados","precintados","precipitados","precisados","preconizados","predicados","predichos","predispuestos","predominados","preferidos","prefigurados","pregonados","preguntados","prejuzgados","premiados","prendados","prendidos","preocupados","preparados","presagiados","prescindidos","presenciados","presentados","presentidos","preservados","presididos","presionados","prestados","prestigiados","presumidos","presurizados","pretendidos","preteridos","prevalecidos","prevalidos","prevaricados","prevenidos","previstos","primados","principiados","pringados","priorizados","privatizados","probados","problematizados","procedidos","procesados","proclamados","procreados","procurados","prodigados","producidos","profanados","proferidos","profesados","profesionalizados","profetizados","profundizados","programados","progresados","prohibidos","prohijados","proletarizados","proliferados","prologados","prolongados","promediados","prometidos","promocionados","promovidos","promulgados","pronosticados","pronunciados","propagados","propalados","propendidos","propiciados","propinados","proporcionados","propuestos","propugnados","propulsados","prorrateados","prorrogados","proseguidos","prosperados","prostituidos","protegidos","protestados","protocolizados","provenidos","provocados","proyectados","psicoanalizados","publicados","publicitados","puestos","pugnados","pujados","pulidos","pulsados","pululados","pulverizados","punados","punteados","puntuados","puntualizados","punzados","purgados","purificados","puteados","quebrados","quebrantados","quejados","quemados","querellados","queridos","quintuplicados","quitados","racionados","racionalizados","radiados","radicados","radicalizados","raídos","rajados","ralentizados","rapados","rapeados","raptados","rascados","rasgados","rasguñados","raspados","rastreados","rasurados","ratificados","rayados","razonados","reabiertos","reabsorbidos","reaccionados","reactivados","readaptados","readmitidos","reafirmados","reagrupados","reajustados","realimentados","realizados","realzados","reanimados","reanudados","reaparecidos","rearmados","reasumidos","reavivados","rebajados","rebalsados","rebanados","rebasados","rebatidos","rebautizados","rebelados","reblandecidos","rebobinados","rebosados","rebotados","rebozados","rebuscados","recabados","recaídos","recalados","recalcados","recalentados","recalificados","recapacitados","recapitulados","recargados","recatados","recaudados","receptados","recetados","rechazados","recibidos","reciclados","recitados","reclamados","reclinados","reclutados","recobrados","recocidos","recogidos","recolectados","recomendados","recomenzados","recompensados","recompuestos","reconcentrados","reconciliados","reconducidos","reconfortados","reconocidos","reconquistados","reconsiderados","reconstituidos","reconstruidos","reconvenidos","reconvertidos","recopilados","recordados","recorridos","recortados","recreados","recriminados","recrudecidos","rectificados","recubiertos","reculados","recuperados","recurridos","recusados","redactados","redefinidos","redescubiertos","redimensionados","redimidos","rediseñados","redistribuidos","redituados","redoblados","redondeados","reducidos","redundados","reedificados","reeditados","reeducados","reelaborados","reembolsados","reemplazados","reencarnados","reencauchados","reencontrados","reenganchados","reenviados","reescritos","reestructurados","reexaminados","refaccionados","referidos","refinados","refinanciados","reflejados","reflexionados","reflotados","reforestados","reformados","reforzados","refractados","refrenados","refrendados","refrescados","refrigerados","refundidos","refutados","regados","regalados","regañados","regateados","regenerados","regentados","regenteados","regidos","regionalizados","registrados","reglados","reglamentados","regocijados","regodeados","regresados","regulados","regularizados","regurgitados","rehabilitados","rehechos","rehogados","rehuidos","rehusados","reídos","reinados","reincididos","reincorporados","reingresados","reiniciados","reinsertados","reinstalados","reinstaurados","reintegrados","reinventados","reinvertidos","reiterados","reivindicados","rejuvenecidos","relajados","relamidos","relanzados","relatados","relativizados","relegados","releídos","relevados","religados","rellenados","remachados","remados","remangados","remarcados","rematados","remecidos","remediados","rememorados","remendados","remitidos","remodelados","remojados","remolcados","remontados","removidos","remplazados","renacidos","rendidos","renegados","renegociados","reñidos","renombrados","renovados","rentabilizados","rentados","renunciados","reordenados","reorganizados","reorientados","reparados","repartidos","repasados","repatriados","repelidos","repensados","repercutidos","repescados","repetidos","repicados","repintados","replanteados","replegados","replicados","repoblados","reportados","reporteados","reposados","repreguntados","reprendidos","represados","representados","reprimidos","reprobados","reprochados","reproducidos","repudiados","repuestos","repugnados","repuntados","reputados","requeridos","requisados","resaltados","resarcidos","resbalados","rescatados","rescindidos","resecados","reseñados","reservados","reseteados","resguardados","resididos","resignados","resistidos","resonados","respaldados","respetados","respirados","resplandecidos","respondidos","responsabilizados","resquebrajados","restablecidos","restados","restaurados","restituidos","restregados","resucitados","resueltos","resumidos","resurgidos","retados","retardados","retenidos","retirados","retocados","retomados","retorcidos","retornados","retractados","retraídos","retransmitidos","retrasados","retratados","retribuidos","retrotraídos","retumbados","reunidos","reunificados","reutilizados","revalidados","revalorizados","revaluados","revelados","revendidos","reventados","reverdecidos","reverenciados","revertidos","revestidos","revirados","revisados","revitalizados","revividos","revocados","revolcados","revoloteados","revolucionados","revueltos","ridiculizados","rifados","rimados","rivalizados","rizados","robados","robustecidos","rociados","rodados","rodeados","rogados","roídos","rondados","rotados","rotos","rotulados","roturados","rozados","ruborizados","rubricados","rugidos","rumiados","rumorados","sabidos","saboreados","saboteados","sacados","saciados","sacralizados","sacrificados","sacudidos","saldados","salpimentados","salpullidos","saltados","salteados","saludados","salvados","salvaguardados","sanados","saneados","sangrados","santificados","saqueados","satanizados","satirizados","satisfechos","sazonados","secados","seccionados","secretados","secuenciados","secuestrados","secundados","sedimentados","seducidos","segados","segmentados","segregados","seguidos","seleccionados","sembrados","señalados","sensibilizados","sentados","sentenciados","sentidos","separados","serenados","serrados","servidos","significados","silenciados","simbolizados","simpatizados","simplificados","simulados","sincerados","sincronizados","sindicados","sindicalizados","singularizados","sintetizados","sintonizados","sistematizados","situados","sobados","sobornados","sobrados","sobrecargados","sobrecogidos","sobreentendidos","sobreestimados","sobrellevados","sobrentendidos","sobrepasados","sobrepuestos","sobresalidos","sobresaltados","sobrestimados","sobrevenidos","sobrevividos","sobrevolados","socavados","socializados","socorridos","sodomizados","sofocados","sojuzgados","solapados","solicitados","solidarizados","solidificados","soliviantados","soltados","solucionados","solventados","sombreados","sometidos","sonados","soñados","sondeados","sonreídos","sonrojados","sopesados","soplados","soportados","sorbidos","sorprendidos","sorteados","sosegados","soslayados","sospechados","sostenidos","suavizados","subastados","subcontratados","subdivididos","subestimados","subidos","sublevados","sublimados","subrayados","subrogados","subsanados","subsidiados","subsistidos","substraídos","subsumidos","subvertidos","subyugados","succionados","sucedidos","sucumbidos","sudados","sufragados","sufridos","sugeridos","sugestionados","suicidados","sujetados","sumados","sumergidos","suministrados","supeditados","superados","superpuestos","supervisados","suplantados","suplicados","suplidos","suprimidos","supuestos","surcados","surtidos","suscitados","suspendidos","suspirados","sustanciados","sustantivados","sustentados","sustituidos","sustraídos","susurrados","suturados","tabulados","tachados","talados","taladrados","tallados","tambaleados","tamizados","tañidos","tanteados","tapados","tapizados","taponados","tarareados","tardados","tasados","tatuados","tecleados","tejidos","telefoneados","televisados","temidos","templados","tendidos","tenidos","tensados","tentados","teorizados","terciados","tergiversados","terminados","territorializados","testados","testeados","testificados","testimoniados","tildados","timados","timbrados","tinturados","tipeados","tipificados","tirados","tiranizados","tironeados","tiroteados","titubeados","tiznados","tocados","tolerados","tomados","tonificados","topados","toqueteados","torcidos","toreados","tornados","tornasolados","torneados","torpedeados","torturados","tosidos","tostados","totalizados","trabados","trabajados","traducidos","traficados","tragados","traicionados","traídos","trajinados","tramados","tramitados","trancados","tranquilizados","transcendidos","transcurridos","transferidos","transfigurados","transformados","transfundidos","transgredidos","transigidos","transitados","transliterados","translucidos","transmitidos","transmutados","transparentados","transpirados","transportados","transpuestos","trasegados","trasgredidos","trasladados","traslapados","traslucidos","trasnochados","traspapelados","traspasados","trasplantados","traspuestos","trasquilados","trasteados","trastocados","trastornados","trasvasados","tratados","trazados","trenzados","trepados","tributados","trincados","triplicados","triturados","triunfados","trivializados","trocados","troceados","tronados","tronchados","truncados","tumbados","tuneados","turbados","turnados","tutelados","ufanados","ultimados","uncidos","ungidos","unidos","universalizados","untados","urbanizados","urdidos","usados","usufructuados","usurpados","utilizados","vacados","vaciados","vacilados","vacunados","vagados","validados","validos","valorados","valorizados","valuados","vanagloriados","vandalizados","vaporizados","variados","vaticinados","vedados","vehiculados","vejados","velados","vencidos","vendados","vendidos","venerados","vengados","ventilados","veraneados","verbalizados","verificados","versados","versionados","vertebrados","vertidos","vestidos","vetados","viabilizados","viajados","vibrados","victimados","victimizados","vigilados","vigorizados","vilipendiados","vindicados","violados","violentados","virados","visados","visibilizados","visitados","vislumbrados","vistos","visualizados","vitoreados","vitrificados","vituperados","vividos","vivificados","vocalizados","voceados","vociferados","volados","volatilizados","volcados","volteados","vomitados","votados","vueltos","vulcanizados","vulgarizados","vulnerados","yuxtapuestos","zafados","zambullidos","zampados","zanjados","zarandeados","zarpados","zozobrados","zumbados","zurcidos","zurrados","abajadas","abalanzadas","abaleadas","abandonadas","abaratadas","abarcadas","abarrotadas","abastecidas","abatidas","abdicadas","abiertas","abismadas","abjuradas","ablandadas","abocadas","abochornadas","abofeteadas","abolidas","abolladas","abombadas","abominadas","abonadas","abordadas","aborrecidas","aborregadas","abortadas","abotonadas","abrasadas","abrazadas","abrevadas","abreviadas","abrigadas","abrochadas","abrogadas","abroqueladas","abrumadas","absorbidas","abstenidas","abstraídas","absueltas","abucheadas","abultadas","abundadas","aburguesadas","aburridas","abusadas","acabadas","acalladas","acaloradas","acaparadas","acariciadas","acarreadas","acatadas","acaudilladas","accedidas","accionadas","acechadas","aceitadas","aceleradas","acentuadas","aceptadas","aceradas","acercadas","acertadas","achacadas","achantadas","achatadas","achicadas","acicaladas","acidificadas","aclaradas","aclimatadas","acobardadas","acodadas","acogidas","acojonadas","acometidas","acomodadas","acompañadas","acompasadas","acongojadas","aconsejadas","acontecidas","acopiadas","acopladas","acordadas","acordonadas","acorraladas","acortadas","acosadas","acostadas","acostumbradas","acotadas","acrecentadas","acreditadas","acrisoladas","activadas","actuadas","acuchilladas","acuciadas","acudidas","acuerpadas","acumuladas","acunadas","acuñadas","acurrucadas","acusadas","adaptadas","adecentadas","adelantadas","adelgazadas","adentradas","adeudadas","adheridas","adicionadas","adiestradas","adivinadas","adjetivadas","adjudicadas","adjuntadas","administradas","admiradas","admitidas","adoctrinadas","adolecidas","adoptadas","adoradas","adormecidas","adornadas","adquiridas","aducidas","adueñadas","aduladas","adulteradas","advertidas","afanadas","afeadas","afectadas","afeitadas","aferradas","afianzadas","afinadas","afirmadas","afligidas","afloradas","afrentadas","afrontadas","agachadas","agarradas","agarrotadas","agasajadas","agenciadas","agigantadas","agilizadas","agitadas","aglutinadas","agobiadas","agolpadas","agonizadas","agostadas","agotadas","agradadas","agradecidas","agrandadas","agravadas","agraviadas","agredidas","agregadas","agriadas","agrietadas","agrupadas","aguadas","aguantadas","aguardadas","agudizadas","aguijoneadas","agujereadas","aguzadas","ahogadas","ahondadas","ahorcadas","ahorradas","ahuecadas","ahuyentadas","aireadas","aisladas","ajustadas","ajusticiadas","alabadas","alagadas","alambradas","alardeadas","alargadas","alarmadas","albergadas","alborotadas","alcanzadas","aleccionadas","alegadas","alegradas","alejadas","alentadas","alertadas","alfabetizadas","alfombradas","aliadas","alienadas","aligeradas","alimentadas","aliñadas","alineadas","alisadas","alistadas","aliviadas","alivianadas","allanadas","almacenadas","almorzadas","alojadas","alquiladas","alteradas","alternadas","alucinadas","aludidas","alumbradas","alzadas","amadas","amaestradas","amagadas","amainadas","amalgamadas","amamantadas","amansadas","amargadas","amarradas","amasadas","ambicionadas","amedrentadas","amenazadas","amenizadas","ameritadas","ametralladas","amilanadas","aminoradas","amnistiadas","amoldadas","amonestadas","amontonadas","amordazadas","amortajadas","amortiguadas","amortizadas","amotinadas","amparadas","ampayadas","ampliadas","amplificadas","amputadas","amuebladas","añadidas","analizadas","anatematizadas","andadas","anegadas","anestesiadas","anexadas","anexionadas","anheladas","anidadas","anilladas","animadas","aniquiladas","anisadas","añoradas","anotadas","anoticiadas","ansiadas","antecedidas","antepuestas","anticipadas","antojadas","anudadas","anuladas","anunciadas","apabulladas","apachurradas","apaciguadas","apadrinadas","apagadas","apalancadas","apaleadas","apañadas","apantalladas","aparcadas","apareadas","aparecidas","aparentadas","apartadas","apeadas","apedreadas","apeladas","apellidadas","apelmazadas","apercibidas","apersonadas","apestadas","apetecidas","apiadadas","apiladas","apiñadas","apisonadas","aplacadas","aplanadas","aplastadas","aplaudidas","aplazadas","aplicadas","apoderadas","apoltronadas","aporreadas","aportadas","aposentadas","apostadas","apostatadas","apostilladas","apoyadas","apreciadas","aprehendidas","apremiadas","aprendidas","apresadas","apresuradas","apretadas","apretujadas","aprisionadas","aprobadas","aprovechadas","aprovisionadas","aproximadas","apuñaladas","apuñaleadas","apuntadas","apuntaladas","apuntilladas","apuradas","aquejadas","aquietadas","aquilatadas","arañadas","arbitradas","archivadas","arengadas","argüidas","argumentadas","armadas","armonizadas","aromatizadas","arqueadas","arrancadas","arrasadas","arrastradas","arreadas","arrebatadas","arreciadas","arregladas","arrellanadas","arremangadas","arremetidas","arrendadas","arrepentidas","arrestadas","arriadas","arribadas","arriesgadas","arrimadas","arrinconadas","arrodilladas","arrogadas","arrojadas","arrolladas","arropadas","arruinadas","arrulladas","articuladas","asadas","asaltadas","ascendidas","aseadas","asechadas","asediadas","aseguradas","asemejadas","asentadas","asentidas","aserradas","asesinadas","asesoradas","asestadas","aseveradas","asfixiadas","asidas","asignadas","asiladas","asimiladas","asistidas","asoladas","asoleadas","asomadas","asombradas","aspiradas","astilladas","asumidas","asustadas","atacadas","atadas","atajadas","atarantadas","atascadas","atemorizadas","atemperadas","atenazadas","atendidas","atenidas","atentadas","atenuadas","aterradas","aterrorizadas","atesoradas","atestiguadas","atiborradas","atisbadas","atizadas","atomizadas","atontadas","atoradas","atormentadas","atornilladas","atosigadas","atracadas","atragantadas","atraídas","atrancadas","atrapadas","atrasadas","atravesadas","atrevidas","atribuidas","atrincheradas","atrofiadas","atropelladas","aturdidas","auditadas","auguradas","aumentadas","aunadas","aupadas","auscultadas","ausentadas","autenticadas","autentificadas","autodefinidas","autoeditadas","automatizadas","autorizadas","autorreguladas","auxiliadas","avaladas","avanzadas","avasalladas","avenidas","aventadas","aventajadas","aventuradas","averiadas","averiguadas","avezadas","avisadas","avispadas","avistadas","avivadas","avizoradas","avocadas","ayudadas","azotadas","azuzadas","babeadas","bailadas","bajadas","balaceadas","balanceadas","bañadas","banalizadas","bancadas","bandeadas","barajadas","barridas","basadas","bastardeadas","basureadas","batalladas","bateadas","batidas","bautizadas","beatificadas","bebidas","beneficiadas","besadas","bifurcadas","birladas","blandidas","blanqueadas","blasfemadas","blindadas","bloqueadas","boicoteadas","bombardeadas","bombeadas","bonificadas","bordeadas","borradas","borroneadas","bosquejadas","bostezadas","botadas","boxeadas","bregadas","brilladas","brincadas","brindadas","bromeadas","brotadas","bruñidas","buceadas","burladas","buscadas","cabeceadas","cabidas","cabildeadas","cabreadas","cacareadas","cachadas","cacheadas","cacheteadas","caducadas","cagadas","caladas","calculadas","caldeadas","calefaccionadas","calendarizadas","calentadas","calibradas","calificadas","caligrafiadas","calladas","calmadas","calumniadas","calzadas","cambiadas","caminadas","camufladas","canalizadas","canceladas","canjeadas","cansadas","cantadas","capadas","capeadas","capitalizadas","capituladas","captadas","capturadas","caracterizadas","carburadas","carcomidas","cardadas","careadas","carecidas","cargadas","caricaturizadas","cartografiadas","cascadas","castigadas","castradas","catadas","catalizadas","catalogadas","catapultadas","cateadas","categorizadas","causadas","cauterizadas","cautivadas","cavadas","caviladas","cazadas","cebadas","cedidas","cegadas","cejadas","celebradas","cenadas","ceñidas","censuradas","centrifugadas","centuplicadas","cepilladas","cercadas","cercenadas","cercioradas","cernidas","cerradas","cesadas","chafadas","chamuscadas","chantajeadas","chapadas","charladas","chateadas","chequeadas","chifladas","chilladas","chingadas","chirriadas","chivadas","chocadas","chorreadas","choteadas","chupadas","chutadas","cicatrizadas","cifradas","cimentadas","cinceladas","circuladas","circuncidadas","circundadas","citadas","clamadas","clarificadas","clasificadas","claudicadas","clausuradas","clavadas","clicadas","clonadas","coaccionadas","coadyuvadas","coaguladas","coaligadas","coartadas","cobijadas","cobradas","cocidas","cocinadas","codeadas","codiciadas","codificadas","codirigidas","coexistidas","cofinanciadas","cogidas","cohabitadas","cohibidas","coincididas","colaboradas","colacionadas","coladas","colapsadas","coleccionadas","colectadas","colectivizadas","colgadas","colisionadas","colmadas","colocadas","colonizadas","coloreadas","columpiadas","combatidas","combinadas","comentadas","comenzadas","comerciadas","comercializadas","cometidas","comidas","comisionadas","compactadas","compadecidas","compaginadas","comparadas","comparecidas","compartidas","compatibilizadas","compelidas","compendiadas","compenetradas","compensadas","compiladas","complacidas","complementadas","completadas","complotadas","comportadas","compradas","comprendidas","comprimidas","comprobadas","comprometidas","compuestas","compulsadas","computadas","comulgadas","comunicadas","concatenadas","concebidas","concedidas","concelebradas","concentradas","conceptuadas","conceptualizadas","concertadas","concienciadas","concientizadas","conciliadas","concitadas","concluidas","concordadas","concretadas","concretizadas","conculcadas","concursadas","condenadas","condensadas","condicionadas","condimentadas","condolidas","condonadas","conducidas","conectadas","conexionadas","confabuladas","confeccionadas","conferidas","confesadas","confiadas","configuradas","confirmadas","confiscadas","confluidas","conformadas","confortadas","confrontadas","confundidas","congeniadas","congestionadas","congratuladas","congregadas","conjeturadas","conjugadas","conjuntadas","conjuradas","conllevadas","conmemoradas","conminadas","conmocionadas","conmovidas","conmutadas","connotadas","conquistadas","consagradas","conseguidas","consensuadas","consentidas","conservadas","consideradas","consignadas","consistidas","consoladas","consolidadas","conspiradas","constadas","constatadas","consteladas","constitucionalizadas","constituidas","constreñidas","construidas","consultadas","consumadas","consumidas","contabilizadas","contactadas","contadas","contagiadas","contempladas","contendidas","contenidas","contentadas","contestadas","contextualizadas","continuadas","contorneadas","contraatacadas","contrabandeadas","contradichas","contrahechas","contraídas","contrapesadas","contrapuestas","contrariadas","contrarrestadas","contrastadas","contratadas","contravenidas","contribuidas","contristadas","controladas","convalidadas","convencidas","convenidas","convergidas","conversadas","convertidas","convidadas","convividas","convocadas","convulsionadas","cooperadas","cooptadas","coordinadas","copadas","copiadas","coproducidas","copuladas","coqueteadas","corchadas","coreadas","coreografiadas","corneadas","coronadas","corporizadas","corregidas","correlacionadas","correspondidas","correteadas","corridas","corroboradas","corroídas","corrompidas","cortadas","cortejadas","cosechadas","cosidas","cosificadas","costadas","costeadas","cotejadas","cotizadas","creadas","creídas","criadas","cribadas","criminalizadas","crispadas","cristalizadas","cristianizadas","criticadas","cronometradas","crucificadas","crujidas","cruzadas","cuadriplicadas","cuadruplicadas","cuajadas","cuantificadas","cuarteadas","cubiertas","cuestionadas","cuidadas","culeadas","culminadas","culpabilizadas","culpadas","cultivadas","culturizadas","cumplidas","cumplimentadas","cundidas","curadas","curioseadas","curradas","cursadas","curvadas","custodiadas","dadas","dañadas","danzadas","datadas","dateadas","debatidas","debidas","debilitadas","debitadas","debutadas","decaídas","decantadas","decapitadas","decepcionadas","decididas","declamadas","declaradas","declinadas","decodificadas","decoloradas","decomisadas","decrecidas","decretadas","dedicadas","deducidas","defecadas","defendidas","defenestradas","deferidas","definidas","deformadas","defraudadas","degeneradas","deglutidas","degolladas","degradadas","degustadas","deificadas","dejadas","delatadas","delegadas","deleitadas","deletreadas","deliberadas","delimitadas","delineadas","delinquidas","demandadas","demarcadas","demediadas","demeritadas","democratizadas","demolidas","demonizadas","demoradas","demostradas","demudadas","denegadas","denigradas","denominadas","denostadas","denotadas","denunciadas","deparadas","departidas","dependidas","depiladas","deploradas","deportadas","depositadas","depreciadas","depredadas","deprimidas","depuestas","depuradas","derechizadas","derivadas","derogadas","derramadas","derretidas","derribadas","derrocadas","derrochadas","derrotadas","derruidas","derrumbadas","desabrochadas","desacatadas","desaceleradas","desacomodadas","desaconsejadas","desacopladas","desacralizadas","desacreditadas","desactivadas","desafiadas","desafinadas","desaguadas","desahogadas","desairadas","desajustadas","desalentadas","desalineadas","desalojadas","desandadas","desangradas","desanimadas","desaparecidas","desapegadas","desaprendidas","desaprobadas","desaprovechadas","desarmadas","desarraigadas","desarregladas","desarrolladas","desarticuladas","desaseadas","desasidas","desasosegadas","desatadas","desatendidas","desautorizadas","desayunadas","desbancadas","desbandadas","desbaratadas","desbarrancadas","desbastadas","desbloqueadas","desbocadas","desbordadas","desbrozadas","descabalgadas","descabezadas","descaderadas","descalabradas","descalificadas","descansadas","descargadas","descarriadas","descarriladas","descartadas","descascaradas","descascarilladas","descendidas","descentradas","descifradas","descocidas","descodificadas","descojonadas","descolgadas","descolocadas","descolonizadas","descompensadas","descomprimidas","descompuestas","desconectadas","desconfiadas","descongeladas","desconocidas","descontadas","descontaminadas","descontextualizadas","descontinuadas","desconvocadas","descorazonadas","descorchadas","descorridas","descosidas","descoyuntadas","descreídas","descristianizadas","descuadradas","descuartizadas","descubiertas","descuidadas","desdeñadas","desdibujadas","desdichas","desdobladas","deseadas","desecadas","desechadas","desembarazadas","desembarcadas","desembocadas","desembolsadas","desempacadas","desempañadas","desempaquetadas","desempeñadas","desempolvadas","desenamoradas","desencadenadas","desencajadas","desencarnadas","desenchufadas","desenfocadas","desenfundadas","desenganchadas","desengrasadas","desenmascaradas","desenredadas","desenrolladas","desentendidas","desenterradas","desentonadas","desentrañadas","desenvainadas","desenvueltas","desequilibradas","desertadas","desestabilizadas","desestimadas","desfalcadas","desfallecidas","desfiguradas","desfondadas","desgajadas","desgañitadas","desgarradas","desgastadas","desglosadas","desgobernadas","desgranadas","desguazadas","deshechas","desheredadas","deshidratadas","deshilachadas","deshojadas","deshonradas","deshuesadas","deshumanizadas","designadas","desilusionadas","desincentivadas","desinfectadas","desinfladas","desinflamadas","desinformadas","desinhibidas","desinstaladas","desintegradas","desintoxicadas","desistidas","desjarretadas","deslegitimadas","desleídas","desligadas","deslindadas","deslizadas","deslucidas","deslumbradas","desmadradas","desmalezadas","desmanteladas","desmaquilladas","desmarcadas","desmayadas","desmejoradas","desmembradas","desmentidas","desmenuzadas","desmerecidas","desmigadas","desmitificadas","desmoldadas","desmontadas","desmoralizadas","desmoronadas","desmotivadas","desmovilizadas","desnaturalizadas","desniveladas","desnucadas","desnudadas","desobedecidas","desobligadas","desoídas","desolladas","desorganizadas","desorientadas","despachadas","desparasitadas","desparecidas","desparramadas","despedazadas","despedidas","despegadas","despeinadas","despejadas","despellejadas","despeñadas","despenalizadas","desperdiciadas","despersonalizadas","despertadas","despilfarradas","despintadas","despiojadas","despistadas","desplazadas","desplegadas","desplomadas","desplumadas","despojadas","despolitizadas","desposadas","desposeídas","despotricadas","despreciadas","desprendidas","despreocupadas","desprestigiadas","desprogramadas","despulpadas","despuntadas","desquiciadas","desquitadas","destacadas","destapadas","desteñidas","desterradas","destetadas","destiladas","destituidas","destrabadas","destripadas","destronadas","destrozadas","destruidas","desunidas","desvalijadas","desvalorizadas","desvanecidas","desveladas","desvestidas","desviadas","desvinculadas","desvirtuadas","desvividas","detectadas","detenidas","detentadas","deterioradas","determinadas","detestadas","detonadas","devaluadas","devanadas","devastadas","develadas","devengadas","devenidas","devoradas","devueltas","diagnosticadas","diagramadas","dializadas","dialogadas","dibujadas","dichas","dictadas","dictaminadas","diezmadas","difamadas","diferenciadas","diferidas","dificultadas","difuminadas","difundidas","digeridas","digitadas","dignadas","dignificadas","dilapidadas","dilatadas","diligenciadas","dilucidadas","diluidas","dimensionadas","dimitidas","dinamitadas","dinamizadas","dirimidas","discernidas","disciplinadas","discontinuadas","discrepadas","discriminadas","disculpadas","discurridas","discutidas","diseccionadas","diseminadas","diseñadas","disentidas","disertadas","disfrazadas","disfrutadas","disgregadas","disgustadas","disimuladas","disipadas","dislocadas","disminuidas","disociadas","dispensadas","dispersadas","dispuestas","disputadas","distadas","distanciadas","distendidas","distinguidas","distorsionadas","distraídas","distribuidas","disuadidas","disueltas","divagadas","diversificadas","divertidas","divididas","divinizadas","divisadas","divorciadas","divulgadas","dobladas","doblegadas","doctoradas","documentadas","dogmatizadas","dolidas","domadas","domesticadas","dominadas","donadas","dopadas","dormidas","dosificadas","dotadas","dragadas","dramatizadas","drenadas","drogadas","duchadas","dudadas","dulcificadas","duplicadas","duradas","echadas","eclipsadas","eclosionadas","economizadas","ecualizadas","edificadas","editadas","educadas","efectuadas","ejecutadas","ejemplificadas","ejercidas","ejercitadas","elaboradas","electrizadas","electrocutadas","elevadas","elididas","eliminadas","elogiadas","elucubradas","eludidas","emanadas","emancipadas","embadurnadas","embaladas","embalsamadas","embanderadas","embarcadas","embargadas","embarradas","embarrancadas","embaucadas","embebidas","embelesadas","embellecidas","embestidas","emboladas","embolsadas","emborrachadas","emborronadas","emboscadas","embotadas","embriagadas","embrolladas","embrutecidas","embuchadas","emergidas","emigradas","emitidas","emocionadas","empacadas","empachadas","empadronadas","empaladas","empalmadas","empanadas","empañadas","empantanadas","empapeladas","empaquetadas","emparejadas","empastadas","empatadas","empecinadas","empeñadas","empeoradas","empequeñecidas","emperradas","empezadas","empinadas","emplazadas","empleadas","empobrecidas","empoderadas","empolladas","empolvadas","emponzoñadas","emprendidas","empujadas","empuñadas","emputadas","emuladas","emulsionadas","enajenadas","enaltecidas","enamoradas","enarboladas","enardecidas","encabezadas","encabritadas","encabronadas","encadenadas","encajadas","encajonadas","encalladas","encamadas","encaminadas","encandiladas","encanecidas","encañonadas","encantadas","encaprichadas","encapsuladas","encaradas","encaramadas","encarecidas","encargadas","encariñadas","encarnadas","encarriladas","encartadas","encasilladas","encasquetadas","encasquilladas","encastradas","encausadas","encauzadas","enceguecidas","encendidas","enceradas","encerradas","encharcadas","enchufadas","encimadas","encogidas","encoladas","encolerizadas","encolumnadas","encomendadas","enconadas","encontradas","encordadas","encrespadas","encuadradas","encubiertas","encueradas","encumbradas","enderezadas","endeudadas","endilgadas","endiosadas","endosadas","endulzadas","endurecidas","enemistadas","energizadas","enervadas","enfadadas","enfangadas","enfatizadas","enfermadas","enfiestadas","enfiladas","enflaquecidas","enfocadas","enfrascadas","enfrentadas","enfriadas","enfurecidas","engalanadas","engañadas","enganchadas","engarzadas","engatusadas","engendradas","englobadas","engolosinadas","engordadas","engranadas","engrandecidas","engrasadas","engreídas","engrosadas","engullidas","enharinadas","enhebradas","enjuagadas","enjugadas","enjuiciadas","enlazadas","enlistadas","enlodadas","enloquecidas","enlozadas","enlutadas","enmarañadas","enmascaradas","enmendadas","enmohecidas","enmudecidas","ennegrecidas","ennoblecidas","enorgullecidas","enrarecidas","enredadas","enripiadas","enriquecidas","enrocadas","enrojecidas","enroladas","enrolladas","enroscadas","enrumbadas","ensalzadas","ensambladas","ensañadas","ensanchadas","ensartadas","ensayadas","ensebadas","enseñadas","enseñoreadas","ensilladas","ensoberbecidas","ensogadas","ensombrecidas","ensoñadas","ensordecidas","ensuciadas","entabladas","entalladas","entendidas","enteradas","enternecidas","enterradas","entibiadas","entintadas","entonadas","entorpecidas","entradas","entrampadas","entrañadas","entreabiertas","entrecomilladas","entrecruzadas","entregadas","entrelazadas","entremetidas","entremezcladas","entrenadas","entresacadas","entretejidas","entretenidas","entreveradas","entrevistadas","entristecidas","entrometidas","entronadas","entroncadas","entronizadas","entumecidas","enturbiadas","entusiasmadas","enumeradas","enunciadas","envainadas","envalentonadas","envanecidas","envasadas","envejecidas","envenenadas","envestidas","enviadas","enviciadas","envidiadas","envilecidas","enviudadas","envueltas","enzarzadas","equilibradas","equiparadas","equivocadas","erigidas","erizadas","erogadas","erosionadas","erotizadas","erradicadas","erradas","esbozadas","escabullidas","escaladas","escaldadas","escalfadas","escamadas","escamoteadas","escampadas","escandalizadas","escaneadas","escapadas","escaqueadas","escarbadas","escarchadas","escarmentadas","escarnecidas","escaseadas","escatimadas","escenificadas","escindidas","esclarecidas","esclavizadas","escocidas","escogidas","escolarizadas","escoltadas","escondidas","escoradas","escrachadas","escritas","escrutadas","escuchadas","escudadas","escudriñadas","esculpidas","escupidas","escurridas","esforzadas","esfumadas","esgrimidas","esmeradas","esmeriladas","espabiladas","espaciadas","españolizadas","espantadas","esparcidas","especificadas","especuladas","esperadas","espesadas","espetadas","espiadas","espigadas","espinadas","espiradas","espiritualizadas","espoleadas","espolvoreadas","esponjadas","esponsorizadas","esposadas","esquematizadas","esquiadas","esquiladas","esquilmadas","esquivadas","estabilizadas","establecidas","estacionadas","estafadas","estalladas","estampadas","estancadas","estaqueadas","estatizadas","estatuidas","esterificadas","esterilizadas","estigmatizadas","estilizadas","estimadas","estimuladas","estipuladas","estiradas","estorbadas","estornudadas","estragadas","estranguladas","estrechadas","estrelladas","estremecidas","estrenadas","estresadas","estriadas","estropeadas","estructuradas","estrujadas","estudiadas","eternizadas","etiquetadas","evacuadas","evadidas","evaluadas","evangelizadas","evaporadas","evidenciadas","evisceradas","evitadas","evocadas","evolucionadas","exacerbadas","exageradas","exaltadas","examinadas","exasperadas","excarceladas","excavadas","excedidas","exceptuadas","excitadas","exclamadas","excluidas","excretadas","exculpadas","excusadas","execradas","exhaladas","exhibidas","exhortadas","exhumadas","exigidas","exiladas","eximidas","existidas","exoneradas","exorcizadas","expandidas","expedidas","expedientadas","expelidas","expendidas","experimentadas","expiadas","expiradas","explayadas","explicadas","explicitadas","exploradas","explosionadas","explotadas","expoliadas","exportadas","expresadas","exprimidas","expropiadas","expuestas","expulsadas","expurgadas","extendidas","exteriorizadas","exterminadas","externadas","externalizadas","extinguidas","extirpadas","extorsionadas","extractadas","extraditadas","extraídas","extralimitadas","extrañadas","extrapoladas","extraviadas","extremadas","extruidas","exudadas","eyaculadas","eyectadas","fabricadas","fabuladas","facilitadas","facturadas","facultadas","fagocitadas","fajadas","falladas","fallecidas","falsadas","falseadas","falsificadas","familiarizadas","fantaseadas","fascinadas","fastidiadas","fatigadas","favorecidas","fecundadas","felicitadas","feminizadas","fenecidas","fermentadas","fertilizadas","festejadas","fiadas","fichadas","fidelizadas","figuradas","fijadas","filmadas","filosofadas","filtradas","finalizadas","financiadas","fincadas","fingidas","finiquitadas","firmadas","fiscalizadas","fisuradas","flageladas","flameadas","flanqueadas","flaqueadas","fletadas","flexibilizadas","flexionadas","flipadas","floreadas","florecidas","flotadas","fluctuadas","focalizadas","fogueadas","foliadas","folladas","fomentadas","fondeadas","forcejeadas","forestadas","forjadas","formadas","formalizadas","formateadas","formuladas","fornicadas","forradas","fortalecidas","forzadas","fotocopiadas","fotografiadas","fracasadas","fraccionadas","fracturadas","fragmentadas","fraguadas","franqueadas","frecuentadas","fregadas","frenadas","fresadas","friccionadas","frotadas","fructificadas","fruncidas","fugadas","fulminadas","fumadas","fumigadas","funcionadas","fundadas","fundamentadas","fundidas","fungidas","fusiladas","fusionadas","fustigadas","gafadas","ganadas","gangrenadas","garabateadas","garantidas","garantizadas","garridas","gaseadas","gastadas","gemidas","generadas","generalizadas","gerenciadas","germinadas","gestadas","gestionadas","giradas","glorificadas","glosadas","gobernadas","goleadas","golpeadas","gozadas","grabadas","graduadas","graficadas","granjeadas","grapadas","gratificadas","gravadas","gravitadas","gritadas","gruñidas","guardadas","guarecidas","guarnecidas","guerreadas","guiadas","guillotinadas","guiñadas","guindadas","guisadas","gustadas","habilitadas","habitadas","habituadas","habladas","haladas","halagadas","halladas","hartadas","hechizadas","hechas","helenizadas","henchidas","hendidas","heredadas","heridas","hermanadas","herradas","hervidas","hibernadas","hibridadas","hidratadas","higienizadas","hiladas","hilvanadas","hincadas","hinchadas","hipnotizadas","hipotecadas","historiadas","hojeadas","holgadas","holladas","homenajeadas","homogeneizadas","homologadas","honradas","horadadas","horneadas","horrorizadas","hospedadas","hostigadas","hostilizadas","huidas","humanadas","humanizadas","humectadas","humedecidas","humilladas","hundidas","hurgadas","hurtadas","ideadas","idealizadas","identificadas","ideologizadas","idiotizadas","idolatradas","ignoradas","igualadas","ilegalizadas","iluminadas","ilusionadas","ilustradas","imaginadas","imbricadas","imitadas","impactadas","impartidas","impedidas","impelidas","imperadas","impermeabilizadas","implantadas","implementadas","implicadas","imploradas","importadas","importunadas","imposibilitadas","impresionadas","improvisadas","impuestas","impugnadas","impulsadas","imputadas","inauguradas","incautadas","incendiadas","incentivadas","incineradas","incitadas","inclinadas","incluidas","incoadas","incomodadas","incorporadas","incrementadas","increpadas","incriminadas","incubadas","inculcadas","inculpadas","incumplidas","incurridas","incursionadas","indagadas","indemnizadas","independizadas","indexadas","indicadas","indigestadas","indignadas","indispuestas","individuadas","inducidas","indultadas","inervadas","infamadas","infartadas","infectadas","inferidas","inficionadas","infiltradas","infladas","inflamadas","infligidas","influenciadas","influidas","informadas","infravaloradas","infringidas","infundidas","ingeniadas","ingeridas","ingresadas","inhabilitadas","inhaladas","inhibidas","inhumadas","iniciadas","inicializadas","injertadas","injuriadas","inmigradas","inmiscuidas","inmoladas","inmortalizadas","inmovilizadas","inmunizadas","innovadas","inoculadas","inquietadas","inquiridas","insensibilizadas","insertadas","insinuadas","insistidas","inspeccionadas","inspiradas","instadas","instaladas","instauradas","instigadas","instituidas","instruidas","instrumentadas","instrumentalizadas","insufladas","insultadas","insumidas","integradas","intelectualizadas","intensificadas","intentadas","interactuadas","intercaladas","intercambiadas","intercedidas","interceptadas","interesadas","interferidas","interiorizadas","intermediadas","internacionalizadas","internalizadas","interpeladas","interpoladas","interpretadas","interpuestas","interrogadas","interrumpidas","intervenidas","intimadas","intimidadas","intituladas","intoxicadas","intrigadas","introducidas","intuidas","inundadas","inutilizadas","invadidas","invalidadas","inventadas","inventariadas","invertidas","investidas","investigadas","invitadas","invocadas","involucionadas","inyectadas","ionizadas","ironizadas","irradiadas","irrespetadas","irrigadas","irritadas","irrogadas","irrumpidas","jactadas","jaladas","jaleadas","jalonadas","jaqueadas","jerarquizadas","jodidas","jorobadas","jubiladas","jugadas","juntadas","juradas","juramentadas","justificadas","juzgadas","laboradas","labradas","laburadas","lacadas","laceradas","lactadas","ladeadas","ladradas","lamentadas","lamidas","laminadas","languidecidas","lanzadas","lapidadas","laqueadas","largadas","lastimadas","lastradas","latidas","laudadas","lavadas","legalizadas","legisladas","legitimadas","leídas","lesionadas","leudadas","levantadas","liadas","liberadas","liberalizadas","libertadas","libradas","licitadas","licuadas","liderizadas","lidiadas","ligadas","lijadas","limadas","limitadas","limpiadas","linchadas","liquidadas","litigadas","llagadas","llamadas","llegadas","llenadas","llevadas","lloradas","localizadas","logradas","lubricadas","luchadas","lucidas","lucradas","lustradas","maceradas","machacadas","macheteadas","machucadas","madreadas","madrugadas","maduradas","magnetizadas","magnificadas","malacostumbradas","malbaratadas","malcriadas","maleadas","malentendidas","malgastadas","malinterpretadas","malogradas","maltratadas","malversadas","mamadas","manchadas","mancilladas","mandadas","manejadas","mangadas","mangoneadas","manifestadas","maniobradas","manipuladas","manoseadas","manteadas","mantenidas","manufacturadas","maquilladas","maquinadas","maravilladas","marcadas","marchitadas","mareadas","marginadas","maridadas","martilladas","martirizadas","masacradas","masajeadas","mascadas","masificadas","masticadas","masturbadas","matadas","materializadas","matizadas","matriculadas","maximizadas","meadas","mecanografiadas","mechadas","mecidas","mediadas","mediatizadas","medicadas","medidas","meditadas","medradas","mejoradas","melladas","memorizadas","mencionadas","meneadas","menguadas","menoscabadas","menospreciadas","menstruadas","mensualizadas","mensuradas","mentadas","mentalizadas","mentidas","mercadeadas","mercantilizadas","merecidas","merendadas","mermadas","merodeadas","mesuradas","metamorfoseadas","metidas","mezcladas","migradas","militadas","militarizadas","mimadas","mimetizadas","minadas","minimizadas","ministradas","minusvaloradas","miradas","mistificadas","mitificadas","mitigadas","modeladas","modernizadas","modificadas","moduladas","mofadas","mojadas","moldeadas","molestadas","molidas","monetizadas","monitorizadas","monopolizadas","montadas","moradas","moralizadas","mordidas","mordisqueadas","mortificadas","mosqueadas","mostradas","motejadas","motivadas","movidas","movilizadas","mudadas","muestreadas","multadas","multiplicadas","munidas","murmuradas","mutadas","mutiladas","nacionalizadas","narcotizadas","narradas","naufragadas","navegadas","necesitadas","negadas","negociadas","neutralizadas","ninguneadas","niveladas","nombradas","nominadas","noqueadas","normadas","normalizadas","notadas","notificadas","nutridas","obcecadas","obedecidas","objetadas","objetivadas","obligadas","obliteradas","obnubiladas","obradas","obsequiadas","observadas","obsesionadas","obstaculizadas","obstruidas","obtenidas","obturadas","obviadas","ocasionadas","ocluidas","ocultadas","ocupadas","odiadas","ofendidas","ofertadas","oficiadas","oficializadas","ofrecidas","ofrendadas","ofuscadas","oídas","ojeadas","olfateadas","olidas","olvidadas","omitidas","ondeadas","onduladas","opacadas","operadas","opinadas","oprimidas","optadas","optimizadas","opuestas","oradas","orbitadas","ordenadas","ordeñadas","organizadas","orientadas","originadas","orilladas","orinadas","ornadas","ornamentadas","orquestadas","osadas","osciladas","oscurecidas","osificadas","ostentadas","otorgadas","ovacionadas","ovuladas","oxidadas","oxigenadas","pacificadas","pactadas","padecidas","paganizadas","paginadas","paladeadas","paliadas","palpadas","paradas","parafraseadas","paralizadas","parapetadas","parasitadas","parceladas","parchadas","parcheadas","pareadas","paridas","parodiadas","parqueadas","participadas","particularizadas","partidas","pasadas","paseadas","pastoreadas","pataleadas","pateadas","patentadas","patentizadas","patinadas","patrulladas","pecadas","pedaleadas","pedidas","pegadas","peinadas","pellizcadas","penalizadas","penetradas","pensadas","percatadas","percibidas","percutidas","perdidas","perdonadas","perduradas","perecidas","peregrinadas","perfeccionadas","perfiladas","perforadas","perfumadas","pergeñadas","peritadas","perjudicadas","perjuradas","permeadas","permitidas","permutadas","pernoctadas","perpetradas","perpetuadas","perseguidas","perseveradas","persistidas","personadas","personalizadas","personificadas","persuadidas","pertenecidas","pertrechadas","perturbadas","pervertidas","pervividas","pescadas","petadas","peticionadas","picadas","picaneadas","picoteadas","pifiadas","pignoradas","pilladas","pilotadas","piloteadas","pinceladas","pinchadas","pintadas","pintarrajeadas","pinzadas","piradas","pirateadas","pisadas","pisoteadas","pitadas","placidas","plagiadas","planchadas","planeadas","plantadas","planteadas","plasmadas","platicadas","plegadas","pluralizadas","podadas","poetizadas","polemizadas","politizadas","pololeadas","ponderadas","pontificadas","popularizadas","porfiadas","portadas","porteadas","posadas","posesionadas","posibilitadas","posicionadas","pospuestas","posteadas","postergadas","postradas","postuladas","potenciadas","practicadas","precarizadas","precedidas","preceptuadas","precintadas","precipitadas","precisadas","preconizadas","predicadas","predichas","predispuestas","predominadas","preferidas","prefiguradas","pregonadas","preguntadas","prejuzgadas","premiadas","prendadas","prendidas","preocupadas","preparadas","presagiadas","prescindidas","presenciadas","presentadas","presentidas","preservadas","presididas","presionadas","prestadas","prestigiadas","presumidas","presurizadas","pretendidas","preteridas","prevalecidas","prevalidas","prevaricadas","prevenidas","previstas","primadas","principiadas","pringadas","priorizadas","privatizadas","probadas","problematizadas","procedidas","procesadas","proclamadas","procreadas","procuradas","prodigadas","producidas","profanadas","proferidas","profesadas","profesionalizadas","profetizadas","profundizadas","programadas","progresadas","prohibidas","prohijadas","proletarizadas","proliferadas","prologadas","prolongadas","promediadas","prometidas","promocionadas","promovidas","promulgadas","pronosticadas","pronunciadas","propagadas","propaladas","propendidas","propiciadas","propinadas","proporcionadas","propuestas","propugnadas","propulsadas","prorrateadas","prorrogadas","proseguidas","prosperadas","prostituidas","protegidas","protestadas","protocolizadas","provenidas","provocadas","proyectadas","psicoanalizadas","publicadas","publicitadas","puestas","pugnadas","pujadas","pulidas","pulsadas","pululadas","pulverizadas","punadas","punteadas","puntuadas","puntualizadas","punzadas","purgadas","purificadas","puteadas","quebradas","quebrantadas","quejadas","quemadas","querelladas","queridas","quintuplicadas","quitadas","racionadas","racionalizadas","radiadas","radicadas","radicalizadas","raídas","rajadas","ralentizadas","rapadas","rapeadas","raptadas","rascadas","rasgadas","rasguñadas","raspadas","rastreadas","rasuradas","ratificadas","rayadas","razonadas","reabiertas","reabsorbidas","reaccionadas","reactivadas","readaptadas","readmitidas","reafirmadas","reagrupadas","reajustadas","realimentadas","realizadas","realzadas","reanimadas","reanudadas","reaparecidas","rearmadas","reasumidas","reavivadas","rebajadas","rebalsadas","rebanadas","rebasadas","rebatidas","rebautizadas","rebeladas","reblandecidas","rebobinadas","rebosadas","rebotadas","rebozadas","rebuscadas","recabadas","recaídas","recaladas","recalcadas","recalentadas","recalificadas","recapacitadas","recapituladas","recargadas","recatadas","recaudadas","receptadas","recetadas","rechazadas","recibidas","recicladas","recitadas","reclamadas","reclinadas","reclutadas","recobradas","recocidas","recogidas","recolectadas","recomendadas","recomenzadas","recompensadas","recompuestas","reconcentradas","reconciliadas","reconducidas","reconfortadas","reconocidas","reconquistadas","reconsideradas","reconstituidas","reconstruidas","reconvenidas","reconvertidas","recopiladas","recordadas","recorridas","recortadas","recreadas","recriminadas","recrudecidas","rectificadas","recubiertas","reculadas","recuperadas","recurridas","recusadas","redactadas","redefinidas","redescubiertas","redimensionadas","redimidas","rediseñadas","redistribuidas","redituadas","redobladas","redondeadas","reducidas","redundadas","reedificadas","reeditadas","reeducadas","reelaboradas","reembolsadas","reemplazadas","reencarnadas","reencauchadas","reencontradas","reenganchadas","reenviadas","reescritas","reestructuradas","reexaminadas","refaccionadas","referidas","refinadas","refinanciadas","reflejadas","reflexionadas","reflotadas","reforestadas","reformadas","reforzadas","refractadas","refrenadas","refrendadas","refrescadas","refrigeradas","refundidas","refutadas","regadas","regaladas","regañadas","regateadas","regeneradas","regentadas","regenteadas","regidas","regionalizadas","registradas","regladas","reglamentadas","regocijadas","regodeadas","regresadas","reguladas","regularizadas","regurgitadas","rehabilitadas","rehechas","rehogadas","rehuidas","rehusadas","reídas","reinadas","reincididas","reincorporadas","reingresadas","reiniciadas","reinsertadas","reinstaladas","reinstauradas","reintegradas","reinventadas","reinvertidas","reiteradas","reivindicadas","rejuvenecidas","relajadas","relamidas","relanzadas","relatadas","relativizadas","relegadas","releídas","relevadas","religadas","rellenadas","remachadas","remadas","remangadas","remarcadas","rematadas","remecidas","remediadas","rememoradas","remendadas","remitidas","remodeladas","remojadas","remolcadas","remontadas","removidas","remplazadas","renacidas","rendidas","renegadas","renegociadas","reñidas","renombradas","renovadas","rentabilizadas","rentadas","renunciadas","reordenadas","reorganizadas","reorientadas","reparadas","repartidas","repasadas","repatriadas","repelidas","repensadas","repercutidas","repescadas","repetidas","repicadas","repintadas","replanteadas","replegadas","replicadas","repobladas","reportadas","reporteadas","reposadas","repreguntadas","reprendidas","represadas","representadas","reprimidas","reprobadas","reprochadas","reproducidas","repudiadas","repuestas","repugnadas","repuntadas","reputadas","requeridas","requisadas","resaltadas","resarcidas","resbaladas","rescatadas","rescindidas","resecadas","reseñadas","reservadas","reseteadas","resguardadas","resididas","resignadas","resistidas","resonadas","respaldadas","respetadas","respiradas","resplandecidas","respondidas","responsabilizadas","resquebrajadas","restablecidas","restadas","restauradas","restituidas","restregadas","resucitadas","resueltas","resumidas","resurgidas","retadas","retardadas","retenidas","retiradas","retocadas","retomadas","retorcidas","retornadas","retractadas","retraídas","retransmitidas","retrasadas","retratadas","retribuidas","retrotraídas","retumbadas","reunidas","reunificadas","reutilizadas","revalidadas","revalorizadas","revaluadas","reveladas","revendidas","reventadas","reverdecidas","reverenciadas","revertidas","revestidas","reviradas","revisadas","revitalizadas","revividas","revocadas","revolcadas","revoloteadas","revolucionadas","revueltas","ridiculizadas","rifadas","rimadas","rivalizadas","rizadas","robadas","robustecidas","rociadas","rodadas","rodeadas","rogadas","roídas","rondadas","rotadas","rotas","rotuladas","roturadas","rozadas","ruborizadas","rubricadas","rugidas","rumiadas","rumoradas","sabidas","saboreadas","saboteadas","sacadas","saciadas","sacralizadas","sacrificadas","sacudidas","saldadas","salpimentadas","salpullidas","saltadas","salteadas","saludadas","salvadas","salvaguardadas","sanadas","saneadas","sangradas","santificadas","saqueadas","satanizadas","satirizadas","satisfechas","sazonadas","secadas","seccionadas","secretadas","secuenciadas","secuestradas","secundadas","sedimentadas","seducidas","segadas","segmentadas","segregadas","seguidas","seleccionadas","sembradas","señaladas","sensibilizadas","sentadas","sentenciadas","sentidas","separadas","serenadas","serradas","servidas","significadas","silenciadas","simbolizadas","simpatizadas","simplificadas","simuladas","sinceradas","sincronizadas","sindicadas","sindicalizadas","singularizadas","sintetizadas","sintonizadas","sistematizadas","situadas","sobadas","sobornadas","sobradas","sobrecargadas","sobrecogidas","sobreentendidas","sobreestimadas","sobrellevadas","sobrentendidas","sobrepasadas","sobrepuestas","sobresalidas","sobresaltadas","sobrestimadas","sobrevenidas","sobrevividas","sobrevoladas","socavadas","socializadas","socorridas","sodomizadas","sofocadas","sojuzgadas","solapadas","solicitadas","solidarizadas","solidificadas","soliviantadas","soltadas","solucionadas","solventadas","sombreadas","sometidas","sonadas","soñadas","sondeadas","sonreídas","sonrojadas","sopesadas","sopladas","soportadas","sorbidas","sorprendidas","sorteadas","sosegadas","soslayadas","sospechadas","sostenidas","suavizadas","subastadas","subcontratadas","subdivididas","subestimadas","subidas","sublevadas","sublimadas","subrayadas","subrogadas","subsanadas","subsidiadas","subsistidas","substraídas","subsumidas","subvertidas","subyugadas","succionadas","sucedidas","sucumbidas","sudadas","sufragadas","sufridas","sugeridas","sugestionadas","suicidadas","sujetadas","sumadas","sumergidas","suministradas","supeditadas","superadas","superpuestas","supervisadas","suplantadas","suplicadas","suplidas","suprimidas","supuestas","surcadas","surtidas","suscitadas","suspendidas","suspiradas","sustanciadas","sustantivadas","sustentadas","sustituidas","sustraídas","susurradas","suturadas","tabuladas","tachadas","taladas","taladradas","talladas","tambaleadas","tamizadas","tañidas","tanteadas","tapadas","tapizadas","taponadas","tarareadas","tardadas","tasadas","tatuadas","tecleadas","tejidas","telefoneadas","televisadas","temidas","templadas","tendidas","tenidas","tensadas","tentadas","teorizadas","terciadas","tergiversadas","terminadas","territorializadas","testadas","testeadas","testificadas","testimoniadas","tildadas","timadas","timbradas","tinturadas","tipeadas","tipificadas","tiradas","tiranizadas","tironeadas","tiroteadas","titubeadas","tiznadas","tocadas","toleradas","tomadas","tonificadas","topadas","toqueteadas","torcidas","toreadas","tornadas","tornasoladas","torneadas","torpedeadas","torturadas","tosidas","tostadas","totalizadas","trabadas","trabajadas","traducidas","traficadas","tragadas","traicionadas","traídas","trajinadas","tramadas","tramitadas","trancadas","tranquilizadas","transcendidas","transcurridas","transferidas","transfiguradas","transformadas","transfundidas","transgredidas","transigidas","transitadas","transliteradas","translucidas","transmitidas","transmutadas","transparentadas","transpiradas","transportadas","transpuestas","trasegadas","trasgredidas","trasladadas","traslapadas","traslucidas","trasnochadas","traspapeladas","traspasadas","trasplantadas","traspuestas","trasquiladas","trasteadas","trastocadas","trastornadas","trasvasadas","tratadas","trazadas","trenzadas","trepadas","tributadas","trincadas","triplicadas","trituradas","triunfadas","trivializadas","trocadas","troceadas","tronadas","tronchadas","truncadas","tumbadas","tuneadas","turbadas","turnadas","tuteladas","ufanadas","ultimadas","uncidas","ungidas","unidas","universalizadas","untadas","urbanizadas","urdidas","usadas","usufructuadas","usurpadas","utilizadas","vacadas","vaciadas","vaciladas","vacunadas","vagadas","validadas","validas","valoradas","valorizadas","valuadas","vanagloriadas","vandalizadas","vaporizadas","variadas","vaticinadas","vedadas","vehiculadas","vejadas","veladas","vencidas","vendadas","vendidas","veneradas","vengadas","ventiladas","veraneadas","verbalizadas","verificadas","versadas","versionadas","vertebradas","vertidas","vestidas","vetadas","viabilizadas","viajadas","vibradas","victimadas","victimizadas","vigiladas","vigorizadas","vilipendiadas","vindicadas","violadas","violentadas","viradas","visadas","visibilizadas","visitadas","vislumbradas","vistas","visualizadas","vitoreadas","vitrificadas","vituperadas","vividas","vivificadas","vocalizadas","voceadas","vociferadas","voladas","volatilizadas","volcadas","volteadas","vomitadas","votadas","vueltas","vulcanizadas","vulgarizadas","vulneradas","yuxtapuestas","zafadas","zambullidas","zampadas","zanjadas","zarandeadas","zarpadas","zozobradas","zumbadas","zurcidas","zurradas"]}},function(a,e,t){"use strict";a.exports=function(){return["abalienato","abbacchiato","abbacinato","abbadato","abbagliato","abbaiato","abballato","abbambinato","abbancato","abbandonato","abbarbagliato","abbarbato","abbarcato","abbaruffato","abbassato","abbatacchiato","abbattuto","abbatuffolato","abbelito","abbellato","abbellito","abbendato","abbeverato","abbiadato","abbicato","abbigliato","abbinato","abbindolato","abbioccato","abbiosciato","abbisciato","abbittato","abboccato","abboffato","abbominato","abbonacciato","abbonato","abbonito","abbordato","abborracciato","abborrato","abborrito","abbottinato","abbottonato","abbozzacchiato","abbozzato","abbozzolato","abbracciato","abbraciato","abbrancato","abbreviato","abbriccato","abbrigliato","abbrivato","abbriviato","abbrividito","abbronzato","abbrostolato","abbrostolito","abbruciacchiato","abbruciato","abbrunato","abbrunito","abbruscato","abbrusciato","abbrustiato","abbrustolato","abbrustolito","abbrutito","abbruttito","abbuffato","abbuiato","abbuonato","abburattato","abbuzzito","abdicato","abdotto","abiettato","abilitato","abissato","abitato","abituato","abiurato","abolito","abominato","abondato","aborrito","abraso","abrogato","abusato","accaffato","accagionato","accagliato","accalappiato","accalcato","accaldato","accallato","accalorato","accalorito","accambiato","accampato","accampionato","accanalato","accanato","accaneggiato","accanito","accantonato","accaparrato","accapezzato","accapigliato","accapottato","accappiato","accappiettato","accapponato","accappucciato","accaprettato","accareggiato","accarezzato","accarnato","accarpionato","accartocciato","accasato","accasciato","accasellato","accasermato","accastellato","accastellinato","accatarrato","accatastato","accattato","accattivato","accavalcato","accavalciato","accavallato","accavezzato","accecato","acceffato","accelerato","accellerato","accennato","accensato","accentato","accentrato","accentuato","acceppato","accerchiato","accercinato","accertato","acceso","accessoriato","accettato","acchetato","acchiappato","acchiocciolato","acchitato","acchiuduto","acciabattato","acciaiato","acciambellato","acciarpato","acciecato","accigliato","acciglionato","accignuto","accincignato","accinto","acciocchito","acciottolato","accipigliato","accismato","acciso","acciucchito","acciuffato","accivettato","acclamato","acclarato","acclimatato","accluso","accoccato","accoccolato","accoccovato","accodato","accollato","accoltellato","accolto","accomandato","accomiatato","accommiatato","accomodato","accompagnato","accomunato","acconciato","acconigliato","accontato","accontentato","accoppato","accoppiato","accorato","accorciato","accorcito","accordato","accordellato","accorpato","accorto","accosciato","accostato","accostumato","accotonato","accottimato","accovacciato","accovato","accovonato","accozzato","accreditato","accresciuto","accrespato","accucciato","accucciolato","accudito","acculato","acculturato","accumulato","accumunato","accusato","acetificato","acetilato","acetito","acidato","acidificato","acidulato","acquadernato","acquarellato","acquartierato","acquato","acquattato","acquerellato","acquetato","acquietato","acquisito","acquistato","acromatizzato","acuito","acuminato","acutizzato","adacquato","adagiato","adattato","addaziato","addebbiato","addebitato","addecimato","addensato","addentato","addentellato","addentrato","addestrato","addetto","addiacciato","addimandato","addimesticato","addimorato","addimostrato","addipanato","addirizzato","additato","additivato","addizionato","addobbato","addocilito","addogliato","addolcato","addolciato","addolcito","addolorato","addomandato","addomesticato","addoppiato","addormentato","addossato","addotto","addottorato","addottrinato","addrizzato","adduato","addugliato","adeguato","adempito","adempiuto","adequato","aderizzato","adescato","adibito","adirato","adito","adiuvato","adizzato","adocchiato","adombrato","adonato","adonestato","adontato","adoperato","adoprato","adorato","adornato","adottato","adsorbito","aduggiato","adugnato","adulato","adulterato","adunato","adunghiato","adusato","aerato","aereato","aerotrainato","aerotrasportato","affabulato","affaccendato","affacchinato","affacciato","affagottato","affaldato","affamato","affamigliato","affannato","affardellato","affascinato","affastellato","affaticato","affattucchiato","affatturato","affermato","afferrato","affettato","affezionato","affiancato","affiatato","affibbiato","affidato","affienato","affievolito","affigliato","affigurato","affilato","affilettato","affiliato","affinato","affiochito","affiorato","affisato","affissato","affisso","affittato","affittito","afflitto","afflosciato","affocato","affogato","affogliato","affollato","affoltato","affondato","afforcato","afforestato","afforzato","affossato","affralito","affrancato","affranto","affratellato","affrenato","affrenellato","affrescato","affrettato","affrittellato","affrontato","affumato","affumicato","affumigato","affuocato","affusolato","africanizzato","ageminato","agevolato","aggallato","agganciato","aggangherato","aggarbato","aggattonato","aggavignato","aggelato","aggettivato","agghiacciato","agghiadato","agghiaiato","agghindato","aggiaccato","aggiogato","aggiornato","aggirato","aggiucchito","aggiudicato","aggiuntato","aggiunto","aggiustato","agglomerato","agglutinato","aggomitolato","aggottato","aggradito","aggraffato","aggranchiato","aggranchito","aggrandito","aggrappato","aggraticciato","aggravato","aggredito","aggregato","aggrevato","aggricciato","aggrinzato","aggrinzito","aggrommato","aggrondato","aggroppato","aggrottato","aggrovigliato","aggrumato","aggruppato","aggruzzolato","agguagliato","agguantato","agguardato","agguatato","aggueffato","agitato","agognato","agrarizzato","aguatato","agucchiato","agunato","agurato","aguzzato","aitato","aiutato","aizzato","alato","alberato","albergato","alcalinizzato","alchilato","alchimiato","alchimizzato","alcolizzato","alcoolizzato","alenato","alesato","alettato","alfabetato","alfabetizzato","alidito","alienato","alimentato","allacciato","allagato","allappato","allargato","allascato","allattato","alleato","allegato","alleggerito","alleggiato","allegorizzato","alleluiato","allenato","allenito","allentato","allertato","allessato","allestito","allettato","allevato","alleviato","allibato","allibito","allibrato","allicciato","allietato","allindato","allineato","alliso","allocato","allogato","alloggiato","allontanato","allottato","allucchettato","allucciolato","allucinato","allumato","alluminato","alluminiato","allungato","allupato","alluso","alluzzato","alogenato","alonato","alpeggiato","alterato","alternato","alzato","amalgamato","amareggiato","amaricato","amato","ambientato","ambiguato","ambito","americanizzato","amicato","ammaccato","ammaestrato","ammainato","ammalato","ammaliato","ammalinconito","ammaltato","ammanettato","ammanicato","ammanierato","ammanigliato","ammannato","ammannellato","ammannito","ammansato","ammansito","ammantato","ammantellato","ammarato","ammarezzato","ammassato","ammassellato","ammassicciato","ammatassato","ammattonato","ammazzato","ammelmato","ammencito","ammendato","ammennicolato","ammesso","ammetato","ammezzito","amministrato","amminutato","ammirato","ammiserito","ammobiliato","ammodernato","ammodernizzato","ammogliato","ammoinato","ammollato","ammollito","ammonito","ammonticchiato","ammonticellato","ammorbato","ammorbidato","ammorbidito","ammorsato","ammortato","ammortito","ammortizzato","ammorzato","ammosciato","ammoscito","ammostato","ammotinato","ammucchiato","ammulinato","ammusato","ammutato","ammutinato","amnistiato","amoracciato","ampiato","ampliato","amplificato","amputato","anagrammato","analizzato","anamorfizzato","anastomizzato","anatematizzato","anatomizzato","anchilosato","anciso","ancorato","andatoseno","andicappato","anellato","anemizzato","anestetizzato","angariato","anglicizzato","angolato","angosciato","angustiato","animato","annacquato","annaffiato","annasato","annaspato","annaspicato","annebbiato","annegato","annerato","annerito","annesso","annestato","annichilato","annichilito","annidato","annientato","annitrito","annobilito","annodato","annodicchiato","annoiato","annotato","annottato","annottolato","annoverato","annullato","annunciato","annunziato","annusato","annuvolato","anodizzato","anonimizzato","anteceduto","anteposto","antergato","anticheggiato","antichizzato","anticipato","anticonosciuto","antidatato","antiveduto","antivisto","antologizzato","antropizzato","antropomorfizzato","aocchiato","aombrato","aonestato","aontato","aperto","apocopato","apologizzato","apostrofato","appaciato","appacificato","appagato","appaiato","appalesato","appallottolato","appaltato","appanettato","appannato","apparato","apparecchiato","apparentato","apparigliato","apparito","appartato","appassionato","appastato","appastellato","appellato","appennellato","appercepito","appertizzato","appesantito","appesito","appeso","appestato","appetito","appezzato","appiacevolito","appianato","appiastrato","appiatato","appiattato","appiattito","appiccato","appiccicato","appiccolito","appiedato","appigionato","appigliato","appinzato","appiombato","appioppato","appisolato","applaudito","applicato","appoderato","appoggiato","appollaiato","appoppato","apportato","appostato","apposto","appratito","appresentato","appreso","appressato","apprestato","apprettato","apprezzato","approcciato","approfittato","approfondato","approfondito","approntato","appropinquato","appropriato","approssimato","approvato","approvisionato","approvvigionato","appruato","appulcrato","appuntato","appuntellato","appuntito","appurato","appuzzato","arabescato","arabizzato","arato","arbitrato","arborato","arcaizzato","arcato","architettato","archiviato","arcuato","ardito","areato","argentato","arginato","argomentato","arguito","arianizzato","arieggiato","armato","armonizzato","aromatizzato","arpeggiato","arpionato","arponato","arrabattato","arraffato","arraffiato","arrandellato","arrangiato","arrapato","arrapinato","arrappato","arrazzato","arrecato","arredato","arreggimentato","arrembato","arrenato","arresiso","arreso","arrestato","arretrato","arricchito","arricciato","arricciolato","arriffato","arringato","arrischiato","arrisicato","arriso","arrocato","arroccato","arrochito","arrogato","arrolato","arroncato","arronzato","arrosato","arrossato","arrostato","arrostito","arrotato","arrotolato","arrotondato","arrovellato","arroventato","arroventito","arrovesciato","arrubinato","arruffato","arruffianato","arrugginito","arruncigliato","arruolato","arruvidito","arsicciato","arso","artefatto","articolato","artigliato","asceso","asciato","asciolvuto","asciugato","ascoltato","ascoso","ascosto","ascritto","asfaltato","asfissiato","asperso","aspettato","aspirato","asportato","aspreggiato","assaettato","assaggiato","assalito","assaltato","assaporato","assaporito","assassinato","assecondato","assecurato","assediato","asseggiato","assegnato","assembiato","assemblato","assembrato","assemprato","assentato","asserito","asserragliato","asservito","assestato","assetato","assettato","asseverato","assibilato","assicurato","assiderato","assiemato","assiepato","assillato","assimigliato","assimilato","assiomatizzato","assiso","assistito","associato","assodato","assoggettato","assolcato","assoldato","assolto","assolutizzato","assomato","assommato","assonato","assonnato","assopito","assorbito","assordato","assordito","assortito","assottigliato","assuefatto","assunto","asteggiato","astenuto","asterso","astratto","astretto","atomizzato","atrofizzato","atrovato","attaccato","attagliato","attanagliato","attardato","attediato","atteggiato","attempato","attendato","attentato","attenuato","attenuto","attergato","atterrato","atterrito","atterzato","atteso","attestato","atticizzato","attillato","attinto","attirato","attivato","attivizzato","attizzato","attorcigliato","attorniato","attorto","attoscato","attossicato","attraccato","attrappito","attratto","attraversato","attrezzato","attribuito","attristato","attristito","attruppato","attualizzato","attuato","attuffato","attutato","attutito","auggiato","augumentato","augurato","aulito","aumentato","aunghiato","ausato","auscultato","auspicato","autenticato","autentificato","autoaccusato","autoaffondato","autoalimentato","autoassolto","autocandidato","autocensurato","autocitato","autocommiserato","autoconsumato","autoconvinto","autodefinito","autodenunciato","autodistrutto","autofinanziato","autogestito","autogovernato","autografato","autoincensato","autointersecato","autoinvitato","autolesionato","autolimitato","automaticizzato","automatizzato","automotivato","autonominato","autoproclamato","autoprodotto","autoprotetto","autopubblicato","autopubblicizzato","autoregolamentato","autoregolato","autoridotto","autoriparato","autorizzato","autosomministrato","autosostenuto","autosuggestionato","autotassato","autotrapiantato","autotrasportato","autovalutato","avallato","avampato","avanzato","avariato","avinto","aviolanciato","aviotrasportato","avocato","avolterato","avulso","avutacelo","avuto","avvalorato","avvalso","avvantaggiato","avvelato","avvelenato","avventato","avventurato","avverato","avversato","avvertito","avvezzato","avviato","avvicendato","avvicinato","avvignato","avvilito","avviluppato","avvinato","avvinchiato","avvinghiato","avvinto","avvisato","avvistato","avvitato","avviticchiato","avvitito","avvivato","avvolto","avvoltolato","aziendalizzato","azionato","azotato","azzannato","azzardato","azzeccato","azzerato","azzimato","azzittato","azzittito","azzoppato","azzoppito","azzuffato","azzurrato","bacato","baccagliato","bacchettato","bacchiato","baciato","badato","bagnato","baipassato","balbettato","balcanizzato","ballato","baloccato","balzato","banalizzato","bancato","bandito","bannato","baraccato","barattato","barbarizzato","barcamenato","bardato","barellato","barrato","barricato","basato","basciato","basculato","bassato","bastato","bastionato","bastito","bastonato","battezzato","battuto","bazzicato","beatificato","beato","beccato","beccheggiato","becchettato","beffato","beffeggiato","bendato","benedetto","beneficato","benvoluto","berlusconizzato","bersagliato","bestemmiato","bevuto","biadato","bianchettato","bianchito","biascicato","biasimato","biasmato","bidonato","biennalizzato","biforcato","bigiato","bilanciato","binato","bindolato","biodegradato","biografato","bipartito","bisbigliato","biscottato","bisecato","bisellato","bisognato","bissato","bistrato","bistrattato","bitumato","bituminato","blandito","bleffato","blindato","bloccato","bobinato","boccheggiato","bocciato","boicottato","bollato","bollito","bombardato","bombato","bonderizzato","bonificato","bootato","borbottato","bordato","boriato","borrato","borseggiato","braccato","bracciato","bramato","bramito","brancicato","brandeggiato","brandito","brasato","bravato","brevettato","breviato","brillantato","brillato","brinato","broccato","brocciato","broccolato","brontolato","bronzato","brucato","bruciacchiato","bruciato","brunito","bruscato","bruschinato","brutalizzato","bruttato","bucato","bucherellato","bufato","buffato","bufferizzato","buggerato","bugnato","bulicato","bulinato","bullettato","bullonato","burattato","burlato","burocratizzato","burrificato","buscato","buttato","butterato","bypassato","cablato","cabrato","cacato","cacciato","cadenzato","cadmiato","caducato","cagato","caggiato","cagionato","cagliato","calafatato","calamitato","calandrato","calato","calcato","calciato","calcificato","calcolato","caldeggiato","calettato","calibrato","calmato","calmierato","calpestato","calumato","calunniato","calzato","cambiato","camerato","campionato","campito","camuffato","canalizzato","cancellato","cancerizzato","candeggiato","candidato","candito","canforato","cangiato","cannato","canneggiato","cannibalizzato","cannoneggiato","canonizzato","cantato","canterellato","canticchiato","cantilenato","canzonato","caolinizzato","capacitato","capeggiato","capillarizzato","capitalizzato","capitanato","capitaneggiato","capito","capitozzato","capivolto","caponato","capotato","capottato","capovolto","capponato","captato","caramellato","caramellizzato","caratato","caratterizzato","carbonizzato","carbossilato","carburato","carcato","carcerato","cardato","carenato","carezzato","cariato","caricato","caricaturato","caricaturizzato","carotato","carpionato","carpito","carreggiato","carrozzato","cartavetrato","carteggiato","cartellinato","cartografato","cartolarizzato","cartonato","cascolato","cassato","casso","castigato","castrato","casualizzato","catabolizzato","catalizzato","catalogato","catapultato","catechizzato","categorizzato","cateterizzato","catramato","cattolicizzato","catturato","causato","cautelato","cauterizzato","cauzionato","cavalcato","cavataselo","cavato","cazzato","cazziato","cazzottato","cedrato","ceduto","celato","celebrato","cellofanato","cementato","cementificato","cennato","censito","censurato","centellato","centellinato","centimetrato","centinato","centralizzato","centrato","centrifugato","centuplicato","cerato","cercato","cerchiato","cernuto","certificato","cesellato","cessato","cestinato","cheratinizzato","chetato","chiamato","chiappato","chiarificato","chiarito","chiaroscurato","chiavato","chiazzato","chiesto","chilificato","chilometrato","chimificato","chinato","chinizzato","chiodato","chiosato","chiuso","choccato","ciancicato","cianfrinato","cianfrugliato","ciangottato","ciattato","cibato","cicatrizzato","ciccato","cicchettato","ciclizzato","ciclostilato","cifrato","cilindrato","cimato","cimentato","cincischiato","cinematografato","cintato","cinto","cioncato","ciondolato","circolato","circoncinto","circonciso","circondato","circondotto","circonflesso","circonfluito","circonfuso","circonscritto","circonvenuto","circoscritto","circostanziato","circuito","circumcinto","circumnavigato","citato","ciucciato","ciurmato","civettato","civilizzato","clamato","classato","classicizzato","classificato","cliccato","climatizzato","clivato","clonato","cloroformizzato","clorurato","clusterizzato","co-diretto","coacervato","coadiuvato","coagulato","coalizzato","coartato","coccolato","codificato","coeditato","coesistito","cofinanziato","cofirmato","cofondato","cogestito","cogitato","coglionato","cognosciuto","coibentato","coinciso","cointeressato","cointestato","coinvolto","cokificato","colato","colettato","collassato","collaudato","collazionato","collegato","collettivizzato","collezionato","collimato","colliquato","colliso","collocato","colluttato","colmato","colonizzato","colorato","colorito","colorizzato","colpevolizzato","colpito","coltellato","coltivato","colto","coltrato","comandato","combattuto","combinato","comburuto","comicizzato","cominciato","commemorato","commendato","commensurato","commentato","commercializzato","commesso","comminato","commiserato","commissariato","commissionato","commisurato","commosso","commutato","comodato","compaginato","comparito","compartimentalizzato","compartito","compassionato","compatibilizzato","compatito","compattato","compendiato","compenetrato","compensato","comperato","compiaciuto","compianto","compilato","compitato","compiuto","complessato","complessificato","complesso","completato","complicato","complimentato","comportato","compostato","composto","comprato","compravenduto","compreso","compresso","compromesso","comprovato","compulsato","compunto","computato","computerizzato","comunicato","comunistizzato","concatenato","conceduto","concelebrato","concentrato","concepito","concertato","concesso","concettato","concettualizzato","conchiuso","conciato","conciliato","concimato","concitato","conclamato","concluso","concordato","concotto","concretato","concretizzato","conculcato","concupito","condannato","condensato","condito","condiviso","condizionato","condoluto","condonato","condotto","confatto","confederato","conferito","confermato","confessato","confettato","confezionato","conficcato","confidato","configurato","confinato","confinto","confiscato","confitto","conformato","confortato","confricato","confrontato","confuso","confutato","congedato","congegnato","congelato","congestionato","congetturato","congiunto","conglobato","conglomerato","conglutinato","congratulato","congregato","conguagliato","coniato","coniugato","connaturato","connesso","connotato","connumerato","conosciuto","conquistato","consacrato","consapevolizzato","consegnato","conseguito","consentito","conservato","considerato","consigliato","consistito","consociato","consolato","consolidato","consorziato","consparso","consperso","constatato","constretto","construito","consultato","consumato","consunto","contabilizzato","contagiato","containerizzato","contaminato","contato","contattato","conteggiato","contemperato","contemplato","contentato","contenuto","conteso","contestato","contestualizzato","contingentato","continuato","contornato","contorto","contrabbandato","contraccambiato","contraddetto","contraddistinto","contradetto","contraffatto","contrappesato","contrapposto","contrappuntato","contrariato","contrassegnato","contrastato","contrato","contrattaccato","contrattato","contratto","contravvalso","contristato","controbattuto","controbilanciato","controdatato","controfirmato","controindicato","controllato","controminato","contronotato","controproposto","controprovato","controquerelato","controsoffittato","controstampato","controventato","conturbato","contuso","convalidato","convenuto","convenzionato","convertito","convinto","convitato","convocato","convogliato","convolto","coobato","cooptato","coordinato","coperchiato","coperto","copiaincollato","copiato","copolimerizzato","coppellato","coprodotto","corazzato","corbellato","corcato","cordonato","coreografato","coricato","cornificato","coronato","corredato","correlato","corresponsabilizzato","corretto","corricchiato","corrisposto","corroborato","corroso","corrotto","corrucciato","corrugato","corso","corteato","corteggiato","cortocircuitato","coruscato","cosato","coscritto","cosparso","cosperso","costatato","costeggiato","costellato","costernato","costicchiato","costipato","costituito","costituzionalizzato","costretto","costruito","costudito","cotonato","cotto","covato","coventrizzato","coverchiato","craccato","creato","creduto","cremato","crepato","cresciuto","cresimato","crespato","criminalizzato","crioconcentrato","criptato","cristallizzato","cristianizzato","criticato","crittato","crittografato","crivellato","crocchiato","crocefisso","crocefitto","crocifisso","crocifitto","crogiolato","cromato","cronicizzato","cronometrato","crostato","crucciato","crucifisso","crucifitto","cuccato","cucinato","cucito","cullato","cumulato","cuntato","curato","curvato","curvato","custodito","customizzato","damascato","damaschinato","damato","dannato","danneggiato","danzato","dardeggiato","datato","dato","dattilografato","dattiloscritto","daziato","deacidificato","deattivato","debbiato","debellato","debilitato","decaffeinato","decaffeinizzato","decalcato","decalcificato","decantato","decapato","decapitato","decappottato","decarbossilato","decarburato","decatizzato","decelerato","decentralizzato","decentrato","decerebrato","decernuto","decespugliato","deciferato","decifrato","decimalizzato","decimato","deciso","declamato","declassato","declassificato","declinato","declorato","decodificato","decolonizzato","decolorato","decompartimentato","decompilato","decomposto","decompresso","deconcentrato","decondizionato","decongelato","decongestionato","decontaminato","decontestualizzato","decontratto","decorato","decorticato","decostruito","decrementato","decretato","decriminalizzato","decriptato","decrittato","decuplicato","decurtato","dedicato","dedotto","defacciato","defalcato","defascistizzato","defecato","defenestrato","deferito","defilato","definito","defiscalizzato","defitto","deflazionato","deflemmato","deflorato","defogliato","defoliato","deforestato","deformato","defosforato","defosforilato","deframmentato","defraudato","degassato","degassificato","deglutito","degnato","degradato","degustato","deidratato","deidrogenato","deificato","deindicizzato","deindustrializzato","deionizzato","delegato","delegificato","delegittimato","delibato","deliberato","delimitato","delineato","delirato","deliziato","delocalizzato","delucidato","deluso","demagnetizzato","demandato","demanializzato","demarcato","demeritato","demerso","demetallizzato","demilitarizzato","demineralizzato","demistificato","demitizzato","democratizzato","demodulato","demolito","demoltiplicato","demonetato","demonetizzato","demonizzato","demoralizzato","demorso","demotivato","denaturalizzato","denaturato","denazificato","denazionalizzato","denicotinizzato","denigrato","denitrificato","denocciolato","denominato","denotato","dentellato","denuclearizzato","denudato","denunciato","denunziato","deodorato","deossidato","deossigenato","deostruito","depauperato","depenalizzato","depennato","depilato","depinto","depistato","deplorato","depolarizzato","depolimerizzato","depoliticizzato","depolverizzato","deportato","depositato","deposto","depotenziato","depravato","deprecato","depredato","depresso","depressurizzato","deprezzato","deprivato","deprotonato","depulso","depurato","dequalificato","deratizzato","derattizzato","dereferenziato","deregolamentato","deregolato","derequisito","deresponsabilizzato","deriso","derubato","derubricato","desacralizzato","desalato","desalinizzato","descolarizzato","descritto","desecretato","desegretato","deselezionato","desensibilizzato","desessualizzato","desiato","desiderato","designato","desinato","desirato","desolato","desolforato","desonorizzato","desorbito","desossidato","desquamato","destabilizzato","destagionalizzato","destalinizzato","destatalizzato","destatizzato","destato","destinato","destituito","destoricizzato","destreggiato","destrutto","destrutturato","desunto","detassato","detenuto","deteriorato","determinato","deterso","detestato","detonato","detorto","detossificato","detratto","detronizzato","dettagliato","dettato","detto","deturpato","deumidificato","devastato","deventato","deviato","deviscerato","devitalizzato","devitaminizzato","devoluto","dezippato","diaframmato","diagnosticato","diagonalizzato","diagrammato","dializzato","dialogato","dialogizzato","diazotato","dibattuto","diboscato","dichiarato","diesato","diesizzato","difeso","diffamato","differito","diffidato","diffranto","diffratto","diffuso","digerito","digitalizzato","digitato","digiunto","digrassato","digrignato","digrossato","dilacerato","dilaniato","dilapidato","dilatato","dilavato","dilazionato","dileggiato","dileguato","dilettato","diletto","diliscato","dilucidato","diluito","dilungato","dimagrato","dimandato","dimenato","dimensionato","dimenticato","dimerizzato","dimesso","dimezzato","diminuito","dimissionato","dimostrato","dimunto","dinamizzato","dinoccato","dipanato","dipelato","dipinto","diplomato","diposto","diradato","diramato","diretto","direzionato","dirimuto","diroccato","dirottato","dirotto","dirozzato","disabilitato","disabituato","disaccentato","disaccoppiato","disaccordato","disacerbato","disacidato","disacidificato","disacidito","disaerato","disaffezionato","disaggregato","disalberato","disallineato","disamato","disambiguato","disaminato","disamorato","disancorato","disanimato","disappannato","disapplicato","disappreso","disapprovato","disarcionato","disarmato","disarticolato","disascosto","disassemblato","disassuefatto","disatomizzato","disatteso","disattivato","disattrezzato","disavvezzato","disboscato","disbrigato","discacciato","discalzato","discantato","discaricato","discernuto","disceso","disceverato","dischiesto","dischiuso","discinto","disciolto","disciplinato","discolorato","discolpato","discommesso","discompagnato","discomposto","disconcluso","disconfitto","discongiunto","disconnesso","disconosciuto","discoperto","discordato","discosceso","discostato","discreditato","discresciuto","discriminato","discritto","discucito","discuoiato","discusso","disdegnato","disdettato","disdetto","diseccato","diseccitato","diseducato","disegnato","diserbato","diseredato","disertato","diserto","disfatto","disgelato","disgiunto","disgraziato","disgregato","disgustato","disidentificato","disiderato","disidratato","disilluso","disimballato","disimparato","disimpegnato","disimpresso","disincagliato","disincantato","disincentivato","disincrostato","disindustrializzato","disinfestato","disinfettato","disinflazionato","disinformato","disingannato","disingranato","disinibito","disinnamorato","disinnescato","disinnestato","disinquinato","disinserito","disinstallato","disintasato","disintegrato","disinteressato","disinteso","disintossicato","disinvestito","disinvolto","disistimato","dislocato","dismesso","disobbedito","disobbligato","disonorato","disordinato","disorganizzato","disorientato","disormeggiato","disossato","disossidato","disostruito","disotterrato","disparito","dispensato","dispento","disperduto","disperso","dispeso","dispiegato","dispinto","dispogliato","disposto","dispregiato","disprezzato","dispromesso","disproporzionato","disputato","disqualificato","disrotto","dissacrato","dissalato","dissaldato","dissanguato","dissecato","disseccato","disselciato","dissellato","disseminato","dissepolto","disseppellito","dissequestrato","disserrato","dissestato","dissetato","dissezionato","dissigillato","dissimulato","dissipato","dissociato","dissodato","dissolto","dissomigliato","dissotterrato","dissuaso","dissuggellato","distaccato","distanziato","disteso","distillato","distinto","distolto","distorto","distratto","distretto","distribuito","districato","distrigato","distrutto","disturbato","disubbidito","disumanato","disumanizzato","disunito","disusato","disveduto","disvelato","disvestito","disviato","disvisto","disvolto","disvoluto","dittongato","divallato","divaricato","divelto","diversificato","divertito","divezzato","divinato","divincolato","divinizzato","diviso","divolto","divorato","divorziato","divulgato","documentato","dogato","dogmatizzato","dolcificato","dollarizzato","dolorato","doluto","domandato","domato","domesticato","domiciliato","dominato","donato","dondolato","dopato","doppiato","dorato","dormitoco","dosato","dotato","dovuto","dragato","drammatizzato","drappeggiato","drenato","dribblato","drizzato","drogato","dugliato","duplicato","duramificato","ebraizzato","ecceduto","eccepito","eccettuato","eccitato","echeggiato","eclissato","economizzato","edificato","editato","edotto","educato","edulcorato","effettuato","efficientato","effigiato","effinto","effluito","effuso","egemonizzato","eguagliato","eiettato","elaborato","elargito","elasticizzato","elementarizzato","elemosinato","elencato","eletto","elettrificato","elettrizzato","elettrocoagulato","elettrolizzato","elevato","eliminato","eliso","elitrasportato","ellenizzato","elogiato","elucidato","elucubrato","eluito","eluso","emanato","emancipato","emarginato","embricato","emendato","emesso","emozionato","empito","empiuto","emulato","emulsionato","emunto","encomiato","endocitato","energizzato","enfatizzato","enfiato","entusiasmato","enucleato","enumerato","enunciato","epicureggiato","epurato","equalizzato","equilibrato","equipaggiato","equiparato","eradicato","eraso","ereditato","eretto","erogato","eroicizzato","eroso","erotizzato","erpicato","erso","erudito","eruttato","esacerbato","esagerato","esagitato","esalato","esaltato","esaminato","esasperato","esaudito","esaurito","esautorato","esborsato","escluso","escogitato","escomiato","escoriato","escosso","escusso","esecrato","esecutato","eseguito","esemplificato","esentato","esercitato","esfoliato","esibito","esilarato","esiliato","esimuto","esitato","esonerato","esorbitato","esorcizzato","esortato","espanso","esparso","esperimentato","esperito","espettorato","espiantato","espiato","espirato","espletato","esplicato","esplicitato","esplorato","esploso","esportato","esposto","espresso","espropriato","espugnato","espulso","espunto","espurgato","essiccato","essuto","estasiato","estenuato","esterificato","esteriorizzato","esterminato","esternalizzato","esternato","esteso","estimato","estinto","estirpato","estivato","estorto","estradato","estraniato","estrapolato","estratto","estremizzato","estrinsecato","estromesso","estruso","estubato","esulcerato","esultato","esumato","eterificato","eterizzato","eternato","eternizzato","etichettato","etossilato","euforizzato","europeizzato","evacuato","evangelizzato","evaso","eveto","evidenziato","evinto","evirato","eviscerato","evitato","evocato","evolto","evoluto","evulso","fabbricato","faccettato","facilitato","fagocitato","falciato","falcidiato","fallito","falsato","falsificato","familiarizzato","fanatizzato","fantasticato","farcito","farfugliato","fasciato","fascicolato","fascistizzato","fattacelo","fatto","fattorizzato","fatturato","favellato","favoreggiato","favorito","faxato","fecondato","fedecommesso","federalizzato","federato","felicitato","felpato","feltrato","femminilizzato","fenduto","ferito","fermato","fermentato","ferrato","fertilizzato","fesso","fessurato","festeggiato","festonato","feudalizzato","fiaccato","fiammeggiato","fiancheggiato","ficcato","fidanzato","fidato","fidecommesso","fidelizzato","figliato","figurato","filato","filettato","filmato","filosofato","filtrato","finalizzato","finanziato","finitalo","finito","finlandizzato","fintato","finto","fiocinato","fiondato","fiorettato","firmato","fiscalizzato","fischiato","fischiettato","fissato","fissionato","fitto","fiutato","flagellato","flaggato","flambato","flangiato","flemmatizzato","flesso","flippato","flottato","fluidificato","fluidizzato","fluorizzato","fluorurato","focalizzato","focheggiato","foderato","foggiato","fognato","folgorato","follato","fomentato","fonato","fondato","foracchiato","foraggiato","forato","forestato","forfettizzato","forgiato","formalizzato","formato","formattato","formilato","formulato","fornito","fortificato","forviato","forwardato","forzato","fosfatato","fosforato","fosforilato","fossilizzato","fotocomposto","fotocopiato","fotografato","fottuto","fracassato","frainteso","framesso","frammentato","frammesso","frammezzato","frammischiato","franceseggiato","francesizzato","frangiato","franto","frantumato","frappato","frapposto","fraseggiato","frastagliato","frastornato","fratturato","frazionato","freddato","fregato","fregiato","frenato","frequentato","fresato","frettato","friendzonato","fritto","frizionato","frodato","frollato","fronteggiato","frugato","fruito","frullato","frusciato","frustato","frustrato","fruttato","fucilato","fucinato","fugato","fuggito","fulminato","fumato","fumigato","funestato","funto","funzionato","fuoriuscito","fuorviato","fuso","fustellato","fustigato","gabbato","gabellato","gallato","gallicizzato","gallonato","galvanizzato","gambizzato","garantito","garnettato","garrotato","garzato","gasato","gassato","gassificato","gazato","gelatinizzato","gelato","gelificato","gemellato","gemicato","geminato","generalizzato","generato","gentrificato","genuflesso","geometrizzato","georeferenziato","gerarchizzato","germanizzato","gestito","gettato","gettonato","ghermito","ghettizzato","ghigliottinato","ghindato","gibollato","gingillato","ginnato","giocato","gioito","gionglato","giovaneggiato","girandolato","girato","giudicato","giulebbato","giuntato","giunto","giuracchiato","giurato","giustapposto","giustificato","giustiziato","glamourizzato","glassato","glissato","globalizzato","gloriato","glorificato","glossato","godronato","goduto","goffrato","gommato","gonfiato","googlato","gottato","governato","gradinato","gradito","gradualizzato","graduato","graffato","graffiato","graffito","graficato","grafitato","gramolato","granagliato","grandinato","granellato","granito","granulato","graticciato","graticolato","gratificato","gratinato","grattato","grattugiato","gravato","graziato","grecheggiato","grecizzato","gremito","gridato","griffato","grigliato","grippato","groccato","grondato","grugato","grugnito","guadagnato","gualcito","guardato","guarito","guarnito","guastato","guatato","guerreggiato","gufato","guidato","gustato","hackerato","handicappato","ibridato","idealizzato","ideato","identificato","ideologizzato","idolatrato","idoleggiato","idratato","idrogenato","idrolizzato","iettato","igienizzato","ignifugato","ignorato","illanguidito","illeggiadrito","illividito","illuminato","illuso","illustrato","imbacuccato","imbaldanzito","imballato","imbalsamato","imbambolato","imbandierato","imbandito","imbarbarito","imbarcato","imbarilato","imbastardito","imbastito","imbattuto","imbavagliato","imbeccato","imbellettato","imbellito","imbestialito","imbestiato","imbevuto","imbiaccato","imbiancato","imbianchito","imbibito","imbiettato","imbiondito","imbizzarrito","imboccato","imbonito","imborghesito","imboscato","imboschito","imbottato","imbottigliato","imbottito","imbozzimato","imbracato","imbracciato","imbragato","imbrancato","imbrattato","imbrecciato","imbrigliato","imbrillantinato","imbroccato","imbrodato","imbrogliato","imbronciato","imbruttito","imbucato","imbudellato","imbullettato","imbullonato","imburrato","imbussolato","imbustato","imbutito","imitato","immagazzinato","immaginato","immalinconito","immatricolato","immedesimato","immerso","immesso","immischiato","immiserito","immobilizzato","immolato","immortalato","immunizzato","immusonito","impaccato","impacchettato","impacciato","impadronito","impaginato","impagliato","impalato","impalcato","impallato","impallinato","impalmato","impaludato","impanato","impaniato","impannato","impantanato","impaperato","impapocchiato","impappinato","imparentato","imparruccato","impartito","impastato","impasticcato","impasticciato","impastocchiato","impastoiato","impataccato","impattato","impaurito","impavesato","impeciato","impedicato","impedito","impegnato","impegolato","impelagato","impellicciato","impennacchiato","impennato","impensierito","impepato","imperlato","impermalito","impermeabilizzato","imperniato","impersonato","impersonificato","impestato","impetrato","impiallacciato","impiantato","impiastrato","impiastricciato","impiccato","impicciato","impicciolito","impiccolito","impidocchiato","impiegato","impietosito","impietrito","impigliato","impigrito","impilato","impillaccherato","impinguato","impinto","impinzato","impiombato","impipato","impiumato","implementato","implicato","implorato","impollinato","impolpato","impoltronito","impolverato","impomatato","imporcato","imporporato","importato","importunato","impossessato","impossibilitato","impostato","imposto","impratichito","impregnato","impreso","impressionato","impresso","imprestato","impreziosito","imprigionato","impromesso","improntato","improsciuttito","impugnato","impuntito","impunturato","impupato","imputato","impuzzolentito","inabilitato","inabissato","inacerbito","inacetito","inacidito","inacutito","inaffiato","inalato","inalberato","inalveato","inalzato","inamidato","inanellato","inarcato","inargentato","inaridito","inasprito","inastato","inattivato","inaugurato","incacchiato","incalcinato","incalorito","incalzato","incamerato","incamiciato","incamminato","incanaglito","incanalato","incannato","incannucciato","incaponito","incappottato","incappucciato","incaprettato","incapricciato","incapsulato","incarcerato","incardinato","incaricato","incarnato","incarrozzato","incartato","incartocciato","incartonato","incasellato","incasinato","incassato","incastellato","incastonato","incastrato","incatenato","incatramato","incattivito","incavato","incavigliato","incavolato","incazzato","incellofanato","incendiato","incenerito","incensato","incentivato","incentrato","inceppato","incerato","incernierato","incerottato","inceso","incettato","inchiappettato","inchiavardato","inchiesto","inchinato","inchiodato","inchiostrato","incipriato","inciso","incistato","incitato","inciuccato","incivilito","inclinato","incluso","incoccato","incocciato","incoiato","incollato","incolonnato","incolpato","incominciato","incomodato","incontrato","incoraggiato","incordato","incornato","incorniciato","incoronato","incorporato","incotto","incravattato","incrementato","increspato","incretinito","incriminato","incrinato","incrociato","incrostato","incrudelito","incrudito","incruscato","incubato","inculato","inculcato","incuneato","incuoiato","incuorato","incupito","incuriosito","incurvato","incusso","indagato","indebitato","indebolito","indemaniato","indennizzato","indetto","indicato","indicizzato","indignato","indiretto","indirizzato","indispettito","indisposto","individualizzato","individuato","indolenzito","indorato","indossato","indotto","indottomo","indottrinato","indovinato","indugiato","indulto","indurato","indurito","industrializzato","industriato","inebetito","inebriato","inerito","inerpicato","infagottato","infamato","infangato","infarcito","infarinato","infastidito","infatuato","infeltrito","inferito","inferocito","inferto","infervorato","infestato","infettato","infeudato","infiacchito","infialato","infialettato","infiammato","infiascato","infibulato","inficiato","infilato","infiltrato","infilzato","infingardito","infinocchiato","infinto","infioccato","infiocchettato","infiochito","infiorato","infirmato","infischiato","infisso","infittito","inflazionato","inflesso","inflitto","influenzato","infocato","infoderato","infognato","infoibato","infoltito","inforcato","informatizzato","informato","informicolato","informicolito","infornaciato","infornato","infortunato","infoscato","infossato","infradiciato","inframesso","inframezzato","inframmesso","inframmezzato","infrancesato","infrapposto","infrascato","infrattato","infreddato","infronzolato","infuocato","infurbito","infuriato","ingabbiato","ingaggiato","ingagliardito","ingannato","ingarbugliato","ingavonato","ingegnato","ingegnerizzato","ingelosito","ingemmato","ingenerato","ingentilito","ingerito","ingessato","inghiaiato","inghiottito","inghirlandato","ingiallito","ingigantito","inginocchiato","ingioiellato","ingiunto","ingiuriato","inglesizzato","inglobato","ingoffito","ingoiato","ingolfato","ingollato","ingolosito","ingombrato","ingommato","ingorgato","ingozzato","ingranato","ingrandito","ingrassato","ingraticciato","ingraticolato","ingravidato","ingraziato","ingraziosito","ingrigito","ingrommato","ingrossato","ingrullito","inguaiato","inguainato","ingualdrappato","inguantato","ingurgitato","inibito","iniettato","inimicato","inizializzato","iniziato","inmillato","innacquato","innaffiato","innalzato","innamorato","innastato","innervato","innervosito","innescato","innestato","innevato","innocentato","innocuizzato","innovato","inoculato","inoltrato","inondato","inorgoglito","inorpellato","inorridito","inquadrato","inquietato","inquisito","insabbiato","insacchettato","insalato","insaldato","insalivato","insanguinato","insaponato","insaporito","inscatolato","inscenato","inscritto","insecchito","insediato","insegnato","inseguito","insellato","inselvatichito","inserito","insidiato","insignito","insilato","insinuato","insolentito","insonnolito","insonorizzato","insordito","insospettito","insozzato","inspessito","inspirato","installato","instaurato","insterilito","instillato","instituito","instradato","insudiciato","insufflato","insultato","insuperbito","intabaccato","intabarrato","intaccato","intagliato","intarsiato","intasato","intascato","intavolato","integrato","intelaiato","intelato","intellettualizzato","intenebrato","intenerito","intensificato","intentato","intepidito","intercalato","intercambiato","intercettato","interciso","intercluso","intercollegato","interconnesso","interconvertito","interdetto","interessato","interfacciato","interfogliato","interfoliato","interiorizzato","interlacciato","interlineato","intermesso","intermezzato","internalizzato","internato","internazionalizzato","interpellato","interpenetrato","interpolato","interposto","interpretato","interpunto","interrato","interrogato","interrotto","intersecato","intervallato","intervistato","inteso","intessuto","intestardito","intestato","intiepidito","intimato","intimidito","intimorito","intinto","intirizzito","intitolato","intonacato","intonato","intontito","intorbidato","intorbidito","intorpidito","intortato","intossicato","intralciato","intramesso","intramezzato","intrappolato","intrapreso","intrattenuto","intraveduto","intravisto","intravveduto","intravvisto","intrecciato","intricato","intrigato","intrinsecato","intrippato","intriso","introdotto","introflesso","introiettato","introitato","intromesso","intronato","intronizzato","intruduto","intrufolato","intrugliato","intruppato","intruso","intubato","intubettato","intuito","inumato","inumidito","inurbato","inutilizzato","invaghito","invaginato","invalidato","invasato","invaso","invelenito","inventariato","inventato","invenuto","inverdito","invergato","inverniciato","investigato","investito","invetriato","inviato","invidiato","invigorito","inviluppato","invischiato","invitato","invocato","invogliato","involato","involgarito","involtato","involto","inzaccherato","inzeppato","inzigato","inzolfato","inzuccato","inzuccherato","inzuppato","iodurato","ionizzato","ipertrofizzato","ipnotizzato","ipostatizzato","ipotecato","ipotizzato","iridato","irradiato","irraggiato","irreggimentato","irretito","irrigato","irrigidito","irriso","irritato","irrobustito","irrogato","irrorato","irrugginito","irruvidito","ischeletrito","iscritto","islamizzato","isolato","isomerizzato","ispanizzato","ispessito","ispezionato","ispirato","issato","istallato","istanziato","istaurato","isterilito","istigato","istillato","istituito","istituzionalizzato","istoriato","istradato","istruito","istupidito","italianeggiato","italianizzato","iterato","iudicato","killerato","labbreggiato","labializzato","laccato","lacerato","laconizzato","lacrimato","ladroneggiato","lagnato","lagrimato","laicizzato","lambiccato","lambito","lamentato","laminato","lanciato","lapidato","lappato","lardato","lardellato","largito","larvato","lascato","lasciato","lastricato","latinizzato","laudato","laureato","lavato","lavorato","leccato","legalizzato","legato","leggicchiato","leggiucchiato","legittimato","legittimizzato","legnato","lemmatizzato","lenito","lesinato","lesionato","leso","lessato","letto","levato","levigato","liberalizzato","liberato","licenziato","lievitato","liftato","lignificato","limato","limitato","linciato","linearizzato","lineato","linkato","liofilizzato","liquefatto","liquidato","lisato","lisciato","lisciviato","listato","litografato","livellato","lizzato","lobotomizzato","localizzato","locato","lodato","logorato","lordato","lottato","lottizzato","lubrificato","lucchettato","lucidato","lucrato","lumeggiato","luppolizzato","lusingato","lussato","lustrato","macadamizzato","macchiato","macchinato","macellato","macerato","maciullato","maggesato","maggiorato","magnato","magnetizzato","magnificato","maiolicato","maledetto","malfatto","malignato","malmenato","malmesso","maltato","maltrattato","malveduto","malversato","malvisto","malvoluto","mandato","mandrinato","manducato","maneggiato","manganato","manganellato","mangiato","mangiucchiato","manifatturato","manifestato","manimesso","manipolato","manlevato","manomesso","manoscritto","manovrato","mansuefatto","mantecato","mantenutaso","mantenuto","manualizzato","manutenuto","mappato","marcato","marchiato","marcito","marezzato","marginalizzato","marginato","margottato","marimesso","marinato","maritato","marmorizzato","marnato","marocchinato","martellato","martellinato","martirizzato","martoriato","mascherato","maschiato","maschiettato","mascolinizzato","massacrato","massaggiato","massellato","massicciato","massificato","massimato","massimizzato","mastectomizzato","masterizzato","masticato","masturbato","matematizzato","materializzato","matricolato","mattonato","maturato","mazziato","mazzolato","meccanizzato","medagliato","mediato","medicalizzato","medicato","meditato","membrato","memorizzato","menato","mendicato","menomato","mentovato","menzionato","meravigliato","mercanteggiato","mercerizzato","mercificato","meriato","meridionalizzato","meritato","merlato","merlettato","merso","mesciato","mesciuto","mescolato","mescuto","mesmerizzato","messaggiato","messo","messoco","mestato","mesticato","mestruato","metabolizzato","metaforeggiato","metaforizzato","metallizzato","metamorfizzato","metamorfosato","metanizzato","metilato","metodizzato","microfilmato","microfonato","microminiaturizzato","micronizzato","mietuto","migliorato","militarizzato","millantato","millimetrato","mimato","mimeografato","mimetizzato","minacciato","minato","minchionato","mineralizzato","miniato","miniaturizzato","minimizzato","minuito","minuzzato","miracolato","miscelato","mischiato","misconosciuto","missato","mistificato","misturato","misurato","miticizzato","mitigato","mitizzato","mitragliato","mitrato","mixato","mobiliato","mobilitato","mobilizzato","modanato","modellato","modellizzato","moderato","modernizzato","modificato","modulato","molato","molestato","mollato","molleggiato","moltiplicato","monacato","mondato","mondializzato","monetarizzato","monetato","monetizzato","monitorato","monitorizzato","monocromatizzato","monopolizzato","monottongato","montato","monumentalizzato","mordenzato","mordicchiato","mormorato","morphato","morsicato","morsicchiato","morso","mortasato","mortificato","mosso","mostrato","motivato","motorizzato","motteggiato","movimentato","mozzato","mugolato","mulcito","multato","multiplexato","mummificato","municipalizzato","munito","munto","murato","musato","musicato","mussato","mutato","mutilato","mutizzato","mutuato","nappato","narcotizzato","narrativizzato","narrato","nasalizzato","nascoso","nascosto","nastrato","naturaleggiato","naturalizzato","nauseato","naverato","navicato","navigato","nazificato","nazionalizzato","nebulizzato","necessitato","necrosato","necrotizzato","negativizzato","negato","negletto","negoziato","negreggiato","neologizzato","nerbato","nericato","nettato","neutralizzato","nevato","nevicato","nevischiato","nevrotizzato","nichelato","niellato","ninfeggiato","ninnato","ninnolato","nitratato","nitrificato","nobilitato","noiato","noleggiato","nomato","nominalizzato","nominato","normalizzato","normato","notato","notificato","notiziato","notricato","noverato","nuclearizzato","nudricato","nullificato","numerato","numerizzato","nuotato","nutrito","obbiettato","obbliato","obbligato","oberato","obiettato","obiettivato","obiettivizzato","obiurgato","obliato","obliterato","obnubilato","occasionato","occhieggiato","occidentalizzato","occiso","occluso","occultato","occupato","ocheggiato","odiato","odorato","odorizzato","offerito","offerto","offeso","officiato","offiziato","offuscato","ofiziato","oggettivato","oggettivizzato","oggettualizzato","oliato","olito","olografato","oltraggiato","oltrapassato","oltrepassato","omaggiato","ombrato","ombreggiato","omesso","omogeneizzato","omogenizzato","omologato","ondato","ondulato","onestato","onnubilato","onorato","opacato","opacizzato","operato","opinato","oppiato","oppignorato","oppilato","opposto","oppresso","oppugnato","oprato","opsonizzato","optato","opzionato","orbitato","orchestrato","ordinato","ordito","orecchiato","organato","organicato","organizzato","orgasmato","orientalizzato","orientato","originato","origliato","orizzontato","orlato","orlettato","ormato","ormeggiato","ornato","orpellato","orrato","orripilato","ortogonalizzato","osannato","osato","osculato","oscurato","ospedalizzato","ospitato","osseduto","ossequiato","osservato","ossessionato","ossidato","ossificato","ossitonizzato","ostacolato","osteggiato","ostentato","ostinato","ostracizzato","ostruito","ottemperato","ottenebrato","ottenuto","ottimalizzato","ottimato","ottimizzato","ottonato","ottriato","ottuplicato","otturato","ottuso","ottusso","ovalizzato","ovariectomizzato","ovattato","overcloccato","ovrato","ovviato","ozieggiato","ozonizzato","pacato","pacciamato","pacificato","padroneggiato","paganizzato","pagato","paginato","palafittato","palatalizzato","palato","palesato","palettato","palettizzato","palificato","palleggiato","pallettizzato","palpato","palpeggiato","panato","panneggiato","panoramicato","pappato","paracadutato","parafato","paraffinato","parafrasato","paragonato","paragrafato","paralizzato","parallelizzato","parametrato","parametrizzato","parassitato","parato","parcato","parcellizzato","parcheggiato","pareggiato","parificato","parkerizzato","parlato","parlucchiato","parodiato","partecipato","particolareggiato","particolarizzato","partizionato","partorito","parzializzato","pasciuto","pascolato","passato","passeggiato","passionato","passivato","pasticciato","pastorizzato","pasturato","patinato","patito","patrocinato","patteggiato","pattugliato","pattuito","paventato","pavesato","pavimentato","pavoneggiato","pazziato","pedinato","pedonalizzato","peggiorato","pelato","pellettizzato","penalizzato","penetrato","pennellato","pensato","pensionato","pentito","pepato","peptonizzato","peragrato","percentualizzato","percepito","percolato","percorso","percosso","perdonato","perdotto","perduto","perequato","perfatto","perfezionato","perforato","performato","perito","periziato","perlustrato","permeato","permesso","perorato","perpetrato","perpetuato","perplimuto","perquisito","perscrutato","perseguitato","perseguito","perso","personalizzato","personificato","persuaso","perturbato","pervaso","pervertito","pesato","pescato","pestato","petrarcheggiato","pettegolato","pettinato","piagato","piaggiato","piallato","pianeggiato","pianificato","piantato","piantatalo","piantato","pianto","piantonato","piantumato","piastrellato","piatito","piazzato","picchettato","picchiato","picchierellato","picchiettato","picconato","piegato","pieghettato","pietrificato","pigiato","pigliato","pigmentato","pignorato","pigolato","pilotato","pimentato","pinto","pinzato","piombato","piovigginato","piovuto","pipato","pippato","piratato","pirogenato","pisciato","pitoccato","pittato","pitturato","pizzicato","pizzicottato","placato","placcato","plagiato","plasmato","plasticato","plastificato","platinato","plissettato","pluralizzato","poetato","poeticizzato","poggiato","polarizzato","poligrafato","polimerizzato","politicizzato","polverizzato","pomiciato","pompato","ponderato","ponzato","popolarizzato","popolato","poppato","porcellanato","porfirizzato","portato","porteso","porto","porzionato","posato","posdatato","positivizzato","posizionato","posposto","posseduto","postato","postdatato","posteggiato","posticipato","postillato","posto","postsincronizzato","postulato","potabilizzato","potato","potenziato","potuto","pralinato","praticato","preaccennato","preannunciato","preannunziato","preavvertito","preavvisato","precaricato","preceduto","precettato","precinto","precisato","precluso","precompilato","precompresso","preconfezionato","preconizzato","preconosciuto","precorso","precostituito","predato","predefinito","predestinato","predeterminato","predetto","predicato","predigerito","prediletto","predisposto","preeletto","preesistuto","prefabbricato","prefato","prefatto","prefazionato","preferito","prefigurato","prefinanziato","prefissato","prefisso","preformato","pregato","pregiato","pregiudicato","pregustato","preimpregnato","prelevato","premeditato","premescolato","premesso","premiato","premonito","premunito","premurato","premuto","prenotato","preoccupato","preordinato","preparato","prepensionato","prepigmentato","preposto","preprogrammato","preraffreddato","prerefrigerato","preregistrato","preregolato","preriscaldato","preso","presagito","presaputo","presaselo","prescelto","prescritto","preseduto","presegnalato","preselezionato","presentato","presentito","preservato","presidiato","presieduto","preso","pressato","presso","pressurizzato","prestabilito","prestampato","prestato","prestigiato","presunto","presupposto","pretermesso","preteso","pretrattato","prevaricato","preveduto","prevenduto","preventivato","prevenuto","previsto","prezzato","prezzolato","principiato","privatizzato","privato","privilegiato","problematizzato","procacciato","processato","proclamato","procrastinato","procreato","procurato","prodigato","prodotto","profanato","proferito","professato","professionalizzato","profetato","profetizzato","profferito","profilato","profondato","profumato","profuso","progettato","prognosticato","programmato","proibito","proiettato","proletarizzato","prolungato","promanato","promesso","promosso","promozionato","promulgato","pronosticato","pronunciato","pronunziato","propagandato","propagato","propagginato","propalato","propinato","propiziato","proporzionato","proposto","propugnato","propulso","prorogato","prosciolto","prosciugato","proscritto","proseguito","prospettato","prosternato","prosteso","prostituito","prostrato","prosunto","proteso","protestato","protetto","protocollato","protonato","protratto","protruso","provato","proveduto","provincializzato","provisto","provocato","provveduto","provvisto","psicanalizzato","psichiatrizzato","psicoanalizzato","psicologizzato","pubblicato","pubblicizzato","puddellato","pugnalato","pulito","pungolato","punito","puntato","punteggiato","puntellato","punto","puntualizzato","punzecchiato","punzonato","purgato","purificato","putito","putrefatto","putrito","quadrato","quadrettato","quadriennalizzato","quadruplicato","qualificato","quantificato","quantizzato","querelato","questuato","quetato","quietanzato","quietato","quintessenziato","quintuplicato","quotato","quotizzato","rabberciato","rabboccato","rabbonito","rabbuffato","rabuffato","raccapezzato","raccapricciato","raccattato","raccerchiato","racceso","racchetato","racchiuso","raccolto","raccolto","raccomandato","raccomodato","raccontato","raccorciato","raccorcito","raccordato","raccostato","raccozzato","racemizzato","racimolato","radazzato","raddensato","raddobbato","raddolcito","raddoppiato","raddotto","raddrizzato","radiato","radicalizzato","radioassistito","radioattivato","radiocomandato","radiodiffuso","radiografato","radioguidato","radiolocalizzato","radiomarcato","radiotelegrafato","radiotrasmesso","radunato","raffazzonato","raffermato","raffigurato","raffilato","raffinato","rafforzato","raffreddato","raffrenato","raffrescato","raffrontato","raggelato","raggentilito","ragghiato","raggirato","raggiunto","raggiustato","raggomitolato","raggranchiato","raggranchito","raggranellato","raggrinzato","raggrinzito","raggrumato","raggruppato","raggruzzolato","ragguagliato","ralingato","rallegrato","rallentato","ramato","ramazzato","rammagliato","rammaricato","rammemorato","rammendato","rammentato","rammodernato","rammollito","rammorbidito","rampognato","randellato","randomizzato","rannicchiato","rannuvolato","ranzato","rapato","rapinato","rapito","rappacificato","rappato","rappattumato","rappezzato","rapportato","rappresantato","rappresentato","rappreso","rarefatto","rasato","raschiato","raschiettato","rasentato","raso","raspato","rassegnato","rasserenato","rassettato","rassicurato","rassodato","rassomigliato","rassottigliato","rassunto","rastrellato","rastremato","rateato","rateizzato","ratificato","ratinato","rattizzato","rattoppato","rattorto","rattrappito","rattristato","rattristito","raunato","ravvalorato","ravveduto","ravviato","ravvicinato","ravviluppato","ravvisato","ravvisto","ravvivato","ravvolto","ravvoltolato","razionalizzato","razionato","razziato","razzolato","realizzato","reassunto","recapitato","recato","receduto","recensito","recepito","recidivato","recintato","recinto","reciprocato","reciso","recitato","reclamato","reclamizzato","reclinato","recluso","reclutato","recuperato","redarguito","redatto","redazzato","redduto","redento","redistribuito","redotto","referenziato","refertato","refilato","reflesso","reflettuto","refranto","refrigerato","regalato","regimato","regimentato","regionalizzato","registrato","regolamentato","regolarizzato","regolato","reidratato","reificato","reimbarc