my  promise implement of promise