function PageQuery(q){
if(q.length>1)this.q=q.substring(1,q.length)
else this.q=null
this.keyValuePairs=new Array()
if(q){
for(var i=0;i<this.q.split("&").length;i++){
this.keyValuePairs[i]=this.q.split("&")[i]}}
this.getKeyValuePairs=function(){return this.keyValuePairs;}
this.getValue=function(s){
for(var j=0;j<this.keyValuePairs.length;j++){
if(this.keyValuePairs[j].split("=")[0]==s)
return this.keyValuePairs[j].split("=")[1]}
return false}
this.getParameters=function(){
var a=new Array(this.getLength())
for(var j=0;j<this.keyValuePairs.length;j++){
a[j]=this.keyValuePairs[j].split("=")[0]}
return a}
this.getLength=function(){return this.keyValuePairs.length;}}
function queryString(key){
var page=new PageQuery(window.location.search)
return unescape(page.getValue(key))}
function validate(){
var str=""
var elements=document.getElementsByTagName('input')
for(var i=0;i<elements.length;i++){
var pattern=elements.item(i).getAttribute('pattern')
if(pattern !=null){
var value=elements.item(i).value
var offendingChar=value.match(pattern)
if(offendingChar !=null){
str+=elements.item(i).getAttribute('errorMsg')+"\n"+
"Invalid character(s): '"+offendingChar+"' \n"}}}
if(str !=""){
alert("ERROR ALERT!!\n"+str)
return false}
else{
return true}}
function $(){
var elements=new Array()
for(var i=0;i<arguments.length;i++){
var element=arguments[i]
if(typeof element=='string')
element=document.getElementById(element)
if(arguments.length==1)
return element
elements.push(element)}
return elements}
function HashTable(){
this.hashArr=new Array()
this.length=0}
HashTable.prototype.get=function(key){
return this.hashArr[key]}
HashTable.prototype.put=function(key,value){
if(typeof(this.hashArr[key])=='undefined'){
this.length++}
this.hashArr[key]=value}
HashTable.prototype.remove=function(key){
if(typeof(this.hashArr[key])!='undefined'){
this.length--
var value=this.hashArr[key]
delete this.hashArr[key]
return value}}
HashTable.prototype.has=function(key){
return(typeof(this.hashArr[key])!='undefined')}
Array.prototype.has=function(value){
var i
for(var i=0,loopCnt=this.length;i<loopCnt;i++){
if(this[i]===value){
return true}}
return false}
Array.prototype.remove=function(s){
for(i=0;i<this .length;i++){
if(s==this[i])this.splice(i,1)}}
