fixed issues #42 , #37 , #44 ,#28 ,#21 , #16