(cherry picked from commit ad2721dc55f3233e4c299babe5744418bc530418) Closes #2670 Closes #2674 Closes #2679