implement wrap
0.1.8