@ Experimental Unsigned Types Ċ object ĠMath Ġ{ ĊĠĠĠ Ġtail rec Ġfun Ġfib onacci ( n : ĠU Long , Ġa : ĠDouble Ġ= Ġ 0 . 0 , Ġb : ĠDouble Ġ= Ġ 1 . 0 ): ĠDouble ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġif Ġ( n Ġ== Ġ 0 u L ) Ġa Ġelse Ġfib onacci ( n Ġ- Ġ 1 u , Ġb , Ġa Ġ+ Ġb ) ĊĊĠĠĠ Ġtail rec Ġfun Ġfactor ial ( n : ĠU Long , Ġrun : ĠDouble Ġ= Ġ 1 . 0 ): ĠDouble ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġif Ġ( n Ġ== Ġ 1 u L ) Ġrun Ġelse Ġfactor ial ( n Ġ- Ġ 1 u , Ġrun Ġ* Ġn . to Long ()) Ċ } Ċ