some design issues fixed