removed val from cons constructor