some functions updates