diff --git a/core/composer.lock b/core/composer.lock
index 287e954afac7b43a11e998e6382c7179d4d37d78..b08e4d7dd6b93d4fcbadbc2dc507abbba8ae71fc 100644
--- a/core/composer.lock
+++ b/core/composer.lock
@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
         "This file is @generated automatically"
     ],
-    "hash": "641da18dedf5e11a7de3978b8fe619d6",
+    "hash": "e789e5736fbe96c9b9502e89b53dcebe",
     "packages": [
         {
             "name": "behat/mink",
@@ -2109,16 +2109,16 @@
         },
         {
             "name": "symfony/browser-kit",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/BrowserKit.git",
-                "reference": "176905d3d74c2f99e6ab70f4f5a89460532495ae"
+                "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/BrowserKit/zipball/176905d3d74c2f99e6ab70f4f5a89460532495ae",
-                "reference": "176905d3d74c2f99e6ab70f4f5a89460532495ae",
+                "url": "https://api.github.com/repos/symfony/BrowserKit/zipball/277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
+                "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
                 "shasum": ""
             },
             "require": {
@@ -2160,20 +2160,20 @@
             ],
             "description": "Symfony BrowserKit Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-09 16:07:40"
+            "time": "2015-09-06 08:36:38"
         },
         {
             "name": "symfony/class-loader",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/ClassLoader.git",
-                "reference": "2fccbc544997340808801a7410cdcb96dd12edc4"
+                "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/2fccbc544997340808801a7410cdcb96dd12edc4",
-                "reference": "2fccbc544997340808801a7410cdcb96dd12edc4",
+                "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/d957ea6295d7016e20d7eff33a6c1deef819c0d4",
+                "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4",
                 "shasum": ""
             },
             "require": {
@@ -2210,20 +2210,20 @@
             ],
             "description": "Symfony ClassLoader Component",
             "homepage": "https://symfony.com",
-            "time": "2015-06-25 12:52:11"
+            "time": "2015-08-26 17:56:37"
         },
         {
             "name": "symfony/console",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Console.git",
-                "reference": "d6cf02fe73634c96677e428f840704bfbcaec29e"
+                "reference": "9ff9032151186bd66ecee727d728f1319f52d1d8"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Console/zipball/d6cf02fe73634c96677e428f840704bfbcaec29e",
-                "reference": "d6cf02fe73634c96677e428f840704bfbcaec29e",
+                "url": "https://api.github.com/repos/symfony/Console/zipball/9ff9032151186bd66ecee727d728f1319f52d1d8",
+                "reference": "9ff9032151186bd66ecee727d728f1319f52d1d8",
                 "shasum": ""
             },
             "require": {
@@ -2267,20 +2267,20 @@
             ],
             "description": "Symfony Console Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-28 15:18:12"
+            "time": "2015-09-03 11:40:38"
         },
         {
             "name": "symfony/css-selector",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/CssSelector.git",
-                "reference": "0b5c07b516226b7dd32afbbc82fe547a469c5092"
+                "reference": "ffb5f3b8a75f8d1b9801e74dc6789a0751a670ad"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/CssSelector/zipball/0b5c07b516226b7dd32afbbc82fe547a469c5092",
-                "reference": "0b5c07b516226b7dd32afbbc82fe547a469c5092",
+                "url": "https://api.github.com/repos/symfony/CssSelector/zipball/ffb5f3b8a75f8d1b9801e74dc6789a0751a670ad",
+                "reference": "ffb5f3b8a75f8d1b9801e74dc6789a0751a670ad",
                 "shasum": ""
             },
             "require": {
@@ -2320,20 +2320,20 @@
             ],
             "description": "Symfony CssSelector Component",
             "homepage": "https://symfony.com",
-            "time": "2015-05-15 13:33:16"
+            "time": "2015-08-24 07:13:45"
         },
         {
             "name": "symfony/debug",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Debug.git",
-                "reference": "9daa1bf9f7e615fa2fba30357e479a90141222e3"
+                "reference": "726bf9651d29f53243281d0b6418cfaa5e318281"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Debug/zipball/9daa1bf9f7e615fa2fba30357e479a90141222e3",
-                "reference": "9daa1bf9f7e615fa2fba30357e479a90141222e3",
+                "url": "https://api.github.com/repos/symfony/Debug/zipball/726bf9651d29f53243281d0b6418cfaa5e318281",
+                "reference": "726bf9651d29f53243281d0b6418cfaa5e318281",
                 "shasum": ""
             },
             "require": {
@@ -2345,14 +2345,9 @@
             },
             "require-dev": {
                 "symfony/class-loader": "~2.2",
-                "symfony/http-foundation": "~2.1",
                 "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2",
                 "symfony/phpunit-bridge": "~2.7"
             },
-            "suggest": {
-                "symfony/http-foundation": "",
-                "symfony/http-kernel": ""
-            },
             "type": "library",
             "extra": {
                 "branch-alias": {
@@ -2380,20 +2375,20 @@
             ],
             "description": "Symfony Debug Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-09 16:07:40"
+            "time": "2015-08-29 11:12:16"
         },
         {
             "name": "symfony/dependency-injection",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/DependencyInjection.git",
-                "reference": "851e3ffe8a366b1590bdaf3df2c1395f2d27d8a6"
+                "reference": "c0a3a97b9450d77cd8eff81c5825efb3624c255b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/851e3ffe8a366b1590bdaf3df2c1395f2d27d8a6",
-                "reference": "851e3ffe8a366b1590bdaf3df2c1395f2d27d8a6",
+                "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/c0a3a97b9450d77cd8eff81c5825efb3624c255b",
+                "reference": "c0a3a97b9450d77cd8eff81c5825efb3624c255b",
                 "shasum": ""
             },
             "require": {
@@ -2440,20 +2435,20 @@
             ],
             "description": "Symfony DependencyInjection Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-28 14:07:07"
+            "time": "2015-08-24 07:16:32"
         },
         {
             "name": "symfony/dom-crawler",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/DomCrawler.git",
-                "reference": "9dabece63182e95c42b06967a0d929a5df78bc35"
+                "reference": "2a161e4ee2b2f33d4153be58df4f6f2a5506936e"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/9dabece63182e95c42b06967a0d929a5df78bc35",
-                "reference": "9dabece63182e95c42b06967a0d929a5df78bc35",
+                "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/2a161e4ee2b2f33d4153be58df4f6f2a5506936e",
+                "reference": "2a161e4ee2b2f33d4153be58df4f6f2a5506936e",
                 "shasum": ""
             },
             "require": {
@@ -2493,20 +2488,20 @@
             ],
             "description": "Symfony DomCrawler Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-09 16:07:40"
+            "time": "2015-08-26 10:48:03"
         },
         {
             "name": "symfony/event-dispatcher",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/EventDispatcher.git",
-                "reference": "9310b5f9a87ec2ea75d20fec0b0017c77c66dac3"
+                "reference": "b58c916f1db03a611b72dd702564f30ad8fe83fa"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/9310b5f9a87ec2ea75d20fec0b0017c77c66dac3",
-                "reference": "9310b5f9a87ec2ea75d20fec0b0017c77c66dac3",
+                "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/b58c916f1db03a611b72dd702564f30ad8fe83fa",
+                "reference": "b58c916f1db03a611b72dd702564f30ad8fe83fa",
                 "shasum": ""
             },
             "require": {
@@ -2551,20 +2546,20 @@
             ],
             "description": "Symfony EventDispatcher Component",
             "homepage": "https://symfony.com",
-            "time": "2015-06-18 19:21:56"
+            "time": "2015-08-24 07:13:45"
         },
         {
             "name": "symfony/http-foundation",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/HttpFoundation.git",
-                "reference": "863af6898081b34c65d42100c370b9f3c51b70ca"
+                "reference": "7253c2041652353e71560bbd300d6256d170ddaf"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/863af6898081b34c65d42100c370b9f3c51b70ca",
-                "reference": "863af6898081b34c65d42100c370b9f3c51b70ca",
+                "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/7253c2041652353e71560bbd300d6256d170ddaf",
+                "reference": "7253c2041652353e71560bbd300d6256d170ddaf",
                 "shasum": ""
             },
             "require": {
@@ -2604,20 +2599,20 @@
             ],
             "description": "Symfony HttpFoundation Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-22 10:11:00"
+            "time": "2015-08-27 06:45:45"
         },
         {
             "name": "symfony/http-kernel",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/HttpKernel.git",
-                "reference": "405d3e7a59ff7a28ec469441326a0ac79065ea98"
+                "reference": "fd9c7af92c9e3ade1327cc3af10b17731eebc4a7"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/405d3e7a59ff7a28ec469441326a0ac79065ea98",
-                "reference": "405d3e7a59ff7a28ec469441326a0ac79065ea98",
+                "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/fd9c7af92c9e3ade1327cc3af10b17731eebc4a7",
+                "reference": "fd9c7af92c9e3ade1327cc3af10b17731eebc4a7",
                 "shasum": ""
             },
             "require": {
@@ -2684,20 +2679,20 @@
             ],
             "description": "Symfony HttpKernel Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-31 13:24:45"
+            "time": "2015-09-08 14:26:39"
         },
         {
             "name": "symfony/process",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Process.git",
-                "reference": "48aeb0e48600321c272955132d7606ab0a49adb3"
+                "reference": "f7b3f73f70a7f8f49a1c838dc3debbf054732d8e"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Process/zipball/48aeb0e48600321c272955132d7606ab0a49adb3",
-                "reference": "48aeb0e48600321c272955132d7606ab0a49adb3",
+                "url": "https://api.github.com/repos/symfony/Process/zipball/f7b3f73f70a7f8f49a1c838dc3debbf054732d8e",
+                "reference": "f7b3f73f70a7f8f49a1c838dc3debbf054732d8e",
                 "shasum": ""
             },
             "require": {
@@ -2733,7 +2728,7 @@
             ],
             "description": "Symfony Process Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-01 11:25:50"
+            "time": "2015-08-27 06:45:45"
         },
         {
             "name": "symfony/psr-http-message-bridge",
@@ -2791,16 +2786,16 @@
         },
         {
             "name": "symfony/routing",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Routing.git",
-                "reference": "ea9134f277162b02e5f80ac058b75a77637b0d26"
+                "reference": "20b1378cb6efffb77ea0608232f18c8f0dd25109"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Routing/zipball/ea9134f277162b02e5f80ac058b75a77637b0d26",
-                "reference": "ea9134f277162b02e5f80ac058b75a77637b0d26",
+                "url": "https://api.github.com/repos/symfony/Routing/zipball/20b1378cb6efffb77ea0608232f18c8f0dd25109",
+                "reference": "20b1378cb6efffb77ea0608232f18c8f0dd25109",
                 "shasum": ""
             },
             "require": {
@@ -2858,20 +2853,20 @@
                 "uri",
                 "url"
             ],
-            "time": "2015-07-09 16:07:40"
+            "time": "2015-08-24 07:13:45"
         },
         {
             "name": "symfony/serializer",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Serializer.git",
-                "reference": "143d318457ecc298a846506acc8e80dea30d2548"
+                "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Serializer/zipball/143d318457ecc298a846506acc8e80dea30d2548",
-                "reference": "143d318457ecc298a846506acc8e80dea30d2548",
+                "url": "https://api.github.com/repos/symfony/Serializer/zipball/baf24f86a8656eea9c80988f332e51461bfcb67f",
+                "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f",
                 "shasum": ""
             },
             "require": {
@@ -2883,7 +2878,7 @@
                 "symfony/config": "~2.2",
                 "symfony/phpunit-bridge": "~2.7",
                 "symfony/property-access": "~2.3",
-                "symfony/yaml": "~2.0"
+                "symfony/yaml": "~2.0,>=2.0.5"
             },
             "suggest": {
                 "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
@@ -2919,20 +2914,20 @@
             ],
             "description": "Symfony Serializer Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-22 19:42:44"
+            "time": "2015-08-31 16:44:53"
         },
         {
             "name": "symfony/translation",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Translation.git",
-                "reference": "c8dc34cc936152c609cdd722af317e4239d10dd6"
+                "reference": "485877661835e188cd78345c6d4eef1290d17571"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Translation/zipball/c8dc34cc936152c609cdd722af317e4239d10dd6",
-                "reference": "c8dc34cc936152c609cdd722af317e4239d10dd6",
+                "url": "https://api.github.com/repos/symfony/Translation/zipball/485877661835e188cd78345c6d4eef1290d17571",
+                "reference": "485877661835e188cd78345c6d4eef1290d17571",
                 "shasum": ""
             },
             "require": {
@@ -2944,7 +2939,7 @@
             "require-dev": {
                 "psr/log": "~1.0",
                 "symfony/config": "~2.7",
-                "symfony/intl": "~2.3",
+                "symfony/intl": "~2.4",
                 "symfony/phpunit-bridge": "~2.7",
                 "symfony/yaml": "~2.2"
             },
@@ -2980,20 +2975,20 @@
             ],
             "description": "Symfony Translation Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-09 16:07:40"
+            "time": "2015-09-06 08:36:38"
         },
         {
             "name": "symfony/validator",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Validator.git",
-                "reference": "646df03e635a8a232804274401449ccdf5f03cad"
+                "reference": "356459a697e26274d44c608513c05c23dc1d8ea7"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Validator/zipball/646df03e635a8a232804274401449ccdf5f03cad",
-                "reference": "646df03e635a8a232804274401449ccdf5f03cad",
+                "url": "https://api.github.com/repos/symfony/Validator/zipball/356459a697e26274d44c608513c05c23dc1d8ea7",
+                "reference": "356459a697e26274d44c608513c05c23dc1d8ea7",
                 "shasum": ""
             },
             "require": {
@@ -3007,7 +3002,7 @@
                 "symfony/config": "~2.2",
                 "symfony/expression-language": "~2.4",
                 "symfony/http-foundation": "~2.1",
-                "symfony/intl": "~2.3",
+                "symfony/intl": "~2.4",
                 "symfony/phpunit-bridge": "~2.7",
                 "symfony/property-access": "~2.3",
                 "symfony/yaml": "~2.0,>=2.0.5"
@@ -3050,20 +3045,20 @@
             ],
             "description": "Symfony Validator Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-31 06:49:15"
+            "time": "2015-09-06 08:36:38"
         },
         {
             "name": "symfony/yaml",
-            "version": "v2.7.3",
+            "version": "v2.7.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Yaml.git",
-                "reference": "71340e996171474a53f3d29111d046be4ad8a0ff"
+                "reference": "2dc7b06c065df96cc686c66da2705e5e18aef661"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Yaml/zipball/71340e996171474a53f3d29111d046be4ad8a0ff",
-                "reference": "71340e996171474a53f3d29111d046be4ad8a0ff",
+                "url": "https://api.github.com/repos/symfony/Yaml/zipball/2dc7b06c065df96cc686c66da2705e5e18aef661",
+                "reference": "2dc7b06c065df96cc686c66da2705e5e18aef661",
                 "shasum": ""
             },
             "require": {
@@ -3099,7 +3094,7 @@
             ],
             "description": "Symfony Yaml Component",
             "homepage": "https://symfony.com",
-            "time": "2015-07-28 14:07:07"
+            "time": "2015-08-24 07:13:45"
         },
         {
             "name": "twig/twig",
diff --git a/core/vendor/composer/installed.json b/core/vendor/composer/installed.json
index 256109d11dfc3896a9df6fd2b63ea4700b5c24fe..c3755ed33136e41de51259eb6f8a06b52341a8e7 100644
--- a/core/vendor/composer/installed.json
+++ b/core/vendor/composer/installed.json
@@ -691,39 +691,41 @@
         ]
     },
     {
-        "name": "symfony/class-loader",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "guzzlehttp/promises",
+        "version": "1.0.2",
+        "version_normalized": "1.0.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/ClassLoader.git",
-            "reference": "2fccbc544997340808801a7410cdcb96dd12edc4"
+            "url": "https://github.com/guzzle/promises.git",
+            "reference": "97fe7210def29451ec74923b27e552238defd75a"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/2fccbc544997340808801a7410cdcb96dd12edc4",
-            "reference": "2fccbc544997340808801a7410cdcb96dd12edc4",
+            "url": "https://api.github.com/repos/guzzle/promises/zipball/97fe7210def29451ec74923b27e552238defd75a",
+            "reference": "97fe7210def29451ec74923b27e552238defd75a",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.5.0"
         },
         "require-dev": {
-            "symfony/finder": "~2.0,>=2.0.5",
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~4.0"
         },
-        "time": "2015-06-25 12:52:11",
+        "time": "2015-08-15 19:37:21",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.0-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\ClassLoader\\": ""
-            }
+                "GuzzleHttp\\Promise\\": "src/"
+            },
+            "files": [
+                "src/functions_include.php"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -731,58 +733,56 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Michael Dowling",
+                "email": "mtdowling@gmail.com",
+                "homepage": "https://github.com/mtdowling"
             }
         ],
-        "description": "Symfony ClassLoader Component",
-        "homepage": "https://symfony.com"
+        "description": "Guzzle promises library",
+        "keywords": [
+            "promise"
+        ]
     },
     {
-        "name": "symfony/console",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "guzzlehttp/psr7",
+        "version": "1.2.0",
+        "version_normalized": "1.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Console.git",
-            "reference": "d6cf02fe73634c96677e428f840704bfbcaec29e"
+            "url": "https://github.com/guzzle/psr7.git",
+            "reference": "4ef919b0cf3b1989523138b60163bbcb7ba1ff7e"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Console/zipball/d6cf02fe73634c96677e428f840704bfbcaec29e",
-            "reference": "d6cf02fe73634c96677e428f840704bfbcaec29e",
+            "url": "https://api.github.com/repos/guzzle/psr7/zipball/4ef919b0cf3b1989523138b60163bbcb7ba1ff7e",
+            "reference": "4ef919b0cf3b1989523138b60163bbcb7ba1ff7e",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.4.0",
+            "psr/http-message": "~1.0"
         },
-        "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/event-dispatcher": "~2.1",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.1"
+        "provide": {
+            "psr/http-message-implementation": "1.0"
         },
-        "suggest": {
-            "psr/log": "For using the console logger",
-            "symfony/event-dispatcher": "",
-            "symfony/process": ""
+        "require-dev": {
+            "phpunit/phpunit": "~4.0"
         },
-        "time": "2015-07-28 15:18:12",
+        "time": "2015-08-15 19:32:36",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.0-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\Console\\": ""
-            }
+                "GuzzleHttp\\Psr7\\": "src/"
+            },
+            "files": [
+                "src/functions_include.php"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -790,49 +790,56 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Michael Dowling",
+                "email": "mtdowling@gmail.com",
+                "homepage": "https://github.com/mtdowling"
             }
         ],
-        "description": "Symfony Console Component",
-        "homepage": "https://symfony.com"
+        "description": "PSR-7 message implementation",
+        "keywords": [
+            "http",
+            "message",
+            "stream",
+            "uri"
+        ]
     },
     {
-        "name": "symfony/css-selector",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "doctrine/common",
+        "version": "v2.5.1",
+        "version_normalized": "2.5.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/CssSelector.git",
-            "reference": "0b5c07b516226b7dd32afbbc82fe547a469c5092"
+            "url": "https://github.com/doctrine/common.git",
+            "reference": "0009b8f0d4a917aabc971fb089eba80e872f83f9"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/CssSelector/zipball/0b5c07b516226b7dd32afbbc82fe547a469c5092",
-            "reference": "0b5c07b516226b7dd32afbbc82fe547a469c5092",
+            "url": "https://api.github.com/repos/doctrine/common/zipball/0009b8f0d4a917aabc971fb089eba80e872f83f9",
+            "reference": "0009b8f0d4a917aabc971fb089eba80e872f83f9",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "doctrine/annotations": "1.*",
+            "doctrine/cache": "1.*",
+            "doctrine/collections": "1.*",
+            "doctrine/inflector": "1.*",
+            "doctrine/lexer": "1.*",
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~3.7"
         },
-        "time": "2015-05-15 13:33:16",
+        "time": "2015-08-31 13:00:22",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.6.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\CssSelector\\": ""
+            "psr-0": {
+                "Doctrine\\Common\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -841,64 +848,70 @@
         ],
         "authors": [
             {
-                "name": "Jean-François Simon",
-                "email": "jeanfrancois.simon@sensiolabs.com"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
             },
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Symfony CssSelector Component",
-        "homepage": "https://symfony.com"
+        "description": "Common Library for Doctrine projects",
+        "homepage": "http://www.doctrine-project.org",
+        "keywords": [
+            "annotations",
+            "collections",
+            "eventmanager",
+            "persistence",
+            "spl"
+        ]
     },
     {
-        "name": "symfony/dependency-injection",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "doctrine/annotations",
+        "version": "v1.2.7",
+        "version_normalized": "1.2.7.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/DependencyInjection.git",
-            "reference": "851e3ffe8a366b1590bdaf3df2c1395f2d27d8a6"
+            "url": "https://github.com/doctrine/annotations.git",
+            "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/851e3ffe8a366b1590bdaf3df2c1395f2d27d8a6",
-            "reference": "851e3ffe8a366b1590bdaf3df2c1395f2d27d8a6",
+            "url": "https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
+            "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
-        },
-        "conflict": {
-            "symfony/expression-language": "<2.6"
+            "doctrine/lexer": "1.*",
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "symfony/config": "~2.2",
-            "symfony/expression-language": "~2.6",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/yaml": "~2.1"
-        },
-        "suggest": {
-            "symfony/config": "",
-            "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
-            "symfony/yaml": ""
+            "doctrine/cache": "1.*",
+            "phpunit/phpunit": "4.*"
         },
-        "time": "2015-07-28 14:07:07",
+        "time": "2015-08-31 12:32:49",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.3.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\DependencyInjection\\": ""
+            "psr-0": {
+                "Doctrine\\Common\\Annotations\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -907,60 +920,70 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Symfony DependencyInjection Component",
-        "homepage": "https://symfony.com"
+        "description": "Docblock Annotations Parser",
+        "homepage": "http://www.doctrine-project.org",
+        "keywords": [
+            "annotations",
+            "docblock",
+            "parser"
+        ]
     },
     {
-        "name": "symfony/debug",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "doctrine/instantiator",
+        "version": "1.0.5",
+        "version_normalized": "1.0.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Debug.git",
-            "reference": "9daa1bf9f7e615fa2fba30357e479a90141222e3"
+            "url": "https://github.com/doctrine/instantiator.git",
+            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Debug/zipball/9daa1bf9f7e615fa2fba30357e479a90141222e3",
-            "reference": "9daa1bf9f7e615fa2fba30357e479a90141222e3",
+            "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
+            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9",
-            "psr/log": "~1.0"
-        },
-        "conflict": {
-            "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
+            "php": ">=5.3,<8.0-DEV"
         },
         "require-dev": {
-            "symfony/class-loader": "~2.2",
-            "symfony/http-foundation": "~2.1",
-            "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2",
-            "symfony/phpunit-bridge": "~2.7"
-        },
-        "suggest": {
-            "symfony/http-foundation": "",
-            "symfony/http-kernel": ""
+            "athletic/athletic": "~0.1.8",
+            "ext-pdo": "*",
+            "ext-phar": "*",
+            "phpunit/phpunit": "~4.0",
+            "squizlabs/php_codesniffer": "~2.0"
         },
-        "time": "2015-07-09 16:07:40",
+        "time": "2015-06-14 21:17:01",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\Debug\\": ""
+                "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -969,54 +992,56 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Marco Pivetta",
+                "email": "ocramius@gmail.com",
+                "homepage": "http://ocramius.github.com/"
             }
         ],
-        "description": "Symfony Debug Component",
-        "homepage": "https://symfony.com"
-    },
-    {
-        "name": "symfony/http-foundation",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
+        "homepage": "https://github.com/doctrine/instantiator",
+        "keywords": [
+            "constructor",
+            "instantiate"
+        ]
+    },
+    {
+        "name": "doctrine/cache",
+        "version": "v1.4.2",
+        "version_normalized": "1.4.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/HttpFoundation.git",
-            "reference": "863af6898081b34c65d42100c370b9f3c51b70ca"
+            "url": "https://github.com/doctrine/cache.git",
+            "reference": "8c434000f420ade76a07c64cbe08ca47e5c101ca"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/863af6898081b34c65d42100c370b9f3c51b70ca",
-            "reference": "863af6898081b34c65d42100c370b9f3c51b70ca",
+            "url": "https://api.github.com/repos/doctrine/cache/zipball/8c434000f420ade76a07c64cbe08ca47e5c101ca",
+            "reference": "8c434000f420ade76a07c64cbe08ca47e5c101ca",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3.2"
+        },
+        "conflict": {
+            "doctrine/common": ">2.2,<2.4"
         },
         "require-dev": {
-            "symfony/expression-language": "~2.4",
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": ">=3.7",
+            "predis/predis": "~1.0",
+            "satooshi/php-coveralls": "~0.6"
         },
-        "time": "2015-07-22 10:11:00",
+        "time": "2015-08-31 12:36:41",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.5.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\HttpFoundation\\": ""
-            },
-            "classmap": [
-                "Resources/stubs"
-            ]
+            "psr-0": {
+                "Doctrine\\Common\\Cache\\": "lib/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -1024,58 +1049,65 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Symfony HttpFoundation Component",
-        "homepage": "https://symfony.com"
+        "description": "Caching library offering an object-oriented API for many cache backends",
+        "homepage": "http://www.doctrine-project.org",
+        "keywords": [
+            "cache",
+            "caching"
+        ]
     },
     {
-        "name": "symfony/event-dispatcher",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "doctrine/collections",
+        "version": "v1.3.0",
+        "version_normalized": "1.3.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/EventDispatcher.git",
-            "reference": "9310b5f9a87ec2ea75d20fec0b0017c77c66dac3"
+            "url": "https://github.com/doctrine/collections.git",
+            "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/9310b5f9a87ec2ea75d20fec0b0017c77c66dac3",
-            "reference": "9310b5f9a87ec2ea75d20fec0b0017c77c66dac3",
+            "url": "https://api.github.com/repos/doctrine/collections/zipball/6c1e4eef75f310ea1b3e30945e9f06e652128b8a",
+            "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/config": "~2.0,>=2.0.5",
-            "symfony/dependency-injection": "~2.6",
-            "symfony/expression-language": "~2.6",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/stopwatch": "~2.3"
-        },
-        "suggest": {
-            "symfony/dependency-injection": "",
-            "symfony/http-kernel": ""
+            "phpunit/phpunit": "~4.0"
         },
-        "time": "2015-06-18 19:21:56",
+        "time": "2015-04-14 22:21:58",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\EventDispatcher\\": ""
+            "psr-0": {
+                "Doctrine\\Common\\Collections\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1084,80 +1116,66 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Symfony EventDispatcher Component",
-        "homepage": "https://symfony.com"
+        "description": "Collections Abstraction library",
+        "homepage": "http://www.doctrine-project.org",
+        "keywords": [
+            "array",
+            "collections",
+            "iterator"
+        ]
     },
     {
-        "name": "symfony/http-kernel",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "doctrine/inflector",
+        "version": "v1.0.1",
+        "version_normalized": "1.0.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/HttpKernel.git",
-            "reference": "405d3e7a59ff7a28ec469441326a0ac79065ea98"
+            "url": "https://github.com/doctrine/inflector.git",
+            "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/405d3e7a59ff7a28ec469441326a0ac79065ea98",
-            "reference": "405d3e7a59ff7a28ec469441326a0ac79065ea98",
+            "url": "https://api.github.com/repos/doctrine/inflector/zipball/0bcb2e79d8571787f18b7eb036ed3d004908e604",
+            "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9",
-            "psr/log": "~1.0",
-            "symfony/debug": "~2.6,>=2.6.2",
-            "symfony/event-dispatcher": "~2.6,>=2.6.7",
-            "symfony/http-foundation": "~2.5,>=2.5.4"
-        },
-        "conflict": {
-            "symfony/config": "<2.7"
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "symfony/browser-kit": "~2.3",
-            "symfony/class-loader": "~2.1",
-            "symfony/config": "~2.7",
-            "symfony/console": "~2.3",
-            "symfony/css-selector": "~2.0,>=2.0.5",
-            "symfony/dependency-injection": "~2.2",
-            "symfony/dom-crawler": "~2.0,>=2.0.5",
-            "symfony/expression-language": "~2.4",
-            "symfony/finder": "~2.0,>=2.0.5",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.0,>=2.0.5",
-            "symfony/routing": "~2.2",
-            "symfony/stopwatch": "~2.3",
-            "symfony/templating": "~2.2",
-            "symfony/translation": "~2.0,>=2.0.5",
-            "symfony/var-dumper": "~2.6"
-        },
-        "suggest": {
-            "symfony/browser-kit": "",
-            "symfony/class-loader": "",
-            "symfony/config": "",
-            "symfony/console": "",
-            "symfony/dependency-injection": "",
-            "symfony/finder": "",
-            "symfony/var-dumper": ""
+            "phpunit/phpunit": "4.*"
         },
-        "time": "2015-07-31 13:24:45",
+        "time": "2014-12-20 21:24:13",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\HttpKernel\\": ""
+            "psr-0": {
+                "Doctrine\\Common\\Inflector\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1166,652 +1184,645 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Symfony HttpKernel Component",
-        "homepage": "https://symfony.com"
+        "description": "Common String Manipulations with regard to casing and singular/plural rules.",
+        "homepage": "http://www.doctrine-project.org",
+        "keywords": [
+            "inflection",
+            "pluralize",
+            "singularize",
+            "string"
+        ]
     },
     {
-        "name": "symfony/routing",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "sebastian/environment",
+        "version": "1.3.2",
+        "version_normalized": "1.3.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Routing.git",
-            "reference": "ea9134f277162b02e5f80ac058b75a77637b0d26"
+            "url": "https://github.com/sebastianbergmann/environment.git",
+            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Routing/zipball/ea9134f277162b02e5f80ac058b75a77637b0d26",
-            "reference": "ea9134f277162b02e5f80ac058b75a77637b0d26",
+            "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6324c907ce7a52478eeeaede764f48733ef5ae44",
+            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
-        },
-        "conflict": {
-            "symfony/config": "<2.7"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/common": "~2.2",
-            "psr/log": "~1.0",
-            "symfony/config": "~2.7",
-            "symfony/expression-language": "~2.4",
-            "symfony/http-foundation": "~2.3",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/yaml": "~2.0,>=2.0.5"
-        },
-        "suggest": {
-            "doctrine/annotations": "For using the annotation loader",
-            "symfony/config": "For using the all-in-one router or any loader",
-            "symfony/expression-language": "For using expression matching",
-            "symfony/yaml": "For using the YAML loader"
+            "phpunit/phpunit": "~4.4"
         },
-        "time": "2015-07-09 16:07:40",
+        "time": "2015-08-03 06:14:51",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.3.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Routing\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony Routing Component",
-        "homepage": "https://symfony.com",
+        "description": "Provides functionality to handle HHVM/PHP environments",
+        "homepage": "http://www.github.com/sebastianbergmann/environment",
         "keywords": [
-            "router",
-            "routing",
-            "uri",
-            "url"
+            "Xdebug",
+            "environment",
+            "hhvm"
         ]
     },
     {
-        "name": "symfony/serializer",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "phpunit/php-timer",
+        "version": "1.0.7",
+        "version_normalized": "1.0.7.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Serializer.git",
-            "reference": "143d318457ecc298a846506acc8e80dea30d2548"
+            "url": "https://github.com/sebastianbergmann/php-timer.git",
+            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Serializer/zipball/143d318457ecc298a846506acc8e80dea30d2548",
-            "reference": "143d318457ecc298a846506acc8e80dea30d2548",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
+            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
-        },
-        "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/cache": "~1.0",
-            "symfony/config": "~2.2",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/property-access": "~2.3",
-            "symfony/yaml": "~2.0"
-        },
-        "suggest": {
-            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
-            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
-            "symfony/config": "For using the XML mapping loader.",
-            "symfony/property-access": "For using the ObjectNormalizer.",
-            "symfony/yaml": "For using the default YAML mapping loader."
+            "php": ">=5.3.3"
         },
-        "time": "2015-07-22 19:42:44",
+        "time": "2015-06-21 08:01:12",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Serializer\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony Serializer Component",
-        "homepage": "https://symfony.com"
+        "description": "Utility class for timing",
+        "homepage": "https://github.com/sebastianbergmann/php-timer/",
+        "keywords": [
+            "timer"
+        ]
     },
     {
-        "name": "symfony/translation",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "phpunit/php-code-coverage",
+        "version": "2.2.2",
+        "version_normalized": "2.2.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Translation.git",
-            "reference": "c8dc34cc936152c609cdd722af317e4239d10dd6"
+            "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
+            "reference": "2d7c03c0e4e080901b8f33b2897b0577be18a13c"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Translation/zipball/c8dc34cc936152c609cdd722af317e4239d10dd6",
-            "reference": "c8dc34cc936152c609cdd722af317e4239d10dd6",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2d7c03c0e4e080901b8f33b2897b0577be18a13c",
+            "reference": "2d7c03c0e4e080901b8f33b2897b0577be18a13c",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
-        },
-        "conflict": {
-            "symfony/config": "<2.7"
+            "php": ">=5.3.3",
+            "phpunit/php-file-iterator": "~1.3",
+            "phpunit/php-text-template": "~1.2",
+            "phpunit/php-token-stream": "~1.3",
+            "sebastian/environment": "^1.3.2",
+            "sebastian/version": "~1.0"
         },
         "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/config": "~2.7",
-            "symfony/intl": "~2.3",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/yaml": "~2.2"
+            "ext-xdebug": ">=2.1.4",
+            "phpunit/phpunit": "~4"
         },
         "suggest": {
-            "psr/log": "To use logging capability in translator",
-            "symfony/config": "",
-            "symfony/yaml": ""
+            "ext-dom": "*",
+            "ext-xdebug": ">=2.2.1",
+            "ext-xmlwriter": "*"
         },
-        "time": "2015-07-09 16:07:40",
+        "time": "2015-08-04 03:42:39",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Translation\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony Translation Component",
-        "homepage": "https://symfony.com"
+        "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
+        "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
+        "keywords": [
+            "coverage",
+            "testing",
+            "xunit"
+        ]
     },
     {
-        "name": "symfony/validator",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "phpunit/phpunit",
+        "version": "4.8.6",
+        "version_normalized": "4.8.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Validator.git",
-            "reference": "646df03e635a8a232804274401449ccdf5f03cad"
+            "url": "https://github.com/sebastianbergmann/phpunit.git",
+            "reference": "2246830f4a1a551c67933e4171bf2126dc29d357"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Validator/zipball/646df03e635a8a232804274401449ccdf5f03cad",
-            "reference": "646df03e635a8a232804274401449ccdf5f03cad",
+            "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/2246830f4a1a551c67933e4171bf2126dc29d357",
+            "reference": "2246830f4a1a551c67933e4171bf2126dc29d357",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9",
-            "symfony/translation": "~2.4"
-        },
-        "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/cache": "~1.0",
-            "egulias/email-validator": "~1.2,>=1.2.1",
-            "symfony/config": "~2.2",
-            "symfony/expression-language": "~2.4",
-            "symfony/http-foundation": "~2.1",
-            "symfony/intl": "~2.3",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/property-access": "~2.3",
-            "symfony/yaml": "~2.0,>=2.0.5"
+            "ext-dom": "*",
+            "ext-json": "*",
+            "ext-pcre": "*",
+            "ext-reflection": "*",
+            "ext-spl": "*",
+            "php": ">=5.3.3",
+            "phpspec/prophecy": "^1.3.1",
+            "phpunit/php-code-coverage": "~2.1",
+            "phpunit/php-file-iterator": "~1.4",
+            "phpunit/php-text-template": "~1.2",
+            "phpunit/php-timer": ">=1.0.6",
+            "phpunit/phpunit-mock-objects": "~2.3",
+            "sebastian/comparator": "~1.1",
+            "sebastian/diff": "~1.2",
+            "sebastian/environment": "~1.3",
+            "sebastian/exporter": "~1.2",
+            "sebastian/global-state": "~1.0",
+            "sebastian/version": "~1.0",
+            "symfony/yaml": "~2.1|~3.0"
         },
         "suggest": {
-            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
-            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
-            "egulias/email-validator": "Strict (RFC compliant) email validation",
-            "symfony/config": "",
-            "symfony/expression-language": "For using the 2.4 Expression validator",
-            "symfony/http-foundation": "",
-            "symfony/intl": "",
-            "symfony/property-access": "For using the 2.4 Validator API",
-            "symfony/yaml": ""
+            "phpunit/php-invoker": "~1.1"
         },
-        "time": "2015-07-31 06:49:15",
+        "time": "2015-08-24 04:09:38",
+        "bin": [
+            "phpunit"
+        ],
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "4.8.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Validator\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony Validator Component",
-        "homepage": "https://symfony.com"
+        "description": "The PHP Unit Testing framework.",
+        "homepage": "https://phpunit.de/",
+        "keywords": [
+            "phpunit",
+            "testing",
+            "xunit"
+        ]
     },
     {
-        "name": "symfony/process",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "easyrdf/easyrdf",
+        "version": "0.9.1",
+        "version_normalized": "0.9.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Process.git",
-            "reference": "48aeb0e48600321c272955132d7606ab0a49adb3"
+            "url": "https://github.com/njh/easyrdf.git",
+            "reference": "acd09dfe0555fbcfa254291e433c45fdd4652566"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Process/zipball/48aeb0e48600321c272955132d7606ab0a49adb3",
-            "reference": "48aeb0e48600321c272955132d7606ab0a49adb3",
+            "url": "https://api.github.com/repos/njh/easyrdf/zipball/acd09dfe0555fbcfa254291e433c45fdd4652566",
+            "reference": "acd09dfe0555fbcfa254291e433c45fdd4652566",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "ext-mbstring": "*",
+            "ext-pcre": "*",
+            "php": ">=5.2.8"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~3.5",
+            "sami/sami": "~1.4",
+            "squizlabs/php_codesniffer": "~1.4.3"
         },
-        "time": "2015-07-01 11:25:50",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
+        "suggest": {
+            "ml/json-ld": "~1.0"
         },
+        "time": "2015-02-27 09:45:49",
+        "type": "library",
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Process\\": ""
+            "psr-0": {
+                "EasyRdf_": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Nicholas Humfrey",
+                "email": "njh@aelius.com",
+                "homepage": "http://www.aelius.com/njh/",
+                "role": "Developer"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Alexey Zakhlestin",
+                "email": "indeyets@gmail.com",
+                "role": "Developer"
             }
         ],
-        "description": "Symfony Process Component",
-        "homepage": "https://symfony.com"
+        "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.",
+        "homepage": "http://www.easyrdf.org/",
+        "keywords": [
+            "Linked Data",
+            "RDF",
+            "Semantic Web",
+            "Turtle",
+            "rdfa",
+            "sparql"
+        ]
     },
     {
-        "name": "symfony/yaml",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "zendframework/zend-stdlib",
+        "version": "2.6.0",
+        "version_normalized": "2.6.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Yaml.git",
-            "reference": "71340e996171474a53f3d29111d046be4ad8a0ff"
+            "url": "https://github.com/zendframework/zend-stdlib.git",
+            "reference": "a35758803fc9051ec1aff43989e679b6b451b1b4"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Yaml/zipball/71340e996171474a53f3d29111d046be4ad8a0ff",
-            "reference": "71340e996171474a53f3d29111d046be4ad8a0ff",
+            "url": "https://api.github.com/repos/zendframework/zend-stdlib/zipball/a35758803fc9051ec1aff43989e679b6b451b1b4",
+            "reference": "a35758803fc9051ec1aff43989e679b6b451b1b4",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.5"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "fabpot/php-cs-fixer": "1.7.*",
+            "phpunit/phpunit": "~4.0",
+            "zendframework/zend-config": "~2.5",
+            "zendframework/zend-eventmanager": "~2.5",
+            "zendframework/zend-filter": "~2.5",
+            "zendframework/zend-inputfilter": "~2.5",
+            "zendframework/zend-serializer": "~2.5",
+            "zendframework/zend-servicemanager": "~2.5"
+        },
+        "suggest": {
+            "zendframework/zend-eventmanager": "To support aggregate hydrator usage",
+            "zendframework/zend-filter": "To support naming strategy hydrator usage",
+            "zendframework/zend-serializer": "Zend\\Serializer component",
+            "zendframework/zend-servicemanager": "To support hydrator plugin manager usage"
         },
-        "time": "2015-07-28 14:07:07",
+        "time": "2015-07-21 17:08:05",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.6-dev",
+                "dev-develop": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\Yaml\\": ""
+                "Zend\\Stdlib\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
+            "BSD-3-Clause"
         ],
-        "description": "Symfony Yaml Component",
-        "homepage": "https://symfony.com"
+        "homepage": "https://github.com/zendframework/zend-stdlib",
+        "keywords": [
+            "stdlib",
+            "zf2"
+        ]
     },
     {
-        "name": "symfony/dom-crawler",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "zendframework/zend-escaper",
+        "version": "2.5.1",
+        "version_normalized": "2.5.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/DomCrawler.git",
-            "reference": "9dabece63182e95c42b06967a0d929a5df78bc35"
+            "url": "https://github.com/zendframework/zend-escaper.git",
+            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/9dabece63182e95c42b06967a0d929a5df78bc35",
-            "reference": "9dabece63182e95c42b06967a0d929a5df78bc35",
+            "url": "https://api.github.com/repos/zendframework/zend-escaper/zipball/a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
+            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3.23"
         },
         "require-dev": {
-            "symfony/css-selector": "~2.3",
-            "symfony/phpunit-bridge": "~2.7"
-        },
-        "suggest": {
-            "symfony/css-selector": ""
+            "fabpot/php-cs-fixer": "1.7.*",
+            "phpunit/phpunit": "~4.0"
         },
-        "time": "2015-07-09 16:07:40",
+        "time": "2015-06-03 14:05:37",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.5-dev",
+                "dev-develop": "2.6-dev"
             }
         },
         "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\DomCrawler\\": ""
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+        "autoload": {
+            "psr-4": {
+                "Zend\\Escaper\\": "src/"
             }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
         ],
-        "description": "Symfony DomCrawler Component",
-        "homepage": "https://symfony.com"
+        "homepage": "https://github.com/zendframework/zend-escaper",
+        "keywords": [
+            "escaper",
+            "zf2"
+        ]
     },
     {
-        "name": "symfony/browser-kit",
-        "version": "v2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "zendframework/zend-feed",
+        "version": "2.5.2",
+        "version_normalized": "2.5.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/BrowserKit.git",
-            "reference": "176905d3d74c2f99e6ab70f4f5a89460532495ae"
+            "url": "https://github.com/zendframework/zend-feed.git",
+            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/BrowserKit/zipball/176905d3d74c2f99e6ab70f4f5a89460532495ae",
-            "reference": "176905d3d74c2f99e6ab70f4f5a89460532495ae",
+            "url": "https://api.github.com/repos/zendframework/zend-feed/zipball/0661345b82b51428619e05d3aadd3de65b57fa54",
+            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9",
-            "symfony/dom-crawler": "~2.0,>=2.0.5"
+            "php": ">=5.5",
+            "zendframework/zend-escaper": "~2.5",
+            "zendframework/zend-stdlib": "~2.5"
         },
         "require-dev": {
-            "symfony/css-selector": "~2.0,>=2.0.5",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.0,>=2.0.5"
+            "fabpot/php-cs-fixer": "1.7.*",
+            "phpunit/phpunit": "~4.0",
+            "zendframework/zend-cache": "~2.5",
+            "zendframework/zend-db": "~2.5",
+            "zendframework/zend-http": "~2.5",
+            "zendframework/zend-servicemanager": "~2.5",
+            "zendframework/zend-validator": "~2.5"
         },
         "suggest": {
-            "symfony/process": ""
+            "zendframework/zend-cache": "Zend\\Cache component",
+            "zendframework/zend-db": "Zend\\Db component",
+            "zendframework/zend-http": "Zend\\Http for PubSubHubbub, and optionally for use with Zend\\Feed\\Reader",
+            "zendframework/zend-servicemanager": "Zend\\ServiceManager component, for default/recommended ExtensionManager implementations",
+            "zendframework/zend-validator": "Zend\\Validator component"
         },
-        "time": "2015-07-09 16:07:40",
+        "time": "2015-08-04 21:39:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.5-dev",
+                "dev-develop": "2.6-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\BrowserKit\\": ""
+                "Zend\\Feed\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
+            "BSD-3-Clause"
         ],
-        "description": "Symfony BrowserKit Component",
-        "homepage": "https://symfony.com"
+        "description": "provides functionality for consuming RSS and Atom feeds",
+        "homepage": "https://github.com/zendframework/zend-feed",
+        "keywords": [
+            "feed",
+            "zf2"
+        ]
     },
     {
-        "name": "guzzlehttp/promises",
-        "version": "1.0.2",
-        "version_normalized": "1.0.2.0",
+        "name": "zendframework/zend-diactoros",
+        "version": "1.1.3",
+        "version_normalized": "1.1.3.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/guzzle/promises.git",
-            "reference": "97fe7210def29451ec74923b27e552238defd75a"
+            "url": "https://github.com/zendframework/zend-diactoros.git",
+            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/guzzle/promises/zipball/97fe7210def29451ec74923b27e552238defd75a",
-            "reference": "97fe7210def29451ec74923b27e552238defd75a",
+            "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
+            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.5.0"
+            "php": ">=5.4",
+            "psr/http-message": "~1.0"
+        },
+        "provide": {
+            "psr/http-message-implementation": "~1.0.0"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.0"
+            "phpunit/phpunit": "~4.6",
+            "squizlabs/php_codesniffer": "^2.3.1"
         },
-        "time": "2015-08-15 19:37:21",
+        "time": "2015-08-10 20:04:20",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev"
+                "dev-master": "1.0-dev",
+                "dev-develop": "1.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "GuzzleHttp\\Promise\\": "src/"
-            },
-            "files": [
-                "src/functions_include.php"
-            ]
+                "Zend\\Diactoros\\": "src/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Michael Dowling",
-                "email": "mtdowling@gmail.com",
-                "homepage": "https://github.com/mtdowling"
-            }
+            "BSD-2-Clause"
         ],
-        "description": "Guzzle promises library",
+        "description": "PSR HTTP Message implementations",
+        "homepage": "https://github.com/zendframework/zend-diactoros",
         "keywords": [
-            "promise"
+            "http",
+            "psr",
+            "psr-7"
         ]
     },
     {
-        "name": "guzzlehttp/psr7",
-        "version": "1.2.0",
-        "version_normalized": "1.2.0.0",
+        "name": "twig/twig",
+        "version": "v1.21.1",
+        "version_normalized": "1.21.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/guzzle/psr7.git",
-            "reference": "4ef919b0cf3b1989523138b60163bbcb7ba1ff7e"
+            "url": "https://github.com/twigphp/Twig.git",
+            "reference": "ca8d3aa90b6a01c82e07909fe815d6b443e75a23"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/guzzle/psr7/zipball/4ef919b0cf3b1989523138b60163bbcb7ba1ff7e",
-            "reference": "4ef919b0cf3b1989523138b60163bbcb7ba1ff7e",
+            "url": "https://api.github.com/repos/twigphp/Twig/zipball/ca8d3aa90b6a01c82e07909fe815d6b443e75a23",
+            "reference": "ca8d3aa90b6a01c82e07909fe815d6b443e75a23",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.4.0",
-            "psr/http-message": "~1.0"
-        },
-        "provide": {
-            "psr/http-message-implementation": "1.0"
+            "php": ">=5.2.7"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.0"
+            "symfony/debug": "~2.7",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-08-15 19:32:36",
+        "time": "2015-08-26 08:58:31",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev"
+                "dev-master": "1.21-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "GuzzleHttp\\Psr7\\": "src/"
-            },
-            "files": [
-                "src/functions_include.php"
-            ]
+            "psr-0": {
+                "Twig_": "lib/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Michael Dowling",
-                "email": "mtdowling@gmail.com",
-                "homepage": "https://github.com/mtdowling"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com",
+                "homepage": "http://fabien.potencier.org",
+                "role": "Lead Developer"
+            },
+            {
+                "name": "Armin Ronacher",
+                "email": "armin.ronacher@active-4.com",
+                "role": "Project Founder"
+            },
+            {
+                "name": "Twig Team",
+                "homepage": "http://twig.sensiolabs.org/contributors",
+                "role": "Contributors"
             }
         ],
-        "description": "PSR-7 message implementation",
+        "description": "Twig, the flexible, fast, and secure template language for PHP",
+        "homepage": "http://twig.sensiolabs.org",
         "keywords": [
-            "http",
-            "message",
-            "stream",
-            "uri"
+            "templating"
         ]
     },
     {
-        "name": "doctrine/common",
-        "version": "v2.5.1",
-        "version_normalized": "2.5.1.0",
+        "name": "fabpot/goutte",
+        "version": "v3.1.1",
+        "version_normalized": "3.1.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/common.git",
-            "reference": "0009b8f0d4a917aabc971fb089eba80e872f83f9"
+            "url": "https://github.com/FriendsOfPHP/Goutte.git",
+            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/common/zipball/0009b8f0d4a917aabc971fb089eba80e872f83f9",
-            "reference": "0009b8f0d4a917aabc971fb089eba80e872f83f9",
+            "url": "https://api.github.com/repos/FriendsOfPHP/Goutte/zipball/751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
+            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
             "shasum": ""
         },
         "require": {
-            "doctrine/annotations": "1.*",
-            "doctrine/cache": "1.*",
-            "doctrine/collections": "1.*",
-            "doctrine/inflector": "1.*",
-            "doctrine/lexer": "1.*",
-            "php": ">=5.3.2"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~3.7"
+            "guzzlehttp/guzzle": "^6.0",
+            "php": ">=5.5.0",
+            "symfony/browser-kit": "~2.1",
+            "symfony/css-selector": "~2.1",
+            "symfony/dom-crawler": "~2.1"
         },
-        "time": "2015-08-31 13:00:22",
-        "type": "library",
+        "time": "2015-08-29 16:16:56",
+        "type": "application",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.6.x-dev"
+                "dev-master": "3.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\": "lib/"
+            "psr-4": {
+                "Goutte\\": "Goutte"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1820,70 +1831,50 @@
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
-            },
-            {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Common Library for Doctrine projects",
-        "homepage": "http://www.doctrine-project.org",
+        "description": "A simple PHP Web Scraper",
+        "homepage": "https://github.com/FriendsOfPHP/Goutte",
         "keywords": [
-            "annotations",
-            "collections",
-            "eventmanager",
-            "persistence",
-            "spl"
+            "scraper"
         ]
     },
-    {
-        "name": "doctrine/annotations",
-        "version": "v1.2.7",
-        "version_normalized": "1.2.7.0",
+    {
+        "name": "phpspec/prophecy",
+        "version": "v1.5.0",
+        "version_normalized": "1.5.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/annotations.git",
-            "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535"
+            "url": "https://github.com/phpspec/prophecy.git",
+            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
-            "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
+            "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4745ded9307786b730d7a60df5cb5a6c43cf95f7",
+            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7",
             "shasum": ""
         },
         "require": {
-            "doctrine/lexer": "1.*",
-            "php": ">=5.3.2"
+            "doctrine/instantiator": "^1.0.2",
+            "phpdocumentor/reflection-docblock": "~2.0",
+            "sebastian/comparator": "~1.1"
         },
         "require-dev": {
-            "doctrine/cache": "1.*",
-            "phpunit/phpunit": "4.*"
+            "phpspec/phpspec": "~2.0"
         },
-        "time": "2015-08-31 12:32:49",
+        "time": "2015-08-13 10:07:40",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3.x-dev"
+                "dev-master": "1.4.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Common\\Annotations\\": "lib/"
+                "Prophecy\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1892,325 +1883,255 @@
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
+                "name": "Konstantin Kudryashov",
+                "email": "ever.zet@gmail.com",
+                "homepage": "http://everzet.com"
             },
             {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Marcello Duarte",
+                "email": "marcello.duarte@gmail.com"
             }
         ],
-        "description": "Docblock Annotations Parser",
-        "homepage": "http://www.doctrine-project.org",
+        "description": "Highly opinionated mocking framework for PHP 5.3+",
+        "homepage": "https://github.com/phpspec/prophecy",
         "keywords": [
-            "annotations",
-            "docblock",
-            "parser"
+            "Double",
+            "Dummy",
+            "fake",
+            "mock",
+            "spy",
+            "stub"
         ]
     },
     {
-        "name": "doctrine/instantiator",
-        "version": "1.0.5",
-        "version_normalized": "1.0.5.0",
+        "name": "phpunit/php-file-iterator",
+        "version": "1.4.1",
+        "version_normalized": "1.4.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/instantiator.git",
-            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
+            "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
+            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
-            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
+            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3,<8.0-DEV"
-        },
-        "require-dev": {
-            "athletic/athletic": "~0.1.8",
-            "ext-pdo": "*",
-            "ext-phar": "*",
-            "phpunit/phpunit": "~4.0",
-            "squizlabs/php_codesniffer": "~2.0"
+            "php": ">=5.3.3"
         },
-        "time": "2015-06-14 21:17:01",
+        "time": "2015-06-21 13:08:43",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "1.4.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Marco Pivetta",
-                "email": "ocramius@gmail.com",
-                "homepage": "http://ocramius.github.com/"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
-        "homepage": "https://github.com/doctrine/instantiator",
+        "description": "FilterIterator implementation that filters files based on a list of suffixes.",
+        "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
         "keywords": [
-            "constructor",
-            "instantiate"
+            "filesystem",
+            "iterator"
         ]
     },
     {
-        "name": "doctrine/cache",
-        "version": "v1.4.2",
-        "version_normalized": "1.4.2.0",
+        "name": "phpunit/php-text-template",
+        "version": "1.2.1",
+        "version_normalized": "1.2.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/cache.git",
-            "reference": "8c434000f420ade76a07c64cbe08ca47e5c101ca"
+            "url": "https://github.com/sebastianbergmann/php-text-template.git",
+            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/cache/zipball/8c434000f420ade76a07c64cbe08ca47e5c101ca",
-            "reference": "8c434000f420ade76a07c64cbe08ca47e5c101ca",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
+            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.2"
-        },
-        "conflict": {
-            "doctrine/common": ">2.2,<2.4"
-        },
-        "require-dev": {
-            "phpunit/phpunit": ">=3.7",
-            "predis/predis": "~1.0",
-            "satooshi/php-coveralls": "~0.6"
+            "php": ">=5.3.3"
         },
-        "time": "2015-08-31 12:36:41",
+        "time": "2015-06-21 13:50:34",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.5.x-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Cache\\": "lib/"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
-            },
-            {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de",
+                "role": "lead"
             }
         ],
-        "description": "Caching library offering an object-oriented API for many cache backends",
-        "homepage": "http://www.doctrine-project.org",
+        "description": "Simple template engine.",
+        "homepage": "https://github.com/sebastianbergmann/php-text-template/",
         "keywords": [
-            "cache",
-            "caching"
+            "template"
         ]
     },
     {
-        "name": "doctrine/collections",
-        "version": "v1.3.0",
-        "version_normalized": "1.3.0.0",
+        "name": "phpunit/php-token-stream",
+        "version": "1.4.6",
+        "version_normalized": "1.4.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/collections.git",
-            "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a"
+            "url": "https://github.com/sebastianbergmann/php-token-stream.git",
+            "reference": "3ab72c62e550370a6cd5dc873e1a04ab57562f5b"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/collections/zipball/6c1e4eef75f310ea1b3e30945e9f06e652128b8a",
-            "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3ab72c62e550370a6cd5dc873e1a04ab57562f5b",
+            "reference": "3ab72c62e550370a6cd5dc873e1a04ab57562f5b",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.2"
+            "ext-tokenizer": "*",
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.0"
+            "phpunit/phpunit": "~4.2"
         },
-        "time": "2015-04-14 22:21:58",
+        "time": "2015-08-16 08:51:00",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "1.4-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Collections\\": "lib/"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
-            },
-            {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Collections Abstraction library",
-        "homepage": "http://www.doctrine-project.org",
+        "description": "Wrapper around PHP's tokenizer extension.",
+        "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
         "keywords": [
-            "array",
-            "collections",
-            "iterator"
+            "tokenizer"
         ]
     },
     {
-        "name": "doctrine/inflector",
-        "version": "v1.0.1",
-        "version_normalized": "1.0.1.0",
+        "name": "phpunit/phpunit-mock-objects",
+        "version": "2.3.7",
+        "version_normalized": "2.3.7.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/inflector.git",
-            "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604"
+            "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
+            "reference": "5e2645ad49d196e020b85598d7c97e482725786a"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/inflector/zipball/0bcb2e79d8571787f18b7eb036ed3d004908e604",
-            "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604",
+            "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/5e2645ad49d196e020b85598d7c97e482725786a",
+            "reference": "5e2645ad49d196e020b85598d7c97e482725786a",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.2"
+            "doctrine/instantiator": "^1.0.2",
+            "php": ">=5.3.3",
+            "phpunit/php-text-template": "~1.2",
+            "sebastian/exporter": "~1.2"
         },
         "require-dev": {
-            "phpunit/phpunit": "4.*"
+            "phpunit/phpunit": "~4.4"
         },
-        "time": "2014-12-20 21:24:13",
+        "suggest": {
+            "ext-soap": "*"
+        },
+        "time": "2015-08-19 09:14:08",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "2.3.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Inflector\\": "lib/"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
-            },
-            {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Common String Manipulations with regard to casing and singular/plural rules.",
-        "homepage": "http://www.doctrine-project.org",
+        "description": "Mock Object library for PHPUnit",
+        "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
         "keywords": [
-            "inflection",
-            "pluralize",
-            "singularize",
-            "string"
+            "mock",
+            "xunit"
         ]
     },
     {
-        "name": "sebastian/environment",
-        "version": "1.3.2",
-        "version_normalized": "1.3.2.0",
+        "name": "sebastian/comparator",
+        "version": "1.2.0",
+        "version_normalized": "1.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/environment.git",
-            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44"
+            "url": "https://github.com/sebastianbergmann/comparator.git",
+            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6324c907ce7a52478eeeaede764f48733ef5ae44",
-            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44",
+            "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22",
+            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.3",
+            "sebastian/diff": "~1.2",
+            "sebastian/exporter": "~1.2"
         },
         "require-dev": {
             "phpunit/phpunit": "~4.4"
         },
-        "time": "2015-08-03 06:14:51",
+        "time": "2015-07-26 15:48:44",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3.x-dev"
+                "dev-master": "1.2.x-dev"
             }
         },
         "installation-source": "dist",
@@ -2224,39 +2145,60 @@
             "BSD-3-Clause"
         ],
         "authors": [
+            {
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
+            },
+            {
+                "name": "Volker Dusch",
+                "email": "github@wallbash.com"
+            },
+            {
+                "name": "Bernhard Schussek",
+                "email": "bschussek@2bepublished.at"
+            },
             {
                 "name": "Sebastian Bergmann",
                 "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Provides functionality to handle HHVM/PHP environments",
-        "homepage": "http://www.github.com/sebastianbergmann/environment",
+        "description": "Provides the functionality to compare PHP values for equality",
+        "homepage": "http://www.github.com/sebastianbergmann/comparator",
         "keywords": [
-            "Xdebug",
-            "environment",
-            "hhvm"
+            "comparator",
+            "compare",
+            "equality"
         ]
     },
     {
-        "name": "phpunit/php-timer",
-        "version": "1.0.7",
-        "version_normalized": "1.0.7.0",
+        "name": "sebastian/exporter",
+        "version": "1.2.1",
+        "version_normalized": "1.2.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-timer.git",
-            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
+            "url": "https://github.com/sebastianbergmann/exporter.git",
+            "reference": "7ae5513327cb536431847bcc0c10edba2701064e"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
-            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
+            "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e",
+            "reference": "7ae5513327cb536431847bcc0c10edba2701064e",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.3",
+            "sebastian/recursion-context": "~1.0"
         },
-        "time": "2015-06-21 08:01:12",
+        "require-dev": {
+            "phpunit/phpunit": "~4.4"
+        },
+        "time": "2015-06-21 07:55:53",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.2.x-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
             "classmap": [
@@ -2268,55 +2210,60 @@
             "BSD-3-Clause"
         ],
         "authors": [
+            {
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
+            },
+            {
+                "name": "Volker Dusch",
+                "email": "github@wallbash.com"
+            },
+            {
+                "name": "Bernhard Schussek",
+                "email": "bschussek@2bepublished.at"
+            },
             {
                 "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "email": "sebastian@phpunit.de"
+            },
+            {
+                "name": "Adam Harvey",
+                "email": "aharvey@php.net"
             }
         ],
-        "description": "Utility class for timing",
-        "homepage": "https://github.com/sebastianbergmann/php-timer/",
+        "description": "Provides the functionality to export PHP variables for visualization",
+        "homepage": "http://www.github.com/sebastianbergmann/exporter",
         "keywords": [
-            "timer"
+            "export",
+            "exporter"
         ]
     },
     {
-        "name": "phpunit/php-code-coverage",
-        "version": "2.2.2",
-        "version_normalized": "2.2.2.0",
+        "name": "sebastian/recursion-context",
+        "version": "1.0.1",
+        "version_normalized": "1.0.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
-            "reference": "2d7c03c0e4e080901b8f33b2897b0577be18a13c"
+            "url": "https://github.com/sebastianbergmann/recursion-context.git",
+            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2d7c03c0e4e080901b8f33b2897b0577be18a13c",
-            "reference": "2d7c03c0e4e080901b8f33b2897b0577be18a13c",
+            "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba",
+            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "phpunit/php-file-iterator": "~1.3",
-            "phpunit/php-text-template": "~1.2",
-            "phpunit/php-token-stream": "~1.3",
-            "sebastian/environment": "^1.3.2",
-            "sebastian/version": "~1.0"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "ext-xdebug": ">=2.1.4",
-            "phpunit/phpunit": "~4"
-        },
-        "suggest": {
-            "ext-dom": "*",
-            "ext-xdebug": ">=2.2.1",
-            "ext-xmlwriter": "*"
+            "phpunit/phpunit": "~4.4"
         },
-        "time": "2015-08-04 03:42:39",
+        "time": "2015-06-21 08:04:50",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.2.x-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
@@ -2330,69 +2277,39 @@
             "BSD-3-Clause"
         ],
         "authors": [
+            {
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
+            },
             {
                 "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "email": "sebastian@phpunit.de"
+            },
+            {
+                "name": "Adam Harvey",
+                "email": "aharvey@php.net"
             }
         ],
-        "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
-        "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
-        "keywords": [
-            "coverage",
-            "testing",
-            "xunit"
-        ]
+        "description": "Provides functionality to recursively process PHP variables",
+        "homepage": "http://www.github.com/sebastianbergmann/recursion-context"
     },
     {
-        "name": "phpunit/phpunit",
-        "version": "4.8.6",
-        "version_normalized": "4.8.6.0",
+        "name": "sebastian/version",
+        "version": "1.0.6",
+        "version_normalized": "1.0.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/phpunit.git",
-            "reference": "2246830f4a1a551c67933e4171bf2126dc29d357"
+            "url": "https://github.com/sebastianbergmann/version.git",
+            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/2246830f4a1a551c67933e4171bf2126dc29d357",
-            "reference": "2246830f4a1a551c67933e4171bf2126dc29d357",
+            "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
+            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
             "shasum": ""
         },
-        "require": {
-            "ext-dom": "*",
-            "ext-json": "*",
-            "ext-pcre": "*",
-            "ext-reflection": "*",
-            "ext-spl": "*",
-            "php": ">=5.3.3",
-            "phpspec/prophecy": "^1.3.1",
-            "phpunit/php-code-coverage": "~2.1",
-            "phpunit/php-file-iterator": "~1.4",
-            "phpunit/php-text-template": "~1.2",
-            "phpunit/php-timer": ">=1.0.6",
-            "phpunit/phpunit-mock-objects": "~2.3",
-            "sebastian/comparator": "~1.1",
-            "sebastian/diff": "~1.2",
-            "sebastian/environment": "~1.3",
-            "sebastian/exporter": "~1.2",
-            "sebastian/global-state": "~1.0",
-            "sebastian/version": "~1.0",
-            "symfony/yaml": "~2.1|~3.0"
-        },
-        "suggest": {
-            "phpunit/php-invoker": "~1.1"
-        },
-        "time": "2015-08-24 04:09:38",
-        "bin": [
-            "phpunit"
-        ],
+        "time": "2015-06-21 13:59:46",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "4.8.x-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
             "classmap": [
@@ -2410,391 +2327,400 @@
                 "role": "lead"
             }
         ],
-        "description": "The PHP Unit Testing framework.",
-        "homepage": "https://phpunit.de/",
-        "keywords": [
-            "phpunit",
-            "testing",
-            "xunit"
-        ]
+        "description": "Library that helps with managing the version number of Git-hosted PHP projects",
+        "homepage": "https://github.com/sebastianbergmann/version"
     },
     {
-        "name": "easyrdf/easyrdf",
-        "version": "0.9.1",
-        "version_normalized": "0.9.1.0",
+        "name": "stack/builder",
+        "version": "v1.0.3",
+        "version_normalized": "1.0.3.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/njh/easyrdf.git",
-            "reference": "acd09dfe0555fbcfa254291e433c45fdd4652566"
+            "url": "https://github.com/stackphp/builder.git",
+            "reference": "c1f8a4693b55c563405024f708a76ef576c3b276"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/njh/easyrdf/zipball/acd09dfe0555fbcfa254291e433c45fdd4652566",
-            "reference": "acd09dfe0555fbcfa254291e433c45fdd4652566",
+            "url": "https://api.github.com/repos/stackphp/builder/zipball/c1f8a4693b55c563405024f708a76ef576c3b276",
+            "reference": "c1f8a4693b55c563405024f708a76ef576c3b276",
             "shasum": ""
         },
         "require": {
-            "ext-mbstring": "*",
-            "ext-pcre": "*",
-            "php": ">=5.2.8"
+            "php": ">=5.3.0",
+            "symfony/http-foundation": "~2.1",
+            "symfony/http-kernel": "~2.1"
         },
         "require-dev": {
-            "phpunit/phpunit": "~3.5",
-            "sami/sami": "~1.4",
-            "squizlabs/php_codesniffer": "~1.4.3"
-        },
-        "suggest": {
-            "ml/json-ld": "~1.0"
+            "silex/silex": "~1.0"
         },
-        "time": "2015-02-27 09:45:49",
+        "time": "2014-11-23 20:37:11",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "EasyRdf_": "lib/"
+                "Stack": "src"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Nicholas Humfrey",
-                "email": "njh@aelius.com",
-                "homepage": "http://www.aelius.com/njh/",
-                "role": "Developer"
-            },
-            {
-                "name": "Alexey Zakhlestin",
-                "email": "indeyets@gmail.com",
-                "role": "Developer"
+                "name": "Igor Wiedler",
+                "email": "igor@wiedler.ch"
             }
         ],
-        "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.",
-        "homepage": "http://www.easyrdf.org/",
+        "description": "Builder for stack middlewares based on HttpKernelInterface.",
         "keywords": [
-            "Linked Data",
-            "RDF",
-            "Semantic Web",
-            "Turtle",
-            "rdfa",
-            "sparql"
+            "stack"
         ]
     },
     {
-        "name": "zendframework/zend-stdlib",
-        "version": "2.6.0",
-        "version_normalized": "2.6.0.0",
+        "name": "masterminds/html5",
+        "version": "2.1.2",
+        "version_normalized": "2.1.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-stdlib.git",
-            "reference": "a35758803fc9051ec1aff43989e679b6b451b1b4"
+            "url": "https://github.com/Masterminds/html5-php.git",
+            "reference": "8f782e0f01a6e33a319bdc8f6de9cfd6569979a4"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-stdlib/zipball/a35758803fc9051ec1aff43989e679b6b451b1b4",
-            "reference": "a35758803fc9051ec1aff43989e679b6b451b1b4",
+            "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/8f782e0f01a6e33a319bdc8f6de9cfd6569979a4",
+            "reference": "8f782e0f01a6e33a319bdc8f6de9cfd6569979a4",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.5"
+            "ext-libxml": "*",
+            "php": ">=5.3.0"
         },
         "require-dev": {
-            "fabpot/php-cs-fixer": "1.7.*",
-            "phpunit/phpunit": "~4.0",
-            "zendframework/zend-config": "~2.5",
-            "zendframework/zend-eventmanager": "~2.5",
-            "zendframework/zend-filter": "~2.5",
-            "zendframework/zend-inputfilter": "~2.5",
-            "zendframework/zend-serializer": "~2.5",
-            "zendframework/zend-servicemanager": "~2.5"
-        },
-        "suggest": {
-            "zendframework/zend-eventmanager": "To support aggregate hydrator usage",
-            "zendframework/zend-filter": "To support naming strategy hydrator usage",
-            "zendframework/zend-serializer": "Zend\\Serializer component",
-            "zendframework/zend-servicemanager": "To support hydrator plugin manager usage"
+            "phpunit/phpunit": "4.*",
+            "sami/sami": "~2.0",
+            "satooshi/php-coveralls": "0.6.*"
         },
-        "time": "2015-07-21 17:08:05",
+        "time": "2015-06-07 08:43:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.6-dev",
-                "dev-develop": "2.7-dev"
+                "dev-master": "2.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zend\\Stdlib\\": "src/"
+                "Masterminds\\": "src"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
-        "homepage": "https://github.com/zendframework/zend-stdlib",
+        "authors": [
+            {
+                "name": "Matt Butcher",
+                "email": "technosophos@gmail.com"
+            },
+            {
+                "name": "Asmir Mustafic",
+                "email": "goetas@gmail.com"
+            },
+            {
+                "name": "Matt Farina",
+                "email": "matt@mattfarina.com"
+            }
+        ],
+        "description": "An HTML5 parser and serializer.",
+        "homepage": "http://masterminds.github.io/html5-php",
         "keywords": [
-            "stdlib",
-            "zf2"
+            "HTML5",
+            "dom",
+            "html",
+            "parser",
+            "querypath",
+            "serializer",
+            "xml"
         ]
     },
     {
-        "name": "zendframework/zend-escaper",
-        "version": "2.5.1",
-        "version_normalized": "2.5.1.0",
+        "name": "guzzlehttp/guzzle",
+        "version": "6.1.0",
+        "version_normalized": "6.1.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-escaper.git",
-            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73"
+            "url": "https://github.com/guzzle/guzzle.git",
+            "reference": "66fd14b4d0b8f2389eaf37c5458608c7cb793a81"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-escaper/zipball/a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
-            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
+            "url": "https://api.github.com/repos/guzzle/guzzle/zipball/66fd14b4d0b8f2389eaf37c5458608c7cb793a81",
+            "reference": "66fd14b4d0b8f2389eaf37c5458608c7cb793a81",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.23"
+            "guzzlehttp/promises": "~1.0",
+            "guzzlehttp/psr7": "~1.1",
+            "php": ">=5.5.0"
         },
         "require-dev": {
-            "fabpot/php-cs-fixer": "1.7.*",
-            "phpunit/phpunit": "~4.0"
+            "ext-curl": "*",
+            "phpunit/phpunit": "~4.0",
+            "psr/log": "~1.0"
         },
-        "time": "2015-06-03 14:05:37",
+        "time": "2015-09-08 17:36:26",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev",
-                "dev-develop": "2.6-dev"
+                "dev-master": "6.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
+            "files": [
+                "src/functions_include.php"
+            ],
             "psr-4": {
-                "Zend\\Escaper\\": "src/"
+                "GuzzleHttp\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
-        "homepage": "https://github.com/zendframework/zend-escaper",
+        "authors": [
+            {
+                "name": "Michael Dowling",
+                "email": "mtdowling@gmail.com",
+                "homepage": "https://github.com/mtdowling"
+            }
+        ],
+        "description": "Guzzle is a PHP HTTP client library",
+        "homepage": "http://guzzlephp.org/",
         "keywords": [
-            "escaper",
-            "zf2"
+            "client",
+            "curl",
+            "framework",
+            "http",
+            "http client",
+            "rest",
+            "web service"
         ]
     },
     {
-        "name": "zendframework/zend-feed",
-        "version": "2.5.2",
-        "version_normalized": "2.5.2.0",
+        "name": "symfony/class-loader",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-feed.git",
-            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54"
+            "url": "https://github.com/symfony/ClassLoader.git",
+            "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-feed/zipball/0661345b82b51428619e05d3aadd3de65b57fa54",
-            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54",
+            "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/d957ea6295d7016e20d7eff33a6c1deef819c0d4",
+            "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.5",
-            "zendframework/zend-escaper": "~2.5",
-            "zendframework/zend-stdlib": "~2.5"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "fabpot/php-cs-fixer": "1.7.*",
-            "phpunit/phpunit": "~4.0",
-            "zendframework/zend-cache": "~2.5",
-            "zendframework/zend-db": "~2.5",
-            "zendframework/zend-http": "~2.5",
-            "zendframework/zend-servicemanager": "~2.5",
-            "zendframework/zend-validator": "~2.5"
-        },
-        "suggest": {
-            "zendframework/zend-cache": "Zend\\Cache component",
-            "zendframework/zend-db": "Zend\\Db component",
-            "zendframework/zend-http": "Zend\\Http for PubSubHubbub, and optionally for use with Zend\\Feed\\Reader",
-            "zendframework/zend-servicemanager": "Zend\\ServiceManager component, for default/recommended ExtensionManager implementations",
-            "zendframework/zend-validator": "Zend\\Validator component"
+            "symfony/finder": "~2.0,>=2.0.5",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-08-04 21:39:18",
+        "time": "2015-08-26 17:56:37",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev",
-                "dev-develop": "2.6-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zend\\Feed\\": "src/"
+                "Symfony\\Component\\ClassLoader\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
-        "description": "provides functionality for consuming RSS and Atom feeds",
-        "homepage": "https://github.com/zendframework/zend-feed",
-        "keywords": [
-            "feed",
-            "zf2"
-        ]
+        "authors": [
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
+            }
+        ],
+        "description": "Symfony ClassLoader Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "zendframework/zend-diactoros",
-        "version": "1.1.3",
-        "version_normalized": "1.1.3.0",
+        "name": "symfony/console",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-diactoros.git",
-            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181"
+            "url": "https://github.com/symfony/Console.git",
+            "reference": "9ff9032151186bd66ecee727d728f1319f52d1d8"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
-            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
+            "url": "https://api.github.com/repos/symfony/Console/zipball/9ff9032151186bd66ecee727d728f1319f52d1d8",
+            "reference": "9ff9032151186bd66ecee727d728f1319f52d1d8",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.4",
-            "psr/http-message": "~1.0"
-        },
-        "provide": {
-            "psr/http-message-implementation": "~1.0.0"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.6",
-            "squizlabs/php_codesniffer": "^2.3.1"
+            "psr/log": "~1.0",
+            "symfony/event-dispatcher": "~2.1",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/process": "~2.1"
+        },
+        "suggest": {
+            "psr/log": "For using the console logger",
+            "symfony/event-dispatcher": "",
+            "symfony/process": ""
         },
-        "time": "2015-08-10 20:04:20",
+        "time": "2015-09-03 11:40:38",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev",
-                "dev-develop": "1.1-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zend\\Diactoros\\": "src/"
+                "Symfony\\Component\\Console\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-2-Clause"
+            "MIT"
         ],
-        "description": "PSR HTTP Message implementations",
-        "homepage": "https://github.com/zendframework/zend-diactoros",
-        "keywords": [
-            "http",
-            "psr",
-            "psr-7"
-        ]
+        "authors": [
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
+            }
+        ],
+        "description": "Symfony Console Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "twig/twig",
-        "version": "v1.21.1",
-        "version_normalized": "1.21.1.0",
+        "name": "symfony/css-selector",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/twigphp/Twig.git",
-            "reference": "ca8d3aa90b6a01c82e07909fe815d6b443e75a23"
+            "url": "https://github.com/symfony/CssSelector.git",
+            "reference": "ffb5f3b8a75f8d1b9801e74dc6789a0751a670ad"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/twigphp/Twig/zipball/ca8d3aa90b6a01c82e07909fe815d6b443e75a23",
-            "reference": "ca8d3aa90b6a01c82e07909fe815d6b443e75a23",
+            "url": "https://api.github.com/repos/symfony/CssSelector/zipball/ffb5f3b8a75f8d1b9801e74dc6789a0751a670ad",
+            "reference": "ffb5f3b8a75f8d1b9801e74dc6789a0751a670ad",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.2.7"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "symfony/debug": "~2.7",
             "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-08-26 08:58:31",
+        "time": "2015-08-24 07:13:45",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.21-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Twig_": "lib/"
+            "psr-4": {
+                "Symfony\\Component\\CssSelector\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com",
-                "homepage": "http://fabien.potencier.org",
-                "role": "Lead Developer"
+                "name": "Jean-François Simon",
+                "email": "jeanfrancois.simon@sensiolabs.com"
             },
             {
-                "name": "Armin Ronacher",
-                "email": "armin.ronacher@active-4.com",
-                "role": "Project Founder"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Twig Team",
-                "homepage": "http://twig.sensiolabs.org/contributors",
-                "role": "Contributors"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Twig, the flexible, fast, and secure template language for PHP",
-        "homepage": "http://twig.sensiolabs.org",
-        "keywords": [
-            "templating"
-        ]
+        "description": "Symfony CssSelector Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "fabpot/goutte",
-        "version": "v3.1.1",
-        "version_normalized": "3.1.1.0",
+        "name": "symfony/dependency-injection",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/FriendsOfPHP/Goutte.git",
-            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc"
+            "url": "https://github.com/symfony/DependencyInjection.git",
+            "reference": "c0a3a97b9450d77cd8eff81c5825efb3624c255b"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/FriendsOfPHP/Goutte/zipball/751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
-            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
+            "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/c0a3a97b9450d77cd8eff81c5825efb3624c255b",
+            "reference": "c0a3a97b9450d77cd8eff81c5825efb3624c255b",
             "shasum": ""
         },
         "require": {
-            "guzzlehttp/guzzle": "^6.0",
-            "php": ">=5.5.0",
-            "symfony/browser-kit": "~2.1",
-            "symfony/css-selector": "~2.1",
-            "symfony/dom-crawler": "~2.1"
+            "php": ">=5.3.9"
         },
-        "time": "2015-08-29 16:16:56",
-        "type": "application",
+        "conflict": {
+            "symfony/expression-language": "<2.6"
+        },
+        "require-dev": {
+            "symfony/config": "~2.2",
+            "symfony/expression-language": "~2.6",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/yaml": "~2.1"
+        },
+        "suggest": {
+            "symfony/config": "",
+            "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
+            "symfony/yaml": ""
+        },
+        "time": "2015-08-24 07:16:32",
+        "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "3.1-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Goutte\\": "Goutte"
+                "Symfony\\Component\\DependencyInjection\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -2805,48 +2731,53 @@
             {
                 "name": "Fabien Potencier",
                 "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "A simple PHP Web Scraper",
-        "homepage": "https://github.com/FriendsOfPHP/Goutte",
-        "keywords": [
-            "scraper"
-        ]
+        "description": "Symfony DependencyInjection Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpspec/prophecy",
-        "version": "v1.5.0",
-        "version_normalized": "1.5.0.0",
+        "name": "symfony/debug",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/phpspec/prophecy.git",
-            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7"
+            "url": "https://github.com/symfony/Debug.git",
+            "reference": "726bf9651d29f53243281d0b6418cfaa5e318281"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4745ded9307786b730d7a60df5cb5a6c43cf95f7",
-            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7",
+            "url": "https://api.github.com/repos/symfony/Debug/zipball/726bf9651d29f53243281d0b6418cfaa5e318281",
+            "reference": "726bf9651d29f53243281d0b6418cfaa5e318281",
             "shasum": ""
         },
         "require": {
-            "doctrine/instantiator": "^1.0.2",
-            "phpdocumentor/reflection-docblock": "~2.0",
-            "sebastian/comparator": "~1.1"
+            "php": ">=5.3.9",
+            "psr/log": "~1.0"
+        },
+        "conflict": {
+            "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
         },
         "require-dev": {
-            "phpspec/phpspec": "~2.0"
+            "symfony/class-loader": "~2.2",
+            "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-08-13 10:07:40",
+        "time": "2015-08-29 11:12:16",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.4.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Prophecy\\": "src/"
+            "psr-4": {
+                "Symfony\\Component\\Debug\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -2855,487 +2786,568 @@
         ],
         "authors": [
             {
-                "name": "Konstantin Kudryashov",
-                "email": "ever.zet@gmail.com",
-                "homepage": "http://everzet.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Marcello Duarte",
-                "email": "marcello.duarte@gmail.com"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Highly opinionated mocking framework for PHP 5.3+",
-        "homepage": "https://github.com/phpspec/prophecy",
-        "keywords": [
-            "Double",
-            "Dummy",
-            "fake",
-            "mock",
-            "spy",
-            "stub"
-        ]
+        "description": "Symfony Debug Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/php-file-iterator",
-        "version": "1.4.1",
-        "version_normalized": "1.4.1.0",
+        "name": "symfony/http-foundation",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
-            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0"
+            "url": "https://github.com/symfony/HttpFoundation.git",
+            "reference": "7253c2041652353e71560bbd300d6256d170ddaf"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
-            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
+            "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/7253c2041652353e71560bbd300d6256d170ddaf",
+            "reference": "7253c2041652353e71560bbd300d6256d170ddaf",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
         },
-        "time": "2015-06-21 13:08:43",
+        "require-dev": {
+            "symfony/expression-language": "~2.4",
+            "symfony/phpunit-bridge": "~2.7"
+        },
+        "time": "2015-08-27 06:45:45",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.4.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
+            "psr-4": {
+                "Symfony\\Component\\HttpFoundation\\": ""
+            },
             "classmap": [
-                "src/"
+                "Resources/stubs"
             ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "FilterIterator implementation that filters files based on a list of suffixes.",
-        "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
-        "keywords": [
-            "filesystem",
-            "iterator"
-        ]
+        "description": "Symfony HttpFoundation Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/php-text-template",
-        "version": "1.2.1",
-        "version_normalized": "1.2.1.0",
+        "name": "symfony/event-dispatcher",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-text-template.git",
-            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
+            "url": "https://github.com/symfony/EventDispatcher.git",
+            "reference": "b58c916f1db03a611b72dd702564f30ad8fe83fa"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
-            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
+            "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/b58c916f1db03a611b72dd702564f30ad8fe83fa",
+            "reference": "b58c916f1db03a611b72dd702564f30ad8fe83fa",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
         },
-        "time": "2015-06-21 13:50:34",
+        "require-dev": {
+            "psr/log": "~1.0",
+            "symfony/config": "~2.0,>=2.0.5",
+            "symfony/dependency-injection": "~2.6",
+            "symfony/expression-language": "~2.6",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/stopwatch": "~2.3"
+        },
+        "suggest": {
+            "symfony/dependency-injection": "",
+            "symfony/http-kernel": ""
+        },
+        "time": "2015-08-24 07:13:45",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.7-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\EventDispatcher\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Simple template engine.",
-        "homepage": "https://github.com/sebastianbergmann/php-text-template/",
-        "keywords": [
-            "template"
-        ]
+        "description": "Symfony EventDispatcher Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/php-token-stream",
-        "version": "1.4.6",
-        "version_normalized": "1.4.6.0",
+        "name": "symfony/http-kernel",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-token-stream.git",
-            "reference": "3ab72c62e550370a6cd5dc873e1a04ab57562f5b"
+            "url": "https://github.com/symfony/HttpKernel.git",
+            "reference": "fd9c7af92c9e3ade1327cc3af10b17731eebc4a7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3ab72c62e550370a6cd5dc873e1a04ab57562f5b",
-            "reference": "3ab72c62e550370a6cd5dc873e1a04ab57562f5b",
+            "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/fd9c7af92c9e3ade1327cc3af10b17731eebc4a7",
+            "reference": "fd9c7af92c9e3ade1327cc3af10b17731eebc4a7",
             "shasum": ""
         },
         "require": {
-            "ext-tokenizer": "*",
-            "php": ">=5.3.3"
+            "php": ">=5.3.9",
+            "psr/log": "~1.0",
+            "symfony/debug": "~2.6,>=2.6.2",
+            "symfony/event-dispatcher": "~2.6,>=2.6.7",
+            "symfony/http-foundation": "~2.5,>=2.5.4"
+        },
+        "conflict": {
+            "symfony/config": "<2.7"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.2"
+            "symfony/browser-kit": "~2.3",
+            "symfony/class-loader": "~2.1",
+            "symfony/config": "~2.7",
+            "symfony/console": "~2.3",
+            "symfony/css-selector": "~2.0,>=2.0.5",
+            "symfony/dependency-injection": "~2.2",
+            "symfony/dom-crawler": "~2.0,>=2.0.5",
+            "symfony/expression-language": "~2.4",
+            "symfony/finder": "~2.0,>=2.0.5",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/process": "~2.0,>=2.0.5",
+            "symfony/routing": "~2.2",
+            "symfony/stopwatch": "~2.3",
+            "symfony/templating": "~2.2",
+            "symfony/translation": "~2.0,>=2.0.5",
+            "symfony/var-dumper": "~2.6"
         },
-        "time": "2015-08-16 08:51:00",
+        "suggest": {
+            "symfony/browser-kit": "",
+            "symfony/class-loader": "",
+            "symfony/config": "",
+            "symfony/console": "",
+            "symfony/dependency-injection": "",
+            "symfony/finder": "",
+            "symfony/var-dumper": ""
+        },
+        "time": "2015-09-08 14:26:39",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.4-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\HttpKernel\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Wrapper around PHP's tokenizer extension.",
-        "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
-        "keywords": [
-            "tokenizer"
-        ]
+        "description": "Symfony HttpKernel Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/phpunit-mock-objects",
-        "version": "2.3.7",
-        "version_normalized": "2.3.7.0",
+        "name": "symfony/routing",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
-            "reference": "5e2645ad49d196e020b85598d7c97e482725786a"
+            "url": "https://github.com/symfony/Routing.git",
+            "reference": "20b1378cb6efffb77ea0608232f18c8f0dd25109"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/5e2645ad49d196e020b85598d7c97e482725786a",
-            "reference": "5e2645ad49d196e020b85598d7c97e482725786a",
+            "url": "https://api.github.com/repos/symfony/Routing/zipball/20b1378cb6efffb77ea0608232f18c8f0dd25109",
+            "reference": "20b1378cb6efffb77ea0608232f18c8f0dd25109",
             "shasum": ""
         },
         "require": {
-            "doctrine/instantiator": "^1.0.2",
-            "php": ">=5.3.3",
-            "phpunit/php-text-template": "~1.2",
-            "sebastian/exporter": "~1.2"
+            "php": ">=5.3.9"
+        },
+        "conflict": {
+            "symfony/config": "<2.7"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "doctrine/annotations": "~1.0",
+            "doctrine/common": "~2.2",
+            "psr/log": "~1.0",
+            "symfony/config": "~2.7",
+            "symfony/expression-language": "~2.4",
+            "symfony/http-foundation": "~2.3",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/yaml": "~2.0,>=2.0.5"
         },
         "suggest": {
-            "ext-soap": "*"
+            "doctrine/annotations": "For using the annotation loader",
+            "symfony/config": "For using the all-in-one router or any loader",
+            "symfony/expression-language": "For using expression matching",
+            "symfony/yaml": "For using the YAML loader"
         },
-        "time": "2015-08-19 09:14:08",
+        "time": "2015-08-24 07:13:45",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.3.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Routing\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Mock Object library for PHPUnit",
-        "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
+        "description": "Symfony Routing Component",
+        "homepage": "https://symfony.com",
         "keywords": [
-            "mock",
-            "xunit"
+            "router",
+            "routing",
+            "uri",
+            "url"
         ]
     },
     {
-        "name": "sebastian/comparator",
-        "version": "1.2.0",
-        "version_normalized": "1.2.0.0",
+        "name": "symfony/serializer",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/comparator.git",
-            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22"
+            "url": "https://github.com/symfony/Serializer.git",
+            "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22",
-            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22",
+            "url": "https://api.github.com/repos/symfony/Serializer/zipball/baf24f86a8656eea9c80988f332e51461bfcb67f",
+            "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "sebastian/diff": "~1.2",
-            "sebastian/exporter": "~1.2"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "doctrine/annotations": "~1.0",
+            "doctrine/cache": "~1.0",
+            "symfony/config": "~2.2",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/property-access": "~2.3",
+            "symfony/yaml": "~2.0,>=2.0.5"
         },
-        "time": "2015-07-26 15:48:44",
+        "suggest": {
+            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
+            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
+            "symfony/config": "For using the XML mapping loader.",
+            "symfony/property-access": "For using the ObjectNormalizer.",
+            "symfony/yaml": "For using the default YAML mapping loader."
+        },
+        "time": "2015-08-31 16:44:53",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Serializer\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Jeff Welch",
-                "email": "whatthejeff@gmail.com"
-            },
-            {
-                "name": "Volker Dusch",
-                "email": "github@wallbash.com"
-            },
-            {
-                "name": "Bernhard Schussek",
-                "email": "bschussek@2bepublished.at"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Provides the functionality to compare PHP values for equality",
-        "homepage": "http://www.github.com/sebastianbergmann/comparator",
-        "keywords": [
-            "comparator",
-            "compare",
-            "equality"
-        ]
+        "description": "Symfony Serializer Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/exporter",
-        "version": "1.2.1",
-        "version_normalized": "1.2.1.0",
+        "name": "symfony/translation",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/exporter.git",
-            "reference": "7ae5513327cb536431847bcc0c10edba2701064e"
+            "url": "https://github.com/symfony/Translation.git",
+            "reference": "485877661835e188cd78345c6d4eef1290d17571"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e",
-            "reference": "7ae5513327cb536431847bcc0c10edba2701064e",
+            "url": "https://api.github.com/repos/symfony/Translation/zipball/485877661835e188cd78345c6d4eef1290d17571",
+            "reference": "485877661835e188cd78345c6d4eef1290d17571",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "sebastian/recursion-context": "~1.0"
+            "php": ">=5.3.9"
+        },
+        "conflict": {
+            "symfony/config": "<2.7"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "psr/log": "~1.0",
+            "symfony/config": "~2.7",
+            "symfony/intl": "~2.4",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/yaml": "~2.2"
         },
-        "time": "2015-06-21 07:55:53",
+        "suggest": {
+            "psr/log": "To use logging capability in translator",
+            "symfony/config": "",
+            "symfony/yaml": ""
+        },
+        "time": "2015-09-06 08:36:38",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Translation\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
-            {
-                "name": "Jeff Welch",
-                "email": "whatthejeff@gmail.com"
-            },
-            {
-                "name": "Volker Dusch",
-                "email": "github@wallbash.com"
-            },
-            {
-                "name": "Bernhard Schussek",
-                "email": "bschussek@2bepublished.at"
-            },
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Adam Harvey",
-                "email": "aharvey@php.net"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Provides the functionality to export PHP variables for visualization",
-        "homepage": "http://www.github.com/sebastianbergmann/exporter",
-        "keywords": [
-            "export",
-            "exporter"
-        ]
+        "description": "Symfony Translation Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/recursion-context",
-        "version": "1.0.1",
-        "version_normalized": "1.0.1.0",
+        "name": "symfony/validator",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/recursion-context.git",
-            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba"
+            "url": "https://github.com/symfony/Validator.git",
+            "reference": "356459a697e26274d44c608513c05c23dc1d8ea7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba",
-            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba",
+            "url": "https://api.github.com/repos/symfony/Validator/zipball/356459a697e26274d44c608513c05c23dc1d8ea7",
+            "reference": "356459a697e26274d44c608513c05c23dc1d8ea7",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9",
+            "symfony/translation": "~2.4"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "doctrine/annotations": "~1.0",
+            "doctrine/cache": "~1.0",
+            "egulias/email-validator": "~1.2,>=1.2.1",
+            "symfony/config": "~2.2",
+            "symfony/expression-language": "~2.4",
+            "symfony/http-foundation": "~2.1",
+            "symfony/intl": "~2.4",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/property-access": "~2.3",
+            "symfony/yaml": "~2.0,>=2.0.5"
         },
-        "time": "2015-06-21 08:04:50",
+        "suggest": {
+            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
+            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
+            "egulias/email-validator": "Strict (RFC compliant) email validation",
+            "symfony/config": "",
+            "symfony/expression-language": "For using the 2.4 Expression validator",
+            "symfony/http-foundation": "",
+            "symfony/intl": "",
+            "symfony/property-access": "For using the 2.4 Validator API",
+            "symfony/yaml": ""
+        },
+        "time": "2015-09-06 08:36:38",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Validator\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Jeff Welch",
-                "email": "whatthejeff@gmail.com"
-            },
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Adam Harvey",
-                "email": "aharvey@php.net"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Provides functionality to recursively process PHP variables",
-        "homepage": "http://www.github.com/sebastianbergmann/recursion-context"
+        "description": "Symfony Validator Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/version",
-        "version": "1.0.6",
-        "version_normalized": "1.0.6.0",
+        "name": "symfony/process",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/version.git",
-            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
+            "url": "https://github.com/symfony/Process.git",
+            "reference": "f7b3f73f70a7f8f49a1c838dc3debbf054732d8e"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
-            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
+            "url": "https://api.github.com/repos/symfony/Process/zipball/f7b3f73f70a7f8f49a1c838dc3debbf054732d8e",
+            "reference": "f7b3f73f70a7f8f49a1c838dc3debbf054732d8e",
             "shasum": ""
         },
-        "time": "2015-06-21 13:59:46",
+        "require": {
+            "php": ">=5.3.9"
+        },
+        "require-dev": {
+            "symfony/phpunit-bridge": "~2.7"
+        },
+        "time": "2015-08-27 06:45:45",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.7-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Process\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Library that helps with managing the version number of Git-hosted PHP projects",
-        "homepage": "https://github.com/sebastianbergmann/version"
+        "description": "Symfony Process Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "stack/builder",
-        "version": "v1.0.3",
-        "version_normalized": "1.0.3.0",
+        "name": "symfony/yaml",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/stackphp/builder.git",
-            "reference": "c1f8a4693b55c563405024f708a76ef576c3b276"
+            "url": "https://github.com/symfony/Yaml.git",
+            "reference": "2dc7b06c065df96cc686c66da2705e5e18aef661"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/stackphp/builder/zipball/c1f8a4693b55c563405024f708a76ef576c3b276",
-            "reference": "c1f8a4693b55c563405024f708a76ef576c3b276",
+            "url": "https://api.github.com/repos/symfony/Yaml/zipball/2dc7b06c065df96cc686c66da2705e5e18aef661",
+            "reference": "2dc7b06c065df96cc686c66da2705e5e18aef661",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.0",
-            "symfony/http-foundation": "~2.1",
-            "symfony/http-kernel": "~2.1"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "silex/silex": "~1.0"
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2014-11-23 20:37:11",
+        "time": "2015-08-24 07:13:45",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Stack": "src"
+            "psr-4": {
+                "Symfony\\Component\\Yaml\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -3344,50 +3356,53 @@
         ],
         "authors": [
             {
-                "name": "Igor Wiedler",
-                "email": "igor@wiedler.ch"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Builder for stack middlewares based on HttpKernelInterface.",
-        "keywords": [
-            "stack"
-        ]
+        "description": "Symfony Yaml Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "masterminds/html5",
-        "version": "2.1.2",
-        "version_normalized": "2.1.2.0",
+        "name": "symfony/dom-crawler",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/Masterminds/html5-php.git",
-            "reference": "8f782e0f01a6e33a319bdc8f6de9cfd6569979a4"
+            "url": "https://github.com/symfony/DomCrawler.git",
+            "reference": "2a161e4ee2b2f33d4153be58df4f6f2a5506936e"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/8f782e0f01a6e33a319bdc8f6de9cfd6569979a4",
-            "reference": "8f782e0f01a6e33a319bdc8f6de9cfd6569979a4",
+            "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/2a161e4ee2b2f33d4153be58df4f6f2a5506936e",
+            "reference": "2a161e4ee2b2f33d4153be58df4f6f2a5506936e",
             "shasum": ""
         },
         "require": {
-            "ext-libxml": "*",
-            "php": ">=5.3.0"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "phpunit/phpunit": "4.*",
-            "sami/sami": "~2.0",
-            "satooshi/php-coveralls": "0.6.*"
+            "symfony/css-selector": "~2.3",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-06-07 08:43:18",
+        "suggest": {
+            "symfony/css-selector": ""
+        },
+        "time": "2015-08-26 10:48:03",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.1-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Masterminds\\": "src"
+                "Symfony\\Component\\DomCrawler\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -3396,69 +3411,55 @@
         ],
         "authors": [
             {
-                "name": "Matt Butcher",
-                "email": "technosophos@gmail.com"
-            },
-            {
-                "name": "Asmir Mustafic",
-                "email": "goetas@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Matt Farina",
-                "email": "matt@mattfarina.com"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "An HTML5 parser and serializer.",
-        "homepage": "http://masterminds.github.io/html5-php",
-        "keywords": [
-            "HTML5",
-            "dom",
-            "html",
-            "parser",
-            "querypath",
-            "serializer",
-            "xml"
-        ]
+        "description": "Symfony DomCrawler Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "guzzlehttp/guzzle",
-        "version": "6.1.0",
-        "version_normalized": "6.1.0.0",
+        "name": "symfony/browser-kit",
+        "version": "v2.7.4",
+        "version_normalized": "2.7.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/guzzle/guzzle.git",
-            "reference": "66fd14b4d0b8f2389eaf37c5458608c7cb793a81"
+            "url": "https://github.com/symfony/BrowserKit.git",
+            "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/guzzle/guzzle/zipball/66fd14b4d0b8f2389eaf37c5458608c7cb793a81",
-            "reference": "66fd14b4d0b8f2389eaf37c5458608c7cb793a81",
+            "url": "https://api.github.com/repos/symfony/BrowserKit/zipball/277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
+            "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
             "shasum": ""
         },
         "require": {
-            "guzzlehttp/promises": "~1.0",
-            "guzzlehttp/psr7": "~1.1",
-            "php": ">=5.5.0"
+            "php": ">=5.3.9",
+            "symfony/dom-crawler": "~2.0,>=2.0.5"
         },
         "require-dev": {
-            "ext-curl": "*",
-            "phpunit/phpunit": "~4.0",
-            "psr/log": "~1.0"
+            "symfony/css-selector": "~2.0,>=2.0.5",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/process": "~2.0,>=2.0.5"
         },
-        "time": "2015-09-08 17:36:26",
+        "suggest": {
+            "symfony/process": ""
+        },
+        "time": "2015-09-06 08:36:38",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "6.1-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "files": [
-                "src/functions_include.php"
-            ],
             "psr-4": {
-                "GuzzleHttp\\": "src/"
+                "Symfony\\Component\\BrowserKit\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -3467,21 +3468,15 @@
         ],
         "authors": [
             {
-                "name": "Michael Dowling",
-                "email": "mtdowling@gmail.com",
-                "homepage": "https://github.com/mtdowling"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Guzzle is a PHP HTTP client library",
-        "homepage": "http://guzzlephp.org/",
-        "keywords": [
-            "client",
-            "curl",
-            "framework",
-            "http",
-            "http client",
-            "rest",
-            "web service"
-        ]
+        "description": "Symfony BrowserKit Component",
+        "homepage": "https://symfony.com"
     }
 ]
diff --git a/core/vendor/symfony/browser-kit/README.md b/core/vendor/symfony/browser-kit/README.md
index 3c0ee3a040998866f93e542d8a1c9dcb9094eb34..d638329978a5ce1f91e98c057f62e220d218cbcb 100644
--- a/core/vendor/symfony/browser-kit/README.md
+++ b/core/vendor/symfony/browser-kit/README.md
@@ -10,7 +10,7 @@ Resources
 ---------
 
 For a simple implementation of a browser based on an HTTP layer, have a look
-at [Goutte](https://github.com/fabpot/Goutte).
+at [Goutte](https://github.com/FriendsOfPHP/Goutte).
 
 For an implementation based on HttpKernelInterface, have a look at the
 [Client](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpKernel/Client.php)
diff --git a/core/vendor/symfony/class-loader/ClassMapGenerator.php b/core/vendor/symfony/class-loader/ClassMapGenerator.php
index 112bee87bddce25a0fcb1401502ca42ef3bf44a3..d242acdc1b46da5e6576ae6b504d3966610932b6 100644
--- a/core/vendor/symfony/class-loader/ClassMapGenerator.php
+++ b/core/vendor/symfony/class-loader/ClassMapGenerator.php
@@ -118,6 +118,25 @@ private static function findClasses($path)
                 case T_CLASS:
                 case T_INTERFACE:
                 case SYMFONY_TRAIT:
+                    // Skip usage of ::class constant
+                    $isClassConstant = false;
+                    for ($j = $i - 1; $j > 0; --$j) {
+                        if (is_string($tokens[$j])) {
+                            break;
+                        }
+
+                        if (T_DOUBLE_COLON === $tokens[$j][0]) {
+                            $isClassConstant = true;
+                            break;
+                        } elseif (!in_array($tokens[$j][0], array(T_WHITESPACE, T_DOC_COMMENT, T_COMMENT))) {
+                            break;
+                        }
+                    }
+
+                    if ($isClassConstant) {
+                        continue;
+                    }
+
                     // Find the classname
                     while (($t = $tokens[++$i]) && is_array($t)) {
                         if (T_STRING === $t[0]) {
diff --git a/core/vendor/symfony/class-loader/Tests/ClassMapGeneratorTest.php b/core/vendor/symfony/class-loader/Tests/ClassMapGeneratorTest.php
index 29c3288347dccfdd631d459b1ef947fe0eca521a..7bdf5aa0dc86aacbe58007c91449368b05d9c2a8 100644
--- a/core/vendor/symfony/class-loader/Tests/ClassMapGeneratorTest.php
+++ b/core/vendor/symfony/class-loader/Tests/ClassMapGeneratorTest.php
@@ -47,7 +47,7 @@ private function clean($file)
     /**
      * @dataProvider getTestCreateMapTests
      */
-    public function testDump($directory, $expected)
+    public function testDump($directory)
     {
         $this->prepare_workspace();
 
@@ -115,6 +115,12 @@ public function getTestCreateMapTests()
             ));
         }
 
+        if (PHP_VERSION_ID >= 50500) {
+            $data[] = array(__DIR__.'/Fixtures/php5.5', array(
+                'ClassCons\\Foo' => __DIR__.'/Fixtures/php5.5/class_cons.php',
+            ));
+        }
+
         return $data;
     }
 
@@ -134,10 +140,10 @@ public function testCreateMapFinderSupport()
     protected function assertEqualsNormalized($expected, $actual, $message = null)
     {
         foreach ($expected as $ns => $path) {
-            $expected[$ns] = strtr($path, '\\', '/');
+            $expected[$ns] = str_replace('\\', '/', $path);
         }
         foreach ($actual as $ns => $path) {
-            $actual[$ns] = strtr($path, '\\', '/');
+            $actual[$ns] = str_replace('\\', '/', $path);
         }
         $this->assertEquals($expected, $actual, $message);
     }
diff --git a/core/vendor/symfony/class-loader/Tests/Fixtures/php5.5/class_cons.php b/core/vendor/symfony/class-loader/Tests/Fixtures/php5.5/class_cons.php
new file mode 100644
index 0000000000000000000000000000000000000000..0ed8d77fcafd638f36be98303d156bf36d7d004a
--- /dev/null
+++ b/core/vendor/symfony/class-loader/Tests/Fixtures/php5.5/class_cons.php
@@ -0,0 +1,11 @@
+<?php
+
+namespace ClassCons;
+
+class Foo
+{
+    public function __construct()
+    {
+        \Foo\TBar/* foo */::class;
+    }
+}
diff --git a/core/vendor/symfony/console/Command/Command.php b/core/vendor/symfony/console/Command/Command.php
index e6642631c942342efa87e06d9b44ba7fcb8aa2d4..519778c527dc5a18830affbe3a9725b7849ba23e 100644
--- a/core/vendor/symfony/console/Command/Command.php
+++ b/core/vendor/symfony/console/Command/Command.php
@@ -513,7 +513,7 @@ public function setHelp($help)
      */
     public function getHelp()
     {
-        return $this->help;
+        return $this->help ?: $this->description;
     }
 
     /**
diff --git a/core/vendor/symfony/console/Descriptor/JsonDescriptor.php b/core/vendor/symfony/console/Descriptor/JsonDescriptor.php
index 8649d3ac456f393535bd8b84d858defc7afa2c7c..87e38fdb89071e87d3b70188bb6fbe8e8fc13d47 100644
--- a/core/vendor/symfony/console/Descriptor/JsonDescriptor.php
+++ b/core/vendor/symfony/console/Descriptor/JsonDescriptor.php
@@ -102,7 +102,7 @@ private function getInputArgumentData(InputArgument $argument)
             'name' => $argument->getName(),
             'is_required' => $argument->isRequired(),
             'is_array' => $argument->isArray(),
-            'description' => preg_replace('/\s*\R\s*/', ' ', $argument->getDescription()),
+            'description' => preg_replace('/\s*[\r\n]\s*/', ' ', $argument->getDescription()),
             'default' => $argument->getDefault(),
         );
     }
@@ -120,7 +120,7 @@ private function getInputOptionData(InputOption $option)
             'accept_value' => $option->acceptValue(),
             'is_value_required' => $option->isValueRequired(),
             'is_multiple' => $option->isArray(),
-            'description' => preg_replace('/\s*\R\s*/', ' ', $option->getDescription()),
+            'description' => preg_replace('/\s*[\r\n]\s*/', ' ', $option->getDescription()),
             'default' => $option->getDefault(),
         );
     }
diff --git a/core/vendor/symfony/console/Descriptor/MarkdownDescriptor.php b/core/vendor/symfony/console/Descriptor/MarkdownDescriptor.php
index 10f05168d47d017dafad10524892b3ce5922c738..d3d76a420102569cb8f8c83b7d985f8ad5299c6d 100644
--- a/core/vendor/symfony/console/Descriptor/MarkdownDescriptor.php
+++ b/core/vendor/symfony/console/Descriptor/MarkdownDescriptor.php
@@ -36,7 +36,7 @@ protected function describeInputArgument(InputArgument $argument, array $options
             .'* Name: '.($argument->getName() ?: '<none>')."\n"
             .'* Is required: '.($argument->isRequired() ? 'yes' : 'no')."\n"
             .'* Is array: '.($argument->isArray() ? 'yes' : 'no')."\n"
-            .'* Description: '.preg_replace('/\s*\R\s*/', PHP_EOL.'  ', $argument->getDescription() ?: '<none>')."\n"
+            .'* Description: '.preg_replace('/\s*[\r\n]\s*/', "\n  ", $argument->getDescription() ?: '<none>')."\n"
             .'* Default: `'.str_replace("\n", '', var_export($argument->getDefault(), true)).'`'
         );
     }
@@ -53,7 +53,7 @@ protected function describeInputOption(InputOption $option, array $options = arr
             .'* Accept value: '.($option->acceptValue() ? 'yes' : 'no')."\n"
             .'* Is value required: '.($option->isValueRequired() ? 'yes' : 'no')."\n"
             .'* Is multiple: '.($option->isArray() ? 'yes' : 'no')."\n"
-            .'* Description: '.preg_replace('/\s*\R\s*/', PHP_EOL.'  ', $option->getDescription() ?: '<none>')."\n"
+            .'* Description: '.preg_replace('/\s*[\r\n]\s*/', "\n  ", $option->getDescription() ?: '<none>')."\n"
             .'* Default: `'.str_replace("\n", '', var_export($option->getDefault(), true)).'`'
         );
     }
diff --git a/core/vendor/symfony/console/Descriptor/TextDescriptor.php b/core/vendor/symfony/console/Descriptor/TextDescriptor.php
index 5c3fea9a2caf2f315fdc4f0c219f97fe4535f5e9..57e09e4d81c36bc652add9edfabaaacf6d970bb3 100644
--- a/core/vendor/symfony/console/Descriptor/TextDescriptor.php
+++ b/core/vendor/symfony/console/Descriptor/TextDescriptor.php
@@ -44,7 +44,7 @@ protected function describeInputArgument(InputArgument $argument, array $options
             $argument->getName(),
             str_repeat(' ', $spacingWidth),
             // + 17 = 2 spaces + <info> + </info> + 2 spaces
-            preg_replace('/\s*\R\s*/', PHP_EOL.str_repeat(' ', $totalWidth + 17), $argument->getDescription()),
+            preg_replace('/\s*[\r\n]\s*/', "\n".str_repeat(' ', $totalWidth + 17), $argument->getDescription()),
             $default
         ), $options);
     }
@@ -81,7 +81,7 @@ protected function describeInputOption(InputOption $option, array $options = arr
             $synopsis,
             str_repeat(' ', $spacingWidth),
             // + 17 = 2 spaces + <info> + </info> + 2 spaces
-            preg_replace('/\s*\R\s*/', "\n".str_repeat(' ', $totalWidth + 17), $option->getDescription()),
+            preg_replace('/\s*[\r\n]\s*/', "\n".str_repeat(' ', $totalWidth + 17), $option->getDescription()),
             $default,
             $option->isArray() ? '<comment> (multiple values allowed)</comment>' : ''
         ), $options);
@@ -249,12 +249,16 @@ private function formatDefaultValue($default)
      */
     private function getColumnWidth(array $commands)
     {
-        $width = 0;
+        $widths = array();
+
         foreach ($commands as $command) {
-            $width = strlen($command->getName()) > $width ? strlen($command->getName()) : $width;
+            $widths[] = strlen($command->getName());
+            foreach ($command->getAliases() as $alias) {
+                $widths[] = strlen($alias);
+            }
         }
 
-        return $width + 2;
+        return max($widths) + 2;
     }
 
     /**
diff --git a/core/vendor/symfony/console/Event/ConsoleCommandEvent.php b/core/vendor/symfony/console/Event/ConsoleCommandEvent.php
index 56f5526428f8ed46eec03b5f8efa593bf9f92350..92adf1ef96ceb4d1fcd6ae1fdcf6152716b56747 100644
--- a/core/vendor/symfony/console/Event/ConsoleCommandEvent.php
+++ b/core/vendor/symfony/console/Event/ConsoleCommandEvent.php
@@ -19,19 +19,19 @@
 class ConsoleCommandEvent extends ConsoleEvent
 {
     /**
-     * The return code for skipped commands, this will also be passed into the terminate event
+     * The return code for skipped commands, this will also be passed into the terminate event.
      */
     const RETURN_CODE_DISABLED = 113;
 
     /**
-     * Indicates if the command should be run or skipped
+     * Indicates if the command should be run or skipped.
      *
      * @var bool
      */
     private $commandShouldRun = true;
 
     /**
-     * Disables the command, so it won't be run
+     * Disables the command, so it won't be run.
      *
      * @return bool
      */
@@ -41,7 +41,7 @@ public function disableCommand()
     }
 
     /**
-     * Enables the command
+     * Enables the command.
      *
      * @return bool
      */
@@ -51,7 +51,7 @@ public function enableCommand()
     }
 
     /**
-     * Returns true if the command is runnable, false otherwise
+     * Returns true if the command is runnable, false otherwise.
      *
      * @return bool
      */
diff --git a/core/vendor/symfony/console/Helper/DebugFormatterHelper.php b/core/vendor/symfony/console/Helper/DebugFormatterHelper.php
index 0b4b9379020d995ffe60aef62b090ba06cd923b9..1119b795c8b83cee11d8e29e3054688a084f93dc 100644
--- a/core/vendor/symfony/console/Helper/DebugFormatterHelper.php
+++ b/core/vendor/symfony/console/Helper/DebugFormatterHelper.php
@@ -25,7 +25,7 @@ class DebugFormatterHelper extends Helper
     private $count = -1;
 
     /**
-     * Starts a debug formatting session
+     * Starts a debug formatting session.
      *
      * @param string $id      The id of the formatting session
      * @param string $message The message to display
@@ -41,7 +41,7 @@ public function start($id, $message, $prefix = 'RUN')
     }
 
     /**
-     * Adds progress to a formatting session
+     * Adds progress to a formatting session.
      *
      * @param string $id          The id of the formatting session
      * @param string $buffer      The message to display
@@ -61,7 +61,7 @@ public function progress($id, $buffer, $error = false, $prefix = 'OUT', $errorPr
                 unset($this->started[$id]['out']);
             }
             if (!isset($this->started[$id]['err'])) {
-                $message .= sprintf("%s<bg=red;fg=white> %s </> ", $this->getBorder($id), $errorPrefix);
+                $message .= sprintf('%s<bg=red;fg=white> %s </> ', $this->getBorder($id), $errorPrefix);
                 $this->started[$id]['err'] = true;
             }
 
@@ -72,7 +72,7 @@ public function progress($id, $buffer, $error = false, $prefix = 'OUT', $errorPr
                 unset($this->started[$id]['err']);
             }
             if (!isset($this->started[$id]['out'])) {
-                $message .= sprintf("%s<bg=green;fg=white> %s </> ", $this->getBorder($id), $prefix);
+                $message .= sprintf('%s<bg=green;fg=white> %s </> ', $this->getBorder($id), $prefix);
                 $this->started[$id]['out'] = true;
             }
 
@@ -83,7 +83,7 @@ public function progress($id, $buffer, $error = false, $prefix = 'OUT', $errorPr
     }
 
     /**
-     * Stops a formatting session
+     * Stops a formatting session.
      *
      * @param string $id         The id of the formatting session
      * @param string $message    The message to display
diff --git a/core/vendor/symfony/console/Helper/QuestionHelper.php b/core/vendor/symfony/console/Helper/QuestionHelper.php
index 9e4fa02f2c61512ed4a0213db8ff4aee0372691e..6584377aad015633ff28c7673f38e9ad82f03ca4 100644
--- a/core/vendor/symfony/console/Helper/QuestionHelper.php
+++ b/core/vendor/symfony/console/Helper/QuestionHelper.php
@@ -77,7 +77,7 @@ public function setInputStream($stream)
     }
 
     /**
-     * Returns the helper's input stream
+     * Returns the helper's input stream.
      *
      * @return resource
      */
@@ -150,7 +150,7 @@ public function doAsk(OutputInterface $output, Question $question)
      * Outputs the question prompt.
      *
      * @param OutputInterface $output
-     * @param Question $question
+     * @param Question        $question
      */
     protected function writePrompt(OutputInterface $output, Question $question)
     {
@@ -222,7 +222,7 @@ private function autocomplete(OutputInterface $output, Question $question, $inpu
             // Backspace Character
             if ("\177" === $c) {
                 if (0 === $numMatches && 0 !== $i) {
-                    $i--;
+                    --$i;
                     // Move cursor backwards
                     $output->write("\033[1D");
                 }
@@ -275,7 +275,7 @@ private function autocomplete(OutputInterface $output, Question $question, $inpu
             } else {
                 $output->write($c);
                 $ret .= $c;
-                $i++;
+                ++$i;
 
                 $numMatches = 0;
                 $ofs = 0;
diff --git a/core/vendor/symfony/console/Helper/Table.php b/core/vendor/symfony/console/Helper/Table.php
index 9e86c856d05eec81804e437a7263189d3aba6333..6da4b7d7a1c30b7dc6b46d02d69634396a488e81 100644
--- a/core/vendor/symfony/console/Helper/Table.php
+++ b/core/vendor/symfony/console/Helper/Table.php
@@ -245,7 +245,7 @@ private function renderRowSeparator()
         }
 
         $markup = $this->style->getCrossingChar();
-        for ($column = 0; $column < $count; $column++) {
+        for ($column = 0; $column < $count; ++$column) {
             $markup .= str_repeat($this->style->getHorizontalBorderChar(), $this->getColumnWidth($column)).$this->style->getCrossingChar();
         }
 
@@ -338,7 +338,7 @@ private function calculateNumberOfColumns()
     private function buildTableRows($rows)
     {
         $unmergedRows = array();
-        for ($rowKey = 0; $rowKey < count($rows); $rowKey++) {
+        for ($rowKey = 0; $rowKey < count($rows); ++$rowKey) {
             $rows = $this->fillNextRows($rows, $rowKey);
 
             // Remove any new line breaks and replace it with a new line
diff --git a/core/vendor/symfony/console/Logger/ConsoleLogger.php b/core/vendor/symfony/console/Logger/ConsoleLogger.php
index cf5d49c4c624c26a9ff18f3d7ea745a54aa46a6e..1f7417ea5aa661e4fc4ddabbd08dba9fbcf00cb7 100644
--- a/core/vendor/symfony/console/Logger/ConsoleLogger.php
+++ b/core/vendor/symfony/console/Logger/ConsoleLogger.php
@@ -18,9 +18,10 @@
 use Symfony\Component\Console\Output\ConsoleOutputInterface;
 
 /**
- * PSR-3 compliant console logger
+ * PSR-3 compliant console logger.
  *
  * @author Kévin Dunglas <dunglas@gmail.com>
+ *
  * @link http://www.php-fig.org/psr/psr-3/
  */
 class ConsoleLogger extends AbstractLogger
@@ -93,7 +94,7 @@ public function log($level, $message, array $context = array())
     }
 
     /**
-     * Interpolates context values into the message placeholders
+     * Interpolates context values into the message placeholders.
      *
      * @author PHP Framework Interoperability Group
      *
diff --git a/core/vendor/symfony/console/Question/ConfirmationQuestion.php b/core/vendor/symfony/console/Question/ConfirmationQuestion.php
index 9e55859053f8e07e500ef5454a8a936a34494684..29d98879f0c560ee98e7d20ef86af644cb55be61 100644
--- a/core/vendor/symfony/console/Question/ConfirmationQuestion.php
+++ b/core/vendor/symfony/console/Question/ConfirmationQuestion.php
@@ -23,8 +23,8 @@ class ConfirmationQuestion extends Question
     /**
      * Constructor.
      *
-     * @param string $question   The question to ask to the user
-     * @param bool   $default    The default answer to return, true or false
+     * @param string $question        The question to ask to the user
+     * @param bool   $default         The default answer to return, true or false
      * @param string $trueAnswerRegex A regex to match the "yes" answer
      */
     public function __construct($question, $default = true, $trueAnswerRegex = '/^y/i')
diff --git a/core/vendor/symfony/console/Style/OutputStyle.php b/core/vendor/symfony/console/Style/OutputStyle.php
index 13ed05b13dc4a2621e61c851a6b85f5ff7994153..8371bb533551e20407ee17876b37a13e7c4a92c0 100644
--- a/core/vendor/symfony/console/Style/OutputStyle.php
+++ b/core/vendor/symfony/console/Style/OutputStyle.php
@@ -16,7 +16,7 @@
 use Symfony\Component\Console\Output\OutputInterface;
 
 /**
- * Decorates output to add console style guide helpers
+ * Decorates output to add console style guide helpers.
  *
  * @author Kevin Bond <kevinbond@gmail.com>
  */
diff --git a/core/vendor/symfony/console/Tests/ApplicationTest.php b/core/vendor/symfony/console/Tests/ApplicationTest.php
index dfee2321d5bda097d05d85de01668cdab633072e..45242cf1cfb4b06bf48b04f6d9ee2e1ae777766c 100644
--- a/core/vendor/symfony/console/Tests/ApplicationTest.php
+++ b/core/vendor/symfony/console/Tests/ApplicationTest.php
@@ -553,6 +553,10 @@ public function testRenderException()
 
     public function testRenderExceptionWithDoubleWidthCharacters()
     {
+        if (!function_exists('mb_strwidth')) {
+            $this->markTestSkipped('The "mb_strwidth" function is not available');
+        }
+
         $application = $this->getMock('Symfony\Component\Console\Application', array('getTerminalWidth'));
         $application->setAutoExit(false);
         $application->expects($this->any())
diff --git a/core/vendor/symfony/console/Tests/Command/CommandTest.php b/core/vendor/symfony/console/Tests/Command/CommandTest.php
index 7702ac8341d19e8a26810ba1182c485108b2b90a..7ab993bbc6c0cce1ab130008cc6aaabde3a7f65e 100644
--- a/core/vendor/symfony/console/Tests/Command/CommandTest.php
+++ b/core/vendor/symfony/console/Tests/Command/CommandTest.php
@@ -131,6 +131,8 @@ public function testGetSetHelp()
         $ret = $command->setHelp('help1');
         $this->assertEquals($command, $ret, '->setHelp() implements a fluent interface');
         $this->assertEquals('help1', $command->getHelp(), '->setHelp() sets the help');
+        $command->setHelp('');
+        $this->assertEquals('description', $command->getHelp(), '->getHelp() fallback to the description');
     }
 
     public function testGetProcessedHelp()
diff --git a/core/vendor/symfony/console/Tests/Fixtures/DummyOutput.php b/core/vendor/symfony/console/Tests/Fixtures/DummyOutput.php
index aef6d2246cb3487c3adaab84bfb218af407f1145..0070c0a48676c597310a46f71cd140d5610165e2 100644
--- a/core/vendor/symfony/console/Tests/Fixtures/DummyOutput.php
+++ b/core/vendor/symfony/console/Tests/Fixtures/DummyOutput.php
@@ -14,7 +14,7 @@
 use Symfony\Component\Console\Output\BufferedOutput;
 
 /**
- * Dummy output
+ * Dummy output.
  *
  * @author Kévin Dunglas <dunglas@gmail.com>
  */
diff --git a/core/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt b/core/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt
index 3901cd898c233451766886d12be70ebb18e90451..4c7f55024587a4a55d5e7562e7f2e42ea1299c0f 100644
--- a/core/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt
+++ b/core/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt
@@ -106,7 +106,7 @@
       <usage>afoobar</usage>
     </usages>
   <description>The foo:bar command</description>
-  <help/>
+  <help>The foo:bar command</help>
   <arguments/>
     <options>
       <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
diff --git a/core/vendor/symfony/console/Tests/Fixtures/application_asxml2.txt b/core/vendor/symfony/console/Tests/Fixtures/application_asxml2.txt
index 8fa3b699eba030dbc47e38a2d74ca130d7720dcd..89d13108b7d1b8d9072c9fe831bbded252932e79 100644
--- a/core/vendor/symfony/console/Tests/Fixtures/application_asxml2.txt
+++ b/core/vendor/symfony/console/Tests/Fixtures/application_asxml2.txt
@@ -7,7 +7,7 @@
       <usage>afoobar</usage>
     </usages>
   <description>The foo:bar command</description>
-  <help/>
+  <help>The foo:bar command</help>
   <arguments/>
     <options>
       <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
diff --git a/core/vendor/symfony/console/Tests/Helper/ProcessHelperTest.php b/core/vendor/symfony/console/Tests/Helper/ProcessHelperTest.php
index 9f83885a50d424b562994147746926173f3f1fd3..a51fb4359dc74985b9ab515606922eb1afe3af27 100644
--- a/core/vendor/symfony/console/Tests/Helper/ProcessHelperTest.php
+++ b/core/vendor/symfony/console/Tests/Helper/ProcessHelperTest.php
@@ -75,7 +75,7 @@ public function provideCommandsAndOutput()
 
 EOT;
         $syntaxErrorOutputDebug = <<<EOT
-  RUN  php -r "fwrite(STDERR, 'error message');usleep(50000);fwrite(STDOUT, 'out message');exit(252);"
+  RUN  php -r "fwrite(STDERR, 'error message');usleep(500000);fwrite(STDOUT, 'out message');exit(252);"
   ERR  error message
   OUT  out message
   RES  252 Command did not run successfully
@@ -94,10 +94,10 @@ public function provideCommandsAndOutput()
             array($successOutputDebugWithTags, 'php -r "echo \'<info>42</info>\';"', StreamOutput::VERBOSITY_DEBUG, null),
             array('', 'php -r "syntax error"', StreamOutput::VERBOSITY_VERBOSE, null),
             array($syntaxErrorOutputVerbose, 'php -r "fwrite(STDERR, \'error message\');usleep(50000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_VERY_VERBOSE, null),
-            array($syntaxErrorOutputDebug, 'php -r "fwrite(STDERR, \'error message\');usleep(50000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_DEBUG, null),
+            array($syntaxErrorOutputDebug, 'php -r "fwrite(STDERR, \'error message\');usleep(500000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_DEBUG, null),
             array($errorMessage.PHP_EOL, 'php -r "fwrite(STDERR, \'error message\');usleep(50000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_VERBOSE, $errorMessage),
             array($syntaxErrorOutputVerbose.$errorMessage.PHP_EOL, 'php -r "fwrite(STDERR, \'error message\');usleep(50000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_VERY_VERBOSE, $errorMessage),
-            array($syntaxErrorOutputDebug.$errorMessage.PHP_EOL, 'php -r "fwrite(STDERR, \'error message\');usleep(50000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_DEBUG, $errorMessage),
+            array($syntaxErrorOutputDebug.$errorMessage.PHP_EOL, 'php -r "fwrite(STDERR, \'error message\');usleep(500000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_DEBUG, $errorMessage),
             array($successOutputProcessDebug, array('php', '-r', 'echo 42;'), StreamOutput::VERBOSITY_DEBUG, null),
             array($successOutputDebug, new Process('php -r "echo 42;"'), StreamOutput::VERBOSITY_DEBUG, null),
         );
diff --git a/core/vendor/symfony/console/Tests/Helper/ProgressBarTest.php b/core/vendor/symfony/console/Tests/Helper/ProgressBarTest.php
index 97b99efe7472c2df9c74b07b32ae4e7230cdb8f7..51962f3d16c64bae075238411f073da9abadba4a 100644
--- a/core/vendor/symfony/console/Tests/Helper/ProgressBarTest.php
+++ b/core/vendor/symfony/console/Tests/Helper/ProgressBarTest.php
@@ -315,7 +315,7 @@ public function testNonDecoratedOutput()
         $bar = new ProgressBar($output = $this->getOutputStream(false), 200);
         $bar->start();
 
-        for ($i = 0; $i < 200; $i++) {
+        for ($i = 0; $i < 200; ++$i) {
             $bar->advance();
         }
 
@@ -384,7 +384,7 @@ public function testParallelBars()
         $output->write("\n");
         $bar3->start();
 
-        for ($i = 1; $i <= 3; $i++) {
+        for ($i = 1; $i <= 3; ++$i) {
             // up two lines
             $output->write("\033[2A");
             if ($i <= 2) {
@@ -492,6 +492,9 @@ public function testMultilineFormat()
         );
     }
 
+    /**
+     * @requires extension mbstring
+     */
     public function testAnsiColorsAndEmojis()
     {
         $bar = new ProgressBar($output = $this->getOutputStream(), 15);
diff --git a/core/vendor/symfony/console/Tests/Helper/TableTest.php b/core/vendor/symfony/console/Tests/Helper/TableTest.php
index 2a66caa046be52a818db040f5a0665a96a009da1..ad05379401cbd1a3404dc109237334d167c80682 100644
--- a/core/vendor/symfony/console/Tests/Helper/TableTest.php
+++ b/core/vendor/symfony/console/Tests/Helper/TableTest.php
@@ -427,7 +427,7 @@ public function testRenderProvider()
                 array('ISBN', 'Author'),
                 array(
                     array(
-                        new TableCell("9971-5-0210-0", array('rowspan' => 3, 'colspan' => 1)),
+                        new TableCell('9971-5-0210-0', array('rowspan' => 3, 'colspan' => 1)),
                         'Dante Alighieri',
                     ),
                     array(new TableSeparator()),
diff --git a/core/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php b/core/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php
index 1abc363240167a94eec2c1f605873095720dd61d..c5eca2cafdc07b4967432701d71c7d2339f67347 100644
--- a/core/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php
+++ b/core/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php
@@ -18,7 +18,7 @@
 use Symfony\Component\Console\Output\OutputInterface;
 
 /**
- * Console logger test
+ * Console logger test.
  *
  * @author Kévin Dunglas <dunglas@gmail.com>
  */
diff --git a/core/vendor/symfony/css-selector/Node/Specificity.php b/core/vendor/symfony/css-selector/Node/Specificity.php
index 0dfec3b95568fec70725b9f595183f83a91a247b..0ce0c3f3049ddf2253eb06eb35bfcc54e99d1eb8 100644
--- a/core/vendor/symfony/css-selector/Node/Specificity.php
+++ b/core/vendor/symfony/css-selector/Node/Specificity.php
@@ -78,7 +78,7 @@ public function getValue()
 
     /**
      * Returns -1 if the object specificity is lower than the argument,
-     * 0 if they are equal, and 1 if the argument is lower
+     * 0 if they are equal, and 1 if the argument is lower.
      *
      * @param Specificity $specificity
      *
diff --git a/core/vendor/symfony/debug/DebugClassLoader.php b/core/vendor/symfony/debug/DebugClassLoader.php
index a2532d3038d640d1daca05edbf2c2a2e56f1e2e7..c8e5d1a83ff4de01560edf01a5016ba3e1e7ecbc 100644
--- a/core/vendor/symfony/debug/DebugClassLoader.php
+++ b/core/vendor/symfony/debug/DebugClassLoader.php
@@ -32,6 +32,7 @@ class DebugClassLoader
     private static $caseCheck;
     private static $deprecated = array();
     private static $php7Reserved = array('int', 'float', 'bool', 'string', 'true', 'false', 'null');
+    private static $darwinCache = array('/' => array('/', array()));
 
     /**
      * Constructor.
@@ -220,33 +221,73 @@ public function loadClass($class)
 
                 throw new \RuntimeException(sprintf('The autoloader expected class "%s" to be defined in file "%s". The file was found but the class was not in it, the class name or namespace probably has a typo.', $class, $file));
             }
-            if (self::$caseCheck && preg_match('#([/\\\\][a-zA-Z_\x7F-\xFF][a-zA-Z0-9_\x7F-\xFF]*)+\.(php|hh)$#D', $file, $tail)) {
+            if (self::$caseCheck && preg_match('#(?:[/\\\\][a-zA-Z_\x7F-\xFF][a-zA-Z0-9_\x7F-\xFF]*+)++\.(?:php|hh)$#D', $file, $tail)) {
                 $tail = $tail[0];
+                $tailLen = strlen($tail);
                 $real = $refl->getFileName();
 
                 if (2 === self::$caseCheck) {
                     // realpath() on MacOSX doesn't normalize the case of characters
-                    $cwd = getcwd();
-                    $basename = strrpos($real, '/');
-                    chdir(substr($real, 0, $basename));
-                    $basename = substr($real, $basename + 1);
-                    // glob() patterns are case-sensitive even if the underlying fs is not
-                    if (!in_array($basename, glob($basename.'*', GLOB_NOSORT), true)) {
-                        $real = getcwd().'/';
-                        $h = opendir('.');
-                        while (false !== $f = readdir($h)) {
-                            if (0 === strcasecmp($f, $basename)) {
-                                $real .= $f;
-                                break;
+
+                    $i = 1 + strrpos($real, '/');
+                    $file = substr($real, $i);
+                    $real = substr($real, 0, $i);
+
+                    if (isset(self::$darwinCache[$real])) {
+                        $kDir = $real;
+                    } else {
+                        $kDir = strtolower($real);
+
+                        if (isset(self::$darwinCache[$kDir])) {
+                            $real = self::$darwinCache[$kDir][0];
+                        } else {
+                            $dir = getcwd();
+                            chdir($real);
+                            $real = getcwd().'/';
+                            chdir($dir);
+
+                            $dir = $real;
+                            $k = $kDir;
+                            $i = strlen($dir) - 1;
+                            while (!isset(self::$darwinCache[$k])) {
+                                self::$darwinCache[$k] = array($dir, array());
+                                self::$darwinCache[$dir] = &self::$darwinCache[$k];
+
+                                while ('/' !== $dir[--$i]) {
+                                }
+                                $k = substr($k, 0, ++$i);
+                                $dir = substr($dir, 0, $i--);
+                            }
+                        }
+                    }
+
+                    $dirFiles = self::$darwinCache[$kDir][1];
+
+                    if (isset($dirFiles[$file])) {
+                        $kFile = $file;
+                    } else {
+                        $kFile = strtolower($file);
+
+                        if (!isset($dirFiles[$kFile])) {
+                            foreach (scandir($real, 2) as $f) {
+                                if ('.' !== $f[0]) {
+                                    $dirFiles[$f] = $f;
+                                    if ($f === $file) {
+                                        $kFile = $k = $file;
+                                    } elseif ($f !== $k = strtolower($f)) {
+                                        $dirFiles[$k] = $f;
+                                    }
+                                }
                             }
+                            self::$darwinCache[$kDir][1] = $dirFiles;
                         }
-                        closedir($h);
                     }
-                    chdir($cwd);
+
+                    $real .= $dirFiles[$kFile];
                 }
 
-                if (0 === substr_compare($real, $tail, -strlen($tail), strlen($tail), true)
-                  && 0 !== substr_compare($real, $tail, -strlen($tail), strlen($tail), false)
+                if (0 === substr_compare($real, $tail, -$tailLen, $tailLen, true)
+                  && 0 !== substr_compare($real, $tail, -$tailLen, $tailLen, false)
                 ) {
                     throw new \RuntimeException(sprintf('Case mismatch between class and source file names: %s vs %s', $class, $real));
                 }
diff --git a/core/vendor/symfony/debug/ErrorHandler.php b/core/vendor/symfony/debug/ErrorHandler.php
index 2d8a9167b20b76d4db2498f5f901cbb8d4e28d93..cc698ee53380c56e9a9f0cd5026e84eef9f53d3f 100644
--- a/core/vendor/symfony/debug/ErrorHandler.php
+++ b/core/vendor/symfony/debug/ErrorHandler.php
@@ -251,7 +251,7 @@ public function setExceptionHandler($handler)
     public function throwAt($levels, $replace = false)
     {
         $prev = $this->thrownErrors;
-        $this->thrownErrors = ($levels | E_RECOVERABLE_ERROR | E_USER_ERROR) & ~E_USER_DEPRECATED & ~E_DEPRECATED;
+        $this->thrownErrors = (E_ALL | E_STRICT) & ($levels | E_RECOVERABLE_ERROR | E_USER_ERROR) & ~E_USER_DEPRECATED & ~E_DEPRECATED;
         if (!$replace) {
             $this->thrownErrors |= $prev;
         }
@@ -352,7 +352,7 @@ private function reRegister($prev)
      */
     public function handleError($type, $message, $file, $line, array $context, array $backtrace = null)
     {
-        $level = error_reporting() | E_RECOVERABLE_ERROR | E_USER_ERROR;
+        $level = error_reporting() | E_RECOVERABLE_ERROR | E_USER_ERROR | E_DEPRECATED | E_USER_DEPRECATED;
         $log = $this->loggedErrors & $type;
         $throw = $this->thrownErrors & $type & $level;
         $type &= $level | $this->screamedErrors;
@@ -445,7 +445,7 @@ public function handleError($type, $message, $file, $line, array $context, array
     }
 
     /**
-     * Handles an exception by logging then forwarding it to an other handler.
+     * Handles an exception by logging then forwarding it to another handler.
      *
      * @param \Exception|\Throwable $exception An exception to handle
      * @param array                 $error     An array as returned by error_get_last()
diff --git a/core/vendor/symfony/debug/ExceptionHandler.php b/core/vendor/symfony/debug/ExceptionHandler.php
index c883f15469e0b407d83ece68f5c87ca130169304..027b66c0521709fa29aedda67b7e9ab17b939344 100644
--- a/core/vendor/symfony/debug/ExceptionHandler.php
+++ b/core/vendor/symfony/debug/ExceptionHandler.php
@@ -38,7 +38,7 @@ class ExceptionHandler
 
     public function __construct($debug = true, $charset = null, $fileLinkFormat = null)
     {
-        if (false !== strpos($charset, '%') xor false === strpos($fileLinkFormat, '%')) {
+        if (false !== strpos($charset, '%')) {
             // Swap $charset and $fileLinkFormat for BC reasons
             $pivot = $fileLinkFormat;
             $fileLinkFormat = $charset;
@@ -153,19 +153,22 @@ public function handle(\Exception $exception)
      * it will fallback to plain PHP functions.
      *
      * @param \Exception $exception An \Exception instance
-     *
-     * @see sendPhpResponse()
-     * @see createResponse()
      */
     private function failSafeHandle(\Exception $exception)
     {
-        if (class_exists('Symfony\Component\HttpFoundation\Response', false)) {
+        if (class_exists('Symfony\Component\HttpFoundation\Response', false)
+            && __CLASS__ !== get_class($this)
+            && ($reflector = new \ReflectionMethod($this, 'createResponse'))
+            && __CLASS__ !== $reflector->class
+        ) {
             $response = $this->createResponse($exception);
             $response->sendHeaders();
             $response->sendContent();
-        } else {
-            $this->sendPhpResponse($exception);
+
+            return;
         }
+
+        $this->sendPhpResponse($exception);
     }
 
     /**
diff --git a/core/vendor/symfony/debug/Resources/ext/tests/003.phpt b/core/vendor/symfony/debug/Resources/ext/tests/003.phpt
index 1d464720b7e3120429a545fba8cb0af54dc4bd46..a36333392eec3daf16e260807aeac46fb9eb9542 100644
--- a/core/vendor/symfony/debug/Resources/ext/tests/003.phpt
+++ b/core/vendor/symfony/debug/Resources/ext/tests/003.phpt
@@ -56,7 +56,7 @@ Symfony\Component\Debug\Exception\UndefinedFunctionException Object
     [message:protected] => Attempted to call function "notexist" from namespace "Symfony\Component\Debug".
     [string:Exception:private] => 
     [code:protected] => 0
-    [file:protected] => -
+    [file:protected] => %s
     [line:protected] => %d
     [trace:Exception:private] => Array
         (
diff --git a/core/vendor/symfony/debug/Tests/ErrorHandlerTest.php b/core/vendor/symfony/debug/Tests/ErrorHandlerTest.php
index 5d521a143478f5878ec7af14cc21210280e68d95..c107c0c7cb56bd38044cbf4dfa8c1e84f8b16faf 100644
--- a/core/vendor/symfony/debug/Tests/ErrorHandlerTest.php
+++ b/core/vendor/symfony/debug/Tests/ErrorHandlerTest.php
@@ -268,6 +268,28 @@ public function testHandleError()
         }
     }
 
+    public function testHandleDeprecation()
+    {
+        $that = $this;
+        $logArgCheck = function ($level, $message, $context) use ($that) {
+            $that->assertEquals(LogLevel::INFO, $level);
+            $that->assertArrayHasKey('level', $context);
+            $that->assertEquals(E_RECOVERABLE_ERROR | E_USER_ERROR | E_DEPRECATED | E_USER_DEPRECATED, $context['level']);
+            $that->assertArrayHasKey('stack', $context);
+        };
+
+        $logger = $this->getMock('Psr\Log\LoggerInterface');
+        $logger
+            ->expects($this->once())
+            ->method('log')
+            ->will($this->returnCallback($logArgCheck))
+        ;
+
+        $handler = new ErrorHandler();
+        $handler->setDefaultLogger($logger);
+        @$handler->handleError(E_USER_DEPRECATED, 'Foo deprecation', __FILE__, __LINE__, array());
+    }
+
     public function testHandleException()
     {
         try {
diff --git a/core/vendor/symfony/debug/Tests/ExceptionHandlerTest.php b/core/vendor/symfony/debug/Tests/ExceptionHandlerTest.php
index 26f889288ff93221d38dbf18c17c98c9c04bf44b..d4b93c08389221018aa7d01a36cb18d98a81b93e 100644
--- a/core/vendor/symfony/debug/Tests/ExceptionHandlerTest.php
+++ b/core/vendor/symfony/debug/Tests/ExceptionHandlerTest.php
@@ -13,71 +13,97 @@
 
 use Symfony\Component\Debug\ExceptionHandler;
 use Symfony\Component\Debug\Exception\OutOfMemoryException;
-use Symfony\Component\HttpFoundation\Response;
 use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
 use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
 
+require_once __DIR__.'/HeaderMock.php';
+
 class ExceptionHandlerTest extends \PHPUnit_Framework_TestCase
 {
+    protected function setUp()
+    {
+        testHeader();
+    }
+
+    protected function tearDown()
+    {
+        testHeader();
+    }
+
     public function testDebug()
     {
         $handler = new ExceptionHandler(false);
-        $response = $handler->createResponse(new \RuntimeException('Foo'));
 
-        $this->assertContains('<h1>Whoops, looks like something went wrong.</h1>', $response->getContent());
-        $this->assertNotContains('<h2 class="block_exception clear_fix">', $response->getContent());
+        ob_start();
+        $handler->sendPhpResponse(new \RuntimeException('Foo'));
+        $response = ob_get_clean();
+
+        $this->assertContains('<h1>Whoops, looks like something went wrong.</h1>', $response);
+        $this->assertNotContains('<h2 class="block_exception clear_fix">', $response);
 
         $handler = new ExceptionHandler(true);
-        $response = $handler->createResponse(new \RuntimeException('Foo'));
 
-        $this->assertContains('<h1>Whoops, looks like something went wrong.</h1>', $response->getContent());
-        $this->assertContains('<h2 class="block_exception clear_fix">', $response->getContent());
+        ob_start();
+        $handler->sendPhpResponse(new \RuntimeException('Foo'));
+        $response = ob_get_clean();
+
+        $this->assertContains('<h1>Whoops, looks like something went wrong.</h1>', $response);
+        $this->assertContains('<h2 class="block_exception clear_fix">', $response);
     }
 
     public function testStatusCode()
     {
-        $handler = new ExceptionHandler(false);
+        $handler = new ExceptionHandler(false, 'iso8859-1');
+
+        ob_start();
+        $handler->sendPhpResponse(new NotFoundHttpException('Foo'));
+        $response = ob_get_clean();
+
+        $this->assertContains('Sorry, the page you are looking for could not be found.', $response);
 
-        $response = $handler->createResponse(new \RuntimeException('Foo'));
-        $this->assertEquals('500', $response->getStatusCode());
-        $this->assertContains('Whoops, looks like something went wrong.', $response->getContent());
+        $expectedHeaders = array(
+            array('HTTP/1.0 404', true, null),
+            array('Content-Type: text/html; charset=iso8859-1', true, null),
+        );
 
-        $response = $handler->createResponse(new NotFoundHttpException('Foo'));
-        $this->assertEquals('404', $response->getStatusCode());
-        $this->assertContains('Sorry, the page you are looking for could not be found.', $response->getContent());
+        $this->assertSame($expectedHeaders, testHeader());
     }
 
     public function testHeaders()
     {
-        $handler = new ExceptionHandler(false);
+        $handler = new ExceptionHandler(false, 'iso8859-1');
+
+        ob_start();
+        $handler->sendPhpResponse(new MethodNotAllowedHttpException(array('POST')));
+        $response = ob_get_clean();
 
-        $response = $handler->createResponse(new MethodNotAllowedHttpException(array('POST')));
-        $this->assertEquals('405', $response->getStatusCode());
-        $this->assertEquals('POST', $response->headers->get('Allow'));
+        $expectedHeaders = array(
+            array('HTTP/1.0 405', true, null),
+            array('Allow: POST', false, null),
+            array('Content-Type: text/html; charset=iso8859-1', true, null),
+        );
+
+        $this->assertSame($expectedHeaders, testHeader());
     }
 
     public function testNestedExceptions()
     {
         $handler = new ExceptionHandler(true);
-        $response = $handler->createResponse(new \RuntimeException('Foo', 0, new \RuntimeException('Bar')));
+        ob_start();
+        $handler->sendPhpResponse(new \RuntimeException('Foo', 0, new \RuntimeException('Bar')));
+        $response = ob_get_clean();
+
+        $this->assertStringMatchesFormat('%A<span class="exception_message">Foo</span>%A<span class="exception_message">Bar</span>%A', $response);
     }
 
     public function testHandle()
     {
         $exception = new \Exception('foo');
 
-        if (class_exists('Symfony\Component\HttpFoundation\Response')) {
-            $handler = $this->getMock('Symfony\Component\Debug\ExceptionHandler', array('createResponse'));
-            $handler
-                ->expects($this->exactly(2))
-                ->method('createResponse')
-                ->will($this->returnValue(new Response()));
-        } else {
-            $handler = $this->getMock('Symfony\Component\Debug\ExceptionHandler', array('sendPhpResponse'));
-            $handler
-                ->expects($this->exactly(2))
-                ->method('sendPhpResponse');
-        }
+        $handler = $this->getMock('Symfony\Component\Debug\ExceptionHandler', array('sendPhpResponse'));
+        $handler
+            ->expects($this->exactly(2))
+            ->method('sendPhpResponse');
 
         $handler->handle($exception);
 
@@ -93,18 +119,10 @@ public function testHandleOutOfMemoryException()
     {
         $exception = new OutOfMemoryException('foo', 0, E_ERROR, __FILE__, __LINE__);
 
-        if (class_exists('Symfony\Component\HttpFoundation\Response')) {
-            $handler = $this->getMock('Symfony\Component\Debug\ExceptionHandler', array('createResponse'));
-            $handler
-                ->expects($this->once())
-                ->method('createResponse')
-                ->will($this->returnValue(new Response()));
-        } else {
-            $handler = $this->getMock('Symfony\Component\Debug\ExceptionHandler', array('sendPhpResponse'));
-            $handler
-                ->expects($this->once())
-                ->method('sendPhpResponse');
-        }
+        $handler = $this->getMock('Symfony\Component\Debug\ExceptionHandler', array('sendPhpResponse'));
+        $handler
+            ->expects($this->once())
+            ->method('sendPhpResponse');
 
         $that = $this;
         $handler->setHandler(function ($e) use ($that) {
diff --git a/core/vendor/symfony/debug/Tests/HeaderMock.php b/core/vendor/symfony/debug/Tests/HeaderMock.php
new file mode 100644
index 0000000000000000000000000000000000000000..65d0b588558b56f7795ca0f986be8cd3a099aa57
--- /dev/null
+++ b/core/vendor/symfony/debug/Tests/HeaderMock.php
@@ -0,0 +1,38 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Debug;
+
+function headers_sent()
+{
+    return false;
+}
+
+function header($str, $replace = true, $status = null)
+{
+    Tests\testHeader($str, $replace, $status);
+}
+
+namespace Symfony\Component\Debug\Tests;
+
+function testHeader()
+{
+    static $headers = array();
+
+    if (!$h = func_get_args()) {
+        $h = $headers;
+        $headers = array();
+
+        return $h;
+    }
+
+    $headers[] = func_get_args();
+}
diff --git a/core/vendor/symfony/debug/composer.json b/core/vendor/symfony/debug/composer.json
index 3b1568831177e3a3d8a3ae0c7fe9c3709e360a38..b384f856b2fd2452c54969b658dba9394ac1f46a 100644
--- a/core/vendor/symfony/debug/composer.json
+++ b/core/vendor/symfony/debug/composer.json
@@ -25,12 +25,7 @@
     "require-dev": {
         "symfony/phpunit-bridge": "~2.7",
         "symfony/class-loader": "~2.2",
-        "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2",
-        "symfony/http-foundation": "~2.1"
-    },
-    "suggest": {
-        "symfony/http-foundation": "",
-        "symfony/http-kernel": ""
+        "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2"
     },
     "autoload": {
         "psr-4": { "Symfony\\Component\\Debug\\": "" }
diff --git a/core/vendor/symfony/dependency-injection/Definition.php b/core/vendor/symfony/dependency-injection/Definition.php
index 71447fab12ae87500b8e8b2672fd5a62c647a748..60dac83bf8360ce2a9b6f871088374bac8142090 100644
--- a/core/vendor/symfony/dependency-injection/Definition.php
+++ b/core/vendor/symfony/dependency-injection/Definition.php
@@ -94,6 +94,7 @@ public function getFactory()
      * @return Definition The current instance
      *
      * @api
+     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function setFactoryClass($factoryClass)
@@ -111,6 +112,7 @@ public function setFactoryClass($factoryClass)
      * @return string|null The factory class name
      *
      * @api
+     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function getFactoryClass($triggerDeprecationError = true)
@@ -130,6 +132,7 @@ public function getFactoryClass($triggerDeprecationError = true)
      * @return Definition The current instance
      *
      * @api
+     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function setFactoryMethod($factoryMethod)
@@ -182,6 +185,7 @@ public function getDecoratedService()
      * @return string|null The factory method name
      *
      * @api
+     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function getFactoryMethod($triggerDeprecationError = true)
@@ -201,6 +205,7 @@ public function getFactoryMethod($triggerDeprecationError = true)
      * @return Definition The current instance
      *
      * @api
+     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function setFactoryService($factoryService)
@@ -218,6 +223,7 @@ public function setFactoryService($factoryService)
      * @return string|null The factory service id
      *
      * @api
+     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function getFactoryService($triggerDeprecationError = true)
diff --git a/core/vendor/symfony/dependency-injection/Dumper/GraphvizDumper.php b/core/vendor/symfony/dependency-injection/Dumper/GraphvizDumper.php
index 5f35a1e5bb116f1aacffc9122cda273ce7de08c9..f69d1e9066bac81e8d6559047e9a2080d5779125 100644
--- a/core/vendor/symfony/dependency-injection/Dumper/GraphvizDumper.php
+++ b/core/vendor/symfony/dependency-injection/Dumper/GraphvizDumper.php
@@ -166,14 +166,18 @@ private function findNodes()
         $container = $this->cloneContainer();
 
         foreach ($container->getDefinitions() as $id => $definition) {
-            $className = $definition->getClass();
+            $class = $definition->getClass();
+
+            if ('\\' === substr($class, 0, 1)) {
+                $class = substr($class, 1);
+            }
 
             try {
-                $className = $this->container->getParameterBag()->resolveValue($className);
+                $class = $this->container->getParameterBag()->resolveValue($class);
             } catch (ParameterNotFoundException $e) {
             }
 
-            $nodes[$id] = array('class' => str_replace('\\', '\\\\', $className), 'attributes' => array_merge($this->options['node.definition'], array('style' => ContainerInterface::SCOPE_PROTOTYPE !== $definition->getScope() ? 'filled' : 'dotted')));
+            $nodes[$id] = array('class' => str_replace('\\', '\\\\', $class), 'attributes' => array_merge($this->options['node.definition'], array('style' => ContainerInterface::SCOPE_PROTOTYPE !== $definition->getScope() ? 'filled' : 'dotted')));
             $container->setDefinition($id, new Definition('stdClass'));
         }
 
diff --git a/core/vendor/symfony/dependency-injection/Dumper/PhpDumper.php b/core/vendor/symfony/dependency-injection/Dumper/PhpDumper.php
index c59bc8d5b1290c6c4bbd375113f2c39d55dd3005..ab2360a5e84a18e5a1bfdf0393f3bab690ac4748 100644
--- a/core/vendor/symfony/dependency-injection/Dumper/PhpDumper.php
+++ b/core/vendor/symfony/dependency-injection/Dumper/PhpDumper.php
@@ -372,7 +372,13 @@ private function addServiceReturn($id, $definition)
      */
     private function addServiceInstance($id, $definition)
     {
-        $class = $this->dumpValue($definition->getClass());
+        $class = $definition->getClass();
+
+        if ('\\' === substr($class, 0, 1)) {
+            $class = substr($class, 1);
+        }
+
+        $class = $this->dumpValue($class);
 
         if (0 === strpos($class, "'") && !preg_match('/^\'[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*(\\\{2}[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)*\'$/', $class)) {
             throw new InvalidArgumentException(sprintf('"%s" is not a valid class name for the "%s" service.', $class, $id));
@@ -560,7 +566,7 @@ private function addService($id, $definition)
         if ($definition->isSynthetic()) {
             $return[] = '@throws RuntimeException always since this service is expected to be injected dynamically';
         } elseif ($class = $definition->getClass()) {
-            $return[] = sprintf('@return %s A %s instance.', 0 === strpos($class, '%') ? 'object' : '\\'.$class, $class);
+            $return[] = sprintf('@return %s A %s instance.', 0 === strpos($class, '%') ? 'object' : '\\'.ltrim($class, '\\'), ltrim($class, '\\'));
         } elseif ($definition->getFactory()) {
             $factory = $definition->getFactory();
             if (is_string($factory)) {
diff --git a/core/vendor/symfony/dependency-injection/Dumper/XmlDumper.php b/core/vendor/symfony/dependency-injection/Dumper/XmlDumper.php
index 40486c4595543961d53d86d5160128550a59f678..94efc5662ae2be2f79e7c9229747314a084c3bda 100644
--- a/core/vendor/symfony/dependency-injection/Dumper/XmlDumper.php
+++ b/core/vendor/symfony/dependency-injection/Dumper/XmlDumper.php
@@ -114,8 +114,12 @@ private function addService($definition, $id, \DOMElement $parent)
         if (null !== $id) {
             $service->setAttribute('id', $id);
         }
-        if ($definition->getClass()) {
-            $service->setAttribute('class', $definition->getClass());
+        if ($class = $definition->getClass()) {
+            if ('\\' === substr($class, 0, 1)) {
+                $class = substr($class, 1);
+            }
+
+            $service->setAttribute('class', $class);
         }
         if ($definition->getFactoryMethod(false)) {
             $service->setAttribute('factory-method', $definition->getFactoryMethod(false));
diff --git a/core/vendor/symfony/dependency-injection/Dumper/YamlDumper.php b/core/vendor/symfony/dependency-injection/Dumper/YamlDumper.php
index 832929cd049c0ea3ab144b55dc1e822cf2bee335..1d979f0af04007738fe0548c8382d3b1fc546481 100644
--- a/core/vendor/symfony/dependency-injection/Dumper/YamlDumper.php
+++ b/core/vendor/symfony/dependency-injection/Dumper/YamlDumper.php
@@ -64,8 +64,12 @@ public function dump(array $options = array())
     private function addService($id, $definition)
     {
         $code = "    $id:\n";
-        if ($definition->getClass()) {
-            $code .= sprintf("        class: %s\n", $definition->getClass());
+        if ($class = $definition->getClass()) {
+            if ('\\' === substr($class, 0, 1)) {
+                $class = substr($class, 1);
+            }
+
+            $code .= sprintf("        class: %s\n", $class);
         }
 
         if (!$definition->isPublic()) {
@@ -212,7 +216,7 @@ private function addParameters()
     }
 
     /**
-     * Dumps callable to YAML format
+     * Dumps callable to YAML format.
      *
      * @param callable $callable
      *
diff --git a/core/vendor/symfony/dependency-injection/Tests/Compiler/AutoAliasServicePassTest.php b/core/vendor/symfony/dependency-injection/Tests/Compiler/AutoAliasServicePassTest.php
index 368ec3c5cd46aff6de3000ceb543814162b661bd..e3aba6d7074cde00a8f2889dda301f988f876a50 100644
--- a/core/vendor/symfony/dependency-injection/Tests/Compiler/AutoAliasServicePassTest.php
+++ b/core/vendor/symfony/dependency-injection/Tests/Compiler/AutoAliasServicePassTest.php
@@ -1,5 +1,14 @@
 <?php
 
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
 namespace Symfony\Component\DependencyInjection\Tests\Compiler;
 
 use Symfony\Component\DependencyInjection\Compiler\AutoAliasServicePass;
diff --git a/core/vendor/symfony/dependency-injection/Tests/Compiler/MergeExtensionConfigurationPassTest.php b/core/vendor/symfony/dependency-injection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
index 1f91b37821b7579a741b322e077113259263ab44..6e112bb7ff126ab020385b7e19acbada8290443a 100644
--- a/core/vendor/symfony/dependency-injection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
+++ b/core/vendor/symfony/dependency-injection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
@@ -1,5 +1,14 @@
 <?php
 
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
 namespace Symfony\Component\DependencyInjection\Tests\Compiler;
 
 use Symfony\Component\DependencyInjection\Compiler\MergeExtensionConfigurationPass;
@@ -35,7 +44,7 @@ public function testExpressionLanguageProviderForwarding()
         $provider = $this->getMock('Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface');
         $container = new ContainerBuilder(new ParameterBag());
         $container->registerExtension($extension);
-        $container->prependExtensionConfig('foo', array('bar' => true ));
+        $container->prependExtensionConfig('foo', array('bar' => true));
         $container->addExpressionLanguageProvider($provider);
 
         $pass = new MergeExtensionConfigurationPass();
diff --git a/core/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container9.php b/core/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container9.php
index e97a2dda69ccb99073d86cb30f8e8565fa153269..47064c302fbf559fb1c992017ae81d1900f55794 100644
--- a/core/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container9.php
+++ b/core/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container9.php
@@ -10,7 +10,7 @@
 
 $container = new ContainerBuilder();
 $container
-    ->register('foo', 'Bar\FooClass')
+    ->register('foo', '\Bar\FooClass')
     ->addTag('foo', array('foo' => 'foo'))
     ->addTag('foo', array('bar' => 'bar', 'baz' => 'baz'))
     ->setFactory(array('Bar\\FooClass', 'getInstance'))
diff --git a/core/vendor/symfony/dependency-injection/Tests/LegacyDefinitionTest.php b/core/vendor/symfony/dependency-injection/Tests/LegacyDefinitionTest.php
index b85d81f48153d53d35a7ecc584c0ff01c2102d58..07891fff6dc5cc40d6d2aec7946c1423d6dedb70 100644
--- a/core/vendor/symfony/dependency-injection/Tests/LegacyDefinitionTest.php
+++ b/core/vendor/symfony/dependency-injection/Tests/LegacyDefinitionTest.php
@@ -22,8 +22,8 @@ public function testSetGetFactoryClass()
     {
         $def = new Definition('stdClass');
         $this->assertNull($def->getFactoryClass());
-        $this->assertSame($def, $def->setFactoryClass('stdClass2'), "->setFactoryClass() implements a fluent interface.");
-        $this->assertEquals('stdClass2', $def->getFactoryClass(), "->getFactoryClass() returns current class to construct this service.");
+        $this->assertSame($def, $def->setFactoryClass('stdClass2'), '->setFactoryClass() implements a fluent interface.');
+        $this->assertEquals('stdClass2', $def->getFactoryClass(), '->getFactoryClass() returns current class to construct this service.');
     }
 
     public function testSetGetFactoryMethod()
@@ -38,7 +38,7 @@ public function testSetGetFactoryService()
     {
         $def = new Definition('stdClass');
         $this->assertNull($def->getFactoryService());
-        $this->assertSame($def, $def->setFactoryService('foo.bar'), "->setFactoryService() implements a fluent interface.");
-        $this->assertEquals('foo.bar', $def->getFactoryService(), "->getFactoryService() returns current service to construct this service.");
+        $this->assertSame($def, $def->setFactoryService('foo.bar'), '->setFactoryService() implements a fluent interface.');
+        $this->assertEquals('foo.bar', $def->getFactoryService(), '->getFactoryService() returns current service to construct this service.');
     }
 }
diff --git a/core/vendor/symfony/dom-crawler/Crawler.php b/core/vendor/symfony/dom-crawler/Crawler.php
index 3fd87bd766cdac5689a39640988b033e5bba7f0e..0ab6b98221a85ce52bf515a5dae98e1680a2059b 100644
--- a/core/vendor/symfony/dom-crawler/Crawler.php
+++ b/core/vendor/symfony/dom-crawler/Crawler.php
@@ -166,20 +166,43 @@ public function addHtmlContent($content, $charset = 'UTF-8')
         $dom = new \DOMDocument('1.0', $charset);
         $dom->validateOnParse = true;
 
-        if (function_exists('mb_convert_encoding')) {
-            $hasError = false;
-            set_error_handler(function () use (&$hasError) {
-                $hasError = true;
-            });
-            $tmpContent = @mb_convert_encoding($content, 'HTML-ENTITIES', $charset);
-
-            restore_error_handler();
-
-            if (!$hasError) {
-                $content = $tmpContent;
+        set_error_handler(function () {throw new \Exception();});
+
+        try {
+            // Convert charset to HTML-entities to work around bugs in DOMDocument::loadHTML()
+
+            if (function_exists('mb_convert_encoding')) {
+                $content = mb_convert_encoding($content, 'HTML-ENTITIES', $charset);
+            } elseif (function_exists('iconv')) {
+                $content = preg_replace_callback(
+                    '/[\x80-\xFF]+/',
+                    function ($m) {
+                        $m = unpack('C*', $m[0]);
+                        $i = 1;
+                        $entities = '';
+
+                        while (isset($m[$i])) {
+                            if (0xF0 <= $m[$i]) {
+                                $c = (($m[$i++] - 0xF0) << 18) + (($m[$i++] - 0x80) << 12) + (($m[$i++] - 0x80) << 6) + $m[$i++] - 0x80;
+                            } elseif (0xE0 <= $m[$i]) {
+                                $c = (($m[$i++] - 0xE0) << 12) + (($m[$i++] - 0x80) << 6) + $m[$i++]  - 0x80;
+                            } else {
+                                $c = (($m[$i++] - 0xC0) << 6) + $m[$i++] - 0x80;
+                            }
+
+                            $entities .= '&#'.$c.';';
+                        }
+
+                        return $entities;
+                    },
+                    iconv($charset, 'UTF-8', $content)
+                );
             }
+        } catch (\Exception $e) {
         }
 
+        restore_error_handler();
+
         if ('' !== trim($content)) {
             @$dom->loadHTML($content);
         }
diff --git a/core/vendor/symfony/dom-crawler/Form.php b/core/vendor/symfony/dom-crawler/Form.php
index acf62e638faba4994ac0673aa01d84037efaec2b..bf7ce5d55463dde171d6df6733292ecc0f515fc5 100644
--- a/core/vendor/symfony/dom-crawler/Form.php
+++ b/core/vendor/symfony/dom-crawler/Form.php
@@ -355,7 +355,7 @@ public function offsetUnset($name)
     }
 
     /**
-     * Disables validation
+     * Disables validation.
      *
      * @return self
      */
diff --git a/core/vendor/symfony/dom-crawler/Tests/CrawlerTest.php b/core/vendor/symfony/dom-crawler/Tests/CrawlerTest.php
index 3c281eb479b52333e4226315723cdb556b78630c..9560d069998f59d251193627b5aa7cc183093405 100755
--- a/core/vendor/symfony/dom-crawler/Tests/CrawlerTest.php
+++ b/core/vendor/symfony/dom-crawler/Tests/CrawlerTest.php
@@ -81,6 +81,7 @@ public function testAddHtmlContent()
 
     /**
      * @covers Symfony\Component\DomCrawler\Crawler::addHtmlContent
+     * @requires extension mbstring
      */
     public function testAddHtmlContentCharset()
     {
@@ -115,6 +116,7 @@ public function testAddHtmlContentUnsupportedCharset()
 
     /**
      * @covers Symfony\Component\DomCrawler\Crawler::addHtmlContent
+     * @requires extension mbstring
      */
     public function testAddHtmlContentCharsetGbk()
     {
@@ -235,7 +237,7 @@ public function testAddContent()
         $this->assertEquals('中文', $crawler->filterXPath('//span')->text(), '->addContent() guess wrong charset');
 
         $crawler = new Crawler();
-        $crawler->addContent(mb_convert_encoding('<html><head><meta charset="Shift_JIS"></head><body>日本語</body></html>', 'SJIS', 'UTF-8'));
+        $crawler->addContent(iconv('UTF-8', 'SJIS', '<html><head><meta charset="Shift_JIS"></head><body>日本語</body></html>'));
         $this->assertEquals('日本語', $crawler->filterXPath('//body')->text(), '->addContent() can recognize "Shift_JIS" in html5 meta charset tag');
     }
 
diff --git a/core/vendor/symfony/event-dispatcher/Tests/AbstractEventDispatcherTest.php b/core/vendor/symfony/event-dispatcher/Tests/AbstractEventDispatcherTest.php
index f9c7e0e8bef3f44fdfdf76cf05b717ab4f6068d1..199d2c00715b3e1dfaa7e1ca85ae243bd4afe60a 100644
--- a/core/vendor/symfony/event-dispatcher/Tests/AbstractEventDispatcherTest.php
+++ b/core/vendor/symfony/event-dispatcher/Tests/AbstractEventDispatcherTest.php
@@ -135,7 +135,7 @@ public function testDispatchForClosure()
     {
         $invoked = 0;
         $listener = function () use (&$invoked) {
-            $invoked++;
+            ++$invoked;
         };
         $this->dispatcher->addListener('pre.foo', $listener);
         $this->dispatcher->addListener('post.foo', $listener);
diff --git a/core/vendor/symfony/event-dispatcher/Tests/Debug/TraceableEventDispatcherTest.php b/core/vendor/symfony/event-dispatcher/Tests/Debug/TraceableEventDispatcherTest.php
index 24e60024ff041dd4b73c669cc429672d41e36586..4aa6226e492974aacea06876f4a811f3344f743e 100644
--- a/core/vendor/symfony/event-dispatcher/Tests/Debug/TraceableEventDispatcherTest.php
+++ b/core/vendor/symfony/event-dispatcher/Tests/Debug/TraceableEventDispatcherTest.php
@@ -110,8 +110,8 @@ public function testLogger()
         $tdispatcher->addListener('foo', $listener1 = function () {; });
         $tdispatcher->addListener('foo', $listener2 = function () {; });
 
-        $logger->expects($this->at(0))->method('debug')->with("Notified event \"foo\" to listener \"closure\".");
-        $logger->expects($this->at(1))->method('debug')->with("Notified event \"foo\" to listener \"closure\".");
+        $logger->expects($this->at(0))->method('debug')->with('Notified event "foo" to listener "closure".');
+        $logger->expects($this->at(1))->method('debug')->with('Notified event "foo" to listener "closure".');
 
         $tdispatcher->dispatch('foo');
     }
@@ -125,9 +125,9 @@ public function testLoggerWithStoppedEvent()
         $tdispatcher->addListener('foo', $listener1 = function (Event $event) { $event->stopPropagation(); });
         $tdispatcher->addListener('foo', $listener2 = function () {; });
 
-        $logger->expects($this->at(0))->method('debug')->with("Notified event \"foo\" to listener \"closure\".");
-        $logger->expects($this->at(1))->method('debug')->with("Listener \"closure\" stopped propagation of the event \"foo\".");
-        $logger->expects($this->at(2))->method('debug')->with("Listener \"closure\" was not called for event \"foo\".");
+        $logger->expects($this->at(0))->method('debug')->with('Notified event "foo" to listener "closure".');
+        $logger->expects($this->at(1))->method('debug')->with('Listener "closure" stopped propagation of the event "foo".');
+        $logger->expects($this->at(2))->method('debug')->with('Listener "closure" was not called for event "foo".');
 
         $tdispatcher->dispatch('foo');
     }
diff --git a/core/vendor/symfony/http-foundation/BinaryFileResponse.php b/core/vendor/symfony/http-foundation/BinaryFileResponse.php
index ac41c8fe910a69fcbff952ae3169d3d7ecd37f37..ca407b4d9345226e95ee3baaeb3817e30eff509f 100644
--- a/core/vendor/symfony/http-foundation/BinaryFileResponse.php
+++ b/core/vendor/symfony/http-foundation/BinaryFileResponse.php
@@ -308,6 +308,7 @@ public static function trustXSendfileTypeHeader()
     /**
      * If this is set to true, the file will be unlinked after the request is send
      * Note: If the X-Sendfile header is used, the deleteFileAfterSend setting will not be used.
+     *
      * @param bool $shouldDelete
      *
      * @return BinaryFileResponse
diff --git a/core/vendor/symfony/http-foundation/Request.php b/core/vendor/symfony/http-foundation/Request.php
index c6d1e31ab374c836e7940b06b9c406d453b1f5c9..510a97175e5e8b78a034517f23ce6191f23e1de8 100644
--- a/core/vendor/symfony/http-foundation/Request.php
+++ b/core/vendor/symfony/http-foundation/Request.php
@@ -1577,7 +1577,7 @@ public function getContent($asResource = false)
 
             // Content passed in parameter (test)
             if (is_string($this->content)) {
-                $resource = fopen('php://temp','r+');
+                $resource = fopen('php://temp', 'r+');
                 fwrite($resource, $this->content);
                 rewind($resource);
 
@@ -1852,9 +1852,9 @@ protected function prepareBaseUrl()
             return $prefix;
         }
 
-        if ($baseUrl && false !== $prefix = $this->getUrlencodedPrefix($requestUri, rtrim(dirname($baseUrl), '/').'/')) {
+        if ($baseUrl && false !== $prefix = $this->getUrlencodedPrefix($requestUri, rtrim(dirname($baseUrl), '/'.DIRECTORY_SEPARATOR).'/')) {
             // directory portion of $baseUrl matches
-            return rtrim($prefix, '/');
+            return rtrim($prefix, '/'.DIRECTORY_SEPARATOR);
         }
 
         $truncatedRequestUri = $requestUri;
@@ -1875,7 +1875,7 @@ protected function prepareBaseUrl()
             $baseUrl = substr($requestUri, 0, $pos + strlen($baseUrl));
         }
 
-        return rtrim($baseUrl, '/');
+        return rtrim($baseUrl, '/'.DIRECTORY_SEPARATOR);
     }
 
     /**
@@ -2001,7 +2001,7 @@ private static function createRequestFromFactory(array $query = array(), array $
         if (self::$requestFactory) {
             $request = call_user_func(self::$requestFactory, $query, $request, $attributes, $cookies, $files, $server, $content);
 
-            if (!$request instanceof Request) {
+            if (!$request instanceof self) {
                 throw new \LogicException('The Request factory must return an instance of Symfony\Component\HttpFoundation\Request.');
             }
 
diff --git a/core/vendor/symfony/http-foundation/Response.php b/core/vendor/symfony/http-foundation/Response.php
index 17fb98102bfa892d466f956ee6f9dab09246fa59..8c88c91a4785db381504d09bd703f5b23e529758 100644
--- a/core/vendor/symfony/http-foundation/Response.php
+++ b/core/vendor/symfony/http-foundation/Response.php
@@ -630,7 +630,7 @@ public function setPublic()
      */
     public function mustRevalidate()
     {
-        return $this->headers->hasCacheControlDirective('must-revalidate') || $this->headers->has('proxy-revalidate');
+        return $this->headers->hasCacheControlDirective('must-revalidate') || $this->headers->hasCacheControlDirective('proxy-revalidate');
     }
 
     /**
diff --git a/core/vendor/symfony/http-foundation/Session/Storage/Handler/LegacyPdoSessionHandler.php b/core/vendor/symfony/http-foundation/Session/Storage/Handler/LegacyPdoSessionHandler.php
index eefaf8d8fa0d592079a22b63f1848c1344027e7a..111541d92d521d0736f55ef2feba462358890591 100644
--- a/core/vendor/symfony/http-foundation/Session/Storage/Handler/LegacyPdoSessionHandler.php
+++ b/core/vendor/symfony/http-foundation/Session/Storage/Handler/LegacyPdoSessionHandler.php
@@ -260,7 +260,7 @@ private function getMergeSql()
     }
 
     /**
-     * Return a PDO instance
+     * Return a PDO instance.
      *
      * @return \PDO
      */
diff --git a/core/vendor/symfony/http-foundation/Session/Storage/Handler/MemcacheSessionHandler.php b/core/vendor/symfony/http-foundation/Session/Storage/Handler/MemcacheSessionHandler.php
index 183093f87a43afd60fcef24783e027b0f6659f51..f6f99eda48c1b7897a0adf1cdede9aca21760e0e 100644
--- a/core/vendor/symfony/http-foundation/Session/Storage/Handler/MemcacheSessionHandler.php
+++ b/core/vendor/symfony/http-foundation/Session/Storage/Handler/MemcacheSessionHandler.php
@@ -108,7 +108,7 @@ public function gc($maxlifetime)
     }
 
     /**
-     * Return a Memcache instance
+     * Return a Memcache instance.
      *
      * @return \Memcache
      */
diff --git a/core/vendor/symfony/http-foundation/Session/Storage/Handler/MemcachedSessionHandler.php b/core/vendor/symfony/http-foundation/Session/Storage/Handler/MemcachedSessionHandler.php
index 1f9d97e45d7b8cff83eded8d8563cd2001fdb98f..d87bef852f9a380659cd142591a1a59f47a9aa5b 100644
--- a/core/vendor/symfony/http-foundation/Session/Storage/Handler/MemcachedSessionHandler.php
+++ b/core/vendor/symfony/http-foundation/Session/Storage/Handler/MemcachedSessionHandler.php
@@ -114,7 +114,7 @@ public function gc($maxlifetime)
     }
 
     /**
-     * Return a Memcached instance
+     * Return a Memcached instance.
      *
      * @return \Memcached
      */
diff --git a/core/vendor/symfony/http-foundation/Session/Storage/Handler/MongoDbSessionHandler.php b/core/vendor/symfony/http-foundation/Session/Storage/Handler/MongoDbSessionHandler.php
index fa4ecfb0a40c89b51af99d928116c23189803a0d..f1df25d0a629b59f289113ac883f56eab53c1665 100644
--- a/core/vendor/symfony/http-foundation/Session/Storage/Handler/MongoDbSessionHandler.php
+++ b/core/vendor/symfony/http-foundation/Session/Storage/Handler/MongoDbSessionHandler.php
@@ -177,7 +177,7 @@ private function getCollection()
     }
 
     /**
-     * Return a Mongo instance
+     * Return a Mongo instance.
      *
      * @return \Mongo
      */
diff --git a/core/vendor/symfony/http-foundation/StreamedResponse.php b/core/vendor/symfony/http-foundation/StreamedResponse.php
index 38986e8aa7f84bd2f550a65e98e4c4cfa762a176..0da42b2292dfa7a28f842e45d767d54f4842068f 100644
--- a/core/vendor/symfony/http-foundation/StreamedResponse.php
+++ b/core/vendor/symfony/http-foundation/StreamedResponse.php
@@ -51,7 +51,7 @@ public function __construct($callback = null, $status = 200, $headers = array())
     }
 
     /**
-     * Factory method for chainability
+     * Factory method for chainability.
      *
      * @param callable|null $callback A valid PHP callback or null to set it later
      * @param int           $status   The response status code
diff --git a/core/vendor/symfony/http-foundation/Tests/BinaryFileResponseTest.php b/core/vendor/symfony/http-foundation/Tests/BinaryFileResponseTest.php
index 47e4d4fed87b778b74c40c72029fd98ac9d31227..550014dc73f38e36cba1d7c162d9b8cacba19b13 100644
--- a/core/vendor/symfony/http-foundation/Tests/BinaryFileResponseTest.php
+++ b/core/vendor/symfony/http-foundation/Tests/BinaryFileResponseTest.php
@@ -54,7 +54,7 @@ public function testGetContent()
      */
     public function testRequests($requestRange, $offset, $length, $responseRange)
     {
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif')->setAutoEtag();
+        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'))->setAutoEtag();
 
         // do a request to get the ETag
         $request = Request::create('/');
@@ -96,7 +96,7 @@ public function provideRanges()
      */
     public function testFullFileRequests($requestRange)
     {
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif')->setAutoEtag();
+        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'))->setAutoEtag();
 
         // prepare a request for a range of the testing file
         $request = Request::create('/');
@@ -131,7 +131,7 @@ public function provideFullFileRanges()
      */
     public function testInvalidRequests($requestRange)
     {
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif')->setAutoEtag();
+        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'))->setAutoEtag();
 
         // prepare a request for a range of the testing file
         $request = Request::create('/');
@@ -159,7 +159,7 @@ public function testXSendfile()
         $request->headers->set('X-Sendfile-Type', 'X-Sendfile');
 
         BinaryFileResponse::trustXSendfileTypeHeader();
-        $response = BinaryFileResponse::create(__DIR__.'/../README.md');
+        $response = BinaryFileResponse::create(__DIR__.'/../README.md', 200, array('Content-Type' => 'application/octet-stream'));
         $response->prepare($request);
 
         $this->expectOutputString('');
@@ -180,7 +180,7 @@ public function testXAccelMapping($realpath, $mapping, $virtual)
         $file = new FakeFile($realpath, __DIR__.'/File/Fixtures/test');
 
         BinaryFileResponse::trustXSendfileTypeHeader();
-        $response = new BinaryFileResponse($file);
+        $response = new BinaryFileResponse($file, 200, array('Content-Type' => 'application/octet-stream'));
         $reflection = new \ReflectionObject($response);
         $property = $reflection->getProperty('file');
         $property->setAccessible(true);
@@ -199,7 +199,7 @@ public function testDeleteFileAfterSend()
         $realPath = realpath($path);
         $this->assertFileExists($realPath);
 
-        $response = new BinaryFileResponse($realPath);
+        $response = new BinaryFileResponse($realPath, 200, array('Content-Type' => 'application/octet-stream'));
         $response->deleteFileAfterSend(true);
 
         $response->prepare($request);
@@ -211,7 +211,7 @@ public function testDeleteFileAfterSend()
     public function testAcceptRangeOnUnsafeMethods()
     {
         $request = Request::create('/', 'POST');
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif');
+        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'));
         $response->prepare($request);
 
         $this->assertEquals('none', $response->headers->get('Accept-Ranges'));
@@ -220,7 +220,7 @@ public function testAcceptRangeOnUnsafeMethods()
     public function testAcceptRangeNotOverriden()
     {
         $request = Request::create('/', 'POST');
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif');
+        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'));
         $response->headers->set('Accept-Ranges', 'foo');
         $response->prepare($request);
 
@@ -237,7 +237,7 @@ public function getSampleXAccelMappings()
 
     protected function provideResponse()
     {
-        return new BinaryFileResponse(__DIR__.'/../README.md');
+        return new BinaryFileResponse(__DIR__.'/../README.md', 200, array('Content-Type' => 'application/octet-stream'));
     }
 
     public static function tearDownAfterClass()
diff --git a/core/vendor/symfony/http-foundation/Tests/File/FileTest.php b/core/vendor/symfony/http-foundation/Tests/File/FileTest.php
index 6777849c8ac3e75d3a70c3a0b6159eb973adc408..d216eab516174c29207c409df7a613a7dfaef575 100644
--- a/core/vendor/symfony/http-foundation/Tests/File/FileTest.php
+++ b/core/vendor/symfony/http-foundation/Tests/File/FileTest.php
@@ -45,6 +45,9 @@ public function testGuessExtensionIsBasedOnMimeType()
         $this->assertEquals('gif', $file->guessExtension());
     }
 
+    /**
+     * @requires extension fileinfo
+     */
     public function testGuessExtensionWithReset()
     {
         $file = new File(__DIR__.'/Fixtures/other-file.example');
diff --git a/core/vendor/symfony/http-foundation/Tests/File/MimeType/MimeTypeTest.php b/core/vendor/symfony/http-foundation/Tests/File/MimeType/MimeTypeTest.php
index b2a573e27a784c6d92feec7901cf58906dbb08e7..1d5648eada8e7a72ac8d2fcbd70d29f6258749ee 100644
--- a/core/vendor/symfony/http-foundation/Tests/File/MimeType/MimeTypeTest.php
+++ b/core/vendor/symfony/http-foundation/Tests/File/MimeType/MimeTypeTest.php
@@ -14,17 +14,16 @@
 use Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesser;
 use Symfony\Component\HttpFoundation\File\MimeType\FileBinaryMimeTypeGuesser;
 
+/**
+ * @requires extension fileinfo
+ */
 class MimeTypeTest extends \PHPUnit_Framework_TestCase
 {
     protected $path;
 
     public function testGuessImageWithoutExtension()
     {
-        if (extension_loaded('fileinfo')) {
-            $this->assertEquals('image/gif', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test'));
-        } else {
-            $this->assertNull(MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test'));
-        }
+        $this->assertEquals('image/gif', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test'));
     }
 
     public function testGuessImageWithDirectory()
@@ -38,29 +37,17 @@ public function testGuessImageWithFileBinaryMimeTypeGuesser()
     {
         $guesser = MimeTypeGuesser::getInstance();
         $guesser->register(new FileBinaryMimeTypeGuesser());
-        if (extension_loaded('fileinfo')) {
-            $this->assertEquals('image/gif', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test'));
-        } else {
-            $this->assertNull(MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test'));
-        }
+        $this->assertEquals('image/gif', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test'));
     }
 
     public function testGuessImageWithKnownExtension()
     {
-        if (extension_loaded('fileinfo')) {
-            $this->assertEquals('image/gif', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test.gif'));
-        } else {
-            $this->assertNull(MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test.gif'));
-        }
+        $this->assertEquals('image/gif', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test.gif'));
     }
 
     public function testGuessFileWithUnknownExtension()
     {
-        if (extension_loaded('fileinfo')) {
-            $this->assertEquals('application/octet-stream', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/.unknownextension'));
-        } else {
-            $this->assertNull(MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/.unknownextension'));
-        }
+        $this->assertEquals('application/octet-stream', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/.unknownextension'));
     }
 
     public function testGuessWithIncorrectPath()
@@ -75,7 +62,7 @@ public function testGuessWithNonReadablePath()
             $this->markTestSkipped('Can not verify chmod operations on Windows');
         }
 
-        if ('root' === get_current_user()) {
+        if (!getenv('USER') || 'root' === getenv('USER')) {
             $this->markTestSkipped('This test will fail if run under superuser');
         }
 
@@ -83,7 +70,7 @@ public function testGuessWithNonReadablePath()
         touch($path);
         @chmod($path, 0333);
 
-        if (get_current_user() != 'root' && substr(sprintf('%o', fileperms($path)), -4) == '0333') {
+        if (substr(sprintf('%o', fileperms($path)), -4) == '0333') {
             $this->setExpectedException('Symfony\Component\HttpFoundation\File\Exception\AccessDeniedException');
             MimeTypeGuesser::getInstance()->guess($path);
         } else {
diff --git a/core/vendor/symfony/http-foundation/Tests/RequestTest.php b/core/vendor/symfony/http-foundation/Tests/RequestTest.php
index ed46999e87840e04ab229627c1addcc6d9c87b90..ca86abdb03f03d0502027c077f90ed7be99dd95a 100644
--- a/core/vendor/symfony/http-foundation/Tests/RequestTest.php
+++ b/core/vendor/symfony/http-foundation/Tests/RequestTest.php
@@ -980,7 +980,7 @@ public function testGetContentReturnsResourceWhenContentSetInConstructor()
 
     public function testContentAsResource()
     {
-        $resource = fopen('php://memory','r+');
+        $resource = fopen('php://memory', 'r+');
         fwrite($resource, 'My other content');
         rewind($resource);
 
diff --git a/core/vendor/symfony/http-foundation/Tests/ResponseTest.php b/core/vendor/symfony/http-foundation/Tests/ResponseTest.php
index 4319a39c2c76cb1a18e29212dadfc50cf5110667..02a62acc1101e2e0e7f286d6d38dadceca014834 100644
--- a/core/vendor/symfony/http-foundation/Tests/ResponseTest.php
+++ b/core/vendor/symfony/http-foundation/Tests/ResponseTest.php
@@ -105,6 +105,22 @@ public function testMustRevalidate()
         $this->assertFalse($response->mustRevalidate());
     }
 
+    public function testMustRevalidateWithMustRevalidateCacheControlHeader()
+    {
+        $response = new Response();
+        $response->headers->set('cache-control', 'must-revalidate');
+
+        $this->assertTrue($response->mustRevalidate());
+    }
+
+    public function testMustRevalidateWithProxyRevalidateCacheControlHeader()
+    {
+        $response = new Response();
+        $response->headers->set('cache-control', 'proxy-revalidate');
+
+        $this->assertTrue($response->mustRevalidate());
+    }
+
     public function testSetNotModified()
     {
         $response = new Response();
diff --git a/core/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php b/core/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php
index ba06fccff910365ef8539c89ccd746705fff7ed9..a6cde7296013e97baaaac147d1aae1378a669156 100644
--- a/core/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php
+++ b/core/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php
@@ -205,7 +205,7 @@ public function testReadingRequiresExactlySameId()
     }
 
     /**
-     * Simulates session_regenerate_id(true) which will require an INSERT or UPDATE (replace)
+     * Simulates session_regenerate_id(true) which will require an INSERT or UPDATE (replace).
      */
     public function testWriteDifferentSessionIdThanRead()
     {
diff --git a/core/vendor/symfony/http-kernel/Controller/ControllerResolver.php b/core/vendor/symfony/http-kernel/Controller/ControllerResolver.php
index 94df05eee415f814ce51c819f8ca7e18acbc19f6..fec0006662d1734eb920e82470e90d0ecc1a2925 100644
--- a/core/vendor/symfony/http-kernel/Controller/ControllerResolver.php
+++ b/core/vendor/symfony/http-kernel/Controller/ControllerResolver.php
@@ -157,7 +157,7 @@ protected function createController($controller)
     }
 
     /**
-     * Returns an instantiated controller
+     * Returns an instantiated controller.
      *
      * @param string $class A class name
      *
diff --git a/core/vendor/symfony/http-kernel/DataCollector/DumpDataCollector.php b/core/vendor/symfony/http-kernel/DataCollector/DumpDataCollector.php
index 09abfb125bb921e6ef038600b9a842e14b1f2289..efb0bb3e6e8799a58e967e5ced7d72354fc7a804 100644
--- a/core/vendor/symfony/http-kernel/DataCollector/DumpDataCollector.php
+++ b/core/vendor/symfony/http-kernel/DataCollector/DumpDataCollector.php
@@ -120,7 +120,7 @@ public function dump(Data $data)
         }
 
         if (false === $name) {
-            $name = strtr($file, '\\', '/');
+            $name = str_replace('\\', '/', $file);
             $name = substr($name, strrpos($name, '/') + 1);
         }
 
diff --git a/core/vendor/symfony/http-kernel/DataCollector/LoggerDataCollector.php b/core/vendor/symfony/http-kernel/DataCollector/LoggerDataCollector.php
index 0d1decda3a01d2017ee20b3447c983228023256b..12584345a248feda2fdeca6a34340b1eef24b0a1 100644
--- a/core/vendor/symfony/http-kernel/DataCollector/LoggerDataCollector.php
+++ b/core/vendor/symfony/http-kernel/DataCollector/LoggerDataCollector.php
@@ -97,15 +97,46 @@ public function getName()
 
     private function sanitizeLogs($logs)
     {
-        foreach ($logs as $i => $log) {
+        $errorContextById = array();
+        $sanitizedLogs = array();
+
+        foreach ($logs as $log) {
             $context = $this->sanitizeContext($log['context']);
-            if (isset($context['type'], $context['level']) && !($context['type'] & $context['level'])) {
-                $context['scream'] = true;
+
+            if (isset($context['type'], $context['file'], $context['line'], $context['level'])) {
+                $errorId = md5("{$context['type']}/{$context['line']}/{$context['file']}\x00{$log['message']}", true);
+                $silenced = !($context['type'] & $context['level']);
+
+                if (isset($errorContextById[$errorId])) {
+                    if (isset($errorContextById[$errorId]['errorCount'])) {
+                        ++$errorContextById[$errorId]['errorCount'];
+                    } else {
+                        $errorContextById[$errorId]['errorCount'] = 2;
+                    }
+
+                    if (!$silenced && isset($errorContextById[$errorId]['scream'])) {
+                        unset($errorContextById[$errorId]['scream']);
+                        $errorContextById[$errorId]['level'] = $context['level'];
+                    }
+
+                    continue;
+                }
+
+                $errorContextById[$errorId] = &$context;
+                if ($silenced) {
+                    $context['scream'] = true;
+                }
+
+                $log['context'] = &$context;
+                unset($context);
+            } else {
+                $log['context'] = $context;
             }
-            $logs[$i]['context'] = $context;
+
+            $sanitizedLogs[] = $log;
         }
 
-        return $logs;
+        return $sanitizedLogs;
     }
 
     private function sanitizeContext($context)
diff --git a/core/vendor/symfony/http-kernel/DataCollector/Util/ValueExporter.php b/core/vendor/symfony/http-kernel/DataCollector/Util/ValueExporter.php
index 20d60748955c1ad4ce7c6631dd25c1b662d8e3ff..d2f08986059683525ba7cf95486f741224984f49 100644
--- a/core/vendor/symfony/http-kernel/DataCollector/Util/ValueExporter.php
+++ b/core/vendor/symfony/http-kernel/DataCollector/Util/ValueExporter.php
@@ -54,7 +54,7 @@ public function exportValue($value, $depth = 1, $deep = false)
                 return sprintf("[\n%s%s\n%s]", $indent, implode(sprintf(", \n%s", $indent), $a), str_repeat('  ', $depth - 1));
             }
 
-            return sprintf("[%s]", implode(', ', $a));
+            return sprintf('[%s]', implode(', ', $a));
         }
 
         if (is_resource($value)) {
diff --git a/core/vendor/symfony/http-kernel/EventListener/AddRequestFormatsListener.php b/core/vendor/symfony/http-kernel/EventListener/AddRequestFormatsListener.php
index c37a537009e98802b4d7cabfac394527f63ebd3c..14a5d435115d74e960b775747f52a22048ddf45b 100644
--- a/core/vendor/symfony/http-kernel/EventListener/AddRequestFormatsListener.php
+++ b/core/vendor/symfony/http-kernel/EventListener/AddRequestFormatsListener.php
@@ -16,7 +16,7 @@
 use Symfony\Component\HttpKernel\Event\GetResponseEvent;
 
 /**
- * Adds configured formats to each request
+ * Adds configured formats to each request.
  *
  * @author Gildas Quemener <gildas.quemener@gmail.com>
  */
@@ -36,7 +36,7 @@ public function __construct(array $formats)
     }
 
     /**
-     * Adds request formats
+     * Adds request formats.
      *
      * @param GetResponseEvent $event
      */
diff --git a/core/vendor/symfony/http-kernel/EventListener/SurrogateListener.php b/core/vendor/symfony/http-kernel/EventListener/SurrogateListener.php
index 00f4fbf24ee742c003d576d378554b30fbc334b7..dc815a216f6c00cb920c2690d57982c76fb3930f 100644
--- a/core/vendor/symfony/http-kernel/EventListener/SurrogateListener.php
+++ b/core/vendor/symfony/http-kernel/EventListener/SurrogateListener.php
@@ -17,7 +17,7 @@
 use Symfony\Component\EventDispatcher\EventSubscriberInterface;
 
 /**
- * SurrogateListener adds a Surrogate-Control HTTP header when the Response needs to be parsed for Surrogates
+ * SurrogateListener adds a Surrogate-Control HTTP header when the Response needs to be parsed for Surrogates.
  *
  * @author Fabien Potencier <fabien@symfony.com>
  */
diff --git a/core/vendor/symfony/http-kernel/EventListener/TestSessionListener.php b/core/vendor/symfony/http-kernel/EventListener/TestSessionListener.php
index 42a0f20bd491ac759df2a9889097b8c0c84e133e..8fc8e57579a3c8be001f2d3c64c062672a74efa6 100644
--- a/core/vendor/symfony/http-kernel/EventListener/TestSessionListener.php
+++ b/core/vendor/symfony/http-kernel/EventListener/TestSessionListener.php
@@ -48,7 +48,7 @@ public function onKernelRequest(GetResponseEvent $event)
 
     /**
      * Checks if session was initialized and saves if current request is master
-     * Runs on 'kernel.response' in test environment
+     * Runs on 'kernel.response' in test environment.
      *
      * @param FilterResponseEvent $event
      */
diff --git a/core/vendor/symfony/http-kernel/HttpCache/EsiResponseCacheStrategyInterface.php b/core/vendor/symfony/http-kernel/HttpCache/EsiResponseCacheStrategyInterface.php
index 2320867d43984f1ba44efa3e3a87e6afdeec848e..5388e99c9ab376018b6d864eb5bc93a0a73341ee 100644
--- a/core/vendor/symfony/http-kernel/HttpCache/EsiResponseCacheStrategyInterface.php
+++ b/core/vendor/symfony/http-kernel/HttpCache/EsiResponseCacheStrategyInterface.php
@@ -15,8 +15,6 @@
 
 namespace Symfony\Component\HttpKernel\HttpCache;
 
-@trigger_error('The '.__NAMESPACE__.'\EsiResponseCacheStrategyInterface class is deprecated since version 2.6 and will be removed in 3.0. Use the Symfony\Component\HttpKernel\HttpCache\ResponseCacheStrategyInterface class instead.', E_USER_DEPRECATED);
-
 /**
  * ResponseCacheStrategyInterface implementations know how to compute the
  * Response cache HTTP header based on the different response cache headers.
diff --git a/core/vendor/symfony/http-kernel/HttpCache/HttpCache.php b/core/vendor/symfony/http-kernel/HttpCache/HttpCache.php
index da90600bba54975e54755cd6bbf3fd8011ee8188..f2d9972cb7173f08c43bb942da1222984ff1e5b2 100644
--- a/core/vendor/symfony/http-kernel/HttpCache/HttpCache.php
+++ b/core/vendor/symfony/http-kernel/HttpCache/HttpCache.php
@@ -156,6 +156,7 @@ public function getKernel()
      * Gets the Surrogate instance.
      *
      * @throws \LogicException
+     *
      * @return SurrogateInterface A Surrogate instance
      */
     public function getSurrogate()
diff --git a/core/vendor/symfony/http-kernel/HttpCache/ResponseCacheStrategy.php b/core/vendor/symfony/http-kernel/HttpCache/ResponseCacheStrategy.php
index d22dff1e5f08f56e4cdcec67f666f19b89dbd01e..67ffd97cf1d8c3c0ff807007e85c63062389c22a 100644
--- a/core/vendor/symfony/http-kernel/HttpCache/ResponseCacheStrategy.php
+++ b/core/vendor/symfony/http-kernel/HttpCache/ResponseCacheStrategy.php
@@ -45,7 +45,7 @@ public function add(Response $response)
             $this->maxAges[] = $response->getMaxAge();
         }
 
-        $this->embeddedResponses++;
+        ++$this->embeddedResponses;
     }
 
     /**
diff --git a/core/vendor/symfony/http-kernel/HttpCache/SurrogateInterface.php b/core/vendor/symfony/http-kernel/HttpCache/SurrogateInterface.php
index 46b788d53eb08dd3ee290e2a3957b09f4df3e470..5d65fd65a44360e09ce8054b06990cb7659aee8d 100644
--- a/core/vendor/symfony/http-kernel/HttpCache/SurrogateInterface.php
+++ b/core/vendor/symfony/http-kernel/HttpCache/SurrogateInterface.php
@@ -17,7 +17,7 @@
 interface SurrogateInterface
 {
     /**
-     * Returns surrogate name
+     * Returns surrogate name.
      *
      * @return string
      */
diff --git a/core/vendor/symfony/http-kernel/Kernel.php b/core/vendor/symfony/http-kernel/Kernel.php
index ccb89dadd7a8fcfb15464784da41596db99595af..5511a08a46ed7cdb0774ea3f970b23d4510d7786 100644
--- a/core/vendor/symfony/http-kernel/Kernel.php
+++ b/core/vendor/symfony/http-kernel/Kernel.php
@@ -60,11 +60,11 @@ abstract class Kernel implements KernelInterface, TerminableInterface
     protected $startTime;
     protected $loadClassCache;
 
-    const VERSION = '2.7.3';
-    const VERSION_ID = '20703';
+    const VERSION = '2.7.4';
+    const VERSION_ID = '20704';
     const MAJOR_VERSION = '2';
     const MINOR_VERSION = '7';
-    const RELEASE_VERSION = '3';
+    const RELEASE_VERSION = '4';
     const EXTRA_VERSION = '';
 
     const END_OF_MAINTENANCE = '05/2018';
@@ -356,7 +356,7 @@ public function getRootDir()
     {
         if (null === $this->rootDir) {
             $r = new \ReflectionObject($this);
-            $this->rootDir = str_replace('\\', '/', dirname($r->getFileName()));
+            $this->rootDir = dirname($r->getFileName());
         }
 
         return $this->rootDir;
diff --git a/core/vendor/symfony/http-kernel/Tests/DataCollector/LoggerDataCollectorTest.php b/core/vendor/symfony/http-kernel/Tests/DataCollector/LoggerDataCollectorTest.php
index 4303ab134342b8bdf834127b3db0973abdd56deb..dd1608ce7f3a285ecd9809510cd6908479a15a52 100644
--- a/core/vendor/symfony/http-kernel/Tests/DataCollector/LoggerDataCollectorTest.php
+++ b/core/vendor/symfony/http-kernel/Tests/DataCollector/LoggerDataCollectorTest.php
@@ -75,8 +75,18 @@ public function getCollectTestData()
             ),
             array(
                 1,
-                array(array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => 0), 'priority' => 100, 'priorityName' => 'DEBUG')),
-                array(array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => 0, 'scream' => true), 'priority' => 100, 'priorityName' => 'DEBUG')),
+                array(array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => 0, 'file' => __FILE__, 'line' => 123), 'priority' => 100, 'priorityName' => 'DEBUG')),
+                array(array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => 0, 'file' => __FILE__, 'line' => 123, 'scream' => true), 'priority' => 100, 'priorityName' => 'DEBUG')),
+                0,
+                1,
+            ),
+            array(
+                1,
+                array(
+                    array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => 0, 'file' => __FILE__, 'line' => 123), 'priority' => 100, 'priorityName' => 'DEBUG'),
+                    array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => -1, 'file' => __FILE__, 'line' => 123), 'priority' => 100, 'priorityName' => 'DEBUG'),
+                ),
+                array(array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => -1, 'file' => __FILE__, 'line' => 123, 'errorCount' => 2), 'priority' => 100, 'priorityName' => 'DEBUG')),
                 0,
                 1,
             ),
diff --git a/core/vendor/symfony/http-kernel/Tests/EventListener/AddRequestFormatsListenerTest.php b/core/vendor/symfony/http-kernel/Tests/EventListener/AddRequestFormatsListenerTest.php
index 26bdf70673743721b954c67458df650c0a15d7da..3a82ce0fb6ac7eaebe68f1902657f1d64459f5c8 100644
--- a/core/vendor/symfony/http-kernel/Tests/EventListener/AddRequestFormatsListenerTest.php
+++ b/core/vendor/symfony/http-kernel/Tests/EventListener/AddRequestFormatsListenerTest.php
@@ -16,7 +16,7 @@
 use Symfony\Component\HttpKernel\KernelEvents;
 
 /**
- * Test AddRequestFormatsListener class
+ * Test AddRequestFormatsListener class.
  *
  * @author Gildas Quemener <gildas.quemener@gmail.com>
  */
diff --git a/core/vendor/symfony/http-kernel/Tests/EventListener/DebugHandlersListenerTest.php b/core/vendor/symfony/http-kernel/Tests/EventListener/DebugHandlersListenerTest.php
index f3cd05e239dd3d3c6cf6c651fdc9aa97bf37eea5..4584a48a76846d4087faabcf189aa5f791f5d291 100644
--- a/core/vendor/symfony/http-kernel/Tests/EventListener/DebugHandlersListenerTest.php
+++ b/core/vendor/symfony/http-kernel/Tests/EventListener/DebugHandlersListenerTest.php
@@ -25,7 +25,7 @@
 use Symfony\Component\HttpKernel\KernelEvents;
 
 /**
- * DebugHandlersListenerTest
+ * DebugHandlersListenerTest.
  *
  * @author Nicolas Grekas <p@tchwork.com>
  */
diff --git a/core/vendor/symfony/http-kernel/Tests/EventListener/DumpListenerTest.php b/core/vendor/symfony/http-kernel/Tests/EventListener/DumpListenerTest.php
index a9b715bacc7dd2d7912adedf9e45bef73551124d..9bbdadedcff497051a47c5146a9aa554a7cb919a 100644
--- a/core/vendor/symfony/http-kernel/Tests/EventListener/DumpListenerTest.php
+++ b/core/vendor/symfony/http-kernel/Tests/EventListener/DumpListenerTest.php
@@ -19,7 +19,7 @@
 use Symfony\Component\VarDumper\VarDumper;
 
 /**
- * DumpListenerTest
+ * DumpListenerTest.
  *
  * @author Nicolas Grekas <p@tchwork.com>
  */
diff --git a/core/vendor/symfony/http-kernel/Tests/EventListener/ProfilerListenerTest.php b/core/vendor/symfony/http-kernel/Tests/EventListener/ProfilerListenerTest.php
index 84ff0d6f50bc5295747756bfb443533664816e1c..261b7fa393e20481a012832be8c4fb4a7cd3033d 100644
--- a/core/vendor/symfony/http-kernel/Tests/EventListener/ProfilerListenerTest.php
+++ b/core/vendor/symfony/http-kernel/Tests/EventListener/ProfilerListenerTest.php
@@ -23,7 +23,7 @@
 class ProfilerListenerTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * Test to ensure BC without RequestStack
+     * Test to ensure BC without RequestStack.
      *
      * @group legacy
      */
@@ -79,7 +79,7 @@ public function testKernelTerminate()
             ->disableOriginalConstructor()
             ->getMock();
 
-        $subRequest =  $this->getMockBuilder('Symfony\Component\HttpFoundation\Request')
+        $subRequest = $this->getMockBuilder('Symfony\Component\HttpFoundation\Request')
             ->disableOriginalConstructor()
             ->getMock();
 
diff --git a/core/vendor/symfony/http-kernel/Tests/KernelTest.php b/core/vendor/symfony/http-kernel/Tests/KernelTest.php
index c9e00dd68ea7504f5f5bcb63e4b224f1fb7256cf..753125ca8566cdf9282343f5a71c70b33eb18f65 100644
--- a/core/vendor/symfony/http-kernel/Tests/KernelTest.php
+++ b/core/vendor/symfony/http-kernel/Tests/KernelTest.php
@@ -765,7 +765,7 @@ public function testTerminateDelegatesTerminationOnlyForTerminableInterface()
     }
 
     /**
-     * Returns a mock for the BundleInterface
+     * Returns a mock for the BundleInterface.
      *
      * @return BundleInterface
      */
diff --git a/core/vendor/symfony/http-kernel/Tests/UriSignerTest.php b/core/vendor/symfony/http-kernel/Tests/UriSignerTest.php
index f4d07282fb8af07299fef06614088f3976895776..6b1fd9066b4f62ffaa0cbcb59daa794065b2f4ad 100644
--- a/core/vendor/symfony/http-kernel/Tests/UriSignerTest.php
+++ b/core/vendor/symfony/http-kernel/Tests/UriSignerTest.php
@@ -43,7 +43,7 @@ public function testCheckWithDifferentArgSeparator()
         $signer = new UriSigner('foobar');
 
         $this->assertSame(
-            "http://example.com/foo?baz=bay&foo=bar&_hash=rIOcC%2FF3DoEGo%2FvnESjSp7uU9zA9S%2F%2BOLhxgMexoPUM%3D",
+            'http://example.com/foo?baz=bay&foo=bar&_hash=rIOcC%2FF3DoEGo%2FvnESjSp7uU9zA9S%2F%2BOLhxgMexoPUM%3D',
             $signer->sign('http://example.com/foo?foo=bar&baz=bay')
         );
         $this->assertTrue($signer->check($signer->sign('http://example.com/foo?foo=bar&baz=bay')));
diff --git a/core/vendor/symfony/process/Pipes/AbstractPipes.php b/core/vendor/symfony/process/Pipes/AbstractPipes.php
index d8b57d07a778ad71fa35c0e2bbbc9b3e39cf9691..1ca85739f59c3762bac6ef876030eeff9eb787d9 100644
--- a/core/vendor/symfony/process/Pipes/AbstractPipes.php
+++ b/core/vendor/symfony/process/Pipes/AbstractPipes.php
@@ -54,7 +54,7 @@ protected function hasSystemCallBeenInterrupted()
     }
 
     /**
-     * Unblocks streams
+     * Unblocks streams.
      */
     protected function unblock()
     {
diff --git a/core/vendor/symfony/process/Pipes/UnixPipes.php b/core/vendor/symfony/process/Pipes/UnixPipes.php
index b3841031c4c4ed14a18d96c87fabbc6f42016188..f8a0d1997dc3689b622c47d98e9bcc9a4d91deb7 100644
--- a/core/vendor/symfony/process/Pipes/UnixPipes.php
+++ b/core/vendor/symfony/process/Pipes/UnixPipes.php
@@ -200,7 +200,7 @@ public function areOpen()
     }
 
     /**
-     * Creates a new UnixPipes instance
+     * Creates a new UnixPipes instance.
      *
      * @param Process         $process
      * @param string|resource $input
diff --git a/core/vendor/symfony/process/Pipes/WindowsPipes.php b/core/vendor/symfony/process/Pipes/WindowsPipes.php
index 01dd5d0600f2042e28bba72c250e6761076f426d..b20f3ec34dd44b3d5d082b3381ee2d6a5a8077ee 100644
--- a/core/vendor/symfony/process/Pipes/WindowsPipes.php
+++ b/core/vendor/symfony/process/Pipes/WindowsPipes.php
@@ -173,7 +173,7 @@ public static function create(Process $process, $input)
     }
 
     /**
-     * Removes temporary files
+     * Removes temporary files.
      */
     private function removeFiles()
     {
@@ -186,7 +186,7 @@ private function removeFiles()
     }
 
     /**
-     * Writes input to stdin
+     * Writes input to stdin.
      *
      * @param bool $blocking
      * @param bool $close
diff --git a/core/vendor/symfony/process/Tests/AbstractProcessTest.php b/core/vendor/symfony/process/Tests/AbstractProcessTest.php
index 2add8cc9385285cae1b8013a612c238ee67799ac..93b5779ad2134c55265206774e90309a6e8729b3 100644
--- a/core/vendor/symfony/process/Tests/AbstractProcessTest.php
+++ b/core/vendor/symfony/process/Tests/AbstractProcessTest.php
@@ -172,6 +172,9 @@ public function testProcessPipes($code, $size)
      */
     public function testSetStreamAsInput($code, $size)
     {
+        if ('\\' === DIRECTORY_SEPARATOR) {
+            $this->markTestIncomplete('This test fails with a timeout on Windows, can someone investigate please?');
+        }
         $expected = str_repeat(str_repeat('*', 1024), $size).'!';
         $expectedLength = (1024 * $size) + 1;
 
@@ -179,7 +182,7 @@ public function testSetStreamAsInput($code, $size)
         fwrite($stream, $expected);
         rewind($stream);
 
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg($code)));
+        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg($code)), null, null, null, 5);
         $p->setInput($stream);
         $p->run();
 
@@ -524,7 +527,7 @@ public function testMustRun()
         $process = $this->getProcess('echo foo');
 
         $this->assertSame($process, $process->mustRun());
-        $this->assertEquals("foo".PHP_EOL, $process->getOutput());
+        $this->assertEquals('foo'.PHP_EOL, $process->getOutput());
     }
 
     public function testSuccessfulMustRunHasCorrectExitCode()
@@ -559,7 +562,7 @@ public function testStartIsNonBlocking()
         $start = microtime(true);
         $process->start();
         $end = microtime(true);
-        $this->assertLessThan(0.2, $end-$start);
+        $this->assertLessThan(0.4, $end - $start);
         $process->wait();
     }
 
@@ -637,8 +640,10 @@ public function testIsSuccessfulOnlyAfterTerminated()
     {
         $process = $this->getProcess(self::$phpBin.' -r "sleep(1);"');
         $process->start();
+
+        $this->assertFalse($process->isSuccessful());
+
         while ($process->isRunning()) {
-            $this->assertFalse($process->isSuccessful());
             usleep(300000);
         }
 
@@ -844,6 +849,9 @@ public function testIdleTimeout()
 
     public function testIdleTimeoutNotExceededWhenOutputIsSent()
     {
+        if ('\\' === DIRECTORY_SEPARATOR) {
+            $this->markTestIncomplete('This test fails with a timeout on Windows, can someone investigate please?');
+        }
         $process = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 30; while ($n--) {echo "foo\n"; usleep(100000); }')));
         $process->setTimeout(2);
         $process->setIdleTimeout(1);
diff --git a/core/vendor/symfony/process/Tests/ProcessFailedExceptionTest.php b/core/vendor/symfony/process/Tests/ProcessFailedExceptionTest.php
index b028395f9b4de60a18e69954c316d45b72960680..de37353f9175276b8673f50855d27628c1cb4ac8 100644
--- a/core/vendor/symfony/process/Tests/ProcessFailedExceptionTest.php
+++ b/core/vendor/symfony/process/Tests/ProcessFailedExceptionTest.php
@@ -91,7 +91,7 @@ public function testProcessFailedExceptionPopulatesInformationFromProcessOutput(
 
     /**
      * Tests that ProcessFailedException does not extract information from
-     * process output if it was previously disabled
+     * process output if it was previously disabled.
      */
     public function testDisabledOutputInFailedExceptionDoesNotPopulateOutput()
     {
diff --git a/core/vendor/symfony/routing/Loader/AnnotationClassLoader.php b/core/vendor/symfony/routing/Loader/AnnotationClassLoader.php
index da881ef2956b8ce234fbc8a0f1728c2bb2a1ef61..7b0ef25b205be78851b97cdf827d279549ce3e1a 100644
--- a/core/vendor/symfony/routing/Loader/AnnotationClassLoader.php
+++ b/core/vendor/symfony/routing/Loader/AnnotationClassLoader.php
@@ -139,7 +139,7 @@ protected function addRoute(RouteCollection $collection, $annot, $globals, \Refl
 
         $defaults = array_replace($globals['defaults'], $annot->getDefaults());
         foreach ($method->getParameters() as $param) {
-            if (!isset($defaults[$param->getName()]) && $param->isOptional()) {
+            if (!isset($defaults[$param->getName()]) && $param->isDefaultValueAvailable()) {
                 $defaults[$param->getName()] = $param->getDefaultValue();
             }
         }
diff --git a/core/vendor/symfony/routing/Router.php b/core/vendor/symfony/routing/Router.php
index e2651ef8b93ae32985f4dcd88758aba32ce87511..2cbbb2bdad3429d642366b08c09de4aa41e27c4f 100644
--- a/core/vendor/symfony/routing/Router.php
+++ b/core/vendor/symfony/routing/Router.php
@@ -355,7 +355,9 @@ public function addExpressionLanguageProvider(ExpressionFunctionProviderInterfac
 
     /**
      * This method is public because it needs to be callable from a closure in PHP 5.3. It should be converted back to protected in 3.0.
+     *
      * @internal
+     *
      * @return GeneratorDumperInterface
      */
     public function getGeneratorDumperInstance()
@@ -365,7 +367,9 @@ public function getGeneratorDumperInstance()
 
     /**
      * This method is public because it needs to be callable from a closure in PHP 5.3. It should be converted back to protected in 3.0.
+     *
      * @internal
+     *
      * @return MatcherDumperInterface
      */
     public function getMatcherDumperInstance()
diff --git a/core/vendor/symfony/routing/Tests/Fixtures/OtherAnnotatedClasses/VariadicClass.php b/core/vendor/symfony/routing/Tests/Fixtures/OtherAnnotatedClasses/VariadicClass.php
new file mode 100644
index 0000000000000000000000000000000000000000..729c9b4d07b38c385a1af04589c457e9aec77eb8
--- /dev/null
+++ b/core/vendor/symfony/routing/Tests/Fixtures/OtherAnnotatedClasses/VariadicClass.php
@@ -0,0 +1,19 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Routing\Tests\Fixtures\OtherAnnotatedClasses;
+
+class VariadicClass
+{
+    public function routeAction(...$params)
+    {
+    }
+}
diff --git a/core/vendor/symfony/routing/Tests/Loader/AnnotationClassLoaderTest.php b/core/vendor/symfony/routing/Tests/Loader/AnnotationClassLoaderTest.php
index 5f8f4945efe175976974332e3d438279a080fc99..83bf7108fb28b55e0deed2e43d78ad7703b31ed3 100644
--- a/core/vendor/symfony/routing/Tests/Loader/AnnotationClassLoaderTest.php
+++ b/core/vendor/symfony/routing/Tests/Loader/AnnotationClassLoaderTest.php
@@ -16,6 +16,7 @@
 class AnnotationClassLoaderTest extends AbstractAnnotationLoaderTest
 {
     protected $loader;
+    private $reader;
 
     protected function setUp()
     {
@@ -151,14 +152,14 @@ public function testClassRouteLoad()
         $classRouteData = array(
             'path' => '/prefix',
             'schemes' => array('https'),
-            'methods' => array('GET')
+            'methods' => array('GET'),
         );
 
         $methodRouteData = array(
             'name' => 'route1',
             'path' => '/path',
             'schemes' => array('http'),
-            'methods' => array('POST', 'PUT')
+            'methods' => array('POST', 'PUT'),
         );
 
         $this->reader
diff --git a/core/vendor/symfony/routing/Tests/Loader/AnnotationFileLoaderTest.php b/core/vendor/symfony/routing/Tests/Loader/AnnotationFileLoaderTest.php
index f0a8a0e32953994bc937a4107b98bb8d229f668c..9a83994f9a7cf37bd5265581e0b9da4e6e62b61f 100644
--- a/core/vendor/symfony/routing/Tests/Loader/AnnotationFileLoaderTest.php
+++ b/core/vendor/symfony/routing/Tests/Loader/AnnotationFileLoaderTest.php
@@ -13,6 +13,7 @@
 
 use Symfony\Component\Routing\Loader\AnnotationFileLoader;
 use Symfony\Component\Config\FileLocator;
+use Symfony\Component\Routing\Annotation\Route;
 
 class AnnotationFileLoaderTest extends AbstractAnnotationLoaderTest
 {
@@ -34,6 +35,19 @@ public function testLoad()
         $this->loader->load(__DIR__.'/../Fixtures/AnnotatedClasses/FooClass.php');
     }
 
+    /**
+     * @requires PHP 5.6
+     */
+    public function testLoadVariadic()
+    {
+        $route = new Route(array('path' => '/path/to/{id}'));
+        $this->reader->expects($this->once())->method('getClassAnnotation');
+        $this->reader->expects($this->once())->method('getMethodAnnotations')
+            ->will($this->returnValue(array($route)));
+
+        $this->loader->load(__DIR__.'/../Fixtures/OtherAnnotatedClasses/VariadicClass.php');
+    }
+
     public function testSupports()
     {
         $fixture = __DIR__.'/../Fixtures/annotated.php';
diff --git a/core/vendor/symfony/serializer/Encoder/JsonDecode.php b/core/vendor/symfony/serializer/Encoder/JsonDecode.php
index 1067296f9a5881b48c55eee307b7f29cffac56f6..5f5f2899f5fff4154d4b2a707f7fbf3f7586f93f 100644
--- a/core/vendor/symfony/serializer/Encoder/JsonDecode.php
+++ b/core/vendor/symfony/serializer/Encoder/JsonDecode.php
@@ -57,7 +57,6 @@ public function __construct($associative = false, $depth = 512)
      *
      * @deprecated since version 2.5, to be removed in 3.0.
      *             The {@self decode()} method throws an exception if error found.
-     *
      * @see http://php.net/manual/en/function.json-last-error.php json_last_error
      */
     public function getLastError()
diff --git a/core/vendor/symfony/serializer/Encoder/JsonEncode.php b/core/vendor/symfony/serializer/Encoder/JsonEncode.php
index 37f384b25756d2fe5600b66c6af44a9dc42513e5..3a6b2fdbbb1a91ecef3fb7dfd1abed5c140191a6 100644
--- a/core/vendor/symfony/serializer/Encoder/JsonEncode.php
+++ b/core/vendor/symfony/serializer/Encoder/JsonEncode.php
@@ -35,7 +35,6 @@ public function __construct($bitmask = 0)
      *
      * @deprecated since version 2.5, to be removed in 3.0.
      *             The {@self encode()} throws an exception if error found.
-     *
      * @see http://php.net/manual/en/function.json-last-error.php json_last_error
      */
     public function getLastError()
diff --git a/core/vendor/symfony/serializer/Exception/CircularReferenceException.php b/core/vendor/symfony/serializer/Exception/CircularReferenceException.php
index b2977b970608ae4ae2c2a2a5e4c1e0b16d5b00d2..dc84183fc7d95f67f09706d51819bbd832441090 100644
--- a/core/vendor/symfony/serializer/Exception/CircularReferenceException.php
+++ b/core/vendor/symfony/serializer/Exception/CircularReferenceException.php
@@ -12,7 +12,7 @@
 namespace Symfony\Component\Serializer\Exception;
 
 /**
- * CircularReferenceException
+ * CircularReferenceException.
  *
  * @author Kévin Dunglas <dunglas@gmail.com>
  */
diff --git a/core/vendor/symfony/serializer/Exception/MappingException.php b/core/vendor/symfony/serializer/Exception/MappingException.php
index 8b63dd0a6d3455babaf1dee920f5ace2967f8f3b..4df4eec3903ac9be8d4dbf398e15f371567fdcf8 100644
--- a/core/vendor/symfony/serializer/Exception/MappingException.php
+++ b/core/vendor/symfony/serializer/Exception/MappingException.php
@@ -12,7 +12,7 @@
 namespace Symfony\Component\Serializer\Exception;
 
 /**
- * MappingException
+ * MappingException.
  *
  * @author Kévin Dunglas <dunglas@gmail.com>
  */
diff --git a/core/vendor/symfony/serializer/Mapping/Factory/ClassMetadataFactory.php b/core/vendor/symfony/serializer/Mapping/Factory/ClassMetadataFactory.php
index 344d633b26cda2d4ff0f5508a2ee7f0c79b66baf..3a354e354e9e312cc2987fa112020d2cf2c3e7bc 100644
--- a/core/vendor/symfony/serializer/Mapping/Factory/ClassMetadataFactory.php
+++ b/core/vendor/symfony/serializer/Mapping/Factory/ClassMetadataFactory.php
@@ -38,7 +38,7 @@ class ClassMetadataFactory implements ClassMetadataFactoryInterface
 
     /**
      * @param LoaderInterface $loader
-     * @param Cache|null $cache
+     * @param Cache|null      $cache
      */
     public function __construct(LoaderInterface $loader, Cache $cache = null)
     {
diff --git a/core/vendor/symfony/serializer/Mapping/Loader/YamlFileLoader.php b/core/vendor/symfony/serializer/Mapping/Loader/YamlFileLoader.php
index 1c5d5e82e63f0b0c3b5900ceaef78bb2c06cc798..1c84698594e5bbc64b42d07b3a3b19599c8b9793 100644
--- a/core/vendor/symfony/serializer/Mapping/Loader/YamlFileLoader.php
+++ b/core/vendor/symfony/serializer/Mapping/Loader/YamlFileLoader.php
@@ -26,7 +26,7 @@ class YamlFileLoader extends FileLoader
     private $yamlParser;
 
     /**
-     * An array of YAML class descriptions
+     * An array of YAML class descriptions.
      *
      * @var array
      */
diff --git a/core/vendor/symfony/serializer/NameConverter/CamelCaseToSnakeCaseNameConverter.php b/core/vendor/symfony/serializer/NameConverter/CamelCaseToSnakeCaseNameConverter.php
index 27f4eee59a71a3eb5cb80dbcebcebf1c0288861e..8ef851c6528e585f572cf13205a35592f58ce378 100644
--- a/core/vendor/symfony/serializer/NameConverter/CamelCaseToSnakeCaseNameConverter.php
+++ b/core/vendor/symfony/serializer/NameConverter/CamelCaseToSnakeCaseNameConverter.php
@@ -46,7 +46,7 @@ public function normalize($propertyName)
             $snakeCasedName = '';
 
             $len = strlen($propertyName);
-            for ($i = 0; $i < $len; $i++) {
+            for ($i = 0; $i < $len; ++$i) {
                 if (ctype_upper($propertyName[$i])) {
                     $snakeCasedName .= '_'.strtolower($propertyName[$i]);
                 } else {
diff --git a/core/vendor/symfony/serializer/NameConverter/NameConverterInterface.php b/core/vendor/symfony/serializer/NameConverter/NameConverterInterface.php
index 306e6541218e032372a250795c4d4a24ce32d617..c9f66b029a9e97cdcbe147a410eb25caf017452d 100644
--- a/core/vendor/symfony/serializer/NameConverter/NameConverterInterface.php
+++ b/core/vendor/symfony/serializer/NameConverter/NameConverterInterface.php
@@ -22,6 +22,7 @@ interface NameConverterInterface
      * Converts a property name to its normalized value.
      *
      * @param string $propertyName
+     *
      * @return string
      */
     public function normalize($propertyName);
@@ -30,6 +31,7 @@ public function normalize($propertyName);
      * Converts a property name to its denormalized value.
      *
      * @param string $propertyName
+     *
      * @return string
      */
     public function denormalize($propertyName);
diff --git a/core/vendor/symfony/serializer/Normalizer/AbstractNormalizer.php b/core/vendor/symfony/serializer/Normalizer/AbstractNormalizer.php
index 93dfba9a396b513526000f033f2fa6e869f6ee9b..8cc85e5b61223e462546ed6fc4e5014367b2f589 100644
--- a/core/vendor/symfony/serializer/Normalizer/AbstractNormalizer.php
+++ b/core/vendor/symfony/serializer/Normalizer/AbstractNormalizer.php
@@ -192,7 +192,7 @@ protected function isCircularReference($object, &$context)
                 return true;
             }
 
-            $context['circular_reference_limit'][$objectHash]++;
+            ++$context['circular_reference_limit'][$objectHash];
         } else {
             $context['circular_reference_limit'][$objectHash] = 1;
         }
@@ -312,7 +312,15 @@ protected function instantiateObject(array &$data, $class, array &$context, \Ref
 
                 $allowed = $allowedAttributes === false || in_array($paramName, $allowedAttributes);
                 $ignored = in_array($paramName, $this->ignoredAttributes);
-                if ($allowed && !$ignored && array_key_exists($key, $data)) {
+                if (method_exists($constructorParameter, 'isVariadic') && $constructorParameter->isVariadic()) {
+                    if ($allowed && !$ignored && (isset($data[$key]) || array_key_exists($key, $data))) {
+                        if (!is_array($data[$paramName])) {
+                            throw new RuntimeException(sprintf('Cannot create an instance of %s from serialized data because the variadic parameter %s can only accept an array.', $class, $constructorParameter->name));
+                        }
+
+                        $params = array_merge($params, $data[$paramName]);
+                    }
+                } elseif ($allowed && !$ignored && (isset($data[$key]) || array_key_exists($key, $data))) {
                     $params[] = $data[$key];
                     // don't run set for a parameter passed to the constructor
                     unset($data[$key]);
diff --git a/core/vendor/symfony/serializer/Tests/Encoder/XmlEncoderTest.php b/core/vendor/symfony/serializer/Tests/Encoder/XmlEncoderTest.php
index 422021ae748762f83280cb7b7f6de7b9c4354877..a62de61485416cb92dc5a21c2e63a5b90008f636 100644
--- a/core/vendor/symfony/serializer/Tests/Encoder/XmlEncoderTest.php
+++ b/core/vendor/symfony/serializer/Tests/Encoder/XmlEncoderTest.php
@@ -471,13 +471,13 @@ protected function getNamespacedArray()
             '@xmlns:media' => 'http://search.yahoo.com/mrss/',
             '@xmlns:gd' => 'http://schemas.google.com/g/2005',
             '@xmlns:yt' => 'http://gdata.youtube.com/schemas/2007',
-            'qux' => "1",
-            'app:foo' => "foo",
-            'yt:bar' => array("a", "b"),
+            'qux' => '1',
+            'app:foo' => 'foo',
+            'yt:bar' => array('a', 'b'),
             'media:baz' => array(
-                'media:key' => "val",
-                'media:key2' => "val",
-                'A B' => "bar",
+                'media:key' => 'val',
+                'media:key2' => 'val',
+                'A B' => 'bar',
                 'item' => array(
                     array(
                         'title' => 'title1',
diff --git a/core/vendor/symfony/serializer/Tests/Fixtures/VariadicConstructorArgsDummy.php b/core/vendor/symfony/serializer/Tests/Fixtures/VariadicConstructorArgsDummy.php
new file mode 100644
index 0000000000000000000000000000000000000000..c04aeba0c45d1780e4ebea9af361262a4c3468ed
--- /dev/null
+++ b/core/vendor/symfony/serializer/Tests/Fixtures/VariadicConstructorArgsDummy.php
@@ -0,0 +1,27 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Serializer\Tests\Fixtures;
+
+class VariadicConstructorArgsDummy
+{
+    private $foo;
+
+    public function __construct(...$foo)
+    {
+        $this->foo = $foo;
+    }
+
+    public function getFoo()
+    {
+        return $this->foo;
+    }
+}
diff --git a/core/vendor/symfony/serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php b/core/vendor/symfony/serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
index 32d729a211476d9fbf53683556c140715b228229..53369629e6fe7936462d595d8cd07e1449f9ce26 100644
--- a/core/vendor/symfony/serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
+++ b/core/vendor/symfony/serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
@@ -209,6 +209,9 @@ public function testConstructorDenormalizeWithMissingOptionalArgument()
 
     public function testConstructorDenormalizeWithOptionalDefaultArgument()
     {
+        if (PHP_VERSION_ID <= 50316) {
+            $this->markTestSkipped('See https://bugs.php.net/62715');
+        }
         $obj = $this->normalizer->denormalize(
             array('bar' => 'test'),
             __NAMESPACE__.'\GetConstructorArgsWithDefaultValueDummy', 'any');
@@ -216,6 +219,28 @@ public function testConstructorDenormalizeWithOptionalDefaultArgument()
         $this->assertEquals('test', $obj->getBar());
     }
 
+    /**
+     * @requires PHP 5.6
+     */
+    public function testConstructorDenormalizeWithVariadicArgument()
+    {
+        $obj = $this->normalizer->denormalize(
+            array('foo' => array(1, 2, 3)),
+            'Symfony\Component\Serializer\Tests\Fixtures\VariadicConstructorArgsDummy', 'any');
+        $this->assertEquals(array(1, 2, 3), $obj->getFoo());
+    }
+
+    /**
+     * @requires PHP 5.6
+     */
+    public function testConstructorDenormalizeWithMissingVariadicArgument()
+    {
+        $obj = $this->normalizer->denormalize(
+            array(),
+            'Symfony\Component\Serializer\Tests\Fixtures\VariadicConstructorArgsDummy', 'any');
+        $this->assertEquals(array(), $obj->getFoo());
+    }
+
     public function testConstructorWithObjectDenormalize()
     {
         $data = new \stdClass();
diff --git a/core/vendor/symfony/serializer/Tests/Normalizer/ObjectNormalizerTest.php b/core/vendor/symfony/serializer/Tests/Normalizer/ObjectNormalizerTest.php
index 7d9da645c4f4e86d5f12c9560025ff695017dd3c..3080c8df80e957ba355bc5774cc4b0492e65113d 100644
--- a/core/vendor/symfony/serializer/Tests/Normalizer/ObjectNormalizerTest.php
+++ b/core/vendor/symfony/serializer/Tests/Normalizer/ObjectNormalizerTest.php
@@ -157,6 +157,9 @@ public function testConstructorDenormalizeWithMissingOptionalArgument()
 
     public function testConstructorDenormalizeWithOptionalDefaultArgument()
     {
+        if (PHP_VERSION_ID <= 50316) {
+            $this->markTestSkipped('See https://bugs.php.net/62715');
+        }
         $obj = $this->normalizer->denormalize(
             array('bar' => 'test'),
             __NAMESPACE__.'\ObjectConstructorArgsWithDefaultValueDummy', 'any');
diff --git a/core/vendor/symfony/serializer/composer.json b/core/vendor/symfony/serializer/composer.json
index 0f28b518b8ac733195f8c5e04ce86d0ed225e937..bfd3d9c87a4bec5814320eeda420fb1318256354 100644
--- a/core/vendor/symfony/serializer/composer.json
+++ b/core/vendor/symfony/serializer/composer.json
@@ -20,7 +20,7 @@
     },
     "require-dev": {
         "symfony/phpunit-bridge": "~2.7",
-        "symfony/yaml": "~2.0",
+        "symfony/yaml": "~2.0,>=2.0.5",
         "symfony/config": "~2.2",
         "symfony/property-access": "~2.3",
         "doctrine/annotations": "~1.0",
diff --git a/core/vendor/symfony/translation/DataCollector/TranslationDataCollector.php b/core/vendor/symfony/translation/DataCollector/TranslationDataCollector.php
index eb9d1e733306738726e8ca5de43b89c5fc8c2138..c3c140f4a94f9382208fbe022ddc7698e2943c3f 100644
--- a/core/vendor/symfony/translation/DataCollector/TranslationDataCollector.php
+++ b/core/vendor/symfony/translation/DataCollector/TranslationDataCollector.php
@@ -104,7 +104,7 @@ private function sanitizeCollectedMessages($messages)
                 $messages[$key]['translation'] = $this->sanitizeString($message['translation']);
                 $result[$messageId] = $message;
             } else {
-                $result[$messageId]['count']++;
+                ++$result[$messageId]['count'];
             }
 
             unset($messages[$key]);
diff --git a/core/vendor/symfony/translation/Loader/XliffFileLoader.php b/core/vendor/symfony/translation/Loader/XliffFileLoader.php
index d2b5407f82e1f5849bde569af5f5fc186336e99b..109f35b7268a21ed9ab9ea9866eebe15c56a1075 100644
--- a/core/vendor/symfony/translation/Loader/XliffFileLoader.php
+++ b/core/vendor/symfony/translation/Loader/XliffFileLoader.php
@@ -48,14 +48,14 @@ public function load($resource, $locale, $domain = 'messages')
         foreach ($xml->xpath('//xliff:trans-unit') as $translation) {
             $attributes = $translation->attributes();
 
-            if (!(isset($attributes['resname']) || isset($translation->source)) || !isset($translation->target)) {
+            if (!(isset($attributes['resname']) || isset($translation->source))) {
                 continue;
             }
 
             $source = isset($attributes['resname']) && $attributes['resname'] ? $attributes['resname'] : $translation->source;
             // If the xlf file has another encoding specified, try to convert it because
             // simple_xml will always return utf-8 encoded values
-            $target = $this->utf8ToCharset((string) $translation->target, $encoding);
+            $target = $this->utf8ToCharset((string) (isset($translation->target) ? $translation->target : $source), $encoding);
 
             $catalogue->set((string) $source, $target, $domain);
 
diff --git a/core/vendor/symfony/translation/MessageCatalogue.php b/core/vendor/symfony/translation/MessageCatalogue.php
index aa92a587fbc86b8a908681bfc00af3876737c77d..35beb3d94739ad0b1d7d55db2542d97e18aaba39 100644
--- a/core/vendor/symfony/translation/MessageCatalogue.php
+++ b/core/vendor/symfony/translation/MessageCatalogue.php
@@ -190,6 +190,13 @@ public function addCatalogue(MessageCatalogueInterface $catalogue)
     public function addFallbackCatalogue(MessageCatalogueInterface $catalogue)
     {
         // detect circular references
+        $c = $catalogue;
+        while ($c = $c->getFallbackCatalogue()) {
+            if ($c->getLocale() === $this->getLocale()) {
+                throw new \LogicException(sprintf('Circular reference detected when adding a fallback catalogue for locale "%s".', $catalogue->getLocale()));
+            }
+        }
+
         $c = $this;
         do {
             if ($c->getLocale() === $catalogue->getLocale()) {
diff --git a/core/vendor/symfony/translation/README.md b/core/vendor/symfony/translation/README.md
index 2b008629578c3c26b92610d86996ce037a13df53..2b46b517719d192a40326fd26532d76bde2b53d4 100644
--- a/core/vendor/symfony/translation/README.md
+++ b/core/vendor/symfony/translation/README.md
@@ -24,7 +24,7 @@ Resources
 
 Silex integration:
 
-https://github.com/fabpot/Silex/blob/master/src/Silex/Provider/TranslationServiceProvider.php
+https://github.com/silexphp/Silex/blob/master/src/Silex/Provider/TranslationServiceProvider.php
 
 Documentation:
 
diff --git a/core/vendor/symfony/translation/Tests/Loader/XliffFileLoaderTest.php b/core/vendor/symfony/translation/Tests/Loader/XliffFileLoaderTest.php
index c3d65b493202e875268ef34ee999e8c224fdc54d..f1de081134a282d54a8bda5ebeae21938c318b3a 100644
--- a/core/vendor/symfony/translation/Tests/Loader/XliffFileLoaderTest.php
+++ b/core/vendor/symfony/translation/Tests/Loader/XliffFileLoaderTest.php
@@ -25,6 +25,7 @@ public function testLoad()
         $this->assertEquals('en', $catalogue->getLocale());
         $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
         $this->assertSame(array(), libxml_get_errors());
+        $this->assertContainsOnly('string', $catalogue->all('domain1'));
     }
 
     public function testLoadWithInternalErrorsEnabled()
@@ -55,8 +56,7 @@ public function testIncompleteResource()
         $loader = new XliffFileLoader();
         $catalogue = $loader->load(__DIR__.'/../fixtures/resources.xlf', 'en', 'domain1');
 
-        $this->assertEquals(array('foo' => 'bar', 'key' => '', 'test' => 'with'), $catalogue->all('domain1'));
-        $this->assertFalse($catalogue->has('extra', 'domain1'));
+        $this->assertEquals(array('foo' => 'bar', 'extra' => 'extra', 'key' => '', 'test' => 'with'), $catalogue->all('domain1'));
     }
 
     public function testEncoding()
@@ -136,7 +136,8 @@ public function testLoadNotes()
 
         $this->assertEquals(array('notes' => array(array('priority' => 1, 'content' => 'foo'))), $catalogue->getMetadata('foo', 'domain1'));
         // message without target
-        $this->assertNull($catalogue->getMetadata('extra', 'domain1'));
+        $this->assertEquals(array('notes' => array(array('content' => 'bar', 'from' => 'foo'))), $catalogue->getMetadata('extra', 'domain1'));
+        // message with empty target
         $this->assertEquals(array('notes' => array(array('content' => 'baz'), array('priority' => 2, 'from' => 'bar', 'content' => 'qux'))), $catalogue->getMetadata('key', 'domain1'));
     }
 }
diff --git a/core/vendor/symfony/translation/Tests/MessageCatalogueTest.php b/core/vendor/symfony/translation/Tests/MessageCatalogueTest.php
index 7d956553d98c630ef42a630c41cf48c37ab2f07e..6f55b8cc5e8fb6fbbd1a13c1880eb4e69a8c3219 100644
--- a/core/vendor/symfony/translation/Tests/MessageCatalogueTest.php
+++ b/core/vendor/symfony/translation/Tests/MessageCatalogueTest.php
@@ -127,7 +127,7 @@ public function testAddFallbackCatalogue()
     /**
      * @expectedException \LogicException
      */
-    public function testAddFallbackCatalogueWithCircularReference()
+    public function testAddFallbackCatalogueWithParentCircularReference()
     {
         $main = new MessageCatalogue('en_US');
         $fallback = new MessageCatalogue('fr_FR');
@@ -136,6 +136,20 @@ public function testAddFallbackCatalogueWithCircularReference()
         $main->addFallbackCatalogue($fallback);
     }
 
+    /**
+     * @expectedException \LogicException
+     */
+    public function testAddFallbackCatalogueWithFallbackCircularReference()
+    {
+        $fr = new MessageCatalogue('fr');
+        $en = new MessageCatalogue('en');
+        $es = new MessageCatalogue('es');
+
+        $fr->addFallbackCatalogue($en);
+        $es->addFallbackCatalogue($en);
+        $en->addFallbackCatalogue($fr);
+    }
+
     /**
      * @expectedException \LogicException
      */
@@ -178,10 +192,10 @@ public function testMetadataSetGetDelete()
         $this->assertEquals(array(), $catalogue->getMetadata('key2', 'messages'), 'Metadata key2 is array');
 
         $catalogue->deleteMetadata('key2', 'messages');
-        $this->assertEquals(null, $catalogue->getMetadata('key2', 'messages'), 'Metadata key2 should is deleted.');
+        $this->assertNull($catalogue->getMetadata('key2', 'messages'), 'Metadata key2 should is deleted.');
 
         $catalogue->deleteMetadata('key2', 'domain');
-        $this->assertEquals(null, $catalogue->getMetadata('key2', 'domain'), 'Metadata key2 should is deleted.');
+        $this->assertNull($catalogue->getMetadata('key2', 'domain'), 'Metadata key2 should is deleted.');
     }
 
     public function testMetadataMerge()
diff --git a/core/vendor/symfony/translation/Translator.php b/core/vendor/symfony/translation/Translator.php
index 9b1b73550c57fcec8cdc1cb427bb1014b939cef1..63e116491f5e02b5cf043d11aead27acc949cca5 100644
--- a/core/vendor/symfony/translation/Translator.php
+++ b/core/vendor/symfony/translation/Translator.php
@@ -445,8 +445,9 @@ private function loadFallbackCatalogues($locale)
                 $this->doLoadCatalogue($fallback);
             }
 
-            $current->addFallbackCatalogue($this->catalogues[$fallback]);
-            $current = $this->catalogues[$fallback];
+            $fallbackCatalogue = new MessageCatalogue($fallback, $this->catalogues[$fallback]->all());
+            $current->addFallbackCatalogue($fallbackCatalogue);
+            $current = $fallbackCatalogue;
         }
     }
 
diff --git a/core/vendor/symfony/translation/composer.json b/core/vendor/symfony/translation/composer.json
index 6f1053e66caf08b1e60c20110db3047a4eac6845..e2e1587e0a4f3222e28bbf5be1388764f5ac1c8b 100644
--- a/core/vendor/symfony/translation/composer.json
+++ b/core/vendor/symfony/translation/composer.json
@@ -21,7 +21,7 @@
     "require-dev": {
         "symfony/phpunit-bridge": "~2.7",
         "symfony/config": "~2.7",
-        "symfony/intl": "~2.3",
+        "symfony/intl": "~2.4",
         "symfony/yaml": "~2.2",
         "psr/log": "~1.0"
     },
diff --git a/core/vendor/symfony/validator/Constraint.php b/core/vendor/symfony/validator/Constraint.php
index ad86f4418dc2607b1caf681006a4bea60a8304a4..1ddc1ae0a3e20ea9ebf4b40849dc77ac3a2543bd 100644
--- a/core/vendor/symfony/validator/Constraint.php
+++ b/core/vendor/symfony/validator/Constraint.php
@@ -55,13 +55,15 @@ abstract class Constraint
     const PROPERTY_CONSTRAINT = 'property';
 
     /**
-     * Maps error codes to the names of their constants
+     * Maps error codes to the names of their constants.
+     *
      * @var array
      */
     protected static $errorNames = array();
 
     /**
-     * Domain-specific data attached to a constraint
+     * Domain-specific data attached to a constraint.
+     *
      * @var mixed
      */
     public $payload;
diff --git a/core/vendor/symfony/validator/ConstraintViolationInterface.php b/core/vendor/symfony/validator/ConstraintViolationInterface.php
index 232fb5513f76813f062915b21c49fa9a728c791f..9baee2f37c62555369f8bc6d8158288437e2e1f5 100644
--- a/core/vendor/symfony/validator/ConstraintViolationInterface.php
+++ b/core/vendor/symfony/validator/ConstraintViolationInterface.php
@@ -68,6 +68,8 @@ public function getMessageTemplate();
      * @see getMessageTemplate()
      *
      * @api
+     *
+     * @deprecated since version 2.7, to be replaced by getParameters() in 3.0.
      */
     public function getMessageParameters();
 
@@ -86,6 +88,8 @@ public function getMessageParameters();
      * pluralization form (in this case "choices").
      *
      * @return int|null The number to use to pluralize of the message.
+     *
+     * @deprecated since version 2.7, to be replaced by getPlural() in 3.0.
      */
     public function getMessagePluralization();
 
diff --git a/core/vendor/symfony/validator/Constraints/CallbackValidator.php b/core/vendor/symfony/validator/Constraints/CallbackValidator.php
index eaf2f3c0114c223727604c9ad4baf55df048692a..a75e6d2f66dfbe196f2e6382fcc3e471c185df3d 100644
--- a/core/vendor/symfony/validator/Constraints/CallbackValidator.php
+++ b/core/vendor/symfony/validator/Constraints/CallbackValidator.php
@@ -54,7 +54,10 @@ public function validate($object, Constraint $constraint)
                 $method($object, $this->context);
             } elseif (is_array($method)) {
                 if (!is_callable($method)) {
-                    throw new ConstraintDefinitionException(sprintf('"%s::%s" targeted by Callback constraint is not a valid callable', $method[0], $method[1]));
+                    if (isset($method[0]) && is_object($method[0])) {
+                        $method[0] = get_class($method[0]);
+                    }
+                    throw new ConstraintDefinitionException(sprintf('%s targeted by Callback constraint is not a valid callable', json_encode($method)));
                 }
 
                 call_user_func($method, $object, $this->context);
diff --git a/core/vendor/symfony/validator/Constraints/Composite.php b/core/vendor/symfony/validator/Constraints/Composite.php
index 22a748cbf42d1d544bb3390a127c5c8318221be1..90c98620f0055e0e11ffb0147c60c02ebfdd6c9e 100644
--- a/core/vendor/symfony/validator/Constraints/Composite.php
+++ b/core/vendor/symfony/validator/Constraints/Composite.php
@@ -25,6 +25,7 @@
  * contains the nested constraints.
  *
  * @since  2.6
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 abstract class Composite extends Constraint
@@ -58,7 +59,7 @@ public function __construct($options = null)
 
         $this->initializeNestedConstraints();
 
-        /** @var Constraint[] $nestedConstraints */
+        /* @var Constraint[] $nestedConstraints */
         $compositeOption = $this->getCompositeOption();
         $nestedConstraints = $this->$compositeOption;
 
diff --git a/core/vendor/symfony/validator/Constraints/FileValidator.php b/core/vendor/symfony/validator/Constraints/FileValidator.php
index 5125a3265cdb4ed15a5153f392dfba92f7f0a45d..62a6139a6efb95e5f40a3b9eaa10213c9f02b3a0 100644
--- a/core/vendor/symfony/validator/Constraints/FileValidator.php
+++ b/core/vendor/symfony/validator/Constraints/FileValidator.php
@@ -294,7 +294,7 @@ private static function moreDecimalsThan($double, $numberOfDecimals)
 
     /**
      * Convert the limit to the smallest possible number
-     * (i.e. try "MB", then "kB", then "bytes")
+     * (i.e. try "MB", then "kB", then "bytes").
      */
     private function factorizeSizes($size, $limit, $binaryFormat)
     {
diff --git a/core/vendor/symfony/validator/Constraints/GroupSequence.php b/core/vendor/symfony/validator/Constraints/GroupSequence.php
index b74f92caa8fd770cc7e5ce611415e593a9d3daf5..a28a4422462650486b31f332b0af169a4ba22f6d 100644
--- a/core/vendor/symfony/validator/Constraints/GroupSequence.php
+++ b/core/vendor/symfony/validator/Constraints/GroupSequence.php
@@ -102,7 +102,6 @@ public function __construct(array $groups)
      * @return \Traversable The iterator
      *
      * @see \IteratorAggregate::getIterator()
-     *
      * @deprecated since version 2.5, to be removed in 3.0.
      */
     public function getIterator()
diff --git a/core/vendor/symfony/validator/Constraints/Iban.php b/core/vendor/symfony/validator/Constraints/Iban.php
index 66ce09ae1a6307b164b4cc9133e1eb5d5037e370..c4dc9856c6c396cfbcc6e5a11e73fdfc832e4506 100644
--- a/core/vendor/symfony/validator/Constraints/Iban.php
+++ b/core/vendor/symfony/validator/Constraints/Iban.php
@@ -23,11 +23,15 @@
  */
 class Iban extends Constraint
 {
+    /** @deprecated, to be removed in 3.0. */
     const TOO_SHORT_ERROR = 1;
     const INVALID_COUNTRY_CODE_ERROR = 2;
     const INVALID_CHARACTERS_ERROR = 3;
+    /** @deprecated, to be removed in 3.0. */
     const INVALID_CASE_ERROR = 4;
     const CHECKSUM_FAILED_ERROR = 5;
+    const INVALID_FORMAT_ERROR = 6;
+    const NOT_SUPPORTED_COUNTRY_CODE_ERROR = 7;
 
     protected static $errorNames = array(
         self::TOO_SHORT_ERROR => 'TOO_SHORT_ERROR',
@@ -35,6 +39,8 @@ class Iban extends Constraint
         self::INVALID_CHARACTERS_ERROR => 'INVALID_CHARACTERS_ERROR',
         self::INVALID_CASE_ERROR => 'INVALID_CASE_ERROR',
         self::CHECKSUM_FAILED_ERROR => 'CHECKSUM_FAILED_ERROR',
+        self::INVALID_FORMAT_ERROR => 'INVALID_FORMAT_ERROR',
+        self::NOT_SUPPORTED_COUNTRY_CODE_ERROR => 'NOT_SUPPORTED_COUNTRY_CODE_ERROR',
     );
 
     public $message = 'This is not a valid International Bank Account Number (IBAN).';
diff --git a/core/vendor/symfony/validator/Constraints/IbanValidator.php b/core/vendor/symfony/validator/Constraints/IbanValidator.php
index 65c22ff9c0c9772af2173df6747d2ede7ca07790..72ae00267507238ba0183ab4cefc601ba660e93e 100644
--- a/core/vendor/symfony/validator/Constraints/IbanValidator.php
+++ b/core/vendor/symfony/validator/Constraints/IbanValidator.php
@@ -25,6 +25,118 @@
  */
 class IbanValidator extends ConstraintValidator
 {
+    /**
+     * IBAN country specific formats.
+     *
+     * The first 2 characters from an IBAN format are the two-character ISO country code.
+     * The following 2 characters represent the check digits calculated from the rest of the IBAN characters.
+     * The rest are up to thirty alphanumeric characters for
+     * a BBAN (Basic Bank Account Number) which has a fixed length per country and,
+     * included within it, a bank identifier with a fixed position and a fixed length per country
+     *
+     * @link http://www.swift.com/dsp/resources/documents/IBAN_Registry.pdf
+     *
+     * @var array
+     */
+    private static $formats = array(
+        'AD' => 'AD\d{2}\d{4}\d{4}[\dA-Z]{12}', // Andorra
+        'AE' => 'AE\d{2}\d{3}\d{16}', // United Arab Emirates
+        'AL' => 'AL\d{2}\d{8}[\dA-Z]{16}', // Albania
+        'AO' => 'AO\d{2}\d{21}', // Angola
+        'AT' => 'AT\d{2}\d{5}\d{11}', // Austria
+        'AX' => 'FI\d{2}\d{6}\d{7}\d{1}', // Aland Islands
+        'AZ' => 'AZ\d{2}[A-Z]{4}[\dA-Z]{20}', // Azerbaijan
+        'BA' => 'BA\d{2}\d{3}\d{3}\d{8}\d{2}', // Bosnia and Herzegovina
+        'BE' => 'BE\d{2}\d{3}\d{7}\d{2}', // Belgium
+        'BF' => 'BF\d{2}\d{23}', // Burkina Faso
+        'BG' => 'BG\d{2}[A-Z]{4}\d{4}\d{2}[\dA-Z]{8}', // Bulgaria
+        'BH' => 'BH\d{2}[A-Z]{4}[\dA-Z]{14}', // Bahrain
+        'BI' => 'BI\d{2}\d{12}', // Burundi
+        'BJ' => 'BJ\d{2}[A-Z]{1}\d{23}', // Benin
+        'BL' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // Saint Barthelemy
+        'BR' => 'BR\d{2}\d{8}\d{5}\d{10}[A-Z][\dA-Z]', // Brazil
+        'CG' => 'CG\d{2}\d{23}', // Congo
+        'CH' => 'CH\d{2}\d{5}[\dA-Z]{12}', // Switzerland
+        'CI' => 'CI\d{2}[A-Z]{1}\d{23}', // Ivory Coast
+        'CM' => 'CM\d{2}\d{23}', // Cameron
+        'CR' => 'CR\d{2}\d{3}\d{14}', // Costa Rica
+        'CV' => 'CV\d{2}\d{21}', // Cape Verde
+        'CY' => 'CY\d{2}\d{3}\d{5}[\dA-Z]{16}', // Cyprus
+        'CZ' => 'CZ\d{2}\d{20}', // Czech Republic
+        'DE' => 'DE\d{2}\d{8}\d{10}', // Germany
+        'DO' => 'DO\d{2}[\dA-Z]{4}\d{20}', // Dominican Republic
+        'DK' => 'DK\d{2}\d{4}\d{10}', // Denmark
+        'DZ' => 'DZ\d{2}\d{20}', // Algeria
+        'EE' => 'EE\d{2}\d{2}\d{2}\d{11}\d{1}', // Estonia
+        'ES' => 'ES\d{2}\d{4}\d{4}\d{1}\d{1}\d{10}', // Spain (also includes Canary Islands, Ceuta and Melilla)
+        'FI' => 'FI\d{2}\d{6}\d{7}\d{1}', // Finland
+        'FO' => 'FO\d{2}\d{4}\d{9}\d{1}', // Faroe Islands
+        'FR' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // France
+        'GF' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // French Guyana
+        'GB' => 'GB\d{2}[A-Z]{4}\d{6}\d{8}', // United Kingdom of Great Britain and Northern Ireland
+        'GE' => 'GE\d{2}[A-Z]{2}\d{16}', // Georgia
+        'GI' => 'GI\d{2}[A-Z]{4}[\dA-Z]{15}', // Gibraltar
+        'GL' => 'GL\d{2}\d{4}\d{9}\d{1}', // Greenland
+        'GP' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // Guadeloupe
+        'GR' => 'GR\d{2}\d{3}\d{4}[\dA-Z]{16}', // Greece
+        'GT' => 'GT\d{2}[\dA-Z]{4}[\dA-Z]{20}', // Guatemala
+        'HR' => 'HR\d{2}\d{7}\d{10}', // Croatia
+        'HU' => 'HU\d{2}\d{3}\d{4}\d{1}\d{15}\d{1}', // Hungary
+        'IE' => 'IE\d{2}[A-Z]{4}\d{6}\d{8}', // Ireland
+        'IL' => 'IL\d{2}\d{3}\d{3}\d{13}', // Israel
+        'IR' => 'IR\d{2}\d{22}', // Iran
+        'IS' => 'IS\d{2}\d{4}\d{2}\d{6}\d{10}', // Iceland
+        'IT' => 'IT\d{2}[A-Z]{1}\d{5}\d{5}[\dA-Z]{12}', // Italy
+        'JO' => 'JO\d{2}[A-Z]{4}\d{4}[\dA-Z]{18}', // Jordan
+        'KW' => 'KW\d{2}[A-Z]{4}\d{22}', // KUWAIT
+        'KZ' => 'KZ\d{2}\d{3}[\dA-Z]{13}', // Kazakhstan
+        'LB' => 'LB\d{2}\d{4}[\dA-Z]{20}', // LEBANON
+        'LI' => 'LI\d{2}\d{5}[\dA-Z]{12}', // Liechtenstein (Principality of)
+        'LT' => 'LT\d{2}\d{5}\d{11}', // Lithuania
+        'LU' => 'LU\d{2}\d{3}[\dA-Z]{13}', // Luxembourg
+        'LV' => 'LV\d{2}[A-Z]{4}[\dA-Z]{13}', // Latvia
+        'MC' => 'MC\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // Monaco
+        'MD' => 'MD\d{2}[\dA-Z]{2}[\dA-Z]{18}', // Moldova
+        'ME' => 'ME\d{2}\d{3}\d{13}\d{2}', // Montenegro
+        'MF' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // Saint Martin (French part)
+        'MG' => 'MG\d{2}\d{23}', // Madagascar
+        'MK' => 'MK\d{2}\d{3}[\dA-Z]{10}\d{2}', // Macedonia, Former Yugoslav Republic of
+        'ML' => 'ML\d{2}[A-Z]{1}\d{23}', // Mali
+        'MQ' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // Martinique
+        'MR' => 'MR13\d{5}\d{5}\d{11}\d{2}', // Mauritania
+        'MT' => 'MT\d{2}[A-Z]{4}\d{5}[\dA-Z]{18}', // Malta
+        'MU' => 'MU\d{2}[A-Z]{4}\d{2}\d{2}\d{12}\d{3}[A-Z]{3}', // Mauritius
+        'MZ' => 'MZ\d{2}\d{21}', // Mozambique
+        'NC' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // New Caledonia
+        'NL' => 'NL\d{2}[A-Z]{4}\d{10}', // The Netherlands
+        'NO' => 'NO\d{2}\d{4}\d{6}\d{1}', // Norway
+        'PF' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // French Polynesia
+        'PK' => 'PK\d{2}[A-Z]{4}[\dA-Z]{16}', // Pakistan
+        'PL' => 'PL\d{2}\d{8}\d{16}', // Poland
+        'PM' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // Saint Pierre et Miquelon
+        'PS' => 'PS\d{2}[A-Z]{4}[\dA-Z]{21}', // Palestine, State of
+        'PT' => 'PT\d{2}\d{4}\d{4}\d{11}\d{2}', // Portugal (plus Azores and Madeira)
+        'QA' => 'QA\d{2}[A-Z]{4}[\dA-Z]{21}', // Qatar
+        'RE' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // Reunion
+        'RO' => 'RO\d{2}[A-Z]{4}[\dA-Z]{16}', // Romania
+        'RS' => 'RS\d{2}\d{3}\d{13}\d{2}', // Serbia
+        'SA' => 'SA\d{2}\d{2}[\dA-Z]{18}', // Saudi Arabia
+        'SE' => 'SE\d{2}\d{3}\d{16}\d{1}', // Sweden
+        'SI' => 'SI\d{2}\d{5}\d{8}\d{2}', // Slovenia
+        'SK' => 'SK\d{2}\d{4}\d{6}\d{10}', // Slovak Republic
+        'SM' => 'SM\d{2}[A-Z]{1}\d{5}\d{5}[\dA-Z]{12}', // San Marino
+        'SN' => 'SN\d{2}[A-Z]{1}\d{23}', // Senegal
+        'TF' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // French Southern Territories
+        'TL' => 'TL\d{2}\d{3}\d{14}\d{2}', // Timor-Leste
+        'TN' => 'TN59\d{2}\d{3}\d{13}\d{2}', // Tunisia
+        'TR' => 'TR\d{2}\d{5}[\dA-Z]{1}[\dA-Z]{16}', // Turkey
+        'UA' => 'UA\d{2}[A-Z]{6}[\dA-Z]{19}', // Ukraine
+        'VG' => 'VG\d{2}[A-Z]{4}\d{16}', // Virgin Islands, British
+        'WF' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // Wallis and Futuna Islands
+        'XK' => 'XK\d{2}\d{4}\d{10}\d{2}', // Republic of Kosovo
+        'YT' => 'FR\d{2}\d{5}\d{5}[\dA-Z]{11}\d{2}', // Mayotte
+    );
+
     /**
      * {@inheritdoc}
      */
@@ -44,28 +156,30 @@ public function validate($value, Constraint $constraint)
 
         $value = (string) $value;
 
-        // Remove spaces
-        $canonicalized = str_replace(' ', '', $value);
+        // Remove spaces and convert to uppercase
+        $canonicalized = str_replace(' ', '', strtoupper($value));
 
-        // The IBAN must have at least 4 characters...
-        if (strlen($canonicalized) < 4) {
+        // The IBAN must contain only digits and characters...
+        if (!ctype_alnum($canonicalized)) {
             if ($this->context instanceof ExecutionContextInterface) {
                 $this->context->buildViolation($constraint->message)
                     ->setParameter('{{ value }}', $this->formatValue($value))
-                    ->setCode(Iban::TOO_SHORT_ERROR)
+                    ->setCode(Iban::INVALID_CHARACTERS_ERROR)
                     ->addViolation();
             } else {
                 $this->buildViolation($constraint->message)
                     ->setParameter('{{ value }}', $this->formatValue($value))
-                    ->setCode(Iban::TOO_SHORT_ERROR)
+                    ->setCode(Iban::INVALID_CHARACTERS_ERROR)
                     ->addViolation();
             }
 
             return;
         }
 
-        // ...start with a country code...
-        if (!ctype_alpha($canonicalized{0}) || !ctype_alpha($canonicalized{1})) {
+        // ...start with a two-letter country code
+        $countryCode = substr($canonicalized, 0, 2);
+
+        if (!ctype_alpha($countryCode)) {
             if ($this->context instanceof ExecutionContextInterface) {
                 $this->context->buildViolation($constraint->message)
                     ->setParameter('{{ value }}', $this->formatValue($value))
@@ -81,34 +195,35 @@ public function validate($value, Constraint $constraint)
             return;
         }
 
-        // ...contain only digits and characters...
-        if (!ctype_alnum($canonicalized)) {
+        // ...have a format available
+        if (!array_key_exists($countryCode, self::$formats)) {
             if ($this->context instanceof ExecutionContextInterface) {
                 $this->context->buildViolation($constraint->message)
                     ->setParameter('{{ value }}', $this->formatValue($value))
-                    ->setCode(Iban::INVALID_CHARACTERS_ERROR)
+                    ->setCode(Iban::NOT_SUPPORTED_COUNTRY_CODE_ERROR)
                     ->addViolation();
             } else {
                 $this->buildViolation($constraint->message)
                     ->setParameter('{{ value }}', $this->formatValue($value))
-                    ->setCode(Iban::INVALID_CHARACTERS_ERROR)
+                    ->setCode(Iban::NOT_SUPPORTED_COUNTRY_CODE_ERROR)
                     ->addViolation();
             }
 
             return;
         }
 
-        // ...and contain uppercase characters only
-        if ($canonicalized !== strtoupper($canonicalized)) {
+        // ...and have a valid format
+        if (!preg_match('/^'.self::$formats[$countryCode].'$/', $canonicalized)
+        ) {
             if ($this->context instanceof ExecutionContextInterface) {
                 $this->context->buildViolation($constraint->message)
                     ->setParameter('{{ value }}', $this->formatValue($value))
-                    ->setCode(Iban::INVALID_CASE_ERROR)
+                    ->setCode(Iban::INVALID_FORMAT_ERROR)
                     ->addViolation();
             } else {
                 $this->buildViolation($constraint->message)
                     ->setParameter('{{ value }}', $this->formatValue($value))
-                    ->setCode(Iban::INVALID_CASE_ERROR)
+                    ->setCode(Iban::INVALID_FORMAT_ERROR)
                     ->addViolation();
             }
 
@@ -125,12 +240,12 @@ public function validate($value, Constraint $constraint)
         // data type, so we store it in a string instead.
         // e.g. 0076 2011 6238 5295 7 CH93
         //   -> 0076 2011 6238 5295 7 121893
-        $checkSum = $this->toBigInt($canonicalized);
+        $checkSum = self::toBigInt($canonicalized);
 
         // Do a modulo-97 operation on the large integer
         // We cannot use PHP's modulo operator, so we calculate the
         // modulo step-wisely instead
-        if (1 !== $this->bigModulo97($checkSum)) {
+        if (1 !== self::bigModulo97($checkSum)) {
             if ($this->context instanceof ExecutionContextInterface) {
                 $this->context->buildViolation($constraint->message)
                     ->setParameter('{{ value }}', $this->formatValue($value))
@@ -145,7 +260,7 @@ public function validate($value, Constraint $constraint)
         }
     }
 
-    private function toBigInt($string)
+    private static function toBigInt($string)
     {
         $chars = str_split($string);
         $bigInt = '';
@@ -165,7 +280,7 @@ private function toBigInt($string)
         return $bigInt;
     }
 
-    private function bigModulo97($bigInt)
+    private static function bigModulo97($bigInt)
     {
         $parts = str_split($bigInt, 7);
         $rest = 0;
diff --git a/core/vendor/symfony/validator/Constraints/Isbn.php b/core/vendor/symfony/validator/Constraints/Isbn.php
index 35cb82204e245d3a659160a073334d2da91ab4b5..3878c84194549a72df391e64638dfa264e622c2e 100644
--- a/core/vendor/symfony/validator/Constraints/Isbn.php
+++ b/core/vendor/symfony/validator/Constraints/Isbn.php
@@ -45,12 +45,14 @@ class Isbn extends Constraint
 
     /**
      * @deprecated since version 2.5, to be removed in 3.0. Use option "type" instead.
+     *
      * @var bool
      */
     public $isbn10 = false;
 
     /**
      * @deprecated since version 2.5, to be removed in 3.0. Use option "type" instead.
+     *
      * @var bool
      */
     public $isbn13 = false;
diff --git a/core/vendor/symfony/validator/Constraints/IsbnValidator.php b/core/vendor/symfony/validator/Constraints/IsbnValidator.php
index 301a8217718d463d85124ef020604dd6d56ba3d5..aaf52dc561c3c99ed6c66d156a3e30568f172f02 100644
--- a/core/vendor/symfony/validator/Constraints/IsbnValidator.php
+++ b/core/vendor/symfony/validator/Constraints/IsbnValidator.php
@@ -17,7 +17,7 @@
 use Symfony\Component\Validator\Exception\UnexpectedTypeException;
 
 /**
- * Validates whether the value is a valid ISBN-10 or ISBN-13
+ * Validates whether the value is a valid ISBN-10 or ISBN-13.
  *
  * @author The Whole Life To Learn <thewholelifetolearn@gmail.com>
  * @author Manuel Reinhard <manu@sprain.ch>
diff --git a/core/vendor/symfony/validator/Constraints/IssnValidator.php b/core/vendor/symfony/validator/Constraints/IssnValidator.php
index 87bf83c65251e3d3b82e5935614f912393acd2c7..000af74f282fa14472aca09a31e6c084c3fc38ed 100644
--- a/core/vendor/symfony/validator/Constraints/IssnValidator.php
+++ b/core/vendor/symfony/validator/Constraints/IssnValidator.php
@@ -156,8 +156,9 @@ public function validate($value, Constraint $constraint)
         }
 
         // Calculate a checksum. "X" equals 10.
-        $checkSum = 'X' === $canonical{7} || 'x' === $canonical{7}
-            ? 10
+        $checkSum = 'X' === $canonical{7}
+        || 'x' === $canonical{7}
+        ? 10
             : $canonical{7};
 
         for ($i = 0; $i < 7; ++$i) {
diff --git a/core/vendor/symfony/validator/Constraints/LengthValidator.php b/core/vendor/symfony/validator/Constraints/LengthValidator.php
index bfa7b19f340b10771e7bd0e52377452031a36bee..d340749207a65d74a3ff983e6ac4e337a0eca695 100644
--- a/core/vendor/symfony/validator/Constraints/LengthValidator.php
+++ b/core/vendor/symfony/validator/Constraints/LengthValidator.php
@@ -45,23 +45,25 @@ public function validate($value, Constraint $constraint)
             $charset = 'UTF-8';
         }
 
-        if (function_exists('iconv_strlen')) {
-            $length = @iconv_strlen($stringValue, $constraint->charset);
-            $invalidCharset = false === $length;
+        if ('UTF-8' === $charset) {
+            if (!preg_match('//u', $stringValue)) {
+                $invalidCharset = true;
+            } elseif (function_exists('utf8_decode')) {
+                $length = strlen(utf8_decode($stringValue));
+            } else {
+                preg_replace('/./u', '', $stringValue, -1, $length);
+            }
         } elseif (function_exists('mb_strlen')) {
-            if (mb_check_encoding($stringValue, $constraint->charset)) {
+            if (@mb_check_encoding($stringValue, $constraint->charset)) {
                 $length = mb_strlen($stringValue, $constraint->charset);
             } else {
                 $invalidCharset = true;
             }
-        } elseif ('UTF-8' !== $charset) {
-            $length = strlen($stringValue);
-        } elseif (!preg_match('//u', $stringValue)) {
-            $invalidCharset = true;
-        } elseif (function_exists('utf8_decode')) {
-            $length = strlen(utf8_decode($stringValue));
+        } elseif (function_exists('iconv_strlen')) {
+            $length = @iconv_strlen($stringValue, $constraint->charset);
+            $invalidCharset = false === $length;
         } else {
-            preg_replace('/./u', '', $stringValue, -1, $length);
+            $length = strlen($stringValue);
         }
 
         if ($invalidCharset) {
diff --git a/core/vendor/symfony/validator/Constraints/Traverse.php b/core/vendor/symfony/validator/Constraints/Traverse.php
index 4abae6c67ab34d83525c73393b3cd7255ed2eb7a..5811ad770ad6f15e471999ffebaa3d7c0d35d6da 100644
--- a/core/vendor/symfony/validator/Constraints/Traverse.php
+++ b/core/vendor/symfony/validator/Constraints/Traverse.php
@@ -18,6 +18,7 @@
  * @Annotation
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 class Traverse extends Constraint
diff --git a/core/vendor/symfony/validator/Constraints/Uuid.php b/core/vendor/symfony/validator/Constraints/Uuid.php
index 3c67a3af0c163368ad2e560407f81297e4fbc0a7..8589b959c1edcc58c0abe1a4c13ee320afd79419 100644
--- a/core/vendor/symfony/validator/Constraints/Uuid.php
+++ b/core/vendor/symfony/validator/Constraints/Uuid.php
@@ -45,14 +45,14 @@ class Uuid extends Constraint
     const V5_SHA1 = 5;
 
     /**
-     * Message to display when validation fails
+     * Message to display when validation fails.
      *
      * @var string
      */
     public $message = 'This is not a valid UUID.';
 
     /**
-     * Strict mode only allows UUIDs that meet the formal definition and formatting per RFC 4122
+     * Strict mode only allows UUIDs that meet the formal definition and formatting per RFC 4122.
      *
      * Set this to `false` to allow legacy formats with different dash positioning or wrapping characters
      *
@@ -61,7 +61,7 @@ class Uuid extends Constraint
     public $strict = true;
 
     /**
-     * Array of allowed versions (see version constants above)
+     * Array of allowed versions (see version constants above).
      *
      * All UUID versions are allowed by default
      *
diff --git a/core/vendor/symfony/validator/Context/ExecutionContext.php b/core/vendor/symfony/validator/Context/ExecutionContext.php
index 39f92fbc6d2a45ba3132f08341eda42b44873750..722bcc947d2f43b49b0549b26531e6f9d1f00b8f 100644
--- a/core/vendor/symfony/validator/Context/ExecutionContext.php
+++ b/core/vendor/symfony/validator/Context/ExecutionContext.php
@@ -28,6 +28,7 @@
  * The context used and created by {@link ExecutionContextFactory}.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @see ExecutionContextInterface
diff --git a/core/vendor/symfony/validator/Context/ExecutionContextFactory.php b/core/vendor/symfony/validator/Context/ExecutionContextFactory.php
index d94a806201ce4aff8276ebcd9ef27246b4491bc1..f4f01d926e0f74cd27defa12de35fcc3f7da4609 100644
--- a/core/vendor/symfony/validator/Context/ExecutionContextFactory.php
+++ b/core/vendor/symfony/validator/Context/ExecutionContextFactory.php
@@ -18,6 +18,7 @@
  * Creates new {@link ExecutionContext} instances.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @internal You should not instantiate or use this class. Code against
diff --git a/core/vendor/symfony/validator/Context/ExecutionContextFactoryInterface.php b/core/vendor/symfony/validator/Context/ExecutionContextFactoryInterface.php
index f0ee00174f7c3c8c67600f7dd1faf2b61e6bf217..e4af667d2da6a44785a6cfe4658f92bcd0eb3c8a 100644
--- a/core/vendor/symfony/validator/Context/ExecutionContextFactoryInterface.php
+++ b/core/vendor/symfony/validator/Context/ExecutionContextFactoryInterface.php
@@ -20,6 +20,7 @@
  * that is passed through the validation run.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 interface ExecutionContextFactoryInterface
diff --git a/core/vendor/symfony/validator/Context/ExecutionContextInterface.php b/core/vendor/symfony/validator/Context/ExecutionContextInterface.php
index 486520442552a34ff36e12f57038098d35b38ba0..2ef80b66f041a7becc80fde8966e4dbac49a951e 100644
--- a/core/vendor/symfony/validator/Context/ExecutionContextInterface.php
+++ b/core/vendor/symfony/validator/Context/ExecutionContextInterface.php
@@ -57,6 +57,7 @@
  * results later on.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 interface ExecutionContextInterface extends LegacyExecutionContextInterface
diff --git a/core/vendor/symfony/validator/Context/LegacyExecutionContext.php b/core/vendor/symfony/validator/Context/LegacyExecutionContext.php
index 4d5be451d91dd781a9a45afc6c8445608fa4760f..f52b359fb39cae90c867f1d4c6587b3343ea2104 100644
--- a/core/vendor/symfony/validator/Context/LegacyExecutionContext.php
+++ b/core/vendor/symfony/validator/Context/LegacyExecutionContext.php
@@ -21,6 +21,7 @@
  * An execution context that is compatible with the legacy API (< 2.5).
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @deprecated since version 2.5, to be removed in 3.0.
diff --git a/core/vendor/symfony/validator/Context/LegacyExecutionContextFactory.php b/core/vendor/symfony/validator/Context/LegacyExecutionContextFactory.php
index 9e8498a6b9da922e155ee0c294105eb627fee509..c110644e99c1bd8e800ef028b1d9ff42eab7965a 100644
--- a/core/vendor/symfony/validator/Context/LegacyExecutionContextFactory.php
+++ b/core/vendor/symfony/validator/Context/LegacyExecutionContextFactory.php
@@ -23,6 +23,7 @@
  * Implemented for backward compatibility with Symfony < 2.5.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @deprecated since version 2.5, to be removed in 3.0.
diff --git a/core/vendor/symfony/validator/Exception/UnsupportedMetadataException.php b/core/vendor/symfony/validator/Exception/UnsupportedMetadataException.php
index c6ece50b700622fb2fce7225401e020e4d1d9ecc..97cc5ffe5d92a7972cc933a470b17003ccbe712c 100644
--- a/core/vendor/symfony/validator/Exception/UnsupportedMetadataException.php
+++ b/core/vendor/symfony/validator/Exception/UnsupportedMetadataException.php
@@ -13,6 +13,7 @@
 
 /**
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 class UnsupportedMetadataException extends InvalidArgumentException
diff --git a/core/vendor/symfony/validator/Mapping/CascadingStrategy.php b/core/vendor/symfony/validator/Mapping/CascadingStrategy.php
index ff2853f4e0415a8384c202d4b61d465e64683041..2b97bdd4ca90a5d7324cd49e6112e9da78938714 100644
--- a/core/vendor/symfony/validator/Mapping/CascadingStrategy.php
+++ b/core/vendor/symfony/validator/Mapping/CascadingStrategy.php
@@ -28,6 +28,7 @@
  * implemented as bit mask in order to allow future extensions.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @see TraversalStrategy
diff --git a/core/vendor/symfony/validator/Mapping/ClassMetadataInterface.php b/core/vendor/symfony/validator/Mapping/ClassMetadataInterface.php
index bb76c2c01b4cf0bee632f4312694a8e89747b205..577440d61d8c7676131d329bdccf2ccbdd38363f 100644
--- a/core/vendor/symfony/validator/Mapping/ClassMetadataInterface.php
+++ b/core/vendor/symfony/validator/Mapping/ClassMetadataInterface.php
@@ -25,6 +25,7 @@
  * should be traversed or not.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @see MetadataInterface
diff --git a/core/vendor/symfony/validator/Mapping/Factory/LazyLoadingMetadataFactory.php b/core/vendor/symfony/validator/Mapping/Factory/LazyLoadingMetadataFactory.php
index 208dfceeb65f3043f28a7019b72a960b8233e7ec..6c5c277ed8dc47392e9db919f77bb40bcaf60b94 100644
--- a/core/vendor/symfony/validator/Mapping/Factory/LazyLoadingMetadataFactory.php
+++ b/core/vendor/symfony/validator/Mapping/Factory/LazyLoadingMetadataFactory.php
@@ -41,21 +41,21 @@
 class LazyLoadingMetadataFactory implements MetadataFactoryInterface
 {
     /**
-     * The loader for loading the class metadata
+     * The loader for loading the class metadata.
      *
      * @var LoaderInterface|null
      */
     protected $loader;
 
     /**
-     * The cache for caching class metadata
+     * The cache for caching class metadata.
      *
      * @var CacheInterface|null
      */
     protected $cache;
 
     /**
-     * The loaded metadata, indexed by class name
+     * The loaded metadata, indexed by class name.
      *
      * @var ClassMetadata[]
      */
diff --git a/core/vendor/symfony/validator/Mapping/Factory/MetadataFactoryInterface.php b/core/vendor/symfony/validator/Mapping/Factory/MetadataFactoryInterface.php
index 58736e251181ea9e5d1ee43e0f0405910d1eaa9e..6e55e771dd1aabad15e5e3470c3171b8bf1dde4e 100644
--- a/core/vendor/symfony/validator/Mapping/Factory/MetadataFactoryInterface.php
+++ b/core/vendor/symfony/validator/Mapping/Factory/MetadataFactoryInterface.php
@@ -17,6 +17,7 @@
  * Returns {@link \Symfony\Component\Validator\Mapping\MetadataInterface} instances for values.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 interface MetadataFactoryInterface extends LegacyMetadataFactoryInterface
diff --git a/core/vendor/symfony/validator/Mapping/GenericMetadata.php b/core/vendor/symfony/validator/Mapping/GenericMetadata.php
index cc0e54d3619e8427ec5eb0954a06abf782ec1169..3459074fcabf759c56d17b5033e2dc6037a922c4 100644
--- a/core/vendor/symfony/validator/Mapping/GenericMetadata.php
+++ b/core/vendor/symfony/validator/Mapping/GenericMetadata.php
@@ -24,6 +24,7 @@
  * This class supports serialization and cloning.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 class GenericMetadata implements MetadataInterface
diff --git a/core/vendor/symfony/validator/Mapping/MetadataInterface.php b/core/vendor/symfony/validator/Mapping/MetadataInterface.php
index fda1dbbbb40a0fb41cfa110da2f0609d7b173403..991962ceafd2d737b3e7bc6201e59ade697e8b9e 100644
--- a/core/vendor/symfony/validator/Mapping/MetadataInterface.php
+++ b/core/vendor/symfony/validator/Mapping/MetadataInterface.php
@@ -24,6 +24,7 @@
  * traversed or not.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @see CascadingStrategy
diff --git a/core/vendor/symfony/validator/Mapping/PropertyMetadataInterface.php b/core/vendor/symfony/validator/Mapping/PropertyMetadataInterface.php
index 79e2c799de6021386aa058d448f5214cc57e919a..8a77aa83faba5bb58c00b0f91acbee681aa57a7c 100644
--- a/core/vendor/symfony/validator/Mapping/PropertyMetadataInterface.php
+++ b/core/vendor/symfony/validator/Mapping/PropertyMetadataInterface.php
@@ -25,6 +25,7 @@
  * objects should be traversed or not.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @see MetadataInterface
diff --git a/core/vendor/symfony/validator/Mapping/TraversalStrategy.php b/core/vendor/symfony/validator/Mapping/TraversalStrategy.php
index 450a3ecc0a0a882f64061a9930c6908507e06efe..ae76857aa443f6382c8a8bff602df6991f055ae5 100644
--- a/core/vendor/symfony/validator/Mapping/TraversalStrategy.php
+++ b/core/vendor/symfony/validator/Mapping/TraversalStrategy.php
@@ -24,6 +24,7 @@
  * The traversal strategy is ignored for arrays. Arrays are always iterated.
  *
  * @since  2.1
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @see CascadingStrategy
diff --git a/core/vendor/symfony/validator/PropertyMetadataInterface.php b/core/vendor/symfony/validator/PropertyMetadataInterface.php
index 20af8a993bcda206b7104c5eca7180a31b7df442..46e7c692c85cab303c952bfd2ca1801709aca672 100644
--- a/core/vendor/symfony/validator/PropertyMetadataInterface.php
+++ b/core/vendor/symfony/validator/PropertyMetadataInterface.php
@@ -23,7 +23,6 @@
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @see MetadataInterface
- *
  * @deprecated since version 2.5, to be removed in 3.0.
  *             Use {@link Mapping\PropertyMetadataInterface} instead.
  */
diff --git a/core/vendor/symfony/validator/README.md b/core/vendor/symfony/validator/README.md
index 9014ec67240eecc46fab6e380db4cda9f6c78880..4555b9af5ece9666b8d35d3e257d731ec8b74bb0 100644
--- a/core/vendor/symfony/validator/README.md
+++ b/core/vendor/symfony/validator/README.md
@@ -109,7 +109,7 @@ Resources
 
 Silex integration:
 
-https://github.com/fabpot/Silex/blob/master/src/Silex/Provider/ValidatorServiceProvider.php
+https://github.com/silexphp/Silex/blob/master/src/Silex/Provider/ValidatorServiceProvider.php
 
 Documentation:
 
diff --git a/core/vendor/symfony/validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php b/core/vendor/symfony/validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php
index 4013fd48fe0fc50cf82ad9bfac7bfc986e34f4ad..fb85315b3334a0b1fad5f317810ad6ad64d75e8b 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php
@@ -129,6 +129,10 @@ public function testInvalidComparisonToValue($dirtyValue, $dirtyValueAsString, $
         // Make sure we have the correct version loaded
         if ($dirtyValue instanceof \DateTime || $dirtyValue instanceof \DateTimeInterface) {
             IntlTestHelper::requireIntl($this);
+
+            if (PHP_VERSION_ID < 50304 && !(extension_loaded('intl') && method_exists('IntlDateFormatter', 'setTimeZone'))) {
+                $this->markTestSkipped('Intl supports formatting DateTime objects since 5.3.4');
+            }
         }
 
         $constraint = $this->createConstraint(array('value' => $comparedValue));
diff --git a/core/vendor/symfony/validator/Tests/Constraints/CallbackValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/CallbackValidatorTest.php
index b619291665e9d2221e9c1b7b173a4c3f57e0823c..5ad8276563344b056efe8463210a67a904f330a3 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/CallbackValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/CallbackValidatorTest.php
@@ -298,7 +298,7 @@ public function testExpectValidMethods()
     {
         $object = new CallbackValidatorTest_Object();
 
-        $this->validator->validate($object, new Callback(array('foobar')));
+        $this->validator->validate($object, new Callback(array('callback' => array('foobar'))));
     }
 
     /**
@@ -308,7 +308,7 @@ public function testExpectValidCallbacks()
     {
         $object = new CallbackValidatorTest_Object();
 
-        $this->validator->validate($object, new Callback(array(array('foo', 'bar'))));
+        $this->validator->validate($object, new Callback(array('callback' => array('foo', 'bar'))));
     }
 
     /**
diff --git a/core/vendor/symfony/validator/Tests/Constraints/CompositeTest.php b/core/vendor/symfony/validator/Tests/Constraints/CompositeTest.php
index 21cb4611aa75a5153f147fc1a718068887d8efe2..eab15ed3bb8484dc89b69b89873d9af7c655ee69 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/CompositeTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/CompositeTest.php
@@ -33,6 +33,7 @@ public function getDefaultOption()
 
 /**
  * @since  2.6
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 class CompositeTest extends \PHPUnit_Framework_TestCase
diff --git a/core/vendor/symfony/validator/Tests/Constraints/CountryValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/CountryValidatorTest.php
index b13351181a43fe381fb21c6d3e104fc7401cf2a5..ba63fd4d1c482c4b77f8619b7676656c4af5e9f1 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/CountryValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/CountryValidatorTest.php
@@ -18,13 +18,6 @@
 
 class CountryValidatorTest extends AbstractConstraintValidatorTest
 {
-    protected function setUp()
-    {
-        IntlTestHelper::requireFullIntl($this);
-
-        parent::setUp();
-    }
-
     protected function getApiVersion()
     {
         return Validation::API_VERSION_2_5;
diff --git a/core/vendor/symfony/validator/Tests/Constraints/CurrencyValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/CurrencyValidatorTest.php
index e5bb060d9c9038d0ebb919bf321d2cb229ba6f8d..eeb782c1a520cc6948e7177858382ea699b88958 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/CurrencyValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/CurrencyValidatorTest.php
@@ -18,13 +18,6 @@
 
 class CurrencyValidatorTest extends AbstractConstraintValidatorTest
 {
-    protected function setUp()
-    {
-        IntlTestHelper::requireFullIntl($this);
-
-        parent::setUp();
-    }
-
     protected function getApiVersion()
     {
         return Validation::API_VERSION_2_5;
@@ -72,6 +65,8 @@ public function testValidCurrencies($currency)
      **/
     public function testValidCurrenciesWithCountrySpecificLocale($currency)
     {
+        IntlTestHelper::requireFullIntl($this);
+
         \Locale::setDefault('en_GB');
 
         $this->validator->validate($currency, new Currency());
diff --git a/core/vendor/symfony/validator/Tests/Constraints/ExpressionValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/ExpressionValidatorTest.php
index 3d4ef75978a6f2f23a78d475c92367f356d06e3b..3b6de4d4125825597ce3a96f2643ce451741c588 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/ExpressionValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/ExpressionValidatorTest.php
@@ -174,7 +174,7 @@ public function testFailingExpressionAtNestedPropertyLevel()
 
     /**
      * When validatePropertyValue() is called with a class name
-     * https://github.com/symfony/symfony/pull/11498
+     * https://github.com/symfony/symfony/pull/11498.
      */
     public function testSucceedingExpressionAtPropertyLevelWithoutRoot()
     {
@@ -191,7 +191,7 @@ public function testSucceedingExpressionAtPropertyLevelWithoutRoot()
 
     /**
      * When validatePropertyValue() is called with a class name
-     * https://github.com/symfony/symfony/pull/11498
+     * https://github.com/symfony/symfony/pull/11498.
      */
     public function testFailingExpressionAtPropertyLevelWithoutRoot()
     {
diff --git a/core/vendor/symfony/validator/Tests/Constraints/FileValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/FileValidatorTest.php
index 176b49f494387067a769555511046cd535616ff9..686b62b0911b5df8142714bdfc9e886e97d7e416 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/FileValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/FileValidatorTest.php
@@ -247,17 +247,17 @@ public function provideBinaryFormatTests()
             array(11, 10, false, '11', '10', 'bytes'),
 
             // round(size) == 1.01kB, limit == 1kB
-            array(ceil(1000*1.01), 1000, null, '1.01', '1', 'kB'),
-            array(ceil(1000*1.01), '1k', null, '1.01', '1', 'kB'),
-            array(ceil(1024*1.01), '1Ki', null, '1.01', '1', 'KiB'),
+            array(ceil(1000 * 1.01), 1000, null, '1.01', '1', 'kB'),
+            array(ceil(1000 * 1.01), '1k', null, '1.01', '1', 'kB'),
+            array(ceil(1024 * 1.01), '1Ki', null, '1.01', '1', 'KiB'),
 
-            array(ceil(1024*1.01), 1024, true, '1.01', '1', 'KiB'),
-            array(ceil(1024*1.01*1000), '1024k', true, '1010', '1000', 'KiB'),
-            array(ceil(1024*1.01), '1Ki', true, '1.01', '1', 'KiB'),
+            array(ceil(1024 * 1.01), 1024, true, '1.01', '1', 'KiB'),
+            array(ceil(1024 * 1.01 * 1000), '1024k', true, '1010', '1000', 'KiB'),
+            array(ceil(1024 * 1.01), '1Ki', true, '1.01', '1', 'KiB'),
 
-            array(ceil(1000*1.01), 1000, false, '1.01', '1', 'kB'),
-            array(ceil(1000*1.01), '1k', false, '1.01', '1', 'kB'),
-            array(ceil(1024*1.01*10), '10Ki', false, '10.34', '10.24', 'kB'),
+            array(ceil(1000 * 1.01), 1000, false, '1.01', '1', 'kB'),
+            array(ceil(1000 * 1.01), '1k', false, '1.01', '1', 'kB'),
+            array(ceil(1024 * 1.01 * 10), '10Ki', false, '10.34', '10.24', 'kB'),
         );
     }
 
@@ -266,7 +266,7 @@ public function provideBinaryFormatTests()
      */
     public function testBinaryFormat($bytesWritten, $limit, $binaryFormat, $sizeAsString, $limitAsString, $suffix)
     {
-        fseek($this->file, $bytesWritten-1, SEEK_SET);
+        fseek($this->file, $bytesWritten - 1, SEEK_SET);
         fwrite($this->file, '0');
         fclose($this->file);
 
diff --git a/core/vendor/symfony/validator/Tests/Constraints/IbanValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/IbanValidatorTest.php
index ab9839a2389682bc7a0154c5883c37c90afd89c0..e9deb11de4943e77596d366641c24aed4405ab6d 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/IbanValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/IbanValidatorTest.php
@@ -57,8 +57,8 @@ public function getValidIbans()
             array('CH9300762011623852957'), // Switzerland without spaces
             array('CH93  0076 2011 6238 5295 7'), // Switzerland with multiple spaces
 
-            //Country list
-            //http://www.rbs.co.uk/corporate/international/g0/guide-to-international-business/regulatory-information/iban/iban-example.ashx
+            // Country list
+            // http://www.rbs.co.uk/corporate/international/g0/guide-to-international-business/regulatory-information/iban/iban-example.ashx
 
             array('AL47 2121 1009 0000 0002 3569 8741'), //Albania
             array('AD12 0001 2030 2003 5910 0100'), //Andorra
@@ -114,14 +114,17 @@ public function getValidIbans()
             array('TN59 1000 6035 1835 9847 8831'), //Tunisia
             array('TR33 0006 1005 1978 6457 8413 26'), //Turkey
             array('AE07 0331 2345 6789 0123 456'), //UAE
-            array('GB 12 CPBK 0892 9965 0449 91'), //United Kingdom
+            array('GB12 CPBK 0892 9965 0449 91'), //United Kingdom
 
             //Extended country list
             //http://www.nordea.com/Our+services/International+products+and+services/Cash+Management/IBAN+countries/908462.html
+            // http://www.swift.com/dsp/resources/documents/IBAN_Registry.pdf
             array('AO06000600000100037131174'), //Angola
             array('AZ21NABZ00000000137010001944'), //Azerbaijan
             array('BH29BMAG1299123456BH00'), //Bahrain
             array('BJ11B00610100400271101192591'), //Benin
+            array('BR9700360305000010009795493P1'), // Brazil
+            array('BR1800000000141455123924100C2'), // Brazil
             array('VG96VPVG0000012345678901'), //British Virgin Islands
             array('BF1030134020015400945000643'), //Burkina Faso
             array('BI43201011067444'), //Burundi
@@ -135,6 +138,7 @@ public function getValidIbans()
             array('IR580540105180021273113007'), //Iran
             array('IL620108000000099999999'), //Israel
             array('CI05A00060174100178530011852'), //Ivory Coast
+            array('JO94CBJO0010000000000131000302'), // Jordan
             array('KZ176010251000042993'), //Kazakhstan
             array('KW74NBOK0000000000001000372151'), //Kuwait
             array('LB30099900000001001925579115'), //Lebanon
@@ -144,9 +148,12 @@ public function getValidIbans()
             array('MU17BOMM0101101030300200000MUR'), //Mauritius
             array('MZ59000100000011834194157'), //Mozambique
             array('PS92PALS000000000400123456702'), //Palestinian Territory
+            array('QA58DOHB00001234567890ABCDEFG'), //Qatar
+            array('XK051212012345678906'), //Republic of Kosovo
             array('PT50000200000163099310355'), //Sao Tome and Principe
             array('SA0380000000608010167519'), //Saudi Arabia
             array('SN12K00100152000025690007542'), //Senegal
+            array('TL380080012345678910157'), //Timor-Leste
             array('TN5914207207100707129648'), //Tunisia
             array('TR330006100519786457841326'), //Turkey
             array('AE260211000000230064016'), //United Arab Emirates
@@ -154,9 +161,268 @@ public function getValidIbans()
     }
 
     /**
-     * @dataProvider getInvalidIbans
+     * @dataProvider getIbansWithInvalidFormat
      */
-    public function testInvalidIbans($iban, $code)
+    public function testIbansWithInvalidFormat($iban)
+    {
+        $this->assertViolationRaised($iban, Iban::INVALID_FORMAT_ERROR);
+    }
+
+    public function getIbansWithInvalidFormat()
+    {
+        return array(
+            array('AL47 2121 1009 0000 0002 3569 874'), //Albania
+            array('AD12 0001 2030 2003 5910 010'), //Andorra
+            array('AT61 1904 3002 3457 320'), //Austria
+            array('AZ21 NABZ 0000 0000 1370 1000 194'), //Azerbaijan
+            array('AZ21 N1BZ 0000 0000 1370 1000 1944'), //Azerbaijan
+            array('BH67 BMAG 0000 1299 1234 5'), //Bahrain
+            array('BH67 B2AG 0000 1299 1234 56'), //Bahrain
+            array('BE62 5100 0754 7061 2'), //Belgium
+            array('BA39 1290 0794 0102 8494 4'), //Bosnia and Herzegovina
+            array('BG80 BNBG 9661 1020 3456 7'), //Bulgaria
+            array('BG80 B2BG 9661 1020 3456 78'), //Bulgaria
+            array('HR12 1001 0051 8630 0016 01'), //Croatia
+            array('CY17 0020 0128 0000 0012 0052 7600 1'), //Cyprus
+            array('CZ65 0800 0000 1920 0014 5399 1'), //Czech Republic
+            array('DK50 0040 0440 1162 431'), //Denmark
+            array('EE38 2200 2210 2014 5685 1'), //Estonia
+            array('FO97 5432 0388 8999 441'), //Faroe Islands
+            array('FI21 1234 5600 0007 851'), //Finland
+            array('FR14 2004 1010 0505 0001 3M02 6061'), //France
+            array('GE29 NB00 0000 0101 9049 171'), //Georgia
+            array('DE89 3704 0044 0532 0130 001'), //Germany
+            array('GI75 NWBK 0000 0000 7099 4531'), //Gibraltar
+            array('GR16 0110 1250 0000 0001 2300 6951'), //Greece
+            array('GL56 0444 9876 5432 101'), //Greenland
+            array('HU42 1177 3016 1111 1018 0000 0000 1'), //Hungary
+            array('IS14 0159 2600 7654 5510 7303 391'), //Iceland
+            array('IE29 AIBK 9311 5212 3456 781'), //Ireland
+            array('IL62 0108 0000 0009 9999 9991'), //Israel
+            array('IT40 S054 2811 1010 0000 0123 4561'), //Italy
+            array('LV80 BANK 0000 4351 9500 11'), //Latvia
+            array('LB62 0999 0000 0001 0019 0122 9114 1'), //Lebanon
+            array('LI21 0881 0000 2324 013A A1'), //Liechtenstein
+            array('LT12 1000 0111 0100 1000 1'), //Lithuania
+            array('LU28 0019 4006 4475 0000 1'), //Luxembourg
+            array('MK072 5012 0000 0589 84 1'), //Macedonia
+            array('MT84 MALT 0110 0001 2345 MTLC AST0 01SA'), //Malta
+            array('MU17 BOMM 0101 1010 3030 0200 000M URA'), //Mauritius
+            array('MD24 AG00 0225 1000 1310 4168 1'), //Moldova
+            array('MC93 2005 2222 1001 1223 3M44 5551'), //Monaco
+            array('ME25 5050 0001 2345 6789 511'), //Montenegro
+            array('NL39 RABO 0300 0652 641'), //Netherlands
+            array('NO93 8601 1117 9471'), //Norway
+            array('PK36 SCBL 0000 0011 2345 6702 1'), //Pakistan
+            array('PL60 1020 1026 0000 0422 7020 1111 1'), //Poland
+            array('PT50 0002 0123 1234 5678 9015 41'), //Portugal
+            array('RO49 AAAA 1B31 0075 9384 0000 1'), //Romania
+            array('SM86 U032 2509 8000 0000 0270 1001'), //San Marino
+            array('SA03 8000 0000 6080 1016 7519 1'), //Saudi Arabia
+            array('RS35 2600 0560 1001 6113 791'), //Serbia
+            array('SK31 1200 0000 1987 4263 7541 1'), //Slovak Republic
+            array('SI56 1910 0000 0123 4381'), //Slovenia
+            array('ES80 2310 0001 1800 0001 2345 1'), //Spain
+            array('SE35 5000 0000 0549 1000 0003 1'), //Sweden
+            array('CH93 0076 2011 6238 5295 71'), //Switzerland
+            array('TN59 1000 6035 1835 9847 8831 1'), //Tunisia
+            array('TR33 0006 1005 1978 6457 8413 261'), //Turkey
+            array('AE07 0331 2345 6789 0123 4561'), //UAE
+            array('GB12 CPBK 0892 9965 0449 911'), //United Kingdom
+
+            //Extended country list
+            array('AO060006000001000371311741'), //Angola
+            array('AZ21NABZ000000001370100019441'), //Azerbaijan
+            array('BH29BMAG1299123456BH001'), //Bahrain
+            array('BJ11B006101004002711011925911'), //Benin
+            array('BR9700360305000010009795493P11'), // Brazil
+            array('BR1800000000141455123924100C21'), // Brazil
+            array('VG96VPVG00000123456789011'), //British Virgin Islands
+            array('BF10301340200154009450006431'), //Burkina Faso
+            array('BI432010110674441'), //Burundi
+            array('CM21100030010005000006053061'), //Cameroon
+            array('CV640003000045470691101761'), //Cape Verde
+            array('FR76300070001100099700049421'), //Central African Republic
+            array('CG52300110002021512345678901'), //Congo
+            array('CR05152020010262840661'), //Costa Rica
+            array('DO28BAGR000000012124536113241'), //Dominican Republic
+            array('GT82TRAJ010200000012100296901'), //Guatemala
+            array('IR5805401051800212731130071'), //Iran
+            array('IL6201080000000999999991'), //Israel
+            array('CI05A000601741001785300118521'), //Ivory Coast
+            array('JO94CBJO00100000000001310003021'), // Jordan
+            array('KZ1760102510000429931'), //Kazakhstan
+            array('KW74NBOK00000000000010003721511'), //Kuwait
+            array('LB300999000000010019255791151'), //Lebanon
+            array('MG46000050300101019140160561'), //Madagascar
+            array('ML03D008901700010021200004471'), //Mali
+            array('MR13000120000100000020373721'), //Mauritania
+            array('MU17BOMM0101101030300200000MUR1'), //Mauritius
+            array('MZ590001000000118341941571'), //Mozambique
+            array('PS92PALS0000000004001234567021'), //Palestinian Territory
+            array('QA58DOHB00001234567890ABCDEFG1'), //Qatar
+            array('XK0512120123456789061'), //Republic of Kosovo
+            array('PT500002000001630993103551'), //Sao Tome and Principe
+            array('SA03800000006080101675191'), //Saudi Arabia
+            array('SN12K001001520000256900075421'), //Senegal
+            array('TL3800800123456789101571'), //Timor-Leste
+            array('TN59142072071007071296481'), //Tunisia
+            array('TR3300061005197864578413261'), //Turkey
+            array('AE2602110000002300640161'), //United Arab Emirates
+        );
+    }
+
+    /**
+     * @dataProvider getIbansWithValidFormatButIncorrectChecksum
+     */
+    public function testIbansWithValidFormatButIncorrectChecksum($iban)
+    {
+        $this->assertViolationRaised($iban, Iban::CHECKSUM_FAILED_ERROR);
+    }
+
+    public function getIbansWithValidFormatButIncorrectChecksum()
+    {
+        return array(
+            array('AL47 2121 1009 0000 0002 3569 8742'), //Albania
+            array('AD12 0001 2030 2003 5910 0101'), //Andorra
+            array('AT61 1904 3002 3457 3202'), //Austria
+            array('AZ21 NABZ 0000 0000 1370 1000 1945'), //Azerbaijan
+            array('BH67 BMAG 0000 1299 1234 57'), //Bahrain
+            array('BE62 5100 0754 7062'), //Belgium
+            array('BA39 1290 0794 0102 8495'), //Bosnia and Herzegovina
+            array('BG80 BNBG 9661 1020 3456 79'), //Bulgaria
+            array('HR12 1001 0051 8630 0016 1'), //Croatia
+            array('CY17 0020 0128 0000 0012 0052 7601'), //Cyprus
+            array('CZ65 0800 0000 1920 0014 5398'), //Czech Republic
+            array('DK50 0040 0440 1162 44'), //Denmark
+            array('EE38 2200 2210 2014 5684'), //Estonia
+            array('FO97 5432 0388 8999 43'), //Faroe Islands
+            array('FI21 1234 5600 0007 84'), //Finland
+            array('FR14 2004 1010 0505 0001 3M02 605'), //France
+            array('GE29 NB00 0000 0101 9049 16'), //Georgia
+            array('DE89 3704 0044 0532 0130 01'), //Germany
+            array('GI75 NWBK 0000 0000 7099 452'), //Gibraltar
+            array('GR16 0110 1250 0000 0001 2300 694'), //Greece
+            array('GL56 0444 9876 5432 11'), //Greenland
+            array('HU42 1177 3016 1111 1018 0000 0001'), //Hungary
+            array('IS14 0159 2600 7654 5510 7303 38'), //Iceland
+            array('IE29 AIBK 9311 5212 3456 79'), //Ireland
+            array('IL62 0108 0000 0009 9999 998'), //Israel
+            array('IT40 S054 2811 1010 0000 0123 457'), //Italy
+            array('LV80 BANK 0000 4351 9500 2'), //Latvia
+            array('LB62 0999 0000 0001 0019 0122 9115'), //Lebanon
+            array('LI21 0881 0000 2324 013A B'), //Liechtenstein
+            array('LT12 1000 0111 0100 1001'), //Lithuania
+            array('LU28 0019 4006 4475 0001'), //Luxembourg
+            array('MK072 5012 0000 0589 85'), //Macedonia
+            array('MT84 MALT 0110 0001 2345 MTLC AST0 01T'), //Malta
+            array('MU17 BOMM 0101 1010 3030 0200 000M UP'), //Mauritius
+            array('MD24 AG00 0225 1000 1310 4169'), //Moldova
+            array('MC93 2005 2222 1001 1223 3M44 554'), //Monaco
+            array('ME25 5050 0001 2345 6789 52'), //Montenegro
+            array('NL39 RABO 0300 0652 65'), //Netherlands
+            array('NO93 8601 1117 948'), //Norway
+            array('PK36 SCBL 0000 0011 2345 6703'), //Pakistan
+            array('PL60 1020 1026 0000 0422 7020 1112'), //Poland
+            array('PT50 0002 0123 1234 5678 9015 5'), //Portugal
+            array('RO49 AAAA 1B31 0075 9384 0001'), //Romania
+            array('SM86 U032 2509 8000 0000 0270 101'), //San Marino
+            array('SA03 8000 0000 6080 1016 7518'), //Saudi Arabia
+            array('RS35 2600 0560 1001 6113 78'), //Serbia
+            array('SK31 1200 0000 1987 4263 7542'), //Slovak Republic
+            array('SI56 1910 0000 0123 439'), //Slovenia
+            array('ES80 2310 0001 1800 0001 2346'), //Spain
+            array('SE35 5000 0000 0549 1000 0004'), //Sweden
+            array('CH93 0076 2011 6238 5295 8'), //Switzerland
+            array('TN59 1000 6035 1835 9847 8832'), //Tunisia
+            array('TR33 0006 1005 1978 6457 8413 27'), //Turkey
+            array('AE07 0331 2345 6789 0123 457'), //UAE
+            array('GB12 CPBK 0892 9965 0449 92'), //United Kingdom
+
+            //Extended country list
+            array('AO06000600000100037131175'), //Angola
+            array('AZ21NABZ00000000137010001945'), //Azerbaijan
+            array('BH29BMAG1299123456BH01'), //Bahrain
+            array('BJ11B00610100400271101192592'), //Benin
+            array('BR9700360305000010009795493P2'), // Brazil
+            array('BR1800000000141455123924100C3'), // Brazil
+            array('VG96VPVG0000012345678902'), //British Virgin Islands
+            array('BF1030134020015400945000644'), //Burkina Faso
+            array('BI43201011067445'), //Burundi
+            array('CM2110003001000500000605307'), //Cameroon
+            array('CV64000300004547069110177'), //Cape Verde
+            array('FR7630007000110009970004943'), //Central African Republic
+            array('CG5230011000202151234567891'), //Congo
+            array('CR0515202001026284067'), //Costa Rica
+            array('DO28BAGR00000001212453611325'), //Dominican Republic
+            array('GT82TRAJ01020000001210029691'), //Guatemala
+            array('IR580540105180021273113008'), //Iran
+            array('IL620108000000099999998'), //Israel
+            array('CI05A00060174100178530011853'), //Ivory Coast
+            array('JO94CBJO0010000000000131000303'), // Jordan
+            array('KZ176010251000042994'), //Kazakhstan
+            array('KW74NBOK0000000000001000372152'), //Kuwait
+            array('LB30099900000001001925579116'), //Lebanon
+            array('MG4600005030010101914016057'), //Madagascar
+            array('ML03D00890170001002120000448'), //Mali
+            array('MR1300012000010000002037373'), //Mauritania
+            array('MU17BOMM0101101030300200000MUP'), //Mauritius
+            array('MZ59000100000011834194158'), //Mozambique
+            array('PS92PALS000000000400123456703'), //Palestinian Territory
+            array('QA58DOHB00001234567890ABCDEFH'), //Qatar
+            array('XK051212012345678907'), //Republic of Kosovo
+            array('PT50000200000163099310356'), //Sao Tome and Principe
+            array('SA0380000000608010167518'), //Saudi Arabia
+            array('SN12K00100152000025690007543'), //Senegal
+            array('TL380080012345678910158'), //Timor-Leste
+            array('TN5914207207100707129649'), //Tunisia
+            array('TR330006100519786457841327'), //Turkey
+            array('AE260211000000230064017'), //United Arab Emirates
+        );
+    }
+
+    /**
+     * @dataProvider getUnsupportedCountryCodes
+     */
+    public function testIbansWithUnsupportedCountryCode($countryCode)
+    {
+        $this->assertViolationRaised($countryCode.'260211000000230064016', Iban::NOT_SUPPORTED_COUNTRY_CODE_ERROR);
+    }
+
+    public function getUnsupportedCountryCodes()
+    {
+        return array(
+            array('AG'),
+            array('AI'),
+            array('AQ'),
+            array('AS'),
+            array('AW'),
+        );
+    }
+
+    public function testIbansWithInvalidCharacters()
+    {
+        $this->assertViolationRaised('CH930076201162385295]', Iban::INVALID_CHARACTERS_ERROR);
+    }
+
+    /**
+     * @dataProvider getIbansWithInvalidCountryCode
+     */
+    public function testIbansWithInvalidCountryCode($iban)
+    {
+        $this->assertViolationRaised($iban, Iban::INVALID_COUNTRY_CODE_ERROR);
+    }
+
+    public function getIbansWithInvalidCountryCode()
+    {
+        return array(
+            array('0750447346'),
+            array('2X0750447346'),
+            array('A20750447346'),
+        );
+    }
+
+    private function assertViolationRaised($iban, $code)
     {
         $constraint = new Iban(array(
             'message' => 'myMessage',
@@ -169,25 +435,4 @@ public function testInvalidIbans($iban, $code)
             ->setCode($code)
             ->assertRaised();
     }
-
-    public function getInvalidIbans()
-    {
-        return array(
-            array('CH93 0076 2011 6238 5295', Iban::CHECKSUM_FAILED_ERROR),
-            array('CH930076201162385295', Iban::CHECKSUM_FAILED_ERROR),
-            array('GB29 RBOS 6016 1331 9268 19', Iban::CHECKSUM_FAILED_ERROR),
-            array('CH930072011623852957', Iban::CHECKSUM_FAILED_ERROR),
-            array('NL39 RASO 0300 0652 64', Iban::CHECKSUM_FAILED_ERROR),
-            array('NO93 8601117 947', Iban::CHECKSUM_FAILED_ERROR),
-            array('CY170020 128 0000 0012 0052 7600', Iban::CHECKSUM_FAILED_ERROR),
-            array('foo', Iban::TOO_SHORT_ERROR),
-            array('123', Iban::TOO_SHORT_ERROR),
-            array('0750447346', Iban::INVALID_COUNTRY_CODE_ERROR),
-            array('CH930076201162385295]', Iban::INVALID_CHARACTERS_ERROR),
-
-            //Ibans with lower case values are invalid
-            array('Ae260211000000230064016', Iban::INVALID_CASE_ERROR),
-            array('ae260211000000230064016', Iban::INVALID_CASE_ERROR),
-        );
-    }
 }
diff --git a/core/vendor/symfony/validator/Tests/Constraints/ImageValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/ImageValidatorTest.php
index 18f9c1bc0673db3864d13171b9a630cfcdc5d7c9..4605a06577a8a6aa154a6a2865a6c41cafc94f25 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/ImageValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/ImageValidatorTest.php
@@ -15,6 +15,9 @@
 use Symfony\Component\Validator\Constraints\ImageValidator;
 use Symfony\Component\Validator\Validation;
 
+/**
+ * @requires extension fileinfo
+ */
 class ImageValidatorTest extends AbstractConstraintValidatorTest
 {
     protected $context;
diff --git a/core/vendor/symfony/validator/Tests/Constraints/LanguageValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/LanguageValidatorTest.php
index 6f7c3900e5351dd39c578b8b10859cb2a20fda98..c10f26c88f6af71e23f02af39751f29afb0c3e37 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/LanguageValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/LanguageValidatorTest.php
@@ -28,13 +28,6 @@ protected function createValidator()
         return new LanguageValidator();
     }
 
-    protected function setUp()
-    {
-        IntlTestHelper::requireFullIntl($this);
-
-        parent::setUp();
-    }
-
     public function testNullIsValid()
     {
         $this->validator->validate(null, new Language());
@@ -102,6 +95,8 @@ public function getInvalidLanguages()
 
     public function testValidateUsingCountrySpecificLocale()
     {
+        IntlTestHelper::requireFullIntl($this);
+
         \Locale::setDefault('fr_FR');
         $existingLanguage = 'en';
 
diff --git a/core/vendor/symfony/validator/Tests/Constraints/LocaleValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/LocaleValidatorTest.php
index e5e2f3009f9f91d675fba6c3606815edc23d8a1e..c019fdf37ef13cb2e8eb5fa990003cef685594d2 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/LocaleValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/LocaleValidatorTest.php
@@ -11,7 +11,6 @@
 
 namespace Symfony\Component\Validator\Tests\Constraints;
 
-use Symfony\Component\Intl\Util\IntlTestHelper;
 use Symfony\Component\Validator\Constraints\Locale;
 use Symfony\Component\Validator\Constraints\LocaleValidator;
 use Symfony\Component\Validator\Validation;
@@ -28,13 +27,6 @@ protected function createValidator()
         return new LocaleValidator();
     }
 
-    protected function setUp()
-    {
-        IntlTestHelper::requireIntl($this);
-
-        parent::setUp();
-    }
-
     public function testNullIsValid()
     {
         $this->validator->validate(null, new Locale());
diff --git a/core/vendor/symfony/validator/Tests/Constraints/NotIdenticalToValidatorTest.php b/core/vendor/symfony/validator/Tests/Constraints/NotIdenticalToValidatorTest.php
index 1fbd80663fadda0a575e1c33aba9f96ce6bc6388..43149847b9c5aacd8eaa20decf18cf74100e60b2 100644
--- a/core/vendor/symfony/validator/Tests/Constraints/NotIdenticalToValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Constraints/NotIdenticalToValidatorTest.php
@@ -82,11 +82,6 @@ public function provideInvalidComparisons()
             array($object, '2', $object, '2', __NAMESPACE__.'\ComparisonTest_Class'),
         );
 
-        if (version_compare(PHP_VERSION, '>=', '5.5')) {
-            $immutableDate = new \DateTimeImmutable('2000-01-01');
-            $comparisons[] = array($immutableDate, 'Jan 1, 2000, 12:00 AM', $immutableDate, 'Jan 1, 2000, 12:00 AM', 'DateTime');
-        }
-
         return $comparisons;
     }
 }
diff --git a/core/vendor/symfony/validator/Tests/Mapping/ClassMetadataTest.php b/core/vendor/symfony/validator/Tests/Mapping/ClassMetadataTest.php
index 8634ac5ed67b69795393296c6249f24a0fcf268f..a238b1754aa03cd1bea013e86670a3184afd46d1 100644
--- a/core/vendor/symfony/validator/Tests/Mapping/ClassMetadataTest.php
+++ b/core/vendor/symfony/validator/Tests/Mapping/ClassMetadataTest.php
@@ -162,7 +162,7 @@ public function testMemberMetadatas()
         $this->metadata->addPropertyConstraint('firstName', new ConstraintA());
 
         $this->assertTrue($this->metadata->hasPropertyMetadata('firstName'));
-        $this->assertFalse($this->metadata->hasPropertyMetadata('non_existant_field'));
+        $this->assertFalse($this->metadata->hasPropertyMetadata('non_existent_field'));
     }
 
     public function testMergeConstraintsKeepsPrivateMembersSeparate()
diff --git a/core/vendor/symfony/validator/Tests/Validator/Abstract2Dot5ApiTest.php b/core/vendor/symfony/validator/Tests/Validator/Abstract2Dot5ApiTest.php
index 12c8d87f2ca5b43ac4db21d928b76186c33de682..6995d25817988e77c2485206a217f600c0edbeaa 100644
--- a/core/vendor/symfony/validator/Tests/Validator/Abstract2Dot5ApiTest.php
+++ b/core/vendor/symfony/validator/Tests/Validator/Abstract2Dot5ApiTest.php
@@ -30,6 +30,7 @@
  * Verifies that a validator satisfies the API of Symfony 2.5+.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 abstract class Abstract2Dot5ApiTest extends AbstractValidatorTest
@@ -108,7 +109,7 @@ public function testGroupSequenceAbortsAfterFailedGroup()
         $sequence = new GroupSequence(array('Group 1', 'Group 2', 'Group 3'));
         $violations = $this->validator->validate($entity, new Valid(), $sequence);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message 1', $violations[0]->getMessage());
     }
@@ -138,7 +139,7 @@ public function testGroupSequenceIncludesReferences()
         $sequence = new GroupSequence(array('Group 1', 'Entity'));
         $violations = $this->validator->validate($entity, new Valid(), $sequence);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Reference violation 1', $violations[0]->getMessage());
     }
@@ -157,7 +158,7 @@ public function testValidateInSeparateContext()
                 ->validate($value->reference, new Valid(), 'Group')
             ;
 
-            /** @var ConstraintViolationInterface[] $violations */
+            /* @var ConstraintViolationInterface[] $violations */
             $test->assertCount(1, $violations);
             $test->assertSame('Message value', $violations[0]->getMessage());
             $test->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -197,7 +198,7 @@ public function testValidateInSeparateContext()
 
         $violations = $this->validator->validate($entity, new Valid(), 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $test->assertSame('Separate violation', $violations[0]->getMessage());
     }
@@ -254,7 +255,7 @@ public function testValidateInContext()
 
         $violations = $this->validator->validate($entity, new Valid(), 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -318,7 +319,7 @@ public function testValidateArrayInContext()
 
         $violations = $this->validator->validate($entity, new Valid(), 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -357,7 +358,7 @@ public function testTraverseTraversableByDefault()
 
         $violations = $this->validate($traversable, new Valid(), 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -389,7 +390,7 @@ public function testTraversalEnabledOnClass()
 
         $violations = $this->validate($traversable, new Valid(), 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
     }
 
@@ -414,7 +415,7 @@ public function testTraversalDisabledOnClass()
 
         $violations = $this->validate($traversable, new Valid(), 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(0, $violations);
     }
 
@@ -452,7 +453,7 @@ public function testReferenceTraversalDisabledOnClass()
 
         $violations = $this->validate($entity, new Valid(), 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(0, $violations);
     }
 
@@ -480,7 +481,7 @@ public function testReferenceTraversalEnabledOnReferenceDisabledOnClass()
 
         $violations = $this->validate($entity, new Valid(), 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(0, $violations);
     }
 
@@ -508,7 +509,7 @@ public function testReferenceTraversalDisabledOnReferenceEnabledOnClass()
 
         $violations = $this->validate($entity, new Valid(), 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(0, $violations);
     }
 
@@ -529,7 +530,7 @@ public function testAddCustomizedViolation()
 
         $violations = $this->validator->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -543,6 +544,7 @@ public function testAddCustomizedViolation()
 
     /**
      * @expectedException \Symfony\Component\Validator\Exception\UnsupportedMetadataException
+     * @group legacy
      */
     public function testMetadataMustImplementClassMetadataInterface()
     {
@@ -560,6 +562,7 @@ public function testMetadataMustImplementClassMetadataInterface()
 
     /**
      * @expectedException \Symfony\Component\Validator\Exception\UnsupportedMetadataException
+     * @group legacy
      */
     public function testReferenceMetadataMustImplementClassMetadataInterface()
     {
@@ -611,7 +614,7 @@ public function testNoDuplicateValidationIfClassConstraintInMultipleGroups()
 
         $violations = $this->validator->validate($entity, new Valid(), array('Group 1', 'Group 2'));
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
     }
 
@@ -630,7 +633,7 @@ public function testNoDuplicateValidationIfPropertyConstraintInMultipleGroups()
 
         $violations = $this->validator->validate($entity, new Valid(), array('Group 1', 'Group 2'));
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
     }
 
diff --git a/core/vendor/symfony/validator/Tests/Validator/AbstractLegacyApiTest.php b/core/vendor/symfony/validator/Tests/Validator/AbstractLegacyApiTest.php
index 5f4167dcd8849d311302797a3a0838a6100b90fa..d78b67bee7e9a0a69d648f653866a95ad9c1fbe6 100644
--- a/core/vendor/symfony/validator/Tests/Validator/AbstractLegacyApiTest.php
+++ b/core/vendor/symfony/validator/Tests/Validator/AbstractLegacyApiTest.php
@@ -24,7 +24,9 @@
  * Verifies that a validator satisfies the API of Symfony < 2.5.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
+ * @group legacy
  */
 abstract class AbstractLegacyApiTest extends AbstractValidatorTest
 {
@@ -160,7 +162,7 @@ public function testValidateInContext()
 
         $violations = $this->validator->validate($entity, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -218,7 +220,7 @@ public function testValidateArrayInContext()
 
         $violations = $this->validator->validate($entity, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -248,7 +250,7 @@ public function testAddCustomizedViolation()
 
         $violations = $this->validator->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
diff --git a/core/vendor/symfony/validator/Tests/Validator/AbstractValidatorTest.php b/core/vendor/symfony/validator/Tests/Validator/AbstractValidatorTest.php
index 69c025d4594ee8b5fb8e1e6feadea374b3b178bf..678a3252a5a0b64941c1ec8a663c40ce25c8ce0a 100644
--- a/core/vendor/symfony/validator/Tests/Validator/AbstractValidatorTest.php
+++ b/core/vendor/symfony/validator/Tests/Validator/AbstractValidatorTest.php
@@ -24,6 +24,7 @@
 
 /**
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 abstract class AbstractValidatorTest extends \PHPUnit_Framework_TestCase
@@ -92,7 +93,7 @@ public function testValidate()
 
         $violations = $this->validate('Bernhard', $constraint, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -129,7 +130,7 @@ public function testClassConstraint()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -169,7 +170,7 @@ public function testPropertyConstraint()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -209,7 +210,7 @@ public function testGetterConstraint()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -247,7 +248,7 @@ public function testArray()
 
         $violations = $this->validate($array, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -285,7 +286,7 @@ public function testRecursiveArray()
 
         $violations = $this->validate($array, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -323,7 +324,7 @@ public function testTraversable()
 
         $violations = $this->validate($traversable, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -363,7 +364,7 @@ public function testRecursiveTraversable()
 
         $violations = $this->validate($traversable, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -402,7 +403,7 @@ public function testReferenceClassConstraint()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -444,7 +445,7 @@ public function testReferencePropertyConstraint()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -486,7 +487,7 @@ public function testReferenceGetterConstraint()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -507,7 +508,7 @@ public function testsIgnoreNullReference()
 
         $violations = $this->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(0, $violations);
     }
 
@@ -551,7 +552,7 @@ public function testArrayReference()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -591,7 +592,7 @@ public function testRecursiveArrayReference()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -619,7 +620,7 @@ public function testArrayTraversalCannotBeDisabled()
 
         $violations = $this->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
     }
 
@@ -639,7 +640,7 @@ public function testRecursiveArrayTraversalCannotBeDisabled()
 
         $violations = $this->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
     }
 
@@ -652,7 +653,7 @@ public function testIgnoreScalarsDuringArrayTraversal()
 
         $violations = $this->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(0, $violations);
     }
 
@@ -665,7 +666,7 @@ public function testIgnoreNullDuringArrayTraversal()
 
         $violations = $this->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(0, $violations);
     }
 
@@ -696,7 +697,7 @@ public function testTraversableReference()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -725,7 +726,7 @@ public function testDisableTraversableTraversal()
 
         $violations = $this->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(0, $violations);
     }
 
@@ -775,7 +776,7 @@ public function testEnableRecursiveTraversableTraversal()
 
         $violations = $this->validate($entity, null, 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -824,7 +825,7 @@ public function testValidateProperty()
 
         $violations = $this->validateProperty($entity, 'firstName', 'Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -853,7 +854,7 @@ public function testLegacyValidatePropertyFailsIfPropertiesNotSupported()
     }
 
     /**
-     * https://github.com/symfony/symfony/issues/11604
+     * https://github.com/symfony/symfony/issues/11604.
      */
     public function testValidatePropertyWithoutConstraints()
     {
@@ -904,7 +905,7 @@ public function testValidatePropertyValue()
             'Group'
         );
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -955,7 +956,7 @@ public function testValidatePropertyValueWithClassName()
             'Group'
         );
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Message value', $violations[0]->getMessage());
         $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
@@ -984,7 +985,7 @@ public function testLegacyValidatePropertyValueFailsIfPropertiesNotSupported()
     }
 
     /**
-     * https://github.com/symfony/symfony/issues/11604
+     * https://github.com/symfony/symfony/issues/11604.
      */
     public function testValidatePropertyValueWithoutConstraints()
     {
@@ -1010,7 +1011,7 @@ public function testValidateObjectOnlyOncePerGroup()
 
         $violations = $this->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
     }
 
@@ -1030,7 +1031,7 @@ public function testValidateDifferentObjectsSeparately()
 
         $violations = $this->validate($entity);
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(2, $violations);
     }
 
@@ -1053,7 +1054,7 @@ public function testValidateSingleGroup()
 
         $violations = $this->validate($entity, null, 'Group 2');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
     }
 
@@ -1076,7 +1077,7 @@ public function testValidateMultipleGroups()
 
         $violations = $this->validate($entity, null, array('Group 1', 'Group 2'));
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(2, $violations);
     }
 
@@ -1109,7 +1110,7 @@ public function testReplaceDefaultGroupByGroupSequenceObject()
 
         $violations = $this->validate($entity, null, 'Default');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Violation in Group 2', $violations[0]->getMessage());
     }
@@ -1143,7 +1144,7 @@ public function testReplaceDefaultGroupByGroupSequenceArray()
 
         $violations = $this->validate($entity, null, 'Default');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Violation in Group 2', $violations[0]->getMessage());
     }
@@ -1175,7 +1176,7 @@ public function testPropagateDefaultGroupToReferenceWhenReplacingDefaultGroup()
 
         $violations = $this->validate($entity, null, 'Default');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Violation in Default group', $violations[0]->getMessage());
     }
@@ -1205,7 +1206,7 @@ public function testValidateCustomGroupWhenDefaultGroupWasReplaced()
 
         $violations = $this->validate($entity, null, 'Other Group');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Violation in other group', $violations[0]->getMessage());
     }
@@ -1241,7 +1242,7 @@ public function testReplaceDefaultGroupWithObjectFromGroupSequenceProvider()
 
         $violations = $this->validate($entity, null, 'Default');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Violation in Group 2', $violations[0]->getMessage());
     }
@@ -1277,7 +1278,7 @@ public function testReplaceDefaultGroupWithArrayFromGroupSequenceProvider()
 
         $violations = $this->validate($entity, null, 'Default');
 
-        /** @var ConstraintViolationInterface[] $violations */
+        /* @var ConstraintViolationInterface[] $violations */
         $this->assertCount(1, $violations);
         $this->assertSame('Violation in Group 2', $violations[0]->getMessage());
     }
diff --git a/core/vendor/symfony/validator/Tests/ValidatorBuilderTest.php b/core/vendor/symfony/validator/Tests/ValidatorBuilderTest.php
index 88e8b3b82689df86ff0dffe2b841b7185f83408e..fbc863157d9af2ca637eb1c88cab320d1a5d1b99 100644
--- a/core/vendor/symfony/validator/Tests/ValidatorBuilderTest.php
+++ b/core/vendor/symfony/validator/Tests/ValidatorBuilderTest.php
@@ -11,7 +11,6 @@
 
 namespace Symfony\Component\Validator\Tests;
 
-use Symfony\Component\Validator\Validation;
 use Symfony\Component\Validator\ValidatorBuilder;
 use Symfony\Component\Validator\ValidatorBuilderInterface;
 
diff --git a/core/vendor/symfony/validator/Validation.php b/core/vendor/symfony/validator/Validation.php
index a03d21584bc9d8b63ae29b51c7acedee55dd79da..1693f7311add40827d7c3bbea31e8c2da3723107 100644
--- a/core/vendor/symfony/validator/Validation.php
+++ b/core/vendor/symfony/validator/Validation.php
@@ -20,6 +20,7 @@ final class Validation
 {
     /**
      * The Validator API provided by Symfony 2.4 and older.
+     *
      * @deprecated use API_VERSION_2_5_BC instead.
      */
     const API_VERSION_2_4 = 1;
diff --git a/core/vendor/symfony/validator/Validator/ContextualValidatorInterface.php b/core/vendor/symfony/validator/Validator/ContextualValidatorInterface.php
index 767f89585f95054b29c321075fbae6b829e5e6f3..048d6c7545f840ac1a537020cd14c82e7e08eb78 100644
--- a/core/vendor/symfony/validator/Validator/ContextualValidatorInterface.php
+++ b/core/vendor/symfony/validator/Validator/ContextualValidatorInterface.php
@@ -18,6 +18,7 @@
  * A validator in a specific execution context.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 interface ContextualValidatorInterface
diff --git a/core/vendor/symfony/validator/Validator/LegacyValidator.php b/core/vendor/symfony/validator/Validator/LegacyValidator.php
index 0b0934bd3e2536e35993a1e8650857786639744d..e35f4c91401b3c58c2276c8a3fad1000e3bd6791 100644
--- a/core/vendor/symfony/validator/Validator/LegacyValidator.php
+++ b/core/vendor/symfony/validator/Validator/LegacyValidator.php
@@ -17,11 +17,11 @@
  * A validator that supports both the API of Symfony < 2.5 and Symfony 2.5+.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @see \Symfony\Component\Validator\ValidatorInterface
  * @see \Symfony\Component\Validator\Validator\ValidatorInterface
- *
  * @deprecated since version 2.5, to be removed in 3.0.
  */
 class LegacyValidator extends RecursiveValidator
diff --git a/core/vendor/symfony/validator/Validator/ValidatorInterface.php b/core/vendor/symfony/validator/Validator/ValidatorInterface.php
index 2582bf65c85c41bf999cc10d8e6805d9ad3cb357..3aafa34ea09ccdd4113eb00a2b028d3938777981 100644
--- a/core/vendor/symfony/validator/Validator/ValidatorInterface.php
+++ b/core/vendor/symfony/validator/Validator/ValidatorInterface.php
@@ -20,6 +20,7 @@
  * Validates PHP values against constraints.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 interface ValidatorInterface extends MetadataFactoryInterface
diff --git a/core/vendor/symfony/validator/ValidatorBuilderInterface.php b/core/vendor/symfony/validator/ValidatorBuilderInterface.php
index cc0007770578b1ea544de4d65b708c782088734e..e15fb7aa14e6755cce64ea6c1938e40827d94865 100644
--- a/core/vendor/symfony/validator/ValidatorBuilderInterface.php
+++ b/core/vendor/symfony/validator/ValidatorBuilderInterface.php
@@ -180,7 +180,6 @@ public function setPropertyAccessor(PropertyAccessorInterface $propertyAccessor)
      *
      * @see Validation::API_VERSION_2_5
      * @see Validation::API_VERSION_2_5_BC
-     *
      * @deprecated since version 2.7, to be removed in 3.0.
      */
     public function setApiVersion($apiVersion);
diff --git a/core/vendor/symfony/validator/Violation/ConstraintViolationBuilder.php b/core/vendor/symfony/validator/Violation/ConstraintViolationBuilder.php
index b752c397b8805150a1bc4d8ce14c995eb865493e..d7d3877aed283ec4e0723040e9cd41aaf6450082 100644
--- a/core/vendor/symfony/validator/Violation/ConstraintViolationBuilder.php
+++ b/core/vendor/symfony/validator/Violation/ConstraintViolationBuilder.php
@@ -21,6 +21,7 @@
  * Default implementation of {@link ConstraintViolationBuilderInterface}.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
  * @internal You should not instantiate or use this class. Code against
diff --git a/core/vendor/symfony/validator/Violation/ConstraintViolationBuilderInterface.php b/core/vendor/symfony/validator/Violation/ConstraintViolationBuilderInterface.php
index 3dc270a154911814f18a6536ce690319c2639145..b7cc2ecfcd2308c49e88f27075b59f91ee941808 100644
--- a/core/vendor/symfony/validator/Violation/ConstraintViolationBuilderInterface.php
+++ b/core/vendor/symfony/validator/Violation/ConstraintViolationBuilderInterface.php
@@ -20,6 +20,7 @@
  * execution context.
  *
  * @since  2.5
+ *
  * @author Bernhard Schussek <bschussek@gmail.com>
  */
 interface ConstraintViolationBuilderInterface
diff --git a/core/vendor/symfony/validator/composer.json b/core/vendor/symfony/validator/composer.json
index b89fe1b134515c17d274841f2a195fdc540b11cf..5881064ea4950b9e760357d31fe17290b3d17188 100644
--- a/core/vendor/symfony/validator/composer.json
+++ b/core/vendor/symfony/validator/composer.json
@@ -22,7 +22,7 @@
     "require-dev": {
         "symfony/phpunit-bridge": "~2.7",
         "symfony/http-foundation": "~2.1",
-        "symfony/intl": "~2.3",
+        "symfony/intl": "~2.4",
         "symfony/yaml": "~2.0,>=2.0.5",
         "symfony/config": "~2.2",
         "symfony/property-access": "~2.3",
diff --git a/core/vendor/symfony/yaml/Parser.php b/core/vendor/symfony/yaml/Parser.php
index 2de62e58bd075ce9ad9058ca04b1e10ab83554a1..ad7ae498ff1ab51a06bd54121c81f1f9f2bb6698 100644
--- a/core/vendor/symfony/yaml/Parser.php
+++ b/core/vendor/symfony/yaml/Parser.php
@@ -115,6 +115,9 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
                         $data[] = $this->parseValue($values['value'], $exceptionOnInvalidType, $objectSupport, $objectForMap);
                     }
                 }
+                if ($isRef) {
+                    $this->refs[$isRef] = end($data);
+                }
             } elseif (preg_match('#^(?P<key>'.Inline::REGEX_QUOTED_STRING.'|[^ \'"\[\{].*?) *\:(\s+(?P<value>.+?))?\s*$#u', $this->currentLine, $values) && (false === strpos($values['key'], ' #') || in_array($values['key'][0], array('"', "'")))) {
                 if ($context && 'sequence' == $context) {
                     throw new ParseException('You cannot define a mapping item when in a sequence');
@@ -227,6 +230,9 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
                         $data[$key] = $value;
                     }
                 }
+                if ($isRef) {
+                    $this->refs[$isRef] = $data[$key];
+                }
             } else {
                 // multiple documents are not supported
                 if ('---' === $this->currentLine) {
@@ -284,10 +290,6 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
 
                 throw new ParseException($error, $this->getRealCurrentLineNb() + 1, $this->currentLine);
             }
-
-            if ($isRef) {
-                $this->refs[$isRef] = end($data);
-            }
         }
 
         if (isset($mbEncoding)) {
diff --git a/core/vendor/symfony/yaml/Tests/Fixtures/YtsDocumentSeparator.yml b/core/vendor/symfony/yaml/Tests/Fixtures/YtsDocumentSeparator.yml
index f8501ddc29646bfc13f35c346ae28bb7d281ef4e..d98810256ec213734803275c99ca56d881f32f78 100644
--- a/core/vendor/symfony/yaml/Tests/Fixtures/YtsDocumentSeparator.yml
+++ b/core/vendor/symfony/yaml/Tests/Fixtures/YtsDocumentSeparator.yml
@@ -21,7 +21,7 @@ ruby: |
 test: Leading Document Separator
 todo: true
 brief: >
-    You can explicity give an opening
+    You can explicitly give an opening
     document separator to your YAML stream.
 yaml: |
     ---
diff --git a/core/vendor/symfony/yaml/Tests/Fixtures/sfMergeKey.yml b/core/vendor/symfony/yaml/Tests/Fixtures/sfMergeKey.yml
index fd9910174dade40eeaa1557a7bcbd94b29a5425e..4b67d341008e73418e98fc5c61e5ffb8e39c8530 100644
--- a/core/vendor/symfony/yaml/Tests/Fixtures/sfMergeKey.yml
+++ b/core/vendor/symfony/yaml/Tests/Fixtures/sfMergeKey.yml
@@ -33,6 +33,17 @@ yaml: |
         isit: tested
     head:
         <<: [ *foo , *dong , *foo2 ]
+    taz: &taz
+        a: Steve
+        w:
+            p: 1234
+    nested:
+        <<: *taz
+        d: Doug
+        w: &nestedref
+            p: 12345
+        z:
+            <<: *nestedref
 php: |
     array(
         'foo' => array('a' => 'Steve', 'b' => 'Clark', 'c' => 'Brian'),
@@ -41,5 +52,7 @@ php: |
         'foo2' => array('a' => 'Ballmer'),
         'ding' => array('fi', 'fei', 'fo', 'fam'),
         'check' => array('a' => 'Steve', 'b' => 'Clark', 'c' => 'Brian', 'fi', 'fei', 'fo', 'fam', 'isit' => 'tested'),
-        'head' => array('a' => 'Steve', 'b' => 'Clark', 'c' => 'Brian', 'fi', 'fei', 'fo', 'fam')
+        'head' => array('a' => 'Steve', 'b' => 'Clark', 'c' => 'Brian', 'fi', 'fei', 'fo', 'fam'),
+        'taz' => array('a' => 'Steve', 'w' => array('p' => 1234)),
+        'nested' => array('a' => 'Steve', 'w' => array('p' => 12345), 'd' => 'Doug', 'z' => array('p' => 12345))
     )
diff --git a/core/vendor/symfony/yaml/Tests/InlineTest.php b/core/vendor/symfony/yaml/Tests/InlineTest.php
index 0776e4fa8dfbf999875e36db9edfc02c1668db40..522d77053deac3d8c4905c1dc2664b43bdb52635 100644
--- a/core/vendor/symfony/yaml/Tests/InlineTest.php
+++ b/core/vendor/symfony/yaml/Tests/InlineTest.php
@@ -293,8 +293,8 @@ public function getTestsForParseWithMapObjects()
             array('{ foo  : bar, bar : foo,  false  :   false,  null  :   null,  integer :  12  }', (object) array('foo' => 'bar', 'bar' => 'foo', 'false' => false, 'null' => null, 'integer' => 12)),
             array('{foo: \'bar\', bar: \'foo: bar\'}', (object) array('foo' => 'bar', 'bar' => 'foo: bar')),
             array('{\'foo\': \'bar\', "bar": \'foo: bar\'}', (object) array('foo' => 'bar', 'bar' => 'foo: bar')),
-            array('{\'foo\'\'\': \'bar\', "bar\"": \'foo: bar\'}', (object) array('foo\'' => 'bar', "bar\"" => 'foo: bar')),
-            array('{\'foo: \': \'bar\', "bar: ": \'foo: bar\'}', (object) array('foo: ' => 'bar', "bar: " => 'foo: bar')),
+            array('{\'foo\'\'\': \'bar\', "bar\"": \'foo: bar\'}', (object) array('foo\'' => 'bar', 'bar"' => 'foo: bar')),
+            array('{\'foo: \': \'bar\', "bar: ": \'foo: bar\'}', (object) array('foo: ' => 'bar', 'bar: ' => 'foo: bar')),
 
             // nested sequences and mappings
             array('[foo, [bar, foo]]', array('foo', array('bar', 'foo'))),
diff --git a/core/vendor/symfony/yaml/Unescaper.php b/core/vendor/symfony/yaml/Unescaper.php
index 93206f923352f21470e20966bf348be1995d8753..1b5e5ec2dc5901caf7d14c059edac065634e50c5 100644
--- a/core/vendor/symfony/yaml/Unescaper.php
+++ b/core/vendor/symfony/yaml/Unescaper.php
@@ -24,6 +24,7 @@ class Unescaper
      * must be converted to that encoding.
      *
      * @deprecated since version 2.5, to be removed in 3.0
+     *
      * @internal
      */
     const ENCODING = 'UTF-8';