close #59 close #73 close #61 close #72 close #80 close #81 thanks