modify sngleton & add HW2 C4