some design corrections