use constructor if possible, small fixes
fix contructor