Array.prototype.simpleFind = simpleFind;
Array.prototype.quickFind = quickFind;
Array.prototype.internQuickFind = internQuickFind;

function simpleFind(entry, delimiter)
{
   for(i = 0; i < this.length; i++)
      if(this[i].first(delimiter) == entry)
         return(this[i]);

   return("");
}

function internQuickFind(entry, delimiter, start, end)
{
   if(entry.length == 0 || start == this.length)
      return("");
   if(start == end)
   {
      if(this.length == 0 || this[start].first(delimiter) != entry)
         return("");
      else
         return(this[start]);
   }
   else
   {
      var mid = Math.floor(start + (end - start) / 2);
      var e = this[mid].first(delimiter);
      if(e > entry)
         return(this.internQuickFind(entry, delimiter, start, mid));
      else
         if(e < entry)
            return(this.internQuickFind(entry, delimiter, mid + 1, end));
      return(this[mid]);
   }
}

function quickFind(entry, delimiter)
{
   return(this.internQuickFind(entry, delimiter, 0, this.length));
}
