fixed forward declarations part 2