init by z