refactor with complement
0.1.5