close #8 implemented