fully extended data/mask cache to 4D without breaking the default case with 1 module