change per functions and doc