 core/includes/common.inc                  |  9 +++++++++
 core/lib/Drupal/Core/Form/FormBuilder.php | 13 ++++++++++++-
 2 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/core/includes/common.inc b/core/includes/common.inc
index 3ceb479..26a301d 100644
--- a/core/includes/common.inc
+++ b/core/includes/common.inc
@@ -145,6 +145,15 @@
  */
 const LOCALE_PLURAL_DELIMITER = "\03";
 
+function yar(array $element, array $context) {
+  $value = \Drupal::csrfToken()->get($context['csrf_token_value']);
+  $callback = 'yar';
+  $placeholder = drupal_render_cache_generate_placeholder($callback, $context);
+  $element['#markup'] = str_replace($placeholder, $value, $element['#markup']);
+  return $element;
+}
+
+
 /**
  * Adds output to the HEAD tag of the HTML page.
  *
diff --git a/core/lib/Drupal/Core/Form/FormBuilder.php b/core/lib/Drupal/Core/Form/FormBuilder.php
index 8d532ed..a404d5d 100644
--- a/core/lib/Drupal/Core/Form/FormBuilder.php
+++ b/core/lib/Drupal/Core/Form/FormBuilder.php
@@ -579,14 +579,25 @@ public function prepareForm($form_id, &$form, FormStateInterface &$form_state) {
       // Otherwise, generate a public token based on the form id.
       else {
         $form['#token'] = $form_id;
+
+        $callback = 'yar';
+        $context = [
+          'csrf_token_value' => $form['#token'],
+        ];
+        $placeholder = drupal_render_cache_generate_placeholder($callback, $context);
         $form['form_token'] = array(
           '#id' => Html::getUniqueId('edit-' . $form_id . '-form-token'),
           '#type' => 'token',
-          '#default_value' => $this->csrfToken->get($form['#token']),
+          '#default_value' => $placeholder, //$this->csrfToken->get($form['#token']),
           // Form processing and validation requires this value, so ensure the
           // submitted form value appears literally, regardless of custom #tree
           // and #parents being set elsewhere.
           '#parents' => array('form_token'),
+          '#post_render_cache' => array(
+            $callback => array(
+              $context,
+            ),
+          ),
         );
       }
     }
