PageSourceSearch

https://candeloeventi.it/wp-content/plugins/woo-essential/assets/js/isotope.min.js?ver=1789403603

js candeloeventi.it collected 2026-10-03 22:09:04 UTC 56,248 bytes, 1,804 lines download raw bytes

1/*!
2 * Isotope PACKAGED v3.0.6
3 *
4 * Licensed GPLv3 for open source use
5 * or Isotope Commercial License for commercial use
6 *
7 * https://isotope.metafizzy.co
8 * Copyright 2010-2018 Metafizzy
9 */
10
11!(function(t, e) {
12  "function" == typeof define && define.amd
13    ? define("jquery-bridget/jquery-bridget", ["jquery"], function(i) {
14        return e(t, i);
15      })
16    : "object" == typeof module && module.exports
17    ? (module.exports = e(t, require("jquery")))
18    : (t.jQueryBridget = e(t, t.jQuery));
19})(window, function(t, e) {
20  "use strict";
21  function i(i, s, a) {
22    function u(t, e, o) {
23      var n,
24        s = "$()." + i + '("' + e + '")';
25      return (
26        t.each(function(t, u) {
27          var h = a.data(u, i);
28          if (!h)
29            return void r(
30              i + " not initialized. Cannot call methods, i.e. " + s
31            );
32          var d = h[e];
33          if (!d || "_" == e.charAt(0))
34            return void r(s + " is not a valid method");
35          var l = d.apply(h, o);
36          n = void 0 === n ? l : n;
37        }),
38        void 0 !== n ? n : t
39      );
40    }
41    function h(t, e) {
42      t.each(function(t, o) {
43        var n = a.data(o, i);
44        n ? (n.option(e), n._init()) : ((n = new s(o, e)), a.data(o, i, n));
45      });
46    }
47    (a = a || e || t.jQuery),
48      a &&
49        (s.prototype.option ||
50          (s.prototype.option = function(t) {
51            a.isPlainObject(t) &&
52              (this.options = a.extend(!0, this.options, t));
53          }),
54        (a.fn[i] = function(t) {
55          if ("string" == typeof t) {
56            var e = n.call(arguments, 1);
57            return u(this, t, e);
58          }
59          return h(this, t), this;
60        }),
61        o(a));
62  }
63  function o(t) {
64    !t || (t && t.bridget) || (t.bridget = i);
65  }
66  var n = Array.prototype.slice,
67    s = t.console,
68    r =
69      "undefined" == typeof s
70        ? function() {}
71        : function(t) {
72            s.error(t);
73          };
74  return o(e || t.jQuery), i;
75}),
76  (function(t, e) {
77    "function" == typeof define && define.amd
78      ? define("ev-emitter/ev-emitter", e)
79      : "object" == typeof module && module.exports
80      ? (module.exports = e())
81      : (t.EvEmitter = e());
82  })("undefined" != typeof window ? window : this, function() {
83    function t() {}
84    var e = t.prototype;
85    return (
86      (e.on = function(t, e) {
87        if (t && e) {
88          var i = (this._events = this._events || {}),
89            o = (i[t] = i[t] || []);
90          return o.indexOf(e) == -1 && o.push(e), this;
91        }
92      }),
93      (e.once = function(t, e) {
94        if (t && e) {
95          this.on(t, e);
96          var i = (this._onceEvents = this._onceEvents || {}),
97            o = (i[t] = i[t] || {});
98          return (o[e] = !0), this;
99        }
100      }),
101      (e.off = function(t, e) {
102        var i = this._events && this._events[t];
103        if (i && i.length) {
104          var o = i.indexOf(e);
105          return o != -1 && i.splice(o, 1), this;
106        }
107      }),
108      (e.emitEvent = function(t, e) {
109        var i = this._events && this._events[t];
110        if (i && i.length) {
111          (i = i.slice(0)), (e = e || []);
112          for (
113            var o = this._onceEvents && this._onceEvents[t], n = 0;
114            n < i.length;
115            n++
116          ) {
117            var s = i[n],
118              r = o && o[s];
119            r && (this.off(t, s), delete o[s]), s.apply(this, e);
120          }
121          return this;
122        }
123      }),
124      (e.allOff = function() {
125        delete this._events, delete this._onceEvents;
126      }),
127      t
128    );
129  }),
130  (function(t, e) {
131    "function" == typeof define && define.amd
132      ? define("get-size/get-size", e)
133      : "object" == typeof module && module.exports
134      ? (module.exports = e())
135      : (t.getSize = e());
136  })(window, function() {
137    "use strict";
138    function t(t) {
139      var e = parseFloat(t),
140        i = t.indexOf("%") == -1 && !isNaN(e);
141      return i && e;
142    }
143    function e() {}
144    function i() {
145      for (
146        var t = {
147            width: 0,
148            height: 0,
149            innerWidth: 0,
150            innerHeight: 0,
151            outerWidth: 0,
152            outerHeight: 0,
153          },
154          e = 0;
155        e < h;
156        e++
157      ) {
158        var i = u[e];
159        t[i] = 0;
160      }
161      return t;
162    }
163    function o(t) {
164      var e = getComputedStyle(t);
165      return (
166        e ||
167          a(
168            "Style returned " +
169              e +
170              ". Are you running this code in a hidden iframe on Firefox? See https://bit.ly/getsizebug1"
171          ),
172        e
173      );
174    }
175    function n() {
176      if (!d) {
177        d = !0;
178        var e = document.createElement("div");
179        (e.style.width = "200px"),
180          (e.style.padding = "1px 2px 3px 4px"),
181          (e.style.borderStyle = "solid"),
182          (e.style.borderWidth = "1px 2px 3px 4px"),
183          (e.style.boxSizing = "border-box");
184        var i = document.body || document.documentElement;
185        i.appendChild(e);
186        var n = o(e);
187        (r = 200 == Math.round(t(n.width))),
188          (s.isBoxSizeOuter = r),
189          i.removeChild(e);
190      }
191    }
192    function s(e) {
193      if (
194        (n(),
195        "string" == typeof e && (e = document.querySelector(e)),
196        e && "object" == typeof e && e.nodeType)
197      ) {
198        var s = o(e);
199        if ("none" == s.display) return i();
200        var a = {};
201        (a.width = e.offsetWidth), (a.height = e.offsetHeight);
202        for (
203          var d = (a.isBorderBox = "border-box" == s.boxSizing), l = 0;
204          l < h;
205          l++
206        ) {
207          var f = u[l],
208            c = s[f],
209            m = parseFloat(c);
210          a[f] = isNaN(m) ? 0 : m;
211        }
212        var p = a.paddingLeft + a.paddingRight,
213          y = a.paddingTop + a.paddingBottom,
214          g = a.marginLeft + a.marginRight,
215          v = a.marginTop + a.marginBottom,
216          _ = a.borderLeftWidth + a.borderRightWidth,
217          z = a.borderTopWidth + a.borderBottomWidth,
218          I = d && r,
219          x = t(s.width);
220        x !== !1 && (a.width = x + (I ? 0 : p + _));
221        var S = t(s.height);
222        return (
223          S !== !1 && (a.height = S + (I ? 0 : y + z)),
224          (a.innerWidth = a.width - (p + _)),
225          (a.innerHeight = a.height - (y + z)),
226          (a.outerWidth = a.width + g),
227          (a.outerHeight = a.height + v),
228          a
229        );
230      }
231    }
232    var r,
233      a =
234        "undefined" == typeof console
235          ? e
236          : function(t) {
237              console.error(t);
238            },
239      u = [
240        "paddingLeft",
241        "paddingRight",
242        "paddingTop",
243        "paddingBottom",
244        "marginLeft",
245        "marginRight",
246        "marginTop",
247        "marginBottom",
248        "borderLeftWidth",
249        "borderRightWidth",
250        "borderTopWidth",
251        "borderBottomWidth",
252      ],
253      h = u.length,
254      d = !1;
255    return s;
256  }),
257  (function(t, e) {
258    "use strict";
259    "function" == typeof define && define.amd
260      ? define("desandro-matches-selector/matches-selector", e)
261      : "object" == typeof module && module.exports
262      ? (module.exports = e())
263      : (t.matchesSelector = e());
264  })(window, function() {
265    "use strict";
266    var t = (function() {
267      var t = window.Element.prototype;
268      if (t.matches) return "matches";
269      if (t.matchesSelector) return "matchesSelector";
270      for (var e = ["webkit", "moz", "ms", "o"], i = 0; i < e.length; i++) {
271        var o = e[i],
272          n = o + "MatchesSelector";
273        if (t[n]) return n;
274      }
275    })();
276    return function(e, i) {
277      return e[t](i);
278    };
279  }),
280  (function(t, e) {
281    "function" == typeof define && define.amd
282      ? define("fizzy-ui-utils/utils", [
283          "desandro-matches-selector/matches-selector",
284        ], function(i) {
285          return e(t, i);
286        })
287      : "object" == typeof module && module.exports
288      ? (module.exports = e(t, require("desandro-matches-selector")))
289      : (t.fizzyUIUtils = e(t, t.matchesSelector));
290  })(window, function(t, e) {
291    var i = {};
292    (i.extend = function(t, e) {
293      for (var i in e) t[i] = e[i];
294      return t;
295    }),
296      (i.modulo = function(t, e) {
297        return ((t % e) + e) % e;
298      });
299    var o = Array.prototype.slice;
300    (i.makeArray = function(t) {
301      if (Array.isArray(t)) return t;
302      if (null === t || void 0 === t) return [];
303      var e = "object" == typeof t && "number" == typeof t.length;
304      return e ? o.call(t) : [t];
305    }),
306      (i.removeFrom = function(t, e) {
307        var i = t.indexOf(e);
308        i != -1 && t.splice(i, 1);
309      }),
310      (i.getParent = function(t, i) {
311        for (; t.parentNode && t != document.body; )
312          if (((t = t.parentNode), e(t, i))) return t;
313      }),
314      (i.getQueryElement = function(t) {
315        return "string" == typeof t ? document.querySelector(t) : t;
316      }),
317      (i.handleEvent = function(t) {
318        var e = "on" + t.type;
319        this[e] && this[e](t);
320      }),
321      (i.filterFindElements = function(t, o) {
322        t = i.makeArray(t);
323        var n = [];
324        return (
325          t.forEach(function(t) {
326            if (t instanceof HTMLElement) {
327              if (!o) return void n.push(t);
328              e(t, o) && n.push(t);
329              for (var i = t.querySelectorAll(o), s = 0; s < i.length; s++)
330                n.push(i[s]);
331            }
332          }),
333          n
334        );
335      }),
336      (i.debounceMethod = function(t, e, i) {
337        i = i || 100;
338        var o = t.prototype[e],
339          n = e + "Timeout";
340        t.prototype[e] = function() {
341          var t = this[n];
342          clearTimeout(t);
343          var e = arguments,
344            s = this;
345          this[n] = setTimeout(function() {
346            o.apply(s, e), delete s[n];
347          }, i);
348        };
349      }),
350      (i.docReady = function(t) {
351        var e = document.readyState;
352        "complete" == e || "interactive" == e
353          ? setTimeout(t)
354          : document.addEventListener("DOMContentLoaded", t);
355      }),
356      (i.toDashed = function(t) {
357        return t
358          .replace(/(.)([A-Z])/g, function(t, e, i) {
359            return e + "-" + i;
360          })
361          .toLowerCase();
362      });
363    var n = t.console;
364    return (
365      (i.htmlInit = function(e, o) {
366        i.docReady(function() {
367          var s = i.toDashed(o),
368            r = "data-" + s,
369            a = document.querySelectorAll("[" + r + "]"),
370            u = document.querySelectorAll(".js-" + s),
371            h = i.makeArray(a).concat(i.makeArray(u)),
372            d = r + "-options",
373            l = t.jQuery;
374          h.forEach(function(t) {
375            var i,
376              s = t.getAttribute(r) || t.getAttribute(d);
377            try {
378              i = s && JSON.parse(s);
379            } catch (a) {
380              return void (
381                n &&
382                n.error("Error parsing " + r + " on " + t.className + ": " + a)
383              );
384            }
385            var u = new e(t, i);
386            l && l.data(t, o, u);
387          });
388        });
389      }),
390      i
391    );
392  }),
393  (function(t, e) {
394    "function" == typeof define && define.amd
395      ? define("outlayer/item", [
396          "ev-emitter/ev-emitter",
397          "get-size/get-size",
398        ], e)
399      : "object" == typeof module && module.exports
400      ? (module.exports = e(require("ev-emitter"), require("get-size")))
401      : ((t.Outlayer = {}), (t.Outlayer.Item = e(t.EvEmitter, t.getSize)));
402  })(window, function(t, e) {
403    "use strict";
404    function i(t) {
405      for (var e in t) return !1;
406      return (e = null), !0;
407    }
408    function o(t, e) {
409      t &&
410        ((this.element = t),
411        (this.layout = e),
412        (this.position = { x: 0, y: 0 }),
413        this._create());
414    }
415    function n(t) {
416      return t.replace(/([A-Z])/g, function(t) {
417        return "-" + t.toLowerCase();
418      });
419    }
420    var s = document.documentElement.style,
421      r = "string" == typeof s.transition ? "transition" : "WebkitTransition",
422      a = "string" == typeof s.transform ? "transform" : "WebkitTransform",
423      u = {
424        WebkitTransition: "webkitTransitionEnd",
425        transition: "transitionend",
426      }[r],
427      h = {
428        transform: a,
429        transition: r,
430        transitionDuration: r + "Duration",
431        transitionProperty: r + "Property",
432        transitionDelay: r + "Delay",
433      },
434      d = (o.prototype = Object.create(t.prototype));
435    (d.constructor = o),
436      (d._create = function() {
437        (this._transn = { ingProperties: {}, clean: {}, onEnd: {} }),
438          this.css({ position: "absolute" });
439      }),
440      (d.handleEvent = function(t) {
441        var e = "on" + t.type;
442        this[e] && this[e](t);
443      }),
444      (d.getSize = function() {
445        this.size = e(this.element);
446      }),
447      (d.css = function(t) {
448        var e = this.element.style;
449        for (var i in t) {
450          var o = h[i] || i;
451          e[o] = t[i];
452        }
453      }),
454      (d.getPosition = function() {
455        var t = getComputedStyle(this.element),
456          e = this.layout._getOption("originLeft"),
457          i = this.layout._getOption("originTop"),
458          o = t[e ? "left" : "right"],
459          n = t[i ? "top" : "bottom"],
460          s = parseFloat(o),
461          r = parseFloat(n),
462          a = this.layout.size;
463        o.indexOf("%") != -1 && (s = (s / 100) * a.width),
464          n.indexOf("%") != -1 && (r = (r / 100) * a.height),
465          (s = isNaN(s) ? 0 : s),
466          (r = isNaN(r) ? 0 : r),
467          (s -= e ? a.paddingLeft : a.paddingRight),
468          (r -= i ? a.paddingTop : a.paddingBottom),
469          (this.position.x = s),
470          (this.position.y = r);
471      }),
472      (d.layoutPosition = function() {
473        var t = this.layout.size,
474          e = {},
475          i = this.layout._getOption("originLeft"),
476          o = this.layout._getOption("originTop"),
477          n = i ? "paddingLeft" : "paddingRight",
478          s = i ? "left" : "right",
479          r = i ? "right" : "left",
480          a = this.position.x + t[n];
481        (e[s] = this.getXValue(a)), (e[r] = "");
482        var u = o ? "paddingTop" : "paddingBottom",
483          h = o ? "top" : "bottom",
484          d = o ? "bottom" : "top",
485          l = this.position.y + t[u];
486        (e[h] = this.getYValue(l)),
487          (e[d] = ""),
488          this.css(e),
489          this.emitEvent("layout", [this]);
490      }),
491      (d.getXValue = function(t) {
492        var e = this.layout._getOption("horizontal");
493        return this.layout.options.percentPosition && !e
494          ? (t / this.layout.size.width) * 100 + "%"
495          : t + "px";
496      }),
497      (d.getYValue = function(t) {
498        var e = this.layout._getOption("horizontal");
499        return this.layout.options.percentPosition && e
500          ? (t / this.layout.size.height) * 100 + "%"
501          : t + "px";
502      }),
503      (d._transitionTo = function(t, e) {
504        this.getPosition();
505        var i = this.position.x,
506          o = this.position.y,
507          n = t == this.position.x && e == this.position.y;
508        if ((this.setPosition(t, e), n && !this.isTransitioning))
509          return void this.layoutPosition();
510        var s = t - i,
511          r = e - o,
512          a = {};
513        (a.transform = this.getTranslate(s, r)),
514          this.transition({
515            to: a,
516            onTransitionEnd: { transform: this.layoutPosition },
517            isCleaning: !0,
518          });
519      }),
520      (d.getTranslate = function(t, e) {
521        var i = this.layout._getOption("originLeft"),
522          o = this.layout._getOption("originTop");
523        return (
524          (t = i ? t : -t),
525          (e = o ? e : -e),
526          "translate3d(" + t + "px, " + e + "px, 0)"
527        );
528      }),
529      (d.goTo = function(t, e) {
530        this.setPosition(t, e), this.layoutPosition();
531      }),
532      (d.moveTo = d._transitionTo),
533      (d.setPosition = function(t, e) {
534        (this.position.x = parseFloat(t)), (this.position.y = parseFloat(e));
535      }),
536      (d._nonTransition = function(t) {
537        this.css(t.to), t.isCleaning && this._removeStyles(t.to);
538        for (var e in t.onTransitionEnd) t.onTransitionEnd[e].call(this);
539      }),
540      (d.transition = function(t) {
541        if (!parseFloat(this.layout.options.transitionDuration))
542          return void this._nonTransition(t);
543        var e = this._transn;
544        for (var i in t.onTransitionEnd) e.onEnd[i] = t.onTransitionEnd[i];
545        for (i in t.to)
546          (e.ingProperties[i] = !0), t.isCleaning && (e.clean[i] = !0);
547        if (t.from) {
548          this.css(t.from);
549          var o = this.element.offsetHeight;
550          o = null;
551        }
552        this.enableTransition(t.to),
553          this.css(t.to),
554          (this.isTransitioning = !0);
555      });
556    var l = "opacity," + n(a);
557    (d.enableTransition = function() {
558      if (!this.isTransitioning) {
559        var t = this.layout.options.transitionDuration;
560        (t = "number" == typeof t ? t + "ms" : t),
561          this.css({
562            transitionProperty: l,
563            transitionDuration: t,
564            transitionDelay: this.staggerDelay || 0,
565          }),
566          this.element.addEventListener(u, this, !1);
567      }
568    }),
569      (d.onwebkitTransitionEnd = function(t) {
570        this.ontransitionend(t);
571      }),
572      (d.onotransitionend = function(t) {
573        this.ontransitionend(t);
574      });
575    var f = { "-webkit-transform": "transform" };
576    (d.ontransitionend = function(t) {
577      if (t.target === this.element) {
578        var e = this._transn,
579          o = f[t.propertyName] || t.propertyName;
580        if (
581          (delete e.ingProperties[o],
582          i(e.ingProperties) && this.disableTransition(),
583          o in e.clean &&
584            ((this.element.style[t.propertyName] = ""), delete e.clean[o]),
585          o in e.onEnd)
586        ) {
587          var n = e.onEnd[o];
588          n.call(this), delete e.onEnd[o];
589        }
590        this.emitEvent("transitionEnd", [this]);
591      }
592    }),
593      (d.disableTransition = function() {
594        this.removeTransitionStyles(),
595          this.element.removeEventListener(u, this, !1),
596          (this.isTransitioning = !1);
597      }),
598      (d._removeStyles = function(t) {
599        var e = {};
600        for (var i in t) e[i] = "";
601        this.css(e);
602      });
603    var c = {
604      transitionProperty: "",
605      transitionDuration: "",
606      transitionDelay: "",
607    };
608    return (
609      (d.removeTransitionStyles = function() {
610        this.css(c);
611      }),
612      (d.stagger = function(t) {
613        (t = isNaN(t) ? 0 : t), (this.staggerDelay = t + "ms");
614      }),
615      (d.removeElem = function() {
616        this.element.parentNode.removeChild(this.element),
617          this.css({ display: "" }),
618          this.emitEvent("remove", [this]);
619      }),
620      (d.remove = function() {
621        return r && parseFloat(this.layout.options.transitionDuration)
622          ? (this.once("transitionEnd", function() {
623              this.removeElem();
624            }),
625            void this.hide())
626          : void this.removeElem();
627      }),
628      (d.reveal = function() {
629        delete this.isHidden, this.css({ display: "" });
630        var t = this.layout.options,
631          e = {},
632          i = this.getHideRevealTransitionEndProperty("visibleStyle");
633        (e[i] = this.onRevealTransitionEnd),
634          this.transition({
635            from: t.hiddenStyle,
636            to: t.visibleStyle,
637            isCleaning: !0,
638            onTransitionEnd: e,
639          });
640      }),
641      (d.onRevealTransitionEnd = function() {
642        this.isHidden || this.emitEvent("reveal");
643      }),
644      (d.getHideRevealTransitionEndProperty = function(t) {
645        var e = this.layout.options[t];
646        if (e.opacity) return "opacity";
647        for (var i in e) return i;
648      }),
649      (d.hide = function() {
650        (this.isHidden = !0), this.css({ display: "" });
651        var t = this.layout.options,
652          e = {},
653          i = this.getHideRevealTransitionEndProperty("hiddenStyle");
654        (e[i] = this.onHideTransitionEnd),
655          this.transition({
656            from: t.visibleStyle,
657            to: t.hiddenStyle,
658            isCleaning: !0,
659            onTransitionEnd: e,
660          });
661      }),
662      (d.onHideTransitionEnd = function() {
663        this.isHidden &&
664          (this.css({ display: "none" }), this.emitEvent("hide"));
665      }),
666      (d.destroy = function() {
667        this.css({
668          position: "",
669          left: "",
670          right: "",
671          top: "",
672          bottom: "",
673          transition: "",
674          transform: "",
675        });
676      }),
677      o
678    );
679  }),
680  (function(t, e) {
681    "use strict";
682    "function" == typeof define && define.amd
683      ? define("outlayer/outlayer", [
684          "ev-emitter/ev-emitter",
685          "get-size/get-size",
686          "fizzy-ui-utils/utils",
687          "./item",
688        ], function(i, o, n, s) {
689          return e(t, i, o, n, s);
690        })
691      : "object" == typeof module && module.exports
692      ? (module.exports = e(
693          t,
694          require("ev-emitter"),
695          require("get-size"),
696          require("fizzy-ui-utils"),
697          require("./item")
698        ))
699      : (t.Outlayer = e(
700          t,
701          t.EvEmitter,
702          t.getSize,
703          t.fizzyUIUtils,
704          t.Outlayer.Item
705        ));
706  })(window, function(t, e, i, o, n) {
707    "use strict";
708    function s(t, e) {
709      var i = o.getQueryElement(t);
710      if (!i)
711        return void (
712          u &&
713          u.error(
714            "Bad element for " + this.constructor.namespace + ": " + (i || t)
715          )
716        );
717      (this.element = i),
718        h && (this.$element = h(this.element)),
719        (this.options = o.extend({}, this.constructor.defaults)),
720        this.option(e);
721      var n = ++l;
722      (this.element.outlayerGUID = n), (f[n] = this), this._create();
723      var s = this._getOption("initLayout");
724      s && this.layout();
725    }
726    function r(t) {
727      function e() {
728        t.apply(this, arguments);
729      }
730      return (
731        (e.prototype = Object.create(t.prototype)),
732        (e.prototype.constructor = e),
733        e
734      );
735    }
736    function a(t) {
737      if ("number" == typeof t) return t;
738      var e = t.match(/(^\d*\.?\d*)(\w*)/),
739        i = e && e[1],
740        o = e && e[2];
741      if (!i.length) return 0;
742      i = parseFloat(i);
743      var n = m[o] || 1;
744      return i * n;
745    }
746    var u = t.console,
747      h = t.jQuery,
748      d = function() {},
749      l = 0,
750      f = {};
751    (s.namespace = "outlayer"),
752      (s.Item = n),
753      (s.defaults = {
754        containerStyle: { position: "relative" },
755        initLayout: !0,
756        originLeft: !0,
757        originTop: !0,
758        resize: !0,
759        resizeContainer: !0,
760        transitionDuration: "0.4s",
761        hiddenStyle: { opacity: 0, transform: "scale(0.001)" },
762        visibleStyle: { opacity: 1, transform: "scale(1)" },
763      });
764    var c = s.prototype;
765    o.extend(c, e.prototype),
766      (c.option = function(t) {
767        o.extend(this.options, t);
768      }),
769      (c._getOption = function(t) {
770        var e = this.constructor.compatOptions[t];
771        return e && void 0 !== this.options[e]
772          ? this.options[e]
773          : this.options[t];
774      }),
775      (s.compatOptions = {
776        initLayout: "isInitLayout",
777        horizontal: "isHorizontal",
778        layoutInstant: "isLayoutInstant",
779        originLeft: "isOriginLeft",
780        originTop: "isOriginTop",
781        resize: "isResizeBound",
782        resizeContainer: "isResizingContainer",
783      }),
784      (c._create = function() {
785        this.reloadItems(),
786          (this.stamps = []),
787          this.stamp(this.options.stamp),
788          o.extend(this.element.style, this.options.containerStyle);
789        var t = this._getOption("resize");
790        t && this.bindResize();
791      }),
792      (c.reloadItems = function() {
793        this.items = this._itemize(this.element.children);
794      }),
795      (c._itemize = function(t) {
796        for (
797          var e = this._filterFindItemElements(t),
798            i = this.constructor.Item,
799            o = [],
800            n = 0;
801          n < e.length;
802          n++
803        ) {
804          var s = e[n],
805            r = new i(s, this);
806          o.push(r);
807        }
808        return o;
809      }),
810      (c._filterFindItemElements = function(t) {
811        return o.filterFindElements(t, this.options.itemSelector);
812      }),
813      (c.getItemElements = function() {
814        return this.items.map(function(t) {
815          return t.element;
816        });
817      }),
818      (c.layout = function() {
819        this._resetLayout(), this._manageStamps();
820        var t = this._getOption("layoutInstant"),
821          e = void 0 !== t ? t : !this._isLayoutInited;
822        this.layoutItems(this.items, e), (this._isLayoutInited = !0);
823      }),
824      (c._init = c.layout),
825      (c._resetLayout = function() {
826        this.getSize();
827      }),
828      (c.getSize = function() {
829        this.size = i(this.element);
830      }),
831      (c._getMeasurement = function(t, e) {
832        var o,
833          n = this.options[t];
834        n
835          ? ("string" == typeof n
836              ? (o = this.element.querySelector(n))
837              : n instanceof HTMLElement && (o = n),
838            (this[t] = o ? i(o)[e] : n))
839          : (this[t] = 0);
840      }),
841      (c.layoutItems = function(t, e) {
842        (t = this._getItemsForLayout(t)),
843          this._layoutItems(t, e),
844          this._postLayout();
845      }),
846      (c._getItemsForLayout = function(t) {
847        return t.filter(function(t) {
848          return !t.isIgnored;
849        });
850      }),
851      (c._layoutItems = function(t, e) {
852        if ((this._emitCompleteOnItems("layout", t), t && t.length)) {
853          var i = [];
854          t.forEach(function(t) {
855            var o = this._getItemLayoutPosition(t);
856            (o.item = t), (o.isInstant = e || t.isLayoutInstant), i.push(o);
857          }, this),
858            this._processLayoutQueue(i);
859        }
860      }),
861      (c._getItemLayoutPosition = function() {
862        return { x: 0, y: 0 };
863      }),
864      (c._processLayoutQueue = function(t) {
865        this.updateStagger(),
866          t.forEach(function(t, e) {
867            this._positionItem(t.item, t.x, t.y, t.isInstant, e);
868          }, this);
869      }),
870      (c.updateStagger = function() {
871        var t = this.options.stagger;
872        return null === t || void 0 === t
873          ? void (this.stagger = 0)
874          : ((this.stagger = a(t)), this.stagger);
875      }),
876      (c._positionItem = function(t, e, i, o, n) {
877        o ? t.goTo(e, i) : (t.stagger(n * this.stagger), t.moveTo(e, i));
878      }),
879      (c._postLayout = function() {
880        this.resizeContainer();
881      }),
882      (c.resizeContainer = function() {
883        var t = this._getOption("resizeContainer");
884        if (t) {
885          var e = this._getContainerSize();
886          e &&
887            (this._setContainerMeasure(e.width, !0),
888            this._setContainerMeasure(e.height, !1));
889        }
890      }),
891      (c._getContainerSize = d),
892      (c._setContainerMeasure = function(t, e) {
893        if (void 0 !== t) {
894          var i = this.size;
895          i.isBorderBox &&
896            (t += e
897              ? i.paddingLeft +
898                i.paddingRight +
899                i.borderLeftWidth +
900                i.borderRightWidth
901              : i.paddingBottom +
902                i.paddingTop +
903                i.borderTopWidth +
904                i.borderBottomWidth),
905            (t = Math.max(t, 0)),
906            (this.element.style[e ? "width" : "height"] = t + "px");
907        }
908      }),
909      (c._emitCompleteOnItems = function(t, e) {
910        function i() {
911          n.dispatchEvent(t + "Complete", null, [e]);
912        }
913        function o() {
914          r++, r == s && i();
915        }
916        var n = this,
917          s = e.length;
918        if (!e || !s) return void i();
919        var r = 0;
920        e.forEach(function(e) {
921          e.once(t, o);
922        });
923      }),
924      (c.dispatchEvent = function(t, e, i) {
925        var o = e ? [e].concat(i) : i;
926        if ((this.emitEvent(t, o), h))
927          if (((this.$element = this.$element || h(this.element)), e)) {
928            var n = h.Event(e);
929            (n.type = t), this.$element.trigger(n, i);
930          } else this.$element.trigger(t, i);
931      }),
932      (c.ignore = function(t) {
933        var e = this.getItem(t);
934        e && (e.isIgnored = !0);
935      }),
936      (c.unignore = function(t) {
937        var e = this.getItem(t);
938        e && delete e.isIgnored;
939      }),
940      (c.stamp = function(t) {
941        (t = this._find(t)),
942          t &&
943            ((this.stamps = this.stamps.concat(t)),
944            t.forEach(this.ignore, this));
945      }),
946      (c.unstamp = function(t) {
947        (t = this._find(t)),
948          t &&
949            t.forEach(function(t) {
950              o.removeFrom(this.stamps, t), this.unignore(t);
951            }, this);
952      }),
953      (c._find = function(t) {
954        if (t)
955          return (
956            "string" == typeof t && (t = this.element.querySelectorAll(t)),
957            (t = o.makeArray(t))
958          );
959      }),
960      (c._manageStamps = function() {
961        this.stamps &&
962          this.stamps.length &&
963          (this._getBoundingRect(),
964          this.stamps.forEach(this._manageStamp, this));
965      }),
966      (c._getBoundingRect = function() {
967        var t = this.element.getBoundingClientRect(),
968          e = this.size;
969        this._boundingRect = {
970          left: t.left + e.paddingLeft + e.borderLeftWidth,
971          top: t.top + e.paddingTop + e.borderTopWidth,
972          right: t.right - (e.paddingRight + e.borderRightWidth),
973          bottom: t.bottom - (e.paddingBottom + e.borderBottomWidth),
974        };
975      }),
976      (c._manageStamp = d),
977      (c._getElementOffset = function(t) {
978        var e = t.getBoundingClientRect(),
979          o = this._boundingRect,
980          n = i(t),
981          s = {
982            left: e.left - o.left - n.marginLeft,
983            top: e.top - o.top - n.marginTop,
984            right: o.right - e.right - n.marginRight,
985            bottom: o.bottom - e.bottom - n.marginBottom,
986          };
987        return s;
988      }),
989      (c.handleEvent = o.handleEvent),
990      (c.bindResize = function() {
991        t.addEventListener("resize", this), (this.isResizeBound = !0);
992      }),
993      (c.unbindResize = function() {
994        t.removeEventListener("resize", this), (this.isResizeBound = !1);
995      }),
996      (c.onresize = function() {
997        this.resize();
998      }),
999      o.debounceMethod(s, "onresize", 100),
1000      (c.resize = function() {
1001        this.isResizeBound && this.needsResizeLayout() && this.layout();
1002      }),
1003      (c.needsResizeLayout = function() {
1004        var t = i(this.element),
1005          e = this.size && t;
1006        return e && t.innerWidth !== this.size.innerWidth;
1007      }),
1008      (c.addItems = function(t) {
1009        var e = this._itemize(t);
1010        return e.length && (this.items = this.items.concat(e)), e;
1011      }),
1012      (c.appended = function(t) {
1013        var e = this.addItems(t);
1014        e.length && (this.layoutItems(e, !0), this.reveal(e));
1015      }),
1016      (c.prepended = function(t) {
1017        var e = this._itemize(t);
1018        if (e.length) {
1019          var i = this.items.slice(0);
1020          (this.items = e.concat(i)),
1021            this._resetLayout(),
1022            this._manageStamps(),
1023            this.layoutItems(e, !0),
1024            this.reveal(e),
1025            this.layoutItems(i);
1026        }
1027      }),
1028      (c.reveal = function(t) {
1029        if ((this._emitCompleteOnItems("reveal", t), t && t.length)) {
1030          var e = this.updateStagger();
1031          t.forEach(function(t, i) {
1032            t.stagger(i * e), t.reveal();
1033          });
1034        }
1035      }),
1036      (c.hide = function(t) {
1037        if ((this._emitCompleteOnItems("hide", t), t && t.length)) {
1038          var e = this.updateStagger();
1039          t.forEach(function(t, i) {
1040            t.stagger(i * e), t.hide();
1041          });
1042        }
1043      }),
1044      (c.revealItemElements = function(t) {
1045        var e = this.getItems(t);
1046        this.reveal(e);
1047      }),
1048      (c.hideItemElements = function(t) {
1049        var e = this.getItems(t);
1050        this.hide(e);
1051      }),
1052      (c.getItem = function(t) {
1053        for (var e = 0; e < this.items.length; e++) {
1054          var i = this.items[e];
1055          if (i.element == t) return i;
1056        }
1057      }),
1058      (c.getItems = function(t) {
1059        t = o.makeArray(t);
1060        var e = [];
1061        return (
1062          t.forEach(function(t) {
1063            var i = this.getItem(t);
1064            i && e.push(i);
1065          }, this),
1066          e
1067        );
1068      }),
1069      (c.remove = function(t) {
1070        var e = this.getItems(t);
1071        this._emitCompleteOnItems("remove", e),
1072          e &&
1073            e.length &&
1074            e.forEach(function(t) {
1075              t.remove(), o.removeFrom(this.items, t);
1076            }, this);
1077      }),
1078      (c.destroy = function() {
1079        var t = this.element.style;
1080        (t.height = ""),
1081          (t.position = ""),
1082          (t.width = ""),
1083          this.items.forEach(function(t) {
1084            t.destroy();
1085          }),
1086          this.unbindResize();
1087        var e = this.element.outlayerGUID;
1088        delete f[e],
1089          delete this.element.outlayerGUID,
1090          h && h.removeData(this.element, this.constructor.namespace);
1091      }),
1092      (s.data = function(t) {
1093        t = o.getQueryElement(t);
1094        var e = t && t.outlayerGUID;
1095        return e && f[e];
1096      }),
1097      (s.create = function(t, e) {
1098        var i = r(s);
1099        return (
1100          (i.defaults = o.extend({}, s.defaults)),
1101          o.extend(i.defaults, e),
1102          (i.compatOptions = o.extend({}, s.compatOptions)),
1103          (i.namespace = t),
1104          (i.data = s.data),
1105          (i.Item = r(n)),
1106          o.htmlInit(i, t),
1107          h && h.bridget && h.bridget(t, i),
1108          i
1109        );
1110      });
1111    var m = { ms: 1, s: 1e3 };
1112    return (s.Item = n), s;
1113  }),
1114  (function(t, e) {
1115    "function" == typeof define && define.amd
1116      ? define("isotope-layout/js/item", ["outlayer/outlayer"], e)
1117      : "object" == typeof module && module.exports
1118      ? (module.exports = e(require("outlayer")))
1119      : ((t.Isotope = t.Isotope || {}), (t.Isotope.Item = e(t.Outlayer)));
1120  })(window, function(t) {
1121    "use strict";
1122    function e() {
1123      t.Item.apply(this, arguments);
1124    }
1125    var i = (e.prototype = Object.create(t.Item.prototype)),
1126      o = i._create;
1127    (i._create = function() {
1128      (this.id = this.layout.itemGUID++), o.call(this), (this.sortData = {});
1129    }),
1130      (i.updateSortData = function() {
1131        if (!this.isIgnored) {
1132          (this.sortData.id = this.id),
1133            (this.sortData["original-order"] = this.id),
1134            (this.sortData.random = Math.random());
1135          var t = this.layout.options.getSortData,
1136            e = this.layout._sorters;
1137          for (var i in t) {
1138            var o = e[i];
1139            this.sortData[i] = o(this.element, this);
1140          }
1141        }
1142      });
1143    var n = i.destroy;
1144    return (
1145      (i.destroy = function() {
1146        n.apply(this, arguments), this.css({ display: "" });
1147      }),
1148      e
1149    );
1150  }),
1151  (function(t, e) {
1152    "function" == typeof define && define.amd
1153      ? define("isotope-layout/js/layout-mode", [
1154          "get-size/get-size",
1155          "outlayer/outlayer",
1156        ], e)
1157      : "object" == typeof module && module.exports
1158      ? (module.exports = e(require("get-size"), require("outlayer")))
1159      : ((t.Isotope = t.Isotope || {}),
1160        (t.Isotope.LayoutMode = e(t.getSize, t.Outlayer)));
1161  })(window, function(t, e) {
1162    "use strict";
1163    function i(t) {
1164      (this.isotope = t),
1165        t &&
1166          ((this.options = t.options[this.namespace]),
1167          (this.element = t.element),
1168          (this.items = t.filteredItems),
1169          (this.size = t.size));
1170    }
1171    var o = i.prototype,
1172      n = [
1173        "_resetLayout",
1174        "_getItemLayoutPosition",
1175        "_manageStamp",
1176        "_getContainerSize",
1177        "_getElementOffset",
1178        "needsResizeLayout",
1179        "_getOption",
1180      ];
1181    return (
1182      n.forEach(function(t) {
1183        o[t] = function() {
1184          return e.prototype[t].apply(this.isotope, arguments);
1185        };
1186      }),
1187      (o.needsVerticalResizeLayout = function() {
1188        var e = t(this.isotope.element),
1189          i = this.isotope.size && e;
1190        return i && e.innerHeight != this.isotope.size.innerHeight;
1191      }),
1192      (o._getMeasurement = function() {
1193        this.isotope._getMeasurement.apply(this, arguments);
1194      }),
1195      (o.getColumnWidth = function() {
1196        this.getSegmentSize("column", "Width");
1197      }),
1198      (o.getRowHeight = function() {
1199        this.getSegmentSize("row", "Height");
1200      }),
1201      (o.getSegmentSize = function(t, e) {
1202        var i = t + e,
1203          o = "outer" + e;
1204        if ((this._getMeasurement(i, o), !this[i])) {
1205          var n = this.getFirstItemSize();
1206          this[i] = (n && n[o]) || this.isotope.size["inner" + e];
1207        }
1208      }),
1209      (o.getFirstItemSize = function() {
1210        var e = this.isotope.filteredItems[0];
1211        return e && e.element && t(e.element);
1212      }),
1213      (o.layout = function() {
1214        this.isotope.layout.apply(this.isotope, arguments);
1215      }),
1216      (o.getSize = function() {
1217        this.isotope.getSize(), (this.size = this.isotope.size);
1218      }),
1219      (i.modes = {}),
1220      (i.create = function(t, e) {
1221        function n() {
1222          i.apply(this, arguments);
1223        }
1224        return (
1225          (n.prototype = Object.create(o)),
1226          (n.prototype.constructor = n),
1227          e && (n.options = e),
1228          (n.prototype.namespace = t),
1229          (i.modes[t] = n),
1230          n
1231        );
1232      }),
1233      i
1234    );
1235  }),
1236  (function(t, e) {
1237    "function" == typeof define && define.amd
1238      ? define("masonry-layout/masonry", [
1239          "outlayer/outlayer",
1240          "get-size/get-size",
1241        ], e)
1242      : "object" == typeof module && module.exports
1243      ? (module.exports = e(require("outlayer"), require("get-size")))
1244      : (t.Masonry = e(t.Outlayer, t.getSize));
1245  })(window, function(t, e) {
1246    var i = t.create("masonry");
1247    i.compatOptions.fitWidth = "isFitWidth";
1248    var o = i.prototype;
1249    return (
1250      (o._resetLayout = function() {
1251        this.getSize(),
1252          this._getMeasurement("columnWidth", "outerWidth"),
1253          this._getMeasurement("gutter", "outerWidth"),
1254          this.measureColumns(),
1255          (this.colYs = []);
1256        for (var t = 0; t < this.cols; t++) this.colYs.push(0);
1257        (this.maxY = 0), (this.horizontalColIndex = 0);
1258      }),
1259      (o.measureColumns = function() {
1260        if ((this.getContainerWidth(), !this.columnWidth)) {
1261          var t = this.items[0],
1262            i = t && t.element;
1263          this.columnWidth = (i && e(i).outerWidth) || this.containerWidth;
1264        }
1265        var o = (this.columnWidth += this.gutter),
1266          n = this.containerWidth + this.gutter,
1267          s = n / o,
1268          r = o - (n % o),
1269          a = r && r < 1 ? "round" : "floor";
1270        (s = Math[a](s)), (this.cols = Math.max(s, 1));
1271      }),
1272      (o.getContainerWidth = function() {
1273        var t = this._getOption("fitWidth"),
1274          i = t ? this.element.parentNode : this.element,
1275          o = e(i);
1276        this.containerWidth = o && o.innerWidth;
1277      }),
1278      (o._getItemLayoutPosition = function(t) {
1279        t.getSize();
1280        var e = t.size.outerWidth % this.columnWidth,
1281          i = e && e < 1 ? "round" : "ceil",
1282          o = Math[i](t.size.outerWidth / this.columnWidth);
1283        o = Math.min(o, this.cols);
1284        for (
1285          var n = this.options.horizontalOrder
1286              ? "_getHorizontalColPosition"
1287              : "_getTopColPosition",
1288            s = this[n](o, t),
1289            r = { x: this.columnWidth * s.col, y: s.y },
1290            a = s.y + t.size.outerHeight,
1291            u = o + s.col,
1292            h = s.col;
1293          h < u;
1294          h++
1295        )
1296          this.colYs[h] = a;
1297        return r;
1298      }),
1299      (o._getTopColPosition = function(t) {
1300        var e = this._getTopColGroup(t),
1301          i = Math.min.apply(Math, e);
1302        return { col: e.indexOf(i), y: i };
1303      }),
1304      (o._getTopColGroup = function(t) {
1305        if (t < 2) return this.colYs;
1306        for (var e = [], i = this.cols + 1 - t, o = 0; o < i; o++)
1307          e[o] = this._getColGroupY(o, t);
1308        return e;
1309      }),
1310      (o._getColGroupY = function(t, e) {
1311        if (e < 2) return this.colYs[t];
1312        var i = this.colYs.slice(t, t + e);
1313        return Math.max.apply(Math, i);
1314      }),
1315      (o._getHorizontalColPosition = function(t, e) {
1316        var i = this.horizontalColIndex % this.cols,
1317          o = t > 1 && i + t > this.cols;
1318        i = o ? 0 : i;
1319        var n = e.size.outerWidth && e.size.outerHeight;
1320        return (
1321          (this.horizontalColIndex = n ? i + t : this.horizontalColIndex),
1322          { col: i, y: this._getColGroupY(i, t) }
1323        );
1324      }),
1325      (o._manageStamp = function(t) {
1326        var i = e(t),
1327          o = this._getElementOffset(t),
1328          n = this._getOption("originLeft"),
1329          s = n ? o.left : o.right,
1330          r = s + i.outerWidth,
1331          a = Math.floor(s / this.columnWidth);
1332        a = Math.max(0, a);
1333        var u = Math.floor(r / this.columnWidth);
1334        (u -= r % this.columnWidth ? 0 : 1), (u = Math.min(this.cols - 1, u));
1335        for (
1336          var h = this._getOption("originTop"),
1337            d = (h ? o.top : o.bottom) + i.outerHeight,
1338            l = a;
1339          l <= u;
1340          l++
1341        )
1342          this.colYs[l] = Math.max(d, this.colYs[l]);
1343      }),
1344      (o._getContainerSize = function() {
1345        this.maxY = Math.max.apply(Math, this.colYs);
1346        var t = { height: this.maxY };
1347        return (
1348          this._getOption("fitWidth") &&
1349            (t.width = this._getContainerFitWidth()),
1350          t
1351        );
1352      }),
1353      (o._getContainerFitWidth = function() {
1354        for (var t = 0, e = this.cols; --e && 0 === this.colYs[e]; ) t++;
1355        return (this.cols - t) * this.columnWidth - this.gutter;
1356      }),
1357      (o.needsResizeLayout = function() {
1358        var t = this.containerWidth;
1359        return this.getContainerWidth(), t != this.containerWidth;
1360      }),
1361      i
1362    );
1363  }),
1364  (function(t, e) {
1365    "function" == typeof define && define.amd
1366      ? define("isotope-layout/js/layout-modes/masonry", [
1367          "../layout-mode",
1368          "masonry-layout/masonry",
1369        ], e)
1370      : "object" == typeof module && module.exports
1371      ? (module.exports = e(
1372          require("../layout-mode"),
1373          require("masonry-layout")
1374        ))
1375      : e(t.Isotope.LayoutMode, t.Masonry);
1376  })(window, function(t, e) {
1377    "use strict";
1378    var i = t.create("masonry"),
1379      o = i.prototype,
1380      n = { _getElementOffset: !0, layout: !0, _getMeasurement: !0 };
1381    for (var s in e.prototype) n[s] || (o[s] = e.prototype[s]);
1382    var r = o.measureColumns;
1383    o.measureColumns = function() {
1384      (this.items = this.isotope.filteredItems), r.call(this);
1385    };
1386    var a = o._getOption;
1387    return (
1388      (o._getOption = function(t) {
1389        return "fitWidth" == t
1390          ? void 0 !== this.options.isFitWidth
1391            ? this.options.isFitWidth
1392            : this.options.fitWidth
1393          : a.apply(this.isotope, arguments);
1394      }),
1395      i
1396    );
1397  }),
1398  (function(t, e) {
1399    "function" == typeof define && define.amd
1400      ? define("isotope-layout/js/layout-modes/fit-rows", ["../layout-mode"], e)
1401      : "object" == typeof exports
1402      ? (module.exports = e(require("../layout-mode")))
1403      : e(t.Isotope.LayoutMode);
1404  })(window, function(t) {
1405    "use strict";
1406    var e = t.create("fitRows"),
1407      i = e.prototype;
1408    return (
1409      (i._resetLayout = function() {
1410        (this.x = 0),
1411          (this.y = 0),
1412          (this.maxY = 0),
1413          this._getMeasurement("gutter", "outerWidth");
1414      }),
1415      (i._getItemLayoutPosition = function(t) {
1416        t.getSize();
1417        var e = t.size.outerWidth + this.gutter,
1418          i = this.isotope.size.innerWidth + this.gutter;
1419        0 !== this.x && e + this.x > i && ((this.x = 0), (this.y = this.maxY));
1420        var o = { x: this.x, y: this.y };
1421        return (
1422          (this.maxY = Math.max(this.maxY, this.y + t.size.outerHeight)),
1423          (this.x += e),
1424          o
1425        );
1426      }),
1427      (i._getContainerSize = function() {
1428        return { height: this.maxY };
1429      }),
1430      e
1431    );
1432  }),
1433  (function(t, e) {
1434    "function" == typeof define && define.amd
1435      ? define("isotope-layout/js/layout-modes/vertical", ["../layout-mode"], e)
1436      : "object" == typeof module && module.exports
1437      ? (module.exports = e(require("../layout-mode")))
1438      : e(t.Isotope.LayoutMode);
1439  })(window, function(t) {
1440    "use strict";
1441    var e = t.create("vertical", { horizontalAlignment: 0 }),
1442      i = e.prototype;
1443    return (
1444      (i._resetLayout = function() {
1445        this.y = 0;
1446      }),
1447      (i._getItemLayoutPosition = function(t) {
1448        t.getSize();
1449        var e =
1450            (this.isotope.size.innerWidth - t.size.outerWidth) *
1451            this.options.horizontalAlignment,
1452          i = this.y;
1453        return (this.y += t.size.outerHeight), { x: e, y: i };
1454      }),
1455      (i._getContainerSize = function() {
1456        return { height: this.y };
1457      }),
1458      e
1459    );
1460  }),
1461  (function(t, e) {
1462    "function" == typeof define && define.amd
1463      ? define([
1464          "outlayer/outlayer",
1465          "get-size/get-size",
1466          "desandro-matches-selector/matches-selector",
1467          "fizzy-ui-utils/utils",
1468          "isotope-layout/js/item",
1469          "isotope-layout/js/layout-mode",
1470          "isotope-layout/js/layout-modes/masonry",
1471          "isotope-layout/js/layout-modes/fit-rows",
1472          "isotope-layout/js/layout-modes/vertical",
1473        ], function(i, o, n, s, r, a) {
1474          return e(t, i, o, n, s, r, a);
1475        })
1476      : "object" == typeof module && module.exports
1477      ? (module.exports = e(
1478          t,
1479          require("outlayer"),
1480          require("get-size"),
1481          require("desandro-matches-selector"),
1482          require("fizzy-ui-utils"),
1483          require("isotope-layout/js/item"),
1484          require("isotope-layout/js/layout-mode"),
1485          require("isotope-layout/js/layout-modes/masonry"),
1486          require("isotope-layout/js/layout-modes/fit-rows"),
1487          require("isotope-layout/js/layout-modes/vertical")
1488        ))
1489      : (t.Isotope = e(
1490          t,
1491          t.Outlayer,
1492          t.getSize,
1493          t.matchesSelector,
1494          t.fizzyUIUtils,
1495          t.Isotope.Item,
1496          t.Isotope.LayoutMode
1497        ));
1498  })(window, function(t, e, i, o, n, s, r) {
1499    function a(t, e) {
1500      return function(i, o) {
1501        for (var n = 0; n < t.length; n++) {
1502          var s = t[n],
1503            r = i.sortData[s],
1504            a = o.sortData[s];
1505          if (r > a || r < a) {
1506            var u = void 0 !== e[s] ? e[s] : e,
1507              h = u ? 1 : -1;
1508            return (r > a ? 1 : -1) * h;
1509          }
1510        }
1511        return 0;
1512      };
1513    }
1514    var u = t.jQuery,
1515      h = String.prototype.trim
1516        ? function(t) {
1517            return t.trim();
1518          }
1519        : function(t) {
1520            return t.replace(/^\s+|\s+$/g, "");
1521          },
1522      d = e.create("isotope", {
1523        layoutMode: "masonry",
1524        isJQueryFiltering: !0,
1525        sortAscending: !0,
1526      });
1527    (d.Item = s), (d.LayoutMode = r);
1528    var l = d.prototype;
1529    (l._create = function() {
1530      (this.itemGUID = 0),
1531        (this._sorters = {}),
1532        this._getSorters(),
1533        e.prototype._create.call(this),
1534        (this.modes = {}),
1535        (this.filteredItems = this.items),
1536        (this.sortHistory = ["original-order"]);
1537      for (var t in r.modes) this._initLayoutMode(t);
1538    }),
1539      (l.reloadItems = function() {
1540        (this.itemGUID = 0), e.prototype.reloadItems.call(this);
1541      }),
1542      (l._itemize = function() {
1543        for (
1544          var t = e.prototype._itemize.apply(this, arguments), i = 0;
1545          i < t.length;
1546          i++
1547        ) {
1548          var o = t[i];
1549          o.id = this.itemGUID++;
1550        }
1551        return this._updateItemsSortData(t), t;
1552      }),
1553      (l._initLayoutMode = function(t) {
1554        var e = r.modes[t],
1555          i = this.options[t] || {};
1556        (this.options[t] = e.options ? n.extend(e.options, i) : i),
1557          (this.modes[t] = new e(this));
1558      }),
1559      (l.layout = function() {
1560        return !this._isLayoutInited && this._getOption("initLayout")
1561          ? void this.arrange()
1562          : void this._layout();
1563      }),
1564      (l._layout = function() {
1565        var t = this._getIsInstant();
1566        this._resetLayout(),
1567          this._manageStamps(),
1568          this.layoutItems(this.filteredItems, t),
1569          (this._isLayoutInited = !0);
1570      }),
1571      (l.arrange = function(t) {
1572        this.option(t), this._getIsInstant();
1573        var e = this._filter(this.items);
1574        (this.filteredItems = e.matches),
1575          this._bindArrangeComplete(),
1576          this._isInstant
1577            ? this._noTransition(this._hideReveal, [e])
1578            : this._hideReveal(e),
1579          this._sort(),
1580          this._layout();
1581      }),
1582      (l._init = l.arrange),
1583      (l._hideReveal = function(t) {
1584        this.reveal(t.needReveal), this.hide(t.needHide);
1585      }),
1586      (l._getIsInstant = function() {
1587        var t = this._getOption("layoutInstant"),
1588          e = void 0 !== t ? t : !this._isLayoutInited;
1589        return (this._isInstant = e), e;
1590      }),
1591      (l._bindArrangeComplete = function() {
1592        function t() {
1593          e &&
1594            i &&
1595            o &&
1596            n.dispatchEvent("arrangeComplete", null, [n.filteredItems]);
1597        }
1598        var e,
1599          i,
1600          o,
1601          n = this;
1602        this.once("layoutComplete", function() {
1603          (e = !0), t();
1604        }),
1605          this.once("hideComplete", function() {
1606            (i = !0), t();
1607          }),
1608          this.once("revealComplete", function() {
1609            (o = !0), t();
1610          });
1611      }),
1612      (l._filter = function(t) {
1613        var e = this.options.filter;
1614        e = e || "*";
1615        for (
1616          var i = [], o = [], n = [], s = this._getFilterTest(e), r = 0;
1617          r < t.length;
1618          r++
1619        ) {
1620          var a = t[r];
1621          if (!a.isIgnored) {
1622            var u = s(a);
1623            u && i.push(a),
1624              u && a.isHidden ? o.push(a) : u || a.isHidden || n.push(a);
1625          }
1626        }
1627        return { matches: i, needReveal: o, needHide: n };
1628      }),
1629      (l._getFilterTest = function(t) {
1630        return u && this.options.isJQueryFiltering
1631          ? function(e) {
1632              return u(e.element).is(t);
1633            }
1634          : "function" == typeof t
1635          ? function(e) {
1636              return t(e.element);
1637            }
1638          : function(e) {
1639              return o(e.element, t);
1640            };
1641      }),
1642      (l.updateSortData = function(t) {
1643        var e;
1644        t ? ((t = n.makeArray(t)), (e = this.getItems(t))) : (e = this.items),
1645          this._getSorters(),
1646          this._updateItemsSortData(e);
1647      }),
1648      (l._getSorters = function() {
1649        var t = this.options.getSortData;
1650        for (var e in t) {
1651          var i = t[e];
1652          this._sorters[e] = f(i);
1653        }
1654      }),
1655      (l._updateItemsSortData = function(t) {
1656        for (var e = t && t.length, i = 0; e && i < e; i++) {
1657          var o = t[i];
1658          o.updateSortData();
1659        }
1660      });
1661    var f = (function() {
1662      function t(t) {
1663        if ("string" != typeof t) return t;
1664        var i = h(t).split(" "),
1665          o = i[0],
1666          n = o.match(/^\[(.+)\]$/),
1667          s = n && n[1],
1668          r = e(s, o),
1669          a = d.sortDataParsers[i[1]];
1670        return (t = a
1671          ? function(t) {
1672              return t && a(r(t));
1673            }
1674          : function(t) {
1675              return t && r(t);
1676            });
1677      }
1678      function e(t, e) {
1679        return t
1680          ? function(e) {
1681              return e.getAttribute(t);
1682            }
1683          : function(t) {
1684              var i = t.querySelector(e);
1685              return i && i.textContent;
1686            };
1687      }
1688      return t;
1689    })();
1690    (d.sortDataParsers = {
1691      parseInt: function(t) {
1692        return parseInt(t, 10);
1693      },
1694      parseFloat: function(t) {
1695        return parseFloat(t);
1696      },
1697    }),
1698      (l._sort = function() {
1699        if (this.options.sortBy) {
1700          var t = n.makeArray(this.options.sortBy);
1701          this._getIsSameSortBy(t) ||
1702            (this.sortHistory = t.concat(this.sortHistory));
1703          var e = a(this.sortHistory, this.options.sortAscending);
1704          this.filteredItems.sort(e);
1705        }
1706      }),
1707      (l._getIsSameSortBy = function(t) {
1708        for (var e = 0; e < t.length; e++)
1709          if (t[e] != this.sortHistory[e]) return !1;
1710        return !0;
1711      }),
1712      (l._mode = function() {
1713        var t = this.options.layoutMode,
1714          e = this.modes[t];
1715        if (!e) throw new Error("No layout mode: " + t);
1716        return (e.options = this.options[t]), e;
1717      }),
1718      (l._resetLayout = function() {
1719        e.prototype._resetLayout.call(this), this._mode()._resetLayout();
1720      }),
1721      (l._getItemLayoutPosition = function(t) {
1722        return this._mode()._getItemLayoutPosition(t);
1723      }),
1724      (l._manageStamp = function(t) {
1725        this._mode()._manageStamp(t);
1726      }),
1727      (l._getContainerSize = function() {
1728        return this._mode()._getContainerSize();
1729      }),
1730      (l.needsResizeLayout = function() {
1731        return this._mode().needsResizeLayout();
1732      }),
1733      (l.appended = function(t) {
1734        var e = this.addItems(t);
1735        if (e.length) {
1736          var i = this._filterRevealAdded(e);
1737          this.filteredItems = this.filteredItems.concat(i);
1738        }
1739      }),
1740      (l.prepended = function(t) {
1741        var e = this._itemize(t);
1742        if (e.length) {
1743          this._resetLayout(), this._manageStamps();
1744          var i = this._filterRevealAdded(e);
1745          this.layoutItems(this.filteredItems),
1746            (this.filteredItems = i.concat(this.filteredItems)),
1747            (this.items = e.concat(this.items));
1748        }
1749      }),
1750      (l._filterRevealAdded = function(t) {
1751        var e = this._filter(t);
1752        return (
1753          this.hide(e.needHide),
1754          this.reveal(e.matches),
1755          this.layoutItems(e.matches, !0),
1756          e.matches
1757        );
1758      }),
1759      (l.insert = function(t) {
1760        var e = th
1760is.addItems(t);
1761        if (e.length) {
1762          var i,
1763            o,
1764            n = e.length;
1765          for (i = 0; i < n; i++)
1766            (o = e[i]), this.element.appendChild(o.element);
1767          var s = this._filter(e).matches;
1768          for (i = 0; i < n; i++) e[i].isLayoutInstant = !0;
1769          for (this.arrange(), i = 0; i < n; i++) delete e[i].isLayoutInstant;
1770          this.reveal(s);
1771        }
1772      });
1773    var c = l.remove;
1774    return (
1775      (l.remove = function(t) {
1776        t = n.makeArray(t);
1777        var e = this.getItems(t);
1778        c.call(this, t);
1779        for (var i = e && e.length, o = 0; i && o < i; o++) {
1780          var s = e[o];
1781          n.removeFrom(this.filteredItems, s);
1782        }
1783      }),
1784      (l.shuffle = function() {
1785        for (var t = 0; t < this.items.length; t++) {
1786          var e = this.items[t];
1787          e.sortData.random = Math.random();
1788        }
1789        (this.options.sortBy = "random"), this._sort(), this._layout();
1790      }),
1791      (l._noTransition = function(t, e) {
1792        var i = this.options.transitionDuration;
1793        this.options.transitionDuration = 0;
1794        var o = t.apply(this, e);
1795        return (this.options.transitionDuration = i), o;
1796      }),
1797      (l.getFilteredItemElements = function() {
1798        return this.filteredItems.map(function(t) {
1799          return t.element;
1800        });
1801      }),
1802      d
1803    );
1804  });

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.