PageSourceSearch

https://www.surfgreen.dev/static/vendor/isotope/isotope.pkgd.min.1293ac342102.js

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

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.