add semantic auto complete