constructor chaining edited