From: "Saved by Windows Internet Explorer 7" Subject: Routesms Date: Tue, 27 May 2008 10:45:02 +0300 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_0012_01C8BFE6.B7BD02E0" X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6001.18000 This is a multi-part message in MIME format. ------=_NextPart_000_0012_01C8BFE6.B7BD02E0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.routesms.com/UniConverter.asp Libantext Com - Online Unicode Converter
Online Unicode Converter
Unicode = Value :=20

Characters Remaining : =
Type your=20 Message :

Characters Remaining : =
=20
------=_NextPart_000_0012_01C8BFE6.B7BD02E0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://www.routesms.com/img/converter_title.jpg /9j/4AAQSkZJRgABAgEASABIAAD/4QRBRXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUA AAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAUAAAAcgEyAAIAAAAUAAAAhodp AAQAAAABAAAAnAAAAMgAAABIAAAAAQAAAEgAAAABQWRvYmUgUGhvdG9zaG9wIDcuMAAyMDA3OjA5 OjI5IDA0OjU0OjQxAAAAAAOgAQADAAAAAf//AACgAgAEAAAAAQAAAuKgAwAEAAAAAQAAABwAAAAA AAAABgEDAAMAAAABAAYAAAEaAAUAAAABAAABFgEbAAUAAAABAAABHgEoAAMAAAABAAIAAAIBAAQA AAABAAABJgICAAQAAAABAAADEwAAAAAAAABIAAAAAQAAAEgAAAAB/9j/4AAQSkZJRgABAgEASABI AAD/7QAMQWRvYmVfQ00AAv/uAA5BZG9iZQBkgAAAAAH/2wCEAAwICAgJCAwJCQwRCwoLERUPDAwP FRgTExUTExgRDAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBDQsLDQ4NEA4OEBQO Dg4UFA4ODg4UEQwMDAwMEREMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDP/AABEI AAUAgAMBIgACEQEDEQH/3QAEAAj/xAE/AAABBQEBAQEBAQAAAAAAAAADAAECBAUGBwgJCgsBAAEF AQEBAQEBAAAAAAAAAAEAAgMEBQYHCAkKCxAAAQQBAwIEAgUHBggFAwwzAQACEQMEIRIxBUFRYRMi cYEyBhSRobFCIyQVUsFiMzRygtFDByWSU/Dh8WNzNRaisoMmRJNUZEXCo3Q2F9JV4mXys4TD03Xj 80YnlKSFtJXE1OT0pbXF1eX1VmZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3EQACAgECBAQDBAUGBwcG BTUBAAIRAyExEgRBUWFxIhMFMoGRFKGxQiPBUtHwMyRi4XKCkkNTFWNzNPElBhaisoMHJjXC0kST VKMXZEVVNnRl4vKzhMPTdePzRpSkhbSVxNTk9KW1xdXl9VZmdoaWprbG1ub2JzdHV2d3h5ent8f/ 2gAMAwEAAhEDEQA/AMupw3DfWwiDO57gPL6FTnKy9+Jsd+hxt2z2Ftt3Me32to/nd3+m/wCuexea pLojvrxfT/0Fy/sfSy/D3u3U43eItyNsy7/RUent27fo/o0G5zDmN9Gutte5sCp73NGuu31667F5 0kkPDi+u3/OUfo+tnk8/ilr5/ivJElGufW9fP8UtfP8AFeSJJKfW9fP8UtfP8V5Ikkl9gx9m/wDS AlvmXj/qQVp0H2jYHR2g2/8AkV4YkoslfytfB9/qN3YWfff/AORVun1p1FvzN/8A34bV86pKrOv5 WyxfprG9Tvu+e/8A78rrZj/evlhJVJ7s8X//2f/tD4ZQaG90b3Nob3AgMy4wADhCSU0EJQAAAAAA EAAAAAAAAAAAAAAAAAAAAAA4QklNA+0AAAAAABAASAAAAAEAAQBIAAAAAQABOEJJTQQmAAAAAAAO AAAAAAAAAAAAAD+AAAA4QklNBA0AAAAAAAQAAAAeOEJJTQQZAAAAAAAEAAAAHjhCSU0D8wAAAAAA CQAAAAAAAAAAAQA4QklNBAoAAAAAAAEAADhCSU0nEAAAAAAACgABAAAAAAAAAAE4QklNA/UAAAAA AEgAL2ZmAAEAbGZmAAYAAAAAAAEAL2ZmAAEAoZmaAAYAAAAAAAEAMgAAAAEAWgAAAAYAAAAAAAEA NQAAAAEALQAAAAYAAAAAAAE4QklNA/gAAAAAAHAAAP////////////////////////////8D6AAA AAD/////////////////////////////A+gAAAAA/////////////////////////////wPoAAAA AP////////////////////////////8D6AAAOEJJTQQAAAAAAAACAAI4QklNBAIAAAAAABQAAAAC AAAAAQABAAAAAAAAAAAAAjhCSU0ECAAAAAAAGgAAAAEAAAJAAAACQAAAAAIAAAP+AAAAAmABOEJJ TQQeAAAAAAAEAAAAADhCSU0EGgAAAAADOwAAAAYAAAAAAAAAAAAAABwAAALiAAAAAwBiAGcAMQAA AAEAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAC4gAAABwAAAAAAAAAAAAAAAAAAAAAAQAA AAAAAAAAAAAAAAAAAAAAAAAQAAAAAQAAAAAAAG51bGwAAAACAAAABmJvdW5kc09iamMAAAABAAAA AAAAUmN0MQAAAAQAAAAAVG9wIGxvbmcAAAAAAAAAAExlZnRsb25nAAAAAAAAAABCdG9tbG9uZwAA ABwAAAAAUmdodGxvbmcAAALiAAAABnNsaWNlc1ZsTHMAAAABT2JqYwAAAAEAAAAAAAVzbGljZQAA ABIAAAAHc2xpY2VJRGxvbmcAAAAAAAAAB2dyb3VwSURsb25nAAAAAAAAAAZvcmlnaW5lbnVtAAAA DEVTbGljZU9yaWdpbgAAAA1hdXRvR2VuZXJhdGVkAAAAAFR5cGVlbnVtAAAACkVTbGljZVR5cGUA AAAASW1nIAAAAAZib3VuZHNPYmpjAAAAAQAAAAAAAFJjdDEAAAAEAAAAAFRvcCBsb25nAAAAAAAA AABMZWZ0bG9uZwAAAAAAAAAAQnRvbWxvbmcAAAAcAAAAAFJnaHRsb25nAAAC4gAAAAN1cmxURVhU AAAAAQAAAAAAAG51bGxURVhUAAAAAQAAAAAAAE1zZ2VURVhUAAAAAQAAAAAABmFsdFRhZ1RFWFQA AAABAAAAAAAOY2VsbFRleHRJc0hUTUxib29sAQAAAAhjZWxsVGV4dFRFWFQAAAABAAAAAAAJaG9y ekFsaWduZW51bQAAAA9FU2xpY2VIb3J6QWxpZ24AAAAHZGVmYXVsdAAAAAl2ZXJ0QWxpZ25lbnVt AAAAD0VTbGljZVZlcnRBbGlnbgAAAAdkZWZhdWx0AAAAC2JnQ29sb3JUeXBlZW51bQAAABFFU2xp Y2VCR0NvbG9yVHlwZQAAAABOb25lAAAACXRvcE91dHNldGxvbmcAAAAAAAAACmxlZnRPdXRzZXRs b25nAAAAAAAAAAxib3R0b21PdXRzZXRsb25nAAAAAAAAAAtyaWdodE91dHNldGxvbmcAAAAAADhC SU0EEQAAAAAAAQEAOEJJTQQUAAAAAAAEAAAADDhCSU0EDAAAAAADLwAAAAEAAACAAAAABQAAAYAA AAeAAAADEwAYAAH/2P/gABBKRklGAAECAQBIAEgAAP/tAAxBZG9iZV9DTQAC/+4ADkFkb2JlAGSA AAAAAf/bAIQADAgICAkIDAkJDBELCgsRFQ8MDA8VGBMTFRMTGBEMDAwMDAwRDAwMDAwMDAwMDAwM DAwMDAwMDAwMDAwMDAwMDAENCwsNDg0QDg4QFA4ODhQUDg4ODhQRDAwMDAwREQwMDAwMDBEMDAwM DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgABQCAAwEiAAIRAQMRAf/dAAQACP/EAT8AAAEF AQEBAQEBAAAAAAAAAAMAAQIEBQYHCAkKCwEAAQUBAQEBAQEAAAAAAAAAAQACAwQFBgcICQoLEAAB BAEDAgQCBQcGCAUDDDMBAAIRAwQhEjEFQVFhEyJxgTIGFJGhsUIjJBVSwWIzNHKC0UMHJZJT8OHx Y3M1FqKygyZEk1RkRcKjdDYX0lXiZfKzhMPTdePzRieUpIW0lcTU5PSltcXV5fVWZnaGlqa2xtbm 9jdHV2d3h5ent8fX5/cRAAICAQIEBAMEBQYHBwYFNQEAAhEDITESBEFRYXEiEwUygZEUobFCI8FS 0fAzJGLhcoKSQ1MVY3M08SUGFqKygwcmNcLSRJNUoxdkRVU2dGXi8rOEw9N14/NGlKSFtJXE1OT0 pbXF1eX1VmZ2hpamtsbW5vYnN0dXZ3eHl6e3x//aAAwDAQACEQMRAD8Ay6nDcN9bCIM7nuA8voVO crL34mx36HG3bPYW23cx7fa2j+d3f6b/AK57F5qkuiO+vF9P/QXL+x9LL8Pe7dTjd4i3I2zLv9FR 6e3bt+j+jQbnMOY30a6217mwKnvc0a67fXrrsXnSSQ8OL67f85R+j62eTz+KWvn+K8kSUa59b18/ xS18/wAV5Ikkp9b18/xS18/xXkiSSX2DH2b/ANICW+ZeP+pBWnQfaNgdHaDb/wCRXhiSiyV/K18H 3+o3dhZ99/8A5FW6fWnUW/M3/wDfhtXzqkqs6/lbLF+msb1O+757/wDvyutmP96+WElUnuzxf//Z ADhCSU0EIQAAAAAAVQAAAAEBAAAADwBBAGQAbwBiAGUAIABQAGgAbwB0AG8AcwBoAG8AcAAAABMA QQBkAG8AYgBlACAAUABoAG8AdABvAHMAaABvAHAAIAA3AC4AMAAAAAEAOEJJTQ+gAAAAAAY3bW9w dAAAAAMAAAABAAAAAAAAAAcAAAABAAAAAAABAAD//////////wAAADwAAAAB/////wAAAAAAAAAA AAAAAAAAAAEAAAAA/////wAAAAAE/////wAAAAD/////AAAAAP////8AAAAA/////wAAAAAAAAAA /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/ AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8A AAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/ AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8A AAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/ AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8A AAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/ AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8A AAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA /wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/ AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAA AAAAAAAAAAAAAbUAAAAQAAAAAQAAAAAADlRhcmdldFNldHRpbmdzAAAACgAAAA9lbWJlZElDQ1By b2ZpbGVib29sAAAAAAxub01hdHRlQ29sb3Jib29sAAAAAABNdHRDT2JqYwAAAAEAAAAAAApOYXRp dmVRdWFkAAAAAwAAAABSZCAgbG9uZwAAAP8AAAAAQmwgIGxvbmcAAAD/AAAAAEdybiBsb25nAAAA /wAAAAtwcm9ncmVzc2l2ZWJvb2wAAAAADHpvbmVkUXVhbGl0eU9iamMAAAABAAAAAAAJWm9uZWRJ bmZvAAAABAAAAA1lbXBoYXNpemVUZXh0Ym9vbAAAAAAQZW1waGFzaXplVmVjdG9yc2Jvb2wAAAAA CWNoYW5uZWxJRGxvbmf/////AAAABWZsb29ybG9uZwAAAAAAAAAAUWx0eWxvbmcAAAA8AAAAAE9w dG1ib29sAQAAAApmaWxlRm9ybWF0ZW51bQAAAApGaWxlRm9ybWF0AAAAAEpQRUcAAAAKYmx1ckFt b3VudFVudEYjTm5lAAAAAAAAAAAAAAAUcHJlc2VydmVFWElGTWV0YWRhdGFib29sAAA4QklND6EA AAAAAC1tc2V0AAAAEAAAAAEAAAAAAARudWxsAAAAAQAAAAdWZXJzaW9ubG9uZwAAAAAAOEJJTQQG AAAAAAAHAAEAAAABAQD/4RJIaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQg YmVnaW49J++7vycgaWQ9J1c1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCc/Pgo8P2Fkb2JlLXhhcC1m aWx0ZXJzIGVzYz0iQ1IiPz4KPHg6eGFwbWV0YSB4bWxuczp4PSdhZG9iZTpuczptZXRhLycgeDp4 YXB0az0nWE1QIHRvb2xraXQgMi44LjItMzMsIGZyYW1ld29yayAxLjUnPgo8cmRmOlJERiB4bWxu czpyZGY9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMnIHhtbG5z OmlYPSdodHRwOi8vbnMuYWRvYmUuY29tL2lYLzEuMC8nPgoKIDxyZGY6RGVzY3JpcHRpb24gYWJv dXQ9J3V1aWQ6ZmM4NzBiN2YtNmUxOS0xMWRjLWFkZWYtYzc3NmFlMDViMjBiJwogIHhtbG5zOnhh cE1NPSdodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vJz4KICA8eGFwTU06RG9jdW1lbnRJ RD5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MGI5Y2VkNDYtNmUxOS0xMWRjLWFkZWYtYzc3NmFlMDVi MjBiPC94YXBNTTpEb2N1bWVudElEPgogPC9yZGY6RGVzY3JpcHRpb24+Cgo8L3JkZjpSREY+Cjwv eDp4YXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAKPD94cGFja2V0IGVuZD0ndyc/Pv/uAA5BZG9iZQBkgAAAAAH/2wCEAAwICAgJCAwJCQwRCwoL ERUPDAwPFRgTExUTExgRDAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBDQsLDQ4N EA4OEBQODg4UFA4ODg4UEQwMDAwMEREMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM DP/AABEIABwC4gMBIgACEQEDEQH/3QAEAC//xAE/AAABBQEBAQEBAQAAAAAAAAADAAECBAUGBwgJ CgsBAAEFAQEBAQEBAAAAAAAAAAEAAgMEBQYHCAkKCxAAAQQBAwIEAgUHBggFAwwzAQACEQMEIRIx BUFRYRMicYEyBhSRobFCIyQVUsFiMzRygtFDByWSU/Dh8WNzNRaisoMmRJNUZEXCo3Q2F9JV4mXy s4TD03Xj80YnlKSFtJXE1OT0pbXF1eX1VmZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3EQACAgECBAQD BAUGBwcGBTUBAAIRAyExEgRBUWFxIhMFMoGRFKGxQiPBUtHwMyRi4XKCkkNTFWNzNPElBhaisoMH JjXC0kSTVKMXZEVVNnRl4vKzhMPTdePzRpSkhbSVxNTk9KW1xdXl9VZmdoaWprbG1ub2JzdHV2d3 h5ent8f/2gAMAwEAAhEDEQA/AMhJJE30/Z9vpn198+ru9uyP5v0tv0t3+E9RdK5KNJE30/Z9npn1 98+ru9uyP5v0tv0t3+E9RDSUpJdF/wCtl/1yfl6cyhdO6d0u1nTqr67XXdSc9hsa8NbXDzUx7WbH b1F7wABIOsRLT+sJS/7hf7ZugepH8v8AGcJOWub9IETqJ8FvYFQrxcbKBNlteLlXUMfDmtex5aHV 1uG32N3X/wBdiqMyuqdVqGLkvdkVetWPtNsvdUbCawG2E+2u3/R/8Gj7lk6DhiakSfHhRwba6nZy 0lvM6V03NtvxcVluPZi3V1G2x4eHtstbiOc9mxnpWNdZ6ntRasfBysLIw8OuzG9TOxcdz7Xb5k5F bLfoV7X+79IxA5x2OhHF/V4k+2e4619HnE4BJgCSeAFt9V6d0qnFtfi2NF1Dw0NFptL2k7Heoz0a fRsb9L6SBiX24fRrcrEcasl+Q2p9zNHtr2GxrGP+lX6r930P9EiMtxsA78NS9KOCjRPS9HLIIMHQ hMtmoXdTsbldTY51dGNZZ6rPbZeKjt91rt+5zXv9N9uz+aYiU9N6XkijLDLasa2rKfZQHhzg7GZ6 s1WuZ9Czc36bUjlA3G29eoX+7/zU8BOx+1wkltjpvT8oUOx2PpdmY9zqai/fF1LnQ3ftbuZeyvbt /wBKiY3RcBu45L4djY9VmQx7/Tb6t53VsNja7XVsqpNe/wBn88kc8Rvd9uu/B/0/Sr2z4ef4uAkt 6zpvSKrMm8F2Rj047LxVXZoHvtbj+l67q2b2e7fu9NWDg9LzfsUVnHqpwHZFm60AOAusqbW+xtPt /SO3vu2fzaBzx3o1t9eHipXtnuHmUlvu6X0j7QLGO9SkY9t9lNNm+HVcNbe+qv2W/wDF+xYdzq3W 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 +as/RrmP8o/8N/0kv8o/8N/0kuKFfJHh84cPy/8AeKqV/Mb8pfy+Z6a3q/ULnl77dTW6iA1rWit3 02MrY1tbN38hqprF/wAo/wDDf9JL/KP/AA3/AEk6MtPTAf4JigjvL7QXaSWL/lH/AIb/AKSX+Uf+ G/6SdxS/cP2xRQ/e/B63BA+zt1jU9vNWYb+9+BVHok/s2r1p9SXbt0z9Ix9JXx6UdlGd1w2W2j97 8Eto/e/BS/Q+SX6HyQSx2j978Eto/e/BS/Q+SX6HySUx2j978Eto/e/BS/Q+SX6HySUx2j978Eto /e/BS/Q+SX6HySUx2j978Eto/e/BS/Q+SX6HySUx2j978Eto/e/BS/Q+SX6HySUx2j978Eto/e/B S/Q+SX6HySUx2j978Eto/e/BS/Q+SX6HySUx2j978Eto/e/BS/Q+SX6HySUx2j978Eto/e/BS/Q+ SX6HySUx2j978Eto/e/BS/Q+SX6HySUx2j978Eto/e/BS/Q+SX6HySUx2j978Eto/e/BS/Q+SX6H ySUx2j978Eto/e/BS/Q+SX6HySUx2j978Eto/e/BS/Q+SX6HySUxhv734FLa3978FL9D5JfofJJS 21v734JQ3978Cn/Q+SX6HySUttb+9+CW1v734FP+h8kv0Pkkpdm1pnd+CsVZFbQAZPwH+xV/0Pkp s9LSeEyVdUi+jdGRX/K/zSn+0V/y/wDNKAPQ0mfxS/Qef4qP0+K/VsDIq/lf5pTi+r+X/mlAHod5 /FGZ9jjWf+kgeHxVqzF9X8v/ADD/AHJxfT4u/wAw/wByYfY/P/pKQ+yef/STdPFOvgr16e5d/mH+ 5P61P7zv8w/3Jfqfn/0lIfYv9dyWnj+CdfBQuo/ed/mH/wAipC6j993+Y7/yKX6j/ruTj7D5fim6 eP8AzVa+CvVx/wB93+Y7/wAinFuP/pHf9tu/8inH7P8AL/pKQ/Z/l+KGnj/zU6+H4rC3H/0jv+23 f+RTizG/0rv+23f+RUh+z/L8VIfs7+T+KGnj/wA1Ovh+LEWY3+ld/wBtu/8AIqQfi/6Z3/bbv/Iq Q/Z3fb+KkP2b/J/FDT+t/wA1X2fis12M5wAudJ/4N3/kUUV0/wCmP+Y7/wAiot/Z0/m/iiD9n9ti afC/+auH0/FQrq/0x/zHf+RU/Tp/0x/zHf8AkUw/Z/8AIUm/s/8Akppvx/5qfs/FcV1f6U/5jv8A yKPWyvaP0hP9k/3IQ/Z/8lGZ9i2iNqZL6/8ANSPozDax/hD/AJp/uUw1n7//AESoj7J/JUm/Zu0J h+v4LmQDf3j9xUgG/vfgo/oJ7KY9LtCaUrgDx/BPA8fwTfo/JP7EErmPFKAkdsapDb2QUpJL2pJK f//Z ------=_NextPart_000_0012_01C8BFE6.B7BD02E0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.routesms.com/css.css TD { FONT-SIZE: 12px; COLOR: #555555; FONT-FAMILY: Verdana, Arial, = Helvetica, sans-serif } .black { COLOR: #333333; TEXT-DECORATION: none } A { COLOR: #023f6f; TEXT-DECORATION: none } .titles { FONT-SIZE: 12px; COLOR: #003366; FONT-FAMILY: Verdana, Arial, = Helvetica, sans-serif } .leftlink { FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #666666; FONT-FAMILY: = Verdana, Arial, Helvetica, sans-serif } .leftlink1 { FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #ff3300; FONT-FAMILY: = Verdana, Arial, Helvetica, sans-serif } .txtbox { BORDER-RIGHT: #5f64a0 1px dotted; BORDER-TOP: #ff0000 1px dotted; = FONT-SIZE: 12px; BORDER-LEFT: #5f64a0 1px dotted; COLOR: #555555; = BORDER-BOTTOM: #ff0000 1px dotted; FONT-FAMILY: Verdana, Arial, = Helvetica, sans-serif } .style4 { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #306d9c; FONT-FAMILY: Arial, = Helvetica, sans-serif } .style3 { FONT-SIZE: 12px; COLOR: #000000; FONT-FAMILY: Arial, Helvetica, = sans-serif } .sMenuLinks { FONT-SIZE: 10pt; COLOR: #0066cc; FONT-FAMILY: Tahoma; TEXT-DECORATION: = underline } .sMenuLinks:hover { FONT-SIZE: 10pt; COLOR: #666600; FONT-FAMILY: Tahoma; TEXT-DECORATION: = none } .leftlink1 { FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #cc0000; FONT-FAMILY: = Verdana, Arial, Helvetica, sans-serif } .button { BORDER-RIGHT: #e9e9e9 1px solid; BORDER-TOP: #e9e9e9 1px solid; = FONT-WEIGHT: bold; FONT-SIZE: 12px; BORDER-LEFT: #e9e9e9 1px solid; = CURSOR: hand; COLOR: #4e4e4e; BORDER-BOTTOM: #e9e9e9 1px solid; = FONT-FAMILY: Tahoma, Verdana, Arial; BACKGROUND-COLOR: #ffffff } .button1 { BORDER-RIGHT: #eaebed 1px solid; BORDER-TOP: #eaebed 1px solid; = FONT-WEIGHT: normal; FONT-SIZE: 11px; BORDER-LEFT: #eaebed 1px solid; = CURSOR: hand; COLOR: #4e4e4e; BORDER-BOTTOM: #eaebed 1px solid; = FONT-FAMILY: Tahoma, Verdana, Arial; BACKGROUND-COLOR: #ffffff } .button2 { BORDER-RIGHT: #4791c5 1px solid; BORDER-TOP: #4791c5 1px solid; = FONT-WEIGHT: normal; FONT-SIZE: 12px; BORDER-LEFT: #4791c5 1px solid; = COLOR: #000000; BORDER-BOTTOM: #4791c5 1px solid; FONT-FAMILY: Verdana; = BACKGROUND-COLOR: #ffffff } .inputbox { BORDER-RIGHT: #e9e9e9 1px solid; BORDER-TOP: #e9e9e9 1px solid; = FONT-WEIGHT: normal; FONT-SIZE: 11px; BORDER-LEFT: #e9e9e9 1px solid; = COLOR: #4e4e4e; BORDER-BOTTOM: #e9e9e9 1px solid; FONT-FAMILY: Tahoma } .inputbox1 { BORDER-RIGHT: #eaebed 1px solid; BORDER-TOP: #eaebed 1px solid; = FONT-WEIGHT: normal; FONT-SIZE: 14px; BORDER-LEFT: #eaebed 1px solid; = COLOR: #4e4e4e; BORDER-BOTTOM: #eaebed 1px solid; FONT-FAMILY: Tahoma } .style6 { FONT-SIZE: 11px; COLOR: #003366; FONT-FAMILY: Tahoma, Verdana, Arial } .style2 { FONT-SIZE: 11px; COLOR: #4e4e4e; FONT-FAMILY: Tahoma, Verdana, Arial } .tblmain { BORDER-RIGHT: #6699cc 0px solid; BORDER-TOP: #6699cc 0px solid; = FONT-SIZE: 13px; BORDER-LEFT: #6699cc 0px solid; COLOR: #800080; = BORDER-BOTTOM: #6699cc 0px solid; FONT-FAMILY: Verdana } .tblmain1 { BORDER-RIGHT: #6699cc 1px solid; BORDER-TOP: #6699cc 1px solid; = FONT-SIZE: 13px; BORDER-LEFT: #6699cc 1px solid; COLOR: #800080; = BORDER-BOTTOM: #6699cc 1px solid; FONT-FAMILY: Verdana } .txtbox3 { BORDER-RIGHT: #4791c5 1px solid; BORDER-TOP: #4791c5 1px solid; = FONT-WEIGHT: bold; FONT-SIZE: 14px; BORDER-LEFT: #4791c5 1px solid; = COLOR: #ffffff; BORDER-BOTTOM: #4791c5 1px solid; FONT-FAMILY: Verdana; = BACKGROUND-COLOR: #4791c5 } .font2 { BORDER-RIGHT: #ff3300 1px; BORDER-TOP: #ff3300 1px; FONT-SIZE: 12px; = BORDER-LEFT: #ff3300 1px; COLOR: #000000; BORDER-BOTTOM: #ff3300 1px; = FONT-FAMILY: Verdana } .txtbox2 { BORDER-RIGHT: #4791c5 1px solid; BORDER-TOP: #4791c5 1px solid; = FONT-WEIGHT: normal; FONT-SIZE: 12px; BORDER-LEFT: #4791c5 1px solid; = COLOR: #000000; BORDER-BOTTOM: #4791c5 1px solid; FONT-FAMILY: Verdana } .tdbg { BACKGROUND-COLOR: #dbeaf5 } ------=_NextPart_000_0012_01C8BFE6.B7BD02E0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.routesms.com/UniCodeFiles/uniview-style.css .propsTable { FONT-SIZE: 1.1em; FONT-FAMILY: "Arial Narrow" } .largeChar { FONT-SIZE: 72pt } .selectedChar { BORDER-RIGHT: gray 1pt solid; BORDER-TOP: gray 1pt solid; MARGIN-TOP: = 0px; FONT-SIZE: 32pt; MARGIN-BOTTOM: 0px; BORDER-LEFT: gray 1pt solid; = COLOR: gray; BORDER-BOTTOM: gray 1pt solid; FONT-FAMILY: "Arial Unicode = MS", Specials, sans-serif } .chartChar { FONT-SIZE: 1.3em } .listChar { FONT-SIZE: 0.9em } .label { MARGIN-TOP: 0pt; FONT-SIZE: 16px; MARGIN-BOTTOM: 0pt; FONT-FAMILY: = "Arial Unicode MS", sans-serif } .hi { FONT-FAMILY: mangal, serif } .ipa { FONT-FAMILY: "arial unicode ms", sans-serif } P { MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px } .ipa { FONT-SIZE: 1em; FONT-FAMILY: "arial unicode ms", sans-serif } .hi { FONT-SIZE: 1em; COLOR: red; FONT-FAMILY: mangal, "arial unicode ms", = sans-serif } .th { FONT-SIZE: 2em; COLOR: red; FONT-FAMILY: cordiaupc, "cordia new", = irisupc, "arial unicode ms", sans-serif } .ar { FONT-SIZE: 1.5em; COLOR: red; FONT-FAMILY: "traditional arabic", = sans-serif } .gr { FONT-SIZE: 1em; COLOR: red; FONT-FAMILY: "lucida sans unicode", "arial = unicode ms", sans-serif } #chart TD { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; = BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; = VERTICAL-ALIGN: middle; WIDTH: 30px; PADDING-TOP: 0px; TEXT-ALIGN: = center; BORDER-RIGHT-WIDTH: 0px; cellspacing: 0 } TD.hexNum { FONT-WEIGHT: normal; FONT-SIZE: 50%; FONT-FAMILY: "arial narrow", = sans-serif } TD.empty { BACKGROUND-COLOR: #f2f2f2 } IMG { CURSOR: pointer; align: middle } propshead { MARGIN-TOP: 2em } ------=_NextPart_000_0012_01C8BFE6.B7BD02E0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.routesms.com/UniCodeFiles/uniconversion.asp var debug1 =3D true; var debug2 =3D true; function dec2hex ( textString ) { return (textString+0).toString(16).toUpperCase(); } function dec2hex2 ( textString ) { var hexequiv =3D new Array ("0", "1", "2", "3", "4", "5", "6", "7", = "8", "9", "A", "B", "C", "D", "E", "F"); return hexequiv[(textString >> 4) & 0xF] + hexequiv[textString & 0xF]; } function dec2hex4 ( textString ) { var hexequiv =3D new Array ("0", "1", "2", "3", "4", "5", "6", "7", = "8", "9", "A", "B", "C", "D", "E", "F"); return hexequiv[(textString >> 12) & 0xF] + hexequiv[(textString >> 8) = & 0xF] + hexequiv[(textString >> 4) & 0xF] + hexequiv[textString & 0xF]; } function convertCP2Char ( textString ) { var outputString =3D ''; textString =3D textString.replace(/^\s+/, ''); if (textString.length =3D=3D 0) { return ""; } textString =3D textString.replace(/\s+/g, ' '); var listArray =3D textString.split(' '); for ( var i =3D 0; i < listArray.length; i++ ) { var n =3D parseInt(listArray[i], 16); if (n <=3D 0xFFFF) { outputString +=3D String.fromCharCode(n); } else if (n <=3D 0x10FFFF) { n -=3D 0x10000 outputString +=3D String.fromCharCode(0xD800 | (n >> 10)) + = String.fromCharCode(0xDC00 | (n & 0x3FF)); } else { outputString +=3D '!erreur ' + dec2hex(n) +'!'; } } return( outputString ); } function convertCP2UTF16 ( textString ) { var outputString =3D ""; textString =3D textString.replace(/^\s+/, ''); if (textString.length =3D=3D 0) { return ""; } textString =3D textString.replace(/\s+/g, ' '); var listArray =3D textString.split(' '); for ( var i =3D 0; i < listArray.length; i++ ) { var n =3D parseInt(listArray[i], 16); if (i > 0) { outputString +=3D '';} if (n <=3D 0xFFFF) { outputString +=3D dec2hex4(n); } else if (n <=3D 0x10FFFF) { n -=3D 0x10000 outputString +=3D dec2hex4(0xD800 | (n >> 10)) + ' ' + = dec2hex4(0xDC00 | (n & 0x3FF)); } else { outputString +=3D '!erreur ' + dec2hex(n) +'!'; } } return( outputString ); } function convertChar2CP ( textString ) { var outputString =3D ""; var haut =3D 0; var n =3D 0; for (var i =3D 0; i < textString.length; i++) { var b =3D textString.charCodeAt(i); // alert('b:'+dec2hex(b)); if (b < 0 || b > 0xFFFF) { outputString +=3D '!erreur ' + dec2hex(b) + '!'; } if (haut !=3D 0) { if (0xDC00 <=3D b && b <=3D 0xDFFF) { outputString +=3D dec2hex(0x10000 + ((haut - 0xD800) << 10) + (b = - 0xDC00)) + ' '; haut =3D 0; continue; } else { outputString +=3D '!erreur ' + dec2hex(haut) + '!'; haut =3D 0; } } if (0xD800 <=3D b && b <=3D 0xDBFF) { haut =3D b; } else { outputString +=3D dec2hex(b) + ' '; } } return( outputString.replace(/ $/, '') ); } function convertUTF162CP ( textString ) { var outputString =3D ""; var haut =3D 0; var n =3D 0; textString =3D textString.replace(/^\s+/, ''); if (textString.length =3D=3D 0) { return ""; } textString =3D textString.replace(/\s+/g, ' '); var listArray =3D textString.split(' '); for ( var i =3D 0; i < listArray.length; i++ ) { var b =3D parseInt(listArray[i], 16); // alert('b:'+dec2hex(b)); if (b < 0 || b > 0xFFFF) { outputString +=3D '!erreur ' + dec2hex(b) + '!'; } if (haut !=3D 0) { if (0xDC00 <=3D b && b <=3D 0xDFFF) { outputString +=3D dec2hex(0x10000 + ((haut - 0xD800) << 10) + (b = - 0xDC00)) + ' '; haut =3D 0; continue; } else { outputString +=3D '!erreur ' + dec2hex(haut) + '!'; haut =3D 0; } } if (0xD800 <=3D b && b <=3D 0xDBFF) { haut =3D b; } else { outputString +=3D dec2hex(b) + ''; } } return( outputString.replace(/ $/, '') ); } ------=_NextPart_000_0012_01C8BFE6.B7BD02E0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.routesms.com/UniCodeFiles/functions.js // functions.js // this file contains most of the javascript functions needed to run = UniView // all of the language specific text is in functions-text.js // note: several global variables are set in prefs.js var _notesArray =3D new Array; var _newNotesArray =3D false; var _currentFont =3D _defaultFont; if (document.all) { var IE =3D 'true'; } var _tempList =3D false; // true if results of search or c&p displayed = (for font change) var _IE =3D false; function getCharFromInt ( n ) { // converts a decimal integer into a Unicode character // n: integer, the decimal Unicode codepoint to be converted // output: a character if (n <=3D 0xFFFF) { outputString =3D String.fromCharCode(n); }=20 else if (n <=3D 0x10FFFF) { n -=3D 0x10000 outputString =3D String.fromCharCode(0xD800 | (n >> 10)) + = String.fromCharCode(0xDC00 | (n & 0x3FF)); }=20 else { outputString =3D '!error ' + dec2hex(n) +'!'; } return( outputString ); } function showChar () { printProperties( this.title ); } function setOnclick ( codepoint, node ) { //sets the event functions for node, used by createMatrix, createList, = etc. node.onclick =3D function(){ printProperties(codepoint) }; node.onclick =3D function () { addtocharSelect(codepoint) }; } =09 function addtocharSelect ( codepoint ) { // adds a character to the cut & paste field // codepoint: integer, the decimal Unicode codepoint to be added var field =3D document.getElementById( 'charSelect' ); field.value =3D field.value + getCharFromInt(codepoint); // field.value =3D getCharFromInt(codepoint); document.uni.chars.value=3Ddocument.getElementById('charSelect').value; setUnicodeText(); setCounter(); } function findScriptGroup ( charNum ) { // output: returns the name of the script group in which charNum falls // charNum: a decimal number representing the code point of the = character in question var i=3D0; while ( i scriptGroups[i][0] ) { i++; } if ( i =3D=3D scriptGroups.length ) { return( sNotAChar ); } if ( scriptGroups[i-1][1] >=3D charNum ) { return( = scriptGroups[i-1][2]); } if ( scriptGroups[i][0] =3D=3D charNum ) { return( scriptGroups[i][2]); = } return( sNotAChar ); }=09 function createMatrix ( formField ) { // output: a grid format list of characters in the left panel // formField: a string of the form 'XXXX:YYYY' indicating a range of = characters in hex notation var table, tbody, tr, td, img; _tempList =3D false; var listDiv =3D document.getElementById( 'listOutput' ); var oldtable =3D document.getElementById('chart'); table =3D document.createElement( 'table' ); table.className =3D 'chartChar'; table.id =3D 'chart'; table.setAttribute( 'border', '1' ); tbody =3D table.appendChild( document.createElement( 'tbody' )); // work out what the range is var cCell =3D 0; var HexURange =3D formField.split(':'); var start =3D parseInt( HexURange[0], 16 ); var end =3D parseInt( HexURange[1], 16 ); var cols =3D Math.ceil((end-start+1)/16); var character =3D ''; var totalCodes =3D cols*16; var notFound =3D true; for (i=3D-1; i<16; i++) { tr =3D tbody.appendChild( document.createElement( 'tr' )); =09 // Create number column td =3D tr.appendChild( document.createElement( 'td' )); td.className =3D 'hexNum'; // td.setAttribute( 'noChar', 'y' ); if (_showNumbers && i>-1) { td.appendChild( document.createTextNode( i.toString(16).toUpperCase() = )); } else { td.appendChild( document.createTextNode( '\u00A0' )); } =09 for (j=3D0; j -1) { img.src =3D 'graphics/'+scriptGroup+'/'+hexNum+'.png'; } else { img.src =3D = 'http://decodeunicode.org/data/glyph/26x26/'+hexNum+'.gif'; } } } } } } var removedNode =3D listDiv.replaceChild( table, oldtable ); if (document.getElementById('generalCat').value !=3D 'startup') { highlightList( 2, document.getElementById('generalCat').value ); } if (document.getElementById('directionality').value !=3D 'startup') { highlightList( 4, document.getElementById('directionality').value ); } document.getElementById('fontSize').value =3D '100%'; } function createList (formField) { // output: a list of characters for a range given by formField = displayed in the left panel // formField: a string of the form 'XXXX:YYYY' indicating a range of = characters in hex notation =09 _tempList =3D false; var HexURange =3D formField.split(':'); var start =3D parseInt( HexURange[0], 16 ); var end =3D parseInt( HexURange[1], 16 ); var rangeLength =3D end - start; =09 var listDiv =3D document.getElementById( 'listOutput' ); var oldContent =3D document.getElementById('chart'); var newContent =3D document.createElement( 'div' ); newContent.className =3D 'charList'; newContent.id =3D 'chart'; =09 for (i=3Dstart; i<=3Dend; i++) { if (U[i]) { addLine( i, newContent ); }=09 } var removedNode =3D listDiv.replaceChild( newContent, oldContent ); if (document.getElementById('generalCat').value !=3D 'startup') { highlightList( 2, document.getElementById('generalCat').value ); } if (document.getElementById('directionality').value !=3D 'startup') { highlightList( 4, document.getElementById('directionality').value ); } document.getElementById('fontSize').value =3D '100%'; } function parseString ( string ) { // output: a list of the characters contained in string=20 // string: a string of characters // ***docObj: the window in which the results will be output _tempList =3D true; var codepoint =3D 0; if ( string.length =3D=3D 1 ) { printProperties(string.charCodeAt(0)); = } else { var listDiv =3D document.getElementById( 'listOutput' ); var oldContent =3D document.getElementById('chart'); var newContent =3D document.createElement( 'div' ); newContent.className =3D 'charList'; newContent.id =3D 'chart'; for (i=3D0; i -1) { img.src =3D 'graphics/'+scriptGroup+'/'+cRecord[0]+'.png'; } else { img.src =3D = 'http://decodeunicode.org/data/glyph/26x26/'+cRecord[0]+'.gif'; } //img.src =3D = 'http://decodeunicode.org/data/glyph/26x26/'+cRecord[0]+'.gif'; } div.appendChild( document.createTextNode( '\u00A0 '+cRecord[1] )); } =09 function findString ( searchString ) { //function findString ( searchString, docObj ) { // effect: outputs in the left panel a list of characters whose = descriptions in the database match searchString // searchString: a string of text to search for in the database // ***docObj: the window in which the result will be output // U: the Unicode database _tempList =3D true; var counter =3D 0; var i =3D 0; searchString =3D searchString.toUpperCase(); var listDiv =3D document.getElementById( 'listOutput' ); var oldContent =3D document.getElementById('chart'); var tempContent =3D document.createElement( 'div' ); tempContent.className =3D 'charList'; tempContent.id =3D 'chart'; tempContent.appendChild( document.createTextNode( sSearching )) var removedNode =3D listDiv.replaceChild( tempContent, oldContent ); oldContent =3D document.getElementById('chart'); =09 var newContent =3D document.createElement( 'div' ); newContent.className =3D 'charList'; newContent.id =3D 'chart'; for (i=3D0; i <13311; i++ ) { if ( U[i] && U[i].indexOf(searchString, 0) > -1 ) { addLine(i, newContent); counter++; } } for (i=3D40960; i <42183; i++ ) { if ( U[i] && U[i].indexOf(searchString, 0) > -1 ) { addLine(i, newContent); counter++; } } for (i=3D64256; i <65534; i++ ) { if ( U[i] && U[i].indexOf(searchString, 0) > -1 ) { addLine(i, newContent); counter++; } } for (i=3D66304; i <66638; i++ ) { if ( U[i] && U[i].indexOf(searchString, 0) > -1 ) { addLine(i, newContent); counter++; } } for (i=3D118784; i <120832; i++ ) { if ( U[i] && U[i].indexOf(searchString, 0) > -1 ) { addLine(i, newContent); counter++; } } for (i=3D917505; i <917632; i++ ) { if ( U[i] && U[i].indexOf(searchString, 0) > -1 ) { addLine(i, newContent); counter++; } } if (counter =3D=3D 0) { newContent.appendChild( = document.createTextNode( sNoMatch )); } removedNode =3D listDiv.replaceChild( newContent, oldContent ); if (document.getElementById('generalCat').value !=3D 'startup') { highlightList( 2, document.getElementById('generalCat').value ); } if (document.getElementById('directionality').value !=3D 'startup') { highlightList( 4, document.getElementById('directionality').value ); } document.getElementById('fontSize').value =3D '100%'; } function printProperties ( codepoint ) { //function printProperties ( codepoint, docObj ) { // output: a description of a single character in the right panel, plus = notes if an appropriate file has been loaded // codepoint: an integer representing the Unicode scalar value of the = character to be displayed // ***docObj: the window to which the results will be output =09 var MsPadding =3D ''; // Will be set to a space if this is a = non-spacing mark var description =3D false; var div, span, img, table, tbody, tr, td; var listDiv =3D document.getElementById( 'charOutput' ); var oldContent =3D document.getElementById('charInfo'); var newContent =3D document.createElement( 'div' ); newContent.className =3D 'charInfo'; newContent.setAttribute( 'id', 'charInfo' ); // resultString +=3D 'onDblClick=3D"' + = 'parent.keyboard.displayHighlight(document.selection.createRange().text)"= '; if (U[codepoint]) {=20 cRecord =3D U[codepoint].split(';'); if (cRecord[3] > 0) { MsPadding =3D '\u00A0'; } // ie. this is a = combining character // float the large character to the right div =3D newContent.appendChild( document.createElement( 'div' )); if (IE) { div.style.styleFloat =3D 'right'; } else { = div.style.cssFloat =3D 'right'; } div.style.paddingRight =3D '20px'; div.style.paddingLeft =3D '40px'; if (_utf8) {=20 span =3D div.appendChild( document.createElement( 'span' )); span.setAttribute( 'id', 'largeChar' ); span.className =3D 'largeChar' ; span.style.fontFamily =3D _currentFont; span.appendChild( document.createTextNode( MsPadding + = getCharFromInt(parseInt(cRecord[0],16)) )); } else { img =3D div.appendChild( document.createElement( 'img' )); scriptGroup =3D findScriptGroup(codepoint); if (localGraphics.indexOf(scriptGroup+',') > -1) { img.src =3D 'graphics/'+scriptGroup+'/'+cRecord[0]+'.png'; } else { img.src =3D = 'http://decodeunicode.org/data/glyph/196x196/'+cRecord[0]+'.gif'; } //img.setAttribute( 'src', = 'http://decodeunicode.org/data/glyph/196x196/'+cRecord[0]+'.gif'); } =09 =09 // set up navigational graphics img =3D newContent.appendChild( document.createElement( 'img' )); img.onclick =3D function () { adjacentChar( codepoint, -1 ) }; img.src =3D 'images/undo.gif'; img.className =3D 'icon'; img.alt =3D sPrevChar; img.title =3D sPrevChar; img =3D newContent.appendChild( document.createElement( 'img' )); img.onclick =3D function () { adjacentChar( codepoint, 1 ) }; img.src =3D 'images/go.gif'; imgclassName =3D 'icon'; img.alt =3D sNextChar; img.title =3D sNextChar; // character no. & name div =3D newContent.appendChild( document.createElement( 'div' )); div.style.marginTop =3D '10px'; div.appendChild( document.createTextNode( cRecord[0]+': \u00A0 = '+cRecord[1]+' \u00A0 \u00A0 ' )); =09 // fill out properties table =09 table =3D newContent.appendChild( document.createElement( 'table' )); table.className =3D 'propsTable'; table.width =3D '90%'; table.style.clear =3D 'both'; tbody =3D table.appendChild( document.createElement( 'tbody' )); tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sGeneralCat )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[2] + ' - ' + = generalProp[ cRecord[2] ] )); tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sCanonCombClass )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[3] + ' - ' + = combClass[ cRecord[3] ] )); tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sBidiCat )); td =3D tr.appendChild( document.createElement( 'td' )); string =3D cRecord[4] + ' - ' + bidiProp[ cRecord[4] ]; if (cRecord[9] =3D=3D 'Y' ) { string +=3D sMirrored }; td.appendChild( document.createTextNode( string )); if (cRecord[5]) { tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sCharDecompMap )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[5] )); } if (cRecord[6]) { tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sDecDigitValue )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[6] )); } if (cRecord[7]) { tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sDigitValue )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[7] )); } if (cRecord[8]) { tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sNumValue )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[8] )); } if (cRecord[10]) { tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sUnicode1Name )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[10] )); } if (cRecord[11]) { tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( s10646Comment )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[11] )); } if (cRecord[12]) { tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sUppercaseMap )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[12] )); } if (cRecord[13]) { tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sLowercaseMap )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[13] )); } if (cRecord[14]) { tr =3D tbody.appendChild( document.createElement( 'tr' )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( sTitlecaseMap )); td =3D tr.appendChild( document.createElement( 'td' )); td.appendChild( document.createTextNode( cRecord[14] )); } =09 //find script group p =3D newContent.appendChild( document.createElement( 'p' )); p.style.marginTop =3D "18px"; strong =3D p.appendChild( document.createElement( 'strong' )); strong.appendChild( document.createTextNode( sScriptGroup )); p.appendChild( document.createTextNode( findScriptGroup( codepoint = ))); =09 // find the descriptions var hexLength =3D cRecord[0].length; for (i=3D0; i < descriptions.length-1; i++ ) { if ( descriptions[i].slice(0, hexLength) =3D=3D cRecord[0] ) {=20 dRecord =3D descriptions[i].split('=C2=B6'); p =3D newContent.appendChild( document.createElement( 'p' )); p.style.marginTop =3D "18px"; strong =3D p.appendChild( document.createElement( 'strong' )); strong.appendChild( document.createTextNode( sDescription )); p.appendChild( document.createElement( 'br' )); description =3D true; for (var j=3D1; j < dRecord.length; j++ ) { p.appendChild( document.createTextNode( dRecord[j] )); p.appendChild( document.createElement( 'br' )); } break; } } =09 // add notes from iframe // alert( _newNotesArray ); // if ( _newNotesArray ) { // var iframe =3D document.getElementById( 'iframe' ); // if (iframe.contentDocument) { //alert('using DOM'); // _notesArray =3D = iframe.contentDocument.getElementsByTagName('div'); // alert( sNotesReadIn + _notesArray.length + sDivs ); // } // else if ( iframe.Document ) { //alert( 'must be IE' );=20 // _IE =3D true; // this is a hack until such time as I can figure = out how to make IE work // _notesArray =3D iframe.Document.getElementsByTagName('div'); // alert( sNotesReadIn + _notesArray.length + sDivs ); // } // _newNotesArray =3D false; // } // if (_notesArray.length =3D=3D 0){alert('no notes array');} else = {alert('notes array exists');} =09 // var codeID =3D 'C' + cRecord[0]; // _notesArray =3D document.getElementById( codeID ); // var iframe =3D document.getElementById('iframe'); // nodeArray =3D iframe.contentDocument.getElementsByTagName('div');=09 // alert( _notesArray.length + ' ' + codeID ); // if (_notesArray) { // for (i=3D0; i < _notesArray.length-1; i++ ) { // alert(_notesArray[i].getAttribute('id')); // if (_notesArray[i].id =3D=3D codeID) { // alert( 'found it' ); // var notesNode =3D _notesArray[i].cloneNode(true); // hr =3D newContent.appendChild( document.createElement( 'hr' ) ); // hr.noShade =3D true; hr.style.color =3D '#009966'; // alert( 'after' ); // if ( ! _IE ) { // this is a hack until such time as I can figure = out how to make IE work // newContent.appendChild( notesNode ); // } // newContent.appendChild( _notesArray[i] ); // newContent.appendChild( test ); // alert( 'leaving' ); // break; // } // } // } var codeID =3D 'C' + cRecord[0]; notesNode =3D document.getElementById( codeID ); // alert( codeID ); if (notesNode) { var clonedNode =3D notesNode.cloneNode(true); hr =3D newContent.appendChild( document.createElement( 'hr' ) ); hr.noShade =3D true;=20 hr.style.color =3D '#009966'; newContent.appendChild( clonedNode ); } =09 // add any notes } else { // this is either not a recognized character or a Han or Hangul = character var group =3D findScriptGroup(codepoint); if (group !=3D sNotAChar){ // float the large character to the right div =3D newContent.appendChild( document.createElement( 'div' )); if (IE) { div.style.styleFloat =3D 'right'; } else { = div.style.cssFloat =3D 'right'; } div.style.paddingRight =3D '20px'; div.style.paddingLeft =3D '40px'; if (_utf8) {=20 span =3D div.appendChild( document.createElement( 'span' )); span.id =3D 'largeChar'; span.className =3D 'largeChar' ; span.style.fontFamily =3D _currentFont; span.appendChild( document.createTextNode( MsPadding + = getCharFromInt(codepoint) )); } else { img =3D div.appendChild( document.createElement( 'img' )); scriptGroup =3D findScriptGroup(codepoint); if (localGraphics.indexOf(scriptGroup+',') > -1) { img.src =3D 'graphics/'+scriptGroup+'/'+cRecord[0]+'.png'; } else { img.src =3D = 'http://decodeunicode.org/data/glyph/196x196/'+cRecord[0]+'.gif'; } //img.setAttribute( 'src', = 'http://decodeunicode.org/data/glyph/196x196/'+cRecord[0]+'.gif'); } } =09 // character no. & name div =3D newContent.appendChild( document.createElement( 'div' )); div.style.marginTop =3D '10px'; div.appendChild( document.createTextNode( = codepoint.toString(16).toUpperCase() + sNoDescAvail )); =09 //display script group p =3D newContent.appendChild( document.createElement( 'p' )); p.style.marginTop =3D "18px"; strong =3D p.appendChild( document.createElement( 'strong' )); strong.appendChild( document.createTextNode( sScriptGroup )); p.appendChild( document.createTextNode( group )); } var removedNode =3D listDiv.replaceChild( newContent, oldContent ); }=09 //???=09 function highlightList ( field, searchString ) { // output: highlighting in the left panel of all characters that fall = into the category selected // field: string, the field in the record to search for a match // searchString: string, the specific setting to search for in the = field var nodeArray =3D new Array; =09 var leftpanel =3D document.getElementById('chart'); if ( _displayStyle =3D=3D 'list' ) { nodeArray =3D = leftpanel.getElementsByTagName("div") } else { nodeArray =3D leftpanel.getElementsByTagName("td") }=20 // clear out any existing highlighting for (var i=3D0; i < nodeArray.length; i++) {=20 // if (U[nodeArray[i].title]) { nodeArray[i].style.backgroundColor =3D = 'white'; } // else if (! nodeArray[i].noChar) { nodeArray[i].style.backgroundColor = =3D unassignedFiltered; } if (nodeArray[i].className =3D=3D 'ch' ) {=20 nodeArray[i].style.backgroundColor =3D 'white';=20 } else if (nodeArray[i].className =3D=3D 'empty') {=20 nodeArray[i].style.backgroundColor =3D unassignedFiltered; } } =09 // if you set searchstring to 'none' to clear highlighting, quit now if (searchString =3D=3D 'none') {=20 if (_displayStyle =3D=3D 'matrix') { for (var i=3D0; i < nodeArray.length; i++) { // if (!U[nodeArray[i].title] && nodeArray[i].className =3D=3D = 'empty' ) { if ( nodeArray[i].className =3D=3D 'empty' ) { nodeArray[i].style.backgroundColor =3D unassignedChar; } } } =20 return;=20 } =20 // check whether this is a general or specific category if (searchString.charAt(0) =3D=3D 'x') { searchString =3D searchString.charAt(1); for (var i=3D0; i < nodeArray.length; i++) { // if (U[nodeArray[i].title]) { if (nodeArray[i].className =3D=3D 'ch') { cRecord =3D U[ nodeArray[i].title ].split( ';' ); if ( cRecord[field].charAt(0) =3D=3D searchString ) { nodeArray[i].style.backgroundColor =3D filterHighlight; } } } =20 } else { for (var i=3D0; i < nodeArray.length; i++) { if (nodeArray[i].className =3D=3D 'ch') { cRecord =3D U[ nodeArray[i].title ].split( ';' ); if ( cRecord[field] =3D=3D searchString ) { nodeArray[i].style.backgroundColor =3D filterHighlight; } } } } } =09 function adjacentChar (codepoint, direction) { // output: shows the next or previous character in the database in the = right panel // codepoint: integer, the decimal Unicode scalar value of the = character currently displayed // direction: integer, either 1 or -1 =09 while (codepoint !=3D 0 && codepoint !=3D U.length) { codepoint +=3D direction; if (U[codepoint]) { break; } } printProperties(codepoint); } // ACTION ROUTINES function showCodepoint (codepoint) { printProperties(parseInt( codepoint, 16 )); } =09 function showUnihan (codepoint) { unihan =3D = window.open('http://www.unicode.org/cgi-bin/GetUnihanData.pl?codepoint=3D= '+codepoint+'&useutf8=3Dtrue', 'unihan'); unihan.focus(); } function showConverter (codepoints, origin) { converter =3D = window.open('conversion.php?codepoints=3D'+codepoints+'&origin=3D'+origin= , 'converter'); converter.focus(); } function showRange() { if (document.getElementById('customRange1').value) { createMatrix(document.getElementById('customRange1').value + ':' + = document.getElementById('customRange2').value); } // alert( document.getElementById('URangeSelector').value ); document.getElementById('URangeSelector').value =3D 'Custom'; //this doesn't work yet - fix it }=09 =09 function showSelection(range) { if (_displayStyle =3D=3D 'matrix') { createMatrix(range); } else { createList(range); } rangeArray =3D range.split(':') document.getElementById('customRange1').value =3D rangeArray[0]; document.getElementById('customRange2').value =3D rangeArray[1];=20 } function toggleDisplay (graphic) { if (_displayStyle =3D=3D 'matrix') { _displayStyle =3D 'list'; graphic.src =3D 'images/grid.gif'; } else { _displayStyle =3D 'matrix'; graphic.src =3D 'images/list.gif'; } refreshRange(); } =09 function toggleGraphic (graphic) { if (_utf8) { _utf8 =3D false; graphic.src =3D 'images/utf-8.gif'; } else {=20 _utf8 =3D true; graphic.src =3D 'images/graphic.gif'; } refreshRange(); } =09 function toggleNumbers (graphic) { if (_showNumbers) { _showNumbers =3D false; graphic.src =3D 'images/num-on.gif'; } else {=20 _showNumbers =3D true; graphic.src =3D 'images/num-off.gif'; } refreshRange(); } =09 function refreshRange () { if (document.getElementById('customRange1').value !=3D '') { showSelection( document.getElementById('customRange1').value+':' +document.getElementById('customRange2').value ); } } =09 function changeFontSize (size) { var leftpanel =3D document.getElementById('chart'); =09 if ( _displayStyle =3D=3D 'matrix' ) { nodeArray =3D leftpanel.getElementsByTagName("td"); for (var i=3D0; i < nodeArray.length; i++) {=20 if (nodeArray[i].className !=3D 'hexNum') { nodeArray[i].style.fontSize =3D size; } } } =09 else { nodeArray =3D leftpanel.getElementsByTagName('span')=20 for (var i=3D0; i < nodeArray.length; i++) {=20 if (nodeArray[i].className =3D=3D 'ch') { nodeArray[i].style.fontSize =3D size;=20 } } } =20 } =09 function changeFont (fontName) { // changes the font used for character display // fontName: string, the name of the font to apply // _defaultFont: string, set in prefs.js // _currentFont: string, allows changes to persist =09 //deal with accidents or resets if (fontName =3D=3D sApplyFont || fontName =3D=3D '') { document.getElementById('chFont').value =3D sApplyFont; _currentFont =3D _defaultFont; } else { _currentFont =3D fontName; } =09 // make the changes var leftpanel =3D document.getElementById('chart'); =09 if ( _displayStyle =3D=3D 'matrix' ) { nodeArray =3D leftpanel.getElementsByTagName("td"); for (var i=3D0; i < nodeArray.length; i++) {=20 if (nodeArray[i].className !=3D 'hexNum') { nodeArray[i].style.fontFamily =3D _currentFont; } } } =09 else { nodeArray =3D leftpanel.getElementsByTagName('span')=20 for (var i=3D0; i < nodeArray.length; i++) {=20 if (nodeArray[i].className =3D=3D 'chSpan') { nodeArray[i].style.fontFamily =3D _currentFont;=20 } } }=20 =09 if ( document.getElementById('largeChar')) { document.getElementById('largeChar').style.fontFamily =3D = _currentFont; } } =09 function setupNotesSelector () {=09 var selector =3D document.getElementById( 'notesSelector' ); for (i=3D0; i -1 ) { hexCode =3D hexCode.replace(' ', ''); } =09 // if not a hex number, set notHex to true for (i=3D0; i 6) { notHex =3D true; } =09 if (notHex) { alert( sNotHex ); return; } else { var decCode =3D parseInt( hexCode, 16 ); //check for combining character cRecord =3D U[decCode].split(';'); if (cRecord[3] > 0) { ccPadding =3D '\u00A0'; } // ie. this is a = combining character =09 var preview =3D document.getElementById('preview'); var dropPoint =3D preview.firstChild; var newText =3D document.createTextNode( ccPadding + = getCharFromInt(decCode)); var removedText =3D preview.replaceChild(newText, dropPoint); preview.style.fontFamily =3D _currentFont; } } function changeHeight ( height ) { // changes the height of the visible text in the left panel by user = request // height: user specified height (including px, etc.) var panel =3D document.getElementById( 'listOutput' ); panel.style.height =3D height; } ------=_NextPart_000_0012_01C8BFE6.B7BD02E0--