definitions completed for now