some progress correcting issue 8