<?php

use Symfony\Component\Routing\Exception\MethodNotAllowedException;
use Symfony\Component\Routing\Exception\ResourceNotFoundException;
use Symfony\Component\Routing\RequestContext;

/**
 * appProdUrlMatcher.
 *
 * This class has been auto-generated
 * by the Symfony Routing Component.
 */
class appProdUrlMatcher extends Symfony\Bundle\FrameworkBundle\Routing\RedirectableUrlMatcher
{
    /**
     * Constructor.
     */
    public function __construct(RequestContext $context)
    {
        $this->context = $context;
    }

    public function match($pathinfo)
    {
        $allow = array();
        $pathinfo = rawurldecode($pathinfo);
        $context = $this->context;
        $request = $this->request;

        // app.home
        if (rtrim($pathinfo, '/') === '') {
            if (substr($pathinfo, -1) !== '/') {
                return $this->redirect($pathinfo.'/', 'app.home');
            }

            return array (  '_controller' => 'AppBundle\\Controller\\Admin\\SecurityController::homeAction',  '_route' => 'app.home',);
        }

        if (0 === strpos($pathinfo, '/order')) {
            // app.order.first
            if (rtrim($pathinfo, '/') === '/order') {
                if (substr($pathinfo, -1) !== '/') {
                    return $this->redirect($pathinfo.'/', 'app.order.first');
                }

                return array (  '_controller' => 'AppBundle\\Controller\\OrderController::firstAction',  '_route' => 'app.order.first',);
            }

            // app.order.connections
            if ($pathinfo === '/order/connections') {
                return array (  '_controller' => 'AppBundle\\Controller\\OrderController::connectionsAction',  '_route' => 'app.order.connections',);
            }

            // app.order.second
            if ($pathinfo === '/order/second') {
                return array (  '_controller' => 'AppBundle\\Controller\\OrderController::secondAction',  '_route' => 'app.order.second',);
            }

            // app.order.third
            if ($pathinfo === '/order/third') {
                return array (  '_controller' => 'AppBundle\\Controller\\OrderController::thirdAction',  '_route' => 'app.order.third',);
            }

            // app.order.four
            if ($pathinfo === '/order/four') {
                return array (  '_controller' => 'AppBundle\\Controller\\OrderController::fourAction',  '_route' => 'app.order.four',);
            }

            // app.order.preview
            if (0 === strpos($pathinfo, '/order/preview') && preg_match('#^/order/preview/(?P<application>[^/]++)$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app.order.preview')), array (  '_controller' => 'AppBundle\\Controller\\OrderController::previewAction',));
            }

            // app.order.voucher_check
            if ($pathinfo === '/order/voucher-check') {
                return array (  '_controller' => 'AppBundle\\Controller\\OrderController::voucherCheckAction',  '_route' => 'app.order.voucher_check',);
            }

        }

        if (0 === strpos($pathinfo, '/log')) {
            if (0 === strpos($pathinfo, '/login')) {
                // app_admin.security.login
                if ($pathinfo === '/login') {
                    return array (  '_controller' => 'AppBundle\\Controller\\Admin\\SecurityController::loginAction',  '_route' => 'app_admin.security.login',);
                }

                // app_admin.security.login_check
                if ($pathinfo === '/login_check') {
                    return array('_route' => 'app_admin.security.login_check');
                }

            }

            // app_admin.security.logout
            if ($pathinfo === '/logout') {
                return array('_route' => 'app_admin.security.logout');
            }

        }

        if (0 === strpos($pathinfo, '/port')) {
            // app_admin.port.list
            if (rtrim($pathinfo, '/') === '/port') {
                if (substr($pathinfo, -1) !== '/') {
                    return $this->redirect($pathinfo.'/', 'app_admin.port.list');
                }

                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\PortController::listAction',  '_route' => 'app_admin.port.list',);
            }

            // app_admin.port.create
            if ($pathinfo === '/port/create') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\PortController::createAction',  '_route' => 'app_admin.port.create',);
            }

            // app_admin.port.edit
            if (preg_match('#^/port/(?P<port>[^/]++)/edit$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.port.edit')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\PortController::editAction',));
            }

            // app_admin.port.remove
            if (preg_match('#^/port/(?P<port>[^/]++)/remove$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.port.remove')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\PortController::removeAction',));
            }

            // app_admin.port.history
            if (preg_match('#^/port/(?P<port>[^/]++)/history$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.port.history')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\PortController::historyAction',));
            }

            // app_admin.port.removed_list
            if ($pathinfo === '/port/removed-list') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\PortController::removedListAction',  '_route' => 'app_admin.port.removed_list',);
            }

        }

        if (0 === strpos($pathinfo, '/connection')) {
            // app_admin.connection.list
            if (rtrim($pathinfo, '/') === '/connection') {
                if (substr($pathinfo, -1) !== '/') {
                    return $this->redirect($pathinfo.'/', 'app_admin.connection.list');
                }

                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConnectionController::listAction',  '_route' => 'app_admin.connection.list',);
            }

            // app_admin.connection.create
            if ($pathinfo === '/connection/create') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConnectionController::createAction',  '_route' => 'app_admin.connection.create',);
            }

            // app_admin.connection.edit
            if (preg_match('#^/connection/(?P<connection>[^/]++)/edit$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.connection.edit')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConnectionController::editAction',));
            }

            // app_admin.connection.remove
            if (preg_match('#^/connection/(?P<connection>[^/]++)/remove$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.connection.remove')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConnectionController::removeAction',));
            }

            // app_admin.connection.history
            if (preg_match('#^/connection/(?P<connection>[^/]++)/history$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.connection.history')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConnectionController::historyAction',));
            }

            // app_admin.connection.removed_list
            if ($pathinfo === '/connection/removed-list') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConnectionController::removedListAction',  '_route' => 'app_admin.connection.removed_list',);
            }

        }

        if (0 === strpos($pathinfo, '/setting')) {
            // app_admin.setting.list
            if (rtrim($pathinfo, '/') === '/setting') {
                if (substr($pathinfo, -1) !== '/') {
                    return $this->redirect($pathinfo.'/', 'app_admin.setting.list');
                }

                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\SettingController::listAction',  '_route' => 'app_admin.setting.list',);
            }

            // app_admin.setting.edit
            if (preg_match('#^/setting/(?P<setting>[^/]++)/edit$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.setting.edit')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\SettingController::editAction',));
            }

            // app_admin.setting.history
            if (preg_match('#^/setting/(?P<setting>[^/]++)/history$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.setting.history')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\SettingController::historyAction',));
            }

            if (0 === strpos($pathinfo, '/settingeuro')) {
                // app_admin.settingeuro.list
                if (rtrim($pathinfo, '/') === '/settingeuro') {
                    if (substr($pathinfo, -1) !== '/') {
                        return $this->redirect($pathinfo.'/', 'app_admin.settingeuro.list');
                    }

                    return array (  '_controller' => 'AppBundle\\Controller\\Admin\\SettingEuroController::listAction',  '_route' => 'app_admin.settingeuro.list',);
                }

                // app_admin.settingeuro.edit
                if (preg_match('#^/settingeuro/(?P<setting>[^/]++)/edit$#s', $pathinfo, $matches)) {
                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.settingeuro.edit')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\SettingEuroController::editAction',));
                }

                // app_admin.settingeuro.history
                if (preg_match('#^/settingeuro/(?P<setting>[^/]++)/history$#s', $pathinfo, $matches)) {
                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.settingeuro.history')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\SettingEuroController::historyAction',));
                }

            }

        }

        if (0 === strpos($pathinfo, '/user')) {
            // app_admin.user.list
            if (rtrim($pathinfo, '/') === '/user') {
                if (substr($pathinfo, -1) !== '/') {
                    return $this->redirect($pathinfo.'/', 'app_admin.user.list');
                }

                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\UserController::listAction',  '_route' => 'app_admin.user.list',);
            }

            // app_admin.user.create
            if ($pathinfo === '/user/create') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\UserController::createAction',  '_route' => 'app_admin.user.create',);
            }

            // app_admin.user.edit
            if (preg_match('#^/user/(?P<user>[^/]++)/edit$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.user.edit')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\UserController::editAction',));
            }

            // app_admin.user.remove
            if (preg_match('#^/user/(?P<user>[^/]++)/remove$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.user.remove')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\UserController::removeAction',));
            }

            // app_admin.user.history
            if (preg_match('#^/user/(?P<user>[^/]++)/history$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.user.history')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\UserController::historyAction',));
            }

            // app_admin.user.removed_list
            if ($pathinfo === '/user/removed-list') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\UserController::removedListAction',  '_route' => 'app_admin.user.removed_list',);
            }

        }

        if (0 === strpos($pathinfo, '/voucher')) {
            // app_admin.voucher.list
            if (rtrim($pathinfo, '/') === '/voucher') {
                if (substr($pathinfo, -1) !== '/') {
                    return $this->redirect($pathinfo.'/', 'app_admin.voucher.list');
                }

                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\VoucherController::listAction',  '_route' => 'app_admin.voucher.list',);
            }

            // app_admin.voucher.create
            if ($pathinfo === '/voucher/create') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\VoucherController::createAction',  '_route' => 'app_admin.voucher.create',);
            }

            // app_admin.voucher.edit
            if (preg_match('#^/voucher/(?P<voucher>[^/]++)/edit$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.voucher.edit')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\VoucherController::editAction',));
            }

            // app_admin.voucher.remove
            if (preg_match('#^/voucher/(?P<voucher>[^/]++)/remove$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.voucher.remove')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\VoucherController::removeAction',));
            }

            // app_admin.voucher.history
            if (preg_match('#^/voucher/(?P<voucher>[^/]++)/history$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.voucher.history')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\VoucherController::historyAction',));
            }

            // app_admin.voucher.removed_list
            if ($pathinfo === '/voucher/removed-list') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\VoucherController::removedListAction',  '_route' => 'app_admin.voucher.removed_list',);
            }

        }

        if (0 === strpos($pathinfo, '/consultant')) {
            // app_admin.consultant.list
            if (rtrim($pathinfo, '/') === '/consultant') {
                if (substr($pathinfo, -1) !== '/') {
                    return $this->redirect($pathinfo.'/', 'app_admin.consultant.list');
                }

                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConsultantController::listAction',  '_route' => 'app_admin.consultant.list',);
            }

            // app_admin.consultant.create
            if ($pathinfo === '/consultant/create') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConsultantController::createAction',  '_route' => 'app_admin.consultant.create',);
            }

            // app_admin.consultant.edit
            if (preg_match('#^/consultant/(?P<consultant>[^/]++)/edit$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.consultant.edit')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConsultantController::editAction',));
            }

            // app_admin.consultant.remove
            if (preg_match('#^/consultant/(?P<consultant>[^/]++)/remove$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.consultant.remove')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConsultantController::removeAction',));
            }

            // app_admin.consultant.history
            if (preg_match('#^/consultant/(?P<consultant>[^/]++)/history$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.consultant.history')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConsultantController::historyAction',));
            }

            // app_admin.consultant.removed_list
            if ($pathinfo === '/consultant/removed-list') {
                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ConsultantController::removedListAction',  '_route' => 'app_admin.consultant.removed_list',);
            }

        }

        if (0 === strpos($pathinfo, '/recovery')) {
            // app_admin.recovery.index
            if (rtrim($pathinfo, '/') === '/recovery') {
                if (substr($pathinfo, -1) !== '/') {
                    return $this->redirect($pathinfo.'/', 'app_admin.recovery.index');
                }

                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\RecoveryController::indexAction',  '_route' => 'app_admin.recovery.index',);
            }

            // app_admin.recovery.recover
            if (preg_match('#^/recovery/(?P<userId>[^/]++)/(?P<activationKey>[^/]++)$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.recovery.recover')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\RecoveryController::recoverAction',));
            }

        }

        if (0 === strpos($pathinfo, '/application')) {
            // app_admin.application.list
            if (rtrim($pathinfo, '/') === '/application') {
                if (substr($pathinfo, -1) !== '/') {
                    return $this->redirect($pathinfo.'/', 'app_admin.application.list');
                }

                return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ApplicationController::listAction',  '_route' => 'app_admin.application.list',);
            }

            // app_admin.application.details
            if (preg_match('#^/application/(?P<application>[^/]++)/details$#s', $pathinfo, $matches)) {
                return $this->mergeDefaults(array_replace($matches, array('_route' => 'app_admin.application.details')), array (  '_controller' => 'AppBundle\\Controller\\Admin\\ApplicationController::detailsAction',));
            }

            if (0 === strpos($pathinfo, '/application/c')) {
                // app_admin.application.create
                if ($pathinfo === '/application/create') {
                    return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ApplicationController::createAction',  '_route' => 'app_admin.application.create',);
                }

                if (0 === strpos($pathinfo, '/application/co')) {
                    // app.order.application.confirm
                    if ($pathinfo === '/application/confirm') {
                        return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ApplicationController::confirmAction',  '_route' => 'app.order.application.confirm',);
                    }

                    // app.order.application.comment
                    if ($pathinfo === '/application/comment') {
                        return array (  '_controller' => 'AppBundle\\Controller\\Admin\\ApplicationController::commentAction',  '_route' => 'app.order.application.comment',);
                    }

                }

            }

        }

        // json_create
        if ($pathinfo === '/json') {
            return array (  '_controller' => 'AppBundle\\Controller\\JsonController::indexAction',  '_route' => 'json_create',);
        }

        // app_xml_rates
        if ($pathinfo === '/xml-rates') {
            return array (  '_controller' => 'AppBundle\\Controller\\XMLRatesController::indexAction',  '_route' => 'app_xml_rates',);
        }

        throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
    }
}
