fixed #2, fixed #3