added direction and whatnot