helper method, do not need internal state of the instance