generate definitions