https://github.com/mozilla/pdf.js/issues/6397#issuecomment-164954332 Would have been a lot easier to find had there been an assertion checking that string16 didn't go out of bounds of the 16bit number.

for (let i = 0; i < cmapMappingsLength; ++i) {
          charCodeToGlyphId[cmapMappings[i].charCode] = cmapMappings[i].glyphId;
        }
      } else {
        
        
        
        
        
        
        
        
        
        
        for (let i = 0; i < cmapMappingsLength; ++i) {
          let charCode = cmapMappings[i].charCode;
          if (
            cmapPlatformId === 3 &&
            charCode >= 0xf000 &&
            charCode <= 0xf0ff
          ) {
            charCode &= 0xff;
          }
          charCodeToGlyphId[charCode] = cmapMappings[i].glyphId;
        }
      }
      
      if (
        properties.glyphNames &&