<!DOCTYPE html>
<html>

  <head>
    <link rel="stylesheet" href="style.css">
    <script src="mokdata.js"></script>
    <script src="underscore-min.js"></script>
    
    
  </head>

  <body id="sample">
    
  </body>
<script src="script.js"></script>
</html>
    console.clear();

    var sample= _.filter(_data, function(artist, index, _data) {
        return parseInt(artist.Sallery) > 70000;
      });
      
      

    var wher=_.where(_data,{Code:'Khaki'});

   var cont= _.without(_data, function(artist, index, _data) {
        return artist.Code === 'Khaki';
    });
    
    var _contains=_.contains(_data,{'Code':'Khaki'});
    
    var plunk=_.pluck(_data, 'Code');
    
    var group=_.groupBy(_data,'Country');

   var maxSallery=_.max(_data, function(row){ return row.Sallery; });
   
   var indxBy=_.indexBy(_data, 'Country');
   
   var unzp=_.unzip([_data]);
   
   console.log(unzp);
    
   


//     Underscore.js 1.8.2
//     http://underscorejs.org
//     (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
//     Underscore may be freely distributed under the MIT license.
(function() {
  function n(n) {
    function t(t, r, e, u, i, o) {
      for (; i >= 0 && o > i; i += n) {
        var a = u ? u[i] : i;
        e = r(e, t[a], a, t)
      }
      return e
    }
    return function(r, e, u, i) {
      e = d(e, i, 4);
      var o = !w(r) && m.keys(r),
        a = (o || r).length,
        c = n > 0 ? 0 : a - 1;
      return arguments.length < 3 && (u = r[o ? o[c] : c], c += n), t(r, e, u, o, c, a)
    }
  }

  function t(n) {
    return function(t, r, e) {
      r = b(r, e);
      for (var u = null != t && t.length, i = n > 0 ? 0 : u - 1; i >= 0 && u > i; i += n)
        if (r(t[i], i, t)) return i;
      return -1
    }
  }

  function r(n, t) {
    var r = S.length,
      e = n.constructor,
      u = m.isFunction(e) && e.prototype || o,
      i = "constructor";
    for (m.has(n, i) && !m.contains(t, i) && t.push(i); r--;) i = S[r], i in n && n[i] !== u[i] && !m.contains(t, i) && t.push(i)
  }
  var e = this,
    u = e._,
    i = Array.prototype,
    o = Object.prototype,
    a = Function.prototype,
    c = i.push,
    l = i.slice,
    f = o.toString,
    s = o.hasOwnProperty,
    p = Array.isArray,
    h = Object.keys,
    v = a.bind,
    g = Object.create,
    y = function() {},
    m = function(n) {
      return n instanceof m ? n : this instanceof m ? void(this._wrapped = n) : new m(n)
    };
  "undefined" != typeof exports ? ("undefined" != typeof module && module.exports && (exports = module.exports = m), exports._ = m) : e._ = m, m.VERSION = "1.8.2";
  var d = function(n, t, r) {
      if (t === void 0) return n;
      switch (null == r ? 3 : r) {
        case 1:
          return function(r) {
            return n.call(t, r)
          };
        case 2:
          return function(r, e) {
            return n.call(t, r, e)
          };
        case 3:
          return function(r, e, u) {
            return n.call(t, r, e, u)
          };
        case 4:
          return function(r, e, u, i) {
            return n.call(t, r, e, u, i)
          }
      }
      return function() {
        return n.apply(t, arguments)
      }
    },
    b = function(n, t, r) {
      return null == n ? m.identity : m.isFunction(n) ? d(n, t, r) : m.isObject(n) ? m.matcher(n) : m.property(n)
    };
  m.iteratee = function(n, t) {
    return b(n, t, 1 / 0)
  };
  var x = function(n, t) {
      return function(r) {
        var e = arguments.length;
        if (2 > e || null == r) return r;
        for (var u = 1; e > u; u++)
          for (var i = arguments[u], o = n(i), a = o.length, c = 0; a > c; c++) {
            var l = o[c];
            t && r[l] !== void 0 || (r[l] = i[l])
          }
        return r
      }
    },
    _ = function(n) {
      if (!m.isObject(n)) return {};
      if (g) return g(n);
      y.prototype = n;
      var t = new y;
      return y.prototype = null, t
    },
    j = Math.pow(2, 53) - 1,
    w = function(n) {
      var t = n && n.length;
      return "number" == typeof t && t >= 0 && j >= t
    };
  m.each = m.forEach = function(n, t, r) {
    t = d(t, r);
    var e, u;
    if (w(n))
      for (e = 0, u = n.length; u > e; e++) t(n[e], e, n);
    else {
      var i = m.keys(n);
      for (e = 0, u = i.length; u > e; e++) t(n[i[e]], i[e], n)
    }
    return n
  }, m.map = m.collect = function(n, t, r) {
    t = b(t, r);
    for (var e = !w(n) && m.keys(n), u = (e || n).length, i = Array(u), o = 0; u > o; o++) {
      var a = e ? e[o] : o;
      i[o] = t(n[a], a, n)
    }
    return i
  }, m.reduce = m.foldl = m.inject = n(1), m.reduceRight = m.foldr = n(-1), m.find = m.detect = function(n, t, r) {
    var e;
    return e = w(n) ? m.findIndex(n, t, r) : m.findKey(n, t, r), e !== void 0 && e !== -1 ? n[e] : void 0
  }, m.filter = m.select = function(n, t, r) {
    var e = [];
    return t = b(t, r), m.each(n, function(n, r, u) {
      t(n, r, u) && e.push(n)
    }), e
  }, m.reject = function(n, t, r) {
    return m.filter(n, m.negate(b(t)), r)
  }, m.every = m.all = function(n, t, r) {
    t = b(t, r);
    for (var e = !w(n) && m.keys(n), u = (e || n).length, i = 0; u > i; i++) {
      var o = e ? e[i] : i;
      if (!t(n[o], o, n)) return !1
    }
    return !0
  }, m.some = m.any = function(n, t, r) {
    t = b(t, r);
    for (var e = !w(n) && m.keys(n), u = (e || n).length, i = 0; u > i; i++) {
      var o = e ? e[i] : i;
      if (t(n[o], o, n)) return !0
    }
    return !1
  }, m.contains = m.includes = m.include = function(n, t, r) {
    return w(n) || (n = m.values(n)), m.indexOf(n, t, "number" == typeof r && r) >= 0
  }, m.invoke = function(n, t) {
    var r = l.call(arguments, 2),
      e = m.isFunction(t);
    return m.map(n, function(n) {
      var u = e ? t : n[t];
      return null == u ? u : u.apply(n, r)
    })
  }, m.pluck = function(n, t) {
    return m.map(n, m.property(t))
  }, m.where = function(n, t) 
  {
    return m.filter(n, m.matcher(t))
  }
  , m.findWhere = function(n, t) {
    return m.find(n, m.matcher(t))
  }, m.max = function(n, t, r) {
    var e, u, i = -1 / 0,
      o = -1 / 0;
    if (null == t && null != n) {
      n = w(n) ? n : m.values(n);
      for (var a = 0, c = n.length; c > a; a++) e = n[a], e > i && (i = e)
    } else t = b(t, r), m.each(n, function(n, r, e) {
      u = t(n, r, e), (u > o || u === -1 / 0 && i === -1 / 0) && (i = n, o = u)
    });
    return i
  }, m.min = function(n, t, r) {
    var e, u, i = 1 / 0,
      o = 1 / 0;
    if (null == t && null != n) {
      n = w(n) ? n : m.values(n);
      for (var a = 0, c = n.length; c > a; a++) e = n[a], i > e && (i = e)
    } else t = b(t, r), m.each(n, function(n, r, e) {
      u = t(n, r, e), (o > u || 1 / 0 === u && 1 / 0 === i) && (i = n, o = u)
    });
    return i
  }, m.shuffle = function(n) {
    for (var t, r = w(n) ? n : m.values(n), e = r.length, u = Array(e), i = 0; e > i; i++) t = m.random(0, i), t !== i && (u[i] = u[t]), u[t] = r[i];
    return u
  }, m.sample = function(n, t, r) {
    return null == t || r ? (w(n) || (n = m.values(n)), n[m.random(n.length - 1)]) : m.shuffle(n).slice(0, Math.max(0, t))
  }, m.sortBy = function(n, t, r) {
    return t = b(t, r), m.pluck(m.map(n, function(n, r, e) {
      return {
        value: n,
        index: r,
        criteria: t(n, r, e)
      }
    }).sort(function(n, t) {
      var r = n.criteria,
        e = t.criteria;
      if (r !== e) {
        if (r > e || r === void 0) return 1;
        if (e > r || e === void 0) return -1
      }
      return n.index - t.index
    }), "value")
  };
  var A = function(n) {
    return function(t, r, e) {
      var u = {};
      return r = b(r, e), m.each(t, function(e, i) {
        var o = r(e, i, t);
        n(u, e, o)
      }), u
    }
  };
  m.groupBy = A(function(n, t, r) {
    m.has(n, r) ? n[r].push(t) : n[r] = [t]
  }), m.indexBy = A(function(n, t, r) {
    n[r] = t
  }), m.countBy = A(function(n, t, r) {
    m.has(n, r) ? n[r]++ : n[r] = 1
  }), m.toArray = function(n) {
    return n ? m.isArray(n) ? l.call(n) : w(n) ? m.map(n, m.identity) : m.values(n) : []
  }, m.size = function(n) {
    return null == n ? 0 : w(n) ? n.length : m.keys(n).length
  }, m.partition = function(n, t, r) {
    t = b(t, r);
    var e = [],
      u = [];
    return m.each(n, function(n, r, i) {
      (t(n, r, i) ? e : u).push(n)
    }), [e, u]
  }, m.first = m.head = m.take = function(n, t, r) {
    return null == n ? void 0 : null == t || r ? n[0] : m.initial(n, n.length - t)
  }, m.initial = function(n, t, r) {
    return l.call(n, 0, Math.max(0, n.length - (null == t || r ? 1 : t)))
  }, m.last = function(n, t, r) {
    return null == n ? void 0 : null == t || r ? n[n.length - 1] : m.rest(n, Math.max(0, n.length - t))
  }, m.rest = m.tail = m.drop = function(n, t, r) {
    return l.call(n, null == t || r ? 1 : t)
  }, m.compact = function(n) {
    return m.filter(n, m.identity)
  };
  var k = function(n, t, r, e) {
    for (var u = [], i = 0, o = e || 0, a = n && n.length; a > o; o++) {
      var c = n[o];
      if (w(c) && (m.isArray(c) || m.isArguments(c))) {
        t || (c = k(c, t, r));
        var l = 0,
          f = c.length;
        for (u.length += f; f > l;) u[i++] = c[l++]
      } else r || (u[i++] = c)
    }
    return u
  };
  m.flatten = function(n, t) {
    return k(n, t, !1)
  }, m.without = function(n) {
    return m.difference(n, l.call(arguments, 1))
  }, m.uniq = m.unique = function(n, t, r, e) {
    if (null == n) return [];
    m.isBoolean(t) || (e = r, r = t, t = !1), null != r && (r = b(r, e));
    for (var u = [], i = [], o = 0, a = n.length; a > o; o++) {
      var c = n[o],
        l = r ? r(c, o, n) : c;
      t ? (o && i === l || u.push(c), i = l) : r ? m.contains(i, l) || (i.push(l), u.push(c)) : m.contains(u, c) || u.push(c)
    }
    return u
  }, m.union = function() {
    return m.uniq(k(arguments, !0, !0))
  }, m.intersection = function(n) {
    if (null == n) return [];
    for (var t = [], r = arguments.length, e = 0, u = n.length; u > e; e++) {
      var i = n[e];
      if (!m.contains(t, i)) {
        for (var o = 1; r > o && m.contains(arguments[o], i); o++);
        o === r && t.push(i)
      }
    }
    return t
  }, m.difference = function(n) {
    var t = k(arguments, !0, !0, 1);
    return m.filter(n, function(n) {
      return !m.contains(t, n)
    })
  }, m.zip = function() {
    return m.unzip(arguments)
  }, m.unzip = function(n) {
    for (var t = n && m.max(n, "length").length || 0, r = Array(t), e = 0; t > e; e++) r[e] = m.pluck(n, e);
    return r
  }, m.object = function(n, t) {
    for (var r = {}, e = 0, u = n && n.length; u > e; e++) t ? r[n[e]] = t[e] : r[n[e][0]] = n[e][1];
    return r
  }, m.indexOf = function(n, t, r) {
    var e = 0,
      u = n && n.length;
    if ("number" == typeof r) e = 0 > r ? Math.max(0, u + r) : r;
    else if (r && u) return e = m.sortedIndex(n, t), n[e] === t ? e : -1;
    if (t !== t) return m.findIndex(l.call(n, e), m.isNaN);
    for (; u > e; e++)
      if (n[e] === t) return e;
    return -1
  }, m.lastIndexOf = function(n, t, r) {
    var e = n ? n.length : 0;
    if ("number" == typeof r && (e = 0 > r ? e + r + 1 : Math.min(e, r + 1)), t !== t) return m.findLastIndex(l.call(n, 0, e), m.isNaN);
    for (; --e >= 0;)
      if (n[e] === t) return e;
    return -1
  }, m.findIndex = t(1), m.findLastIndex = t(-1), m.sortedIndex = function(n, t, r, e) {
    r = b(r, e, 1);
    for (var u = r(t), i = 0, o = n.length; o > i;) {
      var a = Math.floor((i + o) / 2);
      r(n[a]) < u ? i = a + 1 : o = a
    }
    return i
  }, m.range = function(n, t, r) {
    arguments.length <= 1 && (t = n || 0, n = 0), r = r || 1;
    for (var e = Math.max(Math.ceil((t - n) / r), 0), u = Array(e), i = 0; e > i; i++, n += r) u[i] = n;
    return u
  };
  var O = function(n, t, r, e, u) {
    if (!(e instanceof t)) return n.apply(r, u);
    var i = _(n.prototype),
      o = n.apply(i, u);
    return m.isObject(o) ? o : i
  };
  m.bind = function(n, t) {
    if (v && n.bind === v) return v.apply(n, l.call(arguments, 1));
    if (!m.isFunction(n)) throw new TypeError("Bind must be called on a function");
    var r = l.call(arguments, 2),
      e = function() {
        return O(n, e, t, this, r.concat(l.call(arguments)))
      };
    return e
  }, m.partial = function(n) {
    var t = l.call(arguments, 1),
      r = function() {
        for (var e = 0, u = t.length, i = Array(u), o = 0; u > o; o++) i[o] = t[o] === m ? arguments[e++] : t[o];
        for (; e < arguments.length;) i.push(arguments[e++]);
        return O(n, r, this, this, i)
      };
    return r
  }, m.bindAll = function(n) {
    var t, r, e = arguments.length;
    if (1 >= e) throw new Error("bindAll must be passed function names");
    for (t = 1; e > t; t++) r = arguments[t], n[r] = m.bind(n[r], n);
    return n
  }, m.memoize = function(n, t) {
    var r = function(e) {
      var u = r.cache,
        i = "" + (t ? t.apply(this, arguments) : e);
      return m.has(u, i) || (u[i] = n.apply(this, arguments)), u[i]
    };
    return r.cache = {}, r
  }, m.delay = function(n, t) {
    var r = l.call(arguments, 2);
    return setTimeout(function() {
      return n.apply(null, r)
    }, t)
  }, m.defer = m.partial(m.delay, m, 1), m.throttle = function(n, t, r) {
    var e, u, i, o = null,
      a = 0;
    r || (r = {});
    var c = function() {
      a = r.leading === !1 ? 0 : m.now(), o = null, i = n.apply(e, u), o || (e = u = null)
    };
    return function() {
      var l = m.now();
      a || r.leading !== !1 || (a = l);
      var f = t - (l - a);
      return e = this, u = arguments, 0 >= f || f > t ? (o && (clearTimeout(o), o = null), a = l, i = n.apply(e, u), o || (e = u = null)) : o || r.trailing === !1 || (o = setTimeout(c, f)), i
    }
  }, m.debounce = function(n, t, r) {
    var e, u, i, o, a, c = function() {
      var l = m.now() - o;
      t > l && l >= 0 ? e = setTimeout(c, t - l) : (e = null, r || (a = n.apply(i, u), e || (i = u = null)))
    };
    return function() {
      i = this, u = arguments, o = m.now();
      var l = r && !e;
      return e || (e = setTimeout(c, t)), l && (a = n.apply(i, u), i = u = null), a
    }
  }, m.wrap = function(n, t) {
    return m.partial(t, n)
  }, m.negate = function(n) {
    return function() {
      return !n.apply(this, arguments)
    }
  }, m.compose = function() {
    var n = arguments,
      t = n.length - 1;
    return function() {
      for (var r = t, e = n[t].apply(this, arguments); r--;) e = n[r].call(this, e);
      return e
    }
  }, m.after = function(n, t) {
    return function() {
      return --n < 1 ? t.apply(this, arguments) : void 0
    }
  }, m.before = function(n, t) {
    var r;
    return function() {
      return --n > 0 && (r = t.apply(this, arguments)), 1 >= n && (t = null), r
    }
  }, m.once = m.partial(m.before, 2);
  var F = !{
      toString: null
    }.propertyIsEnumerable("toString"),
    S = ["valueOf", "isPrototypeOf", "toString", "propertyIsEnumerable", "hasOwnProperty", "toLocaleString"];
  m.keys = function(n) {
    if (!m.isObject(n)) return [];
    if (h) return h(n);
    var t = [];
    for (var e in n) m.has(n, e) && t.push(e);
    return F && r(n, t), t
  }, m.allKeys = function(n) {
    if (!m.isObject(n)) return [];
    var t = [];
    for (var e in n) t.push(e);
    return F && r(n, t), t
  }, m.values = function(n) {
    for (var t = m.keys(n), r = t.length, e = Array(r), u = 0; r > u; u++) e[u] = n[t[u]];
    return e
  }, m.mapObject = function(n, t, r) {
    t = b(t, r);
    for (var e, u = m.keys(n), i = u.length, o = {}, a = 0; i > a; a++) e = u[a], o[e] = t(n[e], e, n);
    return o
  }, m.pairs = function(n) {
    for (var t = m.keys(n), r = t.length, e = Array(r), u = 0; r > u; u++) e[u] = [t[u], n[t[u]]];
    return e
  }, m.invert = function(n) {
    for (var t = {}, r = m.keys(n), e = 0, u = r.length; u > e; e++) t[n[r[e]]] = r[e];
    return t
  }, m.functions = m.methods = function(n) {
    var t = [];
    for (var r in n) m.isFunction(n[r]) && t.push(r);
    return t.sort()
  }, m.extend = x(m.allKeys), m.extendOwn = m.assign = x(m.keys), m.findKey = function(n, t, r) {
    t = b(t, r);
    for (var e, u = m.keys(n), i = 0, o = u.length; o > i; i++)
      if (e = u[i], t(n[e], e, n)) return e
  }, m.pick = function(n, t, r) {
    var e, u, i = {},
      o = n;
    if (null == o) return i;
    m.isFunction(t) ? (u = m.allKeys(o), e = d(t, r)) : (u = k(arguments, !1, !1, 1), e = function(n, t, r) {
      return t in r
    }, o = Object(o));
    for (var a = 0, c = u.length; c > a; a++) {
      var l = u[a],
        f = o[l];
      e(f, l, o) && (i[l] = f)
    }
    return i
  }, m.omit = function(n, t, r) {
    if (m.isFunction(t)) t = m.negate(t);
    else {
      var e = m.map(k(arguments, !1, !1, 1), String);
      t = function(n, t) {
        return !m.contains(e, t)
      }
    }
    return m.pick(n, t, r)
  }, m.defaults = x(m.allKeys, !0), m.clone = function(n) {
    return m.isObject(n) ? m.isArray(n) ? n.slice() : m.extend({}, n) : n
  }, m.tap = function(n, t) {
    return t(n), n
  }, m.isMatch = function(n, t) {
    var r = m.keys(t),
      e = r.length;
    if (null == n) return !e;
    for (var u = Object(n), i = 0; e > i; i++) {
      var o = r[i];
      if (t[o] !== u[o] || !(o in u)) return !1
    }
    return !0
  };
  var E = function(n, t, r, e) {
    if (n === t) return 0 !== n || 1 / n === 1 / t;
    if (null == n || null == t) return n === t;
    n instanceof m && (n = n._wrapped), t instanceof m && (t = t._wrapped);
    var u = f.call(n);
    if (u !== f.call(t)) return !1;
    switch (u) {
      case "[object RegExp]":
      case "[object String]":
        return "" + n == "" + t;
      case "[object Number]":
        return +n !== +n ? +t !== +t : 0 === +n ? 1 / +n === 1 / t : +n === +t;
      case "[object Date]":
      case "[object Boolean]":
        return +n === +t
    }
    var i = "[object Array]" === u;
    if (!i) {
      if ("object" != typeof n || "object" != typeof t) return !1;
      var o = n.constructor,
        a = t.constructor;
      if (o !== a && !(m.isFunction(o) && o instanceof o && m.isFunction(a) && a instanceof a) && "constructor" in n && "constructor" in t) return !1
    }
    r = r || [], e = e || [];
    for (var c = r.length; c--;)
      if (r[c] === n) return e[c] === t;
    if (r.push(n), e.push(t), i) {
      if (c = n.length, c !== t.length) return !1;
      for (; c--;)
        if (!E(n[c], t[c], r, e)) return !1
    } else {
      var l, s = m.keys(n);
      if (c = s.length, m.keys(t).length !== c) return !1;
      for (; c--;)
        if (l = s[c], !m.has(t, l) || !E(n[l], t[l], r, e)) return !1
    }
    return r.pop(), e.pop(), !0
  };
  m.isEqual = function(n, t) {
    return E(n, t)
  }, m.isEmpty = function(n) {
    return null == n ? !0 : w(n) && (m.isArray(n) || m.isString(n) || m.isArguments(n)) ? 0 === n.length : 0 === m.keys(n).length
  }, m.isElement = function(n) {
    return !(!n || 1 !== n.nodeType)
  }, m.isArray = p || function(n) {
    return "[object Array]" === f.call(n)
  }, m.isObject = function(n) {
    var t = typeof n;
    return "function" === t || "object" === t && !!n
  }, m.each(["Arguments", "Function", "String", "Number", "Date", "RegExp", "Error"], function(n) {
    m["is" + n] = function(t) {
      return f.call(t) === "[object " + n + "]"
    }
  }), m.isArguments(arguments) || (m.isArguments = function(n) {
    return m.has(n, "callee")
  }), "function" != typeof /./ && "object" != typeof Int8Array && (m.isFunction = function(n) {
    return "function" == typeof n || !1
  }), m.isFinite = function(n) {
    return isFinite(n) && !isNaN(parseFloat(n))
  }, m.isNaN = function(n) {
    return m.isNumber(n) && n !== +n
  }, m.isBoolean = function(n) {
    return n === !0 || n === !1 || "[object Boolean]" === f.call(n)
  }, m.isNull = function(n) {
    return null === n
  }, m.isUndefined = function(n) {
    return n === void 0
  }, m.has = function(n, t) {
    return null != n && s.call(n, t)
  }, m.noConflict = function() {
    return e._ = u, this
  }, m.identity = function(n) {
    return n
  }, m.constant = function(n) {
    return function() {
      return n
    }
  }, m.noop = function() {}, m.property = function(n) {
    return function(t) {
      return null == t ? void 0 : t[n]
    }
  }, m.propertyOf = function(n) {
    return null == n ? function() {} : function(t) {
      return n[t]
    }
  }, m.matcher = m.matches = function(n) {
    return n = m.extendOwn({}, n),
      function(t) {
        return m.isMatch(t, n)
      }
  }, m.times = function(n, t, r) {
    var e = Array(Math.max(0, n));
    t = d(t, r, 1);
    for (var u = 0; n > u; u++) e[u] = t(u);
    return e
  }, m.random = function(n, t) {
    return null == t && (t = n, n = 0), n + Math.floor(Math.random() * (t - n + 1))
  }, m.now = Date.now || function() {
    return (new Date).getTime()
  };
  var M = {
      "&": "&amp;",
      "<": "&lt;",
      ">": "&gt;",
      '"': "&quot;",
      "'": "&#x27;",
      "`": "&#x60;"
    },
    N = m.invert(M),
    I = function(n) {
      var t = function(t) {
          return n[t]
        },
        r = "(?:" + m.keys(n).join("|") + ")",
        e = RegExp(r),
        u = RegExp(r, "g");
      return function(n) {
        return n = null == n ? "" : "" + n, e.test(n) ? n.replace(u, t) : n
      }
    };
  m.escape = I(M), m.unescape = I(N), m.result = function(n, t, r) {
    var e = null == n ? void 0 : n[t];
    return e === void 0 && (e = r), m.isFunction(e) ? e.call(n) : e
  };
  var B = 0;
  m.uniqueId = function(n) {
    var t = ++B + "";
    return n ? n + t : t
  }, m.templateSettings = {
    evaluate: /<%([\s\S]+?)%>/g,
    interpolate: /<%=([\s\S]+?)%>/g,
    escape: /<%-([\s\S]+?)%>/g
  };
  var T = /(.)^/,
    R = {
      "'": "'",
      "\\": "\\",
      "\r": "r",
      "\n": "n",
      "\u2028": "u2028",
      "\u2029": "u2029"
    },
    q = /\\|'|\r|\n|\u2028|\u2029/g,
    K = function(n) {
      return "\\" + R[n]
    };
  m.template = function(n, t, r) {
    !t && r && (t = r), t = m.defaults({}, t, m.templateSettings);
    var e = RegExp([(t.escape || T).source, (t.interpolate || T).source, (t.evaluate || T).source].join("|") + "|$", "g"),
      u = 0,
      i = "__p+='";
    n.replace(e, function(t, r, e, o, a) {
      return i += n.slice(u, a).replace(q, K), u = a + t.length, r ? i += "'+\n((__t=(" + r + "))==null?'':_.escape(__t))+\n'" : e ? i += "'+\n((__t=(" + e + "))==null?'':__t)+\n'" : o && (i += "';\n" + o + "\n__p+='"), t
    }), i += "';\n", t.variable || (i = "with(obj||{}){\n" + i + "}\n"), i = "var __t,__p='',__j=Array.prototype.join," + "print=function(){__p+=__j.call(arguments,'');};\n" + i + "return __p;\n";
    try {
      var o = new Function(t.variable || "obj", "_", i)
    } catch (a) {
      throw a.source = i, a
    }
    var c = function(n) {
        return o.call(this, n, m)
      },
      l = t.variable || "obj";
    return c.source = "function(" + l + "){\n" + i + "}", c
  }, m.chain = function(n) {
    var t = m(n);
    return t._chain = !0, t
  };
  var z = function(n, t) {
    return n._chain ? m(t).chain() : t
  };
  m.mixin = function(n) {
    m.each(m.functions(n), function(t) {
      var r = m[t] = n[t];
      m.prototype[t] = function() {
        var n = [this._wrapped];
        return c.apply(n, arguments), z(this, r.apply(m, n))
      }
    })
  }, m.mixin(m), m.each(["pop", "push", "reverse", "shift", "sort", "splice", "unshift"], function(n) {
    var t = i[n];
    m.prototype[n] = function() {
      var r = this._wrapped;
      return t.apply(r, arguments), "shift" !== n && "splice" !== n || 0 !== r.length || delete r[0], z(this, r)
    }
  }), m.each(["concat", "join", "slice"], function(n) {
    var t = i[n];
    m.prototype[n] = function() {
      return z(this, t.apply(this._wrapped, arguments))
    }
  }), m.prototype.value = function() {
    return this._wrapped
  }, m.prototype.valueOf = m.prototype.toJSON = m.prototype.value, m.prototype.toString = function() {
    return "" + this._wrapped
  }, "function" == typeof define && define.amd && define("underscore", [], function() {
    return m
  })
}).call(this);
//# sourceMappingURL=underscore-min.map
var _data=
[
  {
    "id": 1,
    "first_name": "Stephen",
    "last_name": "Matthews",
    "email": "smatthews0@uol.com.br",
    "gender": "Male",
    "ip_address": "122.214.154.228",
    "Age": 12,
    "Sallery": 28201,
    "Code": "Indigo",
    "Country": "Russia"
  },
  {
    "id": 2,
    "first_name": "Jerry",
    "last_name": "Burton",
    "email": "jburton1@parallels.com",
    "gender": "Male",
    "ip_address": "182.133.34.201",
    "Age": 8,
    "Sallery": 44858,
    "Code": "Indigo",
    "Country": "Indonesia"
  },
  {
    "id": 3,
    "first_name": "Dennis",
    "last_name": "Payne",
    "email": "dpayne2@jigsy.com",
    "gender": "Male",
    "ip_address": "116.217.179.220",
    "Age": 82,
    "Sallery": 77056,
    "Code": "Orange",
    "Country": "France"
  },
  {
    "id": 4,
    "first_name": "Louis",
    "last_name": "Simpson",
    "email": "lsimpson3@wordpress.org",
    "gender": "Male",
    "ip_address": "220.165.55.67",
    "Age": 23,
    "Sallery": 91331,
    "Code": "Khaki",
    "Country": "Philippines"
  },
  {
    "id": 5,
    "first_name": "Julie",
    "last_name": "Boyd",
    "email": "jboyd4@ibm.com",
    "gender": "Female",
    "ip_address": "65.210.62.92",
    "Age": 47,
    "Sallery": 84244,
    "Code": "Teal",
    "Country": "Ukraine"
  },
  {
    "id": 6,
    "first_name": "Jack",
    "last_name": "Garrett",
    "email": "jgarrett5@google.it",
    "gender": "Male",
    "ip_address": "189.16.218.59",
    "Age": 24,
    "Sallery": 67286,
    "Code": "Turquoise",
    "Country": "Colombia"
  },
  {
    "id": 7,
    "first_name": "Gary",
    "last_name": "Washington",
    "email": "gwashington6@about.me",
    "gender": "Male",
    "ip_address": "89.230.177.145",
    "Age": 53,
    "Sallery": 10436,
    "Code": "Teal",
    "Country": "Azerbaijan"
  },
  {
    "id": 8,
    "first_name": "Peter",
    "last_name": "Willis",
    "email": "pwillis7@aboutads.info",
    "gender": "Male",
    "ip_address": "228.249.153.53",
    "Age": 21,
    "Sallery": 4288,
    "Code": "Crimson",
    "Country": "China"
  },
  {
    "id": 9,
    "first_name": "Marie",
    "last_name": "Grant",
    "email": "mgrant8@hubpages.com",
    "gender": "Female",
    "ip_address": "18.138.164.85",
    "Age": 100,
    "Sallery": 4953,
    "Code": "Green",
    "Country": "Iran"
  },
  {
    "id": 10,
    "first_name": "Lawrence",
    "last_name": "Hall",
    "email": "lhall9@adobe.com",
    "gender": "Male",
    "ip_address": "23.74.245.16",
    "Age": 56,
    "Sallery": 30089,
    "Code": "Crimson",
    "Country": "Indonesia"
  },
  {
    "id": 11,
    "first_name": "Sarah",
    "last_name": "Morrison",
    "email": "smorrisona@timesonline.co.uk",
    "gender": "Female",
    "ip_address": "216.147.150.207",
    "Age": 16,
    "Sallery": 63713,
    "Code": "Goldenrod",
    "Country": "Philippines"
  },
  {
    "id": 12,
    "first_name": "Melissa",
    "last_name": "Jackson",
    "email": "mjacksonb@bing.com",
    "gender": "Female",
    "ip_address": "243.121.88.178",
    "Age": 99,
    "Sallery": 48336,
    "Code": "Puce",
    "Country": "Chile"
  },
  {
    "id": 13,
    "first_name": "Kenneth",
    "last_name": "Jacobs",
    "email": "kjacobsc@nyu.edu",
    "gender": "Male",
    "ip_address": "32.115.217.37",
    "Age": 88,
    "Sallery": 38293,
    "Code": "Maroon",
    "Country": "Dominican Republic"
  },
  {
    "id": 14,
    "first_name": "Kimberly",
    "last_name": "Martin",
    "email": "kmartind@pcworld.com",
    "gender": "Female",
    "ip_address": "113.193.9.228",
    "Age": 12,
    "Sallery": 2337,
    "Code": "Green",
    "Country": "China"
  },
  {
    "id": 15,
    "first_name": "Diane",
    "last_name": "Hansen",
    "email": "dhansene@freewebs.com",
    "gender": "Female",
    "ip_address": "248.152.66.115",
    "Age": 98,
    "Sallery": 15404,
    "Code": "Maroon",
    "Country": "Indonesia"
  },
  {
    "id": 16,
    "first_name": "Michael",
    "last_name": "Roberts",
    "email": "mrobertsf@bbb.org",
    "gender": "Male",
    "ip_address": "188.161.153.74",
    "Age": 8,
    "Sallery": 32850,
    "Code": "Green",
    "Country": "Chile"
  },
  {
    "id": 17,
    "first_name": "Anne",
    "last_name": "Green",
    "email": "agreeng@mapquest.com",
    "gender": "Female",
    "ip_address": "185.191.221.111",
    "Age": 61,
    "Sallery": 53274,
    "Code": "Violet",
    "Country": "Croatia"
  },
  {
    "id": 18,
    "first_name": "Frank",
    "last_name": "Johnston",
    "email": "fjohnstonh@apache.org",
    "gender": "Male",
    "ip_address": "227.24.15.1",
    "Age": 40,
    "Sallery": 52435,
    "Code": "Pink",
    "Country": "Indonesia"
  },
  {
    "id": 19,
    "first_name": "Dennis",
    "last_name": "Barnes",
    "email": "dbarnesi@ucoz.com",
    "gender": "Male",
    "ip_address": "70.186.175.69",
    "Age": 85,
    "Sallery": 34547,
    "Code": "Puce",
    "Country": "Russia"
  },
  {
    "id": 20,
    "first_name": "Gloria",
    "last_name": "Kelly",
    "email": "gkellyj@bloglines.com",
    "gender": "Female",
    "ip_address": "131.2.134.97",
    "Age": 99,
    "Sallery": 55929,
    "Code": "Teal",
    "Country": "North Korea"
  },
  {
    "id": 21,
    "first_name": "Albert",
    "last_name": "Austin",
    "email": "aaustink@shareasale.com",
    "gender": "Male",
    "ip_address": "92.176.148.157",
    "Age": 40,
    "Sallery": 14951,
    "Code": "Yellow",
    "Country": "Libya"
  },
  {
    "id": 22,
    "first_name": "Thomas",
    "last_name": "Carpenter",
    "email": "tcarpenterl@plala.or.jp",
    "gender": "Male",
    "ip_address": "82.179.26.202",
    "Age": 19,
    "Sallery": 75058,
    "Code": "Mauv",
    "Country": "Indonesia"
  },
  {
    "id": 23,
    "first_name": "Joe",
    "last_name": "Bailey",
    "email": "jbaileym@nifty.com",
    "gender": "Male",
    "ip_address": "117.101.72.130",
    "Age": 7,
    "Sallery": 24219,
    "Code": "Puce",
    "Country": "Swaziland"
  },
  {
    "id": 24,
    "first_name": "Pamela",
    "last_name": "Morales",
    "email": "pmoralesn@phoca.cz",
    "gender": "Female",
    "ip_address": "214.56.228.102",
    "Age": 76,
    "Sallery": 44755,
    "Code": "Fuscia",
    "Country": "China"
  },
  {
    "id": 25,
    "first_name": "Harry",
    "last_name": "Moreno",
    "email": "hmorenoo@reverbnation.com",
    "gender": "Male",
    "ip_address": "23.37.63.201",
    "Age": 18,
    "Sallery": 16137,
    "Code": "Goldenrod",
    "Country": "Indonesia"
  },
  {
    "id": 26,
    "first_name": "Brenda",
    "last_name": "Stephens",
    "email": "bstephensp@baidu.com",
    "gender": "Female",
    "ip_address": "6.180.62.106",
    "Age": 81,
    "Sallery": 68608,
    "Code": "Khaki",
    "Country": "France"
  },
  {
    "id": 27,
    "first_name": "Russell",
    "last_name": "Hernandez",
    "email": "rhernandezq@dot.gov",
    "gender": "Male",
    "ip_address": "46.239.226.70",
    "Age": 36,
    "Sallery": 15188,
    "Code": "Orange",
    "Country": "United States"
  },
  {
    "id": 28,
    "first_name": "Janet",
    "last_name": "Bennett",
    "email": "jbennettr@bizjournals.com",
    "gender": "Female",
    "ip_address": "192.7.83.2",
    "Age": 83,
    "Sallery": 5833,
    "Code": "Violet",
    "Country": "Peru"
  },
  {
    "id": 29,
    "first_name": "Diana",
    "last_name": "Edwards",
    "email": "dedwardss@fda.gov",
    "gender": "Female",
    "ip_address": "220.62.158.120",
    "Age": 15,
    "Sallery": 61055,
    "Code": "Yellow",
    "Country": "Serbia"
  },
  {
    "id": 30,
    "first_name": "Matthew",
    "last_name": "Ray",
    "email": "mrayt@psu.edu",
    "gender": "Male",
    "ip_address": "109.84.225.151",
    "Age": 82,
    "Sallery": 59360,
    "Code": "Turquoise",
    "Country": "China"
  },
  {
    "id": 31,
    "first_name": "Robin",
    "last_name": "Stevens",
    "email": "rstevensu@soundcloud.com",
    "gender": "Female",
    "ip_address": "62.252.40.87",
    "Age": 34,
    "Sallery": 74108,
    "Code": "Turquoise",
    "Country": "Russia"
  },
  {
    "id": 32,
    "first_name": "Catherine",
    "last_name": "Gutierrez",
    "email": "cgutierrezv@wisc.edu",
    "gender": "Female",
    "ip_address": "162.62.184.205",
    "Age": 71,
    "Sallery": 95321,
    "Code": "Goldenrod",
    "Country": "Russia"
  },
  {
    "id": 33,
    "first_name": "Joe",
    "last_name": "Peters",
    "email": "jpetersw@salon.com",
    "gender": "Male",
    "ip_address": "38.58.102.168",
    "Age": 47,
    "Sallery": 89018,
    "Code": "Aquamarine",
    "Country": "Poland"
  },
  {
    "id": 34,
    "first_name": "Laura",
    "last_name": "Fernandez",
    "email": "lfernandezx@google.fr",
    "gender": "Female",
    "ip_address": "104.25.128.11",
    "Age": 55,
    "Sallery": 37751,
    "Code": "Teal",
    "Country": "Russia"
  },
  {
    "id": 35,
    "first_name": "Margaret",
    "last_name": "Watkins",
    "email": "mwatkinsy@is.gd",
    "gender": "Female",
    "ip_address": "161.223.63.175",
    "Age": 34,
    "Sallery": 39746,
    "Code": "Red",
    "Country": "Portugal"
  },
  {
    "id": 36,
    "first_name": "Andrew",
    "last_name": "Miller",
    "email": "amillerz@ted.com",
    "gender": "Male",
    "ip_address": "100.246.147.205",
    "Age": 57,
    "Sallery": 87799,
    "Code": "Aquamarine",
    "Country": "Czech Republic"
  },
  {
    "id": 37,
    "first_name": "Lillian",
    "last_name": "Watson",
    "email": "lwatson10@dailymotion.com",
    "gender": "Female",
    "ip_address": "236.205.187.119",
    "Age": 89,
    "Sallery": 55876,
    "Code": "Violet",
    "Country": "China"
  },
  {
    "id": 38,
    "first_name": "Donald",
    "last_name": "Wallace",
    "email": "dwallace11@yale.edu",
    "gender": "Male",
    "ip_address": "36.210.244.9",
    "Age": 57,
    "Sallery": 22781,
    "Code": "Purple",
    "Country": "Indonesia"
  },
  {
    "id": 39,
    "first_name": "Brenda",
    "last_name": "Ward",
    "email": "bward12@gov.uk",
    "gender": "Female",
    "ip_address": "41.202.53.100",
    "Age": 41,
    "Sallery": 12151,
    "Code": "Khaki",
    "Country": "China"
  },
  {
    "id": 40,
    "first_name": "Rachel",
    "last_name": "Hill",
    "email": "rhill13@ezinearticles.com",
    "gender": "Female",
    "ip_address": "224.207.162.184",
    "Age": 7,
    "Sallery": 10161,
    "Code": "Goldenrod",
    "Country": "Indonesia"
  },
  {
    "id": 41,
    "first_name": "Michael",
    "last_name": "Johnston",
    "email": "mjohnston14@boston.com",
    "gender": "Male",
    "ip_address": "220.209.12.29",
    "Age": 80,
    "Sallery": 9956,
    "Code": "Teal",
    "Country": "Norway"
  },
  {
    "id": 42,
    "first_name": "Ashley",
    "last_name": "Armstrong",
    "email": "aarmstrong15@reverbnation.com",
    "gender": "Female",
    "ip_address": "195.67.150.165",
    "Age": 42,
    "Sallery": 89088,
    "Code": "Aquamarine",
    "Country": "United States"
  },
  {
    "id": 43,
    "first_name": "Arthur",
    "last_name": "Ferguson",
    "email": "aferguson16@thetimes.co.uk",
    "gender": "Male",
    "ip_address": "66.115.56.29",
    "Age": 9,
    "Sallery": 99601,
    "Code": "Yellow",
    "Country": "Kuwait"
  },
  {
    "id": 44,
    "first_name": "Julie",
    "last_name": "Perry",
    "email": "jperry17@istockphoto.com",
    "gender": "Female",
    "ip_address": "193.55.115.3",
    "Age": 36,
    "Sallery": 65259,
    "Code": "Khaki",
    "Country": "Vietnam"
  },
  {
    "id": 45,
    "first_name": "Robin",
    "last_name": "Richards",
    "email": "rrichards18@apache.org",
    "gender": "Female",
    "ip_address": "139.173.62.239",
    "Age": 73,
    "Sallery": 17027,
    "Code": "Puce",
    "Country": "Brazil"
  }
]