stable version complete
merge