fixed issues #1,2,3,4