Implement constructor