some changes and mainly for annotation