start to support global value type inference and numpy support