Why this method must be public?