Added main constructor