add part2, init