Some functions which I think useful