you don't need this function, you can use constructor directly