Overview

URL capactmicroftmas.dns.army/MAIL903-01921/?hash=redacted@slurpmail.net
IP20.169.54.120
ASNMICROSOFT-CORP-MSN-AS-BLOCK
Location United States
Report completed2022-09-30 21:26:42 UTC
StatusLoading report..
urlquery Alerts DynDNS domain detected


Settings

UserAgentMozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Referer


Intrusion Detection Systems

Suricata /w Emerging Threats Pro  No alerts detected


Blocklists

OpenPhish
Scan Date Severity Indicator Comment
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php Microsoft OneDrive
PhishTank
Scan Date Severity Indicator Comment
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php Other
Fortinet's Web Filter
Scan Date Severity Indicator Comment
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/?hash=redacted@slurpmail.net Phishing
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/ Phishing
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php Phishing
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/js/bootstrap.min.js Phishing
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/js/verificarUsuario.js Phishing
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/js/jquery-vv.min.js Phishing
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/img/microsoft_logo.svg Phishing
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/webserver.php Phishing
2022-09-30 2 capactmicroftmas.dns.army/MAIL903-01921/acesso/img/hotmail.ico Phishing
mnemonic secure dns  No alerts detected
Quad9 DNS
Scan Date Severity Indicator Comment
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed
2022-09-30 2 dns.army Sinkholed


Files

No files detected



Passive DNS (11)

Passive DNS Source Fully Qualifying Domain Name Rank First Seen Last Seen IP Comment
mnemonic passive DNS content-signature-2.cdn.mozilla.net (1) 1152 2020-11-03 12:26:46 UTC 2022-09-30 05:34:07 UTC 143.204.55.25
mnemonic passive DNS logincdn.msauth.net (1) 2330 2019-04-23 01:13:28 UTC 2022-09-30 10:46:51 UTC 192.229.221.185
mnemonic passive DNS ocsp.digicert.com (1) 86 2012-05-21 07:02:23 UTC 2022-09-30 15:21:19 UTC 93.184.220.29
mnemonic passive DNS fonts.googleapis.com (1) 8877 2013-06-10 20:14:26 UTC 2022-09-30 16:59:18 UTC 142.250.74.10
mnemonic passive DNS r3.o.lencr.org (5) 344 2020-12-02 08:52:13 UTC 2022-09-30 04:55:29 UTC 23.36.76.226
mnemonic passive DNS firefox.settings.services.mozilla.com (2) 867 2020-05-27 20:08:30 UTC 2022-09-30 17:00:01 UTC 143.204.55.36
mnemonic passive DNS capactmicroftmas.dns.army (12) 0 2022-09-29 15:46:22 UTC 2022-09-30 12:33:58 UTC 20.169.54.120 Unknown ranking
mnemonic passive DNS contile.services.mozilla.com (1) 1114 2021-05-27 18:32:35 UTC 2022-09-30 04:56:26 UTC 34.117.237.239
mnemonic passive DNS ocsp.pki.goog (2) 175 2017-06-14 07:23:31 UTC 2022-09-30 04:55:27 UTC 142.250.74.3
mnemonic passive DNS push.services.mozilla.com (1) 2140 2015-09-03 10:29:36 UTC 2022-09-30 05:12:28 UTC 52.43.46.140
mnemonic passive DNS img-getpocket.cdn.mozilla.net (7) 1631 2017-09-01 03:40:57 UTC 2022-09-30 13:49:02 UTC 34.120.237.76


Recent reports on same IP/ASN/Domain/Screenshot

Last 4 reports on IP: 20.169.54.120

Date UQ / IDS / BL URL IP
2022-10-18 21:54:19 +0000
13 - 0 - 13 capactmicroftmas.dns.army/MAIL903-01921/?hash (...) 20.169.54.120
2022-10-18 21:53:58 +0000
11 - 0 - 10 capactmicroftmas.dns.army/MAIL903-01921/acess (...) 20.169.54.120
2022-09-30 21:38:42 +0000
11 - 0 - 19 capactmicroftmas.dns.army/MAIL903-01921/acess (...) 20.169.54.120
2022-09-30 21:26:42 +0000
13 - 0 - 22 capactmicroftmas.dns.army/MAIL903-01921/?hash (...) 20.169.54.120

Last 5 reports on ASN: MICROSOFT-CORP-MSN-AS-BLOCK

Date UQ / IDS / BL URL IP
2022-12-07 02:06:33 +0000
0 - 0 - 33 20.68.195.161/ 20.68.195.161
2022-12-07 01:51:54 +0000
0 - 0 - 2 pubgmoble.my.id/ 20.9.70.76
2022-12-07 01:34:12 +0000
0 - 0 - 2 faxscope-secondary.z13.web.core.windows.net/ 52.239.255.161
2022-12-07 01:17:14 +0000
0 - 0 - 8 jsusuus6.ml/ 20.39.196.101
2022-12-07 00:50:23 +0000
0 - 0 - 5 coianbabslog.azurewebsites.net/ 20.118.40.6

Last 5 reports on domain: dns.army

Date UQ / IDS / BL URL IP
2022-12-05 12:08:35 +0000
3 - 0 - 2 cexdcuid3xve04.dns.army/klssza.php?step=1&use (...) 143.110.211.89
2022-11-25 15:17:42 +0000
4 - 0 - 3 sls1snovidadess.dns.army/ 15.228.60.149
2022-11-23 21:06:21 +0000
5 - 0 - 6 web-verificationrj.dns.army/ 102.37.147.125
2022-11-22 19:41:16 +0000
7 - 0 - 6 web-verificationbr.dns.army/ 20.56.131.2
2022-11-22 19:07:17 +0000
14 - 0 - 13 bbssl1seguroapp.dns.army/bb/fisica/password.php 184.72.186.91

Last 5 reports with similar screenshot

Date UQ / IDS / BL URL IP
2022-11-19 04:21:08 +0000
0 - 0 - 17 mail-hotmail.clicketcloud.com/login.php?micro=06 46.30.203.3
2022-11-15 17:11:22 +0000
0 - 0 - 17 mail-hotmail.clicketcloud.com/login.php?micro=06 46.30.203.3
2022-11-14 22:57:30 +0000
0 - 0 - 17 mail-hotmail.clicketcloud.com/login.php?micro=06 46.30.203.3
2022-11-14 20:15:07 +0000
0 - 0 - 17 mail-hotmail.clicketcloud.com/login.php?micro=06 46.30.203.2
2022-11-14 15:37:23 +0000
0 - 0 - 17 mail-hotmail.clicketcloud.com/login.php?micro=06 46.30.203.3


JavaScript

Executed Scripts (6)


Executed Evals (1)

#1 JavaScript::Eval (size: 45922, repeated: 1) - SHA256: 0f2f23d8954a30fdc9c4246587091ceca7d63588479e6cd7e59152779cb259ac

                                        (function() {
    var w = window.jQuery,
        _$ = window.$;
    var D = window.jQuery = window.$ = function(a, b) {
        return new D.fn.init(a, b)
    };
    var u = /^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,
        isSimple = /^.[^:#\[\.]*$/,
        undefined;
    D.fn = D.prototype = {
        init: function(d, b) {
            d = d || document;
            if (d.nodeType) {
                this[0] = d;
                this.length = 1;
                return this
            }
            if (typeof d == "string") {
                var c = u.exec(d);
                if (c && (c[1] || !b)) {
                    if (c[1]) d = D.clean([c[1]], b);
                    else {
                        var a = document.getElementById(c[3]);
                        if (a) {
                            if (a.id != c[3]) return D().find(d);
                            return D(a)
                        }
                        d = []
                    }
                } else return D(b).find(d)
            } else if (D.isFunction(d)) return D(document)[D.fn.ready ? "ready" : "load"](d);
            return this.setArray(D.makeArray(d))
        },
        jquery: "1.2.6",
        size: function() {
            return this.length
        },
        length: 0,
        get: function(a) {
            return a == undefined ? D.makeArray(this) : this[a]
        },
        pushStack: function(b) {
            var a = D(b);
            a.prevObject = this;
            return a
        },
        setArray: function(a) {
            this.length = 0;
            Array.prototype.push.apply(this, a);
            return this
        },
        each: function(a, b) {
            return D.each(this, a, b)
        },
        index: function(b) {
            var a = -1;
            return D.inArray(b && b.jquery ? b[0] : b, this)
        },
        attr: function(c, a, b) {
            var d = c;
            if (c.constructor == String)
                if (a === undefined) return this[0] && D[b || "attr"](this[0], c);
                else {
                    d = {};
                    d[c] = a
                }
            return this.each(function(i) {
                for (c in d) D.attr(b ? this.style : this, c, D.prop(this, d[c], b, i, c))
            })
        },
        css: function(b, a) {
            if ((b == 'width' || b == 'height') && parseFloat(a) < 0) a = undefined;
            return this.attr(b, a, "curCSS")
        },
        text: function(b) {
            if (typeof b != "object" && b != null) return this.empty().append((this[0] && this[0].ownerDocument || document).createTextNode(b));
            var a = "";
            D.each(b || this, function() {
                D.each(this.childNodes, function() {
                    if (this.nodeType != 8) a += this.nodeType != 1 ? this.nodeValue : D.fn.text([this])
                })
            });
            return a
        },
        wrapAll: function(b) {
            if (this[0]) D(b, this[0].ownerDocument).clone().insertBefore(this[0]).map(function() {
                var a = this;
                while (a.firstChild) a = a.firstChild;
                return a
            }).append(this);
            return this
        },
        wrapInner: function(a) {
            return this.each(function() {
                D(this).contents().wrapAll(a)
            })
        },
        wrap: function(a) {
            return this.each(function() {
                D(this).wrapAll(a)
            })
        },
        append: function() {
            return this.domManip(arguments, true, false, function(a) {
                if (this.nodeType == 1) this.appendChild(a)
            })
        },
        prepend: function() {
            return this.domManip(arguments, true, true, function(a) {
                if (this.nodeType == 1) this.insertBefore(a, this.firstChild)
            })
        },
        before: function() {
            return this.domManip(arguments, false, false, function(a) {
                this.parentNode.insertBefore(a, this)
            })
        },
        after: function() {
            return this.domManip(arguments, false, true, function(a) {
                this.parentNode.insertBefore(a, this.nextSibling)
            })
        },
        end: function() {
            return this.prevObject || D([])
        },
        find: function(b) {
            var c = D.map(this, function(a) {
                return D.find(b, a)
            });
            return this.pushStack(/[^+>] [^+>]/.test(b) || b.indexOf("..") > -1 ? D.unique(c) : c)
        },
        clone: function(e) {
            var f = this.map(function() {
                if (D.browser.msie && !D.isXMLDoc(this)) {
                    var a = this.cloneNode(true),
                        container = document.createElement("div");
                    container.appendChild(a);
                    return D.clean([container.innerHTML])[0]
                } else return this.cloneNode(true)
            });
            var d = f.find("*").andSelf().each(function() {
                if (this[E] != undefined) this[E] = null
            });
            if (e === true) this.find("*").andSelf().each(function(i) {
                if (this.nodeType == 3) return;
                var c = D.data(this, "events");
                for (var a in c)
                    for (var b in c[a]) D.event.add(d[i], a, c[a][b], c[a][b].data)
            });
            return f
        },
        filter: function(b) {
            return this.pushStack(D.isFunction(b) && D.grep(this, function(a, i) {
                return b.call(a, i)
            }) || D.multiFilter(b, this))
        },
        not: function(b) {
            if (b.constructor == String)
                if (isSimple.test(b)) return this.pushStack(D.multiFilter(b, this, true));
                else b = D.multiFilter(b, this);
            var a = b.length && b[b.length - 1] !== undefined && !b.nodeType;
            return this.filter(function() {
                return a ? D.inArray(this, b) < 0 : this != b
            })
        },
        add: function(a) {
            return this.pushStack(D.unique(D.merge(this.get(), typeof a == 'string' ? D(a) : D.makeArray(a))))
        },
        is: function(a) {
            return !!a && D.multiFilter(a, this).length > 0
        },
        hasClass: function(a) {
            return this.is("." + a)
        },
        val: function(b) {
            if (b == undefined) {
                if (this.length) {
                    var c = this[0];
                    if (D.nodeName(c, "select")) {
                        var e = c.selectedIndex,
                            values = [],
                            options = c.options,
                            one = c.type == "select-one";
                        if (e < 0) return null;
                        for (var i = one ? e : 0, max = one ? e + 1 : options.length; i < max; i++) {
                            var d = options[i];
                            if (d.selected) {
                                b = D.browser.msie && !d.attributes.value.specified ? d.text : d.value;
                                if (one) return b;
                                values.push(b)
                            }
                        }
                        return values
                    } else return (this[0].value || "").replace(/\r/g, "")
                }
                return undefined
            }
            if (b.constructor == Number) b += '';
            return this.each(function() {
                if (this.nodeType != 1) return;
                if (b.constructor == Array && /radio|checkbox/.test(this.type)) this.checked = (D.inArray(this.value, b) >= 0 || D.inArray(this.name, b) >= 0);
                else if (D.nodeName(this, "select")) {
                    var a = D.makeArray(b);
                    D("option", this).each(function() {
                        this.selected = (D.inArray(this.value, a) >= 0 || D.inArray(this.text, a) >= 0)
                    });
                    if (!a.length) this.selectedIndex = -1
                } else this.value = b
            })
        },
        html: function(a) {
            return a == undefined ? (this[0] ? this[0].innerHTML : null) : this.empty().append(a)
        },
        replaceWith: function(a) {
            return this.after(a).remove()
        },
        eq: function(i) {
            return this.slice(i, i + 1)
        },
        slice: function() {
            return this.pushStack(Array.prototype.slice.apply(this, arguments))
        },
        map: function(b) {
            return this.pushStack(D.map(this, function(a, i) {
                return b.call(a, i, a)
            }))
        },
        andSelf: function() {
            return this.add(this.prevObject)
        },
        data: function(d, b) {
            var a = d.split(".");
            a[1] = a[1] ? "." + a[1] : "";
            if (b === undefined) {
                var c = this.triggerHandler("getData" + a[1] + "!", [a[0]]);
                if (c === undefined && this.length) c = D.data(this[0], d);
                return c === undefined && a[1] ? this.data(a[0]) : c
            } else return this.trigger("setData" + a[1] + "!", [a[0], b]).each(function() {
                D.data(this, d, b)
            })
        },
        removeData: function(a) {
            return this.each(function() {
                D.removeData(this, a)
            })
        },
        domManip: function(g, f, h, d) {
            var e = this.length > 1,
                elems;
            return this.each(function() {
                if (!elems) {
                    elems = D.clean(g, this.ownerDocument);
                    if (h) elems.reverse()
                }
                var b = this;
                if (f && D.nodeName(this, "table") && D.nodeName(elems[0], "tr")) b = this.getElementsByTagName("tbody")[0] || this.appendChild(this.ownerDocument.createElement("tbody"));
                var c = D([]);
                D.each(elems, function() {
                    var a = e ? D(this).clone(true)[0] : this;
                    if (D.nodeName(a, "script")) c = c.add(a);
                    else {
                        if (a.nodeType == 1) c = c.add(D("script", a).remove());
                        d.call(b, a)
                    }
                });
                c.each(evalScript)
            })
        }
    };
    D.fn.init.prototype = D.fn;

    function evalScript(i, a) {
        if (a.src) D.ajax({
            url: a.src,
            async: false,
            dataType: "script"
        });
        else D.globalEval(a.text || a.textContent || a.innerHTML || "");
        if (a.parentNode) a.parentNode.removeChild(a)
    }

    function now() {
        return +new Date
    }
    D.extend = D.fn.extend = function() {
        var b = arguments[0] || {},
            i = 1,
            length = arguments.length,
            deep = false,
            options;
        if (b.constructor == Boolean) {
            deep = b;
            b = arguments[1] || {};
            i = 2
        }
        if (typeof b != "object" && typeof b != "function") b = {};
        if (length == i) {
            b = this;
            --i
        }
        for (; i < length; i++)
            if ((options = arguments[i]) != null)
                for (var c in options) {
                    var a = b[c],
                        copy = options[c];
                    if (b === copy) continue;
                    if (deep && copy && typeof copy == "object" && !copy.nodeType) b[c] = D.extend(deep, a || (copy.length != null ? [] : {}), copy);
                    else if (copy !== undefined) b[c] = copy
                }
            return b
    };
    var E = "jQuery" + now(),
        uuid = 0,
        windowData = {},
        exclude = /z-?index|font-?weight|opacity|zoom|line-?height/i,
        defaultView = document.defaultView || {};
    D.extend({
        noConflict: function(a) {
            window.$ = _$;
            if (a) window.jQuery = w;
            return D
        },
        isFunction: function(a) {
            return !!a && typeof a != "string" && !a.nodeName && a.constructor != Array && /^[\s[]?function/.test(a + "")
        },
        isXMLDoc: function(a) {
            return a.documentElement && !a.body || a.tagName && a.ownerDocument && !a.ownerDocument.body
        },
        globalEval: function(a) {
            a = D.trim(a);
            if (a) {
                var b = document.getElementsByTagName("head")[0] || document.documentElement,
                    script = document.createElement("script");
                script.type = "text/javascript";
                if (D.browser.msie) script.text = a;
                else script.appendChild(document.createTextNode(a));
                b.insertBefore(script, b.firstChild);
                b.removeChild(script)
            }
        },
        nodeName: function(b, a) {
            return b.nodeName && b.nodeName.toUpperCase() == a.toUpperCase()
        },
        cache: {},
        data: function(c, d, b) {
            c = c == window ? windowData : c;
            var a = c[E];
            if (!a) a = c[E] = ++uuid;
            if (d && !D.cache[a]) D.cache[a] = {};
            if (b !== undefined) D.cache[a][d] = b;
            return d ? D.cache[a][d] : a
        },
        removeData: function(c, b) {
            c = c == window ? windowData : c;
            var a = c[E];
            if (b) {
                if (D.cache[a]) {
                    delete D.cache[a][b];
                    b = "";
                    for (b in D.cache[a]) break;
                    if (!b) D.removeData(c)
                }
            } else {
                try {
                    delete c[E]
                } catch (e) {
                    if (c.removeAttribute) c.removeAttribute(E)
                }
                delete D.cache[a]
            }
        },
        each: function(d, a, c) {
            var e, i = 0,
                length = d.length;
            if (c) {
                if (length == undefined) {
                    for (e in d)
                        if (a.apply(d[e], c) === false) break
                } else
                    for (; i < length;)
                        if (a.apply(d[i++], c) === false) break
            } else {
                if (length == undefined) {
                    for (e in d)
                        if (a.call(d[e], e, d[e]) === false) break
                } else
                    for (var b = d[0]; i < length && a.call(b, i, b) !== false; b = d[++i]) {}
            }
            return d
        },
        prop: function(b, a, c, i, d) {
            if (D.isFunction(a)) a = a.call(b, i);
            return a && a.constructor == Number && c == "curCSS" && !exclude.test(d) ? a + "px" : a
        },
        className: {
            add: function(c, b) {
                D.each((b || "").split(/\s+/), function(i, a) {
                    if (c.nodeType == 1 && !D.className.has(c.className, a)) c.className += (c.className ? " " : "") + a
                })
            },
            remove: function(c, b) {
                if (c.nodeType == 1) c.className = b != undefined ? D.grep(c.className.split(/\s+/), function(a) {
                    return !D.className.has(b, a)
                }).join(" ") : ""
            },
            has: function(b, a) {
                return D.inArray(a, (b.className || b).toString().split(/\s+/)) > -1
            }
        },
        swap: function(b, c, a) {
            var e = {};
            for (var d in c) {
                e[d] = b.style[d];
                b.style[d] = c[d]
            }
            a.call(b);
            for (var d in c) b.style[d] = e[d]
        },
        css: function(d, e, c) {
            if (e == "width" || e == "height") {
                var b, props = {
                        position: "absolute",
                        visibility: "hidden",
                        display: "block"
                    },
                    which = e == "width" ? ["Left", "Right"] : ["Top", "Bottom"];

                function getWH() {
                    b = e == "width" ? d.offsetWidth : d.offsetHeight;
                    var a = 0,
                        border = 0;
                    D.each(which, function() {
                        a += parseFloat(D.curCSS(d, "padding" + this, true)) || 0;
                        border += parseFloat(D.curCSS(d, "border" + this + "Width", true)) || 0
                    });
                    b -= Math.round(a + border)
                }
                if (D(d).is(":visible")) getWH();
                else D.swap(d, props, getWH);
                return Math.max(0, b)
            }
            return D.curCSS(d, e, c)
        },
        curCSS: function(f, l, k) {
            var e, style = f.style;

            function color(b) {
                if (!D.browser.safari) return false;
                var a = defaultView.getComputedStyle(b, null);
                return !a || a.getPropertyValue("color") == ""
            }
            if (l == "opacity" && D.browser.msie) {
                e = D.attr(style, "opacity");
                return e == "" ? "1" : e
            }
            if (D.browser.opera && l == "display") {
                var d = style.outline;
                style.outline = "0 solid black";
                style.outline = d
            }
            if (l.match(/float/i)) l = y;
            if (!k && style && style[l]) e = style[l];
            else if (defaultView.getComputedStyle) {
                if (l.match(/float/i)) l = "float";
                l = l.replace(/([A-Z])/g, "-$1").toLowerCase();
                var c = defaultView.getComputedStyle(f, null);
                if (c && !color(f)) e = c.getPropertyValue(l);
                else {
                    var g = [],
                        stack = [],
                        a = f,
                        i = 0;
                    for (; a && color(a); a = a.parentNode) stack.unshift(a);
                    for (; i < stack.length; i++)
                        if (color(stack[i])) {
                            g[i] = stack[i].style.display;
                            stack[i].style.display = "block"
                        }
                    e = l == "display" && g[stack.length - 1] != null ? "none" : (c && c.getPropertyValue(l)) || "";
                    for (i = 0; i < g.length; i++)
                        if (g[i] != null) stack[i].style.display = g[i]
                }
                if (l == "opacity" && e == "") e = "1"
            } else if (f.currentStyle) {
                var h = l.replace(/\-(\w)/g, function(a, b) {
                    return b.toUpperCase()
                });
                e = f.currentStyle[l] || f.currentStyle[h];
                if (!/^\d+(px)?$/i.test(e) && /^\d/.test(e)) {
                    var j = style.left,
                        rsLeft = f.runtimeStyle.left;
                    f.runtimeStyle.left = f.currentStyle.left;
                    style.left = e || 0;
                    e = style.pixelLeft + "px";
                    style.left = j;
                    f.runtimeStyle.left = rsLeft
                }
            }
            return e
        },
        clean: function(l, h) {
            var k = [];
            h = h || document;
            if (typeof h.createElement == 'undefined') h = h.ownerDocument || h[0] && h[0].ownerDocument || document;
            D.each(l, function(i, d) {
                if (!d) return;
                if (d.constructor == Number) d += '';
                if (typeof d == "string") {
                    d = d.replace(/(<(\w+)[^>]*?)\/>/g, function(b, a, c) {
                        return c.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i) ? b : a + "></" + c + ">"
                    });
                    var f = D.trim(d).toLowerCase(),
                        div = h.createElement("div");
                    var e = !f.indexOf("<opt") && [1, "<select multiple='multiple'>", "</select>"] || !f.indexOf("<leg") && [1, "<fieldset>", "</fieldset>"] || f.match(/^<(thead|tbody|tfoot|colg|cap)/) && [1, "<table>", "</table>"] || !f.indexOf("<tr") && [2, "<table><tbody>", "</tbody></table>"] || (!f.indexOf("<td") || !f.indexOf("<th")) && [3, "<table><tbody><tr>", "</tr></tbody></table>"] || !f.indexOf("<col") && [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"] || D.browser.msie && [1, "div<div>", "</div>"] || [0, "", ""];
                    div.innerHTML = e[1] + d + e[2];
                    while (e[0] --) div = div.lastChild;
                    if (D.browser.msie) {
                        var g = !f.indexOf("<table") && f.indexOf("<tbody") < 0 ? div.firstChild && div.firstChild.childNodes : e[1] == "<table>" && f.indexOf("<tbody") < 0 ? div.childNodes : [];
                        for (var j = g.length - 1; j >= 0; --j)
                            if (D.nodeName(g[j], "tbody") && !g[j].childNodes.length) g[j].parentNode.removeChild(g[j]);
                        if (/^\s/.test(d)) div.insertBefore(h.createTextNode(d.match(/^\s*/)[0]), div.firstChild)
                    }
                    d = D.makeArray(div.childNodes)
                }
                if (d.length === 0 && (!D.nodeName(d, "form") && !D.nodeName(d, "select"))) return;
                if (d[0] == undefined || D.nodeName(d, "form") || d.options) k.push(d);
                else k = D.merge(k, d)
            });
            return k
        },
        attr: function(d, f, c) {
            if (!d || d.nodeType == 3 || d.nodeType == 8) return undefined;
            var e = !D.isXMLDoc(d),
                set = c !== undefined,
                msie = D.browser.msie;
            f = e && D.props[f] || f;
            if (d.tagName) {
                var g = /href|src|style/.test(f);
                if (f == "selected" && D.browser.safari) d.parentNode.selectedIndex;
                if (f in d && e && !g) {
                    if (set) {
                        if (f == "type" && D.nodeName(d, "input") && d.parentNode) throw "type property can't be changed";
                        d[f] = c
                    }
                    if (D.nodeName(d, "form") && d.getAttributeNode(f)) return d.getAttributeNode(f).nodeValue;
                    return d[f]
                }
                if (msie && e && f == "style") return D.attr(d.style, "cssText", c);
                if (set) d.setAttribute(f, "" + c);
                var h = msie && e && g ? d.getAttribute(f, 2) : d.getAttribute(f);
                return h === null ? undefined : h
            }
            if (msie && f == "opacity") {
                if (set) {
                    d.zoom = 1;
                    d.filter = (d.filter || "").replace(/alpha\([^)]*\)/, "") + (parseInt(c) + '' == "NaN" ? "" : "alpha(opacity=" + c * 100 + ")")
                }
                return d.filter && d.filter.indexOf("opacity=") >= 0 ? (parseFloat(d.filter.match(/opacity=([^)]*)/)[1]) / 100) + '' : ""
            }
            f = f.replace(/-([a-z])/ig, function(a, b) {
                return b.toUpperCase()
            });
            if (set) d[f] = c;
            return d[f]
        },
        trim: function(a) {
            return (a || "").replace(/^\s+|\s+$/g, "")
        },
        makeArray: function(b) {
            var a = [];
            if (b != null) {
                var i = b.length;
                if (i == null || b.split || b.setInterval || b.call) a[0] = b;
                else
                    while (i) a[--i] = b[i]
            }
            return a
        },
        inArray: function(b, a) {
            for (var i = 0, length = a.length; i < length; i++)
                if (a[i] === b) return i;
            return -1
        },
        merge: function(a, b) {
            var i = 0,
                elem, pos = a.length;
            if (D.browser.msie) {
                while (elem = b[i++])
                    if (elem.nodeType != 8) a[pos++] = elem
            } else
                while (elem = b[i++]) a[pos++] = elem;
            return a
        },
        unique: function(a) {
            var c = [],
                done = {};
            try {
                for (var i = 0, length = a.length; i < length; i++) {
                    var b = D.data(a[i]);
                    if (!done[b]) {
                        done[b] = true;
                        c.push(a[i])
                    }
                }
            } catch (e) {
                c = a
            }
            return c
        },
        grep: function(c, a, d) {
            var b = [];
            for (var i = 0, length = c.length; i < length; i++)
                if (!d != !a(c[i], i)) b.push(c[i]);
            return b
        },
        map: function(d, a) {
            var c = [];
            for (var i = 0, length = d.length; i < length; i++) {
                var b = a(d[i], i);
                if (b != null) c[c.length] = b
            }
            return c.concat.apply([], c)
        }
    });
    var v = navigator.userAgent.toLowerCase();
    D.browser = {
        version: (v.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1],
        safari: /webkit/.test(v),
        opera: /opera/.test(v),
        msie: /msie/.test(v) && !/opera/.test(v),
        mozilla: /mozilla/.test(v) && !/(compatible|webkit)/.test(v)
    };
    var y = D.browser.msie ? "styleFloat" : "cssFloat";
    D.extend({
        boxModel: !D.browser.msie || document.compatMode == "CSS1Compat",
        props: {
            "for": "htmlFor",
            "class": "className",
            "float": y,
            cssFloat: y,
            styleFloat: y,
            readonly: "readOnly",
            maxlength: "maxLength",
            cellspacing: "cellSpacing"
        }
    });
    D.each({
        parent: function(a) {
            return a.parentNode
        },
        parents: function(a) {
            return D.dir(a, "parentNode")
        },
        next: function(a) {
            return D.nth(a, 2, "nextSibling")
        },
        prev: function(a) {
            return D.nth(a, 2, "previousSibling")
        },
        nextAll: function(a) {
            return D.dir(a, "nextSibling")
        },
        prevAll: function(a) {
            return D.dir(a, "previousSibling")
        },
        siblings: function(a) {
            return D.sibling(a.parentNode.firstChild, a)
        },
        children: function(a) {
            return D.sibling(a.firstChild)
        },
        contents: function(a) {
            return D.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : D.makeArray(a.childNodes)
        }
    }, function(c, d) {
        D.fn[c] = function(b) {
            var a = D.map(this, d);
            if (b && typeof b == "string") a = D.multiFilter(b, a);
            return this.pushStack(D.unique(a))
        }
    });
    D.each({
        appendTo: "append",
        prependTo: "prepend",
        insertBefore: "before",
        insertAfter: "after",
        replaceAll: "replaceWith"
    }, function(c, b) {
        D.fn[c] = function() {
            var a = arguments;
            return this.each(function() {
                for (var i = 0, length = a.length; i < length; i++) D(a[i])[b](this)
            })
        }
    });
    D.each({
        removeAttr: function(a) {
            D.attr(this, a, "");
            if (this.nodeType == 1) this.removeAttribute(a)
        },
        addClass: function(a) {
            D.className.add(this, a)
        },
        removeClass: function(a) {
            D.className.remove(this, a)
        },
        toggleClass: function(a) {
            D.className[D.className.has(this, a) ? "remove" : "add"](this, a)
        },
        remove: function(a) {
            if (!a || D.filter(a, [this]).r.length) {
                D("*", this).add(this).each(function() {
                    D.event.remove(this);
                    D.removeData(this)
                });
                if (this.parentNode) this.parentNode.removeChild(this)
            }
        },
        empty: function() {
            D(">*", this).remove();
            while (this.firstChild) this.removeChild(this.firstChild)
        }
    }, function(a, b) {
        D.fn[a] = function() {
            return this.each(b, arguments)
        }
    });
    D.each(["Height", "Width"], function(i, c) {
        var b = c.toLowerCase();
        D.fn[b] = function(a) {
            return this[0] == window ? D.browser.opera && document.body["client" + c] || D.browser.safari && window["inner" + c] || document.compatMode == "CSS1Compat" && document.documentElement["client" + c] || document.body["client" + c] : this[0] == document ? Math.max(Math.max(document.body["scroll" + c], document.documentElement["scroll" + c]), Math.max(document.body["offset" + c], document.documentElement["offset" + c])) : a == undefined ? (this.length ? D.css(this[0], b) : null) : this.css(b, a.constructor == String ? a : a + "px")
        }
    });

    function num(a, b) {
        return a[0] && parseInt(D.curCSS(a[0], b, true), 10) || 0
    }
    var C = D.browser.safari && parseInt(D.browser.version) < 417 ? "(?:[\\w*_-]|\\\\.)" : "(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",
        quickChild = new RegExp("^>\\s*(" + C + "+)"),
        quickID = new RegExp("^(" + C + "+)(#)(" + C + "+)"),
        quickClass = new RegExp("^([#.]?)(" + C + "*)");
    D.extend({
        expr: {
            "": function(a, i, m) {
                return m[2] == "*" || D.nodeName(a, m[2])
            },
            "#": function(a, i, m) {
                return a.getAttribute("id") == m[2]
            },
            ":": {
                lt: function(a, i, m) {
                    return i < m[3] - 0
                },
                gt: function(a, i, m) {
                    return i > m[3] - 0
                },
                nth: function(a, i, m) {
                    return m[3] - 0 == i
                },
                eq: function(a, i, m) {
                    return m[3] - 0 == i
                },
                first: function(a, i) {
                    return i == 0
                },
                last: function(a, i, m, r) {
                    return i == r.length - 1
                },
                even: function(a, i) {
                    return i % 2 == 0
                },
                odd: function(a, i) {
                    return i % 2
                },
                "first-child": function(a) {
                    return a.parentNode.getElementsByTagName("*")[0] == a
                },
                "last-child": function(a) {
                    return D.nth(a.parentNode.lastChild, 1, "previousSibling") == a
                },
                "only-child": function(a) {
                    return !D.nth(a.parentNode.lastChild, 2, "previousSibling")
                },
                parent: function(a) {
                    return a.firstChild
                },
                empty: function(a) {
                    return !a.firstChild
                },
                contains: function(a, i, m) {
                    return (a.textContent || a.innerText || D(a).text() || "").indexOf(m[3]) >= 0
                },
                visible: function(a) {
                    return "hidden" != a.type && D.css(a, "display") != "none" && D.css(a, "visibility") != "hidden"
                },
                hidden: function(a) {
                    return "hidden" == a.type || D.css(a, "display") == "none" || D.css(a, "visibility") == "hidden"
                },
                enabled: function(a) {
                    return !a.disabled
                },
                disabled: function(a) {
                    return a.disabled
                },
                checked: function(a) {
                    return a.checked
                },
                selected: function(a) {
                    return a.selected || D.attr(a, "selected")
                },
                text: function(a) {
                    return "text" == a.type
                },
                radio: function(a) {
                    return "radio" == a.type
                },
                checkbox: function(a) {
                    return "checkbox" == a.type
                },
                file: function(a) {
                    return "file" == a.type
                },
                password: function(a) {
                    return "password" == a.type
                },
                submit: function(a) {
                    return "submit" == a.type
                },
                image: function(a) {
                    return "image" == a.type
                },
                reset: function(a) {
                    return "reset" == a.type
                },
                button: function(a) {
                    return "button" == a.type || D.nodeName(a, "button")
                },
                input: function(a) {
                    return /input|select|textarea|button/i.test(a.nodeName)
                },
                has: function(a, i, m) {
                    return D.find(m[3], a).length
                },
                header: function(a) {
                    return /h\d/i.test(a.nodeName)
                },
                animated: function(a) {
                    return D.grep(D.timers, function(b) {
                        return a == b.elem
                    }).length
                }
            }
        },
        parse: [/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/, /^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/, new RegExp("^([:.#]*)(" + C + "+)")],
        multiFilter: function(a, c, b) {
            var d, cur = [];
            while (a && a != d) {
                d = a;
                var f = D.filter(a, c, b);
                a = f.t.replace(/^\s*,\s*/, "");
                cur = b ? c = f.r : D.merge(cur, f.r)
            }
            return cur
        },
        find: function(t, o) {
            if (typeof t != "string") return [t];
            if (o && o.nodeType != 1 && o.nodeType != 9) return [];
            o = o || document;
            var d = [o],
                done = [],
                last, nodeName;
            while (t && last != t) {
                var r = [];
                last = t;
                t = D.trim(t);
                var l = false,
                    re = quickChild,
                    m = re.exec(t);
                if (m) {
                    nodeName = m[1].toUpperCase();
                    for (var i = 0; d[i]; i++)
                        for (var c = d[i].firstChild; c; c = c.nextSibling)
                            if (c.nodeType == 1 && (nodeName == "*" || c.nodeName.toUpperCase() == nodeName)) r.push(c);
                    d = r;
                    t = t.replace(re, "");
                    if (t.indexOf(" ") == 0) continue;
                    l = true
                } else {
                    re = /^([>+~])\s*(\w*)/i;
                    if ((m = re.exec(t)) != null) {
                        r = [];
                        var k = {};
                        nodeName = m[2].toUpperCase();
                        m = m[1];
                        for (var j = 0, rl = d.length; j < rl; j++) {
                            var n = m == "~" || m == "+" ? d[j].nextSibling : d[j].firstChild;
                            for (; n; n = n.nextSibling)
                                if (n.nodeType == 1) {
                                    var g = D.data(n);
                                    if (m == "~" && k[g]) break;
                                    if (!nodeName || n.nodeName.toUpperCase() == nodeName) {
                                        if (m == "~") k[g] = true;
                                        r.push(n)
                                    }
                                    if (m == "+") break
                                }
                        }
                        d = r;
                        t = D.trim(t.replace(re, ""));
                        l = true
                    }
                }
                if (t && !l) {
                    if (!t.indexOf(",")) {
                        if (o == d[0]) d.shift();
                        done = D.merge(done, d);
                        r = d = [o];
                        t = " " + t.substr(1, t.length)
                    } else {
                        var h = quickID;
                        var m = h.exec(t);
                        if (m) {
                            m = [0, m[2], m[3], m[1]]
                        } else {
                            h = quickClass;
                            m = h.exec(t)
                        }
                        m[2] = m[2].replace(/\\/g, "");
                        var f = d[d.length - 1];
                        if (m[1] == "#" && f && f.getElementById && !D.isXMLDoc(f)) {
                            var p = f.getElementById(m[2]);
                            if ((D.browser.msie || D.browser.opera) && p && typeof p.id == "string" && p.id != m[2]) p = D('[@id="' + m[2] + '"]', f)[0];
                            d = r = p && (!m[3] || D.nodeName(p, m[3])) ? [p] : []
                        } else {
                            for (var i = 0; d[i]; i++) {
                                var a = m[1] == "#" && m[3] ? m[3] : m[1] != "" || m[0] == "" ? "*" : m[2];
                                if (a == "*" && d[i].nodeName.toLowerCase() == "object") a = "param";
                                r = D.merge(r, d[i].getElementsByTagName(a))
                            }
                            if (m[1] == ".") r = D.classFilter(r, m[2]);
                            if (m[1] == "#") {
                                var e = [];
                                for (var i = 0; r[i]; i++)
                                    if (r[i].getAttribute("id") == m[2]) {
                                        e = [r[i]];
                                        break
                                    }
                                r = e
                            }
                            d = r
                        }
                        t = t.replace(h, "")
                    }
                }
                if (t) {
                    var b = D.filter(t, r);
                    d = r = b.r;
                    t = D.trim(b.t)
                }
            }
            if (t) d = [];
            if (d && o == d[0]) d.shift();
            done = D.merge(done, d);
            return done
        },
        classFilter: function(r, m, a) {
            m = " " + m + " ";
            var c = [];
            for (var i = 0; r[i]; i++) {
                var b = (" " + r[i].className + " ").indexOf(m) >= 0;
                if (!a && b || a && !b) c.push(r[i])
            }
            return c
        },
        filter: function(t, r, h) {
            var d;
            while (t && t != d) {
                d = t;
                var p = D.parse,
                    m;
                for (var i = 0; p[i]; i++) {
                    m = p[i].exec(t);
                    if (m) {
                        t = t.substring(m[0].length);
                        m[2] = m[2].replace(/\\/g, "");
                        break
                    }
                }
                if (!m) break;
                if (m[1] == ":" && m[2] == "not") r = isSimple.test(m[3]) ? D.filter(m[3], r, true).r : D(r).not(m[3]);
                else if (m[1] == ".") r = D.classFilter(r, m[2], h);
                else if (m[1] == "[") {
                    var g = [],
                        type = m[3];
                    for (var i = 0, rl = r.length; i < rl; i++) {
                        var a = r[i],
                            z = a[D.props[m[2]] || m[2]];
                        if (z == null || /href|src|selected/.test(m[2])) z = D.attr(a, m[2]) || '';
                        if ((type == "" && !!z || type == "=" && z == m[5] || type == "!=" && z != m[5] || type == "^=" && z && !z.indexOf(m[5]) || type == "$=" && z.substr(z.length - m[5].length) == m[5] || (type == "*=" || type == "~=") && z.indexOf(m[5]) >= 0) ^ h) g.push(a)
                    }
                    r = g
                } else if (m[1] == ":" && m[2] == "nth-child") {
                    var e = {},
                        g = [],
                        test = /(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3] == "even" && "2n" || m[3] == "odd" && "2n+1" || !/\D/.test(m[3]) && "0n+" + m[3] || m[3]),
                        first = (test[1] + (test[2] || 1)) - 0,
                        d = test[3] - 0;
                    for (var i = 0, rl = r.length; i < rl; i++) {
                        var j = r[i],
                            parentNode = j.parentNode,
                            id = D.data(parentNode);
                        if (!e[id]) {
                            var c = 1;
                            for (var n = parentNode.firstChild; n; n = n.nextSibling)
                                if (n.nodeType == 1) n.nodeIndex = c++;
                            e[id] = true
                        }
                        var b = false;
                        if (first == 0) {
                            if (j.nodeIndex == d) b = true
                        } else if ((j.nodeIndex - d) % first == 0 && (j.nodeIndex - d) / first >= 0) b = true;
                        if (b ^ h) g.push(j)
                    }
                    r = g
                } else {
                    var f = D.expr[m[1]];
                    if (typeof f == "object") f = f[m[2]];
                    if (typeof f == "string") f = eval("false||function(a,i){return " + f + ";}");
                    r = D.grep(r, function(a, i) {
                        return f(a, i, m, r)
                    }, h)
                }
            }
            return {
                r: r,
                t: t
            }
        },
        dir: function(b, c) {
            var a = [],
                cur = b[c];
            while (cur && cur != document) {
                if (cur.nodeType == 1) a.push(cur);
                cur = cur[c]
            }
            return a
        },
        nth: function(a, e, c, b) {
            e = e || 1;
            var d = 0;
            for (; a; a = a[c])
                if (a.nodeType == 1 && ++d == e) break;
            return a
        },
        sibling: function(n, a) {
            var r = [];
            for (; n; n = n.nextSibling) {
                if (n.nodeType == 1 && n != a) r.push(n)
            }
            return r
        }
    });
    D.event = {
        add: function(f, i, g, e) {
            if (f.nodeType == 3 || f.nodeType == 8) return;
            if (D.browser.msie && f.setInterval) f = window;
            if (!g.guid) g.guid = this.guid++;
            if (e != undefined) {
                var h = g;
                g = this.proxy(h, function() {
                    return h.apply(this, arguments)
                });
                g.data = e
            }
            var j = D.data(f, "events") || D.data(f, "events", {}),
                handle = D.data(f, "handle") || D.data(f, "handle", function() {
                    if (typeof D != "undefined" && !D.event.triggered) return D.event.handle.apply(arguments.callee.elem, arguments)
                });
            handle.elem = f;
            D.each(i.split(/\s+/), function(c, b) {
                var a = b.split(".");
                b = a[0];
                g.type = a[1];
                var d = j[b];
                if (!d) {
                    d = j[b] = {};
                    if (!D.event.special[b] || D.event.special[b].setup.call(f) === false) {
                        if (f.addEventListener) f.addEventListener(b, handle, false);
                        else if (f.attachEvent) f.attachEvent("on" + b, handle)
                    }
                }
                d[g.guid] = g;
                D.event.global[b] = true
            });
            f = null
        },
        guid: 1,
        global: {},
        remove: function(e, h, f) {
            if (e.nodeType == 3 || e.nodeType == 8) return;
            var i = D.data(e, "events"),
                ret, index;
            if (i) {
                if (h == undefined || (typeof h == "string" && h.charAt(0) == "."))
                    for (var g in i) this.remove(e, g + (h || ""));
                else {
                    if (h.type) {
                        f = h.handler;
                        h = h.type
                    }
                    D.each(h.split(/\s+/), function(b, a) {
                        var c = a.split(".");
                        a = c[0];
                        if (i[a]) {
                            if (f) delete i[a][f.guid];
                            else
                                for (f in i[a])
                                    if (!c[1] || i[a][f].type == c[1]) delete i[a][f]; for (ret in i[a]) break;
                            if (!ret) {
                                if (!D.event.special[a] || D.event.special[a].teardown.call(e) === false) {
                                    if (e.removeEventListener) e.removeEventListener(a, D.data(e, "handle"), false);
                                    else if (e.detachEvent) e.detachEvent("on" + a, D.data(e, "handle"))
                                }
                                ret = null;
                                delete i[a]
                            }
                        }
                    })
                }
                for (ret in i) break;
                if (!ret) {
                    var d = D.data(e, "handle");
                    if (d) d.elem = null;
                    D.removeData(e, "events");
                    D.removeData(e, "handle")
                }
            }
        },
        trigger: function(h, c, f, g, i) {
            c = D.makeArray(c);
            if (h.indexOf("!") >= 0) {
                h = h.slice(0, -1);
                var a = true
            }
            if (!f) {
                if (this.global[h]) D("*").add([window, document]).trigger(h, c)
            } else {
                if (f.nodeType == 3 || f.nodeType == 8) return undefined;
                var b, ret, fn = D.isFunction(f[h] || null),
                    event = !c[0] || !c[0].preventDefault;
                if (event) {
                    c.unshift({
                        type: h,
                        target: f,
                        preventDefault: function() {},
                        stopPropagation: function() {},
                        timeStamp: now()
                    });
                    c[0][E] = true
                }
                c[0].type = h;
                if (a) c[0].exclusive = true;
                var d = D.data(f, "handle");
                if (d) b = d.apply(f, c);
                if ((!fn || (D.nodeName(f, 'a') && h == "click")) && f["on" + h] && f["on" + h].apply(f, c) === false) b = false;
                if (event) c.shift();
                if (i && D.isFunction(i)) {
                    ret = i.apply(f, b == null ? c : c.concat(b));
                    if (ret !== undefined) b = ret
                }
                if (fn && g !== false && b !== false && !(D.nodeName(f, 'a') && h == "click")) {
                    this.triggered = true;
                    try {
                        f[h]()
                    } catch (e) {}
                }
                this.triggered = false
            }
            return b
        },
        handle: function(b) {
            var a, ret, namespace, all, handlers;
            b = arguments[0] = D.event.fix(b || window.event);
            namespace = b.type.split(".");
            b.type = namespace[0];
            namespace = namespace[1];
            all = !namespace && !b.exclusive;
            handlers = (D.data(this, "events") || {})[b.type];
            for (var j in handlers) {
                var c = handlers[j];
                if (all || c.type == namespace) {
                    b.handler = c;
                    b.data = c.data;
                    ret = c.apply(this, arguments);
                    if (a !== false) a = ret;
                    if (ret === false) {
                        b.preventDefault();
                        b.stopPropagation()
                    }
                }
            }
            return a
        },
        fix: function(b) {
            if (b[E] == true) return b;
            var d = b;
            b = {
                originalEvent: d
            };
            var c = "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");
            for (var i = c.length; i; i--) b[c[i]] = d[c[i]];
            b[E] = true;
            b.preventDefault = function() {
                if (d.preventDefault) d.preventDefault();
                d.returnValue = false
            };
            b.stopPropagation = function() {
                if (d.stopPropagation) d.stopPropagation();
                d.cancelBubble = true
            };
            b.timeStamp = b.timeStamp || now();
            if (!b.target) b.target = b.srcElement || document;
            if (b.target.nodeType == 3) b.target = b.target.parentNode;
            if (!b.relatedTarget && b.fromElement) b.relatedTarget = b.fromElement == b.target ? b.toElement : b.fromElement;
            if (b.pageX == null && b.clientX != null) {
                var a = document.documentElement,
                    body = document.body;
                b.pageX = b.clientX + (a && a.scrollLeft || body && body.scrollLeft || 0) - (a.clientLeft || 0);
                b.pageY = b.clientY + (a && a.scrollTop || body && body.scrollTop || 0) - (a.clientTop || 0)
            }
            if (!b.which && ((b.charCode || b.charCode === 0) ? b.charCode : b.keyCode)) b.which = b.charCode || b.keyCode;
            if (!b.metaKey && b.ctrlKey) b.metaKey = b.ctrlKey;
            if (!b.which && b.button) b.which = (b.button & 1 ? 1 : (b.button & 2 ? 3 : (b.button & 4 ? 2 : 0)));
            return b
        },
        proxy: function(a, b) {
            b.guid = a.guid = a.guid || b.guid || this.guid++;
            return b
        },
        special: {
            ready: {
                setup: function() {
                    bindReady();
                    return
                },
                teardown: function() {
                    return
                }
            },
            mouseenter: {
                setup: function() {
                    if (D.browser.msie) return false;
                    D(this).bind("mouseover", D.event.special.mouseenter.handler);
                    return true
                },
                teardown: function() {
                    if (D.browser.msie) return false;
                    D(this).unbind("mouseover", D.event.special.mouseenter.handler);
                    return true
                },
                handler: function(a) {
                    if (F(a, this)) return true;
                    a.type = "mouseenter";
                    return D.event.handle.apply(this, arguments)
                }
            },
            mouseleave: {
                setup: function() {
                    if (D.browser.msie) return false;
                    D(this).bind("mouseout", D.event.special.mouseleave.handler);
                    return true
                },
                teardown: function() {
                    if (D.browser.msie) return false;
                    D(this).unbind("mouseout", D.event.special.mouseleave.handler);
                    return true
                },
                handler: function(a) {
                    if (F(a, this)) return true;
                    a.type = "mouseleave";
                    return D.event.handle.apply(this, arguments)
                }
            }
        }
    };
    D.fn.extend({
        bind: function(c, a, b) {
            return c == "unload" ? this.one(c, a, b) : this.each(function() {
                D.event.add(this, c, b || a, b && a)
            })
        },
        one: function(d, b, c) {
            var e = D.event.proxy(c || b, function(a) {
                D(this).unbind(a, e);
                return (c || b).apply(this, arguments)
            });
            return this.each(function() {
                D.event.add(this, d, e, c && b)
            })
        },
        unbind: function(a, b) {
            return this.each(function() {
                D.event.remove(this, a, b)
            })
        },
        trigger: function(c, a, b) {
            return this.each(function() {
                D.event.trigger(c, a, this, true, b)
            })
        },
        triggerHandler: function(c, a, b) {
            return this[0] && D.event.trigger(c, a, this[0], false, b)
        },
        toggle: function(b) {
            var c = arguments,
                i = 1;
            while (i < c.length) D.event.proxy(b, c[i++]);
            return this.click(D.event.proxy(b, function(a) {
                this.lastToggle = (this.lastToggle || 0) % i;
                a.preventDefault();
                return c[this.lastToggle++].apply(this, arguments) || false
            }))
        },
        hover: function(a, b) {
            return this.bind('mouseenter', a).bind('mouseleave', b)
        },
        ready: function(a) {
            bindReady();
            if (D.isReady) a.call(document, D);
            else D.readyList.push(function() {
                return a.call(this, D)
            });
            return this
        }
    });
    D.extend({
        isReady: false,
        readyList: [],
        ready: function() {
            if (!D.isReady) {
                D.isReady = true;
                if (D.readyList) {
                    D.each(D.readyList, function() {
                        this.call(document)
                    });
                    D.readyList = null
                }
                D(document).triggerHandler("ready")
            }
        }
    });
    var x = false;

    function bindReady() {
        if (x) return;
        x = true;
        if (document.addEventListener && !D.browser.opera) document.addEventListener("DOMContentLoaded", D.ready, false);
        if (D.browser.msie && window == top)(function() {
            if (D.isReady) return;
            try {
                document.documentElement.doScroll("left")
            } catch (error) {
                setTimeout(arguments.callee, 0);
                return
            }
            D.ready()
        })();
        if (D.browser.opera) document.addEventListener("DOMContentLoaded", function() {
            if (D.isReady) return;
            for (var i = 0; i < document.styleSheets.length; i++)
                if (document.styleSheets[i].disabled) {
                    setTimeout(arguments.callee, 0);
                    return
                }
            D.ready()
        }, false);
        if (D.browser.safari) {
            var a;
            (function() {
                if (D.isReady) return;
                if (document.readyState != "loaded" && document.readyState != "complete") {
                    setTimeout(arguments.callee, 0);
                    return
                }
                if (a === undefined) a = D("style, link[rel=stylesheet]").length;
                if (document.styleSheets.length != a) {
                    setTimeout(arguments.callee, 0);
                    return
                }
                D.ready()
            })()
        }
        D.event.add(window, "load", D.ready)
    }
    D.each(("blur,focus,load,resize,scroll,unload,click,dblclick," + "mousedown,mouseup,mousemove,mouseover,mouseout,change,select," + "submit,keydown,keypress,keyup,error").split(","), function(i, b) {
        D.fn[b] = function(a) {
            return a ? this.bind(b, a) : this.trigger(b)
        }
    });
    var F = function(a, c) {
        var b = a.relatedTarget;
        while (b && b != c) try {
            b = b.parentNode
        } catch (error) {
            b = c
        }
        return b == c
    };
    D(window).bind("unload", function() {
        D("*").add(document).unbind()
    });
    D.fn.extend({
        _load: D.fn.load,
        load: function(g, d, c) {
            if (typeof g != 'string') return this._load(g);
            var e = g.indexOf(" ");
            if (e >= 0) {
                var i = g.slice(e, g.length);
                g = g.slice(0, e)
            }
            c = c || function() {};
            var f = "GET";
            if (d)
                if (D.isFunction(d)) {
                    c = d;
                    d = null
                } else {
                    d = D.param(d);
                    f = "POST"
                }
            var h = this;
            D.ajax({
                url: g,
                type: f,
                dataType: "html",
                data: d,
                complete: function(a, b) {
                    if (b == "success" || b == "notmodified") h.html(i ? D("<div/>").append(a.responseText.replace(/<script(.|\s)*?\/script>/g, "")).find(i) : a.responseText);
                    h.each(c, [a.responseText, b, a])
                }
            });
            return this
        },
        serialize: function() {
            return D.param(this.serializeArray())
        },
        serializeArray: function() {
            return this.map(function() {
                return D.nodeName(this, "form") ? D.makeArray(this.elements) : this
            }).filter(function() {
                return this.name && !this.disabled && (this.checked || /select|textarea/i.test(this.nodeName) || /text|hidden|password/i.test(this.type))
            }).map(function(i, c) {
                var b = D(this).val();
                return b == null ? null : b.constructor == Array ? D.map(b, function(a, i) {
                    return {
                        name: c.name,
                        value: a
                    }
                }) : {
                    name: c.name,
                    value: b
                }
            }).get()
        }
    });
    D.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","), function(i, o) {
        D.fn[o] = function(f) {
            return this.bind(o, f)
        }
    });
    var B = now();
    D.extend({get: function(d, b, a, c) {
            if (D.isFunction(b)) {
                a = b;
                b = null
            }
            return D.ajax({
                type: "GET",
                url: d,
                data: b,
                success: a,
                dataType: c
            })
        },
        getScript: function(b, a) {
            return D.get(b, null, a, "script")
        },
        getJSON: function(c, b, a) {
            return D.get(c, b, a, "json")
        },
        post: function(d, b, a, c) {
            if (D.isFunction(b)) {
                a = b;
                b = {}
            }
            return D.ajax({
                type: "POST",
                url: d,
                data: b,
                success: a,
                dataType: c
            })
        },
        ajaxSetup: function(a) {
            D.extend(D.ajaxSettings, a)
        },
        ajaxSettings: {
            url: location.href,
            global: true,
            type: "GET",
            timeout: 0,
            contentType: "application/x-www-form-urlencoded",
            processData: true,
            async: true,
            data: null,
            username: null,
            password: null,
            accepts: {
                xml: "application/xml, text/xml",
                html: "text/html",
                script: "text/javascript, application/javascript",
                json: "application/json, text/javascript",
                text: "text/plain",
                _default: "*/*"
            }
        },
        lastModified: {},
        ajax: function(s) {
            s = D.extend(true, s, D.extend(true, {}, D.ajaxSettings, s));
            var g, jsre = /=\?(&|$)/g,
                status, data, type = s.type.toUpperCase();
            if (s.data && s.processData && typeof s.data != "string") s.data = D.param(s.data);
            if (s.dataType == "jsonp") {
                if (type == "GET") {
                    if (!s.url.match(jsre)) s.url += (s.url.match(/\?/) ? "&" : "?") + (s.jsonp || "callback") + "=?"
                } else if (!s.data || !s.data.match(jsre)) s.data = (s.data ? s.data + "&" : "") + (s.jsonp || "callback") + "=?";
                s.dataType = "json"
            }
            if (s.dataType == "json" && (s.data && s.data.match(jsre) || s.url.match(jsre))) {
                g = "jsonp" + B++;
                if (s.data) s.data = (s.data + "").replace(jsre, "=" + g + "$1");
                s.url = s.url.replace(jsre, "=" + g + "$1");
                s.dataType = "script";
                window[g] = function(a) {
                    data = a;
                    success();
                    complete();
                    window[g] = undefined;
                    try {
                        delete window[g]
                    } catch (e) {}
                    if (i) i.removeChild(h)
                }
            }
            if (s.dataType == "script" && s.cache == null) s.cache = false;
            if (s.cache === false && type == "GET") {
                var j = now();
                var k = s.url.replace(/(\?|&)_=.*?(&|$)/, "$1_=" + j + "$2");
                s.url = k + ((k == s.url) ? (s.url.match(/\?/) ? "&" : "?") + "_=" + j : "")
            }
            if (s.data && type == "GET") {
                s.url += (s.url.match(/\?/) ? "&" : "?") + s.data;
                s.data = null
            }
            if (s.global && !D.active++) D.event.trigger("ajaxStart");
            var n = /^(?:\w+:)?\/\/([^\/?#]+)/;
            if (s.dataType == "script" && type == "GET" && n.test(s.url) && n.exec(s.url)[1] != location.host) {
                var i = document.getElementsByTagName("head")[0];
                var h = document.createElement("script");
                h.src = s.url;
                if (s.scriptCharset) h.charset = s.scriptCharset;
                if (!g) {
                    var l = false;
                    h.onload = h.onreadystatechange = function() {
                        if (!l && (!this.readyState || this.readyState == "loaded" || this.readyState == "complete")) {
                            l = true;
                            success();
                            complete();
                            i.removeChild(h)
                        }
                    }
                }
                i.appendChild(h);
                return undefined
            }
            var m = false;
            var c = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
            if (s.username) c.open(type, s.url, s.async, s.username, s.password);
            else c.open(type, s.url, s.async);
            try {
                if (s.data) c.setRequestHeader("Content-Type", s.contentType);
                if (s.ifModified) c.setRequestHeader("If-Modified-Since", D.lastModified[s.url] || "Thu, 01 Jan 1970 00:00:00 GMT");
                c.setRequestHeader("X-Requested-With", "XMLHttpRequest");
                c.setRequestHeader("Accept", s.dataType && s.accepts[s.dataType] ? s.accepts[s.dataType] + ", */*" : s.accepts._default)
            } catch (e) {}
            if (s.beforeSend && s.beforeSend(c, s) === false) {
                s.global && D.active--;
                c.abort();
                return false
            }
            if (s.global) D.event.trigger("ajaxSend", [c, s]);
            var d = function(a) {
                if (!m && c && (c.readyState == 4 || a == "timeout")) {
                    m = true;
                    if (f) {
                        clearInterval(f);
                        f = null
                    }
                    status = a == "timeout" && "timeout" || !D.httpSuccess(c) && "error" || s.ifModified && D.httpNotModified(c, s.url) && "notmodified" || "success";
                    if (status == "success") {
                        try {
                            data = D.httpData(c, s.dataType, s.dataFilter)
                        } catch (e) {
                            status = "parsererror"
                        }
                    }
                    if (status == "success") {
                        var b;
                        try {
                            b = c.getResponseHeader("Last-Modified")
                        } catch (e) {}
                        if (s.ifModified && b) D.lastModified[s.url] = b;
                        if (!g) success()
                    } else D.handleError(s, c, status);
                    complete();
                    if (s.async) c = null
                }
            };
            if (s.async) {
                var f = setInterval(d, 13);
                if (s.timeout > 0) setTimeout(function() {
                    if (c) {
                        c.abort();
                        if (!m) d("timeout")
                    }
                }, s.timeout)
            }
            try {
                c.send(s.data)
            } catch (e) {
                D.handleError(s, c, null, e)
            }
            if (!s.async) d();

            function success() {
                if (s.success) s.success(data, status);
                if (s.global) D.event.trigger("ajaxSuccess", [c, s])
            }

            function complete() {
                if (s.complete) s.complete(c, status);
                if (s.global) D.event.trigger("ajaxComplete", [c, s]);
                if (s.global && !--D.active) D.event.trigger("ajaxStop")
            }
            return c
        },
        handleError: function(s, a, b, e) {
            if (s.error) s.error(a, b, e);
            if (s.global) D.event.trigger("ajaxError", [a, s, e])
        },
        active: 0,
        httpSuccess: function(a) {
            try {
                return !a.status && location.protocol == "file:" || (a.status >= 200 && a.status < 300) || a.status == 304 || a.status == 1223 || D.browser.safari && a.status == undefined
            } catch (e) {}
            return false
        },
        httpNotModified: function(a, c) {
            try {
                var b = a.getResponseHeader("Last-Modified");
                return a.status == 304 || b == D.lastModified[c] || D.browser.safari && a.status == undefined
            } catch (e) {}
            return false
        },
        httpData: function(a, c, b) {
            var d = a.getResponseHeader("content-type"),
                xml = c == "xml" || !c && d && d.indexOf("xml") >= 0,
                data = xml ? a.responseXML : a.responseText;
            if (xml && data.documentElement.tagName == "parsererror") throw "parsererror";
            if (b) data = b(data, c);
            if (c == "script") D.globalEval(data);
            if (c == "json") data = eval("(" + data + ")");
            return data
        },
        param: function(a) {
            var s = [];
            if (a.constructor == Array || a.jquery) D.each(a, function() {
                s.push(encodeURIComponent(this.name) + "=" + encodeURIComponent(this.value))
            });
            else
                for (var j in a)
                    if (a[j] && a[j].constructor == Array) D.each(a[j], function() {
                        s.push(encodeURIComponent(j) + "=" + encodeURIComponent(this))
                    });
                    else s.push(encodeURIComponent(j) + "=" + encodeURIComponent(D.isFunction(a[j]) ? a[j]() : a[j])); return s.join("&").replace(/%20/g, "+")
        }
    });
    D.fn.extend({
        show: function(c, b) {
            return c ? this.animate({
                height: "show",
                width: "show",
                opacity: "show"
            }, c, b) : this.filter(":hidden").each(function() {
                this.style.display = this.oldblock || "";
                if (D.css(this, "display") == "none") {
                    var a = D("<" + this.tagName + " />").appendTo("body");
                    this.style.display = a.css("display");
                    if (this.style.display == "none") this.style.display = "block";
                    a.remove()
                }
            }).end()
        },
        hide: function(b, a) {
            return b ? this.animate({
                height: "hide",
                width: "hide",
                opacity: "hide"
            }, b, a) : this.filter(":visible").each(function() {
                this.oldblock = this.oldblock || D.css(this, "display");
                this.style.display = "none"
            }).end()
        },
        _toggle: D.fn.toggle,
        toggle: function(a, b) {
            return D.isFunction(a) && D.isFunction(b) ? this._toggle.apply(this, arguments) : a ? this.animate({
                height: "toggle",
                width: "toggle",
                opacity: "toggle"
            }, a, b) : this.each(function() {
                D(this)[D(this).is(":hidden") ? "show" : "hide"]()
            })
        },
        slideDown: function(b, a) {
            return this.animate({
                height: "show"
            }, b, a)
        },
        slideUp: function(b, a) {
            return this.animate({
                height: "hide"
            }, b, a)
        },
        slideToggle: function(b, a) {
            return this.animate({
                height: "toggle"
            }, b, a)
        },
        fadeIn: function(b, a) {
            return this.animate({
                opacity: "show"
            }, b, a)
        },
        fadeOut: function(b, a) {
            return this.animate({
                opacity: "hide"
            }, b, a)
        },
        fadeTo: function(c, a, b) {
            return this.animate({
                opacity: a
            }, c, b)
        },
        animate: function(k, j, i, g) {
            var h = D.speed(j, i, g);
            return this[h.queue === false ? "each" : "queue"](function() {
                if (this.nodeType != 1) return false;
                var f = D.extend({}, h),
                    p, hidden = D(this).is(":hidden"),
                    self = this;
                for (p in k) {
                    if (k[p] == "hide" && hidden || k[p] == "show" && !hidden) return f.complete.call(this);
                    if (p == "height" || p == "width") {
                        f.display = D.css(this, "display");
                        f.overflow = this.style.overflow
                    }
                }
                if (f.overflow != null) this.style.overflow = "hidden";
                f.curAnim = D.extend({}, k);
                D.each(k, function(c, a) {
                    var e = new D.fx(self, f, c);
                    if (/toggle|show|hide/.test(a)) e[a == "toggle" ? hidden ? "show" : "hide" : a](k);
                    else {
                        var b = a.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),
                            start = e.cur(true) || 0;
                        if (b) {
                            var d = parseFloat(b[2]),
                                unit = b[3] || "px";
                            if (unit != "px") {
                                self.style[c] = (d || 1) + unit;
                                start = ((d || 1) / e.cur(true)) * start;
                                self.style[c] = start + unit
                            }
                            if (b[1]) d = ((b[1] == "-=" ? -1 : 1) * d) + start;
                            e.custom(start, d, unit)
                        } else e.custom(start, a, "")
                    }
                });
                return true
            })
        },
        queue: function(a, b) {
            if (D.isFunction(a) || (a && a.constructor == Array)) {
                b = a;
                a = "fx"
            }
            if (!a || (typeof a == "string" && !b)) return A(this[0], a);
            return this.each(function() {
                if (b.constructor == Array) A(this, a, b);
                else {
                    A(this, a).push(b);
                    if (A(this, a).length == 1) b.call(this)
                }
            })
        },
        stop: function(b, c) {
            var a = D.timers;
            if (b) this.queue([]);
            this.each(function() {
                for (var i = a.length - 1; i >= 0; i--)
                    if (a[i].elem == this) {
                        if (c) a[i](true);
                        a.splice(i, 1)
                    }
            });
            if (!c) this.dequeue();
            return this
        }
    });
    var A = function(b, c, a) {
        if (b) {
            c = c || "fx";
            var q = D.data(b, c + "queue");
            if (!q || a) q = D.data(b, c + "queue", D.makeArray(a))
        }
        return q
    };
    D.fn.dequeue = function(a) {
        a = a || "fx";
        return this.each(function() {
            var q = A(this, a);
            q.shift();
            if (q.length) q[0].call(this)
        })
    };
    D.extend({
        speed: function(b, a, c) {
            var d = b && b.constructor == Object ? b : {
                complete: c || !c && a || D.isFunction(b) && b,
                duration: b,
                easing: c && a || a && a.constructor != Function && a
            };
            d.duration = (d.duration && d.duration.constructor == Number ? d.duration : D.fx.speeds[d.duration]) || D.fx.speeds.def;
            d.old = d.complete;
            d.complete = function() {
                if (d.queue !== false) D(this).dequeue();
                if (D.isFunction(d.old)) d.old.call(this)
            };
            return d
        },
        easing: {
            linear: function(p, n, b, a) {
                return b + a * p
            },
            swing: function(p, n, b, a) {
                return ((-Math.cos(p * Math.PI) / 2) + 0.5) * a + b
            }
        },
        timers: [],
        timerId: null,
        fx: function(b, c, a) {
            this.options = c;
            this.elem = b;
            this.prop = a;
            if (!c.orig) c.orig = {}
        }
    });
    D.fx.prototype = {
        update: function() {
            if (this.options.step) this.options.step.call(this.elem, this.now, this);
            (D.fx.step[this.prop] || D.fx.step._default)(this);
            if (this.prop == "height" || this.prop == "width") this.elem.style.display = "block"
        },
        cur: function(a) {
            if (this.elem[this.prop] != null && this.elem.style[this.prop] == null) return this.elem[this.prop];
            var r = parseFloat(D.css(this.elem, this.prop, a));
            return r && r > -10000 ? r : parseFloat(D.curCSS(this.elem, this.prop)) || 0
        },
        custom: function(c, b, d) {
            this.startTime = now();
            this.start = c;
            this.end = b;
            this.unit = d || this.unit || "px";
            this.now = this.start;
            this.pos = this.state = 0;
            this.update();
            var e = this;

            function t(a) {
                return e.step(a)
            }
            t.elem = this.elem;
            D.timers.push(t);
            if (D.timerId == null) {
                D.timerId = setInterval(function() {
                    var a = D.timers;
                    for (var i = 0; i < a.length; i++)
                        if (!a[i]()) a.splice(i--, 1);
                    if (!a.length) {
                        clearInterval(D.timerId);
                        D.timerId = null
                    }
                }, 13)
            }
        },
        show: function() {
            this.options.orig[this.prop] = D.attr(this.elem.style, this.prop);
            this.options.show = true;
            this.custom(0, this.cur());
            if (this.prop == "width" || this.prop == "height") this.elem.style[this.prop] = "1px";
            D(this.elem).show()
        },
        hide: function() {
            this.options.orig[this.prop] = D.attr(this.elem.style, this.prop);
            this.options.hide = true;
            this.custom(this.cur(), 0)
        },
        step: function(a) {
            var t = now();
            if (a || t > this.options.duration + this.startTime) {
                this.now = this.end;
                this.pos = this.state = 1;
                this.update();
                this.options.curAnim[this.prop] = true;
                var b = true;
                for (var i in this.options.curAnim)
                    if (this.options.curAnim[i] !== true) b = false;
                if (b) {
                    if (this.options.display != null) {
                        this.elem.style.overflow = this.options.overflow;
                        this.elem.style.display = this.options.display;
                        if (D.css(this.elem, "display") == "none") this.elem.style.display = "block"
                    }
                    if (this.options.hide) this.elem.style.display = "none";
                    if (this.options.hide || this.options.show)
                        for (var p in this.options.curAnim) D.attr(this.elem.style, p, this.options.orig[p])
                }
                if (b) this.options.complete.call(this.elem);
                return false
            } else {
                var n = t - this.startTime;
                this.state = n / this.options.duration;
                this.pos = D.easing[this.options.easing || (D.easing.swing ? "swing" : "linear")](this.state, n, 0, 1, this.options.duration);
                this.now = this.start + ((this.end - this.start) * this.pos);
                this.update()
            }
            return true
        }
    };
    D.extend(D.fx, {
        speeds: {
            slow: 600,
            fast: 200,
            def: 400
        },
        step: {
            scrollLeft: function(a) {
                a.elem.scrollLeft = a.now
            },
            scrollTop: function(a) {
                a.elem.scrollTop = a.now
            },
            opacity: function(a) {
                D.attr(a.elem.style, "opacity", a.now)
            },
            _default: function(a) {
                a.elem.style[a.prop] = a.now + a.unit
            }
        }
    });
    D.fn.offset = function() {
        var b = 0,
            top = 0,
            elem = this[0],
            results;
        if (elem) with(D.browser) {
            var d = elem.parentNode,
                offsetChild = elem,
                offsetParent = elem.offsetParent,
                doc = elem.ownerDocument,
                safari2 = safari && parseInt(version) < 522 && !/adobeair/i.test(v),
                css = D.curCSS,
                fixed = css(elem, "position") == "fixed";
            if (elem.getBoundingClientRect) {
                var c = elem.getBoundingClientRect();
                add(c.left + Math.max(doc.documentElement.scrollLeft, doc.body.scrollLeft), c.top + Math.max(doc.documentElement.scrollTop, doc.body.scrollTop));
                add(-doc.documentElement.clientLeft, -doc.documentElement.clientTop)
            } else {
                add(elem.offsetLeft, elem.offsetTop);
                while (offsetParent) {
                    add(offsetParent.offsetLeft, offsetParent.offsetTop);
                    if (mozilla && !/^t(able|d|h)$/i.test(offsetParent.tagName) || safari && !safari2) border(offsetParent);
                    if (!fixed && css(offsetParent, "position") == "fixed") fixed = true;
                    offsetChild = /^body$/i.test(offsetParent.tagName) ? offsetChild : offsetParent;
                    offsetParent = offsetParent.offsetParent
                }
                while (d && d.tagName && !/^body|html$/i.test(d.tagName)) {
                    if (!/^inline|table.*$/i.test(css(d, "display"))) add(-d.scrollLeft, -d.scrollTop);
                    if (mozilla && css(d, "overflow") != "visible") border(d);
                    d = d.parentNode
                }
                if ((safari2 && (fixed || css(offsetChild, "position") == "absolute")) || (mozilla && css(offsetChild, "position") != "absolute")) add(-doc.body.offsetLeft, -doc.body.offsetTop);
                if (fixed) add(Math.max(doc.documentElement.scrollLeft, doc.body.scrollLeft), Math.max(doc.documentElement.scrollTop, doc.body.scrollTop))
            }
            results = {
                top: top,
                left: b
            }
        }

        function border(a) {
            add(D.curCSS(a, "borderLeftWidth", true), D.curCSS(a, "borderTopWidth", true))
        }

        function add(l, t) {
            b += parseInt(l, 10) || 0;
            top += parseInt(t, 10) || 0
        }
        return results
    };
    D.fn.extend({
        position: function() {
            var a = 0,
                top = 0,
                results;
            if (this[0]) {
                var b = this.offsetParent(),
                    offset = this.offset(),
                    parentOffset = /^body|html$/i.test(b[0].tagName) ? {
                        top: 0,
                        left: 0
                    } : b.offset();
                offset.top -= num(this, 'marginTop');
                offset.left -= num(this, 'marginLeft');
                parentOffset.top += num(b, 'borderTopWidth');
                parentOffset.left += num(b, 'borderLeftWidth');
                results = {
                    top: offset.top - parentOffset.top,
                    left: offset.left - parentOffset.left
                }
            }
            return results
        },
        offsetParent: function() {
            var a = this[0].offsetParent;
            while (a && (!/^body|html$/i.test(a.tagName) && D.css(a, 'position') == 'static')) a = a.offsetParent;
            return D(a)
        }
    });
    D.each(['Left', 'Top'], function(i, b) {
        var c = 'scroll' + b;
        D.fn[c] = function(a) {
            if (!this[0]) return;
            return a != undefined ? this.each(function() {
                this == window || this == document ? window.scrollTo(!i ? a : D(window).scrollLeft(), i ? a : D(window).scrollTop()) : this[c] = a
            }) : this[0] == window || this[0] == document ? self[i ? 'pageYOffset' : 'pageXOffset'] || D.boxModel && document.documentElement[c] || document.body[c] : this[0][c]
        }
    });
    D.each(["Height", "Width"], function(i, b) {
        var c = i ? "Left" : "Top",
            br = i ? "Right" : "Bottom";
        D.fn["inner" + b] = function() {
            return this[b.toLowerCase()]() + num(this, "padding" + c) + num(this, "padding" + br)
        };
        D.fn["outer" + b] = function(a) {
            return this["inner" + b]() + num(this, "border" + c + "Width") + num(this, "border" + br + "Width") + (a ? num(this, "margin" + c) + num(this, "margin" + br) : 0)
        }
    })
})();
                                    

Executed Writes (0)



HTTP Transactions (34)


Request Response
                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "763E2DADFDD286A51327CD2000CA335E30CD0B9B7267875D22CA33F7556BA200"
Last-Modified: Fri, 30 Sep 2022 09:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=6407
Expires: Fri, 30 Sep 2022 23:13:17 GMT
Date: Fri, 30 Sep 2022 21:26:30 GMT
Connection: keep-alive

                                        
                                            GET /v1/ HTTP/1.1 
Host: firefox.settings.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         143.204.55.36
HTTP/1.1 200 OK
Content-Type: application/json
                                        
Content-Length: 939
Connection: keep-alive
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: Content-Type, Alert, Backoff, Retry-After, Content-Length
Cache-Control: max-stale=0
Content-Security-Policy: default-src 'none'; frame-ancestors 'none'; base-uri 'none';
Date: Fri, 30 Sep 2022 20:27:10 GMT
X-Content-Type-Options: nosniff
X-Cache: Hit from cloudfront
Via: 1.1 50584ad285d5f627ddebae74efdd0770.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: OSL50-C1
X-Amz-Cf-Id: SANmQTm6m4_KauCHv5LaCBDcOIzyShx8Q-VAurGiuBbGVJaNl1yYdA==
Age: 3560


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with very long lines (939), with no line terminators
Size:   939
Md5:    2d12f67fe57a87e7366b662d153a5582
Sha1:   d7b02d81cc74f24a251d9363e0f4b0a149264ec1
Sha256: 73c273c0b5a2de3cb970b8e8c187999d3b55e760dc7766dab4bb76428d19b551
                                        
                                            GET /chains/remote-settings.content-signature.mozilla.org-2022-10-30-18-47-44.chain HTTP/1.1 
Host: content-signature-2.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

                                         
                                         143.204.55.25
HTTP/2 200 OK
content-type: binary/octet-stream
                                        
content-length: 5348
last-modified: Sat, 10 Sep 2022 18:47:45 GMT
content-disposition: attachment
accept-ranges: bytes
server: AmazonS3
date: Fri, 30 Sep 2022 05:28:28 GMT
etag: "6113f8408c59aebe188d6af273b90743"
x-cache: Hit from cloudfront
via: 1.1 f00e3524edcdf61801454f2bb21e71ce.cloudfront.net (CloudFront)
x-amz-cf-pop: OSL50-C1
x-amz-cf-id: Ddy7aSE_myr7tw3o6IE9EYzYuQWzJvX5Q4A7pn2TpAH4IgkW-JtOUg==
age: 57483
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  PEM certificate\012- , ASCII text
Size:   5348
Md5:    6113f8408c59aebe188d6af273b90743
Sha1:   7398873bf00f99944eaa77ad3ebc0d43c23dba6b
Sha256: b6e0cc9ad68306208a160f3835fb8da76acc5a82d8fde1da5a98e1de1c11a770
                                        
                                            GET /MAIL903-01921/?hash=redacted@slurpmail.net HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
                                        
Date: Fri, 30 Sep 2022 21:26:30 GMT
Server: Apache/2.4.41 (Ubuntu)
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 89
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  HTML document, Unicode text, UTF-8 (with BOM) text, with CRLF line terminators
Size:   89
Md5:    271c2620bcf656c079e714538d93e01b
Sha1:   eb9636ac86e50dd3855c68add07227f79ed80cff
Sha256: b3315701a835e36be5f5aa2dcaaa58ffbc3c059093aad665deaac57d608f4edd

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - fortinet: Phishing
                                        
                                            GET /v1/tiles HTTP/1.1 
Host: contile.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         34.117.237.239
HTTP/2 200 OK
content-type: application/json
                                        
server: nginx
date: Fri, 30 Sep 2022 21:26:30 GMT
content-length: 12
strict-transport-security: max-age=31536000
via: 1.1 google
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with no line terminators
Size:   12
Md5:    23e88fb7b99543fb33315b29b1fad9d6
Sha1:   a48926c4ec03c7c8a4e8dffcd31e5a6cdda417ce
Sha256: 7d8f1de8b7de7bc21dfb546a1d0c51bf31f16eee5fad49dbceae1e76da38e5c3
                                        
                                            GET /MAIL903-01921/acesso/ HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/?hash=redacted@slurpmail.net
Upgrade-Insecure-Requests: 1

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
                                        
Date: Fri, 30 Sep 2022 21:26:31 GMT
Server: Apache/2.4.41 (Ubuntu)
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 101
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive


--- Additional Info ---
Magic:  HTML document text\012- HTML document, ASCII text, with CRLF line terminators
Size:   101
Md5:    0cac56be84ee5996d59dd59bfbac63a9
Sha1:   b10fdc7e242ddd38a10b58903acafe6578ab7c90
Sha256: aa9de99a061451d5fa00d7f044debf726cbc54cc066004349608bc523f4b75ca

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - fortinet: Phishing
    - quad9: Sinkholed
                                        
                                            GET /v1/buckets/main/collections/ms-language-packs/records/cfr-v1-en-US HTTP/1.1 
Host: firefox.settings.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: application/json
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         143.204.55.36
HTTP/1.1 200 OK
Content-Type: application/json
                                        
Content-Length: 329
Connection: keep-alive
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: ETag, Expires, Content-Length, Cache-Control, Pragma, Content-Type, Alert, Backoff, Last-Modified, Retry-After
Content-Security-Policy: default-src 'none'; frame-ancestors 'none'; base-uri 'none';
Last-Modified: Fri, 25 Mar 2022 17:45:46 GMT
Strict-Transport-Security: max-age=31536000
X-Content-Type-Options: nosniff
Date: Fri, 30 Sep 2022 20:29:33 GMT
Cache-Control: max-age=3600, max-age=3600
Expires: Fri, 30 Sep 2022 20:56:52 GMT
ETag: "1648230346554"
X-Cache: Hit from cloudfront
Via: 1.1 501ad2910f631f0520a6d389d6f053e8.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: OSL50-C1
X-Amz-Cf-Id: FlTc9vdGxiDSDMaGTjrXKyUTe94WatiAvuCIRWSEoWeu4-aAmYsmBg==
Age: 3418


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with very long lines (329), with no line terminators
Size:   329
Md5:    0333b0655111aa68de771adfcc4db243
Sha1:   63f295a144ac87a7c8e23417626724eeca68a7eb
Sha256: 60636eb1dc67c9ed000fe0b49f03777ad6f549cb1d2b9ff010cf198465ae6300
                                        
                                            GET /MAIL903-01921/acesso/loginsaltent.php HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
                                        
Date: Fri, 30 Sep 2022 21:26:31 GMT
Server: Apache/2.4.41 (Ubuntu)
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 1753
Keep-Alive: timeout=5, max=98
Connection: Keep-Alive


--- Additional Info ---
Magic:  HTML document text\012- HTML document text\012- HTML document text\012- HTML document text\012- HTML document text\012- HTML document text\012- HTML document text\012- HTML document text\012- HTML document text\012- exported SGML document, Unicode text, UTF-8 (with BOM) text, with very long lines (916), with CRLF line terminators
Size:   1753
Md5:    48e41ee4fbca62a7b7c7279019af6fd2
Sha1:   5f0bec3eaf2f3f17f2b39d3bc1d3096bae341015
Sha256: 8ae7669280651aeceb882166466ca49e2b6aecd42c1a2adfe1998f2c8dec3a50

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - openphish: Microsoft OneDrive
    - phishtank: Other
    - fortinet: Phishing
    - quad9: Sinkholed
                                        
                                            GET /shared/1.0/content/images/signin-options_4e48046ce74f4b89d45037c90576bfac.svg HTTP/1.1 
Host: logincdn.msauth.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site
TE: trailers

                                         
                                         192.229.221.185
HTTP/2 200 OK
content-type: image/svg+xml
                                        
content-encoding: gzip
accept-ranges: bytes
access-control-allow-origin: *
access-control-expose-headers: x-ms-request-id,Server,x-ms-version,Content-Length,Date,Transfer-Encoding
age: 9491907
cache-control: public, max-age=31536000
content-md5: R2FAVxfpONfnQAuxVxXbHg==
date: Fri, 30 Sep 2022 21:26:31 GMT
etag: 0x8D8852A7FCCA219
last-modified: Tue, 10 Nov 2020 03:41:25 GMT
server: ECAcc (ska/F695)
vary: Accept-Encoding
x-cache: HIT
x-ms-blob-type: BlockBlob
x-ms-lease-status: unlocked
x-ms-request-id: b38c6328-201e-007d-0dbf-7ed1d0000000
x-ms-version: 2009-09-19
content-length: 621
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  SVG Scalable Vector Graphics image\012- HTML document, ASCII text, with very long lines (1592), with no line terminators
Size:   621
Md5:    4761405717e938d7e7400bb15715db1e
Sha1:   76fed7c229d353a27db3257f5927c1eaf0ab8de9
Sha256: f7ed91a1dab5bb2802a7a3b3890df4777588ccbe04903260fba83e6e64c90ddf
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Fri, 30 Sep 2022 21:26:31 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 1669
Cache-Control: 'max-age=158059'
Date: Fri, 30 Sep 2022 21:26:31 GMT
Last-Modified: Fri, 30 Sep 2022 20:58:42 GMT
Server: ECS (ska/F710)
X-Cache: HIT
Content-Length: 471

                                        
                                            GET /MAIL903-01921/acesso/css/bootstrap-theme.min.css HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: text/css
                                        
Date: Fri, 30 Sep 2022 21:26:31 GMT
Server: Apache/2.4.41 (Ubuntu)
Last-Modified: Wed, 28 Sep 2022 14:33:28 GMT
ETag: "5aca-5e9bda4f25738-gzip"
Accept-Ranges: bytes
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 2657
Keep-Alive: timeout=5, max=97
Connection: Keep-Alive


--- Additional Info ---
Magic:  ASCII text, with very long lines (23189), with CRLF line terminators
Size:   2657
Md5:    c05801d60522a49dba185c50979f4e67
Sha1:   e96615fad360d25cdab5c97e45c9c542050694ea
Sha256: e608041ebe46445007a76b02b8bf75ac7c39974ae9d13090d72b02a5c3430ecd

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - quad9: Sinkholed
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Fri, 30 Sep 2022 21:26:31 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            GET /MAIL903-01921/acesso/js/bootstrap.min.js HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: application/javascript
                                        
Date: Fri, 30 Sep 2022 21:26:31 GMT
Server: Apache/2.4.41 (Ubuntu)
Last-Modified: Wed, 28 Sep 2022 14:34:03 GMT
ETag: "9039-5e9bda6ff6bc5-gzip"
Accept-Ranges: bytes
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 9756
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  ASCII text, with very long lines (32033), with CRLF line terminators
Size:   9756
Md5:    ee63f3a8651255cb7a79eaca8ff095f8
Sha1:   90f73043c203177a3f9bef40cc0e1e83d14160a0
Sha256: 6b67bf28769c65472ecb2efd2a51aad5a6cdddcf68993b14a2b82e92cbbefa2c

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - fortinet: Phishing
    - quad9: Sinkholed
                                        
                                            GET /MAIL903-01921/acesso/css/bootstrap.min.css HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: text/css
                                        
Date: Fri, 30 Sep 2022 21:26:31 GMT
Server: Apache/2.4.41 (Ubuntu)
Last-Modified: Wed, 28 Sep 2022 14:33:30 GMT
ETag: "1d878-5e9bda50dce66-gzip"
Accept-Ranges: bytes
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 19615
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  ASCII text, with very long lines (65536), with no line terminators
Size:   19615
Md5:    0f3d5e959c4109846ffed09bcf9f8ecd
Sha1:   2ac8e443beab5044bf007856c440a70f51b71334
Sha256: 710370001e18743a4e681de1daa37fa01faa5c0fe325993cfeec64e229d80fd7

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - quad9: Sinkholed
                                        
                                            GET /MAIL903-01921/acesso/js/verificarUsuario.js HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: application/javascript
                                        
Date: Fri, 30 Sep 2022 21:26:31 GMT
Server: Apache/2.4.41 (Ubuntu)
Last-Modified: Wed, 28 Sep 2022 14:34:06 GMT
ETag: "25a-5e9bda72ed848-gzip"
Accept-Ranges: bytes
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 330
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  ASCII text
Size:   330
Md5:    ab47f9ac911c68abf9d9bcd8fcd55c94
Sha1:   b0a7fb172bbf017dd7df99178185b773670c7711
Sha256: a944abbffe2785e6aafb17b9cb7bafef398294a7bfc5db8e6b5d67c2974dd602

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - fortinet: Phishing
    - quad9: Sinkholed
                                        
                                            GET /MAIL903-01921/acesso/js/jquery-vv.min.js HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: application/javascript
                                        
Date: Fri, 30 Sep 2022 21:26:31 GMT
Server: Apache/2.4.41 (Ubuntu)
Last-Modified: Wed, 28 Sep 2022 14:34:04 GMT
ETag: "7943-5e9bda70b623e-gzip"
Accept-Ranges: bytes
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 15662
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  ASCII text, with very long lines (30775), with CRLF line terminators
Size:   15662
Md5:    3697b245f370ad57bb347d40c5bb9675
Sha1:   368d145150c1374a3ef896da267db795353bd0c5
Sha256: 892322f36476852cf8cd8b09530919098ee9d27483bb5dc2d0fd558848cc255e

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - fortinet: Phishing
    - quad9: Sinkholed
                                        
                                            GET / HTTP/1.1 
Host: push.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Sec-WebSocket-Version: 13
Origin: wss://push.services.mozilla.com/
Sec-WebSocket-Protocol: push-notification
Sec-WebSocket-Extensions: permessage-deflate
Sec-WebSocket-Key: fqfrTY6y2Vv4tJ9ZtMdykw==
Connection: keep-alive, Upgrade
Sec-Fetch-Dest: websocket
Sec-Fetch-Mode: websocket
Sec-Fetch-Site: cross-site
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket

                                         
                                         52.43.46.140
HTTP/1.1 101 Switching Protocols
                                        
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Accept: K9oS3xBPUO4KgXefKCuUnaciVg8=

                                        
                                            GET /MAIL903-01921/acesso/img/microsoft_logo.svg HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: image/svg+xml
                                        
Date: Fri, 30 Sep 2022 21:26:32 GMT
Server: Apache/2.4.41 (Ubuntu)
Last-Modified: Wed, 28 Sep 2022 14:33:56 GMT
ETag: "e43-5e9bda68f6c2e"
Accept-Ranges: bytes
Content-Length: 3651
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive


--- Additional Info ---
Magic:  SVG Scalable Vector Graphics image\012- HTML document, ASCII text, with very long lines (3651), with no line terminators
Size:   3651
Md5:    ee5c8d9fb6248c938fd0dc19370e90bd
Sha1:   d01a22720918b781338b5bbf9202b241a5f99ee4
Sha256: 04d29248ee3a13a074518c93a18d6efc491bf1f298f9b87fc989a6ae4b9fad7a

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - fortinet: Phishing
    - quad9: Sinkholed
                                        
                                            POST /MAIL903-01921/acesso/webserver.php HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: application/json, text/javascript, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
X-Requested-With: XMLHttpRequest
Content-Length: 51
Origin: http://capactmicroftmas.dns.army
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php

                                         
                                         20.169.54.120
HTTP/1.1 404 Not Found
Content-Type: text/html; charset=iso-8859-1
                                        
Date: Fri, 30 Sep 2022 21:26:32 GMT
Server: Apache/2.4.41 (Ubuntu)
Content-Length: 287
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive


--- Additional Info ---
Magic:  HTML document text\012- HTML document text\012- HTML document text\012- HTML document text\012- exported SGML document, ASCII text
Size:   287
Md5:    8b65aa0eee4a99130cc12993752200ef
Sha1:   0f83e5e59a5bb196c49d17b6e89bb470aa3ad7f0
Sha256: 62158782fca21c9ee727fb2f3c184e131e1e94c68aa6f7bb7dde1d51990d378d

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - fortinet: Phishing
    - quad9: Sinkholed
                                        
                                            GET /MAIL903-01921/acesso/img/hotmail.ico HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php

                                         
                                         20.169.54.120
HTTP/1.1 404 Not Found
Content-Type: text/html; charset=iso-8859-1
                                        
Date: Fri, 30 Sep 2022 21:26:32 GMT
Server: Apache/2.4.41 (Ubuntu)
Content-Length: 287
Keep-Alive: timeout=5, max=98
Connection: Keep-Alive


--- Additional Info ---
Magic:  HTML document text\012- HTML document text\012- HTML document text\012- HTML document text\012- exported SGML document, ASCII text
Size:   287
Md5:    8b65aa0eee4a99130cc12993752200ef
Sha1:   0f83e5e59a5bb196c49d17b6e89bb470aa3ad7f0
Sha256: 62158782fca21c9ee727fb2f3c184e131e1e94c68aa6f7bb7dde1d51990d378d

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - fortinet: Phishing
    - quad9: Sinkholed
                                        
                                            GET /MAIL903-01921/acesso/img/003.jpg HTTP/1.1 
Host: capactmicroftmas.dns.army
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/MAIL903-01921/acesso/loginsaltent.php

                                         
                                         20.169.54.120
HTTP/1.1 200 OK
Content-Type: image/jpeg
                                        
Date: Fri, 30 Sep 2022 21:26:32 GMT
Server: Apache/2.4.41 (Ubuntu)
Last-Modified: Wed, 28 Sep 2022 14:33:39 GMT
ETag: "68838-5e9bda58dac74"
Accept-Ranges: bytes
Content-Length: 428088
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 72x72, segment length 16, baseline, precision 8, 1366x700, components 3\012- data
Size:   428088
Md5:    c355b878e44917040c3bb2057e2ea1f7
Sha1:   44e1f30b3ce6e327f467225ff89ee47f836d7939
Sha256: 80c91304be4aae19bb772567e542db75010766d71e9ba4073e793fcfbbdd4aed

Alerts:
  urlquery:
    - DynDNS domain detected
  Blocklists:
    - quad9: Sinkholed
                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "C17A343CEB786A421F8C3ABFFFAE350E12C92271A69FC88EB8E8BAB568877D6B"
Last-Modified: Fri, 30 Sep 2022 09:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=6538
Expires: Fri, 30 Sep 2022 23:15:31 GMT
Date: Fri, 30 Sep 2022 21:26:33 GMT
Connection: keep-alive

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "C17A343CEB786A421F8C3ABFFFAE350E12C92271A69FC88EB8E8BAB568877D6B"
Last-Modified: Fri, 30 Sep 2022 09:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=6538
Expires: Fri, 30 Sep 2022 23:15:31 GMT
Date: Fri, 30 Sep 2022 21:26:33 GMT
Connection: keep-alive

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "C17A343CEB786A421F8C3ABFFFAE350E12C92271A69FC88EB8E8BAB568877D6B"
Last-Modified: Fri, 30 Sep 2022 09:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=6538
Expires: Fri, 30 Sep 2022 23:15:31 GMT
Date: Fri, 30 Sep 2022 21:26:33 GMT
Connection: keep-alive

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "C17A343CEB786A421F8C3ABFFFAE350E12C92271A69FC88EB8E8BAB568877D6B"
Last-Modified: Fri, 30 Sep 2022 09:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=6538
Expires: Fri, 30 Sep 2022 23:15:31 GMT
Date: Fri, 30 Sep 2022 21:26:33 GMT
Connection: keep-alive

                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2F59da9c68-5ffa-4dc1-adf8-645278cd60ca.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 10380
x-amzn-requestid: 35ee2a77-159c-4bb4-a825-98c638398586
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: ZPdZYHsTIAMFQNQ=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-63360f6f-4f68073432bcea371c7b8f03;Sampled=0
x-amzn-remapped-date: Thu, 29 Sep 2022 21:34:39 GMT
x-amz-cf-pop: HIO50-C1, SEA19-C2
x-cache: Hit from cloudfront
x-amz-cf-id: IENB0e-e13ywHJKPgyLWn1bGPMMxFLUu3cIUcREjGhxDEMROEL1jBg==
via: 1.1 00f0a41f749793b9dd653153037c957e.cloudfront.net (CloudFront), 1.1 4f3feb5c4393987d42d1971d404d7cea.cloudfront.net (CloudFront), 1.1 google
date: Thu, 29 Sep 2022 22:24:00 GMT
age: 82953
etag: "265840b2d2fc6eb764cc6409b05deee8d77a19c2"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   10380
Md5:    139a144f8cb04ac8aae65f4bad1473e7
Sha1:   265840b2d2fc6eb764cc6409b05deee8d77a19c2
Sha256: 6e0f01b6bdd5a92e92c7b29a6172a2900c68900afd2abba948940621252e0fd8
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2Ff5cbaf6d-fc16-4449-8b54-1d55f68eff4f.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 14073
x-amzn-requestid: 4ff72590-e28d-4d4b-af1a-4d62e75e3d66
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: ZMKnpEsJoAMFlBQ=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-6334be30-38b014a25551aa0a2ab04ccf;Sampled=0
x-amzn-remapped-date: Wed, 28 Sep 2022 21:35:44 GMT
x-amz-cf-pop: SEA19-C2
x-cache: Miss from cloudfront
x-amz-cf-id: gP4V4fq53Z5BFfjDlx1LCR9AhUPTq0qusBaOY_UEXjJjM6SByqDgXg==
via: 1.1 efe54e8b68e074d39b2ecd249f85100a.cloudfront.net (CloudFront), 1.1 570075675953459325e00b7bcd171df2.cloudfront.net (CloudFront), 1.1 google
date: Thu, 29 Sep 2022 21:42:04 GMT
age: 85469
etag: "72603efba82d649ce5a7a0ca45dc830c0d9ef012"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   14073
Md5:    11594ce7500d8776bfd5162b17f87d72
Sha1:   72603efba82d649ce5a7a0ca45dc830c0d9ef012
Sha256: 511f5aa33750cd4a02cf3968bf165ffa521e77cb4fb7135b516d7ad14e8b9d01
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2F98c23448-09e3-4c05-86c5-dafbe6ca8a0e.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 8059
x-amzn-requestid: f8bb9e4b-9f3c-47ba-8524-de16155e536d
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: ZNepwHAVoAMFvNA=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-633544a4-5d884e29378635b60592b618;Sampled=0
x-amzn-remapped-date: Thu, 29 Sep 2022 07:09:24 GMT
x-amz-cf-pop: HIO50-C1, SEA73-P1
x-cache: Hit from cloudfront
x-amz-cf-id: NMiKZSkokVXNTV76vsVJ7VEu6YFfT9MqL7tHtT8CwZq0BwTbXOpm6Q==
via: 1.1 000f4a2f631bace380a0afa747a82482.cloudfront.net (CloudFront), 1.1 ead78c395f4bede3ec6cd7ea180e3d3a.cloudfront.net (CloudFront), 1.1 google
date: Fri, 30 Sep 2022 04:58:47 GMT
age: 59266
etag: "86dd3bf133e9eddf8852f39e1ee695ee599ac886"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   8059
Md5:    d21d2bdcedbd619a80017054076319f9
Sha1:   86dd3bf133e9eddf8852f39e1ee695ee599ac886
Sha256: fc5672d5a8e9c6a5ec531f7ba05b65c192af37edf6c3a48105df3685de44ec0d
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2F6d906d66-cd90-4963-827e-8d0564c0f787.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 5106
x-amzn-requestid: a906507c-8820-489c-9978-7d0fd026c862
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: ZPd5PE0MIAMF3DA=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-6336103a-49eb3879088f17bc01d177c7;Sampled=0
x-amzn-remapped-date: Thu, 29 Sep 2022 21:38:02 GMT
x-amz-cf-pop: HIO50-C1, SEA19-C2
x-cache: Miss from cloudfront
x-amz-cf-id: aeTAqh8D5whTHS3seyOUj7QCNaITUh2ekHG8vNWZlpSeAnqPuFzmcQ==
via: 1.1 41e349e25dc4bc856d0e5d2c162428a0.cloudfront.net (CloudFront), 1.1 57a21088b36c69a83578b5a5579df58e.cloudfront.net (CloudFront), 1.1 google
date: Thu, 29 Sep 2022 21:46:34 GMT
age: 85199
etag: "3481dce8ab711111fc8863d88bee1a887cfd43ac"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   5106
Md5:    13a12db696bc2bf6a6ea2f48f4c1428e
Sha1:   3481dce8ab711111fc8863d88bee1a887cfd43ac
Sha256: 6dae6c9e5de4146e1f528a36a1795225c9731385f13927fc001fb3f9842fe8f1
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2Fe12af206-9f17-40de-9764-14d3cdcb4d2f.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 6722
x-amzn-requestid: 6aca2e04-02b4-4e42-8bba-9bbe2ace1ed0
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: ZPeLrGq1oAMFuAw=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-633610b0-65b0664d0233107029ef0157;Sampled=0
x-amzn-remapped-date: Thu, 29 Sep 2022 21:40:00 GMT
x-amz-cf-pop: HIO50-C1, SEA19-C2
x-cache: Miss from cloudfront
x-amz-cf-id: AJBSzj2-oh3i6UOpOUtGTcsdTFfHlZhIQchgvcnIeF-4mnNKRly5HQ==
via: 1.1 4dde8ec6d6c12741888c2d3a059d4a2e.cloudfront.net (CloudFront), 1.1 57a21088b36c69a83578b5a5579df58e.cloudfront.net (CloudFront), 1.1 google
date: Thu, 29 Sep 2022 21:47:14 GMT
etag: "3248ca3a8b88efd5be8499898fce957d096cf211"
age: 85159
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   6722
Md5:    5b8d0a19bc0a56bb40a975c5c71af05a
Sha1:   3248ca3a8b88efd5be8499898fce957d096cf211
Sha256: da44d6dd845dc400b0b76f19c67e5a79d9359ce24fe5e4490477f195b23203b4
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2F9789cead-4e6c-4a12-9b45-25d0efd38fc9.png HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 16011
x-amzn-requestid: d58dfdcd-383a-45ac-8ae2-2b97f016b6a4
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: ZPdbjFy1IAMF84A=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-63360f7c-1ca9707a5e5087fd769d9ab6;Sampled=0
x-amzn-remapped-date: Thu, 29 Sep 2022 21:34:52 GMT
x-amz-cf-pop: HIO50-C1, SEA19-C2
x-cache: Hit from cloudfront
x-amz-cf-id: f7RrSV82yxUNWPUohKYX-_PBShMw7Qk82bepr3WAGkzHTjLR-gIXBA==
via: 1.1 28a7186077f9b5270d98dd053f31303e.cloudfront.net (CloudFront), 1.1 ee8246c5442dace7525c74f6a799bb46.cloudfront.net (CloudFront), 1.1 google
date: Thu, 29 Sep 2022 22:53:34 GMT
age: 81179
etag: "78b798f2cfa7db13a6b5ca2ca2783bece5e77d5d"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   16011
Md5:    1389b1d624b44706c7a6f6b7eb769241
Sha1:   78b798f2cfa7db13a6b5ca2ca2783bece5e77d5d
Sha256: c3c2526b98be06fc7e793e1150bacde2a7bd718e29a851a6e6992e8d84333790
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2F24cef79d-42ec-48b2-836a-cadc1834ec49.webp HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site
TE: trailers

                                         
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 5928
x-amzn-requestid: 12165671-e125-4a12-812d-6de3a5caf393
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: ZPegcGENIAMFy6A=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-63361135-26257c394a1b2c315a721720;Sampled=0
x-amzn-remapped-date: Thu, 29 Sep 2022 21:42:13 GMT
x-amz-cf-pop: HIO50-C1, SEA19-C2
x-cache: Miss from cloudfront
x-amz-cf-id: 1-qHCG-GfLqZIXBO9NI8eJnHv3VwDljUdVkasRG8g_Y5BQv2xspdXQ==
via: 1.1 d1151317ba32afe0e6370fd69fed222e.cloudfront.net (CloudFront), 1.1 7eb3b782ab09047ce0d11ee03763894c.cloudfront.net (CloudFront), 1.1 google
date: Thu, 29 Sep 2022 22:02:44 GMT
age: 84235
etag: "59c648aefd1049ce6fc899262ee3aadb16cb18d3"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   5928
Md5:    25b92064116b129f71965069f247c50c
Sha1:   59c648aefd1049ce6fc899262ee3aadb16cb18d3
Sha256: 672a701dbd5bb1c2a0ead5940425c43245c50a2f473a3436bc533038a555af84
                                        
                                            GET /css?family=Raleway HTTP/1.1 
Host: fonts.googleapis.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: http://capactmicroftmas.dns.army/
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

                                         
                                         142.250.74.10
HTTP/2 200 OK
content-type: text/css; charset=utf-8
                                        
access-control-allow-origin: *
timing-allow-origin: *
link: <https://fonts.gstatic.com>; rel=preconnect; crossorigin
strict-transport-security: max-age=31536000
expires: Fri, 30 Sep 2022 21:26:31 GMT
date: Fri, 30 Sep 2022 21:26:31 GMT
cache-control: private, max-age=86400
cross-origin-resource-policy: cross-origin
cross-origin-opener-policy: same-origin-allow-popups
content-encoding: gzip
server: ESF
x-xss-protection: 0
x-frame-options: SAMEORIGIN
x-content-type-options: nosniff
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,quic=":443"; ma=2592000; v="46,43"
X-Firefox-Spdy: h2


--- Additional Info ---