 
 ##
 ## private static helper to recursively merge objects
-##			
+##          
 _extend = (target, source)->
     
     if !objects.isArray(target) && objects.isArray(source)

        list = []
    
        ##
        model = floyd.tools.objects.traverse obj,				
            
            function: (key, value)->
                code = value.toString()

        
        return obj
        
    
    ##
    ## this is an coffeescript adaption of Object.identical by Chris O'Brien
    ###
        Original script title: "Object.identical.js"; version 1.12
        Copyright (c) 2011, Chris O'Brien, prettycode.org
        http://github.com/prettycode/Object.identical.js
    
        Permission is hereby granted for unrestricted use, modification, and redistribution of this
        script, only under the condition that this code comment is kept wholly complete, appearing
        directly above the script's code body, in all original or modified non-minified representations
    ###
    ##
    identical: (a, b, sortArrays)->
    
        sort = (obj)->
            
            if sortArrays && floyd.tools.objects.isArray obj
                return obj.sort()
            
            else if typeof obj isnt 'object' || obj is null
                return obj
                
            result = []
            
            for key in floyd.tools.objects.keys(obj).sort()
                result.push 
                    key: key
                    value: sort obj[key]
        
            return result
        
        return JSON.stringify(sort a) is JSON.stringify(sort b)
        
##
##
