text: var util = require("util");
  var NodeGit = require("../");
  var Blob = NodeGit.Blob;
  var LookupWrapper = NodeGit.Utils.lookupWrapper;
  var TreeEntry = NodeGit.TreeEntry;
  
  var _filteredContent = Blob.filteredContent;
  
  /**
  * Retrieves the blob pointed to by the oid
  * @async
  * @param {Repository} repo The repo that the blob lives in
  * @param {String|Oid|Blob} id The blob to lookup
  * @return {Blob}
  */
  Blob.lookup = LookupWrapper(Blob);
  
  /**
   * Retrieve the content of the Blob.
   *
   * @return {Buffer} Contents as a buffer.
   */
  Blob.prototype.content = function() {
    return this.rawcontent().toBuffer(this.rawsize());
  };
  
  /**
   * Retrieve the Blob's type.
   *
   * @return {Number} The filemode of the blob.
   */
  Blob.prototype.filemode = function() {
    var FileMode = TreeEntry.FILEMODE;
  
    return this.isBinary() ? FileMode.EXECUTABLE : FileMode.BLOB;
  };
  
  /**
   * Retrieve the Blob's content as String.
   *
   * @return {String} Contents as a string.
   */
  Blob.prototype.toString = function() {
    return this.content().toString();
  };
  
  Blob.filteredContent = util.deprecate(
    _filteredContent,
    "NodeGit.Blob.filteredContent is deprecated" +
    " use NodeGit.Blob.prototype.filter instead."
  );
  