deletion works
merge from jian