improve some aspects