add separate initalize function