add select hook