some improvements
some modifications
updates