text: /*global define*/
  define([
          '../Core/defined',
          '../Core/RuntimeError',
          './createTaskProcessorWorker'
      ], function(
          defined,
          RuntimeError,
          createTaskProcessorWorker) {
      "use strict";
  
      var cajaScript = 'https://caja.appspot.com/html-css-sanitizer-minified.js';
      var html_sanitize;
  
      /**
       * A worker that loads the Google Caja HTML & CSS sanitizer and sanitizes the
       * provided HTML string.
       *
       * @exports sanitize
       *
       * @see TaskProcessor
       * @see {@link http://www.w3.org/TR/workers/|Web Workers}
       */
      var sanitizeHtml = function(html) {
          if (!defined(html_sanitize)) {
              /*global self,importScripts*/
              self.window = {};
              importScripts(cajaScript); // importScripts is synchronous
              html_sanitize = window.html_sanitize;
  
              if (!defined(html_sanitize)) {
                  throw new RuntimeError('Unable to load Google Caja sanitizer script.');
              }
          }
  
          return html_sanitize(html);
      };
  
      return createTaskProcessorWorker(sanitizeHtml);
  });
  