solved some design issues