add executeQueryAsyn function