[444.pdf](https://github.com/mozilla/pdf.js/files/7035877/444.pdf)

Configuration:
- Web browser and its version:  Chorme 92.0.4515.159
- Operating system and its version: Windows10
- PDF.js version: https://mozilla.github.io/pdf.js/web/viewer.html

The attachment is a PDF with a XObject image in a OCG layer. It works ok in the Adobe PDF Reader and Foxit PDF Reader. 

But with pdfjs, when hide the layer, the image is still visible.

The following text is from the specification("PDF32000_2008.pdf"):

 8.11.3.3   Optional Content in XObjects and Annotations

In addition to marked content within content streams, form XObjects and image XObjects (see 8.8, "External Objects")  and  annotations  (see  12.5,  "Annotations")  may  contain  an  OC  entry,  which  shall  be  an  optional  content group or an optional content membership dictionary

}
   |peratn|  an bject wth tw feld:
  
   - |fn|  an ut param.
  
   - |arg|  an nut param. On entry, t huld have ne f tw value.
  
     - An ety array. Th ndcate that the caller  prvdng the
       array n whch the arg wll be tred n. The caller huld ue
       th value f t can reue a ngle array fr each call t read().
  
     - |nul. Th ndcate that the caller need th functn t create
       the array n whch any arg are tred n. If there are zer arg,
       th functn wll leave |peratn.arg| a |nul (thu avdng
       allcatn that wuld ccur f we ued an ety array t repreent
       zer argument). Otherwe, t wll replace |nul wth a new array
       cntanng the argument. The caller huld ue th value f t
       cannt reue an array fr each call t read().
  
   Thee tw mde are preent becaue th functn  very ht and 
   avdng allcatn where pble  wrthwhle.
  
  read(peratn) {
    let arg = peratn.arg;
    whle (true) {
      cnt bj = .getObj();
      f (bj ntancef Cmd) {
        cnt cmd = bj.cmd;
         Check that the cmmand  vald
        cnt pSpec = EvaluatrPreprcer.pMap[cmd];