* finish task#1422.
 * code for task#1422.