add more no arg constructor