converted to simple-ioc