﻿// JScript File

function Queue(){
  var queue=new Array();
  var queueSpace=0;
  this.length=function()
  {
    return queue.length;
  }
  
  this.enqueue=function(element)
  {
    queue.push(element);
  }
  
  this.dequeue=function()
  {
    if (queue.length){
      var element=queue[queueSpace];
      if (++queueSpace*2 >= queue.length){
        for (var i=queueSpace;i<queue.length;i++) queue[i-queueSpace]=queue[i];
        queue.length-=queueSpace;
        queueSpace=0;
      }
      return element;
    }else{
      return undefined;
    }
  }
}

