From 056fdbdce65c8fba139ff0fbffca5e332df91025 Mon Sep 17 00:00:00 2001 From: Beau Simensen Date: Thu, 2 May 2013 21:36:46 -0500 Subject: [PATCH 01/90] Updated deps, removed stupid framework secret. --- app/config/sculpin_kernel.yml | 2 - composer.json | 6 +- composer.lock | 544 +++------------------------------- 3 files changed, 45 insertions(+), 507 deletions(-) delete mode 100644 app/config/sculpin_kernel.yml diff --git a/app/config/sculpin_kernel.yml b/app/config/sculpin_kernel.yml deleted file mode 100644 index 1f54338..0000000 --- a/app/config/sculpin_kernel.yml +++ /dev/null @@ -1,2 +0,0 @@ -framework: - secret: not so secret but required to be set diff --git a/composer.json b/composer.json index 44514e3..cbc45ad 100644 --- a/composer.json +++ b/composer.json @@ -17,11 +17,11 @@ "components/bootstrap": "~2.3.1", "components/jquery": "~1.9.1", "components/highlightjs": "~7.3.0", - "components/font-awesome": "~3.0.2@dev", + "components/font-awesome": "~3.0.2", "dflydev/embedded-composer": "@dev", - "michelf/php-markdown": "@beta", - "composer/composer": "@dev" + "composer/composer": "@dev", + "symfony/console": "@dev" }, "config": { "component-dir": "source/components" diff --git a/composer.lock b/composer.lock index 3f13604..34b07eb 100644 --- a/composer.lock +++ b/composer.lock @@ -3,7 +3,7 @@ "This file locks the dependencies of your project to a known state", "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file" ], - "hash": "57b53cd2585311edf325ca0a78a83ae5", + "hash": "a15eaad6b33a4f9da02587e69cb17b83", "packages": [ { "name": "components/bootstrap", @@ -62,16 +62,16 @@ }, { "name": "components/font-awesome", - "version": "dev-master", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/components/font-awesome.git", - "reference": "df0a0115b67683f192cc52b0ae9e8cc01ac8d651" + "reference": "3.0.2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/components/font-awesome/zipball/df0a0115b67683f192cc52b0ae9e8cc01ac8d651", - "reference": "df0a0115b67683f192cc52b0ae9e8cc01ac8d651", + "url": "https://api.github.com/repos/components/font-awesome/zipball/3.0.2", + "reference": "3.0.2", "shasum": "" }, "require": { @@ -99,7 +99,7 @@ "OFL-1.1" ], "description": "The iconic font designed for use with Twitter Bootstrap.", - "time": "2013-04-26 16:32:48" + "time": "2013-05-02 22:22:19" }, { "name": "components/highlightjs", @@ -197,19 +197,19 @@ "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "3aa78431464a695f0c707e33413a0f81a9347a0b" + "reference": "a7e88f7a80970c7b867bf5f5769a13446c75322a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/3aa78431464a695f0c707e33413a0f81a9347a0b", - "reference": "3aa78431464a695f0c707e33413a0f81a9347a0b", + "url": "https://api.github.com/repos/composer/composer/zipball/a7e88f7a80970c7b867bf5f5769a13446c75322a", + "reference": "a7e88f7a80970c7b867bf5f5769a13446c75322a", "shasum": "" }, "require": { "justinrainbow/json-schema": "1.1.*", "php": ">=5.3.2", "seld/jsonlint": "1.*", - "symfony/console": ">=2.1,<3.0", + "symfony/console": ">=2.3,<3.0", "symfony/finder": ">=2.1,<3.0", "symfony/process": ">=2.1,<3.0" }, @@ -258,7 +258,7 @@ "dependency", "package" ], - "time": "2013-04-26 09:02:53" + "time": "2013-05-02 15:43:45" }, { "name": "dflydev/ant-path-matcher", @@ -484,16 +484,16 @@ "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-embedded-composer.git", - "reference": "ec6aac4de920533e98019dba21b0befcfc4a3c49" + "reference": "1d8634f7825c03b298a78fc263be673a9fad5ec9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dflydev/dflydev-embedded-composer/zipball/ec6aac4de920533e98019dba21b0befcfc4a3c49", - "reference": "ec6aac4de920533e98019dba21b0befcfc4a3c49", + "url": "https://api.github.com/repos/dflydev/dflydev-embedded-composer/zipball/1d8634f7825c03b298a78fc263be673a9fad5ec9", + "reference": "1d8634f7825c03b298a78fc263be673a9fad5ec9", "shasum": "" }, "require": { - "composer/composer": "1.*@dev", + "composer/composer": "1.0.*@dev", "php": ">=5.3.2", "seld/jsonlint": "1.*" }, @@ -503,11 +503,12 @@ "dflydev/embedded-composer-core": "self.version" }, "require-dev": { - "symfony/console": ">=2.1,<3.0", + "phpunit/phpunit": ">=3.7.10.0,<3.8", + "symfony/console": ">=2.3,<3.0", "symfony/http-kernel": ">=2.1,<3.0" }, "suggest": { - "symfony/console": "~2.1", + "symfony/console": "~2.3", "symfony/http-kernel": "~2.1" }, "type": "library", @@ -543,7 +544,7 @@ "embedded", "extensibility" ], - "time": "2012-12-14 05:31:26" + "time": "2013-05-02 22:17:45" }, { "name": "dflydev/placeholder-resolver", @@ -650,75 +651,6 @@ ], "time": "2012-11-09 16:45:28" }, - { - "name": "doctrine/common", - "version": "2.3.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/common", - "reference": "2.3.0" - }, - "dist": { - "type": "zip", - "url": "https://github.com/doctrine/common/zipball/2.3.0", - "reference": "2.3.0", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.3.x-dev" - } - }, - "autoload": { - "psr-0": { - "Doctrine\\Common": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com", - "homepage": "http://www.jwage.com/" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com", - "homepage": "http://www.instaclick.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com", - "homepage": "https://github.com/schmittjoh", - "role": "Developer of wrapped JMSSerializerBundle" - } - ], - "description": "Common Library for Doctrine projects", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "annotations", - "collections", - "eventmanager", - "persistence", - "spl" - ], - "time": "2012-09-19 22:55:18" - }, { "name": "evenement/evenement", "version": "v1.0.0", @@ -1349,16 +1281,16 @@ }, { "name": "robloach/component-installer", - "version": "0.0.6", + "version": "0.0.7", "source": { "type": "git", "url": "https://github.com/RobLoach/component-installer.git", - "reference": "0.0.6" + "reference": "0.0.7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/RobLoach/component-installer/zipball/0.0.6", - "reference": "0.0.6", + "url": "https://api.github.com/repos/RobLoach/component-installer/zipball/0.0.7", + "reference": "0.0.7", "shasum": "" }, "require": { @@ -1366,8 +1298,7 @@ "php": ">=5.3.2" }, "require-dev": { - "composer/composer": "1.0.*@dev", - "phpunit/phpunit": "3.7.*" + "composer/composer": "1.0.*@dev" }, "type": "composer-installer", "extra": { @@ -1390,7 +1321,7 @@ } ], "description": "Allows installation of Components via Composer.", - "time": "2013-04-22 04:09:17" + "time": "2013-05-02 22:37:51" }, { "name": "sculpin/sculpin", @@ -1398,12 +1329,12 @@ "source": { "type": "git", "url": "https://github.com/sculpin/sculpin.git", - "reference": "4c60deb5b5f2916df4f41a9e119cbf90813f7280" + "reference": "6aa2a89de21b4873227ded0c045648fd90d46eee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sculpin/sculpin/zipball/4c60deb5b5f2916df4f41a9e119cbf90813f7280", - "reference": "4c60deb5b5f2916df4f41a9e119cbf90813f7280", + "url": "https://api.github.com/repos/sculpin/sculpin/zipball/6aa2a89de21b4873227ded0c045648fd90d46eee", + "reference": "6aa2a89de21b4873227ded0c045648fd90d46eee", "shasum": "" }, "require": { @@ -1413,21 +1344,19 @@ "dflydev/dot-access-configuration": "1.*", "dflydev/embedded-composer": "1.0.*@dev", "dflydev/symfony-finder-factory": "1.*", - "michelf/php-markdown": "1.3.*@beta", + "michelf/php-markdown": "1.3.*", "netcarver/textile": "3.5.*", "php": ">=5.3.2", "react/http": "0.2.*", "symfony/class-loader": ">=2.1,<3.0", "symfony/config": ">=2.1,<3.0", - "symfony/console": ">=2.1,<3.0", + "symfony/console": ">=2.3,<3.0", "symfony/dependency-injection": ">=2.1,<3.0", "symfony/event-dispatcher": ">=2.1,<3.0", "symfony/filesystem": ">=2.1,<3.0", "symfony/finder": ">=2.1,<3.0", - "symfony/framework-bundle": ">=2.1,<3.0", "symfony/http-kernel": ">=2.1,<3.0", "symfony/process": ">=2.1,<3.0", - "symfony/twig-bundle": ">=2.1,<3.0", "symfony/yaml": ">=2.1,<3.0", "twig/twig": ">=1.9,<2.0" }, @@ -1481,7 +1410,7 @@ "site", "static" ], - "time": "2013-04-26 18:22:19" + "time": "2013-05-03 02:17:04" }, { "name": "seld/jsonlint", @@ -1629,26 +1558,29 @@ }, { "name": "symfony/console", - "version": "v2.2.1", + "version": "dev-master", "target-dir": "Symfony/Component/Console", "source": { "type": "git", "url": "https://github.com/symfony/Console.git", - "reference": "v2.2.1" + "reference": "v2.3.0-BETA1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Console/zipball/v2.2.1", - "reference": "v2.2.1", + "url": "https://api.github.com/repos/symfony/Console/zipball/v2.3.0-BETA1", + "reference": "v2.3.0-BETA1", "shasum": "" }, "require": { "php": ">=5.3.3" }, + "require-dev": { + "symfony/event-dispatcher": ">=2.1,<3.0" + }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1672,7 +1604,7 @@ ], "description": "Symfony Console Component", "homepage": "http://symfony.com", - "time": "2013-03-19 20:48:08" + "time": "2013-04-30 07:16:44" }, { "name": "symfony/dependency-injection", @@ -1877,73 +1809,6 @@ "homepage": "http://symfony.com", "time": "2013-04-01 07:51:50" }, - { - "name": "symfony/framework-bundle", - "version": "v2.2.1", - "target-dir": "Symfony/Bundle/FrameworkBundle", - "source": { - "type": "git", - "url": "https://github.com/symfony/FrameworkBundle.git", - "reference": "v2.2.1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/FrameworkBundle/zipball/v2.2.1", - "reference": "v2.2.1", - "shasum": "" - }, - "require": { - "doctrine/common": ">=2.2,<3.0", - "php": ">=5.3.3", - "symfony/config": ">=2.2,<2.3-dev", - "symfony/dependency-injection": ">=2.0,<3.0", - "symfony/event-dispatcher": ">=2.1,<3.0", - "symfony/filesystem": ">=2.1,<2.3-dev", - "symfony/http-kernel": ">=2.2,<2.3-dev", - "symfony/routing": ">=2.2,<2.3-dev", - "symfony/stopwatch": ">=2.2,<2.3-dev", - "symfony/templating": ">=2.1,<3.0", - "symfony/translation": ">=2.2,<2.3-dev" - }, - "require-dev": { - "symfony/finder": ">=2.0,<3.0", - "symfony/security": ">=2.2,<2.3-dev" - }, - "suggest": { - "symfony/console": "2.2.*", - "symfony/finder": "2.2.*", - "symfony/form": "2.2.*", - "symfony/validator": "2.2.*" - }, - "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "autoload": { - "psr-0": { - "Symfony\\Bundle\\FrameworkBundle\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony FrameworkBundle", - "homepage": "http://symfony.com", - "time": "2013-04-06 10:15:43" - }, { "name": "symfony/http-foundation", "version": "v2.2.1", @@ -2110,330 +1975,6 @@ "homepage": "http://symfony.com", "time": "2013-03-23 07:49:54" }, - { - "name": "symfony/routing", - "version": "v2.2.1", - "target-dir": "Symfony/Component/Routing", - "source": { - "type": "git", - "url": "https://github.com/symfony/Routing.git", - "reference": "v2.2.1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Routing/zipball/v2.2.1", - "reference": "v2.2.1", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "doctrine/common": ">=2.2,<3.0", - "psr/log": ">=1.0,<2.0", - "symfony/config": ">=2.2,<2.3-dev", - "symfony/yaml": ">=2.0,<3.0" - }, - "suggest": { - "doctrine/common": "~2.2", - "symfony/config": "2.2.*", - "symfony/yaml": "2.2.*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "autoload": { - "psr-0": { - "Symfony\\Component\\Routing\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony Routing Component", - "homepage": "http://symfony.com", - "time": "2013-03-23 12:03:22" - }, - { - "name": "symfony/stopwatch", - "version": "v2.2.1", - "target-dir": "Symfony/Component/Stopwatch", - "source": { - "type": "git", - "url": "https://github.com/symfony/Stopwatch.git", - "reference": "v2.2.1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Stopwatch/zipball/v2.2.1", - "reference": "v2.2.1", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "autoload": { - "psr-0": { - "Symfony\\Component\\Stopwatch\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony Stopwatch Component", - "homepage": "http://symfony.com", - "time": "2013-01-04 16:58:00" - }, - { - "name": "symfony/templating", - "version": "v2.2.1", - "target-dir": "Symfony/Component/Templating", - "source": { - "type": "git", - "url": "https://github.com/symfony/Templating.git", - "reference": "v2.2.1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Templating/zipball/v2.2.1", - "reference": "v2.2.1", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "autoload": { - "psr-0": { - "Symfony\\Component\\Templating\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony Templating Component", - "homepage": "http://symfony.com", - "time": "2013-01-17 15:25:59" - }, - { - "name": "symfony/translation", - "version": "v2.2.1", - "target-dir": "Symfony/Component/Translation", - "source": { - "type": "git", - "url": "https://github.com/symfony/Translation.git", - "reference": "v2.2.1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Translation/zipball/v2.2.1", - "reference": "v2.2.1", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/config": ">=2.0,<2.3-dev", - "symfony/yaml": ">=2.2,<3.0" - }, - "suggest": { - "symfony/config": "2.2.*", - "symfony/yaml": "2.2.*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "autoload": { - "psr-0": { - "Symfony\\Component\\Translation\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony Translation Component", - "homepage": "http://symfony.com", - "time": "2013-04-01 08:06:05" - }, - { - "name": "symfony/twig-bridge", - "version": "v2.2.1", - "target-dir": "Symfony/Bridge/Twig", - "source": { - "type": "git", - "url": "https://github.com/symfony/TwigBridge.git", - "reference": "v2.2.1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/TwigBridge/zipball/v2.2.1", - "reference": "v2.2.1", - "shasum": "" - }, - "require": { - "php": ">=5.3.3", - "twig/twig": ">=1.11.0,<2.0" - }, - "require-dev": { - "symfony/form": "2.2.*", - "symfony/http-kernel": ">=2.2,<2.3-dev", - "symfony/routing": ">=2.2,<2.3-dev", - "symfony/security": ">=2.0,<2.3-dev", - "symfony/templating": ">=2.1,<3.0", - "symfony/translation": ">=2.0,<2.3-dev", - "symfony/yaml": ">=2.0,<3.0" - }, - "suggest": { - "symfony/form": "2.2.*", - "symfony/http-kernel": "2.2.*", - "symfony/routing": "2.2.*", - "symfony/security": "2.2.*", - "symfony/templating": "2.2.*", - "symfony/translation": "2.2.*", - "symfony/yaml": "2.2.*" - }, - "type": "symfony-bridge", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "autoload": { - "psr-0": { - "Symfony\\Bridge\\Twig\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony Twig Bridge", - "homepage": "http://symfony.com", - "time": "2013-03-15 10:14:31" - }, - { - "name": "symfony/twig-bundle", - "version": "v2.2.1", - "target-dir": "Symfony/Bundle/TwigBundle", - "source": { - "type": "git", - "url": "https://github.com/symfony/TwigBundle.git", - "reference": "v2.2.1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/TwigBundle/zipball/v2.2.1", - "reference": "v2.2.1", - "shasum": "" - }, - "require": { - "php": ">=5.3.3", - "symfony/twig-bridge": "2.2.*" - }, - "require-dev": { - "symfony/stopwatch": ">=2.2,<2.3-dev" - }, - "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "autoload": { - "psr-0": { - "Symfony\\Bundle\\TwigBundle\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony TwigBundle", - "homepage": "http://symfony.com", - "time": "2013-02-08 16:10:54" - }, { "name": "symfony/yaml", "version": "v2.2.1", @@ -2540,10 +2081,9 @@ "minimum-stability": "stable", "stability-flags": { "sculpin/sculpin": 20, - "components/font-awesome": 20, "dflydev/embedded-composer": 20, - "michelf/php-markdown": 10, - "composer/composer": 20 + "composer/composer": 20, + "symfony/console": 20 }, "platform": [ From a33ce153925814c358fad7469b32b5ef4e1d0381 Mon Sep 17 00:00:00 2001 From: Igor Wiedler Date: Wed, 8 May 2013 04:02:29 +0200 Subject: [PATCH 02/90] Remove assets:install from publish script --- publish.sh.dist | 1 - 1 file changed, 1 deletion(-) diff --git a/publish.sh.dist b/publish.sh.dist index e761a16..8cd91f3 100755 --- a/publish.sh.dist +++ b/publish.sh.dist @@ -1,5 +1,4 @@ #!/bin/bash vendor/bin/sculpin generate --env=prod || ( echo "Could not generate the site" && exit ) -vendor/bin/sculpin assets:install --env=prod output_prod || ( echo "Could not install assets for the site" && exit ) rsync -avze 'ssh -p 9999' output_prod/ username@stackphp.com:public_html || ( echo "Could not publish the site" && exit ) From 4249f7ac3600b02e8a4be2b930102ceb76d67727 Mon Sep 17 00:00:00 2001 From: Igor Wiedler Date: Wed, 8 May 2013 04:03:29 +0200 Subject: [PATCH 03/90] Change publish script to use fabric --- publish.sh.dist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/publish.sh.dist b/publish.sh.dist index 8cd91f3..a859fea 100755 --- a/publish.sh.dist +++ b/publish.sh.dist @@ -1,4 +1,4 @@ #!/bin/bash vendor/bin/sculpin generate --env=prod || ( echo "Could not generate the site" && exit ) -rsync -avze 'ssh -p 9999' output_prod/ username@stackphp.com:public_html || ( echo "Could not publish the site" && exit ) +fab || ( echo "Could not publish the site" && exit ) From 2f744cb7b18f1ba1a23fff84165ef6e463fd36ff Mon Sep 17 00:00:00 2001 From: Igor Wiedler Date: Wed, 8 May 2013 04:07:32 +0200 Subject: [PATCH 04/90] Add section about how to create your own middleware --- source/index.html | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/source/index.html b/source/index.html index b42307a..6849170 100644 --- a/source/index.html +++ b/source/index.html @@ -74,4 +74,21 @@

Example

$response = $app->handle($request)->send(); $app->terminate($request, $response); + +
+ +
+

Your own middleware

+

+ A stack middleware is just an object that follows these conventions: +

+
    +
  • Implement the HttpKernelInterface
  • +
  • Take the decorated app as the first constructor argument
  • +
  • Decorate the handle call, delegate to the decorated app
  • +
+

+ Yes, leveraging the HTTP abstraction is that easy! +

+
{% endblock %} From 9c9ef197746d2113373ab6444e0ef7b6cb479e0d Mon Sep 17 00:00:00 2001 From: Igor Wiedler Date: Sat, 11 May 2013 17:45:54 +0200 Subject: [PATCH 05/90] Add authors section to the bottom of the index --- source/_views/default.html | 5 ----- source/css/style.css | 22 ++++++++++++++++++++++ source/img/beausimensen.png | Bin 0 -> 10214 bytes source/img/hochchristoph.jpg | Bin 0 -> 2251 bytes source/img/igorwesome.jpeg | Bin 0 -> 1457 bytes source/index.html | 24 ++++++++++++++++++++++++ 6 files changed, 46 insertions(+), 5 deletions(-) create mode 100644 source/img/beausimensen.png create mode 100644 source/img/hochchristoph.jpg create mode 100644 source/img/igorwesome.jpeg diff --git a/source/_views/default.html b/source/_views/default.html index 47664e2..609facf 100644 --- a/source/_views/default.html +++ b/source/_views/default.html @@ -15,16 +15,11 @@ -
-
{% block content_wrapper %}{% block content %}{% endblock %}{% endblock %}
-
- Go stack some middlewares -
diff --git a/source/css/style.css b/source/css/style.css index 29edd8b..6356095 100644 --- a/source/css/style.css +++ b/source/css/style.css @@ -68,3 +68,25 @@ pre code.php { margin-top: 1em; } } + +.authors { + text-align: center; +} + +ul.avatars { + list-style: none; +} + +ul.avatars li { + display: inline-block; + margin-right: 20px; + margin-top: 20px; +} + +ul.avatars li img { + margin-right: 10px; +} + +ul.avatars li a { + text-decoration: none; +} diff --git a/source/img/beausimensen.png b/source/img/beausimensen.png new file mode 100644 index 0000000000000000000000000000000000000000..03c882d2668e2d37e269e56e0457b23cd05a655e GIT binary patch literal 10214 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 gjuLd*JpJ0BHhw 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 own middleware Yes, leveraging the HTTP abstraction is that easy!

+ + {% endblock %} From 6c0d2a5dca9b50e801f90f989e21c895a21c35be Mon Sep 17 00:00:00 2001 From: Beau Simensen Date: Mon, 13 May 2013 17:55:11 -0500 Subject: [PATCH 06/90] Layout changes requested by @igorw --- source/index.html | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/source/index.html b/source/index.html index ce51a0e..b129415 100644 --- a/source/index.html +++ b/source/index.html @@ -25,27 +25,27 @@

What is Stack?

The Toolbox

-
+

Builder

Builder constructs a nested HttpKernelInterface decorator tree. It models it as a stack of middlewares.

-

Learn More

+

Learn More

-
+

Session

Provides a request session for subsequent middlewares. Based on the Silex SessionServiceProvider.

-

Learn More

+

Learn More

-
+
+
+

URL Map

Provides the ability to map paths to specific HttpKernelInterface applications and dispatches accordingly.

-

Learn More

+

Learn More

-
-
-
+

OAuth

Provides experimental OAuth authentication for subsequent middlewares. Leverages PHPoAuthLib.

-

Learn More

+

Learn More

From 6ca967c8f2815d53ec6a164a4f636f5c429b1826 Mon Sep 17 00:00:00 2001 From: Beau Simensen Date: Tue, 14 May 2013 11:09:14 -0500 Subject: [PATCH 07/90] Added Twitter, changed visual display of GitHub + Twitter links. --- source/index.html | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/source/index.html b/source/index.html index b129415..58b5945 100644 --- a/source/index.html +++ b/source/index.html @@ -7,7 +7,14 @@

Stack

Composing HttpKernelInterface middlewares since 2013!

- Find Stack on GitHub +

From b6c645e3bfd3c7fd2df7709c6fe9b5f943482647 Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Fri, 24 May 2013 10:02:45 +0300 Subject: [PATCH 08/90] added link to PHPoAuthLib --- source/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/index.html b/source/index.html index 58b5945..1fb672f 100644 --- a/source/index.html +++ b/source/index.html @@ -51,7 +51,7 @@

URL Map

OAuth

-

Provides experimental OAuth authentication for subsequent middlewares. Leverages PHPoAuthLib.

+

Provides experimental OAuth authentication for subsequent middlewares. Leverages PHPoAuthLib.

Learn More

From 34e45560272ecc1d62b7cb78682c6526c5474e5a Mon Sep 17 00:00:00 2001 From: Igor Wiedler Date: Tue, 4 Jun 2013 15:05:58 +0200 Subject: [PATCH 09/90] Rework the front page to explain the motivation and list the currently supported frameworks --- source/index.html | 74 +++++++++++++++++++++++++++++++++++------------ 1 file changed, 55 insertions(+), 19 deletions(-) diff --git a/source/index.html b/source/index.html index 1fb672f..884984e 100644 --- a/source/index.html +++ b/source/index.html @@ -20,10 +20,63 @@

Stack


+
+

Why?

+

+ Right now there is no easy way to re-use HTTP-specific code in PHP. Accessing superglobals and emitting headers and data as side effects is messy and unpredictable. While frameworks are becoming more decoupled, they still have their own implementation of anything that touches HTTP. +

+

+ We want to fix this. +

+

+ What worked for the Ruby world with Rack (similar interfaces exist for Java, Python, Perl and others) can work for PHP with Stack. +

+
+ +
+

What is Stack?

- Stack is a convention for composing HttpKernelInterface middlewares. It evolved from a blog post titled HttpKernel middlewares in which it was proposed that HttpKernelInterface decorators could be created to mimic functionality similar to that of Rack or other language-specific HTTP interfaces. + Stack is a convention for composing HttpKernelInterface middlewares. Any framework based on Symfony2's HttpKernelInterface can use these middlewares. They allow an application to be extended in a generic way, simply by wrapping objects around the kernel. +

+
+ +
+ +
+

Which frameworks support Stack?

+

+ The following frameworks and apps are using the HttpKernelInterface abstraction and can thus benefit from Stack: +

+ +

+ As more frameworks and apps join in, more re-use will be possible. +

+
+ +
+ +
+

Conventions

+

+ A stack middleware is just an object that follows these conventions: +

+
    +
  • Implement the HttpKernelInterface
  • +
  • Take the decorated app as the first constructor argument
  • +
  • Decorate the handle call, delegate to the decorated app
  • +
+

+ Yes, leveraging the HTTP abstraction is that easy!

@@ -60,7 +113,7 @@

OAuth


-

Example

+

How do I use it?

use Symfony\Component\HttpFoundation\Request;
 use Symfony\Component\HttpKernel\HttpCache\Store;
 
@@ -82,23 +135,6 @@ 

Example

$app->terminate($request, $response);
-
- -
-

Your own middleware

-

- A stack middleware is just an object that follows these conventions: -

-
    -
  • Implement the HttpKernelInterface
  • -
  • Take the decorated app as the first constructor argument
  • -
  • Decorate the handle call, delegate to the decorated app
  • -
-

- Yes, leveraging the HTTP abstraction is that easy! -

-
-

Brought to you by

    From b6fecff3be4941bd9c75f540083a50b7f39fa90b Mon Sep 17 00:00:00 2001 From: Christoph Hochstrasser Date: Tue, 4 Jun 2013 16:19:06 +0200 Subject: [PATCH 10/90] Bump font size, add middleware example code --- source/css/style.css | 17 +++++++++++++++++ source/index.html | 23 +++++++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/source/css/style.css b/source/css/style.css index 6356095..545d17d 100644 --- a/source/css/style.css +++ b/source/css/style.css @@ -1,3 +1,20 @@ +body { + font-size: 18px; +} + +p { + line-height: 1.4; + margin: 0 0 1em; +} + +code { + font-size: 17px; +} + +li { + margin: 0 0 5px; +} + .jumbotron { text-align: center; margin: 2em 0; diff --git a/source/index.html b/source/index.html index 884984e..9cac3bf 100644 --- a/source/index.html +++ b/source/index.html @@ -75,6 +75,29 @@

    Conventions

  • Take the decorated app as the first constructor argument
  • Decorate the handle call, delegate to the decorated app
+ +

A simple middleware could look like this:

+
use Symfony\Component\HttpFoundation\Request;
+use Symfony\Component\HttpKernel\HttpKernelInterface;
+
+class MyMiddleware implements HttpKernelInterface
+{
+    protected $app;
+
+    public function __construct(HttpKernelInterface $app)
+    {
+        $this->app = $app;
+    }
+
+    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
+    {
+        $response = $this->app->handle($request, $type, $catch);
+        $response->setContent($response->getContent() . "YOLO!");
+
+        return $response;
+    }
+}
+

Yes, leveraging the HTTP abstraction is that easy!

From 34f2845da2e78d2d7e04a7ef16f8be5eb67ecd01 Mon Sep 17 00:00:00 2001 From: Christoph Hochstrasser Date: Tue, 4 Jun 2013 16:30:31 +0200 Subject: [PATCH 11/90] Remove the example again --- source/index.html | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/source/index.html b/source/index.html index 9cac3bf..b3110c8 100644 --- a/source/index.html +++ b/source/index.html @@ -76,28 +76,6 @@

Conventions

  • Decorate the handle call, delegate to the decorated app
  • -

    A simple middleware could look like this:

    -
    use Symfony\Component\HttpFoundation\Request;
    -use Symfony\Component\HttpKernel\HttpKernelInterface;
    -
    -class MyMiddleware implements HttpKernelInterface
    -{
    -    protected $app;
    -
    -    public function __construct(HttpKernelInterface $app)
    -    {
    -        $this->app = $app;
    -    }
    -
    -    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
    -    {
    -        $response = $this->app->handle($request, $type, $catch);
    -        $response->setContent($response->getContent() . "YOLO!");
    -
    -        return $response;
    -    }
    -}
    -

    Yes, leveraging the HTTP abstraction is that easy!

    From c36d32226fe5f32af38e8a08cd4c341dd8a1b372 Mon Sep 17 00:00:00 2001 From: Christoph Hochstrasser Date: Tue, 4 Jun 2013 17:32:31 +0200 Subject: [PATCH 12/90] Add user logos --- source/css/style.css | 15 +++++++++ source/img/middleware.png | Bin 0 -> 35240 bytes source/img/users/drupal.png | Bin 0 -> 25329 bytes source/img/users/ez-publish.png | Bin 0 -> 1289 bytes source/img/users/laravel.png | Bin 0 -> 2799 bytes source/img/users/silex.png | Bin 0 -> 63545 bytes source/img/users/symfony.png | Bin 0 -> 2952 bytes source/img/users/yolo.png | Bin 0 -> 27921 bytes source/index.html | 55 +++++++++++++++++++++++--------- 9 files changed, 55 insertions(+), 15 deletions(-) create mode 100644 source/img/middleware.png create mode 100644 source/img/users/drupal.png create mode 100644 source/img/users/ez-publish.png create mode 100644 source/img/users/laravel.png create mode 100644 source/img/users/silex.png create mode 100644 source/img/users/symfony.png create mode 100644 source/img/users/yolo.png diff --git a/source/css/style.css b/source/css/style.css index 545d17d..0ff1f05 100644 --- a/source/css/style.css +++ b/source/css/style.css @@ -107,3 +107,18 @@ ul.avatars li img { ul.avatars li a { text-decoration: none; } + +.frameworks-logo-list { + /* Clearfix */ + margin: 0 0 20px -20px; + list-style: none; +} + +.frameworks-logo-list > li { + vertical-align: middle; + display: inline-block; + margin: 0 0 0 20px; +} +.frameworks-logo-list img { + max-height: 60px; +} diff --git a/source/img/middleware.png b/source/img/middleware.png new file mode 100644 index 0000000000000000000000000000000000000000..a8dc0ae52aeff396528aba14537a630cb76960a3 GIT binary patch literal 35240 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 literal 0 HcmV?d00001 diff --git a/source/img/users/drupal.png b/source/img/users/drupal.png new file mode 100644 index 0000000000000000000000000000000000000000..f8ced552148ef8767f1a3e8265dc897f96126dd0 GIT binary patch literal 25329 zcma%jc{r5c7x+74#2{gi%1$##MTsG5LPeROsHAN|MWl&QT1}Q1B1&Z$Yc*05t&(cS zRw_#k(jr62T2Vp~zjLS0_xC)%|9(Bs=lOW=d+yoqx#ymH-r>42R!^6kEr(&)bY~~W z^%zFrVVLwP*=aEHej-;7{wKqBrmvJ~l2e(En?37@ks}NdSx%cnFig7w{f7%`3|$6; zggqUAIE~2L)6(CZ*9+e$XjDA)sa}y~fU|5}zM=ViT6=?a`{69vQ>rR&Uj}X5t-P@Q zcVFEcp!NUzFYEV<_GNXC2^dy$cyOP&IP_=>A;uMYJ`J?z?1<@6MB4XfD^`F9zx_?a$;JSagkVlxa%bd`Fd8+2gek@J5U^sTmelW~ z?UNJV(TgMS!mL5(K(FZL@*NZHIP94-kZalb9B?C0zkvP2hsznGsm(V3gkWBa2`zJ- zDpit*m4b*^B1W_TIMx-3wGt3~8FXf2*bAgeO&4n%c3BV9`;~Wk>C735;Vua3|CP$^ z#P9y`H&ccPlLg|id$c`q>aL=e3?{o4@YRePs2~6Ht2=&bbelV4H8MsI1IFL^sRp0; zGZZsE<$FC8!}N%t`Jn$R@av+xHVC6CVDyXx>6K1_0Z(^{y1;G};HY~^mdd+O)|d|; zmWI6&a9eyZ^V2X57)(Xzzl{C8e`3cL^tc8d`D4TV4acXZ0Re#pQe1tHROL$0wJ}n| z9fxi}X?7k+@I?Nzdj=`Zc6&gNOe!Lu4dl&I;GM!~uTEq`@H^ydmEd8tu)6vKDq!AI zi2kRMsMJ^4Zg2kBI0D{>NFL8RMMW8mX#`j_`bXP$?>LFfTaQRa@9w7BAulXL9^|8# z)jr(&CVS70-_`wnBafsoRYTzDE*B`(0VWJ7#vS-hTJPM!Jk?H8-?s+< z!$6pJCTeO-iq0%Q{g8&#N=FOf3__ES7&3AA$FKzScw$z2N&*PSN=3Ro&?y+q1*XWb zNHq0*ne7s=f{_bouypQEFI`Mv2u!e^=yqF8x2Bd?k9vcajF5u=EIn|-T?5z@ zw1Idz4|mn?N1FMD5REF+A4^z9%kk@Us^8HuYsUP?%MogOG}o(Rf`0+DmV<$&!rHh_ zulpwW*(WA;j<|LdEOy@tXp504`~n0v+ceHU-h^?qfC^_ZubY4kMgaHhpS?QADIC7G z=42{JG#CYAAMR1&Jhq#oW%?N08S_FbaT!{P3y$0rMb8B}K|6x!M17}JP^#15&uLg` z3{1SU?)L=0yMDqHSYqNp;Kq;NpVU2$_)VZyukpq57Z-qO;$9n`?_25!YyIQ{HiFa=Ey>5#z*E!#2q=fud|539jT z#L^sv;TsB(ex47)1hTcd15O#(+W4iJn~dD9TU8jNOR`flZN# z5{Z^=DPP2cPZ8hi0Ks5%FW(wHtbhkWppajUVfBc~zl5_RiIXmLSl>9{6Id}qV9Eei ze5RNG7(F1tJ@%9tYlE4b(2}|^^kPSQ!{exf@K)Cx)L`;{4n=#Vl8Am1@#G8eG><*? zFOa}o0tLI;SH&htA%X1?-i**PA(}Z0&0N%$at7EoMDFp>F+0es?_6Kj|Kz+{LlJc$ zHzXqOeT&q=Lda_kYg&kcbOc%s7hSBn3;@$f zz*KBwo~sDL$b!#t&TDaHPv&P#j!yl4a(kiPGBi#DAs57{XS8+%vQ@G$&N&dmv$?jH ze0J%0!+Jo;03$J1#@~3ouTZ3gHj{IJRzOnrAyI%Y0RgBN)|hBDAax)n3w?zfY-WSo zaZUm%@$C)XqVS0~PxkDvM=os^3%+*UGwgi*$&Tr03WlZ#Otg+7A@{(8D#cRm?#led z9sco*3XnM(CcK?rzUC>$2b_w4^Vv%it@#Mt2f%$pf6V;7+54PSr3|8Z>T%j}945f6 z4nHup+QV~+<=>~_e~*sL?H>Ieo;lt>1v}{ph}WQuMZEV_b}k^#bdV=0VS~+)0Oiam z3T8xymo9OIua#->Tq>yOIXI7QynRV6+g&LS7)o-`!s$lZm-vSmQmxI(Z{LpL?$-@_w^ z4p^O|JEJ#fdBT`uPJNe=JT5OWEx)3tP2x zT)yY~%HN`KjmPI&4w-;?E__y?V1CYl5y!p4<1%k&LL%@)o`B7_ z*qZy^_YB=mQP!%>gX0fgeagxkqrNyycOCv?VIwS1>L6mTe@;`t_ITzVwGYgj1<2O_ z{34I7hUXQ5c@HkU@;9)>3Ct9y%Wxi5ku@%Lo$Q<=6DK7wJ8@A48)0o1$v+}zSn@N* zp5Gy1mpc>Gv2Q!C_3D>!J9yv%#-0UIoHw!bnZHicSsVJ*mIfTe8l&5rahxrMjoX@* zTBZecE@&Bmq-g&&jKwYB$FFi(!le)B+u&$UAKh?b>k@>kF^Yo8R?jiUZ2b;jh*v9X zt0FT3v@$JWZD@8*SH&#(=?i9unw7RXx`V!%Hv6+6#o1SztK+1&}soL^~s%lz1W?_%juJL?p&vLB~p1@Ef(Gj~Vv6Ivae5Lico5+~GJ zV?x@U&WZ*vrXQ9fFzxv1+s&E@hhS68nYI4}R(NTb-#b&5*;rxY9pwzCwPARUsJs_f zJk6cHFqY0b3-e+Q-tFF?}#q7q;R{$NX5GQ zgRsv&*Lu0Kx&8*0>+Bl_?5j7Sg?8X@P-sb#Ar1T$tX|8B}EqSZ|X-QhW&xz zt)HhWaK>z^$hifO7k-p=#RgAXExX$kqM_f;fs1&U_hG*jUFT-BySy?8#Ry$>cuq(Zzs-@7V-4&x%bhV6ueGVF54VODAp{ZegEg4oguVOBc`=ad zla;ct)Ms<>*eEIe)aLoihzzr|F@k{kk${D5JA;(E{qCAD6`rmvAX{NOfh%SB$@xSN z8rrNd>m*@Xhs9E?v|kTcw^mbx#0c1#dIXW$oP3uh(HE?3h>Ro-Si?a38+J_3;!5%o zG!hGHaMtd_nu&DdU8fllB*P^(%ZRSn+OdNp(wLd^O+*xH8JhfbaY|DyOZ&-k5X&E; zX|pUH(;QODvb^*OVs28Rj1^7IUKD)mM)T%^Na@Y@rNnY@L{g*X6FJ(eTjNly614np}Ug06e!(R zxI=ReAS`B4fJGsSjG1Vd|MKl5GG%9M<~%!cil6Z7!JS(!R{LD2xERFei%KmSt{O%5ku@z^x*sQ-y4jV4jODE{a(}WTr@X#kr+(DI6tRL);Nk zx*w!N0vtID<3r4EjBg}hKNC{JAY0l#$RzmD{qm$lbSz<*7X}u7ya+(z0A%PFFD&>m zNw7&f3fuEbfj%eOc2ia_nUe^F*gGqTVxwFl_M_i!$j}D2^6(f=)0}yn;pgpBMr0Om zCxJ2CPJ@2zfL+fmH@TGVrMT*_R@?^%KW{ux!wn+_IC$G0EJ!&$)o^X#J6Q&eSV0mj z&}Ly5W$7+(y5`bp#`TBrr5Q4F1U~j8Tr3^ZbXV-=5p;I1=uykK*Jx;YAm6lvm~-bV zb10^=dQ0E$IXkdO;~vb;L8KE!{&s#YH7y7qR`r{KEewmrg%at6b8{{C5h$EJuvyx6 zbVxUS;*ldDy{IB{=C~}y9s44bZql<*PHiO=YjhBe>ZRnb=KlP{Ypj~(O%mk6!Ykgt zX9q^xWDj}Ni%QDdy9%x|rh;IP5*~KK1*oJuRj^4kJ#rSu-j>I?3wBijhmYH<1zWtX z?hG zlCM=o@sFm$&*Ttnw?a52s~cG28i6{YTZn)8#>R4UwgJaQ=p2Z5atXsn{Gj2!m^WAD zRgtk%U|Wu@3ug%CTrigCJ6hJ2rmL+l@C1H9xdL_`NhwN3*6dUPS)F2uQ;HiTxO@@f zhTr&KbN17hD z8ZZ2^mNRc7&`ijgoRhYOoP$+lInX`Y)us)yuzFIu(W*eauH7qQ&&x<0HGfwiSW9;c z@;q#7vxzO2Ay}*}Cot!y8#x8yna&`$qOAhwugj8kNx<+A@Q&$+m9Wvp&5rB5N!Tt> zuz@ySa2(#Jv=V5}6(rW{_itxng!|Ft5^mn28ZzeB`S+>ij{ILywn?YnDQu-!tn;jC z^}R*pe1W7_=0Weti#EJwLyKhR8i|2=R)ygY2H%!)P1~DCEg@n>N|_w34?TkHDsmht z0~4#|kysQfYbbZjfwu?!QQqj8K1cH!DT5Y>=NJHoR;4AmCb`6AFJ>d-VImMpEokpm zr@)8?u!~<+oYvs!IkQca)5Y@u#cWb0XZ44dZqcoT9pE#KT(za*8A0Axb2fl(JUOid zOe*zY#E%bx;zjQC!6@|1Ww@nh%-q;a1#k2P!wCp^q?E3jXtm9`krW`2`s@M2?d%-& zjo#6U+n;GlxOf5C_?6PlJJtBKrxyt_ukOUs`RSfuWK0?+p3P9yhjhdQ1d$_U z>S|eOIx?dbgMcwk1FxUpU;3752}##E0Jqh%Ss@o>kqVh{1_&zFe?_baIVUvrCVfB- zY{g|LrO#1-7%t{-u!n30B$$iAqPHsJn4Fz|&mplfKQc3R(3NC#0_asCw9>gm!3 z7IAcY(se|W3^OY02$0H4NLtLbSs@!_*i$X1RlX(=kCiE9GHtAshjlH5*MWtcd9R54 zV5t=Wz`~vND1Kl{kkW`s59iG7ULv7k2Ksj|J&<$$c1f)VDIOe;Fc^iNV_eua^XGvFs~iS;!@U@_*8Ha2bu~GYBKW zRH{UJ|5!$2!W_bgQihlex^!C2j#%(PlQknIvJ!Esdt)(5D~0kwa$yNSK|^XN-@|jf zA+vfu9d{q{Q>0?kmF$S!9~4*!1flUf+e4t2DvMQ0h!T@r;WAk18CVtxOua#Z0n1X# z6suZcwq#4;hU?%XP*(vDtSlevSP|K3XiTTCw5<+XtEq|4l<)6?T56%`af~)pLoXVRT^V z+)V4cFq91Zvp7A3O~+wJV`^kO${_#8WFAe0O_Bzf>*7q7{0G%2c-7oq0!0tUR?1+Z)oXw)N*3aj9JRAG|QQsNM z82s{eK%Vmj;Oqg;sdM1MG(uk1E%g#&mJ*0SwzlcIW8PbZFOS_E194%4EFDD~Svot< zY$3A+{Ad#*r<+Gwd3fk-HiC!+U&N9UdmLA6FZ~Ss?19t`OohEx$uz2ozffL99&-Y-FYMeKUO8X)p6(fe}vcA%+7SNR!*HsDdEyp$>5)= z`Zgu0_ir!6z)VJc8Blyd6!+fyRc25>QAV^`Z_jlO%)7expO$RBUvpQ6tx!4B>bS1i z`y8Z0tmq!lhz56MU|!CDKp$9N&hFjYtd3tCR4xq-0wt&6_;*^;y`hRLzVNh_%jbc)~gy4S!o7&q}s3! zbKn5h57bj*8HSxJpK5xOq-DWHEGRa~Q8P6^fpoAnVvPwsj`;0?r$a3)_dOop9;jb_ z?VlhD!4e*)q3aGK$3X7`2$w_o6m?uqyx}?7Czfssi7&>KyB=z25DQ2-2pg=?c^2b{ z9Vz&syu2AD+-Q#(66eu9c}eJRVDqXKEWnZG(oHWPfei-3R1QxKZDmKCQgwL;q+(l< zGA{exO~lGm{ZwgJuucrN_o9V{@02n;9e=?Jh07F2wzvL5{raV_&9xt2XsK-f z>mQryhBoG0he~Uhjcb&~#Xxl9YD9C)n(IBxKuct~EnY1<*+3q;xQP|*br2`tY z+|MVxNwu={aD-~?c?wBtEX9UtZ7<4>0?*jq%I76IQnI%`Rorg$;VGNs9QzNlwDvMd z>u~a*O$nC}#m`4x1joHs-19a;qzoro;2)%C!GhIq`o(Gyq&JzT>5UnU!)PxOnAL}L zs%_WY3TrYgC~szNuQ7x&j{AwJuXPzyQ&Wk5@8*#mkyqEZ zc!YG{_(7egt;uC<><_D1qXpv1t_nN?yDFCR;Au&((e+SUpDT$W$Mm(dWa$fu;H>PQ z#p_4KJ$o}m_?Br!PR>rcr;G!MkkheLk@_ivI#>>(qmL8@p{O ziovJcLzg8d)>iRfAjO<|*V1=yxfd&owBLo=++u{PH?q0Ci;&m_3+Ogl+iooG^+;dL zYwdok*Wpb%N~FI*0X6C~;3{6fshO+1`Z`;4uI09SkfOmPrJ@_nTEC-$uZLclwg37v z6Rk*?fmn_b{lJD2n#;~kINaoS=ygPpZYrmPK`>0V+bi&huFV0;9_mn;{H1f=@Ft^( z1kNlQu%+OkS|+c%DpR#)O`?m{U*(L#*9R8n_F5uZsz+RG(t=H@qukXLiTR6R6tVr| z-j0iLj9sz}HR^qCViaG(?`5C6iBJPx@DR2}^W5H0dswu_kM1!>#ZK%+T^==%WzzOg z>h~R~XOm`B{Ws?>-D+R>hfmLM>g=~U@LB$FD$6S^B*V|e??@(i5XP+Fb{7@CP7AuW zPoC~A>PPxqv#6^|dW5_wly&~wJKu9+k8{u1I*6-XZAY_2U!Li8)`xgqIA5l=#P&WU zNzDcpZL1+#aL#G!KQV;L`$c^hBtJYUZil|}K7BiQFhMt8OgJLX&uEm!94eOR*QX;~G2 z92p|zo|T2&?z=^{Q@Wd2z~)9&mekJmhb;rcCRt=#tu(eu<^^Vj@zQR~Avt&f{A1#B z6lh2`P+qn{hs3Xt;X$c-^)zk9gx5u?3w6V%5Bx5!i-bgD@=x9x72d7B(ly-^d|nja z2kC}0LdZW|_DFH^X#q6(_gBQ5$o!=*8!R8vy1iowJa|vL6=7HEfL!q18p%@`%g^WXn3QZdBKpn z63Pz7_U=oO6=}!zG94-2qPM;OZov*cQAjSBk2Ff|Thcb%`q4N)!8pIzg}TDW-hGQi zsK$^h--OA{HWezoyfkWCm9@S5QG|+h?lup`AX9#=oc0GLEICFpu?rno5mHh7Wrz{M z-nQAQ0wX-#%9=W{D7iplITeiqtT8E>*!(>e#u20v?qn4IF;a|J+MUr$WYqqmKJ=G2 zZO-R8@+T3J9OFIK(fZW7-DSoK$^Ht6)zWyWDt8j^)-2Tw6S_5#?t`=@2-?{HT7|dU zW>MR))0xmR6Gwgt!pqcfXXuT|n7ydoP`0kb|B5js+20mnQD5}Ky)Wx$L1=F(>$&&q z2lTW}{RIADM3eKb>G7=DnySluG8Z_6sib{DTN!ibVhYca&s%TaVd3?<^$wT%)zGY3 z7vd$>W=*qI6LPm{;~QQM8ZN5VLxZ{2v}3cE4=1a*TD85Nw~V;<0P+a8#)0!?G8_BX zn{}wZy&PFFTBdetd;Ge*^~;b>&CWNMsS@(nL2Q{%bMuNp4svdsr(?<$k2ZKxnb?co{6r44;5{NdilqF55Lv7WxRn75l)%fV~_yX(8W zM_{L6G8imJStizsLY4j^U@cGvgJ9b`u%TW;zPgK*Idnf@SYxtrKA(_(d*H}xIB9~1 za*Xo}2>GvEtPW6+#bqx&&u>Z#-n)urQweNIltO)<-vo6`K98@=TeYaIYC2Mj(#D$B zVdj2_ZcR~Qc1kaKwuGK%g4iOimz*Vem<9^xiP=@4rxNb+SQp^OLzgPV(0qX}pLa@y zHv;$+(KDt-WHg>cEGZ>PEMNyLMLvUPY=;G9DHJG--z0s`-h%$+nOF6b>Rj5L17_$v>frm>D+jlu{r{b`!J0aF%PMhV-)~t zoN;~;A^#2aVSy&X$cg85vG1d}`M&DRfqU6^v#r1`dhb(6+frF&)ojrZ0-D)5Qq+gbkxat-7E;V>>#Vp2|xm)n|E|$o6Yy!(b#@kZN<77%k#HRW z0n1p}>zXIhgIrPI;f<_ZKK!k6V4m)ScS6uMCcg0far|Ni6g)Z^0Dsli7! zWQvi`nK=lJDZ*Zre-vVxWf{_I^72U+j7DBchuqDKcZgH61@N^qA4Eqw@4z(;lSbrMfI6)}J%nsp6VlnD!* z%z-*bBw^>Ss-JrQw0u|y2!qA#-7FI~Irx)9D{Qta*$wyQkS2Ev28YyjE-3Q~C3NPe z2LIXnNPH(u4@se3!m9LKNc}3&A*7~vBSaOul;A}fY{^@WzUfonH!DDz0s|QTIyjyL zg&o!QSg!a^kL+w1E-sbMsImEKuhtTa@K4#w zayOg1W-#Itc)+YcseXUlp4^(`<^N+tqo60n{f0ynv_lUfMfR6=!*nxfw{)&B{+SZ&Mo7qfWk8uO*#U8%|8@n^Gm zBW7(#d`CCG=l*{sl#W4@%T^Uv>n?c)H@p?zVQQb{8AmKs13Z+y(ImnuLbUEK+`k%87&u> z2Btx*HG`FiUq9~>`<)d$%n0e{j&ZLXLQ* zBOz@fSFWeNkSaa76NJIocb|D}EB_zqu?icllb;nOYC137rW&utib8JoAYEyhE^NoAlB819IdY5@<>D8;0F7Z>ySnvZe2fOupT6g@1~i z>-+|uC3d-h8eTxPExo04pLw-?5UYNUL70^`R@^PKB{Ayv!;;E@86uW=YFER6kE@gs5Qp~NT7Bs4D&77b0erTdDW*#QP%zziLy4N1?i(!Ncbmdp~Pqw z{0zTcuf6_7rli`e5FUBf93HP7@peBg$QuXk4)D(pwSr+BBiJ}^+69D?pxf-<_};Co z;1g)+Y~54FjfUSYXK!DZ^?9wRS#;gfqpU&Wu}Pk z*nD^~^vj^9f@MN~*SR4~Dm=_v)aJPJ|ItnhWI`{pA}g0>eL_us7!6MRE{gvN;>j2n zH~secg=m?I=!0qJ(Hiqx5vU($*G&zTxDV#h><^V~B-?ElDOS6rlJPP(`LXN@lLDB46__75C2>ciI=?U_TWx0w#5i z8~Qmj1EX!DZBy$1 zX-cv(K0}fNCqh8{Y;|A+>PN<)NjZbbdouA=l>8(xoMkg+g?vj?MRpQO__L0sC)J>; zE&K~oN!Qhq#D=Q5mMe7HkGKDNF)GjazWm@L6c zFhFAVkt(v0WIg80FCjjcxCqou@gIj}K`-@_S-?puTn0=+V*pV7Sw$8rqqW0z-VeJVNMUNp=_kR3w{zd~^7@&=`># zq?8c-P(LIlmMY&Y}|H-u__)Nw$4WC4<92Tyx^! zy@BNY>=I%R>Q2S3ItJpW{R0CuD{ELjGgP$wqryaHiBcWEwB_TRd~=n~tfL55w= z@Om zZ^*A^)OZz+02geiBQ?c+E;;kpM7JRgM}VroGYpwJd+h!Gy1^p~uK{<~DxfMSx@Ynm<_ zQVu&Q9~_lLWW~!IC+99NEBiD4HazV?%k%CB){7|?c|8jcZR~nK@6ZZr=Xx!?s(@%u zN&?OWY`n06zT;V(cXy&5Fqkr$aqj1f{mW@%8OCfUOL#lEjZSK1Mn4$bg_1^T39 zXqQ?~%HULhDJ_-LW9yqpNpV07GMB-WMn}sEl2Upj!4y1Jydal5u=T!Fg>nWb8n7Q* z<(H@L?kZq=lZeO1e#f*;S?xGJB^p?mp$oVsVVA{s5L4{~^-mfc@NWn|qjXnWNMu6! zZk|dOXJ-{TqRhlB^LIDbZN;7Aec#)+Pws$&mFXHk{P)9n8&Za>FPmxeV+qlX#FnL7 zMUVvEQRLEwCKAiIgp28~;@j=Gi7jaizd7~0`;WNk@w0I1OU%*0LI@nQ;u;;XxAvk7 z;WLJebs)}F6X~qegMQEUqBeG@rwwMbrq1kNhFUmE?XuaRp*yJ zem9Xl@$Ko1jH%m2O*j{bkIO4agVH5j;l}Co23c3iotZKFkH?6@C+|Km*f)bw*U|$S zfD7yrRDhEy;hu!bb5wq2(32}g4y@oSiaA&=u_mNhQ7J=XrQf@6BYWoB)`4~n$ri$6 z6(m#WWW=D-+2OxTNYphhA$lukF_rB}QnK_n%2{8)3(qR2>sodY7RZt z)~Spl(U^(_ZZTX6EQ~xUq0h2S1Ai8G5R~8wWXa)sddel-_%y$`>OHS6LcbAHb5-s# z5wuG;I?8meav^8_>0R70ykog7PE*fP=vCfM#H(bKrWWwWjx9T0x?VLgE|d!{k8bK zde~YU;lg-p-8dw}C0tUu>M{DRiS4yw(oZYm8DjC$=KsNK-+3czICtoMe zu&yYIy%kRijEde0r`eMzDGJlgoSqQ#r~U|KJRz#TWPU#>1I?^T8DZC(j%b**H36S2 zWtnA6^7n%ghpNbmKZ?lO#t#(5OcZ_WgS7!wiWGQ!pBxUjdS zC8w7U5n3RnxKm)_vNZWrYZar{8&mDnVqk}2>4Lp3OO?|{mjHB?k^dX7?k)bXhL*^ZLR^Ba`Is(6-gk zAtw&GfBe;WrUtad<*UXV_dGo>6bpwtq^y$Fi&B8HH)&nUws@KS4l#1rnBthjV)>6S2$ylxhV9S&y-7=B>AuO{Hxx?~c2^KR6QxuHp)N}gq_$SAGFJR9 zn3?EG)jGD;S^!BBO=n;D-KV#l;c|#HhfDX}^|frhjA_*h*_`D^=erW=flZ42iUX`% z;`q&Zp#l|64pwuZF7aU%*-|B4?7ioNLmT(~J|8k~TKQ=?v2qEKsW`qcoE4p@RYf-0 zeB3Srw$z+CB1SwZz18nmq_xLqEe6eh@}QRPwDBRhJGUGxB43k#@K~nJp2Xwa(hS19 zhcX7#^({+QJd32V(n2=%y?b%#@%T{XKsb>zs_BPy2Gnn(FhA|6_H@A?5wU_a@lNf zB<&Ct*K3`MHGOJhtRT|MbuCutlENLfg`BA9{k--vRu6YFdv7<$=vxj&v=SO_jGRX4 zDHI79(9CFC@=kAd>+XT2ya~RI*nYBQ4s-s-K)3X^e!l^1G72R=1MW? z{LE=8>0$PM`0Ybm;DqG#bcZdQY&irySx@Q5PfTmKftYytQxcBm^R7TDmrIEvGtUH& z5o)FqG}Db9+g}>nS_M0_A&Kc~1!+3%$b6eLwvC=Z7?m1DcIq2gTe;9|Qj2lIU5l0U zL^w^HHgddTG%gePfxZyk0_;g{(a>v_uC$CScJGIsk3lY11}*rU>RPTa z$8Fd6`0~N}?&=OW`P^f(Axc+1OwY;DEh#u~MNu}OHxh?!`|$X_X-FNzuM?L`EbXs& zAFzG4A|?pFFt&Dj33sW>k`)SVS(UmA72tLlr#JtA62`ptS_I4NkSyJ8YfeAA?kx_N-2OQ>fz3R@n#;T?IB(rlMKyJ#PExWPT z&f~|O0z0)zi0UELp=I&=Zyb(+gMWGQ-gnM^om#oXv6q);p0XnIIA*UWZ!E&*Mo&F9 zv>ZxoB|Pv5-+gliqN}Mi8FK`?(DZnD^n^BiIdSS@gp~4=g)cK%>C|`djqH|aF5`r} z)^}ODK&L1yMpRv1Nlabva>fugST%fTDfk!M9EB6dDh6woLQc$#=?GuveT@rInt87F z{&Nu89THC6OCx^+o?QkB=Gc=4qdA*;gW#}Y8TYI0jLz<<7jO@{uvz6F;q2x=%2Nq3;i0eiSwZD}s|Ntz!%q9<(WdepFya_hyMWx%h1 zQc-#2*cS-yaKI1{_?azmlXX#k*;_W8u-ZUloTpLw>9Ahn?Cw9cd2Ch=UJhkRTF%wn zS|TuvbGR?lG`f5sFkE*t-8CfHw3bG z#zV$M)^qNY=d@RZ;-k%+?xU^4ZSl0!lK` zNY6iTFFHecdR`ebT!edD{^8ILp!R2yPd>;Bz5$+dsy3{P;fr6hxZ_S`)+iO{UkWA8 zP{-^eDrua#hKY3g0IKXTugMNMGw~PLU7=+}gphgeXh;6)D3w%B*EYL0i?P4-I-dAW zw^t^hfNxqmq4)Nf-MBpVa$;QIkM_+i&f*qKEj zwdR+<=#u4wH&wC>+@vmgEL{Z$w9B0mBDVjCye$4@)0Xu{Ui!gG zbqe+CZ>b?|PzsgtgV9q9_FZjCe@t?{3uTveD@0b6WmVY^141|ZpNhgk35~~ebm0lhj@RLhm{^=Z_YqBlKdhS6 z`e#|g6{kci%jfnOTK}s&`8O#rs%shnic=wX@U*SaSXhd1BxeRr*Px1cF zg`vwMKcYLNo2N6RpT0uy-f<)GTZP88tq5Mwr4pLFe|I=AO4EiDqx;3Fk297}nT_w5 z&MeP^`0!QSw5&8dY)SzNpUv~k9{uT-b)%`x0|%*{$$K}}dT9BH)W5r6_J&LPqL!O0 zj^W3)TFL{JMu6O%zEw@+O-IeAk?_#y2pFj~OS>pe6w0qCT9Oo{w+tWv6CVmjs z-UTbG8!poF=_6|Nc8q6?I339>g5%muvnG9?08o8X1hqbH3Ls9F*toJZtEd zVQ>0uv&|h{jnd5Q-RCb`%e)vZv#qb(Vxr~+)U{=4saIdfSD!q}*pWZaq77oXSE(f) zW7(1D{e#w0uJb?6**h)YdxH}EVgVucm+Wb5v{`|1bpCcN9P9&ZLHCS+@lKnzkM(XW z7OM4gBBRJ3Z>eL;3g+-eT2{EjvKY`^z&aC(8`#JyD}Yg0c~b85a_{4UPK7%Yxd&M$ zUPQ#LpZAOa>6W2tuz=Br`FmyZA9*-|ZIxzF?Jq}3_sWGA=C4|DO zCs^;+CJ->stj4P5Ldw3x3*ngS{QAOJ!#hF+e+;_?k{(-vb(#R_(3{7odi|b)WB+gc#1C%Mu|aOIqW5BmGQte#UH+{T8E2PY8~rL3_KBwb#X3xZvX_fP|1t+#@~h?b5JYW1(fMSY_tGnc4Y9!qc#z932t;>G8#|!v*i1 z^F1bfDrDp$j)qfw!TR{s`p@7`Xu?#z`jjowBlA8kLeroG^5%yNZXFc1Foo_vn!}&o zMg&Y8$OKL7j1V2=^O%cA({Qb8{UXe5_Xs4{77kRb(lg7N3Lu9gM0R{|xdlGgh+l>V zaJOX{0^_1)++b`Y!8}ZHCvfvdiKmSiWTi?isOn53tb((d2)uv=Q#yYHRs`@fiVUcB zKIkVaNV&w|K_31RVusg=$v+6&-SODL$_h+pNPPsq*I;?zh9dd`Rd->-0$Z_5I4VGM zwndSz3PTjKQ-jK&%`MuP(pr^5qV2OMHGN7uWyR}SIG6g%I~R{dQ&a4>W$oYCy|8{< ziFa=iTu_)k^B@%pL+XEwC?@z377`hDX~EtrCJ$mc({hO|pVDNCEEN);m>%w4FNJ7Mn=LZ(~fy%0B|#9I|| zH?cbGFjZiy7$ayNnCH8v%wJR3Ybrkjec?)KJoi_+)!y_$#35_p+K*j?#%u>&v$Kb6 zk`sFQB`(x$LOcN@FM0)KopwFa%|9Bhtg`1Hdp>VtnAS|2(HJA8V|LCi*2BeW`dn%q zeENmSr0vD$70*=8d@_;cz$!cYhv@pY2M1qDabgG7MgeW;EVG0-C4kzIQl?#8tl}dh z-ddxBb_0KJgiif@5(VN>IN2a zrhbm^4_^hpTY-KZ;0d+#=f(>T6W4Ew%8G6tui4x(Pu{G}B4O{F7tmf_W;cP1NO}F?suiL;XAp4c#6Qd7o(G~bvkAuU~oeAP9yd#Afs`xt8+IO@g zt+w_j)W=>|cdXfFaerp4)pmXO9RX{LH=o_w+TSntX;`OS^u|2pI$O^u%%Idu#x*S% zzp<0E^^C*tv8?O1whMA~@1wjssZCC1v}#Ri#~!DY%>M$k0wmf)~|y1x7NEMckb zrmeN{6+VApyA_c3J@3u3{7R7i`zryj`{3ZS(8ju(TCrMjAwPdt?>h52c)O~0V!GA4 zw=-j(?0U`3gU`#-tR1^3>zh8mJze{=W;4jwH6!fQ^`e#~@ZkoRL9&ZD)OF^o!-QNQ~x9;CMA7Zcg{G-bzSL?Ra zgLxX~7&KKyhu_5MMXx;8E{(N09W32%wBYE- zk@EY-Rys6`OZgI6n6HVg&re>_KFPWMmg4>M&Q^Gj7P`xKE6*$@0tp9eaZ&`tY&YEej^4tw59i+?C*^aWo@ z^m(`8;r%yXw>~n!`INauUJnU?I-y_TQ_W-H&#D``?;4-n?8pl~0{13dD1jf-)Nkov zy84dfX$}|+9aqk9u{!^$vewXny*G+-Rw+|gCg$N?s-a4zo$-uu=dIqN*~e&UnnXt3 z>7J$!748p%DE7)JJp^;>#v8RANu~qq4!3UVd|+s~B*HyxSxz8yt3IMom3e~%b86L% z+LME`4YG8yn<*pLZ42L1zdgPUKbWz3+2zx>R^`tb;^sI~QlAR-!3@79u!xyk>-wKjuw^>bHpNwro zh0ohJry4Bt2l^MlrzI#+a~T}p|2t1~^U1M4+0~RIM;^8WP42I|t7G`r4L?rh47J1^ zy}F0_@P7Elc|~ep27hi_KEsE!b{%n^=dS0y$?7>?hDv#*ht-U}ue_o)!Ni}jW`;DZ z8Rzd2+q`W_XjpbLFkpUJKK#CjX#FwPhC=Pkk4Mxrq6+>nrd_!)!NO-#{f3^&9li3a zeba>{zFMCz?8*e@hc3*x8D}6YD43m@rOfNoP`!{fR7t!ZBIr!(J9_!o@{Ol{`O-gM z*qN~M*AKb2~|@y4_p_jb7#_rTV7vyezyM25~nJ1){x#t zLz{%qm8t1}U;n&5`CD4*^|}*IxpFd;k*j5+hZVi!%03oew8<+fF)BkwG!e#lCXZTI z51aNl$}#d@U75(SU!}NKbKQX_KTWGm?s76T$kxRO$!I0!+grbt+q)448DP6zsp7R%c=eOBw?X}+Z z?zQ$>`+cA1+4!~emG+&mh@rCDO;2{u|LGUD&;Q~-I_tw?&y(0~PZX#F{|Frve3uOe zUF4J=UugCHjc@vwX;X$tLiHwCHmR$U!UCz1>yFf3-5c+*FQd(%{)(yNZ-4oXtt;CP z4au#4v+>p-@nQ962bo~=F+;c1#QqQ7ew81?&(!NaeDdq-sIYx}%Japk2FIA>n2q0r z_5t!H**gOR-ai{r{WE9xf%%L!iEHMo%GCVk+Pl+kD*Mfo>$7d!1t+^@ntjHytZXCF zTXxo8k9FFe_Ng2o?Lj1k1UUS%xXbkQ86J0j0;@OV-7#j)4>8%thnUAB;!dOa&;PYh zN;-U#YPiQPa(A*qyi>y?yI+)&(5c<>J&uKmR~G&2_4>|nPR`4=&nuqWn{YaWqq5bal+>0VdtKz z3&RZR)~IQqA@C&RlX$Mn8fdQn#o$X<_8!9#qGH6thJcLv%Tpf+-s?P)fY9|c(wSkK z0m@6>$@nWwox;(EhaYcy=+O@53Hf^GfrsguC1sCqq;4kanRjLkj;}#b0-Lg2)*4#p zdt>2Ll(J%Z`w0k?uoNZZSm8s#1zHj|%H^L=U5*7!t02-|rfntA-O`2pL}*Mgn@OiV zq82M-IKOElutln?^UP)Dwn~*1@u{3K{<>t6NOdX%k6XLzTICDfDSr&uB$QE-zyCHO zeIeHCWUSN1hKKouLVg6CuF*~c?#TT0-nxK?N}O4GRFFEfdD>)N@TSot^wH*GHKU0Q zv>~AD9fsZorQMb~dpe%i1sDw57mPU`N+x|x2SuX7e95r1SmWlT>+VaFu9E6Cr!+pm zIbZ(!Z!`alB{V~itbB9j`ND{%>vaEdwNq$e4B z-u!BBeSm>3ZF_c4*For#I`ew=MWe@--yXNO-k$*;=T(;Z-BC+~*}rP&Uf`L&v-Jlf ziVc9Lc{R)&qzloR_9Q|St|_C7s?nfjiQ}DWV*{B$m@C^i9r9j7;)a3cLWpI%w>)xKjX3O2EAB_koOw6rW8>TsP4Us}?X;4XIVLO+?G> zMr*q(At=*$D&KGJ0UwwYF+qVwxmcGz#WQCZAiv|Hx;hvp6vU>2NZ(-h@9X^a3|QC) zwB2kWpShQYsWpOL*5iQCW8zQK8M4~uMk1Si4ss&EWy+?5o2YJ@RzLI6>Q*S67ZL=E~MLu3KTgk(q=h5iOtHApfz}3g~Kv#Envdw z6+x8#$YNA+N(S&7Fd;Z3-7zwGf@&WGvLy&A1*ks0{RRW903+9TQ=NlISixE-=tSpNC@6&^tvY+0VMLc>RCn4un`EQpa46SBbUm@V~zp!!cPGnfqi6@1pyq=h?=l#M<>KzvqOO2tuA*v$Daj!K zni*#HjbI{yJm7Md^aoXm-2Vvb#Heohh}CI4kzG*(Qc8X2L*@2jCoKqIMFx@BL4nQk z*vR)ObI2N5oK|d1UV!P-+9j;RwEj>Gymw!FF9Yioh}w2xs+RMZL&<=;>S`X_#lfaU z{D3sf3c^k10;V)aPXGX2(2zqk&C;|BZd-@JW;Xx$iAA2r10Jnu5ZGC&+TQx(34F}c z|8=VR)b9d~dA~<^N3mWC{vU z1P?PxXE)I7h?){{us#uPb92R9m17hn7-ba*x4>tzQ$6jx%!W(`SNkPyh8tSWW z$?C-v+Tq_MW?uJLYtsZyhUq;hh$+}-JD|Z~Q{wJ9;9bCVH_bzEm(`mTXyMEDfUf(% zYKS z`1aZF;`Duf3BxPjuZ{myMT$A`g0huCiLj%2iL2b7)=`j6{NEGG;4svcxLVj(Mpf?M1KsA3#_z{#;H1fmmaM}i;zy%Nk z9dTDkbY`i14lg0;!!rp{LQY*%e@$l#$;&5ItR!4dm|u7F*+Sy~j$)gBdwH6)v(gzf z`Ko5`ze;CO&YPo81>dPhfz!=ZS6H15p@q~C+q?-K%g!gYZz3F)ua;u-m29Q3Ci}1x zc5Y`~-6+|7l&!~fY3*>2d;;<$|5}9@g5Ii%*W0|qCl?5@zR$Y*?^0ln_*jJ*7Hm39 z4_c)VaZ<|D%VnnH^4H&stU-UouuxJy6e7(Vd{+d^AU$PK-xv@(an8R&OnyON2f`$I z0%^&17q(vdfmZ9Ckk%7aRPA?KnzwbF4%49 zBIWhfrrrF+)+>pa>2QraLJv!xvtlde&k{B?z1MoDIYsPk`l*r)svuky1#L%ItVHt# zYl=;0>l?FkB#x#chb*h0;|Tgu$1RZkIyRk2%f)vMCUOEvUz^2;q1aFziW%FFV=PhD?u~1%iK{)}r}h#^|_h+k9I9Uw1tRVTx{X zTFNP8Ic2`x{u8`q!sD1)zYcrQ5&6;&QeFeo*WbN*`07Ug0WMhR+9M{j3e<@x(F@rQ z=y}P(&ucC=44PJzvBEX|tLoZvRhAs}cdU+$-x;jL z!B7LH3Wh!~8w$+(Ug|l{%&gpZ3OiySmaJ^m=T!=FK0?87Q0L^{%O?y5L1TyTBJjj( z2+iOngU>3}+q{b3l_FRIr0`5!b)dMP^CghSp+%*?+&APjqi?|2a$W8I7%-dmQjmTyF=1XQvs*gUj$y=ri@@8SE|8yABH9?)_IYWasi1e+YoK zqiO3umqSN}Q^Y>UuqS}czBmpP6Zq)|vv57=k^PGGEAL;KpEp5|AWWdm{}VDPENojI=>ZL~tzdtO1f2*Cl~_ z1G5UdZL@>@4igjFo^{x?jq9Y~G@@g%r6m-fBDVK~=$X+d!9A!Md0_OG;7+!}xyZ>e z?))&`Yz{F$N^>Cc3hbo7;;lcCTGji}0;ILt;d|X3-uWkGbKDuN^U<&gXoP$~8eWyH zGd#XPcqYYItyqQ@L~7I5gErDuSiQpweIvk=R2X+hZ(~n?iulM-cZ=!h^WhOdQ>8}g z(~nt;_9t~%xPvWyBLJHlDx=%8tqhd=$Q&ogkfu#Gm?BEKB_!YV zcC2y^!_W4gAn>u}o8eh!z+l~|`J9VAk>sXdaPd-}^r&glCfC&^`@yJ+NDsQf?^O8> z+Vt&qPk1qqxOWdMz#jsf?7Ci5t0rw zTe0=*OwdCUdlEg2X3T{FFbfrnveE&(LdZ*&ldJZO!+*{u$I4ZN8CDROMJmo5LsW&*(F9CW&N=-A*uc8|y+(i~AgwjN@B>5%9N zZXR2MYlALW!1ZSBqPe0S&Z(C`a*+%m6IMLU4K;DM2E2wn30XgGh--jZ+jwZX%b@XE6>m- z@h(QzB06wR2w9?0bEFwnrHEVOb$m9(2B)~^V=-z59`vK_LU%c*Va5nchbn+Ms(=54 zj3H-%z;lQCv%Fpz#SG9+)E~Ws4VZb)|ok61s`-Z8oworJLukEi3bIZ9{M7Kz;4 zRSg5C+9bL@?GKd7*F%<>Q~mxhHP|815`CdN+g@7G`Y*|LL_712~ z8Q3jR%?cIOScDq*=6Eq5$iH$yE&?UM*I!X-0={}mwKVDb#RE}gYfIGfiCkHAOP+M7 z$ojFpMWQt|Gd70X3D1H5X!=wifqsY*q*Y>e~Dl>@9Pk=1f7ux4*qrlM#_ z7PKV9M$ZPf)ZD*e2f$URe*^haGfVlL8cw=z_HEXk$sh0hGL^9o(US=d2#e#oSfj*6 ztDV0cwt#EGglL3iyGRs9cj)Y>(sf>7mi=%$YebJutTy4LOEh`@#ac|^*Kr+Hbt$~got#NRGO1OX$WYeze@cZ`S{ z_8%})MS3$e&h2;9XWo5U9TOXpsUfl~H=zK>IxCA=#y#=LD7;lvUv^qu9x)2Z@XSHP zkgo5=4q;rh^>nQ{k#9Nq;fvSjqt38QwO+<$1P! zj?uC2JZSxow~ir>cQN4to@|Sger?pTqzi+0Oc=&lSR98OE>M*%`(V2zkDo&0d%xy(Ttd677o|El`*3=0pcMvWGX;q&r zuN=jmFze^neRM@vseChQB<@NOdSqMnv}|Dbuh4Aj3PlRJ;-lboAY=QM^AC;iB;;F< znG-S=aS{1=mh3w@G}dD8b;Of}N7E7t2oH1Ax0OsSJ|X^8X?O~w&1vyMwyXpUBq?JEE-{! zuIZryiMsHmx;3&;Lhjj~tc+0qR=^`Xi}NF81YJZ(wADud?zCeu!xiB literal 0 HcmV?d00001 diff --git a/source/img/users/ez-publish.png b/source/img/users/ez-publish.png new file mode 100644 index 0000000000000000000000000000000000000000..a8256c8f00115e620425f5f30c6e84d15ec6bdaf GIT binary patch literal 1289 zcmV+k1@`)hP)r001ut1^@s6JXTUU0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU$t4TybRCwC#TrqFcKomZ=p-hyB9mS|W zfK)=FOeDXctyn+|O=bp~Uyugalkf-94hXiiL+7SjnaETY3hs)86t+sJHh1YWTrXE} z?Dx)gbDwmv6Dw!??z``O_s&UySy)I|D!E0zDZ^Xu8XZW%#8_Pm1*s1W>Ix!FsX;=QG}udbVTuIk|Zwp z5!JM=GqcIO91#V#>LJAx64|rp((xXUWN4bPcti<&qWpbG6jTE=GCd+=nASEUO2?<~ zQT*H}N|v$3CjU6Vm}w;?io;3b_=LSVj%uh2NiI=)hL0Q`f&vVtQ~-6oh(U<#q|IL3 z=`o`;v*IOD`0)%7r6Lsup(09%BYB1d6G&@4p+})AC?q`9_yBCI#xS#j9G{pz9iIu3 z;1Pv^KcOzkpso}*S+XbPbOyAdkmP@1XAP9ZRlavGjhT(1(Bl(^9tUIA6MBY<6n?(J zsNG{z{(M1F0~eG;Rj6(RV(A`yZm?`TcY8Ha-gde%J2Ig6C^%E^hLW2Q+f6o^8c&Kr zgs{=Of;=^Y{U6mssYK~yp))D#4s#KGLPHy>!nFco!Ywy>6hW3{7`Yn^=RxZ*f!Af( zPUIybN-M$ln}0h}cod=qnXyMft$PHyiH_t~+yumn<0+~c=>N!uxe)#hQyeUn+~%Jl zA5eP~(gurTWHEfqY=xe}9OO|5pEI~IH=E1H*NP}V&m4C0V}TO}-=;Xug;)*0+n-72 zo+$fY7kIIad7WX0sf7_mX{B`Cp6xob_$|NyLk>Mc#dquR00000NkvXXu0mjf*Gf;N literal 0 HcmV?d00001 diff --git a/source/img/users/laravel.png b/source/img/users/laravel.png new file mode 100644 index 0000000000000000000000000000000000000000..9fe4875d8ba613fc98722f01e1a2261de6e2daed GIT binary patch literal 2799 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 literal 0 HcmV?d00001 diff --git a/source/img/users/silex.png b/source/img/users/silex.png new file mode 100644 index 0000000000000000000000000000000000000000..0ee07d28f4e7d5a342d993063546eafd0eca0e0f GIT binary patch literal 63545 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 z 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 a^8W+5aq9z^BJS(}0000^J(e; literal 0 HcmV?d00001 diff --git a/source/img/users/symfony.png b/source/img/users/symfony.png new file mode 100644 index 0000000000000000000000000000000000000000..2c746c58941147520c5e4cc9c07f7e20e68b2f36 GIT binary patch literal 2952 zcmV;33wQL1P)AEQp_7;Aoj&rBR-#a*74#x(F&0sJPTvh0S zrDq)-j-laU%R-X)>2TyME(YUobSm<;i^K5>KdX+(`-fwBINlD&3=9Q>!6-@K1PCRG zd*1-D5(u}|{TK`;aOC%7Ui%ZtUz#Sw|2RFo_vVV1&G<5HeGrlS#~A0&8LO`iw}yBxW#yHS(T{ z=asXuw%Sp6NW5slaAa&aqSGJgB;+{%yLP<6XAB2iQz`41lo1L^)<^OG)XF{(M3Fdi zJfjr+ufy?B!!xDuEI-6?ez%DNj=4C_^=9A>qU-oPEul<#C!_OO{KErHF=8yB7uLj|9yl0 zdtn8%;s^4-Nlhuwry_7F+MTG;)4bN$Vo17LUMW8xdak(;<(4JR5b{dm-f?~#jXqNA zVDeT#;AxA`GB-lbk%N%m!0QbOg^mP_(k$}1hDem~UGO^PSaeH9RSXM(Q_)`GYG)9v z?+N2a5hR>NDqD&e8YXYKdIHx9Y9R2aLNdyb=r{bWcI9wkV*GtuaXV8m3L927#wDTS z2o*!Ih0yXl5Hc6Xp`NecxoqDvbIGiRwhmd`j7#;vT~Th({K4>|Yokyh3Hk`+UK)AO zoR}xwfl-)6=IZ?lz4LYb23+BCK+(R$=Mb!!ySyhS|>rv}+gm zOlzb4H=6S3{jXm?h5wH{QPc!^9(m2Nqb{)r18vqBo=ZkkHhExgZZWy91KYkd zb3;=PGKQ2b!H!S?tgOcz>Q+P8%9>jFiYwP z*;7ksq82oi8LN&V{>&2Un49b+B@6;JKOYjjI;Mn)(U&qbyb}Kx7bl3k5+wXBpbqgB zzH18s^-y~T*Pm-g?g%~g!<^^77WUb2caTP0!B5*Hn@~bdk-i&febBSCCqeZ4i6~EM z{U%pAFqU&tq2~#vCH93=bBhPdkbCq&G0NmqfAapw(9Jg&dap$ld(XArkVu9yXWPvE zb5K@6tU=sa6wapuxrOM$5;EHEW4o8HHeqYi+!F=aYC8`|>SyM_rfdg}XTLR9lB~77p?XOP^FZj-P<>4kfQ5>YatyA$s7OHk%`#Cy36*gwfbJf8^e&pg45z zXw*X>fm5w`kcoQ6gVPe)E;CkH|I0fo7;eT;dx z1koL8{UNtJleP{obL!A@uG|xyyjt3{ z5g&_xp@Pfx7G>>{!)ufHc+_CC=H?*iqvizMr>mix9F*_M!$ zt!%&fNGu4EQ=b@heK1}fL7!2yH5&AYboMi`BW%MmNkfFI>$pQ~d&$gY<1~K;i2zg-Z znD;HWt0*h?PGnIe1y8JRxV{FD`zAgvebSW}Bk+%g!j`58JPfqiekxqpz*+lDRlWfDS!1qd0LZWP1ZoVQW z2{Zzi4B77!L_hDL-&clib%lM7etu%caAoA@Nl2)Fjf54W26NDmh45uCFY(>65xQjo z-<9MY5UqVK?CW@Ug2#Rz#Bs@{S&x|t+C~q#@Go<1BSly^9FMb7-lDBD+!5P{`c9n2 zkO!k)BlH?0_m0DLKM)Cwd2rK1H%(qa46#lP*tR)L-pj`*ATK5nSP@`HupFibc{W0s zi550DMc(`j6+b})$>hC!U_+_oDYL%yz&#I%Q}Opij12y#iWA?(aZ$sfp$^%K(;F(F z04wS}vVLDYFu9WpuRa3r2_#;Kgu8sog>9#nX}CZ4A}ag`gaSDo{oOW2%x zY5}URnY@>m>-uUygV3leWKS%mSo0I=l-L&J$e%x3-}dy^eU08Qf?o z+I`ve7KnRpd7^yYjZwIe0(=smbHV;+K`nBp=D;p8yI%ZUS4Y_1a>rnNDwKV>nI!Oy zpuJMG3gS{;X~JMIfdlhUN#w6Uu&UQu=8)VoaT$z?Lueb+M&`HTxaCerZYzs8FM>BP yXE2<&uIajJE~iewRJe;?ZSNAuV4NNP6<`1jg93DOe=I-%00000DvWY+~>nWfBY}y#n%7;@S-;2 z;wrM@;-o6BPL?+I765<@Qf``;hWZM2#8fAD=QKJwDb+2$FC6JCzYG?nYNTwC3V3)Z zwWkD>6eb#-mbpd`m~;fWnItAcNU-S=+%>AoP_L?l#*+D%F)lI z6|2jDr8a=dOE6@gyAD_oN1+bp#c8iTI>z|GJvc5Z7_tsn&yJ-fr1XOX`20(!U}k28 z%uvJK1yhiD``V{&6>7J|_rOGQZgEOz0KDV^m%tZloCEL_^@c$_ws**}+f+KXa8@?# zLb#%DD2p$__~vL9UOTv?JApDR6E5nkcIjgRNGd?{xBAu8nRh{ zgL~S!xrZDD01IZO(ZmsTp?xHqBqrWPyT-kcwR$zey+QCX#Lo| zvPJww{Z(+p_gND}eKwUR8k48HWqB=6=o(b{gvr=e^Gyzj)T-FT)WAQpjSlTSy+1 zm6yp&OiUmmr%#!`-lM+n_3+yK8twm-liz~_3Om+RJx+lOjkInL69DQYFqy-L1}^Lb z;&Rcz;C;!p!?gA=0tAHds*s9ff_t15Wi&S>Z>zI;?9F>)hhmeBX|q zND%a+9Cs8%$<+_<5aZ2Vsfs?~6>o*w_kyD*z_=H{a{!rGz&{xy5eBh4Lu`@)LW5*b zA<`h2WWa4iAb*GoEq|CG>oS;Uh^;eV9_Tv_sT9oR46P5T-Gk(efEXk#0w3Nh&jPjy zw1Ex2Ld7Z)txCWyLCF+bL?!qP>mx3z!h;DhC?1)Bnk4c#O0sRUV5Q>%oK4*fo3}_Bo`OZ%WE8RD~E#Zxo1B27Ewj;w{ zy&huO#q#bIIcL)6@=4CKSuiKTWKUo)i zAYmZ!Ry@g2H%$WEXGptX6tXl@N_$ETRD9SY*w;|BJ`Po2g|a(&II7QpzA0UO+_Gqg zEFra0GNx=eC5{>;U1lRtL)MnufLf5clPr0Z&s^FSS69SPxt21Y)QActNmwO?mKsx8 zj!;r;MTu9gRm4ZcN4!)Gslstyrz)c@_p@@RM1WiXvve|h`c3-YXiai;qFw4~x*wHt z%2K*lx)D=8jS*R(+*{d83%F{pNUu7u_`6o2)J|icV3@3AR#B?ySJN!hNYjvA&OueG zjwE2xPjux}q(WG08FQG4VGXhpkh4Q)^sxHiqvVbg7T@j`aSi5sIAnS-@xY7DELKEcYgU?4zhAgR>7ZVzmR1ML*g*CP3 z<%}~zB^%X(HD(nJI#$I>4U-rKNlbd&qCfS2s(Xnk%QNdR8`Y^^77D56*W{OUOLyx9 zj`d8Ft{O*+X7^SUMiq9Oi2@1j=}~`=%#}@&jU81~ zU!LF8Fm9V_oIA>`o6BK`%P-GfVW>@#J|`l`;h@bFj^-%7kdNS=+pTp zb;i?AB)W9EP&y8czrR2AuMT9{8JGnOhuiL%HB6Rm95&TdGH!Wxp9k<~8GPTsZdYob zx%eSQcD)ZFy!ukw;0C zjvh`aPd>t*LNNTAUZVE)$?iNX6fqa zY3W%Rk_Yk|+%bF!q!gqUj1U4F96FQ-WPdMMZ+kEa^Q;l2{ya9g*o(Mlm;f9nq5;;E z8!po)j&IawJ}sKwU%b5_8BHZ6#0T1C;zwpjq@!c8<*~h_Mx_TO7o-&>{Up;R<a}6WaLDI44GB67`+IfL)NLlewRxm_@v8%x2+2 z6Qf9ECQ*UbP1mwLBkoP%k4y|@HdTl&LWAv(O)F`O{4v!Dw8Pu|tbNCEqS2et=P#U= zoL(MQU7l~@FTI=>cE~khi?#Y|tx8@7y=^;xx=!OANF8KWuEwRtV=V}_9HTbpRSQ(V zcNtqZTpkXIwTh|kbTUrrA=?kyW7(f?ST@wyuBDS3&ipYQ-;LT;rdm%r-O>%ve%zS2 z3q9{Fy(@k8+V+I?THiQnyV1!s)iqq1uH81MIheREy8hX&eb%LAqUU0aViRv3-^f<+ zqf@TVR(hfQcgb%cetgzp=WoBC=eeuHYfIf*4uNxEu@HkWLd2Ma9f2eFDt0xZ4udA^ zJKy@JPK$oGbz21*1xlRDfD)&q!=y`x`{F$o_~)0nE4Wj*`eKuY>i1lRonE*9i2Gqw zpQx}Gw?07fknw_chaX5T^AH7Ae4+xXPH0~9@0zDSM}00_TwjcAF5$BAQ}Ek537X3# znj~Tr&VKj5jk(LrY8bPUpGus>%E{)<_xf@zHWUVmj>L)J({>kXYuumBt^HoRISx#( zGX%A|R<3nEzi6gcTh;O!@CW1ube@O5#x4@K=cO5)eX%)dx^(C~ac+1`+pCG|f(kf# zGI(a*ylV?Mh~=Wu$2TRMvy84A0Dyq;*98X1 z%E1KyAh&Habli0m75L1Y9GFbZolGs5yd9iBumJ!8Z@!OP2Mc!-Qf~))M>jriLGr&b z_&)Cc0yC47{*B^pCrGZNs6s04Y zXFg_TFE1}9FLov;S1V>#US3{i7B*%!HpUMOMmHZvcN1?$M>mRpP4Zv!NLaX;x!O3p z+c-Ir{xz?OsgsAhAUXM8jQ;!guXVcHSpE+uN4I}(>tln=e~mD+GO;lK_uL<(0)IjI z)GXYb>^=UPUenRWU5HiSZ{+_3{|~o+QHeV_IJ;W7xqXlcasHd+pRoVL*ZChdLfmZs zCio}tKM9mwZ7eX`+sTTUsnCMKEzC{nEwG5VE*5+|F0?ZeAnosoruk)1_@g^iDegOBG!OaFoM4<-FIBJOHo;_l?C;pAj5^tZko z{(2;3`|u+i|DydT#{Z|D{w0GCk0S*CLHS?aO9)=WX?Pg`5CO-!4-wJ0K}Cwz44-AJ%= zVsdg~(p_75`F!|thFx$2Yg22X8fQFNu5Ik9i z@^S9|kvN~sJ9%_J(Xj4kH)!F3UeJnbL>zz_Y|C5}ImAq{kbSb*OV>wYlfz_H7un0u_sS)q+@JZR(%rfk1L^{l!Xx2qC8g+qd`3w~s|`{i=_PXTmHB8W+J^(DiH(;la=l;UUtjIrSK^Cv5rTC&yzfhW#!D3^Qf+?TX0#ga{f3{Br4n6uR+Z zi-0zUi3Du5vpc&r0kVI$CWN*`J`wQ{@nG>V#uA>IbF7E{@ji}3q$G@#c#04!Jh)mS z$s00hNwRTPbJ_I{V!~7gtHPumb)HSEe}Q}fdk}PnPq-fm(x)YXq7_WwMFe9)*~dM~ zpebe<=3S6sN|6GKb8}1^(cl^CrZQE`4Cb_e7P_xM(oi-g&0(nqEP>U+>7$MKrBLcS z=Yg|ofMBkyw#~PXdYFT9{ByoCEtdoE`c$@UdlrBU5HJuv-JhwxDrj1>5^&+$JrZt> zTeNU4SXk;FF8D9L#4Qm4EmOu~(ecJ;dQgBy;68P0VqWH?^TSEH_HgT%Bcl=v$p{OQ zU~&v8Dm*Kj%0_gpDzV#QU*J`sIB}J5?fT%%4EzldWZ*(3im-za_%Z=F{tVG=qo{4a z8OFIzcaJ76sT)qJ5O2I1at{|ewiZ&=?w5Lg1~Eg7Y8-;KBe~N+i=FHOwv|LKhV&~K z;S*d`HvXVFqbDeYA(ly3LQZelllB)p*#zL$aRWhFh#|Igt7o=oBLWjpooeSaW~}uL zWj#j|R^ArRa4P{U`K(`ly$W;7C=Z*~KSKZknX54#Nhjjn9urb5e?~5+Rokm<_L|Pw?dPl~a{Gki#Vv zLxHTi`kJD^R*I2~nIgjkErd+DS7}=T1^t5w+;39KcfwG z%{IrjQ;%*BuLv9Q#Y06p6BMm%D9{`-rqvkLHjs2d)f{yk?8D^h(2j%UfeP>mk*Kb$ zXq$n=-o#f1Un;dKETMn!eD&l@fOfsu*LS8XNCxN7PwJfx%>T`D!(NKThNa|e2uB#m z;h3y@#a`!*LzBddT50IfTPi|_c`Vm7$m+{*B}PhhQWaurLHZn|h689#cKh&a@?h!U z8=2tdlBFZaf}0bj zIK#QC(}<5kR*79g2qEqtRRL|2MDCz9nP8aIIpt#pwW+{y5*Js)$M^o@jZZLtx%u=&xg}3ZU{N;G_gi5oB%ba?it;Myv7$}) z@co)Kv3okM7`QjSPONEAiVM5pHU(qpHZM2bC4hd%|EKYVmI8X{}1ke5OU;td-$2QSNDb@9jD%rNflyhq&|-LL0k_@;mDg4;O?mtWW<-c7p$RX4rcZJHBQR{U-y`;hHHL;sRPr z2xYr@>7m_|1OkFx-YjsX?Sy=+R_sIctulUuJ zA-(tJZHy=KQf8p`5D~Cw56dfFO#+-~x1d{nPT8;Vlj5y-umJ~k&~YwZcD}YUCWXqA z*))|aZj_JRx=Am4%Cc{d!m_WIfk`iRTo(}ULzg#46h#Gt#^}bBQK|zwDqxnRa2I7k zvTqK+L*Cocx5{K=wt#23OKu}{r}xrZcNS&3$jiV4sNonakl8hq_--$9e7gV~h@B-y zn5ypK*ZLoyEEYPP6UNQ1fcb&jqMDo%!!vjTT4AV`!kxGc4C4v2KO(k^M%VXRYY27r zM!G?6O24>YhJCCjrS%u;H(z4Efj1UG7UND7MMqhQ1cHzZwK~MpFi6k{xY=-7um=TN zirjEwm|tW@ntBMjk00|HOUtnb>Xc$mk=Oa5b($v->?K+Y;IKBJ){FJA($tjEXGL8P zNs==76qD4yBn>DF%e($|mwmfyFL~<|$?xtlMmDB}rVu$<&n+Lc<3wxOWA!?HiACCm zoZ*nA-GJm;nRYqswUoXfp^3Z~9x(6Q&F6i*%B0|-!7z^yJZ8>_Gvz^w-92ge>Yb)9 z=0A=+KuP$it5AG^8x{i{5!DtdZ9iBMo)YI%!u};Y6=e``;W!0QOJsV z70hn_7izi*&Z@*QXj{i0T!?Ce4cPR;^8&x@VL9OfMa%$Cqen(E>+{em22zz4B7yNv zk0!f%4p^YNt}5?zk|^<@XL^r}EP@Oo+GLX4?Kpd;C5N>9joW@_C)MrVo^D{Acq^`q z(XBb*6-nHE#aDP4AGYuZ?k%~O8)hod!cx);h=#L5-53*{`^RVR`Q3P+)B+kFxTJ|` zDWJWy=a7P^E*D+vw$h69w;9lCtAW&S-tyJnKh{i~%d3{G@b#*g(lBri_u8C^cB$dP zbl1Q!;UOFaXRC@KI`9F0*TB+7h5_-`lZ*taB~nHqp9wU&CAS-0N6Gp~Ap6Fqsg@Fz zji#a8wuds%omg%pTxEWZrCI-6&rK~GMZXr+R1h6CYCnQJYt}8!Um2Uh4s$w$gYNgB zD$ZwQ$_lFC(0?JQr2)or_2?MRB*R17jFG{NHcflY1Th6#CV$m1$jtwh?%4}-IJ1ht zv(|Ak-$Y3NP00GitmjwmZwb}|>i0K2Q)6t9?4{gG2ntoCWUMV+p>ye^hif}o#dl4$1ilLVKhB9EqOAtt zT#-<+D-jzmbyj&SLrp&2vrE<*hYmj(aJPPj8x+l+&!`G7%pdBM?GW#AeIK+$Uw0&s z3(RO4Dhf`O`~}dcbW1eJlt2tczQXTHj1&pjCFJ=ffJPzIXxLl1bP zlI?izq70NoL`GUN$383>fA{rx4URlA3N*0s_3xde?M~S&Zg{o?Yf0i(!?PG zv>;H2Y;%BSzed(O$T`jn_owv}Rj5Jj;!&+++6r}4$K2mm6}n&~&j_0$f$9XsUX~Ah z3X?A`q+SPNwy5q#Y0v{ti6R4U>nQ{Cq7)2_aZ`eM9ix|zr%fmt@AGDzUsI7|G3^Ga zyRtsrc&;17CRc5I(>=`sVIKi9;ke4cEqC?&6yeSr(jk9t4J91cFPn|1yKVdZ=Yh3)L9kT zzB#gZBE&qh^96sNVvAPXN7bCXAD~_aHoMlI?wuZvAJrV!8v<(W_Quguz@xNr)^0aH zi>b6#Rf3xip($77zP(fFpB4owAw>1M%|TNzoU0`+ZKl9#8nI0JrH7DV@C67{myuL4 zZ?TQ{Bp4Y;?G_!UffAC~x*nBGoy7URoH~e)WpK)~n&9_fg)nM1!APBleEz-~6rjLp zy~w8|5?vij>Mc2 zGEH_F-5bZ*$QZMNC?`dvR>V$uesfm6S3C>0QkN(d$MhBcZ?C!4mh(tz!h9?O38g-Bk*s!xmR& z%q-i3j1_nZp&7V4Hx-6nlJ%8(u3SSLjtb}lW7b*D-O&Y&%n_4mCnl%spjmMb9f`AP zynqbHB88u9hFg8+c3qyIij!}O?as?d#a2xOM&anc%~YW#^_j6Z@gDmuutLJyrGjTf^ij3{t5}0ZvOI^t1$g3NV97e| z#QMagqx?Hg_;c_)JuV=(7QB5H7NL-`=yR1E#~VL9abcE2QMzXtjfdRR|;d{y3O9Rol!Ho-z?0#7-aq#tT~vv{FZ)uwN??pQ+&Km*UDw&ZvmVO&97EUf@GbT+hhe&gix z%!9@P1>asV!D1A5_JmFA)$E>yTTWIl*~BBmgtP|cgn8v|Tm-`|NviwPCJ*gOiVLkg zA|=k8+Jc+rl@({GUl{;*0t*#Q>+Vh}0pAqYCXXtlu(5+shxRw>$n^l>##WUh*CK2P zbNY3~tRWx#TRd7zCQOzw20bLfo)+t#KMN3gajqto1(fqv9IG^V1EYh`9?8^|*pRVV zU}esQijz5TWxxzFmbiVAK-_kFmM?6agC!N=;{|rCia(zaO9!?+-xG$~ofjbnS-6nMd7_s5M}H=`qLE1t?-+&9ucCFv*Bw4L zTqg_FOJ}!UYd9N-p{j?&D~_5#@Rt7Kc{JeIn0P$#@91{+g6_@Iv?N1j3ML5EO(oG& zDs7ol3vFf&$0Eb3aBw{bvOndqlHZ2tl{5|1T3MG{KPw6Ap{o}x%9Z!hRsw_+%ETzm z$kdHBeq>oLe{(6MnIjF^UA|5PZd=K5c`shEg^b16va?Y6rZo8_vwoeu<=K-D!;ViP zFnB?zOw+35KjEq5KQGxea($3xN?9+M4(KwC`;?+kk5_Dtw(M>O*MlrNC3RW!q(6vf zgze{+BsYg1VVk=OVd+TAgUz!hd({reMR zK{C)j2D=j+a?Jxe>1xwP=v)|`;Qed8w}y2v-(358DZST(pjUD@LEY$UP zIhoj>8>GDkp5KzNO*li<2VM+N(?opJvOQCT%v4Lr@yH7UFX(zVytF1slrSRd`4jms zQ;*rF7|ki6=&2e&wLgAvtUGh+FKU+{BeY|z5r6*1s$N89Rz!cw`DToxFf-)HYmSct zL1ab@R{?hzk55tWVodCA^XZ2}p5JeOBmIg3PZChVL582NL_0CA1$R}~-pmo( zF8!OCXKnd~&5@quBg^xA`NMcVF-gQ8b-!t1P*#U>lA?}<;*QxRaTT}hox zZH}uV__bXc2P8$SLr^L~TG#l7a>kqX>Im+8BoCw(y{S>5K65n$U5$6epu3# z&l)OrNRUgBV=#gsi=^y+_?-0~5a+Fad!ZSA<*$t6C)|*O=53=<&wS`N$pleI>n_{X zcfKCqlU#@=v={8g9pzHlpsuaiC2!!VPBHs)j=LA{>)fBKV&xK$(lUnU#!9B#m`W9n z700}hHxn*nIQ#M9Trao(U==wSI|0wDSK%HEy8!q4m*V-{FRq$)3?1?)31#h0i2#8f zcviI4AEvM+4xN{xC?%*@XlrKKhy#sb&N2G1>p>*nf{CEn&{N45%5NJ!`*htGO{X`< zgqPz5k3`+wPigDaYz{k)MNBlt;fb^27Ap%-{Yf{V1v)fWY0@|S%npD(@Am42TX}Ql zeiKQb`N+)RGWUP#`~9FBaXgtUj5jW7=HZ-OLsTW{R8QQ3%)Ra#@}O-v`qgesU7!iV z0mld^GM}#|`-%)}S>`^D5QGIi8`PBt=MTLstlZ7G6=y2F?mxgfLc&`oz^6XW=y50c z6gH>5L6`qXne+#$dGo{C9WL#q$8>zX&p`C8MNyZuW}TYqScu0Qm~+r-j6G-V^o4Zx z0HvU7`~jXa2VjK20{YcA?6$M(^|TJNG_>aOF$IxC4emq@%X5| zLh$XT;Ot?dtZGGFM@WLj;^?tcglA~xM#aFr3MWp zd0Dyk$s_-(^<}szarbEN^W7#@qLIuP~TL z9@a>_gx$*k4rK1AGOYNm<$xi&Qsyn!km|DG`lU*^8QAX*ApM+=m#Lb~6K9$}mL%&Q zryw)JAUi9+`&wAK+)KI9vSsa-P7YzRgboaQ%O)Hp`w8Tml2^>J#E@r-B;ocBA1K{L z4DW3wz1=oQA*2R;>HhYdp|bmp4ZFnD=jTFPP$C;d?IdEMR<_#sC6w2uDEYmBF|Kp& zTec=dp*6QSODRmA-~vEknCkA1-}a`|!jPgOE&MwCw2rN0-1fNSkn1D8Naa5Qob}(W z41*{yS4=)kR!%p(-vG`l{V^vmr8Fp6t)9mdE#~v-lj=c^c4vYX6NiU@90wPO2(}8) zj%7+lhf#C&OE=KUrTaw`@0AHQ>-h^QDd)Pu%(02Oo_8gKbsowO^Qx{hZMtBxVTmX{ zsCh|)(TSmb#Lb~tKEF*SFG108t+TE1eeqryC_KJ{rZvlj=U|7{3>$q0@GY3m zbSeRuL1_{-`G!tRaG}Czm2za$$4cM(1Y)=);|3zKe=&C)CX2A;yPUCeKhq<8GvjQ5 zYX2bHRx8L>3u+yVQRLacRFLYO%u)!}W<$Q=4{U(Q9q86aEU}lKs%-dbbN`(jnD9KU z)Z1_BO;2bo!OV2zlbW`DDcTgByUR98ovj=<6I zv#u&THEm%()UQWa7dAU7b|@$Z^6`f;bs8|f>O+W|#D@kO2v&xK=6Z{BLF^dWX2fN+ z(NnzjW7-HEASN1F1xaVkYUceM`6QwMEmvtKX;QpxZjxomj9grv8;q9Q!H35`<9TzA z-g*yab;gBsr;_U&gO@fi{W8WHcNWZkuK84o- zARBrj?GQUuk3#t=UCi&dx_{Hp^6hznwhQpj0ThKe0Tklyq8LywLM?t=vb*I*ZFyfm zK9eL^-LaThUqe_lJwPUb|?zMWC=!Elx-r5^?$ zCmp{%%RFpDd{;sq10|&Cxq}E0UnV{=wtL7R*}Ny9HC#>DflrXL?bt*L@fap0cdJ{e zz+MX;EHdGuOFz6LYckbzk%jE!wU`g$fW7nCMLBKHKJ*8J$d;7}L>~4-E9sp$9CEAe zMTIQ+OT%@JwyJ*^jOp@IIm=gV=alMpXJ+whqv!kEvY=FRD3j4qW|+LLSn*Y4;K%(<0v^PQ#ttQ2Lcoh%4Q0Ex({aT%cD}uFcGn@aslE^=&Or5*zK^_f%#-aoFL! zmamD>+<4WpeCi`=c0y^{A%L&ctCYEkZ@LhH-jeIDE+POa3*+R8Seqv{OSw_^Ba(Q2 z&9c*+sf6d~`$*fv)5ieQ@=(PE;Q^zFjEH87=5PLyf-e~Z#Mz{qCgN1zUz^ca-MB$0 z21-lNAp*N#4V){E9aB3I4!=mw_3=#d#GKWypGjP5hxKuNNgaATRXIrOP`t<%Jb91@ z$M)S<9psMXwQ~;vLDFF)rgrhllq*;@axa2VflmWJx6H0n9!wbpCkb`NQEH-&&px6` zxgx4KA-3FWf-;Sjq3|v25{VoG$t)9}kVx>TV;^}uw=HrHcS&7~LU^>;G zKisQI80PR0#OjqXp;S!+tq~ZHC+{<7=wb z$4+T!=)A%&cHa(XPk6 zVv#D$_a2M06v*gKK8)XH*h!--84#P;DiXGxyZEwQ&p;uAFC~iTMgfemUhZEDel94r zGtYIl{3#lr6%FHh|4thn2Tn$*>eh<~FG1`tV_Mf?xxAB8S!7zuW?Z*ZbW;@!Y%~aL zkRS=1UCk5%Wz5b+Ag|V$Hh$}h5=3u3K$d+0@Vl~JbQrjkhBY;UP4rVkm@w{Rd0mB! zinPG5PLfQnzYE-kcHM`e1M7E-!1ACza^7_0PurR*NIjG;ZwuP$F~2Tm+8aHfJcG7^ ztFPV8luvcPk+{lJRJ(Eud{f8;Q-gwoRuBA@_JCuA=c0=}Bpsd1yBbEf$NV zP)E<)4~?o`Jl;w@+T-xt^HnlSIEflU7tu)TyPo6qly3MITSuMyQ%U*Zgl1*y=|||} zi1DW*UPSC&>Qo+)hSvA@>9=$^Zp$_f7%r1EbDW$aKuEn>je`=F(MK!co4qaSmT?v{ z148}1aKb)ww~pR%LEH65%_i9I?DL9}hRHdig^bwPEz9mYlS=jtkpTL6KMSU)-iQ-5 zL?H%mv&~%)+UiFrJeyCNNT*QI9Uj=iq-0-LZaq}XFQ24(!UHwQHqB5J7}!5J=}LAH zZJ^rIz4L@_s;|njyinZqhu?jbxa>wZ3ak$cdg9kMaeHr^HeW2>J=(IX8|YTIq%XIk z>$j#o?xGN*8O|LW%3jeK#JdV2-}^83J)&sl^fl%s#(!64nV_mN!Rc&;&iu@BfkKAn zZJ^rf;(q%Kgue>0f4woM&*=)hq5m*{4b*njz4Jp<<=}PdLcU0AV2pCxT|c_hpykb{ z-&3rROyX&qgXca{{XGART`&q^QjIhWGOrP+^T^M;#^zV*hUnu*##@CkDkyJ_uYNd3 zFaaOXdT@JpGRJ7}O`gWLITY_kh1+bay?G0~%+sG&dI_w}`c|MV8VvBOGp z#TSGn^~UDi^9$!{ZEvK9;p{>DN4q}bao`diL0#hCwZ8#Us z=G>zlc`wNYBh5!^5-Wb}f;tSDUt`#@#h-}DOVI&s=K+f_tsEkwgbRu> z5gN822CWhJA}?-I1&bn4d0aE<9c&B0vQi)0su;_+_@TzkrAmKT6&%>}Ae|4paSvrxm%;%vZK<5UiN5aA4&U5` zUB%?$Kxev6ooKF#k#icMWY5abHm;9!MIMxpNunMoUJ3zPg}dVLri7=X6tHYWYuuNh zqDsMAHa7#^oips8Ny-~6Yd$RLX$!pC`zfVQ&*nW>{0N*5`^is)6{AyaE3-rVQ6CY% zrcG_0R(n`7DBu14(>5PVL74oD{hfTNQ&$|Y*V`kNYBs{L1E#Rn?|MOdHsI_VhOn|^ zhg8YKU}FjVEDA+X6wQ6*%e~g-(j&5GaO6iE0gU&Uq3Z|5S+PD`?$OHO%932`AuAHfIdXr%G1r^YqWWrFmJNYj+fe8hiu?DM?1)ld@ zT!(dy4@PlR5Ib<{`G6*!dh7C;`Gwu~9ifxI-w+?Y4U(!NKBlQ-SN!P;g3GIoKvIud zh2JmjgZwf0UjK8*lEE8SRwKMr2edgfSVrO1#>Wmtp8Fu|!D_fk-Iy3(v6HF_kp{u8 zkGx$J%s%qd*!LaD%A$l$?XQlqI~>im0;<*wa2G9|4@>wv=FxJ zU{7lwS?wM7RxEg-!~J*xGG^B!L1&{+F0)rIEdo{dDLS#0qMX66x!JE5rpbo}o&}-E zt6N`mwd4VU6kZ$EvybkahYi&#ZUE_;rzKs6XPSFIY^Wk-0Xh(Kw-(cyu5jvGYM!5p zk;p`iMSqhTfM*|_o zDUr&;$<2Nwp$26M?L=RJP_!-L=e~K31_7OohF?5Z%Z#bnM#ME(bL!pEP7v{p4J!=U;Pi8D#Uxz#D#oB4XlsO04A2jGt&et&P3WZB77CN-%rc38b$< zgeTgHQ_p1v;=lUf*UK2k5Lem#@o7wvAjy9f`JVK9{0q<9&M>lkx%S`q&2oFc=?-M=0CD}BRd zNFqucTHf28Z+gx2##lHLxo!jFijPzK95FOM5P}%dANnhV;5Ud39|Fe?DQrU57Rp|k zHVqG*8h8vI-*+Ckcs|rw8H-NU7ai}8gs&;e{&~rl$8eaz0~(BYVbRq5(5?jYNxxAU z&t|;~v}OQaip0m5t6t1UL!!VT%D|i=Y?!ldS7FIYh=A)o%8oXQH|0ufw^6K=PnoV1 zEdEeuZ}*AE<8^WjGr1JZeuA1Jpv ziAFu}opJR2R}u^Ma?*R8PJtlOA1NmKi;^)!eL$ZyVR++nYXti{bys4xoOk(ov?Cs# z0<2n8;DTn4juY$9&yS>%%b(<(9aylfvHobk&B*faE;q;oBCB({0Bo#tyhg z|E|R>$nZhD8ahKhOzynw2{8+Tt!qXxCsyd}VV{$~3$Hio)cfc)%fa0Cp0BT0-Q%-D zx=>69KPU$b7Y{Y1B}pqC_U0WVi%b}j1fl!{M`*>)obn7P<&l&MrnGhU(JW6tK}Dfk z6puGJ8E~Z(aa}YbpEmGR`%@4rAXr^P+(%_fmbgrV!NR-c+ z&n^&PMDz=A$i&~_9w6w`W!xM8Ts%{9y_r04A1x}TYhb`oPa->JT_s%S(483kLXjrH zMNuxb<8Qn95#S8xko8dUSO1J#>?9UWs}rG`tkKsS?K7WQ)qH)gMLcw&Gvg!t>|%3# z@$7h_wM3geCo-9*mD>Sva-E4rzz}D^pKKI@;$fq1k>U|d0;e`D@HIz+ZMvf`a!T)- zhv(oCu--7ef;A;k^E^DSl&QnDB{&WO>z;EC8S$`mu;HIllY+er`!&;hvFnpd@6S8t zeFvM+d--&EI7kg3ax^=f_ifq`xU3jrez=LZUc`e7tv;5Ad9|66`d`bEGIs9;MMF4* zcqMMmI=|`u01$FtJbk==p&rISXp(cMrY!A+t`-=|qDtI0m^r z6JvQ6X=(G^TYat-Ch92-E(L{K@dC~eZf~FCvO)JksBDR|N1s-aBb##!6(dQ?W!5~n zBR}eD^I13;f`#bnU+7_M_!kl%?)WJ-qg-U6z_N%Ymac^FKb_SYevd&Gp6uh6s_a_c zag1XgbR;tzY&Y*^cTF)l!EQA-KK+Q5&gqL-xdg8iB1wPozm_q;b!lp2U%G~DqhuJm zuW+CFYOZ=^^Fu&840gYjecF&GRrCsGsw${<5b4HC(02S92-1{RCSa?7;%mXYtm&jn znZ*@0Hn&(b>`)~gO7Ve?73Xxk=vQb3|+<6z6~-i`XEBq`INEEzws*!?qof~clpEKA9A`xLNYi4VA_mp+$7+7 z8E+fn$ad+G1*(Y1QJt)^!D~(-PN`r~*}z|1sUsX`v$($|A|WEjyHAFi2{8Sh4M1XE zM##oNSn+aYm%CxVzY8isFqH@lj9;pt>V2g6DSd|pcMG!= z`n@Nqo#1C_=K7}NRNx9Uax-3PqP*z$!Lu726a+cE6THXV0b08eBxsZm;jBg(ygl?R zL*?MJ?CMun6~-Q$@;C&_Sb7jA;^N^3Z1Dy`Bv|sbwK2!7W575mD1y83KW23I8i+99 z7HtK}Aj#Rq4;M3TQ!+lomx>RhBc6ye!Pzme9Sz%Z>rkIylq03*Yo0F_kERni#Y+{- z0`Xgt{P@EB$8LoPRskkxBAo39PCczqLj=g*t6Cr^pdQGRJTRXnP{x6lz7fKQnUoB08AvtCipOf8tS5K!~Huu4m2t6e#@!;D*{L9$@a zW^sKYqZ1(udZ{807qHvUB6>_Tp!_e1Bfoz3QcTk`o2jz}6|o6u_6-whdUpCrF;F6- z6u@4eKP31``Gl_=8(lBq%|?A{>B0(MQ3_968S>9Bj#o@r=D$2pd{4aW)W6ScBmX}0 zguWi)*?JAo45-mIh)8DLsZY}aQ!&6N^hkiz!oRSlu$FM@JcLF&{x08)foY4k(BLeL zobPS#;+PvY_T!4+Tz0Hj_Mq!WK}kP3&QrJe0&cTPfNb4IRsmO*S$Ky13+Nv4ygUA3 zNx!&+YuSf~GY|+5r2;aC($FEa6KZ6bpkRa-Sd!E`&TB?X;JQfajf02RMaP1uw;;OX zSd_mVjZAtX0l(s)DmA-iy_|ie^55T~!jM=(Aa041y6~IksT+X4G4>V@9pbWe%KQ=cs9*#>L4sj9u+~XLx@) zmD?uKvv^foU7F9~m5F#uxgOf){jC%-26*BpB*4!m9eq60l!l<}nANb4=}eOI<-fbO zqt_a`B`r>uGhPe)>Lkm`_}$=y48TAPSAVV7ea>=@C_ zS~tXpH-VL1te`o8l>61CKvhsc!{wCl=8b zxGAx1kaGo3b4^6ewnIcaaF2M8qmE1mv*$t9SVnCL$yEOzC+C` zj0Mn<$A;U4JMn(ZW*N5PKr-v*f#hERty3FBn}6I`i9h-TTm@}~GQulFrCINwux z?}K5@-}?Y{45{h9$#f9)*Ig;$-7Dir5l0r+`8y$L1H8a&`01;Rto5*ig-Pnfs2|pNG2qLb4P*)>{ByR2;C5)Pd;rdIwmc6RbEBfD3h}wNL*UAd#F}bM+sRWzX%5*| zD*>_B-ca6G;R!0%Q zLBuBWV3)=LZ8HxRq{9ZnawHOo+=WZC`eO0Fz=rFKZv-Mfv2#=zFsbXai|~SqfBu!k znO(LkOxchqJq?oI+x!5q0Y{>4|u9diamL6cZ^LFlHS?};5vA_=7 zN#adxV64RPQ2OW(oj0)DpyH3XBW3_A_A-`%V;4-&Xc^spV>y`*$w{CJK<(r$uNZJz zSOg}qfVRC!m)&K1d49AykKCjgR1g}@PWcs;Lv)aVT{fb?14+cD*f}qqhow=fD>pDJ z0n?(}vELYN#@OXK-408GRPh*6x*cw3v{;QDjG=M?&#zIon|$+*k|^SfJeixy(i_LI zj9s+6Uiz!K-_XiHPz5Re0??N7kP=+Auk*Rd>E5jt3XqT3Uq)m<6cYtLYPVmS+GDpF z?)x=L0hLMG{-VguJsAi+XSINC7E2Ci-_-(ci^|toOBdZjdKv{7Q-qz7-EPxQ{xRT_ zK-+On!i0`4xD>EJ0jA>71lOV*ZOnsh(k+3o%m5GyU$K=tA_}jX=q-0Z^bN91Es%n7 zEC|DDC6Bx<)R8u%0q2?LR9SQaE{M>{)}46@($p{B>1SOx5~F zeejnL!_`!00>Q5O#51E?FTDz?K1?v~&OoCSMEtrlPC?>C+c6WAKIpAN*aK)=3W+@T zqQoABmtnDP>inDI?@)K@Se27WwWLh{MW20MqK_jXWTxGw$nnsriDc+VWLb}~>!e*F z_TnqT+;NuH43Ij7+*ftS9WB0%Y^dEPe1ZZt z1i~Pt4|1$jwhO1fA7-^WvCwj1{$WF;8EK7E-+rfW&|#rtP?U1*%$yjOTdD6wdSUPk z3m%877Vqq$F_;*A$~;d_G7#q8ioN<8>`<`76q8;bHY*w}LwDm$7me9xv%8<`dn;15 zGftsB#W>+gVZMee>|q7$D51Hpcfj7(vUA{A4?e`Me}KjR&YTRJ$@;fx+8Rdfm%cpDl2 zNZ~BD`6`Eznn_)~g9qh%LjQfxv<-7UIuUm5TyqC)^1%(=H*gspbzhA_v@#Di$_WO- zawk9q^(hS3BlyJ%cwscGLxRPY!;kK`3$jv}`3`n|iLbtv*xT<(VDnAQyH#%J{AcbfA<54z5b@*T##+wz~6vLK~tAiJiKu4Y`EfLoVBraktJ(-3{p?)C0D9wVN>ei!WP_j zZwVm#uTA&`?{^xvvuDqKsBhoC(7}i;T>^t;sUAu^4f=KwTu57vm#T|0dIKrip*|j7 zWecdc$KNTHz$ODR3v?gN@Z;~+-w96 z=8!(rcs^p31V-2rdd==$jt`j|BJ;lOt8OEDW`iEb7wX+C19y@&q{DupsRA|fPHcJ z+(8bsD1VW$SKq)o^v1$5ocSm=xt>7-rS90HGVfabOzGnht1ox;o|6oOV*kZmHK42C z12~0^XDKs~MhjqPlA8OsL?5DqP33_Las=wDqWrs|24KQTCJl5N$hhk-I#(s4REAI3 zjJ!B&A-Mgv(s1X^()8fn;v2q#)6M8qeiCPm({P@trlOi8bmVC9g{=tYSKJ!!sj`PW4fX02P)ZcV0GUS+Cso#8a5kho zWxy%sHQUcn%}0A@zD+U5MR@FS;#&fn4Et~iif}~wVAGsrAS|DT$anZuhX$np03Ciw zL_t)+4%8hzM!c)9s&uM$$}!)isz{x~&TOd_21-M5*ky|HPQk8@XUEfy<2azM@ZpC^ zua};dUN1}pJ|(?gc~%b>VIn%)<*YpK3P^z{yrfj6!*n4+F%F9(CByLad-r^fPDA%vK;yzOq#XtNgx2*;nW&f5VCA`<}wyTC6`a=}rnDoI0I?X`nk#!!>mj21x)Fk!i z{YO&toGLUh*rQ^As-Rz{A-&0S#XRlYGw6%*A}XOz)G5a%+2+Yb_la3`nTN?Ybcmw{ z&|(_IzZWN8yBjPQ0!U?bXPzeB0?r4;l#OSoZl#3L70|W!{jMJB@^?tW_2--^-j$)E zqM1yUOnHohSM6^hBlv>aHXWT zz9F~UF4gpl^pZLn&M~fSLJD?huDv-1m(7whUU!;-u&Nh<&t%kT>0@xC4J0&XwDJP6 zR6y2C9=NE|izlBLnf16MU*n&BA#o;9BV#NQm~1Wn78ppbMW@IzYVolo&KGYz`vRls zX#=S;G$QX-XtRy&c8MFD{{V{-^{GqcvxW6fc%UorA?H~AP*3c>CX&|~-Fy8EpC78fqTHk&J4y!w^0exEyqyG4#CI0>gl7#!47OyPs z{7dlGK>M{qTmUc&R^f&1I7Jh;wU%C)!klrxQ(3v)aoA*64`^4pl~_NN-&r!A!6 zs!Jtw(EgJ6>~rN(%s3SPDl3&Y&LfK$G@3`oJ-kqY&iozB!?*E9QaAe0%)3@UbCYux z(3a+>n99o`fv_D^58P2qg9<(4sjriUOaCjvjFnw^uoNl?zoi(Ywd}x(F%Skc#-4p4 zw--jCwqt>zcT}v>>bF8|)cjl9O}9xDZm;cGR;h}hhu-;T33u@};V-;@hJ`ZVN+nvn z8R`z+UxK3!>L^`9LiP`bddmgN6!60~7CQ7G70(jfY5R&Yj}+{!E$3kE;<{yS63m{_ zYm9Ly|2@0(^}sBnH}^Pe48S-ENosD=aT{7n}q2CZq?VRlvK7fmnUt z=6lg6o)R8_W5vgxDz7M*k2*ZZW;?3=_1LSgOY7w@bY{fJ7(VicNob3aI+}kT3YlV| zAXxI%F3-ZNonL9d$#;x8X5TojnGry#usT2L-l;(fDCZBl;O9sY&n&!Qcs&MI8m^;f zf1;4{bre)g8RcXkWFA^N7T#@V2{BHAlg%o?ZO=yuq(Tt?;wwwcLp7IbtSLVWbN_T_ zV60B_iKiJS3^J~O0A03k;|-)??D58T8~k-=zHs_d~5xAo|oZ%2}q}`6Htv%q|hwZ6^ss3e^M`q8u1m$^+$OAnXy< zSd(;gjb}vrcia|Cq!_zr=Nh?-_bxM_^AF{?18)l+TbminP-?XvFhHKdrvm*-eYpmn zPa-4U)ZH(mU`LdqtG? zcDWe{UCPD+ZHNv=2gv{$;KAZu1EKyfK$Qek5y11siwvQa03Lpn`V*3-ok4^C$3FN7 zrx(6fi7q%=X9@=}H6J@x=%v;kZ4RbOyGK22V1Bq1+l6E@c{<9NY_}Y||3e~?I7LG_ zst9`E)L(an_~4G}LTyukuEZ@To+@Rao~Lggn;HII9}kV+=%!tF_8Ah?w^6tOO?pzHp1gn7%(^*g*wwUZ4GjGWcepIFP7X6fycSI(;3 zo7GN%wi|Diw)-CJFpkYOD<_cA7|(Ds)&$?694+?cQrlB01~Lx~X}_w&Yb?Ir;WZDuI$E#1R+7KY=y1R0zCglgKKV?E zJTR`qq@&An0KtL{=lmP|7J6iRumGM|>nFsPkHC}Roj?@ka_D-IJp1|J@_T9rAY@l1TvlO7)dGpC<7$FAPHcm*=v~4va$T8C`-DZoRevy}LmSOqzazvsR zY8=I`k-+r}Jyh&(VQ_YOCAA!XvUs2l$(!&`x$rJiY_Zy(V??#i?4JyV!8w(f8OMy7-9nD8!|3J@B({s>l0vvrjaFA$3 z{w=S*QyD)(@#mOTRN`7`2GW8~9}av2*hdEe!n^LI7U!1ZPZ19jr)B>kQ3=&P>hKvI z6_#2C)Mq?;(~b*ot}2=On_{zX$Z`@uKw2$80_j+kx7C+lFJvB&%u;PoTkW^EG+uV0 zF6Qw(=%LM1stDTB!)q82gHaE7kWjSk(Fqct_>2lNRGTAs_Aob^1Tc+FCW13kXg^U= z`(!X=Hpt+>lOuWc)HkHR^E2-m_jwT0LdIm2!DCj{k+x(?KsA@Lch!2jSM#Nic`O+H zFLhKzr(i)ckL3nSlZRF!h=q*}IO07o8Ox)fV|I0SEV=cWxJFT5lz$G~HF z{``*7pXe_qO0O3u8fRT-tFgF(coxaLt+q#e!_52=QgKCfehShTj|^?R=XU!i%5^SX z>z(L?i7LMp)6tgQWp!O4Oodzt%5N#MVIgQkE4KMQtwvN9d}R`tt=) zkHp3!BXQPfc>b|n>qK*m7ihO3=1fpJi(A#>u1pdm^; zVRe$CVmxSraztroP6k6-$gB*e#FH1>B_=SXc4ns-6YB%ow{N98RQ?MOhoa<>nmf1S zTEnI=#9;7XX}afDVHORIK#vk_o`hE0RV@sJ?Y|Ltq}7h(dM`TZUHoB>6Pbya3v-d8 z2Nre#yRg6Z=0QsY`RWN8mR6(i!YAd&W+-Sb3wI1YW@Ogz3eK9 z+;O+jG*i_=zjz#^6FT8&VUVZ>gE`BGyPIMjla0#C{y$d?>Zi5oOH()=w)xx(Bzo&z zhT2N^K}cjk1a(O>AN4)`nM^*LVYNSx4~jA2KeS8z4at=FHztBns7(PG2bdD)r1CaH z-mfscl7f5h!IEkUXfRhck6daiXh1w*8jW|{EPkAAuMrrK{eK$Evs_d)F^~rIf~tm% zE%zqJi!mI&)I8=`NqzT&aRxQKeRyU-(}agBvg?VxIY}1mbC9v?%F$jex5z~L^pOVG z56XUCd4UeZ-+f;tl#74zsj(w987L$tIzQCme2h9IztaR1@xiH;dQ?-9mWtUBZ#@mv zqM|ih(1Q4%wo9&1u|Rokedfc}aBXKyCWBhYoOt#-RdhV%(!cK7)zI3a+R%3W&B7d4 zO6oH=Lg_atE&A44QyOl$PW*aPCcTF$wgGZ{R~)cCs2actFv8Vis?HV#R#{n^#@{F2 zO*c|mY*iNC0nkI5ib~Wy^JM3APg7!z_)aN=pb*Gz=8WJ1FhHo+1ZvGm&8ek?Rsd-r4;cZ z^~%`Uwfy%InSbD6lK8s(S{$mYBDdcy^LN-?n37$&S5tM72JX^4II6huq5BYFzLj~~ z?lpk|jsiYzw;+x0PefT`fLb{@9Yz|*-y@#kD_YJ8r?HRrio&Lc@lgv#jgiDpTn4HW z5?_2N^Z$9E@GKvtej`IP0cqJ&$Zr)q{7`9v3YnQQG=jOohAO3cz<16$=TuK?jFwD8 zZlS4gx!eU`GyXdEnn|5&aNDgV1%sb|=wR_-(p3UD@DksBuO+Ub%l2c(N0-jT4^t%e zM$zq>uWw=w*cJNlYjgv33{`6FlBVxMf5ba>r!C6r?eV> z{Y?q1vo^9tEZ+4y<$3~Ad>ia`Ehiwi)z4E66>MhRP>l<6Th(1~7BWR2r+a=UQ5B8m z6Edr;hR@Yx1L;5y1bvMK6M=$JKPa7Rrr4>!irgh);heYQ?vnTvYYBE-Wd*fpN7Omn z!CiKg;2yh)f3;N%m4c3jKrP1<^-NtId**qZ9ykpKQ%FISgffA7yLvTB=+v=Nci16V z@U*R^tmRDLh5S&(a5CCn}QAco0;j zfk{2-BF_^AmGM7Q>Y&OB$4YqDSXJsTzCeO&uc^JcSPRdu(!KgG zu4mZlVHLgXs0(kg{Y*0wW+V2mx{CNmZX$sV))U|I!;IvT#V+Vjk1+@^@y&NaANbf? zZ{zc~N|mA}SvG@CPc+{;Yf9aJ&z0bsYZTk!VxKz)51w1>!xesxjP3#_+7JU1r@blh z_Pd=`EKXGDRGIL|qa?)>1?x^cR=KA;RaL%ndE`RdEq5q&RcgTkgPxfWW7EV8(ZK`v zlX`53yv)a^AGnF;rlTsM+8GG9r&j_I-dX#gTzI$L*~p$->_Y8Sx3QoLTtZU`#Ew9{ z=UHq~@h!8Acn2=64l?re?TeK6^@gMbW}%*KX_n+)vn4g-cO_vYe??9&erNm%B@JS( zenIL;Ar>I?e}_ul@kfcbu~B!g&PIXf=`Pga^3Fo}jxanXpKQJPc8T0@iy@6LcB2-7 zn+~S`fV#Qvgkub8BwM0&pkHJhkp~|F;}~xQ{Zg9ClsdQx!@*`=oUvZ_?^7kT)fNu4 zLKS&4{--^UDy*u6YG)uM8tov|X;TMS(@+){UaJ(sq!8@-Qb{liBGE4ywmo)pv(zIE486D@Y(B&`@4qRJ7h%QNijjvOuC z-i}BeBqO-L91Ya!c)@~oLM<>5_7|gH;Ik;l@Jp=%4d`_LV+5_iGY^vrr{KdS<`>;pW}aqxe7bWd5esDo?&+?lEahP{f}th8VM8Ra^%fEY zBk{pa-_zTgQ%I_%MH1itC~>G?dHziN^Dp6oONWmviG!VkyLk$ddSLr)Bz*kQ5^&ZD zhmr@G2X=GS4Yk5RNJZ|4F9veL)g-jSrMC5|>y2DQHQ9qM8qL|wi3U%%z#h9w-Le1D z?FVl*fU*$B0rkV(0jQ#7U${|n1d_AoNb8;VNc8UeB!$cjDm6(V>Cur^XeyL}r;ti0 zA$SM$hl*d=|-fDlqP52i{O#W8c>{MJ9 znFb{^I<{o0U^$-2w0wT?BaSS5^cV?l%(zfTfg5GoJgS~~kP5ZLK-gZwX+Rp+soJV3 zSaA4J!W>X4FHlXjyo<&v#({~3yh(oS3e`k&z#Apq3X1f{0jbvPPB0psxgNMMP{x7Y z#ive_wp;I%7^ITa?Af_@+YZ$0SdmndGEf#V7)rHDra_w?nSse5X|v!nGNk_ z@Tq(cbd&oGG$e!68pfQDHgTLY5<$>s^sy%;1?j|t#D<+zIr(1hF83*!(35Z}1ZD29 zt%Uabrv%{QUM84{dJY3VTc-N7R#VFigoI!?`Q1QA+2Hc0&Vlg!(8r|NLwwbCo> z&ID;1Qm{mM2M?A20=z=IBK_=U3j@Gqfrt8 zhE)7AorG_V)g|zcEhVt|W=?rj75ZCE!jJm{rxkjr8~;Z2?ES!zmFQz~&K!v%qCNK9 zi^5d=DFoPYd?*8TF5`108rfBy?PD6oa~RdVI2kao^9~Z)eHYyaJayF)^LHkSJrj7H zd83xE-HCzl@30n-#`X32rJA7iybGoE>Klyc?yih^4SNx-oCHDH85`X_AN&fr`4pUu# zCLv)bbDmWTL&-I!k*rgVX*hZWfn}7Qv;Slt;>OXy53+x#)$iSnf$;A@4;FIx6M={b zst#yA=K`chcvz@g7NkKC4s`DF>1t?BKGW?`CxhV*jCG}v>L>+tb%ejXcbNf72kb{~ zD*x)MiErp~;;pQd1o1~MNMlX-!W#s2^nZ*L758#3t`#5C^i+z&rpJT9;!t<-Z2Q!& zGlb`4Fq?sg*?>8wIi86+$FoUhb6j%+M7Lai2P5+!GTg&W(8|NbkByLj#OlaEJp^Mq zY`$5EYZR4U13Vu{38dRVcVr;uA7?XsU~tyj=8Z~Tc}@UT0?f0Mm^Mv#E(n8|_?<}! zQ%JSW9UXK3(C(mo)uDUtaCQin5dijl>WV1?F#b0$>J}$3CoX*9Rm=$v9rEDNCNG1m z1}&>nx-**BhtJ-{7c+vW)Qc7WZyH*_Yy;ih)5+F&ADlT1I9-;1$?@gf5>k$2Fv7dI8dN z$~$8k_!Lbz3HWN|o1(u3-I;-qT8%&&s`v*io7ER}l>`iK zN-aR5LhRs}v6ts|@I*mI&Zg$imlRHG6Qqn*F&CJKNirA!cY2-xJY~4^3M2BC$q(Vf zP7$4x%gcm_efy{^p*%8FMdp^&va&w>Bx*Yz_)A%9t-Z>YK$9;7j;iLSQ_@wD-?L_^ zvr2egiP|XPJI8ox9>z5yz}2B*9Mh0oxEWFsxfu+I_##gu7zNI+QR8^gMa6>+56=nV z#>dM|k^aP-y2wgN<0>FGvE54Q$RtpAXCP)@SH*|(fV-ME+-ucPU=~_(4)7*mTEB)* zE_6kK-S7Yz$%UZBR^As)XHGDt{HC<+LS-rNC90?W?h#;G4_Da+IbC~CV<4m_ zC)#KrRa?sdT_`^VzDAYj0y)uKuulPQh{%Y!L4xtig)&osfv#5rnTiCS1U(0OA_Fo1 zx(qp`!S--qKl7%0b(8`#QTjDNs;mBXw5Fa}_?GDQslcs!X7|h9>p7_LHsG~DGLaq! zJ(+=+f9&P(;W*$yz(vfP?o}%V{z7SY0Abwi3^Uv;`A}BzkICp4d z9={gxy!(i=6rdO4!N9$NuHCP6S~FkO{XlMnT!)Vg`ne1wgBY0~+uGU&g~Q?9aF4sU zb%0Hozq_A1Q2-H;@;Z==;~5~ud>5*V0^AVo2$$LY;VQc^K36n6yShk|vo&AgF49LR z=HW`vIY{I(kQ_wGaf^16kwEH}nQD6g&;^46oMcY`9|eA4+;ab~0Sc^wHZm@17vKn> z59op+F+UGN&_nP|AU8%XHZ7m@6%bNjL2KEN_6iA_?-vD0%P5{0K zbSD{zP@~{SyU9Sd2Xce7If(`Q@%vh^n`{ib z$$I#_B9Kg`JHZ@u=5ydHz?ajXTXA)vdr`oH?yQKhycx#wR`^WS?ZEEUMb#UQU2cM2 z19Btu0gz+dg%T;?GLRApR>b4|@ytppP= z!+>t>RCR3tr0RAxAdT<=U@gG{G12+EzGe!$6(`;Rn*#nUCSnKEYj83>XDcRHrx8T;MF=??6ftQ`0yd*O@?0Iu~3D zSfM~YURn}JRql{9@-xRW$8jGZ$1ulxzHy76iUN*rj%i91R5|?tQgAKLR5zld8`8OnM@@FX?#;iWhy?

    What is Stack?

    +

    Stack is a convention for composing HttpKernelInterface middlewares. Any framework based on Symfony2's HttpKernelInterface can use these middlewares. They allow an application to be extended in a generic way, simply by wrapping objects around the kernel.

    + + + +

    A simple middleware, which appends "YOLO!" in big bold text to every request, looks like this:

    +
    {%- filter escape -%}use Symfony\Component\HttpFoundation\Request;
    +use Symfony\Component\HttpKernel\HttpKernelInterface;
    +
    +class YoloMiddleware implements HttpKernelInterface
    +{
    +    protected $app;
    +
    +    public function __construct(HttpKernelInterface $app)
    +    {
    +        $this->app = $app;
    +    }
    +
    +    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
    +    {
    +        $response = $this->app->handle($request, $type, $catch);
    +        $response->setContent($response->getContent() . "

    YOLO!

    "); + + return $response; + } +}{%- endfilter -%}

    -

    Which frameworks support Stack?

    -

    - The following frameworks and apps are using the HttpKernelInterface abstraction and can thus benefit from Stack: -

    -
      -
    • Symfony2
    • -
    • Silex
    • -
    • Laravel4
    • -
    • Drupal8
    • -
    • eZ Publish 5
    • -
    • YOLO
    • -
    • Your own?
    • +

      Works already with

      + + {% spaceless %} +
        +
      • Symfony 2
      • +
      • Silex
      • +
      • Laravel 4
      • +
      • Drupal8
      • +
      • eZ Publish 5
      • +
      • Yolo
      -

      - As more frameworks and apps join in, more re-use will be possible. -

      + {% endspaceless %}

    From c3a31dd0c9e485272cafb2b58fe35d41e48fded5 Mon Sep 17 00:00:00 2001 From: Igor Wiedler Date: Tue, 4 Jun 2013 17:55:35 +0200 Subject: [PATCH 13/90] Tweak rendering of framework logos --- source/css/style.css | 9 ++++----- source/index.html | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/source/css/style.css b/source/css/style.css index 0ff1f05..522ff1d 100644 --- a/source/css/style.css +++ b/source/css/style.css @@ -45,8 +45,7 @@ li { margin: .75em 0; } -h4 small -{ +h4 small { display: block; font-size: 60%; color: #888; @@ -109,15 +108,15 @@ ul.avatars li a { } .frameworks-logo-list { - /* Clearfix */ - margin: 0 0 20px -20px; list-style: none; + text-align: center; + margin: 0; } .frameworks-logo-list > li { vertical-align: middle; display: inline-block; - margin: 0 0 0 20px; + margin: 5px 10px 0 10px; } .frameworks-logo-list img { max-height: 60px; diff --git a/source/index.html b/source/index.html index b31f6f8..a0704b1 100644 --- a/source/index.html +++ b/source/index.html @@ -77,7 +77,7 @@

    What is Stack?

    Works already with

    {% spaceless %} -
      +
      • Symfony 2
      • Silex
      • Laravel 4
      • From 03a4ea18dcfa8a28e5725a97b78c9ddb4983a34f Mon Sep 17 00:00:00 2001 From: Igor Wiedler Date: Tue, 4 Jun 2013 18:28:24 +0200 Subject: [PATCH 14/90] Re-work lots of stuff --- source/css/style.css | 45 +++++++++++++++++++++++++++++------------- source/img/kernel.png | Bin 0 -> 29436 bytes source/index.html | 43 +++++++++++++++++++++++++--------------- 3 files changed, 58 insertions(+), 30 deletions(-) create mode 100644 source/img/kernel.png diff --git a/source/css/style.css b/source/css/style.css index 522ff1d..8e88e96 100644 --- a/source/css/style.css +++ b/source/css/style.css @@ -1,18 +1,10 @@ -body { - font-size: 18px; +.text p, .text ul, .text ol { + font-size: 1.4em; + line-height: 1.6em; } -p { - line-height: 1.4; - margin: 0 0 1em; -} - -code { - font-size: 17px; -} - -li { - margin: 0 0 5px; +.text li, { + margin-top: 10px; } .jumbotron { @@ -110,7 +102,7 @@ ul.avatars li a { .frameworks-logo-list { list-style: none; text-align: center; - margin: 0; + margin: 1.5em 0; } .frameworks-logo-list > li { @@ -121,3 +113,28 @@ ul.avatars li a { .frameworks-logo-list img { max-height: 60px; } + +ol.conventions { + margin: 1.5em 0; +} + +ol.conventions .no { + background: #000000; + color: #ffffff; + border-radius: 999px; + padding: 5px; + width: 1em; + text-align: center; + margin: 0 auto 10px auto; +} + +@media (max-width: 767px) { + ol.conventions li { + padding-top: 0.2em; + } + ol.conventions .no { + float: left; + margin-right: 0.5em; + margin-top: -0.2em; + } +} diff --git a/source/img/kernel.png b/source/img/kernel.png new file mode 100644 index 0000000000000000000000000000000000000000..cea959cf97a7e04dd6771948ce4e2404dedca08e GIT binary patch literal 29436 zcmb@tbyQVv*EULQq!a-Or9nWYC8a??Lb|)VySp3dlJ4$K1p#S=O{WOb-J3XTZ~Q&a z^FHr)&iUta498%tb;mWYdChsx`(A5@$x4epK_ftegM)h_E+#Aw2ZvY(2M6zj@(8%Y z#nf>C2ZttTCL|;)E+j-IYj0z0W@!WmC-x*G$wg6N7B6J1gQH^{n}Uq$l)xR8>?gMv zE=Vp++*cMMIFQ;|80iBJ)*EF*#cp`f5DEhk9P|Kx{b|%=OxeCKa>63(i;)(n2Ni55 zOKG?LYRj{Knx4!ovY;bd?8L0=tJ;eANiKXBWqI?90CIV*X@utRKM@Uep`}TtQ z9yEBG_=Y+7Ei+yYYHm5jT5px*dC>-K+xL`Y>fbp8YNIdOSu-QsWS7#YR`Vi3IhrX{ zD<*lK$VMHC;%RW}7q2HKE|O=Y-k#djhUrz;>@tbB!Y%KBJ4ES-dUq^SFfvnZ*>bm>u>%k8oKiiVxUMr%39jDi zk-++Dxy%6>+%Xbd{nFZIwyl_G<5h<W30#4x+x{kbMZ*9^B_l@z2<*f@V2V`xv6OZOsgIneS80`@0l$80oKKL#cQ zI^8EkzAUzgOJs0?zG9e&Nr(($2xbDHT0y=UK!R^);GF}^ZQ&;U+{Z!E{_M7oG(jre zPi)a2`-%#n1%LU-1i$2GhT?ySiJL1}`Ux-pY3lnaOhR=OHz7gUcQ}aOgu*^y#tB@F zQx`v{2`J4GlI1;p=}6Fuq7`tRjXX}q`sfzkD-bIMVM6c83|yn{Y&AC#is;v&6=7H0 z&&c@Q^Q#igczhU5U-4H758>#7biT%;2n?Vg{`jDZLU<(n{*x*tJQle{EJZ#-iAdTf zjC{hDD6v?(--wSwa`aN3ItOX6>^8)LHgUHKR2gKG*^ zUzPJaqq1YAN745x>&ED6R43OU&gkuO6JhjszxYLD>)rfZli8ZB64dl`IDH^M|E4B-MzCF+h*~-xM?9DkU!L+!YQ3MLxH*LuH7|7sdHi=SLs9$Z zY699am6TazI#f^N_+=AbQ{%`;5Q)5>mFARa5pWZ56Dp8@Qfxh`TAI?Dp)S)Q>?PsF zC>qa_e3HEOy&}FW)*^8y*@H?ZVLI6*S%)F(l@7U iS{GlJX~fiDVvdDY4}A6DzX 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 `x3wD$)-RI~ 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 literal 0 HcmV?d00001 diff --git a/source/index.html b/source/index.html index a0704b1..ba7cda9 100644 --- a/source/index.html +++ b/source/index.html @@ -20,26 +20,37 @@

        Stack


        -
        -

        Why?

        +
        +

        A common layer

        - Right now there is no easy way to re-use HTTP-specific code in PHP. Accessing superglobals and emitting headers and data as side effects is messy and unpredictable. While frameworks are becoming more decoupled, they still have their own implementation of anything that touches HTTP. + What do we want? Re-use at the web layer!

        - We want to fix this. + Superglobals and side-effecting output mechanisms of PHP make this challenging and force every framework to re-invent.

        - What worked for the Ruby world with Rack (similar interfaces exist for Java, Python, Perl and others) can work for PHP with Stack. + But Symfony's HttpKernelInterface provides a solid abstraction, which makes creating and sharing framework-agnostic HTTP filters a breeze!


        -
        -

        What is Stack?

        +
        +

        HttpKernel

        +

        + The HttpKernelInterface models web request and response as PHP objects, giving them value semantics. +

        +
        + HttpKernel +
        +
        + +
        +
        +

        What is Stack?

        - Stack is a convention for composing HttpKernelInterface middlewares. Any framework based on Symfony2's HttpKernelInterface can use these middlewares. They allow an application to be extended in a generic way, simply by wrapping objects around the kernel. + Stack is a convention for composing HttpKernelInterface middlewares.

        - -

        A simple middleware, which appends "YOLO!" in big bold text to every request, looks like this:

        -
        {%- filter escape -%}use Symfony\Component\HttpFoundation\Request;
        -use Symfony\Component\HttpKernel\HttpKernelInterface;
        -
        -class YoloMiddleware implements HttpKernelInterface
        -{
        -    protected $app;
        -
        -    public function __construct(HttpKernelInterface $app)
        -    {
        -        $this->app = $app;
        -    }
        -
        -    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
        -    {
        -        $response = $this->app->handle($request, $type, $catch);
        -        $response->setContent($response->getContent() . "

        YOLO!

        "); - - return $response; - } -}{%- endfilter -%}

        From a4df52dd3da3e8e57636ef3c488d5be8df3d6bc6 Mon Sep 17 00:00:00 2001 From: Igor Wiedler Date: Tue, 4 Jun 2013 18:44:22 +0200 Subject: [PATCH 16/90] Add onion layer diagram --- source/css/style.css | 4 ++++ source/img/onion.png | Bin 0 -> 41785 bytes source/index.html | 8 ++++---- 3 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 source/img/onion.png diff --git a/source/css/style.css b/source/css/style.css index 8e88e96..41c2040 100644 --- a/source/css/style.css +++ b/source/css/style.css @@ -77,6 +77,10 @@ pre code.php { } } +figure { + text-align: center; +} + .authors { text-align: center; } diff --git a/source/img/onion.png b/source/img/onion.png new file mode 100644 index 0000000000000000000000000000000000000000..0ce05e5412dca69ef740a4ab8ee89245cfffadd6 GIT binary patch literal 41785 zcmb@tbyQqk(II5=ij)@Bjb+NlH>w832GNe!ntdKfF`oV}XMJ0KAa7 zh=`(;hzNO$VdzmAuzyj0qzo2vA;`6RBU%O(h}~hg8gbO{bfL7eQCd8 zVafE&d!ZSi_#6Q2c2bA%W6M*=JU#BxM#mWGy@SL>g+Nw^=-mAJ6)15p3OW1S#+R1% zU9!LS_7v=A+_FsHp-AaC|K=M9;t(PK0Du>p`^4)*iL(ots8ZX9$MOaozD}ZH31Mcz z&V$P@2W|IOS>2ZG(X|YvrcmzW;cJZJwX$VLwkWQpQ*0JQ0`s&}DK<cxu9KR~tWHAT|4eKh-%xDQ~`C?9|U(d%N5Q@0GH5! zy0y%!k0DmN@x5D!R0t7&{#ZFe)Otv6_hO z7MB#uh>ngTBBx9kzucj|ZFh2+j}7(EXXbR`Tm&DeDjg)k1%;Wl1oQf<$AXRFgM8;U zeQ`fg!QlC1Sz?+w>jAujxfC0vU zkHiSt;WnGHLLimBTf`V+2a0@pyn^*0t1d|NSQw{Vcs7496C}Mp5}_Zf9n=~LAjnS= z6)G7DED32Y2>dC;zxbYl%!?2%ffjavS$~g7pnSk5yARqxwN4~E1VldxLHLj^877D| ze{g(zvl^QZ)xuvbo<3J$_TO^K_+5?qK1$EuSV1JS!~!Vfek1Nku845JxH6B7jCVzYnW#NC|!={hF+xY z@VHr8l##yM%&PxLZO+nEXcP68_GXkwU`@G7*&eD$D2ua9I!^JV zP)J-zaZS+!=TPa9`bxhRKQ}@ubqRK<_!m@v$rInK>*foV5=+ldGW=$kZWv}5xW(S5 zM9~`WAK!qkP%3y>Jxx(WiZ47<=;*541M4UP+*&uSpO| zF+XHgZRarOvVK_qP?%-1ptLZsSh9GU1D8cjluWp0Ph{z_z3n`Q9#uDoc{Dy+-1Hpr z9VOtWvfru(oRP|f2F96;L5A0 zJSkzA;xAk+Al$A(YYeJuf`3!ywzBVAF`~M_kzyZGmP1Pd}&8FZ=Kd{%tMF>aZ-Sc&Vr% zIhDoPwa@y^6Lk}amV0KDY-Q{%1Nqe}8XD!|^SN9-yn|i^?imks2z(Lh5n0%)*n0FQ z^ePO;^u!u88qn(2bw|~YJ->U?Ep?2%2SO~ijcUh>SNG~GN*UH&I!?TK(sim=v0LO@ zCT@{$K~I!V%rJbRZlP_+cZ*Ig)Ga~Yb7;p0n~mcak=rm-o>Vn6QYGtI8sjwMNaFT=Sy=JDgG+(Oj8ORshB>LTCLOXCwAiVRAe zM8rU1Ny0w<1cL6jlq$72wW@~rJHs=Jvl4!8{xJS1evEdP_A+nAdxICq7njG?tA+FZ z$Au>aASbXK?f||JC=UDr!;ioMhYsxw?CFB&Y6&1_oYo`Pp2da~eim^F=7nQN)WLdm z#0Ar{l~ew4Z&Y>jadQPS7>bFC^tMRG3{DS9L_}fBV7rPBN%V=$Nyv$LilvCjq^Q$t z)b5B!YDSV2^I;PcV0n_eIF#N^ugZjO|Jj1yJ_WOCC)fV@?NGm4Ixxk}aT z`ewCfd;P*q!b+QM4C7kJR()1jRwt`pYbz|4Q$V^?H-;ly;adt6EAhwc8s2ITtE0C; zCv8QyMNh69F0igEtB1{3>S=}=x=WLl8#)!cqnG)Y4J~Sa+P@fR+3Ta2#~8=dv3&p8 zCS7GAF;{X_c;t^ClfKt>p<~_JcLpK~st<<$BPL<1@8F%HWrdJ+pTWvz zdC$ag{!w#>sjr@|=!xV-+=N81MA1NZjPo4N>;lJkj>J#hQStpX+x7#tFB>-^o)~3^ zimU}q_drfku8XaKd*ZWfMBXL$aPJ?7R4+NVza}-qHS^|I=EHs!elquz^;|#no5>;? zCt?uDc=NiByiH559X6Gjh#SYs%;3s#^|=)8559;9!wKb9bK-BV+nLU)tgc)e@lUDJ zy=ZbMU2c1NR!u20t>n_-@y_yYI|+G-n*Z36ovioA$NaGV%)0H+uJ$E)yCS+B+I#;| z=ZSIcw%L0(`Ynq9D&oWADY)J9O?QRw(0lD=3Z@iAS76kG^Tq7N=+AaO6}$p%_78!I zm%00eucd9*e{vV}Cu+Z$#)LGAFuo-{R4Md8Pn1s3iPwoANmNKoL_S2WdemI^osUGO z%xnjD(7gV-OPVUn@o{}>Gc_FQJ-3`XP7{z```*s=IDc!sZ+x&b<7$3ZToS%k)-G`C z|C0A)bUhGv_($PhAt@(Hz|{-x`O=Nj`s?2MUC`AN3%7>P`<@ccPEx}W06@U_dqDuw zGjRa`;F|eobtiQ>S#Bd+Yp{W_t)U6n&D!pr8vx*S<9@%jHgPf_akI9vapZR61O3Cn z{eJ(K%m^a+hsDW~52P-qNFrkEU_!zUW(Ko>_~A)NNO&ELzj7;!ivO4R`!_z2nUj+p zHzT8~t1H-*6>RHZ%E-*c#l^_P!pOqH@Xo>D=x*a=;KpF%NcJx!|3i}^AB`vEbmzSA4mRee*cV%*jm{-sMr}8nf!(0KS}?| z{f`}uf3w5kU8ryX5~^yZGVHNJ^Fg06~D1sL*FOh(9_oshEB9Z8GvQ$N{2Z z=vZhFXmH^H5NMNcG_?7KUg2<&ej1~2P_$brvigEby@2nM;?QVlV)>HeX~8cOho`>} z)3UM_F+7@2@8)DfkKjw1PY-`It0pC7WYB4{LE=M1`H2gX#e!imrBi|qoXmj#Me~Ej zoMJKqwuTFS`SJyNr;Sz{YuVR?FeQ}ElwIf$R>2xtrgD(V@3QXW-Zd1b3PyKoDfo@nQp?-iV4?w5ksy$$sUagqYm$=*bzzQeXrKR;U11-Z?1U?VrD zX+*IgP3Wz{+)q0*0@bb#hh3S1rXbJV&3irUN@HeUwR~zw35mv4=KLOs=hascGceJ$ zE6Gq`!!iFqe&d%}|ED!HD872c6OSBc?<2R~j#vZ8Ozu^SUq-=p~ z%tfvbZl9btNYUjz8!;GMAzw$jAK-?H@VNKVI~z7FQs2n)4e|H`JW#XT$bS^&<`x}~ zzOCE00*QRd>q&lMEMRwz)vnN=W5UV4gI4huv@d;|W4-DXd3%H25{(HAYB+B`$`}=y zpKhi;3sdRHaK0w^MgB_6QLxRamJ{vP{3hQnX7`-aLCC;Z*Bme?t^G9Rz{QDOwu_)6`l0Fp&(@5=0}NAo=1TsSbDvfuhWJza!+G* z$aO_91)3}bHs~v&v6$cAG3#`H4+2+Asi{a^e>nGhOAC#t;sB9GS=~XwhF*g&TEr2q zQdQ?T`Bq-8b{M50E5<^PC4L3n<8B!o_xLif6w_3O?F{GRbS31fO{{&#nbfFXe&R)e7FWAlUkuUkjcfmr}NQZBi>_Hjq1J( zHTWGDl@sNZmNVUzz?uZSe&vfR*L;r|mw>CRIAM2>x|5}Ni2k}Kaz z>F~gXbC=@k=sX%#yTuf&Xhi2NALwipfZH9rj-e?o0@S zdNo7?H!4F|%a8PhQatS?hCrlQc99cR{L`?#5uE`YaseJsFhhOmJ{n)#>W)02ZP;Mp zYfJ0g@F3)5KZ3ncl^u=WusQMB?C7P^yIVIOStor%Z=_}o&2D|o7^AwI z(Y4*?(WCjI0zKh@_3ApaZ)?JW7zqu-%YzKCr98+s!P^2jLSrZ1`NpeulwXWURL!Sg z$?^Qnb8~UpMSa(JJ1TeuH9iP=C++MU94JS=2L%&H@Mk^@-c)+@wuEb!J#u^^Ex1X| zDXzTBG_B0(DjhpYkQQy@$H9ab`0|l$Xw{RXD&vf*@X&xWT4btOK_-Oky?$m87TL@i zVV7DlD&cB9Kf4dLm6jOmc&AGSv$W=mk;Ur5S}jLGl-P=9zX&_j&^F_Tb|>n(15b&p zspE8acbzQWODD=KJt!0#J*tTd%>`GRkFv}LD~?pX%SIok=Q<;$&I~w>50RQWl4=f$ zF%WA{%D9YghLpJLu{VLkEwUV9dru1!^)O8xmp7qbAw761dKt5Vj&NCSIL^J7YaXXc zAxVuKKYO^8*f@N5j2s(u=@wFl>F&DP%3AJOj``k~JE2`T?^f{4^&sOZ0iFLAX!zlI`| zA|FTiw913h>b@QQ%335g!*Qfm#$@OS$6^-$irbX2a9!n!x&ivBt+e$D=Yue4Sj3M9 z86dnY9g*=jAGfBVNNY^4saKjt#pfL2d0MNCb%Ld8#3Ih6zYfwmEv~R??wqJTT+Kj# zAiV4RQGGo1aCS(S7SowW7^hZ~-s_D)?z$b#OBSXOcf}*9XeDKCPx@ZGE9zz%8fJ8Z zu#J|R;fWzjcPIPO^A-EXYlVx%xrW?rQQ9GKDLI`#vFdx=q%Th7%EZ<>Lp&1^m`%&0 zZBEkkInPIiniYH~FYim@TL#!zVN8Z(?8pQawTQk6!^DZcgHM6>$E`pZA?zgAa)Wb2 zs|J;_U)Q_YII5EqT~h{+Dnp-8+gbh9%DI$`g(3Im`j2EB!SU{0#wRr4g&p{8s((VT@Ui*98jQMWX@$L@2SUA07d)8SXc1z;Jb`H6x_oTJE@>Lrnt( zVwb?VEndiHL8C1FRed7=YFB^fJ)AP+i}YkRiTC9)9S4wG-0`> zk6jaeY^L>?7HpO`m@;-1Y)5tJsU&i(rI`|*OHl4i5Q_;Q` zzG^h4iL)>flg5l4e}PR{$BL76TJuGHotz%-@(r_N5DprFz~si_xO$mz*&$ev2BA2| zf*D7`qi{nB$yg3ccro|34y0pes@&DCg)~Xt*A0g7E?FRKDQ9%9j|sK*lxET-7qakC za3w9{aLQTub+tlT&{WTzYgnc-sW4mahZz8Vbk{9=dP z&KTnbO^nx55rjK&*!<;gYUvjW*u#h5sCko{U^iR-a|N{#6@7=8yHYXO_#0mk>jY&! z;%kJ1R$vSktUEywDM~;t@_9h=?B6Bu#zemmP&f+#Q`N)nKhl>isS%@19)R@JN@o`4 z)P|1j1_6uMOsHAtX$M`=x+mCm*Y>wD$Xi^$R&GR0c2MHD>@4Lg7ai~76+Ysc^$ zBzac(`U_hpHWadjSg)&gL6Al{Km%<&4Lp4+w(T;Q6Q*FarP5dbF$>Zm!qLjO60#qCf;jT zWz^UZZlO@Qg80^v10jDEg-t}JVx10+c1)n~&oj@n&vU^F!20Uz7-zA)7f2%MJESI) zj)Cpv7^r-nt+oT1h2<@|K;JGk=g@u{+0W@>Sx7}S8(7o}Umq}BW_lKHU*yo(qMwbi zH2Gr|D_gw;%I`kp5mXiow%xxSgO|r*>`@q4r7x8C1bksu1Cad2#aszt?MRz@u{YDe zSl)MBx5g<{uMrm!A5#S!TL$F|?=(;0L1B5Vmq| zGu>fv58I%1Nwxg@bMKB^B37?o^448zPF7q7!M&A|fjZ*? z11`TBHj<0SQcRIG_SNsyVKi_^jDoRri}?PB^b$CCl!|o`;C_dtQbW z7t%}lFy;0q-T?4Cx*y<}v7M9HP!_lB&+KM;NRAfa!Kvy@m*zYlXw=A#74Vtm4-_ z-!sbCnQ9a-8|v|rrB*908&AV;Y&Ws8ZG}31E01N^MhZm9dSa&x9TQ51wVG zr^Z~mlg!}S;yYx%=BtNxmvO{Ae>D{w>0Kw`ak7|dhlg_9WF@y95((e zxFgXy z9cG5j&+ykJdX#pa3p}7)8NbQn@+?lPLhn9Z+pUxwDF;l%Q5PQ_gqR(^3o?i|K^ z9gfNaVhJ?rEi*H2rg-%BRp?ryo%{Gc^1IzK^5bb0cBY#5)$Qw;bO`^~%9&a818~44 za$?HUV{`q_T$9k-ANnRQ}0G;q>G}Li<9`d^5j4?H~R0zR%p+AIfwd%YzIG{kH>G?AcvpyP=jCG zzek4&%}OkFe}nRd@!>Oa8$Z*a!*iVyM^I+-vs*(ZA%Dy}bj1j<9)fU2-SO@8wXfkE z9GX{^2!Q{U^(-00Q`qE7lGlBES30pJ=0}`PMM$Qx&llZfa=hyn)BtdP6ONr}xCp7p z;Xs?zaYt^0b7Ovx3KBeKS4)2aouLmSMGXw_BUW%fQVN^%* z@D0kLcDMByG=-iv>6*C%F~D`hsuUk`RYCXoKBr9q+gtfnbW={sWf>eo2&T6TW>dMU zNeZaM9PD1W45Tf_Dd$+1j-=%5kBh~@52-{x_W>_5+n z$12lq6!S;nL(HGJf8Q=Yj+M4kp(oPUo)ows&Bd{gLJ@FT6)GAkvrFmTU0as;c^U}W z1>|EuCabnCsmFruW`Lg+u@*zay{Y8G73a3n-Ti`29tPQhuwhH^Ot7rG5%*`>j(!)? zSfIb8k(zoSK@y<4NQGNsHxgb^2i*W$1nU00tkH{C=d&UNbZ}%wxPy{id!4NQZB+3_ zyrOExwF1Su^v8V&WNCGoW@%XLr)# ztYhI$<*H#U#`q3l?2O@pDLpjaWG^Pv0SQI4g%@m!w=z_uBci{Q{R1xKbj;sIC|+=9 z$O-O@7h>_QFW%DD${{~VNfj$?g4AH-C!cTV#<9~TZaa>Rf8LHsSiFNMi>OIw*VrNP zA^-x4r5N7{NZ78QSElj$p01ABHJFfn` zz(!PhXDDZ2AvGb@ma?l^7%IeS5)Oo-Td5hr4f=}eqAdO0gMYm9Djpi|_qM;@Ws7f! z$&x&r;STY|TSoFsd89;iYTo8$hfo^tu`>q;4J-;{F-fT)EpCKjFgFpNbBg;jb zgcS|wEV-Jhzl*F<1~S}oe)2{el*&j51t?&sP}_~3(DH|*%nYX_uS}f9(zl(s!**UX zyf=wSs3BS3P!Auz?VK)J)@3%f!;B5N!rYWIhEo

        OwlLtM*n5*;$t*C9G7PVbwR= zK`0!I{L@~})d%|MFgQFy#kUxQ3dyHFkn;)3Ya#e_x45z~L(_Q1DywS0Vpl#eb3)P# zG0z3K&8Ga*gcihveQxU_p?dHvxIo?KbcW(eGgS&oIMiilhE8OXEae8v1zS#+7fVUc z(E;72Oa3uNA`X0A{Te@GYZ(Pd-fEy5JY2^O92p#7V_pi!Dg@H9NR}GV(f2+eX-X#% zso#xa2lLOqrwAM5PrPIP>|4LVZq*OCzFR3f#>z?k5;4rBu7G!`cyqg(>cTd!U=0|o zk?$>!dj9~)8PWMAmEXx1m2TzDI;aJ*Lq|}aQk9D!=~#G%ff6%qPWka;=uKnqWQuD< zC%i($d!s!UO_CaNxhDKM4P}?XK-A%=P)mMt2tbm}dpE~U-X(|$rjzsiRrr7g` z^JAvCK0&*#nr;7Hjh*&cq+YF)R=KZpw2sWKzPyhs>_TIibqz^0PtMPq3T=vI=9KDE z6^+7A+R)kyTYNy5Q+6%+`A3gG^E_A{OEX6D*_4#A=oM#@(sGO51I!ew%EQ`y)yN@D zgm$miNWWwy>h*%<;1F55-@t!L6D>ABDmhoj!Apg|Md^q1ARU?osRSnA)EU!5T5;Kr z4js)G2myzNYUe$&Dc;qVaZ8nQArTcLFBnOuDIcQ{qCenefv%D>$O{L*WxQdLn@Ia3 zMnlr*YYIA}iWE7x5$oRzn+o)|Ybhg^<={nEkR7L1Q2a_q2HEs1Mb}8gSoP_1tR@q^ z4!q?D|H7y2Et`+{)1Trfqzs`m5?*-kYv>)feQdC=S=n1mL58Yd)_Uyi{sAo_jwT+1 zzoeBaoBZ7=9=Y~l%aN+7L$bP?tPH)Er2ERuC}h+g28;*uA}Mr#chC@<$Vej|=3|Ys zkf>Q4HOmh_&rIydTL6Z!@@nXbXK9}A$Z2ucvVQ>8ze<)8>f~jflL-{^U({Yhr40CQ3PTDEK^IL>t zi=CDyxa4WfO+|3=iN9uISNA|Q*{vgnw0zjW}SgK z?4T?d6tQq$lBQ!#PTIpR!l9-T_w(R!*l8)Oa>%{YRrHHfeqjpZf@o{pJFKkbLNj!0veAq-8G~ezi^?v_?mVLY4RaC|zQzqRWX$ z?JX63AFsqtM2;Azd_f^*Bv793Bm5mX^~x`h+!T9BpQt{Z=4U;K+NvqIYa;tvJZC$v zaw@xHsFiVxiVB69m#od-9$6tWU_`P>7?P@h)DK0T=~>b_rr+QyDA=NReQb0fj(OUo z8&zy$12^r?UAK7SVsh0xgmH+*ekRp%VT%IML1@l`99RQtbwT2O{kW{}2Nx~inREoT z7-h`n*N8Z?QR0uB^FKW+H5M)ls8NL0>w-OyB;|Vq<#D|Ry)J;v{)u1_rRZHsU*h%3 zI~D1Y1#Xxu3@f~-EHDe)8*hnS=6AB@+(#$>%RltWwLk1N-g^Bz(~&^LzM)?Z*di

        +hK5pPTaW#H6l|= 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 is Stack?

        Stack is a convention for composing HttpKernelInterface middlewares.

        - - +

        + By wrapping your application in decorators you can add new behaviour from the outside. +


        From d87699ba867e0b5f4e5bcfb658323a985b40a771 Mon Sep 17 00:00:00 2001 From: Igor Wiedler Date: Tue, 4 Jun 2013 18:44:33 +0200 Subject: [PATCH 17/90] Hide "how do I use stack" section for now --- source/index.html | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/index.html b/source/index.html index c64f996..7308e9d 100644 --- a/source/index.html +++ b/source/index.html @@ -125,6 +125,7 @@

        OAuth

    +