<?php
namespace Claromentis\Core\Application;

$GLOBALS["__65da1b1ec2d6653e8a0ab7" . "848e536215"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab7848e536" . "215"] ?: array()) + array("_77a36bb33" . "d745c0aa41" . "e14150bc1b" . "673" => base64_decode("cmVzb2x" . "2ZXI="), "_d859d863235d91e7e9c1f55e" . "9af7e8a9" => base64_decode("bWF0Y2" . "hlcl9j" . "bGFzcw" . "=="), "logg" . "er" => base64_decode("bG9nZ2" . "Vy"), "_ffd81a59ac9197c6482094a" . "bf74ac3b6" => base64_decode("cm91dG" . "VfZmFj" . "dG9yeQ" . "=="), "_69285be1158ad91da2a1aad8e6" . "e186d2" => base64_decode("cmVxdW" . "VzdF9j" . "b250ZX" . "h0"), "_7fd4ec8edac5cc9eb65382be5" . "2f3fe2b" => base64_decode("Y29udHJvbGxlcnNfZ" . "mFjdG9yeQ=="), "_a8880f5534c28f961df056" . "33f16a2727" => base64_decode("YXJndW1lbnRfdmFsdWVfcmVzb2" . "x2ZXJz"), "url_gene" . "rator" => base64_decode("dXJsX2" . "dlbmVy" . "YXRvcg" . "=="), "_6c20f4873f12c6bcc" . "ed6c1dda9a06b86" => base64_decode("cm91" . "dGVz"), "_5918d244000d9337a078215de6" . "452acf" => base64_decode("cmVxdWVz" . "dF9tYXRj" . "aGVy"), "_0598533bd8644895" . "74632dcf3dc76db5" => base64_decode("cm91dGVfbG9hZGV" . "y"));
use Claromentis\Core\Application;
use Claromentis\Core\Psr7Bridge\Psr7ArgumentResolver;
use Pimple\Container;
use Pimple\ServiceProviderInterface;
use Silex\AppArgumentValueResolver;
use Symfony\Component\HttpKernel\Controller\ArgumentResolver\DefaultValueResolver;
use Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestAttributeValueResolver;
use Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestValueResolver;
use Symfony\Component\HttpKernel\Controller\ArgumentResolver\VariadicValueResolver;
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
use Symfony\Component\Routing\Router;
use Symfony\Component\Routing\Generator\UrlGenerator;






class ControllerServiceProvider implements ServiceProviderInterface
{
    
    
    
    
    
    
    public function register(Container $app)
    {
        $app[$GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["_7fd4ec8edac5cc9eb65382be" . "52f3fe2b"]] = $app->factory(function ($app) {
            return new \Claromentis\Core\ControllerCollection($app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848" . "e536215"]["_ffd81a59ac9197c6" . "482094abf74ac3b6"]]);
        });
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e" . "536215"]["_77a36bb33d745c0aa41e14150b" . "c1b673"]] = function ($app) {
            return new ControllerResolver($app, $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e536" . "215"]["logg" . "er"]]);
        };
        $app[$GLOBALS["__65da1b1ec" . "2d6653e8a0a" . "b7848e53621" . "5"]["_a8880f5534c28f961d" . "f05633f16a2727"]] = function (Application $app) {
            return [new RequestAttributeValueResolver(), new Psr7ArgumentResolver($app), new RequestValueResolver(), new AppArgumentValueResolver($app), new ServiceArgumentResolver($app), new DefaultValueResolver(), new VariadicValueResolver()];
        };
        
        
        $app[$GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_ffd81a59ac9197c6482094" . "abf74ac3b6"]] = $app->factory(function () {
            return new \Claromentis\Core\Route();
        });
        $app[$GLOBALS["__65da1b1e" . "c2d6653e8a" . "0ab7848e53" . "6215"]["_0598533bd864" . "489574632dcf3" . "dc76db5"]] = ApplicationRouteLoader::class;
        $app[$GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_5918d244000d9" . "337a078215de64" . "52acf"]] = function (Application $app) {
            $options = [$GLOBALS["__65da1b1ec" . "2d6653e8a0a" . "b7848e53621" . "5"]["_d859d863235" . "d91e7e9c1f55" . "e9af7e8a9"] => RedirectableUrlMatcher::class];
            return new Router($app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e5" . "36215"]["_0598533bd86448" . "9574632dcf3dc76" . "db5"]], $GLOBALS["__65da1b1ec2d6653e8a0ab7848e" . "536215"]["_6c20f487" . "3f12c6bcc" . "ed6c1dda9" . "a06b86"], $options, $app[$GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_69285be1158ad91da2a1aad8e6e" . "186d2"]]);
        };
        $app[UrlGenerator::class] = $GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["url_gen" . "erator"];
        $app[UrlGeneratorInterface::class] = $GLOBALS["__65da1b1ec2d" . "6653e8a0ab784" . "8e536215"]["url" . "_ge" . "ner" . "ato" . "r"];
    }
}