added strangeIoC framework