basic functionality redone today