all functions is done