with tm implemented