docs: function _getFoundationContent(pledge, renderer, hawkejs, options) {
  
  	var result = '<title>',
  	    title;
  
  	if (renderer.page_title) {
  		if (typeof renderer.page_title == 'string') {
  			title = renderer.page_title;
  		} else if (renderer.page_title.toHawkejsString) {
  			title = renderer.page_title.toHawkejsString(renderer);
  		}
  
  		if (title) {
  			title = Bound.String.stripTags(title);
  			title = Bound.String.encodeHTML(title);
  		}
  
  		if (title) {
  			result += title;
  		}
  	}
  
  	result += '</title>\n';
  
  	if (Blast.isNode && hawkejs.raw_code != null) {
  		result += hawkejs.raw_code;
  	}
  
  	let packed_variables,
  	    settings,
  	    entry,
  	    html = result,
  	    dry,
  	    url,
  	    i;
  
  	settings = {
  		root              : hawkejs.root,
  		script_path       : hawkejs.script_path,
  		style_path        : hawkejs.style_path,
  		app_version       : hawkejs.app_version,
  		withRenderContext : hawkejs.withRenderContext,
  		global_protoblast : options.protoblast
  	};
  
  	// Add all variables to a single array
  	packed_variables = [renderer.variables, settings, renderer];
  
  	// Get the serialized settings & view variables
  	if (hawkejs._debug) {
  		dry = Bound.JSON.dry(packed_variables, null, '\t');
  
  		// Don't let google index this page
  		html += '\t\t<meta name="robots" content="noindex">\n';
  	} else {
  		dry = Bound.JSON.dry(packed_variables);
  	}
  
  	// Add things we can preload
  	html += renderer.createPreloadHtml();
  
  	// Set the static exposed variables string
  	html += '\t\t<!-- Static hawkejs variables -->\n\t\t';
  	html += hawkejs.static_exposed_js_string + '\n\n';
  
  	html += '\t\t<!-- Request specific variables -->\n';
  
  	// Set the data first (async defer doesn't always do what it should)
  	html += '\t\t<script>window._initHawkejs = ' + dry.replace(/\<\/script/g, '</s" + "cript') + ';</script>\n';
  
  	// Load the hawkejs client file according to the strategy
  	if (hawkejs.strategy == 'defer') {
  		html += '\t\t<script defer src="' + hawkejs.root_path + hawkejs.client_path + '"></script>\n';
  	} else if (hawkejs.strategy == 'preventing' && renderer.has_bottom) {
  		html += '\t\t<script async defer src="' + hawkejs.root_path + hawkejs.client_path + '"></script>\n';
  	}
  
  	html += '\t\t<script>';
  	html += 'if (typeof _initHawkejsFunction == "function") {window.hawkejs = _initHawkejsFunction()}';
  	html += '</script>\n';
  
  	html += renderer.createStyleHtml(renderer.styles);
  
  	// Load the hawkejs client file according to the blocking strategy
  	if (hawkejs.strategy == 'blocking' || !renderer.has_bottom) {
  		html += '\t\t<script src="' + hawkejs.root_path + hawkejs.client_path + '"></script>\n';
  	}
  
  	this[Hawkejs.RESULT] = html;
  
  	pledge.resolve(html);
  }