made tfm much better lots of improvements