Edited Main Constructor