this could be defined as typedef.