fixed #1 fixed #3