Skip to content

Commit

Permalink
feat: upgrade latte to 3.0.11 to fix exitIf feature
Browse files Browse the repository at this point in the history
  • Loading branch information
BernhardBaumrock committed Nov 11, 2023
1 parent a42b53c commit 0d38b49
Show file tree
Hide file tree
Showing 76 changed files with 289 additions and 355 deletions.
12 changes: 6 additions & 6 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 7 additions & 6 deletions vendor/composer/autoload_classmap.php
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,10 @@
'Latte\\Compiler\\Nodes\\Php\\Expression\\PostOpNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/PostOpNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\PreOpNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/PreOpNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\PropertyFetchNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/PropertyFetchNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticCallNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticCallNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticCallableNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticCallableNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticCallNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticMethodCallNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticCallableNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticMethodCallableNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticMethodCallNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticMethodCallNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticMethodCallableNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticMethodCallableNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticPropertyFetchNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticPropertyFetchNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\TemporaryNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/TemporaryNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\TernaryNode' => $vendorDir . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/TernaryNode.php',
Expand Down Expand Up @@ -132,6 +134,7 @@
'Latte\\Essential\\Nodes\\JumpNode' => $vendorDir . '/latte/latte/src/Latte/Essential/Nodes/JumpNode.php',
'Latte\\Essential\\Nodes\\NAttrNode' => $vendorDir . '/latte/latte/src/Latte/Essential/Nodes/NAttrNode.php',
'Latte\\Essential\\Nodes\\NClassNode' => $vendorDir . '/latte/latte/src/Latte/Essential/Nodes/NClassNode.php',
'Latte\\Essential\\Nodes\\NElseNode' => $vendorDir . '/latte/latte/src/Latte/Essential/Nodes/NElseNode.php',
'Latte\\Essential\\Nodes\\NTagNode' => $vendorDir . '/latte/latte/src/Latte/Essential/Nodes/NTagNode.php',
'Latte\\Essential\\Nodes\\ParametersNode' => $vendorDir . '/latte/latte/src/Latte/Essential/Nodes/ParametersNode.php',
'Latte\\Essential\\Nodes\\PrintNode' => $vendorDir . '/latte/latte/src/Latte/Essential/Nodes/PrintNode.php',
Expand Down Expand Up @@ -161,7 +164,6 @@
'Latte\\Loaders\\StringLoader' => $vendorDir . '/latte/latte/src/Latte/Loaders/StringLoader.php',
'Latte\\Policy' => $vendorDir . '/latte/latte/src/Latte/Policy.php',
'Latte\\PositionAwareException' => $vendorDir . '/latte/latte/src/Latte/PositionAwareException.php',
'Latte\\RegexpException' => $vendorDir . '/latte/latte/src/Latte/exceptions.php',
'Latte\\RuntimeException' => $vendorDir . '/latte/latte/src/Latte/exceptions.php',
'Latte\\Runtime\\Block' => $vendorDir . '/latte/latte/src/Latte/Runtime/Block.php',
'Latte\\Runtime\\FilterExecutor' => $vendorDir . '/latte/latte/src/Latte/Runtime/FilterExecutor.php',
Expand All @@ -176,13 +178,12 @@
'Latte\\Sandbox\\Nodes\\MethodCallableNode' => $vendorDir . '/latte/latte/src/Latte/Sandbox/Nodes/MethodCallableNode.php',
'Latte\\Sandbox\\Nodes\\PropertyFetchNode' => $vendorDir . '/latte/latte/src/Latte/Sandbox/Nodes/PropertyFetchNode.php',
'Latte\\Sandbox\\Nodes\\SandboxNode' => $vendorDir . '/latte/latte/src/Latte/Sandbox/Nodes/SandboxNode.php',
'Latte\\Sandbox\\Nodes\\StaticCallNode' => $vendorDir . '/latte/latte/src/Latte/Sandbox/Nodes/StaticCallNode.php',
'Latte\\Sandbox\\Nodes\\StaticCallableNode' => $vendorDir . '/latte/latte/src/Latte/Sandbox/Nodes/StaticCallableNode.php',
'Latte\\Sandbox\\Nodes\\StaticMethodCallNode' => $vendorDir . '/latte/latte/src/Latte/Sandbox/Nodes/StaticMethodCallNode.php',
'Latte\\Sandbox\\Nodes\\StaticMethodCallableNode' => $vendorDir . '/latte/latte/src/Latte/Sandbox/Nodes/StaticMethodCallableNode.php',
'Latte\\Sandbox\\Nodes\\StaticPropertyFetchNode' => $vendorDir . '/latte/latte/src/Latte/Sandbox/Nodes/StaticPropertyFetchNode.php',
'Latte\\Sandbox\\RuntimeChecker' => $vendorDir . '/latte/latte/src/Latte/Sandbox/RuntimeChecker.php',
'Latte\\Sandbox\\SandboxExtension' => $vendorDir . '/latte/latte/src/Latte/Sandbox/SandboxExtension.php',
'Latte\\Sandbox\\SecurityPolicy' => $vendorDir . '/latte/latte/src/Latte/Sandbox/SecurityPolicy.php',
'Latte\\SecurityViolationException' => $vendorDir . '/latte/latte/src/Latte/exceptions.php',
'Latte\\Strict' => $vendorDir . '/latte/latte/src/Latte/Strict.php',
'Latte\\Tools\\Linter' => $vendorDir . '/latte/latte/src/Tools/Linter.php',
);
13 changes: 7 additions & 6 deletions vendor/composer/autoload_static.php
Original file line number Diff line number Diff line change
Expand Up @@ -126,8 +126,10 @@ class ComposerStaticInit4099f35b7b6284e2f3a57db28b8351f5
'Latte\\Compiler\\Nodes\\Php\\Expression\\PostOpNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/PostOpNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\PreOpNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/PreOpNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\PropertyFetchNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/PropertyFetchNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticCallNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticCallNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticCallableNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticCallableNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticCallNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticMethodCallNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticCallableNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticMethodCallableNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticMethodCallNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticMethodCallNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticMethodCallableNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticMethodCallableNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\StaticPropertyFetchNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/StaticPropertyFetchNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\TemporaryNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/TemporaryNode.php',
'Latte\\Compiler\\Nodes\\Php\\Expression\\TernaryNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Compiler/Nodes/Php/Expression/TernaryNode.php',
Expand Down Expand Up @@ -198,6 +200,7 @@ class ComposerStaticInit4099f35b7b6284e2f3a57db28b8351f5
'Latte\\Essential\\Nodes\\JumpNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Essential/Nodes/JumpNode.php',
'Latte\\Essential\\Nodes\\NAttrNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Essential/Nodes/NAttrNode.php',
'Latte\\Essential\\Nodes\\NClassNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Essential/Nodes/NClassNode.php',
'Latte\\Essential\\Nodes\\NElseNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Essential/Nodes/NElseNode.php',
'Latte\\Essential\\Nodes\\NTagNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Essential/Nodes/NTagNode.php',
'Latte\\Essential\\Nodes\\ParametersNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Essential/Nodes/ParametersNode.php',
'Latte\\Essential\\Nodes\\PrintNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Essential/Nodes/PrintNode.php',
Expand Down Expand Up @@ -227,7 +230,6 @@ class ComposerStaticInit4099f35b7b6284e2f3a57db28b8351f5
'Latte\\Loaders\\StringLoader' => __DIR__ . '/..' . '/latte/latte/src/Latte/Loaders/StringLoader.php',
'Latte\\Policy' => __DIR__ . '/..' . '/latte/latte/src/Latte/Policy.php',
'Latte\\PositionAwareException' => __DIR__ . '/..' . '/latte/latte/src/Latte/PositionAwareException.php',
'Latte\\RegexpException' => __DIR__ . '/..' . '/latte/latte/src/Latte/exceptions.php',
'Latte\\RuntimeException' => __DIR__ . '/..' . '/latte/latte/src/Latte/exceptions.php',
'Latte\\Runtime\\Block' => __DIR__ . '/..' . '/latte/latte/src/Latte/Runtime/Block.php',
'Latte\\Runtime\\FilterExecutor' => __DIR__ . '/..' . '/latte/latte/src/Latte/Runtime/FilterExecutor.php',
Expand All @@ -242,14 +244,13 @@ class ComposerStaticInit4099f35b7b6284e2f3a57db28b8351f5
'Latte\\Sandbox\\Nodes\\MethodCallableNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/Nodes/MethodCallableNode.php',
'Latte\\Sandbox\\Nodes\\PropertyFetchNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/Nodes/PropertyFetchNode.php',
'Latte\\Sandbox\\Nodes\\SandboxNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/Nodes/SandboxNode.php',
'Latte\\Sandbox\\Nodes\\StaticCallNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/Nodes/StaticCallNode.php',
'Latte\\Sandbox\\Nodes\\StaticCallableNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/Nodes/StaticCallableNode.php',
'Latte\\Sandbox\\Nodes\\StaticMethodCallNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/Nodes/StaticMethodCallNode.php',
'Latte\\Sandbox\\Nodes\\StaticMethodCallableNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/Nodes/StaticMethodCallableNode.php',
'Latte\\Sandbox\\Nodes\\StaticPropertyFetchNode' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/Nodes/StaticPropertyFetchNode.php',
'Latte\\Sandbox\\RuntimeChecker' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/RuntimeChecker.php',
'Latte\\Sandbox\\SandboxExtension' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/SandboxExtension.php',
'Latte\\Sandbox\\SecurityPolicy' => __DIR__ . '/..' . '/latte/latte/src/Latte/Sandbox/SecurityPolicy.php',
'Latte\\SecurityViolationException' => __DIR__ . '/..' . '/latte/latte/src/Latte/exceptions.php',
'Latte\\Strict' => __DIR__ . '/..' . '/latte/latte/src/Latte/Strict.php',
'Latte\\Tools\\Linter' => __DIR__ . '/..' . '/latte/latte/src/Tools/Linter.php',
);

Expand Down
14 changes: 7 additions & 7 deletions vendor/composer/installed.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,17 @@
"packages": [
{
"name": "latte/latte",
"version": "v3.0.10",
"version_normalized": "3.0.10.0",
"version": "v3.0.11",
"version_normalized": "3.0.11.0",
"source": {
"type": "git",
"url": "https://github.com/nette/latte.git",
"reference": "794f252da7437499e467766d633eed85e1a437b7"
"reference": "3306b03613077b8f1533865bb0c9b0f72160a65f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nette/latte/zipball/794f252da7437499e467766d633eed85e1a437b7",
"reference": "794f252da7437499e467766d633eed85e1a437b7",
"url": "https://api.github.com/repos/nette/latte/zipball/3306b03613077b8f1533865bb0c9b0f72160a65f",
"reference": "3306b03613077b8f1533865bb0c9b0f72160a65f",
"shasum": ""
},
"require": {
Expand All @@ -38,7 +38,7 @@
"nette/php-generator": "to use tag {templatePrint}",
"nette/utils": "to use filter |webalize"
},
"time": "2023-10-11T13:42:28+00:00",
"time": "2023-11-11T14:16:13+00:00",
"bin": [
"bin/latte-lint"
],
Expand Down Expand Up @@ -84,7 +84,7 @@
],
"support": {
"issues": "https://github.com/nette/latte/issues",
"source": "https://github.com/nette/latte/tree/v3.0.10"
"source": "https://github.com/nette/latte/tree/v3.0.11"
},
"install-path": "../latte/latte"
},
Expand Down
10 changes: 5 additions & 5 deletions vendor/composer/installed.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
'name' => '__root__',
'pretty_version' => 'dev-main',
'version' => 'dev-main',
'reference' => 'ad7748a8aeb1d1427ac13b0201c460c3b5d5a81c',
'reference' => 'a42b53c506848244de0f1f6ffe865521f260e13c',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
Expand All @@ -13,16 +13,16 @@
'__root__' => array(
'pretty_version' => 'dev-main',
'version' => 'dev-main',
'reference' => 'ad7748a8aeb1d1427ac13b0201c460c3b5d5a81c',
'reference' => 'a42b53c506848244de0f1f6ffe865521f260e13c',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
'dev_requirement' => false,
),
'latte/latte' => array(
'pretty_version' => 'v3.0.10',
'version' => '3.0.10.0',
'reference' => '794f252da7437499e467766d633eed85e1a437b7',
'pretty_version' => 'v3.0.11',
'version' => '3.0.11.0',
'reference' => '3306b03613077b8f1533865bb0c9b0f72160a65f',
'type' => 'library',
'install_path' => __DIR__ . '/../latte/latte',
'aliases' => array(),
Expand Down
1 change: 1 addition & 0 deletions vendor/latte/latte/src/Bridges/Tracy/BlueScreenPanel.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

/**
* BlueScreen panels for Tracy 2.x
* @internal
*/
class BlueScreenPanel
{
Expand Down
5 changes: 3 additions & 2 deletions vendor/latte/latte/src/Bridges/Tracy/LattePanel.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

/**
* Bar panel for Tracy 2.x
* @internal
*/
class LattePanel implements Tracy\IBarPanel
{
Expand All @@ -28,15 +29,15 @@ class LattePanel implements Tracy\IBarPanel
private ?string $name = null;


/** @deprecated use TracyExtension */
/** @deprecated use TracyExtension see https://bit.ly/46flfDi */
public static function initialize(Engine $latte, ?string $name = null, ?Tracy\Bar $bar = null): void
{
$bar ??= Tracy\Debugger::getBar();
$bar->addPanel(new self($latte, $name));
}


/** @deprecated use TracyExtension */
/** @deprecated use TracyExtension see https://bit.ly/46flfDi */
public function __construct(?Engine $latte = null, ?string $name = null)
{
$this->name = $name;
Expand Down
3 changes: 0 additions & 3 deletions vendor/latte/latte/src/Latte/Compiler/Block.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

namespace Latte\Compiler;

use Latte;
use Latte\Compiler\Nodes\Php\ExpressionNode;
use Latte\Compiler\Nodes\Php\ParameterNode;
use Latte\Compiler\Nodes\Php\Scalar;
Expand All @@ -18,8 +17,6 @@
/** @internal */
final class Block
{
use Latte\Strict;

public string $method;
public string $content;
public string $escaping;
Expand Down
3 changes: 0 additions & 3 deletions vendor/latte/latte/src/Latte/Compiler/Escaper.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

namespace Latte\Compiler;

use Latte;
use Latte\Compiler\Nodes\Html\ElementNode;
use Latte\ContentType;
use Latte\Runtime\Filters;
Expand All @@ -20,8 +19,6 @@
*/
final class Escaper
{
use Latte\Strict;

public const
Text = 'text',
JavaScript = 'js',
Expand Down
3 changes: 2 additions & 1 deletion vendor/latte/latte/src/Latte/Compiler/ExpressionBuilder.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
use Latte\Compiler\Nodes\Php\Scalar;


/** @deprecated */
final class ExpressionBuilder
{
public function __construct(
Expand Down Expand Up @@ -69,7 +70,7 @@ public function staticMethod(ExpressionNode|self|string $name, array $args = [])
$name = is_string($name)
? new IdentifierNode($name)
: ($name instanceof self ? $name->expr : $name);
return new self(new Expression\StaticCallNode($this->expr, $name, self::arrayToArgs($args)));
return new self(new Expression\StaticMethodCallNode($this->expr, $name, self::arrayToArgs($args)));
}


Expand Down
4 changes: 0 additions & 4 deletions vendor/latte/latte/src/Latte/Compiler/Node.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,12 @@

namespace Latte\Compiler;

use Latte;


/**
* @implements \IteratorAggregate<Node>
*/
abstract class Node implements \IteratorAggregate
{
use Latte\Strict;

public ?Position $position = null;


Expand Down
3 changes: 0 additions & 3 deletions vendor/latte/latte/src/Latte/Compiler/NodeHelpers.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

namespace Latte\Compiler;

use Latte;
use Latte\Compiler\Nodes\Php;
use Latte\Compiler\Nodes\Php\Expression;
use Latte\Compiler\Nodes\Php\ExpressionNode;
Expand All @@ -18,8 +17,6 @@

final class NodeHelpers
{
use Latte\Strict;

/** @return Node[] */
public static function find(Node $node, callable $filter): array
{
Expand Down
4 changes: 0 additions & 4 deletions vendor/latte/latte/src/Latte/Compiler/NodeTraverser.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,9 @@

namespace Latte\Compiler;

use Latte;


final class NodeTraverser
{
use Latte\Strict;

public const DontTraverseChildren = 1;
public const StopTraversal = 2;

Expand Down
9 changes: 3 additions & 6 deletions vendor/latte/latte/src/Latte/Compiler/Nodes/AuxiliaryNode.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,12 @@

class AuxiliaryNode extends AreaNode
{
/** @var (?Node)[] */
public array $nodes;


public function __construct(
public /*readonly*/ \Closure $print,
?Node ...$nodes,
/** @var (?Node)[] */
public array $nodes = [],
) {
$this->nodes = $nodes;
(function (?Node ...$nodes) {})(...$nodes);
}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ class ElementNode extends AreaNode
/** n:tag & n:tag- support */
public AreaNode $tagNode;
public bool $captureTagName = false;
public bool $breakable = false;
private ?string $endTagVar;


Expand Down Expand Up @@ -96,9 +97,11 @@ public function print(PrintContext $context): string

if ($this->content) {
$context->beginEscape()->enterHtmlText($this);
$res .= $this->content->print($context);
$content = $this->content->print($context);
$context->restoreEscape();
$res .= 'echo ' . $endTag . ';';
$res .= $this->breakable
? 'try { ' . $content . ' } finally { echo ' . $endTag . '; } '
: $content . 'echo ' . $endTag . ';';
}

return $res;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,12 @@

class AuxiliaryNode extends ExpressionNode
{
/** @var (?Node)[] */
public array $nodes;


public function __construct(
public /*readonly*/ \Closure $print,
?Node ...$nodes,
/** @var (?Node)[] */
public array $nodes = [],
) {
$this->nodes = $nodes;
(function (?Node ...$nodes) {})(...$nodes);
}


Expand Down

0 comments on commit 0d38b49

Please sign in to comment.