constructors should look correct now