fix #20
fix #21