Backporting module to 3.0
Merge 3.0 backport into 3.0