add DI & obfuscator