add doc and changes functions