mmm.js
function extend(a,b) {
    var c = clone(a);
    for (var key in b) {
        c[key] = b[key];
    }
    return c;
}
function extend(a,b) {
    var c = clone(a);
    for (var key in b) {
        c[key] = b[key];
    }
    return c;
}
function extend ( a , b ) { var c = clone ( a ) ; for ( var key in b ) { c [ key ] = b [ key ] ; } return c ; }
Return a new object that inherits from `a`
and also contains the properties of `b`.
Return a new object that inherits from a and also contains the properties of b .