resolve #35 and resolve #34