some improvements...