changes to DIContainer