workaround tp == td