Test Failed
Pull Request — master (#1190)
by butschster
10:27
created
src/Stempler/src/Lexer/Lexer.php 2 patches
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -31,20 +31,20 @@  discard block
 block discarded – undo
31 31
     public function parse(StreamInterface $src): \Generator
32 32
     {
33 33
         $stream = new Buffer($this->generate($src));
34
-        foreach ($this->grammars as $grammar) {
34
+        foreach ($this->grammars as $grammar){
35 35
             $stream = new Buffer($this->wrap(clone $grammar, $stream));
36 36
         }
37 37
 
38 38
         // always group raw bytes into raw tokens
39
-        foreach ($this->wrap(new RawGrammar(), $stream) as $n) {
39
+        foreach ($this->wrap(new RawGrammar(), $stream) as $n){
40 40
             yield $n;
41 41
         }
42 42
     }
43 43
 
44 44
     private function wrap(GrammarInterface $grammar, Buffer $stream): \Generator
45 45
     {
46
-        foreach ($grammar->parse($stream) as $n) {
47
-            if ($n instanceof Token && $n->grammar === null) {
46
+        foreach ($grammar->parse($stream) as $n){
47
+            if ($n instanceof Token && $n->grammar === null){
48 48
                 $n->grammar = $grammar::class;
49 49
             }
50 50
 
@@ -59,7 +59,7 @@  discard block
 block discarded – undo
59 59
      */
60 60
     private function generate(StreamInterface $src): \Generator
61 61
     {
62
-        while (!$src->isEOI()) {
62
+        while (!$src->isEOI()){
63 63
             yield new Byte($src->getOffset(), $src->peak());
64 64
         }
65 65
     }
Please login to merge, or discard this patch.
Braces   +10 added lines, -5 removed lines patch added patch discarded remove patch
@@ -31,20 +31,24 @@  discard block
 block discarded – undo
31 31
     public function parse(StreamInterface $src): \Generator
32 32
     {
33 33
         $stream = new Buffer($this->generate($src));
34
-        foreach ($this->grammars as $grammar) {
34
+        foreach ($this->grammars as $grammar)
35
+        {
35 36
             $stream = new Buffer($this->wrap(clone $grammar, $stream));
36 37
         }
37 38
 
38 39
         // always group raw bytes into raw tokens
39
-        foreach ($this->wrap(new RawGrammar(), $stream) as $n) {
40
+        foreach ($this->wrap(new RawGrammar(), $stream) as $n)
41
+        {
40 42
             yield $n;
41 43
         }
42 44
     }
43 45
 
44 46
     private function wrap(GrammarInterface $grammar, Buffer $stream): \Generator
45 47
     {
46
-        foreach ($grammar->parse($stream) as $n) {
47
-            if ($n instanceof Token && $n->grammar === null) {
48
+        foreach ($grammar->parse($stream) as $n)
49
+        {
50
+            if ($n instanceof Token && $n->grammar === null)
51
+            {
48 52
                 $n->grammar = $grammar::class;
49 53
             }
50 54
 
@@ -59,7 +63,8 @@  discard block
 block discarded – undo
59 63
      */
60 64
     private function generate(StreamInterface $src): \Generator
61 65
     {
62
-        while (!$src->isEOI()) {
66
+        while (!$src->isEOI())
67
+        {
63 68
             yield new Byte($src->getOffset(), $src->peak());
64 69
         }
65 70
     }
Please login to merge, or discard this patch.
src/Stempler/src/Compiler/Renderer/PHPRenderer.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -13,7 +13,7 @@
 block discarded – undo
13 13
 {
14 14
     public function render(Compiler $compiler, Compiler\Result $result, NodeInterface $node): bool
15 15
     {
16
-        if ($node instanceof PHP) {
16
+        if ($node instanceof PHP){
17 17
             $result->push($node->content, $node->getContext());
18 18
             return true;
19 19
         }
Please login to merge, or discard this patch.
Braces   +2 added lines, -1 removed lines patch added patch discarded remove patch
@@ -13,7 +13,8 @@
 block discarded – undo
13 13
 {
14 14
     public function render(Compiler $compiler, Compiler\Result $result, NodeInterface $node): bool
15 15
     {
16
-        if ($node instanceof PHP) {
16
+        if ($node instanceof PHP)
17
+        {
17 18
             $result->push($node->content, $node->getContext());
18 19
             return true;
19 20
         }
Please login to merge, or discard this patch.
src/Stempler/src/Compiler/Renderer/HTMLRenderer.php 2 patches
Spacing   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -16,7 +16,7 @@  discard block
 block discarded – undo
16 16
 {
17 17
     public function render(Compiler $compiler, Compiler\Result $result, NodeInterface $node): bool
18 18
     {
19
-        switch (true) {
19
+        switch (true){
20 20
             case $node instanceof Tag:
21 21
                 $this->tag($compiler, $result, $node);
22 22
                 return true;
@@ -38,8 +38,8 @@  discard block
 block discarded – undo
38 38
     {
39 39
         $result->push(\sprintf('<%s', $node->name), $node->getContext());
40 40
 
41
-        foreach ($node->attrs as $attr) {
42
-            if (!$attr instanceof Attr) {
41
+        foreach ($node->attrs as $attr){
42
+            if (!$attr instanceof Attr){
43 43
                 $compiler->compile($attr, $result);
44 44
                 continue;
45 45
             }
@@ -49,30 +49,30 @@  discard block
 block discarded – undo
49 49
 
50 50
         $result->push(\sprintf('%s>', $node->void ? '/' : ''), null);
51 51
 
52
-        foreach ($node->nodes as $child) {
52
+        foreach ($node->nodes as $child){
53 53
             $compiler->compile($child, $result);
54 54
         }
55 55
 
56
-        if (!$node->void) {
56
+        if (!$node->void){
57 57
             $result->push(\sprintf('</%s>', $node->name), null);
58 58
         }
59 59
     }
60 60
 
61 61
     private function attribute(Compiler $compiler, Compiler\Result $result, Attr $node): void
62 62
     {
63
-        if ($node->name instanceof NodeInterface) {
63
+        if ($node->name instanceof NodeInterface){
64 64
             $result->push(' ', null);
65 65
             $compiler->compile($node->name, $result);
66
-        } else {
66
+        }else{
67 67
             $result->push(\sprintf(' %s', $node->name), $node->getContext());
68 68
         }
69 69
 
70 70
         $value = $node->value;
71
-        if ($value instanceof Nil) {
71
+        if ($value instanceof Nil){
72 72
             return;
73 73
         }
74 74
 
75
-        if ($value instanceof NodeInterface) {
75
+        if ($value instanceof NodeInterface){
76 76
             $result->push('=', null);
77 77
             $compiler->compile($value, $result);
78 78
             return;
@@ -83,8 +83,8 @@  discard block
 block discarded – undo
83 83
 
84 84
     private function verbatim(Compiler $compiler, Compiler\Result $result, Verbatim $node): void
85 85
     {
86
-        foreach ($node->nodes as $child) {
87
-            if (\is_string($child)) {
86
+        foreach ($node->nodes as $child){
87
+            if (\is_string($child)){
88 88
                 $result->push($child, null);
89 89
                 continue;
90 90
             }
Please login to merge, or discard this patch.
Braces   +23 added lines, -11 removed lines patch added patch discarded remove patch
@@ -16,7 +16,8 @@  discard block
 block discarded – undo
16 16
 {
17 17
     public function render(Compiler $compiler, Compiler\Result $result, NodeInterface $node): bool
18 18
     {
19
-        switch (true) {
19
+        switch (true)
20
+        {
20 21
             case $node instanceof Tag:
21 22
                 $this->tag($compiler, $result, $node);
22 23
                 return true;
@@ -38,8 +39,10 @@  discard block
 block discarded – undo
38 39
     {
39 40
         $result->push(\sprintf('<%s', $node->name), $node->getContext());
40 41
 
41
-        foreach ($node->attrs as $attr) {
42
-            if (!$attr instanceof Attr) {
42
+        foreach ($node->attrs as $attr)
43
+        {
44
+            if (!$attr instanceof Attr)
45
+            {
43 46
                 $compiler->compile($attr, $result);
44 47
                 continue;
45 48
             }
@@ -49,30 +52,37 @@  discard block
 block discarded – undo
49 52
 
50 53
         $result->push(\sprintf('%s>', $node->void ? '/' : ''), null);
51 54
 
52
-        foreach ($node->nodes as $child) {
55
+        foreach ($node->nodes as $child)
56
+        {
53 57
             $compiler->compile($child, $result);
54 58
         }
55 59
 
56
-        if (!$node->void) {
60
+        if (!$node->void)
61
+        {
57 62
             $result->push(\sprintf('</%s>', $node->name), null);
58 63
         }
59 64
     }
60 65
 
61 66
     private function attribute(Compiler $compiler, Compiler\Result $result, Attr $node): void
62 67
     {
63
-        if ($node->name instanceof NodeInterface) {
68
+        if ($node->name instanceof NodeInterface)
69
+        {
64 70
             $result->push(' ', null);
65 71
             $compiler->compile($node->name, $result);
66
-        } else {
72
+        }
73
+        else
74
+        {
67 75
             $result->push(\sprintf(' %s', $node->name), $node->getContext());
68 76
         }
69 77
 
70 78
         $value = $node->value;
71
-        if ($value instanceof Nil) {
79
+        if ($value instanceof Nil)
80
+        {
72 81
             return;
73 82
         }
74 83
 
75
-        if ($value instanceof NodeInterface) {
84
+        if ($value instanceof NodeInterface)
85
+        {
76 86
             $result->push('=', null);
77 87
             $compiler->compile($value, $result);
78 88
             return;
@@ -83,8 +93,10 @@  discard block
 block discarded – undo
83 93
 
84 94
     private function verbatim(Compiler $compiler, Compiler\Result $result, Verbatim $node): void
85 95
     {
86
-        foreach ($node->nodes as $child) {
87
-            if (\is_string($child)) {
96
+        foreach ($node->nodes as $child)
97
+        {
98
+            if (\is_string($child))
99
+            {
88 100
                 $result->push($child, null);
89 101
                 continue;
90 102
             }
Please login to merge, or discard this patch.
src/Stempler/src/Compiler/Renderer/CoreRenderer.php 2 patches
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -21,7 +21,7 @@  discard block
 block discarded – undo
21 21
         Compiler\Result $result,
22 22
         NodeInterface $node
23 23
     ): bool {
24
-        switch (true) {
24
+        switch (true){
25 25
             case $node instanceof Hidden:
26 26
                 return true;
27 27
 
@@ -29,7 +29,7 @@  discard block
 block discarded – undo
29 29
                 $result->withinContext(
30 30
                     $node->getContext(),
31 31
                     function (Compiler\Result $source) use ($node, $compiler): void {
32
-                        foreach ($node->nodes as $child) {
32
+                        foreach ($node->nodes as $child){
33 33
                             $compiler->compile($child, $source);
34 34
                         }
35 35
                     }
@@ -41,8 +41,8 @@  discard block
 block discarded – undo
41 41
                 $result->withinContext(
42 42
                     $node->getContext(),
43 43
                     function (Compiler\Result $source) use ($node, $compiler): void {
44
-                        foreach ($node->nodes as $child) {
45
-                            if (\is_string($child)) {
44
+                        foreach ($node->nodes as $child){
45
+                            if (\is_string($child)){
46 46
                                 $source->push($child, null);
47 47
                                 continue;
48 48
                             }
Please login to merge, or discard this patch.
Braces   +8 added lines, -4 removed lines patch added patch discarded remove patch
@@ -21,7 +21,8 @@  discard block
 block discarded – undo
21 21
         Compiler\Result $result,
22 22
         NodeInterface $node
23 23
     ): bool {
24
-        switch (true) {
24
+        switch (true)
25
+        {
25 26
             case $node instanceof Hidden:
26 27
                 return true;
27 28
 
@@ -29,7 +30,8 @@  discard block
 block discarded – undo
29 30
                 $result->withinContext(
30 31
                     $node->getContext(),
31 32
                     function (Compiler\Result $source) use ($node, $compiler): void {
32
-                        foreach ($node->nodes as $child) {
33
+                        foreach ($node->nodes as $child)
34
+                        {
33 35
                             $compiler->compile($child, $source);
34 36
                         }
35 37
                     }
@@ -41,8 +43,10 @@  discard block
 block discarded – undo
41 43
                 $result->withinContext(
42 44
                     $node->getContext(),
43 45
                     function (Compiler\Result $source) use ($node, $compiler): void {
44
-                        foreach ($node->nodes as $child) {
45
-                            if (\is_string($child)) {
46
+                        foreach ($node->nodes as $child)
47
+                        {
48
+                            if (\is_string($child))
49
+                            {
46 50
                                 $source->push($child, null);
47 51
                                 continue;
48 52
                             }
Please login to merge, or discard this patch.
src/Stempler/src/Compiler/SourceMap.php 2 patches
Spacing   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -38,8 +38,8 @@  discard block
 block discarded – undo
38 38
     {
39 39
         $paths = [];
40 40
 
41
-        foreach ($this->lines as $line) {
42
-            if (!\in_array($this->paths[$line[0]], $paths, true)) {
41
+        foreach ($this->lines as $line){
42
+            if (!\in_array($this->paths[$line[0]], $paths, true)){
43 43
                 $paths[] = $this->paths[$line[0]];
44 44
             }
45 45
         }
@@ -54,13 +54,13 @@  discard block
 block discarded – undo
54 54
     public function getStack(int $line): array
55 55
     {
56 56
         $found = null;
57
-        foreach ($this->lines as $linen => $ctx) {
58
-            if ($linen <= $line) {
57
+        foreach ($this->lines as $linen => $ctx){
58
+            if ($linen <= $line){
59 59
                 $found = $ctx;
60 60
             }
61 61
         }
62 62
 
63
-        if ($found === null) {
63
+        if ($found === null){
64 64
             return [];
65 65
         }
66 66
 
@@ -73,7 +73,7 @@  discard block
 block discarded – undo
73 73
     /**
74 74
      * Compress.
75 75
      */
76
-    public function serialize(): string|false
76
+    public function serialize(): string | false
77 77
     {
78 78
         return \json_encode($this->__serialize());
79 79
     }
@@ -87,9 +87,9 @@  discard block
 block discarded – undo
87 87
     {
88 88
         $map = new self();
89 89
 
90
-        foreach ($locations as $offset => $location) {
90
+        foreach ($locations as $offset => $location){
91 91
             $line = Source::resolveLine($content, $offset);
92
-            if (!isset($map->lines[$line])) {
92
+            if (!isset($map->lines[$line])){
93 93
                 $map->lines[$line] = $map->calculateLine($location, $loader);
94 94
             }
95 95
         }
@@ -106,19 +106,19 @@  discard block
 block discarded – undo
106 106
             'line' => $line[1],
107 107
         ];
108 108
 
109
-        if ($line[2] !== null) {
109
+        if ($line[2] !== null){
110 110
             $this->unpack($result, $line[2]);
111 111
         }
112 112
     }
113 113
 
114 114
     private function calculateLine(Location $location, LoaderInterface $loader): array
115 115
     {
116
-        if (!isset($this->sourceCache[$location->path])) {
116
+        if (!isset($this->sourceCache[$location->path])){
117 117
             $this->sourceCache[$location->path] = $loader->load($location->path);
118 118
         }
119 119
         $path = $this->sourceCache[$location->path]->getFilename();
120 120
 
121
-        if (!\in_array($path, $this->paths, true)) {
121
+        if (!\in_array($path, $this->paths, true)){
122 122
             $this->paths[] = $path;
123 123
         }
124 124
 
Please login to merge, or discard this patch.
Braces   +20 added lines, -10 removed lines patch added patch discarded remove patch
@@ -38,8 +38,10 @@  discard block
 block discarded – undo
38 38
     {
39 39
         $paths = [];
40 40
 
41
-        foreach ($this->lines as $line) {
42
-            if (!\in_array($this->paths[$line[0]], $paths, true)) {
41
+        foreach ($this->lines as $line)
42
+        {
43
+            if (!\in_array($this->paths[$line[0]], $paths, true))
44
+            {
43 45
                 $paths[] = $this->paths[$line[0]];
44 46
             }
45 47
         }
@@ -54,13 +56,16 @@  discard block
 block discarded – undo
54 56
     public function getStack(int $line): array
55 57
     {
56 58
         $found = null;
57
-        foreach ($this->lines as $linen => $ctx) {
58
-            if ($linen <= $line) {
59
+        foreach ($this->lines as $linen => $ctx)
60
+        {
61
+            if ($linen <= $line)
62
+            {
59 63
                 $found = $ctx;
60 64
             }
61 65
         }
62 66
 
63
-        if ($found === null) {
67
+        if ($found === null)
68
+        {
64 69
             return [];
65 70
         }
66 71
 
@@ -87,9 +92,11 @@  discard block
 block discarded – undo
87 92
     {
88 93
         $map = new self();
89 94
 
90
-        foreach ($locations as $offset => $location) {
95
+        foreach ($locations as $offset => $location)
96
+        {
91 97
             $line = Source::resolveLine($content, $offset);
92
-            if (!isset($map->lines[$line])) {
98
+            if (!isset($map->lines[$line]))
99
+            {
93 100
                 $map->lines[$line] = $map->calculateLine($location, $loader);
94 101
             }
95 102
         }
@@ -106,19 +113,22 @@  discard block
 block discarded – undo
106 113
             'line' => $line[1],
107 114
         ];
108 115
 
109
-        if ($line[2] !== null) {
116
+        if ($line[2] !== null)
117
+        {
110 118
             $this->unpack($result, $line[2]);
111 119
         }
112 120
     }
113 121
 
114 122
     private function calculateLine(Location $location, LoaderInterface $loader): array
115 123
     {
116
-        if (!isset($this->sourceCache[$location->path])) {
124
+        if (!isset($this->sourceCache[$location->path]))
125
+        {
117 126
             $this->sourceCache[$location->path] = $loader->load($location->path);
118 127
         }
119 128
         $path = $this->sourceCache[$location->path]->getFilename();
120 129
 
121
-        if (!\in_array($path, $this->paths, true)) {
130
+        if (!\in_array($path, $this->paths, true))
131
+        {
122 132
             $this->paths[] = $path;
123 133
         }
124 134
 
Please login to merge, or discard this patch.
src/Stempler/src/Compiler/Location.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -16,7 +16,7 @@
 block discarded – undo
16 16
         public int $offset,
17 17
         public ?string $grammar = null,
18 18
         public ?Location $parent = null
19
-    ) {
19
+    ){
20 20
     }
21 21
 
22 22
     public static function fromContext(Context $context, ?Location $parent = null): Location
Please login to merge, or discard this patch.
src/Storage/src/Bucket.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -21,7 +21,7 @@
 block discarded – undo
21 21
         protected FilesystemOperator $fs,
22 22
         protected ?string $name = null,
23 23
         protected ?UriResolverInterface $resolver = null
24
-    ) {
24
+    ){
25 25
     }
26 26
 
27 27
     public function getName(): ?string
Please login to merge, or discard this patch.
src/Storage/src/StorageInterface.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -28,7 +28,7 @@
 block discarded – undo
28 28
     /**
29 29
      * @throws InvalidArgumentException
30 30
      */
31
-    public function file(string|\Stringable $id): FileInterface;
31
+    public function file(string | \Stringable $id): FileInterface;
32 32
 
33 33
     public function withDefault(string $name): self;
34 34
 }
Please login to merge, or discard this patch.
src/Storage/src/Storage.php 2 patches
Spacing   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -55,14 +55,14 @@  discard block
 block discarded – undo
55 55
     {
56 56
         $name ??= $this->default;
57 57
 
58
-        if (!isset($this->buckets[$name])) {
58
+        if (!isset($this->buckets[$name])){
59 59
             throw new InvalidArgumentException(\sprintf(self::ERROR_NOT_FOUND, $name));
60 60
         }
61 61
 
62 62
         return $this->buckets[$name];
63 63
     }
64 64
 
65
-    public function file(string|\Stringable $id): FileInterface
65
+    public function file(string | \Stringable $id): FileInterface
66 66
     {
67 67
         [$bucket, $file] = $this->parseUri($id);
68 68
 
@@ -71,7 +71,7 @@  discard block
 block discarded – undo
71 71
 
72 72
     public function add(string $name, BucketInterface $storage, bool $overwrite = false): void
73 73
     {
74
-        if (!$overwrite && isset($this->buckets[$name])) {
74
+        if (!$overwrite && isset($this->buckets[$name])){
75 75
             throw new \InvalidArgumentException(\sprintf(self::ERROR_REDEFINITION, $name));
76 76
         }
77 77
 
@@ -92,35 +92,35 @@  discard block
 block discarded – undo
92 92
      * @return array{0: string|null, 1: string}
93 93
      * @throws InvalidArgumentException
94 94
      */
95
-    protected function parseUri(string|\Stringable $uri, bool $withScheme = true): array
95
+    protected function parseUri(string | \Stringable $uri, bool $withScheme = true): array
96 96
     {
97 97
         $uri = $this->uriToString($uri);
98 98
         $result = \parse_url($uri);
99 99
 
100
-        if ($result === false) {
100
+        if ($result === false){
101 101
             $message = 'URI argument must be a valid URI in "[STORAGE]://[PATH_TO_FILE]" format, but `%s` given';
102 102
             throw new InvalidArgumentException(\sprintf($message, $uri));
103 103
         }
104 104
 
105
-        if (!isset($result['scheme'])) {
105
+        if (!isset($result['scheme'])){
106 106
             $result['scheme'] = $withScheme ? $this->default : null;
107 107
         }
108 108
 
109
-        if (!isset($result['host'])) {
109
+        if (!isset($result['host'])){
110 110
             $result['host'] = '';
111 111
         }
112 112
 
113 113
         return [
114 114
             $result['scheme'] ?? null,
115
-            $result['host'] . \rtrim($result['path'] ?? '', '/'),
115
+            $result['host'].\rtrim($result['path'] ?? '', '/'),
116 116
         ];
117 117
     }
118 118
 
119
-    private function uriToString(string|\Stringable $uri): string
119
+    private function uriToString(string | \Stringable $uri): string
120 120
     {
121 121
         return match (true) {
122 122
             \is_string($uri) => $uri,
123
-            default => (string) $uri
123
+            default => (string)$uri
124 124
         };
125 125
     }
126 126
 }
Please login to merge, or discard this patch.
Braces   +10 added lines, -5 removed lines patch added patch discarded remove patch
@@ -55,7 +55,8 @@  discard block
 block discarded – undo
55 55
     {
56 56
         $name ??= $this->default;
57 57
 
58
-        if (!isset($this->buckets[$name])) {
58
+        if (!isset($this->buckets[$name]))
59
+        {
59 60
             throw new InvalidArgumentException(\sprintf(self::ERROR_NOT_FOUND, $name));
60 61
         }
61 62
 
@@ -71,7 +72,8 @@  discard block
 block discarded – undo
71 72
 
72 73
     public function add(string $name, BucketInterface $storage, bool $overwrite = false): void
73 74
     {
74
-        if (!$overwrite && isset($this->buckets[$name])) {
75
+        if (!$overwrite && isset($this->buckets[$name]))
76
+        {
75 77
             throw new \InvalidArgumentException(\sprintf(self::ERROR_REDEFINITION, $name));
76 78
         }
77 79
 
@@ -97,16 +99,19 @@  discard block
 block discarded – undo
97 99
         $uri = $this->uriToString($uri);
98 100
         $result = \parse_url($uri);
99 101
 
100
-        if ($result === false) {
102
+        if ($result === false)
103
+        {
101 104
             $message = 'URI argument must be a valid URI in "[STORAGE]://[PATH_TO_FILE]" format, but `%s` given';
102 105
             throw new InvalidArgumentException(\sprintf($message, $uri));
103 106
         }
104 107
 
105
-        if (!isset($result['scheme'])) {
108
+        if (!isset($result['scheme']))
109
+        {
106 110
             $result['scheme'] = $withScheme ? $this->default : null;
107 111
         }
108 112
 
109
-        if (!isset($result['host'])) {
113
+        if (!isset($result['host']))
114
+        {
110 115
             $result['host'] = '';
111 116
         }
112 117
 
Please login to merge, or discard this patch.