Replace function error

hello,

trying to replace + in callerid, but also it change one number in phone…

exten => s,n,Set(CALLERID(all)=${REPLACE(CALLERID(all),+)})

as result i get something like this

Executing [s@macro-outbound-callerid:33] NoOp("Local/xxx@from-internal-5900;2", """ <+78126020245>") in new stack
Executing [s@macro-outbound-callerid:34] Set("Local/xxx@from-internal-5900;2", "CALLERID(all)="" <78126200245>") in new stack

+7812[size=150]602[/size]0245 -> 7812[size=150]620[/size]0245

Executing [s@macro-outbound-callerid:33] NoOp("Local/79522415907@from-internal-b097;2", """ <+79522882057>") in new stack
Executing [s@macro-outbound-callerid:34] Set("Local/79522415907@from-internal-b097;2", "CALLERID(all)="" <79522822057>") in new stack

+7952[size=150]288[/size]2057 -> 7952[size=150]282[/size]2057

solved

exten => s,n,GotoIf($["${CALLERID(num):0:1}" = "+"]?plusatstart)
exten => s,n(plusatstart),NoOp(Changing Caller ID number from ${CALLERID(num)} to ${CALLERID(num):1})
exten => s,n(plusatstart),Set(CALLERID(num)=${CALLERID(num):1})