merged internal changes