Any reason for this method to be a function declared at runtime instead of a method on the prototype ?