basic direction implemented