let ctx = if x < 3 { ((tr & 0xF) as u16) + (((t as u16) & 0xF) << 4) + (((l as u16) & 0xF) << 8) } else { 0xFFF };
let res = RV40_AIC_PATTERNS.iter().position(|&x| x == ctx);
if let Some(idx) = res {
let code = br.read_cb(&self.aic_mode2_cb[idx])?;
types[pos + x + 0] = code / 9;
types[pos + x + 1] = code % 9;
let ctx = if x < 3 { ((tr & 0xF) as u16) + (((t as u16) & 0xF) << 4) + (((l as u16) & 0xF) << 8) } else { 0xFFF };
let res = RV40_AIC_PATTERNS.iter().position(|&x| x == ctx);
if let Some(idx) = res {
let code = br.read_cb(&self.aic_mode2_cb[idx])?;
types[pos + x + 0] = code / 9;
types[pos + x + 1] = code % 9;