compile supports external doT instance