New code
still some problem