From 6493bda15b5d63186f6f5e1f838d6f4828562451 Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Thu, 25 Jan 2018 07:33:35 -0500 Subject: [PATCH 01/16] Undo border-style reset Normalize applies to images --- css/preflight.css | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/css/preflight.css b/css/preflight.css index 9ddd7a5ee916..3e17e71abf5c 100644 --- a/css/preflight.css +++ b/css/preflight.css @@ -527,6 +527,21 @@ ul { * Tailwind custom reset styles */ +/** + * Allow adding a border to an element by just adding a border-width. + * + * By default, the way the browser specifies that an element should have no + * border is by setting it's border-style to `none` in the user-agent + * stylesheet. + * + * In order to easily add borders to elements by just setting the `border-width` + * property, we change the default border-style for all elements to `solid`, and + * use border-width to hide them instead. This way our `border` utilities only + * need to set the `border-width` property instead of the entire `border` + * shorthand, making our border utilities much more straightforward to compose. + * + * https://github.com/tailwindcss/tailwindcss/pull/116 + */ *, *::before, *::after { @@ -535,6 +550,19 @@ ul { border-color: config('borderColors.default', currentColor); } +/** + * Undo the `border-style: none` reset that Normalize applies to images so that + * our `border-{width}` utilities have the expected effect. + * + * The Normalize reset is unnecessary for us since we default the border-width + * to 0 on all elements. + * + * https://github.com/tailwindcss/tailwindcss/issues/362 + */ +img { + border-style: solid; +} + /** * Temporary reset for a change introduced in Chrome 62 but now reverted. * From 357c87376ee3c6c0f151f889f8e1c2da4a29629f Mon Sep 17 00:00:00 2001 From: Emil Tholin Date: Sun, 28 Jan 2018 21:18:52 +0100 Subject: [PATCH 02/16] Add support for passing a function as the prefix --- __tests__/applyClassPrefix.test.js | 24 ++++++++++++++++++++++++ src/util/applyClassPrefix.js | 5 ++++- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/__tests__/applyClassPrefix.test.js b/__tests__/applyClassPrefix.test.js index 5f574fc64cf4..3c36fac31675 100644 --- a/__tests__/applyClassPrefix.test.js +++ b/__tests__/applyClassPrefix.test.js @@ -16,3 +16,27 @@ test('it prefixes classes with the provided prefix', () => { expect(result.css).toEqual(expected) expect(result.warnings().length).toBe(0) }) + +test('it handles a function as the prefix', () => { + const input = postcss.parse(` + .foo { color: red; } + .apple, .pear { color: green; } + `) + + const expected = ` + .tw-foo { color: red; } + .apple, .pear { color: green; } + ` + + const prefixFunc = selector => { + if (selector === '.foo') { + return 'tw-' + } + + return '' + } + + const result = applyClassPrefix(input, prefixFunc).toResult() + expect(result.css).toEqual(expected) + expect(result.warnings().length).toBe(0) +}) diff --git a/src/util/applyClassPrefix.js b/src/util/applyClassPrefix.js index 502e5f02babf..febc0ec13e72 100644 --- a/src/util/applyClassPrefix.js +++ b/src/util/applyClassPrefix.js @@ -1,6 +1,9 @@ export default function(css, prefix) { + const prefixIsFunc = typeof prefix === 'function' css.walkRules(rule => { - rule.selectors = rule.selectors.map(selector => `.${prefix}${selector.slice(1)}`) + rule.selectors = rule.selectors.map( + selector => `.${prefixIsFunc ? prefix(selector) : prefix}${selector.slice(1)}` + ) }) return css } From ffabb9ff6c77fc9bac2658406459a545696f2ff0 Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Tue, 30 Jan 2018 06:57:00 -0500 Subject: [PATCH 03/16] Update fixture with new preflight comments --- __tests__/fixtures/tailwind-output.css | 30 ++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/__tests__/fixtures/tailwind-output.css b/__tests__/fixtures/tailwind-output.css index 23f3cde5225d..001c8a55d47e 100644 --- a/__tests__/fixtures/tailwind-output.css +++ b/__tests__/fixtures/tailwind-output.css @@ -532,6 +532,22 @@ ul { * Tailwind custom reset styles */ +/** + * Allow adding a border to an element by just adding a border-width. + * + * By default, the way the browser specifies that an element should have no + * border is by setting it's border-style to `none` in the user-agent + * stylesheet. + * + * In order to easily add borders to elements by just setting the `border-width` + * property, we change the default border-style for all elements to `solid`, and + * use border-width to hide them instead. This way our `border` utilities only + * need to set the `border-width` property instead of the entire `border` + * shorthand, making our border utilities much more straightforward to compose. + * + * https://github.com/tailwindcss/tailwindcss/pull/116 + */ + *, *::before, *::after { @@ -540,6 +556,20 @@ ul { border-color: #dae1e7; } +/** + * Undo the `border-style: none` reset that Normalize applies to images so that + * our `border-{width}` utilities have the expected effect. + * + * The Normalize reset is unnecessary for us since we default the border-width + * to 0 on all elements. + * + * https://github.com/tailwindcss/tailwindcss/issues/362 + */ + +img { + border-style: solid; +} + /** * Temporary reset for a change introduced in Chrome 62 but now reverted. * From d9bc4e658a3b8e8c93d0490b8dc7eeb1e0d75e95 Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Tue, 30 Jan 2018 07:12:30 -0500 Subject: [PATCH 04/16] Always use function for determining prefixes internally --- src/util/applyClassPrefix.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/util/applyClassPrefix.js b/src/util/applyClassPrefix.js index febc0ec13e72..1855fca914de 100644 --- a/src/util/applyClassPrefix.js +++ b/src/util/applyClassPrefix.js @@ -1,9 +1,8 @@ export default function(css, prefix) { - const prefixIsFunc = typeof prefix === 'function' + const getPrefix = typeof prefix === 'function' ? prefix : () => prefix + css.walkRules(rule => { - rule.selectors = rule.selectors.map( - selector => `.${prefixIsFunc ? prefix(selector) : prefix}${selector.slice(1)}` - ) + rule.selectors = rule.selectors.map(selector => `.${getPrefix(selector)}${selector.slice(1)}`) }) return css } From 6ad8326be2487388826fa10c555d8ce2a9806c3f Mon Sep 17 00:00:00 2001 From: Nestor Vera Date: Fri, 26 Jan 2018 16:17:42 +0100 Subject: [PATCH 05/16] Add .pin-none to the docs --- docs/source/docs/positioning.blade.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/source/docs/positioning.blade.md b/docs/source/docs/positioning.blade.md index 35669c0628d2..b18a3fac7559 100644 --- a/docs/source/docs/positioning.blade.md +++ b/docs/source/docs/positioning.blade.md @@ -66,6 +66,11 @@ features: "top: 0;\nright: 0;\nbottom: 0;\nleft: 0;", "Anchor absolutely positioned element to all the edges of the nearest positioned parent.", ], + [ + '.pin-none', + "top: auto;\nright: auto;\nbottom: auto;\nleft: auto;", + "Reset absolutely positioned element to all the edges from a given breakpoint onwards.", + ], ] ]) From d5d178500518d0962e2226a13c522f71f8d85689 Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Tue, 30 Jan 2018 14:34:47 -0500 Subject: [PATCH 06/16] Show both expanded and collapsed versions of responsive nav --- docs/source/docs/examples/navigation.blade.md | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/docs/source/docs/examples/navigation.blade.md b/docs/source/docs/examples/navigation.blade.md index 41880a74a3d9..1b298f1df2be 100644 --- a/docs/source/docs/examples/navigation.blade.md +++ b/docs/source/docs/examples/navigation.blade.md @@ -28,6 +28,71 @@ Tailwind doesn't include pre-designed navigation components out of the box, but ### Responsive Header @component('_partials.code-sample') +
+

Collapsed

+ +
+ +
+

Expanded

+ +
+ + + +@slot('code') +@endslot @endcomponent ### Tabs From 654a9bf9caccc268da787819ec00a4cc603587ff Mon Sep 17 00:00:00 2001 From: Jason Beggs Date: Mon, 11 Dec 2017 14:26:56 -0500 Subject: [PATCH 07/16] Update font docs to include note about wrapping fonts in quotes --- docs/source/docs/fonts.blade.md | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/docs/source/docs/fonts.blade.md b/docs/source/docs/fonts.blade.md index d08385d6e53a..833dd14ee93f 100644 --- a/docs/source/docs/fonts.blade.md +++ b/docs/source/docs/fonts.blade.md @@ -40,5 +40,36 @@ features: ], 'variants' => [ 'responsive', - ], + ] ]) + +### Note + +Some fonts, such as fonts with an integer in their name, are required to be wrapped in quotes. + +For example: +```js +// ... + +module.exports = { + // ... + fonts: { + sans: [ + 'Exo 2', // Replace this... + '"Exo 2"', // With this... + '-apple-system', + 'BlinkMacSystemFont', + 'Segoe UI', + 'Roboto', + 'Oxygen', + 'Ubuntu', + 'Cantarell', + 'Fira Sans', + 'Droid Sans', + 'Helvetica Neue', + 'sans-serif' + ], + // ... + } +} +``` \ No newline at end of file From 46b566d5744522f996751ec7efdc20a97e3d7568 Mon Sep 17 00:00:00 2001 From: Jason Beggs Date: Mon, 11 Dec 2017 14:34:47 -0500 Subject: [PATCH 08/16] Update font docs to include note about wrapping fonts in quotes --- docs/source/docs/fonts.blade.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/source/docs/fonts.blade.md b/docs/source/docs/fonts.blade.md index 833dd14ee93f..3effbbc7afe9 100644 --- a/docs/source/docs/fonts.blade.md +++ b/docs/source/docs/fonts.blade.md @@ -45,9 +45,9 @@ features: ### Note -Some fonts, such as fonts with an integer in their name, are required to be wrapped in quotes. +Some font names are required to be wrapped in quotes, such as fonts with an integer in their name. -For example: +For example, in the fonts section of your config file: ```js // ... From 1b99565ab166cf104a1ac1168951cb965c532ba8 Mon Sep 17 00:00:00 2001 From: Jason Beggs Date: Mon, 11 Dec 2017 14:35:18 -0500 Subject: [PATCH 09/16] Update font docs to include note about wrapping fonts in quotes --- docs/source/docs/fonts.blade.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/docs/fonts.blade.md b/docs/source/docs/fonts.blade.md index 3effbbc7afe9..8e9e06859d31 100644 --- a/docs/source/docs/fonts.blade.md +++ b/docs/source/docs/fonts.blade.md @@ -40,7 +40,7 @@ features: ], 'variants' => [ 'responsive', - ] + ], ]) ### Note From 23802909269e03a4e4db0813e06c50d092072b2d Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Thu, 1 Feb 2018 07:58:00 -0500 Subject: [PATCH 10/16] Add more information about customizing font families --- docs/source/docs/fonts.blade.md | 38 +++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/docs/source/docs/fonts.blade.md b/docs/source/docs/fonts.blade.md index d08385d6e53a..c873aedfb78c 100644 --- a/docs/source/docs/fonts.blade.md +++ b/docs/source/docs/fonts.blade.md @@ -33,6 +33,44 @@ features: ## Customizing +By default Tailwind provides three font family utilities: a cross-browser sans-serif stack, a cross-browser serif stack, and a cross-browser monospace stack. You can change, add, or remove these by editing the `fonts` section of your Tailwind config. + +@component('_partials.customized-config', ['key' => 'fonts']) +- 'sans': ['system-ui', 'BlinkMacSystemFont', ...], +- 'serif': ['Constantia', 'Lucida Bright', ...], +- 'mono': ['Menlo', 'Monaco', ...], ++ 'display': ['Oswald', ...], ++ 'body': ['Open Sans', ...], +@endcomponent + +Font families can be specified as an array or as a simple comma-delimited string: + +```js +{ + // Array format: + 'sans': ['Helvetica', 'Arial', 'sans-serif'], + + // Comma-delimited format: + 'sans': 'Helvetica, Arial, sans-serif', +} +``` + +Note that **Tailwind does not automatically escape font names** for you. If you're using a font that contains an invalid identifier, wrap it in quotes or escape the invalid characters. + +```js +{ + // Won't work: + 'sans': ['Exo 2', ...], + + // Add quotes: + 'sans': ['"Exo 2"', ...], + + // ...or escape the space: + 'sans': ['Exo\\ 2', ...], +} + +``` + @include('_partials.variants-and-disabling', [ 'utility' => [ 'name' => 'font', From f593535c7c89e07c7bae7f12bff6a2c5f186a229 Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Thu, 1 Feb 2018 08:33:18 -0500 Subject: [PATCH 11/16] Add font family examples and remove WIP banner --- docs/source/_layouts/master.blade.php | 2 +- docs/source/docs/fonts.blade.md | 34 ++++++++++++++++++++++++--- docs/tailwind.js | 8 +++---- 3 files changed, 35 insertions(+), 9 deletions(-) diff --git a/docs/source/_layouts/master.blade.php b/docs/source/_layouts/master.blade.php index a98faa0f5387..d1f9ca29fdc1 100644 --- a/docs/source/_layouts/master.blade.php +++ b/docs/source/_layouts/master.blade.php @@ -18,7 +18,7 @@ @stack('headScripts') - + @yield('body') diff --git a/docs/source/docs/fonts.blade.md b/docs/source/docs/fonts.blade.md index c873aedfb78c..5964aa51a690 100644 --- a/docs/source/docs/fonts.blade.md +++ b/docs/source/docs/fonts.blade.md @@ -9,8 +9,6 @@ features: focus: false --- -@include('_partials.work-in-progress') - @include('_partials.class-table', [ 'rows' => [ [ @@ -31,9 +29,39 @@ features: ] ]) +### Sans-serif + +Use `.font-sans` to apply a web safe sans-serif font family: + +@component('_partials.code-sample') +

+ I'm a sans-serif paragraph. +

+@endcomponent + +### Serif + +Use `.font-serif` to apply a web safe serif font family: + +@component('_partials.code-sample') +

+ I'm a serif paragraph. +

+@endcomponent + +### Monospaced + +Use `.font-mono` to apply a web safe monospaced font family: + +@component('_partials.code-sample') +

+ I'm a monospaced paragraph. +

+@endcomponent + ## Customizing -By default Tailwind provides three font family utilities: a cross-browser sans-serif stack, a cross-browser serif stack, and a cross-browser monospace stack. You can change, add, or remove these by editing the `fonts` section of your Tailwind config. +By default Tailwind provides three font family utilities: a cross-browser sans-serif stack, a cross-browser serif stack, and a cross-browser monospaced stack. You can change, add, or remove these by editing the `fonts` section of your Tailwind config. @component('_partials.customized-config', ['key' => 'fonts']) - 'sans': ['system-ui', 'BlinkMacSystemFont', ...], diff --git a/docs/tailwind.js b/docs/tailwind.js index fad560823897..259664520a89 100644 --- a/docs/tailwind.js +++ b/docs/tailwind.js @@ -6,11 +6,9 @@ config.colors = Object.assign(config.colors, { 'tailwind-teal-dark': '#2f8696', }) -config.fonts = { - 'sans': 'aktiv-grotesk, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue', - 'serif': 'Constantia, "Lucida Bright", Lucidabright, "Lucida Serif", Lucida, "DejaVu Serif", "Bitstream Vera Serif", "Liberation Serif", Georgia, serif', - 'mono': 'Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace', -} +config.fonts = Object.assign(config.fonts, { + 'aktiv': 'aktiv-grotesk, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue', +}) config.textSizes = { 'xs': '.75rem', // 12px From 6d21141ba4cf156f224d08f69457b211e9da7c6a Mon Sep 17 00:00:00 2001 From: Aleksey Kislov Date: Mon, 12 Feb 2018 14:18:57 +0300 Subject: [PATCH 12/16] Fix property reference syntax --- docs/source/docs/flexbox-align-items.blade.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/docs/flexbox-align-items.blade.md b/docs/source/docs/flexbox-align-items.blade.md index bbe7c10983cc..5e57cbc0d272 100644 --- a/docs/source/docs/flexbox-align-items.blade.md +++ b/docs/source/docs/flexbox-align-items.blade.md @@ -13,7 +13,7 @@ features: 'rows' => [ [ '.items-stretch', - 'align-items: flex-stretch;', + 'align-items: stretch;', "Stretch items to fill the cross axis.", ], [ From 3c78370341c5a74474923b2005b95eefe4a9920a Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Tue, 13 Feb 2018 21:42:21 -0500 Subject: [PATCH 13/16] Don't use Twitter /profile_image for profile photos, breaks on mobile --- docs/source/index.blade.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/source/index.blade.php b/docs/source/index.blade.php index 29e17a172845..4e6524521852 100644 --- a/docs/source/index.blade.php +++ b/docs/source/index.blade.php @@ -43,7 +43,7 @@
- +
Adam Wathan @adamwathan @@ -52,7 +52,7 @@
- +
Jonathan Reinink @reinink @@ -61,7 +61,7 @@
- +
David Hemphill @davidhemphill @@ -70,7 +70,7 @@
- +
Steve Schoger @steveschoger From 05fbe1a4beb5864e7cdb4e9891d997ee2de30ff8 Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Sat, 24 Feb 2018 07:52:42 -0500 Subject: [PATCH 14/16] Remove docs from main repo --- .npmignore | 1 - .travis.yml | 4 - docs/.gitignore | 9 - docs/bootstrap.php | 32 - docs/composer.json | 5 - docs/composer.lock | 1165 --- docs/config.php | 23 - docs/config.production.php | 6 - docs/navigation.php | 90 - docs/package.json | 31 - docs/source/.editorconfig | 7 - docs/source/_assets/js/app.js | 22 - .../js/components/ResponsiveCodeSample.vue | 57 - docs/source/_assets/js/nav.js | 89 - docs/source/_assets/js/prism.js | 7 - docs/source/_assets/less/docsearch.less | 37 - docs/source/_assets/less/main.less | 53 - docs/source/_assets/less/markdown.less | 136 - docs/source/_assets/less/prism.less | 154 - docs/source/_layouts/documentation.blade.php | 140 - docs/source/_layouts/master.blade.php | 40 - docs/source/_partials/class-table.blade.php | 32 - docs/source/_partials/code-sample.blade.php | 8 - .../_partials/customized-config.blade.php | 21 - .../source/_partials/feature-badges.blade.php | 67 - .../responsive-code-sample.blade.php | 9 - .../variants-and-disabling.blade.php | 49 - .../work-in-progress-example.blade.php | 13 - .../_partials/work-in-progress.blade.php | 11 - docs/source/android-chrome-192x192.png | Bin 12724 -> 0 bytes docs/source/android-chrome-512x512.png | Bin 65599 -> 0 bytes docs/source/apple-touch-icon.png | Bin 6180 -> 0 bytes docs/source/browserconfig.xml | 9 - .../source/docs/adding-new-utilities.blade.md | 141 - .../docs/background-attachment.blade.md | 44 - docs/source/docs/background-color.blade.md | 55 - docs/source/docs/background-position.blade.md | 74 - docs/source/docs/background-repeat.blade.md | 49 - docs/source/docs/background-size.blade.md | 39 - docs/source/docs/border-color.blade.md | 55 - docs/source/docs/border-radius.blade.md | 378 - docs/source/docs/border-style.blade.md | 50 - docs/source/docs/border-width.blade.md | 51 - docs/source/docs/colors.blade.md | 458 -- docs/source/docs/configuration.blade.md | 342 - docs/source/docs/container.blade.md | 67 - .../docs/controlling-file-size.blade.md | 209 - docs/source/docs/cursor.blade.md | 44 - docs/source/docs/display.blade.md | 74 - docs/source/docs/examples/alerts.blade.md | 85 - docs/source/docs/examples/buttons.blade.md | 109 - docs/source/docs/examples/cards.blade.md | 54 - docs/source/docs/examples/forms.blade.md | 160 - docs/source/docs/examples/grids.blade.md | 248 - docs/source/docs/examples/navigation.blade.md | 191 - .../docs/extracting-components.blade.md | 198 - .../docs/flexbox-align-content.blade.md | 282 - docs/source/docs/flexbox-align-items.blade.md | 162 - docs/source/docs/flexbox-align-self.blade.md | 164 - docs/source/docs/flexbox-direction.blade.md | 145 - docs/source/docs/flexbox-display.blade.md | 111 - .../docs/flexbox-flex-grow-shrink.blade.md | 383 - .../docs/flexbox-justify-content.blade.md | 162 - docs/source/docs/flexbox-wrapping.blade.md | 176 - docs/source/docs/floats.blade.md | 49 - docs/source/docs/font-weight.blade.md | 91 - docs/source/docs/fonts.blade.md | 110 - docs/source/docs/forms.blade.md | 51 - .../docs/functions-and-directives.blade.md | 280 - docs/source/docs/height.blade.md | 115 - docs/source/docs/installation.blade.md | 211 - docs/source/docs/letter-spacing.blade.md | 44 - docs/source/docs/line-height.blade.md | 49 - docs/source/docs/lists.blade.md | 34 - docs/source/docs/max-height.blade.md | 40 - docs/source/docs/max-width.blade.md | 80 - docs/source/docs/min-height.blade.md | 45 - docs/source/docs/min-width.blade.md | 40 - docs/source/docs/opacity.blade.md | 125 - docs/source/docs/overflow.blade.md | 233 - docs/source/docs/pointer-events.blade.md | 39 - docs/source/docs/positioning.blade.md | 423 - docs/source/docs/resize.blade.md | 50 - docs/source/docs/responsive-design.blade.md | 145 - docs/source/docs/shadows.blade.md | 147 - docs/source/docs/spacing.blade.md | 85 - docs/source/docs/state-variants.blade.md | 132 - docs/source/docs/svg.blade.md | 122 - docs/source/docs/text-alignment.blade.md | 49 - docs/source/docs/text-color.blade.md | 55 - docs/source/docs/text-sizing.blade.md | 74 - docs/source/docs/text-style.blade.md | 99 - docs/source/docs/user-select.blade.md | 39 - docs/source/docs/vertical-alignment.blade.md | 59 - docs/source/docs/visibility.blade.md | 90 - docs/source/docs/what-is-tailwind.blade.md | 175 - .../docs/whitespace-and-wrapping.blade.md | 69 - docs/source/docs/width.blade.md | 170 - docs/source/docs/z-index.blade.md | 166 - docs/source/favicon-16x16.png | Bin 1073 -> 0 bytes docs/source/favicon-32x32.png | Bin 1392 -> 0 bytes docs/source/favicon.ico | Bin 15086 -> 0 bytes docs/source/img/adam.jpg | Bin 19574 -> 0 bytes docs/source/img/card-left.jpg | Bin 148319 -> 0 bytes docs/source/img/card-top.jpg | Bin 69215 -> 0 bytes docs/source/img/launch-card-optimized.png | Bin 11431 -> 0 bytes docs/source/img/launch-card.png | Bin 54201 -> 0 bytes docs/source/img/tailwind-square.png | Bin 28270 -> 0 bytes docs/source/img/tailwind.svg | 1 - docs/source/img/twitter-card.png | Bin 41493 -> 0 bytes docs/source/img/twitter-large-card.png | Bin 36937 -> 0 bytes docs/source/index.blade.php | 95 - docs/source/manifest.json | 18 - docs/source/mstile-150x150.png | Bin 2515 -> 0 bytes docs/source/safari-pinned-tab.svg | 29 - docs/source/svg/icon-device-lg.svg | 1 - docs/source/svg/icon-device-md.svg | 1 - docs/source/svg/icon-device-sm.svg | 1 - docs/source/svg/icon-device-xl.svg | 1 - docs/source/svg/icon-device-xs.svg | 1 - docs/svgo.yml | 6 - docs/tailwind.js | 86 - docs/webpack.mix.js | 41 - docs/yarn.lock | 7064 ----------------- 124 files changed, 18217 deletions(-) delete mode 100644 docs/.gitignore delete mode 100644 docs/bootstrap.php delete mode 100644 docs/composer.json delete mode 100644 docs/composer.lock delete mode 100644 docs/config.php delete mode 100644 docs/config.production.php delete mode 100644 docs/navigation.php delete mode 100644 docs/package.json delete mode 100644 docs/source/.editorconfig delete mode 100644 docs/source/_assets/js/app.js delete mode 100644 docs/source/_assets/js/components/ResponsiveCodeSample.vue delete mode 100644 docs/source/_assets/js/nav.js delete mode 100644 docs/source/_assets/js/prism.js delete mode 100644 docs/source/_assets/less/docsearch.less delete mode 100644 docs/source/_assets/less/main.less delete mode 100644 docs/source/_assets/less/markdown.less delete mode 100644 docs/source/_assets/less/prism.less delete mode 100644 docs/source/_layouts/documentation.blade.php delete mode 100644 docs/source/_layouts/master.blade.php delete mode 100644 docs/source/_partials/class-table.blade.php delete mode 100644 docs/source/_partials/code-sample.blade.php delete mode 100644 docs/source/_partials/customized-config.blade.php delete mode 100644 docs/source/_partials/feature-badges.blade.php delete mode 100644 docs/source/_partials/responsive-code-sample.blade.php delete mode 100644 docs/source/_partials/variants-and-disabling.blade.php delete mode 100644 docs/source/_partials/work-in-progress-example.blade.php delete mode 100644 docs/source/_partials/work-in-progress.blade.php delete mode 100644 docs/source/android-chrome-192x192.png delete mode 100644 docs/source/android-chrome-512x512.png delete mode 100644 docs/source/apple-touch-icon.png delete mode 100644 docs/source/browserconfig.xml delete mode 100644 docs/source/docs/adding-new-utilities.blade.md delete mode 100644 docs/source/docs/background-attachment.blade.md delete mode 100644 docs/source/docs/background-color.blade.md delete mode 100644 docs/source/docs/background-position.blade.md delete mode 100644 docs/source/docs/background-repeat.blade.md delete mode 100644 docs/source/docs/background-size.blade.md delete mode 100644 docs/source/docs/border-color.blade.md delete mode 100644 docs/source/docs/border-radius.blade.md delete mode 100644 docs/source/docs/border-style.blade.md delete mode 100644 docs/source/docs/border-width.blade.md delete mode 100644 docs/source/docs/colors.blade.md delete mode 100644 docs/source/docs/configuration.blade.md delete mode 100644 docs/source/docs/container.blade.md delete mode 100644 docs/source/docs/controlling-file-size.blade.md delete mode 100644 docs/source/docs/cursor.blade.md delete mode 100644 docs/source/docs/display.blade.md delete mode 100644 docs/source/docs/examples/alerts.blade.md delete mode 100644 docs/source/docs/examples/buttons.blade.md delete mode 100644 docs/source/docs/examples/cards.blade.md delete mode 100644 docs/source/docs/examples/forms.blade.md delete mode 100644 docs/source/docs/examples/grids.blade.md delete mode 100644 docs/source/docs/examples/navigation.blade.md delete mode 100644 docs/source/docs/extracting-components.blade.md delete mode 100644 docs/source/docs/flexbox-align-content.blade.md delete mode 100644 docs/source/docs/flexbox-align-items.blade.md delete mode 100644 docs/source/docs/flexbox-align-self.blade.md delete mode 100644 docs/source/docs/flexbox-direction.blade.md delete mode 100644 docs/source/docs/flexbox-display.blade.md delete mode 100644 docs/source/docs/flexbox-flex-grow-shrink.blade.md delete mode 100644 docs/source/docs/flexbox-justify-content.blade.md delete mode 100644 docs/source/docs/flexbox-wrapping.blade.md delete mode 100644 docs/source/docs/floats.blade.md delete mode 100644 docs/source/docs/font-weight.blade.md delete mode 100644 docs/source/docs/fonts.blade.md delete mode 100644 docs/source/docs/forms.blade.md delete mode 100644 docs/source/docs/functions-and-directives.blade.md delete mode 100644 docs/source/docs/height.blade.md delete mode 100644 docs/source/docs/installation.blade.md delete mode 100644 docs/source/docs/letter-spacing.blade.md delete mode 100644 docs/source/docs/line-height.blade.md delete mode 100644 docs/source/docs/lists.blade.md delete mode 100644 docs/source/docs/max-height.blade.md delete mode 100644 docs/source/docs/max-width.blade.md delete mode 100644 docs/source/docs/min-height.blade.md delete mode 100644 docs/source/docs/min-width.blade.md delete mode 100644 docs/source/docs/opacity.blade.md delete mode 100644 docs/source/docs/overflow.blade.md delete mode 100644 docs/source/docs/pointer-events.blade.md delete mode 100644 docs/source/docs/positioning.blade.md delete mode 100644 docs/source/docs/resize.blade.md delete mode 100644 docs/source/docs/responsive-design.blade.md delete mode 100644 docs/source/docs/shadows.blade.md delete mode 100644 docs/source/docs/spacing.blade.md delete mode 100644 docs/source/docs/state-variants.blade.md delete mode 100644 docs/source/docs/svg.blade.md delete mode 100644 docs/source/docs/text-alignment.blade.md delete mode 100644 docs/source/docs/text-color.blade.md delete mode 100644 docs/source/docs/text-sizing.blade.md delete mode 100644 docs/source/docs/text-style.blade.md delete mode 100644 docs/source/docs/user-select.blade.md delete mode 100644 docs/source/docs/vertical-alignment.blade.md delete mode 100644 docs/source/docs/visibility.blade.md delete mode 100644 docs/source/docs/what-is-tailwind.blade.md delete mode 100644 docs/source/docs/whitespace-and-wrapping.blade.md delete mode 100644 docs/source/docs/width.blade.md delete mode 100644 docs/source/docs/z-index.blade.md delete mode 100644 docs/source/favicon-16x16.png delete mode 100644 docs/source/favicon-32x32.png delete mode 100644 docs/source/favicon.ico delete mode 100644 docs/source/img/adam.jpg delete mode 100644 docs/source/img/card-left.jpg delete mode 100644 docs/source/img/card-top.jpg delete mode 100644 docs/source/img/launch-card-optimized.png delete mode 100644 docs/source/img/launch-card.png delete mode 100644 docs/source/img/tailwind-square.png delete mode 100644 docs/source/img/tailwind.svg delete mode 100644 docs/source/img/twitter-card.png delete mode 100644 docs/source/img/twitter-large-card.png delete mode 100644 docs/source/index.blade.php delete mode 100644 docs/source/manifest.json delete mode 100644 docs/source/mstile-150x150.png delete mode 100644 docs/source/safari-pinned-tab.svg delete mode 100644 docs/source/svg/icon-device-lg.svg delete mode 100644 docs/source/svg/icon-device-md.svg delete mode 100644 docs/source/svg/icon-device-sm.svg delete mode 100644 docs/source/svg/icon-device-xl.svg delete mode 100644 docs/source/svg/icon-device-xs.svg delete mode 100644 docs/svgo.yml delete mode 100644 docs/tailwind.js delete mode 100644 docs/webpack.mix.js delete mode 100644 docs/yarn.lock diff --git a/.npmignore b/.npmignore index c578069ca88d..1b92e067e5fe 100644 --- a/.npmignore +++ b/.npmignore @@ -1,5 +1,4 @@ /__tests__/ -/docs/ /jest/ /src/ yarn-error.log diff --git a/.travis.yml b/.travis.yml index b66655e7b4b8..b566b73deb1a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,7 +10,3 @@ cache: script: - yarn - yarn run test - - cd $TRAVIS_BUILD_DIR/docs && composer self-update - - cd $TRAVIS_BUILD_DIR/docs && composer install --prefer-dist --no-interaction - - cd $TRAVIS_BUILD_DIR/docs && yarn - - cd $TRAVIS_BUILD_DIR/docs && yarn run dev diff --git a/docs/.gitignore b/docs/.gitignore deleted file mode 100644 index b9fd73827916..000000000000 --- a/docs/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -/build_production/ -/build_local/ -/node_modules/ -/vendor/ -/source/css/ -/source/js/ -/source/mix-manifest.json -/tailwind.json -/_tmp diff --git a/docs/bootstrap.php b/docs/bootstrap.php deleted file mode 100644 index f5c60d504098..000000000000 --- a/docs/bootstrap.php +++ /dev/null @@ -1,32 +0,0 @@ -=5.3.0" - }, - "type": "library", - "autoload": { - "psr-0": { - "Parsedown": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Emanuil Rusev", - "email": "hello@erusev.com", - "homepage": "http://erusev.com" - } - ], - "description": "Parser for Markdown.", - "homepage": "http://parsedown.org", - "keywords": [ - "markdown", - "parser" - ], - "time": "2017-05-14 14:47:48" - }, - { - "name": "hamcrest/hamcrest-php", - "version": "v1.2.2", - "source": { - "type": "git", - "url": "https://github.com/hamcrest/hamcrest-php.git", - "reference": "b37020aa976fa52d3de9aa904aa2522dc518f79c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/b37020aa976fa52d3de9aa904aa2522dc518f79c", - "reference": "b37020aa976fa52d3de9aa904aa2522dc518f79c", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "replace": { - "cordoval/hamcrest-php": "*", - "davedevelopment/hamcrest-php": "*", - "kodova/hamcrest-php": "*" - }, - "require-dev": { - "phpunit/php-file-iterator": "1.3.3", - "satooshi/php-coveralls": "dev-master" - }, - "type": "library", - "autoload": { - "classmap": [ - "hamcrest" - ], - "files": [ - "hamcrest/Hamcrest.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD" - ], - "description": "This is the PHP port of Hamcrest Matchers", - "keywords": [ - "test" - ], - "time": "2015-05-11 14:41:42" - }, - { - "name": "illuminate/container", - "version": "v5.4.27", - "source": { - "type": "git", - "url": "https://github.com/illuminate/container.git", - "reference": "c5b8a02a34a52c307f16922334c355c5eef725a6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/container/zipball/c5b8a02a34a52c307f16922334c355c5eef725a6", - "reference": "c5b8a02a34a52c307f16922334c355c5eef725a6", - "shasum": "" - }, - "require": { - "illuminate/contracts": "5.4.*", - "php": ">=5.6.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.4-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Container\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Container package.", - "homepage": "https://laravel.com", - "time": "2017-05-24 14:15:53" - }, - { - "name": "illuminate/contracts", - "version": "v5.4.27", - "source": { - "type": "git", - "url": "https://github.com/illuminate/contracts.git", - "reference": "31f0193eb14aa3ee07841dc254081425616e79f0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/contracts/zipball/31f0193eb14aa3ee07841dc254081425616e79f0", - "reference": "31f0193eb14aa3ee07841dc254081425616e79f0", - "shasum": "" - }, - "require": { - "php": ">=5.6.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.4-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Contracts\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Contracts package.", - "homepage": "https://laravel.com", - "time": "2017-04-19 20:17:43" - }, - { - "name": "illuminate/events", - "version": "v5.4.27", - "source": { - "type": "git", - "url": "https://github.com/illuminate/events.git", - "reference": "ebdca3b0305e9fc954afb9e422c4559482cd11e6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/events/zipball/ebdca3b0305e9fc954afb9e422c4559482cd11e6", - "reference": "ebdca3b0305e9fc954afb9e422c4559482cd11e6", - "shasum": "" - }, - "require": { - "illuminate/container": "5.4.*", - "illuminate/contracts": "5.4.*", - "illuminate/support": "5.4.*", - "php": ">=5.6.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.4-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Events\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Events package.", - "homepage": "https://laravel.com", - "time": "2017-05-02 12:57:00" - }, - { - "name": "illuminate/filesystem", - "version": "v5.4.27", - "source": { - "type": "git", - "url": "https://github.com/illuminate/filesystem.git", - "reference": "e0ee832f625fbfadb816a972655b1a66af1a5bda" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/filesystem/zipball/e0ee832f625fbfadb816a972655b1a66af1a5bda", - "reference": "e0ee832f625fbfadb816a972655b1a66af1a5bda", - "shasum": "" - }, - "require": { - "illuminate/contracts": "5.4.*", - "illuminate/support": "5.4.*", - "php": ">=5.6.4", - "symfony/finder": "~3.2" - }, - "suggest": { - "league/flysystem": "Required to use the Flysystem local and FTP drivers (~1.0).", - "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (~1.0).", - "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (~1.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.4-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Filesystem\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Filesystem package.", - "homepage": "https://laravel.com", - "time": "2017-05-18 14:37:58" - }, - { - "name": "illuminate/support", - "version": "v5.4.27", - "source": { - "type": "git", - "url": "https://github.com/illuminate/support.git", - "reference": "a42393b56d0ec75f55e760f2a47bcf85a17a278d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/support/zipball/a42393b56d0ec75f55e760f2a47bcf85a17a278d", - "reference": "a42393b56d0ec75f55e760f2a47bcf85a17a278d", - "shasum": "" - }, - "require": { - "doctrine/inflector": "~1.0", - "ext-mbstring": "*", - "illuminate/contracts": "5.4.*", - "paragonie/random_compat": "~1.4|~2.0", - "php": ">=5.6.4" - }, - "replace": { - "tightenco/collect": "self.version" - }, - "suggest": { - "illuminate/filesystem": "Required to use the composer class (5.2.*).", - "symfony/process": "Required to use the composer class (~3.2).", - "symfony/var-dumper": "Required to use the dd function (~3.2)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.4-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Support\\": "" - }, - "files": [ - "helpers.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Support package.", - "homepage": "https://laravel.com", - "time": "2017-06-15 12:35:32" - }, - { - "name": "illuminate/view", - "version": "v5.4.27", - "source": { - "type": "git", - "url": "https://github.com/illuminate/view.git", - "reference": "423652ea1c4c4c2f6494bd6b8cfb6eb943c5ba75" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/view/zipball/423652ea1c4c4c2f6494bd6b8cfb6eb943c5ba75", - "reference": "423652ea1c4c4c2f6494bd6b8cfb6eb943c5ba75", - "shasum": "" - }, - "require": { - "illuminate/container": "5.4.*", - "illuminate/contracts": "5.4.*", - "illuminate/events": "5.4.*", - "illuminate/filesystem": "5.4.*", - "illuminate/support": "5.4.*", - "php": ">=5.6.4", - "symfony/debug": "~3.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.4-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\View\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate View package.", - "homepage": "https://laravel.com", - "time": "2017-06-07 13:32:57" - }, - { - "name": "mnapoli/front-yaml", - "version": "1.5.2", - "source": { - "type": "git", - "url": "https://github.com/mnapoli/FrontYAML.git", - "reference": "f10c1dfee1604d15c2b0ab6826eecc1111d65543" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mnapoli/FrontYAML/zipball/f10c1dfee1604d15c2b0ab6826eecc1111d65543", - "reference": "f10c1dfee1604d15c2b0ab6826eecc1111d65543", - "shasum": "" - }, - "require": { - "erusev/parsedown": "~1.0", - "symfony/yaml": "~2.1|^3.0" - }, - "require-dev": { - "league/commonmark": "~0.7", - "phpunit/phpunit": "~4.5" - }, - "type": "library", - "autoload": { - "psr-4": { - "Mni\\FrontYAML\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "time": "2016-10-01 11:06:51" - }, - { - "name": "mnapoli/silly", - "version": "1.5.1", - "source": { - "type": "git", - "url": "https://github.com/mnapoli/silly.git", - "reference": "807df4a844972ac74d07518c3a0aa9cb575b470b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mnapoli/silly/zipball/807df4a844972ac74d07518c3a0aa9cb575b470b", - "reference": "807df4a844972ac74d07518c3a0aa9cb575b470b", - "shasum": "" - }, - "require": { - "container-interop/container-interop": "~1.0", - "php": ">=5.5", - "php-di/invoker": "~1.2", - "symfony/console": "~2.6|~3.0" - }, - "require-dev": { - "mnapoli/phpunit-easymock": "~0.1.0", - "phpunit/phpunit": "~4.5" - }, - "type": "library", - "autoload": { - "psr-4": { - "Silly\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Silly CLI micro-framework based on Symfony Console", - "keywords": [ - "cli", - "console", - "framework", - "micro-framework", - "silly" - ], - "time": "2016-09-16 11:44:03" - }, - { - "name": "mockery/mockery", - "version": "0.9.9", - "source": { - "type": "git", - "url": "https://github.com/mockery/mockery.git", - "reference": "6fdb61243844dc924071d3404bb23994ea0b6856" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mockery/mockery/zipball/6fdb61243844dc924071d3404bb23994ea0b6856", - "reference": "6fdb61243844dc924071d3404bb23994ea0b6856", - "shasum": "" - }, - "require": { - "hamcrest/hamcrest-php": "~1.1", - "lib-pcre": ">=7.0", - "php": ">=5.3.2" - }, - "require-dev": { - "phpunit/phpunit": "~4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.9.x-dev" - } - }, - "autoload": { - "psr-0": { - "Mockery": "library/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Pádraic Brady", - "email": "padraic.brady@gmail.com", - "homepage": "http://blog.astrumfutura.com" - }, - { - "name": "Dave Marshall", - "email": "dave.marshall@atstsolutions.co.uk", - "homepage": "http://davedevelopment.co.uk" - } - ], - "description": "Mockery is a simple yet flexible PHP mock object framework for use in unit testing with PHPUnit, PHPSpec or any other testing framework. Its core goal is to offer a test double framework with a succinct API capable of clearly defining all possible object operations and interactions using a human readable Domain Specific Language (DSL). Designed as a drop in alternative to PHPUnit's phpunit-mock-objects library, Mockery is easy to integrate with PHPUnit and can operate alongside phpunit-mock-objects without the World ending.", - "homepage": "http://github.com/padraic/mockery", - "keywords": [ - "BDD", - "TDD", - "library", - "mock", - "mock objects", - "mockery", - "stub", - "test", - "test double", - "testing" - ], - "time": "2017-02-28 12:52:32" - }, - { - "name": "paragonie/random_compat", - "version": "v2.0.10", - "source": { - "type": "git", - "url": "https://github.com/paragonie/random_compat.git", - "reference": "634bae8e911eefa89c1abfbf1b66da679ac8f54d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/634bae8e911eefa89c1abfbf1b66da679ac8f54d", - "reference": "634bae8e911eefa89c1abfbf1b66da679ac8f54d", - "shasum": "" - }, - "require": { - "php": ">=5.2.0" - }, - "require-dev": { - "phpunit/phpunit": "4.*|5.*" - }, - "suggest": { - "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." - }, - "type": "library", - "autoload": { - "files": [ - "lib/random.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Paragon Initiative Enterprises", - "email": "security@paragonie.com", - "homepage": "https://paragonie.com" - } - ], - "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", - "keywords": [ - "csprng", - "pseudorandom", - "random" - ], - "time": "2017-03-13 16:27:32" - }, - { - "name": "php-di/invoker", - "version": "1.3.3", - "source": { - "type": "git", - "url": "https://github.com/PHP-DI/Invoker.git", - "reference": "1f4ca63b9abc66109e53b255e465d0ddb5c2e3f7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHP-DI/Invoker/zipball/1f4ca63b9abc66109e53b255e465d0ddb5c2e3f7", - "reference": "1f4ca63b9abc66109e53b255e465d0ddb5c2e3f7", - "shasum": "" - }, - "require": { - "container-interop/container-interop": "~1.1" - }, - "require-dev": { - "athletic/athletic": "~0.1.8", - "phpunit/phpunit": "~4.5" - }, - "type": "library", - "autoload": { - "psr-4": { - "Invoker\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Generic and extensible callable invoker", - "homepage": "https://github.com/PHP-DI/Invoker", - "keywords": [ - "callable", - "dependency", - "dependency-injection", - "injection", - "invoke", - "invoker" - ], - "time": "2016-07-14 13:09:58" - }, - { - "name": "psr/container", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/container.git", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Container\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common Container Interface (PHP FIG PSR-11)", - "homepage": "https://github.com/php-fig/container", - "keywords": [ - "PSR-11", - "container", - "container-interface", - "container-interop", - "psr" - ], - "time": "2017-02-14 16:28:37" - }, - { - "name": "psr/log", - "version": "1.0.2", - "source": { - "type": "git", - "url": "https://github.com/php-fig/log.git", - "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", - "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Log\\": "Psr/Log/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interface for logging libraries", - "homepage": "https://github.com/php-fig/log", - "keywords": [ - "log", - "psr", - "psr-3" - ], - "time": "2016-10-10 12:19:37" - }, - { - "name": "symfony/console", - "version": "v3.3.6", - "source": { - "type": "git", - "url": "https://github.com/symfony/console.git", - "reference": "b0878233cb5c4391347e5495089c7af11b8e6201" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/b0878233cb5c4391347e5495089c7af11b8e6201", - "reference": "b0878233cb5c4391347e5495089c7af11b8e6201", - "shasum": "" - }, - "require": { - "php": ">=5.5.9", - "symfony/debug": "~2.8|~3.0", - "symfony/polyfill-mbstring": "~1.0" - }, - "conflict": { - "symfony/dependency-injection": "<3.3" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~3.3", - "symfony/dependency-injection": "~3.3", - "symfony/event-dispatcher": "~2.8|~3.0", - "symfony/filesystem": "~2.8|~3.0", - "symfony/http-kernel": "~2.8|~3.0", - "symfony/process": "~2.8|~3.0" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/filesystem": "", - "symfony/process": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.3-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Console\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Console Component", - "homepage": "https://symfony.com", - "time": "2017-07-29 21:27:59" - }, - { - "name": "symfony/debug", - "version": "v3.3.6", - "source": { - "type": "git", - "url": "https://github.com/symfony/debug.git", - "reference": "7c13ae8ce1e2adbbd574fc39de7be498e1284e13" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/7c13ae8ce1e2adbbd574fc39de7be498e1284e13", - "reference": "7c13ae8ce1e2adbbd574fc39de7be498e1284e13", - "shasum": "" - }, - "require": { - "php": ">=5.5.9", - "psr/log": "~1.0" - }, - "conflict": { - "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2" - }, - "require-dev": { - "symfony/http-kernel": "~2.8|~3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.3-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Debug\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Debug Component", - "homepage": "https://symfony.com", - "time": "2017-07-28 15:27:31" - }, - { - "name": "symfony/finder", - "version": "v3.3.6", - "source": { - "type": "git", - "url": "https://github.com/symfony/finder.git", - "reference": "baea7f66d30854ad32988c11a09d7ffd485810c4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/baea7f66d30854ad32988c11a09d7ffd485810c4", - "reference": "baea7f66d30854ad32988c11a09d7ffd485810c4", - "shasum": "" - }, - "require": { - "php": ">=5.5.9" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.3-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Finder\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Finder Component", - "homepage": "https://symfony.com", - "time": "2017-06-01 21:01:25" - }, - { - "name": "symfony/polyfill-mbstring", - "version": "v1.4.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "f29dca382a6485c3cbe6379f0c61230167681937" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/f29dca382a6485c3cbe6379f0c61230167681937", - "reference": "f29dca382a6485c3cbe6379f0c61230167681937", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "suggest": { - "ext-mbstring": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - }, - "files": [ - "bootstrap.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for the Mbstring extension", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "mbstring", - "polyfill", - "portable", - "shim" - ], - "time": "2017-06-09 14:24:12" - }, - { - "name": "symfony/yaml", - "version": "v3.3.6", - "source": { - "type": "git", - "url": "https://github.com/symfony/yaml.git", - "reference": "ddc23324e6cfe066f3dd34a37ff494fa80b617ed" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/ddc23324e6cfe066f3dd34a37ff494fa80b617ed", - "reference": "ddc23324e6cfe066f3dd34a37ff494fa80b617ed", - "shasum": "" - }, - "require": { - "php": ">=5.5.9" - }, - "require-dev": { - "symfony/console": "~2.8|~3.0" - }, - "suggest": { - "symfony/console": "For validating YAML files using the lint command" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.3-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Yaml\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Yaml Component", - "homepage": "https://symfony.com", - "time": "2017-07-23 12:43:26" - }, - { - "name": "tightenco/jigsaw", - "version": "v1.0.6", - "source": { - "type": "git", - "url": "https://github.com/tightenco/jigsaw.git", - "reference": "3dd714a0d21bc99ee4721b58b4ed2de6c67835e3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/tightenco/jigsaw/zipball/3dd714a0d21bc99ee4721b58b4ed2de6c67835e3", - "reference": "3dd714a0d21bc99ee4721b58b4ed2de6c67835e3", - "shasum": "" - }, - "require": { - "illuminate/container": "^5.4", - "illuminate/support": "^5.4", - "illuminate/view": "^5.4", - "mnapoli/front-yaml": "^1.5", - "mnapoli/silly": "1.3 - 1.5", - "mockery/mockery": "^0.9.4", - "symfony/console": "^2.5|^3.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.1" - }, - "bin": [ - "jigsaw" - ], - "type": "library", - "autoload": { - "psr-4": { - "TightenCo\\Jigsaw\\": "src" - }, - "files": [ - "src/Support/helpers.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adam Wathan", - "email": "adam.wathan@gmail.com" - } - ], - "description": "Simple static sites with Laravel's Blade.", - "keywords": [ - "blade", - "generator", - "laravel", - "site", - "static" - ], - "time": "2017-08-01 13:16:57" - } - ], - "packages-dev": [], - "aliases": [], - "minimum-stability": "stable", - "stability-flags": [], - "prefer-stable": false, - "prefer-lowest": false, - "platform": [], - "platform-dev": [] -} diff --git a/docs/config.php b/docs/config.php deleted file mode 100644 index 684bee461efa..000000000000 --- a/docs/config.php +++ /dev/null @@ -1,23 +0,0 @@ - '', - 'production' => false, - 'collections' => [], - 'config' => json_decode(file_get_contents(__DIR__ . '/tailwind.json'), true), - 'version' => json_decode(file_get_contents(__DIR__ . '/../package.json'), true)['version'], - 'colors' => ['red', 'orange', 'yellow', 'green', 'teal', 'blue', 'indigo', 'purple', 'pink'], - 'active' => function ($page, $path) { - $pages = collect(array_wrap($page)); - - return $pages->contains(function ($page) use ($path) { - return str_contains($page->getPath(), $path); - }); - }, - 'anyChildrenActive' => function ($page, $children) { - return $children->contains(function ($link) use ($page) { - return $page->getPath() == '/docs/'. $link; - }); - }, - 'navigation' => require_once('navigation.php'), -]; diff --git a/docs/config.production.php b/docs/config.production.php deleted file mode 100644 index 4fe1c79e492d..000000000000 --- a/docs/config.production.php +++ /dev/null @@ -1,6 +0,0 @@ - 'https://tailwindcss.com', - 'production' => true, -]; diff --git a/docs/navigation.php b/docs/navigation.php deleted file mode 100644 index 487e9973b4f8..000000000000 --- a/docs/navigation.php +++ /dev/null @@ -1,90 +0,0 @@ - [ - 'What is Tailwind?' => 'what-is-tailwind', - ], - 'Getting Started' => [ - 'Installation' => 'installation', - 'Configuration' => 'configuration', - 'Colors' => 'colors', - 'Responsive Design' => 'responsive-design', - 'State Variants' => 'state-variants', - 'Adding New Utilities' => 'adding-new-utilities', - 'Extracting Components' => 'extracting-components', - 'Functions & Directives' => 'functions-and-directives', - 'Controlling File Size' => 'controlling-file-size', - ], - 'Styles' => [ - 'Backgrounds' => [ - 'Color' => 'background-color', - 'Position' => 'background-position', - 'Repeat' => 'background-repeat', - 'Size' => 'background-size', - 'Attachment' => 'background-attachment', - ], - 'Borders' => [ - 'Width' => 'border-width', - 'Color' => 'border-color', - 'Style' => 'border-style', - ], - 'Border Radius' => 'border-radius', - 'Container' => 'container', - 'Display' => 'display', - 'Flexbox' => [ - 'Display' => 'flexbox-display', - 'Direction' => 'flexbox-direction', - 'Wrapping' => 'flexbox-wrapping', - 'Justify Content' => 'flexbox-justify-content', - 'Align Items' => 'flexbox-align-items', - 'Align Content' => 'flexbox-align-content', - 'Align Self' => 'flexbox-align-self', - 'Flex, Grow, & Shrink' => 'flexbox-flex-grow-shrink', - ], - 'Floats' => 'floats', - 'Forms' => 'forms', - 'Interactivity' => [ - 'Cursor' => 'cursor', - 'Resize' => 'resize', - 'Pointer Events' => 'pointer-events', - 'User Select' => 'user-select', - ], - 'Lists' => 'lists', - 'Opacity' => 'opacity', - 'Overflow' => 'overflow', - 'Positioning' => 'positioning', - 'Shadows' => 'shadows', - 'Sizing' => [ - 'Width' => 'width', - 'Min-Width' => 'min-width', - 'Max-Width' => 'max-width', - 'Height' => 'height', - 'Min-Height' => 'min-height', - 'Max-Height' => 'max-height', - ], - 'Spacing' => 'spacing', - 'SVG' => 'svg', - 'Typography' => [ - 'Fonts' => 'fonts', - 'Color' => 'text-color', - 'Sizing' => 'text-sizing', - 'Weight' => 'font-weight', - 'Alignment' => 'text-alignment', - 'Line Height' => 'line-height', - 'Letter Spacing' => 'letter-spacing', - 'Style & Decoration' => 'text-style', - 'Whitespace & Wrapping' => 'whitespace-and-wrapping', - ], - 'Vertical Alignment' => 'vertical-alignment', - 'Visibility' => 'visibility', - 'Z-Index' => 'z-index', - ], - 'Examples' => [ - 'Alerts' => 'examples/alerts', - 'Buttons' => 'examples/buttons', - 'Cards' => 'examples/cards', - 'Forms' => 'examples/forms', - 'Grids' => 'examples/grids', - 'Navigation' => 'examples/navigation', - ], -]; diff --git a/docs/package.json b/docs/package.json deleted file mode 100644 index e96df456e9f2..000000000000 --- a/docs/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "scripts": { - "development": "cross-env NODE_ENV=development webpack --progress --hide-modules --env=local --config=node_modules/laravel-mix/setup/webpack.config.js", - "production": "cross-env NODE_ENV=production webpack --progress --hide-modules --env=production --config=node_modules/laravel-mix/setup/webpack.config.js", - "dev": "npm run development", - "prod": "npm run production", - "watch": "npm run development -- --watch" - }, - "private": true, - "devDependencies": { - "anchor-js": "^4.1.0", - "cross-env": "^3.2.3", - "escape-html": "^1.0.3", - "laravel-mix": "^1.5.1", - "less": "^2.7.2", - "less-loader": "^4.0.5", - "lodash": "^4.17.4", - "node-cmd": "^3.0.0", - "normalize.css": "^7.0.0", - "on-build-webpack": "^0.1.0", - "postcss-cssnext": "^3.0.2", - "prismjs": "^1.8.3", - "stylefmt": "^6.0.0", - "vue": "^2.5.2", - "webpack-watch": "^0.2.0", - "yargs": "^10.0.3" - }, - "browserslist": [ - "> 1%" - ] -} diff --git a/docs/source/.editorconfig b/docs/source/.editorconfig deleted file mode 100644 index 1bc4f9e24bc1..000000000000 --- a/docs/source/.editorconfig +++ /dev/null @@ -1,7 +0,0 @@ -[*] -charset = utf-8 -indent_style = space -indent_size = 4 -end_of_line = lf -insert_final_newline = true -trim_trailing_whitespace = true diff --git a/docs/source/_assets/js/app.js b/docs/source/_assets/js/app.js deleted file mode 100644 index dd82a04d1f08..000000000000 --- a/docs/source/_assets/js/app.js +++ /dev/null @@ -1,22 +0,0 @@ -const anchorJS = require('anchor-js') -const Prism = require('./prism') -const Mousetrap = require('mousetrap') - -window.anchors = new anchorJS() -window.Vue = require('vue') - -Vue.component('responsive-code-sample', require('./components/ResponsiveCodeSample.vue')) - -const app = new Vue({ - el: '#app' -}) - -Prism.highlightAll() -anchors.options = { placement: 'left', class: 'text-grey-dark' } -anchors.add() - -// Add shortcut to search input when pressing the "/" key -Mousetrap.bind('/', function (e) { - e.preventDefault() - document.getElementById('docsearch').focus() -}) diff --git a/docs/source/_assets/js/components/ResponsiveCodeSample.vue b/docs/source/_assets/js/components/ResponsiveCodeSample.vue deleted file mode 100644 index fbe31a1f70cb..000000000000 --- a/docs/source/_assets/js/components/ResponsiveCodeSample.vue +++ /dev/null @@ -1,57 +0,0 @@ - - - diff --git a/docs/source/_assets/js/nav.js b/docs/source/_assets/js/nav.js deleted file mode 100644 index bfb5a4617bbd..000000000000 --- a/docs/source/_assets/js/nav.js +++ /dev/null @@ -1,89 +0,0 @@ -$.when($.ready).then(function() { - window.history.replaceState({ - 'href': window.location.href, - 'title': $(document).filter('title').text(), - 'nav': $(document).find('#nav').html(), - 'content': $(document).find('#content').html() - }, '', window.location.href) - - $('#nav').on('click', 'a', function (event) { - - // Allow opening links in new tabs - if (event.metaKey) { - return - } - - // Prevent following link - event.preventDefault() - - // Get desired link - var href = $(this).attr('href') - - // Make Ajax request to get the page content - $.ajax({ - method: 'GET', - url: href, - cache: false, - dataType: 'html', - }).done(function(html) { - - // Parse the HTML response - var title = $(html).filter('title').text() - var nav = $(html).find('#nav').html() - var content = $(html).find('#content').html() - - $('#sidebar').addClass('hidden') - $('#sidebar-close').addClass('hidden') - - // Update the page - $('title').text(title) - $('#nav').html(nav) - $('#content').html(content) - - // Scroll to the top of the page - $(document).scrollTop(0) - - // Add page load to browser history - window.history.pushState({ - 'href': href, - 'title': title, - 'nav': $(html).find('#nav').html(), - 'content': $(html).find('#content').html() - }, '', href) - - // Track on Google Analytics - if (typeof(ga) === 'function') { - ga('set', 'page', href) - ga('send', 'pageview') - } - }) - }) - - // Load page history (for back/forward nav) - window.onpopstate = function(e) { - if(e.state){ - // Update the page - $('title').text(e.state.title) - $('#nav').html(e.state.nav) - $('#content').html(e.state.content) - - // Track on Google Analytics - if (typeof(ga) === 'function') { - ga('set', 'page', e.state.href) - ga('send', 'pageview') - } - } - } - - // Close sidebar (mobile) - $('#sidebar-close').on('click', function () { - $('#sidebar').addClass('hidden') - $('#sidebar-close').addClass('hidden') - }) - - // Show sidebar (mobile) - $('#sidebar-open').on('click', function () { - $('#sidebar').removeClass('hidden') - $('#sidebar-close').removeClass('hidden') - }) -}) diff --git a/docs/source/_assets/js/prism.js b/docs/source/_assets/js/prism.js deleted file mode 100644 index 1c69f25d36b2..000000000000 --- a/docs/source/_assets/js/prism.js +++ /dev/null @@ -1,7 +0,0 @@ -/* http://prismjs.com/download.html?themes=prism&languages=markup+css+clike+javascript+less */ -var _self="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(){var e=/\blang(?:uage)?-(\w+)\b/i,t=0,n=_self.Prism={manual:_self.Prism&&_self.Prism.manual,util:{encode:function(e){return e instanceof a?new a(e.type,n.util.encode(e.content),e.alias):"Array"===n.util.type(e)?e.map(n.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(!(w instanceof s)){h.lastIndex=0;var _=h.exec(w),P=1;if(!_&&m&&b!=t.length-1){if(h.lastIndex=k,_=h.exec(e),!_)break;for(var A=_.index+(d?_[1].length:0),j=_.index+_[0].length,x=b,O=k,S=t.length;S>x&&(j>O||!t[x].type&&!t[x-1].greedy);++x)O+=t[x].length,A>=O&&(++b,k=O);if(t[b]instanceof s||t[x-1].greedy)continue;P=x-b,w=e.slice(k,O),_.index-=k}if(_){d&&(p=_[1].length);var A=_.index+p,_=_[0].slice(p),j=A+_.length,N=w.slice(0,A),C=w.slice(j),E=[b,P];N&&(++b,k+=N.length,E.push(N));var I=new s(u,f?n.tokenize(_,f):_,y,_,m);if(E.push(I),C&&E.push(C),Array.prototype.splice.apply(t,E),1!=P&&n.matchGrammar(e,t,a,b,k,!0,u),l)break}else if(l)break}}}}},tokenize:function(e,t){var a=[e],r=t.rest;if(r){for(var i in r)t[i]=r[i];delete t.rest}return n.matchGrammar(e,a,t,0,0,!1),a},hooks:{all:{},add:function(e,t){var a=n.hooks.all;a[e]=a[e]||[],a[e].push(t)},run:function(e,t){var a=n.hooks.all[e];if(a&&a.length)for(var r,i=0;r=a[i++];)r(t)}}},a=n.Token=function(e,t,n,a,r){this.type=e,this.content=t,this.alias=n,this.length=0|(a||"").length,this.greedy=!!r};if(a.stringify=function(e,t,r){if("string"==typeof e)return e;if("Array"===n.util.type(e))return e.map(function(n){return a.stringify(n,t,e)}).join("");var i={type:e.type,content:a.stringify(e.content,t,r),tag:"span",classes:["token",e.type],attributes:{},language:t,parent:r};if(e.alias){var l="Array"===n.util.type(e.alias)?e.alias:[e.alias];Array.prototype.push.apply(i.classes,l)}n.hooks.run("wrap",i);var o=Object.keys(i.attributes).map(function(e){return e+'="'+(i.attributes[e]||"").replace(/"/g,""")+'"'}).join(" ");return"<"+i.tag+' class="'+i.classes.join(" ")+'"'+(o?" "+o:"")+">"+i.content+""},!_self.document)return _self.addEventListener?(_self.addEventListener("message",function(e){var t=JSON.parse(e.data),a=t.language,r=t.code,i=t.immediateClose;_self.postMessage(n.highlight(r,n.languages[a],a)),i&&_self.close()},!1),_self.Prism):_self.Prism;var r=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();return r&&(n.filename=r.src,n.manual||r.hasAttribute("data-manual")||("loading"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame(n.highlightAll):window.setTimeout(n.highlightAll,16):document.addEventListener("DOMContentLoaded",n.highlightAll))),_self.Prism}();"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism); -Prism.languages.markup={comment://,prolog:/<\?[\s\S]+?\?>/,doctype://i,cdata://i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/(^|[^\\])["']/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.hooks.add("wrap",function(a){"entity"===a.type&&(a.attributes.title=a.content.replace(/&/,"&"))}),Prism.languages.xml=Prism.languages.markup,Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup; -Prism.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+?.*?(?:;|(?=\s*\{))/i,inside:{rule:/@[\w-]+/}},url:/url\((?:(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,selector:/[^{}\s][^{};]*?(?=\s*\{)/,string:{pattern:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},property:/[\w-]+(?=\s*:)/i,important:/\B!important\b/i,"function":/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:]/},Prism.languages.css.atrule.inside.rest=Prism.util.clone(Prism.languages.css),Prism.languages.markup&&(Prism.languages.insertBefore("markup","tag",{style:{pattern:/()[\s\S]*?(?=<\/style>)/i,lookbehind:!0,inside:Prism.languages.css,alias:"language-css"}}),Prism.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:Prism.languages.markup.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:Prism.languages.css}},alias:"language-css"}},Prism.languages.markup.tag)); -Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,"boolean":/\b(?:true|false)\b/,"function":/[a-z0-9_]+(?=\()/i,number:/\b-?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)\b/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/}; -Prism.languages.javascript=Prism.languages.extend("clike",{keyword:/\b(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/,number:/\b-?(?:0[xX][\dA-Fa-f]+|0[bB][01]+|0[oO][0-7]+|\d*\.?\d+(?:[Ee][+-]?\d+)?|NaN|Infinity)\b/,"function":/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\s*\()/i,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/}),Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:/(^|[^\/])\/(?!\/)(\[[^\]\r\n]+]|\\.|[^\/\\\[\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\s*=\s*(?:function\b|(?:\([^()]*\)|[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)\s*=>))/i,alias:"function"}}),Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,greedy:!0,inside:{interpolation:{pattern:/\$\{[^}]+\}/,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}}}),Prism.languages.markup&&Prism.languages.insertBefore("markup","tag",{script:{pattern:/()[\s\S]*?(?=<\/script>)/i,lookbehind:!0,inside:Prism.languages.javascript,alias:"language-javascript"}}),Prism.languages.js=Prism.languages.javascript; -Prism.languages.less=Prism.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-]+?(?:\([^{}]+\)|[^(){};])*?(?=\s*\{)/i,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\([^{}]*\)|[^{};@])*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/i,punctuation:/[{}();:,]/,operator:/[+\-*\/]/}),Prism.languages.insertBefore("less","punctuation",{"function":Prism.languages.less.function}),Prism.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-]+.*?(?=[(;])/,lookbehind:!0,alias:"function"}}); diff --git a/docs/source/_assets/less/docsearch.less b/docs/source/_assets/less/docsearch.less deleted file mode 100644 index 50084efc0961..000000000000 --- a/docs/source/_assets/less/docsearch.less +++ /dev/null @@ -1,37 +0,0 @@ -.algolia-autocomplete { - width: 100% !important; - - [class^="ds-dataset-"] { - .algolia-docsearch-suggestion--text { - .algolia-docsearch-suggestion--highlight { - box-shadow: inset 0 -2px 0 0 rgba(68, 168, 179,.8); - } - } - - .algolia-docsearch-suggestion--highlight { - color: config('colors.tailwind-teal'); - background: rgba(68, 168, 179, .1); - } - } - - @media (max-width: config('screens.md')) { - .ds-dropdown-menu { - width: 100% !important; - max-width: 100% !important; - min-width: 0 !important; - } - - .algolia-docsearch-suggestion--subcategory-column { - display: none !important; - } - - .algolia-docsearch-suggestion--content { - width: 100% !important; - padding: 0 !important; - - &:before { - display: none !important; - } - } - } -} diff --git a/docs/source/_assets/less/main.less b/docs/source/_assets/less/main.less deleted file mode 100644 index 8de9f296bdc1..000000000000 --- a/docs/source/_assets/less/main.less +++ /dev/null @@ -1,53 +0,0 @@ -@tailwind preflight; - -html { - font-size: 14px; - - @media (min-width: 420px) { - font-size: 16px; - } -} - -a { - color: inherit; - text-decoration: none; -} - -ol, -ul { - @apply .list-reset; -} - -@import "docsearch"; -@import "prism"; -@import "markdown"; - -@tailwind utilities; - -.focus\:bg-grey-dark:focus { - @apply .bg-grey-dark; -} - -.focus\:text-white:focus { - @apply .text-white; -} - -.group:hover .group-hover\:text-white { - @apply .text-white; -} - -.bg-pattern { - background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='778' viewBox='0 0 600 778' %3E%3Cg fill='%23E8ECEF'%3E%3Cpath d='M0 31h133V0h2v237a2 2 0 0 1-2 2H0v-2h133v-18H0v-2h133v-42H0v-2h133v-72H0v-2h133V33H0v-2zm0 20h14a1 1 0 0 1 0 2H0v-2zm0 89h11a1 1 0 1 1 0 2H0v-2zm0 6h16a1 1 0 1 1 0 2H0v-2zm0 4h14a1 1 0 1 1 0 2H0v-2zm0 4h16a1 1 0 1 1 0 2H0v-2zm0 4h12a1 1 0 1 1 0 2H0v-2zm0-99h36a1 1 0 0 1 0 2H0v-2zm0 4h34a1 1 0 0 1 0 2H0v-2zm0 4h32a1 1 0 0 1 0 2H0v-2zm0 4h34a1 1 0 0 1 0 2H0v-2zm0 4h32a1 1 0 0 1 0 2H0v-2zm0 39.46a10 10 0 0 1 0 19.08v-2.12a8 8 0 0 0 0-14.84v-2.12zM12 2h66a1 1 0 0 1 0 2H12a1 1 0 0 1 0-2zm10 4h46a1 1 0 0 1 0 2H22a1 1 0 0 1 0-2zm9 6h10a3 3 0 0 1 0 6H31a3 3 0 0 1 0-6zm-6 186h40a3 3 0 0 1 0 6H25a3 3 0 0 1 0-6zM49 12h10a3 3 0 0 1 0 6H49a3 3 0 0 1 0-6zm-4 220a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-6 0a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm12 0a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-20-92h28a1 1 0 1 1 0 2H31a1 1 0 1 1 0-2zm-10 48h48a1 1 0 1 1 0 2H21a1 1 0 1 1 0-2zm5 36h38a1 1 0 1 1 0 2H26a1 1 0 1 1 0-2zm-15-32h68a1 1 0 1 1 0 2H11a1 1 0 1 1 0-2zm17-46h34a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm2 4h30a1 1 0 1 1 0 2H30a1 1 0 1 1 0-2zm2 4h26a1 1 0 1 1 0 2H32a1 1 0 1 1 0-2zm-4 4h34a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm53-18h24a1 1 0 1 1 0 2H81a1 1 0 1 1 0-2zm-3 6h30a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2zm-4 4h38a1 1 0 1 1 0 2H74a1 1 0 1 1 0-2zm2 4h34a1 1 0 1 1 0 2H76a1 1 0 1 1 0-2zm2 4h30a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2zM55 46h56a2 2 0 0 1 2 2v36a2 2 0 0 1-2 2H55a2 2 0 0 1-2-2V48c0-1.1.9-2 2-2zm38 88a10 10 0 1 1 0-20 10 10 0 0 1 0 20zm-48 0a10 10 0 1 1 0-20 10 10 0 0 1 0 20zm48-2a8 8 0 1 0 0-16 8 8 0 0 0 0 16zm-48 0a8 8 0 1 0 0-16 8 8 0 0 0 0 16zm10-84v36h56V48H55zm13 32h-8a1 1 0 0 1-1-1v-8a1 1 0 0 1 1.7-.7l8 8A1 1 0 0 1 68 80zM56 200v2h9a1 1 0 1 0 0-2h-9zm-2 0H25a1 1 0 1 0 0 2h29v-2zM31 14a1 1 0 0 0 0 2h10a1 1 0 0 0 0-2H31zm18 0a1 1 0 0 0 0 2h10a1 1 0 0 0 0-2H49zM0 761v-2h133v-12H0v-2h133a2 2 0 0 1 2 2v31h-2v-17H0zm22 13h46a1 1 0 1 1 0 2H22a1 1 0 1 1 0-2zm82-22h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-16 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-16 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-16 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zM0 471v-2h133v-87H0v-2h17v-44H0v-2h103v-6H0v-2h103v-1a1 1 0 0 0-1-1H0v-2h102a3 3 0 0 1 3 3v55h28V261H0v-2h133a2 2 0 0 1 2 2v270a2 2 0 0 1-2 2H0v-2h133v-16H0v-2h133v-42H0zm8-68a1 1 0 1 1 0 2H0v-2h8zM0 522h6a1 1 0 1 1 0 2H0v-2zm0-113h12a1 1 0 1 1 0 2H0v-2zm0 4h8a1 1 0 1 1 0 2H0v-2zm0 4h6a1 1 0 1 1 0 2H0v-2zm6 23a1 1 0 1 1 0 2H0v-2h6zm-6 6h6a1 1 0 1 1 0 2H0v-2zm0 4h10a1 1 0 1 1 0 2H0v-2zm0 4h6a1 1 0 1 1 0 2H0v-2zm103-74v-44H19v44h84zm-81-95h46a1 1 0 1 1 0 2H22a1 1 0 1 1 0-2zm-10 8h66a1 1 0 1 1 0 2H12a1 1 0 1 1 0-2zm10 4h46a1 1 0 1 1 0 2H22a1 1 0 1 1 0-2zm15 6h16a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H37a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1zm1 4h14v-2H38v2zm0-32h14a1 1 0 1 1 0 2H38a1 1 0 1 1 0-2zm7-2a3 3 0 1 1 0-6 3 3 0 0 1 0 6zm60 252a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-6 0a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm12 0a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-75-41h18a1 1 0 1 1 0 2H36a1 1 0 1 1 0-2zm-25 4h68a1 1 0 1 1 0 2H11a1 1 0 1 1 0-2zm-10 6h88a1 1 0 1 1 0 2H1a1 1 0 1 1 0-2zm12 4h64a1 1 0 1 1 0 2H13a1 1 0 1 1 0-2zm15-95h24a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm1-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-1 10h29a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm0 4h35a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm0 4h32a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm50-14h22a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2zm1-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-1 10h34a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2zm0 4h30a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2zm0 4h33a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2zm-50 23h20a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm1-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-1 10h29a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm0 4h31a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm0 4h34a1 1 0 1 1 0 2H28a1 1 0 1 1 0-2zm50-14h26a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2zm1-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-1 10h30a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2zm0 4h26a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2zm0 4h29a1 1 0 1 1 0 2H78a1 1 0 1 1 0-2z'/%3E%3Cpath d='M0 555v-2h133a2 2 0 0 1 2 2v168a2 2 0 0 1-2 2H0v-2h133V569H0v-2h133v-12H0zm16 3h58a3 3 0 0 1 0 6H16a3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2h58a1 1 0 1 0 0-2H16zm88 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-14 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-75 21h60a2 2 0 0 1 2 2v46a2 2 0 0 1-2 2H15a2 2 0 0 1-2-2v-46c0-1.1.9-2 2-2zm0 52h60a2 2 0 0 1 2 2v36a2 2 0 0 1-2 2H15a2 2 0 0 1-2-2v-36c0-1.1.9-2 2-2zm0 42h60a2 2 0 0 1 2 2v36a2 2 0 0 1-2 2H15a2 2 0 0 1-2-2v-36c0-1.1.9-2 2-2zm68-94h28a2 2 0 0 1 2 2v24a2 2 0 0 1-2 2H83a2 2 0 0 1-2-2v-24c0-1.1.9-2 2-2zm0 2v24h28v-24H83zm0 28h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2H83a2 2 0 0 1-2-2v-26c0-1.1.9-2 2-2zm0 2v26h28v-26H83zm-8 8H15v8h60v-8zm0 82v-26H15v26h60zm0 2H15v8h60v-8zm0-44v-26H15v26h60zm0 2H15v8h60v-8zm0-44v-36H15v36h60zm-61-44h15a1 1 0 1 1 0 2H14a1 1 0 1 1 0-2zm68 0h15a1 1 0 1 1 0 2H82a1 1 0 1 1 0-2zm0 70h30a1 1 0 1 1 0 2H82a1 1 0 1 1 0-2zm0 4h30a1 1 0 1 1 0 2H82a1 1 0 1 1 0-2zm0 4h16a1 1 0 1 1 0 2H82a1 1 0 1 1 0-2z'/%3E%3Cpath d='M600 31v2h-43v66h43v2h-43v72h43v2h-43v42h43v2h-43v18h43v2h-43a2 2 0 0 1-2-2V0h2v31h43zm0 20v2h-22a1 1 0 1 1 0-2h22zm0 89v2h-17a1 1 0 1 1 0-2h17zm0 6v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-20a1 1 0 1 1 0-2h20zm0 4v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-18a1 1 0 1 1 0-2h18zm0-99v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-22a1 1 0 1 1 0-2h22zm0 39.46v2.12a8 8 0 1 0 0 14.84v2.12a10 10 0 1 1 0-19.08zM578 79h17a1 1 0 1 1 0 2h-17a1 1 0 1 1 0-2zm22 682h-43v17h-2v-31c0-1.1.9-2 2-2h43v2h-43v12h43v2zm-21-6a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm21-284h-43v42h43v2h-43v16h43v2h-43a2 2 0 0 1-2-2V261c0-1.1.9-2 2-2h43v2h-43v119h28v-55a3 3 0 0 1 3-3h12v2h-12a1 1 0 0 0-1 1v1h13v2h-13v6h13v2h-13v44h13v2h-43v87h43v2zm0-68v2h-22a1 1 0 1 1 0-2h22zm0 119v2h-22a1 1 0 1 1 0-2h22zm0-113v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-22a1 1 0 1 1 0-2h22zm0 23v2h-22a1 1 0 1 1 0-2h22zm0 6v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-22a1 1 0 1 1 0-2h22zm0 4v2h-22a1 1 0 1 1 0-2h22zm-21-55a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm0 37a2 2 0 1 1 0-4 2 2 0 0 1 0 4z'/%3E%3Cpath d='M600 555h-43v12h43v2h-43v154h43v2h-43a2 2 0 0 1-2-2V555c0-1.1.9-2 2-2h43v2zm-16 5h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm-2 27h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm-4 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm4-24h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm0 6h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm0 6h11a1 1 0 1 1 0 2h-11a1 1 0 1 1 0-2zm0 6h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm0 6h11a1 1 0 1 1 0 2h-11a1 1 0 1 1 0-2zm4-42h11a1 1 0 1 1 0 2h-11a1 1 0 1 1 0-2zm0 4h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-8-4h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1zm1 2v2h2v-2h-2zm0-14a2 2 0 1 1 0-4 2 2 0 0 1 0 4z'/%3E%3Cpath d='M157 201h176a2 2 0 0 1 2 2v334a2 2 0 0 1-2 2H157a2 2 0 0 1-2-2V203c0-1.1.9-2 2-2zm176 294v-78H157v78h176zm0 2H157v40h176v-40zm0-82v-44H157v44h176zm0-46V267H157v102h176zm0-104v-62H157v62h176zm-155-38h56a1 1 0 1 1 0 2h-56a1 1 0 1 1 0-2zm0 6h76a1 1 0 1 1 0 2h-76a1 1 0 1 1 0-2zm0 4h66a1 1 0 1 1 0 2h-66a1 1 0 1 1 0-2zm0 6h14a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-14a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1zm1 2v2h12v-2h-12zm17-2h14a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-14a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1zm1 4h12v-2h-12v2zm107-39h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-16 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-16 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-93 3a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm2 180v4a1 1 0 0 1-1.7.7l-2-2a1 1 0 0 1 0-1.4l2-2a1 1 0 0 1 1.7.7zm128 0a1 1 0 0 1 1.7-.7l2 2a1 1 0 0 1 0 1.4l-2 2a1 1 0 0 1-1.7-.7v-4zM178 283h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 6h78a1 1 0 1 1 0 2h-78a1 1 0 1 1 0-2zm0 4h66a1 1 0 1 1 0 2h-66a1 1 0 1 1 0-2zm28 94h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm-28 82h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 36h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm36 0h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm36 0h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm36 0h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm-108 4h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm36 0h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm36 0h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm36 0h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm-108 4h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm36 0h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm36 0h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm36 0h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm-108 4h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm0 10h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm36-10h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm36 0h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm36 0h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm-108-44h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm48-8h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm48-8h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h32a1 1 0 1 1 0 2h-32a1 1 0 1 1 0-2zm0 4h34a1 1 0 1 1 0 2h-34a1 1 0 1 1 0-2zm-68-84h78a1 1 0 1 1 0 2h-78a1 1 0 1 1 0-2zm0 4h66a1 1 0 1 1 0 2h-66a1 1 0 1 1 0-2zm-28-56h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 6h58a1 1 0 1 1 0 2h-58a1 1 0 1 1 0-2zm0 4h54a1 1 0 1 1 0 2h-54a1 1 0 1 1 0-2zm72-10h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 6h60a1 1 0 1 1 0 2h-60a1 1 0 1 1 0-2zm0 4h46a1 1 0 1 1 0 2h-46a1 1 0 1 1 0-2zm1-52h60a2 2 0 0 1 2 2v32a2 2 0 0 1-2 2h-60a2 2 0 0 1-2-2v-32c0-1.1.9-2 2-2zm0 2v32h60v-32h-60zm-72-2h60a2 2 0 0 1 2 2v32a2 2 0 0 1-2 2h-60a2 2 0 0 1-2-2v-32c0-1.1.9-2 2-2zm0 2v32h60v-32h-60zm5 28a1 1 0 0 1-1-1v-6a1 1 0 0 1 1.7-.7l6 6a1 1 0 0 1-.7 1.7h-6zm72 0a1 1 0 0 1-1-1v-6a1 1 0 0 1 1.7-.7l6 6a1 1 0 0 1-.7 1.7h-6zm49 201a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-6 0a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm12 0a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-132-97h36a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-36a2 2 0 0 1-2-2v-26c0-1.1.9-2 2-2zm48 0h36a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-36a2 2 0 0 1-2-2v-26c0-1.1.9-2 2-2zm48 0h36a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-36a2 2 0 0 1-2-2v-26c0-1.1.9-2 2-2zm36 22v-20h-36v20h36zm0 2h-36v4h36v-4zm-48-2v-20h-36v20h36zm0 2h-36v4h36v-4zm-48-2v-20h-36v20h36zm0 2h-36v4h36v-4zM157 7h176a2 2 0 0 1 2 2v170a2 2 0 0 1-2 2H157a2 2 0 0 1-2-2V9c0-1.1.9-2 2-2zm176 55.48l-8.55 3.42-9.94 5.96a1 1 0 0 1-.41.14l-10 1a1 1 0 0 1-.55-.1l-9.88-4.95-9.57-1.91-9.73 3.89a1 1 0 0 1-1-.15l-9.3-7.44-9.36 9.37a1 1 0 0 1-.9.27l-9.71-1.94-9.73 3.89a1 1 0 0 1-.74 0l-9.73-3.9-9.4 1.9-9.5 9.48V93h128V62.48zm0-2.16V45H205v33.59l8.3-8.3a1 1 0 0 1 .5-.27l10-2a1 1 0 0 1 .57.05l9.63 3.85 9.63-3.85a1 1 0 0 1 .57-.05l9.47 1.9 9.62-9.63a1 1 0 0 1 1.33-.07l9.55 7.64 9.46-3.79a1 1 0 0 1 .57-.05l10 2a1 1 0 0 1 .25.09l9.74 4.87 9.49-.95 9.8-5.89.15-.07 9.37-3.75zm0 42.68v-8H205v8h128zm0 2H205v64h128v-64zm0-62V23H205v20h128zm0-22V9H205v12h128zM157 169h46V9h-46v160zm0 2v8h176v-8H157zm53-143h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 80h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 8h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm0 8h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 8h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm0 8h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 8h13a1 1 0 1 1 0 2h-13a1 1 0 1 1 0-2zm0 8h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 8h15a1 1 0 1 1 0 2h-15a1 1 0 1 1 0-2zm32-56h13a1 1 0 1 1 0 2h-13a1 1 0 1 1 0-2zm0 8h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm0 8h17a1 1 0 1 1 0 2h-17a1 1 0 1 1 0-2zm0 8h13a1 1 0 1 1 0 2h-13a1 1 0 1 1 0-2zm0 8h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm0 8h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 8h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm0 8h15a1 1 0 1 1 0 2h-15a1 1 0 1 1 0-2zm32-56h13a1 1 0 1 1 0 2h-13a1 1 0 1 1 0-2zm0 8h17a1 1 0 1 1 0 2h-17a1 1 0 1 1 0-2zm0 8h11a1 1 0 1 1 0 2h-11a1 1 0 1 1 0-2zm0 8h15a1 1 0 1 1 0 2h-15a1 1 0 1 1 0-2zm0 8h13a1 1 0 1 1 0 2h-13a1 1 0 1 1 0-2zm0 8h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm0 8h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 8h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm32-56h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm0 8h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 8h15a1 1 0 1 1 0 2h-15a1 1 0 1 1 0-2zm0 8h15a1 1 0 1 1 0 2h-15a1 1 0 1 1 0-2zm0 8h13a1 1 0 1 1 0 2h-13a1 1 0 1 1 0-2zm0 8h15a1 1 0 1 1 0 2h-15a1 1 0 1 1 0-2zm0 8h17a1 1 0 1 1 0 2h-17a1 1 0 1 1 0-2zm0 8h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zM210 36h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm16 0h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm16 0h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm16 0h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm-46-24h38a3 3 0 0 1 0 6h-38a3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2h38a1 1 0 1 0 0-2h-38zm90 12h8a3 3 0 0 1 0 6h-8a3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2h8a1 1 0 1 0 0-2h-8zm16-2a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm8-2a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2 1 1 0 0 0 0-2zm-164-3h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 6h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm0 6h15a1 1 0 1 1 0 2h-15a1 1 0 1 1 0-2zm0 6h11a1 1 0 1 1 0 2h-11a1 1 0 1 1 0-2zm0 10h13a1 1 0 1 1 0 2h-13a1 1 0 1 1 0-2zm0 6h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0 6h19a1 1 0 1 1 0 2h-19a1 1 0 1 1 0-2zm0 6h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm166-57a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm-6 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm-6 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm-148 0h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm-5 3a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-6 542h176a2 2 0 0 1 2 2v202a2 2 0 0 1-2 2H157a2 2 0 0 1-2-2V561c0-1.1.9-2 2-2zm176 20H157v10h176v-10zm0-2v-16H157v16h176zm0 14H157v172h176V591zm-33-25h10a3 3 0 0 1 0 6h-10a3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2h10a1 1 0 1 0 0-2h-10zM178 703h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm48-8h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm-48 12h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm48-8h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm-48 12h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm48-8h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm48-146h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm-96-8h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm96 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-96-14h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm0-17h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm0 4h9a1 1 0 1 1 0 2h-9a1 1 0 1 1 0-2zm16 13h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm14 0h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm16 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm12 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm-4-11h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm16 11h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm18 0h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm16 0h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm-8 26h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm0 12h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h34a1 1 0 1 1 0 2h-34a1 1 0 1 1 0-2zm0 4h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 12h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h34a1 1 0 1 1 0 2h-34a1 1 0 1 1 0-2zm0 12h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h32a1 1 0 1 1 0 2h-32a1 1 0 1 1 0-2zm0 4h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm0 12h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h30a1 1 0 1 1 0 2h-30a1 1 0 1 1 0-2zm0 12h36a1 1 0 1 1 0 2h-36a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 12h32a1 1 0 1 1 0 2h-32a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm0 4h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 12h32a1 1 0 1 1 0 2h-32a1 1 0 1 1 0-2zm0 4h38a1 1 0 1 1 0 2h-38a1 1 0 1 1 0-2zm-96-100h83a1 1 0 1 1 0 2h-83a1 1 0 1 1 0-2zm0 4h86a1 1 0 1 1 0 2h-86a1 1 0 1 1 0-2zm0 4h54a1 1 0 1 1 0 2h-54a1 1 0 1 1 0-2zm1-52h84a2 2 0 0 1 2 2v36a2 2 0 0 1-2 2h-84a2 2 0 0 1-2-2v-36c0-1.1.9-2 2-2zm0 2v36h84v-36h-84zm0 62h36a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-36a2 2 0 0 1-2-2v-26c0-1.1.9-2 2-2zm0 2v26h36v-26h-36zm48-2h36a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-36a2 2 0 0 1-2-2v-26c0-1.1.9-2 2-2zm0 2v26h36v-26h-36zm18-101a3 3 0 1 1 0-6 3 3 0 0 1 0 6zm60 16a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-6 0a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-8-15a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm20 15a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm46-399h176a2 2 0 0 1 2 2v272a2 2 0 0 1-2 2H357a2 2 0 0 1-2-2V189c0-1.1.9-2 2-2zm176 118v-38h-57v38h57zm0 2H357v66h176v-66zm-176-2h57v-38h-57v38zm59 0h58v-38h-58v38zm117-40v-62H357v62h176zm0 110H357v36h176v-36zm0 38H357v48h176v-48zm0-212v-12H357v12h176zm-53-7h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-16 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-16 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-16 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-53 3a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm42 120h48a1 1 0 1 1 0 2h-48a1 1 0 1 1 0-2zm-10 4h68a1 1 0 1 1 0 2h-68a1 1 0 1 1 0-2zm14 74h40a3 3 0 0 1 0 6h-40a3 3 0 0 1 0-6zm-4-10h48a1 1 0 1 1 0 2h-48a1 1 0 1 1 0-2zm-10 4h68a1 1 0 1 1 0 2h-68a1 1 0 1 1 0-2zm-33 40h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm36 0h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm36 0h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm36-8h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm-108 12h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm36 0h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0-12h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm0 4h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm72 0h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm-108 12h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm36 0h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm36-16h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm0 4h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm36 4h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm-108-8h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 4h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm101-80a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm11-7h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm0 4h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm-11 23a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm11-7h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 4h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm-59-13a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm11-7h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm0 4h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm-11 23a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm11-7h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 4h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm-59-13a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm11-7h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm0 4h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm-11 23a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm11-7h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 4h12a1 1 0 1 1 0 2h-12a1 1 0 1 1 0-2zm-16 93h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm36-10h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm72-8h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm19 21a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-6 0a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm12 0a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-89-231h46a1 1 0 1 1 0 2h-46a1 1 0 1 1 0-2zm-50 70h27a1 1 0 1 1 0 2h-27a1 1 0 1 1 0-2zm2 4h23a1 1 0 1 1 0 2h-23a1 1 0 1 1 0-2zm60-4h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm-2 4h24a1 1 0 1 1 0 2h-24a1 1 0 1 1 0-2zm59-4h27a1 1 0 1 1 0 2h-27a1 1 0 1 1 0-2zm3 4h21a1 1 0 1 1 0 2h-21a1 1 0 1 1 0-2zm-82-68h66a1 1 0 1 1 0 2h-66a1 1 0 1 1 0-2zm12 8h18a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1h-18a1 1 0 0 1-1-1v-6a1 1 0 0 1 1-1zm24 0h18a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1h-18a1 1 0 0 1-1-1v-6a1 1 0 0 1 1-1zm-23 6h16v-4h-16v4zm24 0h16v-4h-16v4zm49-51h12a3 3 0 0 1 0 6h-12a3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2h12a1 1 0 1 0 0-2h-12zm-44 203h-29a1 1 0 1 0 0 2h29v-2zm2 0v2h9a1 1 0 1 0 0-2h-9zm-99 86h176a2 2 0 0 1 2 2v186a2 2 0 0 1-2 2H357a2 2 0 0 1-2-2V485c0-1.1.9-2 2-2zm176 16H357v172h176V499zm0-2v-12H357v12h176zm-31-9h8a3 3 0 0 1 0 6h-8a3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2h8a1 1 0 1 0 0-2h-8zm-18 13h26a3 3 0 0 1 0 6h-26a3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2h26a1 1 0 1 0 0-2h-26zm-64-15h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm14 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm14 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm14 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-83 23h96a2 2 0 0 1 2 2v144a2 2 0 0 1-2 2h-96a2 2 0 0 1-2-2V515c0-1.1.9-2 2-2zm0 2v144h96V515h-96zm103 8h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm-98-4h70a1 1 0 1 1 0 2h-70a1 1 0 1 1 0-2zm0 4h60a1 1 0 1 1 0 2h-60a1 1 0 1 1 0-2zm0 4h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm78-12h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm0 14h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 6h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 6h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0 6h23a1 1 0 1 1 0 2h-23a1 1 0 1 1 0-2zm0 6h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 6h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0 6h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm0 6h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 6h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0 6h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm0 6h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm0 6h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0 6h22a1 1 0 1 1 0 2h-22a1 1 0 1 1 0-2zm0 6h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm-98-117h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm-6 15h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm1-12a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm90 30a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-85 14h64a1 1 0 1 1 0 2h-64a1 1 0 1 1 0-2zm0 4h73a1 1 0 1 1 0 2h-73a1 1 0 1 1 0-2zm0 4h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm65-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-85 14h67a1 1 0 1 1 0 2h-67a1 1 0 1 1 0-2zm0 4h65a1 1 0 1 1 0 2h-65a1 1 0 1 1 0-2zm0 4h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm65-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-85 14h72a1 1 0 1 1 0 2h-72a1 1 0 1 1 0-2zm0 4h65a1 1 0 1 1 0 2h-65a1 1 0 1 1 0-2zm0 4h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm65-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-85 14h70a1 1 0 1 1 0 2h-70a1 1 0 1 1 0-2zm0 4h50a1 1 0 1 1 0 2h-50a1 1 0 1 1 0-2zm0 4h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm65-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-85 14h65a1 1 0 1 1 0 2h-65a1 1 0 1 1 0-2zm0 4h70a1 1 0 1 1 0 2h-70a1 1 0 1 1 0-2zm0 4h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm65-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-85 14h70a1 1 0 1 1 0 2h-70a1 1 0 1 1 0-2zm0 4h60a1 1 0 1 1 0 2h-60a1 1 0 1 1 0-2zm0 4h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm65-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-85 14h67a1 1 0 1 1 0 2h-67a1 1 0 1 1 0-2zm0 4h65a1 1 0 1 1 0 2h-65a1 1 0 1 1 0-2zm0 4h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm10 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm65-4a2 2 0 1 1 0-4 2 2 0 0 1 0 4zM533 0h2v165a2 2 0 0 1-2 2H357a2 2 0 0 1-2-2V0h2v165h176V0zM380 3h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-28a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2zm0 2v26h28V5h-28zm0 54h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-28a2 2 0 0 1-2-2V61c0-1.1.9-2 2-2zm0 2v26h28V61h-28zm0 54h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-28a2 2 0 0 1-2-2v-26c0-1.1.9-2 2-2zm0 2v26h28v-26h-28zM414 3h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-28a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2zm0 2v26h28V5h-28zm0 54h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-28a2 2 0 0 1-2-2V61c0-1.1.9-2 2-2zm0 2v26h28V61h-28zm0 54h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-28a2 2 0 0 1-2-2v-26c0-1.1.9-2 2-2zm0 2v26h28v-26h-28zM448 3h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-28a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2zm0 2v26h28V5h-28zm0 54h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-28a2 2 0 0 1-2-2V61c0-1.1.9-2 2-2zm0 2v26h28V61h-28zm0 54h28a2 2 0 0 1 2 2v26a2 2 0 0 1-2 2h-28a2 2 0 0 1-2-2v-26c0-1.1.9-2 2-2zm0 2v26h28v-26h-28zm-69-80h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 4h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm34-4h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 4h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm34-4h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 4h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm-68 52h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0-40h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 44h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm34-4h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 4h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm34-4h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 4h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm-68 52h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0-40h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 44h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm34-4h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 4h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zm34-4h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 4h16a1 1 0 1 1 0 2h-16a1 1 0 1 1 0-2zM485 5h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0 6h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 6h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 6h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0 6h23a1 1 0 1 1 0 2h-23a1 1 0 1 1 0-2zm0 20h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0-8h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm0 14h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 6h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 6h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0 6h23a1 1 0 1 1 0 2h-23a1 1 0 1 1 0-2zm0 20h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0-8h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm0 14h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm0 6h18a1 1 0 1 1 0 2h-18a1 1 0 1 1 0-2zm0 6h20a1 1 0 1 1 0 2h-20a1 1 0 1 1 0-2zm0 6h23a1 1 0 1 1 0 2h-23a1 1 0 1 1 0-2zm48 661v-7H357v7h-2v-83c0-1.1.9-2 2-2h176a2 2 0 0 1 2 2v83h-2zm0-9v-46H357v46h176zm0-58H357v10h176v-10zm0-2v-14H357v14h176zm-34 4h10a3 3 0 0 1 0 6h-10a3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2h10a1 1 0 1 0 0-2h-10zm-89-16h70a3 3 0 0 1 0 6h-70a3 3 0 0 1 0-6zm0 2a1 1 0 1 0 0 2h70a1 1 0 1 0 0-2h-70zm-2 14h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm-29-2h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm0 4h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm45-2h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm14 0h10a1 1 0 1 1 0 2h-10a1 1 0 1 1 0-2zm16 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm12 0h6a1 1 0 1 1 0 2h-6a1 1 0 1 1 0-2zm-81-14h14a1 1 0 1 1 0 2h-14a1 1 0 1 1 0-2zm-5 3a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm110 14a2 2 0 1 1 0-4 2 2 0 0 1 0 4zm-111 57h26a1 1 0 1 1 0 2h-26a1 1 0 1 1 0-2zm106 0h8a1 1 0 1 1 0 2h-8a1 1 0 1 1 0-2zm-63-41h46a1 1 0 1 1 0 2h-46a1 1 0 1 1 0-2zm-10 6h66a1 1 0 1 1 0 2h-66a1 1 0 1 1 0-2zm10 4h46a1 1 0 1 1 0 2h-46a1 1 0 1 1 0-2zm17 6h12a4 4 0 1 1 0 8h-12a4 4 0 1 1 0-8zm0 2a2 2 0 0 0 0 4h12a2 2 0 0 0 0-4h-12z'/%3E%3C/g%3E%3C/svg%3E"); -} - -.table-collapse { - border-collapse: collapse; -} - -.placeholder-grey-dark::placeholder { - @apply .text-grey-dark; -} - -[v-cloak] .v-cloak-hidden { - display: none; -} diff --git a/docs/source/_assets/less/markdown.less b/docs/source/_assets/less/markdown.less deleted file mode 100644 index 55813fd912b5..000000000000 --- a/docs/source/_assets/less/markdown.less +++ /dev/null @@ -1,136 +0,0 @@ -.markdown { - .subnav, .subnav& { - @apply .flex; - @apply .mt-6; - @apply .mb-6; - @apply .pb-2; - @apply .border-b-2; - @apply .border-grey-light; - - .subnav-link, .subnav-link& { - @apply .mr-6; - @apply .leading-none; - @apply .text-grey-darkest; - @apply .text-sm; - } - } - - > hr { - @apply .my-12; - @apply .border-t-0 .border-r-0 .border-l-0; - @apply .border-b .border-grey-light; - } - - > a, > p a, a& { - @apply .text-blue; - &:hover { - @apply .underline; - } - } - - > p code, > ul li code, p& code& { - @apply .inline-block; - @apply .bg-grey-lightest; - @apply .rounded-sm; - @apply .text-sm; - @apply .p-1; - @apply .leading-none; - @apply .whitespace-no-wrap; - @apply .text-purple; - @apply .font-mono; - @apply .align-baseline; - font-weight: 400; - } - - > pre, pre& { - @apply .font-mono; - @apply .border-2; - @apply .border-grey-light; - @apply .rounded; - font-weight: 400; - } - - > blockquote, blockquote& { - @apply .italic; - @apply .text-grey-darkest; - @apply .text-sm; - } - - > h1, h1& { - @apply .mb-1; - @apply .leading-none; - @apply .text-black; - @apply .font-semibold; - @apply .text-4xl; - } - - > h2, h2& { - @apply .mt-12; - @apply .mb-4; - @apply .text-black; - @apply .leading-none; - @apply .font-semibold; - @apply .text-2xl; - } - - > h3, h3& { - @apply .mt-12; - @apply .mb-4; - @apply .text-black; - @apply .leading-none; - @apply .font-semibold; - @apply .text-xl; - } - - > h4, h4& { - @apply .mt-8; - @apply .mb-0; - @apply .text-black; - @apply .leading-none; - @apply .font-semibold; - @apply .text-base; - } - - > h1 + p { - @apply .mt-8; - } - - > h1 > code, - > h2 > code, - > h3 > code, - > h4 > code { - @apply .font-mono; - } - - > p, p&, > blockquote > p { - @apply .text-grey-darkest; - @apply .mt-4; - @apply .mb-4; - line-height: 1.75; - } - - > ul, > ol { - @apply .text-grey-darkest; - @apply .m-0; - @apply .mb-4; - } - - > ul { - list-style: disc inside; - } - - > ol { - list-style: decimal inside; - } - - > li { - @apply .my-2; - @apply .text-grey-darkest; - } - - > :not(pre):not(h1):not(h2):not(h3):not(h4) > code, > pre, pre& { - @apply .bg-grey-lightest; - @apply .text-sm; - @apply .leading-normal; - } -} diff --git a/docs/source/_assets/less/prism.less b/docs/source/_assets/less/prism.less deleted file mode 100644 index a918e4c91eef..000000000000 --- a/docs/source/_assets/less/prism.less +++ /dev/null @@ -1,154 +0,0 @@ -/* http://prismjs.com/download.html?themes=prism&languages=markup+css+clike+javascript */ -/** - * prism.js default theme for JavaScript, CSS and HTML - * Based on dabblet (http://dabblet.com) - * @author Lea Verou - */ - -code[class*="language-"], -pre[class*="language-"] { - @apply .font-mono; - @apply .text-grey-darkest; - - background: none; - text-align: left; - white-space: pre; - word-spacing: normal; - word-break: normal; - word-wrap: normal; - line-height: 1.5; - - -moz-tab-size: 4; - -o-tab-size: 4; - tab-size: 4; - - -webkit-hyphens: none; - -moz-hyphens: none; - -ms-hyphens: none; - hyphens: none; - - font-weight: 400; -} - -pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection, -code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection { - text-shadow: none; - background: #b3d4fc; -} - -pre[class*="language-"]::selection, pre[class*="language-"] ::selection, -code[class*="language-"]::selection, code[class*="language-"] ::selection { - text-shadow: none; - background: #b3d4fc; -} - -@media print { - code[class*="language-"], - pre[class*="language-"] { - text-shadow: none; - } -} - -/* Code blocks */ -pre { - padding: 1em; - margin: .5em 0; - overflow: auto; -} - -:not(pre) > code[class*="language-"], -pre[class*="language-"] { - background: transparent; - @apply .text-sm; -} - -/* Inline code */ -:not(pre) > code[class*="language-"] { - padding: .1em; - border-radius: .3em; - white-space: normal; -} - -.token.comment, -.token.prolog, -.token.doctype, -.token.cdata { - @apply .text-grey-dark; -} - -.token.punctuation { - @apply .text-blue-dark; - // color: #999; -} - -.namespace { - opacity: .7; -} - -.token.property, -.token.tag, -.token.boolean, -.token.number, -.token.constant, -.token.symbol { - @apply .text-blue-dark; -} - -code.language-diff, pre.language-diff { - @apply .text-grey-darker; -} - -.token.deleted { - @apply .text-grey; -} - -.token.inserted { - @apply .text-blue-dark; -} - -// .token.selector, -// .token.attr-name, -// .token.char, -// .token.builtin, -// .token.inserted, -.token.string { - @apply .text-purple; -} - -.token.operator, -.token.entity, -.token.url, -.language-css .token.string, -.style .token.string { - color: #a67f59; - background: hsla(0, 0%, 100%, .5); -} - -.token.atrule, -.token.attr-value, -.token.keyword { - @apply .text-purple; - // color: #07a; -} - -.token.function { - color: #DD4A68; -} - -.token.regex, -.token.important, -.token.variable { - color: #e90; -} - -.token.important, -.token.bold { - font-weight: bold; -} -.token.italic { - font-style: italic; -} - -.token.entity { - cursor: help; -} diff --git a/docs/source/_layouts/documentation.blade.php b/docs/source/_layouts/documentation.blade.php deleted file mode 100644 index 3e11a5028c26..000000000000 --- a/docs/source/_layouts/documentation.blade.php +++ /dev/null @@ -1,140 +0,0 @@ -@extends('_layouts.master') - -@section('meta') - - - - - - - - - - - -@endsection - -@push('headScripts') - -@endpush - -@section('body') -
- -
-
-
- - - - - -
-
-
-
-
-

{{ $page->title }}

- @if ($page->description) -
- {{ $page->description }} -
- @endif - @if ($page->features) - @include('_partials.feature-badges', $page->features->all()) - @endif - @yield('content') -
-
- -
-
-
- - - - - - - - - -@endsection - -@push('scripts') -@if ($page->production) - - - -@endif -@endpush diff --git a/docs/source/_layouts/master.blade.php b/docs/source/_layouts/master.blade.php deleted file mode 100644 index d1f9ca29fdc1..000000000000 --- a/docs/source/_layouts/master.blade.php +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - {{ $page->title ? $page->title . ' - Tailwind CSS' : 'Tailwind CSS - A Utility-First CSS Framework for Rapid UI Development' }} - - @yield('meta') - - - - - @stack('headScripts') - - - -@yield('body') - -@if ($page->production) - - - -@endif - -@stack('scripts') - - - diff --git a/docs/source/_partials/class-table.blade.php b/docs/source/_partials/class-table.blade.php deleted file mode 100644 index 76eb53499ebd..000000000000 --- a/docs/source/_partials/class-table.blade.php +++ /dev/null @@ -1,32 +0,0 @@ -@php - $scroll = isset($scroll) ? $scroll : true; - $scroll = (count($rows) > 10 && ($scroll !== false)); -@endphp - -
-
- - - - - - - - - - @foreach ($rows as $row) - - - - - - @endforeach - -
ClassPropertiesDescription
{!! $row[0] !!}{!! $row[1] !!}{!! $row[2] !!}
-
- @if ($scroll) -
- -
- @endif -
diff --git a/docs/source/_partials/code-sample.blade.php b/docs/source/_partials/code-sample.blade.php deleted file mode 100644 index 3c5925c0b8be..000000000000 --- a/docs/source/_partials/code-sample.blade.php +++ /dev/null @@ -1,8 +0,0 @@ -
-
- {{ $slot }} -
-
-
{{ e($code ?? $slot) }}
-
-
diff --git a/docs/source/_partials/customized-config.blade.php b/docs/source/_partials/customized-config.blade.php deleted file mode 100644 index d5ab3e59303b..000000000000 --- a/docs/source/_partials/customized-config.blade.php +++ /dev/null @@ -1,21 +0,0 @@ -
-
-
{
-
// ...
-
{{ $key }}: {
-
{!! collect(explode("\n", $slot))->map(function ($line) { - if (starts_with($line, '+')) { - return '
+   ' . e(trim(substr($line, 1))) . '
'; - } - if (starts_with($line, '-')) { - return '
-   ' . e(trim(substr($line, 1))) . '
'; - } - if (starts_with($line, '//')) { - return '
    ' . e(trim($line)) . '
'; - } - return '
    ' . e(trim($line)) . '
'; - })->implode("\n") !!}
-
}
-
}
-
-
diff --git a/docs/source/_partials/feature-badges.blade.php b/docs/source/_partials/feature-badges.blade.php deleted file mode 100644 index 3e16ab376a4d..000000000000 --- a/docs/source/_partials/feature-badges.blade.php +++ /dev/null @@ -1,67 +0,0 @@ -
-
- @if ($responsive) - - - - - Responsive - - @else - - - - - Responsive - - @endif - - @if ($customizable) - - - - - Customizable - - @else - - - - - Customizable - - @endif - - @if ($hover) - - - - - Hover - - @else - - - - - Hover - - @endif - - @if ($focus) - - - - - Focus - - @else - - - - - Focus - - @endif -
-
diff --git a/docs/source/_partials/responsive-code-sample.blade.php b/docs/source/_partials/responsive-code-sample.blade.php deleted file mode 100644 index 88b44c632a47..000000000000 --- a/docs/source/_partials/responsive-code-sample.blade.php +++ /dev/null @@ -1,9 +0,0 @@ -
- -
{{ $none }}
-
{{ $sm }}
-
{{ $md }}
-
{{ $lg }}
-
{{ $xl }}
-
-
diff --git a/docs/source/_partials/variants-and-disabling.blade.php b/docs/source/_partials/variants-and-disabling.blade.php deleted file mode 100644 index daaa785b08de..000000000000 --- a/docs/source/_partials/variants-and-disabling.blade.php +++ /dev/null @@ -1,49 +0,0 @@ -@php - $whichVariants = "only $variants[0]"; - for ($i = 1; $i < count($variants); $i++) { - $whichVariants .= (($i == count($variants) - 1) ? ' and ' : ', ') . $variants[$i]; - } - - $currentVariants = '\'' . collect($variants)->implode('\', \'') . '\''; - - $extraVariants = collect([ - 'responsive', - 'hover', - 'focus', - 'group-hover', - ])->diff($variants) - ->take(3 - count($variants)) - ->implode(' and '); -@endphp - -

Responsive, Hover, and Focus Variants

- -

By default, {{ $whichVariants }} variants are generated for {{ $utility['name'] }} utilities.

- -

You can control which variants are generated for the {{ $utility['name'] }} utilities by modifying the {{ $utility['property'] }} property in the modules section of your Tailwind config file.

- -

For example, this config will also generate {{ $extraVariants }} variants:

- -@component('_partials.customized-config', ['key' => 'modules']) - // ... -- {{ $utility['property'] }}: [{{$currentVariants}}], -+ {{ $utility['property'] }}: ['responsive', 'hover', 'focus'], -@endcomponent - -@isset($extraMessage) -

{!! $extraMessage !!}

-@endif - -

Disabling

- -

If you don't plan to use the {{ $utility['name'] }} utilities in your project, you can disable them entirely by setting the {{ $utility['property'] }} property to false in the modules section of your config file:

- -@component('_partials.customized-config', ['key' => 'modules']) - // ... -- {{ $utility['property'] }}: [{{$currentVariants}}], -+ {{ $utility['property'] }}: false, -@endcomponent - -@isset($extraMessage) -

{!! $extraMessage !!}

-@endif diff --git a/docs/source/_partials/work-in-progress-example.blade.php b/docs/source/_partials/work-in-progress-example.blade.php deleted file mode 100644 index b361e0a3420c..000000000000 --- a/docs/source/_partials/work-in-progress-example.blade.php +++ /dev/null @@ -1,13 +0,0 @@ -
-
-
-
- -
-
-

Work in progress!

-

More detailed examples are coming soon.

-
-
-
-
diff --git a/docs/source/_partials/work-in-progress.blade.php b/docs/source/_partials/work-in-progress.blade.php deleted file mode 100644 index 5ebf747380f8..000000000000 --- a/docs/source/_partials/work-in-progress.blade.php +++ /dev/null @@ -1,11 +0,0 @@ -
-
-
- -
-
-

Work in progress!

-

More detailed documentation is coming soon, but in the meantime here's a quick class reference.

-
-
-
diff --git a/docs/source/android-chrome-192x192.png b/docs/source/android-chrome-192x192.png deleted file mode 100644 index f20ceba42d1939a03d3321159d0a3e01f8332e07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12724 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 diff --git a/docs/source/apple-touch-icon.png b/docs/source/apple-touch-icon.png deleted file mode 100644 index dd1e4a94cb1fa24b9710204d7e67db72602d7631..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6180 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 diff --git a/docs/source/browserconfig.xml b/docs/source/browserconfig.xml deleted file mode 100644 index 5aecc916b9ee..000000000000 --- a/docs/source/browserconfig.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - #00aba9 - - - diff --git a/docs/source/docs/adding-new-utilities.blade.md b/docs/source/docs/adding-new-utilities.blade.md deleted file mode 100644 index 61cda03d9178..000000000000 --- a/docs/source/docs/adding-new-utilities.blade.md +++ /dev/null @@ -1,141 +0,0 @@ ---- -extends: _layouts.documentation -title: "Adding New Utilities" -description: null ---- - -Although Tailwind provides a pretty comprehensive set of utility classes out of the box, you're inevitably going to run into situations where you need to add a few of your own. - -Deciding on the best way to extend a framework can be paralyzing, so here's some best practices and tools to help you add your own utilities "the Tailwind way." - -## CSS Structure - -A bare-bones Tailwind setup is a single CSS file that looks like this: - -```less -@@tailwind preflight; - -@@tailwind utilities; -``` - -In CSS, **the order of your rule definitions is extremely important**. - -If two rules have the same [specificity](https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity), the rule defined *last* is the rule that is applied. - -For example, given the following CSS: - -```less -.bg-red { - background: #ff0000; -} - -.bg-green { - background-color: #00ff00; -} -``` - -...and the following HTML: - -```html -
-``` - -...the `div` would be green, because `.bg-green` is defined *after* `.bg-red` in the CSS file. - -For this reason, **we recommend defining any custom utility classes at the end of your stylesheet,** *after* you inject Tailwind's utility classes: - -```less -@@tailwind preflight; - -@@tailwind utilities; - -.bg-cover-image { - background-image: url('/path/to/image.jpg'); -} -``` - -This way your custom utilities can override Tailwind utilities if needed, although you should strive to avoid applying two utility classes to an element that target the same CSS property if at all possible. - -If you're using a preprocessor like Less, Sass, or Stylus, consider keeping your utilities in a separate file and importing them: - -```less -@@tailwind preflight; - -@@tailwind utilities; - -@@import "custom-utilities"; -``` - -## Making custom utilities responsive - -If you'd like to create responsive versions of your own utilities based on the breakpoints defined in your Tailwind config file, wrap your utilities in the `@responsive { ... }` directive: - -```less -@@tailwind preflight; - -@@tailwind utilities; - -@@responsive { - .bg-cover-image { - background-image: url('/path/to/image.jpg'); - } -} -``` - -Tailwind will intelligently group the responsive versions into its existing media queries which are output at the very end of the stylesheet. This ensures that any responsive utilities will always take precedence over unprefixed utilities. - -The above code would generate CSS that looks something like this: - -```css -/* Preflight styles rendered here... */ -html { ... } -/* ... */ - -/* Tailwind utilities rendered here... */ -.bg-red { ... } -/* ... */ - -.bg-cover-image { - background-image: url('/path/to/image.jpg'); -} - -@media (min-width: 576px) { - /* Tailwind utilities rendered here... */ - .sm\:bg-red { ... } - /* ... */ - - .sm\:bg-cover-image { - background-image: url('/path/to/image.jpg'); - } -} - -@media (min-width: 768px) { - /* Tailwind utilities rendered here... */ - .md\:bg-red { ... } - /* ... */ - - .md\:bg-cover-image { - background-image: url('/path/to/image.jpg'); - } -} - -@media (min-width: 992px) { - /* Tailwind utilities rendered here... */ - .lg\:bg-red { ... } - /* ... */ - - .lg\:bg-cover-image { - background-image: url('/path/to/image.jpg'); - } -} - -@media (min-width: 1200px) { - /* Tailwind utilities rendered here... */ - .xl\:bg-red { ... } - /* ... */ - - .xl\:bg-cover-image { - background-image: url('/path/to/image.jpg'); - } -} -``` diff --git a/docs/source/docs/background-attachment.blade.md b/docs/source/docs/background-attachment.blade.md deleted file mode 100644 index 60708655f437..000000000000 --- a/docs/source/docs/background-attachment.blade.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -extends: _layouts.documentation -title: "Background Attachment" -description: "Utilities for controlling how a background image behaves when scrolling." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.bg-fixed', - 'background-attachment: fixed;', - 'Fix the background image relative to the viewport.', - ], - [ - '.bg-local', - 'background-attachment: local;', - 'Scroll the background image with the container and the viewport.', - ], - [ - '.bg-scroll', - 'background-attachment: scroll;', - 'Scroll the background image with the viewport but not with the container.', - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'background attachment', - 'property' => 'backgroundAttachment', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/background-color.blade.md b/docs/source/docs/background-color.blade.md deleted file mode 100644 index 2ea73bdceef7..000000000000 --- a/docs/source/docs/background-color.blade.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -extends: _layouts.documentation -title: "Background Color" -description: "Utilities for controlling an element's background color." -features: - responsive: true - customizable: true - hover: true - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => $page->config['colors']->map(function ($value, $name) { - $class = ".bg-{$name}"; - $code = "background-color: {$value};"; - $color = implode(' ', array_reverse(explode('-', $name))); - $description = "Set the background color of an element to {$color}."; - return [ - $class, - $code, - $description, - ]; - })->values()->all() -]) - -## Hover - -In addition to the standard responsive variations, background colors also come in `hover:` variations that apply the given background color on hover. - -@component('_partials.code-sample') -
- Hover over this element -
-@endcomponent - -Hover utilities can also be combined with responsive utilities by adding the responsive `{screen}:` prefix *before* the `hover:` prefix. - -```html - -``` - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'background color', - 'property' => 'backgroundColors', - ], - 'variants' => [ - 'responsive', - 'hover', - ], -]) diff --git a/docs/source/docs/background-position.blade.md b/docs/source/docs/background-position.blade.md deleted file mode 100644 index 5b171bc6d91e..000000000000 --- a/docs/source/docs/background-position.blade.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -extends: _layouts.documentation -title: "Background Position" -description: "Utilities for controlling the position of an element's background image." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.bg-bottom', - 'background-position: bottom;', - 'Place the background image on the bottom edge.', - ], - [ - '.bg-center', - 'background-position: center;', - 'Place the background image in the center.', - ], - [ - '.bg-left', - 'background-position: left;', - 'Place the background image on the left edge.', - ], - [ - '.bg-left-bottom', - 'background-position: left bottom;', - 'Place the background image on the left bottom edge.', - ], - [ - '.bg-left-top', - 'background-position: left top;', - 'Place the background image on the left top edge.', - ], - [ - '.bg-right', - 'background-position: right;', - 'Place the background image on the right edge.', - ], - [ - '.bg-right-bottom', - 'background-position: right bottom;', - 'Place the background image on the right bottom edge.', - ], - [ - '.bg-right-top', - 'background-position: right top;', - 'Place the background image on the right top edge.', - ], - [ - '.bg-top', - 'background-position: top;', - 'Place the background image on the top edge.', - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'background position', - 'property' => 'backgroundPosition', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/background-repeat.blade.md b/docs/source/docs/background-repeat.blade.md deleted file mode 100644 index ac7994e2a8ad..000000000000 --- a/docs/source/docs/background-repeat.blade.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -extends: _layouts.documentation -title: "Background Repeat" -description: "Utilities for controlling the repetition of an element's background image." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.bg-repeat', - 'background-repeat: repeat;', - 'Repeat the background image both vertically and horizontally.', - ], - [ - '.bg-no-repeat', - 'background-repeat: no-repeat;', - 'Don\'t repeat the background image.', - ], - [ - '.bg-repeat-x', - 'background-repeat: repeat-x;', - 'Repeat the background image only horizontally.', - ], - [ - '.bg-repeat-y', - 'background-repeat: repeat-y;', - 'Repeat the background image only vertically.', - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'background repeat', - 'property' => 'backgroundRepeat', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/background-size.blade.md b/docs/source/docs/background-size.blade.md deleted file mode 100644 index 3f81cf40ad72..000000000000 --- a/docs/source/docs/background-size.blade.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -extends: _layouts.documentation -title: "Background Size" -description: "Utilities for controlling the background size of an element's background image." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.bg-cover', - 'background-size: cover;', - "Scale the image until it fills the background layer.", - ], - [ - '.bg-contain', - 'background-size: contain;', - "Scale the image to the outer edges without cropping or stretching.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'background size', - 'property' => 'backgroundSize', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/border-color.blade.md b/docs/source/docs/border-color.blade.md deleted file mode 100644 index 8bc4f16e1f88..000000000000 --- a/docs/source/docs/border-color.blade.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -extends: _layouts.documentation -title: "Border Color" -description: "Utilities for controlling the color of an element's borders." -features: - responsive: true - customizable: true - hover: true - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => $page->config['colors']->map(function ($value, $name) { - $class = ".border-{$name}"; - $code = "border-color: {$value};"; - $color = implode(' ', array_reverse(explode('-', $name))); - $description = "Set the border color of an element to {$color}."; - return [ - $class, - $code, - $description, - ]; - })->values()->all() -]) - -## Hover - -In addition to the standard responsive variations, border colors also come in `hover:` variations that apply the given border color on hover. - -@component('_partials.code-sample', ['class' => 'text-center']) - -@endcomponent - -Hover utilities can also be combined with responsive utilities by adding the responsive `{screen}:` prefix *before* the `hover:` prefix. - -```html - -``` - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'border color', - 'property' => 'borderColors', - ], - 'variants' => [ - 'responsive', - 'hover', - ], -]) diff --git a/docs/source/docs/border-radius.blade.md b/docs/source/docs/border-radius.blade.md deleted file mode 100644 index 4cd4fc28e4fb..000000000000 --- a/docs/source/docs/border-radius.blade.md +++ /dev/null @@ -1,378 +0,0 @@ ---- -extends: _layouts.documentation -title: "Border Radius" -description: "Utilities for controlling the border radius of an element." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.rounded-none', - 'border-radius: 0;', - "Remove any border radius from all corners of an element.", - ], - [ - '.rounded-sm', - 'border-radius: .125rem;', - "Apply a small border radius to all corners of an element.", - ], - [ - '.rounded', - 'border-radius: .25rem;', - "Apply the default border radius to all corners of an element.", - ], - [ - '.rounded-lg', - 'border-radius: .5rem;', - "Apply a large border radius to all corners of an element.", - ], - [ - '.rounded-full', - 'border-radius: 9999px;', - "Fully round all corners of an element.", - ], - [ - '.rounded-t-none', - "border-top-left-radius: 0;\nborder-top-right-radius: 0;", - "Remove any border radius from the top corners of an element.", - ], - [ - '.rounded-r-none', - "border-top-right-radius: 0;\nborder-bottom-right-radius: 0;", - "Remove any border radius from the right corners of an element.", - ], - [ - '.rounded-b-none', - "border-bottom-right-radius: 0;\nborder-bottom-left-radius: 0;", - "Remove any border radius from the bottom corners of an element.", - ], - [ - '.rounded-l-none', - "border-top-left-radius: 0;\nborder-bottom-left-radius: 0;", - "Remove any border radius from the left corners of an element.", - ], - [ - '.rounded-t-sm', - "border-top-left-radius: .125rem;\nborder-top-right-radius: .125rem;", - "Apply a small border radius to the top corners of an element.", - ], - [ - '.rounded-r-sm', - "border-top-right-radius: .125rem;\nborder-bottom-right-radius: .125rem;", - "Apply a small border radius to the right corners of an element.", - ], - [ - '.rounded-b-sm', - "border-bottom-right-radius: .125rem;\nborder-bottom-left-radius: .125rem;", - "Apply a small border radius to the bottom corners of an element.", - ], - [ - '.rounded-l-sm', - "border-top-left-radius: .125rem;\nborder-bottom-left-radius: .125rem;", - "Apply a small border radius to the left corners of an element.", - ], - [ - '.rounded-t', - "border-top-left-radius: .25rem;\nborder-top-right-radius: .25rem;", - "Apply the default border radius to the top corners of an element.", - ], - [ - '.rounded-r', - "border-top-right-radius: .25rem;\nborder-bottom-right-radius: .25rem;", - "Apply the default border radius to the right corners of an element.", - ], - [ - '.rounded-b', - "border-bottom-right-radius: .25rem;\nborder-bottom-left-radius: .25rem;", - "Apply the default border radius to the bottom corners of an element.", - ], - [ - '.rounded-l', - "border-top-left-radius: .25rem;\nborder-bottom-left-radius: .25rem;", - "Apply the default border radius to the left corners of an element.", - ], - [ - '.rounded-t-lg', - "border-top-left-radius: .5rem;\nborder-top-right-radius: .5rem;", - "Apply a large border radius to the top corners of an element.", - ], - [ - '.rounded-r-lg', - "border-top-right-radius: .5rem;\nborder-bottom-right-radius: .5rem;", - "Apply a large border radius to the right corners of an element.", - ], - [ - '.rounded-b-lg', - "border-bottom-right-radius: .5rem;\nborder-bottom-left-radius: .5rem;", - "Apply a large border radius to the bottom corners of an element.", - ], - [ - '.rounded-l-lg', - "border-top-left-radius: .5rem;\nborder-bottom-left-radius: .5rem;", - "Apply a large border radius to the left corners of an element.", - ], - [ - '.rounded-t-full', - "border-top-left-radius: 9999px;\nborder-top-right-radius: 9999px;", - "Fully round the top corners of an element.", - ], - [ - '.rounded-r-full', - "border-top-right-radius: 9999px;\nborder-bottom-right-radius: 9999px;", - "Fully round the right corners of an element.", - ], - [ - '.rounded-b-full', - "border-bottom-right-radius: 9999px;\nborder-bottom-left-radius: 9999px;", - "Fully round the bottom corners of an element.", - ], - [ - '.rounded-l-full', - "border-top-left-radius: 9999px;\nborder-bottom-left-radius: 9999px;", - "Fully round the left corners of an element.", - ], - [ - '.rounded-tl-none', - 'border-top-left-radius: 0;', - "Remove any border radius from the top left corner of an element.", - ], - [ - '.rounded-tr-none', - 'border-top-right-radius: 0;', - "Remove any border radius from the top right corner of an element.", - ], - [ - '.rounded-br-none', - 'border-bottom-right-radius: 0;', - "Remove any border radius from the bottom right corner of an element.", - ], - [ - '.rounded-bl-none', - 'border-bottom-left-radius: 0;', - "Remove any border radius from the bottom left corner of an element.", - ], - [ - '.rounded-tl-sm', - 'border-top-left-radius: .125rem;', - "Apply a small border radius to the top left corner of an element.", - ], - [ - '.rounded-tr-sm', - 'border-top-right-radius: .125rem;', - "Apply a small border radius to the top right corner of an element.", - ], - [ - '.rounded-br-sm', - 'border-bottom-right-radius: .125rem;', - "Apply a small border radius to the bottom right corner of an element.", - ], - [ - '.rounded-bl-sm', - 'border-bottom-left-radius: .125rem;', - "Apply a small border radius to the bottom left corner of an element.", - ], - [ - '.rounded-tl', - 'border-top-left-radius: .25rem;', - "Apply the default border radius to the top left corner of an element.", - ], - [ - '.rounded-tr', - 'border-top-right-radius: .25rem;', - "Apply the default border radius to the top right corner of an element.", - ], - [ - '.rounded-br', - 'border-bottom-right-radius: .25rem;', - "Apply the default border radius to the bottom right corner of an element.", - ], - [ - '.rounded-bl', - 'border-bottom-left-radius: .25rem;', - "Apply the default border radius to the bottom left corner of an element.", - ], - [ - '.rounded-tl-lg', - 'border-top-left-radius: .5rem;', - "Apply a large border radius to the top left corner of an element.", - ], - [ - '.rounded-tr-lg', - 'border-top-right-radius: .5rem;', - "Apply a large border radius to the top right corner of an element.", - ], - [ - '.rounded-br-lg', - 'border-bottom-right-radius: .5rem;', - "Apply a large border radius to the bottom right corner of an element.", - ], - [ - '.rounded-bl-lg', - 'border-bottom-left-radius: .5rem;', - "Apply a large border radius to the bottom left corner of an element.", - ], - [ - '.rounded-tl-full', - 'border-top-left-radius: 9999px;', - "Fully round the top left corner of an element.", - ], - [ - '.rounded-tr-full', - 'border-top-right-radius: 9999px;', - "Fully round the top right corner of an element.", - ], - [ - '.rounded-br-full', - 'border-bottom-right-radius: 9999px;', - "Fully round the bottom right corner of an element.", - ], - [ - '.rounded-bl-full', - 'border-bottom-left-radius: 9999px;', - "Fully round the bottom left corner of an element.", - ], - ] -]) - -## Rounded corners - -Use the `.rounded-sm`, `.rounded`, or `.rounded-lg` utilities to apply different border radius sizes to an element. - -@component('_partials.code-sample', ['class' => 'flex justify-around text-sm']) -
.rounded-sm
-
.rounded
-
.rounded-lg
-@slot('code') -
-
-
-@endslot -@endcomponent - -## Pills and circles - -Use the `.rounded-full` utility to create pills and circles. - -@component('_partials.code-sample', ['class' => 'flex items-center justify-around text-sm']) -
Pill shape
-
Circle
-@slot('code') -
Pill shape
-
Circle
-@endslot -@endcomponent - -## No rounding - -Use `.rounded-none` to remove an existing border radius from an element. - -This is most commonly used to remove a border radius that was applied at a smaller breakpoint. - -@component('_partials.code-sample', ['class' => 'flex justify-around text-sm py-8']) -
.rounded-none
-@slot('code') -
-@endslot -@endcomponent - -## Rounding sides separately - -Use `.rounded-{t|r|b|l}{-size?}` to only round one side an element. - -@component('_partials.code-sample', ['class' => 'flex justify-around text-sm']) -
.rounded-t-lg
-
.rounded-r-lg
-
.rounded-b-lg
-
.rounded-l-lg
-@slot('code') -
-
-
-
-@endslot -@endcomponent - -## Rounding corners separately - -Use `.rounded-{tl|tr|br|bl}{-size?}` to only round one corner an element. - -@component('_partials.code-sample', ['class' => 'flex justify-around text-sm']) -
.rounded-tl-lg
-
.rounded-tr-lg
-
.rounded-br-lg
-
.rounded-bl-lg
-@slot('code') -
-
-
-
-@endslot -@endcomponent - -## Responsive - -To control the border radius of an element at a specific breakpoint, add a `{screen}:` prefix to any existing border radius utility. For example, use `md:rounded-lg` to apply the `rounded-lg` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
-
-@endslot -@slot('sm') -
-
-
-@endslot -@slot('md') -
-
-
-@endslot -@slot('lg') -
-
-
-@endslot -@slot('xl') -
-
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -## Customizing - -By default Tailwind provides five border radius size utilities. You can change, add, or remove these by editing the `borderRadius` section of your Tailwind config. - -@component('_partials.customized-config', ['key' => 'borderRadius']) - 'none': '0', -- 'sm': '.125rem', -- default: '.25rem', -+ default: '4px', -- 'lg': '.5rem', -- 'full': '9999px', -+ 'large': '12px', -@endcomponent - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'border radius', - 'property' => 'borderRadius', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/border-style.blade.md b/docs/source/docs/border-style.blade.md deleted file mode 100644 index a37b2c5ef610..000000000000 --- a/docs/source/docs/border-style.blade.md +++ /dev/null @@ -1,50 +0,0 @@ ---- -extends: _layouts.documentation -title: "Border Style" -description: "Utilities for controlling the style of an element's borders." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.border-solid', - 'border-style: solid;', - "Sets the border style on an element to solid.", - ], - [ - '.border-dashed', - 'border-style: dashed;', - "Sets the border style on an element to dashed.", - ], - [ - '.border-dotted', - 'border-style: dotted;', - "Sets the border style on an element to dotted.", - ], - [ - '.border-none', - 'border-style: none;', - "Disables the border on an element.", - ], - ] -]) - - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'border style', - 'property' => 'borderStyle', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/border-width.blade.md b/docs/source/docs/border-width.blade.md deleted file mode 100644 index d80d257fc076..000000000000 --- a/docs/source/docs/border-width.blade.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -extends: _layouts.documentation -title: "Border Width" -description: "Utilities for controlling the width an element's borders." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -Add borders to any element using the `.border{-side?}{-width?}` syntax. - -For example, `.border` would add a `1px` border to all sides of the element, where `.border-b-4` would add a `4px` border to the bottom of the element. - -
-
-
Class
-
border
-
-
-
Side (optional)
-
  All (default)
-
t Top
-
r Right
-
b Bottom
-
l Left
-
-
-
Width (optional)
-
0 0px
-
  1px (default)
-
2 2px
-
4 4px
-
8 8px
-
-
- -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'border width', - 'property' => 'borderWidths', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/colors.blade.md b/docs/source/docs/colors.blade.md deleted file mode 100644 index f039ea4a139d..000000000000 --- a/docs/source/docs/colors.blade.md +++ /dev/null @@ -1,458 +0,0 @@ ---- -extends: _layouts.documentation -title: "Colors" -description: null ---- - -Developing an organized, consistent and beautiful color palette is critical to the design success of a project. Tailwind provides a fantastic color system that makes this very easy to accomplish. - -## Default color palette - -To get you started, we've provided a generous palette of great looking colors that are perfect for prototyping, or even as a starting point for your color palette. That said, don't hesitate to [customize](#customizing) them for your project. - -
-
-
-
-
Grey
-
- Base - {{ strtoupper($page->config['colors']['grey']) }} -
-
-
- White - {{ strtoupper($page->config['colors']['white']) }} -
-
- Lightest - {{ strtoupper($page->config['colors']['grey-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['grey-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['grey-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['grey']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['grey-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['grey-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['grey-darkest']) }} -
-
- Black - {{ strtoupper($page->config['colors']['black']) }} -
-
-
-
- -
-
-
-
-
Red
-
- Base - {{ strtoupper($page->config['colors']['red']) }} -
-
-
- Lightest - {{ strtoupper($page->config['colors']['red-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['red-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['red-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['red']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['red-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['red-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['red-darkest']) }} -
-
-
-
-
-
-
Orange
-
- Base - {{ strtoupper($page->config['colors']['orange']) }} -
-
-
- Lightest - {{ strtoupper($page->config['colors']['orange-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['orange-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['orange-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['orange']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['orange-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['orange-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['orange-darkest']) }} -
-
-
-
-
-
-
Yellow
-
- Base - {{ strtoupper($page->config['colors']['yellow']) }} -
-
-
- Lightest - {{ strtoupper($page->config['colors']['yellow-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['yellow-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['yellow-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['yellow']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['yellow-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['yellow-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['yellow-darkest']) }} -
-
-
-
-
-
-
Green
-
- Base - {{ strtoupper($page->config['colors']['green']) }} -
-
-
- Lightest - {{ strtoupper($page->config['colors']['green-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['green-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['green-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['green']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['green-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['green-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['green-darkest']) }} -
-
-
-
-
-
-
Teal
-
- Base - {{ strtoupper($page->config['colors']['teal']) }} -
-
-
- Lightest - {{ strtoupper($page->config['colors']['teal-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['teal-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['teal-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['teal']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['teal-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['teal-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['teal-darkest']) }} -
-
-
-
-
-
-
Blue
-
- Base - {{ strtoupper($page->config['colors']['blue']) }} -
-
-
- Lightest - {{ strtoupper($page->config['colors']['blue-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['blue-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['blue-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['blue']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['blue-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['blue-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['blue-darkest']) }} -
-
-
-
-
-
-
Indigo
-
- Base - {{ strtoupper($page->config['colors']['indigo']) }} -
-
-
- Lightest - {{ strtoupper($page->config['colors']['indigo-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['indigo-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['indigo-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['indigo']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['indigo-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['indigo-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['indigo-darkest']) }} -
-
-
-
-
-
-
Purple
-
- Base - {{ strtoupper($page->config['colors']['purple']) }} -
-
-
- Lightest - {{ strtoupper($page->config['colors']['purple-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['purple-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['purple-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['purple']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['purple-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['purple-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['purple-darkest']) }} -
-
-
-
-
-
-
Pink
-
- Base - {{ strtoupper($page->config['colors']['pink']) }} -
-
-
- Lightest - {{ strtoupper($page->config['colors']['pink-lightest']) }} -
-
- Lighter - {{ strtoupper($page->config['colors']['pink-lighter']) }} -
-
- Light - {{ strtoupper($page->config['colors']['pink-light']) }} -
-
- Base - {{ strtoupper($page->config['colors']['pink']) }} -
-
- Dark - {{ strtoupper($page->config['colors']['pink-dark']) }} -
-
- Darker - {{ strtoupper($page->config['colors']['pink-darker']) }} -
-
- Darkest - {{ strtoupper($page->config['colors']['pink-darkest']) }} -
-
-
-
- -## Customizing - -Tailwind makes it a breeze to modify the default color palette for you project. Remember, you own these colors and nothing will break if you change everything about them. - -By default Tailwind defines the entire color palette in a `colors` object at the top of your Tailwind config file. These colors are then assigned to `textColors`, `backgroundColors` and `borderColors`. This approach works well since it provides a consistent naming system across all the utilities. However, you're welcome to modify them independently of one-another as well. - -```js -var colors = { - 'transparent': 'transparent', - - 'black': '#222b2f', - 'grey-darkest': '#364349', - 'grey-darker': '#596a73', - 'grey-dark': '#70818a', - 'grey': '#9babb4', - - // ... -} - -module.exports = { - colors: colors, - textColors: colors, - backgroundColors: colors, - borderColors: Object.assign({ default: colors['grey-light'] }, colors), - - // ... -} -``` - -You'll notice above that the color palette is also assigned to the `colors` key of your Tailwind config. This makes it easy to access them in your custom CSS using the `config()` function. For example: - -```css -.error { color: config('colors.grey-darker') } -``` - -## Naming - -In the default color palette we've used literal color names, like `red`, `green` and `blue`. Another common approach to naming colors is choosing functional names based on how the colors are used, such as `primary`, `secondary`, and `brand`. - -You can also choose different approaches to how you name your color variants. In the default color palette we've again used literal variants, like `light`, `dark`, and `darker`. Another common approach here is to use a numeric scale, like `100`, `200` and `300`. - -You should feel free to choose whatever color naming approach makes the most sense to you. diff --git a/docs/source/docs/configuration.blade.md b/docs/source/docs/configuration.blade.md deleted file mode 100644 index 9e92a8522e79..000000000000 --- a/docs/source/docs/configuration.blade.md +++ /dev/null @@ -1,342 +0,0 @@ ---- -extends: _layouts.documentation -title: "Configuration" -description: "A guide to configuring and customizing your Tailwind installation." ---- - -At the heart of every Tailwind project is a JavaScript configuration file that serves as the home for your project's design system. - -It's where you define your color palette, font stacks, type scale, border sizes, breakpoints, opacity scale, you name it. Your config file is like an executable style guide for your project. - -We provide a sensible default configuration with a very generous set of values to get you started, but you own this file; you're encouraged to change it as much as you need to fit the goals of your design. - -It's important to understand that unlike other CSS frameworks you might have used, **none of the settings in this file are coupled to each other**. Nothing bad will happen even if you completely delete all of the values for a given module. - -## Generating your configuration file - -Generate a Tailwind config file for your project using the Tailwind CLI utility included when you install the `tailwindcss` npm package: - -
-
./node_modules/.bin/tailwind init [filename]
-
- -By default, `tailwind init` will generate a `tailwind.js` config file at the root of your project, but feel free to name this file differently or store it in a different location if you prefer. - -### Default configuration - -Your generated configuration file contains all of Tailwind's default configuration values, ready for you to customize. - -
{!! str_replace('// var defaultConfig', 'var defaultConfig', file_get_contents(dirname(dirname(__DIR__)).'/defaultConfig.stub.js')) !!}
- -## Configuration Sections - -### Colors - -The `colors` property doesn't actually affect your generated CSS on its own, but it's the perfect place to centralize your color palette so you can refer to it in your own CSS using Tailwind's [`config()`](/docs/functions-and-directives#config) function. - -```js -// ... - -var colors = { - 'transparent': 'transparent', - // ... - 'pink-lightest': '#ffebef', -} - -// ... - -module.exports = { - // ... - colors: colors, - // ... -} -``` - -By default, the `colors` property simply references a `colors` variable defined earlier in the file. Using a separate variable for your color palette like this makes it easy to re-use those colors when defining the color palette for individual utilities, like background colors, text colors, or border colors. - -Learn more about defining colors in Tailwind in the [Colors](/docs/colors) documentation. - -### Screens - -The `screens` property is where you define your project's breakpoints, and will be used to generate responsive versions of Tailwind's utility classes. - -```js -// ... - -module.exports = { - // ... - screens: { - 'sm': '576px', - 'md': '768px', - 'lg': '992px', - 'xl': '1200px', - }, - // ... -} -``` - -We provide a familiar set of breakpoints that you might recognize from [Bootstrap](http://getbootstrap.com/docs/4.0/layout/overview/#responsive-breakpoints) to get you started, but you're free to change these as needed to suit your project. - -Learn more about customizing screens in the [Responsive Design](/docs/responsive-design#customizing-screens) documentation. - -### Styles - -The next set of properties define all of the values you'd like to use for utilities that are dynamically generated. - -This includes things like: - -- Background colors -- Border widths -- Font families -- Font weights -- Text sizes -- Padding, margin, and negative margin scales -- Width and height scales - -...and many others. - -For example, here's the section used to customize which border radius utilities will be generated: - -```js -// ... - -module.exports = { - // ... - - /* - |----------------------------------------------------------------------------- - | Border radius https://tailwindcss.com/docs/border-radius - |----------------------------------------------------------------------------- - | - | Here is where you define your border radius values. If a `default` radius - | is provided, it will be made available as the non-suffixed `.rounded` - | utility. - | - | If your scale includes a `0` value to reset already rounded corners, it's - | a good idea to put it first so other values are able to override it. - | - | Class name: .rounded{-side?}{-size?} - | - */ - - borderRadius: { - 'none': '0', - 'sm': '.125rem', - default: '.25rem', - 'lg': '.5rem', - 'full': '9999px', - }, - - // ... -} -``` - -Read through the generated config file or visit the "customizing" documentation for each module to learn more. - -### Modules - -The `modules` property is where you control which modules are generated, and what state variants to generate for each module. - -```js -// ... - -module.exports = { - // ... - - modules: { - appearance: ['responsive'], - backgroundAttachment: ['responsive'], - backgroundColors: ['responsive', 'hover'], - backgroundPosition: ['responsive'], - backgroundRepeat: ['responsive'], - // ... - }, - - // ... -} -``` - -Each property is a module name pointing to an array of state variants to generate for that module. - -The available state variants are: - -- `responsive`, for generating breakpoint-specific versions of those utilities -- `hover`, for generating versions of those utilities that only take effect on hover -- `focus`, for generating versions of those utilities that only take effect on focus -- `group-hover`, for generating versions of those utilities that only take effect when a marked parent element is hovered - -Learn more about state variants in the ["State Variants" documentation](/docs/state-variants). - -To include a module but not generate any state variants, use an empty array: - -```js -// ... - -module.exports = { - // ... - - modules: { - - // Include the `appearance` utilities, but not responsive, - // focus, hover, etc. versions. - appearance: [], - // ... - }, - - // ... -} -``` - -To completely disable a module, set it to `false`: - -```js -// ... - -module.exports = { - // ... - - modules: { - - // Don't include this module at all. - appearance: false, - // ... - }, - - // ... -} -``` - -If a module is missing from your configuration file, the default configuration for that module will be used. - -### Options - -#### Prefix - -The `prefix` option allows you to add a custom prefix to all of Tailwind's generated utility classes. - -This can be really useful when layering Tailwind on top of existing CSS where there might be naming conflicts. - -For example, you could add a `tw-` prefix by setting the `prefix` option like so: - -```js -{ - // ... - options: { - prefix: 'tw-', - // ... - } -} -``` - -It's important to understand that this prefix is added to the beginning of each *utility* name, not to the entire class name. - -That means that classes with responsive or state prefixes like `sm:` or `hover:` will still have the responsive or state prefix *first*, with your custom prefix appearing after the colon: - -```html -
- -
-``` - -Prefixes are only added to standard Tailwind utilities; **no prefix will be added to your own custom utilities.** - -That means if you add your own responsive utility like this: - -```css -@responsive { - .bg-brand-gradient { ... } -} -``` - -...the generated responsive classes will not have your configured prefix: - -```css -.bg-brand-gradient { ... } -@media (min-width: 576px) { - .sm\:bg-brand-gradient { ... } -} -@media (min-width: 768px) { - .md\:bg-brand-gradient { ... } -} -@media (min-width: 992) { - .lg\:bg-brand-gradient { ... } -} -@media (min-width: 1200px) { - .xl\:bg-brand-gradient { ... } -} -``` - -If you'd like to prefix your own utilities as well, just add the prefix to the class definition: - -```css -@responsive { - .tw-bg-brand-gradient { ... } -} -``` - -#### Important - -The `important` option lets you control whether or not Tailwind's utilities should be marked with `!important`. - -This can be really useful when using Tailwind with existing CSS that has high specificity selectors. - -To generate utilities as `!important`, set the `important` key in your configuration options to `true`: - -```js -{ - // ... - options: { - important: true, - // ... - } -} -``` - -Now all of Tailwind's utility classes will be generated as `!important`: - -```css -.leading-none { - line-height: 1 !important; -} -.leading-tight { - line-height: 1.25 !important; -} -.leading-normal { - line-height: 1.5 !important; -} -.leading-loose { - line-height: 2 !important; -} -``` - -Note that any of your own custom utilities **will not** be marked as `!important` just by enabling this option. - -If you'd like to make your own utilities `!important`, just add `!important` to the end of each declaration yourself: - -```css -@responsive { - .bg-brand-gradient { - background-image: linear-gradient(#3490dc, #6574cd) !important; - } -} -``` - -#### Separator - -The `separator` option lets you customize what character or string should be used to separate state variant prefixes (screen sizes, `hover`, `focus`, etc.) from utility names (`text-center`, `items-end`, etc.). - -We use a colon by default (`:`), but it can be useful to change this if you're using a templating language like [Pug](https://pugjs.org) that doesn't support special characters in class names. - -```js -// ... - -module.exports = { - // ... - - options: { - // ... - separator: '_', - }, - -} -``` diff --git a/docs/source/docs/container.blade.md b/docs/source/docs/container.blade.md deleted file mode 100644 index b17f8d169db8..000000000000 --- a/docs/source/docs/container.blade.md +++ /dev/null @@ -1,67 +0,0 @@ ---- -extends: _layouts.documentation -title: "Container" -description: "A component for fixing an element's width to the current breakpoint." ---- - -@include('_partials.work-in-progress') - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassBreakpointProperties
.containerNonewidth: 100%;
sm (576px)max-width: 576px;
md (768px)max-width: 768px;
lg (992px)max-width: 992px;
xl (1200px)max-width: 1200px;
-
- -Tailwind's `.container` class sets the `max-width` of an element to match the `min-width` of the current breakpoint. - -Note that unlike containers you might have used in other frameworks, **Tailwind's container does not center itself automatically and does not contain any built-in horizontal padding.** - -To center a container, use the `.mx-auto` utility: - -```html -
- -
-``` - -To add horizontal padding, use the `.px-{size}` utilities: - -```html -
- -
-``` diff --git a/docs/source/docs/controlling-file-size.blade.md b/docs/source/docs/controlling-file-size.blade.md deleted file mode 100644 index 298401e72944..000000000000 --- a/docs/source/docs/controlling-file-size.blade.md +++ /dev/null @@ -1,209 +0,0 @@ ---- -extends: _layouts.documentation -title: "Controlling File Size" -description: "Strategies for keeping your generated CSS small and performant." ---- - -Using the default configuration, Tailwind CSS comes in at **36.4kb minified and gzipped.** - -Here's a few other popular frameworks for comparison: - -- Bootstrap: 22.1kb -- Bulma: 22.0kb -- Foundation: 16.7kb -- Tachyons: 13.6kb - -By comparison Tailwind seems really heavy *(over 1.5x larger than Bootstrap!)*, but it turns out that this comparison isn't totally fair. - -Tailwind is not a pre-packaged set of styles like a traditional CSS framework. Instead, Tailwind is a tool for generating CSS based on the style guide you define for your own project. - -Because of this, **the generated file size will vary wildly from project to project** depending on your configuration file. - -The default configuration file provides a **very generous** set of colors, breakpoints, sizes, margins, etc. by design. When you pull Tailwind down to prototype something, create a CodePen demo, or just try out the workflow, we want the experience to be as enjoyable and fluid as possible. - -We don't want you to have to go and write new CSS because we didn't provide enough padding helpers out of the box, or because you wanted to use an orange color scheme for your demo and we only gave you blue. - -This comes with a trade-off though: The default Tailwind build is significantly heavier than it would be on a real project with a purpose-built configuration file. - -That said, here are a few strategies you can use to keep your generated CSS small and performant. - -## Limiting your color palette - -The default color palette includes a whopping [73 colors](/docs/colors) to make sure that if you're pulling Tailwind in for a prototype or demo, the color you're looking for is already there. - -These colors are used for background colors, border colors, and text colors, all of which also have `hover:` variants, all of which have responsive variants at the five default screen sizes. - -This means that by default, **there are 2190 classes generated** from this color palette, out of a total 4732 classes in the entire default build. - -Here's how using a smaller color palette affects the overall file size: - -- 73 colors *(default)*: 36.4kb -- 50 colors: 30.4kb -- 25 colors: 18.3kb - -Not only can colors be removed globally, you can also remove them for a specific module. - -For example, maybe you need 25 background colors but only 15 text colors. Instead of assigning your entire `colors` variable to the `textColors` property in your config, assign only the colors you need: - -```js -// ... - -module.exports = { - // ... - - textColors: { - 'black': colors['black'], - 'grey-darker': colors['grey-darker'], - 'grey-dark': colors['grey-dark'], - 'red-dark': colors['red-dark'], - 'red': colors['red'], - 'blue-dark': colors['blue-dark'], - 'blue': colors['blue'], - // ... - } -} - -``` - -Since your config file is just JavaScript, you could even use a function like [`lodash#pick`](https://lodash.com/docs/4.17.4#pick) to make this a little less monotonous: - -```js -// ... - -module.exports = { - // ... - - textColors: _.pick(colors, [ - 'black', - 'grey-darker', - 'grey-dark', - 'red-dark', - 'red', - 'blue-dark', - 'blue', - ]), -} -``` - -## Removing unused breakpoints - -Since every Tailwind utility is copied for every screen size, using fewer screen sizes can have a huge impact on overall file size. - -Here's how defining fewer screens affects the output: - -- 5 screen sizes *(default)*: 36.4kb -- 4 screen sizes: 29.4kb -- 3 screen sizes: 22.4kb -- 2 screen sizes: 15.4kb -- 1 screen size: 8.4kb - -If you only need 3 screen sizes and 35 colors, you're down to 13.4kb without changing anything else. - -## Disabling unused modules and variants - -If you don't expect to need a module at all in your project, you can completely disable it by setting it to `false` in your config file: - -```js -// ... - -module.exports = { - // ... - - modules: { - // ... - float: false, - // ... - }, - - // ... -} -``` - -If you need a module but don't need the responsive versions, set it to an empty array: - -```js -// ... - -module.exports = { - // ... - - modules: { - // ... - appearance: [], - // ... - }, - - // ... -} -``` - -These are mostly small wins compared to limiting your color palette or using fewer breakpoints, but they can still add up. - -## Removing unused CSS with PurgeCSS - -[PurgeCSS](https://github.com/FullHuman/purgecss) is a tool for removing unused CSS from your project. It works by building a list of all of the class names used in your templates, then comparing that against your CSS and removing any CSS rules that you aren't using. - -**Combining it with Tailwind is a match made in heaven.** - -You can have as many colors and breakpoints as you like, generate responsive, hover, and focus variants for every module, and your generated CSS file will never be bigger than absolutely necessary. - -With PurgeCSS, **you'll have a hard time generating CSS that *isn't* under 10kb minified and gzipped.** - -Here's an example of what it might look like to setup with Laravel Mix: - -```js -// Based on https://medium.com/@AndrewDelPrete/using-purifycss-to-remove-unused-tailwind-css-classes-173b3ee8ee01 - -let mix = require("laravel-mix"); -let tailwindcss = require("tailwindcss"); -let glob = require("glob-all"); -let PurgecssPlugin = require("purgecss-webpack-plugin"); - -// Custom PurgeCSS extractor for Tailwind that allows special characters in -// class names. -// -// https://github.com/FullHuman/purgecss#extractor -class TailwindExtractor { - static extract(content) { - return content.match(/[A-z0-9-:\/]+/g) || []; - } -} - -mix.postCss("./src/styles.css", "public/css", [tailwindcss("./tailwind.js")]); - -// Only run PurgeCSS during production builds for faster development builds -// and so you still have the full set of utilities available during -// development. -if (mix.inProduction()) { - mix.webpackConfig({ - plugins: [ - new PurgecssPlugin({ - - // Specify the locations of any files you want to scan for class names. - paths: glob.sync([ - path.join(__dirname, "resources/views/**/*.blade.php"), - path.join(__dirname, "resources/assets/js/**/*.vue") - ]), - extractors: [ - { - extractor: TailwindExtractor, - - // Specify the file extensions to include when scanning for - // class names. - extensions: ["html", "js", "php", "vue"] - } - ] - }) - ] - }); -} -``` - -For more information on working with PurgeCSS, [visit the PurgeCSS documentation](https://github.com/FullHuman/purgecss). - - - - - - - diff --git a/docs/source/docs/cursor.blade.md b/docs/source/docs/cursor.blade.md deleted file mode 100644 index 44c0b9a58413..000000000000 --- a/docs/source/docs/cursor.blade.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -extends: _layouts.documentation -title: "Cursor" -description: "Utilities for controlling the cursor style when hovering over an element." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.cursor-auto', - 'cursor: auto;', - "Set the mouse cursor to the default browser behavior.", - ], - [ - '.cursor-pointer', - 'cursor: pointer;', - "Set the mouse cursor to a pointer and indicate a link.", - ], - [ - '.cursor-not-allowed', - 'cursor: not-allowed;', - "Set the mouse cursor to indicate that the action will not be executed.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'cursor', - 'property' => 'cursor', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/display.blade.md b/docs/source/docs/display.blade.md deleted file mode 100644 index 9364e93581f6..000000000000 --- a/docs/source/docs/display.blade.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -extends: _layouts.documentation -title: "Display" -description: "Utilities for controlling the display box type of an element." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.block', - 'display: block;', - "Set the box type of the element to block.", - ], - [ - '.inline-block', - 'display: inline-block;', - "Set the box type of the element to inline-block.", - ], - [ - '.inline', - 'display: inline;', - "Set the box type of the element to inline.", - ], - [ - '.table', - 'display: table;', - "Set the box type of the element to table.", - ], - [ - '.table-row', - 'display: table-row;', - "Set the box type of the element to table-row.", - ], - [ - '.table-cell', - 'display: table-cell;', - "Set the box type of the element to table-cell.", - ], - [ - '.hidden', - 'display: none;', - "Set the box type of the element to none.", - ], - [ - '.flex', - 'display: flex;', - "Set the box type of the element to flex.", - ], - [ - '.inline-flex', - 'display: inline-flex;', - "Set the box type of the element to inline-flex.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'display', - 'property' => 'display', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/examples/alerts.blade.md b/docs/source/docs/examples/alerts.blade.md deleted file mode 100644 index 0f278c8c6a7e..000000000000 --- a/docs/source/docs/examples/alerts.blade.md +++ /dev/null @@ -1,85 +0,0 @@ ---- -extends: _layouts.documentation -title: "Alerts" -description: Examples of building alert components with Tailwind CSS. ---- - -Tailwind doesn't include pre-designed alert components out of the box, but they're easy to build using existing utilities. - -### Traditional - -@component('_partials.code-sample', ['lang' => 'html']) - -@endcomponent - -### Modern with Badge - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'px-0 py-0']) -
- -
-@endcomponent - -### Left Accent Border - -@component('_partials.code-sample', ['lang' => 'html']) - -@endcomponent - -### Titled - -@component('_partials.code-sample', ['lang' => 'html']) -
-
- Danger -
-
-

Something not ideal might be happening.

-
-
-@endcomponent - -### Solid - -@component('_partials.code-sample', ['lang' => 'html']) - -@endcomponent - -### Top Accent Border - -@component('_partials.code-sample', ['lang' => 'html']) - -@endcomponent - -### Banner - -@component('_partials.code-sample', ['lang' => 'html']) - -@endcomponent diff --git a/docs/source/docs/examples/buttons.blade.md b/docs/source/docs/examples/buttons.blade.md deleted file mode 100644 index 37446e68aaae..000000000000 --- a/docs/source/docs/examples/buttons.blade.md +++ /dev/null @@ -1,109 +0,0 @@ ---- -extends: _layouts.documentation -title: "Buttons" -description: Examples of building buttons with Tailwind CSS. ---- - -Tailwind doesn't include pre-designed button styles out of the box, but they're easy to build using existing utilities. - -### Simple - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - - -@slot('code') - - - - - - - -@endslot -@endcomponent - -### Pill - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - -@endcomponent - -### Outline - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - -@endcomponent - -### Bordered - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - -@endcomponent - -### Disabled - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - -@endcomponent - -### 3D - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - -@endcomponent - -### Elevated - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - -@endcomponent - -### Groups - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) -
- - -
-@endcomponent - -### Icons - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - -@endcomponent diff --git a/docs/source/docs/examples/cards.blade.md b/docs/source/docs/examples/cards.blade.md deleted file mode 100644 index 076cc4ae3a37..000000000000 --- a/docs/source/docs/examples/cards.blade.md +++ /dev/null @@ -1,54 +0,0 @@ ---- -extends: _layouts.documentation -title: "Cards" -description: Examples of building card components with Tailwind CSS. ---- - -Tailwind doesn't include pre-designed card components out of the box, but they're easy to build using existing utilities. - -### Stacked - -@component('_partials.code-sample', ['class' => 'p-10 flex justify-center']) -
- Sunset in the mountains -
-
The Coldest Sunset
-

- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptatibus quia, nulla! Maiores et perferendis eaque, exercitationem praesentium nihil. -

-
-
- #photography - #travel - #winter -
-
-@endcomponent - -### Horizontal - -@component('_partials.code-sample', ['class' => 'p-10 flex justify-center']) -
-
-
-
-
-

- - - - Members only -

-
Can coffee make you a better developer?
-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptatibus quia, nulla! Maiores et perferendis eaque, exercitationem praesentium nihil.

-
-
- Avatar of Jonathan Reinink -
-

Jonathan Reinink

-

Aug 18

-
-
-
-
-@endcomponent diff --git a/docs/source/docs/examples/forms.blade.md b/docs/source/docs/examples/forms.blade.md deleted file mode 100644 index bb4b286cf4da..000000000000 --- a/docs/source/docs/examples/forms.blade.md +++ /dev/null @@ -1,160 +0,0 @@ ---- -extends: _layouts.documentation -title: "Forms" -description: Examples of building forms with Tailwind CSS. ---- - -Tailwind doesn't include purpose-built form control classes out of the box, but form controls are easy to style using existing utilities. - -### Login Form - -@component('_partials.code-sample', ['class' => 'px-3 py-10 bg-grey-lighter flex justify-center']) -
-@endcomponent - -### Inline Form - -@component('_partials.code-sample', ['class' => 'flex justify-center p-8']) -
-
-
- -
-
- -
-
-
-
- -
-
- -
-
-
-
- -
-
-
-
- -
-
-
-@endcomponent - -### Form Grid - -@component('_partials.code-sample', ['class' => 'flex justify-center p-8']) -
-
-
- - -

Please fill out this field.

-
-
- - -
-
-
-
- - -

Make it as long and as crazy as you'd like

-
-
-
-
- - -
-
- -
- -
- -
-
-
-
- - -
-
-
-@endcomponent - -### Underline Form - -@component('_partials.code-sample', ['class' => 'flex justify-center p-8']) -
-
- - - -
-
-@endcomponent diff --git a/docs/source/docs/examples/grids.blade.md b/docs/source/docs/examples/grids.blade.md deleted file mode 100644 index 4d7a41061a29..000000000000 --- a/docs/source/docs/examples/grids.blade.md +++ /dev/null @@ -1,248 +0,0 @@ ---- -extends: _layouts.documentation -title: "Grids" -description: Examples of building grid layouts with Tailwind CSS. ---- - -Tailwind doesn't include purpose-built grid classes out of the box, but grid layouts are simple to build using the existing [Flexbox](/docs/flexbox-display) and [width](/docs/width) utilities. - -### Basic Grids - -Use the existing [Flexbox](/docs/flexbox-display) and [percentage width](/docs/width) utilities to construct basic grids. - -@component('_partials.code-sample', ['lang' => 'html']) - -
-
-
- - -
-
-
-
- - -
-
-
-
-
- - -
-
-
-
-
-
- - -
-
-
-
-
-
-
- - -
-
-
-
-
-
-
-
-@endcomponent - -### Responsive Grids - -Use the responsive variants of the width utilities to build responsive grid layouts. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
-
-
-
-
-
-
-@endslot -@slot('sm') -
-
-
-
-
-
-
-
-@endslot -@slot('md') -
-
-
-
-
-
-
-
-@endslot -@slot('lg') -
-
-
-
-
-
-
-
-@endslot -@slot('xl') -
-
-
-
-
-
-
-
-@endslot -@slot('code') -
-
-
-
-
-
-
-
-@endslot -@endcomponent - -### Mixed Column Sizes - -Mix different percentage width utilities to build mixed size grids. - -@component('_partials.code-sample', ['lang' => 'html']) - -
-
-
-
- - -
-
-
-
-
-@endcomponent - -### Wrapping Columns - -Add `flex-wrap` to your column container to allow columns to wrap when they run out of room. - -@component('_partials.code-sample', ['lang' => 'html']) -
-
-
-
-
-
-
-@endcomponent - -### Column Spacing - -Add a negative horizontal margin like `-mx-2` to your column container and an equal horizontal padding like `px-2` to each column to add gutters. - -To prevent horizontal scrolling in full width layouts, add `overflow-hidden` to another parent container, or compensate for the negative margin with matching horizontal padding. - -@component('_partials.code-sample', ['lang' => 'html']) -
-
-
-
-
-
-
-
-
-
-
-
-
-@endcomponent - -### Automatic Column Widths - -Use `flex-1` instead of an explicit width on your columns to have them size automatically to fill the row. - -@component('_partials.code-sample', ['lang' => 'html']) - -
-
-
- - -
-
-
-
-
-
-
- - -
-
-
-
-
-
-
-
-
- - -
-
-
-
-
-
-
-
-
-
-
-
-
-@endcomponent - -### Column Order - -Use `flex-row-reverse` to reverse column order. Useful for two-column responsive layouts where the column on right should appear first on smaller screens. - -@component('_partials.code-sample', ['lang' => 'html']) -
-
1
-
2
-
-@endcomponent - -### Simple Offsets - -Use auto margin utilities like `ml-auto` and `mr-auto` to offset columns in a row. - -@component('_partials.code-sample', ['lang' => 'html']) -
-
-
-
-@endcomponent diff --git a/docs/source/docs/examples/navigation.blade.md b/docs/source/docs/examples/navigation.blade.md deleted file mode 100644 index 1b298f1df2be..000000000000 --- a/docs/source/docs/examples/navigation.blade.md +++ /dev/null @@ -1,191 +0,0 @@ ---- -extends: _layouts.documentation -title: "Navigation" -description: Examples of building navigation components with Tailwind CSS. ---- - -Tailwind doesn't include pre-designed navigation components out of the box, but they're easy to build using existing utilities. - -### Simple - -@component('_partials.code-sample') - -@endcomponent - -### Responsive Header - -@component('_partials.code-sample') -
-

Collapsed

- -
- -
-

Expanded

- -
- - - -@slot('code') - -@endslot -@endcomponent - -### Tabs - -@component('_partials.code-sample') - -@endcomponent - -### Pills - -@component('_partials.code-sample') - -@endcomponent - -### Stretched - -@component('_partials.code-sample') - -@endcomponent - -### Justified - -@component('_partials.code-sample') - -@endcomponent diff --git a/docs/source/docs/extracting-components.blade.md b/docs/source/docs/extracting-components.blade.md deleted file mode 100644 index ce261fafdec8..000000000000 --- a/docs/source/docs/extracting-components.blade.md +++ /dev/null @@ -1,198 +0,0 @@ ---- -extends: _layouts.documentation -title: "Extracting Components" -description: null ---- - -Tailwind encourages a "utility-first" workflow, where new designs are initially implemented using only utility classes to avoid premature abstraction. - -While we strongly believe you can get a lot further with just utilities than you might initially expect, **we don't believe that a dogmatic utility*-only* approach is the best way to write CSS.** - -For example, using a utility-first approach, implementing a button style early in a project might look something like this: - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - - -@slot('code') - -@endslot -@endcomponent - -If this is the only button in your project, creating a custom component class for it would be premature abstraction; you'd be writing new CSS for no measurable benefit. - -If on the other hand you were reusing this button style in several places, keeping that long list of utility classes in sync across every button instance could become a real maintenance burden. - -## Extracting utility patterns with `@apply` - -When you start to notice repeating patterns of utilities in your markup, it might be worth extracting a component class. - -To make this as easy as possible, Tailwind provides the `@apply` directive for applying the styles of existing utilities to new component classes. - -Here's what a `.btn-blue` class might look like using `@apply` to compose it from existing utilities: - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - - -@slot('code') - - - -@endslot -@endcomponent - -Note that `hover:`, `focus:`, and `{screen}:` utility variants can't be mixed in directly. Instead, apply the plain version of the utility you need to the appropriate pseudo-selector or in a new media query. - -## Keeping things composable - -Say you have these two buttons: - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - - - - -@slot('code') - - - -@endslot -@endcomponent - -It might be tempting to implement component classes for these buttons like this: - -```less -.btn-blue { - @@apply .bg-blue .text-white .font-bold .py-2 .px-4 .rounded; -} -.btn-blue:hover { - @@apply .bg-blue-dark; -} - -.btn-grey { - @@apply .bg-grey-light .text-grey-darkest .font-bold .py-2 .px-4 .rounded; -} -.btn-grey:hover { - @@apply .bg-grey; -} -``` - -The issue with this approach is that **you still have potentially painful duplication.** - -If you wanted to change the padding, font weight, or border radius of all the buttons on your site, you'd need to update every button class. - -A better approach is to extract the parts that are the same into a separate class: - -```less -.btn { - @@apply .font-bold .py-2 .px-4 .rounded; -} - -.btn-blue { - @@apply .bg-blue .text-white; -} -.btn-blue:hover { - @@apply .bg-blue-dark; -} - -.btn-grey { - @@apply .bg-grey-light .text-grey-darkest; -} -.btn-grey:hover { - @@apply .bg-grey; -} -``` - -Now you'd apply two classes any time you needed to style a button: - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - - - - -@slot('code') - - - -@endslot -@endcomponent - -This makes it easy to change the shared styles in one place by just editing the `.btn` class. - -It also allows you to add new one-off button styles without being forced to create a new component class or duplicated the shared styles: - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - - -@slot('code') - -@endslot -@endcomponent - -## CSS Structure - -Since Tailwind's utility classes don't rely on `!important` to defeat other styles, it's important that you add your component classes *before* any utility classes in your CSS. - -Here's an example: - -```less -@@tailwind preflight; - -.btn { - @@apply .font-bold .py-2 .px-4 .rounded; -} -.btn-blue { - @@apply .bg-blue .text-white; -} -.btn-blue:hover { - @@apply .bg-blue-dark; -} - -@@tailwind utilities; -``` - -If you're using a preprocessor like Less or Sass, consider keeping your components in separate files and importing them: - -```less -@@tailwind preflight; - -@@import "components/buttons"; -@@import "components/forms"; -/* Etc. */ - -@@tailwind utilities; -``` diff --git a/docs/source/docs/flexbox-align-content.blade.md b/docs/source/docs/flexbox-align-content.blade.md deleted file mode 100644 index 911c9a3429c0..000000000000 --- a/docs/source/docs/flexbox-align-content.blade.md +++ /dev/null @@ -1,282 +0,0 @@ ---- -extends: _layouts.documentation -title: "Align Content" -description: "Utilities for controlling how lines are positioned in multi-line flex containers." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.content-start', - 'align-content: flex-start;', - "Pack lines against the start of the cross axis.", - ], - [ - '.content-center', - 'align-content: center;', - "Pack lines in the center of the cross axis.", - ], - [ - '.content-end', - 'align-content: flex-end;', - "Pack lines against the end of the cross axis.", - ], - [ - '.content-between', - 'align-content: space-between;', - "Distribute lines along the cross axis by adding an equal amount of space between each line.", - ], - [ - '.content-around', - 'align-content: space-around;', - "Distribute lines along the cross axis by adding an equal amount of space around each line.", - ], - ] -]) - -### Start Default - -Use `.content-start` to pack lines in a flex container against the start of the cross axis: - -@component('_partials.code-sample') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endcomponent - -### Center - -Use `.content-center` to pack lines in a flex container in the center of the cross axis: - -@component('_partials.code-sample') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endcomponent - -### End - -Use `.content-end` to pack lines in a flex container against the end of the cross axis: - -@component('_partials.code-sample') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endcomponent - -### Space between - -Use `.content-between` to distribute lines in a flex container such that there is an equal amount of space between each line: - -@component('_partials.code-sample') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endcomponent - -### Space around - -Use `.content-around` to distribute lines in a flex container such that there is an equal amount of space around each line: - -@component('_partials.code-sample') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endcomponent - -## Responsive - -To control the alignment of flex content at a specific breakpoint, add a `{screen}:` prefix to any existing utility class. For example, use `md:content-around` to apply the `content-around` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endslot -@slot('sm') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endslot -@slot('md') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endslot -@slot('lg') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endslot -@slot('xl') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-
4
-
-
-
5
-
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'align-content', - 'property' => 'flexbox', - ], - 'variants' => [ - 'responsive', - ], - 'extraMessage' => 'Note that modifying the flexbox property will affect which variants are generated for all Flexbox utilities, not just the align-content utilities.' -]) diff --git a/docs/source/docs/flexbox-align-items.blade.md b/docs/source/docs/flexbox-align-items.blade.md deleted file mode 100644 index 5e57cbc0d272..000000000000 --- a/docs/source/docs/flexbox-align-items.blade.md +++ /dev/null @@ -1,162 +0,0 @@ ---- -extends: _layouts.documentation -title: "Align Items" -description: "Utilities for controlling how flex items are positioned along a container's cross axis." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.items-stretch', - 'align-items: stretch;', - "Stretch items to fill the cross axis.", - ], - [ - '.items-start', - 'align-items: flex-start;', - "Align items against the start of the cross axis.", - ], - [ - '.items-center', - 'align-items: center;', - "Align items along the center of the cross axis.", - ], - [ - '.items-end', - 'align-items: flex-end;', - "Align items against the end of the cross axis.", - ], - [ - '.items-baseline', - 'align-items: baseline;', - "Align the baselines of each item.", - ], - ] -]) - -### Stretch Default - -Use `.items-stretch` to stretch items to fill the flex container's cross axis: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Start - -Use `.items-start` to align items to the start of the flex container's cross axis: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Center - -Use `.items-center` to align items along the center of the flex container's cross axis: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### End - -Use `.items-end` to align items to the end of the flex container's cross axis: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Baseline - -Use `.items-baseline` to align items along the flex container's cross axis such that all of their baselines align: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -## Responsive - -To control the alignment of flex items at a specific breakpoint, add a `{screen}:` prefix to any existing utility class. For example, use `md:items-center` to apply the `items-center` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
1
-
2
-
3
-
-@endslot -@slot('sm') -
-
1
-
2
-
3
-
-@endslot -@slot('md') -
-
1
-
2
-
3
-
-@endslot -@slot('lg') -
-
1
-
2
-
3
-
-@endslot -@slot('xl') -
-
1
-
2
-
3
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'align-items', - 'property' => 'flexbox', - ], - 'variants' => [ - 'responsive', - ], - 'extraMessage' => 'Note that modifying the flexbox property will affect which variants are generated for all Flexbox utilities, not just the align-items utilities.' -]) diff --git a/docs/source/docs/flexbox-align-self.blade.md b/docs/source/docs/flexbox-align-self.blade.md deleted file mode 100644 index 6d62577a60cd..000000000000 --- a/docs/source/docs/flexbox-align-self.blade.md +++ /dev/null @@ -1,164 +0,0 @@ ---- -extends: _layouts.documentation -title: "Align Self" -description: "Utilities for controlling how an individual flex item is positioned along its container's cross axis." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.self-auto', - 'align-self: auto;', - "Align item based on the container's align-items property.", - ], - [ - '.self-start', - 'align-self: flex-start;', - "Align item against the start of the cross axis.", - ], - [ - '.self-center', - 'align-self: center;', - "Align item along the center of the cross axis.", - ], - [ - '.self-end', - 'align-self: flex-end;', - "Align item against the end of the cross axis.", - ], - [ - '.self-stretch', - 'align-self: stretch;', - "Stretch item to fill the cross axis.", - ], - ] -]) - -### Auto Default - -Use `.self-auto` to align an item based on the value of the flex container's `align-items` property: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Start - -Use `.self-start` to align an item to the start of the flex container's cross axis, despite the container's `align-items` value: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Center - -Use `.self-center` to align an item along the center of the flex container's cross axis, despite the container's `align-items` value: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### End - -Use `.self-end` to align an item to the end of the flex container's cross axis, despite the container's `align-items` value: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Stretch - -Use `.self-stretch` to stretch an item to fill the flex container's cross axis, despite the container's `align-items` value: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -## Responsive - -To control the alignment of a flex item at a specific breakpoint, add a `{screen}:` prefix to any existing utility class. For example, use `md:self-end` to apply the `self-end` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
1
-
2
-
3
-
-@endslot -@slot('sm') -
-
1
-
2
-
3
-
-@endslot -@slot('md') -
-
1
-
2
-
3
-
-@endslot -@slot('lg') -
-
1
-
2
-
3
-
-@endslot -@slot('xl') -
-
1
-
2
-
3
-
-@endslot -@slot('code') -
- -
2
- -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'align-self', - 'property' => 'flexbox', - ], - 'variants' => [ - 'responsive', - ], - 'extraMessage' => 'Note that modifying the flexbox property will affect which variants are generated for all Flexbox utilities, not just the align-self utilities.' -]) diff --git a/docs/source/docs/flexbox-direction.blade.md b/docs/source/docs/flexbox-direction.blade.md deleted file mode 100644 index 0388046e1f52..000000000000 --- a/docs/source/docs/flexbox-direction.blade.md +++ /dev/null @@ -1,145 +0,0 @@ ---- -extends: _layouts.documentation -title: "Flex Direction" -description: "Utilities for controlling the direction of flex items." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.flex-row', - 'flex-direction: row;', - "Position flex items in the normal horizontal direction.", - ], - [ - '.flex-row-reverse', - 'flex-direction: row-reverse;', - "Position flex items in the reverse horizontal direction.", - ], - [ - '.flex-col', - 'flex-direction: column;', - "Position flex items vertically.", - ], - [ - '.flex-col-reverse', - 'flex-direction: column-reverse;', - "Position flex items vertically in the reverse direction.", - ], - ] -]) - -### Row Default - -Use `.flex-row` to position flex items horizontally in the same direction as text: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Row reversed - -Use `.flex-row-reverse` to position flex items horizontally in the opposite direction: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Column - -Use `.flex-col` to position flex items vertically: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Column reversed - -Use `.flex-col-reverse` to position flex items vertically in the opposite direction: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -## Responsive - -To apply a flex direction utility only at a specific breakpoint, add a `{screen}:` prefix to the existing class name. For example, adding the class `md:flex-row` to an element would apply the `flex-row` utility at medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
1
-
2
-
3
-
-@endslot -@slot('sm') -
-
1
-
2
-
3
-
-@endslot -@slot('md') -
-
1
-
2
-
3
-
-@endslot -@slot('lg') -
-
1
-
2
-
3
-
-@endslot -@slot('xl') -
-
1
-
2
-
3
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'flex-direction', - 'property' => 'flexbox', - ], - 'variants' => [ - 'responsive', - ], - 'extraMessage' => 'Note that modifying the flexbox property will affect which variants are generated for all Flexbox utilities, not just the flex-direction utilities.' -]) diff --git a/docs/source/docs/flexbox-display.blade.md b/docs/source/docs/flexbox-display.blade.md deleted file mode 100644 index 7d008ffc374d..000000000000 --- a/docs/source/docs/flexbox-display.blade.md +++ /dev/null @@ -1,111 +0,0 @@ ---- -extends: _layouts.documentation -title: "Flex Display" -description: "Utilities for creating flex containers." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.flex', - 'display: flex;', - "Create a block-level flex container.", - ], - [ - '.inline-flex', - 'display: inline-flex;', - "Create an inline flex container.", - ], - ] -]) - -## Flex - -Use `.flex` to create a block-level flex container: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -## Inline flex - -Use `.inline-flex` to create an inline flex container: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -## Responsive - -To control the display property of an element at a specific breakpoint, add a `{screen}:` prefix to any existing display utility class. For example, use `md:inline-flex` to apply the `inline-flex` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
1
-
2
-
3
-
-@endslot -@slot('sm') -
-
1
-
2
-
3
-
-@endslot -@slot('md') -
-
1
-
2
-
3
-
-@endslot -@slot('lg') - -@endslot -@slot('xl') -
-
1
-
2
-
3
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'flex display', - 'property' => 'flexbox', - ], - 'variants' => [ - 'responsive', - ], - 'extraMessage' => 'Note that modifying the flexbox property will affect which variants are generated for all Flexbox utilities, not just the display utilities.' -]) diff --git a/docs/source/docs/flexbox-flex-grow-shrink.blade.md b/docs/source/docs/flexbox-flex-grow-shrink.blade.md deleted file mode 100644 index 3b1118c8437e..000000000000 --- a/docs/source/docs/flexbox-flex-grow-shrink.blade.md +++ /dev/null @@ -1,383 +0,0 @@ ---- -extends: _layouts.documentation -title: "Flex, Grow, & Shrink" -description: "Utilities for controlling how flex items grow and shrink." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.flex-initial', - 'flex: initial;', - "Allow a flex item to shrink but not grow, taking into account its initial size.", - ], - [ - '.flex-1', - 'flex: 1;', - "Allow a flex item to grow and shrink as needed, ignoring its initial size.", - ], - [ - '.flex-auto', - 'flex: auto;', - "Allow a flex item to grow and shrink, taking into account its initial size.", - ], - [ - '.flex-none', - 'flex: none;', - "Prevent a flex item from growing or shrinking.", - ], - [ - '.flex-grow', - 'flex-grow: 1;', - "Allow a flex item to grow to fill any available space.", - ], - [ - '.flex-shrink', - 'flex-shrink: 1;', - "Allow a flex item to shrink if needed.", - ], - [ - '.flex-no-grow', - 'flex-grow: 0;', - "Prevent a flex item from growing.", - ], - [ - '.flex-no-shrink', - 'flex-shrink: 0;', - "Prevent a flex item from shrinking.", - ], - ] -]) - -### Initial Default - -Use `.flex-initial` to allow a flex item to shrink but not grow, taking into account its initial size: - -@component('_partials.code-sample') -

Items don't grow when there's extra space

-
-
- Short -
-
- Medium length -
-
- -

Items shrink if possible when needed

-
-
- Short -
-
- Medium length -
-
- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui ad labore ipsam, aut rem quo repellat esse tempore id, quidem -
-
- -@slot('code') -
-
- Short -
-
- Medium length -
-
- -
-
- Short -
-
- Medium length -
-
- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui ad labore ipsam, aut rem quo repellat esse tempore id, quidem -
-
-@endslot -@endcomponent - -### Flex 1 - -Use `.flex-1` to allow a flex item to grow and shrink as needed, ignoring its initial size: - -@component('_partials.code-sample') -

Default behavior

-
-
- Short -
-
- Medium length -
-
- Significantly larger amount of content -
-
-

With .flex-1

-
-
- Short -
-
- Medium length -
-
- Significantly larger amount of content -
-
- -@slot('code') -
-
- Short -
-
- Medium length -
-
- Significantly larger amount of content -
-
-@endslot -@endcomponent - -### Auto - -Use `.flex-auto` to allow a flex item to grow and shrink, taking into account its initial size: - -@component('_partials.code-sample') -

Default behavior

-
-
- Short -
-
- Medium length -
-
- Significantly larger amount of content -
-
-

With .flex-auto

-
-
- Short -
-
- Medium length -
-
- Significantly larger amount of content -
-
- -@slot('code') -
-
- Short -
-
- Medium length -
-
- Significantly larger amount of content -
-
-@endslot -@endcomponent - -### None - -Use `.flex-none` to prevent a flex item from growing or shrinking: - -@component('_partials.code-sample') -
-
- Item that can grow or shrink if needed -
-
- Item that cannot grow or shrink -
-
- Item that can grow or shrink if needed -
-
-@endcomponent - -### Grow - -Use `.flex-grow` to allow a flex item to grow to fill any available space: - -@component('_partials.code-sample') -
-
- Content that cannot flex -
-
- Item that will grow -
-
- Content that cannot flex -
-
-@endcomponent - -### Don't grow - -Use `.flex-no-grow` to prevent a flex item from growing: - -@component('_partials.code-sample') -
-
- Will grow -
-
- Will not grow -
-
- Will grow -
-
-@endcomponent - -### Shrink - -Use `.flex-shrink` to allow a flex item to shrink if needed: - -@component('_partials.code-sample') -
-
- Longer content that cannot flex -
-
- Item that will shrink even if it causes the content to wrap -
-
- Longer content that cannot flex -
-
-@endcomponent - -### Don't shrink - -Use `.flex-no-shrink` to prevent a flex item from shrinking: - -@component('_partials.code-sample') -
-
- Item that can shrink if needed -
-
- Item that cannot shrink below its initial size -
-
- Item that can shrink if needed -
-
-@endcomponent - -## Responsive - -To control how a flex item grows or shrinks at a specific breakpoint, add a `{screen}:` prefix to any existing utility class. For example, use `md:flex-no-shrink` to apply the `flex-no-shrink` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
- Item that can grow or shrink if needed -
-
- Responsive flex item -
-
- Item that can grow or shrink if needed -
-
-@endslot -@slot('sm') -
-
- Item that can grow or shrink if needed -
-
- Responsive flex item -
-
- Item that can grow or shrink if needed -
-
-@endslot -@slot('md') -
-
- Item that can grow or shrink if needed -
-
- Responsive flex item -
-
- Item that can grow or shrink if needed -
-
-@endslot -@slot('lg') -
-
- Item that can grow or shrink if needed -
-
- Responsive flex item -
-
- Item that can grow or shrink if needed -
-
-@endslot -@slot('xl') -
-
- Item that can grow or shrink if needed -
-
- Responsive flex item -
-
- Item that can grow or shrink if needed -
-
-@endslot -@slot('code') -
- -
- Responsive flex item -
- -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'flex, grow, and shrink', - 'property' => 'flexbox', - ], - 'variants' => [ - 'responsive', - ], - 'extraMessage' => 'Note that modifying the flexbox property will affect which variants are generated for all Flexbox utilities, not just the flex, grow, and shrink utilities.' -]) diff --git a/docs/source/docs/flexbox-justify-content.blade.md b/docs/source/docs/flexbox-justify-content.blade.md deleted file mode 100644 index c8c5cec15e5b..000000000000 --- a/docs/source/docs/flexbox-justify-content.blade.md +++ /dev/null @@ -1,162 +0,0 @@ ---- -extends: _layouts.documentation -title: "Justify Content" -description: "Utilities for controlling flex items are positioned along a container's main axis." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.justify-start', - 'justify-content: flex-start;', - "Justify items against the start of the container.", - ], - [ - '.justify-center', - 'justify-content: center;', - "Justify items in the center of the container.", - ], - [ - '.justify-end', - 'justify-content: flex-end;', - "Justify items against the end of the container.", - ], - [ - '.justify-between', - 'justify-content: space-between;', - "Justify items by adding an equal amount of space between each one.", - ], - [ - '.justify-around', - 'justify-content: space-around;', - "Justify items by adding an equal amount of space around each one.", - ], - ] -]) - -### Start Default - -Use `.justify-start` to justify items against the start of the flex container's main axis: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Center - -Use `.justify-center` to justify items along the center of the flex container's main axis: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### End - -Use `.justify-end` to justify items against the end of the flex container's main axis: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Space between - -Use `.justify-between` to justify items along the flex container's main axis such that there is an equal amount of space between each item: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -### Space around - -Use `.justify-around` to justify items along the flex container's main axis such that there is an equal amount of space around each item: - -@component('_partials.code-sample') -
-
1
-
2
-
3
-
-@endcomponent - -## Responsive - -To justify flex items at a specific breakpoint, add a `{screen}:` prefix to any existing utility class. For example, use `md:justify-between` to apply the `justify-between` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
1
-
2
-
3
-
-@endslot -@slot('sm') -
-
1
-
2
-
3
-
-@endslot -@slot('md') -
-
1
-
2
-
3
-
-@endslot -@slot('lg') -
-
1
-
2
-
3
-
-@endslot -@slot('xl') -
-
1
-
2
-
3
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'justify-content', - 'property' => 'flexbox', - ], - 'variants' => [ - 'responsive', - ], - 'extraMessage' => 'Note that modifying the flexbox property will affect which variants are generated for all Flexbox utilities, not just the justify-content utilities.' -]) diff --git a/docs/source/docs/flexbox-wrapping.blade.md b/docs/source/docs/flexbox-wrapping.blade.md deleted file mode 100644 index 596e66b7a1f3..000000000000 --- a/docs/source/docs/flexbox-wrapping.blade.md +++ /dev/null @@ -1,176 +0,0 @@ ---- -extends: _layouts.documentation -title: "Flex Wrapping" -description: "Utilities for controlling how flex items wrap." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.flex-no-wrap', - 'flex-wrap: nowrap;', - "Don't allow flex items to wrap.", - ], - [ - '.flex-wrap', - 'flex-wrap: wrap;', - "Allow flex items to wrap in the normal direction.", - ], - [ - '.flex-wrap-reverse', - 'flex-wrap: wrap-reverse;', - "Allow flex items to wrap in the reverse direction.", - ], - ] -]) - -### Don't wrap Default - -Use `.flex-no-wrap` to prevent flex items from wrapping, causing inflexible items to overflow the container if necessary: - -@component('_partials.code-sample') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-@endcomponent - -### Wrap normally - -Use `.flex-wrap` to allow flex items to wrap: - -@component('_partials.code-sample') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-@endcomponent - -### Wrap reversed - -Use `.flex-wrap-reverse` to wrap flex items in the reverse direction: - -@component('_partials.code-sample') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-@endcomponent - -## Responsive - -To control how flex items wrap at a specific breakpoint, add a `{screen}:` prefix to any existing utility class. For example, use `md:flex-wrap-reverse` to apply the `flex-wrap-reverse` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-@endslot -@slot('sm') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-@endslot -@slot('md') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-@endslot -@slot('lg') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-@endslot -@slot('xl') -
-
-
1
-
-
-
2
-
-
-
3
-
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'flex-wrap', - 'property' => 'flexbox', - ], - 'variants' => [ - 'responsive', - ], - 'extraMessage' => 'Note that modifying the flexbox property will affect which variants are generated for all Flexbox utilities, not just the flex-wrap utilities.' -]) diff --git a/docs/source/docs/floats.blade.md b/docs/source/docs/floats.blade.md deleted file mode 100644 index 6ca9a94bb5d7..000000000000 --- a/docs/source/docs/floats.blade.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -extends: _layouts.documentation -title: "Floats" -description: "Utilities for controlling the wrapping of content around an element." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.float-right', - 'float: right;', - "Moves the element to the right side of its container.", - ], - [ - '.float-left', - 'float: left;', - "Moves the element to the left side of its container.", - ], - [ - '.float-none', - 'float: none;', - "Removes any previously defined float value.", - ], - [ - '.clearfix', - "&::after {\n  content: \"\";\n  display: table;\n  clear: both;\n}", - "Clear any floats within an element.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'float', - 'property' => 'float', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/font-weight.blade.md b/docs/source/docs/font-weight.blade.md deleted file mode 100644 index ed821deba91c..000000000000 --- a/docs/source/docs/font-weight.blade.md +++ /dev/null @@ -1,91 +0,0 @@ ---- -extends: _layouts.documentation -title: "Font Weight" -description: "Utilities for controlling the font weight of an element." -features: - responsive: true - customizable: true - hover: true - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.font-hairline', - 'font-weight: 100;', - 'Set the font weight of an element to hairline.', - ], - [ - '.font-thin', - 'font-weight: 200;', - 'Set the font weight of an element to thin.', - ], - [ - '.font-light', - 'font-weight: 300;', - 'Set the font weight of an element to light.', - ], - [ - '.font-normal', - 'font-weight: 400;', - 'Set the font weight of an element to normal.', - ], - [ - '.font-medium', - 'font-weight: 500;', - 'Set the font weight of an element to medium.', - ], - [ - '.font-semibold', - 'font-weight: 600;', - 'Set the font weight of an element to semibold.', - ], - [ - '.font-bold', - 'font-weight: 700;', - 'Set the font weight of an element to bold.', - ], - [ - '.font-extrabold', - 'font-weight: 800;', - 'Set the font weight of an element to extrabold.', - ], - [ - '.font-black', - 'font-weight: 900;', - 'Set the font weight of an element to black.', - ], - ] -]) - -## Hover - -In addition to the standard responsive variations, font weight utilities also come in `hover:` variations that apply the given font weight on hover. - -@component('_partials.code-sample') - -@endcomponent - -Hover utilities can also be combined with responsive utilities by adding the responsive `{screen}:` prefix *before* the `hover:` prefix. - -```html -Link -``` - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'font weight', - 'property' => 'fontWeights', - ], - 'variants' => [ - 'responsive', - 'hover', - ], -]) diff --git a/docs/source/docs/fonts.blade.md b/docs/source/docs/fonts.blade.md deleted file mode 100644 index 5964aa51a690..000000000000 --- a/docs/source/docs/fonts.blade.md +++ /dev/null @@ -1,110 +0,0 @@ ---- -extends: _layouts.documentation -title: "Font Families" -description: "Utilities for controlling the font family of an element." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.font-sans', - "font-family:\n system-ui,\n BlinkMacSystemFont,\n -apple-system,\n Segoe UI,\n Roboto,\n Oxygen,\n Ubuntu,\n Cantarell,\n Fira Sans,\n Droid Sans,\n Helvetica Neue,\n sans-serif;", - 'Set the font family to the sans font stack.', - ], - [ - '.font-serif', - "font-family:\n Constantia,\n Lucida Bright,\n Lucidabright,\n Lucida Serif,\n Lucida,\n DejaVu Serif,\n Bitstream Vera Serif,\n Liberation Serif,\n Georgia,\n serif;", - 'Set the font family to the serif font stack.', - ], - [ - '.font-mono', - "font-family:\n Menlo,\n Monaco,\n Consolas,\n Liberation Mono,\n Courier New,\n monospace;", - 'Set the font family to the mono font stack.', - ], - ] -]) - -### Sans-serif - -Use `.font-sans` to apply a web safe sans-serif font family: - -@component('_partials.code-sample') -

- I'm a sans-serif paragraph. -

-@endcomponent - -### Serif - -Use `.font-serif` to apply a web safe serif font family: - -@component('_partials.code-sample') -

- I'm a serif paragraph. -

-@endcomponent - -### Monospaced - -Use `.font-mono` to apply a web safe monospaced font family: - -@component('_partials.code-sample') -

- I'm a monospaced paragraph. -

-@endcomponent - -## Customizing - -By default Tailwind provides three font family utilities: a cross-browser sans-serif stack, a cross-browser serif stack, and a cross-browser monospaced stack. You can change, add, or remove these by editing the `fonts` section of your Tailwind config. - -@component('_partials.customized-config', ['key' => 'fonts']) -- 'sans': ['system-ui', 'BlinkMacSystemFont', ...], -- 'serif': ['Constantia', 'Lucida Bright', ...], -- 'mono': ['Menlo', 'Monaco', ...], -+ 'display': ['Oswald', ...], -+ 'body': ['Open Sans', ...], -@endcomponent - -Font families can be specified as an array or as a simple comma-delimited string: - -```js -{ - // Array format: - 'sans': ['Helvetica', 'Arial', 'sans-serif'], - - // Comma-delimited format: - 'sans': 'Helvetica, Arial, sans-serif', -} -``` - -Note that **Tailwind does not automatically escape font names** for you. If you're using a font that contains an invalid identifier, wrap it in quotes or escape the invalid characters. - -```js -{ - // Won't work: - 'sans': ['Exo 2', ...], - - // Add quotes: - 'sans': ['"Exo 2"', ...], - - // ...or escape the space: - 'sans': ['Exo\\ 2', ...], -} - -``` - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'font', - 'property' => 'fonts', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/forms.blade.md b/docs/source/docs/forms.blade.md deleted file mode 100644 index 3aa0b4d1595c..000000000000 --- a/docs/source/docs/forms.blade.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -extends: _layouts.documentation -title: "Forms" -description: "Utilities for styling form controls." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.appearance-none', - 'appearance: none;', - "Remove any special styling applied to an element by the browser.", - ], - ] -]) - -### Custom Select - -Form controls are great candidates for component classes, but just for fun, here's how you can build a fully custom select menu with just utility classes: - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) -
- -
- -
-
-@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'appearance', - 'property' => 'appearance', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/functions-and-directives.blade.md b/docs/source/docs/functions-and-directives.blade.md deleted file mode 100644 index e317f388cc38..000000000000 --- a/docs/source/docs/functions-and-directives.blade.md +++ /dev/null @@ -1,280 +0,0 @@ ---- -extends: _layouts.documentation -title: "Functions & Directives" -description: null ---- - -Tailwind exposes a few custom CSS functions and directives that can be used in your actual CSS files. - -### `@@tailwind` - -Use the `@@tailwind` directive to insert Tailwind's `preflight`, `utilities` and `screens` styles into your CSS. Here's a full example of how you might do this: - -```less -/** - * This injects Tailwind's base styles, which is a combination of - * Normalize.css and some additional base styles. - * - * You can see the styles here: - * https://github.com/tailwindcss/tailwindcss/blob/master/css/preflight.css - */ -@@tailwind preflight; - -/** - * This injects all of Tailwind's utility classes, generated based on your - * config file. - */ -@@tailwind utilities; - -/** - * Use this directive to control where Tailwind injects the responsive - * variations of each utility. - * - * If omitted, Tailwind will append these classes to the very end of - * your stylesheet by default. - */ - @@tailwind screens; -``` - -### `@@apply` - -Use `@@apply` to mixin the contents of existing classes into your custom CSS. - -This is extremely useful when you find a common utility pattern in your HTML that you'd like to extract to a new component. - -```less -.btn { - @@apply .font-bold .py-2 .px-4 .rounded; -} -.btn-blue { - @@apply .bg-blue .text-white; -} -.btn-blue:hover { - @@apply .bg-blue-dark; -} -``` - -Rules can listed on a single line or with multiple calls to `@@apply`: - -```less -.btn { - @@apply .font-bold; - @@apply .py-2; - @@apply .px-4; - @@apply .rounded; -} -``` - -You can mix `@@apply` declarations with normal CSS declarations too of course: - -```less -.btn:hover { - @@apply .bg-blue-dark; - transform: translateY(-1px); -} -``` - -Any rules mixed in with `@@apply` will have `!important` **removed** by default to avoid specificity issues: - -```less -// Input -.foo { - @@apply .bar; -} - -.bar { - color: blue !important; -} - -// Output -.foo { - color: blue; -} - -.bar { - color: blue !important; -} -``` - -If you'd like to `@@apply` an existing class and make it `!important`, simply add `!important` to the end of the declaration: - - -```less -// Input -.btn { - @@apply .font-bold .py-2 .px-4 .rounded !important; -} - -// Output -.btn { - font-weight: 700 !important; - padding-top: .5rem !important; - padding-bottom: .5rem !important; - padding-right: 1rem !important; - padding-left: 1rem !important; - border-radius: .25rem !important; -} -``` - -Note that `@@apply` **will not work** for mixing in hover, focus, or responsive variants of another utility. Instead, mix in the plain version of that utility into the appropriate pseudo-selector or a new media query: - -```less -// Won't work: -.btn { - @@apply .block .bg-red; - @@apply .md:inline-block; - @@apply .hover:bg-blue; -} - -// Do this instead: -.btn { - @@apply .block .bg-red; -} -.btn:hover { - @@apply .bg-blue; -} -@@screen md { - .btn { - @@apply .inline-block; - } -} -``` - -### `@variants` - -You can generate `responsive`, `hover`, `focus`, and `group-hover` versions of your own utilities by wrapping their definitions in the `@variants` directive - -```less -@@variants hover, focus { - .banana { - color: yellow; - } - .chocolate { - color: brown; - } -} -``` - -This will generate the following CSS: - -```less -.banana { - color: yellow; -} -.chocolate { - color: brown; -} -.focus\:banana:focus { - color: yellow; -} -.focus\:chocolate:focus { - color: brown; -} -.hover\:banana:hover { - color: yellow; -} -.hover\:chocolate:hover { - color: brown; -} -``` - -The `@variants` at-rule supports all of the values that are supported in the `modules` section of your config file: - -- `responsive` -- `hover` -- `focus` -- `group-hover` - -### `@@responsive` - -You can generate responsive versions of your own classes by wrapping their definitions in the `@responsive` directive: - -```less -@@responsive { - .bg-gradient-brand { - background-image: linear-gradient(blue, green); - } -} -``` - -Using the default breakpoints, this would generate these classes: - -```less -.bg-gradient-brand { - background-image: linear-gradient(blue, green); -} - -// ... - -@@media (min-width: 576px) { - .sm\:bg-gradient-brand { - background-image: linear-gradient(blue, green); - } - // ... -} - -@@media (min-width: 768px) { - .md\:bg-gradient-brand { - background-image: linear-gradient(blue, green); - } - // ... -} - -@@media (min-width: 992px) { - .lg\:bg-gradient-brand { - background-image: linear-gradient(blue, green); - } - // ... -} - -@@media (min-width: 1200px) { - .xl\:bg-gradient-brand { - background-image: linear-gradient(blue, green); - } - // ... -} -``` - -The responsive versions will be added to Tailwind's existing media queries **at the end of your stylesheet.** This makes sure that classes with a responsive prefix always defeat non-responsive classes that are targeting the same CSS property. - -### `@@screen` - -The `@@screen` directive allows you to create media queries that reference your breakpoints by name instead of duplicating their values in your own CSS. - -For example, say you have a `sm` breakpoint at `576px` and you need to write some custom CSS that references this breakpoint. - -Instead of writing a raw media query that duplicates that value like this: - -```less -{{ '@media (min-width: 576px) {' }} - /* ... */ -} -``` - -...you can use the `@@screen` directive and reference the breakpoint by name: - -```less -@@screen sm { - /* ... */ -} -``` - -### `config()` - -While it's recommended to use the `@@apply` directive to compose custom CSS out of existing utility classes whenever possible, sometimes you need direct access to your Tailwind config values. - -Use the `config()` function to access your Tailwind config values using dot notation: - -```less -// Source -.error { - font-size: config('textSizes.xs'); - color: config('colors.red-darker'); -} - -// Output -.error { - font-size: .75rem; - color: #a61611; -} -``` diff --git a/docs/source/docs/height.blade.md b/docs/source/docs/height.blade.md deleted file mode 100644 index 87534acfb250..000000000000 --- a/docs/source/docs/height.blade.md +++ /dev/null @@ -1,115 +0,0 @@ ---- -extends: _layouts.documentation -title: "Height" -description: "Utilities for setting the height of an element" -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'scroll' => false, - 'rows' => [ - [ - '.h-1', - 'height: 0.25rem;', - "Set the element's height to 0.25rem.", - ], - [ - '.h-2', - 'height: 0.5rem;', - "Set the element's height to 0.5rem.", - ], - [ - '.h-3', - 'height: 0.75rem;', - "Set the element's height to 0.75rem.", - ], - [ - '.h-4', - 'height: 1rem;', - "Set the element's height to 1rem.", - ], - [ - '.h-6', - 'height: 1.5rem;', - "Set the element's height to 1.5rem.", - ], - [ - '.h-8', - 'height: 2rem;', - "Set the element's height to 2rem.", - ], - [ - '.h-10', - 'height: 2.5rem;', - "Set the element's height to 2.5rem.", - ], - [ - '.h-12', - 'height: 3rem;', - "Set the element's height to 3rem.", - ], - [ - '.h-16', - 'height: 4rem;', - "Set the element's height to 4rem.", - ], - [ - '.h-24', - 'height: 6rem;', - "Set the element's height to 6rem.", - ], - [ - '.h-32', - 'height: 8rem;', - "Set the element's height to 8rem.", - ], - [ - '.h-48', - 'height: 12rem;', - "Set the element's height to 12rem.", - ], - [ - '.h-64', - 'height: 16rem;', - "Set the element's height to 16rem.", - ], - [ - '.h-auto', - 'height: auto;', - "Set the element's height to auto.", - ], - [ - '.h-px', - 'height: 1px;', - "Set the element's height to 1px.", - ], - [ - '.h-full', - 'height: 100%;', - "Set the element's height to 100%.", - ], - [ - '.h-screen', - 'height: 100vh;', - "Set the element's height to 100vh.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'height', - 'property' => 'height', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/installation.blade.md b/docs/source/docs/installation.blade.md deleted file mode 100644 index 5b09d8db783c..000000000000 --- a/docs/source/docs/installation.blade.md +++ /dev/null @@ -1,211 +0,0 @@ ---- -extends: _layouts.documentation -title: "Installation" -description: "Quick start guide for installing and configuring Tailwind CSS." ---- - -## CDN - -Before getting started please note, **many of the features that make Tailwind CSS great are not available using the CDN builds.** To take full advantage of Tailwind's features, [install Tailwind via npm](#npm). - -To pull in Tailwind for quick demos or just giving the framework a spin, grab the latest default configuration build via CDN: - -```html - -``` - -Or if you'd like to pull in the base styles separate from the utility classes: - -```html - - - - - -``` - -## NPM - -For most projects (and to take advantage of Tailwind's customization features), you'll want to install Tailwind via npm. - -### 1. Install Tailwind via npm - -Tailwind is [available on npm](https://www.npmjs.com/package/tailwindcss) and can be installed using npm or Yarn. - -
-
# Using npm
-
npm install tailwindcss --save-dev
-
# Using Yarn
-
yarn add tailwindcss --dev
-
- -### 2. Create a Tailwind config file - -Tailwind is configured almost entirely in plain JavaScript. To do this you'll need to generate a Tailwind config file for your project. We recommend creating a `tailwind.js` file in your project's root. - -We've provided a CLI utility to do this easily: - -
-
./node_modules/.bin/tailwind init [filename]
-
- -### 3. Use Tailwind in your CSS - -Use the `@@tailwind` directive to inject Tailwind's `preflight` and `utilities` styles into your CSS. - -To avoid specificity issues, we highly recommend structuring your main stylesheet like this: - -```less -/** - * This injects Tailwind's base styles, which is a combination of - * Normalize.css and some additional base styles. - * - * You can see the styles here: - * https://github.com/tailwindcss/tailwindcss/blob/master/css/preflight.css - * - * If using `postcss-import`, you should import this line from it's own file: - * - * @@import "./tailwind-preflight.css"; - * - * See: https://github.com/tailwindcss/tailwindcss/issues/53#issuecomment-341413622 - */ -@@tailwind preflight; - -/** - * Here you would add any of your custom component classes; stuff that you'd - * want loaded *before* the utilities so that the utilities could still - * override them. - * - * Example: - * - * .btn { ... } - * .form-input { ... } - * - * Or if using a preprocessor or `postcss-import`: - * - * @@import "components/buttons"; - * @@import "components/forms"; - */ - -/** - * This injects all of Tailwind's utility classes, generated based on your - * config file. - * - * If using `postcss-import`, you should import this line from it's own file: - * - * @@import "./tailwind-utilities.css"; - * - * See: https://github.com/tailwindcss/tailwindcss/issues/53#issuecomment-341413622 - */ -@@tailwind utilities; - -/** - * Here you would add any custom utilities you need that don't come out of the - * box with Tailwind. - * - * Example : - * - * .bg-pattern-graph-paper { ... } - * .skew-45 { ... } - * - * Or if using a preprocessor or `postcss-import`: - * - * @@import "utilities/background-patterns"; - * @@import "utilities/skew-transforms"; - */ -``` - -### 4. Process your CSS with Tailwind - -#### Using Tailwind CLI - -For simple projects or just giving Tailwind a spin, you can use the Tailwind CLI tool to process your CSS: - -
-
./node_modules/.bin/tailwind build styles.css [-c ./tailwind.js] [-o ./output.css]
-
- -#### Using Tailwind with PostCSS - -For most projects, you'll want to add Tailwind as a PostCSS plugin in your build chain. - -We've included the Tailwind-specific instructions for a few popular tools below, but for instructions on getting started with PostCSS in general, see the [PostCSS documentation](https://github.com/postcss/postcss#usage). - -#### Webpack - -Add `tailwindcss` as a plugin in your `postcss.config.js` file, passing the path to your config file: - -```js -var tailwindcss = require('tailwindcss'); -module.exports = { - plugins: [ - // ... - tailwindcss('./path/to/your/tailwind-config.js'), - require('autoprefixer'), - // ... - ] -} -``` - -For a complete example, check out our [webpack-starter](https://github.com/tailwindcss/webpack-starter) template. - -#### Gulp - -Add `tailwindcss` to the list of plugins you pass to [gulp-postcss](https://github.com/postcss/gulp-postcss), passing the path to your config file: - -```js -gulp.task('css', function () { - var postcss = require('gulp-postcss'); - var tailwindcss = require('tailwindcss'); - - return gulp.src('src/styles.css') - // ... - .pipe(postcss([ - // ... - tailwindcss('./path/to/your/tailwind-config.js'), - require('autoprefixer'), - // ... - ])) - // ... - .pipe(gulp.dest('build/')); -}); -``` - -#### Laravel Mix - -If you're writing your project in plain CSS, use Mix's `postCss` method to process your CSS. Include `tailwindcss` as a plugin and pass the path to your config file: - -```js -var tailwindcss = require('tailwindcss'); - -mix.postCss('resources/assets/css/main.css', 'public/css', [ - tailwindcss('./path/to/your/tailwind-config.js'), -]); -``` - -If you're using a preprocessor, use the `options` method to add `tailwindcss` as a PostCSS plugin: - -```js -var tailwindcss = require('tailwindcss'); - -mix.less('resources/assets/less/app.less', 'public/css') - .options({ - postCss: [ - tailwindcss('./path/to/your/tailwind-config.js'), - ] - }); -``` - -**Note for Sass users:** Due to [an unresolved issue](https://github.com/bholloway/resolve-url-loader/issues/28) with one of Mix's dependencies, to use Sass with Tailwind you'll need to disable `processCssUrls`: - -```js -var tailwindcss = require('tailwindcss'); - -mix.sass('resources/assets/sass/app.scss', 'public/css') - .options({ - processCssUrls: false, - postCss: [ tailwindcss('./path/to/your/tailwind-config.js') ], - }); -``` - -For more information on what this feature does and the implications of disabling it, [see the Laravel Mix documentation](https://github.com/JeffreyWay/laravel-mix/blob/master/docs/css-preprocessors.md#css-url-rewriting). diff --git a/docs/source/docs/letter-spacing.blade.md b/docs/source/docs/letter-spacing.blade.md deleted file mode 100644 index 218b6a0970ad..000000000000 --- a/docs/source/docs/letter-spacing.blade.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -extends: _layouts.documentation -title: "Letter Spacing" -description: "Utilities for controlling the tracking (letter spacing) of an element." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.tracking-tight', - 'letter-spacing: -0.05em;', - 'Set the letter spacing of an element to -0.05em.', - ], - [ - '.tracking-normal', - 'letter-spacing: 0;', - 'Set the letter spacing of an element to 0.', - ], - [ - '.tracking-wide', - 'letter-spacing: 0.05em;', - 'Set the letter spacing of an element to 0.05em.', - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'tracking', - 'property' => 'tracking', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/line-height.blade.md b/docs/source/docs/line-height.blade.md deleted file mode 100644 index fd2fc8d37309..000000000000 --- a/docs/source/docs/line-height.blade.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -extends: _layouts.documentation -title: "Line Height" -description: "Utilities for controlling the leading (line height) of an element." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.leading-none', - 'line-height: 1;', - 'Set the line height of an element to 1.', - ], - [ - '.leading-tight', - 'line-height: 1.25;', - 'Set the line height of an element to 1.25.', - ], - [ - '.leading-normal', - 'line-height: 1.5;', - 'Set the line height of an element to 1.5.', - ], - [ - '.leading-loose', - 'line-height: 2;', - 'Set the line height of an element to 2.', - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'leading', - 'property' => 'leading', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/lists.blade.md b/docs/source/docs/lists.blade.md deleted file mode 100644 index a79b17e91c02..000000000000 --- a/docs/source/docs/lists.blade.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -extends: _layouts.documentation -title: "Lists" -description: "Utilities for controlling list styles." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.list-reset', - "list-style: none;\npadding: 0;", - "Disable default browser styling for lists and list items.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'list', - 'property' => 'lists', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/max-height.blade.md b/docs/source/docs/max-height.blade.md deleted file mode 100644 index 6d1325dd2f2d..000000000000 --- a/docs/source/docs/max-height.blade.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -extends: _layouts.documentation -title: "Max-Height" -description: "Utilities for setting the maximum height of an element" -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'scroll' => false, - 'rows' => [ - [ - '.max-h-full', - 'max-height: 100%;', - "Set the element's maximum height to 100%.", - ], - [ - '.max-h-screen', - 'max-height: 100vh;', - "Set the element's maximum height to 100vh.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'max-height', - 'property' => 'maxHeight', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/max-width.blade.md b/docs/source/docs/max-width.blade.md deleted file mode 100644 index dc1903486e5a..000000000000 --- a/docs/source/docs/max-width.blade.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -extends: _layouts.documentation -title: "Max-Width" -description: "Utilities for setting the maximum width of an element" -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'scroll' => false, - 'rows' => [ - [ - '.max-w-xs', - 'max-width: 20rem;', - "Set the element's maximum width to 20rem.", - ], - [ - '.max-w-sm', - 'max-width: 30rem;', - "Set the element's maximum width to 30rem.", - ], - [ - '.max-w-md', - 'max-width: 40rem;', - "Set the element's maximum width to 40rem.", - ], - [ - '.max-w-lg', - 'max-width: 50rem;', - "Set the element's maximum width to 50rem.", - ], - [ - '.max-w-xl', - 'max-width: 60rem;', - "Set the element's maximum width to 60rem.", - ], - [ - '.max-w-2xl', - 'max-width: 70rem;', - "Set the element's maximum width to 70rem.", - ], - [ - '.max-w-3xl', - 'max-width: 80rem;', - "Set the element's maximum width to 80rem.", - ], - [ - '.max-w-4xl', - 'max-width: 90rem;', - "Set the element's maximum width to 90rem.", - ], - [ - '.max-w-5xl', - 'max-width: 100rem;', - "Set the element's maximum width to 100rem.", - ], - [ - '.max-w-full', - 'max-width: 100%;', - "Set the element's maximum width to 100%.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'max-width', - 'property' => 'maxWidth', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/min-height.blade.md b/docs/source/docs/min-height.blade.md deleted file mode 100644 index 6cfbbc4cf2fd..000000000000 --- a/docs/source/docs/min-height.blade.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -extends: _layouts.documentation -title: "Min-Height" -description: "Utilities for setting the minimum height of an element" -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'scroll' => false, - 'rows' => [ - [ - '.min-h-0', - 'min-height: 0;', - "Set the element's minimum height to 0.", - ], - [ - '.min-h-full', - 'min-height: 100%;', - "Set the element's minimum height to 100%.", - ], - [ - '.min-h-screen', - 'min-height: 100vh;', - "Set the element's minimum height to 100vh.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'min-height', - 'property' => 'minHeight', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/min-width.blade.md b/docs/source/docs/min-width.blade.md deleted file mode 100644 index 3eb1562e74d1..000000000000 --- a/docs/source/docs/min-width.blade.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -extends: _layouts.documentation -title: "Min-Width" -description: "Utilities for setting the minimum width of an element" -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'scroll' => false, - 'rows' => [ - [ - '.min-w-0', - 'min-width: 0;', - "Set the element's minimum width to 0.", - ], - [ - '.min-w-full', - 'min-width: 100%;', - "Set the element's minimum width to 100%.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'min-width', - 'property' => 'minWidth', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/opacity.blade.md b/docs/source/docs/opacity.blade.md deleted file mode 100644 index fdfe1a94b29a..000000000000 --- a/docs/source/docs/opacity.blade.md +++ /dev/null @@ -1,125 +0,0 @@ ---- -extends: _layouts.documentation -title: "Opacity" -description: "Utilities for controlling the opacity of an element." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.opacity-100', - 'opacity: 1;', - "Set the opacity of an element to 100%.", - ], - [ - '.opacity-75', - 'opacity: .75;', - "Set the opacity of an element to 75%.", - ], - [ - '.opacity-50', - 'opacity: .5;', - "Set the opacity of an element to 50%.", - ], - [ - '.opacity-25', - 'opacity: .25;', - "Set the opacity of an element to 25%.", - ], - [ - '.opacity-0', - 'opacity: 0;', - "Set the opacity of an element to 0%.", - ], - ] -]) - -## Example - -@component('_partials.code-sample') -
- @foreach ($page->config['opacity']->reverse() as $name => $value) -
.opacity-{{ $name }}
- @endforeach -
-@slot('code') -@foreach ($page->config['opacity']->reverse() as $name => $value) -
.opacity-{{ $name }}
-@endforeach -@endslot -@endcomponent - -## Responsive - -To control the opacity of an element at a specific breakpoint, add a `{screen}:` prefix to any existing opacity utility. For example, use `md:opacity-50` to apply the `opacity-50` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
-
-@endslot -@slot('sm') -
-
-
-@endslot -@slot('md') -
-
-
-@endslot -@slot('lg') -
-
-
-@endslot -@slot('xl') -
-
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -## Customizing - -By default Tailwind provides five opacity utilities based on a simple numeric scale. You change, add, or remove these by editing the `opacity` section of your Tailwind config. - -@component('_partials.customized-config', ['key' => 'opacity']) - '0': '0', -- '25': '.25', -- '50': '.5', -- '75': '.75', -+ '10': '.1', -+ '20': '.2', -+ '30': '.3', -+ '40': '.4', -+ '50': '.5', -+ '60': '.6', -+ '70': '.7', -+ '80': '.8', -+ '90': '.9', - '100': '1', -@endcomponent - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'opacity', - 'property' => 'opacity', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/overflow.blade.md b/docs/source/docs/overflow.blade.md deleted file mode 100644 index 7487e721c731..000000000000 --- a/docs/source/docs/overflow.blade.md +++ /dev/null @@ -1,233 +0,0 @@ ---- -extends: _layouts.documentation -title: "Overflow" -description: "Utilities for controlling how an element handles content that is too large for the container." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.overflow-visible', - 'overflow: visible;', - "Don't clip content that overflows the element.", - ], - [ - '.overflow-auto', - 'overflow: auto;', - "Add scrollbars to an element if needed.", - ], - [ - '.overflow-hidden', - 'overflow: hidden;', - "Clip any content that overflows the element.", - ], - [ - '.overflow-x-scroll', - 'overflow-x: auto;', - "Allow horizontal scrolling if needed.", - ], - [ - '.overflow-y-scroll', - 'overflow-y: auto;', - "Allow vertical scrolling if needed.", - ], - [ - '.overflow-scroll', - 'overflow: scroll;', - "Add scrollbars to an element.", - ], - [ - '.scrolling-touch', - '-webkit-overflow-scrolling: touch;', - "Use momentum-based scrolling on touch devices.", - ], - [ - '.scrolling-auto', - '-webkit-overflow-scrolling: auto;', - "Use \"regular\" scrolling on touch devices.", - ], - ] -]) - -### Visible Default - -Use `.overflow-visible` to prevent content within an element from being clipped. Note that any content that overflows the bounds of the element will then be visible. - -@component('_partials.code-sample') -
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel. -
-
-@slot('code') -
Lorem ipsum dolor sit amet...
-@endslot -@endcomponent - -### Auto - -Use `.overflow-auto` to add scrollbars to an element in the event that its content overflows the bounds of that element. Unlike `.overflow-scroll`, which always show scrollbars, this utility will only show them if scrolling is necessary. - -@component('_partials.code-sample') -
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel. -
-@slot('code') -
Lorem ipsum dolor sit amet...
-@endslot -@endcomponent - -### Hidden - -Use `.overflow-hidden` to clip any content within an element that overflows the bounds of that element. - -@component('_partials.code-sample') -
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel. -
-@slot('code') -
Lorem ipsum dolor sit amet...
-@endslot -@endcomponent - -### Scroll horizontally - -Use `.overflow-x-scroll` to allow horizontal scrolling if needed. - -@component('_partials.code-sample') -
- QrLmmW69vMQDtCOg48jidqvvWD2FzDt7I7bBoDc98SRP5OwvOScVYbRzFdfp540eF5v1pjogYkyI8NXqu4wY8chgsXIV0LU7XQKWJ98wLaBSHWiBhvkEU1T3sd6KEFo53CLjVjIz8UvZajb8sbsu62xTsF9cRtFdwEvusq6zJHvedymDCUkY6qXHsuL6fOmHo4KKMurZuJZrK3plRPUaI8XVciz8dVq5CEUXjMrTcB76H1w90CnkRER3nYjs3suTa3223xs8aL97m0peQfjlvKbF8HcmQG5mHEitCn1QZnbMZUK3zE9AIjwcVXP7R9V4fw2A93cZD7wj333X6aaiHZdkkTPtst0u05KSob5c0ZuKQi4D3V395NfFKKr8cR27jmpB7dqK2GiWXeOQUFcjmFVwlHWSlH8ZdUoVJpXf1xL6CRUxwZP4EhBbqQZaJm26ijWII6LRxJ5eVU9Y7KKvQsUeX5BawtgeMWRmjeCwQadTLTQG8gLpi2DvGpMtPWCdqHgEglVSB1ZlDrjEEsXYrNx1IOY0053K3pWNaR1ezyz8kahRfNs3byaHcIQu9tWTrcMpBWhZ45DzLjVV1N8Zt96uLnNWK5DvbKW8GgMuwY7fHkZFz85MN4d2gL0j85HmXGx9oPTFRkPWsmMOHUvm5IhB7QqGSAwT1uL7HgBrNX9a1BAWrp9zV1IWAd1q65sKOOCxTZrXJDpxBxYE4rJAGU6pcri9mUf4g49ZiIAwfu9njtZyYimmImCa6TFhk2jQcSmFDHacExxqC2BfYATHFrKSy94dbw6uWT52nM7MSM9JDu4cs9cbfnaf6amt4hTUotCTONg604b8JKPI1sfd4CG36fBNcnErhpllfRlXkY1xFwmwZT7IJV8okPGNQdTKpdPJOBGw3LHMKojPJl1nPiQB5C9bdePFMNLejSXY5DDvO70ehOCJpBtKZY2quoFJJjGfXe8T4DuGYGmM6JYd5DNinWZuUWXGvfIlJRHgf8BQNQvtmEzqGXIeQZitiq9F -
- -@slot('code') -
QrLmmW69vMQD...
-@endslot -@endcomponent - -### Scroll vertically - -Use `.overflow-y-scroll` to allow vertical scrolling if needed. - -@component('_partials.code-sample') -
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel. -
- -@slot('code') -
Lorem ipsum dolor sit amet...
-@endslot -@endcomponent - -### Scroll in all directions - -Use `.overflow-scroll` to add scrollbars to an element. Unlike `.overflow-auto`, which only shows scrollbars if they are necessary, this utility always shows them. Note that some operating systems, like MacOS, hide unnecessary scrollbars regardless of this setting. - -@component('_partials.code-sample') -

Scroll horizontally when content can't wrap

-
- QrLmmW69vMQDtCOg48jidqvvWD2FzDt7I7bBoDc98SRP5OwvOScVYbRzFdfp540eF5v1pjogYkyI8NXqu4wY8chgsXIV0LU7XQKWJ98wLaBSHWiBhvkEU1T3sd6KEFo53CLjVjIz8UvZajb8sbsu62xTsF9cRtFdwEvusq6zJHvedymDCUkY6qXHsuL6fOmHo4KKMurZuJZrK3plRPUaI8XVciz8dVq5CEUXjMrTcB76H1w90CnkRER3nYjs3suTa3223xs8aL97m0peQfjlvKbF8HcmQG5mHEitCn1QZnbMZUK3zE9AIjwcVXP7R9V4fw2A93cZD7wj333X6aaiHZdkkTPtst0u05KSob5c0ZuKQi4D3V395NfFKKr8cR27jmpB7dqK2GiWXeOQUFcjmFVwlHWSlH8ZdUoVJpXf1xL6CRUxwZP4EhBbqQZaJm26ijWII6LRxJ5eVU9Y7KKvQsUeX5BawtgeMWRmjeCwQadTLTQG8gLpi2DvGpMtPWCdqHgEglVSB1ZlDrjEEsXYrNx1IOY0053K3pWNaR1ezyz8kahRfNs3byaHcIQu9tWTrcMpBWhZ45DzLjVV1N8Zt96uLnNWK5DvbKW8GgMuwY7fHkZFz85MN4d2gL0j85HmXGx9oPTFRkPWsmMOHUvm5IhB7QqGSAwT1uL7HgBrNX9a1BAWrp9zV1IWAd1q65sKOOCxTZrXJDpxBxYE4rJAGU6pcri9mUf4g49ZiIAwfu9njtZyYimmImCa6TFhk2jQcSmFDHacExxqC2BfYATHFrKSy94dbw6uWT52nM7MSM9JDu4cs9cbfnaf6amt4hTUotCTONg604b8JKPI1sfd4CG36fBNcnErhpllfRlXkY1xFwmwZT7IJV8okPGNQdTKpdPJOBGw3LHMKojPJl1nPiQB5C9bdePFMNLejSXY5DDvO70ehOCJpBtKZY2quoFJJjGfXe8T4DuGYGmM6JYd5DNinWZuUWXGvfIlJRHgf8BQNQvtmEzqGXIeQZitiq9F -
- -

Scroll vertically when content can wrap

-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel. -
- -

Scroll both horizontally and vertically when some content can't wrap

-
- Loremipsumdolorsitamet,consecteturadipiscingelit.Mauriseleifendrutrumauctor.Phasellusconvallissagittisaugueutornare.Donecexlorem,auctoreurutrumin,blanditiddolor.Nullamolestiearcuturpis.Inidfelisvulputate,tempormassaeget,malesuadamauris.Quisquefringillaconsequatmetus,luctusscelerisqueleofringillavel. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel. Ullam repudiandae omnis tempora soluta non, sed corporis vel reiciendis reprehenderit vitae nobis dolorum maiores eaque eos nemo mollitia animi, adipisci, molestias? Nam quo odio, similique iure, molestias ullam! Temporibus vel ab, fuga, ut nihil fugiat quaerat tenetur veniam, excepturi natus hic dolorum fugit. Ab sint molestiae nihil ex, minima facere sit adipisci. Totam quos eveniet, quibusdam qui quis aperiam aut nihil perferendis earum in error. Autem porro deleniti molestiae odio delectus alias dolorem nihil voluptates a, quam corrupti sapiente, nulla ea omnis quas ipsam rerum atque excepturi! Corporis culpa asperiores sint voluptatum, quos, cupiditate iste similique illum quas libero, temporibus laborum quisquam esse veritatis eligendi qui odit quo repellat! -
-@slot('code') -
QrLmmW69vMQD...
-
Lorem ipsum dolor sit amet...
-
Loremipsumdolorsitamet...
-@endslot -@endcomponent - -### Momentum-based scrolling on touch devices - -Use `.scrolling-touch` to use momentum-based scrolling (where supported) on touch devices. - -@component('_partials.code-sample') -
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel. -
-@slot('code') -
Lorem ipsum dolor sit amet...
-@endslot -@endcomponent - -Use `.scrolling-auto` to use normal non-momentum-based scrolling on touch devices. - -This is mostly useful for undoing `.scrolling-touch` at larger screen sizes. - -@component('_partials.code-sample') -
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel. -
-@slot('code') -
Lorem ipsum dolor sit amet...
-@endslot -@endcomponent - -## Responsive - -To apply an overflow utility only at a specific breakpoint, add a `{screen}:` prefix to the existing class name. For example, adding the class `md:overflow-scroll` to an element would apply the `overflow-scroll` utility at medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
- QrLmmW69vMQDtCOg48jidqvvWD2FzDt7I7bBoDc98SRP5OwvOScVYbRzFdfp540eF5v1pjogYkyI8NXqu4wY8chgsXIV0LU7XQKWJ98wLaBSHWiBhvkEU1T3sd6KEFo53CLjVjIz8UvZajb8sbsu62xTsF9cRtFdwEvusq6zJHvedymDCUkY6qXHsuL6fOmHo4KKMurZuJZrK3plRPUaI8XVciz8dVq5CEUXjMrTcB76H1w90CnkRER3nYjs3suTa3223xs8aL97m0peQfjlvKbF8HcmQG5mHEitCn1QZnbMZUK3zE9AIjwcVXP7R9V4fw2A93cZD7wj333X6aaiHZdkkTPtst0u05KSob5c0ZuKQi4D3V395NfFKKr8cR27jmpB7dqK2GiWXeOQUFcjmFVwlHWSlH8ZdUoVJpXf1xL6CRUxwZP4EhBbqQZaJm26ijWII6LRxJ5eVU9Y7KKvQsUeX5BawtgeMWRmjeCwQadTLTQG8gLpi2DvGpMtPWCdqHgEglVSB1ZlDrjEEsXYrNx1IOY0053K3pWNaR1ezyz8kahRfNs3byaHcIQu9tWTrcMpBWhZ45DzLjVV1N8Zt96uLnNWK5DvbKW8GgMuwY7fHkZFz85MN4d2gL0j85HmXGx9oPTFRkPWsmMOHUvm5IhB7QqGSAwT1uL7HgBrNX9a1BAWrp9zV1IWAd1q65sKOOCxTZrXJDpxBxYE4rJAGU6pcri9mUf4g49ZiIAwfu9njtZyYimmImCa6TFhk2jQcSmFDHacExxqC2BfYATHFrKSy94dbw6uWT52nM7MSM9JDu4cs9cbfnaf6amt4hTUotCTONg604b8JKPI1sfd4CG36fBNcnErhpllfRlXkY1xFwmwZT7IJV8okPGNQdTKpdPJOBGw3LHMKojPJl1nPiQB5C9bdePFMNLejSXY5DDvO70ehOCJpBtKZY2quoFJJjGfXe8T4DuGYGmM6JYd5DNinWZuUWXGvfIlJRHgf8BQNQvtmEzqGXIeQZitiq9F - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel. -
-@endslot -@slot('sm') -
- QrLmmW69vMQDtCOg48jidqvvWD2FzDt7I7bBoDc98SRP5OwvOScVYbRzFdfp540eF5v1pjogYkyI8NXqu4wY8chgsXIV0LU7XQKWJ98wLaBSHWiBhvkEU1T3sd6KEFo53CLjVjIz8UvZajb8sbsu62xTsF9cRtFdwEvusq6zJHvedymDCUkY6qXHsuL6fOmHo4KKMurZuJZrK3plRPUaI8XVciz8dVq5CEUXjMrTcB76H1w90CnkRER3nYjs3suTa3223xs8aL97m0peQfjlvKbF8HcmQG5mHEitCn1QZnbMZUK3zE9AIjwcVXP7R9V4fw2A93cZD7wj333X6aaiHZdkkTPtst0u05KSob5c0ZuKQi4D3V395NfFKKr8cR27jmpB7dqK2GiWXeOQUFcjmFVwlHWSlH8ZdUoVJpXf1xL6CRUxwZP4EhBbqQZaJm26ijWII6LRxJ5eVU9Y7KKvQsUeX5BawtgeMWRmjeCwQadTLTQG8gLpi2DvGpMtPWCdqHgEglVSB1ZlDrjEEsXYrNx1IOY0053K3pWNaR1ezyz8kahRfNs3byaHcIQu9tWTrcMpBWhZ45DzLjVV1N8Zt96uLnNWK5DvbKW8GgMuwY7fHkZFz85MN4d2gL0j85HmXGx9oPTFRkPWsmMOHUvm5IhB7QqGSAwT1uL7HgBrNX9a1BAWrp9zV1IWAd1q65sKOOCxTZrXJDpxBxYE4rJAGU6pcri9mUf4g49ZiIAwfu9njtZyYimmImCa6TFhk2jQcSmFDHacExxqC2BfYATHFrKSy94dbw6uWT52nM7MSM9JDu4cs9cbfnaf6amt4hTUotCTONg604b8JKPI1sfd4CG36fBNcnErhpllfRlXkY1xFwmwZT7IJV8okPGNQdTKpdPJOBGw3LHMKojPJl1nPiQB5C9bdePFMNLejSXY5DDvO70ehOCJpBtKZY2quoFJJjGfXe8T4DuGYGmM6JYd5DNinWZuUWXGvfIlJRHgf8BQNQvtmEzqGXIeQZitiq9F - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel.
-@endslot -@slot('md') -
- QrLmmW69vMQDtCOg48jidqvvWD2FzDt7I7bBoDc98SRP5OwvOScVYbRzFdfp540eF5v1pjogYkyI8NXqu4wY8chgsXIV0LU7XQKWJ98wLaBSHWiBhvkEU1T3sd6KEFo53CLjVjIz8UvZajb8sbsu62xTsF9cRtFdwEvusq6zJHvedymDCUkY6qXHsuL6fOmHo4KKMurZuJZrK3plRPUaI8XVciz8dVq5CEUXjMrTcB76H1w90CnkRER3nYjs3suTa3223xs8aL97m0peQfjlvKbF8HcmQG5mHEitCn1QZnbMZUK3zE9AIjwcVXP7R9V4fw2A93cZD7wj333X6aaiHZdkkTPtst0u05KSob5c0ZuKQi4D3V395NfFKKr8cR27jmpB7dqK2GiWXeOQUFcjmFVwlHWSlH8ZdUoVJpXf1xL6CRUxwZP4EhBbqQZaJm26ijWII6LRxJ5eVU9Y7KKvQsUeX5BawtgeMWRmjeCwQadTLTQG8gLpi2DvGpMtPWCdqHgEglVSB1ZlDrjEEsXYrNx1IOY0053K3pWNaR1ezyz8kahRfNs3byaHcIQu9tWTrcMpBWhZ45DzLjVV1N8Zt96uLnNWK5DvbKW8GgMuwY7fHkZFz85MN4d2gL0j85HmXGx9oPTFRkPWsmMOHUvm5IhB7QqGSAwT1uL7HgBrNX9a1BAWrp9zV1IWAd1q65sKOOCxTZrXJDpxBxYE4rJAGU6pcri9mUf4g49ZiIAwfu9njtZyYimmImCa6TFhk2jQcSmFDHacExxqC2BfYATHFrKSy94dbw6uWT52nM7MSM9JDu4cs9cbfnaf6amt4hTUotCTONg604b8JKPI1sfd4CG36fBNcnErhpllfRlXkY1xFwmwZT7IJV8okPGNQdTKpdPJOBGw3LHMKojPJl1nPiQB5C9bdePFMNLejSXY5DDvO70ehOCJpBtKZY2quoFJJjGfXe8T4DuGYGmM6JYd5DNinWZuUWXGvfIlJRHgf8BQNQvtmEzqGXIeQZitiq9F - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel.
-@endslot -@slot('lg') -
- QrLmmW69vMQDtCOg48jidqvvWD2FzDt7I7bBoDc98SRP5OwvOScVYbRzFdfp540eF5v1pjogYkyI8NXqu4wY8chgsXIV0LU7XQKWJ98wLaBSHWiBhvkEU1T3sd6KEFo53CLjVjIz8UvZajb8sbsu62xTsF9cRtFdwEvusq6zJHvedymDCUkY6qXHsuL6fOmHo4KKMurZuJZrK3plRPUaI8XVciz8dVq5CEUXjMrTcB76H1w90CnkRER3nYjs3suTa3223xs8aL97m0peQfjlvKbF8HcmQG5mHEitCn1QZnbMZUK3zE9AIjwcVXP7R9V4fw2A93cZD7wj333X6aaiHZdkkTPtst0u05KSob5c0ZuKQi4D3V395NfFKKr8cR27jmpB7dqK2GiWXeOQUFcjmFVwlHWSlH8ZdUoVJpXf1xL6CRUxwZP4EhBbqQZaJm26ijWII6LRxJ5eVU9Y7KKvQsUeX5BawtgeMWRmjeCwQadTLTQG8gLpi2DvGpMtPWCdqHgEglVSB1ZlDrjEEsXYrNx1IOY0053K3pWNaR1ezyz8kahRfNs3byaHcIQu9tWTrcMpBWhZ45DzLjVV1N8Zt96uLnNWK5DvbKW8GgMuwY7fHkZFz85MN4d2gL0j85HmXGx9oPTFRkPWsmMOHUvm5IhB7QqGSAwT1uL7HgBrNX9a1BAWrp9zV1IWAd1q65sKOOCxTZrXJDpxBxYE4rJAGU6pcri9mUf4g49ZiIAwfu9njtZyYimmImCa6TFhk2jQcSmFDHacExxqC2BfYATHFrKSy94dbw6uWT52nM7MSM9JDu4cs9cbfnaf6amt4hTUotCTONg604b8JKPI1sfd4CG36fBNcnErhpllfRlXkY1xFwmwZT7IJV8okPGNQdTKpdPJOBGw3LHMKojPJl1nPiQB5C9bdePFMNLejSXY5DDvO70ehOCJpBtKZY2quoFJJjGfXe8T4DuGYGmM6JYd5DNinWZuUWXGvfIlJRHgf8BQNQvtmEzqGXIeQZitiq9F - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel.
-@endslot -@slot('xl') -
- QrLmmW69vMQDtCOg48jidqvvWD2FzDt7I7bBoDc98SRP5OwvOScVYbRzFdfp540eF5v1pjogYkyI8NXqu4wY8chgsXIV0LU7XQKWJ98wLaBSHWiBhvkEU1T3sd6KEFo53CLjVjIz8UvZajb8sbsu62xTsF9cRtFdwEvusq6zJHvedymDCUkY6qXHsuL6fOmHo4KKMurZuJZrK3plRPUaI8XVciz8dVq5CEUXjMrTcB76H1w90CnkRER3nYjs3suTa3223xs8aL97m0peQfjlvKbF8HcmQG5mHEitCn1QZnbMZUK3zE9AIjwcVXP7R9V4fw2A93cZD7wj333X6aaiHZdkkTPtst0u05KSob5c0ZuKQi4D3V395NfFKKr8cR27jmpB7dqK2GiWXeOQUFcjmFVwlHWSlH8ZdUoVJpXf1xL6CRUxwZP4EhBbqQZaJm26ijWII6LRxJ5eVU9Y7KKvQsUeX5BawtgeMWRmjeCwQadTLTQG8gLpi2DvGpMtPWCdqHgEglVSB1ZlDrjEEsXYrNx1IOY0053K3pWNaR1ezyz8kahRfNs3byaHcIQu9tWTrcMpBWhZ45DzLjVV1N8Zt96uLnNWK5DvbKW8GgMuwY7fHkZFz85MN4d2gL0j85HmXGx9oPTFRkPWsmMOHUvm5IhB7QqGSAwT1uL7HgBrNX9a1BAWrp9zV1IWAd1q65sKOOCxTZrXJDpxBxYE4rJAGU6pcri9mUf4g49ZiIAwfu9njtZyYimmImCa6TFhk2jQcSmFDHacExxqC2BfYATHFrKSy94dbw6uWT52nM7MSM9JDu4cs9cbfnaf6amt4hTUotCTONg604b8JKPI1sfd4CG36fBNcnErhpllfRlXkY1xFwmwZT7IJV8okPGNQdTKpdPJOBGw3LHMKojPJl1nPiQB5C9bdePFMNLejSXY5DDvO70ehOCJpBtKZY2quoFJJjGfXe8T4DuGYGmM6JYd5DNinWZuUWXGvfIlJRHgf8BQNQvtmEzqGXIeQZitiq9F - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eleifend rutrum auctor. Phasellus convallis sagittis augue ut ornare. Vestibulum et gravida lectus, sed ultrices sapien. Nullam aliquet elit dui, vitae hendrerit lectus volutpat eget. In porttitor tincidunt egestas. Pellentesque laoreet ligula at est vulputate facilisis. Etiam tristique justo ut odio placerat ornare. Cras bibendum, orci at ornare tincidunt, lacus nunc gravida enim, sit amet euismod nunc lectus in lectus. Ut dictum nulla et arcu aliquet ornare. Aliquam et dapibus lectus. Aenean mattis elit mi, sed ultricies augue consectetur id. Sed id magna malesuada, luctus urna a, bibendum tortor. Cras cursus cursus ex. Nulla fringilla elit vitae imperdiet scelerisque. Donec ac sem eu diam convallis mollis a sed leo. Proin congue augue turpis, eget rutrum dolor ultricies non. Nulla blandit venenatis dapibus. Sed tincidunt mollis elit, quis suscipit nibh eleifend quis. Donec ex lorem, auctor eu rutrum in, blandit id dolor. Nulla molestie arcu turpis. In id felis vulputate, tempor massa eget, malesuada mauris. Quisque fringilla consequat metus, luctus scelerisque leo fringilla vel.
-@endslot -@slot('code') -
- Lorem ipsum dolor sit amet... -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'overflow', - 'property' => 'overflow', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/pointer-events.blade.md b/docs/source/docs/pointer-events.blade.md deleted file mode 100644 index a8ae844ff377..000000000000 --- a/docs/source/docs/pointer-events.blade.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -extends: _layouts.documentation -title: "Pointer Events" -description: "Utilities for controlling whether an element responds to pointer events." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.pointer-events-none', - 'pointer-events: none;', - "Make element not react to pointer events, like :hover or click.", - ], - [ - '.pointer-events-auto', - 'pointer-events: auto;', - "Make element react to pointer events, like :hover or click.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'pointer event', - 'property' => 'pointerEvents', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/positioning.blade.md b/docs/source/docs/positioning.blade.md deleted file mode 100644 index b18a3fac7559..000000000000 --- a/docs/source/docs/positioning.blade.md +++ /dev/null @@ -1,423 +0,0 @@ ---- -extends: _layouts.documentation -title: "Positioning" -descriptioj: "Utilities for controlling how an element is positioned in the DOM." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.static', - "position: static;", - "Position an element according to the normal flow of the document.", - ], - [ - '.fixed', - "position: fixed;", - "Position an element relative to the browser window.", - ], - [ - '.absolute', - "position: absolute;", - "Position an element outside of the normal flow of the document, causing neighboring elements to act as if the element doesn't exist.", - ], - [ - '.relative', - "position: relative;", - "Position an element according to the normal flow of the document.", - ], - [ - '.pin-t', - "top: 0;", - "Anchor absolutely positioned element to the top edge of the nearest positioned parent.", - ], - [ - '.pin-r', - "right: 0;", - "Anchor absolutely positioned element to the right edge of the nearest positioned parent.", - ], - [ - '.pin-b', - "bottom: 0;", - "Anchor absolutely positioned element to the bottom edge of the nearest positioned parent.", - ], - [ - '.pin-l', - "left: 0;", - "Anchor absolutely positioned element to the left edge of the nearest positioned parent.", - ], - [ - '.pin-y', - "top: 0;\nbottom: 0;", - "Anchor absolutely positioned element to the top and bottom edges of the nearest positioned parent.", - ], - [ - '.pin-x', - "right: 0;\nleft: 0;", - "Anchor absolutely positioned element to the left and right edges of the nearest positioned parent.", - ], - [ - '.pin', - "top: 0;\nright: 0;\nbottom: 0;\nleft: 0;", - "Anchor absolutely positioned element to all the edges of the nearest positioned parent.", - ], - [ - '.pin-none', - "top: auto;\nright: auto;\nbottom: auto;\nleft: auto;", - "Reset absolutely positioned element to all the edges from a given breakpoint onwards.", - ], - ] -]) - -### Static Default - -Use `.static` to position an element according to the normal flow of the document. - -Any offsets will be ignored and the element will not act as a position reference for absolutely positioned children. - -@component('_partials.code-sample') -
-
-

Static parent

-
-

Absolute child

-
-
-
- -@slot('code') -
- Static parent -
- Absolute child -
-
-@endslot -@endcomponent - -### Relative - -Use `.relative` to position an element according to the normal flow of the document. - -Offsets are calculated relative to the element's normal position and the element *will* act as a position reference for absolutely positioned children. - -@component('_partials.code-sample') -
-
-

Relative parent

-
-

Absolute child

-
-
-
- -@slot('code') -
- Relative parent -
- Absolute child -
-
-@endslot -@endcomponent - -### Absolute - -Use `.absolute` to position an element *outside* of the normal flow of the document, causing neighboring elements to act as if the element doesn't exist. - -Offsets are calculated relative to the nearest parent that has a position other than `static`, and the element *will* act as a position reference for other absolutely positioned children. - -@component('_partials.code-sample') - -

With static positioning

-
-

Relative parent

-
-

Static parent

-
-

Static child

-
-
-

Static sibling

-
-
-
- -

With absolute positioning

-
-

Relative parent

-
-

Static parent

-
-

Absolute child

-
-
-

Static sibling

-
-
-
- -@slot('code') -
- Relative parent -
- Static parent -
- Absolute child -
-
- Static sibling -
-
-
-@endslot -@endcomponent - -### Fixed - -Use `.fixed` to position an element relative to the browser window. - -Offsets are calculated relative to the viewport and the element *will* act as a position reference for absolutely positioned children. - -@component('_partials.code-sample') -
-
-
- - - -
-
-
-
- - - -
- Fixed child -
- Absolute child -
-
-
-

Scroll me!

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nec odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum. Praesent mauris. Fusce nec tellus sed augue semper porta. Mauris massa. Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur sodales ligula in libero.

-

Sed dignissim lacinia nunc. Curabitur tortor. Pellentesque nibh. Aenean quam. In scelerisque sem at dolor. Maecenas mattis. Sed convallis tristique sem. Proin ut ligula vel nunc egestas porttitor. Morbi lectus risus, iaculis vel, suscipit quis, luctus non, massa. Fusce ac turpis quis ligula lacinia aliquet. Mauris ipsum. Nulla metus metus, ullamcorper vel, tincidunt sed, euismod in, nibh. Quisque volutpat condimentum velit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.

-

Nam nec ante. Sed lacinia, urna non tincidunt mattis, tortor neque adipiscing diam, a cursus ipsum ante quis turpis. Nulla facilisi. Ut fringilla. Suspendisse potenti. Nunc feugiat mi a tellus consequat imperdiet. Vestibulum sapien. Proin quam. Etiam ultrices. Suspendisse in justo eu magna luctus suscipit. Sed lectus. Integer euismod lacus luctus magna.

-

Quisque cursus, metus vitae pharetra auctor, sem massa mattis sem, at interdum magna augue eget diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Morbi lacinia molestie dui. Praesent blandit dolor. Sed non quam. In vel mi sit amet augue congue elementum. Morbi in ipsum sit amet pede facilisis laoreet. Donec lacus nunc, viverra nec, blandit vel, egestas et, augue. Vestibulum tincidunt malesuada tellus. Ut ultrices ultrices enim. Curabitur sit amet mauris. Morbi in dui quis est pulvinar ullamcorper. Nulla facilisi.

-

Integer lacinia sollicitudin massa. Cras metus. Sed aliquet risus a tortor. Integer id quam. Morbi mi. Quisque nisl felis, venenatis tristique, dignissim in, ultrices sit amet, augue. Proin sodales libero eget ante. Nulla quam. Aenean laoreet. Vestibulum nisi lectus, commodo ac, facilisis ac, ultricies eu, pede. Ut orci risus, accumsan porttitor, cursus quis, aliquet eget, justo. Sed pretium blandit orci. Ut eu diam at pede suscipit sodales. Aenean lectus elit, fermentum non, convallis id, sagittis at, neque.

-

Nullam mauris orci, aliquet et, iaculis et, viverra vitae, ligula. Nulla ut felis in purus aliquam imperdiet. Maecenas aliquet mollis lectus. Vivamus consectetuer risus et tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer nec odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum. Praesent mauris. Fusce nec tellus sed augue semper porta. Mauris massa.

-

Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur sodales ligula in libero. Sed dignissim lacinia nunc. Curabitur tortor. Pellentesque nibh. Aenean quam. In scelerisque sem at dolor. Maecenas mattis. Sed convallis tristique sem. Proin ut ligula vel nunc egestas porttitor. Morbi lectus risus, iaculis vel, suscipit quis, luctus non, massa. Fusce ac turpis quis ligula lacinia aliquet.

-

Mauris ipsum. Nulla metus metus, ullamcorper vel, tincidunt sed, euismod in, nibh. Quisque volutpat condimentum velit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Nam nec ante. Sed lacinia, urna non tincidunt mattis, tortor neque adipiscing diam, a cursus ipsum ante quis turpis. Nulla facilisi. Ut fringilla. Suspendisse potenti. Nunc feugiat mi a tellus consequat imperdiet. Vestibulum sapien. Proin quam.

-
-
-
- -@slot('code') -
-
- Fixed child -
- Absolute child -
-
- - Scroll me! - - Lorem ipsum... -
-@endslot -@endcomponent - -### Pinning edges - -Use the `.pin{-edge?}` utilities to anchor absolutely positioned elements against any of the edges of the nearest positioned parent. - -Combined with Tailwind's [spacing utilities](/docs/spacing), you'll probably find that these are all you need to precisely control absolutely positioned elements. - -
-
-
Class
-
pin
-
-
-
Edge (optional)
-
  All (default)
-
t Top
-
r Right
-
b Bottom
-
l Left
-
y Top and Bottom
-
x Left and Right
-
-
- -@component('_partials.code-sample') -
-
-

.pin-x.pin-t

-
-
-
-
-
-

.pin-y.pin-r

-
-
-
-
-
-

.pin-x.pin-b

-
-
-
-
-
-

.pin-y.pin-l

-
-
-
-
-
-

.pin

-
-
-
-
-
-
-
-

.pin-l.pin-t

-
-
-
-
-
-

.pin-t.pin-r

-
-
-
-
-
-

.pin-r.pin-b

-
-
-
-
-
-

.pin-b.pin-l

-
-
-
-
-
-
- -@slot('code') - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
-@endslot -@endcomponent - -## Responsive - -To position an element only at a specific breakpoint, add a `{screen}:` prefix to any existing positioning utility. For example, adding the class `md:absolute` to an element would apply the `absolute` utility at medium screen sizes and above, and adding `lg:pin-y` would apply `pin-y` at large screens and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
Responsive element
-
-@endslot - -@slot('sm') -
-
Responsive element
-
-@endslot - -@slot('md') -
-
Responsive element
-
-@endslot - -@slot('lg') -
-
Responsive element
-
-@endslot - -@slot('xl') -
-
Responsive element
-
-@endslot - -@slot('code') -
-
-
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'positioning', - 'property' => 'position', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/resize.blade.md b/docs/source/docs/resize.blade.md deleted file mode 100644 index a4c1f89aeddd..000000000000 --- a/docs/source/docs/resize.blade.md +++ /dev/null @@ -1,50 +0,0 @@ ---- -extends: _layouts.documentation -title: "Resize" -description: "Utilities for controlling how an element can be resized." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.resize-none', - 'resize: none;', - "Make an element not resizable.", - ], - [ - '.resize', - 'resize: both;', - "Make an element resizable along both axes.", - ], - [ - '.resize-y', - 'resize: vertical;', - "Make an element resizable vertically.", - ], - [ - '.resize-x', - 'resize: horizontal;', - "Make an element resizable horizontally.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'resizing', - 'property' => 'resize', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/responsive-design.blade.md b/docs/source/docs/responsive-design.blade.md deleted file mode 100644 index db2258d36293..000000000000 --- a/docs/source/docs/responsive-design.blade.md +++ /dev/null @@ -1,145 +0,0 @@ ---- -extends: _layouts.documentation -title: "Responsive Design" -description: null ---- - -Tailwind allows you to build responsive designs in the same way you build the rest of your design — using utility classes. Every utility in Tailwind is also available in screen-size specific variations. For example, the `.font-bold` utility can be used on small screen sizes using the `.sm:font-bold` class, on medium screen sizes using the `.md:font-bold` class, on large screen sizes using the `.lg:font-bold` class and on extra large screen sizes using the `.xl:font-bold` class. - -This is done using predefined screen sizes (media query breakpoints), each of which are given a unique name like `sm`, `md`, `lg` and `xl`. By default Tailwind takes a "mobile first" approach, where each screen size represents a minimum viewport width. Any classes you apply at smaller screen sizes are also applied to larger sizes, unless of course you override them, which is the whole point! This approach, while simple, is actually very powerful and can be used to build complex, beautiful, responsive designs. - -## Responsive example - -@component('_partials.responsive-code-sample') -@slot('none') -
-
Tailwind
-
-@endslot -@slot('sm') -
-
Tailwind
-
-@endslot -@slot('md') -
-
Tailwind
-
-@endslot -@slot('lg') -
-
Tailwind
-
-@endslot -@slot('xl') -
-
Tailwind
-
-@endslot -@slot('code') -
- ... -
-@endslot -@endcomponent - -## Customizing screens - -You define your project's screen sizes in your Tailwind config under the `screens` key. Screens in Tailwind are essentially CSS media queries. If you provide a single value for a screen, Tailwind will treat this as the minimum screen size value for that screen breakpoint. - -Here are the default screen sizes: - -```js -screens: { - 'sm': '576px', - // => @media (min-width: 576px) { ... } - - 'md': '768px', - // => @media (min-width: 768px) { ... } - - 'lg': '992px', - // => @media (min-width: 992px) { ... } - - 'xl': '1200px', - // => @media (min-width: 1200px) { ... } -}, -``` - -Feel free to have as few or as many screens as you want, naming them in whatever way you'd prefer for your project. - -For example, you could use device names instead of sizes: - -```js -screens: { - 'tablet': '576px', - // => @media (min-width: 576px) { ... } - - 'laptop': '992px', - // => @media (min-width: 992px) { ... } - - 'desktop': '1200px', - // => @media (min-width: 1200px) { ... } -}, -``` - -These screen names will be reflected in your utilities, so your `.bg-red` utilities would now look like this: - -```css -.bg-red { background-color: config('colors.red'); } - -@media (min-width: 576px) { - .tablet\:bg-red { background-color: config('colors.red'); } -} - -@media (min-width: 992px) { - .laptop\:bg-red { background-color: config('colors.red'); } -} - -@media (min-width: 1200px) { - .desktop\:bg-red { background-color: config('colors.red'); } -} -``` - -## Advanced screens - -Tailwind also allows for more complex screen definitions, which can be useful in certain situations. For example, if you wanted to define both the minimum and maximum size for your screens, you could do that like this: - -```js -screens: { - 'sm': {'min': '576px', 'max': '767px'}, - 'md': {'min': '768px', 'max': '991px'}, - 'lg': {'min': '992px', 'max': '1999px'}, - 'xl': {'min': '1200px'}, -}, -``` - -You can also provide multiple ranges per screen. This is useful in situations where you have a sidebar navigation and want to maintain consistent content breakpoints, regardless of the navigation being visible or not. Here's an example: - -```js -screens: { - 'sm': '500px', - 'md': [ - // Sidebar appears at 768px, so revert to `sm:` styles between 768px - // and 868px, after which the main content area is wide enough again to - // apply the `md:` styles. - {'min': '668px', 'max': '767px'}, - {'min': '868px'} - ], - 'lg': '1100px', - 'xl': '1400px', -}, -``` - -## Print screens - -As mentioned earlier, screens in Tailwind are essentially just CSS media queries. So while you normally define your screensizes in pixels, it's possible to also define non-regular screens using the `raw` key. Here is an example of how you could use this to create a print-only screen size. - -```js -screens: { - 'sm': '576px', - 'md': '768px', - 'lg': '992px', - 'xl': '1200px', - 'print': {'raw': 'print'} -}, -``` diff --git a/docs/source/docs/shadows.blade.md b/docs/source/docs/shadows.blade.md deleted file mode 100644 index 5dc2a2ad4da7..000000000000 --- a/docs/source/docs/shadows.blade.md +++ /dev/null @@ -1,147 +0,0 @@ ---- -extends: _layouts.documentation -title: "Shadows" -description: "Utilities for controlling the box shadow of an element." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.shadow', - "box-shadow:\n 0 2px 4px 0 rgba(0,0,0,0.10);", - "Apply a small box shadow to an element.", - ], - [ - '.shadow-md', - "box-shadow:\n 0 4px 8px 0 rgba(0,0,0,0.12),\n 0 2px 4px 0 rgba(0,0,0,0.08);", - "Apply a medium box shadow to an element.", - ], - [ - '.shadow-lg', - "box-shadow:\n 0 15px 30px 0 rgba(0,0,0,0.11),\n 0 5px 15px 0 rgba(0,0,0,0.08);", - "Apply a large box shadow to an element.", - ], - [ - '.shadow-inner', - "box-shadow:\n inset 0 2px 4px 0 rgba(0,0,0,0.06);", - "Apply a small inner box shadow to an element.", - ], - [ - '.shadow-none', - "box-shadow: none;", - "Remove a box shadow from an element.", - ], - ] -]) - -## Outer shadow - -Use the `.shadow`, `.shadow-md`, or `.shadow-lg` utilities to apply different sized outer box shadows to an element. - -@component('_partials.code-sample', ['class' => 'flex justify-around text-sm py-8']) -
.shadow
-
.shadow-md
-
.shadow-lg
-@slot('code') -
-
-
-@endslot -@endcomponent - -## Inner shadow - -Use the `.shadow-inner` utility to apply a subtle inset box shadow to an element. - -This can be useful for things like form controls or wells. - -@component('_partials.code-sample', ['class' => 'flex justify-around text-sm py-8']) -
.shadow-inner
-@slot('code') -
-@endslot -@endcomponent - -## No shadow - -Use `.shadow-none` to remove an existing box shadow from an element. - -This is most commonly used to remove a shadow that was applied at a smaller breakpoint. - -@component('_partials.code-sample', ['class' => 'flex justify-around text-sm py-8']) -
.shadow-none
-@slot('code') -
-@endslot -@endcomponent - -## Responsive - -To control the shadow of an element at a specific breakpoint, add a `{screen}:` prefix to any existing shadow utility. For example, use `md:shadow-lg` to apply the `shadow-lg` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
-
-@endslot -@slot('sm') -
-
-
-@endslot -@slot('md') -
-
-
-@endslot -@slot('lg') -
-
-
-@endslot -@slot('xl') -
-
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -## Customizing - -By default Tailwind provides three drop shadow utilities, one inner shadow utility, and a utility for removing existing shadows. You can change, add, or remove these by editing the `shadows` section of your Tailwind config. - -If a `default` shadow is provided, it will be used for the non-suffixed `.shadow` utility. Any other keys will be used as suffixes, for example the key `'2'` will create a corresponding `.shadow-2` utility. - -@component('_partials.customized-config', ['key' => 'shadows']) -- default: '0 2px 4px 0 rgba(0,0,0,0.10)', -- 'md': '0 4px 8px 0 rgba(0,0,0,0.12), 0 2px 4px 0 rgba(0,0,0,0.08)', -- 'lg': '0 15px 30px 0 rgba(0,0,0,0.11), 0 5px 15px 0 rgba(0,0,0,0.08)', -- 'inner': 'inset 0 2px 4px 0 rgba(0,0,0,0.06)', -+ '1': '0 2px 4px rgba(0,0,0,0.05)', -+ '2': '0 4px 8px rgba(0,0,0,0.1)', -+ '3': '0 8px 16px rgba(0,0,0,0.15)', - 'none': 'none', -@endcomponent - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'shadow', - 'property' => 'shadows', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/spacing.blade.md b/docs/source/docs/spacing.blade.md deleted file mode 100644 index ebc99e9bcb82..000000000000 --- a/docs/source/docs/spacing.blade.md +++ /dev/null @@ -1,85 +0,0 @@ ---- -extends: _layouts.documentation -title: "Spacing" -description: "Utilities for controlling an element's padding and margin." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -Control an element's padding and margin using the `.p{side?}-{size}`, `.m{side?}-{size}`, and `.-m{side?}-{size}` utilities. - -For example, `.pt-2` would add `.5rem` of padding to the top of the element, `.mx-0` would make the horizontal margin zero, and `.-mb-6` would add a `1.5rem` negative margin to the bottom of an element. - -
-
-
Class
-
p Padding
-
m Margin
-
-m Negative Margin
-
-
-
Side (optional)
-
  All (default)
-
t Top
-
r Right
-
b Bottom
-
l Left
-
x Horizontal
-
y Vertical
-
-
-
Space
-
0 0
-
1 0.25rem
-
2 0.5rem
-
3 0.75rem
-
4 1rem
-
6 1.5rem
-
8 2rem
-
px 1px
-
auto auto (margins only)
-
-
- -## Customizing - -### Responsive, Hover, and Focus Variants - -By default, only responsive variants are generated for margin, negative margin and padding utilities. - -You can control which variants are generated for the list utilities by modifying the `margin`, `negativeMargin` and `padding` property in the `modules` section of your Tailwind config file. - -For example, this config will _also_ generate hover and focus variants of the margin utilities, hover variants of the negative margin utilities, and focus variants of the padding utilities: - -```js -{ - // ... - modules: { - // ... - margin: ['responsive', 'hover', 'focus'], - negativeMargin: ['responsive', 'hover'], - padding: ['responsive', 'focus'], - } -} -``` - -### Disabling - -If you aren't using the margin, the negative margin, or padding utilities in your project, you can disable them entirely by setting the `margin`, `negativeMargin` and `padding` property to `false` in the `modules` section of your config file: - -```js -{ - // ... - modules: { - // ... - margin: false, - negativeMargin: false, - padding: false, - } -} -``` diff --git a/docs/source/docs/state-variants.blade.md b/docs/source/docs/state-variants.blade.md deleted file mode 100644 index 582b354fe256..000000000000 --- a/docs/source/docs/state-variants.blade.md +++ /dev/null @@ -1,132 +0,0 @@ ---- -extends: _layouts.documentation -title: "State Variants" -description: "Using utilities to style elements on hover, focus, and more." ---- - -Similar to our [responsive prefixes](/docs/responsive-design), Tailwind makes it easy to style elements on hover, focus, and more using *state* prefixes. - -## Hover - -Add the `hover:` prefix to only apply a utility on hover. - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - - - -@slot('code') - -@endslot -@endcomponent - -
-
-
- -
-
-

By default, hover variants are only generated for background color, border color, font weight, text color, and text style utilities.

-

You can customize this in the modules section of your configuration file.

-
-
-
- - -## Focus - -Add the `focus:` prefix to only apply a utility on focus. - -@component('_partials.code-sample', ['lang' => 'html']) -
- -
- -@slot('code') - -@endslot -@endcomponent - -
-
-
- -
-
-

By default, focus variants are not generated for any utilities.

-

You can customize this in the modules section of your configuration file.

-
-
-
- - -## Group Hover - -If you need to style a child element when hovering over a specific parent element, add the `.group` class to the parent element and add the `group-hover:` prefix to the utility on the child element. - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'bg-grey-lighter p-8']) -
-

New Project

-

Create a new project from a variety of starting templates.

-
- - -@slot('code') -
-

New Project

-

Create a new project from a variety of starting templates.

-
-@endslot -@endcomponent - -
-
-
- -
-
-

By default, group hover variants are not generated for any utilities.

-

You can customize this in the modules section of your configuration file.

-
-
-
- -## Combining with Responsive Prefixes - -State variants are also responsive, meaning you can change an element's hover style for example at different breakpoints. - -To apply a state variant responsively, **add the responsive prefix first, before the state prefix.** - -```html - -``` - -## State Variants for Custom Utilities - -You can generate state variants for your own custom utilities using the `@@variants` directive: - -```less -// Input: -@@variants hover, focus { - .banana { - color: yellow; - } -} - -// Output: -.banana { - color: yellow; -} -.focus\:banana:focus { - color: yellow; -} -.hover\:banana:hover { - color: yellow; -} - -``` - -For more information, see the [@@variants directive documentation](/docs/functions-and-directives#variants). diff --git a/docs/source/docs/svg.blade.md b/docs/source/docs/svg.blade.md deleted file mode 100644 index 6a009f5c2686..000000000000 --- a/docs/source/docs/svg.blade.md +++ /dev/null @@ -1,122 +0,0 @@ ---- -extends: _layouts.documentation -title: "SVG" -description: "Utilities for styling SVG elements." ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.fill-current', - 'fill: currentColor;', - 'Set the fill color to the current text color.', - ], - [ - '.stroke-current', - 'stroke: currentColor;', - 'Set the stroke color to the current text color.', - ], - ] -]) - -### Fill color - -Use `.fill-current` to set the fill color of an SVG to the current text color. This makes it easy to set an element's fill color by combining this class with an existing [text color utility](/docs/text-color). - -Useful for styling icon sets like [Zondicons](http://www.zondicons.com/) that are drawn entirely with fills. - -@component('_partials.code-sample', ['class' => 'text-center']) - - - -@endcomponent - -### Stroke color - -Use `.stroke-current` to set the stroke color of an SVG to the current text color. This makes it easy to set an element's stroke color by combining this class with an existing [text color utility](/docs/text-color). - -Useful for styling icon sets like [Feather](https://feathericons.com/) that are drawn entirely with strokes. - -@component('_partials.code-sample', ['class' => 'text-center']) - - - - - -@endcomponent - -### Sizing - -Tailwind doesn't provide SVG-specific sizing utilities, but sizing SVGs is a perfect use case for the existing [width](/docs/width) and [height](/docs/height) utilities. - -@component('_partials.code-sample', ['class' => 'flex justify-around items-end']) - - - - - - - - - -@endcomponent - ---- - -## Customizing - -### Fill colors - -Control which fill utilities Tailwind generates by customizing the `svgFill` key in your Tailwind config file: - -@component('_partials.customized-config', ['key' => 'svgFill']) -- 'current': 'currentColor', -+ 'red': colors['red'], -+ 'blue': colors['blue'], -+ 'green': colors['green'], -@endcomponent - -### Stroke colors - -Control which stroke utilities Tailwind generates by customizing the `svgStroke` key in your Tailwind config file: - -@component('_partials.customized-config', ['key' => 'svgStroke']) -- 'current': 'currentColor', -+ 'red': colors['red'], -+ 'blue': colors['blue'], -+ 'green': colors['green'], -@endcomponent - -### Responsive, Hover, and Focus Variants - -By default, no responsive, hover, focus, or group-hover variants are generated for fill and stroke utilities. - -You can control which variants are generated for both fill and stroke utilities by modifying the `svgFill` and `svgStroke` properties in the `modules` section of your Tailwind config file. - -For example, this config will generate responsive and hover variants of the fill utilities and focus variants of the stroke utilities: - -```js -{ - // ... - modules: { - // ... - svgFill: ['responsive', 'hover'], - svgStroke: ['focus'], - } -} -``` - -### Disabling - -If you aren't using the fill or stroke utilities in your project, you can disable them entirely by setting the `svgFill` and `svgStroke` properties to `false` in the `modules` section of your config file: - -```js -{ - // ... - modules: { - // ... - svgFill: false, - svgStroke: false, - } -} -``` diff --git a/docs/source/docs/text-alignment.blade.md b/docs/source/docs/text-alignment.blade.md deleted file mode 100644 index afd8ec3e14ce..000000000000 --- a/docs/source/docs/text-alignment.blade.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -extends: _layouts.documentation -title: "Text Alignment" -description: "Utilities for controlling the alignment of text." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.text-left', - 'text-align: left;', - 'Align text to the left.', - ], - [ - '.text-center', - 'text-align: center;', - 'Align text to the center.', - ], - [ - '.text-right', - 'text-align: right;', - 'Align text to the right.', - ], - [ - '.text-justify', - 'text-align: justify;', - 'Justify text.', - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'text alignment', - 'property' => 'textAlign', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/text-color.blade.md b/docs/source/docs/text-color.blade.md deleted file mode 100644 index 0de8f055ad87..000000000000 --- a/docs/source/docs/text-color.blade.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -extends: _layouts.documentation -title: "Text Color" -description: "Utilities for controlling the text color of an element." -features: - responsive: true - customizable: true - hover: true - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => $page->config['colors']->map(function ($value, $name) { - $class = ".text-{$name}"; - $code = "color: {$value};"; - $color = implode(' ', array_reverse(explode('-', $name))); - $description = "Set the text color of an element to {$color}."; - return [ - $class, - $code, - $description, - ]; - })->values()->all() -]) - -## Hover - -In addition to the standard responsive variations, text colors also come in `hover:` variations that apply the given text color on hover. - -@component('_partials.code-sample', ['class' => 'text-center']) - -@endcomponent - -Hover utilities can also be combined with responsive utilities by adding the responsive `{screen}:` prefix *before* the `hover:` prefix. - -```html - -``` - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'text color', - 'property' => 'textColors', - ], - 'variants' => [ - 'responsive', - 'hover', - ], -]) diff --git a/docs/source/docs/text-sizing.blade.md b/docs/source/docs/text-sizing.blade.md deleted file mode 100644 index 2ecc40e1f713..000000000000 --- a/docs/source/docs/text-sizing.blade.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -extends: _layouts.documentation -title: "Text Sizing" -description: "Utilities for controlling the text size of an element." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.text-xs', - 'font-size: .75rem;', - 'Set the text size to .75rem (12px).', - ], - [ - '.text-sm', - 'font-size: .875rem;', - 'Set the text size to .875rem (14px).', - ], - [ - '.text-base', - 'font-size: 1rem;', - 'Set the text size to 1rem (16px).', - ], - [ - '.text-lg', - 'font-size: 1.125rem;', - 'Set the text size to 1.125rem (18px).', - ], - [ - '.text-xl', - 'font-size: 1.25rem;', - 'Set the text size to 1.25rem (20px).', - ], - [ - '.text-2xl', - 'font-size: 1.5rem;', - 'Set the text size to 1.5rem (24px).', - ], - [ - '.text-3xl', - 'font-size: 1.875rem;', - 'Set the text size to 1.875rem (30px).', - ], - [ - '.text-4xl', - 'font-size: 2.25rem;', - 'Set the text size to 2.25rem (36px).', - ], - [ - '.text-5xl', - 'font-size: 3rem;', - 'Set the text size to 3rem (48px).', - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'text sizing', - 'property' => 'textSizes', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/text-style.blade.md b/docs/source/docs/text-style.blade.md deleted file mode 100644 index 48ee7d50336a..000000000000 --- a/docs/source/docs/text-style.blade.md +++ /dev/null @@ -1,99 +0,0 @@ ---- -extends: _layouts.documentation -title: "Style & Decoration" -description: "Utilities for controlling the style of text." -features: - responsive: true - customizable: true - hover: true - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.italic', - 'font-style: italic;', - 'Italicizes the text within an element.', - ], - [ - '.roman', - 'font-style: normal;', - 'Sets the text to roman (disables italics) within an element.', - ], - [ - '.uppercase', - 'text-transform: uppercase;', - 'Makes all text uppercase within an element.', - ], - [ - '.lowercase', - 'text-transform: lowercase;', - 'Makes all text lowercase within an element.', - ], - [ - '.capitalize', - 'text-transform: capitalize;', - 'Capitalizes the text within an element.', - ], - [ - '.normal-case', - 'text-transform: none;', - 'Disables any text transformations previously applied to an element.', - ], - [ - '.underline', - 'text-decoration: underline;', - 'Underlines the text within an element.', - ], - [ - '.line-through', - 'text-decoration: line-through;', - 'Adds a line through the text within an element.', - ], - [ - '.no-underline', - 'text-decoration: none;', - 'Disables any text decorations previously applied to an element.', - ], - [ - '.antialiased', - "-webkit-font-smoothing: antialiased;\n-moz-osx-font-smoothing: grayscale;", - 'Set the font smoothing of an element to antialiased.', - ], - [ - '.subpixel-antialiased', - "-webkit-font-smoothing: auto;\n-moz-osx-font-smoothing: auto;", - 'Set the font smoothing of an element to subpixel antialiasing (the default).', - ], - ] -]) - -## Hover - -In addition to the standard responsive variations, text style utilties also come in `hover:` variations that apply the given text style on hover. - -@component('_partials.code-sample', ['class' => 'text-center']) -Link -@endcomponent - -Hover utilities can also be combined with responsive utilities by adding the responsive `{screen}:` prefix *before* the `hover:` prefix. - -```html -Link -``` - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'text style', - 'property' => 'textStyle', - ], - 'variants' => [ - 'responsive', - 'hover', - ], -]) diff --git a/docs/source/docs/user-select.blade.md b/docs/source/docs/user-select.blade.md deleted file mode 100644 index ef76d83b9173..000000000000 --- a/docs/source/docs/user-select.blade.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -extends: _layouts.documentation -title: "User Select" -description: "Utilities for controlling whether the user can select text in an element." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.select-none', - 'user-select: none;', - "Disable selecting text in an element.", - ], - [ - '.select-text', - 'user-select: text;', - "Allow selecting text in an element.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'user-select', - 'property' => 'userSelect', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/vertical-alignment.blade.md b/docs/source/docs/vertical-alignment.blade.md deleted file mode 100644 index be85ec7c79fe..000000000000 --- a/docs/source/docs/vertical-alignment.blade.md +++ /dev/null @@ -1,59 +0,0 @@ ---- -extends: _layouts.documentation -title: "Vertical Alignment" -description: "Utilities for controlling the vertical alignment of an inline or table-cell box." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.align-baseline', - 'vertical-align: baseline;', - "Align the baseline of an element with the baseline of its parent.", - ], - [ - '.align-top', - 'vertical-align: top;', - "Align the top of an element and its descendants with the top of the entire line.", - ], - [ - '.align-middle', - 'vertical-align: middle;', - "Align the middle of an element with the baseline plus half the x-height of the parent.", - ], - [ - '.align-bottom', - 'vertical-align: bottom;', - "Align the bottom of an element and its descendants with the bottom of the entire line.", - ], - [ - '.align-text-top', - 'vertical-align: text-top;', - "Align the top of an element with the top of the parent element's font.", - ], - [ - '.align-text-bottom', - 'vertical-align: text-bottom;', - "Align the bottom of an element with the bottom of the parent element's font.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'vertical alignment', - 'property' => 'verticalAlign', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/visibility.blade.md b/docs/source/docs/visibility.blade.md deleted file mode 100644 index 940bbc54b726..000000000000 --- a/docs/source/docs/visibility.blade.md +++ /dev/null @@ -1,90 +0,0 @@ ---- -extends: _layouts.documentation -title: "Visibility" -description: "Utilities for controlling the visible of an element." -features: - responsive: true - customizable: false - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.visible', - 'visibility: visible;', - "Make an element visible.", - ], - [ - '.invisible', - 'visibility: hidden;', - "Hide an element without affecting the layout of the document.", - ], - ] -]) - -### Visible Default - -Use `.visible` to make an element visible. This will typically be used as a reset when using the `.invisible` utility. - -@component('_partials.code-sample', ['class' => 'flex justify-center']) -
-@endcomponent - -### Invisible - -Use `.invisible` to hide an element, but still maintain its space. - -@component('_partials.code-sample', ['class' => 'flex justify-center']) - -@endcomponent - -## Responsive - -To apply a visibility utility only at a specific breakpoint, add a `{screen}:` prefix to the existing class name. For example, adding the class `md:invisible` to an element would apply the `invisible` utility at medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
-
-@endslot -@slot('sm') -
- -
-@endslot -@slot('md') -
-
-
-@endslot -@slot('lg') -
- -
-@endslot -@slot('xl') -
-
-
-@endslot -@slot('code') -
-@endslot -@endcomponent - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'visibility', - 'property' => 'visibility', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/what-is-tailwind.blade.md b/docs/source/docs/what-is-tailwind.blade.md deleted file mode 100644 index af1356fa0c2a..000000000000 --- a/docs/source/docs/what-is-tailwind.blade.md +++ /dev/null @@ -1,175 +0,0 @@ ---- -extends: _layouts.documentation -title: "What is Tailwind?" -description: null ---- - -
-

- Tailwind is a utility-first CSS framework for rapidly building custom user interfaces. -

-
- -Tailwind is different from frameworks like Bootstrap, Foundation, or Bulma in that **it's not a UI kit.** - -It doesn't have a default theme, and there are no built-in UI components. - -On the flip side, it also has no opinion about how your site should look and doesn't impose design decisions that you have to fight to undo. - -If you're looking for a framework that comes with a menu of predesigned widgets to build your site with, Tailwind might not be the right framework for you. - -But if you want a huge head start implementing a custom design with its own identity, Tailwind might be just what you're looking for. - -### Utility-first - -Creating a framework for building custom UIs means you can't provide abstractions at the usual level of buttons, forms, cards, navbars, etc. - -Instead, Tailwind provides highly composable, low-level *utility classes* that make it easy to build complex user interfaces **without encouraging any two sites to look the same.** - -Here's an example of a contact card component built with Tailwind without writing a single line of CSS: - -@component('_partials.code-sample', ['class' => 'bg-grey-lighter py-8']) -
-
- -
-
-

Adam Wathan

-

Developer at NothingWorks Inc.

-
-
- -
-
-
-
-@slot('code') -
-
- -
-
-

Adam Wathan

-

Developer at NothingWorks Inc.

-
-
- -
-
-
-
-@endslot -@endcomponent - -### Component-friendly - -While you can do a *lot* with just utility classes, sometimes a component class is the right decision. - -Tailwind provides tools for [extracting component classes](/docs/extracting-components) from repeated utility patterns, making it easy to update multiple instances of a component from one place: - -@component('_partials.code-sample', ['lang' => 'html', 'class' => 'text-center']) - - -@slot('code') - - - - - - - -@endslot -@endcomponent - -### Responsive to the core - -Every Tailwind utility also comes in responsive flavors, making it extremely easy to build responsive interfaces without ever leaving your HTML. - -Tailwind uses an intuitive `{screen}:` prefix that makes it easy to notice responsive classes in your markup while keeping the original class name recognizable and intact. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
1
-
2
-
3
-
-@endslot -@slot('sm') -
-
1
-
2
-
3
-
-@endslot -@slot('md') -
-
1
-
2
-
3
-
-@endslot -@slot('lg') -
-
1
-
2
-
3
-
-@endslot -@slot('xl') -
-
1
-
2
-
3
-
-@endslot -@slot('code') -
- -
-@endslot -@endcomponent - -### Designed to be customized - -If it makes sense to be customizable, Tailwind lets you customize it. - -This includes colors, border sizes, font weights, spacing utilities, breakpoints, shadows, and tons more. - -Tailwind is written in [PostCSS](http://postcss.org/) and configured in JavaScript, which means you have the full power of a real programming language at your fingertips. - -Tailwind is more than a CSS framework, *it's an engine for creating design systems.* - -```js -const colorPalette = { - // ... - 'grey-lighter': '#f3f7f9', - // ... -} - -module.exports = { - // ... - backgroundColors: colorPalette, - borderColors: { - default: colorPalette['grey-lighter'], - ...colorPalette, - }, - // ... -} -``` diff --git a/docs/source/docs/whitespace-and-wrapping.blade.md b/docs/source/docs/whitespace-and-wrapping.blade.md deleted file mode 100644 index 409d23ed0f30..000000000000 --- a/docs/source/docs/whitespace-and-wrapping.blade.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -extends: _layouts.documentation -title: "Whitespace & Wrapping" -description: "Utilities for controlling the whitespace and wrapping of an element." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.whitespace-normal', - 'white-space: normal;', - 'Cause text to wrap normally within an element.', - ], - [ - '.whitespace-no-wrap', - 'white-space: nowrap;', - 'Prevent text from wrapping within an element.', - ], - [ - '.whitespace-pre', - 'white-space: pre;', - 'Preserve line returns and spaces within an element.', - ], - [ - '.whitespace-pre-line', - 'white-space: pre-line;', - 'Preserve line returns but not spaces within an element.', - ], - [ - '.whitespace-pre-wrap', - 'white-space: pre-wrap;', - 'Preserve spaces but not line returns within an element.', - ], - [ - '.break-words', - 'word-wrap: break-word;', - 'Add line breaks mid-word if needed.', - ], - [ - '.break-normal', - 'word-wrap: normal;', - 'Only add line breaks at normal word break points.', - ], - [ - '.truncate', - "overflow: hidden;\ntext-overflow: ellipsis;\nwhite-space: nowrap", - 'Truncate overflowing text with an ellipsis () if needed.', - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'whitespace & wrapping', - 'property' => 'whitespace', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/width.blade.md b/docs/source/docs/width.blade.md deleted file mode 100644 index d5f690976a09..000000000000 --- a/docs/source/docs/width.blade.md +++ /dev/null @@ -1,170 +0,0 @@ ---- -extends: _layouts.documentation -title: "Width" -description: "Utilities for setting the width of an element" -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.work-in-progress') - -@include('_partials.class-table', [ - 'scroll' => false, - 'rows' => [ - [ - '.w-1', - 'width: 0.25rem;', - "Set the element's width to 0.25rem.", - ], - [ - '.w-2', - 'width: 0.5rem;', - "Set the element's width to 0.5rem.", - ], - [ - '.w-3', - 'width: 0.75rem;', - "Set the element's width to 0.75rem.", - ], - [ - '.w-4', - 'width: 1rem;', - "Set the element's width to 1rem.", - ], - [ - '.w-6', - 'width: 1.5rem;', - "Set the element's width to 1.5rem.", - ], - [ - '.w-8', - 'width: 2rem;', - "Set the element's width to 2rem.", - ], - [ - '.w-10', - 'width: 2.5rem;', - "Set the element's width to 2.5rem.", - ], - [ - '.w-12', - 'width: 3rem;', - "Set the element's width to 3rem.", - ], - [ - '.w-16', - 'width: 4rem;', - "Set the element's width to 4rem.", - ], - [ - '.w-24', - 'width: 6rem;', - "Set the element's width to 6rem.", - ], - [ - '.w-32', - 'width: 8rem;', - "Set the element's width to 8rem.", - ], - [ - '.w-48', - 'width: 12rem;', - "Set the element's width to 12rem.", - ], - [ - '.w-64', - 'width: 16rem;', - "Set the element's width to 16rem.", - ], - [ - '.w-auto', - 'width: auto;', - "Set the element's width to auto.", - ], - [ - '.w-px', - 'width: 1px;', - "Set the element's width to 1px.", - ], - [ - '.w-1/2', - 'width: 50%;', - "Set the element's width to 50%.", - ], - [ - '.w-1/3', - 'width: 33.33333%;', - "Set the element's width to 33.33333%.", - ], - [ - '.w-2/3', - 'width: 66.66667%;', - "Set the element's width to 66.66667%.", - ], - [ - '.w-1/4', - 'width: 25%;', - "Set the element's width to 25%.", - ], - [ - '.w-3/4', - 'width: 75%;', - "Set the element's width to 75%.", - ], - [ - '.w-1/5', - 'width: 20%;', - "Set the element's width to 20%.", - ], - [ - '.w-2/5', - 'width: 40%;', - "Set the element's width to 40%.", - ], - [ - '.w-3/5', - 'width: 60%;', - "Set the element's width to 60%.", - ], - [ - '.w-4/5', - 'width: 80%;', - "Set the element's width to 80%.", - ], - [ - '.w-1/6', - 'width: 16.66667%;', - "Set the element's width to 16.66667%.", - ], - [ - '.w-5/6', - 'width: 83.33333%;', - "Set the element's width to 83.33333%.", - ], - [ - '.w-full', - 'width: 100%;', - "Set the element's width to 100%.", - ], - [ - '.w-screen', - 'width: 100vw;', - "Set the element's width to 100vw.", - ], - ] -]) - -## Customizing - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'width', - 'property' => 'width', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/docs/z-index.blade.md b/docs/source/docs/z-index.blade.md deleted file mode 100644 index 3e4a7bee7b8b..000000000000 --- a/docs/source/docs/z-index.blade.md +++ /dev/null @@ -1,166 +0,0 @@ ---- -extends: _layouts.documentation -title: "Z-Index" -description: "Utilities for controlling the stack order of an element." -features: - responsive: true - customizable: true - hover: false - focus: false ---- - -@include('_partials.class-table', [ - 'rows' => [ - [ - '.z-0', - 'z-index: 0;', - "Set the z-index of the element to 0.", - ], - [ - '.z-10', - 'z-index: 10;', - "Set the z-index of the element to 10.", - ], - [ - '.z-20', - 'z-index: 20;', - "Set the z-index of the element to 20.", - ], - [ - '.z-30', - 'z-index: 30;', - "Set the z-index of the element to 30.", - ], - [ - '.z-40', - 'z-index: 40;', - "Set the z-index of the element to 40.", - ], - [ - '.z-50', - 'z-index: 50;', - "Set the z-index of the element to 50.", - ], - [ - '.z-auto', - 'z-index: auto;', - "Don't create a new stacking context.", - ], - ] -]) - -## Usage - -Control the stack order (or three-dimensional positioning) of an element in Tailwind, regardless of order it has been displayed, using the `.z-{index}` utilities. - -@component('_partials.code-sample') -
-
z-40
-
z-30
-
z-20
-
z-10
-
z-0
-
-@slot('code') -
z-40
-
z-30
-
z-20
-
z-10
-
z-0
-@endslot -@endcomponent - -## Responsive - -To control the z-index of an element at a specific breakpoint, add a `{screen}:` prefix to any existing z-index utility. For example, use `md:z-50` to apply the `z-50` utility at only medium screen sizes and above. - -For more information about Tailwind's responsive design features, check out the [Responsive Design](/docs/responsive-design) documentation. - -@component('_partials.responsive-code-sample') -@slot('none') -
-
yellow
-
z-40
-
z-30
-
z-20
-
z-10
-
z-0
-
-@endslot -@slot('sm') -
-
yellow
-
z-40
-
z-30
-
z-20
-
z-10
-
z-0
-
-@endslot -@slot('md') -
-
yellow
-
z-40
-
z-30
-
z-20
-
z-10
-
z-0
-
-@endslot -@slot('lg') -
-
yellow
-
z-40
-
z-30
-
z-20
-
z-10
-
z-0
-
-@endslot -@slot('xl') -
-
yellow
-
z-40
-
z-30
-
z-20
-
z-10
-
z-0
-
-@endslot -@slot('code') -
yellow
-
z-40
-
z-30
-
z-20
-
z-10
-
z-0
-@endslot -@endcomponent - -## Customizing - -By default Tailwind provides six numeric `z-index` utilities and an `auto` utility. You change, add, or remove these by editing the `zIndex` section of your Tailwind config. - -@component('_partials.customized-config', ['key' => 'zIndex']) - '0': 0, -- '10': 10, -- '20': 20, -- '30': 30, -- '40': 40, -- '50': 50, -+ '25': 25, -+ '50': 50, -+ '75': 75, -+ '100': 100, - 'auto': 'auto', -@endcomponent - -@include('_partials.variants-and-disabling', [ - 'utility' => [ - 'name' => 'z-index', - 'property' => 'zIndex', - ], - 'variants' => [ - 'responsive', - ], -]) diff --git a/docs/source/favicon-16x16.png b/docs/source/favicon-16x16.png deleted file mode 100644 index 700e1ee3356a07645cc89b11c60a38f673a75893..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1073 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU$g(vPY0F z14ES>14Ba#1H&(%P{RubhEf9thF1v;3|2E37{m+a>IT8J-QueHALJNrWj~@@XoE_`?f|O-WGdw8&DRA zoR@C~x&i3I(A^-rV!%>B*MbZLTDoYH=eo^6w*`Rp0-XwUWXzFm2`9E2PTpWLeFM-I zpl2ag0R82$c5~2iLER%%Lu{6H~`6R@%}>U3<`(rLhGdf~_YAVxOU^bnhg z-=3#R>Ljx8u~&TlasOgCr<4>YYv_(UcXkFaGY9Ovb7w~=D@ZK-;{DGR?0hVVI+Cf+ zzfH6WNoQqa47z{8l+mDb%a#ruMpjm_MY5nI$C%{p?$RoHJ?lA;!(QU)>&pI+OGe08 z_x;j4Q9z-Mo-U3d5|@(`6!;8`PM$brczCDInonF^UZ=EH3jhV&f)&|4_sKW@8FFiSI)?&BqW|Zn46k=`9?~1`uhV14!?f!+{j3>Djtgg498vt^dQ^33>QhmnLj~Kt!ootmJ%wNTGh8TBoqhAyNeQ6iRZCnW zN>UO_QmvAUQh^kMk%6JPuAzahkwu81g_WtHm5HggfsvJg!4EFa4=5UP^HVa@DsgM* z4FBi@)DT`35>XPASgue|l%JNFld4csS&*ubSx}P9z)&&g@h2XR!Y~buQ~syVcs>nc zU{>bVOXe0<7WSSj!Yr)d(qM8pg;{xXh{EX`S56!`b42C{`{@Rc1zvg#ufzpQJ~^3A Q1zN%2>FVdQ&MBb@0H6@ObN~PV diff --git a/docs/source/favicon-32x32.png b/docs/source/favicon-32x32.png deleted file mode 100644 index 06043e59937f2790b3a11065f4a45232a6ddbcbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1392 zcmZ`(eK^wz9RHP(h}w{fySCX%#NIM%=_GUf7%}rQs%Ol`iepS(a-Em$+Kz~2XQ2z7 z^7^Em6&-S>gr4$p$oo;dou`Nj8M*c6{c+Ft`F=mo^Z7iV&*#6d*w@G1$Y7rV002gy z2Zg3Z_?Ok!)82&C)DK#KM7nsp06;^Y;d+?v7m?*b^9F#_0|1aN0Dv_um97SWL@WTz zF#&*F1OVo7CCz?LT0t+|%bfyjewmvsw48M0qi}(UmBOc&YM+7AjBEw8Q?yILuFJswCd<=j$46j&j%JiGT#)P33oN6C6{q% z8ABrT{Pz-xvpGY6+X&0|Oewrs6i$}SkRsd8ln`c1o)V1vO6Aj8EuV-}50_JiAFeX> zT_5z7wO=B!&J!3v76=;fE8W*42#>eQ2#Va%bv5OnRrZJ`d1KR+xhCbH^zTTMM^y~5 zSP@U`VrJFZ7qjqVF)jO{x7mH4)qiYxzQVNrHZGf)rA$>$;E!%!s|yo7gS zsC!F{sDg3zdwICu!jS8+(C6+iqIfRhb(F$ems)q>P0&QIb$i}EKO^c1OUkIxRVx-b>y_%f_SJALpeVOfwfVB} z*>b2R_YgiM+gLXIx%H|uHl7|r)^#Wjz2lLkPZOUjhIW2)_S!!vwN#mL+tanOtnms; znC5u@>EPJ)^Mv-wW|CPcu?>8a&%Ki4585c6o%V(M%By5bm)$vybPQo?##lCo)cD9) zL``(#g+%tj_@nYoF%6l$(kNl42(%Suy?gK3hwwQJevry$HBR+=OgHZc zu_MY`4z76)yLa~vA&L`yqQvmF$i->o{o3Jk#QCj7=mu}qazW;rdB%;iH{^_B)Tn8D z;l!|L>|k3orWXo1G4Mur7{#0pWR@yp3NGc7ta;ROFJZXwPePz>P@Xgj5?Fc2%uv($ zwjXoBgi#~{DRh`$V1{Y1O`lOJ^#y{r9T(E?Bo0C!@H~y4nOv+c2sX^2`nSl{a>aXT zSHMq)Sw+tZ(s|OMCyDwIj|hz2Pht|@HR-9MW1FT0JCV;%!4^CRuL-EQ#fWOuS$CW* zI2fMb)HA~g-KjGG=|LhbaB0CQJE;?cP6n$zRqEu{vZUGe%D`Lj%tH!A_xRtm{Vy<= zI*@YS;)Y#lja-yA@Md%gq8G0oFRc?kJb`7XVv3uNBNB|Z9@lI&vi{BI7G zr1Hqaxm{}r??js(uRrO(6CNrnk)VNuTy#p!sgW{D?3BUhp*y(6KVKXBnDUnRrP|bxh!t^dlV+ sI#zNzyk}&vOWCWmRBr1@_qge456qcE`Aa7q3bhpg=;lMIKgrDe7dI_n8~^|S diff --git a/docs/source/favicon.ico b/docs/source/favicon.ico deleted file mode 100644 index c558ef848a1ee6fbb926c7a8ba522532202a2a88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15086 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 RdPmcIWWw?{`HXeW{{f2UGw1*S diff --git a/docs/source/img/adam.jpg b/docs/source/img/adam.jpg deleted file mode 100644 index e84595dcd42491af2be55b18a95b89e1d5611fb5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19574 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�xhjG8F-#oMnfE{6aTuP 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

?DH?(Iu#b4hfl0{w&MH4&}oe!E~jfB zVP8Ug2$C&3LTTk-o?{cwdie5U41|wd*P-YhAl9DBEgwwC=aM^CxV$Qz7fw2Ac$iFM zh9OjzwpK^!2AASH8;A0um3MK_`u_k*^er`nrC9XOdi>zBhs53+n%`LaZ<&S#lW{-f z*WdmLy=_NIwY+|^pl{FoEA!lL4NbAtihCF)xD>KI)Ing`~ z;rX?FUT}z@0Hg0SHvv?4C;ahTPmF#e=$;F+GhfY_2>Bx%vlGSuuaPw?pA-CB*V5}% zLbi%WlK}gu4|er5@K_mEeDl%^cm76L>~v^HmO9Pszs#xPZxQ&b;;y|DA!WB##Br{C zxcyjX?>BwNf!e);!v6pcw7(46HPznMn{MW2=LfG|rnPM?{4?NtC0CIWQoOn9NFKhQ zO8LX$pT+yVYs}Cz8G=T`Y_cyLdS~gyeLOkqT8stOA z@YbW_ElnYwM`)1c-1Jf3>0Xquc8@LX75B5y!DiI(&z>>ot1psEvAcib{XX7P90jIe zdE3)HxvZ%?b$F2O79GYJv(moE@R!1m2k3T2@_R**l>={-X9pce_}9#z6MR{vc#p)( zq3OO|u9IZ@B$Zc&IplyleJcz+F!d$L7+o%`?8fJLlq2mORU7n6{LK%Cz7o3lpRO(b zs7=0=VS;hclhhA${Hxi%F8o=y@V=D32JnQ#?fy_lbmT&wpYIXSel@^&cfx7nN&dy* z4;L+^gW(0RBsjq2k-_J!dnboKX72~ZGu~_0(&`S!<}BMm2f6NlI_aCE87_U6$ncd+ zRdp$?Wi902k=SMj`O+j4`}<`G5tv>{#<&(PwQRlC38guP+sg=e%I8bJoIP zd=9uZ z!FaR7TK=VHFwyk^V>5ynu*e|y7~~ONL?Y8o9<=6~cRwyaXb%kdBf=V`ri0$`x1I{Jp0)D#gFY<( z0AqM^4+Hq7Cc4q$m0Qi^u#fK;_V--$=clb?>w49R@l3bB4d0{{S=TDCT&4J6NhoH)}Q4{n54YH^COZ81agDU&Gh( z!=-9At8n(p<&_&JC_p$PAdpRX?f(FVKG6_@$xMw2JgCmxcPG-l2GL$qCb55VZZ9Xs z_j9;@y)#{hguFu^hVCw4TP3@-l#pMH^UqUXqhN4S!{Osbq`9P)uetJAtXykXbAsiI z*>*e|!d@%!zr#I#-(K*>p)Q{!XUmnXj>eKR_t2ak7+2}v?C;}vthIe(!TL`B01o(5 z#rEwqGiq(P3FKB{AIoTf!;`gC0V4kZb+|tl>Ka3M+gnuA^xrC1`2=VS1|Z-b0Ou9@ zd8hmv(`4{=m1(J3DY&$T7Rb)%rHBHoj5$_T91ulu<`$--rl+NsFKf)C^hcunEcl6k ztauh1$hCWO{{RZ;y`|z_Tf05PXsoS-$`D8a(XiP7WE|I7;r{>#-&*Bz_ny)@}R5B?zDYF;jpX0!2pPp4eNb3c=A(#g1_gdkN! zCx*s0le;{%c0Ue$e{15ehdPd(K7@786ZlH?qiZ-MWq7R11Z{;u$_UBjh8PZOik!L8 zrFt%muDTv~@r&b^#CW`FpACE=Zn{<8_|>IwB$0%tDq{m980S54Uv>Ce4My8UvbWVG z^Y4U9=D+u!9G}jzZoC_$oeI-Y@Hd4cxqIm1n#SjJVH2Tag;LnT%IzPOQ`fEhRbXJT zNfmBni_XjkETC|BA9RE3%{)c9Vxb+k3>@D)omuarMLxm!wHPkJfiX zhGUL_dx789z8Teg8)pufn$fw~$aCco6@zD{m;Ak+a&foFk*gs!H}DvVH5ye`)^!4(L7}@pYcD5CYox84O_jq~kf-JJ&@9l2MOQ z)SGSd^!}0MJ{Vnh#20b@0BTMRqzm$II48Gn!|<xGmR3`);_%+tx+Ye}x(^h?BsV9Uq z?b?LUuJ%%PD&&%SkzRYPd__jmzRMi4St5LqgVcsN9XnS$;TwH>!`>f+>bbj`Y#cw$ z_<#EAd&b@dzVWt|43?1{J(rUB$4~zNSG5W$JxH9S<9Mx1%_{C+4H#vf&F<0IF=yoA zy$ySwm7_n1ZXvj`-XbG7Cm8l3v3v`q$#H3Ir|PmK>am31*OlY&uc9VfdHCR@TbRrpyeC0m7Q|Ywr{5 z4CLHIOh=V&^%|6V9=WPc(N8IiFav@**UA^Sy7sN&2V^hh#^7|v8RotE8`jiqa~zli zbDllxI!z`8o*UdOY)&5-!4*+BB{PokX1xgvBw(?r<2|bX0Eez^wfG~N z+J87l@{*@Gu1i|*G;>$;EJb*NN^eryJuj#@+kS6lu{Gt) zkq9IkgLFURSW;-$my)Wf0Q%O?-Bb?Q`qi6z_~V;s2XHy01sJp$mO!(x=~{OBeYK3) zQl#RryhGwfwhU1Y;lTGb#pxa=xVyP=a7yj}067(QZ3WV2qw1H@*&*{jRX>(1p3&}X zwTq&VkiZ-qe~n}KlGf*0vJhHGK|SjK0E0Xz`b;Km=gq+_O(d6@4o{la(CD?DIu(o~ zebL&jXgXz_a2ISGeJe9i`$gp7DL*0Rw;hFzub2QM9Mb4g+{?XKe$%o(pwz3W5W?Ng z-r24^YEs|o43RE2_4KK4)?*+U+ULDfk3dhc&|S}Pk(mMpUf=zC^ULX_l2T*@eJi$k z+8ael+syT@Zh5UF4uE6zsWnFzt6hDL%1NbR!0s#aE8`}(+P{e%Hu8dz0!oM}+)b2Iybj>eWAM@t3+f%wPXmw}O9}KJvR_NP)_w)Y%BEGfIVjw6z zJ!|KW0NRM)iybg4>0KH!0*?Ow0804GL*|=j>v&l5QjAgQ+Cl;c9M`7lG2?D4&Gd!F z20t40JtcAhu6UyyOtd?#IdBJh?5u}MHk0kCm?@b^+3@vnr`3t3%X# zRI^58Tng_;hbO7YUgm4zv}6O;y89FYFe?&kUnlpC+t#%#CJs35T`yywW^Ggilh&uG z2q5CNrMbyb=roT?ZabQNH1+4DcANrIQ@V~RF+d4L6i@+06i@+06i@+06i@>WX(~)p zae+?2fB)C{cf@}YbWI0KYgwmTxq{#UgPQpw9e(c5U6)tZo8ttHH?*2wxBPx1bb;yYinYAPd;j4*DM##?w| z(%V~^RTf)Wfh%5J4xN2);H+gi>Uge+8(p$cBA&#wWMPz&PB{K`^)0u>4Ku;s2(nKz&AuoEaH;u;#xi{ess6R` z--n^NmT$A{X-Mp~>-txOZ6%p6HBxToIK*K5iU&o{a4Y8Vu%fK0?7A+e+2y!wUMlYn zweI#te7-NW)pfPjJX1Nik-CH#Sl9cgIUkLCJ+H+N1?ie8Z7I>^#t|`&-A!^HDA#-| z;XNblZ)BfrxKa`|Ku$e-V0+hvS@=%-#4mHGv_D~l{nZ`5wY+CWwKXb>mJ4q)&YoF| zrHPdcJNA`c_FH_*J~#M-sCb_3%FK44#~lFnuR2k-cBG6O^*HB_)|#@0|VBK7+ZhpOsp;x}MISkv^IfsNkvlTAIk-_}TG-*77g- zMLZdBN+-)S@t!f$Vv*nZSAc2q>3Thoxw*F!T(AcYG6~NZ9+k?)A}S%<_g^F2j=8N7 zb{gniT`7>S+)>bDrF{)7G%3T9C&*%PGp$peM%z4g_GeIvMu$|me5aCjlpT9?tthph z7vJ7Tq{XjY%Os&e23G-3xzBG}<7T@O%C}74=?=u4bORiIRV}sYhkQ2sx6ReZQ_fC3 zt8ZqEBR0C9KzMWF7m7X^c(NbtolaeL$~eKhg_)cV>;XCXhhzEI+r9|>ral~aj%Bc# z^XwN)I7_AS@_hq+-2OHBlc4y!Sn%z<-`J5Nyz8;0W!&IroM)zU&swc@W2)*AuBAI6 zk-{kp^0rvxBzxzrdDSp6s{Q`}zrV=#DCRXNt4CGY{{Wf$gQR%h!#CG4+uCXn%`BvV zit5Dv0M|X^KNI+>&(E~bbZKs+R3%spECK3Kb?eM~FLq!gsA+4yJU{b$75?~iY8{9HF` z7M~=MAG&~Ys0Ta@)--7ewwSmG&4Re}?_QJfw?vyj_`~9OuT|A=BoixRs>q;&^shWW zx`s6$yvXMrf#8f+-q5$Ri(QY*u~+u8Pq|~rif|OjlFuT50YBa8$I`YfWr;0}4V*)a zs`HF`dsk9rPm|%bmaThh z5t-$3vXormP65yLucUQ7V@K2U$@Lqnh~u_^67E=S0D7AE!^NH@)gQsShlV~ChSIz@ zpu*`ks6UC5IgSi+Nj+G4@#{=i`;uxyJ#E!C3vDw9BVNMd_SX-nq|4+ zPTsQ-f%taCYy2J7G_N20Pu2WDBJ-ZfO|7muSmIOjIXwY$)7V!;qTx;HvE@R#tz9Jd zf7kp2YvD(VZhjj4IMei>5XF6Ob>U4%%Sa)Al1Qf~G9EVsA&5B02iq0)hLhq=9kpAV zD4~N%SA}lkF6w5LSbp;kq@H?w!>O;&AKLrITBeax1P;j zVeq@+XNa^22DPf&++5$AQE1GwZ4DBh01TwB)Eecd&nR=V*r|u4r^yrUuZuqmv`-sr zHYs6a_B%^?V!D&eWo`RT{GGYyBEDPwqV07503FCJtk|daQh7-yzA#Aqv0c316}&^Q z_<3yfNXD0J<7?pVkox8NepTg~ovrJ~t2FXlugX!)5HR(DZf}*t3+D2YJ_D^hbYt(JL zA8)K^>2(0Yg->W}txH_~mAPNV$uT;8p%_+H5pB`9Z6!A_w60Fhj6zO`|wYjM1JSXA(*zxl;o zuC8Z$Jz45n)L&uSs@fKlc*$Pef1YcO)xId(tP$D^OuT@AJq=&iJVU5l*?AGdLqdAv z)2C|j7P8cCyhmv*%o(*tB$2@N1Nv1)E2$E1q4XbvwR@|(Q9a$eM&z7hkVSFcGqUl0 z-m@EM0fo3fGLym22kDI0qj)b;j%%;%$YTW%40f)&TTA^eZPw6lSLY*>@9$B2NF^R+ zYn-=)SH$+y#J6#yN4E#pHR?Ay+>;3HFD3Hxk^cbeu6Ih7_IOh1kj8s~T>k)z+UDZW ztVEJJGLA(}uFBaRqEBTSn1sQDDdV+LlJe$Y(OIBuE^}U8;foD!=2BS?$T5;h(scW= z=EO+;6WZ$aCNcLchWXVRNYo8`=e_dfo$z-zi*rGI#{M1Dw#B}Z^; zx|a6+OUpY34bXa1Z6bS#T6>n-tTEg0rk#PSm9!_8#bHu|YYv^qrFt%$`mEV+;UhH- zot~B>gk&}be;Vzqt}PNU5pz)39%HS=sK~xcA!TEar_!g;JT$iBbc5zR8G7BMxzA2W5xsydrOTrSf|11cj^ns=B{K`Pn2}7Q&34Ejitsh&V4JipH7W3v9Vm&Ij(=8>GKzCuG7h>X3$!n zn*RW_w~8KVMVb-w6Vo;GXMycJ+tDiybDze$kB>U2zwvzWhTIh3dJm;h_<3iE5xbmz zwati^EjD`?8hrSLrjfF&H>GP-im}3>Bk@B*O7Qy03t$wae-ddqp27^mGRTu z{Z<-A$D?Tqa5G+;rEnByn)8h$ZO7KV8%r!gf+&IK;x#=JP8)syAe_vS}UyL6OqLs_NP%m48f$SDCe~R zM@2hrCOM!4qKaCp0F+ThFbYg&mWp71|IqxIxtcKx5X?2=^Co>(7dH0uRHqv^*t;wObukf@J!v%Yb+l>kADGH`?~lr~ z;YsJzPMxL!G{1CXo_n5sE8cu5;cE{LMzhET)}Z4q#AGk7-&5~gb+J*y!{6QPk4q1g zRLrYdj*2_Wr>C1T{1@=&Ub%5LEM~r3iDa~F>`rmHl^ZiR%^6^GQ~+DLB?{ zaV=D>D<`r`R((37R|cg+2Ny0?t8U44*YmO@vy^z>#oC^`BwOuFixe%60;eA?ewFL6 zX$u@I3han4%z6x0l3D6Eng_#}^$3+m8|?r@gn$c<3ZG|S#Bi( ze$u=y#vSlF*0r#8tJJhKigw?(Q`F0|%pO~VUe!5NlzH1rOS`n2{IAf^_<(#ZapC7S zS5e6|q>HpE1+q>$d)Lvw41ch+e+GUWyo1*e4 zw^?14_&6CotIE7TX{qb;Nv210BIt=Rb&Di#0PqLl*1Z~Wr06Z>Ie+pGCA=r0-g{{US0nRxmagE!h}sq)WwayKq{+ut9pe7EA?4>yOk=dg`f zz%XKV9JnK|=U-K6U)j1Yj(pO#s}MK?0BuqJd9M)h-;1pLUwLC`rQ3vS44*jTlHI+(~Nx&3O*IF}^B;Bv)My}v@fWV{k-LG5Jp2lLH+vyPTW;QrCK zpv^l>VRjMrhL1avPnY@k&ls(XOK2_bJaLi}08Tx((nJ%F;(2E^jA2V|j z9B_Xc?tBOE`^J9~yv;X8iCzVfR6Lj)Msj&QfUG5=ytX!jl%0~hGQ?NS-4@&sxY`F_YVk2Ru3vJKKAQ)E)1I=|p^~?H zUx(}?ONnE(f+feyKmae-7~-Yy_lvwc;wZ~#`ivLKKj)LHt8$gOU8a9@FufsuK03hwwe?3rhZ54L#}W|6mSluHB*~b zU3|tgs=9o-Bk!-;{{Z1zYkF0`kF=y;wP{#Ok(_V0$v=+Le`=j|oqkBB}TJ{Y~Wg2EfDCBsG-mR$YOxZr2Kcy*IKtY+Fa2F;`(hx+nI z*A?&KDb5h&ne!OxwCYsnr_|6Yl9fLxSO+c6NYC>X^{4E)@c#fx@xP9wpITEjzMBfp zB47$L6Tu_-*Ub?_BuQu^jajEM9ixs3+l-#a9V_oI*rP?eTkUgMbi^SefH$cfN8yU- z#mknAnlQn`n!Hm-=pCk)VPzN)#IY)m;Q)Us@V^=A_dYt;+rc_T#FqMPvCgA$8Nnm| zc&Q!R__5pZuSxik;zjV+h3+oHA3j_|5MEfw=W6lnPJasc!uR4J@LinRMvB2^iNj3u z58giRS@L@FYvpKCl;xrI*qX7YO}2eOs@ZsQ4-US zZKByGo@7$;Hs)cBZakcxhQ5lP8`-XDZhRgq7dolJ8YAe*v|qOPMr|q?hM8uFB6b6j z7x4rGx#&K%+W1#R@V~&%hj-o}Xuis>o@ovD$j8W}^(=e)o+~rq<%@XBQ;zgybR8t* zf;gUW>*}f3>-4Xje`}A3QTU$yd>N%)s@UmFB)Qnb4It>JpW&}6vy|uTQ}sRUuMh00 z{bFlgpXPkQto&4;S@DLY;tvp_yWh%P3vy5oxS)CgPt|;Ld#`C5bbP?+!xb1f>Bsb} z3wXQ_cM4qIPLoX<<7mfG_04T~a`w*hd97fJ_Yc#Kc>e%D&bt(1wnuj~o%P)6ei3-z zRD$dN5y`>1+;VpwN47G zCJvxn#{Lki5ErK&^(mBe8g;&#rJ!qeM7SUk>S)w_L#W*n zmk1MR7-8I37`jZ7_?8QaE;78X-0*sTg?f$ti+MGg7$F4oB!4{7)JWreJ>rJE)DD_h zf}Kg|abBY~mtdC7Bj1rdybuJ%}0tg+pFlU9C}qbI>$P7mnWA;^JSQ7(Df^;v36gzFIy_d4ZB?ZW7i4L}Q`t z#dI)kje!0-&FWdBbtj#0RhZ(r`%@F$7IgcqwEqA~(7pRapafHpexHqHJ*&p0)0QVR z0b^QdqKA4Q+v`;9b&I=c0>O>0IrgeL)~LT>5VCGz!5HAx{SF^FV{o|yRa-${Qhic; z%ZNc~HXgldhlj1wc6Pa!a|73}6`kYlH&Sgig`p`YVk?FCeWYusUQI%0Ib)3Gv{78Q zxtp8kQL*eTJQi1Ok)6ZWIj)+d3NDn{%FYNxH;Z(jn`=p|7Sq31+Jrk~8U_Z{=QIHeTvS)#TLu_Sx^g8;fElI2h?(#igLyxEM9& zniM0;3((+o$MvsM($pv!!O8qTO8J(4h0yObv7BbT8%kVbJXZszC;@o?&pHG7AFz8Bx?4;9R@m5B0LxF3K$YiUjtq3=BrF;lBk z-CDDS@V|v`JV|`Esr#tZZg*_qK=1zm*6&`O;t#NRV@(=Xg&+Dv_+K+0GkTx?wOsKI zkF59)RF-`{0X3Y;6z8uM!Y_zc<6K+)UN_i-3XA+cwc^!{O0!iKuuALApKXD~VKDf4 zQQEYfn}20_e2+u$Zh~whOR%}PnSOTkAKf3;z4JrT6_Cqv0s=G7U@O6`J|e*wF=#q# z+{~i@Il%g!^~rdj$G$k#A~qM>tRX#8H7ZZko@>OO0}+X-%{@I&&|}1Tc3p*3aJQAa zEidZNP1f~`O@GJHL8nM2wbLUhxODRm-T?Rd)+dfHZ#8L0g*2QfgA!afKu=X)>S=xy zX~Jn#MxmsAy#0T|wzZ20^j{roI!(x7adHxMKkOBz)M-|6ioYV${Qm$GN-~xw1qjuh zzOg@g-K_Lpwn*~}?MGg?xYBfeZPhJcAV(a03@<`)-n}2hQ(M@0YU*pfj&Qvy`@SQ(*FSF z7&<>x!sb5B^EfLj?`~iCCqwY{rkBB1nhn~MCFF7iC-_l`#(&RB@_!4rjiEDXo*&cx z*tYVNB^0q%B>H;R72T(fEUaL@n9i0yQj;Qbp&On`^x)UrUjTHi7Q;ws^p-aU;mMLl z=Piz&*siLPh8{DV?IkC-L+2@1#ABsGmLHmwsKa-=R!c?lJ}L2}{xTOTo+r1O$rpr) zl&a^c13iCQW~7ch4=$-Y#bFmh&A~= zac?1Fumd56Nf3_w5rbalU0xL-%Lv-t56&~{6`^0Ay+=1LuXCo;^^2`Bg|~*&62`=N zr=P!odiKDrEoVy6Yy*9!;pWt5j4<+m!n1O7TyizkECeK?1tr*ef!?OK)K&#x%6`)+ zQm)+No}#^$kBw2Y(Al@}-fgYq)UFvPxCF-+-gYNA`FerxUhD9$#=bfDPo{suLfUA% z@a&EifdOPB@wrc2eMT$B^!;8B4{D=Oy0&ZWMVK^ZQSzwhtU&9>Bk-iS@iwckYC-%# zb2Y>W0PxS^&xL*=>Hh$0(XIyM`|&pp zg!Uu)^sj8UMUgh-9P{+A#38OhXQ^oS-Ux>KMZ1lhY*{kW3@+wBjyUOGroRJqPm7wy zi3RtIAcM+uK(0o~7#^%Z8+_wS8QjFcbLFf_mXW=cqyT?07&E?9W zSLW_m_2;-1p=ECj-h5=KT$aEb?j1h^{Ok67{0;bE*B)bdZqV`%DUray?_NdmmeatW z4)jH_@Q;S9F1$;su(z|e5h-F@g5(e3LC@EU_37pjljV$A;m<6TQn8&L# zI|5ksHL>uM;0}$XL22Tj90RQD@}jX>)pkH}_fZGRF<)0f$xU4t0F7{|92&x@|A zS~j{pJSGlQmos*6?>-awkMU>48ja4MeRtsfTTHUE-punv3Wi~|TMAFz&r|DPH!p`g zb@4+`Tm1t{lJQ3kBxpjPP)X_2*1uopHbyO%8%%G(4bz^~>kC~!PLIg3w@Y~Qkf@0-{k_{Df0xU)^-twYBbH>+c$>2}R-B_DZ?cR3m0 zW2S3=uT^QMV~yohBGXqhelYm^P549b<@7%XEPvWfACYYukam(k);E4S{cG~qP1CM* zTYI1FV$l3um0L=i0NpKXarV zSlY(^e*QXoRMLkcec97FbG2=c5%AxFlIO)QV>6UwIUbxE`Z>HeVWk*M8%*oT{JH$= z7gg{@+*;IH&5WTA;4lwt{#EK@;qBg_vFdX^#sCw~THaFgGL1W3Sm3;2qG}7Ki;Eb? zW<7@$?0*mMqrULeUQ7sY3Sq{3{uryLNVmJwf3sFy(xUAD01xo47fG|b@D{T1Ht8d| zAmgwe4zP3Rr1A=)tts9D4 z9QK=gokxhZ>($bh=FSrnt_KGP^u}w&3mE?GJZbLn3-*lJHU`;z2@87jFx{`KqHR+|>LrSFvsY+Qof>A2f+ zZ*`%}&El;`#rF+s1dRzVf&jt!x>v1uOGCfWElSV2UHs(NmD~7-LD6;9vW_3$wljh0 z!ThV#55$O~i_3}<+~5K@{OQR)h|Vou?do*)w|41qvg%NP91u?<+PfGev4IOi{6jof z$UZC8HH}ZjHgiK8BpbnOdK1X6b+OfNt)Yq!vzJ_8pK4Ntk|r}!Z5<}BaWR#gHw8f- zg>$yLz**8c@(6DAp{P$IMkU*TRN}aWnp>Sh0#4s7;ODqBlDVO?;$ITT(Yz4F<}NUC z$K_rt2A6;K;?~Y!Nt+~|$FBpmeL-`f>9N`QjH567$geBEwXlhuJj^m2k?B<#SrFCP z+31$3Yi}3ZWXywtPk*Pq7rO1ewaYE4`Gz(Cfm9%Wx7oy@^Ne)*S3O~FZT0CR!#H9v zPvMbLmG>>P((W}K_KPAW3wErHJ5l>f%Cn~3rnWCMvn8-N#yvXLHJ+A?%If6g@+m6; zpQ&3~Jp1Kr0yy-~rDUDS1Th9Z>aHDwjtlJR?kN0R76l?0O9^iJe1Cl$}HKbgi^AH`&lljoL9rdx*OK)u^ zeAd7&`{W)r(o4Ym)&u8RDnWth|`zEg^Dy8qK+#t!`FG*P~P19><`?qRAv+9(c`9J*~Z^ zvW6Ur#I^A>pr|JtbU3JQZ!a%oL_?6r98%?dMRm~9n&vMn%R$H;{{WS8Qt5_y+Tf}A zdsjyllSjBrd2d>&ads^sDn{eeGbXq_sXdAYXWe=a24}$o&1Q>AwZq?2Q1) z9r5j7Ie1ppr@jo`ax3c(3R$W}7}^NvKM%{Tco@lRWA8GWe(RC!S}Z^!gWI)wW}6l< zyR~q7JS9{EktWq!B!TGoMdyt$l;4c#ll*y@%NB6-=r) z1JkBSuZV50?qNjo`oec9#cFC^D%G_iwpTH(F~=X3WmgFrvr?$^T?Y(g=)zH=l5ekL zzwv*Kq`#H7%jY&uKnv?$Pm-K;x%AvSmb&o7VrQ=^z2ANR03>bS{5YQf08Abv z@VELs?YP`yP6Lc`2fw#^=)3{qEi=ScvRn9u!CBxXBuNk*r|}uhcRm!FcwXEF3l1~0 zwhu%2*CnZGcD@_^T@6 zN9rrsekgoNpTWKej$J)aUEQ~n0`&l%r2RVk*UjD^lFckGFBarnT((T^PdmsY=RWzW zr5UG0U1w1D16ATa=W>&;d0cZU2=@fP;m zN4(TAWgjdHasc%og=qLA!clmpOP>AY|+AUcxoBWTg?(Hrv{6BXDN()OH1^l?L$4TP4(*%BUG%|gnWR6^N zO0ZT3*9O0CY;EH6SV6 z9@X@@M3h^L>V6x=Fz1q#dN#iE#x7!!<&Fu0!FO=0=7#`7B9#OY(*%xco}UbpNNu8p zZsQq4Zg_F(V?B84KU(NKap8X$cz)>*inOV$yziD3WaDb6QMHF0;;MLm!rmtFZPlfZ zhxGZTxgaQ&Rk+CGk<;s%`rc@@d!LwcO-q*AnmWzBtg*!}+EVJ$@T^#EsXPS~3=`96 z{Ej=8GUmP!{Xzb6zD(Whm&iJ^DF)Xm=VVf#&=3WfXsJvOy>i=eP!bR0FR#!z8l%DofM6Kd^lT66!T;OMgSpr zUrtD_GvhRuUMBG$hyD@h_j1`jy(2x_KuWS%#6Em5`@5Kh827Jz@JGUL1b7QiSTvgm z(8i!N(g4ynJC;1x1xfSTbNM6QrAyhT3V%1|cy+Jscj5a9VE+Jwlf#;}lWR0$PdZo* z6Xx571CV?1o-5ZiU)oRMPLbi*JVN^H6Tx;f6i}V=zp#va+3m;}J!{q^(R961(e3V_ zj^Y_qt48V>NIgam73BUF{hIy}cxzUDUe82|S)M~IVsG9oUok%*Jper@ilp~V1mjt3 z)Ac-_-}bT8^&!7Q@D8zk04Fc7FU#2D2dL+-)~I|8)f?i!#NQD7Me#km!Tp)G+REB- z%mcnh_p_YW+B$pa^EJh_fsZ!L<;bazl;9nt4xA8iUk&)8Jx}3J#|!kb7}9)fo@$(x zQE;OK1Jif-_paJejIS6*%;TJA7a3HQ)%zcAYFfpfon-gY$+9>`<|CW{Ip9;RHM@7V zORqBvE-|~0y~rPxd|RsPdZdidU0z%;b$HzvW92+xVDb;WT>k)s_gAyJf;o3dV`PR_ zS6t-agu(0o0N2HKtTVCH>qTyTTRy*Qb*)I(2W_5`o5?*4j50I+>ht*1Z+vpHSwkhN z7+&DzH}*mNWOf+m74igs5u&@(U|DAJMfJm6T&o|w9&!*LpaQSh{7JdiwJUJLA8Buu zQ=pAG0QJDnC#7ic*43GPW)0fs*jCz>sd=Xhb0*2AT(h6~XCJBeBc*(a`$2p|vcE|F z9B4ED0HeS&a8&)~>J*>U)~Ce3j+%dibTqKBm;EaA;JH6DFzP@(g?uM3i*)IA_10&& zX`V(U!TE_KGiDt01)YZBk=4;RIyJd zkU<^4&TFsNHCyZd04Gq>Ef}msbO)jLu8v#V?-S`F%1dDz3<7;~*1B~#8cyjHJQ;PW zYkDu*wL7iugCKOt9Xi*(_(xlN%_C*waGZ4<0qmP%lNxd*R@y@ z_RZCC&p5_CE6BVX;4NcZ+pKDmu*(L^XV*P5Uqjw$7LaLDLeqyEcpu}}r6!bE0)XC1|r&CR5$-dgayamRnwu2!~&Q0KqAT-LPx4ozrSvos^F)#D^`aa}fz@dr-u z#Dh+bH<0!u6Pofb982OT{81L6WQAggUN`XPh&)9! zQCm*Yqa1PQd9KGw@W~pF+O;dDW*s@>>0KtTX)43!TC;xW=OVJ^v$<|JR%Z#}4~N#; z4Y!%9o%tBceL7cds>TMG%c2lY+4dFAJcF6Wsv#td@AeKTF(ghN@|JTs{P9y3j+ zy9AZ2ju*nd0J+rehN-BH)0Q}|U$FRlns&8sWpyGS;9_yxo@&hB6eEh| zZ4y2kjN|a3xid8wqnp?4S4_A`WP>|!M*_FB?N$lxqXjT?j%%6m_lTzZB3`O&jEuL_ zt$CJ_@iRo#V=zZ_f_M)hNbN$4YT|N=c5M1jQPYFi2_ii870zi|C9BKkOyIF@-KqL+ zp*8lBqj|>#Pp(G>tJzykZF0`!uuOhE>QPT~vDag0G}mZG;(&2q7x=fu8vW+6E}LU& z#Tjs49S=3_7KfHcK6$)5ZkE6{8PpCyO-BMzNCYmL{m`(ro?qYf}>Uhh*)kj+>K?=xDQy9f)={63p=0@2a#R9&zE~FA(vxytz=}^9nHoA-{l?SB_-(e+f&Q|{bNpX53&OfbocGf8raX(f7Ry>-VGR?RjnNNPTxnX!_ zpUZ4u4k^3Xm$_zm_aQj##c(>J79_FX{*>Zt6Pmb+ zCwAQ+Jan&%KWG@O*{}}Gr>A(P>cpU`+xfD>1__vY-$E;5!G%#yzppyZt!`Juo}|d{-r>!^jxN729d)f}<7Yo|Ku|X^EV7#dp>b z;~ZkR-7Iav9M^qfxdS!P6U470rn63*S5a&@2CyvGk)HL^TLFw$Z8UflUZ%7|0y?$01KbKnh48pCkw3G7u&)s-q3(v#& z#Fbaa#WX90&X&`uB$XZ{+!r#$MIVcu@R? zL{}W2d3_$zA$t6S4H3r65c-++_l@8f3c@9rg{hP@h6_BB4QOIt<1SGqj<*hPxL{{U)Y*C#zltEaS5 z<(9u9%-(;1d=oXA9nxE-S(pBL%YmPwkL6wW!7m9}*jRsUUCH*XOIAY6`Od{W?f(FH zp1+lNmb2oY_)KjMlc(EA(%eje-?jr}@zVs>lppZ0z8RRHx4rVLFQhQTE8&tiBRJ$8 zymR{3JHynKDN~e`XD5AnquyDj7M?PmDvdc*!_k6@X=xcgy4$6d&#rzZX|@-?4RtGP z`2xiqyOkvKxd!Fn`-=JN;l8=?KfoRyu<=#2LjM56*Dr$`o?}(Yoc{oH6J7p?@R#BT zjij=Z#~R}Q0A|K=_VEnvQ=Tz^G4IYg6cH8oi8AdccR7*%x)2fht5$HRI?l?aN)(l{5=H3~iY0bN&+z{kAgy*1D( zws=uo9M0Cc(aO6OB7|fjV-;w{y|6d~jMEk}QCc&P(ztIQd_vK_9_bQlnxmI?`67Zp znps@*L{Z5n^cx_-z*Zj-e0T8<%i@oWG1?2Zo} z_2FJLzMoFk8{$8N@jQ1Z1^ftbmoNd8k#WJ6KHPlDNc65lRrrHraCGk-=yQ3uF-5RG z?WrU#K6sx$b(D;QjtKhKq^PI!Fr8%;XVdaNn$kQ`Vd3A2TGo|2{F=lOUqYn+01|%Y zQSH%9XZ&37o|*AeKsr-8+22|babvBx65O4fBx8u-gz(>09)OS#lcN=q1` zaT=tcWqiy4#~AjkOV1wo#9V3`2C}!B4eg36M*$fQpz==~9C~qGP^8mNFH_5@ii1uw zS~IEC{7b3XX}@9dJYh9ENfH@e9j&})hZ*aTJAd`6iO@bFc+SS?XgWpg%J}l7+p$WF z%% z2RS{Iel^w4B<%!pa;e7im6JSA!9TOdj(k&aud9~QEuzZ5oN&V(c8uiymC|_c;kD<& zD;RHd{ZIQ!&UVDXlMD*`gZF)FtC!*~y??61cYSo?+dDkCcnyxk`}eM2sZRAS2U%uDvc<`xL)VR-Z8hl@qdXH^7Y%53aSqa^z^Sn z@bAMND&7^kol7@UySEjrJ{;@bToS^gd|Z-w;~w?t*2#TorLDcvfXX>PgyXlyPTsQg!L!b*AK1u zV@kM)NS51PQJkJR`q31+mp*T@UekU$UrTiqG6h9EZC`(>?Na!|Rln6Ej`l{(XmUrW z&-1S%z3`phpDc1kY|f;D8z1M2_YGPbWbk2&Mo(Zv*MN2B`>bPBm!=Ba@68?yc`M zJqq<~Es<6`o}_f#Kl<3D(%Qp|o3n32&^#UEODl`(jXvcz7#ll%M}OC~drqCIM;+qF zX>Yw>8NkO={{YvomGzkPj}7V(>oFX(qYR^|=RDWGcst@Yk#QVpYi`bDPyr*qzvEfW zbw@-b{uXZd-sVdv7HFUafed)919*1IC{3ITowx`80IyJZlfb$q{q3^eI9S-@X+Nb3 zP`<`ejNDppQ^5Qq@ef|OwU*~lMwV8=i+zBGvyo}_1exAK+ z*0c!j7@xF&Rk{2t#B{g0vAjmR!Y&E}+o!Lu74M!N({HZr(%}d(Fdgb-Xog?u?=`~< zRlvyS`PLkM3Au|08>R!|8WLq;iKCpKfgsv{D*2- zn#j^LBul|9+1&4tb5|KSrmkf=ag$POW2w@`?3PM2rOXS0G7oOm)LDON-Cg+&4iNBt zt4hXeeJ@YipkOXVTd~%cYs!i@8p*RmMEGjl+c}?}I#(Zk;b^6iKF$bJ{uR((YZp6O zX&8vM)h#PsT|o-P%P$zATu#@sGc7d9G}u}o#G%O^-qnvSl$TdRNnNlFbywzSVQFy1 zaCoe3K3&+6j&~d!_M+@G*x!Ntn{pI=(VSC$(dQ{-QJS{~&nd7t$9l@SBseg9r1b;e zy&{d7foN4ij1h`WE;Y6fyMlWf&M9{?#{&{M>+M~RpW*qX8>VBx$R6|%?|lqgyCZub z+HqHgpX6I%Pi|`6(;FFx9cYr}jj1d+J?J9+&KgOCcN>{NGXBND{j`t zJByT*>dXv`7#>AU54T}CEVe$Rj3wjpm|};ocq@UeWb6O z=IzJ_JpTYH?&QA`Ta=80UTdxEmo{#8rsL33SFx-NJ!xb6EU3-5gI@)FNr~pwCCT|1 z;Ct8En&zz2>GCwAVG4Qw0P9!A-Y8YM)iHudZY$5k%F(kvn=FSku3PY)oD~xQ07q_X z+q8>yMNoS2TnC4&wxWE$=hD4rPk{Wrd9Rk6x%y2wr4)3QQ0D|!Yhw>Xj%%N=fR0Z; z=QY__MgbYD61kk^WOZ6>Uw1ru*KK0B!8Ocj@ZbvUEYpEqF-MD9M@MEk2RW{q+FL| zxNVp?$LWvqD(`?i6C8HZT)aj&89w`;x^s*v_pJW_8F==?!w&u#@T!~5MpfMSJRvv> zl0ExZgU|`Z&&k@yhx{nEYoODYh+<>EWG=ByBO@i~nw~2S7YOm)MiGwU|K`o3PoyWHo>b^DbPOb3+!7QE`nmOJX zQsZMV!-2;K)K%gr&0}F!_KdBsZzHQJ%qUdh%J@YT=S?-r`rlOkd-u8J-wrg!pGC2g z%MiS>jm!t|PWW@AKpEP0nn@diikx-!8PBz6N#aiv_!dhWPZnsO zWVB7OhmWT0WO|H`uRn!!{tCFW@ejruy+=$X?M=I)J~$hIIsS&WmL9At&lNSIO|M>t z6f;Z>e7_HrQJtkJLK9ZAx7xSeYoBI#S_tj5$aLsVT@WG?IU!UG{dli4_@(1LfBq6J zAK{0BBR|?2r~2!R6XhcvyMP_|C!UzEPSK;gvziI^hFE~-IR16yODTu;rO?^|y&F%% zAQ>okH&gV<73Afsp0jgTvTXPGzN4Xn<)bTIrKe}V;C&_VL*YH2!v6pa8vw%NP`V-R zXCs$x-Ff1@?i5g`9fvgyygTAm18HvcbVIr&MPj(>ewFG@Zc^rF;*g4jR93_xM&JR* z01s-4VHr+3XOE>=ZK_Gf-lAAHZBf{Ctjj9NwITU36dslGrjMgTU-{cE!i@ie!w%U!D`_P_P`p2x3v&TSLLHrfWKY9P}!DA+-HoTr|@^1@Dm3k(!I zhU9R1_y(t~zr&qEZw}vTBnNi?+j~E>6$(0z0vM6^I1ii8WYzDtNbia3UEhmE8Bh% zd>PYZnm-cw`ozGR#O7NKJnkwnm)|1v=dL?6x|)Rvl7`Cx>oD&WX)4>=rub+k?KzZf4_OCqD{tszhCo;{aX?r0-g_9-ns$r%lR2_xy- z(!9&!RMPmyE1TPKvPm0O{Y1*O+SFG>7eL_DLA$jyruTo7N?~y>z|= zhUzd+KmMwP8wynqpltjpY4(Wj?k4+5``FL_0AHqV{yBmCXW`$p*}=4toc>iV>FR6DoF6XcuZR3$qH6k5nQq7;ywit?9qf^n18{N299OA$ zTg6e{#~qT#nU@^($gA@?V`uK%tKuDFQibeqbqG(D8w{>EHST^K@sw?A5YlZCGsX|E zTH`!#VwajnopM41!Owh(<}?jkNrezed?PXKbB;P1m#Q~cjJH12S+6y{07rEmcPRx% zYs7R7Mo$LbN|z8ke>uY*2PfOLP2sPNusz_=?Cs3um*s454JVA7#2zTr;Ip%~F?s(0 ze~yPedgh45tELqsouwVo^oN7~BwIabnbte2c}zu z;XRg%X&wHtDUv~kIqZAlyRQ-aJkb0{0|*~rJn`+#LUB?P=W#jT2mD0)ewZy}21yqK z*yg=wMbWJ1gxy`n0~4Rlykkc2E~BSkc~(dSBY=Gf?_SfV=~|t&ne!$t&4ahl?zb&F@5JXu`r_`%ra^+kHI-tG93E*BaSGEstsh5u2x8eC!#hJ+Mba>_0be}F|@|n9-`YxYgph#8R zF7CNK>aCUi)CvHI#t&XAjPV7wqpDq#Z0tK8-RUKL1lr!(o|~%cnq=^OmNE%GmFIU? zvRYt3zc}ksXucBEp>c5|?p*Q@HGfdIh7ICH`PaGcigroZHF}mT^$Uq?&BOePMln<* z*48NsGX^K26;i@^Z<+M;O@TjJ#yS-C_xst4sm4VLJ;vnv9;c`34>VCqQ-DX-y8i(9 zOKj~=lw1b%u1ePG2&~c&FbKtYUaf6)cdf6M%%K<%!14b8*QFSy^%SLTk7K>m#pLEi zJ@Z!*MUvH%c5z(1TU;sWumM_WcOA8}F(8%(q^?_+EbjixAkW?FT>k)y^|=+7>}pFM zzMl2V4->~et@aCZxT*QQI@e^jcIIH$1RP_nUAbPQZyP2_quSkF#}iBl4P8aXl^hoA zGr=6yi%Bixjw2YY4MhI{qvU@OrOe4V{{XO}K+c>2&1b-YrP#SS=C{t}gsH((RIMQ~ zu`A9qT7g}mSkZ?c$LUo;^Ob;Ir*I9UYV>10x>w+1S8BjybM+ z!aNW$pGxd(VE~NrpGrv_RU~wF5$yuH+e92!J!Y82brx&Vw~9PU%-gmHjCHO1ag0_y zv|TH91mFtoiadIZyp?S_)CxGoOb!lfr5r4Dr{%>#8eo>G7?!C~HubK$OH+cpx(}j^ zW{T}RmK0G%0tzU{dME&*iYNf0iYNf2BO;cH0Enmyns(jadY?_e2dw}xmmH3i%CS)u z&)uL8|JC_t#~&HnNARV#lcbPuZ=eNFXw;5a`}4(lr^0d3X}&Sk9>!=s!yqAI+(8YGlylhEKjMu5+ql>4uNKzk z6(x>v4lqYfbC5o@^VoVdAil4NR=%srpRMOOj5abWG|J|s%B>}}*8Oc}xARBbpA-HV z>E9B3EVeTrChpL@meLR5a54e*Y~cR@^{ey$088+EvG|T(5BQ?l?C$N!LmLgJq3C)Q z=YldZUt)gC{{Rzj{AZ`#_$clblab6CsfW6E$!k=%TwjN{t|zNOJT529|+IUlwJz*8c!#{{RK)8gb3dqBM@f94T$XACb?o&3!Ej^(Ne9wVC+F zDwHX>)TebTt#0qXb69u__Ler&SuUfdyfUc?I)WJvI3N-0>~UV5@PFV%&x5sA@rR4` zDK(!F-2=LJCu%9`tL>j*^sl91Na2MOAY^bVMVcti=EtRQN_?rtDJ%9zt5UUU(o(NE zO|7omG!jyb0}qsUr-LK%8xf3g>s3|aU_zbVwMy?+u+qY%%*uuS?&1c0tCH6S(l%W0 z*^UNey=7EX{}=xYA}K8(4U*CV(j_V_ARsk#iGbt~LnBBx2nZ4?B{k#>-7$1CL$`Dd zIpp`A-~ZmV?z-zfI8RvT0Sji%*`K}N`}LC6|IXLGy-hvRT>&z!snabBB#Jp0LY$G^9>eE7@ID0fs=b=>^jCex6AJOuDjkv`lag{-!w%(^yzwKA0Js{RcFzB zCs#?OBS&Fc9F7n>>Gp(*M={LG9 zV`hS5q}JBq4=&+8&u+}lxkW&Wc*Hd#A=;E)E{pat7q{(U7KANA`L7I^pVfTUcdzQB z&Fihr!dUbGW)BNuFEb~#6Rtl3vT`MTy$4Vxb&{b_Yny&nMq=>nHubsZdTAMZciD)_ za{5Zfav)3oG9+>%ZR3rL{J@$s;}1a?pNCD#t<}G$zl}!aUGgVeJsoJ^a6+d-2lT=` z2-u+fbZvv}r>Vda#gYg*4gRJ;9^hUS@M7w)ZY)wl0zKEGm@bhZS@dM|gh5clr$cte zl`_Bv6`%>6t5$)x@DyE7R>^6?IhAk0MbLZgupnu4 zQZv#sUO^?{)}pD=`{#$Wu6KV)pRqH*g-*UA6X`G}2FN=rXP?TIvGr&H{7mp;sRRP7 z?JrhZ*vDtKDE(iK^sYTa3roS>^D#R}8n;*v>n_a@Q5fRay^Jm-8D>EMA!3qv-xxRK zwy@H#d-nd@zaQD?0&KwAK*u;LD07y#k*RNW zHQvsj3z&354dm3GNis@Y-<2UNT?GoqK}>`aBn@|niU2FwE8XSNa@*Xnn5#sBB}~j< zhiv)*nqthn4Mr-bSu%4gE|o~~d6~T(Wg9j2kNj?PBk^pxwE)AXUel%~W>T|F*UjAG z7tDJa9q{Hx5GHWO^fi*b9og7U4OtKL_#8BRAWkfNabD_U+uOxwX1s9sw*Ew*yo$j4 zIxgsvk3r*S*NrXP)}m|DIYQwpRC?3F=Tax<-NOkZKo501yyN`6TdQ2rU7BqPi0Hx@ zShY@@RP4$ftM{ZCR9;Cf7BesURC1gEBai*qUF+$8pA%n`1z{?EOf)n_rWumxUuuCD za_>+SkD1A)E0@=)=_tw4zzE6Tr0z4O7eaWSm+7W1II{-c#k~aI0o%714Htp0AX$Ur z@+x=t2Ds^VYU-~{MPjgR zJz)KOBE*cSP+k5=^B7c3OdhsB*|M#I{F0bvXRq+%xuon_wqY%2+mBa?GB`nm8^}iU zaAs|*bvdnB2Joop8HM@RwGsCs5xIS3AZG3YUjsx#ZPT`h$6FewM|n+0^}S)t_m z?}=+v=jMZcK~nPIoeEk2C|J9T`Tg|?76Gi!%)Uu30}OteoNmz`A$zfFD%4BzR;`*m zA8WGK>mmCFSs7{zZ>fz(y7E_dcJ3~hRC@M3oT-#Mk%4iWTANOxr0!X}YmF)EvwTns ztb~iPeZRE$i0=ytSA?iavDjiv-{cbtFb~nKXx&Bm!Tfm9q-&U1(_n1qIA*^^YISBxAT6%&N8G;zCk9YWOyE0) zP=d%)F<#Voagdn`M2qots;MAt97|u*--<(@OgpUHnKTz`2BnOpW4(FM`{4kDj0fbr z;KFLtNi})k32i=>fMu^UagFHVb?tIf<1ocM_EX}oBi5k)T!*FA308u|oN8o}(-}8y zR5)Tnjq{UrsW`4G0_i0MjK5XnUX*|>v*Pw_=zw8(+waNVC4zouD-kHENZ`KTsoT)M z>fVnJW4V*dV)&1VwqZ(58lSv4UT$Z_nnksHbo_qj;tsUcroPY#%sZG=c+8va`c49q zI72YlTYi*1+~2#*XO;q_x;F2ARhBqo^q`_3(U7IT_IGpxeL$oTX@(=Rc>OZ7;ImN#5>y^(|$#n;RTxHmWqht>;yYtQd$ z80%(6i?w2pHofnhU^TI_$)>&E9+L|vn~lWDk&2o-9IMSSASvwe$59S;bXY-YBXjTY z7-*?yjrt&Es%O0Yi?w=_O|h?bjo`@}w9u3Z(U@fdbeZZre234G;_F5EkmrsHZG~!+ z;TN4v%{`FL{&FFXEK!^nwXCDsh)ePiw-q&^q?jeK9(>h*((t#II4~pdu?Cv=1=e}T zY6)Ny#{3t>SB1auEVHEbqDEew;9_xuUi=9G!b1P=XzYLwVWzjQOjhWX}my8@BHZu1=IyMho zJSh|`kKOJCVEJtQ$c;W53?5Gp7wZl5Valu%Hh-9XHI#- z?oZCKyzrS}k(W;vj0J-x)zZlEj>9E8ZzxQR>GUdi>4nABzq zw@-Sp8du4E2D&&7d7uiWgA@faXwGa+x*j>(rqKNweJd!zho!=FlaSUK+ucZr+LS^c@dKH47;5&)oz#Cp6E|^lD9s+d! zPZr)f6z)+lT?x@8MUq9(j>>;f1QsLt)+)3wzoQL){)a_K7I9})utzhsJv8`2SH)U< zlf_z@BoOCTJwVDeDhR8os(Rr*-;v6RK0j>Xh)i#uHK&UG!80=#On`>UZU z38?jr@gL-7@$HMS==MnbX^pxH1t^=2APs|QFJ`WO{_}SX+>vJunqFp%{xsdfUA*tk zGrv9<2vwHiC3IWh zkoX;8j|q@96&5qqJ8Cy!VZ0+d5$dy`z<6svg-G;@?3{pvHEUbKIlQDco<}kfB0v{T zt_c9ijk~LC#|D#8R8(0s!lUQIjQs@V26-@7nE&9kLm&%$cH$qI$#jdC*iqi~351Ht z&4#p|nKP}EF^$={T%nFQ-*Is$n{8ZuBX&k`tPzolW1`os$=ge+pN|obNGfY(aazs}oX(jL8HA^iYyesI zr##`lITJb!)w85N;u$66Jp5t)?>4cASq4U}ql1a>(9A|R_CVL(2 zF(r2TBSz zUf(7$3n#mjVgcc{^)^~enyY^S=6k$^TB?Q?|?8-Ou z#>Z)W)-zC?M7(S4R=#iUodahdIe9({8%t(FU?Vh90|nBMy3o`Twzp!ms~`LJiFUv4 ze&S-Q&Fe&LG_o8bqm4c)gw%^Rttvi!HC0!fC?rBT*xMfd8ldL%j~Uz$c)t-dwn!nRDAj8n~I^rwmia4 zPy9#9iivH$a%D9${GOGO^KyqX=T>&fYMeiVdKEe{N9AF`Ya}aOhoar5d(ukhpD^8^EPw7|~B{_w@Xm+)vKT01h+1X#S4RoU`WN>%q<5BHB3c_hoT zy<0VUHg zB5)?Bbyl`0M*dV**XsTIr@kSWjfz$HfUg`NUVU>m*dA$cE|r7q8`FP0+Zk!wWA#2I zLrqp9DlJybud9^@;~g0O2P3#1| zezE4qEijGf*}Je5zm4UV<^7LS{2MRwL@$9)4(6lB;>vsj0NO)?cC%n(nP1!(FM%re zHXMhkDO_89x=q_BD-+3;#Op*z?o%*?Diru&jD+!QcSm z`f1bj?2%U3>3Qh`?lkMvl6_VHRAp#?;S4IOQ`0z89&o+I9d|V<$2Z>g6r=}bxdOFPH!y`7y7)8`%tOvgOt>MuRnJfYy@l)68qC2fqB?}t3`a{fg)ZMguSZg z-u&2dJL@L6JD0yIp-;wJDcX%dt|>VDiS%G)&fmI`aQA>Wv?eQs=TX8Dzj{t`KWKrkMQI#&KL2h8RFD8pSfXn^| zCZ&s^q{dd4fL*M9RpA@_=FM?qX5$yjT)sauL2O0~4xwVtIcYoO0!yKh<$Itqv7RYk z_iY)KB3>cBC%`h)o)7(K#@d36W=&FupolM%Oct7t3Fkc$<~+js@*G>+b&3v}sNZsH zHk?k8o+^8Bw?C9WDMrF#dTTfjk~FTu+gO}YlyR|_Lq^Ut$>*&d(jyMizv}m|5(9%L z=_f;_nN!$4w#lZ*OfLtyu^(Jq5L9v&Flgw_8p$oMGM;ZK;nv$xSz9jT4t(Uoi5* z{oIw*Y`!wXfd+>ZQhslvHsk4(cSvPz93c*z9{rReqbnYNuC{Swd|+?YL5Zmr>icGR zko$Y~8j3a;gAmVuV=B#B2)`gVv9uMmcq^j?&8G{_`pKW35nog+DOgNZDB9w%$6@cA z_O%m(?v_mgei6qwxdoFz9WeGiG={j(;W9tGF1MO|U5iBeCx``oabnKK@F1?Yy!Y96 z{rjjLr^zhZ-$|L0+pUx}wp@oL-xJ+V`^^%%@8r*CGCa|Wq;Ib(*1(n$f3o4iF(pne zt}cI4sQ*cg`T5`!!NV*KGs;LE0Vsie3L*QbW6ojDrsE$G@UhP9+%om2#xM58t#(`Z zOkihOL#s#th|?^?H(N1#%=!{XA#V!kq3=N7`vu1`DSqJxO0lX2TAetQ@VbmJNp13Y%NAwNqIaaFQo7WmH~Ca+fY2PnO!!d4^mpa zHIrHI#KMkjGI>YaYXhoO-x2ukZlsHBlm6GL2QKW$$&`Yk)$LbUKkj*a z_xBZ zlH%ca0P%7dPDp%+x{htyi#xQ%>i{y0za9D&r1bQk_FRz?{9E!~ z0VUbreRI*ZcB1{D=cr-~cuno`goSE~hLEj!F*jT^RL<$bX3f5PiF*wd>Fg;W2I;$I zys(!8yf>f*cd={swo2Exvx6tHXWLFoDx1MkEez}05kc&EiYV*ToNiwa@_aWBkg#M=v3jP4X`SgvQ%AFfL{+AEWqtgaK1U6OV8= z&ppABWF^4zvfF{NJi0TVmc@pe`1*9HO4PrhvZcOceMI)V)CdOpcHE@$>%_eKDWNOP z*fgKN>$xq~p+`^Zd4(k6XjJOS-EKORGqS!!K65MQwzW`?mCPJ=I(##2xtEnq@2TzO z*(I5*#=l60Y$59luCwnB#s~4EZd&xzH@_#~oiSA-u)!-R>fJo578Yk9zKge)OWT;P zYSaD=(I%pwbji;A%|j-E53R7S(0xoEAdA+3xSH0V<`PgLL=sbMcUuV=w;K-pkPZC& zeADjP75^4D5!S_#p>E;Fs9O22=;A~B4Fy_9A%|7Wl={@1DxMt~AL-^9403}ShUfAj z>sFp=t}i_4zC``Vne9ljPZ}DJV1nE`<<+XhwKx(aPZtUIbBC(5>fZ`<@MGh$A1}A< zr4e~<3_T8D`tokCc_hzBzWyX^oh$aT^%L$15+)p+31NujOhY^dXN&WtH^DLCtNR*! zLk!hf z8Fp(vs-g0ZzsGaP9h8wPe=>5h5-DcicvfLK&6?t+mwvh~C6iIItLOB$l^|q!I zGfXEQGJw)%xUN0cg1D~L*!h7Q!){ddyid?eM_{l-*7MVI71>q8oui!MU1a*cs}tp$ z*sjtLtjmrPF$>bqHy5e1j__(Tlm3?jyb*dA_-t)#)a=g+f}h?PcmiP)g|*)s^2{{m zJTMC13Om1ru#Gz%sijCecwI3?W2%%SblLb4Wu#r{5j_t+(# zxs1*-K0-+1Otx-Z#$s}cFbnJNFKOzT1B)_#1av4Gx&=A6br-in(jIb(MhMbTk8{^y znlNwhN6=}vt*BB{d#=IfA1}ah!QncF19fqm}7Dabrx+tsr<%C>{1!V^ov}Er~{o)Qn*WB=Qg)7#{Tt4 z>VJLl1``Z?Y}iTCdK7@BYptX~xO>bf5g%rLP0zh|(ZZ9%UsGqcDdTn~xqr34%xXFH zGKTKiV^TkZ<>q3?dHpcCa(VC}J1aAv-rAk!D?(=~+wVIo!-lPk4&H|aX=!*{x>COf zhvO&EfZcJe!WHioEG!PmHt)LMKFE+Zh6lOt5_<^a~t5ro!6F!AwTCn zH>nryXw+wkqS~DOQ=Z5?Ezh(7+9&jpEjOt;oJNk6Ui%z#p{Wuu3G*fqLraofYFu(L4R#GLSj=(~L1EIBt$~dZYeh3%( zLwLc>1l?H2!(NWFx<1*WLv59!PJj1V&^Z&4D9IU}4S;y`O>bX79 zioTpoeEd|+`ao4pPkG2>c_Co*C%Ij!&GGPcPy$avJ+@3=ArMjRd+i z97(=PLFv>NeO(L5@bP$m+>+WSN8+ddt?cn$Oas%1B}TMMXZK)C_<9!Q;q1I>t?hEI zR`JcWb-H5XE9i?2vi6y-TIZ81O`Vy;^doF4c2>0Ec`)gsBI&i9%ydD8w_p)g8yw!s zWlahkkG4w61U7l2B>Oz%`1s7=aQNaz$*X>*n0M4K8@9!~_hee*hZsC#I2?l7LG|FE zX4$$v74;N?%#A16VUtjJQu0EiRsXSasMNhc9P0fPOIKZ``nIjp)Ojfl^7Q96U)O`a z%hjeq=XGiH4xu{}+}r>wtAE<-NA6M@sTPS&vj9Io?Pgdnn9@W`@r8(}y2e{S?PZl8 znCN#`uaif$6+khgoc$F!=98+kEn!<+W%Eke{=h1Q)-a_ z+MB4Dd?;o#e6RCwI&CPqWPjIS+UGA@nND0TpG|!F+T)q@U4-Kor|>bqH(+Edk$X+! zhC$A9C=hrbcLR##*Z;%&{NI-@_%+^(KEKJyz|YtO=LPIk4R?Qcr(&?2|DQWp00F^Z z&6F5lJCS&WFZiDkh^Z={rDddZUgmtODUlFjEkp%T=`qj=?tiQHt|iWM@z>qP!*xG( z-=eV-O})cfg`tN=u^EG5y-k<+fdrHERi)LmteAh%-P_piTKa+MiEBjLQ`opb!u3xPt^2pC2!55~UzIK~0>jh^GwW@^6#82E zDf0VIlqP@E$_NO z7Rc8U>GPP`4Sy=eHYn(dG8v)XCB|sB?x`M=Ro5D{eo?3Ne6|}1d+Di;F#3PDttwsD zUQE$~Jm~)eHa2-6!D~ek^KH%U_3m@THW|tNYae{LsZu-~g%@?zc?Puxm=nQ~Z^P6~XC_m$=0L?F4AFnr(0-*76b_{;#de;Oda_IdN| z-b0bAEnTwUPi4tj%@8M#M1i66Sl8!*&eI};6gF|_svF^z9N$5E2n&|1*+xS;;5Tk< zoNN(jCjGjk*(bxhO^aYCTT}pa6BzF?)syybvQh;L3rkK-1x_^t$)#G$(U!sJ&0{p3!Y2mOvwo8=&SzR8@Ntlt? zM2XpdGB`Z>du;Rkj*i3@OrF)p=$*Y+)muntto#lQ5}4~PaiEuVY5Ja(XQr=At)rMK`ir;VSu&=piBp8_+IbO&YwSGcLHp{4jSUsV-i|H*(}E_R|C+V^!7V+hYO#c+YL)n6thm*r+v1(=zEWA{{9u_A_u9Vep@@S6pv~9Fq^*GFs*Zk2c`=7aITWAl)e9%SXw|{atvcG1TBg zcULyD9?jMuAienkF7nf7hAI61qOH&>3gzSs^chJV^6XkPG7*Ettq!BeL`x9ve2@KP zwN=E;&i4rG;{A{B>Ko55BICXY0m`dT)(V!PBvCVNV7-IN%xG!AR(bu*zTFSlt%=Ab zpT29%v=Nn(VtMa}DuOU{Jn*-m!w)oE|GgWQw-%0L{!^J|B=yfTuzMAge)O&}8`pX9 zL9U&577c?&z(du?Vn#1t#KViZzuHCIxcITBMm2fQz%tCHmGZ9+DTJAlDkQ}?)?p!$|0c(@4Tl4 zt0rwF+Jw#Z%kETCdpwRNE!k8HX%RubtT*&i>6?S@3ETb~`v^~L@L)Mi~d5<2EjmBlX7 z-~BjIeV_k%Vs{34&*>&2`}RMqY~(}j28m$L!iXeM{B-UQF?VP6o#@R+zP#sJCZ{EpgnF217&SH1qz`nH6K=r;TKEKVTBa5mWx%PZ zS0-la?e9btCmv?RA1Lr0_b*7889smOP7NCY(~Fw56jU$J+p~+6lh2gmMf|2xgXGTYj)}k^0yyUc2lz-ZeJ6<>5znVo+*$?Jv z?SfUc?`$mA4o#tH`KoYZ+2r|BElxNm`Y_92nr^}5%Zr+gRO4sb&vJVc0!y;&uD=r$ zva(cY|24`y{a||*W4&XoJU-Z~;x|ce>+r=$P??XOfpAiHyBJXJa+G|b+Hm2i?#jj-bVsP z{*@d%g%%CCDf^@HhDuhrJdsXuSW?j38EFdBi$B|O)=kY~wA7`tgAuU0PcR)f-fULv zUNgOUcb2SAJJr}yoh5RMS2D6BSBp6sW87>JHJxieqHxok+`jxb25tNW}t#q zd9}~)a39JYA9`yyH+jcetao32^{tKgBFd9a zR-_T3?T3J(nzr*_^HuN5l!HKgKVOQ}hI+2#ccR1aqybT4ej8a-XApVB&_;1zE7%m3 zy|mLtk$P|`emMNe^lp-3KPecC?`VHU1)faUZ`XNaxINavr^}O!>5|vB8F9McDEl4rTE1fr+JPuB!$_(!t%_&tB zZ)a)G4RMI`F&UDZ2E%QyB8Ga~Phu^)s$fg)d3HQj(cX;jL%c|s^{W>d6Czp=J$`M` z8$ZLvRW_<`lGsJ=IB{{YrIu-VIycUzb2ayc*NnjnJjmuO#dA*YC zy`X1~0d3}==Gm9fuZma=GMrI2o9^Z?ULq4<`_o=PeKDhX>SpRL@fSm{M6UFdtlk>Q zwknGM$-+@|%^;JH$!KI^S|3^UW5BQQ@WN4oo;0k)44b6KaJSI0x_U@O;^vPE@=XEr z-puMvalCBc`hQpl$8>k%C-T3Y*HyiH#rhs~zLGPS(uoqxy!{pzw@IL7vvh zFaLRU#FkM_cX*0s0|yd?IF6q8{#m#J@tA$q*a+tk$!pFfYoEevnL^~%8YT+8>bLlS zNx7-$p~SCExEC+F14lkiavxts4NDi5tP4>%YOYm)N!DrYXrODDPZk+}ul>%Fr**Vm zrfSM1vQwBBN(gx`E(9WXeCl&W$LmPIZ)XmyMC9{6Tbi}l_2aXWY6qPES?LWD6$jtCZZO|%FLJ1Nw*i=M#YIKin z{WeZ3gDvI-XSkaamPa4gRey6)wj@k$;w8n#X+MQVYk@qJclv}~H*)f9wpVZia4|FM z&dg7^!#!ox@P8b8_AsXAT{w*fg3Vk1292=LIG2YnHJv2u>}u|lKqBu zK1eu9tk_O|vaQcmjhm|D=B@q@%gaN1WZclu4sEa(h&5-XFt^!)YsEJZBOAD7Gkpd1 z{n%rEsq)e7+}WxAOhF-dO#n?D!;$0su^qmQ=c5=sage6 zX@Df}3}a|pOq4u+y6X=Tle+?2Y@m8g+G$Pe!##afr&8~&^g?=q$tK$@>ZiEtb$>#( zk#%0$PZvxaPn{D3EG_f&7J*ta3)S=I(sBS#BKhl$A#QxJypQ*oY!kdW;w1jtBi{-J z4gZ~@vrg7a=!#Lp(SS6{`nbS?gi)4-e?R9>E6H>3HwjL-{_{S zN0A#WMc|dN`EJMtLgQ*3cFVIZ& z7dK&RebEIw1}ir2h*z<+>40>E{KX;&5~egBpvKeQBit1C6rsKr#JDS6vqvKSn~ng` zDt)o31h`fkiG(EJ4|R3Ifc|E!Pk};{V=1$)U^;MW>cTZzo^C2dYSl_UxOr?lrn1~L zxJ$D@O_p!7JjP8X(eW(S_3_S)UoZ8(-7}mm*-x$MFJ8rSt6moxC^Bomx1lSkGw9*w zMzaVBef@>Jz+aIf&Ho1|RBG~wU=VJHLl*`a4?uh@Yv}G&f^j_c@GN?yt17u_FUN;! zk#RI%@EUTjFElNhAfm7zdbUi2+RRz~@w2AG(q2KwJQ>)t2{)9s`-$V2nG{LKywvLz zB!G006^4j?J{%tZbJy|6&xffjK5`?Xtb7zsub=u!Y>3fY)?Mq&=?zQmH`wC2oWFYA zM4ejrWXZLMHuY-mvk6Zf&Y3B7{G4>w+=~@V`gRZK^819T(9Mk0nD%5_&_vw|xgwY| z=AEKV)z{-A89ku;15Ph{yTgLF;y{y8Yckh>MZ5SGp%LVIN|SY+zW7WMf%* zy+H)E&F~1G2zEn8GVOgcgUnKgB&~Dtjx0kIW?uD&J9_R=H~4B&YR7>h$R4 z?Df8G%k)+=9#1qA9^v-B+4eWjpJfGJEgmX%`!Rj=0@L*a&W|Cpvm<`FUkk>HJEqj< zMohCb-Wc5Ea;_ia8k;%^_n+Vc8vw7_k*zG<^ZpL=9@oMtSi6ai-o=m-U$`9|K5#Zy zZ!Lf%ND0zEXMTjvVsL(>{?Azgl&amBWLh-CxQQ|bB8F6ctqrdMi*#JTyJ;x>k&HiM z;;TbR=5}qrJ=vF*@Oq`Rnpvhm|M9iLuA4f)N3g>1-+{M2*x9!;?6PbtqZU6IAAkTg zTkfgTUz_?*!qs#LM*ADX{8><`5pVlzTs|X1sVJDtTxI*jOz7su6ySq2gJ$wiX@UNE zWAAGeBZ?M=E50_1Io_{w{@tmoAehgtohaGs0UX@1YFa{@$L+qaH#swNc~JM!5;2g3 z9@^B09Cye$Jw3FG=$xW1D}Oyohh2Us-x1$t?+U`5-nuXoH#s<9L@|0gmFb0k`)Z*K z`aCg+&6kz3-R;(nD_JQIqvi(hyqw+DHP{KbccvhTvtfo!&GYP=oj*_}rj!|{V1kT9 z21$HVx(B}ak0YjXZwNnkSo)zfome-R_`WABLl&?Mm28L)LzKYAKh=867I&?z{S12R zILBHIs%xyV#U^^`m0#kEEvd)))pqw-von!z##_@KYjeNK%$HBw3LDC2?Brgk7)Wn_VUtb&>;0>SkQ_VeLOKO!yM!e0}V{`;} zRw|$oJ;C@898ITVN=IR1L|)6LZQg5q4xml4p3x&2fU_oZ=o^yt`8&VPBWz#BL#4|B zu~lZ0`<$oi)Pr|#FasVp@ZVl=RsNYw%W$bK=i>)iU|mb?c4~srt8~D>Zss3GNG}8v zd22Om?vQa4{Pl~=5mUaM#$+LTeAHSLyKE3OG61K3{EqPC``v5Q4AdUU1QiktJ$6pO zEZ%n|Q~<$2AW+4G0d03bTc)k64jp_lOaF*n$@EdP;;NVV3_y>nWLUf-L<-51-kI2i zY2oH+wYj~gR9@+BNNn=mAKzr2Ih_39=3dNlW*;pfsjpYTSD`yOAPPmNhur9=H9?|} zyo5-Ucp4{RL*gQ)yU@GJocQ61I5g|v_cg>DcOdlg#d$GdA9bG`?0yh z4Hs6$JCX8WpRGQ>;EURGhk&;mWK2VAt|3`*^Y-D-xo?%<)|eQXrUXy;MDP+kP|F13 z`nRR7jo}83wK3#rIh7!t9aShD1sm@7Lk<1^_5|E7qVp>JH0K#xjr%L4vw@I?>%s#` zqCOlGS;$pb4)M6KnYtih4K3lrrR?gU-O|1!yw?6rD|XffyVU||ulXNJKP=8W6_3HQ zW+{nnUG$Spem}Mh%e}5l4RGJEpoVPp7%(%(Zy;e$#9z)kisyeh4Vz|UwB6WZ3_~&P z&)*5(N<(9D3%6s~rBP8Y3F?-jSef1q->c$O?vS_=y$rodP>Crs(0XN%GbSc4g2~%> zx;7+vU_brmq=YErc_w>Cl>_Z6-jlDuuP!|Ryu$)3_nC!TrboJ;3}tG>21nBY1n|c?VUZ+2d!jqN& zfE)9tj(5IC05Sev^wJs=`RUViaciPhZDuXwGtI5{ffBr-*q0-LbE}o%Ap347mV-p1 z*)m5%zNY;T-zi7cuA^;IwET$niYHr8l(O;Ukif*2TqK*Lh!^W zfnfXiz$~Z63;3~PJJn7O!Ae7jY#;4yU$6!fJS~*ZPHz&&c+GlGr2WX zo!nFoeTkqQpibL(1%oxcb$m&CbD%%t$%Z4~kZuTO zG1;YgL&a-Ky0SfOi1T;19>fVZBKE$jluS2hX}mvk9w=Eii{_%{W2N8nV>+1 zhAMX(O;4(^)xYs!ZXY`-*H2mQ>fje@*Z{&NGHU4eRgrI9v#(0{GV9CuR~!s81YNi# zw*k+iU$FRGOgHoEV-wWP$lYJNxeygaqpJOAwlqj%0m-|1Coj+H!=zREdIyr9??K9s zb9+zhhF4yieqF9_!7g`dGF>)6`3KHfDb=xvH|428xL-FmPRS2h=340Q2qWHSowtWS zFwgMA6xbl|LV4U z5}jzWQW|hmAKT{!(+^(S_+^tI!fj?=U1S}-X;u!_y4VIh#j}8yMs$dR)A!-X-7N5^ zF1edS8(fc1%Q9Gl+*twDXpkKt-uTayU5I+yd+4p&nTr%RR@Pyi5b3S~&$h2r zz>(hZp`LA8{8Q(}IoO1kvoa3Xqu;ydy&mb(-amgkRY8k7e^mD!1*IKc`mboosJ{0G z#2ZHF`_Y`@{rJE@h+1?#v4oayN%-k&pCb~Gy%ro%^UL|p9m{2G(hcC-w;h4tc^<>x6&oHviOuTP# zNsTvyog;O*?jrB$t~ZSqy(Jb?|AYR?V1PFA@R&ste&#}8jVC(a8rGe~5+!SF=^|wH zStpTbDRLugW(r>#5;tkG@&p=ZIpdy@j8xxJM+ zI2LW##*y8gZ*|o`%jcJ=UFs+HE7Ltr+%+DgU!tZfD!-C8;ThJl>mX@J?5a!E`8oW# zKr$|Sy@8?3q>M?;*7r)Ofrb(FTglZ~_VJ5r_@n~~-w)~U-aeCq#ak}3C3Tf#X~X%y zdzHxR>Sts#EDI{%n*AJe#jW#aaBvY-gTtv4Wo80o7*R?Yna_%X)yJn^8C5LU#jcFCKGp~9}MLg=6PvYw*Xh7Iztod;8sZ~OgLAx_&lY9 zrf=~2YY649uMW*mxiwy}#hos_^qWyLQc-gCG!PPUc}@Lh%CAl(ZTJGP_MD=!J zN}XA-af-v%9)`wT)TG*B$jN1|)o=Q%`RT@}K;3F}iF3pZZqrpMe7vqQasyw?@8BRl zEs*CLdv@oFXb>9;(=qc<@@bO^m`* z31$D5A#Vb7?k6T;V708=k4}dLVjo|0&=$w2yWQy1Hi~nD0abh{eQx-|0g6HSs_4$HTjaKZe3=QBF5V?_`j)}1Jz%f zxPU!$u0 zdd&5#*R7rfR@}wspI963pt{iP$6kd~)o%_vYwxp&dw7J-ZC-T-t54^*R!@lupxlxa z^;cb=M?mO$y(czZXZsr^ePqA^?ZV=5z;pC=ubDC#F?Mu zqLduUwKO80?kv2Yu)Nk3anB=4O*v*k!do^IaTjISkKauMufZE&Tk}Ud$5Wi&JVBKh_u$VV7LY=RW z2Znp8JPbC(2Bc>^f2Z<)QT3N`P5*EBHx8mw0)lj^AP5LbcPP@*F&gO@-Ha3zkQ$BD z5a}4B#%QEVnB-t|j_w!;e6D?e*Z*<-AHN&hZoF^r^*&z5c^=2}zPSTmI^09G>whVn zDPKMXHIy}~fp`4TK~YX&%52hmt`@C_2K@XnVYnMfy8p1ch>T7#<^g-_qQ2pKLCF z54QWocaRxZ3bwsGtpdAH5K~^@`K|aqhopZi#{$+YDp~RqWqFoZ40|-v23^eFSfRw9 z(0HDG-gqDjFJG5?v=pp8;qxCJeE^@U&!b7rZ5`yzT4};>+b5L$-j)(?)?&-)`<=QL z)y$u5gFgg->f(Z-s?M2!#r(oJKbSQ_=Oc3K_2)tu`$XMXg3MV?>uEvfX0By-2WAS@ z@7GCx|JG>8VfBc1er}sv(k1bZRyBQ=eB?I+OT9TD@Lxq?|^OHZiyc&_d#n-0a6$6AZh6V=M^jrV!GT$$8jgezq+-WgrURf`R# zSn*x>Tc2YJhWRkt1-dVd861$H`#j$48dUWH(PnVsI}N`us#WzZ!FlE?2bk8Tg}Dt= zQQTJbBXi_S6Lp2k8CNJ*0%zLcfcvJ=Wy_x9w&9D!&ezqcW^I$dChPI8r$kj7%{9HtFE&tGMW$w2Po+dL1tL2pfF8L64kz{W z0T~(Rz$)=>z1hEzhob}HmEzgF6^@iaFSJn9*kd40mQz!>6Ee_m7 z#Uj{ExmOd#%iR7kdYuLg?()~A8=CjSp%MXMDIk+za zi5CJHDr)Ikd7X8tyzVjSgkMZsUPNrXv9u?9@!VmlVrhqtHj}a_Ja2$zpY_>s(f;#{ zr58>4o1=od{(=`lTy^l#jfWIrUcAd4ELaQl-Y2>eVWXO=0G3KSOYX4}_k*%_`*uYiT;~4vl&2{5b!DhVJ*-WKl zAJEjOEEC>m$d57LX6HB1+n6m>HGj3CmD?^cU#>6BQ7F5k@uT$Am_uVF)q{Is@wvlS zI%;CI`-V4T;F5(mAbns8K4;^tddTG+r*10#>E*$Z1x>NB$_uhEpE3`;E(|+vEy^O2 zX>O#j&UEN9oR0Y{HF8I1xZ1>Di8gh$mDp@FP$26!(qvm?FNcXw8f}8dkXd$g?`gpv zxPIO6uiR%|O4P}Qo}e07bexv~g{i*kZx`3bL;t*FkDp1DF-`$GLV{e$n>t?onEUWb zXeAXzaB>B6&HNq8al+V*(2ZHgv!O|B(dbBCvuif?EBIvB;vge*4hue>zF9Eki296+ zqwG88Hr5o9vHX$40*H&8T&caN^dD$V)Lo3KO{&39ji(v(9cEgzr~_(t8dD@yx2h)s za2(6QhA_$i@7|QE%(kJ(blK@_jolGfKFWn{WMH{zo3*{;*gGX)cPRI*jOq35bo#w6 zsRJZ0OzlQabNW0_a7vNH%Itw`L=%|0|K|HY#X35EfiIJhOV#{;zALI4Lxfgg(V&mo zMOr@H@1OGyF+awg#kc{Ot6UA5sLS^=0UO4Gn?K(p^K;L$a&0>1#1LNefe0``s;9$X zv)NxCljt;dh>j)Ztz?dlmX=yIRnICmvJouA!zYkF!;#Uoo(M>L{4~&sy&m{@LiX*x zkt0R)yOO^HyEx9q-|F}=et0f%@FCvKI!s!BRHW&BNrMEbx$MN1Y0BX$0cCe8(qwmY z+;ug{?04vAsZcn@rEgm%zm*jEzI{7|^55y{kNKj6BDqCM1K`C4bV%*}l*;J|*!#dl zD4PJL!0oYYu6<)$*y^76f%#f@YlP5JGm3&c}0B;o`{bHvV`z99Pi(J-C^9-bAUji+Ijvdez8{3|C|i&FLy$-B<6j08}oyB z>u+Vh;+0DCRi`(ZRr%hGZf+;<%idCIk}e;-0r*!UpVSf^;NuMU8QEl~xCo9-usbO2 z{55jMr|GcB2sy0skWyE1HO7@MewRQ6|5{7ruk%Tc&Q^-7;;T@2dZFc#Ge<+^Ddy*S z$z%IS*GuC+XW?I(FwEZO2bj5yuPUW{Y{gc{&q!{U`yEZs+r3iJnIVTW4B~v_g*Ur(XA6oHr ziEyyP;}#=k!4IUrxo)ei5a2c(p zLV6sng*ee$T@j}<#rx=YG>d*d9N5t){X8*=drDmjXJAuqk#7rK(Fil!+liSafX8ornn{{x+`T}cuoT)Kc)E3=^ zdu7WHmb~jtl96@EFAhZZ5(kr>=%UZ}8i{Sny73y@70 z9X~3KDsIm{J!A^wE>6SvoB7K1T(7r-w7d1wOYKAbW7n!^iZ#;}eexRaC^FhY>{cbV z*cHZC8WO_YGyPU0lqBRPuK`I5M)Q3n`EM!&R?ho^0CCcdo@J(k->Rcb>2FVVmfGqK z9gX`chbx|O@puU>CtDOd^FU%Y2hVt#TGYIEK?7aOYytJ%q5Q{N$py{;+DiaHow`P) zZ^hRSzb3jQq=oUWq`@$IHY@7YgLSz`bWxbwjIJs@A-zg`l;xjeFQUdlT?`I_t4xl|A$BPV3(=Q zrpRJ|4c#!y2hCb|^fZN0Tgt0_?@X@W?`$3!B68D5ozj_B?j~#Wdk@L5V^MxA)URV< ziCbDUzl7ST#4?-8PsmQY+%5i$FW&+0m>Y068{o(2O_S`MEL; zPPrc(6xP%v&Ka&-zq^imI7X6-^RRx5zdF9pU&(px!xZ9-(Ss8U3e%Err&9blG&Fmv zwba$myA30DZjp=H_b%FQ1j)1@kee^daMi#^VhE8#lgE{!b)D$fiqLo)UPf?M=hFJ- zjW3LXXxPTD!4P(PYwwfW*esW1>R;`Ij zC^BN>gzWAz)lXPe_-c;ji(Zx;JI@-|I$zr+J`TO)F^w&n#x8|zC#jQ^h-@35`&$#`@6K7b5OrM7BF1|9+Ov|;NLG4YO-Z(h_ zsnE>U12`SI;#dexmx}~lr%R@$z$NL9e|}}ZfBYh$WG5Ua3RV(Ex>x z7Flq{JpI-TG%oyKnhn&8m3E5#X;Hji9SESz+WxPHxo~q4+#|AmE^T{Lmr)-Q^fF^e z+~we4RIy}s*^-ww=9psDR17fVg~()lXx($x2SP;o6w3Teerh$qH+gn%z&ATVeZ7Q< z#zt#Rx%|`~&wslR3LjM5j2US#@`MOjD&BqwfEJMGyI6=H^$P-#4H_h5CK8-d`gp2E zkWAvqtExojN!@HxUv4(izw2Nq2o`mb_d%TwXqB;(2(rmu4>opiDCth_?b#q;zczfF zy3U)xKc@1NVSz$sN5seJ@hY#VJ9Zd&-K8E0&S>s%G|3w)qcl2IhMl z775RMIz;<{Rduh=`Bvk;cf427xVPv!R-6FOVHQw{71O7alqP#3Wuh4#PEICcQ8L7V zmWdcqsj;L`raAAj9KHr?PAhkJFdp+LT$Z;XQaPx!+!X-)4VH2$OUxVP>!=eL_c8J- zKU`(geCrVvWlzwgx^lT-dbVNnp&yRqs}VQk{hslcfS{V`V1_#QjJ1{Nu@h84a`%Z~F>_ASJU zA`Ke9;mQQOh|s3-evjMbRE}Ny6KuC%jZvQ=O^#vFfPUV$aA^O9^z)+uojc%S(e!5L zB-8%kz-uL`ao$qvU#S4uz-i&uv+7|RJD$y`K%~js-)cIosb>e7rEds_HHG$O+QNE4 zS1}D5e)6#s8L69li6Fcn)GJT-b-o~NcpD`>E)i0prC5F?TIgNi zJfmY$8CJy>mak>$tkN*T$E#%!t^3@DqL#0MW>L z)B0HcvijdDCh|gt*si@LDfz`i0uwsG9wZ|>RxX2;gzX7*8m{S(Ohsk zS=L}m17loLCuzv}oM*W!8xlw<8g~74hNxV@&3&LDm1i2fd?Lma%^jj?+S zWvi26J}`;EjpjtbelGZLGl(;8m5Zt3OcMp0k;r04pbta3PA;uDZt5$GUh4apyx9}K z4qM|L zfgFBV)zswW(m}~iz?fhEF*?P&1;U!fUj_M`=?@_YWxQ2c^Qd2Uzb5>2UR3p%1(x-O zWW&`AHz?bLhgh$FYVm%kTXLQf{wM+V&@{%~__C{}8bzyh% z2VNS#IEE%nE5%%ms`)p;^MCr8H||;1MeAEMz>nWt4zgc{+8wAc@oh_rrHf*u;uvSA zf2q6vA*X(lU20X<%MY;XNB=po+s~w2lP$$t%Rta6NCxfsH`+fDos#rVO2E7zl=)`$ z-o{g!j5dH~#<7Lk@874$FKCz*W5&(=`_o4|eGW@z>S3~f$r<5&U-<;$$+4C0rLXGU z2y;Uls>8QzBlmYfTX~-+a1MPN-s7F@c93yYzZs@jm0B^v-LggK6KShbw@?z9afBze zO>VOG*RJQx8wT7xFGwh6QV4$4v; z$~O6p)2RP1IPm}eEy2g>QIi#%MXDR~=oKH0Azsno&j}mh->%dp@&5lqhWwuj0)qdh zv1*q1&hm+mF>ZQ4b z_$_;J>5{JZYxWv5oY;4#Q-RPPPa~q}Rm&U5$?VIEu9EuYpM&I56a~dZKGM;UeJ8kq&@2ZXo zfRC#SdjagoCaS>)nHc18y?tXWb!`?u_J+(00d&|kqcB$}k(WHddI z&X|5p;UkU)_1@S?WH&=ca>KAX-Qa>%;?$Gz|;H)2Or#yO_^$r%`^L|8Y$ zZ0WYD1-Bn&#xss|qZJU+u5ebDPL0C{;NNU}majAmy)h2^!(R_fN!PyQ)fogWwS*}>&oaRTxqvr_*<>TzANxr*v(S( zx<=3kth){0zn&-Pl;Grr<)IE$=5wM#j+CJ16`_<^^9pSL>tLsoY^+6jZ^lgkt9hIJ zDJf^DJ+7lE`_jhv)hMSooW9fH(Y>Y6M!-G&?vh|$;qd~mr)@Mvh-7*+m&9yzDi#;L z$?OW{#Rjga2OXu2;FB@^dY7p6`+}wNf-^|m!iqIEL74Kc-;Q#=SB|0$NMLZ>mr?K} zQ!H%9D@ms$DQvyAe8)Vw8iL8!-Nj4UhI}FP^9sCl@%wSpooPR#at{mn|KQCEt^{57sp{o%?Nv!GRit9h1r6zY1bi#iIntkf!#Bn=RI#?0eIw+KEF zVA=a)806xrTUY`I`VaRDir2V}g&=RE4&uMh%$G?$0CEYA76GAq%F|Cgs7inKNu>{; zXDT#KH?Y;cZaTwf`UWD5yqHfWK!2B&Z?nCzDGr1#Hdgw6evyo1@!m7=$&)h*Z;sV# zyQIkhnB?gM*R|UU+UdN&->-_T$YTS0H7DZm|mChb4xeSS~D9(u<2y5l+=#E3p;sAc@__W$V2Wq zc!5`%_2JxkdUZylxz+h5=+4ue57Qgs-OCsgMZ@iO z7j4!DDei@mobBNw}#J)0x18S#a&i&>DeL()SR(qczy;<^=dzu|ajmze;7y+K57@;pq1=S_VL8Z<9Yu0yh zJrg4@2u6BrrV^+7a3~0i_HxsZ3@MN1Pf-Kz78m1Kq}t4(@HL&`ORGec9c0)^r3GFi zSPP*^O=FpZ7s@(q;zj9jz~3mtt`KS1`sLd~~G-SXF%n1=XD@YwOkBw6z(+8vdB zs=8I5WcAD6rK;qO#s@;D4IT}P`c@1>C7rMm4Qu}=5^sTJ(Gk+NOU0X`ub_= z<>!GvpXYvK*sGl(`Rk#+)Hx zs|V|mzenZ#t$i2HbJ(6*n$JE~Q5g>78O-UWd;Lkbub!P1zHMSKla|5xTHd;_rkV}V z*wWHW#qpk<8M0vL=rVkE=sx~!_$j3)*aYJa|EKYs=cOBaip*Yp6tO+uQ;FYwUM(fx zowlOW3B-c`!~0TU*zv35+h%)?WdqfR*7s)X6M1$;8g^ni&#yI%CoW7`c(~&Ew@BnG zPn|oRq9pu2%YFL$=)~Jwq^`*HOB z%(lGUe2%)j_Sxx0B`qkf{+q$IY3W3jk<+{IWhd9=Rn?BACvQGKD5d`0hA@4_Q9f8n z5y)I7mRC}95d^P~J0L}ln2lwIc$SGv?iJNx=vcbWQ|;j4{xxSen} zsST~i-b5C`!l%7ArM!w!&gkBM(gQoOm?QT_O}(QqwZ*3FkBz)+ptV>A2DHK$$iE`C zqw3Sn`P`2ht38XtQq^<@T$gu`D&qltABgn_#`$oq_&dvIX%Z7#2j1)u#aLW0sh}4p z9RK&l{r*5b?SFDm2UkhOUGzWM7>;u>fB%0go4Axc8GAdIc?YGw*g8~G-$p9!$U$caD#}$o9(O9LX~6Xv)jtUqqiey z`K{6@DnW0Hmji&rWWRIe>FMEj=`6cFIn#~7wX1A%T&sX+QL}|vQJ7!5ZJYHI?6C8SK0(CO*az7s~jR?heSiIPYiNeQ^jsF zSOs+Asg(NwPw)SBl86i*<|2CEl8g5c6{=L@5;Z`_)mm)iE(I41epe_h1FD->{s|-t z=zI}Ar^X~3zRny1+?{m!`8hW>%2Y+4s`AVR211Lcq1xI0f^A-R`hfy>aZ2F*6#R%5 zyVrH|F_bJvZ4!+&Q{DP1I8=j4PLU_zh_w7Eg#PUVt^39Eke&)p{(P-N>4dy?%^g43 zzxBl7`?=Koe|Tg=jprb?>H)S;CtSU~g|CJMf1r@=FPrsE{v8)l!b6hgj9 zU%i`>mKJCjO(vz}y#-o^C5z2%Ofl^r+wXH3lGf3j|2}k%+eT467+$4feUkD7e?QI? zS%{tN^?0bBygIKpT%`u%l#LD#ldLbgm5%&m;A#nIn_dj$#03amkr1x%bkzMqNb0(7 zg9T2=N;+I0TF}(oPqq4Ke~cz7l&*(>$Rp}Ho@3|VW35)Zs<0XQh~@-YBR!`;=ET@` zB&yV8J5(sx^SHD7Eyd9HX9pi?q80_3=S%SJ?K^2hU*3K?q3g}3Qmx)grImOo-gV7x zc1(8zIoHeGJFin_<*9OX3K}}!_wA6vW72IWoj}Kfr{PoVMtplnmond1_7py(L43ql^lFtngVxOi5d3 zqH(k*mgH zhHRg=Nw`I|9ucAAa<0IE5_nI%!irsN;h;P~R0FTljD<)h83R4uJ^Ug+Vr!xy=$OAm zzEvRdXrjXtaU9Ys*<(IORmngg3!SfleHfRfg8>=u%3IQiGCt)pdk{(#k9e2x4HO*S zznTgbs9ZvK+bGeqi?etd93Z0_Do0%VtOPN~1f{D;wbnAMcQ=}{0di=NaCLx5ENnMC zd4>79e_qsKa29WyB9DA;n1taqZ)Lr{%d~+_r>!{YM5u0;t9DWxBgJuWA{xm1}c|9X8X1jLDEC z7{`%;-L?$uR%m7Z>980T|LTagV_Aw3#%6xf{?;yDm1i*CaNU*4?v57(*0a!Z4Y4Wv z!K9x1OUg6;l<*v;+yqZC=eA0e9~&CFmEk^}OJ^`UMN(i3K6h{jJq@mvSJuQe)Et7> zUHSWOHiRl(tP_HRQMp+E9(UOS%4vI|O7>iW_%rjzovTRVS<`D+0F+$}@2OVpEw55x z(9_(M=H6QX_8Uz`E!k3h97mL3=?PLU(|PFl61J{k2hfM#bn|v`8dg$vUH$!Kq$e|0ZFe9s`$W{V(NpIa2WVmO{WyX-uu@jpOibf$qkp1 zuF~x&RY=cEF6D}8U@_G;mEzSnlRP9uu&ryL?wQQ6iAJkUcT@btgCe>pB@H&6gf~V) z!Ci?`erpXE?P0i)VVCgJ&cR-vd$wSo3bke8NT<><5L-kCo$~6uicR8Xte~reY*f2w zP#(p5IG^lazl(JUZ}081HH|P`PnMn6@u6n-Mlk(pmnt`xcoaLRYzG^5QAx}dqG1Dc zba1?X^%t&6YbpNmYf|8V!jX9&q61WUm|M3EIrRfPcN7hB8zuXE8bceiq!z9ONW@Y8)I8f8p4Bhh5WRv%WwA7T zYE7kQHqekoGjQ0qrQx@VuNT|RV`bM^-l+!qOf(VTO2xl9tj4XE5jM4ZlM6l$qA(eH zwNNfLd+7-0V}LG^ex#~l0in{cQS&YpGa1*(Lp!&XljkE+WU_Ob*kGiGxTXFUlM*fT(n$<+1_;IS^7?E2WzC19}kO|)WQTxSl{ToO1fP8U4(ALff*-^4`BzlGt1ArDF;P{cNxPG2uIhb_0-=7`jCu| zaOl_ABeRwc6*|GkqUb33`yAPqkI@{Sqf$m0qd7*pXld59MxVVTvkJ%~>!GA9LSf@U_8i`YsaeAaR4NncB4AA1|&tI{Ue;;g|s2}VpNyeIK6L>1K$NDn=CBR|8`~*fN!|6lH zx{A?G@_l$h48;Rb@h3WeJ>{R^Cfzsh_vFb2oYhjYl^pRKbdzJ%{=ZZX_d5#V25ka? z(O1&(6HoDQlrYr4CW=h5E)m)B9xhh+OQmXJ0ydMZ&jh*0yc@{z>X%BIL~GS$B!bE& z3Hq@T?k%r{oHvF6FPtXu9`igUW}tZqE8m!Ae;j-8(BX*RTTjuQ@yR37^Kz2a`W>A? zQwEzahW3a3Loa)Y*r35fC+q7o-;P^9q{ml^7VxA;JdzVaoD(#|0Y$axl zUVbIJ0;O6i1o&YNE?CO=DPZnr;V8pL`ie=#~R-g z0PiUs-@Z&P`N93^1SjcW7L;r4Jfut+ir1PRviWMb-R?%yr&|itPB$pFGDjh7h7Hc& z?36ZWS4}~E3{=Xp;^yNQw}^suWO?!pKjgTQMk$wVqabwiuCl~#nqleAJMZS54Yxd2 z%{&O9_UF_#Aq?L=P=<{W?})1HIA@H%hc{Ai(M<1(p1o%$Zhm-zbViLIHO#9!JsB44 z!AsU&ipoX!HDgi-$^;4XC0OCL#qZ1NYPIJT{l?9l5ZF3MmaURYfx|Y9R`bPag*{d&qTnBu$<( z(L?)s=@dqXb0efKV0pLZ$Mf2$W{9ZafU7`TOa~}FRAk91l;XrK%Z@51LYt?Nc+7M8 zxN=j=9w40R^vgXa1K~B_Yas{kPbtI0Gr~0Wf!;<*OF8i;Uk2`nn#DiHTaQ&SIoo%q zxqxNy6VO`B9$gzGNcEwo1cn|OeyvQxXFso;u4Jc8Nlo1a*=H6w-pHg50bREZ|js;o?G?L>*F zmd=o9!{7EI;Enmb0&_imRzFFi#CfF!$FW%SMI)l4Ic)?-%aNeJaX5pvbN!zAa4GeD z-Qf8XwlI^~lj6j@;vG%cYwad3HcTsRrot#&cy2Y zYQnfLxvDsZq1<)f2e?NHK3^P95+}>|JTj7Vz|H$Xf0aJQ|D=-3v`CxS?rSW=T#zPk ziwIHc*|q&)X&xL4tWKQoGNJvYxVXobj75G9>3|PnEzfYO zG3t=hA$Gd(Te2S}{tC*716j^NilKp$8ZoiID~cX|e%8gNwy}S!pGoI#^O^~VadE&y z5wB05&|NZ(0@-;V4YA(UgG~mpPVVIks+XfG_AceOg!H4b=0v_Sho)?HP8QGN^d>Sr zo)EHTt(67X{5IjsDD*>-)T-3kZh*%cZdpVNHst2Kte!umaJQUk``7n3AkyT7a8CGN zRHJW~3$q(?q7L8>U`DH|p=46_)Q%f-KniMK1_v1!wwjh{cfE$F{ch|El8w7l6J>a$ z*rFI?D=e4Hhu*XjF3J9C8TprXyp?fKrhM9qKXh?3VW`yv2O3yYP+)aPn6j?Opp%oG ztkX+(*)!@kK*>i50Wj&m!GVu%k<>v3p2+LV>JnA^=>k%B!IgD!9Lw`4MBT74IyoS+ zTav7!;?!yIVb%2uP2QmAE&=({|iqrE_mzlTwzByAgISMn^`N++qXTvPUr?@T7AuHPlw#p zs^%R*1KYL6>JVWq_suI48t~6^3r81WlvOkCEIGHa?I15+2(E?VL3*O!$V#G?r$)_j z?g5ZPOTz0n1Sq9}4RgSdmL?+{thBu(r}-_45S&P*3HP_YQtsy#+RXO#2f}&peeIt$ z&%$zp7M9S`-zWxJ z#`ti}93l4S8FQ1DS$JzE;iL%~liamx4~TCJ{(VCrl7#E<(=o?ofDfP_lALiRj(_=D zIQ>p(f1NN2|1*4umLGi<5U1LZ{P_6Pfq)q$wC3t|vEp>_?1?_ka5m37l%W#!aez#` zOI1g*>D}sGq#QM3#tj_+h^RWcF!&-6W@ce*THk-TkO(zyjdMHX_OnDHD@L!G8cW9%Mvv_z63uf4_vH0Ry~&B z{4f{Jh1x~}KDz}re(hwod>LMADcH~O>)K?^mG`4JNM<0!7A!8`gBbH2u; zjL~$<4A@7;x_Cc~{mBqPc0IE~lnhRe{uq2=uNxr4^Y!Mds z0h$kdipBk_kZA<)rDXgGgd2a{sh;I0>my&C+_FB887i_(8QuoCggg)ZIMAt7NAYFE z|2=2?zh{p>K$F`)AKM7qQ19DkgtPz3mETis_&*8X|82(M|M&NfAW=G@9luhY{IO}f zDjR{HczKgs`l-VCg~<=wCy;ce@P*0RhdhthOo|r-kZNGcGE8i# zrx#72c%Saax{)zz+skU8&h&TA*W}()mo)i76%D<86pM!;q3Ib-%-L7(u1PRTHT$6it|bMC*HglDQ! zbA^32t`6OjlkaUwU!>xPXcdDF6DSfcMpHuypkKcpSmfuQk9u3Y%RWW*z37LS4)Od> z^pF8g`5a-@MAX%7C->13lxa~`^JUPd83)W{cZsmob_*t`;SFxo^=)YI0#n3WJv}0r$9QNz*u%Ndo)#igB)Tl1(dT6HGE|$u)e+_1y#qY&lM$}G>>?8-TS)o znrCsn;-Uusw5<_v8ojiBWt|rt9A@(OI89*bW5ms)4;_U~Yc*}etFHcP6SEd(^+Ez9 zP$Wy`?_h^@E#_@m-V~I|i-Qy$dV&rui92WN!0J>Uy-hV;<+PxE2VjYHS6Y=(4D# zz?+~iibeDGW`ASV(0S%FwdAR5w(#t^5~_i4&*Yms-pLn}ha#njq@Inw`ttQtk%Tp% zx#Sv?F|B?CCN(v25eV!-v{V}PqaN9+3=!#HuICq1fy^2EgwYPBZx9;qlDt$mg0u`@p2BHocOrH5L9Mf>Fqua2$RZ0-v78nk}n8njRfY zVDeLD-l`YDr7b0??O7BZbUdQ*!B%>7Ovxhr(Ry#ci%89@WTS|3-s6fh{3n`l>F3>O zgK@VN594fE&pV#PyoUuE-<$vFyi=SX2s1f`!w}FJzLX6_;qC~O&6yW#Ge$_bcC{I+eoWivGA??y4#^G7X4EuaL$gee|aH&ma z@xucIVdBMr1teR@vy6#YI5dts<8fMIifp+ z#$&0K*8HT|9k8VZ{LxkH(S<49J7il@fI@x`x(Q6W%_?=mca`NCxbd60%*@y9IE-;z z@pSi3(L_p}Y(`B>jL%(3Ox;}F8!YUOo6487*M$?U#m#MNG>Ef2>(+5i1b#c?Fk@9TJs}5kctk#U5P1vq zTQ@V6|48rh+0&S@8s_iq#IC^lVI^`;ao$?G;Cuvo$f#;J8?Q{TaLH0JT^%#x@rrO$ zTZIdvsP)hvAQnMdB16FjW~e^c7oB~h_5pLtYlx;2aPd`W<|BL+ss~mpg`q8IIA=d2 zE?9W2hmqxAT^SI>RzEM;OYebe z8Js_uG^HV};Sab0C_0rq=6y5T`kd8C=7IrAt={=3HARB;{-T(_F(!r-@6qQ`j9NcE zSo250Id2vpLMurQDZ=NexextzqX0%(UqpxjYKcH!6W|?1#Bi_{F8qwxYR?!X(d0#TJ^+VKU#RZ9m9r^EOT{e>u|aPe8x^ zRaEo;+ivQkuRDNs&)CZck95B) zuu5jveKvfaJX1x=F_$JMP%f+zHGSJiUizFl*_<=MtA4rSQ|L*xsP=KQUZ3L*Le?}Q z#5?Q(~BWX^Bo~qv41B+n=qO`io^a5rM!V`n>W^w?Kf_X#A4?% zYIhFNFo4fg@>dcJbquzd_SK@=B07E^8Hs=dVXh6o3)P)my3N=3-?Q#!hZHD6ZI%a*Bj;{M3!Pj+Nr#uCVTa{dMY#V(Dg-}ei=e^xq_ z$zhZ0C3iDT=KP82(&eO+99t43ZjVqrqhG;C-Ck|AzB=K%FD$)FAL}N>-9{lm_U;b+ zjMY~i4PlGnOpqp#9k%1xH;qr;Y#5}v{~<(Rbq%Ql56ZV7G$>q%{$Ji7h=;Wrragpj zRf`db64m0F4|M$bPA2@|8ZhKe_nmV}cX(1z+&cLm<&mZOt>ombH%&}qXCoOg{Sf^Q zD)A0zo2e)1mA(&_K4AmHd)D;afsBKvu1_S%+wOhO5#QR3VRKbtVxm%!O0Ax=;Nk$e zUhrdQ+ADVb+GxA3>rkDYJ;QT0>R^q=M)kn+bq;}_&y&XpgKwrAApOo>@#u8quQt#1 zc0qF~w_+CyncuZC%^N72RkqkAYEuD+LdlU@eHX%JB*sF--JR=uLy2ps2qNSCu&B~I zIk}$f&0sDY9B{H%_LGI_V~!Ou&)7yP*QuKx;^)sjG=fK9^Uf{&2>&uu4bGi0c|Bz9 zE!ij99XcKKXui7>x-qgy@b>|ORk&=^&PDaxev8-R)tn8AifnCNvRQkUJONUDjMdOk z>*<3HB6=FXy)zGiN%88;HS@(=kd28`#b)tu{P$d*JIJ#g4c&S!bhU-e)I}%#HltfC zqwzXVvze`z!0le__^sCJd}Sa`FMmPM2_YA!QC5snCWOxY;lE|;0R!6UmZrHzZysZ3@ zE6!dZyjF1m4BH^ zeOvL_{Q>6A9KffVL$Sr&3ASZxYy5)5&)DeGTb2Zk_Ff;`6jTb8IaT@{?HZz z*VDm%k*y_|-=3NKh$BVIc50nvA1}(Slr&cgo1~$}I2JhZa@U#HaXU5^SF3W5Wix>s z{@x6NbK)1mxu46eGe&&W3{RSO&6O z3wc$W@gEV=-}2aSx%)B(G0?S5e`x@?T`br^=+0{2i$b>|^E!sUguf1oW2 zNVuC5BWq=qNo43I@t}lE#T_`R!JKO&`?Hz^z3c_u(oH6MxUa`Eth{J~-G;E##l9_H zw{2$sVvap~x+F@Qq=uoNTml!n@zt10!+7S-;FLYw)FN(Gzq`yB~G> zO&sk=m+vWIioX&1@;-AA>?ghMmyPXrng*DV~v|TCDjg6T@@;?~$d> zQ996)K1^wDpfJklXVzlqrMDUUDCYS@hsrWniER3#;?b>IuezSof{V4v^wiKONLdO{ zpvuvs8AC1e4W3dS`rypmpfU9lXuT^q0JU9k@;0;D93!;a(UAQ*>qFH|%Xuqw0o|Nu zBo<$5HXdJpK%*Axij`V83$2(JX<|?Rk1=-taOI*R;PZTdyrpBZA97_71im$98d{88wJG%XTgI*2C z;#?Cyztly_>^lFc_0o97!mY{$C7_Ds4j5?16Mwz4l&)YC8T&r5@U&b|#__>ZV%fAU zZ3$|(b+S>xa1v0NbhaahPti}}2T1|K@tW(g`2SA;oiAe0IrXI&QO72L8;p-kQe%wM zn|E_epaP0qoMMuI3Mit03Mit05R95(r=MD702EP00Du3|{RHK5Gf+t&QIkn^a~wdn zc{R!3>lp=O`^LUzohejyia$WDUKFFvHfY~!s}Lc1ZkVo4dF8lr(h;8C-%76T%-fvg zp7gtpeXHr{VdF_@x$zjhTLxkz;FP;GNk?j&_B zj%tmHm$+MeZrpGMIxE6gWApD;Y|=Km5&~Cm&Bv`Y2iE@p53MHC?IfLld?SYdDZvMf z5nWBq^}W@C!126cQ0@%8l6qv<$WW>c0L}|n&h|0uHPuedE<{-_FY%v4~8}W01uduBEH-m z+#HUT;rb7S?L0x^yNJ0i?+uzpm^(3 zvb=jcYcDbxNl~}Z*SE!KFZMyzLiud0!vuQZ z=)D`_zM0}pIW%i{8Y$Z(0yyWcD?U=G&05lDnD}?cX`*<)%+&n1jwy~#4*|NK_4dY_ z;4wIw$`P)lG&tIZQFq373#hRORJkzw1VA>w16== z7*aZqPC8c3DVbB8qTElXwJ#B9i#4KZ5+U=OYJ-AL9M_`hmRc3Xf-<@Y@wXffmGIY( zw4F}ILwOgQ6F}-yIl*uL09ACJ57oR?t6GZ*#IQn*^U4Y5Kh*c5+4-7#cg@Pt^%sfs zeKvhMPqSVoT}WJZ7&Y_8k?@AgTGWN)nwBI|c8Ja~j+r3We;tLK7IFQe^t_;-;yD>U z=D1G`Txgmup)1dN@J%eFt{Wq6c?0#UNu*~{Magp`**q`d{aVc=vbVW;f~i5yNdt`j zee23RZ=-n59~9e10o@T?6>dMz*EQ^VH^fZ`!=O$Z%!#rCcRBueJ!{ImckwO{5Na^X zrN5SuADHkDC!Vw`-(aYr%WIys;H?_PG}v2K3M5GI$By6Dw>)jHcskQco;a~_DyHQD zcM?ZVK(83nJXfO|NbL1HmW|G1$j>Jn=M~V&quEOe+(uSLnlG0;j1ktCF1Kc!+FB*M z4~W(iS(q(1qHP7ZJn%WK>HJxyYPxi`DA<^<$~R*<9Yu3q9PrFj!ylMcR#Yp2&MS9M z_$j68nxvQSdg#%_!4+SCLFC|2)NiR5scjFH{BvQdcw+8tNRm)>MDL{2fDMS8D+v%9Pxlwm9oX(tok1YuDc@$BZ6weY4*c&v;KkfprOW9WXlXPn2ZxLC;P` zc(0~4FNgXnX^#68F+wsumb|Y*vimK}Fo*kSH_wKn{5vCXFU`iT8&{n)3TllTeDl2qS+iZXNT0aqn7?SX@u4!5Z2|l0?UG^vC}ITDEbIQyyt_XKud} zVYR(Y&=4It&ln(j(SPv|#5c3sN2WoDq--;Fz|UG{rQtz#&`&5;=WaWDn%T3_Rx4Dt zON3pA90Az>0EI`oSG@X?>lPP!)}1R|yD=yUA3>Ve(MFA>MG9{ z^P4F9@sGl~n=Nh)Oe|`{%9)1V`~g}Qngx`yw3cTKR52qRsYgx5^)qzq3o!oxZM%@= z$l#s%?<|aK2KXyq&n|_!{>6HL$a^@@?(Fz`-~l z&b;GE(B`z%8HdW4BR@>nXXY7WXl+|@92(AELq%AxB8un9oT7~J@9FthM{jpyAY_Q| zKA&3io1YEeT!$9{&K+vpgxU z>l*%)*P6l@qz+UsusE+q@lB1r)NdBha(bTCg9I^JTN^+I0C+VSPJjMQb#d+0LO zYcq7a@UFhU=Zet3mO_q@CIII(=k{8Dqb2ydCvq3g52kn(=u*zne&rW&BcEzbShVg} z)4#MPws6a|j-N`+yKBEZ0Ox_tbZK)mcEf1P0m!WQEt=xv&0t%f^O_S^266AF&2=W? zqdBiu(KN9X2oPY9GgKvpC`n{MJBI~PTQGFj_zwd*tAkOk&ZK4+HKMd#g0L$wSeAO z*CIYeg)xA&K;TLru;!!=>dI171KPCfpVQ`6MI+L;l;mc!80sjZf!rvf ziV7S$@x?ZZC;+00C;+00C;>qur6m+l0+LT!N+`&n0*XwEP1FGDGAWrflmPN+3C%W& z09^K@qKt|FD5jRC=QIKT)B4u$Q@FWeLt%SkilMulj%ud!)c2=`IP2EBAqc@*D5{lZ zQe4w_EM(_{iZ?HMtQ(#=#T)QJ&TDjWw{~6*F`UpGVyTHc8jv?~aZHN^)zaHQU5+p- z;r{@S-xCgvWjqkM5;jz0sVDyc*I!Ba`^7Nnb`pnhn?e4y`5W$=vL zr8b;zG|84Twazd$}7>)JnwJRt1QD!PUY zhm3Ljxa(h<`ep5ecj%WmA$TNL=x>57^oc$nNj8vyOXno@>3}|!ymcKZG|!myzZG0) z-aEe2>|xy;mjzY2dXN6SeN6uV4mA%FXy0p>Y3kS=`1U>hE9N^HG-dI1 z^*rF_zQXXQk79#Inmfeb9!ScZ?Hxu%Z7Z!&o*vCLCVV~O&xAfDwbeyD({~1$)cA4ZUgRuJ$|*&N#hIMd&EZ1NloxZUOnI4$jKu$*Z5^MJpuE1 zsHu0#DiAxL)PYd%V@O6k*N&*p@s^Q!r-xf>Z#p9$MhBt6$oH;qNAXM=QAj4RDI|q3 zRA3BqT~CRABwJ`YkC~|-wA+~WovV?Y^yAvG^{rDw@oW%H;eZ-lplwWYbKe|#W~p{) zbCSQh_3U5Qd_@+sWpLLvtRjqptVVH;{{Wx0P_pqJlVfjmw-2%~ROEIz!Q#4Wj}7>S zT^d_!h!zR)RLM;u|%NDbz4hyN6-Z*1UsHj$242@`FGMs8Q&8 z=k>2kvemEB!C?$!^7v=ZI6XgF9q*t;B#%FX!OFJ%Rk*fe8j()O>9zj=5UsAc9oU$OLo{(7!_@vpnKzAfxb+AkyStHNwk!)SNIB`B z!>w%iqUyw~!{~=kHfF z;_npgwfjZdsfIQiv(y9qYn9V&appe?yMi8u<22VnMYW15>6j^JQqAPa{!a@k`>-}rzoipJ^k#Ho| zBqg`1vTg5!oR3bG=$;gk2q&H>?PLgCKH#|R^c}`3r5Nsv<2n7J-m`TsgF8V4?Tzst8hAgHOR|<81X!leT~^b$Z0qoc^voS`Pa5- z9yL{lIPIYu_VfT85IOx#Os{PUj<>rm>l!uv)|SwR*&_78!OeL-m!Ww3MRDbnxQQPu z$EgI9`HJ*k6YDy$wRV+SGz1deJC1#L>s@z+;`$^_?!#=HTB> zssRo2b~va~chGJrt1^a_r0F&g+rY$bgkz4?yQtkkV4&G9WON`5))3cpsqVMgkue}- zAkRH3H^fouvs2T;L@&RuwiuD%SV%+TB#(ukr#bza29?o z5$Yxz9WjV3GQ@P}8O3`XH`ljTB{)p<6~Jj?F><8D3l${SVQq0G!|dCLhktsBHPCA4 z=6|!UT4wX)!Yqf7ah%q|>N-x8B!Ute;~Bu}aaFY`EX>nE=4>hh9&`BOxkc4{FQ;Ed z^DvTE806&BT7~Ro_={WD+fs?_;w=pQaoCRa>E0caR-W1hnMx1=CXmGq+;QD1fe)uo zrYb3XWoM^bEGx`_06^!L)ZX4__+-ObIt&}l|S4l!0>@hZ(CKr%OHBDuq_t;|up zser_F>yJa4ZMDI;yYk>&thhP+X>#`qogS_k?Vo7_aU7o67_2=a!s_BvBLZI=PoWjr zNv2z^x;?{Z1EKb*?R6^^w=lzi*&`y0>7eX$H&&3^TltK@vBv|hYn*v?P{wE@!l=(b z=QY_&9h=D0+)0H@lbWMHiFE0~ipd0l2vS8-zeGbzxVlBX)zB9gTmzm5HL_tbU_?Gz zzofeD{_3y?ntakkNs2ys>)N5cO0mc5kzC3G+jVbRrKk9E_(0NJK2)6X#dWt+THC@V zl!D9Jvm)^d&m-He03Cr3|feB1)s0Np%s{=@Kyc4{Gdf-y*o1Me^Tp>T9jEe1Xko#%X4gG}rw7Jj+KGpOU1L(-a>i;dH(?GP)b*4#6Prek0!FUn$9-)q{@N%SLeIR^SO8B znB&o&RkTHza zYwbVm?6O4McdcNN&1JuC#>ZL;vn+Tb!Ykht+Cy`-k>pZCa1IW6HTy;3FAn%(&%n_& zlpEtIo;nQkp51d_i#jAJbE;d%9G*@XeBPY%`d8_XfOXkm@I-b`cjg#WjlsJSk@(=& z(N|g(PvShsSNL(J__M`#vgwkD)lN?s1-pUMAXi@>!>gSKN|o)eftEv@cEB8dy=te1 z*5P$Wl2;29s?C)+Dl^7&`2Mx)cD^2t^1@4&)J&){a87!0*Yd5T%BKk0_C96smbY!C z>sR)d_TM^8L2x+Bb;spilMjL{yhWY_yz6%E8QN zK5jY|uVnBCgEbY9-QP;;&+;7b2*yY2#ScwMf^Xbv=P5sh^sPqX4Gwlt9heg*e09J+ zmFylG_+6p+YSdm?1dYJRAn~84rFdt??Hc<>mdjGIGI_8z0f_V@aywQ(hP-j(oli*? zGKm`>C=J2jdeUjhXv$NBX46`p^Quuu&ZSv5 zW9biv_nOq!S5WG+85Plblb=q0pVqQr)qFGHuN&QKx|%Bsh}BRYSP*mi@M}}Uv0V68 zTZi+O=H24imgnXK434~4HLF=zYMwQKU)%4t5fa1EhdAfjs=}ATyQX`s@5ZeG))}nh zLKQ)5j)RP2KJ{nCzB~J0hpsOz6aZt&0-*9S*W2E_Z^V8H@b$Hwo#vHrO1?w$(;VZc z;av^Rv7}k}QSD8$znLD?IPH!zNkw!Yw3ezztN0gKy769~%`TR9n84kFGJ02O4wJ63 z%L7|S3=-fC$DR-PSC@Pr_=8}YL~unLEN2M0$0r&7b?ESTjWu~^NiG&56on1yI#e{% zHG@tm-16@bcoj9z5Vf=1p>t3zlp9LQaTg3LZ@kHc_M#0BC9Ok?qSJp24 zE8|OhfgzR&P>Ez2z~u5h$MUaMm*Ss>?ySS#>OMm;0YE(MZZlObZiWzWyS|L}EnSSd zG|6-m3cHy4*P8fqzosFR$q4Eh6L24;BIE3~`RNz<6iI zark!WZQ!tXc@VA#cV2q>bHzkcNtGuXtDj9<_-fM1(8Cc}*Kf)XZ1wc7EpG_fF1dR0 z%n@eV$G%5jUux_0i=9u!BQl1888fxGJrDJ)&2rAiO1_FarIJ^WW91{L_VmR}dt9kK z3rXS64_iy-OMmi|*?>oH{{U4%;%!UAP+3oJG9|_%IV^jAwZ+Zg?OVhXT1{;{kXuU4 zkljEXKgPA!;bxt0U>5r2=aM{!VoxKJkHW6X`m-KqvPU0s*!(YLfIoAlhgyq{3_<8 zbZfZn=D(Sc0yhAEA5U8A{5qOFm9%nOsbLW~IqmEE)=m4iHS2S8{t<@O?4B(}u#zSi zX0oj`OC1HHhtD!b7ib@-txZEwy>u&Ou|Wi9KdpFYh-C4klH$^JR5^@e9eW;o(u!|O zktUY5J;3;u3y<_$a3cY5Gx=8=uW0sH*D=p~GMJS~Vd{VS)x>yT!P@=(>^FMGpv>wD zlux=((!Fz0&{`X4;tC`LV7Eig1yz(@jGOZ^;ugA++!&yOQkXn?SB`kEU$vTPtu%;y`47#x z25>>gU#&~v4NBT~p2l@}uB4R6+lOwM{VQ)|lDUVqyt!_B)`j9LQFO5~mUSc?n(d+S z9kkLtv^W`1cp0ynwY0v`@1Fj|dEW9Ia4<$O*0XS1 znkjTT{{R!|7c<6gEoRvyk(`gEeC_3GHk$l#Bqrr#aO&efC_wr={k^Ae zR0BW$y6ZIk48t&yn=C*i_o{ZcI&Pk1wX$8f>$lL>eBLX28GNWACPw4%&uUt|hoV}Y z&D`yXK+Q0XA}4VF049rxH4EkeK{4Z> ztya4Nw&>ix)ZnyLCBi5jb6kbbi6=#9p+Z^CK^2vKVKvDX(@akz+ZEN@Xz<1pc-%tu z9^RB$Ey1?TEjrs)))AzbGNCyct@~dL-CIe&uHo0|U2U9cZ)da)X_D&^zKi8?&CDJ_o&PYeeTs2#LWB9ed=C7 zYow~I4tm#7XCNvu-n{D9&Nw@|99L~%{{SN6wGDI`((dAnlTa&U4r#@))Yf(aT$(a! z9mCd_cNxtV0!lNE^%nmCdN&T{kP_yMih#a4b4k4VPz1$*qjf>%W3>gzr(h@DNt%Pq z=8(R7;)?-3O(yZ{P;U38?xMh1+y{C>;;ZhXbvpquliH9!T7xE(Hx%py{%5r`zIt&` z=cO4mSP6^!({~fp)LA~1gr1aG2{%)6X`Iqznk)zZ)%pQgoC=VU!OcLVk^U6o*&pLx zfee_j#yiqyJRSu_zvcP3`cn*;U~ z(@-#IS3LZM2tL^y(?)i(Z2Y+KexmxPh%W9MoVf$(T+f#H2Nkb4^Y5o|(6Rn?Wuid5 z^Ny8^k(^eBI!I6+#E+@4wFy=UAYOp(CtQ9&tf(a2UghvQa6 z=GJtXIRNJsLN_#s|7pe&bX_l`?9BwzvCr>8aYm6oTX-s$m| zP?EPN>(aiT@Q;aPxbVoaZH3kx5>HSUj(x{9y)#&(nZFL7rD~VWvU3`Q#!&RIml;KDn-!{wMaPNbf#K!r@yv8ODE> zD^{B>EiG(s#o|v3T6mLCOPi>}{JGtXjQjEJTX%mSJUOFZM`F8LH7c22ah|#2zF+Y# zf#$i?E-r1Z;&};D+~aoho&`^7@RmvDjEjUaDMD17o>*s^ZY!ymw5YU-K8EqOqiy0V zD}7elbz5&RImSx1d;1FPJPmE2HkTZpY+^=o*$15G)9|k|9uJd7(;nPi22JZ3EDkVR z9Dh3LWAF}*aRjp1&SH5P7v*9)9DcPf*0s%J&3P~nkzAN0Xz8gZiTKSioPc{8n)kytbLv)T%e@Md<^#@0 zI6l~}df(y&zliP@<5xdsl(X$g2+jb<(>?2&@piF$DXN%b7% z1g?*NvheSM?QJb%yqR3!$%k$|_&)W?{6~X8gFulq*v2J<<8B8S#s(|o`Mgq}+SXBO zcM{JMyT^il=N%8@UqnRuUbmrHNfcsXEM-(NKQCN^^fV~6?{g(qGfpWUdGMhu$Jy1c zHW?%-<;XzCOrE&zeJnYBZ1S9TNLbfsfed zEr2i%M+1@1HSZb+is96(JcWihS!6k4M^n%Bscy+ww;0ZCNb&7ALZ3&{p^o0w;}OPK zE(kd11o76lJ{v8buIg`}EewY{h~p<1{4i_UqthYOtrp&EE&oR9(@Gy2z~Xwkgd6K}!5A2Dp4cKsz|Phflh04nL*!}fN1e2#7&Vp)$TJ$rt&<8t_dO(mW< z;CUqotTE88ag&csRl6?~c$Zl7p@t&1?SPmcH+=Gbl@2d*`I6A{yX)zq@deJ1H1i}z zZ27$Lo-tj1i}2q~gBq2+qM@qW%cb7ddeqX1#^)3K)NGO&je zU=VYW=tX1eUMtpZY~v8eyE|1vjOYBClIb4*08N@%%PDcl1M{q``j11;_4_%s63|6C z%duP*;|w@IQCb>Sfp1}=MHSmwpsU%Bg2IYK`FgJDJ`}MAxFNgM**Ga3aqTRf+${wKO zt#iI9(Njt?+}sHm0vG@foZu1y2eEbYI_;#+(!!v5L zX;7KL-oGp7p~pF_q_n-prLC-VdiC@+(C&x=QN}a%rrCIo?l@T@z|SKdoohQ<(xJVE z;xYitVDNbu^rq-g=o&dlZsrdr%#Fu9f!?P}2Ddvnb?e)!T(D!fZQxfj_d0~~kF{YF zX#?LC*2Sw?+`sb1W>hl3Fvx^aM(c?m2N|p zALp9qW6`x6`?hDqXm9}o)4go?Yfg#_aWwL8Z+hvP;y5KfPt3jl02-UMu`OJMd@EyP z3Q90#RRXZ?B8t`~`GS+pXlfdqvf8#>E(Zg>dC%JAn(2g@4U#e1h^E1`j4QhvxwU7Q zNr)A*gV&C==(d+I3qj@l59@?p)CZJ zwKgRYN<}AnrUbCMM8oFK%uRX~+uNW}P8X=II{H+WUnUjFZ1klT3}3OSJKS$9c=oM$ zwC3`eqyTL>z^N@P<&M#1lw__t{{WuUt8xp-3uB5+v6Wg4*i;zEu4Y>nM|6@*1JHj; z+`iQ0QxZU%gC4by92adfdA&Pkt}D4N!i%ewK?DbP7$&tX?Bo#%Bw|4oV@`n!sSEQ1 z$*tKU1zIzJK;smgtO<8HhP#g5WDtyl-mazGZ01Kj25PjCCeyKgZ1wc2g5NF1bDFCr z8l4O`2qSMVqjOzdgKhvRt{T~7jBSu{>0O?hLa4=MC1Q@Das@k*Gf=Dipwolo<29YY zkYw;E=cPtu!J~G0qToq`jM7wIW_T3s+)}s?qyxQ0ymvUKJ7X9$fO#E_EkYZfw8xYK zx6*(oBpNu)M69HBsJ!9pPT*SkX!&u9ft&=+X@X(vMZmMitr-WUSCUYt0;5@m?W}Q{ z0JV`u;Z$X~3VQXb%X*|R-I^{2xMj@+g>&NgD`1+x_N9_MgHq*UtY6+cQtriMt=g%{ zH6z?B5LEF(kXX?yNaLkN=8B-VsHbT($G8ef=qZwa|JL`Aa6tE@EJjaUQjVkR{b`NR z*Ptdjn2dY>0QKstGi+ziAQM&}_M+<-?53(He0)6TK z0Ny|P4R^jT{{WCx$JhS=iLKBtgz()1Qooy5zFDVf0B{C-1CEvLc5_c@uG_RSFx*0r zPC?3y*Ms_4WS%wCbU;oc=Uk z@mGO#7~U(Ol6j7Eo!vf|9`%tAgfv@-G>D~*%FiN(`Hw#^Ki0h?#lPyU{{YXWbM{|z zLjM4+gZYZxY;wvf??QO~8+b`H`+5G!x=*yQEXO2_1K;aiYj}4^(DW!9PJlD%<|PoB1tW)<5I{7yWXZ{{UvGV~kSS9s}Wv$?h8RIU57aR>;nB9P^sg z(XK9^#mw(Jwj>LKj9{q*bm`4t_(T1D=ljF|07Eskq5lBL*8c$Y)qj<1+~iN)UZ-i} zHA(dNVR3+uv=t>zG3{SI!uOE)gY0nL+(#JOClVjM>t8~6xBfjN{{XJP(!P9O`5KS= zi&qVdD||=OJ_3?>!@A8OZ$GJGPbES9E4c9vy?Y~H#~?-lV_}u)$>Xn1D~0ec+<*G+ zKlCA82EG2a{{a2S{{ZwOSj%&w4f34@jl4RBtExkEp^__zwvSDUG5-M9uVj}?wEoYO zMy4>?`==c%$aGKn4Qn6u@Spk(dwieq;Qs(tte)oaFzoa#KW6f!mw)D74Mx{nNL z){)6PD41ATg8mIz_J8V+)=%Wsz2U$3`Mv)DeZTZ7&RZHS%uQ!R)8^I$j)!*E83gpG z?)S&1!l@$;2Y-B4)~WvhAyM>d#=idmj~IS~{{TX%>?4}htgY_tZiUD)<$AIGK9%z` z_)|rFS0)^7x#J$-XZh#rUs7Lx$FMTulZaHL~A`kK|$?h29y5)A*BBRuC4z7vsch|Kk@GW08i*EN$h5h zPV*Pq!`t0~EMR@p^sae&%dQYeH71dAw04#oo{{TX%E4hcN zV8sNE1Cb~k)b{f5^Ot9x_=*;B)?Xs=9ytgd6?k{zkeGn3(&`4ojzy7MkyZhDCTmJy4ll=Cme+fwQ z?+{(wCd5Y|XKx;vt&JWC!$&SM!~#jKd&FOPKi>Ye)9D=|`VZ$<_DJe&NX*c%&M;3( z!yL`Cv+!$aztp$;-`25L{ytOcDp5n@wS@-II&{rrY7@wpyHxNip&d`*T+XNe03YZ4 z`c=a^%q-H$RU+#~kBtLuc ztUx4l<`tqjT=AN0zw4>7b)W;xZPcqXn2kn0_xbgqf7O}*Ys%x1Q#_79=Bi23tT#oV z2pVYvfDS3oD}&dzY6kxRSik4ipC@1V5A>i0$2_~r=a2rqBg*(S9DnOS59>qspaq6` z8F@7v^T+@I^`y7^r|JDoM|03n1*qnBL7Jg7@~of(R-*fYs9b-oALqRVA=h%qA}kL$ zC-kmX3)_QmRJR$fn(zHV{{VFV04n3{{{Z9Y{b&YX)F+i#6>J*R(rzV?ZF7-|#?-%t zwDfMjg<~zvBeAP+NPGi|v1&_30X16Z@70@6xGF}t zg{F8F1*C)$5(F$)5l|3N0lA{r>*W5vZ)Ton{+efI@8q2I?Ci78d6RYaUhlh3e$W1X zD|Qe8cZG|Ii;Ic5h^pA{cVgL2SBarwVo0PISWHYzR!mC#keH;%5*Jl5aWyfi|FOly z5aLJwFB>hc_rLo{h>2wo#rFK~J_OPJzakp>zoY;6Ub0sF{~obc;{WU|d7@VG|Fp$F z{CC*zbulxq@XJ>&$Aw>xK4D^DC}w8wirn+x=%VsJw(kF!2L;En=kAHM?OD0Gw`}dZ z{f*y`#S~@5KS-XC6xR}yP!yL`6#xB9?6~MEq{RQH{Lf*cjktv59w})V*}Zb|q7K}H zViMw#k`j9)rKJ8ljd+UabFn>&Qin8+?4%E)0%Wve0LH2Lb+X#_txuHDQ(tsU0%LFO zl~X>VqN=6~JgEl)Lt&<8%*-tu9G&3KF0Kd+7Kiut@g)QWhlGZO6G?Gb;u8|DCMDm# zla`*5d6!&JSX5k6T2@Y>*3;;W1}2N$*51MG?CS36?SJ}gU~uU9@CbieAe?zIJ2(Gs z;r-&$@`sNrt6w*_w!iKC{eAbxf4D^7=l_Bw+Ws$O{|{V>B3u%C_DJrL`45-4MB;zI z757MK8c83rL&*fh9M&>Ul?B-6*R?*`t8Ie*q7)cAC8w+deW&~NKWP7h?Ef9GTmPSs z{a?WTZ(J|M9K<9fBqT*ebmdb26&Yz!k&%;;6;-(da`JMb*Ma?t`xQiQmBWgPhgH;7 zj;N?>9Y3xG0YS{n+ZR4tRrl$h z{fl?r_d&UaluO~=J~7bOg7i{=-zi`?Pm@+Fvs^6&mqI8&GcS+jVMlR8gkq$zDwwbQ z3CU9mzCI-BDP6C00x+d;5AY=hwOp78b3Hg0l;V=kkt@H-hDVhMgdL>%W9KjgZPU>c z!sn~Egqbg;%N0t$+M-sxk~+Sgs4bbhsE+B1!MPW`-S+Wt$|on7@N64k#H5CRI3p!e zv>pmA?p{G=dA@W3Jw9yf7eI$#8vUlnuu>yFLx|*Cq@hyVOuo`%xqN(@!qE};6=2$aPI*^)jS(PQYE(0(pk?* zqm@Eeh0sy=)OOtP4$DUn%6Qr%&a)qERK%5&eEfb-ZeE0g-f?sd6g=8rtbJJCHxKDeGqfpfjvY4uSVOLXKod$xSPq7A?gArHB<2}^(E+2F-I8_clc%d!C4{LgGfwK&=`W0TjJQvU>b(i3Zs-O?*`<2CVQH0P1zeN~zER9ezj! zfEs9)ty|Y2?lE8{XW*$<)bW5AgUy~7N6Upbkn3%3@yVbCmNv)`u!gxMNR4pJ4u1aC zmQbl{FwZ$SDS z^ut!CVMrt(LkV&bdn&wpkdpP4@$hCS>tTPHPj~Qup(&}f$^}R(^O^h$)lrGNV5xNe zT-|LR%Jdktd;)ea2ArE--}CT&Q_!fn^+%9nwd+=OgpF&m;Ib}0%%)?1zblX=@d~55 z%gkE18I*-}V&(oyVyd$CKTBJEz?EVvlS&5R>oaW2Yl1d4_F!EbUn}l2P94|D9w(_f z;eQB#4W!fzLVmWD+TAn+F+K12@2TBIPfy=_O#zK_9F*IIwpag*eXOgX`x^h8IW&w{ zoM^%gQX{o-wbBsNQ$K{~`zK}97RYZ9VpM+X+F&{@ln{8l|^10Bj= zhGOsVtT48$n>+L|n7fpfmz0&hL9lmQ${jH;;&3Ig=iwOc>smvbKzv(9+KjgCo??mnvastQdC)=T!oYsoqV37}! zrCiCJgNycuYC7riXfVdHO_y+0DI9Ku2m%a;!~?!?4RdLV{BA{R99}70q9z-oXe<~Z zF=2XvmT2I>04xAp87$~CgR<#PLCn|90X%MVUk&G=TlsU@a-+>d_AqulIaKMDoWKOVcQ+P5kl;~w@md+eV{ zWt~u_8zvDO!tzT1a2bJ@EP<&*Utn{qWY?s{Dc~vXR%~WwofgWG~Q5;wrb2am7CEhvGu1lEJ(`w~!e> zn3ieEPlE+Jqchnlb$@t+*=l9FK8n+~P~&F<0$VU1a-^9N|Dv8|jq!n$jx^E}g50!y zNm?LCLYPzZwwQ*RF!#9~Vy5de2M4bOfeuF1hakydzES1#7#C$)Llg&P7>`mRM2l)+ z18K&{`~yx=X#n_2@E{Johl4U-I&0iHg02>Zg;<^B65t;0wdl%2%>ckV6}HO=8l1+m zg_-5nERkt$!C)h_B*nkuoBOn5YsXtKN|Ciknwgc~fcqHVmd$i_9V$I+>|C@FbL?Nwy?IBRjKNC;APrm(VFhNsn^#G>9db@vW50J|EO4 zc18T_oBRzirQ18N{$^Ougo6hsdw51m%WcY}2>0+kIYBYxhEsDqwDAuLM@Jx)R@?)t z(z%IYbbs<`o1g@>S`}>JGziU`%N&!bn366*$m*jX#AE}Avb-RKeN50V@H^!)fl{XF zqY7P4nQ`HseVQ;;l1zXbHkhx>yvyodgQ%tPATT%*h&p;0H!qs%*v^64?kqx?lUs;S zHu(~0@fup(#W5J`&b=H0cLK`%p58TAARt)B{GIN<*u8fXJ1oG_U=rjiDcsO=f@SYhLpr?R$8l2;Y@4+A>3vC6F~`sukkpOb*EN`#jl zdog3-D>}BVm}l`9_4NQVG{o}^kvk#Vp>M^Su;fM zIp=8jKqO1O{Ta1$g5=Ky0bb$R%H|=y!`TC8lr*I&POwAj8_r0U5psY4H!gnmxFOY* zd|pUBr@mSC3L`+1<3-JRZ@XFedg&@kNAT>L9GYZEOrCZr*_Hs=F$!I~?OwruQDje(BwLn{#PTQEi*G@7!ClcUfSltwhlQ*`Zu83CkdmIv49d(rE( z0ZqlI6?X{U6Y!KzZ=L-u*tIe8KDbcl#F69v7%AV}e>WtF6V4@w8n2P6qXKf$w<>S6X0sR}2m!AU0uVJM9^UUKU<4x<*j&UM!EUwtEbV;6zI5$u zET+9AR|o#vbm@*J*sH8T&TlFKWT$C5eTy&Y;wMKmbzFt({eeJ}4(pnXHNA6fALEeS zSeLCZr4)ungR7ChVSR8?d}~*-a<`JaDX|Gil)6-#tBSwOdl2!lKZ zF3@cABGOrOwidDcRZYC!4RG_SmtaFGN5Cf;3iz)kA<8)Rh#^~+6i?#ZEfuEucq>sD zjoReBA+L97TSmC9Nzt@6ND3$f)&-iN3T=H_&ewl%1~1eS!4F(fs(KrHCiLMU z?6F;Dc9EZ=iK~}YvApX{Eztz=UPrX-j$*H|Dnv`A1`>|^j{$if%h;%ocj~R680?|1 zq_I!&4?7J7EU|h-F11|T|E!$GGl7=V$1D#33o6{4hDP*NXf%3s%c?udqc&kv4WEr+ zf&8x58`%NgAz}JCcG;v%ay}afJ99ekw{SN}xl!kaKx>r9I-22SJcIQx?ldIDSFn=}N8d-0HBhw8Pqwv;HGp8ly(Kzp zc07Dlt2ox)WB?b3zh~Ojj@(t64WyE;aq)=*Xy=T(&va9qL+g@knK~7Gb}8=)hWh5i z?aU!MHPJvd2WtL}-CwN`-(TRIb50dxJ$keqp0cVwokpUT4C$~(&b7tEfIk|MF6C^v z{%pr>x(BuFHr*XuU=q6z?L{=AG^65XWnfxlqf}3Tz%|}Eidl(e)N3~pTm}S@H_1kx zR{V9g3vVn7AdX(h#?1~q$R02hq}M}-Rmt|C@Bw3&3B=tT#9(cZZKEb*gHebop_L6M zPCIO&(6?=si`mF;UTVb(mgIqtJkLU$B73CJV?h*;t_dzus*aEiG)*V*4GVeGiedzN zuzd{51aojchjL5kPr2E$HXSD#P2YA(U#gpV1|!cumUT4Eu+R3wo4PRSyFl;c)N1N! zuM&}I|4q^w{@JS?`>Gj_2xe*^azs;;YwK(hDIhspM57~{Q9oG^Sa+sfKRG?o{K?7| z+?h7P#B65u=20#Yd#LXMo=qZ6M6*+mAFaF|IyRklL`qQ*1Vsy8am9_CEDFEYmznRO zHAvBi5a#5?Koml`sl$r^ zjHHl?3JM*JVB#>L2gU!u0Y!3AZ+f_b3-UzsoqMLSI?|O2hHBz$lh%uBH^5S6EC(+) zT?snsHcIa5C2)RGdAKR)$!cA)?Ki4ner*$_REx<`D?3Eu8y96cl2KmL4U$-g9-A0< zU^&Ia&R{_tEsh)jv2{}!{Ol>)MmQ3lELb9%qGEjRlN~U{%rZ=Oqc?0vGkT1AK+!T_R3&L<{d9@pYeJp)g&TfgF+yo^HzJXCP@M2G1U+}@mi z&S$zlQtoLMRv$?;!p$QLlv|o(yo?wRgt7l_H(MSu!8)y;OwLL_0_wSdjHeErED7Rm8^)`OByCVqhW#2fF1}Mv{zkMGzTT z_evfU8MprPq7hZbash?tN76b>ai4NgE*`Aag<>m+wmZ~!&(EkdpcP%62B}sW;XEgV zf>r@gx`g_gca#Ol2Rd0{PfT}V+g%Fy%hcDdm2ytA6MOx2aN6;rd%t(wVqtEnO; zfsdjbNMx$;DVaM=koNBvyT8Sv5MneGM(_UQQPX<))>M+Mk(=uq+B(TdLqTksxC$zq zI2jVP_XyX6dr+m}ww-XV9;9#76(a$zEd(qTuni-}le)CpPD>EwW4vS}0SjdP+?8iL*l;OB2{p_i z_e_{BWDb8qDL1t6oN^=LgQLgS(}{NVQAbHV`8Dm=TIXuj+`W=fbq1&M)ba@&J@Zd^ zF@{sQ!K&9_J+(r+^7w9jMBm-n-&KW4KCeB$DU)+ncY3E z|BMi8lu$IL>TbiBI-OAp6EEPDlT4HSo_d`OW9}fm$ z)UZ$PKnn7tR*}?cLqy6u zKR_#p<~bBO= z7p~bOp@Os&)*WmQfRzt(B!v=)go@JVb~U8CIUe}B0M{Jt-;-aQSOajdlhO}K3*yHC zXdN-e^B=GWbFL2_)j-C$BDGFJD_VLOB@7dcT~nR=R>Z=k#&R>#RZ{Z-Qhr1oMEy`< zvNBfC&*lU&wm_?6HDE_t3<`FXWeo0d&2gSh8^DD~G_~XK(p2{u#T0UGjF%zrTrf>h zz$yhJH@rYD+B;2}QdV~4*v8D<{m8Yj%y#Eu0`LSFc#o1PcwoxPXq&BX%PHrio6HwE zontkB*vEXZhE+`Un8SBsp5aK&Rx6+Dyma+)o6=Z#8whsX)t1>Jcxi;mT>19`j2dQ@ zd9zknRn*U|%X*aot>qWfC9=})N@6*vRLTv#9{t13U@x!^&x2Yu92|^}_7%<^W# zH$S-zH^_pnox8VsueD+cy^G^4#<(qBL#=y9|KNNK-o+;2m;v>}jMcpXb0rsn_f9N# zTCp7zoVlKlE!~4LDVSq(a<-z29ey!QJFrCVEvrLF(d6)n zOdR3m(~!aq^Sa!A^_t?^z$i1C7bz6 z^PH@LXLg|L>?&vO*(hUGF9z7@o;7JQo#C@fU2MBwnvHF()4^3e6fy<+>d!i0Cl>Oa znV>hA6;MCC;J%hPB|`}WNJUx}QMJ@@i>mC3WE^t<_+-d_T*^U%tSRcZqL z(TEn%7x}w>I9|v4L(KA)W&mcErbXXeotYQuVmUz>gmBE}<8}8C-gyw^Zb{bN$pVvd z&;x~V6;=gkOU25h$88j}bgdn`*;VpI zs@81jd$5M3Y4TFp;`g|6&E5Wwna)#`{Z@_Q5r1GB8S(MbCSB z+A#e!n!Q}Lgzg0m`fu1}3r6lNG+;%spj#z#Y6Gsx;v0G5SVedbwT(n&VU;9M*xlj9LW-;xFc^FnW*_pvuUEQTeUpg?=3M+0vY)LH&>nzMkLp{btP zlYUr|tH19dHhNgu2-5(VJ02fe(eufp*o>d}SDgf0FIonX@Q+;Mm@ACx9X9d4)v!Sx z{vtg4TfLIjAksryrMaln#-3IYn+TC=U`jMbG8Fv}hE<%`C%5h=-am#Y-)40N<12T} ztqVhghMbFYxil??MK1B0!v)Tq>HyIQPsUttfrLMQ&ywFKIbY2LS*RsMxK)m8kIG&8 zEk?>MjRy3PvBM65Rm(!tGK|$ob)eArw^%u5e}s_^?|e>oedUd3g%|5nJzg2XogB(( z(eFtYM{~LI>X8M<5 zDk>kndPE)Mb)Rc6Uq&V_P;vV+1NaaC1MrPCD+m^tSHQ`UHyOlgoCi@p)z>2XQ-l36 zluW4|p){H~$2PC9u&&hVI69!o%$mN93V@@M4}C@Iliio|1XVG}CMgAv0ox(Klz|>J z$7N{Y)K}MPQiUj{C0wuj)_t;-K45vZF)liV_$TpiMlCO>0+X|TICzAb8VfnR4oJVA zid&njY@a(x&#AElHV&Osy3_ui#o2qsn&fvph@?8=>D|-fcZKo%ZD{*Hs}X+K%|}Dn ztxVcK!@-5HgH{5ddv(zwDZz>r_}caS;_gBoCHs*K;pTAlw&0v0CzHz+bfNbbI|Z{G zI}oR^pPEL`vEGD&8_HdRc?OuvjW0t9TPB`L&Nsl0m6)ZJ%ygjDn=PmW|2>&`5~i1@ zhzU(_P(-eGe=+eKaBK^_eS&t`qY2hDL`loh9>tALySB^Cc5`OSC;>3VYHurq3heK(JR+gy6jSKh~3tzIq2 zaLqNNrznI3c)s=>)i)c9@r|{tZZw)i2|CUfS%;OHv-VWtEFwqDZ}mjc0FUEviHAM@ zBKu{R2lZ6V#U6pC3&|63)@_0LQFwlE-wD`3sB&ZFcsIJOdy`}wUaw>|$SzEgUKB(ov072a zlZ^ehwSi?Mdr*2qCEY1oiyDMEjGN`7WjvnW*AA_F?HNr1a-vk29fPIA3}qVZXq;2N zA8-F@R5?;tSKm@8$)@u#w1>u^9PPG)y8Q{LSUp7KDmy!po)=T7ywe1-gT4CVdV|Tw#oVUr@W7w9NC~ z0&`s5|02Mv@<+W7y?pgh$NZD$AxfupYnmj7rvf%r#q zQ*T8jf5~BIto>0Q*N$=(N>M9JJ|yXa1coc^o3l*U8?ecv@Y<;s`vy!ai5)oxd6@7} ziMrFDoie~9Cq+tZwF$nMU7%K}_REP=W5JjThq>?*W0-2StO{aq8O!=A%>B+;8 zc6QuS&d>rq8;j_t?SpvB*O!=;(65!)v8E|Z*>9rE!5Np2KD_vlDp6kMnBd3&I<@Fi zpW7acJT9SzoH5P|uZ?p%_!s)i4br>|M3FIIeklflQU{y-F(y&UL;0Ky2i`XS*643p zm3KeLe*^r0=ZlO%SwE>mAAQ!g)+Tf~4a3oSCMiU!VPbxytLw7RL?0eZUGrmhgot#d z+hfdf=A-%;r=0DyRk44!c>=%dy~>FgfiMIH=DLLp>T*d%FtmcF0-Co_aGHaC$FbIE zz%zTO-Uib2*Ip28c_ZzcC1}XLpORwBpy7F;bFbl)1c#p(q-JtXb$(+#KwB>LJF81A zmBk3rgU>5&Ff@or=;Yk3R1rjuvywOfw1*XG=Ykihj8?5{0I!Ae>H@es zPEU2Dw{Ljf4+|tQKYM-Vg|pNP2Oezr85g3;!L6hSn2lrb*8?n(s9WyjE@hiD;I43k zT4-}AUMt^XhXcYXH$w204VG*_o^&0Cf_{a`-dlVTNDUi+y{S9R=M>!|A^&`n=i+2X zk@p%>RW2d46*QZ}@_Z=%gLVDCkad|$D}PtOw-cDiCsvfP*B)DXIXb;^&EUA#6c)@K z$P3C~IdT&WmqYn(n7uJ?+71zlLwKHgf_a$Zo9(}Bm`O!Le760n4&N;1)PfU{kCmZz_;GBir# zA!>0Y4@Vqy@vl7q6)nP-vqju9@y12i&YU1=5Xo$$@p#^0Gd935&U+Cvnm@a`8B~NZ_yAI*6 zl%dQx?1I!ia+vxus0*`~2U5ov*)_D5P-JHrfi)eIfXS$Rrz*a?s9=HjGu`A;Yt8Ag z?29B?(=k<-+o*i+hlQ?-KQYVZ)#uQjptSZmD-n|{AtG7)o(`F4{fz> zNFG8WhY(E{g-?}(qt9a^T)|I$zNHJ|MX1zg5iCR7Z_Wp>U zcQOE9mqT*>7Ox%MC+{imDN%JBGmfSj%2i1dC6*aDEo$84$9iY4&7adQ10HJiRx=3a z;FZC7MHD5$#I;kjh+dh!DY!|_0>BQSPL8-tkh6Q369feP&`H8ix$}kbhGYmfe;8b_ zVaD}N&hKFqvk`;HPH(Mpatpq^GdD0vHpYb%2ucg@J$(DDNP|uj=fpHQX7QW#lz#Nu z7)j@ z#}Z$zHm{!XQfr&}A&K)Be0j4i1JU28Pr<+TFwCN zPciMdCoDYG{Y{nW@Bjj=iIITpb>9Z@k3^a2o4e2()yJQE&Dw*&_EJDFmba9CP%av9 zt5R=Sdv^c2EwpG2vwR@%bITVJj_Kr1r9XdDt>IZ`$ih$p^?e$g+^FKfnM=vE~ zZj4()VyMiAt&|9(gu|ntzk>A6{lpNClU{&jNNI)hneQuteq$>OS3!fI& zzo#g5DQfx8pRD8LUWA&B-76_93S;lS`Y=fR&XT~ULc&Zwytgaf;jeR4>ce^JOV=b0 zf<-FLAh>@By?kZr3BpmX7&zaeEy}+gu~vCYIH#0=krU3G7m8yL%keD_*)xzJiUS6~ zDCW3teQ;fMa1X$&)sHp-_~uo6VXfXG;rh*pr$J4}$Bh7Jp)|;p3f8rDR_KipWK`{+9DxAKM=vwU6O> z?zl*_FArv2pC3CUqK<06E`BeWi)Sz$gelvptir(YjgHVd1&@Y)!aTr`SoNPVjHWlCDlNeQcs3RW=4z5GJ5f^%3W|`mc$Ev zME*6C7xf6YEAEV{Zj7?2HS3eS+H(AfuKbrO!|R8fNX3La+c(7)^Ii1Vajs3{N{;!q zSU&^LzAp)nBXgrVF9iAEQA^7npEjX%bMshks5OE18ecLg>~55QQHoKNVtt&hGY=0^ z7dRo~&(2-H!d?%$eapyq=-B@Bg2w{>>X40ytxVP+R{rgmD14!W(jVU%bdFiUsYmTn zKDvL&iER)(HeK9d5(JdBf1lN24-xd%QR)-tv|U4*=j(G#2kXLRo2f2Ncth4Igsrj@ z>nRrN8j zTT7P?AhL=+MqGS(4SQPZ^1jI9m|Vs=okD^MWZmF^EorXXzsHJSCPTOVLjJhiV0p!? zN^N_$@6%sBxDQ@WO1}bj-<*-S9ckjW6Y!>UIh|6eG189lFd}ZZ=IC7CW<~GGOSk z?&1ooU%Umno{CzhCXN~~g*_c6H#eL#Re9k_W*h3o-`o(Ze82XiV%6;2mL)F}t?Y3Gbq97N3-KYD<1qkFemC6X)t2irA@!E<5U z(61dYFzlKG(71(HKX64Iuqo$&b#L_3`5sbeUhdd8X7FCij@bUOAK2lL3B)JmXUW*n zU`TpW-;T9eaEt$e-;=vm>eD+lh`XMM?wkv(k*MP*5#)-*1jur>V6FCpWRpY74>h_a z8S8g_@(b}DThjxufw-$@&VcFBSUn`2t2+$rc15_zg5D9`R*HxvdNd(#hattX7xbus zlOx5ZpU~z!Bub4u_T3;FIhpO_FH6byrHcZPnm#Dm?XpZ zii74H(8Q=N3YO&eE7)~bmP@x*J{%u`@~4LEM@}D0Vj0UwR~+G03)SaTo_z9ayY%6{ ztnQv+$LC}0dLZrk!K)uh9f}7N!zkTT$NnM|GKxWn{a;^ipTKcs(;2z5!mo#F_e?GY z@%xuHc*ApAvKLQsNlp>jxC*^HH-l6gNZxmY#RF!#+4#a5okSaIx^kMF#{8v8e^>1; zs~CdftnxY*YMnf@VOw!CX!h&*{HW0VMw2fx$`)29i|I#`YTSw(6tWo&a1!Fj%eqk@ zB?UZByz^U3A<>I?EklA!ol0rHaORvv*St+zx`TPj?eS8#aT`L#Pe>dwTL7i!km5f0IrKnQ`UCytRdu<&BK0r_>MMNgtByATn4_6Qv&<$y6-1Hfz508R=K>sAp)V7ZezT zHZbl@8MpWjnkuN&*M0fVoqX_}ChuZZ?|pH(-|&73N`^V~s3Ck}&d#6kpb>iRHLMdH zyx1VN!;YN2Z-0j9vl-04v?y(a3(d~06n2^|3Ur^StF16-lxvkjbprRB$)W3=Dmcc9 z*J$p8SQ5wMTDEsw{rGft)NA#arqL^}hsy+3hrN!rSmK;}N5A?T_K$Kqj7q@PzKyN9 z+aL6(Exg700tI(|QfuM#iiZ#A^%;Gu^wvC~-lwR$v~DHW4euFN)jwg`+l@Vb%Y7Cq zdWlw%p<#OPfBsBrejyht&gL1eMHreh3eVq({(ASFkayA`o${(l`&F|-$n;Ivjgd3v zGalQj()#F$MPv$$#hRclIV9b;?vlnQ@xn_CKo-~$1%sQL` zw(V}DLw{5^$zgJu%fr=@v%j&=J%@$pG$%cI=`c+{uRr%|K$u&tEm3zU2JKuBk&Y^9 z8X02keKMyT%Xb9NJ4)F~&nE?1zNkSVJmY%z8=X5;1enQ2L$2{Rc=ip(l?#)%6jz)J zz_x=$YBzq1#hlT2T=G_!dI|LW`!R4lX%JmCO1}B5OQZOb*%5xR%YaKWM0)urr9o-7 zrG?pWN1{w!?S?4O)P404rycObnQoTqqM+R=V0vw;_>G@Itffs+}mOIXPnn-*K`EYoX0~Kdd1|-xTyVI2xK1en)8d>t)a6-K-XT zjZ6Vsb1aEVn22|wVWseq7s_{b=syo9V=W$q`Nb0Muc?YFm;oca*N`h7rcoCrOqbfZ_t^m zM?SKrj+fRALOy04-(ROw_Ji_C>q}K*Cf4>(!|nT8_Yb{W8TGk7kx-g3+bi%>Hoo2z zaWs4)FR~FPJ8R65u+S*}NcrR0wbw>?^L1eheEqeL_rpJ*%HoYzPV-hi`^jYft26=Y z$qyW3?;VPzHieZZn7pn)p1FK=#P4Y3l3~%8;*)A6eO*Ykz>R$hD2 zOYAL9dlh4KM)rxoRDAvOh5Zfb1{d=)Gpn+tV+Io6s7=G}Hs@1M)oS=&9fyqZ%z{p{ zWWe#(h2BwbR(^e$`tq0BhoZ%ITh~>VNgN+pVp&f>%-% z*_s+$``1>^zsj{YqTWRVQnwP`<`!>x+<$jj+4aT?g*`lj4Ug%9h-KquwK_bmI5HTW zo4=HhxVvrh;p}@Wyjqn^#%S0XU{9fU+wSq;p}=gDnaUs0+szJ75-i3P3D(aqX5Tb6 z`q_Qo`R+fw$IY_Vkfk^)oiD-=6(NSadar9FM)0*L2sC+R@yA)W%J;;+Xz=N^@nrAw zK`1v-@V0fM9j8$vBqo?&na-dipi?XU;C>Ln5OVf1>Jgodec@2;CUyYPaw>)62NtAC z*(4R!?;q4`eNQ*}38j2gazY$p!x+8!dUn4G%l&mUsIB)O9#I(oN9;^IFWKTTX!(Rx z{JSj+LDhTH^5unS6~gLtLtOvT_w!E^fZ}c;w2Sv2Tg_B8 zmxG@vHM1iI?<3a4LiKD`w^1#KHhx5VW+OZ zbh|O7$+Mj``DOdYOvY(bN(uz*rgb*Gca&2@zv$(%d_L@LBUJHn(RmT6lx%UK+$KY(3f#MXsp0Ig z;{LY>ZDA+6;_>1U^t*T`8Ex$@u6t%izK`cI=<9_J(_A%WzUOE2pi8FB8!^~s=-c%k z_}*r2t(S+#Y9Hz5e{D*&P`Fm1DVB_Lsds zCJW%Pra{M>5`Nui0C!w|UHQk{m7c#G-(-F$k(^eFI`!{)r%Sh0-yR>YS_-RO?qP?T zq@0S!jIIpP$FIB$S9;`OF>{c;)KvLxi&&-M3{hD-S_&!|e0|Yp(`i?dDxrmfXY0IG7 zw^AyB76KtlW4VaMoh(f`lh_CMg!1=?HvlXOQ|{g_M00T0)rvqc4l1JcR%PKSnPHZ4 zz0WYK#KdoN(H}`&G$%CR8JVlN?3v4RC6&WPl&hZ*nYJwZnIk#8qoru>npsJ#l^=&Qe4r|7uN(*)af{vl|W2`F;E`W1% z$RKeT$wR+<}{JascR)k!P=3Qx|aaC+{! zgs$VK9nQXPmMdTCD*woTzPLmGu5kmpCJMF@(6(#dH0Qd*|G;9P?tdsm3l`*4+NbDG zak`gZSD){7`y-)oh@m*&=NR6zj#fB4>8;*<>zBv(=x4vhind%jHlJ8*A zYp?itB}uGY@39$JGuFVqNB7=@D5W)P?vdV%)Hs+%4%n0`D;R-EQ9u*@waMBEph8` zFW<()^BD31cj{DAX88KlwYU4fO}xHJku@n*Z4UiBG)4U~XWe?fPhG>5?P`8bu=@%g zREjFRWVpQPvZL^o{dR#foFZ)=aKYxn)#Zi2=mG3E8{x$0d)FtH@-eFs)AdhP?lzro zxOeycDJ#=kUFF-?=kJ)A=ZQgdB9sSq8gJIvMl7@balU3*z^^7*rUY&r88P}NV)~wp zr45l&4gLOOJ@%>FjtwovUiT=)R%V9zTddzRyg?%zwiQWvQ)jx?^W?2CzU1R?F;#%W zZ4hmDRf`n!E$nib$Ay?}*4L0u={f8NKF4)oG(^?d;0AZ=PWvl|qv{1I5VfIaqcNvT zl)65szi_;I_CV-#uQSZU@)^tiaOo*}TZ$*+?7K5v?ga-3&R+#le|wX^3cCWO{BHQ~p9f{v?*y+||6Pi|dKP11TV-BP0v zKyQO@f4_f3s&Q^Rrz=xAWRKy6Cf_K3SILBk<@!ed_Y!ECixB(KXWsbVVuP-KFL#5# zu)SkqHk})svuV57`qhd0blS~Ojw@&A)lJCY^uXpB-PoA#xTJ4G6;gL6E?Rn5X=q%Z z9~`3FKTOFq<@7o`i3taq#F|Z~lT;+s-yC(U zvpch8jcY?Lly|a5Sghg`+U=S%jpK^Op2?W!rC*Jhp0z)eNaW_bBRNvFnmp-KRrg0T zExyhPs&5r_vf3+ls0Enxu9#!gR{ET>%ckClu=OitJ{xTvkk~sz|QNIfItk zoVBw4N2$*xqZ6D}m$nU#J7Tq?DYt=6*`9G#QyVt*(!^82#Vs{6R@V#ioO+6dRK|1O zwm=EVsxuINwUjXulXulJ=RqX8GBvnNRg|99*-8;k=PcXUNG=Rz zzFdMi6y=pzGPxighpj5wvve7&2ThY4j+9iXNj=hRBTj8>%=@-dM&85osvAygU+fMW z7^_LAu_KDO<0;dPuW(pt&Fsu%jQ6Y2BXQQY7fitBttFQk#c);3VEUuFmIk8eXD1+r z8-ewz#?}SS#UnMkZF^#*k4n=SsU{g6S)6%*;ie+_FK-a9E7OC_kaaX8?^o?`l!bSMwDtmVe4|iDm6m z3p{qNtl0tDqi6@EXtPHyrV`4WdK~J(j{XuDQ$Sp zDZ&l4xFRRDNR|xerDgT~?#&)v^yODDe6A_pLB~q!6HCWxv-Sawl|S0CTQdIuvMM{> zSmXZA)i05OT_Ljs)H7L_O=wO!S43>^Dzm5^tD-pe_BiK) z<=;d9)A2*65&Sh9SP}d++nAD=U{l(@!|N94&$Rx)q}Gh#j-GufhQ#_;axK@=nD)!* zRIw&<;ka7-#|~_dr7+o_O6?7>Kf^$=2dJy|_Ud8&t|sjlbBFsG^ria=HQz3rr}%1R z(-YF7SlF(n@Zl!*wTUn`gI-O3Ad~n}^tf&ugnA@-{5m{`A1!M^p-6v*yNHB-f}}Gj;0p0;X4RzK zk?&B+XvHTfoYXo9<29ughNHI?uN#5ays(bS*KbRn zohrC!t$9&8+Nh!8K~x`9Us}(TQzo1;`tsH2MO@Uj=?@}0KasaD% zD?Mam{j8-M#uqFZlpeItv@Uq08f1;0Y8fnp-V;1an;AxvwW5=wc70<9;2;e z-Ce@b$c{K898t8MDmJp+{5@;a!&9eEcK19iZYr&9lG?|e+HSFyMv6j&H_BGGQ^Z$A z%eBLBI2{ISPF)9cXB}#Unl97QzK82Ldb-NZ*!h2Bh^3@%mG5P8NHyD+Vp)l(?=^WJ zfc*OUQHRtqVW9JvP8;whZ{F1a|Y%~C2m-np&~Ig)3%=8m0he(Yto~O zgl%gcWm*%J?{l4K*scktEs#9ox(2lXjwom_FP39jeG;1#{J}Ic+m)bfFdSq7xKrpO=AEq_~L>3UOK(By&(3LfuCdRNCHBe|V<* zB8>ZGKnDV{;LzVgesX1*M6Ffv=yzXqP4DxBg z)Edf-&#hca=BrBEv!<10EsYN|a`eSX1PzgfVtvg=9ysE)ZI}#KmsVV<*&dZR^EGx| zg2>=zr550KsS<85D%?8>8Lu*>N$Ydfr%n#mDgB(cYEz~;u8t;%V_>^BBHQX6zU zn#Ng-)74n&j#Wv=-FNdi3GAHothw}=4{G%xVvWygiR@E7IIfCWv^%?_0AdQ^i!CzD>3G}RnphOq;+ zVg0`?lRAIZSbe2)%H+_1H3#-TqSvO$Vl&dA769jp=vn;jtd3c5wLWbkdGuOYL&DXs zurWN>ax4d>15X6>tS6n_-sep|7>ZvB#4emYI@Pq(a6avJ(P^qXRrvJa$L{f5HM6(e z^r-OM7uiPwx=||?BKnty=ztUs2bHhE20^c z*_+F$t&%uXW9?Pm!yT)-cq0O`Zgvj!+ea5UHDt~z_$qNu_BgriGI$jT)4&q^!~ojlhK9&TxU z#_Xtxn#q#k260@)?!L{C593_C-XUN}2Z3JJ7bUADsq>iJ`kH!KBfXaCaCzpir@cZ* z-CR`KyBwXzn#`9{W1JpMd$@d+tJgaL zw#qUA{0G*$y*ATI)KMN8(+~GSU=Pra#=e6Ujda|5;}WS^ofRMt=+&^wiyDa;BBty-zb+X7sBm zYTlLFU0B=O1$ibwt<$}4#oRLd~6|XRZxJ;;nWYCu?hB9r1^7e(Cfc^}!zzT*ZUux8iHr!DU#g z)YU~VXU(#Ew0w?f#(8cN5h@actl<6U8(J^6yPlW*n-ZY_XFYRM+uNi|fGdu%@!Vcn z6I+&k#Yh?Y*HU~*r!}aOHYLvnGr<+-;N?2QTB2&e;uQ7@)O?1Rwpj0wisW<|<{{ZZ# zW0GnKbeTFRt>KML{AVRh8s*X&ekU*XB~kUN?_`}YGhH)jHw}&t6;@p$VbE7?JWOBw zy+@r_4ZrSPj25zw7!{v$ZxREXR`m8WDBv2vxv-sy;Mb*we9rE!hl`D=$r~yfoYm7P zCl!`t9+lF|rOEx;pxRrL(AUsXsYxa8A1PnkHvP*S`!+jsQH9TX=zp?XxTqx4h#f1T zVrlm|PVedHGQ@hA)?_KPVKd|(zEP-E1LL)kM{LpLR8^S zGiowWa&nFAo~OELzZ$J>WRY%kTg!DvRcRHYnNT^vXWDWHucdkhhvMxET$b`H4OR){ zwv)@16|lR_ZyKU~ozdS38vsi#-tFtnbN(RIw9Ph4 zYiMAVKG2T-V9L#G%a1HZ?bMFs@mf{NsU-Poa$DwOgX6q>T2*OAvTt|pJ9@A3KS@8c z$j(M8liId;72_WSzAyg(Y-#Y>>cvIGAG;TEoWnd|e2hss-`TzSuUNYHtKiE!iJ+TT zKx3E5cSL86WXJ_e0gf}xeC<_>rzX9G<<&UFw9@K+m4?nTy40aRu2H9UlT(_DQfl^h zFAE1Fno*^nO3_ai_-bjqsP)?>lVFoznRB%CJl8~ELW)#m5s*h9gWk9&m{yBQQIvd| zvF*{LhpM@$)rCa5#!5@@IU!;ftxO>cTWuK6N`%5GJVSfj-BY&78K8O!aFK;yG5b_z z1D=#Bkb9#2?&M-t9Ok7Taq%efXTF%=V_3*nbUo5$K+xrEM4en!)A}zQF5K>rosU#7}CTD@Q-WUDSFY&q~*a zM?_vlbJWaZt%;sGj6TzB;F8S$0Cu$C)5#eky5nyWbpor&A}w*syy|S3FENzWqYD^< z$d1)vZIwkb^HzctB(Sb#f3COINQ?hwE83jxX(ODt7kQJxq~Nk~7x4s$Uoqcyma;C}J`jlU)mk>ZS0L{kw#{ zy`kz)B98pjEgAa$*&WECXrkg9PG7MyO|Jwj{P)4gL)tRN?v z@@X~s+>%_?88ul7^)>Bb_-QM1Gs4Ajlq~rpW6^IsKsmwUu-{kQa$B!+(zq7CnV0}h zGg35@NJdHPoOZ8%j!#OOO33*v=`FN8iPOYg==C|fo2J{wb66y~B-f&U!Z#@yDNvsb$bW*m zp_<{~teL}KEW}l6_g+T;cOEEMiS1sCAB81uk($33gC_2^6VIqGw1rO~tuL`B@<0F8 z`Eo1be~h2Tui5JJ+scx~DMwNWVb_YR-V@c)r5|M~V&TIbxcm=V&iggmj$m)V6JM)F zROGCrpW=Lk>0+qLGIZw_ozt^guE(wEpAxlOX+)_y?#W~Fj1oo;MS6~t@$UH*R(l8~ zBlxmZn)y%}qsHWA&peEAT2M;Fj%$M#l3;Nw_n3G~&fnyFnRglISSS0eeOUKT-d~N+ zr^kw>)~@bnx3uzr9Temo{{UL#^%l8~<%0%NdE-6nC%}Fui$(L^Yd^H^04!|VS0MMJ z#9ku)(!8GJp-t_TLD5HGK9$W!2I*9Ag)2favU{HHJ35Xh1x}@0RHa?b%22hE-?B)8 zYsMslA;|SL)@a`pwM{M$A$+-GT;UvgjAJ8_US{vRr&^^Z{(Y;qzF$JT6e`nz)%Qk|RYU9p0Vj~b=-)QGjcmYo2gcqVxLlYfe4*9b_uQkaL1R z8uK5wI-a#=EBx?#)-%JVchJmgM#}z&&{_w@?ORVfWtd#10_~Tm1EB<0dmqM>nev zvBd9#v~*GLkLh0~d916P)%!h7wv;D>UKT5cvihyf;c2$sx?2ALarU`yh*{PeDwo%) z^4X}lK4zQqXQ^NON!2gzBYCHj<$c(ViUH3+1$~j=EA2O2(jmCBEX<%J$mcGuKfU$! zug*w|Db7z`)!68sBGj~&65B}e9?2GnnnGc^n_ijvqXpeOOf*+&p0^EcsMCd9wmLCxIOtznCZEX4 zmyQ`srj+m%ZKdD4r^@HuFX80PK;9f4mEis#{iXv*6H?Pt1pff7fRTaz;jZJte;jn% z`{uX2*#tzNF5&)6j=-qS4Sd!!g>&3IYB^E5g1@@&b>w~CTjCE5;~gbS6Ao#+B_!h0 z^S|bL3ixeKIIHk@ZZz#(7Ky9r+N1(|E2Nq;-FqKH?^^y{d^Rf^UYz9$icyl?HD-^p zr;4Q1Wlk|^tERP1=PsH$t}wM}G_%tc(j;TjtN^~1=e$KpKBY@An$aBcX?%34_Y!OVnli6{R?tKTjsPyf7P1G6I+VUwKMp+esW%_|y{aY0%^ZPk+_c>*cn|5;5 z^dvSb=}%iU8RD*&L7$qiJW;4zTIo0QS-d`aMoeZ_!U8>N@Yp)_Dnc7`Nh`lII=HDq z5|eJpUE9dfYgNZVRbI_8_iN?D@t0E4uV7t9?nWhsza*Zgb}n= zKkT@FxmQzCw~(+&QHu2efg|v$msiL#16MpSmD9GU^{0=a%XZ?-Ywb1>oG7kV;>s}~ z3M-<$zfs0=YnPhy=3`#Y8w*)2+2G?d96vHviqwMg)k5G7abF?+(4QJ7@Z6UA7LMxL zrNVBKMZ-0+F!^?ak-f3spys{H;+Mn;ye;9)XH{EYG}>DqtZEw8 zv2&?k+(`F#mmX}=L4`Zmg#kf40e}GXueafBjn$~C)=E_4vhOcHBl6D>__{b;H?YG= z!nH-LlD8~8pLRnxh+JF?tCn}aS;WG4+sv7tImveZAl#42y$j;^#%~e$qB}cFrfWFe zftJ!EwlWIiEJrVsoP)=;d4!s6vNhM4cO-H{E+xoN7cG)b-g0|;*F6=r#J6g~2a`M5 zK_!XX+>u|Q)uRUB+!JxqFS0)fp^dEw)r@OSF`K;7Z{BNb{pVAmYF<>Aa2FwFMJvt# zc-wG4{;KqtBuzI{wYk51$EaGVx^FMc4kBZM0Vn3pG27O>IXw76&GM@$Bo;i6!;j9s zg7BTK=ZO3~*E8Bi{{Y!gv~V&gP{$jT1RS=*gY-4mMqKxewOXUh#7CCW==5iv>$cBl zJZp4JP+Y{BxJ-G6zYYV%rL2c0%NZLRq ziOyCqzj!*i1Q0pedF@|7rTyoHbjzq^*RS8oy8A_>HqRuB5*UJKY7#qjhO=J2%%>kGj4Id{Nc)3)^iUTY`0ah-8w|YoHcs3|J)& z&;xLC4lC*t4trPT&X@5L%SiDLhjlCMMBXidlJR`3sFFD%Xwono0tv`D`=z>e2>~ZKg_CQu#%%z zw>4-@*-HG*9W{HJ%Wa<3Wo(BWSBChv<0SSP-lL~!_IC0eI{FxHjLg8iOo;LnBY;={eCCp|tX9FW~Jf`pA-;DOJHm(C2sZ*%1@^PGblUnKM zkD{T(8C0<~s7o78H7U>8$xq$)yqmTCPh(3kF~wVo0h|h5BU95gCM#>GTii1BSfp1Y z9-ti8TLzT>0K%PXO+VSF(5fm5M8DeJXFVxA$ww?Ee61e+9A;I?V%@+N7>m2f04g-1uYT28XEX zUt*P3C6EJeHbF@}RQez1U0A%IG^H6zrV6A~RqoZaUAvxSIFk=n{>rsEwC!lkH?G>RD!v3=tFACPD3T-^RAo?MVe z8Lp%L5fm%SRayKS9?})IkLO;E3E<&nVk%1&_7qo=-13{T44BQ)f(WuTq!6 zP~ehDZq?7+_#Q_fC?>v>4UWO9bg}Z->?UI+EpL8@lu2;qxXnCGF9VwN-}qOzOhy;+ zt7E`&$BeFV?OvBJ;F`d1s6T(dA(i}I3idV8ca?``?4gyw# zcxqKZY~oYGioCYSNc655=k*)9Hd$603eNA)@taQy&PW9@>P>I2g!tyYO>N`! zr7)=NT(vW*(tF#`s(5TH6}^@HPb+^4V;wlG>3lHGa2CCY+o|nNTX_EfyG|L!W!05D zJ{7HLeaDB%;HD&Db6PgO1?iO@_3P#Z?MWoD!i2HLJvlYe{j-UhvXe1bEFyP}8?()S z;R}E-AXE+D_z44O71dpMpG-zj^D>rf458~tb?q=5eXRv(t7CWf{^NB^2i6c)^D^x` zEo%__fYj}x!MpAX+J{lKn`n-7Z1e#0#YJ&;BW_UR8O>nlh;r4+{(2oSjRhSc8+jl9 z*7_sIT4lA~n%;B~u~0_sxMc^vMS0DSg>+jh9kE53QB}@P;z1neJ!`Iq;)aPno^B_Z zBO!lz6Ai~c-np+c)^+U{RnzWcvAk84*bRp$#2@B8Yrg@7#Ks(wRU;KGTG;(Z8Jpo} zK6mVAHxG90U9TgC_=BWdUD^w%lov7p3gc;9SBt%yTasjlZ>JUXN@!P5+re)vk;@K3 zCztaapXLQ|-xGW@cV`u>(cCQ7(V&E2jHWtddz$*p4Rsd^eAiEJL-Xz;!24L$#Hvm* zQC!hUZ`Gb*9J%SmBe@2uLnZ}C@0$8W6nRT}DA zmOxK6PE{HD(!K>)p)z~BwI)d00l-oy57(#kJyBP5jFs)Ox3 zWO$em%f<-DHP0IAO{Mo9gz!?Q6ya-I-$T^O>r!=Ks!q}C)a@;_y-Ijo8RSt3#2_E;@_4T# z@vn#VDCc{ZQsK|c!EkpUP%G*ye-l|YoNiT=rqacF9FC&7w7s^yNvD`%36OE0PKLak zJ|?6kDSJCv*!w)gD#PNas(#(x+{xbS$^M7L_tVIZLjt6BJXBC>g>jR`dl!lP3XOEr zw2sio2P!`4^sYwt;jHUz=R#bPZ~+<3d$7k-Xc0-+<00j>dbN2VqG5f?< zK$@bWV}5Imi^6)jxbj2&(#jm1PyxuuzVTv6s$=1(bacU!`~_ z!)+#QHvabIw=~hp5g9;5WIW^RUWcvfdX&&Q+FYb^pSsd1U_T0q(gi}ySng~S*+KRl ztLd;5XNSSggOX}{_daVd%<0$0MzmtnhR)}sOX5_NfJ38qQ~n~nGvYUk-xpSqz9Run zLF&i)S6iuSP($UclBzR;RgWNJ*A?^s0K{2kwwK8PUnI!VDCM*LE7Qm_nku|ohRW*x zT~9NJIEKH~s>_}2Z@luoUtgN&2<4HOAv;ERU!baXdXq$QjzPg35;6~JVbLxwVtJ!R z+P!%7s<#?N{iJ3|ZKOm{7_$s02f00keyu@J<>b+MAJ3S_j&&VrbGG&7-$SI*^{bd~ zAh=tZQPtIps}S6K_ph*^_=RaEkrn;Sf(4P8Ip^k6+aH~L52W~p()vl_x42nMSlzT_ z4DrG5_*cC62UV6)_E{xaAZ+FqUhUi(@U!f)jd;RtE8KlMc0Rj2tL16nAzGwiOI!43-Q%-IgP|(5Te9ue{--(n zP5fKBzP{9aDvcCYFsu!CGXe`v516UHphdvXsW`8SEEVTykCgWe9Htd_0u-F%9e=HN zV@kh`V78tu(!7}2zj;1qIb)vf$tN_o-U;y??yGfa6YZG?D6g?VJbmHY(DgO(GRE%ey6bk4y9YL)vAy{=g zL*_<>!>9=-F$d8l}e zxpzVsAUHjKVc*>Mr&65hw;5>ca#E=pi<&zIpMLP)Tg)crHrxSF!#VUh2EK*RekEv^ z+Hz@E*7~a(tA=TAtzBYy9mwD$WE=o62XWTEVS&TT&m#x*uR`!8{{V;WZV~l+Cz%nF zMe=ufxf~s=har2g?@J3+#`>h5_tge2nw6g`cG}zihtchGo)hrZ{hgHBt(}ZZEDt1>cD`exE6R4dlHg%E$X=c6qk~BBJYQ>q z3!B(2uRN(z+U7S$X%ucngs@jU^2$wd76(-pzAv=1n&x8zLaT2xxiIETJY#lFa5A_& z173@>ly;Sqw=YJu(DObR%GX<8o2q(hX!zg67q-x=>Nl2l=+Z1qH2mHfFbkDk;016; zUY@niS@@H|_x4S1t9Z9paIzLb9gJ(Ve+kORoQ{W_8sR)us#;H@Xcm#^k7Oa9;kWPH zml75!D=9rfw;tUq7S~RT4~STWU^i_gMt{6Vuf1|kyya5r&rY{{tN9(2u+dcQX0>}+ zZ2o7_I$gJhwRnY?y|}xA;!thxA%MfN;m7Xo5k@x*k_iD%LsfiZ@aj(t%cq?>?8hSq zl3Uqf^A;nIoB#m|jp%w--@tzcnPJrK6U=}!gh_`+8*}pdfKMj69}@V}P|@XiZZ*9< z-pW%1mfvz&71JNQ86ciP85P|MQB+i?8#!#(O->orm$sB)Ce(LNTc0UwvTE0M@uadW zk=U0+Wb*vT!TFg$7$r|!V;+_6p8!589|VsRUT=Br8p(FTG61?>B9Vdi;DN~)t~*S< zv(_~mSP}QYVe@9%szh!`W(|>@tH>aF){l)m0cmaaJ1sUvg5KicCX#92_i*{YByo)L z1Czk$E6c=X^zk(6dqk&CW}CC}JlnG z;br3te~2EH>(k|eik6pGR_MIX0;82lN=e_|>wCB4TGM20J5-NU)9hLqReal9sJ9{V z(;yjsT&Ylg>Bv0|dvt%a?}}_}v`scbhfueN&%C>JU-YfzgeVk%2JC#@$3a+6tlL;x z#i@U!n|rwf$YgECCMRg=k+k*$<;OMi&x$W^>~$?;RF3)??xVO!p;8=}6sm?{8Ng%; za#$WSn&8bcTm~oEO1>TyTpiPtc3S=GU5{%b;*8rbjv}5D8&-sBt4TslChoQJdTzBp zPCgiZ)0#H9rN=I-6WGoMU4&2N9^iAzx2m3%^uCX+*y=WrUE18F(8{}#L^%vA@vFd| zDAaWuS*80KfuLtGTb2tI$Y1r2q;tJbT=8E|dUzrf&tBFSh$FtzjWu1OxK#Gvl0xK>Dro}C|$)v=D!h^TUp-G zdLPl1a50i;RE?i@dX3G*rzSSR1E;QQ&3sqk2z5JfZmvSWNZ%V_m5z8k^r+(Tgi1&< zbgb+D02jj|lqwt^pz~Vc@K~yKBPgbt>P;*vrny|{^1UUqy6kw*jDKexKH(&7J;Xu3 z<&y%#cd_g%iO~KB_^(T!_Z~pnepF+)jC468A4>Xu+r?3!+5s3H>sr@el3X3w1E8;@ zTuGbKqUlbeoImN}x#r7-a1*cXVMZ~U>rL|h2u}b<;wue0Cy_wW%q!81p;YD#-R_l&SJLy;M@V)w_2(n~Ts+ zL98pwh9q-UmTY2?iO%fQLk^6mdRee2)!LFX;hB!5kEX7YX5U)1PXku#1TcV2TW3DP;r>N~#4f3d_eYZS{ z)7n&KuBCUmSlLppo)2o5?I$@sDs{RXQ*)>erDTRKmmfbZNGud~t5MwNrC1YIF0Edz zoU^Z4JzFu}%};8YJ4MGzy3D<3NmTJ$Mx@#sty0}eO=bs5g{+yn3fmiMKR02jjO0vl zH9Br#8z&uVSl}YGW|>LNGt59b*4)jdp|7{7)~KdZl}QydI`zn?h0H_(7-QD8jBd6n z?XQHG7O2`*2C_9hdeX)=mU+@NAH>GIOHugwWo&+RET(p5wK8m@KOih`+O< z^xggk(0+3hQu)}glb`m3yB{KH$jrka=cames=B|&JykUJA7WII zkdHM1BkPXFy_j&WIk=}vD(>GBJer(QmZaL8otH?n>!zG~)-Bb+$vtb~O&|7z)$C-H z->j1({lkC?pQmwMUY+|&TQqLcqZeLw6~^yiYt)woW)z#XH8uU$z0W?69c6N|_O23r zC8I~w7g7e!V+ZiBIM(bWGAqP`u1-4DUkQ9z(zWz_#@6gRKXYAg_MNornA|Y+tYe0) zgs9^>PAzED*z2i|p^c=RE2f^Qti+<=8(XU*S%#1< zG8?$Ax5k(Dme5Hwvw;}SK|Otid^zF`YRckyOcA(JN%_rvwn>#x#>G0+Zlj`me2>pK zhd-~Dx%(VKi=R#JZm0j(`R?;llW|j#?NCF1AUtGNrOo}jZE}G6nyWnQt_rGcARa6A zI8RG*Bz(nOJ?7=@o7C+zFB9sPxG_xXK?EN|TOKCWrn}PPGC&mXC8Wm=eLl747MjpU z893}}{PNvif{S#!2O&=YS0t#VQA?F8JKXi*i=43Yrm9X?R!aW>=3#l`91%=23h69- z7kzeAmWOV6A+SKL3!jHmpk_I8AbiHVDfxof5DcWj#Z}3K+@N3XYkinor1N^q<*`k zC;1B3kKrBbvnkc>RQl~=593iRZ58&>wLFs>J*dCEFU<1~GL7WdwOjlYVyotB*5Ksl zYVdLW-1n+K@TK(`qb+T#TQdWlt_tz>8LYpwD1SfTcP<#rH2uSRY^0y+c_0i(;-v{9 z^R(Bgf5MmXY+#j&+DD z#yeMOt9%@=)O?cj$e~9ea8Ey4^PX*nrB?E_-&5b03uEfxy_%MZ-<8>2_qp-1-DkaC zj_VxezKp#6oUJlUTCAy`?qM>(l`~%_(S2P&XF*p-&H(1VE&ZatHAsyffuib93lir3>LOPNqaI9dI+A|zUrbgsGU?(b zqXp{vFH;vw zfbE~T7(H0)X!{*<;Nc3^KU_i68-I<^j#OE|P^@OK|>JsK)m1 zWv`*{-wSW`Zv=SK*ZW2jG%>8A;vJkzZI7AIfr1l)4^GwkX%()Fs~!EccFAmG^PW+J z3WR5IJ*)FC!=5y`xfizgDfZZ7wlD*+kij#LniX;L0Q`00z1K{!U0*`CZARUK$r+Al z5@%@2GlBzwjDe0p9@MdUGRD4Yb>#^twC{GB^Eb&jwx&}V!loKEV%l-DQE``EoljZ# zoAKvD@b;%+r^R~rPIKoat0Vb8Cz!r&NXFsQ*1tS8Uli+}Ai0}SXdYSQc^$4i#ol9? z$%$J%(SA|wTfQ&&abpFw?be@sC2KWwk{1LttnaoE0KglvbMzJGy55frHvw$-ZJG#4 zi~e~`7w24@WDcPB%`6sJuy9Fg(zBAbw`Au$MN>4Jb80Z=ykV`QWp5+uonyn=M7|xc zy}t16%e#-?M3MtB*}#q23B+Lh#|PTCbQ#cF+eyN+fRYere2!9vids*#*6>Sz-AX=fdM~KQROE9+|J8J`(BAHJq5#q?*=Sb%JPSn75ba zl3c|21Rgpc!oAux+o{XTXJxLPkCU%MmYw$OnKqHQ`#Hg*7Ob&uK@Lz?DCDa9=>c8uxDt>9^9hw`UC35W_RvMP}x3-N$@Y^DnNArH`e1n1lkW?O@TH4n9H*YSqw@}{NqFLJ; zFcH}$+@tr5sF}cA?ErI9vh<(3JriFxRI?s!;j2#mNbp;ah+37zdJOl87oBf%(HV9C zWP#Ib?p*xRDC9RlE7X1+T`knQ{jj*+?E>6A!8?v0F|W7`#UBO#!n|}41?Tfis?QX{4}@Fp}AY_MH=T(gUQ0&MDV&J9jzAJ5?ik| zwi-1fR-0{d_rH~nd_$)yRTj5h7p>1J_;4&{vD7?2t6kiEmK%vK(&9N3eVGD+(>k_s z3lsBWqZ;<#5ow+j@Rpw(GEQUj6UsBh(T8IgEDWPOfPDpg^{e=6RPdgss9oAm4a^h9 z$@Yl~N`ePst{4J^TX)I;$m5#x4OZ7s)ZY^sE@rn#5;-=9X(DfxcMyK}zA}5(5yZM` zQ1(g5Xq)VA@an9T{k5X?X?17lCx*OFZ>gJGn@O$(y|t>V!{n(m7vn0bbGb;#_OF^h zXoaFJEujrcO#TwPLYEig>CL78O`11FRK!?6l` zbU5VnuVmJ=Z7SjoA#ZiaURRY@%RwX($s6!kEc~fM)q0ibRaX-#^!Z$EuI=?i(!)lD zWhE==vRxQ_6VfBRwbi6H<6%gl-6+c7VVy^+u;bX)cB`v4r>W{s_NX>Y&2J66#3o-U z2sx3IVHA<|+g`i&4Lig7Lg~M3mfbED?fmV-D8UIXySUtcTJdIt(weDKq|$n{qo+>it7-oL4yC%h(r)dp zi$qmSlD)`j5*1&S6%>&iWQ-lXPAgjf0O1JJF0QY%%NRb_IhQls$R0Z~LH+b`1v{CK zJn}iO3Gmm%o4X4s?QC?5TTd-y-}V$(w$cgT{5 zJAAf_JQ1D`uNBl;cs6Zn;{H8a*6KdG;nyf>!2@nY-5QdnMH z!jsxu!p$sm20I=rfVe7D_0K|cUsCvg#dlgQq)}`BVQ8fCmvnpA0e(hVz{G*N^~ld6 zo*Jws{pht6``vudVrk9_(UNj~mA>QAG|djfL$^U?Vv$D}BW!Dy!yKQkPc_7N*G};T z{qC67O9->Jk)CmIaPkq;XB-vkrz4(g(R4o&X&U5LEn%p~Cz3+Vv4Al)GDByf9qWPc z=Zb9gjaKH)*TjEqn$?(<^1P&yKf1s+3dmId021Q8I+CR&2&pSeYc;KpHkzoVDRR5V zcGK#8Z{a@~zO|)7`+{6Xs<$x-1ce_QWRLFwky^6qQpPYCE}^-0_f&dKQG#<;vu(r28xWXCgI5QI1VX7OAt7 zT>h=&?+-(C(L-R8+bFt-Rn1oqs#SCLyTs-UFs z6_RTDM*jePwmzbkbx+!IEXxk%9WBn6-FsZzk6B{bEnO9diG+A0oR507rT8k+_B5Uw zl$Ivw(Xe2D5nWV24(*#DX1+Ht$6zAdWZJgs*0J|k3K@cmo#SV!ZSG=8<3wOi?Y`c% z6kak!2QOMzKMb39%O@W7nJ2>;`#yexyy|swsW0O0cgqo(r*xwI86)`aB7XN3dM_77 z$}=DU@m!_P!!1N|h)AwV=Szap_}JWP*3jGp++$`r1O1{n2fi!Oqkzlnrm58CX|a!FJ3vT5vlZiR5N z#vP^@KBl`kuVGVjOTVo=~_$RePTV#X3sr|=DtfAg2Kvjwk|%0 zzZ_)iMm+Q+ox7voZC=hr$zh+ZJlsHpg<kRL#ER%4G+Xz)>weno2x zwWP0BK9@Sbv>=;GGi$w${U=7r3@T%B76&4{=`An1vk~kn;fmz1-EJ#KmqzRNsL%UC zFaBN09e4KSygU}^R$|w!++;YfGP$&rjBO>oD>&HSfrX8S;a$}7dNW@dPtBffeAz}% z_YL}7^;!Hw3UzAb?tEc~!j3asRF)ULSsU@HpV{+}Nm4$w=}^hA(bdf}&8?qS`xJS8 zN25jKLfmw#F?f;W$=&!@npKjc^CusGCNRo^xCuR>P<99;fz(C9NsghU>*sDIr?|xf{Fb zS)^sSe78K4fKQ;V@OVk(1EBiQ-Ub~Eg1acbtK)!KU!s_bl%|qb!7+ zfJrJp16Y^d1clHjl#CqY4o!V7z6e45bRPpFAH80!E+VG}ty143#jnGaYA1S0x82R~HTK~6ZE4um$i5v} zD9ZwIT|eucIPFqa>~X#lli%6;?tFC>oVKYF#}*gU9ZhX%lioC+EF}OWWaNHT^o{P9 z;frgVduea2)@e`f(6A()ovUs93u-tB1#{v!l9EZzl$SQC$y(=C9vrEEcM}adC$aI@ zj65rOt+aV6p+N(!d1k5b?@ZC-GG1JUk;WD^;F4?fIlK!1&MTX`_&uXs+==Fg%s9ah z$okh_2aRb`N-lCxT_TP=e+5drbG125^^?&b|Iqp3PZoGyJ7kbb*9s(!8_7cnV^sO@GQbc0Wu-poq1{L|&r0NrowA-b`innY$(uWKNdMCLY9M{uYSC1AH zSZ!~fIOdbeNhce;sY-ypVC)NUPpy8X>>Ju`dY>k~$&O@DQNne?Q3CXTp2Wd!=M z$*cZVxX2J7;{yO!&jaF4p=F~%HQlpIcN+*MMTy4ww{5^;0*_Q)MGuD)#Q{@0|ow*3+8=^?j5ccP|ykhNrLO^h;vJ?rExW5tW9ObEBs z?}iWW6&OZ;-B7(gmFT`5@de$TgmOuB1Q3z5M|R8#?eCVs0E0k$zxs-)W$iAPCK=*# zwyApG@IHi!^%+0_52ZmP07()Mab7bvwWwd)mbJe~+i?LEb_p@g10H$xrd#-;WrVrV zr(OtVdxRMy)8;%>EWP!Asid>jb!6Y3$E-^$IXIC)9eKrIHn}26g`Hm=mA8K?@~Avl zZ+j%L#cZ)lfOmcLIXr?$sq|fO&^G^>{|;-mWGFhKWGhmK-*>F8)JDCF){wq zw2h=<7pI*Pju`aH=kTv=vGM1Jd|hD`?TzGe@q$mqNGSewz% z@(p&{XNVdrmy%32?ihE;?_Vp4%4Fp>^?jb_={PPY!_-vMR!^#TUZ=JlNJtyCO%#Q& z-D}HV#H>Q?jCH{T^%b41`1?=r{j|52lZc`NpgWnp6%=w<_5!@gWi?)rTD_6&EZYc^ zl&U2d?%s(Wy?>}%S-~a6&B8+x51HKH5Ai3!(Yo^8j03LD5`+U9Q8_I+8$ld)10Cg4 zAOrZvL+U=2_s5LBJn7yY(XRDNxc5a00u?!FS@=Xu_hZ1XkZ@;CU);gh+bdyANn zhZ6r%g z-Jgr6@ZH2ZW!g0JT5K>)6L}lro1(Hg18Doa^0n?|+%qKwJY=4$NWtj6UZ=%p+E*Q3QIovt#lB_alU6@UbT1WX+Q>g*zm7&7Q|`FWv8xw)rH#GJR?^->9P$jLPa>tgik>YJS{WU>uFDCN-(|0juf@SAy zY}<(}2`ZV!c&@7aB%^85#Xe6pclsQdKN009xK+TfYthC|F?RBIX#G7;CRW^%E0M+( zfyO?SmEs=}X}TSS)&8M$w)WQOUPpewdJd$Xz;&7j{vy^FP`Q?KsNFnB0f_1sEj)l@kfn(k&rDVl;jURL;%=7e)_?`SQ15b@3(Jz-u z8d~YDONQOC?H)3F{qW2%!MYwreGU%;PK-HVthaaF`kx7!=GC#4ol3I1wW5~MU6JH^ z7LwMJTbrnEK=Tk~V+k1&DJ(MMmSy1udM>l4*;-slb#16!!)W&LNo_5#jwvI3r5Adz z><$Kc*C}h`+s$R*ySme4R*HK!v`8c^IfTZ+B2_rZJpS{F?tE3G&81A2*4E0FcMueo zD~UYV)!nes0gssXAoS#l?1NI~?2js>Wfr@=JB{$?g?uS_q+40)7crwea$8#uGZDT& z<)k5rWqb}-Jw`=&UyF1LJqGT3J9yImTjqjD)mWDMGz-hKW94Ua^{ss)Nbt)7H49d- zh_$&}>sg*yqn~kQ5-W6Zj2v(Q2D7|TdNrLyYg&D(TES&@w(J}+b8iZ zc+XnSs!p2sV|8tM+o`21`$u_7((kqU9POO<9vat;rQWI$ClK99bG$TR!jLnL;}|&~ zTKjuMp5E(Chh+QGXtI+i5yvTEoym;hPipuRUD5`dtXoVhW`ZfC^Ke3#vnR~LCg{t9 z#%t`af*SGEbc?%Vw56TPMH`?Bo?DH|pmrz@2<=;C?$sp=Sv%YFGRz{KI88gXYrnwp zPl>KuLXP31QuFHz1i3v{-!cGp_sGG=YVjDg1TQ%9V^ZvlH#0umag6$Ywe{Q@6@x_x03Hch7^PS9LEsdyuwPh@H!SF0Cp8-J1+t1 zI;1ZhrRANr9#%28?sq3D7&*$1_i@s)i*a{OE%fMXG^HC!NpE{u`I&ZXG_;fbJ=8;X zV2(L?VdWFFY#!VLTMW83rx%xcq`Y`&pjih(er1y!4EhYSduXn)NWgQ z%?>&9WX{k@z#Vw64fvnq4PR2!bPYl{WU_|p%`Yt>Trq}NfQ^`g{73?vp4}_I@W!L3 z{6O(`j&HRWb2Y0;JVBZV-)w{uBm@k}kZ`>Qb6xc6#%)J_iu-HS;gu=DIbPjexAZz) zOTzlbr1M=3HVd3a;#D9eqQ!0ZB8m7e%br|)=Jv0gFZ7quLpANbonv<$*Pfbn#DJK> zHe1VJNLGH>J!|X#029Y^qGhCj?c=mZmeyzUCX~CYrMed3i@p~dhI?1f{v@%6 zFBe|v?W-8=8gjQccL=5{ciLx^1^(*36b$=RVra#^wOx8@RvN68`#bvRdVHS^d^fLY zP+VH+={>!|%_K8M!Zt}IOq9cY*2vwH)Ylzn@JCRIbjhQKOSOGIc-baq^5vc_!P(iz z-%t)PK<2#n!2UcsVb*U^+j#;RWo9<;+=AJU5ucdKhvws;;MYOnO&3)0?E0kUE6dw* zi{{=+!ZUE-;(DbtflQoNsSKO;ZA^T)9n6@;Bc@mh2&irM0=CAxZPY%34+1K7JxYV9mRYuE(*o!FKihROO)28oJ69&`J+KYt%OVaWV5GSR&@~-~?OPTyttbb=|*2c$AXLePJQc@!V zf#3KPkGeR`PLinSZ$yfdaDs*2+PCIrFpC#5Vh8X5!>jtvR%h$6(g2H8d(A8z+qit9CO8Xdj9}}?62%6x|dXCj!i~4 zmS{r8x9@L(H0-B$mmEq8s11U{oaVhB!xGqA+G&?MWt>n(*M>WJZjSbmP>}B|opxmW zpl}a0)9lpUrDge??xTgATYrJ_t(T0)g|)pRcywzQj@c)~5UWHUSx6F+I z+S?Thw5v3xoM+zqoX?K@M|(Vx-5miE`Z1g7Vpe!AEtnM^Y(s`#KJegHUxltTDDQ1` z3GIc9u1iGL^X*cEV+JHVD|(N{uzV@wjb}-^mu9LgC1PV#xQW>SM#zLSXUk68af<1+ zkBKSbOBb@e(e(cSH*jZ~IDDxRPKBcft})5ZD~dCWo!q_d%`MK^LUBqdd%e?ZL!j{& z#I171`R$?CBGjzB$fS;FSIK-6_ctlW9SFsH{{VshE5w$qWvJlp z-J2hHV`=rTjv2Je{YEnpXzk$cSQl--#8mNt?Oni4OHzq%tZtyUiYZJ|Gb+YH?cKUH z=uY05>sMBsYeI3FbBk%(@26DvR_;75CaxB>I+SPZszo)-lC_?VG}BE!s>kTJgT5DO zel@j`v`uX!Ug5BdVc7fE=>Gu1-;N#*@fVVpPzyO&?FvqL z#(yt*@m~&Jd@%78fuYhOvA;id+TZ{fo}mxjaaR0A@SDTlME4eYakrgRuuE*NSPsf~ z=D#ZAO8Hi6T~Nnmc+3VW)>Rrw`CiV_kD2=~2xU0A;3X_BZA%%2*3pEVWe2{EUeC#& zW@~!CgDh}o)FVR2c@6YYv=M$4{&&VU9ni2(}Z4< zQN20ePLAmIrBbCFFFgk;)f(0nYN)t%+S;E~>7FiaP6_0@7O2n{W=JIS1{7!Rj(&!| zQn$MBR-vn0++ONZq?Z#hR@hWV7~~S(qor~7NpAzaoOg!Xbbq_LS0s>6F|c1>THv+q z3VTPIQE;*-kgojWdG%4(>tCp3d=H1i)Ws;`s#ErfC~_`aFP+bn&-m96s9~Hi6sjsx ze$h?yB>qQay25(cZW`^r?@PAti|i z+P_7^<;smX#!bzrq~|SLw{!ArZhun~T2qJaqUCi?F3C68^`8j*S=RI!;*#3=zCgev zzd8`zat(Uhe$xIUXjgODb=*q9^L;W-E9N)Q)m#+4St2XBWC})e*n`me)00ZMFiR@L zUO31O!=T;MHS^hr3S{`H`%0KPZclg1X3wX<@m_63a>?`AX?sf6`}98A_;>M?YFm?3 zw~kXGCMje2c4Ml#`g$7l?-);GE|4y?nM9Jl0>%?_tDcHivHI8N*M-c!U>5Gt$N|9^ z7|-{;MSZW~UmEIqoyE1Tp<=dV!UJ8~@w;zL%Zy<9=D#509u}vU;uUN(QiAuT4r^I2 zC%?%3kA(C2<7m_8l}>$|joe+=mt)VT_?>^C$pUKr91;#o$Wg7_bBqu{QhmY2b$%T9 z>EPW!xRxihVEa@$m&o-cdRJ-Uy)f#qOQ+oGmO6=LEdpGONs*uK^~YmhJ?Q=ci%m9h zYT6Ik?}>jR;@!N+t{9Dzi@6MDQZMPx4`ktR!@#FE*;T_Gkpu{$QONdl} zJu4#jyWxw?Fv4WmM5rBFGnHU@1bu7t9vk5d zqNNH~oT^TD_^j`4+8+1iQweCg2Fk!OneiUQ%}{sJzC{O8aat2xZh&OJOO#XRYFXeTwl1GOO(Q zaTAX(_qY43dldfw617W0DKEjHayJH-?Sq+RZJm zrN7`F?jJkOAxf24;v4q-*H5jL@Aq{&`>%>x?YkKN0JWY)2jwe`zSzjlD`9>#>i02u zb4P5-1~L#J z#O-q+}q3cmaEtTX>WL@4_AUO2}dgNE;ozz=K_3hMD+IFjRX*6=fE5{-n zt0BP$*w@SEUK!ylQqriBniltRU6-qOXn!`uxex;ibeFZe>S?^yK z>0cLoL#VWN*Feb_U9Ryd4l~iR4+gzc!`~O5ONv`fUvYSGD}M2IYjS zXAn?+>5+N;4R}7e<6T!%o#wc>+{EO7Hjhr#-IVx!o8on>)fn5ZukJYW9y-BcV(nYn zOZ&Th?D})#Cyq5Q4z;9OdD_mUnaYM3?TpuiT6}QV(n%fW49o!CkGqcGbgmw66yM#w zu)Us3h~ZF*j@iQcRxY6S?=-IzLKw-&LUV!jHTsrI!Psmz8Wgb@YIP=)y-RPY`KEWr zc#73sTrM(jj)_xy?Y@V+f5P{^xzny~uGH^vHp>t0*nMlsE<9tZo$8v6$X4yRuKm?(tsmZcBv+CNL+(3)&VB3Z9|wGU5L!WPsoJ!S8f_D)$!v5k59&pJ zdpE~l3vSzP*K@Eq`Cw!po9z{T-{T&f>ds+}A_@t4Zes;={ouQZtus7}FU={aRj19% zs*<{E(VlKu#(3PSq@@f(_qU9_O06XU*-a4r`1GYcY?MohBFj(}&7Yn}0L$Ln>2 zW|M5@T>k*9lntPLJJ;r(qw(&--FKr|IATI=l1T%R*cDpBUygSdE`Q>6qgf##Rg6;H zuIy(7hD>AEy?p&Y4>F2%`S~2Se2%1fe-@8=uZx+4sJJGg-Pby&JN`%i(fqv9G`qVU z%+o>T`96HHvSp(YzeWcbB#dJ{E2!}1r)Q{n_ETEh2bE-+WMk#5+sQ1e-zvX!*PCfR zBEPn{ytqkI{Wdp_e>87Gj!O}=`<^SavS=;z+k1g+7uqKy_pE+s+&1N91O8bN!Sp;= z>#?)g{PIz0-Rj-8JqJqoksLPH+77Y%`+qE?6I>})IL0EEZ*mXH;<97$L|z@VKiTXq zAd2cy2bg@-bdZL4F*JYu2Pe}3RlW{DYZS^=MDJfr>TRf?CKf>7QT>k*X zzYl5q_ps*)sDBN_Y&uA*!pZB{_Nt7f z)i7y0*{?v*t*@$r$q)SpNVJJ9eo45D!!9PD;ygQ&%r|58`IGdw$~XIOmE&H>v^}9P^dH z`E!#AUy`8k|eN(3Rn*Q|MLoK4% zT*uT-*+&HM(7!{UQ_{NKJ5H7+xRz*qvyeV#4#X(rlj&bP>Ru(&^zAQAwl=p=$K`}f z$>$gmNm8yGB%b?zqPo3b<0Yg^_DKhte1t13QL_1tKmalv>fh_)*>X zlE&Kh=^olyp}vkY7@i!iRj_=wBeCt=S3lve3F~?s@(Vp)Y3^kxS~*m-Zn@`su{a=i zuD?>hk4V$3=Gd_bKvOKAFh+k?8BkBXXLy$Rg|uStP*`k+)tQ5;e6k;xdFzwPv`X%b4V zT6Z$fa5!SaBjjK@4xZJcYYm)#Xog=C+7yx{m+bcmiBSpI2>_5(e|UAPQ|fwegKgO? zU=v(i^oYs5i!mS)Pu)|FGx%0?sM3P>QeTKvrN0URPgLq?$B;11_GHRpEs{vp;JTHR_f zX|P5>nW77s6ar6~E`LGZy*oqHEp+%TptN=t! zHwS`=hVyI*42dj-)S%fjB9AT0pWz>S0=_} zeF3j(__^`g*7DKx%@*LwXHAzESSqTF2rVLl@|r2mN`R|@jPb{yuRj-3Gv$ib z-A_{o8Pij4>zP{KN3{Gp)O8ED)hGVgOLezMnqxRJDxu+J;DR<0&JO~+ZFp(kC^FmL zc`vD3TY{oQXbr+1L&8rWk_chYj2zd^_Lp}St>)WI@Z;s*8*M)@`@Z1%9u0c;gnlJn z+F5;q;v0L&9JG69Uo@gfK4sk97rr}osi!4tKcAVENLlkO`gE}I;ja_uYGkpuylY4K ziQ1|m`L`9`t&mP|S$fyB%(vFQ97~;LU=talxlwT!oMTvz%(6Q0>{B6I8TG7LZ~Rqa zjIiEm*RV#(Dno7r(kcVEOC(@t*@)!ztWO&Fk6*X3x}RE|(&JROc&xP40L5ne<$~eD=ec78BPkap2T!MhPh=c%JyF)rZH+9t+%F^^FEkVH#%7pY2rz(mhG)9 zq#*=^F3`%3s>s{91Dp)in~xUUc#p%EdQ5tRGff4#iea_wq@E8fgZq*R>*>&rYsWP| zh?P#8_#k)@Fe@`z`+FaA0ewM-^LpG6R+F%+)c17jH~8uAjg8h0(S$n z`&BxLX|0;G^SLpk-LBQsx*2J!3H2LoLiW)w8w&1{u|;GL4CDVL3#NvG>$;&tA35Ynm)cW2Q@MqTO1-CApDI@+*n9w$=fI5DH@e zamQNoiEku!*cg>lmB$=Z%E^8{rAG2?blcGV3eda-;f+hfs|0Zit6P)yhLPNz^0y($ zTw#Z7bgK3q70@*1zO%E@qqkeujyXVW#^}PQbVqkW4@@3Sc{l9&;$aQ6@Xvb^ENo(d zBvOU910YcO+WZ57jmkZ%=_?&-(&pCQ_w3JWCDePznxK+820L;vPaNaky*e%xAqQy1 z?DXle6h0srOM6ij8c;j^;muVv) z9A`a^e5>KFgq}G5(pgYPXv;I>%pvkabz~U%4m#$toe5K`2}Ux1)s5j^HE7N9ze@6q@N8Ei%y{yt;`zwU*^h;~XeS`G-N&3iaJdZEo!2vVAQtC3`cv z8E~oPHZkTiaw8oW^(VDeN=mmncS*fHenir&=r}d2O3%>z$yIB|ZH7mdLA!GtuHtaa z&DR~tJl9LD=x}KFS9USp3!k%?Rotmi%*q^)4^FrM*VeH76_)aa-oJ(DQPz2q;eC5^sd8E@zv$to22QG+8DJPX`!?7ri{pv2xQEAl;`(_&P#N~ zZl1E0-S5!Bts@&J8+G$NqsQJP)wIno!}m6kM>JY)lWfLxjNC^g*F6=PNhlRm?P3ly zUp=1~XamHWvg-OPT*Y(>2-;=~Ze3LTy8s}A&zX#<>0SBpL+FcrKB1&o>DsJrvBwsl zDffQh z7M0wi_cZ(Yqv{Py{uNclrjrxiMwWT zdY8q25=CV;ouS2gwy~>9*OyM=5o5V;oCBY|jNtaJL*w6wG@10RG-)#1O>K5#j#=%< zkqy0r<|N!W$#cLxvtK7(S;!}7&zU0)sr${_f#^7HM_dfoNY*V0g4$(`THAU|(J^5& z?%kH?50*YvG~Oap=Z_*u@8x3ShmAf-bGGAqdEcq*pA7Ur3tQRW>RPp&^IKb6A2kC9 zibj#JqELDR&?x)eYqIfe+}0MlCYx!e+S^@gIk|aO-C^5pCbjeFhSFJXC0WGF42#Tfv58WCs(JRVdbM@7y)V${ zrBB_yo?U+geNXVGUe?!6)b6e>(^I;)x_EA25uhlM@#ZV2Qg;#8p*89!OoLOFA#HXp zAc>h)Hn=zr~AsIGtEjhk5L7q@R3&3Sy65)O;z3w9tgXBY(YpHp1NgmroJ zONg#@CyLf-?L)1Sm6ri=mzlu%8S(-JwG9&TTT8eMY#Got3nT0}V;kTG1JqZOh@XJtSUx#jJ1M?<2g2M%ylh{|O-uON#jorny*|%v~WXAF$lOy=YVtqw?-QoR2YnFDJ zG}lsF$tg#*kh4t`Qk?moV&oF9k%QT*ZrkG3&4!;fzu8viOMBFb*@!*`ArAlsBi`S{>ntZcCa^od99gTN%ZDFW|3@ zI;NQl!888=YFbC~7TyiSL)pKKdmer3;%Gi1jdN4C5m~g)J;oW#Ow6NiM%Xs+xgmP{ z*R5#URF_t5sN3nWLpn1@7=l)f-6JF`GO$%FM^$0?*O`yXFj<`!M-zsPYIkj2YacY$ z%=WU5Ak1=XOmR3oT=4a6XK#i}w4(HD)cUW)`l5J--Ta+Qta1$O+6d31cLuz=+fLTB z>0^@K@d-o5*T>*N>OHH(b^8fj&GdSW#*3*ed0DnHtiW&5AMUtPdp`-u|QruHUmC8fQyL>d$X ztGl*$p63|uPVCp2mw0J`r8r8YoVhiMUw-dnT<6A&WomPV8j6dal9fcgHcwx?`a1LD zZR@ROD zbsbXT(Zq2;q$S9ceqB{^LaOvnPeWdO_F5Ddw|4iI$f1Vq@_qdO0Lw6W>^UvozUKv! z;V^vO!it67tzG_mAC_jkPnl+XzgxvhqDw`hUxlvD8j3lI_mHs5(Q*5&w>Qi*(8}fWDcI^9}rJ-t~8*^Mi$ zc{+9M`Tpc#2j?ML@#|$!ugubuQs0vAe?#i@5QHDVF zh^kKDxWQBGYt8QMtd*E9;<@A6yu#zfda@ivqQ;y8P1WR4ZO^D(=BsMDzlou=mPn%0 z1lajQNd8iLyp6Z?6!5u4N-BJisN%J0^!w~*nDLGq5TK{*xt^Cw_xq1W`wT~;W9v>^ zB~S=rPq42cwY2fAz=m18MQCDZw=!8pFkE9zx- z6M_|j2*5n_uSH<73f#&tU-a@;UwXPea;AHPzq=Vt{{V4o_co7emNKe$HqnkrQpXT3qDK7nbf zTw6nuE7lg(`KEhyg+N-9rAuPf>DINpDD?T4t`S66F(XK@e4 z4F=QZwbhJI~rP!}kux5p{6Ew!1hGDj)WYgb+Upj_=~PgS5}x zOM0Y&cdCy))PdE6dB>(rd4G(4I74N5YSw-nfyl!w@{rzaE;-q-WM});!HL6Q>Dq4_ z2Gg{;Df51(Z4CbaGMaSbhnkDlJkzrLPiVdPiF+NoT(|a3wX=`}^WD3y4{@~sZ@||B ztbA&-7YPl&i!J1GLiu*OYsk*cz*Kg9xhJM;gw=jESl`QS6}N?Llo9gWYEptD2b0Q! zh3#H#d*VB>D@g{UpxQd{t78s6`O5{!Jo=Md)$tf*r75W`n`x)=yrcOO3`Sv7TC_Ok*5DlDfPsz$a=ONcYi$&k+V8}u8DwBxVnZ~U zAMG1WZ?&{Q+-EVZ7pILvzt2Gt3Bon`#-!arnbMT)@F%+`YHCG?Rz{I5b zl{-c~u}i3U!$#B#rib8YZJ%!Cx%pCbBf1Z}`qu81;2#M!xHh&L&Zgy+w@GI4AwGcZ z7*pSx>hAsrYS%F=aobwi!tA^#SCS$3vI*#O>0XUI4lZ!_Ax%Z=YEX**0Lhv>`k1^d zW$#X-YfIFd{{YfcJd(r3-XEAPwymd0c==oyRybu>&nnVM_qpyX)9$r+CA77dPw+IG zHv~^M{bECb!tGZ1j(UPIUX|c)gfQr^#!AY-4yiuN#BRwYw@(yuFa(MBz=o4Mv<^C}K&lADrUTBqT?I4KdB1Jx`0RB|w z73uv$y=i~jsV~s;KD%wHr|R4NPyf>Vn!3{5leNT)85^;{8UA$mwK*+PczI-&86!iu z{_lCoEA=(5@R(rQz-NGep8~oc4r%r+XLYDvMzW+5Y>F|}-yI0_86S;)yp`UJ{PoJw zyIoF?;ct#?ygN1Iw^O->cnOdMEW$|6QB)44vTJ|C-w^J6N8>G*DDr7nD?PkcZi8ml zKyv=1?K!UxykwDOX5$2m4!L8KjDI?}pp^Z!yFEGamMb|ZKKnqWPs)6#6}>}9tI2YR1O6y*z7X3>%~6T zyA>=Ycc-zJt+XQ3bxZhdZxR(U!mw<3&UYfQ#^oR%x_Re{EVRv1OB-13t>y9>c?G~*bfeM3ypf@}De*e>a1Mzgn# zq6A0#=T`G10OO7b>s)fos3j(wm6!Fo*Bli~q~fD<4&zrhQa;&QL?p0z07J} z71a1cPP4hZvwd0#FC$^S?N-=Fkf#A$xX907IW>yR9JExLzRkT29uY@gbo-^bS4;Sh zrr4P81@+6^NR1rU7RY3`m@)g$9G@!g9aMMZR(7f4O*VVX!KK_=B!CYl>PAJ3p15Wm zJu}E2)#-jF@MeJ8k^au`&aZ3&4=?O*FpV7Kg3YsnKe{?oJUQVB?(bucOHE4h;G!v6 zVkQXLmzgJ$Pbc4 zG+`JmtlgjEW_WIy;H?quZtm{vHHa44ZM%18&W}4z#m4XlsQ{38sP%sa_+}Zww%4Z$ z(s@Q1ET$4G9^PYNPf#)IUh}7Fx`dEUEc`zNmnw^IacbJ(E*2rWHD+Zyn+H6fsjQow z6Iii^S)bwRT&u_m+peVdY|=3Ub3{H;zuq~(tfS3k%K5wdjs8g*x|+UiIxl&CtmZU7 z+0ye+w`Yr9iXqVX$P8t(zy(+wpUhKZ{hvHb6~wTv(;98xa1&}0$M_3!-sc#uyHoLI zqhQclYF-b~?bdWwNTHrrSJ+1fZUkp1xf!a~9y!r0klRb9&m4f{M`L|0);E)Z^S%ik zz#k~CpKnESrxu#ubpHTT8A7|}cTGLEXG!4SgxZdasKteR!M zkS-3JYo}k!Ze$;7o>>x0mA6$~wp4A;qbNLN9Mt*+zQ3u@aJrX?^xJURlGy37ER#r} zWB~FP2yy&A{cATma*|L|@^@DJY;76MMY*W2D?9!N#`Dc8$j>}w8K3x&#yH^h93Njw z>O3`nr`c*TzNKv}kg5IbK|#v57-eh{z4+wU+PZt{R?xxrJttXMnNnt+e;~%*Vch8G zyhi7_O!Hkive5My=6yp$hT$fVmfsr5CU^sW2d8XTO)NW=pEQ;FxU(vlxUJxyq>qcP zt|qycQjbl&nq3@7+u)BY`>8-?*$ZX1oMVB(>sz`f!M#@cDDK|o+S=ac6D)sek-Wfz zpO`4>qwincS((O6`HL}1Su^3Gd#RpSJVR>l7S?E2DL z!5or9GbAe#TyK^cytF58a;J_lz#To7{Y)(2XCcKE}smNGdN&bHnt7{3UkP>S_;rfJLq`w zcbjibPZ!fHueBSf>}}>Y^1#n2kjH}`m`38Gra-_3y_WT?w9@KClUz!uii&wiE%;R| zdIEFTl1asKm%8K{ESiPVk2d!1P4U9KWMC?$dV$>FXB4^x>@j(B-Ao>P`?9dBRM0gmCTT|SlWiX_>AGe8h0Hg|jT9*= zv&>f^Pfe;$es9jVbjwr%X%83qH9!x7Fnt}kBkbVE;(b;`FniQ>~d+Nc(G@Dy! zjD1cxWSx!66=(aZPIl*8vG|-7>M=!9E?;fca%$cnZXS4@%0VJM=WAQr%iS$HThZdPUqfcCy?- zG)=lWBOow1!S%@YJXfrbjJnN^w7Q?#qL38C@VsMerbPjU6!gFt^fklD;rnQ1g=D#p zb8XL+7tM_Fa&iS!@dlr970i*ctoHfXm~6N$j31Y&q@3X%+VuYbfHxRUcD?Sp_W7CC zUMh2cEYQIjCRrwTnRmH&V!-w4Gm+_4ZCMpJzV;&bq z4*d1&^s9?(_VA?g!MR(Qm)&^Ezm?nJ)B84Iv{_<=#zj(gD4| zo05&_x#W{x#qjIlE}3aQV>a`;@3mR}ZI1Eei5~+!tGbuOcamIcI;V&2E#kAYvT3d%5pFVEO3z<2!+s!YdcKLOTxinT1hY%1S}5Zg@>ONto?8L)NE3nw zZn>`eM(~N7RD1jTvjwGuX6EjBmm3l`&d@j|n>ZP+o5dP8hWtk$Tf6JK3(HWX+RD-H zRv)|yvM}TU!sng5RyCHLaj5uLShR-{+)00A&d%k4w?^J1aysoJ4N5e>c_(!4^j?E? z7qg19UEi-$-SkU_yuM*IkcvG%#@bkH&T*iN{ zAk!A_O@_-@xO<;1-JF*(&m>q^i{~K>o3ppyBCUK?@NKTS9lw*Vx*uIVPtWJvB$?`@uD&(_6_A-xRMK+H`Lcwb8K9p#m#rEvr=1)+iDft4kW zbs>Xy46Hck-n_;y*{rp$=J7SU$kUyUu@*xPINS>iHhP@kRtpUE<&<5!wV~3nP;cH& zH}%x;%|1sTXO0{5v_~A0G>TALu*fV*_8fg_kEn^#(h03nHz9V-9#yB>N{I*@F=Bac zwcg!$S`7kuEQYJ2Y7Kjc!cH^tDZu^mw%FVrPZf=Epm>(|$hUnRl-d@CDMULWT%3@s zgOEthMPR2Jwam2hOx4=gv)8W1zk<9@{uq}07z12JFrds;QJjF-R2U_3$^0v+e~sFj zzArRMIb5E#1m+cJkNHNYfI*gO~ z*RmV^OH!KF=UGiA>C7^+S}Pow;{z>)Q=AT}bDEBID7(~4=4s2w(~UdZZs(?1_zOXw zO45wCZT3ZWxQuS{)>V;kH}52dJx(!OORRW%!|+RQVQP$2Nh_p40rMQOcI}dR&3WdF z;(rCTtj|8D0@@9!ZyMb145|R~kt6`92d3Y~we&&ZE2DXB{{RU*6E)k(Ez~J2NGBP> zL`cue5dIO2^)=HBWiNIxt4cRt%&u_D4^cTe!lOywW_fRpv~4Q)!tv_%dR#X1OC;As zWGVYJEw$KV?-ynrde=GO&l}wxF|_8=h2U3@3X0$$LI?n^K;&>ed9SE-?GHhM&dzCI zR)*6}xrjv^d!m}q?J~vy&Pw1i6-NwAh%cL(muI;(q}16+oS9j}P= zomnNn-+EcDzRc$@Cz3%9g}>Q2HR+niha^EG)uEI_mASrcuXXc2fw%azb9-}O^UwBAGHEy6K?#y_FmuO7^cehW2J_-1_m&su zP>$@(tjTFI7~_rwZ@L+H+;TJ4yspmXCU{W5#G>Iy$4fWX1n7>x=r!x zm#)^PCRmo%DDC1oAk+FQgI2Xk^*#Tg0+KXmpL zgPkbKHk_JIS!sV&W?iaDOWaA@MXkRSb=r@NylU?h7Exb*;ewWh9mI?m2ZUX??~3ho zUxofY)}=QWy0z>I>Pm;7YmZE-lB@LVS+oAo`t)!?Yintz$1lp8k|MYy=3J`+5RolW1e_ zRzXMpBP(kQP8P zaIk5x$T+Vr_qDF=&h2~N?%V3mMJiOf zsOxK5%Kk zUzB5_s^9BcYfWu1P=Y)7?c6&YD8mpA?wxqAYp^eQh0}fw zM-YTCX|Esb#ZR##B%e{%sM>r#)z(-w5g&#$7e`qW{#(l#$12;-JMt>2J z_;K*tM7CMxy0|43e94g|!-8>~9)S17ays1F*=gdR;@+6)wS%KEg?awyg#6#qyq{H` z(Po8U*5%eDWhzQTIaMI>x6EcNe?eM(YL*>)m|6}`?McE??X+9`43!F%?R-sCyG2be zzDWA+!{QHuH24j*z3tIR#sa&tfCnQRh~v_uPmB><#XITV7}Rc3APIln#<)EWU4bL; zuaGA31=zSPrTBJBIf67&G)p0To~*!t6#9;pp>5$&eQyokqvGv8*_;NFIpmS0jUPC| zDFC1LM@rpixVdQ#RF(BywAbG>Wh|c!6?wTf?Y-vy=$`T7KaKkJmzGC{t?d!pYPH?U zu_ve9OyGOh7k%;TTxi#A#iU2(5_wUFDUSKc03O8Gp516#4xWmO<4rn9b~2F#qfILo z>M`hjN#eZoQ@^mbo@lh|yNPYegY(3(vk})JdkWyiW|+9P-YM&)l;ZXO0Jj;{hRd+B zvQ!qGTqKwNOnZIT$K6fh+LO(=4j;{pe;g`)mCP^2Zx>Gl^EZhlMNWD}xwF}RPJasL zd>!C#5crBI=CIS@*n|Tlq#$GH2?r*-yHA52Fw|b{FYh6>#?}Tx7)S>k6eAe=QA#GZ5S--0^qc;46P6oU#3_T=G5 z8?fUQ`i$|lqjs>9x1NW>!w*T>JWM`Xi1Wo1Z0!3%A5wAD3c+s|J-^Eo&ul(ouNlLg z+#C_k2+n%~mybqy{H zeP!(?iq(LON#;bz-eJK~80QQ}IT#gPei~drP|bUCNk4Sy_bbUgi>?pSx(h#tS~Pc2 zGWf15YlxX;0!=-)sb8EhVsLtQ;MWVSjg|SGyDP>&*P++!@X33+_tH#vieiIIyNcfT zN1oa5)9peTS$70>IM^d3V4j1hskKcrN1k}DHQiR~64Bx%nr52gWC5gpyUiVFExQxN$a@)o;q z2Y7SCHuJ-H`h&$XwgW*Sc2y${gk&K4SF38?8HYhth7S^2+s$%G`!&V7CBuMlb|~`? zJ&#KBJvYD}A&fiC;hV#3?AzvRca>oak{MM_;@RjxsQRp-HEK#tZ_5ntPgaUcNZTK0)BauEa@dIE{c*)<*kAbTS4&9FyQN&1=Kai9 z&m3|o$0K4xfN}0|TOJGWpNYA}^WS802x9!@t!anV{6y z!+MR{O&oFA-$iQH)+>@mUN-rPobt!0uBQr#DLAgJx zxRoWmxRvrwK3^f5Aos}_uVe6EhHc5oZ#)1TbSLd>u1C-c?Cm}<-`besxzpWUhId>P2%w&_JSEjeJx{f5hMpEL znYVlHp%wWfEJQI9T&XWkcK-lUzm0TTE6MHRU3*NmxSd@f^MXYq5Hc7T9ET(6S~_2b zwToM568`|iH+Qz+tU)AL{Dl7iXgG^_C?^c58`6uqtQ7k;Yu)41VAr?a)5 zof=<((q4Ef=uI54S?G4w>pJbZwUT?wnO$2Mek0nX)jj$DQ!O0`7UDULTtybRJ_Ae9ak{HfR*4E)JC5#e6M8U^BGsR~~rrzt8 z@oD;nuAyakvKNqAvp~Wo7*}ED=0-onNhH@jSY5XmHGQ7x{&qBkm6tS=w*Apw)5IF5 ziSDoT$u)a>NkB%5du12Vqk?xb%&41Nj9}*#p?439bQ@T=c>K+B2-rz3jDX<&NASx0YseQ|PJc}1?A&7Az;76kF=e+uAl z{0-o%8)v(>fN763%y6<5KuFq1Xu)(02i+W3$k+ZiyqZ*+CDaVXGa-B3xe8A3r7(7S zcNCL+Sl1fv;&|C$V+sTbA(>KW`aa2tRR{Qh6;jRN%ggK`%9WL)x8Gu8l~ld`tgiKX z@A#ia*=jx;@QvgP{{RSrl=61RbrcicyCLIf5-18jr=Lpot6v*`!a;0d)8a^@39?(O z%PbLt^Tx3Tivzaeap)`Kp9=VcP%i>%`uw&UbICQqwpa3n!vbBrxf6wQ$GI5oT|xM} z;h1N&{?71{y{w^y+&A)>9zl_StT$&FC!Xh;ygp*mX;e{*e+pXL<^h_=h~9@*zTYfcZ3G5HA$+U!=&5Sb^!fcWQy zI3zHpfyc*tH4U;+8Qrnzw$ zg=%#qp;G!SuD)8GSbV;fSSL6*>(wvN`-cAjn(8HCCX^R+=FhEbF0U!Rg&Ne@;5vH$?(zfP5-4ydUW$hx*S z5=eu}l1Upeka=u>7DpI0#ZNH1O$ktt#@Xq5Z-c*t2BcibcSLAM;f4>6nW9Bek^}C>eMl!Y@}`gR zk6b!bHa8a5SDs!YR=l)H*`gx`Heghh_0J}$ zLN9JzP`3E3A}hR*IcIL)Q`5D1&be~Z$719ywWLa}Adluz+~vEL?#8+kUaP1`4xQpFTZ?{xO_<%CcsbZeJbH2IU9iM^ zZf6N8e|KiRQ~eAbIMU@)P8;2|bp0AUs?OMIw+(R50>X|90#4AXc>|992d#IShO=*O z=&@R{Er*6D`L>Rrx47&(cdW~Q3@woi+gunc7Cf zkX?Zw;B+cSOm?l$2;AISYAL9+xs4Uj37^bai!MH3-9YR3SD0IPu4{3-D4#}YX?%zB@~{Gp2*tLT1g|xce$N6tL+>d z@wA@jxUOF3TVr*1dT#uoE1>hnHx=oTp5nZAS+qpK4JHF!J6w@)sv? z#{;EfJkn1^OTdlgALoTM%_nrD*q4r#wPljWX(@eket(6u?Vu~gb%@_-maL|_AtVS3f zd8X-F=9%G}sBPw!XnxURVj}DtQ1Hk`@Fb6f*^iW*4tRS`kLEv;elvv5zs6W_ig|$0xN)&8j8UX*)+``TCuacvRk=lAsTlnCcsCSsy3a< z*f=AQO?<0&sXXis3}j<22`A;MF<#!sxW{)WT%L|bcOH5k{p&ZIR)o`9?{>E}d0Zz4 z7VWL&O=@Lnyv>jN@M zQU3td%t2Fx&jGRxd3T5WTdKR45F}0+fq}tcXU+)yKbe8ERt>*3XJ)$r8M6XvhOmUL^57 zwUTOlfChcvS_Jsfn&6P1{Ej#$yUSt1ndW&atgtvuS=4x{BUeGG@J)sFXOtE|Xv{)ko5g zX*Z-8Zz@US04&ucd z132YIe>&nkT^6&X-bV}`Gqt~2BPK^&#*6_3p#U~B-)XL+P55D`fpFLQuAdB#7WR=Y z8dN(@#Uup^segv0Ky*+bX`8~+w5^)O&TO}Nb_u&%N?!z z!HuoYOpev%{v`3e^T0ISD$h~WEX+-bMb*Qzm-%)v0fu8eL9A<2g($`?(v+6Ah34+v zwbA|tkgF=QZYrWrOUlt!``6-Tcw-d~>eWgRLOSB$Y(Msp29M{r56aAXC83Wu(YU#PmTUq1f!9101pp(Y~oY%ehN5uXUcr@)YOM6jx zIz?q0UA%Za7n5l#v!Nu{x5=ex8eOwoO9idGQ7LmHsv@8qlaedPt^WXM9}5X@4VIO3 zD;tmOyIhYtNYqPrAl>&DLH!;E7m^sh3u@XVG;6q8J2M=lv+9%Q3u z2P$|O&H+6u#muv+)2TR7sTk2)a;{tYp1uPqr5bRZXvx)o%3BawZUkxqfk@*ehDaKmb-g}&q zdVGt5-r25L`$@{{SvS8^sj6^|wn==BQ^PmOvRLNSKFAS4QWUXc(*;-NW9TvfsBi5q zuP{t30s_+CqS-aE@pLedpx0mhj#$tK>LRNw-A^NP{C*8B;w zC{s_?=4kWgO};B*GY&Ay%-cXclnUL`mnS6Tp>O8qzuc~6?IF+27|K`vRII-H9#sAr zbu2#L%bYk+6cy}GKcTC)8h)2+a#|T$+xL4{_ux4MV3K|P2NmhI9y0JnyT>H{2)c6_ z0af(|b-?E&I03mm4SEKXt!ekr%O-`Q>()>fV<3V%8-*mCk{W!K_5k2klyH>lX&Uiw zv|%>?02GX?Vy6vV86~ylD5dx|c}|h7>p((un^lDHKGS7lWR!*DFD@k9M|@!Bwr23x zj;|$+md5)1rW=-PxXXdga;tFIL--2yh17gcCYp_-c!yDn;a^}&>y17*a1TE$V4izW z`oG1yXpp|Kps?U%$r)z%><&BEqZ}n0e(~aGWSVg0Nq^u>;Fd0>{m9|s?`ux&zquX@ z;$17oNj0--M)VmstV@+v8#p^vaH=!Y*R@Zi{37vwt8*M}r_Tu58Kt;=iGpxWLosiq zZg`91R;MQWU0%aT)ylFkEtw!j83$-U0Vm(3a#8$f)$R7jWo==mF75@LxQ}ShJhL9X z_^vPbPgQR(Z8-MPKbtz!$2xY5X+`(duaWP155Nn!L~StB1keRkeUeO*kaAvB`F>;2 z^Mgl-J^)X)WQ`Z-lNDVva4CVh1PW zLO{L{V5J#4mRh(b;=Xr13ecxMMwB}# zyI;YvA)Y(2}UDz0t91gvOc77Q6ZR4AiR!wdQQcdC2ZoKKE z-_Cwk9Z&mN9jl6Ogu1+XFw`u*!*v|ka)`y8M%dbfGVpWXAl3?aZre_W?K+HdT1^}A z4ZMKOAYoO66^YKR zw0rT zeG*=zkX-qnz25$KDBPhBoaeFUH9v>E3#nf`QpYWl26KeCkPXT@xfnT7oD<2K}4CI014n zee1D@!1|`2I<3~L4W+=4FP9YCNy}>+fEJ{{RR@*M%*w^Qc+dq`5_sQdZzb z{{X=mUCe>8#!o$K$+a6>{qvi9sICO88Kbw8?TrXixfr^RdG+Mg&jT6}f}JMnE8TN` zh*8E$w4~utC~0TQ`jK2oeI&VW6G1$0BSyup-ZBp2f!jQ=@1A(2z3@Gsk#Q>cmcgb? z$L#Srn34zpi93VWJ*z^);n#_^NiL?a(4GV;gJsD%aNSrL2R!n6Vyx*u0lZUjsX=dZ zX4ddA%iJkh5imV62|cQ5<@ky6+XE?cJ0{eUUU%*4RI#)pfA+}3msXRDeeG}ZF8D%k z0LN={4zs36Zejh~JafCpHc#G+58@ux+1|_Wwk=yprZ=E~RE|$1-gBk5lsFuX_3{ zK2?p4B%K^GdwbDOPVKGF2EJv4l}6QS?QibMt$QT)Jl{<5PlL1xg~pMpMngjy7@k*+ zWGnnc1UPT@cmlhB3+vjCh_2YA7f%be=*jl0TSvy)r!k`qcK?y|seP6{!m& z#>gEaQg%uAfo2B->CJtE#5WYB3TbO=UibU;`JX&8PG;Bq;Z_*KT6|uD#|>uQC54l+h<~>O-q@{yREFOj;~4h+2bucazWw? zwnxAzEBVTC$4LPr@HL#j5Os9A`)b?6=Q%7SX#CD|oTxbi2d8Srhety!N6S(=;AD@= zx1xY1;r4JqLC8D;eY;bq?b@@iD<`G81mi(HD8}!7H$7*--Y(L$w=!zF_1(UpRku4` z{{Uyk`026YK%n~?=x_8p;MS~>YVuo6ak;M@msX1)6S;hhza(+Mubt%4B#>MIZpuRE z0B1PljJK^fOOsa9+C{W`s5b&hh{+k`VCP{2^R9^ECX!Qvm-mvipRLYmVV5(MCvWb( zQuML(z3-0X(WDW!uV<>Xu?Ub{DM@YeGB-schsUua73jVl*6sBnC9S@(ujw;K0o@h6 z*7q?^RF9T9m@yl3(XpEOWa^$Ixr}e~E|uW&rZ;h|!E{r>4A~)oHO<=Sx3+S^Y^<)J zkTU}+y9p#lJTBDeap|0z=~&8;QbY<0Ccm z2mB;{Ew;Ez3)NZUhEv&un|H6JlxcOd91$2Hr*Z>M;c!YvxdOkFb78Ehk(=3#J>fEHmY zvMhiSP732Z)~)Bni@EOZEVaAuwOWBFRYB$zC~>{Q`fye3cihC+D!Qhl2w3go5Fl;M6lA1w@(=G+95+m0_O6!h{tIQ^;n{-c zX&c+}u43cGQ98GiZdCsOdO^33!n~T3yIj>9cGCKuwK{fQ?KHcak=;$LYL+r;t}QJU zw#aPlkql{qNmNjG9D!6XB#zo?KFxnD(Qf%(Vdc9ILZda0Z{t5Hn7)^3Kgv~7V9tP_ z;wzE3j@ju|t+gwEu)E0|%|Fbs;|m{bGdET~!m?H3@9#GEySrwd#!KwkY?9dZ>u()f z>Ao7Xx6|%K8idyqJ@oOY5_uy&RAN%69dbr;J!_c%0EG8YLY5j$@a@ z$&;4#>t1DVsF`MjO3|PPB)XPfIRSvl!RTw$^^H41yh(K(5t!RXfZbU$ZI;*`43X~p z@n^SH@5Nj(4yCO$tgN-O`5DfPX}w_IGi|$FT;N+=He{G!Rbv^9Hs;7)m>KE#R(#sk z-Q?0p;v&p)#fAlJeS*&C&WbYZd`Wgc9V>Q^sai4oLaN@ zf4k7@grM)Iz2qCj-*8Z1k(g@{D-FKuA>n?;n}0T|+{-w~@Bxg0bWf4;bzE)zqa?MQGaE z)=N*8=1_FGp2_#Sf0>%rGklEv0;RG~-2n6W)k6skMpW^f_BGHq%@VGZE1 zyoTZ_WKHeCIRxXcJuB>Q3H(QkQnZgx)#Q$5nNlevk|hlB0fkqQxnsMfCyf3HK`xc3 z-Rasy>3SrLn_}c_+kowYO1crqE6sJ*%l@$*YE8D4_oE^cr?0q<`MY6@5BWjRy zA#&kHM`PZ+Skr@(NnXoa-*efV2UaE z$qj?grhN@lxbZZI-y?#}07g6z4}5XSsx7Jr?WT?V*J&_TP8VqhJbPDPwxpGo$mRA` z8@uXh>Il&#w$x(4m3_UBUJX&2{#ioB%z`BgQ}lZ>=}g68GYQPlv}ukLiiX)My17C=@a`BY`#GLy&v zZ~)@9?=^T@))$t>C|y`1wX)$FGB_nWHhSZ&V~N8Rg(Ak(CFB?z%XIujXX`em8-58P z94W?job~*3Lv9grPi1eoT&hw^*1P=8%S*j2EoSqa10xwBxEsk*ym>C8j5y~fk=C+) z+ZdaCA)N@q^#mWUrD=E;=ECX4hNGxKYi%UEi^~@Le1v`f0O1Fr@99_W{3WVcMW;xS ztk$;@zmYwrWrgxj%B*<=5sV&cD9&{fYS!OP*RHQXpClWMo4=mV(B9H~B78%m-ZhD7 zwJTRvXg2_7f>FaJa5u(A2pvbgdG3v`YF-<;oC|Or(W90b<2!JDQ{^FsI6NBbtaXdK zE5UaI=5RnNv}X6@vK(T zNiZXPg#GOG{0CuPO&AcVPZqDx5LTBOrn!BVe&a z8EvDC;8n{lAY6>fOkcb!w4=y=UUEY4RGv8c*P!V7wuxl3e`wgx5}4S>6};js%3I~k zoG<_no7b?dBU&x%E>+$C0KhYnabD~kpJaK`==UcZqY&;~Zj^Ny`MB$m@6Bt?;ah0! z((3B`Aa=qA#AU+cB{Q7k*QIn5nPQo5?X=5?t)F8oa>VyBO3lD_X#g%5o&e&#LqwnA z6nZX|6`qU@p>_K!No@?0F5*}f+RDOe6n_dl?vSTJ^ky0gW(m$ zls41c=~|>QyF`*p9lfhO4#xq2RwO9?B6?S`$?!K#v|(`mES@;m=RawJ+{nChlOmti zyYTpIOXhD26=k(sSzoWbk>}U1L2}y?^?TF4w)AY`wHQ7eSXxj0kD!bDhk;rlJ-yWM z@-nTQFytOcu55U}#nQ)bZ*M-FV%WlOwb`}2YZOE8%4Esg*jHPw>wXrqmMcTzd+YHk z?2zd8@F0OCJUhH=`VMQPi^W=W77rz##hbN`0?1&NJ98*hIKW4Yw;rdhCoXwQ_tdGR zwxrZQCujGtwWA;1RH)nDs&ew}baAtIUiZb$;~TezTT!|pY2`EJ zNe(1~%i2%5;=F0TDl}V4=^7-{t1CoqBe=hrk8_zA;Nz(6S=Pj1V|en$PFuo~RTN=adIe#fT>5)fGBw@Yw-ZN&EJUX7`E zZ^nAAs=AfOh^=(U3onrb_c1m$pO7`}!Y_EOswrI+w&a-r$TXOnj7U3ivxStFG z^c0Knn_1OP-7ihlE|e0#J;9BM10(|<$~ffYeTMmZVeS0pR*PStZJlj@Y8{*-h| zicwCUUv|5+zb0@RuCuRSX|~sQ+FD*(vy%k(5evif6NMXG;CAIf_p5#s@Z9>zF-75Z zxP?{PMHeq)94>m736iJLc{uG}>vi$BOSFhw>6#tI^{X6BG;ypA4hR4+WnK?%YoFJ? zKf?Nb(`lM?uv{sPkX*!sNLY|d0D3RiHMFp~bvETZZ0Bv#hsEgLhHDdynzS%+h2D>v z+`g%5a@uFZj}SDH%LajUqa<8`6w7xjlo{NwG5#$5+U9I6Xa3U=URdi_0tZF%<&N7t z9l$t7Q{419u9r*r`>eah+LI@eP$@R&Z_Gc8h0Bh641?aCY4MZ7*B)HDr-kRdxeYF6 z+Z2GSHb5KL5If_wO|sc?a#yJhZu!#uk|}+Cb8}IQw6f*t^K9?6yAKuKPHimo-5qRQ zN0kNj%!{~V<}DuY;pvRmCwK76UGn9M>3lP%+rY+FI($kdnk5`yl1@3n&q|+H{h@p{ zGAw7p5>Bx$6VLLHDz^`gPCdPAgueLSr)rWccbYRp8xJiS%3xhojBP5(^W^m%D||(K zwK;Ovl-#?iCFsnkQODa_3Mp^!x9hpj#T}oUELv8dsajsRNdDC&_#-THwbf31wgazP z_N^aR@cxHwJ6U+^O|g;GVhAE-giDMz;k@n{9F@gpU3_TpuAddG7k(MNd7+E~l0dPb zIOlMbkC=M&tQ((?z7O&n%kXwtV{savCtxqs5~P&}z6B}|2|>5@%6!&)(vr9S1IiVn zima0Qtod*J@pu0Kz^-t9Ao%a%OP0U3H`WakmQv6opnvw&i{u|lwcwA2+UBAqmiNNX zbC9MvE^i*qw&S4k_h+7RMRyDF!^4_;q;U9BSgpR!h>5Z=!N)iRu^T|?So*i^7k7I) zLt~K@uM(ovg8Foq@F%u{Hw#{@aKzl`;~cYZscNinI0ml zIpm%=9=uj~`C%%1xNI!vEAJ%Tt>vbsm^fl%t$Oi?K5&EG>lNbK$8xPnbQA(vsd zlRjurP61z+E*lxorF1?XwD5S6>MdO-$}aSh2Ux=*kGd7GcazQ!(!EPU@WkE^w0n(5 zNVC12WAkETD3#Gi{IO(UGOg4y{KK%WYsa1_@V>okEX$_e+q_HVqa-m$vG7QWL%Z(e z@^O<~?+BSgCSe-0_!RBX`5Pf5MGT?cp+AK{Jr5mohwS z#~iWB^XZ!P`;9Ze`UFXEm%3bA8BxN;42R2OpP5ccZ$n=tT4>%LYgyfH=eTr@coHNp zBN8}@JTYK9?#HODy>H>o{8q5tTX=s}iAf70$q$);S9h8vUN)ZK^sd}KI=pGO3?&yN zugwTMrRU3`$zKIdRU)N|tfJkmHkyBVbHu+8EiEFJ}bc+J4XnS-YDJA%tNk9H#}mdFsjma!HZP7 zbO-_ROF9tP##e7X-Rc_;6KLj3r;0mUSp1cYTV9#3QPoaW7aMQ^ZXTF8u18i?o&BV$%loY_^0(Y>slt+L*~Xf-@>l-=Kg{TK zKZf2by-iB?OUd@l33iZ3BlAo^e61N|JI_T7G3!}({t(nO*lp&v@buC-VzQW|Y2HMB zvA2?}6P|ON_7%kGT1}Rxa)9b1?N<__r`yDh9POTQD&qk3W;OD~4Z%4e6_TlBR zjL7UFf@Uiy&H!lGebL)I*Q0>JEL5WyP-%Us^Ql{{_BnBwudBt%byMvQR~z)UjOBEX z3qG|NfW)tQ2U^(MZu88#LPx{IB!wJS!;{@qC*F;h0gOGrLM`YX!+ z0QeQk78)E-T0?I1F?gQvHbYLnl{T%wql%ZGR$bjv0O9r0c#t$xv-BbVj0v9Y&iXHu)W=2hF@u*bb+ ziO+B}tgp`Fw<^El^e+#T<7(Zg@~Lmk`F{iKrc8o+4`2Shaypldyg8?{E!Mkd6E9V1 zS9jzq;w#@DUutk&E}{LSeD59x`@ge9gm)3fFxdC5B`j^rKxDYL5e42wtB*4c)k`qy zJ^ELVUy7vd?5RP2iMy{|zf;qr!+ZNmlK%j=QrGc5w$=XtXzd=}NyU|$T*n-Hgpxmz z<~O1#1e)M=ui8gblF}Em7O+Vsb03n@81Q)c+^B5(4lB*if#TF)gZm>z@eJ)K$eGa$ zO^-sO82Xy)Ej%IOm~4K*AAlo?zCia^3dd3t#{d^ zj>Uq@>2mwA=1)~Q#XEVXMWoB)zZ^$#BpRL7!bG5$g~Grb=am5fY9H+@k^cZK+Nchqj`iE^X7%QOc`6ZKWg3>+rR-{B zj&@K^a53MnHPFH0DbhbKX_Ms`A0|oqn&j>N{{Y}=*FSjIO)8U&FUJTNQoa1=;MtSDE&3b+{Y9GA6TB>-uvinvumKvSD z6VfmIeK2xuZR1$L17yp*gZLa`up{xE{A^rYD-z-MG+?Op9k}+cZcq7Z_*Q>&-=ow=Ok-Nc9%GVnl= z0*=Ts4tJf!j^aA=$7-nFFx2dbXdXzUc!YAWn8?#-uHxX}5!4PVnzR1^kE@@e)Ae7z zpHcj(?A4yxJ$qFns@uQ-`2hF;ZOX5 z{{ZddQ~v}yK#RN*HTW|h%2o1CJg?whkK=~6A#*x75k*}hfu9qQkMzUuz~zLn11f5+V4_0~`3YnxcorzG9p zr%Y0nNyV)eg$T84sN^oU5(0D4i0e;%R(51@Arb+N-N^Sn>n5DF<*L(Ka~;l{dm{7^ zNp~>?zGo!vKDE)ej_A(p62_{eISNl5Po`@|_TuD3W0DmBAxwkr zIsGbYf4%4uEmfg%b?e zv}L3iazFzkE!PB&)nYI87QgNqr3d`E{{Yu^{{YZMQ->mpP5y*)^Qm1frReo&l^Dmp zq*UI^fB;~51e3`6Q*{FJ>GG%>aD3Jo?oaZre$($?f7d4db<$1$03LUr^~$A5&YbT0 zHTjLjMsc@ui-&5+H)kHzwGW83f3w4CnuWlM6S*T25Qs#sl zYtN>&ioLGwq1iOGZC=N%*+Hi252blmlEoy?6jx=`zR4whh1b`Uk~(@SP1Yq?#DHgy584?R2A&;Ans0FSGG`u?~70Mdb9V}8?L@&#Y|{{V~m ziu#(CrdXBU( zvyxogsW~NP^y+rybk!;1VHWvRos)VmLZzOEaXiT%%DE$PCp$;46}Fxnf);-^ZNon) z0~rAI$GvK4Kk@Y6?$w<`?yu6kl};<6>p3>}CDY)I-5`bpF4<+=a2GxJ>G*SA)uDV1 z@kXQ}c^b;f77W5deCBL)`BX1ot$6Q;f8-?x{c=D039r(x4*vkiFHZjeu4nlQ`hFhE zC}QPV)lzC4wn^J_=QF&*wiQ$Mc3juhtL%85kNZ66(83O-soq|=T(Sua5a+%EeAxPv zUEhbk9{6KGCVK&d3VZc!C2jsia^7oB#j%5*Fdp6e*PzSyX8!QIJyT7?;pfUwQV)Gah zH~=8&^{)c)kL@sRN~V)<3Cad(ZWYeLPfsmC2XN$I@mgQB&-{uOfA#kt@-^{Jx7J_x zBL4u;MSPBXo?__YCqkUmAg%D|^;g{bOq(df)}cIJ^0I27Y%Qw z>9eh^v)oKrG%X^lVjWcxm!X}#Pw0)r&S9A};@!u||@ zsqrWMfoJ~!(Cd--gZ{NY>(xK>Azo+prZO~PFRavU_mex8U4@lukoFKsHL^#vc(>zc zh%Pm$3_fgDkQFOwEP)P6=X8$;B=f)r0=!SeTGTqt=bN%*Q;*$AaV6i){7t@IdGxJM z5&r#f)RfYsB2nw@MlDMBxuwB+?^D`>Bw z&5DDJF*A(i9!T?YtrKqh^*T*=z?y!KC9L?S7n@Q60tqo ze)3P_#c_JCh`d96Yj1Ube|tPq?^w*Y2Wbd!z$&o)MS1G?{{Viy4^#gDk!L{v0DkZP z07I`Tbt+fqbt+1FU*31>ms8SIDN%IPDaJQ;(OaWtZ-!#9y4CG%t}M{SF7+lg0f7og zBRz0MdgR{^uPhCu<3^TKFd`INnAmxWH)Q#nb{|5d*N*s0{zLj_`|tk%pc?z9RQ~{1 z;qUtF{{Z?fy?mQ5r-@dZYu{?>*V%VW^D}H^N)wMQt;u^k`Sv^+t!*#WCf9A|fz8Zz zXv*q#%L49XaTpHan5W3gXXe5#Zuc_qyx@As=6SV|t-llPN~X}d+~_}nz~@Ne4K zUHFRZTQA*st#?Tv1Fz4Jr#{uUBtH!tfe(tcc(??#)^W-8184+SflK!y`XA>|R~&J! z8Y)!ZT~*HNm`-Q>YKu;df061wA-&MN;F@NusZR+6N%n;ihHUUaL(u#4SeC*mS|vmQ znZkle#!npan&oYJ{y*bgCX@dF9~Qs$-aqClo90~BS8t(e9IDB^7gI(ng^J=txq?O! zzm}%nO`NM?kImO3p|5ke_)nqg-WpA2$5OnuQlK<<1Wp4E2;c+x8t{w1`1_y!zNP;F z(2ad<;ZOM`?f(E>5B`T<)=!0}T6G~froEefX|FTL%`48FX-X1te$p#_Ec}m{Uf)g8 zf3ol5zk^ZpVlE)KwQ~@0!ATX5&5u#VdM<(S2f{+%P+9cv?7NGbXF)Bz3h;(*pDO&= z9fuy~yi-^I0FYLT{{U@&^eV!=`;q-C%cYB*H#Zd&l6qR}Rpxp%Fp;Q|l%(DFy`GQA z`b)lsoyk^*{mq26QB|{JIcfF zxBFF%sDHu37bc$`$~w%UrmuazV`J{A=1XD4LRyScf2t4jKHva?&c zGc#mGiAKS+27C;u9R+4-(oZea0whAqEnT@)3jm*+29H zT*{=SDBZq@+R8AMmv(zB-x8TEwFs_s7-7DUs=W5(M};6BNGx(jJJ*y?uHPiC{{U&9 zb7$r=$WJ}9n$z(o{Dd$60N#)P07b2G*Pp}n{*~X2sW(zll$^O6ioLc>!wE(T38>qd zCjMyl8xJ4+LW0KDdwpU@ftzYGtS^R6HlHvP^7idkulzyc9}sH#V%tGyHP~ilFTj1WRvRcn&X{Ks6mk{k~FI1^qk-UXoNjSP0$^6BBjQlbG0Fi%7{{XH-`B%Aq}`f& zt&83q_D~ zWB&kLrT#{>$nfyRRh=q}MNP>x+IPA_&T$gMMl*%Al1(*rwabG)fg2nlEOW>NW96?{_%ZjjZ~F+R z{(vjSrT+j~<4^kiPyHyax0lkVLNeA@RX2Kji$fKQsZzAn)OmR=W&G`5b6{#Z_lMp= zXRk?ak;)L-TRe!Yn8*}BS0Iw~$=zfO0O7*6tQVF#cCmSa0`W}`ZlqDEV#W`s2WpnAz2wVI{*7RFT?K*uu zArA403@}E(Ck312W1NmKD}&WMQR9s+ORYV%mm7GIqGVj}=Z6ui*VKQr{{Z}x`)~U1 zbN>LL8u_2cpYj~lKC%A*D)+MrQl*2!RgNOJHApUN&9$mLY#m5c#p3BY6uDt1Ye8Q| GfB)Hk!`qzz diff --git a/docs/source/img/launch-card-optimized.png b/docs/source/img/launch-card-optimized.png deleted file mode 100644 index b5d052c00bfe5424d9306b621ea601c5ccaea610..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11431 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 aF>_7566sQaVaLvYZ=ocwCRZ*43;17&mFo@w diff --git a/docs/source/img/launch-card.png b/docs/source/img/launch-card.png deleted file mode 100644 index 72804730d250c690f1e7821eeef43d43b0e68336..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54201 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 diff --git a/docs/source/img/tailwind.svg b/docs/source/img/tailwind.svg deleted file mode 100644 index 2811fcee952a..000000000000 --- a/docs/source/img/tailwind.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/docs/source/img/twitter-card.png b/docs/source/img/twitter-card.png deleted file mode 100644 index d4557a7f51c7c89e2cb5db62e0ac3c2e244d8bcb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41493 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 diff --git a/docs/source/img/twitter-large-card.png b/docs/source/img/twitter-large-card.png deleted file mode 100644 index 46ce053cf1d25ae03b59eb6299772e4e25fc7a59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36937 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 HN@xNAa(@nE diff --git a/docs/source/index.blade.php b/docs/source/index.blade.php deleted file mode 100644 index 4e6524521852..000000000000 --- a/docs/source/index.blade.php +++ /dev/null @@ -1,95 +0,0 @@ -@extends('_layouts.master') - -@section('meta') - - - - - - - - - - - -@endsection - -@section('body') - -

-
-
- -

A Utility-First CSS Framework for Rapid UI Development

- -
-
-
- -
-
- A project by -
-
-
-
-
- - -
-
-
- -
-
- -
-
- -
-
-
- - -
- -@endsection diff --git a/docs/source/manifest.json b/docs/source/manifest.json deleted file mode 100644 index 4bfd88827b1c..000000000000 --- a/docs/source/manifest.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "Tailwind CSS", - "icons": [ - { - "src": "/android-chrome-192x192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "/android-chrome-512x512.png", - "sizes": "512x512", - "type": "image/png" - } - ], - "theme_color": "#ffffff", - "background_color": "#ffffff", - "display": "standalone" -} \ No newline at end of file diff --git a/docs/source/mstile-150x150.png b/docs/source/mstile-150x150.png deleted file mode 100644 index eb4dddaae74a5fafa4ca32ebafbb45ce0cca174f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2515 zcmbVNdoc$^qEr=Sc$q zu#xO&dlWq7SHJIT zl&SoM(}c4&3RE}r|4WoM+hA{#r@&B3{1l`kFp4M??%^GAWWL$^WQn>Mi_(AQ)o!tN ziE5d>G_n2LiVLlN`e*i!ppQ5vdtJ-S@w(5@uF{dkFO@2Q$betOkvw9kPtx zTnHHMa2v&bTT*I2OpihizvEfjCLkIN&+pf$i1`|FXu0W>_t=QSvG*0M=>$0wBX>r}r*<`GYSEnfULGg3WntB-ddj`0CNCshoG#@+(fDcHF7cLsaAj|F z`>4w@#q%D5m6;q2B>GPOQaNL&Lm2kL39L<)cy?!1_h)UO{ut>S$m|#2TgR^JVkSyV#DqcS9q?ti$LKzdun4vOjkQde&flHvJb_Y$FGv7ZQPNx@~-ec&4T4l zs5KU*RMq9vZT0P^;|247JbSmG5wPg8r;9X3M0MU`UDiAbtkoy<&Rxp@KSf(Y;|$_| ziWwtUzF1mK2@u?Xn3WtI0XYsiMHGzk2C|P3GIG{eAEA9xSluHbIeBJ`lO(lH!}vtl z*h@tb68@Nrce~nR>VY;xm6qk-Cf*w;`Y3~{(1A)c$Ri@*)#KXjE*4O>?MT3J!G=Wkx+u6PPK+Y({ZbFI7>>%^7V%7)0OsE-r4Eui_$ z2dcTlVZp7(Cug_UPj=xzt7c{aeROx!Nf%K@X3;n5=w&ba*Jv8nt8*u))U2)P7@6OZ z`OHT&n)zH#OyhJg_wa+0e?3_R??o5?(Ys+VBHwyzF~&|GbM^TJVxiaM1008&N|)~2 zXEo?UgQur?i$}kbaTe@F7EuaDd(1lHFmF?g{ET0n3eO#)y(ImlGGNr=ezYW z$soZ?(3xK*Ibl!4iNX8L;U%j2r*Em~WAe3##i$ZImNYfFZ|dH4Y1vcer0;0AS=#-W z2~66ZkV-2))okQfW4f2cHbn@&=zdUY!M^JLippmv);eY3n#3DZGA3_QLsl!=^NmsL zj&4N!*@>Dvf3rX6`Ki-EkpWek5UvbuUx1M~%1JxM*{@iX!6pmXOj_yp15qL3gDwia z2lAUY)u%8W&7<9wjGk8W3Ua{_-2WmYVx2MJEguU&|E%o3WL!-Wb? zT7&JO-EGuMz8gsIl9wZn&x&Rh1&UQA9O~z%VcpZ;KCKPdUs9*Rs7EJ}9v zT&8!tdShla^f))`V+FKUw?e2hxhH%nQUJ1-+AQ>N!Z_;t{soXxH*UwAxWDQ8wCm*; zauRUgaoOV3XTL|&uk>F!x;3L@9Vpml{J${Pu7DVOUfO&e)6fD3t z#U%GjpEYCUq*nQ66~p5rrmx#cO&1VR>{N^0XH**T=4X-`AzBbH&>PMDiff(zAlUL;Xj~#oW=}?c|%H ztt?#)(mDY-B-G_%%^)L#GP8M?&Q{ng+DiFTPw7FLXp9+s!@as|B1Wf8=6I!2l-=4q zDkV*mlHeo8?o&)Ik7oJI{ovI$6(F)64mr3*+1?hX{ImJTA};>J_@z~wJUfVWC9-C2 zzoz*i=JEo%?K8poks_{Za z*T1~j3(GH*$Dh0ovkPN-Zu&oe=KoD5qSYO_D$79Mx0dGX671Xw{$~jRaKFd^X#h-& zjLi*xVym)%=-WC^btE12rkb%m>{Nz=ks;D$I8C7lD xSkw3ZGSD)NHupb%OA - - - -Created by potrace 1.11, written by Peter Selinger 2001-2013 - - - - - - diff --git a/docs/source/svg/icon-device-lg.svg b/docs/source/svg/icon-device-lg.svg deleted file mode 100644 index af9007657e2d..000000000000 --- a/docs/source/svg/icon-device-lg.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/source/svg/icon-device-md.svg b/docs/source/svg/icon-device-md.svg deleted file mode 100644 index 10ab4c6e0438..000000000000 --- a/docs/source/svg/icon-device-md.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/source/svg/icon-device-sm.svg b/docs/source/svg/icon-device-sm.svg deleted file mode 100644 index c0c938cbfa96..000000000000 --- a/docs/source/svg/icon-device-sm.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/source/svg/icon-device-xl.svg b/docs/source/svg/icon-device-xl.svg deleted file mode 100644 index 621836fc0a86..000000000000 --- a/docs/source/svg/icon-device-xl.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/source/svg/icon-device-xs.svg b/docs/source/svg/icon-device-xs.svg deleted file mode 100644 index 7db82ef726dd..000000000000 --- a/docs/source/svg/icon-device-xs.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/svgo.yml b/docs/svgo.yml deleted file mode 100644 index c710452925ba..000000000000 --- a/docs/svgo.yml +++ /dev/null @@ -1,6 +0,0 @@ -multipass: true -plugins: - - removeTitle: true - - removeDimensions: true - - removeAttrs: - - attrs: 'fill' diff --git a/docs/tailwind.js b/docs/tailwind.js deleted file mode 100644 index 259664520a89..000000000000 --- a/docs/tailwind.js +++ /dev/null @@ -1,86 +0,0 @@ -var config = require('../defaultConfig')() - -config.colors = Object.assign(config.colors, { - 'tailwind-teal-light': '#5ebcca', - 'tailwind-teal': '#44a8b3', - 'tailwind-teal-dark': '#2f8696', -}) - -config.fonts = Object.assign(config.fonts, { - 'aktiv': 'aktiv-grotesk, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue', -}) - -config.textSizes = { - 'xs': '.75rem', // 12px - 'sm': '.875rem', // 14px - 'base': '1rem', // 16px - 'lg': '1.125rem', // 18px - 'xl': '1.25rem', // 20px - '2xl': '1.5rem', // 24px - '3xl': '1.875rem', // 30px - '4xl': '2.25rem', // 36px - '5xl': '3rem', // 48px -} - -config.fontWeights = { - 'light': 300, - 'normal': 400, - 'semibold': 500, - 'bold': 700, -} - -config.tracking = { - 'tight': '-0.02em', - 'normal': '0', - 'wide': '0.05em', -} - -config.textColors = config.colors - -config.backgroundColors = config.colors - -config.borderWidths = Object.assign(config.borderWidths, { - '6': '6px', -}) - -config.borderColors = Object.assign(config.colors, { - default: config.colors['grey-light'], -}) - -config.width = Object.assign(config.width, { - '5': '1.25rem', - '128': '32rem', -}) - -config.height = Object.assign(config.height, { - '7': '1.75rem', - '128': '32rem', -}) - -config.maxHeight = Object.assign(config.maxHeight, { - 'sm': '30rem', -}) - -config.padding = Object.assign(config.padding, { - '10': '2.5rem', - '12': '3rem', - '16': '4rem', - '20': '5rem', - '80': '20rem', -}) - -config.margin = Object.assign(config.margin, { - '10': '2.5rem', - '12': '3rem', - '16': '4rem', - '20': '5rem', - '80': '20rem', -}) - -config.negativeMargin = config.margin - -config.shadows = Object.assign({ - 'md-light': '0 0 12px 8px rgb(255,255,255)' -}, config.shadows) - -module.exports = config diff --git a/docs/webpack.mix.js b/docs/webpack.mix.js deleted file mode 100644 index cabb9a984fb9..000000000000 --- a/docs/webpack.mix.js +++ /dev/null @@ -1,41 +0,0 @@ -const argv = require('yargs').argv -const command = require('node-cmd') -const mix = require('laravel-mix') -const OnBuild = require('on-build-webpack') -const Watch = require('webpack-watch') -const tailwind = require('./../lib/index.js') -const config = require('./../defaultConfig.js') -const fs = require('fs') - -fs.writeFileSync('./tailwind.json', JSON.stringify(config())) - -const env = argv.e || argv.env || 'local' -const plugins = [ - new OnBuild(() => { - command.get('./vendor/bin/jigsaw build ' + env, (error, stdout, stderr) => { - if (error) { - console.log(stderr) - process.exit(1) - } - console.log(stdout) - }) - }), - new Watch({ - paths: ['source/**/*.md', 'source/**/*.php'], - options: { ignoreInitial: true } - }), -] - -mix.webpackConfig({ plugins }) -mix.setPublicPath('source') - -mix - .js('source/_assets/js/nav.js', 'source/js') - .js('source/_assets/js/app.js', 'source/js') - .less('source/_assets/less/main.less', 'source/css') - .options({ - postCss: [ - tailwind('tailwind.js'), - ] - }) - .version() diff --git a/docs/yarn.lock b/docs/yarn.lock deleted file mode 100644 index 501fb87baab4..000000000000 --- a/docs/yarn.lock +++ /dev/null @@ -1,7064 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -JSONStream@^0.8.4: - version "0.8.4" - resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-0.8.4.tgz#91657dfe6ff857483066132b4618b62e8f4887bd" - dependencies: - jsonparse "0.0.5" - through ">=2.2.7 <3" - -abbrev@1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" - -accepts@~1.3.3: - version "1.3.4" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.4.tgz#86246758c7dd6d21a6474ff084a4740ec05eb21f" - dependencies: - mime-types "~2.1.16" - negotiator "0.6.1" - -acorn-dynamic-import@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz#c752bd210bef679501b6c6cb7fc84f8f47158cc4" - dependencies: - acorn "^4.0.3" - -acorn@^4.0.3: - version "4.0.13" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" - -acorn@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.1.1.tgz#53fe161111f912ab999ee887a90a0bc52822fd75" - -adjust-sourcemap-loader@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/adjust-sourcemap-loader/-/adjust-sourcemap-loader-1.1.0.tgz#412d92404eb61e4113635012cba53a33d008e0e2" - dependencies: - assert "^1.3.0" - camelcase "^1.2.1" - loader-utils "^1.0.2" - lodash.assign "^4.0.1" - lodash.defaults "^3.1.2" - object-path "^0.9.2" - regex-parser "^2.2.1" - -ajv-keywords@^1.0.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" - -ajv-keywords@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.0.tgz#a296e17f7bfae7c1ce4f7e0de53d29cb32162df0" - -ajv@^4.7.0, ajv@^4.9.1: - version "4.11.8" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" - dependencies: - co "^4.6.0" - json-stable-stringify "^1.0.1" - -ajv@^5.0.0, ajv@^5.1.5: - version "5.2.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.2.2.tgz#47c68d69e86f5d953103b0074a9430dc63da5e39" - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - json-schema-traverse "^0.3.0" - json-stable-stringify "^1.0.1" - -align-text@^0.1.1, align-text@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" - dependencies: - kind-of "^3.0.2" - longest "^1.0.1" - repeat-string "^1.5.2" - -alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - -anchor-js@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/anchor-js/-/anchor-js-4.1.0.tgz#0a8d904cf5e46b2a9601fe062b95fbf022242f53" - -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - -ansi-styles@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" - dependencies: - color-convert "^1.9.0" - -ansicolors@~0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.2.1.tgz#be089599097b74a5c9c4a84a0cdbcdb62bd87aef" - -anymatch@^1.3.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" - dependencies: - micromatch "^2.1.5" - normalize-path "^2.0.0" - -aproba@^1.0.3: - version "1.1.2" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1" - -archive-type@^3.0.0, archive-type@^3.0.1: - version "3.2.0" - resolved "https://registry.yarnpkg.com/archive-type/-/archive-type-3.2.0.tgz#9cd9c006957ebe95fadad5bd6098942a813737f6" - dependencies: - file-type "^3.1.0" - -are-we-there-yet@~1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -argparse@^1.0.7: - version "1.0.9" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" - dependencies: - sprintf-js "~1.0.2" - -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - dependencies: - arr-flatten "^1.0.1" - -arr-flatten@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - -array-differ@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" - -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - -array-flatten@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.1.tgz#426bb9da84090c1838d812c8150af20a8331e296" - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.0, array-uniq@^1.0.1, array-uniq@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - -arrify@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - -asap@~2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - -asn1.js@^4.0.0: - version "4.9.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.1.tgz#48ba240b45a9280e94748990ba597d216617fd40" - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -asn1@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - -assert-plus@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" - -assert@^1.1.1, assert@^1.3.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" - dependencies: - util "0.10.3" - -ast-types@0.9.6: - version "0.9.6" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" - -async-each-series@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/async-each-series/-/async-each-series-1.1.0.tgz#f42fd8155d38f21a5b8ea07c28e063ed1700b138" - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - -async-foreach@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" - -async@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - -async@^2.1.2, async@^2.1.5, async@^2.4.1: - version "2.5.0" - resolved "https://registry.yarnpkg.com/async/-/async-2.5.0.tgz#843190fd6b7357a0b9e1c956edddd5ec8462b54d" - dependencies: - lodash "^4.14.0" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - -atob@~1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/atob/-/atob-1.1.3.tgz#95f13629b12c3a51a5d215abdce2aa9f32f80773" - -autoprefixer@^6.0.0, autoprefixer@^6.3.1: - version "6.7.7" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014" - dependencies: - browserslist "^1.7.6" - caniuse-db "^1.0.30000634" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^5.2.16" - postcss-value-parser "^3.2.3" - -autoprefixer@^7.1.1: - version "7.1.2" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.1.2.tgz#fbeaf07d48fd878e0682bf7cbeeade728adb2b18" - dependencies: - browserslist "^2.1.5" - caniuse-lite "^1.0.30000697" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^6.0.6" - postcss-value-parser "^3.2.3" - -aws-sign2@~0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - -aws4@^1.2.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" - -babel-code-frame@^6.11.0, babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@^6.24.1, babel-core@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.0" - debug "^2.6.8" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.7" - slash "^1.0.0" - source-map "^0.5.6" - -babel-generator@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.6" - trim-right "^1.0.1" - -babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" - dependencies: - babel-helper-explode-assignable-expression "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-call-delegate@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-define-map@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-explode-assignable-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-function-name@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" - dependencies: - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-get-function-arity@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-hoist-variables@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-optimise-call-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-regex@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" - dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-remap-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-replace-supers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" - dependencies: - babel-helper-optimise-call-expression "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-loader@^7.1.1: - version "7.1.2" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-7.1.2.tgz#f6cbe122710f1aa2af4d881c6d5b54358ca24126" - dependencies: - find-cache-dir "^1.0.0" - loader-utils "^1.0.2" - mkdirp "^0.5.1" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-check-es2015-constants@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-syntax-async-functions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" - -babel-plugin-syntax-exponentiation-operator@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" - -babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - -babel-plugin-syntax-trailing-function-commas@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" - -babel-plugin-transform-async-to-generator@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-arrow-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoping@^6.23.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" - dependencies: - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-plugin-transform-es2015-classes@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" - dependencies: - babel-helper-define-map "^6.24.1" - babel-helper-function-name "^6.24.1" - babel-helper-optimise-call-expression "^6.24.1" - babel-helper-replace-supers "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-computed-properties@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-destructuring@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-duplicate-keys@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-for-of@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-function-name@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" - dependencies: - babel-plugin-transform-es2015-modules-commonjs "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" - dependencies: - babel-plugin-transform-strict-mode "^6.24.1" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-types "^6.26.0" - -babel-plugin-transform-es2015-modules-systemjs@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-umd@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" - dependencies: - babel-plugin-transform-es2015-modules-amd "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-object-super@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" - dependencies: - babel-helper-replace-supers "^6.24.1" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-parameters@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" - dependencies: - babel-helper-call-delegate "^6.24.1" - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-shorthand-properties@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-spread@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-sticky-regex@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-template-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-typeof-symbol@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-unicode-regex@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - regexpu-core "^2.0.0" - -babel-plugin-transform-exponentiation-operator@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" - dependencies: - babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" - babel-plugin-syntax-exponentiation-operator "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-object-rest-spread@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.26.0" - -babel-plugin-transform-regenerator@^6.22.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" - dependencies: - regenerator-transform "^0.10.0" - -babel-plugin-transform-strict-mode@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-preset-env@^1.5.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.0.tgz#2de1c782a780a0a5d605d199c957596da43c44e4" - dependencies: - babel-plugin-check-es2015-constants "^6.22.0" - babel-plugin-syntax-trailing-function-commas "^6.22.0" - babel-plugin-transform-async-to-generator "^6.22.0" - babel-plugin-transform-es2015-arrow-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoping "^6.23.0" - babel-plugin-transform-es2015-classes "^6.23.0" - babel-plugin-transform-es2015-computed-properties "^6.22.0" - babel-plugin-transform-es2015-destructuring "^6.23.0" - babel-plugin-transform-es2015-duplicate-keys "^6.22.0" - babel-plugin-transform-es2015-for-of "^6.23.0" - babel-plugin-transform-es2015-function-name "^6.22.0" - babel-plugin-transform-es2015-literals "^6.22.0" - babel-plugin-transform-es2015-modules-amd "^6.22.0" - babel-plugin-transform-es2015-modules-commonjs "^6.23.0" - babel-plugin-transform-es2015-modules-systemjs "^6.23.0" - babel-plugin-transform-es2015-modules-umd "^6.23.0" - babel-plugin-transform-es2015-object-super "^6.22.0" - babel-plugin-transform-es2015-parameters "^6.23.0" - babel-plugin-transform-es2015-shorthand-properties "^6.22.0" - babel-plugin-transform-es2015-spread "^6.22.0" - babel-plugin-transform-es2015-sticky-regex "^6.22.0" - babel-plugin-transform-es2015-template-literals "^6.22.0" - babel-plugin-transform-es2015-typeof-symbol "^6.23.0" - babel-plugin-transform-es2015-unicode-regex "^6.22.0" - babel-plugin-transform-exponentiation-operator "^6.22.0" - babel-plugin-transform-regenerator "^6.22.0" - browserslist "^2.1.2" - invariant "^2.2.2" - semver "^5.3.0" - -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.23.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.24.1, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - -balanced-match@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.1.0.tgz#b504bd05869b39259dd0c5efc35d843176dccc4a" - -balanced-match@^0.4.0, balanced-match@^0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - -base64-js@^1.0.2: - version "1.2.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.1.tgz#a91947da1f4a516ea38e5b4ec0ec3773675e0886" - -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - -bcrypt-pbkdf@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" - dependencies: - tweetnacl "^0.14.3" - -beeper@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809" - -big.js@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.1.3.tgz#4cada2193652eb3ca9ec8e55c9015669c9806978" - -bin-build@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/bin-build/-/bin-build-2.2.0.tgz#11f8dd61f70ffcfa2bdcaa5b46f5e8fedd4221cc" - dependencies: - archive-type "^3.0.1" - decompress "^3.0.0" - download "^4.1.2" - exec-series "^1.0.0" - rimraf "^2.2.6" - tempfile "^1.0.0" - url-regex "^3.0.0" - -bin-check@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/bin-check/-/bin-check-2.0.0.tgz#86f8e6f4253893df60dc316957f5af02acb05930" - dependencies: - executable "^1.0.0" - -bin-version-check@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/bin-version-check/-/bin-version-check-2.1.0.tgz#e4e5df290b9069f7d111324031efc13fdd11a5b0" - dependencies: - bin-version "^1.0.0" - minimist "^1.1.0" - semver "^4.0.3" - semver-truncate "^1.0.0" - -bin-version@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/bin-version/-/bin-version-1.0.4.tgz#9eb498ee6fd76f7ab9a7c160436f89579435d78e" - dependencies: - find-versions "^1.0.0" - -bin-wrapper@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/bin-wrapper/-/bin-wrapper-3.0.2.tgz#67d3306262e4b1a5f2f88ee23464f6a655677aeb" - dependencies: - bin-check "^2.0.0" - bin-version-check "^2.1.0" - download "^4.0.0" - each-async "^1.1.1" - lazy-req "^1.0.0" - os-filter-obj "^1.0.0" - -binary-extensions@^1.0.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.10.0.tgz#9aeb9a6c5e88638aad171e167f5900abe24835d0" - -bl@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.1.tgz#cac328f7bee45730d404b692203fcb590e172d5e" - dependencies: - readable-stream "^2.0.5" - -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - dependencies: - inherits "~2.0.0" - -bluebird@^3.0.5, bluebird@^3.1.1: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: - version "4.11.8" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" - -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - dependencies: - array-flatten "^2.1.0" - deep-equal "^1.0.1" - dns-equal "^1.0.0" - dns-txt "^2.0.2" - multicast-dns "^6.0.1" - multicast-dns-service-types "^1.1.0" - -boom@2.x.x: - version "2.10.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - dependencies: - hoek "2.x.x" - -brace-expansion@^1.1.7: - version "1.1.8" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.0.6.tgz#5e7725dbdef1fd5930d4ebab48567ce451c48a0a" - dependencies: - buffer-xor "^1.0.2" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - inherits "^2.0.1" - -browserify-cipher@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a" - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd" - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - -browserify-rsa@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - dependencies: - bn.js "^4.1.1" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.2" - elliptic "^6.0.0" - inherits "^2.0.1" - parse-asn1 "^5.0.0" - -browserify-zlib@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d" - dependencies: - pako "~0.2.0" - -browserslist@^1.1.1, browserslist@^1.1.3, browserslist@^1.3.6, browserslist@^1.5.2, browserslist@^1.7.6: - version "1.7.7" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9" - dependencies: - caniuse-db "^1.0.30000639" - electron-to-chromium "^1.2.7" - -browserslist@^2.0.0, browserslist@^2.1.2, browserslist@^2.1.5: - version "2.4.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.4.0.tgz#693ee93d01e66468a6348da5498e011f578f87f8" - dependencies: - caniuse-lite "^1.0.30000718" - electron-to-chromium "^1.3.18" - -buffer-crc32@~0.2.3: - version "0.2.13" - resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" - -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - -buffer-to-vinyl@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz#00f15faee3ab7a1dda2cde6d9121bffdd07b2262" - dependencies: - file-type "^3.1.0" - readable-stream "^2.0.2" - uuid "^2.0.1" - vinyl "^1.0.0" - -buffer-xor@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - -buffer@^4.3.0: - version "4.9.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - -bytes@2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.5.0.tgz#4c9423ea2d252c270c41b2bdefeff9bb6b62c06a" - -camel-case@3.0.x: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - dependencies: - no-case "^2.2.0" - upper-case "^1.1.1" - -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" - -camelcase@^1.0.2, camelcase@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" - -camelcase@^2.0.0, camelcase@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - -camelcase@^4.0.0, camelcase@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - -caniuse-api@^1.5.2: - version "1.6.1" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c" - dependencies: - browserslist "^1.3.6" - caniuse-db "^1.0.30000529" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-api@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-2.0.0.tgz#b1ddb5a5966b16f48dc4998444d4bbc6c7d9d834" - dependencies: - browserslist "^2.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-db@^1.0.30000187, caniuse-db@^1.0.30000529: - version "1.0.30000718" - resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000718.tgz#86cdd97987302554934c61e106f4e470f16f993c" - -caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: - version "1.0.30000717" - resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000717.tgz#27ddf5feccdd338c99a62c9788c2694f99f67ed7" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000697, caniuse-lite@^1.0.30000718: - version "1.0.30000718" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000718.tgz#0dd24290beb11310b2d80f6b70a823c2a65a6fad" - -capture-stack-trace@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d" - -cardinal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/cardinal/-/cardinal-1.0.0.tgz#50e21c1b0aa37729f9377def196b5a9cec932ee9" - dependencies: - ansicolors "~0.2.1" - redeyed "~1.0.0" - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - -caw@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/caw/-/caw-1.2.0.tgz#ffb226fe7efc547288dc62ee3e97073c212d1034" - dependencies: - get-proxy "^1.0.1" - is-obj "^1.0.0" - object-assign "^3.0.0" - tunnel-agent "^0.4.0" - -center-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" - dependencies: - align-text "^0.1.3" - lazy-cache "^1.0.3" - -chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chalk@^2.0.1, chalk@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" - dependencies: - ansi-styles "^3.1.0" - escape-string-regexp "^1.0.5" - supports-color "^4.0.0" - -charenc@~0.0.1: - version "0.0.2" - resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" - -chokidar@^1.6.0, chokidar@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" - dependencies: - anymatch "^1.3.0" - async-each "^1.0.0" - glob-parent "^2.0.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^2.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - optionalDependencies: - fsevents "^1.0.0" - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -circular-json@^0.3.1: - version "0.3.3" - resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" - -clap@^1.0.9: - version "1.2.0" - resolved "https://registry.yarnpkg.com/clap/-/clap-1.2.0.tgz#59c90fe3e137104746ff19469a27a634ff68c857" - dependencies: - chalk "^1.1.3" - -clean-css@4.1.x, clean-css@^4.1.3: - version "4.1.7" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.1.7.tgz#b9aea4f85679889cf3eae8b40349ec4ebdfdd032" - dependencies: - source-map "0.5.x" - -cli-table@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.1.tgz#f53b05266a8b1a0b934b3d0821e6e2dc5914ae23" - dependencies: - colors "1.0.3" - -cli-usage@^0.1.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/cli-usage/-/cli-usage-0.1.4.tgz#7c01e0dc706c234b39c933838c8e20b2175776e2" - dependencies: - marked "^0.3.6" - marked-terminal "^1.6.2" - -clipboard@^1.5.5: - version "1.7.1" - resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-1.7.1.tgz#360d6d6946e99a7a1fef395e42ba92b5e9b5a16b" - dependencies: - good-listener "^1.2.2" - select "^1.1.2" - tiny-emitter "^2.0.0" - -cliui@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" - dependencies: - center-align "^0.1.1" - right-align "^0.1.1" - wordwrap "0.0.2" - -cliui@^3.0.3, cliui@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" - -clone-deep@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.3.0.tgz#348c61ae9cdbe0edfe053d91ff4cc521d790ede8" - dependencies: - for-own "^1.0.0" - is-plain-object "^2.0.1" - kind-of "^3.2.2" - shallow-clone "^0.1.2" - -clone-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-1.0.0.tgz#eae0a2413f55c0942f818c229fefce845d7f3b1c" - dependencies: - is-regexp "^1.0.0" - is-supported-regexp-flag "^1.0.0" - -clone-stats@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" - -clone@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f" - -clone@^1.0.0, clone@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" - -clone@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.1.tgz#d217d1e961118e3ac9a4b8bba3285553bf647cdb" - -co@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/co/-/co-3.1.0.tgz#4ea54ea5a08938153185e15210c68d9092bc1b78" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - -coa@~1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.4.tgz#a9ef153660d6a86a8bdec0289a5c684d217432fd" - dependencies: - q "^1.1.2" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - -color-convert@^1.3.0, color-convert@^1.8.2, color-convert@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" - dependencies: - color-name "^1.1.1" - -color-diff@^0.1.3: - version "0.1.7" - resolved "https://registry.yarnpkg.com/color-diff/-/color-diff-0.1.7.tgz#6db78cd9482a8e459d40821eaf4b503283dcb8e2" - -color-name@^1.0.0, color-name@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - -color-string@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-0.3.0.tgz#27d46fb67025c5c2fa25993bfbf579e47841b991" - dependencies: - color-name "^1.0.0" - -color-string@^1.4.0: - version "1.5.2" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.2.tgz#26e45814bc3c9a7cbd6751648a41434514a773a9" - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - -color@^0.11.0: - version "0.11.4" - resolved "https://registry.yarnpkg.com/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764" - dependencies: - clone "^1.0.2" - color-convert "^1.3.0" - color-string "^0.3.0" - -color@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/color/-/color-1.0.3.tgz#e48e832d85f14ef694fb468811c2d5cfe729b55d" - dependencies: - color-convert "^1.8.2" - color-string "^1.4.0" - -colorguard@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/colorguard/-/colorguard-1.2.0.tgz#f3facaf5caaeba4ef54653d9fb25bb73177c0d84" - dependencies: - chalk "^1.1.1" - color-diff "^0.1.3" - log-symbols "^1.0.2" - object-assign "^4.0.1" - pipetteur "^2.0.0" - plur "^2.0.0" - postcss "^5.0.4" - postcss-reporter "^1.2.1" - text-table "^0.2.0" - yargs "^1.2.6" - -colormin@^1.0.5: - version "1.1.2" - resolved "https://registry.yarnpkg.com/colormin/-/colormin-1.1.2.tgz#ea2f7420a72b96881a38aae59ec124a6f7298133" - dependencies: - color "^0.11.0" - css-color-names "0.0.4" - has "^1.0.1" - -colors@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" - -colors@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" - -combined-stream@^1.0.5, combined-stream@~1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" - dependencies: - delayed-stream "~1.0.0" - -commander@2.11.x, commander@^2.9.0, commander@~2.11.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" - -commander@~2.8.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4" - dependencies: - graceful-readlink ">= 1.0.0" - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - -compressible@~2.0.10: - version "2.0.11" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.11.tgz#16718a75de283ed8e604041625a2064586797d8a" - dependencies: - mime-db ">= 1.29.0 < 2" - -compression@^1.5.2: - version "1.7.0" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.0.tgz#030c9f198f1643a057d776a738e922da4373012d" - dependencies: - accepts "~1.3.3" - bytes "2.5.0" - compressible "~2.0.10" - debug "2.6.8" - on-headers "~1.0.1" - safe-buffer "5.1.1" - vary "~1.1.1" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - -concat-stream@^1.4.6, concat-stream@^1.4.7: - version "1.6.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" - dependencies: - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -concatenate@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/concatenate/-/concatenate-0.0.2.tgz#0b49d6e8c41047d7728cdc8d62a086623397b49f" - dependencies: - globs "^0.1.2" - -connect-history-api-fallback@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.3.0.tgz#e51d17f8f0ef0db90a64fdb47de3051556e9f169" - -console-browserify@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" - dependencies: - date-now "^0.1.4" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - -console-stream@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/console-stream/-/console-stream-0.1.1.tgz#a095fe07b20465955f2fafd28b5d72bccd949d44" - -consolidate@^0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.14.5.tgz#5a25047bc76f73072667c8cb52c989888f494c63" - dependencies: - bluebird "^3.1.1" - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - -content-type@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.2.tgz#b7d113aee7a8dd27bd21133c4dc2529df1721eed" - -convert-source-map@^0.3.3: - version "0.3.5" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190" - -convert-source-map@^1.1.1, convert-source-map@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - -core-js@^2.4.0, core-js@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.0.tgz#569c050918be6486b3837552028ae0466b717086" - -core-util-is@1.0.2, core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - -cosmiconfig@^2.1.0, cosmiconfig@^2.1.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.2.2.tgz#6173cebd56fac042c1f4390edf7af6c07c7cb892" - dependencies: - is-directory "^0.3.1" - js-yaml "^3.4.3" - minimist "^1.2.0" - object-assign "^4.1.0" - os-homedir "^1.0.1" - parse-json "^2.2.0" - require-from-string "^1.1.0" - -create-ecdh@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" - dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" - -create-error-class@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" - dependencies: - capture-stack-trace "^1.0.0" - -create-hash@^1.1.0, create-hash@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - ripemd160 "^2.0.0" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: - version "1.1.6" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06" - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -cross-env@^3.2.3: - version "3.2.4" - resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-3.2.4.tgz#9e0585f277864ed421ce756f81a980ff0d698aba" - dependencies: - cross-spawn "^5.1.0" - is-windows "^1.0.0" - -cross-spawn@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" - dependencies: - lru-cache "^4.0.1" - which "^1.2.9" - -cross-spawn@^5.0.1, cross-spawn@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - -crypt@~0.0.1: - version "0.0.2" - resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" - -cryptiles@2.x.x: - version "2.0.5" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" - dependencies: - boom "2.x.x" - -crypto-browserify@^3.11.0: - version "3.11.1" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.11.1.tgz#948945efc6757a400d6e5e5af47194d10064279f" - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - -css-color-function@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/css-color-function/-/css-color-function-1.3.0.tgz#72c767baf978f01b8a8a94f42f17ba5d22a776fc" - dependencies: - balanced-match "0.1.0" - color "^0.11.0" - debug "~0.7.4" - rgb "~0.1.0" - -css-color-list@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/css-color-list/-/css-color-list-0.0.1.tgz#8718e8695ae7a2cc8787be8715f1c008a7f28b15" - dependencies: - css-color-names "0.0.1" - -css-color-names@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.1.tgz#5d0548fa256456ede4a9a0c2ac7ab19d3eb1ad81" - -css-color-names@0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.3.tgz#de0cef16f4d8aa8222a320d5b6d7e9bbada7b9f6" - -css-color-names@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - -css-loader@^0.28.3: - version "0.28.5" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.28.5.tgz#dd02bb91b94545710212ef7f6aaa66663113d754" - dependencies: - babel-code-frame "^6.11.0" - css-selector-tokenizer "^0.7.0" - cssnano ">=2.6.1 <4" - icss-utils "^2.1.0" - loader-utils "^1.0.2" - lodash.camelcase "^4.3.0" - object-assign "^4.0.1" - postcss "^5.0.6" - postcss-modules-extract-imports "^1.0.0" - postcss-modules-local-by-default "^1.0.1" - postcss-modules-scope "^1.0.0" - postcss-modules-values "^1.1.0" - postcss-value-parser "^3.3.0" - source-list-map "^2.0.0" - -css-rule-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/css-rule-stream/-/css-rule-stream-1.1.0.tgz#3786e7198983d965a26e31957e09078cbb7705a2" - dependencies: - css-tokenize "^1.0.1" - duplexer2 "0.0.2" - ldjson-stream "^1.2.1" - through2 "^0.6.3" - -css-selector-tokenizer@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz#e6988474ae8c953477bf5e7efecfceccd9cf4c86" - dependencies: - cssesc "^0.1.0" - fastparse "^1.1.1" - regexpu-core "^1.0.0" - -css-tokenize@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/css-tokenize/-/css-tokenize-1.0.1.tgz#4625cb1eda21c143858b7f81d6803c1d26fc14be" - dependencies: - inherits "^2.0.1" - readable-stream "^1.0.33" - -css-unit-converter@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz#d9b9281adcfd8ced935bdbaba83786897f64e996" - -css@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/css/-/css-2.2.1.tgz#73a4c81de85db664d4ee674f7d47085e3b2d55dc" - dependencies: - inherits "^2.0.1" - source-map "^0.1.38" - source-map-resolve "^0.3.0" - urix "^0.1.0" - -cssesc@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" - -"cssnano@>=2.6.1 <4": - version "3.10.0" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.10.0.tgz#4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38" - dependencies: - autoprefixer "^6.3.1" - decamelize "^1.1.2" - defined "^1.0.0" - has "^1.0.1" - object-assign "^4.0.1" - postcss "^5.0.14" - postcss-calc "^5.2.0" - postcss-colormin "^2.1.8" - postcss-convert-values "^2.3.4" - postcss-discard-comments "^2.0.4" - postcss-discard-duplicates "^2.0.1" - postcss-discard-empty "^2.0.1" - postcss-discard-overridden "^0.1.1" - postcss-discard-unused "^2.2.1" - postcss-filter-plugins "^2.0.0" - postcss-merge-idents "^2.1.5" - postcss-merge-longhand "^2.0.1" - postcss-merge-rules "^2.0.3" - postcss-minify-font-values "^1.0.2" - postcss-minify-gradients "^1.0.1" - postcss-minify-params "^1.0.4" - postcss-minify-selectors "^2.0.4" - postcss-normalize-charset "^1.1.0" - postcss-normalize-url "^3.0.7" - postcss-ordered-values "^2.1.0" - postcss-reduce-idents "^2.2.2" - postcss-reduce-initial "^1.0.0" - postcss-reduce-transforms "^1.0.3" - postcss-svgo "^2.1.1" - postcss-unique-selectors "^2.0.2" - postcss-value-parser "^3.2.3" - postcss-zindex "^2.0.1" - -csso@~2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz#ddd52c587033f49e94b71fc55569f252e8ff5f85" - dependencies: - clap "^1.0.9" - source-map "^0.5.3" - -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - dependencies: - array-find-index "^1.0.1" - -d@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" - dependencies: - es5-ext "^0.10.9" - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - dependencies: - assert-plus "^1.0.0" - -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" - -dateformat@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" - -de-indent@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" - -debug@2.6.8, debug@^2.2.0, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8: - version "2.6.8" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" - dependencies: - ms "2.0.0" - -debug@~0.7.4: - version "0.7.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-0.7.4.tgz#06e1ea8082c2cb14e39806e22e2f6f757f92af39" - -decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - -decompress-tar@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/decompress-tar/-/decompress-tar-3.1.0.tgz#217c789f9b94450efaadc5c5e537978fc333c466" - dependencies: - is-tar "^1.0.0" - object-assign "^2.0.0" - strip-dirs "^1.0.0" - tar-stream "^1.1.1" - through2 "^0.6.1" - vinyl "^0.4.3" - -decompress-tarbz2@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/decompress-tarbz2/-/decompress-tarbz2-3.1.0.tgz#8b23935681355f9f189d87256a0f8bdd96d9666d" - dependencies: - is-bzip2 "^1.0.0" - object-assign "^2.0.0" - seek-bzip "^1.0.3" - strip-dirs "^1.0.0" - tar-stream "^1.1.1" - through2 "^0.6.1" - vinyl "^0.4.3" - -decompress-targz@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/decompress-targz/-/decompress-targz-3.1.0.tgz#b2c13df98166268991b715d6447f642e9696f5a0" - dependencies: - is-gzip "^1.0.0" - object-assign "^2.0.0" - strip-dirs "^1.0.0" - tar-stream "^1.1.1" - through2 "^0.6.1" - vinyl "^0.4.3" - -decompress-unzip@^3.0.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/decompress-unzip/-/decompress-unzip-3.4.0.tgz#61475b4152066bbe3fee12f9d629d15fe6478eeb" - dependencies: - is-zip "^1.0.0" - read-all-stream "^3.0.0" - stat-mode "^0.2.0" - strip-dirs "^1.0.0" - through2 "^2.0.0" - vinyl "^1.0.0" - yauzl "^2.2.1" - -decompress@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/decompress/-/decompress-3.0.0.tgz#af1dd50d06e3bfc432461d37de11b38c0d991bed" - dependencies: - buffer-to-vinyl "^1.0.0" - concat-stream "^1.4.6" - decompress-tar "^3.0.0" - decompress-tarbz2 "^3.0.0" - decompress-targz "^3.0.0" - decompress-unzip "^3.0.0" - stream-combiner2 "^1.1.1" - vinyl-assign "^1.0.1" - vinyl-fs "^2.2.0" - -deep-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - -deep-extend@~0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" - -defined@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" - -del@^2.0.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" - dependencies: - globby "^5.0.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - rimraf "^2.2.8" - -del@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" - dependencies: - globby "^6.1.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - p-map "^1.1.1" - pify "^3.0.0" - rimraf "^2.2.8" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - -delegate@^3.1.2: - version "3.1.3" - resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.1.3.tgz#9a8251a777d7025faa55737bc3b071742127a9fd" - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - -depd@1.1.1, depd@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" - -des.js@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - dependencies: - repeating "^2.0.0" - -detect-node@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" - -diff@^3.2.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.0.tgz#056695150d7aa93237ca7e378ac3b1682b7963b9" - -diffie-hellman@^5.0.0: - version "5.0.2" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e" - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - -dns-packet@^1.0.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.2.2.tgz#a8a26bec7646438963fc86e06f8f8b16d6c8bf7a" - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - dependencies: - buffer-indexof "^1.0.0" - -doiuse@^2.4.1: - version "2.6.0" - resolved "https://registry.yarnpkg.com/doiuse/-/doiuse-2.6.0.tgz#1892d10b61a9a356addbf2b614933e81f8bb3834" - dependencies: - browserslist "^1.1.1" - caniuse-db "^1.0.30000187" - css-rule-stream "^1.1.0" - duplexer2 "0.0.2" - jsonfilter "^1.1.2" - ldjson-stream "^1.2.1" - lodash "^4.0.0" - multimatch "^2.0.0" - postcss "^5.0.8" - source-map "^0.4.2" - through2 "^0.6.3" - yargs "^3.5.4" - -domain-browser@^1.1.1: - version "1.1.7" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" - -dotenv-expand@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-4.0.1.tgz#68fddc1561814e0a10964111057ff138ced7d7a8" - -dotenv@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-4.0.0.tgz#864ef1379aced55ce6f95debecdce179f7a0cd1d" - -download@^4.0.0, download@^4.1.2: - version "4.4.3" - resolved "https://registry.yarnpkg.com/download/-/download-4.4.3.tgz#aa55fdad392d95d4b68e8c2be03e0c2aa21ba9ac" - dependencies: - caw "^1.0.1" - concat-stream "^1.4.7" - each-async "^1.0.0" - filenamify "^1.0.1" - got "^5.0.0" - gulp-decompress "^1.2.0" - gulp-rename "^1.2.0" - is-url "^1.2.0" - object-assign "^4.0.1" - read-all-stream "^3.0.0" - readable-stream "^2.0.2" - stream-combiner2 "^1.1.1" - vinyl "^1.0.0" - vinyl-fs "^2.2.0" - ware "^1.2.0" - -duplexer2@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" - dependencies: - readable-stream "~1.1.9" - -duplexer2@^0.1.4, duplexer2@~0.1.0: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" - dependencies: - readable-stream "^2.0.2" - -duplexer@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - -duplexify@^3.2.0: - version "3.5.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.1.tgz#4e1516be68838bc90a49994f0b39a6e5960befcd" - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -each-async@^1.0.0, each-async@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/each-async/-/each-async-1.1.1.tgz#dee5229bdf0ab6ba2012a395e1b869abf8813473" - dependencies: - onetime "^1.0.0" - set-immediate-shim "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" - dependencies: - jsbn "~0.1.0" - -editorconfig@^0.13.2: - version "0.13.3" - resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-0.13.3.tgz#e5219e587951d60958fd94ea9a9a008cdeff1b34" - dependencies: - bluebird "^3.0.5" - commander "^2.9.0" - lru-cache "^3.2.0" - semver "^5.1.0" - sigmund "^1.0.1" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - -electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.18: - version "1.3.18" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.18.tgz#3dcc99da3e6b665f6abbc71c28ad51a2cd731a9c" - -elliptic@^6.0.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - -encodeurl@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" - -end-of-stream@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.0.tgz#7a90d833efda6cfa6eac0f4949dbb0fad3a63206" - dependencies: - once "^1.4.0" - -enhanced-resolve@^3.4.0: - version "3.4.1" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e" - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.4.0" - object-assign "^4.0.1" - tapable "^0.2.7" - -errno@^0.1.1, errno@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.4.tgz#b896e23a9e5e8ba33871fc996abd3635fc9a1c7d" - dependencies: - prr "~0.0.0" - -error-ex@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" - dependencies: - is-arrayish "^0.2.1" - -error-stack-parser@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.0.1.tgz#a3202b8fb03114aa9b40a0e3669e48b2b65a010a" - dependencies: - stackframe "^1.0.3" - -es5-ext@^0.10.14, es5-ext@^0.10.9, es5-ext@~0.10.14: - version "0.10.30" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.30.tgz#7141a16836697dbabfaaaeee41495ce29f52c939" - dependencies: - es6-iterator "2" - es6-symbol "~3.1" - -es6-iterator@2, es6-iterator@^2.0.1, es6-iterator@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.1.tgz#8e319c9f0453bf575d374940a655920e59ca5512" - dependencies: - d "1" - es5-ext "^0.10.14" - es6-symbol "^3.1" - -es6-map@^0.1.3: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-set "~0.1.5" - es6-symbol "~3.1.1" - event-emitter "~0.3.5" - -es6-set@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-symbol "3.1.1" - event-emitter "~0.3.5" - -es6-symbol@3.1.1, es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" - dependencies: - d "1" - es5-ext "~0.10.14" - -es6-templates@^0.2.2: - version "0.2.3" - resolved "https://registry.yarnpkg.com/es6-templates/-/es6-templates-0.2.3.tgz#5cb9ac9fb1ded6eb1239342b81d792bbb4078ee4" - dependencies: - recast "~0.11.12" - through "~2.3.6" - -es6-weak-map@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" - dependencies: - d "1" - es5-ext "^0.10.14" - es6-iterator "^2.0.1" - es6-symbol "^3.1.1" - -escape-html@^1.0.3, escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - -escope@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" - dependencies: - es6-map "^0.1.3" - es6-weak-map "^2.0.1" - esrecurse "^4.1.0" - estraverse "^4.1.1" - -esprima@^2.6.0: - version "2.7.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" - -esprima@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" - -esprima@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.0.0.tgz#53cf247acda77313e551c3aa2e73342d3fb4f7d9" - -esprima@~3.1.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" - -esrecurse@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" - dependencies: - estraverse "^4.1.0" - object-assign "^4.0.1" - -estraverse@^4.1.0, estraverse@^4.1.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - -esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - -etag@~1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.0.tgz#6f631aef336d6c46362b51764044ce216be3c051" - -event-emitter@~0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - dependencies: - d "1" - es5-ext "~0.10.14" - -eventemitter3@1.x.x: - version "1.2.0" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" - -events@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - -eventsource@0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" - dependencies: - original ">=0.0.5" - -evp_bytestokey@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.2.tgz#f66bb88ecd57f71a766821e20283ea38c68bf80a" - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -exec-buffer@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/exec-buffer/-/exec-buffer-3.2.0.tgz#b1686dbd904c7cf982e652c1f5a79b1e5573082b" - dependencies: - execa "^0.7.0" - p-finally "^1.0.0" - pify "^3.0.0" - rimraf "^2.5.4" - tempfile "^2.0.0" - -exec-series@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/exec-series/-/exec-series-1.0.3.tgz#6d257a9beac482a872c7783bc8615839fc77143a" - dependencies: - async-each-series "^1.1.0" - object-assign "^4.1.0" - -execa@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execall@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execall/-/execall-1.0.0.tgz#73d0904e395b3cab0658b08d09ec25307f29bb73" - dependencies: - clone-regexp "^1.0.0" - -executable@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/executable/-/executable-1.1.0.tgz#877980e9112f3391066da37265de7ad8434ab4d9" - dependencies: - meow "^3.1.0" - -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - dependencies: - is-posix-bracket "^0.1.0" - -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - dependencies: - fill-range "^2.1.0" - -express@^4.13.3: - version "4.15.4" - resolved "https://registry.yarnpkg.com/express/-/express-4.15.4.tgz#032e2253489cf8fce02666beca3d11ed7a2daed1" - dependencies: - accepts "~1.3.3" - array-flatten "1.1.1" - content-disposition "0.5.2" - content-type "~1.0.2" - cookie "0.3.1" - cookie-signature "1.0.6" - debug "2.6.8" - depd "~1.1.1" - encodeurl "~1.0.1" - escape-html "~1.0.3" - etag "~1.8.0" - finalhandler "~1.0.4" - fresh "0.5.0" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.1" - path-to-regexp "0.1.7" - proxy-addr "~1.1.5" - qs "6.5.0" - range-parser "~1.2.0" - send "0.15.4" - serve-static "1.12.4" - setprototypeof "1.0.3" - statuses "~1.3.1" - type-is "~1.6.15" - utils-merge "1.0.0" - vary "~1.1.1" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - dependencies: - is-extendable "^0.1.0" - -extend@^3.0.0, extend@~3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" - -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - dependencies: - is-extglob "^1.0.0" - -extract-text-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.0.tgz#90caa7907bc449f335005e3ac7532b41b00de612" - dependencies: - async "^2.4.1" - loader-utils "^1.1.0" - schema-utils "^0.3.0" - webpack-sources "^1.0.1" - -extsprintf@1.3.0, extsprintf@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - -fancy-log@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.0.tgz#45be17d02bb9917d60ccffd4995c999e6c8c9948" - dependencies: - chalk "^1.1.1" - time-stamp "^1.0.0" - -fast-deep-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" - -fastparse@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8" - -faye-websocket@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - dependencies: - websocket-driver ">=0.5.1" - -faye-websocket@~0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" - dependencies: - websocket-driver ">=0.5.1" - -fd-slicer@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65" - dependencies: - pend "~1.2.0" - -figures@^1.3.5: - version "1.7.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" - dependencies: - escape-string-regexp "^1.0.5" - object-assign "^4.1.0" - -file-entry-cache@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" - dependencies: - flat-cache "^1.2.1" - object-assign "^4.0.1" - -file-loader@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-0.11.2.tgz#4ff1df28af38719a6098093b88c82c71d1794a34" - dependencies: - loader-utils "^1.0.2" - -file-type@^3.1.0: - version "3.9.0" - resolved "https://registry.yarnpkg.com/file-type/-/file-type-3.9.0.tgz#257a078384d1db8087bc449d107d52a52672b9e9" - -file-type@^4.1.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/file-type/-/file-type-4.4.0.tgz#1b600e5fca1fbdc6e80c0a70c71c8dba5f7906c5" - -filename-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - -filename-reserved-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz#e61cf805f0de1c984567d0386dc5df50ee5af7e4" - -filenamify@^1.0.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/filenamify/-/filenamify-1.2.1.tgz#a9f2ffd11c503bed300015029272378f1f1365a5" - dependencies: - filename-reserved-regex "^1.0.0" - strip-outer "^1.0.0" - trim-repeated "^1.0.0" - -fill-range@^2.1.0: - version "2.2.3" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^1.1.3" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - -finalhandler@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.4.tgz#18574f2e7c4b98b8ae3b230c21f201f31bdb3fb7" - dependencies: - debug "2.6.8" - encodeurl "~1.0.1" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.1" - statuses "~1.3.1" - unpipe "~1.0.0" - -find-cache-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^2.0.0" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - dependencies: - locate-path "^2.0.0" - -find-versions@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-1.2.1.tgz#cbde9f12e38575a0af1be1b9a2c5d5fd8f186b62" - dependencies: - array-uniq "^1.0.0" - get-stdin "^4.0.1" - meow "^3.5.0" - semver-regex "^1.0.0" - -first-chunk-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e" - -flat-cache@^1.2.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96" - dependencies: - circular-json "^0.3.1" - del "^2.0.2" - graceful-fs "^4.1.2" - write "^0.2.1" - -flatten@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" - -for-in@^0.1.3: - version "0.1.8" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" - -for-in@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - -for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - dependencies: - for-in "^1.0.1" - -for-own@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - dependencies: - for-in "^1.0.1" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - -form-data@~2.1.1: - version "2.1.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.5" - mime-types "^2.1.12" - -forwarded@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.0.tgz#19ef9874c4ae1c297bcf078fde63a09b66a84363" - -fresh@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e" - -friendly-errors-webpack-plugin@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.6.1.tgz#e32781c4722f546a06a9b5d7a7cfa28520375d70" - dependencies: - chalk "^1.1.3" - error-stack-parser "^2.0.0" - string-length "^1.0.1" - -fs-extra@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-3.0.1.tgz#3794f378c58b342ea7dbbb23095109c4b3b62291" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^3.0.0" - universalify "^0.1.0" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - -fsevents@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4" - dependencies: - nan "^2.3.0" - node-pre-gyp "^0.6.36" - -fstream-ignore@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" - dependencies: - fstream "^1.0.0" - inherits "2" - minimatch "^3.0.0" - -fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: - version "1.0.11" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" - -function-bind@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" - -gather-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gather-stream/-/gather-stream-1.0.0.tgz#b33994af457a8115700d410f317733cbe7a0904b" - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -gaze@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.2.tgz#847224677adb8870d679257ed3388fdb61e40105" - dependencies: - globule "^1.0.0" - -get-caller-file@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" - -get-proxy@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/get-proxy/-/get-proxy-1.1.0.tgz#894854491bc591b0f147d7ae570f5c678b7256eb" - dependencies: - rc "^1.1.2" - -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - -get-stdin@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398" - -get-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - dependencies: - assert-plus "^1.0.0" - -gifsicle@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/gifsicle/-/gifsicle-3.0.4.tgz#f45cb5ed10165b665dc929e0e9328b6c821dfa3b" - dependencies: - bin-build "^2.0.0" - bin-wrapper "^3.0.0" - logalot "^2.0.0" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - dependencies: - is-glob "^2.0.0" - -glob-parent@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob-stream@^5.3.2: - version "5.3.5" - resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-5.3.5.tgz#a55665a9a8ccdc41915a87c701e32d4e016fad22" - dependencies: - extend "^3.0.0" - glob "^5.0.3" - glob-parent "^3.0.0" - micromatch "^2.3.7" - ordered-read-streams "^0.3.0" - through2 "^0.6.0" - to-absolute-glob "^0.1.1" - unique-stream "^2.0.2" - -glob@^5.0.3: - version "5.0.15" - resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@~7.1.1: - version "7.1.2" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - -globby@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" - dependencies: - array-union "^1.0.1" - arrify "^1.0.0" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -globby@^6.0.0, globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -globjoin@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz#2f4494ac8919e3767c5cbb691e9f463324285d43" - -globs@^0.1.2: - version "0.1.3" - resolved "https://registry.yarnpkg.com/globs/-/globs-0.1.3.tgz#670037125287cb6549aad96a44cfa684fd7c5502" - dependencies: - glob "^7.1.1" - -globule@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.0.tgz#1dc49c6822dd9e8a2fa00ba2a295006e8664bd09" - dependencies: - glob "~7.1.1" - lodash "~4.17.4" - minimatch "~3.0.2" - -glogg@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.0.tgz#7fe0f199f57ac906cf512feead8f90ee4a284fc5" - dependencies: - sparkles "^1.0.0" - -good-listener@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" - dependencies: - delegate "^3.1.2" - -got@^5.0.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/got/-/got-5.7.1.tgz#5f81635a61e4a6589f180569ea4e381680a51f35" - dependencies: - create-error-class "^3.0.1" - duplexer2 "^0.1.4" - is-redirect "^1.0.0" - is-retry-allowed "^1.0.0" - is-stream "^1.0.0" - lowercase-keys "^1.0.0" - node-status-codes "^1.0.0" - object-assign "^4.0.1" - parse-json "^2.1.0" - pinkie-promise "^2.0.0" - read-all-stream "^3.0.0" - readable-stream "^2.0.5" - timed-out "^3.0.0" - unzip-response "^1.0.2" - url-parse-lax "^1.0.0" - -graceful-fs@^4.0.0, graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - -"graceful-readlink@>= 1.0.0": - version "1.0.1" - resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" - -growly@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - -gulp-decompress@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/gulp-decompress/-/gulp-decompress-1.2.0.tgz#8eeb65a5e015f8ed8532cafe28454960626f0dc7" - dependencies: - archive-type "^3.0.0" - decompress "^3.0.0" - gulp-util "^3.0.1" - readable-stream "^2.0.2" - -gulp-rename@^1.2.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.2.2.tgz#3ad4428763f05e2764dec1c67d868db275687817" - -gulp-sourcemaps@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz#b86ff349d801ceb56e1d9e7dc7bbcb4b7dee600c" - dependencies: - convert-source-map "^1.1.1" - graceful-fs "^4.1.2" - strip-bom "^2.0.0" - through2 "^2.0.0" - vinyl "^1.0.0" - -gulp-util@^3.0.1: - version "3.0.8" - resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" - dependencies: - array-differ "^1.0.0" - array-uniq "^1.0.2" - beeper "^1.0.0" - chalk "^1.0.0" - dateformat "^2.0.0" - fancy-log "^1.1.0" - gulplog "^1.0.0" - has-gulplog "^0.1.0" - lodash._reescape "^3.0.0" - lodash._reevaluate "^3.0.0" - lodash._reinterpolate "^3.0.0" - lodash.template "^3.0.0" - minimist "^1.1.0" - multipipe "^0.1.2" - object-assign "^3.0.0" - replace-ext "0.0.1" - through2 "^2.0.0" - vinyl "^0.5.0" - -gulplog@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" - dependencies: - glogg "^1.0.0" - -handle-thing@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" - -har-schema@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" - -har-validator@~4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" - dependencies: - ajv "^4.9.1" - har-schema "^1.0.5" - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - dependencies: - ansi-regex "^2.0.0" - -has-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - -has-flag@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" - -has-gulplog@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" - dependencies: - sparkles "^1.0.0" - -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - -has@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" - dependencies: - function-bind "^1.0.2" - -hash-base@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" - dependencies: - inherits "^2.0.1" - -hash-base@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -hash-sum@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.0" - -hawk@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" - dependencies: - boom "2.x.x" - cryptiles "2.x.x" - hoek "2.x.x" - sntp "1.x.x" - -he@1.1.x, he@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hoek@2.x.x: - version "2.16.3" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -hosted-git-info@^2.1.4: - version "2.5.0" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -html-comment-regex@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e" - -html-entities@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" - -html-loader@^0.4.5: - version "0.4.5" - resolved "https://registry.yarnpkg.com/html-loader/-/html-loader-0.4.5.tgz#5fbcd87cd63a5c49a7fce2fe56f425e05729c68c" - dependencies: - es6-templates "^0.2.2" - fastparse "^1.1.1" - html-minifier "^3.0.1" - loader-utils "^1.0.2" - object-assign "^4.1.0" - -html-minifier@^3.0.1: - version "3.5.3" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.3.tgz#4a275e3b1a16639abb79b4c11191ff0d0fcf1ab9" - dependencies: - camel-case "3.0.x" - clean-css "4.1.x" - commander "2.11.x" - he "1.1.x" - ncname "1.0.x" - param-case "2.1.x" - relateurl "0.2.x" - uglify-js "3.0.x" - -html-tags@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-2.0.0.tgz#10b30a386085f43cede353cc8fa7cb0deeea668b" - -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - -http-errors@~1.6.1, http-errors@~1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" - dependencies: - depd "1.1.1" - inherits "2.0.3" - setprototypeof "1.0.3" - statuses ">= 1.3.1 < 2" - -http-proxy-middleware@~0.17.4: - version "0.17.4" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz#642e8848851d66f09d4f124912846dbaeb41b833" - dependencies: - http-proxy "^1.16.2" - is-glob "^3.1.0" - lodash "^4.17.2" - micromatch "^2.3.11" - -http-proxy@^1.16.2: - version "1.16.2" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742" - dependencies: - eventemitter3 "1.x.x" - requires-port "1.x.x" - -http-signature@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" - dependencies: - assert-plus "^0.2.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.1.tgz#3f91365cabe60b77ed0ebba24b454e3e09d95a82" - -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - -icss-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" - dependencies: - postcss "^6.0.1" - -ieee754@^1.1.4: - version "1.1.8" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" - -ignore@^3.2.0: - version "3.3.4" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.4.tgz#85ab6d0a9ca8b27b31604c09efe1c14dc21ab872" - -image-size@~0.5.0: - version "0.5.5" - resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" - -imagemin-gifsicle@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/imagemin-gifsicle/-/imagemin-gifsicle-5.2.0.tgz#3781524c457612ef04916af34241a2b42bfcb40a" - dependencies: - exec-buffer "^3.0.0" - gifsicle "^3.0.0" - is-gif "^1.0.0" - -imagemin-mozjpeg@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/imagemin-mozjpeg/-/imagemin-mozjpeg-6.0.0.tgz#71a32a457aa1b26117a68eeef2d9b190c2e5091e" - dependencies: - exec-buffer "^3.0.0" - is-jpg "^1.0.0" - mozjpeg "^4.0.0" - -imagemin-optipng@^5.2.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/imagemin-optipng/-/imagemin-optipng-5.2.1.tgz#d22da412c09f5ff00a4339960b98a88b1dbe8695" - dependencies: - exec-buffer "^3.0.0" - is-png "^1.0.0" - optipng-bin "^3.0.0" - -imagemin-pngquant@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/imagemin-pngquant/-/imagemin-pngquant-5.0.1.tgz#d8a329da553afa226b11ce62debe0b7e37b439e6" - dependencies: - exec-buffer "^3.0.0" - is-png "^1.0.0" - pngquant-bin "^3.0.0" - -imagemin-svgo@^5.2.0: - version "5.2.2" - resolved "https://registry.yarnpkg.com/imagemin-svgo/-/imagemin-svgo-5.2.2.tgz#501699f5789730a57922b8736ea15c53f7b55838" - dependencies: - is-svg "^2.0.0" - svgo "^0.7.0" - -imagemin@^5.2.0: - version "5.3.1" - resolved "https://registry.yarnpkg.com/imagemin/-/imagemin-5.3.1.tgz#f19c2eee1e71ba6c6558c515f9fc96680189a6d4" - dependencies: - file-type "^4.1.0" - globby "^6.1.0" - make-dir "^1.0.0" - p-pipe "^1.1.0" - pify "^2.3.0" - replace-ext "^1.0.0" - -img-loader@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/img-loader/-/img-loader-2.0.0.tgz#583740b3e2a38aeba5435c7dd530be9ce7454fd9" - dependencies: - imagemin "^5.2.0" - imagemin-gifsicle "^5.1.0" - imagemin-mozjpeg "^6.0.0" - imagemin-optipng "^5.2.0" - imagemin-pngquant "^5.0.0" - imagemin-svgo "^5.2.0" - loader-utils "^1.0.4" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - -in-publish@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" - -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - dependencies: - repeating "^2.0.0" - -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - -ini@~1.3.0: - version "1.3.4" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" - -internal-ip@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-1.2.0.tgz#ae9fbf93b984878785d50a8de1b356956058cf5c" - dependencies: - meow "^3.3.0" - -interpret@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90" - -invariant@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" - dependencies: - loose-envify "^1.0.0" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - -ip-regex@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-1.0.3.tgz#dc589076f659f419c222039a33316f1c7387effd" - -ip@^1.1.0, ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - -ipaddr.js@1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.4.0.tgz#296aca878a821816e5b85d0a285a99bcff4582f0" - -irregular-plurals@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/irregular-plurals/-/irregular-plurals-1.3.0.tgz#7af06931bdf74be33dcf585a13e06fccc16caecf" - -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - -is-absolute@^0.1.5: - version "0.1.7" - resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-0.1.7.tgz#847491119fccb5fb436217cc737f7faad50f603f" - dependencies: - is-relative "^0.1.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - -is-arrayish@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.1.tgz#c2dfc386abaa0c3e33c48db3fe87059e69065efd" - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - dependencies: - binary-extensions "^1.0.0" - -is-buffer@^1.0.2, is-buffer@^1.1.5, is-buffer@~1.1.1: - version "1.1.5" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - dependencies: - builtin-modules "^1.0.0" - -is-bzip2@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-bzip2/-/is-bzip2-1.0.0.tgz#5ee58eaa5a2e9c80e21407bedf23ae5ac091b3fc" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - -is-equal-shallow@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - dependencies: - is-primitive "^2.0.0" - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - -is-extglob@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - -is-gif@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-gif/-/is-gif-1.0.0.tgz#a6d2ae98893007bffa97a1d8c01d63205832097e" - -is-glob@^2.0.0, is-glob@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - dependencies: - is-extglob "^1.0.0" - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - dependencies: - is-extglob "^2.1.0" - -is-gzip@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-gzip/-/is-gzip-1.0.0.tgz#6ca8b07b99c77998025900e555ced8ed80879a83" - -is-jpg@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-jpg/-/is-jpg-1.0.0.tgz#2959c17e73430db38264da75b90dd54f2d86da1c" - -is-natural-number@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-natural-number/-/is-natural-number-2.1.1.tgz#7d4c5728377ef386c3e194a9911bf57c6dc335e7" - -is-number@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - dependencies: - kind-of "^3.0.2" - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - dependencies: - kind-of "^3.0.2" - -is-obj@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - -is-path-in-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" - dependencies: - is-path-inside "^1.0.0" - -is-path-inside@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" - dependencies: - path-is-inside "^1.0.1" - -is-plain-obj@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - -is-plain-object@^2.0.1: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - dependencies: - isobject "^3.0.1" - -is-png@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-png/-/is-png-1.1.0.tgz#d574b12bf275c0350455570b0e5b57ab062077ce" - -is-posix-bracket@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - -is-redirect@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" - -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - -is-relative@^0.1.0: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-0.1.3.tgz#905fee8ae86f45b3ec614bc3c15c869df0876e82" - -is-retry-allowed@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" - -is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - -is-supported-regexp-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-supported-regexp-flag/-/is-supported-regexp-flag-1.0.0.tgz#8b520c85fae7a253382d4b02652e045576e13bb8" - -is-svg@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.1.0.tgz#cf61090da0d9efbcab8722deba6f032208dbb0e9" - dependencies: - html-comment-regex "^1.1.0" - -is-tar@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-tar/-/is-tar-1.0.0.tgz#2f6b2e1792c1f5bb36519acaa9d65c0d26fe853d" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - -is-url@^1.2.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.2.tgz#498905a593bf47cc2d9e7f738372bbf7696c7f26" - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - -is-valid-glob@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-0.3.0.tgz#d4b55c69f51886f9b65c70d6c2622d37e29f48fe" - -is-windows@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.1.tgz#310db70f742d259a16a369202b51af84233310d9" - -is-zip@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-zip/-/is-zip-1.0.0.tgz#47b0a8ff4d38a76431ccfd99a8e15a4c86ba2325" - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - -isnumeric@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/isnumeric/-/isnumeric-0.2.0.tgz#a2347ba360de19e33d0ffd590fddf7755cbf2e64" - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - dependencies: - isarray "1.0.0" - -isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - -js-base64@^2.1.8, js-base64@^2.1.9: - version "2.1.9" - resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce" - -js-tokens@^3.0.0, js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - -js-yaml@^3.4.3: - version "3.9.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.9.1.tgz#08775cebdfdd359209f0d2acd383c8f86a6904a0" - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -js-yaml@~3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" - dependencies: - argparse "^1.0.7" - esprima "^2.6.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - -json-loader@^0.5.4: - version "0.5.7" - resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d" - -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - -json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - dependencies: - jsonify "~0.0.0" - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - -json3@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" - -json5@^0.5.0, json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - -jsonfile@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66" - optionalDependencies: - graceful-fs "^4.1.6" - -jsonfilter@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/jsonfilter/-/jsonfilter-1.1.2.tgz#21ef7cedc75193813c75932e96a98be205ba5a11" - dependencies: - JSONStream "^0.8.4" - minimist "^1.1.0" - stream-combiner "^0.2.1" - through2 "^0.6.3" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - -jsonparse@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-0.0.5.tgz#330542ad3f0a654665b778f3eb2d9a9fa507ac64" - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -kind-of@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5" - dependencies: - is-buffer "^1.0.2" - -kind-of@^3.0.2, kind-of@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - dependencies: - is-buffer "^1.1.5" - -known-css-properties@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.2.0.tgz#899c94be368e55b42d7db8d5be7d73a4a4a41454" - -laravel-mix@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/laravel-mix/-/laravel-mix-1.5.1.tgz#987b7bfab1892a430d6581e868d8651922929f1a" - dependencies: - autoprefixer "^7.1.1" - babel-core "^6.24.1" - babel-loader "^7.1.1" - babel-plugin-transform-object-rest-spread "^6.26.0" - babel-preset-env "^1.5.1" - chokidar "^1.7.0" - clean-css "^4.1.3" - concatenate "0.0.2" - css-loader "^0.28.3" - dotenv "^4.0.0" - dotenv-expand "^4.0.1" - extract-text-webpack-plugin "^3.0.0" - file-loader "^0.11.1" - friendly-errors-webpack-plugin "^1.6.1" - fs-extra "^3.0.1" - glob "^7.1.2" - html-loader "^0.4.5" - img-loader "^2.0.0" - lodash "^4.17.4" - md5 "^2.2.1" - node-sass "^4.5.3" - postcss-loader "^2.0.5" - resolve-url-loader "^2.0.2" - sass-loader "^6.0.5" - style-loader "^0.18.1" - uglify-js "^2.8.28" - uglifyjs-webpack-plugin "^0.4.6" - vue-loader "^13.0.5" - vue-template-compiler "^2.0.0" - webpack "^3.5.0" - webpack-chunk-hash "^0.4.0" - webpack-dev-server "^2.5.1" - webpack-merge "^4.1.0" - webpack-notifier "^1.5.0" - yargs "^8.0.1" - -lazy-cache@^0.2.3: - version "0.2.7" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65" - -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" - -lazy-req@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/lazy-req/-/lazy-req-1.1.0.tgz#bdaebead30f8d824039ce0ce149d4daa07ba1fac" - -lazystream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4" - dependencies: - readable-stream "^2.0.5" - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - dependencies: - invert-kv "^1.0.0" - -ldjson-stream@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ldjson-stream/-/ldjson-stream-1.2.1.tgz#91beceda5ac4ed2b17e649fb777e7abfa0189c2b" - dependencies: - split2 "^0.2.1" - through2 "^0.6.1" - -less-loader@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/less-loader/-/less-loader-4.0.5.tgz#ae155a7406cac6acd293d785587fcff0f478c4dd" - dependencies: - clone "^2.1.1" - loader-utils "^1.1.0" - pify "^2.3.0" - -less@^2.7.2: - version "2.7.2" - resolved "https://registry.yarnpkg.com/less/-/less-2.7.2.tgz#368d6cc73e1fb03981183280918743c5dcf9b3df" - optionalDependencies: - errno "^0.1.1" - graceful-fs "^4.1.2" - image-size "~0.5.0" - mime "^1.2.11" - mkdirp "^0.5.0" - promise "^7.1.1" - request "^2.72.0" - source-map "^0.5.3" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - -loader-runner@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" - -loader-utils@^1.0.0, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.0.4, loader-utils@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -lodash._arraycopy@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._arraycopy/-/lodash._arraycopy-3.0.0.tgz#76e7b7c1f1fb92547374878a562ed06a3e50f6e1" - -lodash._arrayeach@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._arrayeach/-/lodash._arrayeach-3.0.0.tgz#bab156b2a90d3f1bbd5c653403349e5e5933ef9e" - -lodash._baseassign@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" - dependencies: - lodash._basecopy "^3.0.0" - lodash.keys "^3.0.0" - -lodash._baseclone@^3.0.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/lodash._baseclone/-/lodash._baseclone-3.3.0.tgz#303519bf6393fe7e42f34d8b630ef7794e3542b7" - dependencies: - lodash._arraycopy "^3.0.0" - lodash._arrayeach "^3.0.0" - lodash._baseassign "^3.0.0" - lodash._basefor "^3.0.0" - lodash.isarray "^3.0.0" - lodash.keys "^3.0.0" - -lodash._basecopy@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" - -lodash._basefor@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash._basefor/-/lodash._basefor-3.0.3.tgz#7550b4e9218ef09fad24343b612021c79b4c20c2" - -lodash._basetostring@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" - -lodash._basevalues@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" - -lodash._bindcallback@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" - -lodash._createassigner@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz#838a5bae2fdaca63ac22dee8e19fa4e6d6970b11" - dependencies: - lodash._bindcallback "^3.0.0" - lodash._isiterateecall "^3.0.0" - lodash.restparam "^3.0.0" - -lodash._getnative@^3.0.0: - version "3.9.1" - resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" - -lodash._isiterateecall@^3.0.0: - version "3.0.9" - resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" - -lodash._reescape@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a" - -lodash._reevaluate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed" - -lodash._reinterpolate@^3.0.0, lodash._reinterpolate@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - -lodash._root@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" - -lodash.assign@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-3.2.0.tgz#3ce9f0234b4b2223e296b8fa0ac1fee8ebca64fa" - dependencies: - lodash._baseassign "^3.0.0" - lodash._createassigner "^3.0.0" - lodash.keys "^3.0.0" - -lodash.assign@^4.0.1, lodash.assign@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" - -lodash.camelcase@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" - -lodash.clonedeep@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-3.0.2.tgz#a0a1e40d82a5ea89ff5b147b8444ed63d92827db" - dependencies: - lodash._baseclone "^3.0.0" - lodash._bindcallback "^3.0.0" - -lodash.clonedeep@^4.3.2: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - -lodash.defaults@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-3.1.2.tgz#c7308b18dbf8bc9372d701a73493c61192bd2e2c" - dependencies: - lodash.assign "^3.0.0" - lodash.restparam "^3.0.0" - -lodash.defaults@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" - -lodash.escape@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" - dependencies: - lodash._root "^3.0.0" - -lodash.isarguments@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" - -lodash.isarray@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" - -lodash.isequal@^4.0.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" - -lodash.keys@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" - dependencies: - lodash._getnative "^3.0.0" - lodash.isarguments "^3.0.0" - lodash.isarray "^3.0.0" - -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - -lodash.mergewith@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz#150cf0a16791f5903b8891eab154609274bdea55" - -lodash.restparam@^3.0.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" - -lodash.tail@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" - -lodash.template@^3.0.0: - version "3.6.2" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" - dependencies: - lodash._basecopy "^3.0.0" - lodash._basetostring "^3.0.0" - lodash._basevalues "^3.0.0" - lodash._isiterateecall "^3.0.0" - lodash._reinterpolate "^3.0.0" - lodash.escape "^3.0.0" - lodash.keys "^3.0.0" - lodash.restparam "^3.0.0" - lodash.templatesettings "^3.0.0" - -lodash.template@^4.2.4: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.4.0.tgz#e73a0385c8355591746e020b99679c690e68fba0" - dependencies: - lodash._reinterpolate "~3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5" - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.escape "^3.0.0" - -lodash.templatesettings@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz#2b4d4e95ba440d915ff08bc899e4553666713316" - dependencies: - lodash._reinterpolate "~3.0.0" - -lodash.toarray@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" - -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - -lodash@^4.0.0, lodash@^4.1.0, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.4, lodash@~4.17.4: - version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - -log-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" - dependencies: - chalk "^1.0.0" - -logalot@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/logalot/-/logalot-2.1.0.tgz#5f8e8c90d304edf12530951a5554abb8c5e3f552" - dependencies: - figures "^1.3.5" - squeak "^1.0.0" - -loglevel@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.4.1.tgz#95b383f91a3c2756fd4ab093667e4309161f2bcd" - -longest@^1.0.0, longest@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" - -loose-envify@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" - dependencies: - js-tokens "^3.0.0" - -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - -lower-case@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - -lowercase-keys@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" - -lpad-align@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/lpad-align/-/lpad-align-1.1.2.tgz#21f600ac1c3095c3c6e497ee67271ee08481fe9e" - dependencies: - get-stdin "^4.0.1" - indent-string "^2.1.0" - longest "^1.0.0" - meow "^3.3.0" - -lru-cache@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-3.2.0.tgz#71789b3b7f5399bec8565dda38aa30d2a097efee" - dependencies: - pseudomap "^1.0.1" - -lru-cache@^4.0.1, lru-cache@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - -macaddress@^0.2.8: - version "0.2.8" - resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12" - -make-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.0.0.tgz#97a011751e91dd87cfadef58832ebb04936de978" - dependencies: - pify "^2.3.0" - -map-obj@^1.0.0, map-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - -marked-terminal@^1.6.2: - version "1.7.0" - resolved "https://registry.yarnpkg.com/marked-terminal/-/marked-terminal-1.7.0.tgz#c8c460881c772c7604b64367007ee5f77f125904" - dependencies: - cardinal "^1.0.0" - chalk "^1.1.3" - cli-table "^0.3.1" - lodash.assign "^4.2.0" - node-emoji "^1.4.1" - -marked@^0.3.6: - version "0.3.6" - resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.6.tgz#b2c6c618fccece4ef86c4fc6cb8a7cbf5aeda8d7" - -math-expression-evaluator@^1.2.14: - version "1.2.17" - resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz#de819fdbcd84dccd8fae59c6aeb79615b9d266ac" - -mathml-tag-names@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.0.1.tgz#8d41268168bf86d1102b98109e28e531e7a34578" - -md5.js@^1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.4.tgz#e9bdbde94a20a5ac18b04340fc5764d5b09d901d" - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -md5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/md5/-/md5-2.2.1.tgz#53ab38d5fe3c8891ba465329ea23fac0540126f9" - dependencies: - charenc "~0.0.1" - crypt "~0.0.1" - is-buffer "~1.1.1" - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - -mem@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" - dependencies: - mimic-fn "^1.0.0" - -memory-fs@^0.4.0, memory-fs@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -meow@^3.1.0, meow@^3.3.0, meow@^3.5.0, meow@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - -merge-stream@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" - dependencies: - readable-stream "^2.0.1" - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - -micromatch@^2.1.5, micromatch@^2.3.11, micromatch@^2.3.7: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - dependencies: - arr-diff "^2.0.0" - array-unique "^0.2.1" - braces "^1.8.2" - expand-brackets "^0.1.4" - extglob "^0.3.1" - filename-regex "^2.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.1" - kind-of "^3.0.2" - normalize-path "^2.0.1" - object.omit "^2.0.0" - parse-glob "^3.0.4" - regex-cache "^0.4.2" - -miller-rabin@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.0.tgz#4a62fb1d42933c05583982f4c716f6fb9e6c6d3d" - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -"mime-db@>= 1.29.0 < 2", mime-db@~1.29.0: - version "1.29.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.29.0.tgz#48d26d235589651704ac5916ca06001914266878" - -mime-types@^2.1.12, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.7: - version "2.1.16" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.16.tgz#2b858a52e5ecd516db897ac2be87487830698e23" - dependencies: - mime-db "~1.29.0" - -mime@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" - -mime@^1.2.11, mime@^1.3.4: - version "1.3.6" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.6.tgz#591d84d3653a6b0b4a3b9df8de5aa8108e72e5e0" - -mimic-fn@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" - -minimalistic-assert@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - -"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4, minimatch@~3.0.2: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - dependencies: - brace-expansion "^1.1.7" - -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - -minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - -mixin-object@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" - dependencies: - for-in "^0.1.3" - is-extendable "^0.1.1" - -mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - dependencies: - minimist "0.0.8" - -mozjpeg@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/mozjpeg/-/mozjpeg-4.1.1.tgz#859030b24f689a53db9b40f0160d89195b88fd50" - dependencies: - bin-build "^2.0.0" - bin-wrapper "^3.0.0" - logalot "^2.0.0" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - -multicast-dns@^6.0.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.1.1.tgz#6e7de86a570872ab17058adea7160bbeca814dde" - dependencies: - dns-packet "^1.0.1" - thunky "^0.1.0" - -multimatch@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-2.1.0.tgz#9c7906a22fb4c02919e2f5f75161b4cdbd4b2a2b" - dependencies: - array-differ "^1.0.0" - array-union "^1.0.1" - arrify "^1.0.0" - minimatch "^3.0.0" - -multipipe@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b" - dependencies: - duplexer2 "0.0.2" - -nan@^2.3.0, nan@^2.3.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" - -ncname@1.0.x: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ncname/-/ncname-1.0.0.tgz#5b57ad18b1ca092864ef62b0b1ed8194f383b71c" - dependencies: - xml-char-classes "^1.0.0" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - -no-case@^2.2.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.1.tgz#7aeba1c73a52184265554b7dc03baf720df80081" - dependencies: - lower-case "^1.1.1" - -node-cmd@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/node-cmd/-/node-cmd-3.0.0.tgz#38fff70a4aaa4f659d203eb57862737018e24f6f" - -node-emoji@^1.4.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.8.1.tgz#6eec6bfb07421e2148c75c6bba72421f8530a826" - dependencies: - lodash.toarray "^4.4.0" - -node-forge@0.6.33: - version "0.6.33" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.6.33.tgz#463811879f573d45155ad6a9f43dc296e8e85ebc" - -node-gyp@^3.3.1: - version "3.6.2" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.2.tgz#9bfbe54562286284838e750eac05295853fa1c60" - dependencies: - fstream "^1.0.0" - glob "^7.0.3" - graceful-fs "^4.1.2" - minimatch "^3.0.2" - mkdirp "^0.5.0" - nopt "2 || 3" - npmlog "0 || 1 || 2 || 3 || 4" - osenv "0" - request "2" - rimraf "2" - semver "~5.3.0" - tar "^2.0.0" - which "1" - -node-libs-browser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.0.0.tgz#a3a59ec97024985b46e958379646f96c4b616646" - dependencies: - assert "^1.1.1" - browserify-zlib "^0.1.4" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^1.0.0" - https-browserify "0.0.1" - os-browserify "^0.2.0" - path-browserify "0.0.0" - process "^0.11.0" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.0.5" - stream-browserify "^2.0.1" - stream-http "^2.3.1" - string_decoder "^0.10.25" - timers-browserify "^2.0.2" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.10.3" - vm-browserify "0.0.4" - -node-notifier@^4.1.0: - version "4.6.1" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-4.6.1.tgz#056d14244f3dcc1ceadfe68af9cff0c5473a33f3" - dependencies: - cli-usage "^0.1.1" - growly "^1.2.0" - lodash.clonedeep "^3.0.0" - minimist "^1.1.1" - semver "^5.1.0" - shellwords "^0.1.0" - which "^1.0.5" - -node-pre-gyp@^0.6.36: - version "0.6.36" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" - dependencies: - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.0.2" - rc "^1.1.7" - request "^2.81.0" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^2.2.1" - tar-pack "^3.4.0" - -node-sass@^4.5.3: - version "4.5.3" - resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.5.3.tgz#d09c9d1179641239d1b97ffc6231fdcec53e1568" - dependencies: - async-foreach "^0.1.3" - chalk "^1.1.1" - cross-spawn "^3.0.0" - gaze "^1.0.0" - get-stdin "^4.0.1" - glob "^7.0.3" - in-publish "^2.0.0" - lodash.assign "^4.2.0" - lodash.clonedeep "^4.3.2" - lodash.mergewith "^4.6.0" - meow "^3.7.0" - mkdirp "^0.5.1" - nan "^2.3.2" - node-gyp "^3.3.1" - npmlog "^4.0.0" - request "^2.79.0" - sass-graph "^2.1.1" - stdout-stream "^1.4.0" - -node-status-codes@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/node-status-codes/-/node-status-codes-1.0.0.tgz#5ae5541d024645d32a58fcddc9ceecea7ae3ac2f" - -"nopt@2 || 3": - version "3.0.6" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" - dependencies: - abbrev "1" - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - dependencies: - abbrev "1" - osenv "^0.1.4" - -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.0.0, normalize-path@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - dependencies: - remove-trailing-separator "^1.0.1" - -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - -normalize-selector@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/normalize-selector/-/normalize-selector-0.2.0.tgz#d0b145eb691189c63a78d201dc4fdb1293ef0c03" - -normalize-url@^1.4.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" - dependencies: - object-assign "^4.0.1" - prepend-http "^1.0.0" - query-string "^4.1.0" - sort-keys "^1.0.0" - -normalize.css@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/normalize.css/-/normalize.css-7.0.0.tgz#abfb1dd82470674e0322b53ceb1aaf412938e4bf" - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - dependencies: - path-key "^2.0.0" - -"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - -oauth-sign@~0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" - -object-assign@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa" - -object-assign@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" - -object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - -object-path@^0.9.2: - version "0.9.2" - resolved "https://registry.yarnpkg.com/object-path/-/object-path-0.9.2.tgz#0fd9a74fc5fad1ae3968b586bda5c632bd6c05a5" - -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" - -obuf@^1.0.0, obuf@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.1.tgz#104124b6c602c6796881a042541d36db43a5264e" - -on-build-webpack@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/on-build-webpack/-/on-build-webpack-0.1.0.tgz#a287c0e17766e6141926e5f2cbb0d8bb53b76814" - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" - -once@^1.3.0, once@^1.3.3, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - dependencies: - wrappy "1" - -onecolor@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/onecolor/-/onecolor-3.0.4.tgz#75a46f80da6c7aaa5b4daae17a47198bd9652494" - -onetime@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" - -opn@4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/opn/-/opn-4.0.2.tgz#7abc22e644dff63b0a96d5ab7f2790c0f01abc95" - dependencies: - object-assign "^4.0.1" - pinkie-promise "^2.0.0" - -optipng-bin@^3.0.0: - version "3.1.4" - resolved "https://registry.yarnpkg.com/optipng-bin/-/optipng-bin-3.1.4.tgz#95d34f2c488704f6fd70606bfea0c659f1d95d84" - dependencies: - bin-build "^2.0.0" - bin-wrapper "^3.0.0" - logalot "^2.0.0" - -ordered-read-streams@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz#7137e69b3298bb342247a1bbee3881c80e2fd78b" - dependencies: - is-stream "^1.0.1" - readable-stream "^2.0.1" - -original@>=0.0.5: - version "1.0.0" - resolved "https://registry.yarnpkg.com/original/-/original-1.0.0.tgz#9147f93fa1696d04be61e01bd50baeaca656bd3b" - dependencies: - url-parse "1.0.x" - -os-browserify@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.2.1.tgz#63fc4ccee5d2d7763d26bbf8601078e6c2e0044f" - -os-filter-obj@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/os-filter-obj/-/os-filter-obj-1.0.3.tgz#5915330d90eced557d2d938a31c6dd214d9c63ad" - -os-homedir@^1.0.0, os-homedir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - dependencies: - lcid "^1.0.0" - -os-locale@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" - dependencies: - execa "^0.7.0" - lcid "^1.0.0" - mem "^1.1.0" - -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - -osenv@0, osenv@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - -p-limit@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - dependencies: - p-limit "^1.1.0" - -p-map@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.1.1.tgz#05f5e4ae97a068371bc2a5cc86bfbdbc19c4ae7a" - -p-pipe@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-1.2.0.tgz#4b1a11399a11520a67790ee5a0c1d5881d6befe9" - -pako@~0.2.0: - version "0.2.9" - resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" - -param-case@2.1.x: - version "2.1.1" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - dependencies: - no-case "^2.2.0" - -parse-asn1@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712" - dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - -parse-json@^2.1.0, parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - dependencies: - error-ex "^1.2.0" - -parseurl@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56" - -path-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - dependencies: - pinkie-promise "^2.0.0" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - -path-is-inside@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - -path-key@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - -path-parse@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - dependencies: - pify "^2.0.0" - -path@^0.12.7: - version "0.12.7" - resolved "https://registry.yarnpkg.com/path/-/path-0.12.7.tgz#d4dc2a506c4ce2197eb481ebfcd5b36c0140b10f" - dependencies: - process "^0.11.1" - util "^0.10.3" - -pbkdf2@^3.0.3: - version "3.0.13" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.13.tgz#c37d295531e786b1da3e3eadc840426accb0ae25" - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -pend@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" - -performance-now@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" - -pify@^2.0.0, pify@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - -pipetteur@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/pipetteur/-/pipetteur-2.0.3.tgz#1955760959e8d1a11cb2a50ec83eec470633e49f" - dependencies: - onecolor "^3.0.4" - synesthesia "^1.0.1" - -pixrem@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/pixrem/-/pixrem-4.0.1.tgz#2da4a1de6ec4423c5fc3794e930b81d4490ec686" - dependencies: - browserslist "^2.0.0" - postcss "^6.0.0" - reduce-css-calc "^1.2.7" - -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - dependencies: - find-up "^2.1.0" - -pleeease-filters@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/pleeease-filters/-/pleeease-filters-4.0.0.tgz#6632b2fb05648d2758d865384fbced79e1ccaec7" - dependencies: - onecolor "^3.0.4" - postcss "^6.0.1" - -plur@^2.0.0, plur@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/plur/-/plur-2.1.2.tgz#7482452c1a0f508e3e344eaec312c91c29dc655a" - dependencies: - irregular-plurals "^1.0.0" - -pngquant-bin@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/pngquant-bin/-/pngquant-bin-3.1.1.tgz#d124d98a75a9487f40c1640b4dbfcbb2bd5a1fd1" - dependencies: - bin-build "^2.0.0" - bin-wrapper "^3.0.0" - logalot "^2.0.0" - -portfinder@^1.0.9: - version "1.0.13" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.13.tgz#bb32ecd87c27104ae6ee44b5a3ccbf0ebb1aede9" - dependencies: - async "^1.5.2" - debug "^2.2.0" - mkdirp "0.5.x" - -postcss-apply@^0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/postcss-apply/-/postcss-apply-0.8.0.tgz#14e544bbb5cb6f1c1e048857965d79ae066b1343" - dependencies: - babel-runtime "^6.23.0" - balanced-match "^0.4.2" - postcss "^6.0.0" - -postcss-attribute-case-insensitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-2.0.0.tgz#94dc422c8f90997f16bd33a3654bbbec084963b4" - dependencies: - postcss "^6.0.0" - postcss-selector-parser "^2.2.3" - -postcss-calc@^5.2.0: - version "5.3.1" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-5.3.1.tgz#77bae7ca928ad85716e2fda42f261bf7c1d65b5e" - dependencies: - postcss "^5.0.2" - postcss-message-helpers "^2.0.0" - reduce-css-calc "^1.2.6" - -postcss-calc@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-6.0.0.tgz#b681b279c6d24fbe0e33ed9045803705445d613b" - dependencies: - css-unit-converter "^1.1.1" - postcss "^6.0.0" - postcss-selector-parser "^2.2.2" - reduce-css-calc "^2.0.0" - -postcss-color-function@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-function/-/postcss-color-function-4.0.0.tgz#7e0106f4f6a1ecb1ad5b3a8553ace5e828aae187" - dependencies: - css-color-function "^1.3.0" - postcss "^6.0.1" - postcss-message-helpers "^2.0.0" - postcss-value-parser "^3.3.0" - -postcss-color-gray@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-gray/-/postcss-color-gray-4.0.0.tgz#681bf305097dd66bfef0e1e6282d5d99b5acc95d" - dependencies: - color "^1.0.3" - postcss "^6.0.1" - postcss-message-helpers "^2.0.0" - reduce-function-call "^1.0.2" - -postcss-color-hex-alpha@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-3.0.0.tgz#1e53e6c8acb237955e8fd08b7ecdb1b8b8309f95" - dependencies: - color "^1.0.3" - postcss "^6.0.1" - postcss-message-helpers "^2.0.0" - -postcss-color-hsl@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-hsl/-/postcss-color-hsl-2.0.0.tgz#12703666fa310430e3f30a454dac1386317d5844" - dependencies: - postcss "^6.0.1" - postcss-value-parser "^3.3.0" - units-css "^0.4.0" - -postcss-color-hwb@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-hwb/-/postcss-color-hwb-3.0.0.tgz#3402b19ef4d8497540c1fb5072be9863ca95571e" - dependencies: - color "^1.0.3" - postcss "^6.0.1" - postcss-message-helpers "^2.0.0" - reduce-function-call "^1.0.2" - -postcss-color-rebeccapurple@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-3.0.0.tgz#eebaf03d363b4300b96792bd3081c19ed66513d3" - dependencies: - postcss "^6.0.1" - postcss-value-parser "^3.3.0" - -postcss-color-rgb@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-rgb/-/postcss-color-rgb-2.0.0.tgz#14539c8a7131494b482e0dd1cc265ff6514b5263" - dependencies: - postcss "^6.0.1" - postcss-value-parser "^3.3.0" - -postcss-color-rgba-fallback@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-rgba-fallback/-/postcss-color-rgba-fallback-3.0.0.tgz#37d5c9353a07a09270912a82606bb42a0d702c04" - dependencies: - postcss "^6.0.6" - postcss-value-parser "^3.3.0" - rgb-hex "^2.1.0" - -postcss-colormin@^2.1.8: - version "2.2.2" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.2.tgz#6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b" - dependencies: - colormin "^1.0.5" - postcss "^5.0.13" - postcss-value-parser "^3.2.3" - -postcss-convert-values@^2.3.4: - version "2.6.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz#bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d" - dependencies: - postcss "^5.0.11" - postcss-value-parser "^3.1.2" - -postcss-cssnext@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/postcss-cssnext/-/postcss-cssnext-3.0.2.tgz#63b77adb0b8a4c1d5ec32cd345539535a3417d48" - dependencies: - autoprefixer "^7.1.1" - caniuse-api "^2.0.0" - chalk "^2.0.1" - pixrem "^4.0.0" - pleeease-filters "^4.0.0" - postcss "^6.0.5" - postcss-apply "^0.8.0" - postcss-attribute-case-insensitive "^2.0.0" - postcss-calc "^6.0.0" - postcss-color-function "^4.0.0" - postcss-color-gray "^4.0.0" - postcss-color-hex-alpha "^3.0.0" - postcss-color-hsl "^2.0.0" - postcss-color-hwb "^3.0.0" - postcss-color-rebeccapurple "^3.0.0" - postcss-color-rgb "^2.0.0" - postcss-color-rgba-fallback "^3.0.0" - postcss-custom-media "^6.0.0" - postcss-custom-properties "^6.1.0" - postcss-custom-selectors "^4.0.1" - postcss-font-family-system-ui "^2.0.1" - postcss-font-variant "^3.0.0" - postcss-image-set-polyfill "^0.3.5" - postcss-initial "^2.0.0" - postcss-media-minmax "^3.0.0" - postcss-nesting "^4.0.1" - postcss-pseudo-class-any-link "^4.0.0" - postcss-pseudoelements "^5.0.0" - postcss-replace-overflow-wrap "^2.0.0" - postcss-selector-matches "^3.0.1" - postcss-selector-not "^3.0.1" - -postcss-custom-media@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-6.0.0.tgz#be532784110ecb295044fb5395a18006eb21a737" - dependencies: - postcss "^6.0.1" - -postcss-custom-properties@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-6.1.0.tgz#9caf1151ac41b1e9e64d3a2ff9ece996ca18977d" - dependencies: - balanced-match "^1.0.0" - postcss "^6.0.3" - -postcss-custom-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-4.0.1.tgz#781382f94c52e727ef5ca4776ea2adf49a611382" - dependencies: - postcss "^6.0.1" - postcss-selector-matches "^3.0.0" - -postcss-discard-comments@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz#befe89fafd5b3dace5ccce51b76b81514be00e3d" - dependencies: - postcss "^5.0.14" - -postcss-discard-duplicates@^2.0.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz#b9abf27b88ac188158a5eb12abcae20263b91932" - dependencies: - postcss "^5.0.4" - -postcss-discard-empty@^2.0.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz#d2b4bd9d5ced5ebd8dcade7640c7d7cd7f4f92b5" - dependencies: - postcss "^5.0.14" - -postcss-discard-overridden@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz#8b1eaf554f686fb288cd874c55667b0aa3668d58" - dependencies: - postcss "^5.0.16" - -postcss-discard-unused@^2.2.1: - version "2.2.3" - resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz#bce30b2cc591ffc634322b5fb3464b6d934f4433" - dependencies: - postcss "^5.0.14" - uniqs "^2.0.0" - -postcss-filter-plugins@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz#6d85862534d735ac420e4a85806e1f5d4286d84c" - dependencies: - postcss "^5.0.4" - uniqid "^4.0.0" - -postcss-font-family-system-ui@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-font-family-system-ui/-/postcss-font-family-system-ui-2.0.1.tgz#318a075fdcb84b864aa823a51935ef0a5872e911" - dependencies: - lodash "^4.17.4" - postcss "^6.0.1" - postcss-value-parser "^3.3.0" - -postcss-font-variant@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-3.0.0.tgz#08ccc88f6050ba82ed8ef2cc76c0c6a6b41f183e" - dependencies: - postcss "^6.0.1" - -postcss-image-set-polyfill@^0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/postcss-image-set-polyfill/-/postcss-image-set-polyfill-0.3.5.tgz#0f193413700cf1f82bd39066ef016d65a4a18181" - dependencies: - postcss "^6.0.1" - postcss-media-query-parser "^0.2.3" - -postcss-initial@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-2.0.0.tgz#72715f7336e0bb79351d99ee65c4a253a8441ba4" - dependencies: - lodash.template "^4.2.4" - postcss "^6.0.1" - -postcss-less@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/postcss-less/-/postcss-less-0.14.0.tgz#c631b089c6cce422b9a10f3a958d2bedd3819324" - dependencies: - postcss "^5.0.21" - -postcss-load-config@^1.1.0, postcss-load-config@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a" - dependencies: - cosmiconfig "^2.1.0" - object-assign "^4.1.0" - postcss-load-options "^1.2.0" - postcss-load-plugins "^2.3.0" - -postcss-load-options@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c" - dependencies: - cosmiconfig "^2.1.0" - object-assign "^4.1.0" - -postcss-load-plugins@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92" - dependencies: - cosmiconfig "^2.1.1" - object-assign "^4.1.0" - -postcss-loader@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.0.6.tgz#8c7e0055a3df1889abc6bad52dd45b2f41bbc6fc" - dependencies: - loader-utils "^1.1.0" - postcss "^6.0.2" - postcss-load-config "^1.2.0" - schema-utils "^0.3.0" - -postcss-media-minmax@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-3.0.0.tgz#675256037a43ef40bc4f0760bfd06d4dc69d48d2" - dependencies: - postcss "^6.0.1" - -postcss-media-query-parser@^0.2.0, postcss-media-query-parser@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244" - -postcss-merge-idents@^2.1.5: - version "2.1.7" - resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270" - dependencies: - has "^1.0.1" - postcss "^5.0.10" - postcss-value-parser "^3.1.1" - -postcss-merge-longhand@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz#23d90cd127b0a77994915332739034a1a4f3d658" - dependencies: - postcss "^5.0.4" - -postcss-merge-rules@^2.0.3: - version "2.1.2" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz#d1df5dfaa7b1acc3be553f0e9e10e87c61b5f721" - dependencies: - browserslist "^1.5.2" - caniuse-api "^1.5.2" - postcss "^5.0.4" - postcss-selector-parser "^2.2.2" - vendors "^1.0.0" - -postcss-message-helpers@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz#a4f2f4fab6e4fe002f0aed000478cdf52f9ba60e" - -postcss-minify-font-values@^1.0.2: - version "1.0.5" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz#4b58edb56641eba7c8474ab3526cafd7bbdecb69" - dependencies: - object-assign "^4.0.1" - postcss "^5.0.4" - postcss-value-parser "^3.0.2" - -postcss-minify-gradients@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz#5dbda11373703f83cfb4a3ea3881d8d75ff5e6e1" - dependencies: - postcss "^5.0.12" - postcss-value-parser "^3.3.0" - -postcss-minify-params@^1.0.4: - version "1.2.2" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz#ad2ce071373b943b3d930a3fa59a358c28d6f1f3" - dependencies: - alphanum-sort "^1.0.1" - postcss "^5.0.2" - postcss-value-parser "^3.0.2" - uniqs "^2.0.0" - -postcss-minify-selectors@^2.0.4: - version "2.1.1" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz#b2c6a98c0072cf91b932d1a496508114311735bf" - dependencies: - alphanum-sort "^1.0.2" - has "^1.0.1" - postcss "^5.0.14" - postcss-selector-parser "^2.0.0" - -postcss-modules-extract-imports@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz#66140ecece38ef06bf0d3e355d69bf59d141ea85" - dependencies: - postcss "^6.0.1" - -postcss-modules-local-by-default@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-scope@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-values@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" - dependencies: - icss-replace-symbols "^1.1.0" - postcss "^6.0.1" - -postcss-nesting@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-4.1.0.tgz#28ef1e7cf9d497618ad2e5fa4de25d4757da1653" - dependencies: - postcss "^6.0.1" - -postcss-normalize-charset@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz#ef9ee71212d7fe759c78ed162f61ed62b5cb93f1" - dependencies: - postcss "^5.0.5" - -postcss-normalize-url@^3.0.7: - version "3.0.8" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz#108f74b3f2fcdaf891a2ffa3ea4592279fc78222" - dependencies: - is-absolute-url "^2.0.0" - normalize-url "^1.4.0" - postcss "^5.0.14" - postcss-value-parser "^3.2.3" - -postcss-ordered-values@^2.1.0: - version "2.2.3" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz#eec6c2a67b6c412a8db2042e77fe8da43f95c11d" - dependencies: - postcss "^5.0.4" - postcss-value-parser "^3.0.1" - -postcss-pseudo-class-any-link@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-4.0.0.tgz#9152a0613d3450720513e8892854bae42d0ee68e" - dependencies: - postcss "^6.0.1" - postcss-selector-parser "^2.2.3" - -postcss-pseudoelements@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-pseudoelements/-/postcss-pseudoelements-5.0.0.tgz#eef194e8d524645ca520a949e95e518e812402cb" - dependencies: - postcss "^6.0.0" - -postcss-reduce-idents@^2.2.2: - version "2.4.0" - resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz#c2c6d20cc958284f6abfbe63f7609bf409059ad3" - dependencies: - postcss "^5.0.4" - postcss-value-parser "^3.0.2" - -postcss-reduce-initial@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz#68f80695f045d08263a879ad240df8dd64f644ea" - dependencies: - postcss "^5.0.4" - -postcss-reduce-transforms@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz#ff76f4d8212437b31c298a42d2e1444025771ae1" - dependencies: - has "^1.0.1" - postcss "^5.0.8" - postcss-value-parser "^3.0.1" - -postcss-replace-overflow-wrap@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-2.0.0.tgz#794db6faa54f8db100854392a93af45768b4e25b" - dependencies: - postcss "^6.0.1" - -postcss-reporter@^1.2.1, postcss-reporter@^1.3.3: - version "1.4.1" - resolved "https://registry.yarnpkg.com/postcss-reporter/-/postcss-reporter-1.4.1.tgz#c136f0a5b161915f379dd3765c61075f7e7b9af2" - dependencies: - chalk "^1.0.0" - lodash "^4.1.0" - log-symbols "^1.0.2" - postcss "^5.0.0" - -postcss-reporter@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-reporter/-/postcss-reporter-3.0.0.tgz#09ea0f37a444c5693878606e09b018ebeff7cf8f" - dependencies: - chalk "^1.0.0" - lodash "^4.1.0" - log-symbols "^1.0.2" - postcss "^5.0.0" - -postcss-resolve-nested-selector@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz#29ccbc7c37dedfac304e9fff0bf1596b3f6a0e4e" - -postcss-scss@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-0.4.1.tgz#ad771b81f0f72f5f4845d08aa60f93557653d54c" - dependencies: - postcss "^5.2.13" - -postcss-scss@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-1.0.2.tgz#ff45cf3354b879ee89a4eb68680f46ac9bb14f94" - dependencies: - postcss "^6.0.3" - -postcss-selector-matches@^3.0.0, postcss-selector-matches@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-3.0.1.tgz#e5634011e13950881861bbdd58c2d0111ffc96ab" - dependencies: - balanced-match "^0.4.2" - postcss "^6.0.1" - -postcss-selector-not@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-3.0.1.tgz#2e4db2f0965336c01e7cec7db6c60dff767335d9" - dependencies: - balanced-match "^0.4.2" - postcss "^6.0.1" - -postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.1.1, postcss-selector-parser@^2.2.2, postcss-selector-parser@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz#f9437788606c3c9acee16ffe8d8b16297f27bb90" - dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-sorting@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-sorting/-/postcss-sorting-2.1.0.tgz#32b1e9afa913bb225a6ad076d503d8f983bb4a82" - dependencies: - lodash "^4.17.4" - postcss "^5.2.17" - -postcss-svgo@^2.1.1: - version "2.1.6" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.6.tgz#b6df18aa613b666e133f08adb5219c2684ac108d" - dependencies: - is-svg "^2.0.0" - postcss "^5.0.14" - postcss-value-parser "^3.2.3" - svgo "^0.7.0" - -postcss-unique-selectors@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz#981d57d29ddcb33e7b1dfe1fd43b8649f933ca1d" - dependencies: - alphanum-sort "^1.0.1" - postcss "^5.0.4" - uniqs "^2.0.0" - -postcss-value-parser@^3.0.1, postcss-value-parser@^3.0.2, postcss-value-parser@^3.1.1, postcss-value-parser@^3.1.2, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15" - -postcss-zindex@^2.0.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-2.2.0.tgz#d2109ddc055b91af67fc4cb3b025946639d2af22" - dependencies: - has "^1.0.1" - postcss "^5.0.4" - uniqs "^2.0.0" - -postcss@^5.0.0, postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.18, postcss@^5.0.2, postcss@^5.0.20, postcss@^5.0.21, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.13, postcss@^5.2.16, postcss@^5.2.17, postcss@^5.2.4: - version "5.2.17" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.17.tgz#cf4f597b864d65c8a492b2eabe9d706c879c388b" - dependencies: - chalk "^1.1.3" - js-base64 "^2.1.9" - source-map "^0.5.6" - supports-color "^3.2.3" - -postcss@^6.0.0, postcss@^6.0.1, postcss@^6.0.2, postcss@^6.0.3, postcss@^6.0.5, postcss@^6.0.6: - version "6.0.10" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.10.tgz#c311b89734483d87a91a56dc9e53f15f4e6e84e4" - dependencies: - chalk "^2.1.0" - source-map "^0.5.7" - supports-color "^4.2.1" - -postcss@^6.0.8: - version "6.0.13" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.13.tgz#b9ecab4ee00c89db3ec931145bd9590bbf3f125f" - dependencies: - chalk "^2.1.0" - source-map "^0.6.1" - supports-color "^4.4.0" - -prepend-http@^1.0.0, prepend-http@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - -prettier@^1.7.0: - version "1.7.4" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.7.4.tgz#5e8624ae9363c80f95ec644584ecdf55d74f93fa" - -prismjs@^1.8.3: - version "1.8.3" - resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.8.3.tgz#4a3d140be5f2614a8987ca2330733a40d8ad207b" - optionalDependencies: - clipboard "^1.5.5" - -private@^0.1.6, private@^0.1.7, private@~0.1.5: - version "0.1.7" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" - -process-nextick-args@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" - -process@^0.11.0, process@^0.11.1: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" - dependencies: - asap "~2.0.3" - -proxy-addr@~1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.5.tgz#71c0ee3b102de3f202f3b64f608d173fcba1a918" - dependencies: - forwarded "~0.1.0" - ipaddr.js "1.4.0" - -prr@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/prr/-/prr-0.0.0.tgz#1a84b85908325501411853d0081ee3fa86e2926a" - -pseudomap@^1.0.1, pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - -public-encrypt@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6" - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - -punycode@^1.2.4, punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - -q@^1.1.2: - version "1.5.0" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" - -qs@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.0.tgz#8d04954d364def3efc55b5a0793e1e2c8b1e6e49" - -qs@~6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" - -query-string@^4.1.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" - dependencies: - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" - -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - -querystringify@0.0.x: - version "0.0.4" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-0.0.4.tgz#0cf7f84f9463ff0ae51c4c4b142d95be37724d9c" - -querystringify@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-1.0.0.tgz#6286242112c5b712fa654e526652bf6a13ff05cb" - -randomatic@^1.1.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -randombytes@^2.0.0, randombytes@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.5.tgz#dc009a246b8d09a177b4b7a0ae77bc570f4b1b79" - dependencies: - safe-buffer "^5.1.0" - -range-parser@^1.0.3, range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" - -rc@^1.1.2, rc@^1.1.7: - version "1.2.1" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" - dependencies: - deep-extend "~0.4.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -read-all-stream@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/read-all-stream/-/read-all-stream-3.1.0.tgz#35c3e177f2078ef789ee4bfafa4373074eaef4fa" - dependencies: - pinkie-promise "^2.0.0" - readable-stream "^2.0.0" - -read-file-stdin@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/read-file-stdin/-/read-file-stdin-0.2.1.tgz#25eccff3a153b6809afacb23ee15387db9e0ee61" - dependencies: - gather-stream "^1.0.0" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -"readable-stream@>=1.0.33-1 <1.1.0-0": - version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@^1.0.33, readable-stream@~1.1.9: - version "1.1.14" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.6, readable-stream@^2.2.9: - version "2.3.3" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - safe-buffer "~5.1.1" - string_decoder "~1.0.3" - util-deprecate "~1.0.1" - -readdirp@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" - dependencies: - graceful-fs "^4.1.2" - minimatch "^3.0.2" - readable-stream "^2.0.2" - set-immediate-shim "^1.0.1" - -recast@~0.11.12: - version "0.11.23" - resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3" - dependencies: - ast-types "0.9.6" - esprima "~3.1.0" - private "~0.1.5" - source-map "~0.5.0" - -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" - -redeyed@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-1.0.1.tgz#e96c193b40c0816b00aec842698e61185e55498a" - dependencies: - esprima "~3.0.0" - -reduce-css-calc@^1.2.6, reduce-css-calc@^1.2.7: - version "1.3.0" - resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716" - dependencies: - balanced-match "^0.4.2" - math-expression-evaluator "^1.2.14" - reduce-function-call "^1.0.1" - -reduce-css-calc@^2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-2.0.5.tgz#33c97838c5d4c711a5c14ef85ce4fde41483f7bd" - dependencies: - css-unit-converter "^1.1.1" - postcss-value-parser "^3.3.0" - -reduce-function-call@^1.0.1, reduce-function-call@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/reduce-function-call/-/reduce-function-call-1.0.2.tgz#5a200bf92e0e37751752fe45b0ab330fd4b6be99" - dependencies: - balanced-match "^0.4.2" - -regenerate@^1.2.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" - -regenerator-runtime@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" - -regenerator-transform@^0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" - dependencies: - babel-runtime "^6.18.0" - babel-types "^6.19.0" - private "^0.1.6" - -regex-cache@^0.4.2: - version "0.4.3" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145" - dependencies: - is-equal-shallow "^0.1.3" - is-primitive "^2.0.0" - -regex-parser@^2.2.1: - version "2.2.7" - resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.7.tgz#bd090e09181849acc45457e765f7be2a63f50ef1" - -regexpu-core@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regexpu-core@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - dependencies: - jsesc "~0.5.0" - -relateurl@0.2.x: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - -repeat-element@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" - -repeat-string@^1.5.2: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - dependencies: - is-finite "^1.0.0" - -replace-ext@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" - -replace-ext@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" - -request@2, request@^2.72.0, request@^2.79.0, request@^2.81.0: - version "2.81.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~4.2.1" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - performance-now "^0.2.0" - qs "~6.4.0" - safe-buffer "^5.0.1" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "^0.6.0" - uuid "^3.0.0" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - -require-from-string@^1.1.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418" - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - -requires-port@1.0.x, requires-port@1.x.x: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - -resolve-url-loader@^2.0.2: - version "2.1.0" - resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-2.1.0.tgz#27c95cc16a4353923fdbdc2dbaf5eef22232c477" - dependencies: - adjust-sourcemap-loader "^1.1.0" - camelcase "^4.0.0" - convert-source-map "^1.1.1" - loader-utils "^1.0.0" - lodash.defaults "^4.0.0" - rework "^1.0.1" - rework-visit "^1.0.0" - source-map "^0.5.6" - urix "^0.1.0" - -resolve-url@~0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - -resolve@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86" - dependencies: - path-parse "^1.0.5" - -rework-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rework-visit/-/rework-visit-1.0.0.tgz#9945b2803f219e2f7aca00adb8bc9f640f842c9a" - -rework@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rework/-/rework-1.0.1.tgz#30806a841342b54510aa4110850cd48534144aa7" - dependencies: - convert-source-map "^0.3.3" - css "^2.0.0" - -rgb-hex@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/rgb-hex/-/rgb-hex-2.1.0.tgz#c773c5fe2268a25578d92539a82a7a5ce53beda6" - -rgb@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/rgb/-/rgb-0.1.0.tgz#be27b291e8feffeac1bd99729721bfa40fc037b5" - -right-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" - dependencies: - align-text "^0.1.1" - -rimraf@2, rimraf@^2.2.6, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" - dependencies: - glob "^7.0.5" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" - dependencies: - hash-base "^2.0.0" - inherits "^2.0.1" - -safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" - -sass-graph@^2.1.1: - version "2.2.4" - resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" - dependencies: - glob "^7.0.0" - lodash "^4.0.0" - scss-tokenizer "^0.2.3" - yargs "^7.0.0" - -sass-loader@^6.0.5: - version "6.0.6" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-6.0.6.tgz#e9d5e6c1f155faa32a4b26d7a9b7107c225e40f9" - dependencies: - async "^2.1.5" - clone-deep "^0.3.0" - loader-utils "^1.0.1" - lodash.tail "^4.1.1" - pify "^3.0.0" - -sax@~1.2.1: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - -schema-utils@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf" - dependencies: - ajv "^5.0.0" - -scss-tokenizer@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" - dependencies: - js-base64 "^2.1.8" - source-map "^0.4.2" - -seek-bzip@^1.0.3: - version "1.0.5" - resolved "https://registry.yarnpkg.com/seek-bzip/-/seek-bzip-1.0.5.tgz#cfe917cb3d274bcffac792758af53173eb1fabdc" - dependencies: - commander "~2.8.1" - -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - -select@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" - -selfsigned@^1.9.1: - version "1.10.1" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.1.tgz#bf8cb7b83256c4551e31347c6311778db99eec52" - dependencies: - node-forge "0.6.33" - -semver-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-1.0.0.tgz#92a4969065f9c70c694753d55248fc68f8f652c9" - -semver-truncate@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/semver-truncate/-/semver-truncate-1.1.2.tgz#57f41de69707a62709a7e0104ba2117109ea47e8" - dependencies: - semver "^5.3.0" - -"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0: - version "5.4.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" - -semver@^4.0.3: - version "4.3.6" - resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" - -semver@~5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" - -send@0.15.4: - version "0.15.4" - resolved "https://registry.yarnpkg.com/send/-/send-0.15.4.tgz#985faa3e284b0273c793364a35c6737bd93905b9" - dependencies: - debug "2.6.8" - depd "~1.1.1" - destroy "~1.0.4" - encodeurl "~1.0.1" - escape-html "~1.0.3" - etag "~1.8.0" - fresh "0.5.0" - http-errors "~1.6.2" - mime "1.3.4" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.3.1" - -serve-index@^1.7.2: - version "1.9.0" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.0.tgz#d2b280fc560d616ee81b48bf0fa82abed2485ce7" - dependencies: - accepts "~1.3.3" - batch "0.6.1" - debug "2.6.8" - escape-html "~1.0.3" - http-errors "~1.6.1" - mime-types "~2.1.15" - parseurl "~1.3.1" - -serve-static@1.12.4: - version "1.12.4" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.12.4.tgz#9b6aa98eeb7253c4eedc4c1f6fdbca609901a961" - dependencies: - encodeurl "~1.0.1" - escape-html "~1.0.3" - parseurl "~1.3.1" - send "0.15.4" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - -set-immediate-shim@^1.0.0, set-immediate-shim@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" - -setimmediate@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - -setprototypeof@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" - -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.8" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f" - dependencies: - inherits "^2.0.1" - -shallow-clone@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-0.1.2.tgz#5909e874ba77106d73ac414cfec1ffca87d97060" - dependencies: - is-extendable "^0.1.1" - kind-of "^2.0.1" - lazy-cache "^0.2.3" - mixin-object "^2.0.1" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - dependencies: - shebang-regex "^1.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - -shellwords@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - -sigmund@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" - -signal-exit@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - dependencies: - is-arrayish "^0.3.1" - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - -slice-ansi@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" - -sntp@1.x.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - dependencies: - hoek "2.x.x" - -sockjs-client@1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.4.tgz#5babe386b775e4cf14e7520911452654016c8b12" - dependencies: - debug "^2.6.6" - eventsource "0.1.6" - faye-websocket "~0.11.0" - inherits "^2.0.1" - json3 "^3.3.2" - url-parse "^1.1.8" - -sockjs@0.3.18: - version "0.3.18" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.18.tgz#d9b289316ca7df77595ef299e075f0f937eb4207" - dependencies: - faye-websocket "^0.10.0" - uuid "^2.0.2" - -sort-keys@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - dependencies: - is-plain-obj "^1.0.0" - -source-list-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085" - -source-map-resolve@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.3.1.tgz#610f6122a445b8dd51535a2a71b783dfc1248761" - dependencies: - atob "~1.1.0" - resolve-url "~0.2.1" - source-map-url "~0.3.0" - urix "~0.1.0" - -source-map-support@^0.4.15: - version "0.4.16" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.16.tgz#16fecf98212467d017d586a2af68d628b9421cd8" - dependencies: - source-map "^0.5.6" - -source-map-url@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.3.0.tgz#7ecaf13b57bcd09da8a40c5d269db33799d4aaf9" - -source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.0, source-map@~0.5.1, source-map@~0.5.3: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - -source-map@^0.1.38: - version "0.1.43" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" - dependencies: - amdefine ">=0.0.4" - -source-map@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" - dependencies: - amdefine ">=0.0.4" - -source-map@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - -sparkles@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" - -spdx-correct@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" - dependencies: - spdx-license-ids "^1.0.2" - -spdx-expression-parse@~1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" - -spdx-license-ids@^1.0.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" - -spdy-transport@^2.0.18: - version "2.0.20" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.0.20.tgz#735e72054c486b2354fe89e702256004a39ace4d" - dependencies: - debug "^2.6.8" - detect-node "^2.0.3" - hpack.js "^2.1.6" - obuf "^1.1.1" - readable-stream "^2.2.9" - safe-buffer "^5.0.1" - wbuf "^1.7.2" - -spdy@^3.4.1: - version "3.4.7" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" - dependencies: - debug "^2.6.8" - handle-thing "^1.2.5" - http-deceiver "^1.2.7" - safe-buffer "^5.0.1" - select-hose "^2.0.0" - spdy-transport "^2.0.18" - -specificity@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/specificity/-/specificity-0.3.1.tgz#f1b068424ce317ae07478d95de3c21cf85e8d567" - -split2@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/split2/-/split2-0.2.1.tgz#02ddac9adc03ec0bb78c1282ec079ca6e85ae900" - dependencies: - through2 "~0.6.1" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - -squeak@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/squeak/-/squeak-1.3.0.tgz#33045037b64388b567674b84322a6521073916c3" - dependencies: - chalk "^1.0.0" - console-stream "^0.1.1" - lpad-align "^1.0.1" - -sshpk@^1.7.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - dashdash "^1.12.0" - getpass "^0.1.1" - optionalDependencies: - bcrypt-pbkdf "^1.0.0" - ecc-jsbn "~0.1.1" - jsbn "~0.1.0" - tweetnacl "~0.14.0" - -stackframe@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.0.4.tgz#357b24a992f9427cba6b545d96a14ed2cbca187b" - -stat-mode@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/stat-mode/-/stat-mode-0.2.2.tgz#e6c80b623123d7d80cf132ce538f346289072502" - -"statuses@>= 1.3.1 < 2", statuses@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" - -stdin@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/stdin/-/stdin-0.0.1.tgz#d3041981aaec3dfdbc77a1b38d6372e38f5fb71e" - -stdout-stream@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b" - dependencies: - readable-stream "^2.0.1" - -stream-browserify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-combiner2@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.1.1.tgz#fb4d8a1420ea362764e21ad4780397bebcb41cbe" - dependencies: - duplexer2 "~0.1.0" - readable-stream "^2.0.2" - -stream-combiner@^0.2.1: - version "0.2.2" - resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.2.2.tgz#aec8cbac177b56b6f4fa479ced8c1912cee52858" - dependencies: - duplexer "~0.1.1" - through "~2.3.4" - -stream-http@^2.3.1: - version "2.7.2" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.7.2.tgz#40a050ec8dc3b53b33d9909415c02c0bf1abfbad" - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.2.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - -strict-uri-encode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - -string-length@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-1.0.1.tgz#56970fb1c38558e9e70b728bf3de269ac45adfac" - dependencies: - strip-ansi "^3.0.0" - -string-width@^1.0.1, string-width@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -string-width@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string_decoder@^0.10.25, string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - -string_decoder@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" - dependencies: - safe-buffer "~5.1.0" - -stringstream@~0.0.4: - version "0.0.5" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - dependencies: - ansi-regex "^3.0.0" - -strip-bom-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz#e7144398577d51a6bed0fa1994fa05f43fd988ee" - dependencies: - first-chunk-stream "^1.0.0" - strip-bom "^2.0.0" - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - dependencies: - is-utf8 "^0.2.0" - -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - -strip-dirs@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/strip-dirs/-/strip-dirs-1.1.1.tgz#960bbd1287844f3975a4558aa103a8255e2456a0" - dependencies: - chalk "^1.0.0" - get-stdin "^4.0.1" - is-absolute "^0.1.5" - is-natural-number "^2.0.0" - minimist "^1.1.0" - sum-up "^1.0.1" - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - dependencies: - get-stdin "^4.0.1" - -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - -strip-outer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-outer/-/strip-outer-1.0.0.tgz#aac0ba60d2e90c5d4f275fd8869fd9a2d310ffb8" - dependencies: - escape-string-regexp "^1.0.2" - -style-loader@^0.18.1: - version "0.18.2" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.18.2.tgz#cc31459afbcd6d80b7220ee54b291a9fd66ff5eb" - dependencies: - loader-utils "^1.0.2" - schema-utils "^0.3.0" - -style-search@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902" - -stylefmt@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/stylefmt/-/stylefmt-6.0.0.tgz#c851e9c2d78b8a99502f74ba3d863b30163eec93" - dependencies: - chalk "^1.1.3" - css-color-list "^0.0.1" - diff "^3.2.0" - editorconfig "^0.13.2" - globby "^6.1.0" - minimist "^1.2.0" - postcss "^6.0.1" - postcss-scss "^1.0.0" - postcss-sorting "^2.1.0" - postcss-value-parser "^3.3.0" - stdin "^0.0.1" - stylelint "^7.10.1" - stylelint-order "^0.4.4" - -stylehacks@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-2.3.2.tgz#64c83e0438a68c9edf449e8c552a7d9ab6009b0b" - dependencies: - browserslist "^1.1.3" - chalk "^1.1.1" - log-symbols "^1.0.2" - minimist "^1.2.0" - plur "^2.1.2" - postcss "^5.0.18" - postcss-reporter "^1.3.3" - postcss-selector-parser "^2.0.0" - read-file-stdin "^0.2.1" - text-table "^0.2.0" - write-file-stdout "0.0.2" - -stylelint-order@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/stylelint-order/-/stylelint-order-0.4.4.tgz#db7dfca0541b5062010c7e2e21e745791fc088ac" - dependencies: - lodash "^4.17.4" - postcss "^5.2.16" - stylelint "^7.9.0" - -stylelint@^7.10.1, stylelint@^7.9.0: - version "7.13.0" - resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-7.13.0.tgz#111f97b6da72e775c80800d6bb6f5f869997785d" - dependencies: - autoprefixer "^6.0.0" - balanced-match "^0.4.0" - chalk "^2.0.1" - colorguard "^1.2.0" - cosmiconfig "^2.1.1" - debug "^2.6.0" - doiuse "^2.4.1" - execall "^1.0.0" - file-entry-cache "^2.0.0" - get-stdin "^5.0.0" - globby "^6.0.0" - globjoin "^0.1.4" - html-tags "^2.0.0" - ignore "^3.2.0" - imurmurhash "^0.1.4" - known-css-properties "^0.2.0" - lodash "^4.17.4" - log-symbols "^1.0.2" - mathml-tag-names "^2.0.0" - meow "^3.3.0" - micromatch "^2.3.11" - normalize-selector "^0.2.0" - pify "^2.3.0" - postcss "^5.0.20" - postcss-less "^0.14.0" - postcss-media-query-parser "^0.2.0" - postcss-reporter "^3.0.0" - postcss-resolve-nested-selector "^0.1.1" - postcss-scss "^0.4.0" - postcss-selector-parser "^2.1.1" - postcss-value-parser "^3.1.1" - resolve-from "^3.0.0" - specificity "^0.3.0" - string-width "^2.0.0" - style-search "^0.1.0" - stylehacks "^2.3.2" - sugarss "^0.2.0" - svg-tags "^1.0.0" - table "^4.0.1" - -sugarss@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/sugarss/-/sugarss-0.2.0.tgz#ac34237563327c6ff897b64742bf6aec190ad39e" - dependencies: - postcss "^5.2.4" - -sum-up@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sum-up/-/sum-up-1.0.3.tgz#1c661f667057f63bcb7875aa1438bc162525156e" - dependencies: - chalk "^1.0.0" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - -supports-color@^3.1.1, supports-color@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - dependencies: - has-flag "^1.0.0" - -supports-color@^4.0.0, supports-color@^4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.2.1.tgz#65a4bb2631e90e02420dba5554c375a4754bb836" - dependencies: - has-flag "^2.0.0" - -supports-color@^4.4.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" - dependencies: - has-flag "^2.0.0" - -svg-tags@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764" - -svgo@^0.7.0: - version "0.7.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" - dependencies: - coa "~1.0.1" - colors "~1.1.2" - csso "~2.3.1" - js-yaml "~3.7.0" - mkdirp "~0.5.1" - sax "~1.2.1" - whet.extend "~0.9.9" - -synesthesia@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/synesthesia/-/synesthesia-1.0.1.tgz#5ef95ea548c0d5c6e6f9bb4b0d0731dff864a777" - dependencies: - css-color-names "0.0.3" - -table@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/table/-/table-4.0.1.tgz#a8116c133fac2c61f4a420ab6cdf5c4d61f0e435" - dependencies: - ajv "^4.7.0" - ajv-keywords "^1.0.0" - chalk "^1.1.1" - lodash "^4.0.0" - slice-ansi "0.0.4" - string-width "^2.0.0" - -tapable@^0.2.7: - version "0.2.8" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.8.tgz#99372a5c999bf2df160afc0d74bed4f47948cd22" - -tar-pack@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" - dependencies: - debug "^2.2.0" - fstream "^1.0.10" - fstream-ignore "^1.0.5" - once "^1.3.3" - readable-stream "^2.1.4" - rimraf "^2.5.1" - tar "^2.2.1" - uid-number "^0.0.6" - -tar-stream@^1.1.1: - version "1.5.4" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.5.4.tgz#36549cf04ed1aee9b2a30c0143252238daf94016" - dependencies: - bl "^1.0.0" - end-of-stream "^1.0.0" - readable-stream "^2.0.0" - xtend "^4.0.0" - -tar@^2.0.0, tar@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" - dependencies: - block-stream "*" - fstream "^1.0.2" - inherits "2" - -temp-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" - -tempfile@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/tempfile/-/tempfile-1.1.1.tgz#5bcc4eaecc4ab2c707d8bc11d99ccc9a2cb287f2" - dependencies: - os-tmpdir "^1.0.0" - uuid "^2.0.1" - -tempfile@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/tempfile/-/tempfile-2.0.0.tgz#6b0446856a9b1114d1856ffcbe509cccb0977265" - dependencies: - temp-dir "^1.0.0" - uuid "^3.0.1" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - -through2-filter@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-2.0.0.tgz#60bc55a0dacb76085db1f9dae99ab43f83d622ec" - dependencies: - through2 "~2.0.0" - xtend "~4.0.0" - -through2@^0.6.0, through2@^0.6.1, through2@^0.6.3, through2@~0.6.1: - version "0.6.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" - dependencies: - readable-stream ">=1.0.33-1 <1.1.0-0" - xtend ">=4.0.0 <4.1.0-0" - -through2@^2.0.0, through2@~2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - dependencies: - readable-stream "^2.1.5" - xtend "~4.0.1" - -"through@>=2.2.7 <3", through@~2.3.4, through@~2.3.6: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - -thunky@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-0.1.0.tgz#bf30146824e2b6e67b0f2d7a4ac8beb26908684e" - -time-stamp@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" - -time-stamp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-2.0.0.tgz#95c6a44530e15ba8d6f4a3ecb8c3a3fac46da357" - -timed-out@^3.0.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-3.1.3.tgz#95860bfcc5c76c277f8f8326fd0f5b2e20eba217" - -timers-browserify@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.4.tgz#96ca53f4b794a5e7c0e1bd7cc88a372298fa01e6" - dependencies: - setimmediate "^1.0.4" - -tiny-emitter@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.0.2.tgz#82d27468aca5ade8e5fd1e6d22b57dd43ebdfb7c" - -to-absolute-glob@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz#1cdfa472a9ef50c239ee66999b662ca0eb39937f" - dependencies: - extend-shallow "^2.0.1" - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - -tough-cookie@~2.3.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" - dependencies: - punycode "^1.4.1" - -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - -trim-repeated@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-repeated/-/trim-repeated-1.0.0.tgz#e3646a2ea4e891312bf7eace6cfb05380bc01c21" - dependencies: - escape-string-regexp "^1.0.2" - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - -tunnel-agent@^0.4.0: - version "0.4.3" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - -type-is@~1.6.15: - version "1.6.15" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" - dependencies: - media-typer "0.3.0" - mime-types "~2.1.15" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - -uglify-js@3.0.x: - version "3.0.28" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.0.28.tgz#96b8495f0272944787b5843a1679aa326640d5f7" - dependencies: - commander "~2.11.0" - source-map "~0.5.1" - -uglify-js@^2.8.28, uglify-js@^2.8.29: - version "2.8.29" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" - dependencies: - source-map "~0.5.1" - yargs "~3.10.0" - optionalDependencies: - uglify-to-browserify "~1.0.0" - -uglify-to-browserify@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" - -uglifyjs-webpack-plugin@^0.4.6: - version "0.4.6" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz#b951f4abb6bd617e66f63eb891498e391763e309" - dependencies: - source-map "^0.5.6" - uglify-js "^2.8.29" - webpack-sources "^1.0.1" - -uid-number@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - -uniqid@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.1.tgz#89220ddf6b751ae52b5f72484863528596bb84c1" - dependencies: - macaddress "^0.2.8" - -uniqs@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - -unique-stream@^2.0.2: - version "2.2.1" - resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.2.1.tgz#5aa003cfbe94c5ff866c4e7d668bb1c4dbadb369" - dependencies: - json-stable-stringify "^1.0.0" - through2-filter "^2.0.0" - -units-css@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/units-css/-/units-css-0.4.0.tgz#d6228653a51983d7c16ff28f8b9dc3b1ffed3a07" - dependencies: - isnumeric "^0.2.0" - viewport-dimensions "^0.2.0" - -universalify@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.1.tgz#fa71badd4437af4c148841e3b3b165f9e9e590b7" - -unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - -unzip-response@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" - -upper-case@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - -urix@^0.1.0, urix@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - -url-parse-lax@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" - dependencies: - prepend-http "^1.0.1" - -url-parse@1.0.x: - version "1.0.5" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b" - dependencies: - querystringify "0.0.x" - requires-port "1.0.x" - -url-parse@^1.1.8: - version "1.1.9" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.1.9.tgz#c67f1d775d51f0a18911dd7b3ffad27bb9e5bd19" - dependencies: - querystringify "~1.0.0" - requires-port "1.0.x" - -url-regex@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/url-regex/-/url-regex-3.2.0.tgz#dbad1e0c9e29e105dd0b1f09f6862f7fdb482724" - dependencies: - ip-regex "^1.0.1" - -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - dependencies: - punycode "1.3.2" - querystring "0.2.0" - -util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - -util@0.10.3, util@^0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - dependencies: - inherits "2.0.1" - -utils-merge@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" - -uuid@^2.0.1, uuid@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" - -uuid@^3.0.0, uuid@^3.0.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" - -vali-date@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/vali-date/-/vali-date-1.0.0.tgz#1b904a59609fb328ef078138420934f6b86709a6" - -validate-npm-package-license@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" - dependencies: - spdx-correct "~1.0.0" - spdx-expression-parse "~1.0.0" - -vary@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" - -vendors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.1.tgz#37ad73c8ee417fb3d580e785312307d274847f22" - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -viewport-dimensions@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/viewport-dimensions/-/viewport-dimensions-0.2.0.tgz#de740747db5387fd1725f5175e91bac76afdf36c" - -vinyl-assign@^1.0.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/vinyl-assign/-/vinyl-assign-1.2.1.tgz#4d198891b5515911d771a8cd9c5480a46a074a45" - dependencies: - object-assign "^4.0.1" - readable-stream "^2.0.0" - -vinyl-fs@^2.2.0: - version "2.4.4" - resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-2.4.4.tgz#be6ff3270cb55dfd7d3063640de81f25d7532239" - dependencies: - duplexify "^3.2.0" - glob-stream "^5.3.2" - graceful-fs "^4.0.0" - gulp-sourcemaps "1.6.0" - is-valid-glob "^0.3.0" - lazystream "^1.0.0" - lodash.isequal "^4.0.0" - merge-stream "^1.0.0" - mkdirp "^0.5.0" - object-assign "^4.0.0" - readable-stream "^2.0.4" - strip-bom "^2.0.0" - strip-bom-stream "^1.0.0" - through2 "^2.0.0" - through2-filter "^2.0.0" - vali-date "^1.0.0" - vinyl "^1.0.0" - -vinyl@^0.4.3: - version "0.4.6" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847" - dependencies: - clone "^0.2.0" - clone-stats "^0.0.1" - -vinyl@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde" - dependencies: - clone "^1.0.0" - clone-stats "^0.0.1" - replace-ext "0.0.1" - -vinyl@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-1.2.0.tgz#5c88036cf565e5df05558bfc911f8656df218884" - dependencies: - clone "^1.0.0" - clone-stats "^0.0.1" - replace-ext "0.0.1" - -vm-browserify@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" - dependencies: - indexof "0.0.1" - -vue-hot-reload-api@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.2.0.tgz#9a21b35ced3634434a43ee80efb7350ea8fb206d" - -vue-loader@^13.0.5: - version "13.3.0" - resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-13.3.0.tgz#3bf837d490ba5dea6fc07e0835ffa6c688c8af33" - dependencies: - consolidate "^0.14.0" - hash-sum "^1.0.2" - loader-utils "^1.1.0" - lru-cache "^4.1.1" - postcss "^6.0.8" - postcss-load-config "^1.1.0" - postcss-selector-parser "^2.0.0" - prettier "^1.7.0" - resolve "^1.4.0" - source-map "^0.6.1" - vue-hot-reload-api "^2.2.0" - vue-style-loader "^3.0.0" - vue-template-es2015-compiler "^1.6.0" - -vue-style-loader@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-3.0.1.tgz#c8b639bb2f24baf9d78274dc17e4f264c1deda08" - dependencies: - hash-sum "^1.0.2" - loader-utils "^1.0.2" - -vue-template-compiler@^2.0.0: - version "2.5.2" - resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.5.2.tgz#6f198ebc677b8f804315cd33b91e849315ae7177" - dependencies: - de-indent "^1.0.2" - he "^1.1.0" - -vue-template-es2015-compiler@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.6.0.tgz#dc42697133302ce3017524356a6c61b7b69b4a18" - -vue@^2.5.2: - version "2.5.2" - resolved "https://registry.yarnpkg.com/vue/-/vue-2.5.2.tgz#fd367a87bae7535e47f9dc5c9ec3b496e5feb5a4" - -ware@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/ware/-/ware-1.3.0.tgz#d1b14f39d2e2cb4ab8c4098f756fe4b164e473d4" - dependencies: - wrap-fn "^0.1.0" - -watchpack@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.4.0.tgz#4a1472bcbb952bd0a9bb4036801f954dfb39faac" - dependencies: - async "^2.1.2" - chokidar "^1.7.0" - graceful-fs "^4.1.2" - -wbuf@^1.1.0, wbuf@^1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.2.tgz#d697b99f1f59512df2751be42769c1580b5801fe" - dependencies: - minimalistic-assert "^1.0.0" - -webpack-chunk-hash@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/webpack-chunk-hash/-/webpack-chunk-hash-0.4.0.tgz#6b40c3070fbc9ff0cfe0fe781c7174af6c7c16a4" - -webpack-dev-middleware@^1.11.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.12.0.tgz#d34efefb2edda7e1d3b5dbe07289513219651709" - dependencies: - memory-fs "~0.4.1" - mime "^1.3.4" - path-is-absolute "^1.0.0" - range-parser "^1.0.3" - time-stamp "^2.0.0" - -webpack-dev-server@^2.5.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-2.7.1.tgz#21580f5a08cd065c71144cf6f61c345bca59a8b8" - dependencies: - ansi-html "0.0.7" - bonjour "^3.5.0" - chokidar "^1.6.0" - compression "^1.5.2" - connect-history-api-fallback "^1.3.0" - del "^3.0.0" - express "^4.13.3" - html-entities "^1.2.0" - http-proxy-middleware "~0.17.4" - internal-ip "^1.2.0" - ip "^1.1.5" - loglevel "^1.4.1" - opn "4.0.2" - portfinder "^1.0.9" - selfsigned "^1.9.1" - serve-index "^1.7.2" - sockjs "0.3.18" - sockjs-client "1.1.4" - spdy "^3.4.1" - strip-ansi "^3.0.0" - supports-color "^3.1.1" - webpack-dev-middleware "^1.11.0" - yargs "^6.0.0" - -webpack-merge@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.1.0.tgz#6ad72223b3e0b837e531e4597c199f909361511e" - dependencies: - lodash "^4.17.4" - -webpack-notifier@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/webpack-notifier/-/webpack-notifier-1.5.0.tgz#c010007d448cebc34defc99ecf288fa5e8c6baf6" - dependencies: - node-notifier "^4.1.0" - object-assign "^4.1.0" - strip-ansi "^3.0.1" - -webpack-sources@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.0.1.tgz#c7356436a4d13123be2e2426a05d1dad9cbe65cf" - dependencies: - source-list-map "^2.0.0" - source-map "~0.5.3" - -webpack-watch@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/webpack-watch/-/webpack-watch-0.2.0.tgz#cc689871544b3c636ea86d491099898d2670f43a" - dependencies: - chokidar "^1.7.0" - lodash.debounce "^4.0.8" - path "^0.12.7" - -webpack@^3.5.0: - version "3.8.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.8.1.tgz#b16968a81100abe61608b0153c9159ef8bb2bd83" - dependencies: - acorn "^5.0.0" - acorn-dynamic-import "^2.0.0" - ajv "^5.1.5" - ajv-keywords "^2.0.0" - async "^2.1.2" - enhanced-resolve "^3.4.0" - escope "^3.6.0" - interpret "^1.0.0" - json-loader "^0.5.4" - json5 "^0.5.1" - loader-runner "^2.3.0" - loader-utils "^1.1.0" - memory-fs "~0.4.1" - mkdirp "~0.5.0" - node-libs-browser "^2.0.0" - source-map "^0.5.3" - supports-color "^4.2.1" - tapable "^0.2.7" - uglifyjs-webpack-plugin "^0.4.6" - watchpack "^1.4.0" - webpack-sources "^1.0.1" - yargs "^8.0.2" - -websocket-driver@>=0.5.1: - version "0.6.5" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz#5cb2556ceb85f4373c6d8238aa691c8454e13a36" - dependencies: - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.1.tgz#76899499c184b6ef754377c2dbb0cd6cb55d29e7" - -whet.extend@~0.9.9: - version "0.9.9" - resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1" - -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - -which@1, which@^1.0.5, which@^1.2.9: - version "1.3.0" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" - dependencies: - string-width "^1.0.2" - -window-size@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" - -window-size@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" - -wordwrap@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrap-fn@^0.1.0: - version "0.1.5" - resolved "https://registry.yarnpkg.com/wrap-fn/-/wrap-fn-0.1.5.tgz#f21b6e41016ff4a7e31720dbc63a09016bdf9845" - dependencies: - co "3.1.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - -write-file-stdout@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/write-file-stdout/-/write-file-stdout-0.0.2.tgz#c252d7c7c5b1b402897630e3453c7bfe690d9ca1" - -write@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" - dependencies: - mkdirp "^0.5.1" - -xml-char-classes@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d" - -"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@~4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - -y18n@^3.2.0, y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - -yargs-parser@^4.2.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c" - dependencies: - camelcase "^3.0.0" - -yargs-parser@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" - dependencies: - camelcase "^3.0.0" - -yargs-parser@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" - dependencies: - camelcase "^4.1.0" - -yargs-parser@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-8.0.0.tgz#21d476330e5a82279a4b881345bf066102e219c6" - dependencies: - camelcase "^4.1.0" - -yargs@^1.2.6: - version "1.3.3" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-1.3.3.tgz#054de8b61f22eefdb7207059eaef9d6b83fb931a" - -yargs@^10.0.3: - version "10.0.3" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-10.0.3.tgz#6542debd9080ad517ec5048fb454efe9e4d4aaae" - dependencies: - cliui "^3.2.0" - decamelize "^1.1.1" - find-up "^2.1.0" - get-caller-file "^1.0.1" - os-locale "^2.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^8.0.0" - -yargs@^3.5.4: - version "3.32.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" - dependencies: - camelcase "^2.0.1" - cliui "^3.0.3" - decamelize "^1.1.1" - os-locale "^1.4.0" - string-width "^1.0.1" - window-size "^0.1.4" - y18n "^3.2.0" - -yargs@^6.0.0: - version "6.6.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^4.2.0" - -yargs@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^5.0.0" - -yargs@^8.0.1, yargs@^8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360" - dependencies: - camelcase "^4.1.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^2.0.0" - read-pkg-up "^2.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^7.0.0" - -yargs@~3.10.0: - version "3.10.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" - dependencies: - camelcase "^1.0.2" - cliui "^2.1.0" - decamelize "^1.0.0" - window-size "0.1.0" - -yauzl@^2.2.1: - version "2.8.0" - resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.8.0.tgz#79450aff22b2a9c5a41ef54e02db907ccfbf9ee2" - dependencies: - buffer-crc32 "~0.2.3" - fd-slicer "~1.0.1" From eacc4635b6842fe59a07b4047f93465b146040ad Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Wed, 28 Feb 2018 20:00:25 -0500 Subject: [PATCH 15/16] Match apply rules against a lookup table instead of searching --- __tests__/applyAtRule.test.js | 16 ++++++++++ src/lib/substituteClassApplyAtRules.js | 41 ++++++++++++++++---------- 2 files changed, 42 insertions(+), 15 deletions(-) diff --git a/__tests__/applyAtRule.test.js b/__tests__/applyAtRule.test.js index 8ad5af4dc2b3..f07e90ff3bc0 100644 --- a/__tests__/applyAtRule.test.js +++ b/__tests__/applyAtRule.test.js @@ -80,6 +80,22 @@ test('it fails if the class does not exist', () => { }) }) +test('applying classes that are defined in a media query is not supported', () => { + const input = ` + @media (min-width: 300px) { + .a { color: blue; } + } + + .b { + @apply .a; + } + ` + expect.assertions(1) + return run(input).catch(e => { + expect(e).toMatchObject({ name: 'CssSyntaxError' }) + }) +}) + test('applying classes that are ever used in a media query is not supported', () => { const input = ` .a { diff --git a/src/lib/substituteClassApplyAtRules.js b/src/lib/substituteClassApplyAtRules.js index 35a5b4bf04c3..cea7167fbeb0 100644 --- a/src/lib/substituteClassApplyAtRules.js +++ b/src/lib/substituteClassApplyAtRules.js @@ -2,24 +2,26 @@ import _ from 'lodash' import postcss from 'postcss' import escapeClassName from '../util/escapeClassName' -function normalizeClassName(className) { - return `.${escapeClassName(_.trimStart(className, '.'))}` -} - -function findMixin(css, mixin, onError) { - const matches = [] +function buildClassTable(css) { + const classTable = {} css.walkRules(rule => { - if (rule.selectors.includes(mixin)) { - if (rule.parent.type !== 'root') { - // prettier-ignore - onError(`\`@apply\` cannot be used with ${mixin} because ${mixin} is nested inside of an at-rule (@${rule.parent.name}).`) - } - - matches.push(rule) + if (!_.has(classTable, rule.selector)) { + classTable[rule.selector] = [] } + classTable[rule.selector].push(rule) }) + return classTable +} + +function normalizeClassName(className) { + return `.${escapeClassName(_.trimStart(className, '.'))}` +} + +function findMixin(classTable, mixin, onError) { + const matches = _.get(classTable, mixin, []) + if (_.isEmpty(matches)) { // prettier-ignore onError(`\`@apply\` cannot be used with \`${mixin}\` because \`${mixin}\` either cannot be found, or it's actual definition includes a pseudo-selector like :hover, :active, etc. If you're sure that \`${mixin}\` exists, make sure that any \`@import\` statements are being properly processed *before* Tailwind CSS sees your CSS, as \`@apply\` can only be used for classes in the same CSS tree.`) @@ -30,11 +32,20 @@ function findMixin(css, mixin, onError) { onError(`\`@apply\` cannot be used with ${mixin} because ${mixin} is included in multiple rulesets.`) } - return _.flatten(matches.map(match => match.clone().nodes)) + const [match] = matches + + if (match.parent.type !== 'root') { + // prettier-ignore + onError(`\`@apply\` cannot be used with ${mixin} because ${mixin} is nested inside of an at-rule (@${match.parent.name}).`) + } + + return match.clone().nodes } export default function() { return function(css) { + const classLookup = buildClassTable(css) + css.walkRules(rule => { rule.walkAtRules('apply', atRule => { const mixins = postcss.list.space(atRule.params) @@ -53,7 +64,7 @@ export default function() { const decls = _(classes) .reject(mixin => mixin === '!important') .flatMap(mixin => { - return findMixin(css, normalizeClassName(mixin), message => { + return findMixin(classLookup, normalizeClassName(mixin), message => { throw atRule.error(message) }) }) From c8fbeab11594ff2117e2b99e94a4ab4d2e550d5c Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Thu, 1 Mar 2018 08:48:19 -0500 Subject: [PATCH 16/16] 0.4.2 --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 274b513fb60d..2800820aa8a1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "tailwindcss", - "version": "0.4.1", + "version": "0.4.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 8fb583dd411f..1d01dd4a77bc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tailwindcss", - "version": "0.4.1", + "version": "0.4.2", "description": "A utility-first CSS framework for rapidly building custom user interfaces.", "license": "MIT", "main": "lib/index.js",