fix init function