protect those constructors