addede some improvements
test