typedef not needed