switch (c) { case  8: out.push('Backspace'); break; case  9: out.push('Tab'); break; case 27: out.push('Escape'); break; case 33: out.push('PgUp'); break; case 34: out.push('PgDn'); break; case 35: out.push('End'); break; case 36: out.push('Home'); break; case 46: out.push('Delete'); break; default: out.push('code:'+c); break; 
if (that.keyMap.hasOwnProperty(c)) { out.push(that.keyMap[c]); } else { out.push('code:'+c); 
    that.keyMarshalToString = function(km) {        var e = km.split(':');        var out = [];        var c = parseInt(e[5], 10);        if (e[0] === '1') {            out.push('alt');        }        if (e[1] === '1') {            out.push('ctrl');        }        if (e[2] === '1') {            out.push('meta');        }        if (e[3] === '1') {            out.push('shift');        }        if (e[4] === '0') {            switch (c) {            case  8: out.push('Backspace'); break;            case  9: out.push('Tab'); break;            case 27: out.push('Escape'); break;            case 33: out.push('PgUp'); break;            case 34: out.push('PgDn'); break;            case 35: out.push('End'); break;            case 36: out.push('Home'); break;            case 46: out.push('Delete'); break;            default: out.push('code:'+c); break;            }        } else {            out.push(String.fromCharCode(e[4]).toUpperCase());        }        return out.join(' ');    };
4040	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/4040/f7d0146daa3ca173ee76bcee8fef184adcc00bfd/itsalltext.js/buggy/src/chrome/content/itsalltext.js