handles edges