Contributed by Srinivas S T (cherry picked from commit 1b1791075a8a45ff8c7d25d52cb014d0ce858cc2) (cherry picked from commit 98565b6c60c4c1cefaabe4a1fa5fe92158b19b97) (cherry picked from commit c64eda080e6ed0d47fbc91a22050612e1d4c80d3)
Contributed by Srinivas S T (cherry picked from commit 1b1791075a8a45ff8c7d25d52cb014d0ce858cc2) (cherry picked from commit 98565b6c60c4c1cefaabe4a1fa5fe92158b19b97) (cherry picked from commit c64eda080e6ed0d47fbc91a22050612e1d4c80d3)