Defining types and actions