Corrente de protótipo correta para Função

Qual é a saída correta (ou seja, correta pelo padrão ECMA) do programa a seguir?

function nl(x) { document.write(x + "<br>"); }
nl(Function.prototype);
nl(Function.prototype.prototype);
nl(Function.prototype.prototype == Object.prototype);
nl(Function.prototype.prototype.prototype);

Chrome e IE6 concordam em dizer:

function Empty() {}
null for Chrome / undefined for IE6
false

e depois falhar.

Saídas Mozilla:

function () { }
[object Object]
false
undefined

Algum destes está correto? Parece que o Mozilla se sai melhor, mas que a melhor saída é

function () { }
[object Object]
true
undefined

questionAnswers(4)

yourAnswerToTheQuestion