merged src/ from 2.0 branch