add tvalueToRef function