extending type inferencer