Does it mean in LSL3's room's initial room 200 when you look at the plaque, flag event 18 is set in **global 112** due to **111+int(18/16)** (111+1) and likewise when you use binocular for flag event 16 due to **111+int(16/16)**?

In the OG code, global 111 is named

`flagArray` and its definition is followed by an enumeration of flags by name. Each first flag in a set of sixteen has its matching global number in a comment, so it goes:

`logging ;*** 111`

loadDebugNext

....

inQA

forceAtest

beenIn206 ;*** 112

beenIn200

beenIn203

...

beenIn266 ;*** 113

...

and so on.

`beenIn206` is the binocular peep show and

`beenIn203` is the plaque. So your math does

**not** check out. Both events are global 112: 16 (plaque) divided by 16 is 1, so

`[flagArray 1]` aka global 112. Then 16

*modulo* 16 makes 0, so it's the first (zeroth) bit in that global. Likewise, 18 (peepshow) divided by 16 is also 1, but 18 mod 16 is 2, so it's the second-from-zeroth bit of that same global.

(Note that LSL3 uses most-to-least flag ordering so it's actually

`$8000` for the plaque and

`$2000` for the peepshow, not 1 and 4. But ScummVM is aware of this and the script debugger uses the same flag procedures as the rest of the game so this doesn't matter.)

(And of course "zeroth" in this case just means it takes

`$8000` and shifts it left/divides it by two zero times. Or takes 1 and shifts it right/multiplies it by two zero times for least-to-most flag ordering.)