checkIsHostForProgram function takes a new 'logic' argument.
It determines which logic should be used to look up for program entity. If the argument is not given, the standard program_logic will be used.
_global_ = this;
function Namespace(name, f) {
var n = name.split(".");
for (var o = _global_, i = 0, l = n.length; i < l; i++) {
o = o[n[i]] = o[n[i]] || {};
}
if (f) f();
}