Search

Filtering Basics

Filtering

Explore relations between malware and their vulnerabilities.

Filtering Basics
View live example →

This demo illustrates the benefits of using filters to improve the clarity and understanding of relations in a chart.

The dataset shows the web of relations between malware (exploit kits) and the vulnerabilities they exploit. Each vulnerability is colour coded to the class of technology they relate to.

You can select one or more technology categories and the chart filters the data, presenting only relevant exploits and malware families.

As well as discovery of patterns, the resulting chart can provide a powerful way to communicate the risks an organisation may be exposed to from unpatched or vulnerable platforms and technologies.

Data from

https://contagiodump.blogspot.co.uk/

with permission and thanks.

Key functions used:

import KeyLines from "keylines";
import { data } from "./data.js";

let chart;

async function filterItems(exploitsToShow, allCheckboxes) {
  function isExploitChecked(item) {
    // Ensure malware nodes are always shown
    return item.d.type === "malware" || exploitsToShow.includes(item.d.product);
  }
  // filter out the subsets that aren't selected
  await chart.filter(isExploitChecked, { type: "node" });
  // finish with a layout
  chart.layout("structural");
  // re-enable checkboxes now that filtering is complete
  allCheckboxes.forEach((checkbox) => {
    checkbox.disabled = false;
  });
}

function findSelection(checkboxes) {
  // disable the legend to prevent asynchronous calls
  checkboxes.forEach((checkbox) => {
    checkbox.disabled = true;
  });
  // find checked boxes and put into a new array
  const checkedBoxes = [...checkboxes]
    .filter((checkbox) => checkbox.checked)
    .map((checkbox) => checkbox.id);
  filterItems(checkedBoxes, checkboxes);
}

function initialiseInteractions() {
  // Set up event listener for the legend
  const legendCheckboxes = document.querySelectorAll('input[type="checkbox"]');
  legendCheckboxes.forEach((checkbox) => {
    checkbox.addEventListener("click", () => findSelection(legendCheckboxes));
  });
}

async function loadKeyLines() {
  const options = {
    logo: { u: "/images/Logo.png" },
    handMode: true,
  };
  chart = await KeyLines.create({ container: "klchart", options });
  chart.load(data);
  chart.layout("structural");
  // set up user interactions
  initialiseInteractions();
}

window.addEventListener("DOMContentLoaded", loadKeyLines);
export const data = {
  type: "LinkChart",
  items: [
    {
      id: "Hanjuan",
      type: "node",
      t: "Hanjuan",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=hanjuan",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Angler",
      type: "node",
      t: "Angler",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=angler",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Archie",
      type: "node",
      t: "Archie",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=archie",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Astrum",
      type: "node",
      t: "Astrum",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=astrum",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Bleeding life",
      type: "node",
      t: "Bleeding life",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=bleeding life",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Dotkachef",
      type: "node",
      t: "Dotkachef",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=dotkachef",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "CkVip",
      type: "node",
      t: "CkVip",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=ckvip",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Fiesta",
      type: "node",
      t: "Fiesta",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=fiesta",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Flash",
      type: "node",
      t: "Flash",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=flash",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "GongDa",
      type: "node",
      t: "GongDa",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=gongda",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Infinity",
      type: "node",
      t: "Infinity",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=infinity",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "LightsOut",
      type: "node",
      t: "LightsOut",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=lightsout",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Magnitude",
      type: "node",
      t: "Magnitude",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=magnitude",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Neutrino",
      type: "node",
      t: "Neutrino",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=neutrino",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Niteris",
      type: "node",
      t: "Niteris",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=niteris",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Nuclear",
      type: "node",
      t: "Nuclear",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=nuclear",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Nuclear 3.x",
      type: "node",
      t: "Nuclear 3.x",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=nuclear 3.x",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "NullHole",
      type: "node",
      t: "NullHole",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=nullhole",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Rig",
      type: "node",
      t: "Rig",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=rig",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Sednit",
      type: "node",
      t: "Sednit",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=sednit",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Styx",
      type: "node",
      t: "Styx",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=styx",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "SweetOrange",
      type: "node",
      t: "SweetOrange",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=sweetorange",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Nuclear 2.2",
      type: "node",
      t: "Nuclear 2.2",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=nuclear 2.2",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Nuclear 2.1",
      type: "node",
      t: "Nuclear 2.1",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=nuclear 2.1",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Nuclear 2.0",
      type: "node",
      t: "Nuclear 2.0",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=nuclear 2.0",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Redkit 2.x",
      type: "node",
      t: "Redkit 2.x",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=redkit 2.x",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Redkit Light",
      type: "node",
      t: "Redkit Light",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=redkit light",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Neo Sploit",
      type: "node",
      t: "Neo Sploit",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=neo sploit",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "FlashPack (child of SafePack / CritXPack/ Vintage Pack)",
      type: "node",
      t: "FlashPack (child of SafePack / CritXPack/ Vintage Pack)",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=flashpack (child of safepack / critxpack/ vintage pack)",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Safe Pack",
      type: "node",
      t: "Safe Pack",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=safe pack",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "White Lotus",
      type: "node",
      t: "White Lotus",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=white lotus",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Popads",
      type: "node",
      t: "Popads",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=popads",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Net Boom NB Exploiter",
      type: "node",
      t: "Net Boom NB Exploiter",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=net boom nb exploiter",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Blackhole (last)*",
      type: "node",
      t: "Blackhole (last)*",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=blackhole (last)*",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Crimeboss",
      type: "node",
      t: "Crimeboss",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=crimeboss",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Sakura",
      type: "node",
      t: "Sakura",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=sakura",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "LightsOut",
      type: "node",
      t: "LightsOut",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=lightsout",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Glazunov",
      type: "node",
      t: "Glazunov",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=glazunov",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "Rawin",
      type: "node",
      t: "Rawin",
      d: {
        url: "https://www.microsoft.com/security/portal/threat/encyclopedia/search.aspx?page=1&showall=False&sortby=relevance&sortdir=desc&size=10&query=rawin",
        type: "malware",
      },
      u: "/images/exploitkits/malware.png",
    },
    {
      id: "CVE-2010-0188",
      type: "node",
      t: "CVE-2010-0188",
      d: { url: "http://www.cvedetails.com/cve/CVE-2010-0188", product: "adobe", type: "cve" },
      c: "#f781bf",
    },
    {
      id: "CVE-2010-0188-Astrum",
      id1: "CVE-2010-0188",
      id2: "Astrum",
      type: "link",
      d: { product: "adobe" },
      c: "#f781bf",
    },
    {
      id: "CVE-2010-0188-Nuclear",
      id1: "CVE-2010-0188",
      id2: "Nuclear",
      type: "link",
      d: { product: "adobe" },
      c: "#f781bf",
    },
    {
      id: "CVE-2010-0188-Nuclear 3.x",
      id1: "CVE-2010-0188",
      id2: "Nuclear 3.x",
      type: "link",
      d: { product: "adobe" },
      c: "#f781bf",
    },
    {
      id: "CVE-2010-0188-Nuclear 2.2",
      id1: "CVE-2010-0188",
      id2: "Nuclear 2.2",
      type: "link",
      d: { product: "adobe" },
      c: "#f781bf",
    },
    {
      id: "CVE-2010-0188-Nuclear 2.1",
      id1: "CVE-2010-0188",
      id2: "Nuclear 2.1",
      type: "link",
      d: { product: "adobe" },
      c: "#f781bf",
    },
    {
      id: "CVE-2010-0188-Nuclear 2.0",
      id1: "CVE-2010-0188",
      id2: "Nuclear 2.0",
      type: "link",
      d: { product: "adobe" },
      c: "#f781bf",
    },
    {
      id: "CVE-2010-0188-Blackhole (last)*",
      id1: "CVE-2010-0188",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "adobe" },
      c: "#f781bf",
    },
    {
      id: "CVE-2011-3402",
      type: "node",
      t: "CVE-2011-3402",
      d: { url: "http://www.cvedetails.com/cve/CVE-2011-3402", product: "windows", type: "cve" },
      c: "#999999",
    },
    {
      id: "CVE-2011-3402-Magnitude",
      id1: "CVE-2011-3402",
      id2: "Magnitude",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2011-3402-Nuclear 2.0",
      id1: "CVE-2011-3402",
      id2: "Nuclear 2.0",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2011-3402-Blackhole (last)*",
      id1: "CVE-2011-3402",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2011-3544",
      type: "node",
      t: "CVE-2011-3544",
      d: { url: "http://www.cvedetails.com/cve/CVE-2011-3544", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2011-3544-Bleeding life",
      id1: "CVE-2011-3544",
      id2: "Bleeding life",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2011-3544-Nuclear 2.1",
      id1: "CVE-2011-3544",
      id2: "Nuclear 2.1",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2011-3544-White Lotus",
      id1: "CVE-2011-3544",
      id2: "White Lotus",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2011-3544-Crimeboss",
      id1: "CVE-2011-3544",
      id2: "Crimeboss",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2011-3544-Sakura",
      id1: "CVE-2011-3544",
      id2: "Sakura",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-0507",
      type: "node",
      t: "CVE-2012-0507",
      d: { url: "http://www.cvedetails.com/cve/CVE-2012-0507", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-0507-Fiesta",
      id1: "CVE-2012-0507",
      id2: "Fiesta",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-0507-GongDa",
      id1: "CVE-2012-0507",
      id2: "GongDa",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-0507-Magnitude",
      id1: "CVE-2012-0507",
      id2: "Magnitude",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-0507-Nuclear",
      id1: "CVE-2012-0507",
      id2: "Nuclear",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-0507-Rig",
      id1: "CVE-2012-0507",
      id2: "Rig",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-0507-Blackhole (last)*",
      id1: "CVE-2012-0507",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-0507-Rawin",
      id1: "CVE-2012-0507",
      id2: "Rawin",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1889",
      type: "node",
      t: "CVE-2012-1889",
      d: { url: "http://www.cvedetails.com/cve/CVE-2011-1889", product: "windows", type: "cve" },
      c: "#999999",
    },
    {
      id: "CVE-2012-1889-GongDa",
      id1: "CVE-2012-1889",
      id2: "GongDa",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2012-5692",
      type: "node",
      t: "CVE-2012-5692",
      d: { url: "http://www.cvedetails.com/cve/CVE-2012-5692", product: "php", type: "cve" },
      c: "#a65628",
    },
    {
      id: "CVE-2012-5692-Dotkachef",
      id1: "CVE-2012-5692",
      id2: "Dotkachef",
      type: "link",
      d: { product: "php" },
      c: "#a65628",
    },
    {
      id: "CVE-2012-1723",
      type: "node",
      t: "CVE-2012-1723",
      d: { url: "http://www.cvedetails.com/cve/CVE-2012-1723", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-Bleeding life",
      id1: "CVE-2012-1723",
      id2: "Bleeding life",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-LightsOut",
      id1: "CVE-2012-1723",
      id2: "LightsOut",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-Nuclear",
      id1: "CVE-2012-1723",
      id2: "Nuclear",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-Nuclear 3.x",
      id1: "CVE-2012-1723",
      id2: "Nuclear 3.x",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-SweetOrange",
      id1: "CVE-2012-1723",
      id2: "SweetOrange",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-Nuclear 2.2",
      id1: "CVE-2012-1723",
      id2: "Nuclear 2.2",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-Nuclear 2.1",
      id1: "CVE-2012-1723",
      id2: "Nuclear 2.1",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-Neo Sploit",
      id1: "CVE-2012-1723",
      id2: "Neo Sploit",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-Safe Pack",
      id1: "CVE-2012-1723",
      id2: "Safe Pack",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-Blackhole (last)*",
      id1: "CVE-2012-1723",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-1723-LightsOut",
      id1: "CVE-2012-1723",
      id2: "LightsOut",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0025",
      type: "node",
      t: "CVE-2013-0025",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-0025", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-0025-Rig",
      id1: "CVE-2013-0025",
      id2: "Rig",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-0074",
      type: "node",
      t: "CVE-2013-0074",
      d: {
        url: "http://www.cvedetails.com/cve/CVE-2013-0074",
        product: "silverlight",
        type: "cve",
      },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-Hanjuan",
      id1: "CVE-2013-0074",
      id2: "Hanjuan",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-Angler",
      id1: "CVE-2013-0074",
      id2: "Angler",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-Archie",
      id1: "CVE-2013-0074",
      id2: "Archie",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-Astrum",
      id1: "CVE-2013-0074",
      id2: "Astrum",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-Fiesta",
      id1: "CVE-2013-0074",
      id2: "Fiesta",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-Infinity",
      id1: "CVE-2013-0074",
      id2: "Infinity",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-Neutrino",
      id1: "CVE-2013-0074",
      id2: "Neutrino",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-Nuclear",
      id1: "CVE-2013-0074",
      id2: "Nuclear",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-Rig",
      id1: "CVE-2013-0074",
      id2: "Rig",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-0074-FlashPack (child of SafePack / CritXPack/ Vintage Pack)",
      id1: "CVE-2013-0074",
      id2: "FlashPack (child of SafePack / CritXPack/ Vintage Pack)",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-3896",
      type: "node",
      t: "CVE-2013-3896",
      d: {
        url: "http://www.cvedetails.com/cve/CVE-2013-3896",
        product: "silverlight",
        type: "cve",
      },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-3896-Angler",
      id1: "CVE-2013-3896",
      id2: "Angler",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-3896-Astrum",
      id1: "CVE-2013-3896",
      id2: "Astrum",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-3896-Fiesta",
      id1: "CVE-2013-3896",
      id2: "Fiesta",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2013-3896-FlashPack (child of SafePack / CritXPack/ Vintage Pack)",
      id1: "CVE-2013-3896",
      id2: "FlashPack (child of SafePack / CritXPack/ Vintage Pack)",
      type: "link",
      d: { product: "silverlight" },
      c: "#a6cee3",
    },
    {
      id: "CVE-2012-3993",
      type: "node",
      t: "CVE-2012-3993",
      d: { url: "http://www.cvedetails.com/cve/CVE-2012-3993", product: "firefox", type: "cve" },
      c: "#ff7f00",
    },
    {
      id: "CVE-2012-3993-Niteris",
      id1: "CVE-2012-3993",
      id2: "Niteris",
      type: "link",
      d: { product: "firefox" },
      c: "#ff7f00",
    },
    {
      id: "CVE-2013-0422",
      type: "node",
      t: "CVE-2013-0422",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-0422", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0422-GongDa",
      id1: "CVE-2013-0422",
      id2: "GongDa",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0422-Niteris",
      id1: "CVE-2013-0422",
      id2: "Niteris",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0422-Nuclear 3.x",
      id1: "CVE-2013-0422",
      id2: "Nuclear 3.x",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0422-Nuclear 2.2",
      id1: "CVE-2013-0422",
      id2: "Nuclear 2.2",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0422-Blackhole (last)*",
      id1: "CVE-2013-0422",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0422-Crimeboss",
      id1: "CVE-2013-0422",
      id2: "Crimeboss",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0422-Sakura",
      id1: "CVE-2013-0422",
      id2: "Sakura",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0634",
      type: "node",
      t: "CVE-2013-0634",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-0634", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2013-0634-Astrum",
      id1: "CVE-2013-0634",
      id2: "Astrum",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2013-0634-Bleeding life",
      id1: "CVE-2013-0634",
      id2: "Bleeding life",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2013-0634-GongDa",
      id1: "CVE-2013-0634",
      id2: "GongDa",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2013-0634-Magnitude",
      id1: "CVE-2013-0634",
      id2: "Magnitude",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2013-0634-Niteris",
      id1: "CVE-2013-0634",
      id2: "Niteris",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2013-0634-Rig",
      id1: "CVE-2013-0634",
      id2: "Rig",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2013-1347",
      type: "node",
      t: "CVE-2013-1347",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-1347", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-1347-Infinity",
      id1: "CVE-2013-1347",
      id2: "Infinity",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-1347-LightsOut",
      id1: "CVE-2013-1347",
      id2: "LightsOut",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-1347-Sednit",
      id1: "CVE-2013-1347",
      id2: "Sednit",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-1347-LightsOut",
      id1: "CVE-2013-1347",
      id2: "LightsOut",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-1493",
      type: "node",
      t: "CVE-2013-1493",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-1493", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-1493-Dotkachef",
      id1: "CVE-2013-1493",
      id2: "Dotkachef",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-1493-Redkit 2.x",
      id1: "CVE-2013-1493",
      id2: "Redkit 2.x",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-1493-Rawin",
      id1: "CVE-2013-1493",
      id2: "Rawin",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-1710",
      type: "node",
      t: "CVE-2013-1710",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-1710", product: "firefox", type: "cve" },
      c: "#ff7f00",
    },
    {
      id: "CVE-2013-1710-Niteris",
      id1: "CVE-2013-1710",
      id2: "Niteris",
      type: "link",
      d: { product: "firefox" },
      c: "#ff7f00",
    },
    {
      id: "CVE-2013-2423",
      type: "node",
      t: "CVE-2013-2423",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-2423", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2423-Dotkachef",
      id1: "CVE-2013-2423",
      id2: "Dotkachef",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2423-Infinity",
      id1: "CVE-2013-2423",
      id2: "Infinity",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2423-Nuclear 3.x",
      id1: "CVE-2013-2423",
      id2: "Nuclear 3.x",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2423-Safe Pack",
      id1: "CVE-2013-2423",
      id2: "Safe Pack",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2423-Crimeboss",
      id1: "CVE-2013-2423",
      id2: "Crimeboss",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2423-Sakura",
      id1: "CVE-2013-2423",
      id2: "Sakura",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2423-Rawin",
      id1: "CVE-2013-2423",
      id2: "Rawin",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2424",
      type: "node",
      t: "CVE-2013-2424",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-2424", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2424-SweetOrange",
      id1: "CVE-2013-2424",
      id2: "SweetOrange",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460",
      type: "node",
      t: "CVE-2013-2460",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-2460", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460-Flash",
      id1: "CVE-2013-2460",
      id2: "Flash",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460-Infinity",
      id1: "CVE-2013-2460",
      id2: "Infinity",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460-Niteris",
      id1: "CVE-2013-2460",
      id2: "Niteris",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460-Nuclear 3.x",
      id1: "CVE-2013-2460",
      id2: "Nuclear 3.x",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460-Styx",
      id1: "CVE-2013-2460",
      id2: "Styx",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460-SweetOrange",
      id1: "CVE-2013-2460",
      id2: "SweetOrange",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460-Redkit 2.x",
      id1: "CVE-2013-2460",
      id2: "Redkit 2.x",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460-Blackhole (last)*",
      id1: "CVE-2013-2460",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2460-Sakura",
      id1: "CVE-2013-2460",
      id2: "Sakura",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2463",
      type: "node",
      t: "CVE-2013-2463",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-2463", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2463-Magnitude",
      id1: "CVE-2013-2463",
      id2: "Magnitude",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2463-Glazunov",
      id1: "CVE-2013-2463",
      id2: "Glazunov",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465",
      type: "node",
      t: "CVE-2013-2465",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-2465", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-Bleeding life",
      id1: "CVE-2013-2465",
      id2: "Bleeding life",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-Fiesta",
      id1: "CVE-2013-2465",
      id2: "Fiesta",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-GongDa",
      id1: "CVE-2013-2465",
      id2: "GongDa",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-Infinity",
      id1: "CVE-2013-2465",
      id2: "Infinity",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-LightsOut",
      id1: "CVE-2013-2465",
      id2: "LightsOut",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-Niteris",
      id1: "CVE-2013-2465",
      id2: "Niteris",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-Nuclear",
      id1: "CVE-2013-2465",
      id2: "Nuclear",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-Rig",
      id1: "CVE-2013-2465",
      id2: "Rig",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-Redkit Light",
      id1: "CVE-2013-2465",
      id2: "Redkit Light",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-White Lotus",
      id1: "CVE-2013-2465",
      id2: "White Lotus",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2465-LightsOut",
      id1: "CVE-2013-2465",
      id2: "LightsOut",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2471",
      type: "node",
      t: "CVE-2013-2471",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-2471", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2471-Magnitude",
      id1: "CVE-2013-2471",
      id2: "Magnitude",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2471-Nuclear",
      id1: "CVE-2013-2471",
      id2: "Nuclear",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2471-SweetOrange",
      id1: "CVE-2013-2471",
      id2: "SweetOrange",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2471-Redkit 2.x",
      id1: "CVE-2013-2471",
      id2: "Redkit 2.x",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2471-Blackhole (last)*",
      id1: "CVE-2013-2471",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2471-Sakura",
      id1: "CVE-2013-2471",
      id2: "Sakura",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2471-Glazunov",
      id1: "CVE-2013-2471",
      id2: "Glazunov",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-2551",
      type: "node",
      t: "CVE-2013-2551",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-2551", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Angler",
      id1: "CVE-2013-2551",
      id2: "Angler",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Archie",
      id1: "CVE-2013-2551",
      id2: "Archie",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Astrum",
      id1: "CVE-2013-2551",
      id2: "Astrum",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Fiesta",
      id1: "CVE-2013-2551",
      id2: "Fiesta",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Flash",
      id1: "CVE-2013-2551",
      id2: "Flash",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Infinity",
      id1: "CVE-2013-2551",
      id2: "Infinity",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Magnitude",
      id1: "CVE-2013-2551",
      id2: "Magnitude",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Niteris",
      id1: "CVE-2013-2551",
      id2: "Niteris",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Nuclear",
      id1: "CVE-2013-2551",
      id2: "Nuclear",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Nuclear 3.x",
      id1: "CVE-2013-2551",
      id2: "Nuclear 3.x",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-NullHole",
      id1: "CVE-2013-2551",
      id2: "NullHole",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Rig",
      id1: "CVE-2013-2551",
      id2: "Rig",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-SweetOrange",
      id1: "CVE-2013-2551",
      id2: "SweetOrange",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-Redkit 2.x",
      id1: "CVE-2013-2551",
      id2: "Redkit 2.x",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-FlashPack (child of SafePack / CritXPack/ Vintage Pack)",
      id1: "CVE-2013-2551",
      id2: "FlashPack (child of SafePack / CritXPack/ Vintage Pack)",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2551-White Lotus",
      id1: "CVE-2013-2551",
      id2: "White Lotus",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-2883",
      type: "node",
      t: "CVE-2013-2883",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-2883", product: "chrome", type: "cve" },
      c: "#4daf4a",
    },
    {
      id: "CVE-2013-2883-Nuclear",
      id1: "CVE-2013-2883",
      id2: "Nuclear",
      type: "link",
      d: { product: "chrome" },
      c: "#4daf4a",
    },
    {
      id: "CVE-2013-3897",
      type: "node",
      t: "CVE-2013-3897",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-3897", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-3897-Sednit",
      id1: "CVE-2013-3897",
      id2: "Sednit",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-3918 ",
      type: "node",
      t: "CVE-2013-3918 ",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-3918", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-3918 -Nuclear 3.x",
      id1: "CVE-2013-3918 ",
      id2: "Nuclear 3.x",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2013-5329",
      type: "node",
      t: "CVE-2013-5329",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-5329", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2013-5329-Angler",
      id1: "CVE-2013-5329",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2013-7331",
      type: "node",
      t: "CVE-2013-7331",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-7331", product: "windows", type: "cve" },
      c: "#999999",
    },
    {
      id: "CVE-2013-7331-Nuclear",
      id1: "CVE-2013-7331",
      id2: "Nuclear",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2013-7331-Rig",
      id1: "CVE-2013-7331",
      id2: "Rig",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2014-0322",
      type: "node",
      t: "CVE-2014-0322",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-0322", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-0322-Angler",
      id1: "CVE-2014-0322",
      id2: "Angler",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-0322-Astrum",
      id1: "CVE-2014-0322",
      id2: "Astrum",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-0322-Flash",
      id1: "CVE-2014-0322",
      id2: "Flash",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-0322-Infinity",
      id1: "CVE-2014-0322",
      id2: "Infinity",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-0322-Rig",
      id1: "CVE-2014-0322",
      id2: "Rig",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-0322-SweetOrange",
      id1: "CVE-2014-0322",
      id2: "SweetOrange",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-0497",
      type: "node",
      t: "CVE-2014-0497",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-0497", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0497-Angler",
      id1: "CVE-2014-0497",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0497-Archie",
      id1: "CVE-2014-0497",
      id2: "Archie",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0497-Fiesta",
      id1: "CVE-2014-0497",
      id2: "Fiesta",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0497-Flash",
      id1: "CVE-2014-0497",
      id2: "Flash",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0497-Rig",
      id1: "CVE-2014-0497",
      id2: "Rig",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0497-SweetOrange",
      id1: "CVE-2014-0497",
      id2: "SweetOrange",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0502",
      type: "node",
      t: "CVE-2014-0502",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-0502", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0502-Infinity",
      id1: "CVE-2014-0502",
      id2: "Infinity",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515",
      type: "node",
      t: "CVE-2014-0515",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-0515", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-Hanjuan",
      id1: "CVE-2014-0515",
      id2: "Hanjuan",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-Angler",
      id1: "CVE-2014-0515",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-Archie",
      id1: "CVE-2014-0515",
      id2: "Archie",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-Astrum",
      id1: "CVE-2014-0515",
      id2: "Astrum",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-Bleeding life",
      id1: "CVE-2014-0515",
      id2: "Bleeding life",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-CkVip",
      id1: "CVE-2014-0515",
      id2: "CkVip",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-Flash",
      id1: "CVE-2014-0515",
      id2: "Flash",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-Niteris",
      id1: "CVE-2014-0515",
      id2: "Niteris",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-Nuclear",
      id1: "CVE-2014-0515",
      id2: "Nuclear",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-NullHole",
      id1: "CVE-2014-0515",
      id2: "NullHole",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-Rig",
      id1: "CVE-2014-0515",
      id2: "Rig",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0515-SweetOrange",
      id1: "CVE-2014-0515",
      id2: "SweetOrange",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0556",
      type: "node",
      t: "CVE-2014-0556",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-0556", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0556-Fiesta",
      id1: "CVE-2014-0556",
      id2: "Fiesta",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0556-Nuclear",
      id1: "CVE-2014-0556",
      id2: "Nuclear",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0569",
      type: "node",
      t: "CVE-2014-0569",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-0569", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0569-Archie",
      id1: "CVE-2014-0569",
      id2: "Archie",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0569-Fiesta",
      id1: "CVE-2014-0569",
      id2: "Fiesta",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0569-Flash",
      id1: "CVE-2014-0569",
      id2: "Flash",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0569-Niteris",
      id1: "CVE-2014-0569",
      id2: "Niteris",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0569-NullHole",
      id1: "CVE-2014-0569",
      id2: "NullHole",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0569-Rig",
      id1: "CVE-2014-0569",
      id2: "Rig",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-0569-SweetOrange",
      id1: "CVE-2014-0569",
      id2: "SweetOrange",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-1776",
      type: "node",
      t: "CVE-2014-1776",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-1776", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-1776-Angler",
      id1: "CVE-2014-1776",
      id2: "Angler",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-1776-Infinity",
      id1: "CVE-2014-1776",
      id2: "Infinity",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-1776-Sednit",
      id1: "CVE-2014-1776",
      id2: "Sednit",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2014-6332",
      type: "node",
      t: "CVE-2014-6332",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-6332", product: "windows", type: "cve" },
      c: "#999999",
    },
    {
      id: "CVE-2014-6332-Archie",
      id1: "CVE-2014-6332",
      id2: "Archie",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2014-6332-CkVip",
      id1: "CVE-2014-6332",
      id2: "CkVip",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2014-6332-Neutrino",
      id1: "CVE-2014-6332",
      id2: "Neutrino",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2014-6332-SweetOrange",
      id1: "CVE-2014-6332",
      id2: "SweetOrange",
      type: "link",
      d: { product: "windows" },
      c: "#999999",
    },
    {
      id: "CVE-2014-8439",
      type: "node",
      t: "CVE-2014-8439",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-8439", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-8439-Angler",
      id1: "CVE-2014-8439",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-8439-Astrum",
      id1: "CVE-2014-8439",
      id2: "Astrum",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-8439-Magnitude",
      id1: "CVE-2014-8439",
      id2: "Magnitude",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-8439-Nuclear",
      id1: "CVE-2014-8439",
      id2: "Nuclear",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-8440",
      type: "node",
      t: "CVE-2014-8440",
      d: { url: "http://www.cvedetails.com/cve/CVE-2014-8440", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2014-8440-Angler",
      id1: "CVE-2014-8440",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0310",
      type: "node",
      t: "CVE-2015-0310",
      d: { url: "http://www.cvedetails.com/cve/CVE-2015-0310", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0310-Angler",
      id1: "CVE-2015-0310",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0311",
      type: "node",
      t: "CVE-2015-0311",
      d: { url: "http://www.cvedetails.com/cve/CVE-2015-0311", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0311-Angler",
      id1: "CVE-2015-0311",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0311-Niteris",
      id1: "CVE-2015-0311",
      id2: "Niteris",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0311-Nuclear",
      id1: "CVE-2015-0311",
      id2: "Nuclear",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0313",
      type: "node",
      t: "CVE-2015-0313",
      d: { url: "http://www.cvedetails.com/cve/CVE-2015-0313", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0313-Hanjuan",
      id1: "CVE-2015-0313",
      id2: "Hanjuan",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0313-Angler",
      id1: "CVE-2015-0313",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0336",
      type: "node",
      t: "CVE-2015-0336",
      d: { url: "http://www.cvedetails.com/cve/CVE-2015-0336", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0336-Angler",
      id1: "CVE-2015-0336",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0336-Magnitude",
      id1: "CVE-2015-0336",
      id2: "Magnitude",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0336-Neutrino",
      id1: "CVE-2015-0336",
      id2: "Neutrino",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0336-Niteris",
      id1: "CVE-2015-0336",
      id2: "Niteris",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0336-Nuclear",
      id1: "CVE-2015-0336",
      id2: "Nuclear",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0359 ",
      type: "node",
      t: "CVE-2015-0359 ",
      d: { url: "http://www.cvedetails.com/cve/CVE-2015-0359", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0359 -Angler",
      id1: "CVE-2015-0359 ",
      id2: "Angler",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0359 -Fiesta",
      id1: "CVE-2015-0359 ",
      id2: "Fiesta",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0359 -Magnitude",
      id1: "CVE-2015-0359 ",
      id2: "Magnitude",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0359 -Nuclear",
      id1: "CVE-2015-0359 ",
      id2: "Nuclear",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2015-0359 -Rig",
      id1: "CVE-2015-0359 ",
      id2: "Rig",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2010-0806 ",
      type: "node",
      t: "CVE-2010-0806 ",
      d: { url: "http://www.cvedetails.com/cve/CVE-2010-0806", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2010-0806 -Net Boom NB Exploiter",
      id1: "CVE-2010-0806 ",
      id2: "Net Boom NB Exploiter",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2010-0806 -Sakura",
      id1: "CVE-2010-0806 ",
      id2: "Sakura",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2010-0842",
      type: "node",
      t: "CVE-2010-0842",
      d: { url: "http://www.cvedetails.com/cve/CVE-2010-0842", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2010-0842-Sakura",
      id1: "CVE-2010-0842",
      id2: "Sakura",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2010-3962",
      type: "node",
      t: "CVE-2010-3962",
      d: { url: "http://www.cvedetails.com/cve/CVE-2010-3962", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2010-3962-Net Boom NB Exploiter",
      id1: "CVE-2010-3962",
      id2: "Net Boom NB Exploiter",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2011-0611",
      type: "node",
      t: "CVE-2011-0611",
      d: { url: "http://www.cvedetails.com/cve/CVE-2011-0611", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2011-0611-Net Boom NB Exploiter",
      id1: "CVE-2011-0611",
      id2: "Net Boom NB Exploiter",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2011-1255",
      type: "node",
      t: "CVE-2011-1255",
      d: { url: "http://www.cvedetails.com/cve/CVE-2011-1255", product: "ie", type: "cve" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2011-1255-Net Boom NB Exploiter",
      id1: "CVE-2011-1255",
      id2: "Net Boom NB Exploiter",
      type: "link",
      d: { product: "ie" },
      c: "#1f78b4",
    },
    {
      id: "CVE-2011-2110",
      type: "node",
      t: "CVE-2011-2110",
      d: { url: "http://www.cvedetails.com/cve/CVE-2011-2110", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2011-2110-Net Boom NB Exploiter",
      id1: "CVE-2011-2110",
      id2: "Net Boom NB Exploiter",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2011-2140",
      type: "node",
      t: "CVE-2011-2140",
      d: { url: "http://www.cvedetails.com/cve/CVE-2011-2140", product: "flash", type: "cve" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2011-2140-Net Boom NB Exploiter",
      id1: "CVE-2011-2140",
      id2: "Net Boom NB Exploiter",
      type: "link",
      d: { product: "flash" },
      c: "#e41a1c",
    },
    {
      id: "CVE-2012-4681",
      type: "node",
      t: "CVE-2012-4681",
      d: { url: "http://www.cvedetails.com/cve/CVE-2012-4681", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-4681-Nuclear 2.2",
      id1: "CVE-2012-4681",
      id2: "Nuclear 2.2",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-4681-Neo Sploit",
      id1: "CVE-2012-4681",
      id2: "Neo Sploit",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-4681-Blackhole (last)*",
      id1: "CVE-2012-4681",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-4681-Crimeboss",
      id1: "CVE-2012-4681",
      id2: "Crimeboss",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-4681-Sakura",
      id1: "CVE-2012-4681",
      id2: "Sakura",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-5076",
      type: "node",
      t: "CVE-2012-5076",
      d: { url: "http://www.cvedetails.com/cve/CVE-2012-5076", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-5076-Nuclear 2.2",
      id1: "CVE-2012-5076",
      id2: "Nuclear 2.2",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-5076-Blackhole (last)*",
      id1: "CVE-2012-5076",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2012-5076-Sakura",
      id1: "CVE-2012-5076",
      id2: "Sakura",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0431",
      type: "node",
      t: "CVE-2013-0431",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-0431", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0431-Popads",
      id1: "CVE-2013-0431",
      id2: "Popads",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-0431-Blackhole (last)*",
      id1: "CVE-2013-0431",
      id2: "Blackhole (last)*",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-1488",
      type: "node",
      t: "CVE-2013-1488",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-1488", product: "java", type: "cve" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-1488-Crimeboss",
      id1: "CVE-2013-1488",
      id2: "Crimeboss",
      type: "link",
      d: { product: "java" },
      c: "#FFD903",
    },
    {
      id: "CVE-2013-1690",
      type: "node",
      t: "CVE-2013-1690",
      d: { url: "http://www.cvedetails.com/cve/CVE-2013-1690", product: "firefox", type: "cve" },
      c: "#ff7f00",
    },
    {
      id: "CVE-2013-1690-LightsOut",
      id1: "CVE-2013-1690",
      id2: "LightsOut",
      type: "link",
      d: { product: "firefox" },
      c: "#ff7f00",
    },
  ],
};
<!doctype html>
<html lang="en" style="background-color: #2d383f">
  <head>
    <meta charset="utf-8" />
    <title>Filtering Basics</title>
    <link rel="stylesheet" type="text/css" href="@ci/theme/kl/css/keylines.css" />
    <link rel="stylesheet" type="text/css" href="@ci/theme/kl/css/minimalsdk.css" />
    <link rel="stylesheet" type="text/css" href="@ci/theme/kl/css/sdk-layout.css" />
    <link rel="stylesheet" type="text/css" href="@ci/theme/kl/css/demo.css" />
    <link rel="stylesheet" href="./style.css" />
  </head>
  <body>
    <div id="klchart" class="klchart"></div>
    <script type="module" src="./code.js"></script>
  </body>
</html>
.toggle-content::-webkit-scrollbar {
  display: none;
}
.toggle-content {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
dl {
  margin-bottom: 50px;
}

dl dt {
  color: #fff;
  float: left;
  font-weight: bold;
  margin-left: 0px;
  margin-right: 10px;
  padding: 3px;
  width: 22px;
  height: 22px;
  -webkit-border-radius: 22px;
  -moz-border-radius: 22px;
  border-radius: 22px;
  line-height: 12px;
}

dl dd {
  margin: 2px 0;
  padding: 5px 0;
  line-height: 12px;
  font-size: 12px;
}

/* Legend Colours */
.firefox dt {
  background-color: #ff7f00;
}
.chrome dt {
  background-color: #4daf4a;
}
.ie dt {
  background-color: #1f78b4;
}
.flash dt {
  background-color: #e41a1c;
}
.silverlight dt {
  background-color: #a6cee3;
}
.java dt {
  background-color: #ffd903;
}
.windows dt {
  background-color: #999999;
}
.php dt {
  background-color: #a65628;
}
.adobe dt {
  background-color: #f781bf;
}

.highlight {
  font-weight: bold;
}

#htmlModal {
  -webkit-touch-callout: text;
  -webkit-user-select: text;
  -khtml-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

#tooltip.popover {
  max-width: 500px;
}

.reduce-bottom-margin {
  margin-bottom: -55px;
}
.tab-content-panel:-webkit-scrollbar {
  display: none;
}

.increase-bottom-margin {
  margin-bottom: 25px;
}

dl input {
  margin-top: 5px;
}

@media (max-width: 979px) {
  dl dt {
    margin-left: -4px;
    margin-right: 3px;
  }
}

@media (max-width: 767px) {
  label dd {
    max-width: 79.5px;
    margin-top: -5px;
  }
  .half-span h5 {
    height: 40px;
  }
}

Terms of use

These terms do not alter or supersede any existing agreements between you (or your employer) and us.

By accessing or using any Content you agree to be bound by these Terms of Use. Please review these terms carefully before using the website.

The contents of this website, including but not limited to any text, code samples, API references, schemas, interactive tools, and other materials (collectively, the 'Content'), are made available for informational and internal evaluation purposes only. All intellectual property rights in the Content are reserved. No licence is granted to use the Content for any commercial purpose, or to copy, distribute, modify, reverse-engineer, or incorporate any part of the Content into any product or service, without our prior written consent.

This Content is provided “as is” and “as available,” without any representations, warranties, or guarantees of any kind, whether express or implied, including but not limited to implied warranties of merchantability, fitness for a particular purpose, non-infringement, or accuracy. To the fullest extent permitted by applicable law, we expressly exclude and disclaim all implied warranties, conditions, and other terms that might otherwise be implied.

We disclaim all liability for any loss or damage, whether direct, indirect, incidental, consequential, or otherwise, arising from any reliance placed on the Content or from your use of it, to the fullest extent permitted by applicable law. By continuing to access or use the Content, you acknowledge and agree to these terms.