storage = $storage; } public function beforeCompile(Latte\Engine $engine): void { $this->used = false; } public function getTags(): array { return [ 'cache' => function (Tag $tag): \Generator { $this->used = true; return yield from Nodes\CacheNode::create($tag); }, ]; } public function getPasses(): array { return [ 'cacheInitialization' => function (TemplateNode $node): void { if ($this->used) { $node->head->append(new AuxiliaryNode(fn() => '$this->global->cache->initialize($this);')); } }, ]; } public function getProviders(): array { return [ 'cache' => new Runtime($this->storage), ]; } public function getCacheKey(Latte\Engine $engine): array { return ['version' => 2]; } } __halt_compiler();----SIGNATURE:----BmlfO9GTM9ODciy6XLqBmG6O+x2/O0kmgZPxlKRVHFCkG3L84NaSbWpPSksTRAxVTqQo0j8qR+sPaJg1Z+QAlN6xHGcNFp8HUR5yqIwHsgTfKmVIjpY/RvwuolH6be+0Jhg7l59m2H2B80+WOeRJyaxZgYzFj+PzHh58JrPwysNS/yxK7v35k8NEUzJXVKtRMbZi5J3wuNi8fGWhAcjSSypx2gKRQe1cO+ewcKwWgq3nd9AsjxAQlxuT4aehLXOn+o/YwJJ5ECYg/LaA7N5JNTf1ljHSwMWUGEJccS/W3fusFxMHVxGniLvG+iF6myLEyycHLnGm+E7kHQ0q9XlkTJTuVq73UOqGZI09/jWVZZzRpa6IhFB59r94CYghmlqHHRpIb6SrbgJ9n3V4aFzPQm3er2RVD3aSoniTXTHdFAQ07ifH+weuXDlVi0xdWZ0kg4wKAwsiTnRr4WLbS1CVg/dJpkonIKSci+6KqiQ8oEM8ziWFJXCbKE4wKE6HGoGPMYe9GSkgaWaj204yy5OBfByWWZ8nXBzolP2ePserR0axTtl3qiawUg46LVxml0TCikylKk605QT/p4tjPMhdD8S+Jidn7GMRlX9+VgzkeDhLFbjrhJbq9yzyX0BGtxzuLNqATYVnjWgPYo5ECpU4LywjOnNyEvj3PvrvSjHuHQI=----ATTACHMENT:----NzI5NDMxNzczMjY5MzA5MSA1MTM0MzIxNTM1MDkzNzk4IDQ0NjA3NTI1MTg1MzkwNjc=