﻿function Hashtable() { this.clear = hashtable_clear; this.containsKey = hashtable_containsKey; this.containsValue = hashtable_containsValue; this.get = hashtable_get; this.isEmpty = hashtable_isEmpty; this.keys = hashtable_keys; this.put = hashtable_put; this.remove = hashtable_remove; this.size = hashtable_size; this.toString = hashtable_toString; this.values = hashtable_values; this.hashtable = new Array() } function hashtable_clear() { this.hashtable = new Array() } function hashtable_containsKey(a) { var b = false; for (var i in this.hashtable) { if (i == a && this.hashtable[i] != null) { b = true; break } } return b } function hashtable_containsValue(a) { var b = false; if (a != null) { for (var i in this.hashtable) { if (this.hashtable[i] == a) { b = true; break } } } return b } function hashtable_get(a) { return this.hashtable[a] } function hashtable_isEmpty() { return (parseInt(this.size()) == 0) ? true : false } function hashtable_keys() { var a = new Array(); for (var i in this.hashtable) { if (this.hashtable[i] != null) a.push(i) } return a } function hashtable_put(a, b) { if (a == null || b == null) { throw "NullPointerException {" + a + "},{" + b + "}"; } else { this.hashtable[a] = b; } } function hashtable_remove(a) { var b = this.hashtable[a]; this.hashtable[a] = null; return b; } function hashtable_size() { var a = 0; for (var i in this.hashtable) { if (this.hashtable[i] != null) a++; } return a; } function hashtable_toString() { var a = ""; for (var i in this.hashtable) { if (this.hashtable[i] != null) a += "{" + i + "},{" + this.hashtable[i] + "}\n" } return a } function hashtable_values() { var a = new Array(); for (var i in this.hashtable) { if (this.hashtable[i] != null) a.push(this.hashtable[i]) } return a }