svn: r6696 original commit: 61fab4d58d412c8d089884731b6dab42d070c5ef
svn: r2960 original commit: 6714169149d0918a0f6927cf427bf0781163e8f1