* fix bug#457.
 * code for task#1405.
 * code for task#1408.