fix bug; close #23