Implemented constructor pattern