if (typeof GiantEagle == "undefined") {
    /**
     * The GiantEagle global namespace object.  If GiantEagle is already defined, the
     * existing GiantEagle object will not be overwritten so that defined
     * namespaces are preserved.
     * @class GiantEagle
     * @static
     */
    var GiantEagle = {
        __namespace: true,
        __typeName: "GiantEagle" 
    };  
}

GiantEagle.registerNamespace = function() {              
//GERegisterClientNamespace = 
    var namespaceToRegister = arguments; 
    var namespace = undefined;
    var namespaceParts = undefined;
    for (var i = 0; i < namespaceToRegister.length; i++) 
    {
        namespaceParts = namespaceToRegister[i].split(".");
        namespace = GiantEagle;

        // GiantEagle is implied, so it is ignored if it is included
        for (var j=(namespaceParts[0] == "GiantEagle") ? 1 : 0; j < namespaceParts.length; j++) 
        {
            namespace[namespaceParts[j]] = namespace[namespaceParts[j]] || {};
            namespace = namespace[namespaceParts[j]];
        }
    }
    return namespace;
};