* code for task #1971,1961.
 * code task #1971,1961.
 * finish task #1971,1961.
 * code for task #1971.