// JavaScript Document

function hexDictionary() {
		this.count = function () {
			var intCount = 0
			for (objItem in this){
				if (objItem != "keys" && objItem != "key"  && objItem != "count" && objItem != "add" && objItem != "remove" && objItem != "lookup" && objItem != "exists"){
					if (this[objItem] != null){
					intCount += 1
					}
				}
			}
			return intCount
		}
		this.add = function () {
			for (c=0; c<arguments.length; c+=2) {
				this[arguments[c]] = arguments[c+1];
			}
		}
		this.remove = function (strKeyName) {
			for (c=0; c<arguments.length; c++) {
				this[arguments[c]] = null;
			}
		}
		this.lookup = function (strKeyName) {
			return(this[strKeyName]);
		}
		this.exists = function (strKeyName) {
			return (this[strKeyName] != null);
		}
		this.keys = function() {
			var arrKeys = function() {}
			for (objItem in this){
				if (objItem != "keys" && objItem != "key"  && objItem != "count" && objItem != "add" && objItem != "remove" && objItem != "lookup" && objItem != "exists"){
					if (this[objItem] != null){
						arrKeys[objItem] = objItem
					}
				}
			}
			return arrKeys
		}
		this.key = function() {
			var arrKeys = new Array()
			for (objItem in this){
				if (objItem != "keys" && objItem != "key" && objItem != "count" && objItem != "add" && objItem != "remove" && objItem != "lookup" && objItem != "exists"){
					if (this[objItem] != null){
						arrKeys.push(objItem)
					}
				}
			}
			return arrKeys
		}
	}
	