encapsulated initialziation logic