implement ex2.6
add 2.2.1 desc