docs: function parseTag(buf) {
    var index = 0;
    var tag = buf[index++];
    var constructed = (tag & 0x20) == 0x20;
    
    if ((tag & 0x1F) == 0x1F) {
      do {
        tag = tag << 8;
        tag = tag | buf[index++];  
      } while((tag & 0x80) == 0x80);
      
      if (index > 4) {
        throw new RangeError("The length of the tag cannot be more than 4 bytes in this implementation");
      }
    }
    return { tag: tag, length: index, constructed: constructed };
  }