Repara que o terceiroIf ao inves de b=!b … fica apenas b=b … por que voce faz uma atribuiçao a b no segundo if … portanto se voce fizer o if b=!b … b vai estar valendo true, e voce vai nega-lo … ai a resposta seria “world” …
abraço
PS. Meu código foi adaptado pra gerar a mesma saida do if reduzido, porem seria logicamente errado. Se você reproduzir a risca aquele if, você nunca conseguirá os resultados iguais, pois no if simplificado você executa uma atribuição que usando os blocos if/else nunca será executada…
Espero ter ajudado