added tp, tmand tm1, tm2