Answer is 91.
For fun(95) -> fun(fun(106)) is called.
The inside fun(106) is evaluated first which returns 96, hence fun(96) is called.
Similarly for fun(96) -> fun(fun(107)) is called which evaluates to the call of fun(97).
Similarly, fun(97) -> fun(fun(108)) = fun(98) and so on.
For last call fun(100) calls fun(fun(111)) which evaluates to fun(101) which further returns 91(101-10)