Deprecated: Symfony\Component\Translation\t(): Implicitly marking parameter $domain as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/t/taurushr/vendor/symfony/translation/Resources/functions.php on line 18

Deprecated: Symfony\Component\Dotenv\Dotenv::loadEnv(): Implicitly marking parameter $envKey as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/t/taurushr/vendor/symfony/dotenv/Dotenv.php on line 110

Deprecated: Symfony\Component\Runtime\GenericRuntime::getResolver(): Implicitly marking parameter $reflector as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/t/taurushr/vendor/symfony/runtime/GenericRuntime.php on line 89

Deprecated: Symfony\Component\Runtime\RuntimeInterface::getResolver(): Implicitly marking parameter $reflector as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/t/taurushr/vendor/symfony/runtime/RuntimeInterface.php on line 26

Deprecated: Symfony\Component\Console\Input\ArgvInput::__construct(): Implicitly marking parameter $argv as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/t/taurushr/vendor/symfony/console/Input/ArgvInput.php on line 46

Deprecated: Symfony\Component\Console\Input\ArgvInput::__construct(): Implicitly marking parameter $definition as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/t/taurushr/vendor/symfony/console/Input/ArgvInput.php on line 46

Deprecated: Symfony\Component\Console\Input\Input::__construct(): Implicitly marking parameter $definition as nullable is deprecated, the explicit nullable type must be used instead in /var/www/html/t/taurushr/vendor/symfony/console/Input/Input.php on line 36

Deprecated: Constant E_STRICT is deprecated in /var/www/html/t/taurushr/vendor/symfony/error-handler/ErrorHandler.php on line 58

Deprecated: Constant E_STRICT is deprecated in /var/www/html/t/taurushr/vendor/symfony/error-handler/ErrorHandler.php on line 76
Symfony Profiler

var/cache/dev/twig/6e/6e2285e5660012bf9b3d588a3b754a7b.php line 54

Open in your IDE?
  1. <?php
  2. use Twig\Environment;
  3. use Twig\Error\LoaderError;
  4. use Twig\Error\RuntimeError;
  5. use Twig\Extension\SandboxExtension;
  6. use Twig\Markup;
  7. use Twig\Sandbox\SecurityError;
  8. use Twig\Sandbox\SecurityNotAllowedTagError;
  9. use Twig\Sandbox\SecurityNotAllowedFilterError;
  10. use Twig\Sandbox\SecurityNotAllowedFunctionError;
  11. use Twig\Source;
  12. use Twig\Template;
  13. /* @WebProfiler/Collector/time.html.twig */
  14. class __TwigTemplate_6dd225a9e9a91dcfe34a3351f4b88cff extends Template
  15. {
  16.     private $source;
  17.     private $macros = [];
  18.     public function __construct(Environment $env)
  19.     {
  20.         parent::__construct($env);
  21.         $this->source $this->getSourceContext();
  22.         $this->blocks = [
  23.             'toolbar' => [$this'block_toolbar'],
  24.             'menu' => [$this'block_menu'],
  25.             'panel' => [$this'block_panel'],
  26.             'panelContent' => [$this'block_panelContent'],
  27.         ];
  28.     }
  29.     protected function doGetParent(array $context)
  30.     {
  31.         // line 1
  32.         return "@WebProfiler/Profiler/layout.html.twig";
  33.     }
  34.     protected function doDisplay(array $context, array $blocks = [])
  35.     {
  36.         $macros $this->macros;
  37.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  38.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""@WebProfiler/Collector/time.html.twig"));
  39.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  40.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""@WebProfiler/Collector/time.html.twig"));
  41.         // line 3
  42.         $macros["helper"] = $this->macros["helper"] = $this;
  43.         // line 1
  44.         $this->parent $this->loadTemplate("@WebProfiler/Profiler/layout.html.twig""@WebProfiler/Collector/time.html.twig"1);
  45.         $this->parent->display($contextarray_merge($this->blocks$blocks));
  46.         
  47.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  48.         
  49.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  50.     }
  51.     // line 5
  52.     public function block_toolbar($context, array $blocks = [])
  53.     {
  54.         $macros $this->macros;
  55.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  56.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""toolbar"));
  57.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  58.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""toolbar"));
  59.         // line 6
  60.         echo "    ";
  61.         $context["has_time_events"] = (twig_length_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'6$this->source); })()), "events", [], "any"falsefalsefalse6)) > 0);
  62.         // line 7
  63.         echo "    ";
  64.         $context["total_time"] = (((isset($context["has_time_events"]) || array_key_exists("has_time_events"$context) ? $context["has_time_events"] : (function () { throw new RuntimeError('Variable "has_time_events" does not exist.'7$this->source); })())) ? (twig_sprintf("%.0f"twig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'7$this->source); })()), "duration", [], "any"falsefalsefalse7))) : ("n/a"));
  65.         // line 8
  66.         echo "    ";
  67.         $context["initialization_time"] = ((twig_length_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'8$this->source); })()), "events", [], "any"falsefalsefalse8))) ? (twig_sprintf("%.0f"twig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'8$this->source); })()), "inittime", [], "any"falsefalsefalse8))) : ("n/a"));
  68.         // line 9
  69.         echo "    ";
  70.         $context["status_color"] = ((((isset($context["has_time_events"]) || array_key_exists("has_time_events"$context) ? $context["has_time_events"] : (function () { throw new RuntimeError('Variable "has_time_events" does not exist.'9$this->source); })()) && (twig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'9$this->source); })()), "duration", [], "any"falsefalsefalse9) > 1000))) ? ("yellow") : (""));
  71.         // line 10
  72.         echo "
  73.     ";
  74.         // line 11
  75.         ob_start();
  76.         // line 12
  77.         echo "        ";
  78.         echo twig_include($this->env$context"@WebProfiler/Icon/time.svg");
  79.         echo "
  80.         <span class=\"sf-toolbar-value\">";
  81.         // line 13
  82.         echo twig_escape_filter($this->env, (isset($context["total_time"]) || array_key_exists("total_time"$context) ? $context["total_time"] : (function () { throw new RuntimeError('Variable "total_time" does not exist.'13$this->source); })()), "html"nulltrue);
  83.         echo "</span>
  84.         <span class=\"sf-toolbar-label\">ms</span>
  85.     ";
  86.         $context["icon"] = ('' === $tmp ob_get_clean()) ? '' : new Markup($tmp$this->env->getCharset());
  87.         // line 16
  88.         echo "
  89.     ";
  90.         // line 17
  91.         ob_start();
  92.         // line 18
  93.         echo "        <div class=\"sf-toolbar-info-piece\">
  94.             <b>Total time</b>
  95.             <span>";
  96.         // line 20
  97.         echo twig_escape_filter($this->env, (isset($context["total_time"]) || array_key_exists("total_time"$context) ? $context["total_time"] : (function () { throw new RuntimeError('Variable "total_time" does not exist.'20$this->source); })()), "html"nulltrue);
  98.         echo " ms</span>
  99.         </div>
  100.         <div class=\"sf-toolbar-info-piece\">
  101.             <b>Initialization time</b>
  102.             <span>";
  103.         // line 24
  104.         echo twig_escape_filter($this->env, (isset($context["initialization_time"]) || array_key_exists("initialization_time"$context) ? $context["initialization_time"] : (function () { throw new RuntimeError('Variable "initialization_time" does not exist.'24$this->source); })()), "html"nulltrue);
  105.         echo " ms</span>
  106.         </div>
  107.     ";
  108.         $context["text"] = ('' === $tmp ob_get_clean()) ? '' : new Markup($tmp$this->env->getCharset());
  109.         // line 27
  110.         echo "
  111.     ";
  112.         // line 28
  113.         echo twig_include($this->env$context"@WebProfiler/Profiler/toolbar_item.html.twig", ["link" => (isset($context["profiler_url"]) || array_key_exists("profiler_url"$context) ? $context["profiler_url"] : (function () { throw new RuntimeError('Variable "profiler_url" does not exist.'28$this->source); })()), "status" => (isset($context["status_color"]) || array_key_exists("status_color"$context) ? $context["status_color"] : (function () { throw new RuntimeError('Variable "status_color" does not exist.'28$this->source); })())]);
  114.         echo "
  115. ";
  116.         
  117.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  118.         
  119.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  120.     }
  121.     // line 31
  122.     public function block_menu($context, array $blocks = [])
  123.     {
  124.         $macros $this->macros;
  125.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  126.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""menu"));
  127.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  128.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""menu"));
  129.         // line 32
  130.         echo "    <span class=\"label\">
  131.         <span class=\"icon\">";
  132.         // line 33
  133.         echo twig_include($this->env$context"@WebProfiler/Icon/time.svg");
  134.         echo "</span>
  135.         <strong>Performance</strong>
  136.     </span>
  137. ";
  138.         
  139.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  140.         
  141.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  142.     }
  143.     // line 38
  144.     public function block_panel($context, array $blocks = [])
  145.     {
  146.         $macros $this->macros;
  147.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  148.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""panel"));
  149.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  150.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""panel"));
  151.         // line 39
  152.         echo "    ";
  153.         $context["has_time_events"] = (twig_length_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'39$this->source); })()), "events", [], "any"falsefalsefalse39)) > 0);
  154.         // line 40
  155.         echo "    <h2>Performance metrics</h2>
  156.     <div class=\"metrics\">
  157.         <div class=\"metric\">
  158.             <span class=\"value\">";
  159.         // line 44
  160.         echo twig_escape_filter($this->envtwig_sprintf("%.0f"twig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'44$this->source); })()), "duration", [], "any"falsefalsefalse44)), "html"nulltrue);
  161.         echo " <span class=\"unit\">ms</span></span>
  162.             <span class=\"label\">Total execution time</span>
  163.         </div>
  164.         <div class=\"metric\">
  165.             <span class=\"value\">";
  166.         // line 49
  167.         echo twig_escape_filter($this->envtwig_sprintf("%.0f"twig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'49$this->source); })()), "inittime", [], "any"falsefalsefalse49)), "html"nulltrue);
  168.         echo " <span class=\"unit\">ms</span></span>
  169.             <span class=\"label\">Symfony initialization</span>
  170.         </div>
  171.         ";
  172.         // line 53
  173.         if (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'53$this->source); })()), "collectors", [], "any"falsefalsefalse53), "memory", [], "any"falsefalsefalse53)) {
  174.             // line 54
  175.             echo "            <div class=\"metric\">
  176.                 <span class=\"value\">";
  177.             // line 55
  178.             echo twig_escape_filter($this->envtwig_sprintf("%.2f", ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'55$this->source); })()), "collectors", [], "any"falsefalsefalse55), "memory", [], "any"falsefalsefalse55), "memory", [], "any"falsefalsefalse55) / 1024) / 1024)), "html"nulltrue);
  179.             echo " <span class=\"unit\">MiB</span></span>
  180.                 <span class=\"label\">Peak memory usage</span>
  181.             </div>
  182.         ";
  183.         }
  184.         // line 59
  185.         echo "
  186.         ";
  187.         // line 60
  188.         if ((twig_length_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'60$this->source); })()), "children", [], "any"falsefalsefalse60)) > 0)) {
  189.             // line 61
  190.             echo "            <div class=\"metric-divider\"></div>
  191.             <div class=\"metric\">
  192.                 <span class=\"value\">";
  193.             // line 64
  194.             echo twig_escape_filter($this->envtwig_length_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'64$this->source); })()), "children", [], "any"falsefalsefalse64)), "html"nulltrue);
  195.             echo "</span>
  196.                 <span class=\"label\">Sub-Request";
  197.             // line 65
  198.             echo (((twig_length_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'65$this->source); })()), "children", [], "any"falsefalsefalse65)) > 1)) ? ("s") : (""));
  199.             echo "</span>
  200.             </div>
  201.             ";
  202.             // line 68
  203.             if ((isset($context["has_time_events"]) || array_key_exists("has_time_events"$context) ? $context["has_time_events"] : (function () { throw new RuntimeError('Variable "has_time_events" does not exist.'68$this->source); })())) {
  204.                 // line 69
  205.                 echo "                ";
  206.                 $context["subrequests_time"] = 0;
  207.                 // line 70
  208.                 echo "                ";
  209.                 $context['_parent'] = $context;
  210.                 $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'70$this->source); })()), "children", [], "any"falsefalsefalse70));
  211.                 foreach ($context['_seq'] as $context["_key"] => $context["child"]) {
  212.                     // line 71
  213.                     echo "                    ";
  214.                     $context["subrequests_time"] = ((isset($context["subrequests_time"]) || array_key_exists("subrequests_time"$context) ? $context["subrequests_time"] : (function () { throw new RuntimeError('Variable "subrequests_time" does not exist.'71$this->source); })()) + twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["child"], "getcollector", ["time"], "method"falsefalsefalse71), "events", [], "any"falsefalsefalse71), "__section__", [], "any"falsefalsefalse71), "duration", [], "any"falsefalsefalse71));
  215.                     // line 72
  216.                     echo "                ";
  217.                 }
  218.                 $_parent $context['_parent'];
  219.                 unset($context['_seq'], $context['_iterated'], $context['_key'], $context['child'], $context['_parent'], $context['loop']);
  220.                 $context array_intersect_key($context$_parent) + $_parent;
  221.                 // line 73
  222.                 echo "            ";
  223.             } else {
  224.                 // line 74
  225.                 echo "                ";
  226.                 $context["subrequests_time"] = "n/a";
  227.                 // line 75
  228.                 echo "            ";
  229.             }
  230.             // line 76
  231.             echo "
  232.             <div class=\"metric\">
  233.                 <span class=\"value\">";
  234.             // line 78
  235.             echo twig_escape_filter($this->env, (isset($context["subrequests_time"]) || array_key_exists("subrequests_time"$context) ? $context["subrequests_time"] : (function () { throw new RuntimeError('Variable "subrequests_time" does not exist.'78$this->source); })()), "html"nulltrue);
  236.             echo " <span class=\"unit\">ms</span></span>
  237.                 <span class=\"label\">Sub-Request";
  238.             // line 79
  239.             echo (((twig_length_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'79$this->source); })()), "children", [], "any"falsefalsefalse79)) > 1)) ? ("s") : (""));
  240.             echo " time</span>
  241.             </div>
  242.         ";
  243.         }
  244.         // line 82
  245.         echo "    </div>
  246.     <h2>Execution timeline</h2>
  247.     ";
  248.         // line 86
  249.         if ( !twig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'86$this->source); })()), "isStopwatchInstalled", [], "method"falsefalsefalse86)) {
  250.             // line 87
  251.             echo "        <div class=\"empty\">
  252.             <p>The Stopwatch component is not installed. If you want to see timing events, run: <code>composer require symfony/stopwatch</code>.</p>
  253.         </div>
  254.     ";
  255.         } elseif (twig_test_empty(twig_get_attribute($this->env$this->source,         // line 90
  256. (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'90$this->source); })()), "events", [], "any"falsefalsefalse90))) {
  257.             // line 91
  258.             echo "        <div class=\"empty\">
  259.             <p>No timing events have been recorded. Check that symfony/stopwatch is installed and debugging enabled in the kernel.</p>
  260.         </div>
  261.     ";
  262.         } else {
  263.             // line 95
  264.             echo "        ";
  265.             $this->displayBlock("panelContent"$context$blocks);
  266.             echo "
  267.     ";
  268.         }
  269.         
  270.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  271.         
  272.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  273.     }
  274.     // line 99
  275.     public function block_panelContent($context, array $blocks = [])
  276.     {
  277.         $macros $this->macros;
  278.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  279.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""panelContent"));
  280.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  281.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""panelContent"));
  282.         // line 100
  283.         echo "    <form id=\"timeline-control\" action=\"\" method=\"get\">
  284.         <input type=\"hidden\" name=\"panel\" value=\"time\">
  285.         <label for=\"threshold\">Threshold</label>
  286.         <input type=\"number\" name=\"threshold\" id=\"threshold\" value=\"1\" min=\"0\" placeholder=\"1.1\"> ms
  287.         <span class=\"help\">(timeline only displays events with a duration longer than this threshold)</span>
  288.     </form>
  289.     ";
  290.         // line 107
  291.         if (twig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'107$this->source); })()), "parent", [], "any"falsefalsefalse107)) {
  292.             // line 108
  293.             echo "        <h3 class=\"dump-inline\">
  294.             Sub-Request ";
  295.             // line 109
  296.             echo $this->extensions['Symfony\Bundle\WebProfilerBundle\Twig\WebProfilerExtension']->dumpData($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'109$this->source); })()), "getcollector", ["request"], "method"falsefalsefalse109), "requestattributes", [], "any"falsefalsefalse109), "get", ["_controller"], "method"falsefalsefalse109));
  297.             echo "
  298.             <small>
  299.                 ";
  300.             // line 111
  301.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'111$this->source); })()), "events", [], "any"falsefalsefalse111), "__section__", [], "any"falsefalsefalse111), "duration", [], "any"falsefalsefalse111), "html"nulltrue);
  302.             echo " ms
  303.                 <a class=\"newline\" href=\"";
  304.             // line 112
  305.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("_profiler", ["token" => twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'112$this->source); })()), "parent", [], "any"falsefalsefalse112), "token", [], "any"falsefalsefalse112), "panel" => "time"]), "html"nulltrue);
  306.             echo "\">Return to parent request</a>
  307.             </small>
  308.         </h3>
  309.     ";
  310.         } elseif ((twig_length_filter($this->envtwig_get_attribute($this->env$this->source,         // line 115
  311. (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'115$this->source); })()), "children", [], "any"falsefalsefalse115)) > 0)) {
  312.             // line 116
  313.             echo "        <h3>
  314.             Main Request <small>";
  315.             // line 117
  316.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'117$this->source); })()), "events", [], "any"falsefalsefalse117), "__section__", [], "any"falsefalsefalse117), "duration", [], "any"falsefalsefalse117), "html"nulltrue);
  317.             echo " ms</small>
  318.         </h3>
  319.     ";
  320.         }
  321.         // line 120
  322.         echo "
  323.     ";
  324.         // line 121
  325.         echo twig_call_macro($macros["helper"], "macro_display_timeline", [(isset($context["token"]) || array_key_exists("token"$context) ? $context["token"] : (function () { throw new RuntimeError('Variable "token" does not exist.'121$this->source); })()), twig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'121$this->source); })()), "events", [], "any"falsefalsefalse121), twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'121$this->source); })()), "events", [], "any"falsefalsefalse121), "__section__", [], "any"falsefalsefalse121), "origin", [], "any"falsefalsefalse121)], 121$context$this->getSourceContext());
  326.         echo "
  327.     ";
  328.         // line 123
  329.         if (twig_length_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'123$this->source); })()), "children", [], "any"falsefalsefalse123))) {
  330.             // line 124
  331.             echo "        <p class=\"help\">Note: sections with a striped background correspond to sub-requests.</p>
  332.         <h3>Sub-requests <small>(";
  333.             // line 126
  334.             echo twig_escape_filter($this->envtwig_length_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'126$this->source); })()), "children", [], "any"falsefalsefalse126)), "html"nulltrue);
  335.             echo ")</small></h3>
  336.         ";
  337.             // line 128
  338.             $context['_parent'] = $context;
  339.             $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source, (isset($context["profile"]) || array_key_exists("profile"$context) ? $context["profile"] : (function () { throw new RuntimeError('Variable "profile" does not exist.'128$this->source); })()), "children", [], "any"falsefalsefalse128));
  340.             foreach ($context['_seq'] as $context["_key"] => $context["child"]) {
  341.                 // line 129
  342.                 echo "            ";
  343.                 $context["events"] = twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["child"], "getcollector", ["time"], "method"falsefalsefalse129), "events", [], "any"falsefalsefalse129);
  344.                 // line 130
  345.                 echo "            <h4>
  346.                 <a href=\"";
  347.                 // line 131
  348.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("_profiler", ["token" => twig_get_attribute($this->env$this->source$context["child"], "token", [], "any"falsefalsefalse131), "panel" => "time"]), "html"nulltrue);
  349.                 echo "\">";
  350.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["child"], "getcollector", ["request"], "method"falsefalsefalse131), "identifier", [], "any"falsefalsefalse131), "html"nulltrue);
  351.                 echo "</a>
  352.                 <small>";
  353.                 // line 132
  354.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["events"]) || array_key_exists("events"$context) ? $context["events"] : (function () { throw new RuntimeError('Variable "events" does not exist.'132$this->source); })()), "__section__", [], "any"falsefalsefalse132), "duration", [], "any"falsefalsefalse132), "html"nulltrue);
  355.                 echo " ms</small>
  356.             </h4>
  357.             ";
  358.                 // line 135
  359.                 echo twig_call_macro($macros["helper"], "macro_display_timeline", [twig_get_attribute($this->env$this->source$context["child"], "token", [], "any"falsefalsefalse135), (isset($context["events"]) || array_key_exists("events"$context) ? $context["events"] : (function () { throw new RuntimeError('Variable "events" does not exist.'135$this->source); })()), twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["collector"]) || array_key_exists("collector"$context) ? $context["collector"] : (function () { throw new RuntimeError('Variable "collector" does not exist.'135$this->source); })()), "events", [], "any"falsefalsefalse135), "__section__", [], "any"falsefalsefalse135), "origin", [], "any"falsefalsefalse135)], 135$context$this->getSourceContext());
  360.                 echo "
  361.         ";
  362.             }
  363.             $_parent $context['_parent'];
  364.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['child'], $context['_parent'], $context['loop']);
  365.             $context array_intersect_key($context$_parent) + $_parent;
  366.             // line 137
  367.             echo "    ";
  368.         }
  369.         // line 138
  370.         echo "
  371. <svg id=\"timeline-template\" width=\"0\" height=\"0\">
  372.   <defs>
  373.     <pattern id=\"subrequest\" class=\"timeline-subrequest-pattern\" patternUnits=\"userSpaceOnUse\" width=\"20\" height=\"20\" viewBox=\"0 0 40 40\">
  374.         <path d=\"M0 40L40 0H20L0 20M40 40V20L20 40\"/>
  375.     </pattern>
  376.   </defs>
  377. </svg>
  378. <style type=\"text/css\">
  379. ";
  380.         // line 147
  381.         $this->loadTemplate("@WebProfiler/Collector/time.css.twig""@WebProfiler/Collector/time.html.twig"147)->display($context);
  382.         // line 148
  383.         echo "</style>
  384. <script>
  385. ";
  386.         // line 150
  387.         $this->loadTemplate("@WebProfiler/Collector/time.js""@WebProfiler/Collector/time.html.twig"150)->display($context);
  388.         // line 151
  389.         echo "</script>
  390. ";
  391.         
  392.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  393.         
  394.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  395.     }
  396.     // line 154
  397.     public function macro_dump_request_data($__token__ null$__events__ null$__origin__ null, ...$__varargs__)
  398.     {
  399.         $macros $this->macros;
  400.         $context $this->env->mergeGlobals([
  401.             "token" => $__token__,
  402.             "events" => $__events__,
  403.             "origin" => $__origin__,
  404.             "varargs" => $__varargs__,
  405.         ]);
  406.         $blocks = [];
  407.         ob_start();
  408.         try {
  409.             $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  410.             $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "macro""dump_request_data"));
  411.             $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  412.             $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "macro""dump_request_data"));
  413.             // line 156
  414.             $macros["__internal_parse_0"] = $this;
  415.             // line 157
  416.             echo "{
  417.     id: \"";
  418.             // line 158
  419.             echo twig_escape_filter($this->env, (isset($context["token"]) || array_key_exists("token"$context) ? $context["token"] : (function () { throw new RuntimeError('Variable "token" does not exist.'158$this->source); })()), "js"nulltrue);
  420.             echo "\",
  421.     left: ";
  422.             // line 159
  423.             echo twig_escape_filter($this->envtwig_sprintf("%F", (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["events"]) || array_key_exists("events"$context) ? $context["events"] : (function () { throw new RuntimeError('Variable "events" does not exist.'159$this->source); })()), "__section__", [], "any"falsefalsefalse159), "origin", [], "any"falsefalsefalse159) - (isset($context["origin"]) || array_key_exists("origin"$context) ? $context["origin"] : (function () { throw new RuntimeError('Variable "origin" does not exist.'159$this->source); })()))), "js"nulltrue);
  424.             echo ",
  425.     end: \"";
  426.             // line 160
  427.             echo twig_escape_filter($this->envtwig_sprintf("%F"twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["events"]) || array_key_exists("events"$context) ? $context["events"] : (function () { throw new RuntimeError('Variable "events" does not exist.'160$this->source); })()), "__section__", [], "any"falsefalsefalse160), "endtime", [], "any"falsefalsefalse160)), "js"nulltrue);
  428.             echo "\",
  429.     events: [ ";
  430.             // line 161
  431.             echo twig_call_macro($macros["__internal_parse_0"], "macro_dump_events", [(isset($context["events"]) || array_key_exists("events"$context) ? $context["events"] : (function () { throw new RuntimeError('Variable "events" does not exist.'161$this->source); })())], 161$context$this->getSourceContext());
  432.             echo " ],
  433. }
  434. ";
  435.             
  436.             $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  437.             
  438.             $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  439.             return ('' === $tmp ob_get_contents()) ? '' : new Markup($tmp$this->env->getCharset());
  440.         } finally {
  441.             ob_end_clean();
  442.         }
  443.     }
  444.     // line 166
  445.     public function macro_dump_events($__events__ null, ...$__varargs__)
  446.     {
  447.         $macros $this->macros;
  448.         $context $this->env->mergeGlobals([
  449.             "events" => $__events__,
  450.             "varargs" => $__varargs__,
  451.         ]);
  452.         $blocks = [];
  453.         ob_start();
  454.         try {
  455.             $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  456.             $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "macro""dump_events"));
  457.             $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  458.             $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "macro""dump_events"));
  459.             // line 168
  460.             $context['_parent'] = $context;
  461.             $context['_seq'] = twig_ensure_traversable((isset($context["events"]) || array_key_exists("events"$context) ? $context["events"] : (function () { throw new RuntimeError('Variable "events" does not exist.'168$this->source); })()));
  462.             foreach ($context['_seq'] as $context["name"] => $context["event"]) {
  463.                 // line 169
  464.                 if (("__section__" != $context["name"])) {
  465.                     // line 170
  466.                     echo "{
  467.     name: \"";
  468.                     // line 171
  469.                     echo twig_escape_filter($this->env$context["name"], "js"nulltrue);
  470.                     echo "\",
  471.     category: \"";
  472.                     // line 172
  473.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["event"], "category", [], "any"falsefalsefalse172), "js"nulltrue);
  474.                     echo "\",
  475.     origin: ";
  476.                     // line 173
  477.                     echo twig_escape_filter($this->envtwig_sprintf("%F"twig_get_attribute($this->env$this->source$context["event"], "origin", [], "any"falsefalsefalse173)), "js"nulltrue);
  478.                     echo ",
  479.     starttime: ";
  480.                     // line 174
  481.                     echo twig_escape_filter($this->envtwig_sprintf("%F"twig_get_attribute($this->env$this->source$context["event"], "starttime", [], "any"falsefalsefalse174)), "js"nulltrue);
  482.                     echo ",
  483.     endtime: ";
  484.                     // line 175
  485.                     echo twig_escape_filter($this->envtwig_sprintf("%F"twig_get_attribute($this->env$this->source$context["event"], "endtime", [], "any"falsefalsefalse175)), "js"nulltrue);
  486.                     echo ",
  487.     duration: ";
  488.                     // line 176
  489.                     echo twig_escape_filter($this->envtwig_sprintf("%F"twig_get_attribute($this->env$this->source$context["event"], "duration", [], "any"falsefalsefalse176)), "js"nulltrue);
  490.                     echo ",
  491.     memory: ";
  492.                     // line 177
  493.                     echo twig_escape_filter($this->envtwig_sprintf("%.1F", ((twig_get_attribute($this->env$this->source$context["event"], "memory", [], "any"falsefalsefalse177) / 1024) / 1024)), "js"nulltrue);
  494.                     echo ",
  495.     elements: {},
  496.     periods: [";
  497.                     // line 180
  498.                     $context['_parent'] = $context;
  499.                     $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source$context["event"], "periods", [], "any"falsefalsefalse180));
  500.                     foreach ($context['_seq'] as $context["_key"] => $context["period"]) {
  501.                         // line 181
  502.                         echo "{
  503.             start: ";
  504.                         // line 182
  505.                         echo twig_escape_filter($this->envtwig_sprintf("%F"twig_get_attribute($this->env$this->source$context["period"], "starttime", [], "any"falsefalsefalse182)), "js"nulltrue);
  506.                         echo ",
  507.             end: ";
  508.                         // line 183
  509.                         echo twig_escape_filter($this->envtwig_sprintf("%F"twig_get_attribute($this->env$this->source$context["period"], "endtime", [], "any"falsefalsefalse183)), "js"nulltrue);
  510.                         echo ",
  511.             duration: ";
  512.                         // line 184
  513.                         echo twig_escape_filter($this->envtwig_sprintf("%F"twig_get_attribute($this->env$this->source$context["period"], "duration", [], "any"falsefalsefalse184)), "js"nulltrue);
  514.                         echo ",
  515.             elements: {}
  516.         },";
  517.                     }
  518.                     $_parent $context['_parent'];
  519.                     unset($context['_seq'], $context['_iterated'], $context['_key'], $context['period'], $context['_parent'], $context['loop']);
  520.                     $context array_intersect_key($context$_parent) + $_parent;
  521.                     // line 188
  522.                     echo "],
  523. },
  524. ";
  525.                 }
  526.             }
  527.             $_parent $context['_parent'];
  528.             unset($context['_seq'], $context['_iterated'], $context['name'], $context['event'], $context['_parent'], $context['loop']);
  529.             $context array_intersect_key($context$_parent) + $_parent;
  530.             
  531.             $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  532.             
  533.             $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  534.             return ('' === $tmp ob_get_contents()) ? '' : new Markup($tmp$this->env->getCharset());
  535.         } finally {
  536.             ob_end_clean();
  537.         }
  538.     }
  539.     // line 195
  540.     public function macro_display_timeline($__token__ null$__events__ null$__origin__ null, ...$__varargs__)
  541.     {
  542.         $macros $this->macros;
  543.         $context $this->env->mergeGlobals([
  544.             "token" => $__token__,
  545.             "events" => $__events__,
  546.             "origin" => $__origin__,
  547.             "varargs" => $__varargs__,
  548.         ]);
  549.         $blocks = [];
  550.         ob_start();
  551.         try {
  552.             $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  553.             $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "macro""display_timeline"));
  554.             $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  555.             $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "macro""display_timeline"));
  556.             // line 196
  557.             $macros["helper"] = $this;
  558.             // line 197
  559.             echo "    <div class=\"sf-profiler-timeline\">
  560.         <div id=\"legend-";
  561.             // line 198
  562.             echo twig_escape_filter($this->env, (isset($context["token"]) || array_key_exists("token"$context) ? $context["token"] : (function () { throw new RuntimeError('Variable "token" does not exist.'198$this->source); })()), "html"nulltrue);
  563.             echo "\" class=\"legends\"></div>
  564.         <svg id=\"timeline-";
  565.             // line 199
  566.             echo twig_escape_filter($this->env, (isset($context["token"]) || array_key_exists("token"$context) ? $context["token"] : (function () { throw new RuntimeError('Variable "token" does not exist.'199$this->source); })()), "html"nulltrue);
  567.             echo "\" class=\"timeline-graph\"></svg>
  568.         <script>";
  569.             // line 201
  570.             echo "            window.addEventListener('load', function onLoad() {
  571.                 const theme = new Theme();
  572.                 new TimelineEngine(
  573.                     theme,
  574.                     new SvgRenderer(document.getElementById('timeline-";
  575.             // line 206
  576.             echo twig_escape_filter($this->env, (isset($context["token"]) || array_key_exists("token"$context) ? $context["token"] : (function () { throw new RuntimeError('Variable "token" does not exist.'206$this->source); })()), "js"nulltrue);
  577.             echo "')),
  578.                     new Legend(document.getElementById('legend-";
  579.             // line 207
  580.             echo twig_escape_filter($this->env, (isset($context["token"]) || array_key_exists("token"$context) ? $context["token"] : (function () { throw new RuntimeError('Variable "token" does not exist.'207$this->source); })()), "js"nulltrue);
  581.             echo "'), theme),
  582.                     document.getElementById('threshold'),
  583.                     ";
  584.             // line 209
  585.             echo twig_call_macro($macros["helper"], "macro_dump_request_data", [(isset($context["token"]) || array_key_exists("token"$context) ? $context["token"] : (function () { throw new RuntimeError('Variable "token" does not exist.'209$this->source); })()), (isset($context["events"]) || array_key_exists("events"$context) ? $context["events"] : (function () { throw new RuntimeError('Variable "events" does not exist.'209$this->source); })()), (isset($context["origin"]) || array_key_exists("origin"$context) ? $context["origin"] : (function () { throw new RuntimeError('Variable "origin" does not exist.'209$this->source); })())], 209$context$this->getSourceContext());
  586.             echo "
  587.                 );
  588.             });
  589.         ";
  590.             // line 212
  591.             echo "</script>
  592.     </div>
  593. ";
  594.             
  595.             $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  596.             
  597.             $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  598.             return ('' === $tmp ob_get_contents()) ? '' : new Markup($tmp$this->env->getCharset());
  599.         } finally {
  600.             ob_end_clean();
  601.         }
  602.     }
  603.     /**
  604.      * @codeCoverageIgnore
  605.      */
  606.     public function getTemplateName()
  607.     {
  608.         return "@WebProfiler/Collector/time.html.twig";
  609.     }
  610.     /**
  611.      * @codeCoverageIgnore
  612.      */
  613.     public function isTraitable()
  614.     {
  615.         return false;
  616.     }
  617.     /**
  618.      * @codeCoverageIgnore
  619.      */
  620.     public function getDebugInfo()
  621.     {
  622.         return array (  656 => 212,  650 => 209,  645 => 207,  641 => 206,  634 => 201,  630 => 199,  626 => 198,  623 => 197,  621 => 196,  600 => 195,  578 => 188,  569 => 184,  565 => 183,  561 => 182,  558 => 181,  554 => 180,  549 => 177,  545 => 176,  541 => 175,  537 => 174,  533 => 173,  529 => 172,  525 => 171,  522 => 170,  520 => 169,  516 => 168,  497 => 166,  479 => 161,  475 => 160,  471 => 159,  467 => 158,  464 => 157,  462 => 156,  441 => 154,  430 => 151,  428 => 150,  424 => 148,  422 => 147,  411 => 138,  408 => 137,  400 => 135,  394 => 132,  388 => 131,  385 => 130,  382 => 129,  378 => 128,  373 => 126,  369 => 124,  367 => 123,  362 => 121,  359 => 120,  353 => 117,  350 => 116,  348 => 115,  342 => 112,  338 => 111,  333 => 109,  330 => 108,  328 => 107,  319 => 100,  309 => 99,  295 => 95,  289 => 91,  287 => 90,  282 => 87,  280 => 86,  274 => 82,  268 => 79,  264 => 78,  260 => 76,  257 => 75,  254 => 74,  251 => 73,  245 => 72,  242 => 71,  237 => 70,  234 => 69,  232 => 68,  226 => 65,  222 => 64,  217 => 61,  215 => 60,  212 => 59,  205 => 55,  202 => 54,  200 => 53,  193 => 49,  185 => 44,  179 => 40,  176 => 39,  166 => 38,  152 => 33,  149 => 32,  139 => 31,  127 => 28,  124 => 27,  118 => 24,  111 => 20,  107 => 18,  105 => 17,  102 => 16,  96 => 13,  91 => 12,  89 => 11,  86 => 10,  83 => 9,  80 => 8,  77 => 7,  74 => 6,  64 => 5,  53 => 1,  51 => 3,  38 => 1,);
  623.     }
  624.     public function getSourceContext()
  625.     {
  626.         return new Source("{% extends '@WebProfiler/Profiler/layout.html.twig' %}
  627. {% import _self as helper %}
  628. {% block toolbar %}
  629.     {% set has_time_events = collector.events|length > 0 %}
  630.     {% set total_time = has_time_events ? '%.0f'|format(collector.duration) : 'n/a' %}
  631.     {% set initialization_time = collector.events|length ? '%.0f'|format(collector.inittime) : 'n/a' %}
  632.     {% set status_color = has_time_events and collector.duration > 1000 ? 'yellow' %}
  633.     {% set icon %}
  634.         {{ include('@WebProfiler/Icon/time.svg') }}
  635.         <span class=\"sf-toolbar-value\">{{ total_time }}</span>
  636.         <span class=\"sf-toolbar-label\">ms</span>
  637.     {% endset %}
  638.     {% set text %}
  639.         <div class=\"sf-toolbar-info-piece\">
  640.             <b>Total time</b>
  641.             <span>{{ total_time }} ms</span>
  642.         </div>
  643.         <div class=\"sf-toolbar-info-piece\">
  644.             <b>Initialization time</b>
  645.             <span>{{ initialization_time }} ms</span>
  646.         </div>
  647.     {% endset %}
  648.     {{ include('@WebProfiler/Profiler/toolbar_item.html.twig', { link: profiler_url, status: status_color }) }}
  649. {% endblock %}
  650. {% block menu %}
  651.     <span class=\"label\">
  652.         <span class=\"icon\">{{ include('@WebProfiler/Icon/time.svg') }}</span>
  653.         <strong>Performance</strong>
  654.     </span>
  655. {% endblock %}
  656. {% block panel %}
  657.     {% set has_time_events = collector.events|length > 0 %}
  658.     <h2>Performance metrics</h2>
  659.     <div class=\"metrics\">
  660.         <div class=\"metric\">
  661.             <span class=\"value\">{{ '%.0f'|format(collector.duration) }} <span class=\"unit\">ms</span></span>
  662.             <span class=\"label\">Total execution time</span>
  663.         </div>
  664.         <div class=\"metric\">
  665.             <span class=\"value\">{{ '%.0f'|format(collector.inittime) }} <span class=\"unit\">ms</span></span>
  666.             <span class=\"label\">Symfony initialization</span>
  667.         </div>
  668.         {% if profile.collectors.memory %}
  669.             <div class=\"metric\">
  670.                 <span class=\"value\">{{ '%.2f'|format(profile.collectors.memory.memory / 1024 / 1024) }} <span class=\"unit\">MiB</span></span>
  671.                 <span class=\"label\">Peak memory usage</span>
  672.             </div>
  673.         {% endif %}
  674.         {% if profile.children|length > 0 %}
  675.             <div class=\"metric-divider\"></div>
  676.             <div class=\"metric\">
  677.                 <span class=\"value\">{{ profile.children|length }}</span>
  678.                 <span class=\"label\">Sub-Request{{ profile.children|length > 1 ? 's' }}</span>
  679.             </div>
  680.             {% if has_time_events %}
  681.                 {% set subrequests_time = 0 %}
  682.                 {% for child in profile.children %}
  683.                     {% set subrequests_time = subrequests_time + child.getcollector('time').events.__section__.duration %}
  684.                 {% endfor %}
  685.             {% else %}
  686.                 {% set subrequests_time = 'n/a' %}
  687.             {% endif %}
  688.             <div class=\"metric\">
  689.                 <span class=\"value\">{{ subrequests_time }} <span class=\"unit\">ms</span></span>
  690.                 <span class=\"label\">Sub-Request{{ profile.children|length > 1 ? 's' }} time</span>
  691.             </div>
  692.         {% endif %}
  693.     </div>
  694.     <h2>Execution timeline</h2>
  695.     {% if not collector.isStopwatchInstalled() %}
  696.         <div class=\"empty\">
  697.             <p>The Stopwatch component is not installed. If you want to see timing events, run: <code>composer require symfony/stopwatch</code>.</p>
  698.         </div>
  699.     {% elseif collector.events is empty %}
  700.         <div class=\"empty\">
  701.             <p>No timing events have been recorded. Check that symfony/stopwatch is installed and debugging enabled in the kernel.</p>
  702.         </div>
  703.     {% else %}
  704.         {{ block('panelContent') }}
  705.     {% endif %}
  706. {% endblock %}
  707. {% block panelContent %}
  708.     <form id=\"timeline-control\" action=\"\" method=\"get\">
  709.         <input type=\"hidden\" name=\"panel\" value=\"time\">
  710.         <label for=\"threshold\">Threshold</label>
  711.         <input type=\"number\" name=\"threshold\" id=\"threshold\" value=\"1\" min=\"0\" placeholder=\"1.1\"> ms
  712.         <span class=\"help\">(timeline only displays events with a duration longer than this threshold)</span>
  713.     </form>
  714.     {% if profile.parent %}
  715.         <h3 class=\"dump-inline\">
  716.             Sub-Request {{ profiler_dump(profile.getcollector('request').requestattributes.get('_controller')) }}
  717.             <small>
  718.                 {{ collector.events.__section__.duration }} ms
  719.                 <a class=\"newline\" href=\"{{ path('_profiler', { token: profile.parent.token, panel: 'time' }) }}\">Return to parent request</a>
  720.             </small>
  721.         </h3>
  722.     {% elseif profile.children|length > 0 %}
  723.         <h3>
  724.             Main Request <small>{{ collector.events.__section__.duration }} ms</small>
  725.         </h3>
  726.     {% endif %}
  727.     {{ helper.display_timeline(token, collector.events, collector.events.__section__.origin) }}
  728.     {% if profile.children|length %}
  729.         <p class=\"help\">Note: sections with a striped background correspond to sub-requests.</p>
  730.         <h3>Sub-requests <small>({{ profile.children|length }})</small></h3>
  731.         {% for child in profile.children %}
  732.             {% set events = child.getcollector('time').events %}
  733.             <h4>
  734.                 <a href=\"{{ path('_profiler', { token: child.token, panel: 'time' }) }}\">{{ child.getcollector('request').identifier }}</a>
  735.                 <small>{{ events.__section__.duration }} ms</small>
  736.             </h4>
  737.             {{ helper.display_timeline(child.token, events, collector.events.__section__.origin) }}
  738.         {% endfor %}
  739.     {% endif %}
  740. <svg id=\"timeline-template\" width=\"0\" height=\"0\">
  741.   <defs>
  742.     <pattern id=\"subrequest\" class=\"timeline-subrequest-pattern\" patternUnits=\"userSpaceOnUse\" width=\"20\" height=\"20\" viewBox=\"0 0 40 40\">
  743.         <path d=\"M0 40L40 0H20L0 20M40 40V20L20 40\"/>
  744.     </pattern>
  745.   </defs>
  746. </svg>
  747. <style type=\"text/css\">
  748. {% include '@WebProfiler/Collector/time.css.twig' %}
  749. </style>
  750. <script>
  751. {% include '@WebProfiler/Collector/time.js' %}
  752. </script>
  753. {% endblock %}
  754. {% macro dump_request_data(token, events, origin) %}
  755. {% autoescape 'js' %}
  756. {% from _self import dump_events %}
  757. {
  758.     id: \"{{ token }}\",
  759.     left: {{ \"%F\"|format(events.__section__.origin - origin) }},
  760.     end: \"{{ '%F'|format(events.__section__.endtime) }}\",
  761.     events: [ {{ dump_events(events) }} ],
  762. }
  763. {% endautoescape %}
  764. {% endmacro %}
  765. {% macro dump_events(events) %}
  766. {% autoescape 'js' %}
  767. {% for name, event in events %}
  768. {% if '__section__' != name %}
  769. {
  770.     name: \"{{ name }}\",
  771.     category: \"{{ event.category }}\",
  772.     origin: {{ \"%F\"|format(event.origin) }},
  773.     starttime: {{ \"%F\"|format(event.starttime) }},
  774.     endtime: {{ \"%F\"|format(event.endtime) }},
  775.     duration: {{ \"%F\"|format(event.duration) }},
  776.     memory: {{ \"%.1F\"|format(event.memory / 1024 / 1024) }},
  777.     elements: {},
  778.     periods: [
  779.         {%- for period in event.periods -%}
  780.         {
  781.             start: {{ \"%F\"|format(period.starttime) }},
  782.             end: {{ \"%F\"|format(period.endtime) }},
  783.             duration: {{ \"%F\"|format(period.duration) }},
  784.             elements: {}
  785.         },
  786.         {%- endfor -%}
  787.     ],
  788. },
  789. {% endif %}
  790. {% endfor %}
  791. {% endautoescape %}
  792. {% endmacro %}
  793. {% macro display_timeline(token, events, origin) %}
  794. {% import _self as helper %}
  795.     <div class=\"sf-profiler-timeline\">
  796.         <div id=\"legend-{{ token }}\" class=\"legends\"></div>
  797.         <svg id=\"timeline-{{ token }}\" class=\"timeline-graph\"></svg>
  798.         <script>{% autoescape 'js' %}
  799.             window.addEventListener('load', function onLoad() {
  800.                 const theme = new Theme();
  801.                 new TimelineEngine(
  802.                     theme,
  803.                     new SvgRenderer(document.getElementById('timeline-{{ token }}')),
  804.                     new Legend(document.getElementById('legend-{{ token }}'), theme),
  805.                     document.getElementById('threshold'),
  806.                     {{ helper.dump_request_data(token, events, origin) }}
  807.                 );
  808.             });
  809.         {% endautoescape %}</script>
  810.     </div>
  811. {% endmacro %}
  812. ""@WebProfiler/Collector/time.html.twig""/var/www/html/t/taurushr/vendor/symfony/web-profiler-bundle/Resources/views/Collector/time.html.twig");
  813.     }
  814. }