copied from tvr2