fixed #14
fixed #2
fixed #13