Updated Constructor