Added   main contructor