docs: function reduceProperties(map, callback, initial) {
          var result = initial;
          for (var key in map) {
              result = callback(result, map[key], String(key));
          }
          return result;
      }