this is a protected method, so its called internally. no need to return $this.