docs: function Template( template, regexp ) {
    if( typeof regexp === 'undefined' ) regexp = REGEXP;
  
    var lastIndex = 0;
    var match;
    var pieces = [];
    var varLength;
    regexp.lastIndex = 0;
  
    while( null != (match = regexp.exec( template )) ) {
      varLength = match[0].length;
      pieces.push( template.substr( lastIndex, regexp.lastIndex - lastIndex - varLength) );
      lastIndex = regexp.lastIndex;
      pieces.push( match[1] );
    }
  
    if( lastIndex < template.length ) {
      pieces.push( template.substr( lastIndex ) );
    }
  
    this.build = build.bind( this, pieces );
  }