use constructors directly