code: function Headers(headers) {
  	            var _this = this;
  	            /** @internal header names are lower case */
  	            this._headers = new Map();
  	            /** @internal map lower case names to actual names */
  	            this._normalizedNames = new Map();
  	            if (!headers) {
  	                return;
  	            }
  	            if (headers instanceof Headers) {
  	                headers._headers.forEach(function (values, name) {
  	                    values.forEach(function (value) { return _this.append(name, value); });
  	                });
  	                return;
  	            }
  	            Object.keys(headers).forEach(function (name) {
  	                var values = Array.isArray(headers[name]) ? headers[name] : [headers[name]];
  	                _this.delete(name);
  	                values.forEach(function (value) { return _this.append(name, value); });
  	            });
  	        }
docs: TODO(vicb): any -> string|string[]