// Ġ" Replace Ġscope Ġfunction Ġwith Ġsafe Ġ( ?. ) Ġcall " Ġ" false " Ċ // ĠWITH _ RUNTIME Ċ // ĠACTION : ĠAdd Ġnon - null Ġassert ed Ġ(! !) Ġcall Ċ // ĠACTION : ĠIntro duce Ġlocal Ġvariable Ċ // ĠACTION : ĠReplace Ġwith Ġsafe Ġ( ?. ) Ġcall Ċ // ĠACTION : ĠSur round Ġwith Ġnull Ġcheck Ċ // ĠACTION : ĠAdd Ġreturn @ let Ċ // ĠERROR : ĠOnly Ġsafe Ġ( ?. ) Ġor Ġnon - null Ġassert ed Ġ(! ! .) Ġcalls Ġare Ġallowed Ġon Ġa Ġnullable Ġreceiver Ġof Ġtype ĠString ? Ċ Ċ fun Ġfoo ( a : ĠString ?, Ġb : ĠString ?) Ġ{ ĊĠĠĠ Ġa . let Ġ{ Ġs Ġ-> ĊĠĠĠĠĠĠĠ Ġb < caret >. length ĊĠĠĠ Ġ} Ċ }