!function (a, b) { "function" == typeof define && define.amd ? // AMD. Register as an anonymous module unless amdModuleId is set define([], function () { return a.svg4everybody = b() }) : "object" == typeof exports ? module.exports = b() : a.svg4everybody = b() }(this, function () {/*! svg4everybody v2.0.3 | github.com/jonathantneal/svg4everybody */ function a(a, b) { // if the target exists if (b) { // create a document fragment to hold the contents of the target var c = document.createDocumentFragment(), d = !a.getAttribute("viewBox") && b.getAttribute("viewBox"); // conditionally set the viewBox on the svg d && a.setAttribute("viewBox", d); // copy the contents of the clone into the fragment for ( // clone the target var e = b.cloneNode(!0) ; e.childNodes.length;) c.appendChild(e.firstChild); // append the fragment into the svg a.appendChild(c) } } function b(b) { // listen to changes in the request b.onreadystatechange = function () { // if the request is ready if (4 === b.readyState) { // get the cached html document var c = b._cachedDocument; // ensure the cached html document based on the xhr response c || (c = b._cachedDocument = document.implementation.createHTMLDocument(""), c.body.innerHTML = b.responseText, b._cachedTarget = {}), // clear the xhr embeds list and embed each item b._embeds.splice(0).map(function (d) { // get the cached target var e = b._cachedTarget[d.id]; // ensure the cached target e || (e = b._cachedTarget[d.id] = c.getElementById(d.id)), // embed the target into the svg a(d.svg, e) }) } }, // test the ready state change immediately b.onreadystatechange() } function c(c) { function d() { // while the index exists in the live collection for ( // get the cached index var c = 0; c < l.length;) { // get the current var g = l[c], h = g.parentNode; if (h && /svg/i.test(h.nodeName)) { var i = g.getAttribute("xlink:href"); if (e && (!f.validate || f.validate(i, h, g))) { // remove the element h.removeChild(g); // parse the src and get the url and id var m = i.split("#"), n = m.shift(), o = m.join("#"); // if the link is external if (n.length) { // get the cached xhr request var p = j[n]; // ensure the xhr request exists p || (p = j[n] = new XMLHttpRequest, p.open("GET", n), p.send(), p._embeds = []), // add the svg and id as an item to the xhr embeds list p._embeds.push({ svg: h, id: o }), // prepare the xhr ready state change event b(p) } else // embed the local id into the svg a(h, document.getElementById(o)) } } else // increase the index when the previous value was not "valid" ++c } // continue the interval k(d, 67) } var e, f = Object(c), g = /\bTrident\/[567]\b|\bMSIE (?:9|10)\.0\b/, h = /\bAppleWebKit\/(\d+)\b/, i = /\bEdge\/12\.(\d+)\b/; e = "polyfill" in f ? f.polyfill : g.test(navigator.userAgent) || (navigator.userAgent.match(i) || [])[1] < 10547 || (navigator.userAgent.match(h) || [])[1] < 537; // create xhr requests object var j = {}, k = window.requestAnimationFrame || setTimeout, l = document.getElementsByTagName("use"); // conditionally start the interval if the polyfill is active e && d() } return c });