fixes issue where opts are not passed to the ctor when new is not used