key_identifier_sane = function key_identifier_sane(keyCode, keyIdentifier) {

        // Missing identifier is not sane
        if (!keyIdentifier)
            return false;

        // Assume non-Unicode keyIdentifier values are sane
        var unicodePrefixLocation = keyIdentifier.indexOf("U+");
        if (unicodePrefixLocation === -1)
            return true;

        // If the Unicode codepoint isn't identical to the keyCode,
        // then the identifier is likely correct
        var codepoint = parseInt(keyIdentifier.substring(unicodePrefixLocation+2), 16);
        if (keyCode !== codepoint)
            return true;

        // The keyCodes for A-Z and 0-9 are actually identical to their
        // Unicode codepoints
        if ((keyCode >= 65 && keyCode <= 90) || (keyCode >= 48 && keyCode <= 57))
            return true;

        // The keyIdentifier does NOT appear sane
        return false;

    }
Heuristically detects if the legacy keyIdentifier property of
a keydown/keyup event looks incorrectly derived. Chrome, and
presumably others, will produce the keyIdentifier by assuming
the keyCode is the Unicode codepoint for that key. This is not
correct in all cases.

@private
@param {Number} keyCode
    The keyCode from a browser keydown/keyup event.

@param {String} keyIdentifier
    The legacy keyIdentifier from a browser keydown/keyup event.

@returns {Boolean}
    true if the keyIdentifier looks sane, false if the keyIdentifier
    appears incorrectly derived or is missing entirely.