This function is public, and intended for end user use - so lets not have an underscore.