update some parts as class discussed