all rough functio