work on type inference base on control flow analysis