Rework TTFactory for singleton pattern