make notify return promise
implement copy and paste.