add query interface