enhanced the new feature and fixed some issues