Constructor overload