diff --git a/blocks-common/i-jquery/_version/i-jquery_version.bemhtml b/blocks-common/i-jquery/_version/i-jquery_version.bemhtml
index b2ed38e8..fca9d5bc 100644
--- a/blocks-common/i-jquery/_version/i-jquery_version.bemhtml
+++ b/blocks-common/i-jquery/_version/i-jquery_version.bemhtml
@@ -1,7 +1,7 @@
-block('i-jquery').def()(
-    applyCtx({
+block('i-jquery').def()(function() {
+    return applyCtx({
         block: 'b-page',
         elem: 'js',
         url: this.ctx.url || (this.ctx.protocol ? this.ctx.protocol + ':' : '') + '//yandex.st/jquery/' + this.mods.version + '/jquery.min.js'
-    })
-)
+    });
+});
diff --git a/blocks-desktop/b-page/__css/b-page__css.bemhtml b/blocks-desktop/b-page/__css/b-page__css.bemhtml
index 601d269c..d4ed2107 100644
--- a/blocks-desktop/b-page/__css/b-page__css.bemhtml
+++ b/blocks-desktop/b-page/__css/b-page__css.bemhtml
@@ -4,38 +4,41 @@ block('b-page').elem('css')(
 
     tag()('style'),
 
-    def().match(this.ctx.hasOwnProperty('ie')).match(!this.ctx._ieCommented)(function () {
-        var ie = this.ctx.ie;
-        if (ie === true) {
-            apply({
-                _mode:'',
-                ctx: [6, 7, 8, 9].map(function(v) {
-                    return { elem: 'css', url: this.ctx.url + '.ie' + v + '.css', ie: 'IE ' + v } }, this)
-            });
-        } else {
-            var hideRule = !ie ?
-                ['gt IE 9', '<!-->', '<!--'] :
-                ie === '!IE' ?
-                    [ie, '<!-->', '<!--'] :
-                    [ie, '', ''];
-            apply({
-                _mode: '',
-                'ctx._ieCommented': true,
-                ctx: [
-                    '<!--[if ' + hideRule[0] + ']>',
-                    hideRule[1],
-                    this.ctx,
-                    hideRule[2],
-                    '<![endif]-->'
-                ]
-            });
+    def()
+        .match(function() { return this.ctx.hasOwnProperty('ie'); })
+        .match(function() { return !this.ctx._ieCommented; })(function () {
+            var ie = this.ctx.ie;
+            if (ie === true) {
+                apply({
+                    _mode:'',
+                    ctx: [6, 7, 8, 9].map(function(v) {
+                        return { elem: 'css', url: this.ctx.url + '.ie' + v + '.css', ie: 'IE ' + v } }, this)
+                });
+            } else {
+                var hideRule = !ie ?
+                    ['gt IE 9', '<!-->', '<!--'] :
+                    ie === '!IE' ?
+                        [ie, '<!-->', '<!--'] :
+                        [ie, '', ''];
+                apply({
+                    _mode: '',
+                    'ctx._ieCommented': true,
+                    ctx: [
+                        '<!--[if ' + hideRule[0] + ']>',
+                        hideRule[1],
+                        this.ctx,
+                        hideRule[2],
+                        '<![endif]-->'
+                    ]
+                });
+            }
         }
-    }),
+    ),
 
-    match()(this.ctx.url)(
+    match()(function() { return this.ctx.url; })(
 
         tag()('link'),
-        attrs()({ rel: 'stylesheet', href: this.ctx.url })
+        attrs()(function() { return { rel: 'stylesheet', href: this.ctx.url }; })
 
     )
 
diff --git a/blocks-desktop/b-page/__js/b-page__js.bemhtml b/blocks-desktop/b-page/__js/b-page__js.bemhtml
index 2d769b3a..6c30a2d8 100644
--- a/blocks-desktop/b-page/__js/b-page__js.bemhtml
+++ b/blocks-desktop/b-page/__js/b-page__js.bemhtml
@@ -4,8 +4,8 @@ block('b-page').elem('js')(
 
     tag()('script'),
 
-    match(this.ctx.url)(
-        attrs()({ src: this.ctx.url })
+    match(function() { return this.ctx.url; })(
+        attrs()(function() { return { src: this.ctx.url }; })
     )
 
 )
diff --git a/blocks-desktop/b-page/b-page.bemhtml b/blocks-desktop/b-page/b-page.bemhtml
index 19eb11af..9917f748 100644
--- a/blocks-desktop/b-page/b-page.bemhtml
+++ b/blocks-desktop/b-page/b-page.bemhtml
@@ -1,10 +1,14 @@
 block('b-page')(
 
-    mode('doctype')(this.ctx.doctype || '<!DOCTYPE html>'),
+    mode('doctype')(function() {
+        return this.ctx.doctype || '<!DOCTYPE html>';
+    }),
 
-    mode('xUACompatible')(this.ctx['x-ua-compatible'] === false ? false : {
-        tag: 'meta',
-        attrs: { 'http-equiv': 'X-UA-Compatible', content: this.ctx['x-ua-compatible'] || 'IE=edge' }
+    mode('xUACompatible')(function() {
+        return this.ctx['x-ua-compatible'] === false ? false : {
+            tag: 'meta',
+            attrs: { 'http-equiv': 'X-UA-Compatible', content: this.ctx['x-ua-compatible'] || 'IE=edge' }
+        };
     }),
 
     def().match(function() { return !this.ctx._wrapped })(function () {
@@ -69,13 +73,13 @@ block('b-page')(
     elem('meta')(
         bem()(false),
         tag()('meta'),
-        attrs()(this.ctx.attrs)
+        attrs()(function() { return this.ctx.attrs; })
     ),
 
     elem('favicon')(
         bem()(false),
         tag()('link'),
-        attrs()({ rel: 'shortcut icon', href: this.ctx.url })
+        attrs()(function() { return { rel: 'shortcut icon', href: this.ctx.url }; })
     )
 
 )
diff --git a/blocks-desktop/i-jquery/__core/i-jquery__core.bemhtml b/blocks-desktop/i-jquery/__core/i-jquery__core.bemhtml
index 4c23eb0d..b8e703e7 100644
--- a/blocks-desktop/i-jquery/__core/i-jquery__core.bemhtml
+++ b/blocks-desktop/i-jquery/__core/i-jquery__core.bemhtml
@@ -1,7 +1,7 @@
-block('i-jquery').elem('core').def()(
-    applyCtx({
+block('i-jquery').elem('core').def()(function() {
+    return applyCtx({
         block: 'b-page',
         elem: 'js',
         url: '//yandex.st/jquery/1.8.3/jquery.min.js'
-    })
-)
+    });
+});