puiu91
11/7/2015 - 11:29 PM

table sort by google

table sort by google

function init() {
    stickyHeader = document.getElementById("sticky"), filterPanel = document.getElementById("filterPanel"), mainTable = document.getElementById("main-table"), document.getElementById("tab-portrait").addEventListener("click", toggleOrientation), document.getElementById("tab-landscape").addEventListener("click", toggleOrientation), document.addEventListener("keyup", keyupEventHandler), document.addEventListener("keydown", keydownEventHandler), document.getElementById("button-info").addEventListener("click", toggleDetailView), document.getElementById("button-close").addEventListener("click", toggleDetailView), unitCM = document.getElementById("unit-cm"), unitIN = document.getElementById("unit-in"), unitCM.addEventListener("click", toggleCMIN), unitIN.addEventListener("click", toggleCMIN);
    for (var e = filterPanel.getElementsByClassName("sort"), t = 0; t < e.length; t++) e[t].addEventListener("click", sortDevicesTable);
    return initTableScroll(), initTooltips(), window.devicesData ? void populateData(window.devicesData) : void loadJSON(function(e) {
        var t = JSON.parse(e);
        populateData(t)
    })
}

function loadJSON(e) {
    var t = new XMLHttpRequest;
    t.overrideMimeType("application/json"), t.open("GET", "data.json", !0), t.onreadystatechange = function() {
        4 == t.readyState && "200" == t.status && e(t.responseText)
    }, t.send(null)
}

function keyupEventHandler(e) {
    null !== selectedDevice ? 39 == e.keyCode || 40 == e.keyCode && null !== selectedDevice.nextSibling ? selectedDevice.nextSibling.click() : 37 == e.keyCode || 38 == e.keyCode && null !== selectedDevice.previousSibling ? selectedDevice.previousSibling.click() : 27 == e.keyCode && selectedDevice.click() : window.innerWidth < 1400 && !document.body.classList.contains("device") && document.body.classList.remove("detailview")
}

function keydownEventHandler(e) {
    [32, 37, 38, 39, 40].indexOf(e.keyCode) > -1 && null !== selectedDevice && e.preventDefault()
}

function toggleOrientation() {
    if (null !== selectedDevice) {
        var e = this,
            t = selectedDevice.getAttribute("data-index"),
            n = devices[t];
        e.classList.contains("selected") || (document.getElementById("device-tabs").getElementsByClassName("selected")[0].classList.remove("selected"), e.classList.add("selected"), "portrait" == e.getAttribute("name") ? document.getElementById("info-panel").classList.remove("landscape") : document.getElementById("info-panel").classList.add("landscape")), document.getElementById("info-panel").classList.contains("landscape") ? (document.getElementById("info-panel").setAttribute("columns", n.columnsl), document.getElementById("value-columns").textContent = n.columnsl, document.getElementById("value-toolbar").textContent = n.toolbarunitl + " dp", document.getElementById("value-gutter").textContent = n.gutterl + " dp", document.getElementById("value-side-by-side").textContent = n.sidebysidel) : (document.getElementById("info-panel").setAttribute("columns", n.columnsp), document.getElementById("value-columns").textContent = n.columnsp, document.getElementById("value-toolbar").textContent = n.toolbarunitp + " dp", document.getElementById("value-gutter").textContent = n.gutterl + " dp", document.getElementById("value-side-by-side").textContent = n.sidebysidep), document.getElementById("value-pxin").textContent = n.screenppi, document.getElementById("value-dpin").textContent = n.screendpi, document.getElementById("value-ui-depth").textContent = n.uidepth + " dp", document.getElementById("value-screen-dist").textContent = n.viewdistance + '"', document.getElementById("value-screen-width").textContent = n.degscreenw + "°", document.getElementById("value-screeh-ppd").textContent = n.screenppd + " pp°", document.getElementById("value-screen-dpa").textContent = n.screendpa + " dp°", document.getElementById("value-lg-touch").textContent = n.touchsizel + " dp", document.getElementById("value-sm-touch").textContent = n.touchsizes + "";
        var i = 0,
            l = 0,
            s = document.getElementById("grid");
        "handset" == n.formfactor.toLowerCase() || "tablet" == n.formfactor.toLowerCase() ? "Portrait" != n.screendefaultorientation ? (n.dpscreenh / n.dpscreenw > 100 / 172 ? (l = 100, i = 100 * n.dpscreenw / n.dpscreenh) : (i = 172, l = 172 * n.dpscreenh / n.dpscreenw), "portrait" == e.getAttribute("name") ? (s.style.width = l + "px", s.style.height = i + "px", s.style.marginLeft = "-" + l / 2 + "px", s.style.marginTop = "-" + i / 2 + "px") : (s.style.width = i + "px", s.style.height = l + "px", s.style.marginLeft = "-" + i / 2 + "px", s.style.marginTop = "-" + l / 2 + "px")) : (n.dpscreenw / n.dpscreenh > 100 / 172 ? (i = 100, l = 100 * n.dpscreenh / n.dpscreenw) : (l = 172, i = 172 * n.dpscreenw / n.dpscreenh), "portrait" == e.getAttribute("name") ? (s.style.width = i + "px", s.style.height = l + "px", s.style.marginLeft = "-" + i / 2 + "px", s.style.marginTop = "-" + l / 2 + "px") : (s.style.width = l + "px", s.style.height = i + "px", s.style.marginLeft = "-" + l / 2 + "px", s.style.marginTop = "-" + i / 2 + "px")) : ("desktop" == n.formfactor.toLowerCase() || "laptop" == n.formfactor.toLowerCase()) && (n.dpscreenw / n.dpscreenh > 158 / 88 ? (i = 158, l = 158 * n.dpscreenh / n.dpscreenw) : (l = 88, i = 88 * n.dpscreenw / n.dpscreenh), s.style.width = i + "px", s.style.height = l + "px", s.style.marginLeft = "-" + i / 2 + "px", s.style.marginTop = "-" + l / 2 + "px")
    }
}

function populateData(e) {
    var t = e.feed.entry;
    if (t && !(t.length < 1)) {
        var n = function(e, t) {
                return e[t] ? e[t].trim() : ""
            },
            i = t[0];
        tooltipByName.columns = n(i, "columnsl"), tooltipByName.gutter = n(i, "gutterl"), tooltipByName.keylinel = n(i, "keylinel"), tooltipByName.sidebyside = n(i, "sidebysidel"), tooltipByName.toolbarunit = n(i, "toolbarunitl"), tooltipByName.touchsize = n(i, "touchsizel"), tooltipByName.uidepth = n(i, "uidepth"), tooltipByName.viewdistance = n(i, "viewdistance"), tooltipByName.degscreenw = n(i, "degscreenw"), tooltipByName.screencanrotate = n(i, "screencanrotate"), tooltipByName.screendefaultorientation = n(i, "screendefaultorientation"), tooltipByName.screendpa = n(i, "screendpa"), tooltipByName.screendpi = n(i, "screendpi"), tooltipByName.screenppd = n(i, "screenppd"), tooltipByName.screenppi = n(i, "screenppi"), tooltipByName.screendpa = n(i, "screendpa"), tooltipByName.density = n(i, "density"), tooltipByName.densitybucket = n(i, "densitybucket"), tooltipByName.densityoversampling = n(i, "densityoversampling"), tooltipByName.pxscreenw = n(i, "pxscreenw"), tooltipByName.pxscreenh = n(i, "pxscreenh"), tooltipByName.dpscreenw = n(i, "dpscreenw"), tooltipByName.dpscreenh = n(i, "dpscreenh"), tooltipByName.inscreend = n(i, "inscreend"), tooltipByName.inscreenw = n(i, "inscreenw"), tooltipByName.inscreenh = n(i, "inscreenh"), tooltipByName.screenratio = n(i, "screenratio");
        for (var l = 3, s = l; s < t.length; s++) {
            var o = t[s],
                c = (t[s].title, s - l),
                r = new Device;
            r.device = n(o, "device"), r.platform = n(o, "platform"), r.formfactor = n(o, "formfactor"), r.devicesize = n(o, "devicesize"), r.columnsl = n(o, "columnsl"), r.columnsp = n(o, "columnsp"), r.gutterl = n(o, "gutterl"), r.keylinel = n(o, "keylinel"), r.sidebysidel = n(o, "sidebysidel"), r.sidebysidep = n(o, "sidebysidep"), r.toolbarunitl = n(o, "toolbarunitl"), r.toolbarunitp = n(o, "toolbarunitp"), r.touchsizel = n(o, "touchsizel"), r.touchsizes = n(o, "touchsizes"), r.uidepth = n(o, "uidepth"), r.viewdistance = n(o, "viewdistance"), r.degscreenw = n(o, "degscreenw"), r.screencanrotate = n(o, "screencanrotate"), r.screendefaultorientation = n(o, "screendefaultorientation"), r.screendpa = n(o, "screendpa"), r.screendpi = n(o, "screendpi"), r.screenppd = n(o, "screenppd"), r.screenppi = n(o, "screenppi"), r.screendpa = n(o, "screendpa"), r.density = n(o, "density"), r.densitybucket = n(o, "densitybucket"), r.densityoversampling = n(o, "densityoversampling"), r.pxscreenw = parseInt(n(o, "pxscreenw").replace(/\D/g, ""), 10), r.pxscreenh = parseInt(n(o, "pxscreenh").replace(/\D/g, ""), 10), r.dpscreenw = parseInt(n(o, "dpscreenw").replace(/\D/g, ""), 10), r.dpscreenh = parseInt(n(o, "dpscreenh").replace(/\D/g, ""), 10), r.inscreend = n(o, "inscreend"), r.inscreenw = n(o, "inscreenw"), r.inscreenh = n(o, "inscreenh"), r.screenratio = screenratioNumber(n(o, "screenratio")), r.screenratiolabel = n(o, "screenratio"), r.index = c, devices.push(r)
        }
        createTable(sortDevices(devices, initialSortKey, initialSortOrder))
    }
}

function exitDetailView() {
    null === selectedDevice ? document.body.classList.remove("detailview") : selectedDevice.click()
}

function initTooltips() {
    for (var e = document.querySelectorAll(".item"), t = 0; t < e.length; t++) {
        var n = e[t];
        n.hasAttribute("tooltip") && (n.addEventListener("mouseover", showTooltip), n.addEventListener("mouseleave", hideTooltip))
    }
}

function getOffsetLeft(e) {
    var t = 0;
    do isNaN(e.offsetLeft) || (t += e.offsetLeft); while (null !== (e = e.offsetParent));
    return t
}

function getOffsetTop(e) {
    var t = 0;
    do isNaN(e.offsetTop) || (t += e.offsetTop); while (null !== (e = e.offsetParent));
    return t
}

function hideTooltip() {
    var e = document.getElementById("tooltip"),
        t = this.getAttribute("tooltip");
    e.getAttribute("name") == t && e.classList.remove("fadeIn")
}

function showTooltip() {
    var e = document.getElementById("tooltip"),
        t = this.getAttribute("tooltip");
    e.setAttribute("name", t), e.textContent = tooltipByName[t], e.style.left = getOffsetLeft(this) + 16, e.style.top = getOffsetTop(this) + 44 - document.getElementById("info-panel-scroller").scrollTop, e.classList.add("fadeIn")
}

function initTableScroll() {
    mainTable.onscroll = function() {
        var e = mainTable.scrollLeft;
        filterPanel.scrollLeft = e
    }, document.onscroll = function() {
        var e = document.documentElement,
            t = (window.pageYOffset || e.scrollTop) - (e.clientTop || 0);
        t > 192 && !stickyHeader.classList.contains("stuck") ? stickyHeader.className = "stuck" : 192 > t && stickyHeader.classList.contains("stuck") && (stickyHeader.className = "")
    }
}

function sortDevices(e, t, n) {
    var i = e.slice();
    return i.sort(function(e, i) {
        return e[t] == i[t] ? compareValueByName("device", "ascend", e, i) : compareValueByName(t, n, e, i)
    }), i
}

function sortDevicesTable() {
    var e, t = null,
        n = null,
        i = document.querySelector(".sorted");
    i && (console.log(i), t = i.getAttribute("name"), n = i.getAttribute("data-sort-direction"), i.classList.remove("sorted"));
    var l = "ascend",
        s = this.getAttribute("name");
    s != t ? l = "ascend" : n && "ascend" == n && (l = "descend"), ga("send", "event", "sort", s), e = this;
    do {
        if (e.classList.contains("td")) {
            e.classList.add("sorted"), e.setAttribute("name", s), e.setAttribute("data-sort-direction", l);
            break
        }
        e = e.parentNode
    } while (e);
    createTable(sortDevices(devices, s, l))
}

function compareValueByName(e, t, n, i) {
    var l = ["inscreend", "screenratio", "dpscreenw", "dpscreenh", "pxscreenw", "pxscreenh", "density"],
        s = n[e],
        o = i[e];
    if (l.indexOf(e) > -1) {
        var c = parseFloat(s),
            r = parseFloat(o);
        return "ascend" == t ? c - r : r - c
    }
    return s = n[e].toLowerCase(), o = i[e].toLowerCase(), "ascend" == t ? o > s ? -1 : s > o ? 1 : 0 : o > s ? 1 : s > o ? -1 : 0
}

function screenratioNumber(e) {
    return e.split(":")[0] / e.split(":")[1]
}

function toggleCMIN() {
    var e = "in";
    unitIN.classList.contains("selected") ? (unitCM.classList.add("selected"), unitIN.classList.remove("selected"), e = "cm") : (unitIN.classList.add("selected"), unitCM.classList.remove("selected"));
    for (var t = mainTable.querySelectorAll(".device-row"), n = 0; n < t.length; n++) {
        var i = t[n],
            l = i.getAttribute("data-index"),
            s = devices[l],
            o = i.querySelector(".screen-size");
        "in" == e ? (o.querySelector(".value-size").textContent = s.inscreend, o.querySelector(".value-width").textContent = s.inscreenh, o.querySelector(".value-height").textContent = s.inscreenw) : (o.querySelector(".value-size").textContent = cmFromInches(s.inscreend), o.querySelector(".value-width").textContent = cmFromInches(s.inscreenh), o.querySelector(".value-height").textContent = cmFromInches(s.inscreenw)), changeUnitsInCell(o, e)
    }
}

function cmFromInches(e) {
    var t = 2.54 * parseFloat(e);
    return t.toPrecision(t > 10 ? 3 : 2)
}

function changeUnitsInCell(e, t) {
    for (var n = e.querySelectorAll(".unit"), i = 0; i < n.length; i++) n[i].textContent = t
}

function createDeviceRow(e) {
    var t = e.formfactor.toLowerCase(),
        n = document.getElementById("device-row-template").cloneNode(!0);
    n.className = "tr device-row", n.removeAttribute("id"), n.setAttribute("data-index", e.index), n.setAttribute("data-form-factor", t);
    var i = n.querySelector(".type"),
        l = i.querySelector(".material-icons");
    l.className = "material-icons " + t, l.textContent = formFactorIconName[t], n.querySelector(".device").textContent = e.device, n.querySelector(".platform").textContent = e.platform;
    var s = n.querySelector(".screen-size");
    s.querySelector(".value-size").textContent = e.inscreend, s.querySelector(".value-width").textContent = e.inscreenh, s.querySelector(".value-height").textContent = e.inscreenw;
    var o = "in";
    document.getElementById("unit-in").classList.contains("selected") || (o = "cm"), changeUnitsInCell(s, o);
    var c = n.querySelector(".aspect-ratio"),
        r = e.screenratiolabel.split(":")[0].trim(),
        a = e.screenratiolabel.split(":")[1].trim();
    c.querySelector(".value-width").textContent = r, c.querySelector(".value-height").textContent = a;
    var d = n.querySelector(".screen-dp");
    d.querySelector(".value-width").textContent = e.dpscreenw, d.querySelector(".value-height").textContent = e.dpscreenh;
    var u = n.querySelector(".screen-px");
    u.querySelector(".value-width").textContent = e.pxscreenw, u.querySelector(".value-height").textContent = e.pxscreenh;
    var p = n.querySelector(".density");
    return p.querySelector(".value-density").textContent = e.density, p.querySelector(".value-bucket").textContent = e.densitybucket, "" !== e.densityoversampling && (p.querySelector(".value-oversampling").textContent = "(" + e.densityoversampling + ")"), n
}

function createTable(e) {
    for (var t = mainTable.querySelectorAll(".device-row"), n = 0; n < t.length; n++) {
        var i = t[n];
        i.parentNode.removeChild(i)
    }
    for (var l = 0; l < e.length; l++) {
        var s = e[l],
            o = createDeviceRow(s);
        o.addEventListener("click", toggleDetailView), mainTable.appendChild(o)
    }
}

function toggleDetailView() {
    if ("button-info" == this.getAttribute("id")) return document.body.classList.add("detailview"), document.body.classList.remove("device"), void ga("send", "event", "detail", "close");
    if ("button-close" == this.getAttribute("id")) return null !== selectedDevice && (selectedDevice.classList.remove("selected"), selectedDevice = null), document.body.classList.remove("detailview"), void ga("send", "event", "detail", "close");
    null !== selectedDevice && selectedDevice !== this && selectedDevice.classList.remove("selected"), this.classList.toggle("selected");
    var e = this.getAttribute("data-index"),
        t = devices[e],
        n = document.querySelectorAll(".tr.selected");
    n.length > 0 ? (selectedDevice = this, document.getElementById("info-panel").setAttribute("data-device-type", t.formfactor.toLowerCase()), document.getElementById("device-title").textContent = t.device, document.getElementById("tab-" + t.screendefaultorientation.toLowerCase()).click(), document.body.classList.add("device"), document.body.classList.add("detailview")) : (document.getElementById("device-title").textContent = "Information", document.getElementById("info-panel").setAttribute("data-device-type", "info"), selectedDevice = null, document.body.classList.remove("detailview"), document.body.classList.remove("device")), ga("send", "event", "detail", "open")
}
var devices = [],
    stickyHeader = null,
    filterPanel = null,
    mainTable = null,
    unitCM = null,
    unitIN = null,
    selectedDevice = null,
    tooltipByName = {},
    initialSortKey = "platform",
    initialSortOrder = "ascend",
    formFactorIconName = {
        handset: "phone_android",
        tablet: "tablet_android",
        laptop: "laptop",
        watch: "watch",
        desktop: "desktop_mac"
    },
    Device = function() {
        this.slug = null, this.device = null, this.platform = null, this.formfactor = null, this.devicesize = null, this.toolbarunitl = null, this.toolbarunitp = null, this.columnsl = null, this.columnsp = null, this.gutterl = null, this.keylinel = null, this.sidebysidel = null, this.sidebysidep = null, this.touchsizel = null, this.touchsizes = null, this.uidepth = null, this.viewdistance = null, this.screendpa = null, this.screendpi = null, this.screenppd = null, this.screenppi = null, this.screendpa = null, this.degscreenw = null, this.screencanrotate = null, this.screendefaultorientation = null, this.density = null, this.densitybucket = null, this.densityoversampling = null, this.pxscreenw = null, this.pxscreenh = null, this.dpscreenw = null, this.dpscreenh = null, this.inscreend = null, this.inscreenw = null, this.inscreenh = null, this.screenratio = null
    };
window.devicesData = {
    "version": "1.0",
    "encoding": "UTF-8",
    "feed": {
        "xmlns$openSearch": "http://a9.com/-/spec/opensearchrss/1.0/",
        "updated": {
            "$t": "2015-10-27T12:40:54.695Z"
        },
        "title": {
            "type": "text",
            "$t": "Display Resolutions (Public)"
        },
        "openSearch$totalResults": {
            "$t": "64"
        },
        "openSearch$startIndex": {
            "$t": "1"
        },
        "entry": [{
            "title": {
                "type": "text",
                "$t": "Row: 2"
            },
            "device": "",
            "platform": "",
            "devicesize": "",
            "formfactor": "",
            "inscreend": "Physical screen diagonal",
            "inscreenw": "Physical screen width",
            "inscreenh": "Physical screen height",
            "screenratio": "Screen ratio",
            "pxscreenw": "Pixel resolution",
            "pxscreenh": "Pixel resolution",
            "dpscreenw": "Density-independent resolution",
            "dpscreenh": "Density-independent resalution",
            "density": "Density multiplier",
            "densityoversampling": "Oversampling of screen (when scaled for the display)",
            "densitybucket": "Android density bucket",
            "screenppi": "Pixels per inch",
            "screendpi": "Density-independent pixels per inch",
            "screendefaultorientation": "Default orientation of device",
            "screencanrotate": "Device can be rotated",
            "toolbarunitp": "Height of toolbar",
            "toolbarunitl": "Height of toolbar",
            "columnsp": "Number of columns across screen",
            "columnsl": "Number of columns across screen",
            "gutterl": "Gutter width and outer keyline",
            "keylinel": "Inner keyline for text and title alignment",
            "sidebysidel": "Number of horizontally side-by-side views that can be shown on screen ",
            "sidebysidep": "Number of horizontally side-by-side views that can be shown on screen ",
            "uidepth": "Recommended virtual depth of UI",
            "viewdistance": "Estimated distance at which the device is viewed",
            "degscreenw": "Field of view",
            "degscreenh": "",
            "screenppd": "screenPPD",
            "screendpa": "screenDPA",
            "touchsizel": "touchSizeL",
            "touchsizes": "touchSizeS",
            "gutterp": "gutterP"
        }, {
            "title": {
                "type": "text",
                "$t": "Row: 3"
            },
            "device": "",
            "platform": "",
            "devicesize": "Buckets and density",
            "formfactor": "",
            "inscreend": "Dimensions (in / cm)",
            "inscreenw": "",
            "inscreenh": "",
            "screenratio": "",
            "pxscreenw": "Screen",
            "pxscreenh": "",
            "dpscreenw": "",
            "dpscreenh": "",
            "density": "",
            "densityoversampling": "",
            "densitybucket": "",
            "screenppi": "",
            "screendpi": "",
            "screendefaultorientation": "Orientation",
            "screencanrotate": "",
            "toolbarunitp": "Toolbar Unit",
            "toolbarunitl": "",
            "columnsp": "Columns",
            "columnsl": "",
            "gutterl": "Keylines",
            "keylinel": "",
            "sidebysidel": "Side-by-side views (max)",
            "sidebysidep": "",
            "uidepth": "",
            "viewdistance": "Angular resolution",
            "degscreenw": "",
            "degscreenh": "",
            "screenppd": "",
            "screendpa": "",
            "touchsizel": "",
            "touchsizes": "",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Device"
            },
            "device": "Device",
            "platform": "Platform",
            "devicesize": "",
            "formfactor": "Form factor",
            "inscreend": "screen size\n(in)",
            "inscreenw": "width\n(in)",
            "inscreenh": "height\n(in)",
            "screenratio": "",
            "pxscreenw": "Width x Height",
            "pxscreenh": "",
            "dpscreenw": "width\n(dp)",
            "dpscreenh": "height\n(dp)",
            "density": "density",
            "densityoversampling": "Oversample",
            "densitybucket": "bucket",
            "screenppi": "px/in",
            "screendpi": "dp/in",
            "screendefaultorientation": "Default orientation",
            "screencanrotate": "Can Rotate",
            "toolbarunitp": "P",
            "toolbarunitl": "L",
            "columnsp": "P",
            "columnsl": "L",
            "gutterl": "Gutter",
            "keylinel": "Inner keyline",
            "sidebysidel": "L",
            "sidebysidep": "P",
            "uidepth": "ui depth\n(dp)",
            "viewdistance": "Average viewing distance\n(in)",
            "degscreenw": "angular dimensions (deg)",
            "degscreenh": "",
            "screenppd": "angular density (pp°)",
            "screendpa": "angular density (dp°)",
            "touchsizel": "large\ntouch target\n9mm",
            "touchsizes": "small touch target\n7mm",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Android One"
            },
            "device": "Android One",
            "platform": "Android",
            "devicesize": "S",
            "formfactor": "Handset",
            "inscreend": "4.5",
            "inscreenw": "2.2",
            "inscreenh": "3.9",
            "screenratio": "16:9",
            "pxscreenw": "480",
            "pxscreenh": "× 854 ",
            "dpscreenw": "320",
            "dpscreenh": "× 569",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "218",
            "screendpi": "145",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "48",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "40",
            "viewdistance": "11.8",
            "degscreenw": "10.7",
            "degscreenh": "× 18.9°",
            "screenppd": "45.0",
            "screendpa": "30.0",
            "touchsizel": "51",
            "touchsizes": "40",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Asus Zen Watch"
            },
            "device": "Asus Zen Watch",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Watch",
            "inscreend": "1.6",
            "inscreenw": "1.2",
            "inscreenh": "1.2",
            "screenratio": "1:1",
            "pxscreenw": "320",
            "pxscreenh": "× 320 ",
            "dpscreenw": "213",
            "dpscreenh": "× 213",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "278",
            "screendpi": "185",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "4",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "24",
            "viewdistance": "11.8",
            "degscreenw": "5.6",
            "degscreenh": "× 5.6°",
            "screenppd": "57.3",
            "screendpa": "38.2",
            "touchsizel": "66",
            "touchsizes": "51",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Dell Venue 8"
            },
            "device": "Dell Venue 8",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Tablet",
            "inscreend": "8.4",
            "inscreenw": "4.5",
            "inscreenh": "7.1",
            "screenratio": "16:10",
            "pxscreenw": "1600",
            "pxscreenh": "× 2560 ",
            "dpscreenw": "800",
            "dpscreenh": "× 1280",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "359",
            "screendpi": "180",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "104",
            "viewdistance": "17.7",
            "degscreenw": "14.3",
            "degscreenh": "× 22.7°",
            "screenppd": "111.7",
            "screendpa": "55.9",
            "touchsizel": "64",
            "touchsizes": "50",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "HTC One M8"
            },
            "device": "HTC One M8",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "5.0",
            "inscreenw": "2.5",
            "inscreenh": "4.4",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "3.0",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "441",
            "screendpi": "147",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "11.8",
            "degscreenh": "× 20.9°",
            "screenppd": "91.1",
            "screendpa": "30.4",
            "touchsizel": "52",
            "touchsizes": "40",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "HTC One M9"
            },
            "device": "HTC One M9",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "5.0",
            "inscreenw": "2.5",
            "inscreenh": "4.4",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "3.0",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "441",
            "screendpi": "147",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "12.1",
            "degscreenh": "× 21.1°",
            "screenppd": "89.4",
            "screendpa": "29.8",
            "touchsizel": "52",
            "touchsizes": "40",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "LG G Watch"
            },
            "device": "LG G Watch",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Watch",
            "inscreend": "1.7",
            "inscreenw": "1.2",
            "inscreenh": "1.2",
            "screenratio": "1:1",
            "pxscreenw": "280",
            "pxscreenh": "× 280 ",
            "dpscreenw": "187",
            "dpscreenh": "× 187",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "240",
            "screendpi": "160",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "4",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "24",
            "viewdistance": "11.8",
            "degscreenw": "5.7",
            "degscreenh": "× 5.7°",
            "screenppd": "49.5",
            "screendpa": "33.0",
            "touchsizel": "57",
            "touchsizes": "44",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "LG G Watch R"
            },
            "device": "LG G Watch R",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Watch",
            "inscreend": "1.8",
            "inscreenw": "1.3",
            "inscreenh": "1.3",
            "screenratio": "1:1",
            "pxscreenw": "320",
            "pxscreenh": "× 320 ",
            "dpscreenw": "213",
            "dpscreenh": "× 213",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "246",
            "screendpi": "164",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "4",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "24",
            "viewdistance": "11.8",
            "degscreenw": "6.3",
            "degscreenh": "× 6.3°",
            "screenppd": "50.8",
            "screendpa": "33.9",
            "touchsizel": "58",
            "touchsizes": "45",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "LG G2"
            },
            "device": "LG G2",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "5.2",
            "inscreenw": "2.5",
            "inscreenh": "4.5",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "3.0",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "424",
            "screendpi": "141",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "12.3",
            "degscreenh": "× 21.7°",
            "screenppd": "87.7",
            "screendpa": "29.2",
            "touchsizel": "50",
            "touchsizes": "39",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "LG G3"
            },
            "device": "LG G3",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Handset",
            "inscreend": "5.5",
            "inscreenw": "2.7",
            "inscreenh": "4.8",
            "screenratio": "16:9",
            "pxscreenw": "1440",
            "pxscreenh": "× 2560 ",
            "dpscreenw": "480",
            "dpscreenh": "× 853",
            "density": "3.0",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "534",
            "screendpi": "178",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "40",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2",
            "sidebysidep": "1",
            "uidepth": "64",
            "viewdistance": "11.8",
            "degscreenw": "13.0",
            "degscreenh": "× 22.9°",
            "screenppd": "110.6",
            "screendpa": "36.9",
            "touchsizel": "63",
            "touchsizes": "49",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Moto 360"
            },
            "device": "Moto 360",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Watch",
            "inscreend": "1.6",
            "inscreenw": "1.6",
            "inscreenh": "1.4",
            "screenratio": "32:29",
            "pxscreenw": "320",
            "pxscreenh": "× 290 ",
            "dpscreenw": "241",
            "dpscreenh": "× 218",
            "density": "1.3",
            "densityoversampling": "",
            "densitybucket": "tvdpi",
            "screenppi": "205",
            "screendpi": "154",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "4",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "24",
            "viewdistance": "11.8",
            "degscreenw": "7.6",
            "degscreenh": "× 6.9°",
            "screenppd": "42.3",
            "screendpa": "31.8",
            "touchsizel": "55",
            "touchsizes": "42",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Moto G"
            },
            "device": "Moto G",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "4.5",
            "inscreenw": "2.2",
            "inscreenh": "3.9",
            "screenratio": "16:9",
            "pxscreenw": "720",
            "pxscreenh": "× 1280 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "326",
            "screendpi": "163",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "10.7",
            "degscreenh": "× 18.9°",
            "screenppd": "67.5",
            "screendpa": "33.7",
            "touchsizel": "58",
            "touchsizes": "45",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Moto X"
            },
            "device": "Moto X",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "4.7",
            "inscreenw": "2.3",
            "inscreenh": "4.1",
            "screenratio": "16:9",
            "pxscreenw": "720",
            "pxscreenh": "× 1280 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "312",
            "screendpi": "156",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "11.1",
            "degscreenh": "× 19.7°",
            "screenppd": "64.6",
            "screendpa": "32.3",
            "touchsizel": "55",
            "touchsizes": "43",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Moto X (2nd Gen)"
            },
            "device": "Moto X (2nd Gen)",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "5.2",
            "inscreenw": "2.5",
            "inscreenh": "4.5",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "3.0",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "424",
            "screendpi": "141",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "12.3",
            "degscreenh": "× 21.7°",
            "screenppd": "87.7",
            "screendpa": "29.2",
            "touchsizel": "50",
            "touchsizes": "39",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Nexus 10"
            },
            "device": "Nexus 10",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Tablet",
            "inscreend": "10.1",
            "inscreenw": "8.6",
            "inscreenh": "5.4",
            "screenratio": "16:10",
            "pxscreenw": "2560",
            "pxscreenh": "× 1600 ",
            "dpscreenw": "1280",
            "dpscreenh": "× 800",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "299",
            "screendpi": "149",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "104",
            "viewdistance": "17.7",
            "degscreenw": "27.2",
            "degscreenh": "× 17.2°",
            "screenppd": "94.2",
            "screendpa": "47.1",
            "touchsizel": "53",
            "touchsizes": "41",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Nexus 4"
            },
            "device": "Nexus 4",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "4.7",
            "inscreenw": "3.2",
            "inscreenh": "4.0",
            "screenratio": "5:3",
            "pxscreenw": "768",
            "pxscreenh": "× 1280 ",
            "dpscreenw": "384",
            "dpscreenh": "× 640",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "318",
            "screendpi": "159",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "15.4",
            "degscreenh": "× 19.4°",
            "screenppd": "49.8",
            "screendpa": "24.9",
            "touchsizel": "56",
            "touchsizes": "44",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Nexus 5"
            },
            "device": "Nexus 5",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "5.0",
            "inscreenw": "2.4",
            "inscreenh": "4.3",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "3.0",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "445",
            "screendpi": "148",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "11.7",
            "degscreenh": "× 20.7°",
            "screenppd": "92.1",
            "screendpa": "30.7",
            "touchsizel": "53",
            "touchsizes": "41",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Nexus 6"
            },
            "device": "Nexus 6",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Handset",
            "inscreend": "6.0",
            "inscreenw": "2.9",
            "inscreenh": "5.2",
            "screenratio": "16:9",
            "pxscreenw": "1440",
            "pxscreenh": "× 2560 ",
            "dpscreenw": "411",
            "dpscreenh": "× 731",
            "density": "3.5",
            "densityoversampling": "",
            "densitybucket": "xxxhdpi",
            "screenppi": "493",
            "screendpi": "141",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "2",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "14.1",
            "degscreenh": "× 24.8°",
            "screenppd": "102.1",
            "screendpa": "29.2",
            "touchsizel": "50",
            "touchsizes": "39",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Nexus 5X"
            },
            "device": "Nexus 5X",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Handset",
            "inscreend": "5.2",
            "inscreenw": "2.5",
            "inscreenh": "4.5",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "411",
            "dpscreenh": "× 731",
            "density": "2.6",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "424",
            "screendpi": "161",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "2",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "12.3",
            "degscreenh": "× 21.7°",
            "screenppd": "87.7",
            "screendpa": "33.4",
            "touchsizel": "57",
            "touchsizes": "44",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Nexus 6P"
            },
            "device": "Nexus 6P",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Handset",
            "inscreend": "5.7",
            "inscreenw": "2.8",
            "inscreenh": "5.0",
            "screenratio": "16:9",
            "pxscreenw": "1440",
            "pxscreenh": "× 2560 ",
            "dpscreenw": "435",
            "dpscreenh": "× 773",
            "density": "3.3",
            "densityoversampling": "",
            "densitybucket": "xxxhdpi",
            "screenppi": "515",
            "screendpi": "156",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "2",
            "sidebysidep": "1",
            "uidepth": "56",
            "viewdistance": "11.8",
            "degscreenw": "13.5",
            "degscreenh": "× 23.8°",
            "screenppd": "106.7",
            "screendpa": "32.2",
            "touchsizel": "55",
            "touchsizes": "43",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Nexus 7 ('12)"
            },
            "device": "Nexus 7 ('12)",
            "platform": "Android",
            "devicesize": "S",
            "formfactor": "Tablet",
            "inscreend": "7.0",
            "inscreenw": "3.7",
            "inscreenh": "5.9",
            "screenratio": "16:10",
            "pxscreenw": "800",
            "pxscreenh": "× 1280 ",
            "dpscreenw": "600",
            "dpscreenh": "× 960",
            "density": "1.3",
            "densityoversampling": "",
            "densitybucket": "tvdpi",
            "screenppi": "216",
            "screendpi": "162",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "48",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2",
            "sidebysidep": "1",
            "uidepth": "72",
            "viewdistance": "17.7",
            "degscreenw": "12.0",
            "degscreenh": "× 19.0°",
            "screenppd": "66.9",
            "screendpa": "50.2",
            "touchsizel": "57",
            "touchsizes": "45",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Nexus 7 ('13)"
            },
            "device": "Nexus 7 ('13)",
            "platform": "Android",
            "devicesize": "S",
            "formfactor": "Tablet",
            "inscreend": "7.0",
            "inscreenw": "3.7",
            "inscreenh": "6.0",
            "screenratio": "16:10",
            "pxscreenw": "1200",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "600",
            "dpscreenh": "× 960",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "323",
            "screendpi": "161",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "48",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2",
            "sidebysidep": "1",
            "uidepth": "72",
            "viewdistance": "17.7",
            "degscreenw": "12.0",
            "degscreenh": "× 19.1°",
            "screenppd": "100.1",
            "screendpa": "50.1",
            "touchsizel": "57",
            "touchsizes": "44",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Nexus 9"
            },
            "device": "Nexus 9",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Tablet",
            "inscreend": "8.9",
            "inscreenw": "7.1",
            "inscreenh": "5.3",
            "screenratio": "4:3",
            "pxscreenw": "2048",
            "pxscreenh": "× 1536 ",
            "dpscreenw": "1024",
            "dpscreenh": "× 768",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "288",
            "screendpi": "144",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2½",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "17.7",
            "degscreenw": "22.7",
            "degscreenh": "× 17.1°",
            "screenppd": "90.1",
            "screendpa": "45.1",
            "touchsizel": "51",
            "touchsizes": "40",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Samsung Galaxy Note 4"
            },
            "device": "Samsung Galaxy Note 4",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Handset",
            "inscreend": "5.7",
            "inscreenw": "2.8",
            "inscreenh": "5.0",
            "screenratio": "16:9",
            "pxscreenw": "1440",
            "pxscreenh": "× 2560 ",
            "dpscreenw": "480",
            "dpscreenh": "× 853",
            "density": "3.0",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "515",
            "screendpi": "172",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "40",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2",
            "sidebysidep": "1",
            "uidepth": "64",
            "viewdistance": "11.8",
            "degscreenw": "13.5",
            "degscreenh": "× 23.8°",
            "screenppd": "106.7",
            "screendpa": "35.6",
            "touchsizel": "61",
            "touchsizes": "47",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Samsung Galaxy S5"
            },
            "device": "Samsung Galaxy S5",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "5.1",
            "inscreenw": "2.9",
            "inscreenh": "5.6",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "3.0",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "432",
            "screendpi": "144",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "13.8",
            "degscreenh": "× 26.6°",
            "screenppd": "78.5",
            "screendpa": "26.2",
            "touchsizel": "51",
            "touchsizes": "40",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Samsung Galaxy S6"
            },
            "device": "Samsung Galaxy S6",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "5.1",
            "inscreenw": "2.5",
            "inscreenh": "4.4",
            "screenratio": "16:9",
            "pxscreenw": "1440",
            "pxscreenh": "× 2560 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "4.0",
            "densityoversampling": "",
            "densitybucket": "xxxhdpi",
            "screenppi": "576",
            "screendpi": "144",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "12.1",
            "degscreenh": "× 21.3°",
            "screenppd": "119.2",
            "screendpa": "29.8",
            "touchsizel": "51",
            "touchsizes": "40",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Samsung Galaxy Tab 10"
            },
            "device": "Samsung Galaxy Tab 10",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Tablet",
            "inscreend": "10.1",
            "inscreenw": "5.4",
            "inscreenh": "8.6",
            "screenratio": "16:10",
            "pxscreenw": "800",
            "pxscreenh": "× 1280 ",
            "dpscreenw": "800",
            "dpscreenh": "× 1280",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "149",
            "screendpi": "149",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "104",
            "viewdistance": "17.7",
            "degscreenw": "17.2",
            "degscreenh": "× 27.2°",
            "screenppd": "46.6",
            "screendpa": "46.6",
            "touchsizel": "53",
            "touchsizes": "41",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Samsung Gear Live"
            },
            "device": "Samsung Gear Live",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Watch",
            "inscreend": "1.7",
            "inscreenw": "1.2",
            "inscreenh": "1.2",
            "screenratio": "1:1",
            "pxscreenw": "320",
            "pxscreenh": "× 320 ",
            "dpscreenw": "213",
            "dpscreenh": "× 213",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "274",
            "screendpi": "183",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "4",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "24",
            "viewdistance": "11.8",
            "degscreenw": "5.6",
            "degscreenh": "× 5.6°",
            "screenppd": "57.3",
            "screendpa": "38.2",
            "touchsizel": "65",
            "touchsizes": "50",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Sony Smartwatch 3"
            },
            "device": "Sony Smartwatch 3",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Watch",
            "inscreend": "1.6",
            "inscreenw": "1.1",
            "inscreenh": "1.1",
            "screenratio": "1:1",
            "pxscreenw": "320",
            "pxscreenh": "× 320 ",
            "dpscreenw": "213",
            "dpscreenh": "× 213",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "283",
            "screendpi": "189",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "4",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "24",
            "viewdistance": "11.8",
            "degscreenw": "5.5",
            "degscreenh": "× 5.5°",
            "screenppd": "58.4",
            "screendpa": "38.9",
            "touchsizel": "67",
            "touchsizes": "52",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Sony Xperia Z Ultra"
            },
            "device": "Sony Xperia Z Ultra",
            "platform": "Android",
            "devicesize": "L",
            "formfactor": "Handset",
            "inscreend": "6.4",
            "inscreenw": "3.1",
            "inscreenh": "5.6",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "540",
            "dpscreenh": "× 960",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "344",
            "screendpi": "172",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "48",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2",
            "sidebysidep": "1",
            "uidepth": "72",
            "viewdistance": "11.8",
            "degscreenw": "15.1",
            "degscreenh": "× 26.6°",
            "screenppd": "71.4",
            "screendpa": "35.7",
            "touchsizel": "61",
            "touchsizes": "47",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Sony Xperia Z1 Compact"
            },
            "device": "Sony Xperia Z1 Compact",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "4.3",
            "inscreenw": "2.1",
            "inscreenh": "3.7",
            "screenratio": "16:9",
            "pxscreenw": "720",
            "pxscreenh": "× 1280 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "342",
            "screendpi": "171",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "10.2",
            "degscreenh": "× 18.0°",
            "screenppd": "70.6",
            "screendpa": "35.3",
            "touchsizel": "61",
            "touchsizes": "47",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Sony Xperia Z2/Z3"
            },
            "device": "Sony Xperia Z2/Z3",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "5.2",
            "inscreenw": "2.5",
            "inscreenh": "4.5",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "3.0",
            "densityoversampling": "",
            "densitybucket": "xxhdpi",
            "screenppi": "424",
            "screendpi": "141",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "12.3",
            "degscreenh": "× 21.7°",
            "screenppd": "87.7",
            "screendpa": "29.2",
            "touchsizel": "50",
            "touchsizes": "39",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Sony Xperia Z3 Compact"
            },
            "device": "Sony Xperia Z3 Compact",
            "platform": "Android",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "4.6",
            "inscreenw": "2.3",
            "inscreenh": "4.0",
            "screenratio": "16:9",
            "pxscreenw": "720",
            "pxscreenh": "× 1280 ",
            "dpscreenw": "360",
            "dpscreenh": "× 640",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "319",
            "screendpi": "160",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "10.9",
            "degscreenh": "× 19.3°",
            "screenppd": "66.0",
            "screendpa": "33.0",
            "touchsizel": "57",
            "touchsizes": "44",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Chromebook 11"
            },
            "device": "Chromebook 11",
            "platform": "Chrome",
            "devicesize": "M",
            "formfactor": "Laptop",
            "inscreend": "11.6",
            "inscreenw": "10.1",
            "inscreenh": "5.7",
            "screenratio": "16:9",
            "pxscreenw": "1366",
            "pxscreenh": "× 768 ",
            "dpscreenw": "1366",
            "dpscreenh": "× 768",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "135",
            "screendpi": "135",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "23.6",
            "degscreenw": "24.2",
            "degscreenh": "× 13.7°",
            "screenppd": "56.5",
            "screendpa": "56.5",
            "touchsizel": "48",
            "touchsizes": "37",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Chromebook Pixel"
            },
            "device": "Chromebook Pixel",
            "platform": "Chrome",
            "devicesize": "M",
            "formfactor": "Laptop",
            "inscreend": "12.9",
            "inscreenw": "10.7",
            "inscreenh": "7.1",
            "screenratio": "3:2",
            "pxscreenw": "2560",
            "pxscreenh": "× 1700 ",
            "dpscreenw": "1280",
            "dpscreenh": "× 850",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "239",
            "screendpi": "120",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "104",
            "viewdistance": "23.6",
            "degscreenw": "25.5",
            "degscreenh": "× 17.1°",
            "screenppd": "100.3",
            "screendpa": "50.1",
            "touchsizel": "42",
            "touchsizes": "33",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Chromebox 30"
            },
            "device": "Chromebox 30",
            "platform": "Chrome",
            "devicesize": "XL",
            "formfactor": "Desktop",
            "inscreend": "30.0",
            "inscreenw": "25.4",
            "inscreenh": "15.9",
            "screenratio": "16:10",
            "pxscreenw": "2560",
            "pxscreenh": "× 1600 ",
            "dpscreenw": "2560",
            "dpscreenh": "× 1600",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "101",
            "screendpi": "101",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "3+",
            "uidepth": "200",
            "viewdistance": "23.6",
            "degscreenw": "56.6",
            "degscreenh": "× 37.2°",
            "screenppd": "45.2",
            "screendpa": "45.2",
            "touchsizel": "36",
            "touchsizes": "28",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Apple Watch 38mm"
            },
            "device": "Apple Watch 38mm",
            "platform": "iOS",
            "devicesize": "S",
            "formfactor": "Watch",
            "inscreend": "1.5",
            "inscreenw": "0.9",
            "inscreenh": "1.2",
            "screenratio": "5:4",
            "pxscreenw": "272",
            "pxscreenh": "× 340 ",
            "dpscreenw": "136",
            "dpscreenh": "× 170",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "290",
            "screendpi": "145",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "4",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "16",
            "viewdistance": "11.8",
            "degscreenw": "4.5",
            "degscreenh": "× 5.7°",
            "screenppd": "59.8",
            "screendpa": "29.9",
            "touchsizel": "51",
            "touchsizes": "40",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Apple Watch 42mm"
            },
            "device": "Apple Watch 42mm",
            "platform": "iOS",
            "devicesize": "L",
            "formfactor": "Watch",
            "inscreend": "1.7",
            "inscreenw": "1.0",
            "inscreenh": "1.3",
            "screenratio": "5:4",
            "pxscreenw": "312",
            "pxscreenh": "× 390 ",
            "dpscreenw": "156",
            "dpscreenh": "× 195",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "302",
            "screendpi": "151",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "4",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "16",
            "viewdistance": "11.8",
            "degscreenw": "5.0",
            "degscreenh": "× 6.3°",
            "screenppd": "62.3",
            "screendpa": "31.1",
            "touchsizel": "54",
            "touchsizes": "42",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPad"
            },
            "device": "iPad",
            "platform": "iOS",
            "devicesize": "L",
            "formfactor": "Tablet",
            "inscreend": "9.7",
            "inscreenw": "5.8",
            "inscreenh": "7.8",
            "screenratio": "4:3",
            "pxscreenw": "768",
            "pxscreenh": "× 1024 ",
            "dpscreenw": "768",
            "dpscreenh": "× 1024",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "132",
            "screendpi": "132",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2½",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "17.7",
            "degscreenw": "18.7",
            "degscreenh": "× 24.7°",
            "screenppd": "41.2",
            "screendpa": "41.2",
            "touchsizel": "47",
            "touchsizes": "36",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPad Mini"
            },
            "device": "iPad Mini",
            "platform": "iOS",
            "devicesize": "L",
            "formfactor": "Tablet",
            "inscreend": "7.9",
            "inscreenw": "4.7",
            "inscreenh": "6.3",
            "screenratio": "4:3",
            "pxscreenw": "768",
            "pxscreenh": "× 1024 ",
            "dpscreenw": "768",
            "dpscreenh": "× 1024",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "162",
            "screendpi": "162",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2½",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "17.7",
            "degscreenw": "15.2",
            "degscreenh": "× 20.2°",
            "screenppd": "50.4",
            "screendpa": "50.4",
            "touchsizel": "57",
            "touchsizes": "45",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPad Mini Retina"
            },
            "device": "iPad Mini Retina",
            "platform": "iOS",
            "devicesize": "L",
            "formfactor": "Tablet",
            "inscreend": "7.9",
            "inscreenw": "4.7",
            "inscreenh": "6.3",
            "screenratio": "4:3",
            "pxscreenw": "1536",
            "pxscreenh": "× 2048 ",
            "dpscreenw": "768",
            "dpscreenh": "× 1024",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "324",
            "screendpi": "162",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2½",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "17.7",
            "degscreenw": "15.2",
            "degscreenh": "× 20.2°",
            "screenppd": "100.8",
            "screendpa": "50.4",
            "touchsizel": "57",
            "touchsizes": "45",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPad Retina"
            },
            "device": "iPad Retina",
            "platform": "iOS",
            "devicesize": "L",
            "formfactor": "Tablet",
            "inscreend": "9.7",
            "inscreenw": "5.8",
            "inscreenh": "7.8",
            "screenratio": "4:3",
            "pxscreenw": "1536",
            "pxscreenh": "× 2048 ",
            "dpscreenw": "768",
            "dpscreenh": "× 1024",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "264",
            "screendpi": "132",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "2½",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "17.7",
            "degscreenw": "18.7",
            "degscreenh": "× 24.7°",
            "screenppd": "82.4",
            "screendpa": "41.2",
            "touchsizel": "47",
            "touchsizes": "36",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPad Pro"
            },
            "device": "iPad Pro",
            "platform": "iOS",
            "devicesize": "L",
            "formfactor": "Tablet",
            "inscreend": "12.9",
            "inscreenw": "10.3",
            "inscreenh": "7.7",
            "screenratio": "4:3",
            "pxscreenw": "2732",
            "pxscreenh": "× 2048 ",
            "dpscreenw": "1366",
            "dpscreenh": "× 1024",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "265",
            "screendpi": "132",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2½",
            "uidepth": "128",
            "viewdistance": "17.7",
            "degscreenw": "32.5",
            "degscreenh": "× 24.6°",
            "screenppd": "84.1",
            "screendpa": "42.1",
            "touchsizel": "47",
            "touchsizes": "36",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPhone"
            },
            "device": "iPhone",
            "platform": "iOS",
            "devicesize": "S",
            "formfactor": "Handset",
            "inscreend": "3.5",
            "inscreenw": "1.9",
            "inscreenh": "2.9",
            "screenratio": "3:2",
            "pxscreenw": "320",
            "pxscreenh": "× 480 ",
            "dpscreenw": "320",
            "dpscreenh": "× 480",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "165",
            "screendpi": "165",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "40",
            "viewdistance": "11.8",
            "degscreenw": "9.4",
            "degscreenh": "× 14.1°",
            "screenppd": "34.1",
            "screendpa": "34.1",
            "touchsizel": "58",
            "touchsizes": "45",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPhone 4"
            },
            "device": "iPhone 4",
            "platform": "iOS ",
            "devicesize": "S",
            "formfactor": "Handset",
            "inscreend": "3.5",
            "inscreenw": "2.0",
            "inscreenh": "2.9",
            "screenratio": "3:2",
            "pxscreenw": "640",
            "pxscreenh": "× 960 ",
            "dpscreenw": "320",
            "dpscreenh": "× 480",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "326",
            "screendpi": "163",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "40",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "40",
            "viewdistance": "11.8",
            "degscreenw": "9.5",
            "degscreenh": "× 14.2°",
            "screenppd": "67.4",
            "screendpa": "33.7",
            "touchsizel": "58",
            "touchsizes": "45",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPhone 5"
            },
            "device": "iPhone 5",
            "platform": "iOS",
            "devicesize": "S",
            "formfactor": "Handset",
            "inscreend": "4.0",
            "inscreenw": "2.0",
            "inscreenh": "3.5",
            "screenratio": "16:9",
            "pxscreenw": "640",
            "pxscreenh": "× 1136 ",
            "dpscreenw": "320",
            "dpscreenh": "× 568",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "326",
            "screendpi": "163",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "48",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1",
            "sidebysidep": "1",
            "uidepth": "40",
            "viewdistance": "11.8",
            "degscreenw": "9.5",
            "degscreenh": "× 16.8°",
            "screenppd": "67.3",
            "screendpa": "33.7",
            "touchsizel": "58",
            "touchsizes": "45",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPhone 6"
            },
            "device": "iPhone 6",
            "platform": "iOS",
            "devicesize": "M",
            "formfactor": "Handset",
            "inscreend": "4.7",
            "inscreenw": "2.3",
            "inscreenh": "4.1",
            "screenratio": "16:9",
            "pxscreenw": "750",
            "pxscreenh": "× 1334 ",
            "dpscreenw": "375",
            "dpscreenh": "× 667",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "326",
            "screendpi": "163",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "56",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "1½",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "11.1",
            "degscreenh": "× 19.7°",
            "screenppd": "67.3",
            "screendpa": "33.7",
            "touchsizel": "58",
            "touchsizes": "45",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iPhone 6 Plus"
            },
            "device": "iPhone 6 Plus",
            "platform": "iOS",
            "devicesize": "L",
            "formfactor": "Handset",
            "inscreend": "5.5",
            "inscreenw": "2.7",
            "inscreenh": "4.8",
            "screenratio": "16:9",
            "pxscreenw": "1080",
            "pxscreenh": "× 1920 ",
            "dpscreenw": "414",
            "dpscreenh": "× 736",
            "density": "3.0",
            "densityoversampling": "115.00%",
            "densitybucket": "xxhdpi",
            "screenppi": "401",
            "screendpi": "134",
            "screendefaultorientation": "Portrait",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "40",
            "columnsp": "4",
            "columnsl": "8",
            "gutterl": "16",
            "keylinel": "72",
            "sidebysidel": "2",
            "sidebysidep": "1",
            "uidepth": "48",
            "viewdistance": "11.8",
            "degscreenw": "13.0",
            "degscreenh": "× 22.9°",
            "screenppd": "83.0",
            "screendpa": "31.8",
            "touchsizel": "47",
            "touchsizes": "37",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iMac 5K"
            },
            "device": "iMac 5K",
            "platform": "OS X",
            "devicesize": "XL",
            "formfactor": "Desktop",
            "inscreend": "27.0",
            "inscreenw": "23.5",
            "inscreenh": "13.2",
            "screenratio": "16:9",
            "pxscreenw": "5120",
            "pxscreenh": "× 2880 ",
            "dpscreenw": "2560",
            "dpscreenh": "× 1440",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "218",
            "screendpi": "109",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "3+",
            "uidepth": "184",
            "viewdistance": "23.6",
            "degscreenw": "53.0",
            "degscreenh": "× 31.3°",
            "screenppd": "96.7",
            "screendpa": "48.3",
            "touchsizel": "39",
            "touchsizes": "30",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "MacBook 12"
            },
            "device": "MacBook 12",
            "platform": "OS X",
            "devicesize": "M",
            "formfactor": "Laptop",
            "inscreend": "12.0",
            "inscreenw": "10.2",
            "inscreenh": "6.4",
            "screenratio": "16:10",
            "pxscreenw": "2304",
            "pxscreenh": "× 1440 ",
            "dpscreenw": "1280",
            "dpscreenh": "× 800",
            "density": "2.0",
            "densityoversampling": "111.11%",
            "densitybucket": "xhdpi",
            "screenppi": "226",
            "screendpi": "113",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "104",
            "viewdistance": "23.6",
            "degscreenw": "24.3",
            "degscreenh": "× 15.3°",
            "screenppd": "94.8",
            "screendpa": "52.6",
            "touchsizel": "40",
            "touchsizes": "31",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "MacBook Air 11"
            },
            "device": "MacBook Air 11",
            "platform": "OS X",
            "devicesize": "M",
            "formfactor": "Laptop",
            "inscreend": "11.6",
            "inscreenw": "10.1",
            "inscreenh": "5.7",
            "screenratio": "16:9",
            "pxscreenw": "1366",
            "pxscreenh": "× 768 ",
            "dpscreenw": "1366",
            "dpscreenh": "× 768",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "135",
            "screendpi": "135",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "23.6",
            "degscreenw": "24.2",
            "degscreenh": "× 13.7°",
            "screenppd": "56.5",
            "screendpa": "56.5",
            "touchsizel": "48",
            "touchsizes": "37",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "MacBook Air 13"
            },
            "device": "MacBook Air 13",
            "platform": "OS X",
            "devicesize": "L",
            "formfactor": "Laptop",
            "inscreend": "13.3",
            "inscreenw": "11.3",
            "inscreenh": "7.0",
            "screenratio": "16:10",
            "pxscreenw": "1440",
            "pxscreenh": "× 900 ",
            "dpscreenw": "1440",
            "dpscreenh": "× 900",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "128",
            "screendpi": "128",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "120",
            "viewdistance": "23.6",
            "degscreenw": "26.9",
            "degscreenh": "× 17.0°",
            "screenppd": "53.6",
            "screendpa": "53.6",
            "touchsizel": "45",
            "touchsizes": "35",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "MacBook Pro 13"
            },
            "device": "MacBook Pro 13",
            "platform": "OS X",
            "devicesize": "M",
            "formfactor": "Laptop",
            "inscreend": "13.3",
            "inscreenw": "11.3",
            "inscreenh": "7.0",
            "screenratio": "16:10",
            "pxscreenw": "2560",
            "pxscreenh": "× 1600 ",
            "dpscreenw": "1280",
            "dpscreenh": "× 800",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "227",
            "screendpi": "113",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "104",
            "viewdistance": "23.6",
            "degscreenw": "26.9",
            "degscreenh": "× 17.0°",
            "screenppd": "95.3",
            "screendpa": "47.7",
            "touchsizel": "40",
            "touchsizes": "31",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "MacBook Pro 15"
            },
            "device": "MacBook Pro 15",
            "platform": "OS X",
            "devicesize": "L",
            "formfactor": "Laptop",
            "inscreend": "15.4",
            "inscreenw": "13.1",
            "inscreenh": "8.2",
            "screenratio": "16:10",
            "pxscreenw": "2880",
            "pxscreenh": "× 1800 ",
            "dpscreenw": "1440",
            "dpscreenh": "× 900",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "221",
            "screendpi": "110",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "112",
            "viewdistance": "23.6",
            "degscreenw": "30.9",
            "degscreenh": "× 19.6°",
            "screenppd": "93.2",
            "screendpa": "46.6",
            "touchsizel": "39",
            "touchsizes": "30",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "iMac 27"
            },
            "device": "iMac 27",
            "platform": "OS X",
            "devicesize": "XL",
            "formfactor": "Desktop",
            "inscreend": "27.0",
            "inscreenw": "23.5",
            "inscreenh": "13.2",
            "screenratio": "16:9",
            "pxscreenw": "2560",
            "pxscreenh": "× 1440 ",
            "dpscreenw": "2560",
            "dpscreenh": "× 1440",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "109",
            "screendpi": "109",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "0",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "3+",
            "uidepth": "184",
            "viewdistance": "23.6",
            "degscreenw": "53.0",
            "degscreenh": "× 31.3°",
            "screenppd": "48.3",
            "screendpa": "48.3",
            "touchsizel": "39",
            "touchsizes": "30",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Surface"
            },
            "device": "Surface",
            "platform": "Windows",
            "devicesize": "S",
            "formfactor": "Laptop",
            "inscreend": "10.6",
            "inscreenw": "9.2",
            "inscreenh": "5.2",
            "screenratio": "16:9",
            "pxscreenw": "1366",
            "pxscreenh": "× 768 ",
            "dpscreenw": "1366",
            "dpscreenh": "× 768",
            "density": "1.0",
            "densityoversampling": "",
            "densitybucket": "mdpi",
            "screenppi": "148",
            "screendpi": "148",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "23.6",
            "degscreenw": "22.1",
            "degscreenh": "× 12.6°",
            "screenppd": "61.7",
            "screendpa": "61.7",
            "touchsizel": "52",
            "touchsizes": "41",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Surface 2"
            },
            "device": "Surface 2",
            "platform": "Windows",
            "devicesize": "S",
            "formfactor": "Laptop",
            "inscreend": "10.6",
            "inscreenw": "9.2",
            "inscreenh": "5.2",
            "screenratio": "16:9",
            "pxscreenw": "1920",
            "pxscreenh": "× 1080 ",
            "dpscreenw": "1280",
            "dpscreenh": "× 720",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "208",
            "screendpi": "139",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "23.6",
            "degscreenw": "22.1",
            "degscreenh": "× 12.6°",
            "screenppd": "86.8",
            "screendpa": "57.8",
            "touchsizel": "49",
            "touchsizes": "38",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Surface 3"
            },
            "device": "Surface 3",
            "platform": "Windows",
            "devicesize": "S",
            "formfactor": "Laptop",
            "inscreend": "10.8",
            "inscreenw": "9.4",
            "inscreenh": "5.3",
            "screenratio": "16:9",
            "pxscreenw": "1920",
            "pxscreenh": "× 1080 ",
            "dpscreenw": "1280",
            "dpscreenh": "× 720",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "204",
            "screendpi": "136",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "23.6",
            "degscreenw": "22.5",
            "degscreenh": "× 12.8°",
            "screenppd": "85.2",
            "screendpa": "56.8",
            "touchsizel": "48",
            "touchsizes": "37",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Surface Pro"
            },
            "device": "Surface Pro",
            "platform": "Windows",
            "devicesize": "S",
            "formfactor": "Laptop",
            "inscreend": "10.6",
            "inscreenw": "9.2",
            "inscreenh": "5.2",
            "screenratio": "16:9",
            "pxscreenw": "1920",
            "pxscreenh": "× 1080 ",
            "dpscreenw": "1280",
            "dpscreenh": "× 720",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "208",
            "screendpi": "139",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "8",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "96",
            "viewdistance": "23.6",
            "degscreenw": "22.1",
            "degscreenh": "× 12.6°",
            "screenppd": "86.8",
            "screendpa": "57.8",
            "touchsizel": "49",
            "touchsizes": "38",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Surface Pro 3"
            },
            "device": "Surface Pro 3",
            "platform": "Windows",
            "devicesize": "S",
            "formfactor": "Laptop",
            "inscreend": "12.0",
            "inscreenw": "10.0",
            "inscreenh": "6.7",
            "screenratio": "3:2",
            "pxscreenw": "2160",
            "pxscreenh": "× 1440 ",
            "dpscreenw": "1440",
            "dpscreenh": "× 960",
            "density": "1.5",
            "densityoversampling": "",
            "densitybucket": "hdpi",
            "screenppi": "216",
            "screendpi": "144",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "120",
            "viewdistance": "23.6",
            "degscreenw": "23.9",
            "degscreenh": "× 16.0°",
            "screenppd": "90.5",
            "screendpa": "60.3",
            "touchsizel": "51",
            "touchsizes": "40",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Surface Pro 4"
            },
            "device": "Surface Pro 4",
            "platform": "Windows",
            "devicesize": "S",
            "formfactor": "Laptop",
            "inscreend": "12.4",
            "inscreenw": "10.3",
            "inscreenh": "6.9",
            "screenratio": "3:2",
            "pxscreenw": "2736",
            "pxscreenh": "× 1824 ",
            "dpscreenw": "1368",
            "dpscreenh": "× 912",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "265",
            "screendpi": "133",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "120",
            "viewdistance": "23.6",
            "degscreenw": "24.6",
            "degscreenh": "× 16.6°",
            "screenppd": "111.0",
            "screendpa": "55.5",
            "touchsizel": "47",
            "touchsizes": "37",
            "gutterp": ""
        }, {
            "title": {
                "type": "text",
                "$t": "Surface Book"
            },
            "device": "Surface Book",
            "platform": "Windows",
            "devicesize": "S",
            "formfactor": "Laptop",
            "inscreend": "13.5",
            "inscreenw": "11.2",
            "inscreenh": "7.5",
            "screenratio": "3:2",
            "pxscreenw": "3000",
            "pxscreenh": "× 2000 ",
            "dpscreenw": "1500",
            "dpscreenh": "× 1000",
            "density": "2.0",
            "densityoversampling": "",
            "densitybucket": "xhdpi",
            "screenppi": "267",
            "screendpi": "134",
            "screendefaultorientation": "Landscape",
            "screencanrotate": "1",
            "toolbarunitp": "64",
            "toolbarunitl": "64",
            "columnsp": "12",
            "columnsl": "12",
            "gutterl": "24",
            "keylinel": "80",
            "sidebysidel": "3+",
            "sidebysidep": "2",
            "uidepth": "128",
            "viewdistance": "23.6",
            "degscreenw": "26.8",
            "degscreenh": "× 18.0°",
            "screenppd": "112.1",
            "screendpa": "56.1",
            "touchsizel": "47",
            "touchsizes": "37",
            "gutterp": ""
        }]
    }
};