added edge functionality