This really needs to be redesigned