fix issue and add new feature