add select call back