docs: function(symbol, partials) {
        var partial = this.partials[symbol];
  
        // check to see that if we've instantiated this partial before
        var template = partials[partial.name];
        if (partial.instance && partial.base == template) {
          return partial.instance;
        }
  
        if (typeof template == 'string') {
          if (!this.c) {
            throw new Error("No compiler available.");
          }
          template = this.c.compile(template, this.options);
        }
  
        if (!template) {
          return null;
        }
  
        // We use this to check whether the partials dictionary has changed
        this.partials[symbol].base = template;
  
        if (partial.subs) {
          // Make sure we consider parent template now
          if (this.activeSub === undefined) {
            // Store parent template text in partials.stackText to perform substitutions in child templates correctly
            partials.stackText  = this.text;
          }
           template = createSpecializedPartial(template, partial.subs, partial.partials, partials.stackText || this.text);
         }
        this.partials[symbol].instance = template;
        return template;
      }