code: def multiply_transform(t1, t2):
      
      if _is_indexable(t1) and len(t1) == 2:
          return [
              list(quat_rotate(t1[1], t2[0]) + array(t1[0])),
              list(tf.transformations.quaternion_multiply(t1[1], t2[1]))
          ]
      else:
          return dot(t1, t2)
docs: Combines two transformations together
      The order is translation first, rotation then
      :param t1: [[x, y, z], [x, y, z, w]] or matrix 4x4
      :param t2: [[x, y, z], [x, y, z, w]] or matrix 4x4
      :return: The combination t1-t2 in the form [[x, y, z], [x, y, z, w]] or matrix 4x4