some work on definitions