Implemented constructor