bug fix 20
bug fix 21
bug fix 22