**purpose** * eliminate a time that may cause a failure * it may be happen by quickly user action **todo** * fully used promise chains * lock mechanism