modify initializer