add talk implmentation and test.