+function getDefaultFontSize()\r
+{\r
+ if (defaultFontSize == null) {\r
+ var pa = document.body;\r
+ var who = document.createElement('div');\r
+ who.className = 'defaultEm';\r
+ who.appendChild(document.createTextNode('M'));\r
+ pa.appendChild(who);\r
+ var fs = [who.offsetWidth, who.offsetHeight];\r
+ pa.removeChild(who);\r
+ defaultFontSize = fs;\r
+ }\r
+ return defaultFontSize;\r
+}\r
+\r
+function getHashForString(string)\r
+{\r
+ // cheap hashing, loosly based on Java's String.hashCode()\r
+ for (var hash = 0, i = 0; i < string.length; i++)\r
+ hash = (hash << 5) - hash + string.charCodeAt(i);\r
+ hash = hash & hash; // Convert to 32bit integer\r
+ if (hash < 0)\r
+ hash = -hash;\r
+ return hash.toString(16).toUpperCase();\r
+}\r
+\r