T4 impl