added clousure injection