Changed some design flaws