Enhanced some functionalities
Merge branch 'enhancedAdd'