I prefer protected. And I think parameters are missing: $lf, $str