better design explanation