refact first_init method name and remove warning with type