bug fix 16
bug fix 17
bug fix 18
bug fix 19