type aware completion initial
improve type aware completion