removed some unnecessary stuff, improved design