added initializer method