added extra constructor