Port across the mode changes from the 3.6 compliant block to this version