``` local function a(s:string):string return (s:lower():gsub("a","b")); end ``` should be equivalent to `string.gsub(s:lower(), "a", "b")` and `string.gsub(string.lower(s), "a", "b")` but gives a `type error`.