185.104.28.45

As of: Feb 02, 2023 5:48pm UTC | Latest
{
  "ip": "185.104.28.45",
  "services": [
    {
      "_decoded": "ftp",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "certificate": "DISPLAY_HEX",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "220 ProFTPD Server ready.\r\n",
      "banner_hashes": [
        "sha256:17e55480c27ad104b4d87eb0d0a20bd159fd6f3494a061950487857394bb9083"
      ],
      "banner_hex": "3232302050726f46545044205365727665722072656164792e0d0a",
      "certificate": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
      "extended_service_name": "FTPes",
      "ftp": {
        "_encoding": {
          "banner": "DISPLAY_UTF8",
          "auth_tls_response": "DISPLAY_UTF8"
        },
        "banner": "220 ProFTPD Server ready.\r\n",
        "auth_tls_response": "234 AUTH TLS successful\r\n",
        "status_code": 220,
        "status_meaning": "Service ready for new user.",
        "implicit_tls": false
      },
      "observed_at": "2023-02-02T08:53:32.038028623Z",
      "perspective_id": "PERSPECTIVE_TATA",
      "port": 21,
      "service_name": "FTP",
      "software": [
        {
          "uniform_resource_identifier": "cpe:2.3:a:proftpd:proftpd:*:*:*:*:*:*:*:*",
          "part": "a",
          "vendor": "ProFTPD Project",
          "product": "ProFTPD",
          "other": {
            "family": "ProFTPD"
          },
          "source": "OSI_APPLICATION_LAYER"
        }
      ],
      "source_ip": "167.94.138.45",
      "tls": {
        "version_selected": "TLSv1_2",
        "cipher_selected": "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
        "certificates": {
          "_encoding": {
            "leaf_fp_sha_256": "DISPLAY_HEX"
          },
          "leaf_fp_sha_256": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
          "leaf_data": {
            "names": [
              "*.zxcs.nl",
              "zxcs.nl"
            ],
            "subject_dn": "CN=*.zxcs.nl",
            "issuer_dn": "C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA",
            "pubkey_bit_size": 4096,
            "pubkey_algorithm": "RSA",
            "tbs_fingerprint": "da1507fcd9c61b261239cf848d34ac61f474a9ec81aea43992fb9ffd99bdb453",
            "fingerprint": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
            "issuer": {
              "common_name": [
                "Sectigo RSA Domain Validation Secure Server CA"
              ],
              "locality": [
                "Salford"
              ],
              "organization": [
                "Sectigo Limited"
              ],
              "province": [
                "Greater Manchester"
              ],
              "country": [
                "GB"
              ]
            },
            "subject": {
              "common_name": [
                "*.zxcs.nl"
              ]
            },
            "public_key": {
              "key_algorithm": "RSA",
              "rsa": {
                "_encoding": {
                  "modulus": "DISPLAY_BASE64",
                  "exponent": "DISPLAY_BASE64"
                },
                "modulus": "vTbnI9el20RXX5mnBWeoyazddGTGCyxtFYWiaKdo7YflkF7/DQAfBcl39Z2jTMj4Yls71EVhVfu1HRvXLCcCZnOU63OQ3fonoD69D7oSJijPrrIRh+eoIlPRxJ8Vue2x7rMU9k1ZHZf+U9MCNSzyU/0jU1wmTyOzhjIte20ikoH9peEXK7Og+gIQs4LDNRVQniBVubOULS/iEGV9L2AE4wWScWUYBq4506Y/rfuVcp4QLwR+OM9ZrglX4o0Q8R8hIwDvdweuK0PoSKra7IdyHGH0+Jt/nr7mi3255fr5waO0vPIq8sfVpPYTZRJQJ3LFLqJtU+4QQZeEaKXIzNTP+w7L++2m486gU0hsvOVXYLtb29BFzyeg30PCcA9rGlVIdSp6s0DmyyaNI6lnPjxdkNMqfCjZ5/x8HpmkoFsI6Oa04Wm7LQn478ENTiBvtUdpXTPaNCsXIWKergeavvu6OrZpa7C2eGQMTVC0uj43DMRvk3UDoAlu1k5TpQY/RhzQoaMo169uWQwbNJXyqkfe/gztSGnxCtAB1bEWezYOn0WoHN/IBpTdNEACf1rmYPalqm5izIjQn6XBv/twNWFnPm6jq2zyO668J5au9K7DeoNDIT/PyclyMT7V/lfQneZrcNSZSCXYHv0k8jVWWvEhNil9eXZEHTNqZ4QK30Jw0b0=",
                "exponent": "AAEAAQ==",
                "length": 512
              },
              "fingerprint": "1e91299b6e1128d3162c9e0aef2ccea10653abb5de2c0629bf25732f68111bd2"
            },
            "signature": {
              "signature_algorithm": "SHA256-RSA",
              "self_signed": false
            }
          }
        },
        "server_key_exchange": {
          "ec_params": {
            "named_curve": 23
          }
        },
        "_encoding": {
          "ja3s": "DISPLAY_HEX"
        },
        "ja3s": "0debd3853f330c574b05e0b6d882dc27"
      },
      "transport_fingerprint": {
        "id": 6,
        "os": "Linux",
        "raw": "14480,64,true,MSTNW,1460,false,false"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "smtp",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "certificate": "DISPLAY_HEX",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "220 dedi0011.zxcs.nl ESMTP Exim 4.92.2 Wed, 01 Feb 2023 16:24:02 +0100\r\n",
      "banner_hashes": [
        "sha256:617597914ae93f92eb54118b67b6cf7d1461de4961e706da8fb7b8f53a58b2d7"
      ],
      "banner_hex": "3232302064656469303031312e7a7863732e6e6c2045534d5450204578696d20342e39322e32205765642c2030312046656220323032332031363a32343a3032202b303130300d0a",
      "certificate": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
      "extended_service_name": "SMTP-STARTTLS",
      "observed_at": "2023-02-01T15:24:02.045767458Z",
      "perspective_id": "PERSPECTIVE_TATA",
      "port": 25,
      "service_name": "SMTP",
      "smtp": {
        "_encoding": {
          "banner": "DISPLAY_UTF8",
          "ehlo": "DISPLAY_UTF8",
          "start_tls": "DISPLAY_UTF8"
        },
        "banner": "220 dedi0011.zxcs.nl ESMTP Exim 4.92.2 Wed, 01 Feb 2023 16:24:02 +0100\r\n",
        "ehlo": "250-dedi0011.zxcs.nl Hello scanner-06.ch1.censys-scanner.com [167.94.138.47]\r\n250-SIZE 104857600\r\n250-8BITMIME\r\n250-PIPELINING\r\n250-AUTH PLAIN LOGIN\r\n250-STARTTLS\r\n250 HELP\r\n",
        "start_tls": "220 TLS go ahead\r\n"
      },
      "software": [
        {
          "uniform_resource_identifier": "cpe:2.3:a:exim:exim:4.92.2:*:*:*:*:*:*:*",
          "part": "a",
          "vendor": "exim",
          "product": "exim",
          "version": "4.92.2",
          "other": {
            "family": "exim"
          },
          "source": "OSI_APPLICATION_LAYER"
        }
      ],
      "source_ip": "167.94.138.47",
      "tls": {
        "version_selected": "TLSv1_2",
        "cipher_selected": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
        "certificates": {
          "_encoding": {
            "leaf_fp_sha_256": "DISPLAY_HEX"
          },
          "leaf_fp_sha_256": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
          "leaf_data": {
            "names": [
              "*.zxcs.nl",
              "zxcs.nl"
            ],
            "subject_dn": "CN=*.zxcs.nl",
            "issuer_dn": "C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA",
            "pubkey_bit_size": 4096,
            "pubkey_algorithm": "RSA",
            "tbs_fingerprint": "da1507fcd9c61b261239cf848d34ac61f474a9ec81aea43992fb9ffd99bdb453",
            "fingerprint": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
            "issuer": {
              "common_name": [
                "Sectigo RSA Domain Validation Secure Server CA"
              ],
              "locality": [
                "Salford"
              ],
              "organization": [
                "Sectigo Limited"
              ],
              "province": [
                "Greater Manchester"
              ],
              "country": [
                "GB"
              ]
            },
            "subject": {
              "common_name": [
                "*.zxcs.nl"
              ]
            },
            "public_key": {
              "key_algorithm": "RSA",
              "rsa": {
                "_encoding": {
                  "modulus": "DISPLAY_BASE64",
                  "exponent": "DISPLAY_BASE64"
                },
                "modulus": "vTbnI9el20RXX5mnBWeoyazddGTGCyxtFYWiaKdo7YflkF7/DQAfBcl39Z2jTMj4Yls71EVhVfu1HRvXLCcCZnOU63OQ3fonoD69D7oSJijPrrIRh+eoIlPRxJ8Vue2x7rMU9k1ZHZf+U9MCNSzyU/0jU1wmTyOzhjIte20ikoH9peEXK7Og+gIQs4LDNRVQniBVubOULS/iEGV9L2AE4wWScWUYBq4506Y/rfuVcp4QLwR+OM9ZrglX4o0Q8R8hIwDvdweuK0PoSKra7IdyHGH0+Jt/nr7mi3255fr5waO0vPIq8sfVpPYTZRJQJ3LFLqJtU+4QQZeEaKXIzNTP+w7L++2m486gU0hsvOVXYLtb29BFzyeg30PCcA9rGlVIdSp6s0DmyyaNI6lnPjxdkNMqfCjZ5/x8HpmkoFsI6Oa04Wm7LQn478ENTiBvtUdpXTPaNCsXIWKergeavvu6OrZpa7C2eGQMTVC0uj43DMRvk3UDoAlu1k5TpQY/RhzQoaMo169uWQwbNJXyqkfe/gztSGnxCtAB1bEWezYOn0WoHN/IBpTdNEACf1rmYPalqm5izIjQn6XBv/twNWFnPm6jq2zyO668J5au9K7DeoNDIT/PyclyMT7V/lfQneZrcNSZSCXYHv0k8jVWWvEhNil9eXZEHTNqZ4QK30Jw0b0=",
                "exponent": "AAEAAQ==",
                "length": 512
              },
              "fingerprint": "1e91299b6e1128d3162c9e0aef2ccea10653abb5de2c0629bf25732f68111bd2"
            },
            "signature": {
              "signature_algorithm": "SHA256-RSA",
              "self_signed": false
            }
          }
        },
        "server_key_exchange": {
          "ec_params": {
            "named_curve": 23
          }
        },
        "_encoding": {
          "ja3s": "DISPLAY_HEX"
        },
        "ja3s": "303951d4c50efb2e991652225a6f02b1"
      },
      "transport_fingerprint": {
        "id": 6,
        "os": "Linux",
        "raw": "14480,64,true,MSTNW,1460,false,false"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "dns",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6.11.cloudlinux.els",
      "banner_hashes": [
        "sha256:2885ea46d196fe99770bfc67391929803a71b033940c6b3be775503668dfcbc4"
      ],
      "banner_hex": "392e382e327263312d5265644861742d392e382e322d302e36382e7263312e656c362e31312e636c6f75646c696e75782e656c73",
      "dns": {
        "version": "9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6.11.cloudlinux.els",
        "server_type": "AUTHORITATIVE",
        "r_code": "REFUSED",
        "resolves_correctly": false
      },
      "extended_service_name": "DNS",
      "observed_at": "2023-02-02T11:17:05.368804794Z",
      "perspective_id": "PERSPECTIVE_NTT",
      "port": 53,
      "service_name": "DNS",
      "software": [
        {
          "uniform_resource_identifier": "cpe:2.3:a:isc:bind:9.8.2rc1:*:*:*:*:*:*:*",
          "part": "a",
          "vendor": "ISC",
          "product": "BIND",
          "version": "9.8.2rc1",
          "other": {
            "family": "BIND"
          },
          "source": "OSI_APPLICATION_LAYER"
        },
        {
          "uniform_resource_identifier": "cpe:2.3:o:redhat:enterprise_linux:6:*:*:*:*:*:*:*",
          "part": "o",
          "vendor": "Red Hat",
          "product": "Enterprise Linux",
          "version": "6",
          "other": {
            "family": "Linux"
          },
          "source": "OSI_APPLICATION_LAYER"
        }
      ],
      "source_ip": "167.248.133.45",
      "transport_protocol": "UDP",
      "truncated": false
    },
    {
      "_decoded": "http",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "HTTP/1.1 200 OK\r\nDate:  <REDACTED>\r\nServer: Apache/2\r\nUpgrade: h2,h2c\r\nConnection: Upgrade\r\nLast-Modified: Thu, 12 Nov 2020 08:31:53 GMT\r\nETag: \"2c-5b3e4be7b6bdd\"\r\nAccept-Ranges: bytes\r\nContent-Length: 44\r\nVary: User-Agent\r\nContent-Type: text/html\r\n",
      "banner_hashes": [
        "sha256:99b67532a8f1e3de872d6a6b960e938a8212c87e856b5747f66595074347e27c"
      ],
      "banner_hex": "485454502f312e3120323030204f4b0d0a446174653a20203c52454441435445443e0d0a5365727665723a204170616368652f320d0a557067726164653a2068322c6832630d0a436f6e6e656374696f6e3a20557067726164650d0a4c6173742d4d6f6469666965643a205468752c203132204e6f7620323032302030383a33313a353320474d540d0a455461673a202232632d35623365346265376236626464220d0a4163636570742d52616e6765733a2062797465730d0a436f6e74656e742d4c656e6774683a2034340d0a566172793a20557365722d4167656e740d0a436f6e74656e742d547970653a20746578742f68746d6c0d0a",
      "extended_service_name": "HTTP",
      "http": {
        "request": {
          "method": "GET",
          "uri": "http://185.104.28.45/",
          "headers": {
            "User_Agent": [
              "Mozilla/5.0 (compatible; CensysInspect/1.1; +https://about.censys.io/)"
            ],
            "_encoding": {
              "User_Agent": "DISPLAY_UTF8",
              "Accept": "DISPLAY_UTF8"
            },
            "Accept": [
              "*/*"
            ]
          }
        },
        "response": {
          "protocol": "HTTP/1.1",
          "status_code": 200,
          "status_reason": "OK",
          "headers": {
            "Date": [
              "<REDACTED>"
            ],
            "_encoding": {
              "Date": "DISPLAY_UTF8",
              "Last_Modified": "DISPLAY_UTF8",
              "Content_Type": "DISPLAY_UTF8",
              "Connection": "DISPLAY_UTF8",
              "Vary": "DISPLAY_UTF8",
              "Etag": "DISPLAY_UTF8",
              "Upgrade": "DISPLAY_UTF8",
              "Content_Length": "DISPLAY_UTF8",
              "Accept_Ranges": "DISPLAY_UTF8",
              "Server": "DISPLAY_UTF8"
            },
            "Last_Modified": [
              "Thu, 12 Nov 2020 08:31:53 GMT"
            ],
            "Content_Type": [
              "text/html"
            ],
            "Connection": [
              "Upgrade"
            ],
            "Vary": [
              "User-Agent"
            ],
            "Etag": [
              "\"2c-5b3e4be7b6bdd\""
            ],
            "Upgrade": [
              "h2,h2c"
            ],
            "Content_Length": [
              "44"
            ],
            "Accept_Ranges": [
              "bytes"
            ],
            "Server": [
              "Apache/2"
            ]
          },
          "body_size": 44,
          "_encoding": {
            "body": "DISPLAY_UTF8",
            "body_hash": "DISPLAY_UTF8"
          },
          "body": "<html>Apache is functioning normally</html>\n",
          "body_hashes": [
            "sha256:9e57007b15edab321b71b57c500e3d677eeb54fb37017527dae0a5e52358eb69",
            "sha1:315d1347f4b707e4ed8a73f22de8235f189ef18b"
          ],
          "body_hash": "sha1:315d1347f4b707e4ed8a73f22de8235f189ef18b"
        },
        "supports_http2": true
      },
      "observed_at": "2023-02-01T02:31:10.888070940Z",
      "perspective_id": "PERSPECTIVE_TELIA",
      "port": 80,
      "service_name": "HTTP",
      "software": [
        {
          "uniform_resource_identifier": "cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*",
          "part": "a",
          "vendor": "Apache",
          "product": "HTTPD",
          "other": {
            "family": "Apache"
          },
          "source": "OSI_APPLICATION_LAYER"
        }
      ],
      "source_ip": "167.94.146.60",
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "pop3",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "certificate": "DISPLAY_HEX",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "+OK ZXCS ready.\r\n",
      "banner_hashes": [
        "sha256:445ebc0521fa546a154acfb9d2dc5e064acabd0c9017f002055d9cce81c429c4"
      ],
      "banner_hex": "2b4f4b205a5843532072656164792e0d0a",
      "certificate": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
      "extended_service_name": "POP3S",
      "observed_at": "2023-02-02T04:17:37.283287403Z",
      "perspective_id": "PERSPECTIVE_NTT",
      "pop3": {
        "_encoding": {
          "banner": "DISPLAY_UTF8",
          "start_tls": "DISPLAY_UTF8"
        },
        "banner": "+OK ZXCS ready.\r\n",
        "start_tls": "+OK Begin TLS negotiation now.\r\n"
      },
      "port": 110,
      "service_name": "POP3",
      "source_ip": "167.248.133.46",
      "tls": {
        "version_selected": "TLSv1_2",
        "cipher_selected": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
        "certificates": {
          "_encoding": {
            "leaf_fp_sha_256": "DISPLAY_HEX"
          },
          "leaf_fp_sha_256": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
          "leaf_data": {
            "names": [
              "*.zxcs.nl",
              "zxcs.nl"
            ],
            "subject_dn": "CN=*.zxcs.nl",
            "issuer_dn": "C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA",
            "pubkey_bit_size": 4096,
            "pubkey_algorithm": "RSA",
            "tbs_fingerprint": "da1507fcd9c61b261239cf848d34ac61f474a9ec81aea43992fb9ffd99bdb453",
            "fingerprint": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
            "issuer": {
              "common_name": [
                "Sectigo RSA Domain Validation Secure Server CA"
              ],
              "locality": [
                "Salford"
              ],
              "organization": [
                "Sectigo Limited"
              ],
              "province": [
                "Greater Manchester"
              ],
              "country": [
                "GB"
              ]
            },
            "subject": {
              "common_name": [
                "*.zxcs.nl"
              ]
            },
            "public_key": {
              "key_algorithm": "RSA",
              "rsa": {
                "_encoding": {
                  "modulus": "DISPLAY_BASE64",
                  "exponent": "DISPLAY_BASE64"
                },
                "modulus": "vTbnI9el20RXX5mnBWeoyazddGTGCyxtFYWiaKdo7YflkF7/DQAfBcl39Z2jTMj4Yls71EVhVfu1HRvXLCcCZnOU63OQ3fonoD69D7oSJijPrrIRh+eoIlPRxJ8Vue2x7rMU9k1ZHZf+U9MCNSzyU/0jU1wmTyOzhjIte20ikoH9peEXK7Og+gIQs4LDNRVQniBVubOULS/iEGV9L2AE4wWScWUYBq4506Y/rfuVcp4QLwR+OM9ZrglX4o0Q8R8hIwDvdweuK0PoSKra7IdyHGH0+Jt/nr7mi3255fr5waO0vPIq8sfVpPYTZRJQJ3LFLqJtU+4QQZeEaKXIzNTP+w7L++2m486gU0hsvOVXYLtb29BFzyeg30PCcA9rGlVIdSp6s0DmyyaNI6lnPjxdkNMqfCjZ5/x8HpmkoFsI6Oa04Wm7LQn478ENTiBvtUdpXTPaNCsXIWKergeavvu6OrZpa7C2eGQMTVC0uj43DMRvk3UDoAlu1k5TpQY/RhzQoaMo169uWQwbNJXyqkfe/gztSGnxCtAB1bEWezYOn0WoHN/IBpTdNEACf1rmYPalqm5izIjQn6XBv/twNWFnPm6jq2zyO668J5au9K7DeoNDIT/PyclyMT7V/lfQneZrcNSZSCXYHv0k8jVWWvEhNil9eXZEHTNqZ4QK30Jw0b0=",
                "exponent": "AAEAAQ==",
                "length": 512
              },
              "fingerprint": "1e91299b6e1128d3162c9e0aef2ccea10653abb5de2c0629bf25732f68111bd2"
            },
            "signature": {
              "signature_algorithm": "SHA256-RSA",
              "self_signed": false
            }
          }
        },
        "server_key_exchange": {
          "ec_params": {
            "named_curve": 24
          }
        },
        "_encoding": {
          "ja3s": "DISPLAY_HEX"
        },
        "ja3s": "303951d4c50efb2e991652225a6f02b1"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "imap",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "certificate": "DISPLAY_HEX",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "* OK [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE LITERAL+ STARTTLS AUTH=PLAIN] ZXCS ready.\r\n",
      "banner_hashes": [
        "sha256:d0598fe515282f48a69ba51d8a974007b140e443e6154267aa0727237782fb40"
      ],
      "banner_hex": "2a204f4b205b4341504142494c49545920494d41503472657631205341534c2d4952204c4f47494e2d524546455252414c5320494420454e41424c452049444c45204c49544552414c2b205354415254544c5320415554483d504c41494e5d205a5843532072656164792e0d0a",
      "certificate": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
      "extended_service_name": "IMAPS",
      "imap": {
        "_encoding": {
          "banner": "DISPLAY_UTF8"
        },
        "banner": "* OK [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE LITERAL+ STARTTLS AUTH=PLAIN] ZXCS ready.\r\n",
        "start_tls": "a001 OK Begin TLS negotiation now.\r\n"
      },
      "observed_at": "2023-02-01T03:59:10.975199789Z",
      "perspective_id": "PERSPECTIVE_NTT",
      "port": 143,
      "service_name": "IMAP",
      "source_ip": "167.248.133.62",
      "tls": {
        "version_selected": "TLSv1_2",
        "cipher_selected": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
        "certificates": {
          "_encoding": {
            "leaf_fp_sha_256": "DISPLAY_HEX"
          },
          "leaf_fp_sha_256": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
          "leaf_data": {
            "names": [
              "*.zxcs.nl",
              "zxcs.nl"
            ],
            "subject_dn": "CN=*.zxcs.nl",
            "issuer_dn": "C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA",
            "pubkey_bit_size": 4096,
            "pubkey_algorithm": "RSA",
            "tbs_fingerprint": "da1507fcd9c61b261239cf848d34ac61f474a9ec81aea43992fb9ffd99bdb453",
            "fingerprint": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
            "issuer": {
              "common_name": [
                "Sectigo RSA Domain Validation Secure Server CA"
              ],
              "locality": [
                "Salford"
              ],
              "organization": [
                "Sectigo Limited"
              ],
              "province": [
                "Greater Manchester"
              ],
              "country": [
                "GB"
              ]
            },
            "subject": {
              "common_name": [
                "*.zxcs.nl"
              ]
            },
            "public_key": {
              "key_algorithm": "RSA",
              "rsa": {
                "_encoding": {
                  "modulus": "DISPLAY_BASE64",
                  "exponent": "DISPLAY_BASE64"
                },
                "modulus": "vTbnI9el20RXX5mnBWeoyazddGTGCyxtFYWiaKdo7YflkF7/DQAfBcl39Z2jTMj4Yls71EVhVfu1HRvXLCcCZnOU63OQ3fonoD69D7oSJijPrrIRh+eoIlPRxJ8Vue2x7rMU9k1ZHZf+U9MCNSzyU/0jU1wmTyOzhjIte20ikoH9peEXK7Og+gIQs4LDNRVQniBVubOULS/iEGV9L2AE4wWScWUYBq4506Y/rfuVcp4QLwR+OM9ZrglX4o0Q8R8hIwDvdweuK0PoSKra7IdyHGH0+Jt/nr7mi3255fr5waO0vPIq8sfVpPYTZRJQJ3LFLqJtU+4QQZeEaKXIzNTP+w7L++2m486gU0hsvOVXYLtb29BFzyeg30PCcA9rGlVIdSp6s0DmyyaNI6lnPjxdkNMqfCjZ5/x8HpmkoFsI6Oa04Wm7LQn478ENTiBvtUdpXTPaNCsXIWKergeavvu6OrZpa7C2eGQMTVC0uj43DMRvk3UDoAlu1k5TpQY/RhzQoaMo169uWQwbNJXyqkfe/gztSGnxCtAB1bEWezYOn0WoHN/IBpTdNEACf1rmYPalqm5izIjQn6XBv/twNWFnPm6jq2zyO668J5au9K7DeoNDIT/PyclyMT7V/lfQneZrcNSZSCXYHv0k8jVWWvEhNil9eXZEHTNqZ4QK30Jw0b0=",
                "exponent": "AAEAAQ==",
                "length": 512
              },
              "fingerprint": "1e91299b6e1128d3162c9e0aef2ccea10653abb5de2c0629bf25732f68111bd2"
            },
            "signature": {
              "signature_algorithm": "SHA256-RSA",
              "self_signed": false
            }
          }
        },
        "server_key_exchange": {
          "ec_params": {
            "named_curve": 24
          }
        },
        "_encoding": {
          "ja3s": "DISPLAY_HEX"
        },
        "ja3s": "303951d4c50efb2e991652225a6f02b1"
      },
      "transport_fingerprint": {
        "id": 15,
        "os": "device253",
        "raw": "14480,64,true,MSTNW,1460,false,false"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "http",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "certificate": "DISPLAY_HEX",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "HTTP/1.1 500 Proxy Error\r\nDate:  <REDACTED>\r\nServer: Apache/2\r\nContent-Length: 404\r\nConnection: close\r\nContent-Type: text/html; charset=iso-8859-1\r\n",
      "banner_hashes": [
        "sha256:46860d5a119e016c8f1ddab9194f82a4308bd928dfb8d0d170ef0500e2f5e00c"
      ],
      "banner_hex": "485454502f312e31203530302050726f7879204572726f720d0a446174653a20203c52454441435445443e0d0a5365727665723a204170616368652f320d0a436f6e74656e742d4c656e6774683a203430340d0a436f6e6e656374696f6e3a20636c6f73650d0a436f6e74656e742d547970653a20746578742f68746d6c3b20636861727365743d69736f2d383835392d310d0a",
      "certificate": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
      "extended_service_name": "HTTPS",
      "http": {
        "request": {
          "method": "GET",
          "uri": "https://185.104.28.45/",
          "headers": {
            "Accept": [
              "*/*"
            ],
            "_encoding": {
              "Accept": "DISPLAY_UTF8",
              "User_Agent": "DISPLAY_UTF8"
            },
            "User_Agent": [
              "Mozilla/5.0 (compatible; CensysInspect/1.1; +https://about.censys.io/)"
            ]
          }
        },
        "response": {
          "protocol": "HTTP/1.1",
          "status_code": 500,
          "status_reason": "Proxy Error",
          "headers": {
            "Server": [
              "Apache/2"
            ],
            "_encoding": {
              "Server": "DISPLAY_UTF8",
              "Content_Type": "DISPLAY_UTF8",
              "Content_Length": "DISPLAY_UTF8",
              "Date": "DISPLAY_UTF8",
              "Connection": "DISPLAY_UTF8"
            },
            "Content_Type": [
              "text/html; charset=iso-8859-1"
            ],
            "Content_Length": [
              "404"
            ],
            "Date": [
              "<REDACTED>"
            ],
            "Connection": [
              "close"
            ]
          },
          "_encoding": {
            "html_tags": "DISPLAY_UTF8",
            "body": "DISPLAY_UTF8",
            "body_hash": "DISPLAY_UTF8",
            "html_title": "DISPLAY_UTF8"
          },
          "html_tags": [
            "<title>500 Proxy Error</title>"
          ],
          "body_size": 404,
          "body": "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>500 Proxy Error</title>\n</head><body>\n<h1>Proxy Error</h1>\nThe proxy server could not handle the request<p>Reason: <strong>Error during SSL Handshake with remote server</strong></p><p />\n<p>Additionally, a 500 Internal Server Error\nerror was encountered while trying to use an ErrorDocument to handle the request.</p>\n</body></html>\n",
          "body_hashes": [
            "sha256:a871fa37ab5d61d51196bedf4b515365486a94efa00b4e7a8de5459f05b36e85",
            "sha1:cbd7e1e779091ad6fbc4a98af49d3fe8ef79c977"
          ],
          "body_hash": "sha1:cbd7e1e779091ad6fbc4a98af49d3fe8ef79c977",
          "html_title": "500 Proxy Error"
        },
        "supports_http2": true
      },
      "jarm": {
        "_encoding": {
          "fingerprint": "DISPLAY_HEX",
          "cipher_and_version_fingerprint": "DISPLAY_HEX",
          "tls_extensions_sha256": "DISPLAY_HEX"
        },
        "fingerprint": "2ad2ad0002ad2ad0002ad2ad2ad2adff55efa0f9599f60e6c551dfff2d0de5",
        "cipher_and_version_fingerprint": "2ad2ad0002ad2ad0002ad2ad2ad2ad",
        "tls_extensions_sha256": "ff55efa0f9599f60e6c551dfff2d0de5",
        "observed_at": "2023-01-25T17:16:57.113037024Z"
      },
      "observed_at": "2023-02-02T01:15:42.790102212Z",
      "perspective_id": "PERSPECTIVE_TATA",
      "port": 443,
      "service_name": "HTTP",
      "software": [
        {
          "uniform_resource_identifier": "cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*",
          "part": "a",
          "vendor": "Apache",
          "product": "HTTPD",
          "other": {
            "family": "Apache"
          },
          "source": "OSI_APPLICATION_LAYER"
        }
      ],
      "source_ip": "167.94.138.61",
      "tls": {
        "version_selected": "TLSv1_2",
        "cipher_selected": "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
        "certificates": {
          "_encoding": {
            "leaf_fp_sha_256": "DISPLAY_HEX"
          },
          "leaf_fp_sha_256": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
          "leaf_data": {
            "names": [
              "*.zxcs.nl",
              "zxcs.nl"
            ],
            "subject_dn": "CN=*.zxcs.nl",
            "issuer_dn": "C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA",
            "pubkey_bit_size": 4096,
            "pubkey_algorithm": "RSA",
            "tbs_fingerprint": "da1507fcd9c61b261239cf848d34ac61f474a9ec81aea43992fb9ffd99bdb453",
            "fingerprint": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
            "issuer": {
              "common_name": [
                "Sectigo RSA Domain Validation Secure Server CA"
              ],
              "locality": [
                "Salford"
              ],
              "organization": [
                "Sectigo Limited"
              ],
              "province": [
                "Greater Manchester"
              ],
              "country": [
                "GB"
              ]
            },
            "subject": {
              "common_name": [
                "*.zxcs.nl"
              ]
            },
            "public_key": {
              "key_algorithm": "RSA",
              "rsa": {
                "_encoding": {
                  "modulus": "DISPLAY_BASE64",
                  "exponent": "DISPLAY_BASE64"
                },
                "modulus": "vTbnI9el20RXX5mnBWeoyazddGTGCyxtFYWiaKdo7YflkF7/DQAfBcl39Z2jTMj4Yls71EVhVfu1HRvXLCcCZnOU63OQ3fonoD69D7oSJijPrrIRh+eoIlPRxJ8Vue2x7rMU9k1ZHZf+U9MCNSzyU/0jU1wmTyOzhjIte20ikoH9peEXK7Og+gIQs4LDNRVQniBVubOULS/iEGV9L2AE4wWScWUYBq4506Y/rfuVcp4QLwR+OM9ZrglX4o0Q8R8hIwDvdweuK0PoSKra7IdyHGH0+Jt/nr7mi3255fr5waO0vPIq8sfVpPYTZRJQJ3LFLqJtU+4QQZeEaKXIzNTP+w7L++2m486gU0hsvOVXYLtb29BFzyeg30PCcA9rGlVIdSp6s0DmyyaNI6lnPjxdkNMqfCjZ5/x8HpmkoFsI6Oa04Wm7LQn478ENTiBvtUdpXTPaNCsXIWKergeavvu6OrZpa7C2eGQMTVC0uj43DMRvk3UDoAlu1k5TpQY/RhzQoaMo169uWQwbNJXyqkfe/gztSGnxCtAB1bEWezYOn0WoHN/IBpTdNEACf1rmYPalqm5izIjQn6XBv/twNWFnPm6jq2zyO668J5au9K7DeoNDIT/PyclyMT7V/lfQneZrcNSZSCXYHv0k8jVWWvEhNil9eXZEHTNqZ4QK30Jw0b0=",
                "exponent": "AAEAAQ==",
                "length": 512
              },
              "fingerprint": "1e91299b6e1128d3162c9e0aef2ccea10653abb5de2c0629bf25732f68111bd2"
            },
            "signature": {
              "signature_algorithm": "SHA256-RSA",
              "self_signed": false
            }
          }
        },
        "server_key_exchange": {
          "ec_params": {
            "named_curve": 23
          }
        },
        "_encoding": {
          "ja3s": "DISPLAY_HEX"
        },
        "ja3s": "0debd3853f330c574b05e0b6d882dc27"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "smtp",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "certificate": "DISPLAY_HEX",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "220 dedi0011.zxcs.nl ESMTP Exim 4.92.2 Tue, 31 Jan 2023 17:26:49 +0100\r\n",
      "banner_hashes": [
        "sha256:efed6a685da0634682fa6b6be4bdb55dd09484ee60c2ccd6480753e8cdd408d2"
      ],
      "banner_hex": "3232302064656469303031312e7a7863732e6e6c2045534d5450204578696d20342e39322e32205475652c203331204a616e20323032332031373a32363a3439202b303130300d0a",
      "certificate": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
      "extended_service_name": "SMTPS",
      "jarm": {
        "_encoding": {
          "fingerprint": "DISPLAY_HEX",
          "cipher_and_version_fingerprint": "DISPLAY_HEX",
          "tls_extensions_sha256": "DISPLAY_HEX"
        },
        "fingerprint": "29d29d15d29d29d06c29d29d29d29d71dbc091d32d86fce1e9de57eec374d8",
        "cipher_and_version_fingerprint": "29d29d15d29d29d06c29d29d29d29d",
        "tls_extensions_sha256": "71dbc091d32d86fce1e9de57eec374d8",
        "observed_at": "2023-02-02T15:32:58.783920047Z"
      },
      "observed_at": "2023-01-31T16:26:49.583742253Z",
      "perspective_id": "PERSPECTIVE_HE",
      "port": 465,
      "service_name": "SMTP",
      "smtp": {
        "_encoding": {
          "banner": "DISPLAY_UTF8",
          "ehlo": "DISPLAY_UTF8"
        },
        "banner": "220 dedi0011.zxcs.nl ESMTP Exim 4.92.2 Tue, 31 Jan 2023 17:26:49 +0100\r\n",
        "ehlo": "250-dedi0011.zxcs.nl Hello scanner-25.ch1.censys-scanner.com [162.142.125.222]\r\n250-SIZE 104857600\r\n250-8BITMIME\r\n250-PIPELINING\r\n250-AUTH PLAIN LOGIN\r\n250 HELP\r\n"
      },
      "software": [
        {
          "uniform_resource_identifier": "cpe:2.3:a:exim:exim:4.92.2:*:*:*:*:*:*:*",
          "part": "a",
          "vendor": "exim",
          "product": "exim",
          "version": "4.92.2",
          "other": {
            "family": "exim"
          },
          "source": "OSI_APPLICATION_LAYER"
        }
      ],
      "source_ip": "162.142.125.222",
      "tls": {
        "version_selected": "TLSv1_2",
        "cipher_selected": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
        "certificates": {
          "_encoding": {
            "leaf_fp_sha_256": "DISPLAY_HEX"
          },
          "leaf_fp_sha_256": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
          "leaf_data": {
            "names": [
              "*.zxcs.nl",
              "zxcs.nl"
            ],
            "subject_dn": "CN=*.zxcs.nl",
            "issuer_dn": "C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA",
            "pubkey_bit_size": 4096,
            "pubkey_algorithm": "RSA",
            "tbs_fingerprint": "da1507fcd9c61b261239cf848d34ac61f474a9ec81aea43992fb9ffd99bdb453",
            "fingerprint": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
            "issuer": {
              "common_name": [
                "Sectigo RSA Domain Validation Secure Server CA"
              ],
              "locality": [
                "Salford"
              ],
              "organization": [
                "Sectigo Limited"
              ],
              "province": [
                "Greater Manchester"
              ],
              "country": [
                "GB"
              ]
            },
            "subject": {
              "common_name": [
                "*.zxcs.nl"
              ]
            },
            "public_key": {
              "key_algorithm": "RSA",
              "rsa": {
                "_encoding": {
                  "modulus": "DISPLAY_BASE64",
                  "exponent": "DISPLAY_BASE64"
                },
                "modulus": "vTbnI9el20RXX5mnBWeoyazddGTGCyxtFYWiaKdo7YflkF7/DQAfBcl39Z2jTMj4Yls71EVhVfu1HRvXLCcCZnOU63OQ3fonoD69D7oSJijPrrIRh+eoIlPRxJ8Vue2x7rMU9k1ZHZf+U9MCNSzyU/0jU1wmTyOzhjIte20ikoH9peEXK7Og+gIQs4LDNRVQniBVubOULS/iEGV9L2AE4wWScWUYBq4506Y/rfuVcp4QLwR+OM9ZrglX4o0Q8R8hIwDvdweuK0PoSKra7IdyHGH0+Jt/nr7mi3255fr5waO0vPIq8sfVpPYTZRJQJ3LFLqJtU+4QQZeEaKXIzNTP+w7L++2m486gU0hsvOVXYLtb29BFzyeg30PCcA9rGlVIdSp6s0DmyyaNI6lnPjxdkNMqfCjZ5/x8HpmkoFsI6Oa04Wm7LQn478ENTiBvtUdpXTPaNCsXIWKergeavvu6OrZpa7C2eGQMTVC0uj43DMRvk3UDoAlu1k5TpQY/RhzQoaMo169uWQwbNJXyqkfe/gztSGnxCtAB1bEWezYOn0WoHN/IBpTdNEACf1rmYPalqm5izIjQn6XBv/twNWFnPm6jq2zyO668J5au9K7DeoNDIT/PyclyMT7V/lfQneZrcNSZSCXYHv0k8jVWWvEhNil9eXZEHTNqZ4QK30Jw0b0=",
                "exponent": "AAEAAQ==",
                "length": 512
              },
              "fingerprint": "1e91299b6e1128d3162c9e0aef2ccea10653abb5de2c0629bf25732f68111bd2"
            },
            "signature": {
              "signature_algorithm": "SHA256-RSA",
              "self_signed": false
            }
          }
        },
        "server_key_exchange": {
          "ec_params": {
            "named_curve": 23
          }
        },
        "_encoding": {
          "ja3s": "DISPLAY_HEX"
        },
        "ja3s": "303951d4c50efb2e991652225a6f02b1"
      },
      "transport_fingerprint": {
        "id": 6,
        "os": "Linux",
        "raw": "14480,64,true,MSTNW,1460,false,false"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "smtp",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "certificate": "DISPLAY_HEX",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "220 dedi0011.zxcs.nl ESMTP Exim 4.92.2 Tue, 31 Jan 2023 17:36:36 +0100\r\n",
      "banner_hashes": [
        "sha256:63626a0efce00042d8f9936c5a032bb37028c542d349d0e06c1c59e18a37ca17"
      ],
      "banner_hex": "3232302064656469303031312e7a7863732e6e6c2045534d5450204578696d20342e39322e32205475652c203331204a616e20323032332031373a33363a3336202b303130300d0a",
      "certificate": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
      "extended_service_name": "SMTP-STARTTLS",
      "observed_at": "2023-01-31T16:36:36.600221785Z",
      "perspective_id": "PERSPECTIVE_HE",
      "port": 587,
      "service_name": "SMTP",
      "smtp": {
        "_encoding": {
          "banner": "DISPLAY_UTF8",
          "ehlo": "DISPLAY_UTF8",
          "start_tls": "DISPLAY_UTF8"
        },
        "banner": "220 dedi0011.zxcs.nl ESMTP Exim 4.92.2 Tue, 31 Jan 2023 17:36:36 +0100\r\n",
        "ehlo": "250-dedi0011.zxcs.nl Hello scanner-04.ch1.censys-scanner.com [162.142.125.9]\r\n250-SIZE 104857600\r\n250-8BITMIME\r\n250-PIPELINING\r\n250-AUTH PLAIN LOGIN\r\n250-STARTTLS\r\n250 HELP\r\n",
        "start_tls": "220 TLS go ahead\r\n"
      },
      "software": [
        {
          "uniform_resource_identifier": "cpe:2.3:a:exim:exim:4.92.2:*:*:*:*:*:*:*",
          "part": "a",
          "vendor": "exim",
          "product": "exim",
          "version": "4.92.2",
          "other": {
            "family": "exim"
          },
          "source": "OSI_APPLICATION_LAYER"
        }
      ],
      "source_ip": "162.142.125.9",
      "tls": {
        "version_selected": "TLSv1_2",
        "cipher_selected": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
        "certificates": {
          "_encoding": {
            "leaf_fp_sha_256": "DISPLAY_HEX"
          },
          "leaf_fp_sha_256": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
          "leaf_data": {
            "names": [
              "*.zxcs.nl",
              "zxcs.nl"
            ],
            "subject_dn": "CN=*.zxcs.nl",
            "issuer_dn": "C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA",
            "pubkey_bit_size": 4096,
            "pubkey_algorithm": "RSA",
            "tbs_fingerprint": "da1507fcd9c61b261239cf848d34ac61f474a9ec81aea43992fb9ffd99bdb453",
            "fingerprint": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
            "issuer": {
              "common_name": [
                "Sectigo RSA Domain Validation Secure Server CA"
              ],
              "locality": [
                "Salford"
              ],
              "organization": [
                "Sectigo Limited"
              ],
              "province": [
                "Greater Manchester"
              ],
              "country": [
                "GB"
              ]
            },
            "subject": {
              "common_name": [
                "*.zxcs.nl"
              ]
            },
            "public_key": {
              "key_algorithm": "RSA",
              "rsa": {
                "_encoding": {
                  "modulus": "DISPLAY_BASE64",
                  "exponent": "DISPLAY_BASE64"
                },
                "modulus": "vTbnI9el20RXX5mnBWeoyazddGTGCyxtFYWiaKdo7YflkF7/DQAfBcl39Z2jTMj4Yls71EVhVfu1HRvXLCcCZnOU63OQ3fonoD69D7oSJijPrrIRh+eoIlPRxJ8Vue2x7rMU9k1ZHZf+U9MCNSzyU/0jU1wmTyOzhjIte20ikoH9peEXK7Og+gIQs4LDNRVQniBVubOULS/iEGV9L2AE4wWScWUYBq4506Y/rfuVcp4QLwR+OM9ZrglX4o0Q8R8hIwDvdweuK0PoSKra7IdyHGH0+Jt/nr7mi3255fr5waO0vPIq8sfVpPYTZRJQJ3LFLqJtU+4QQZeEaKXIzNTP+w7L++2m486gU0hsvOVXYLtb29BFzyeg30PCcA9rGlVIdSp6s0DmyyaNI6lnPjxdkNMqfCjZ5/x8HpmkoFsI6Oa04Wm7LQn478ENTiBvtUdpXTPaNCsXIWKergeavvu6OrZpa7C2eGQMTVC0uj43DMRvk3UDoAlu1k5TpQY/RhzQoaMo169uWQwbNJXyqkfe/gztSGnxCtAB1bEWezYOn0WoHN/IBpTdNEACf1rmYPalqm5izIjQn6XBv/twNWFnPm6jq2zyO668J5au9K7DeoNDIT/PyclyMT7V/lfQneZrcNSZSCXYHv0k8jVWWvEhNil9eXZEHTNqZ4QK30Jw0b0=",
                "exponent": "AAEAAQ==",
                "length": 512
              },
              "fingerprint": "1e91299b6e1128d3162c9e0aef2ccea10653abb5de2c0629bf25732f68111bd2"
            },
            "signature": {
              "signature_algorithm": "SHA256-RSA",
              "self_signed": false
            }
          }
        },
        "server_key_exchange": {
          "ec_params": {
            "named_curve": 23
          }
        },
        "_encoding": {
          "ja3s": "DISPLAY_HEX"
        },
        "ja3s": "303951d4c50efb2e991652225a6f02b1"
      },
      "transport_fingerprint": {
        "id": 6,
        "os": "Linux",
        "raw": "14480,64,true,MSTNW,1460,false,false"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "imap",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "certificate": "DISPLAY_HEX",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "* OK [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE LITERAL+ AUTH=PLAIN] ZXCS ready.\r\n",
      "banner_hashes": [
        "sha256:49dbafa72cee02bcf05ff909472e55fa92d4d3114733100453ee19a6de9e3710"
      ],
      "banner_hex": "2a204f4b205b4341504142494c49545920494d41503472657631205341534c2d4952204c4f47494e2d524546455252414c5320494420454e41424c452049444c45204c49544552414c2b20415554483d504c41494e5d205a5843532072656164792e0d0a",
      "certificate": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
      "extended_service_name": "IMAPS",
      "imap": {
        "_encoding": {
          "banner": "DISPLAY_UTF8"
        },
        "banner": "* OK [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE LITERAL+ AUTH=PLAIN] ZXCS ready.\r\n"
      },
      "jarm": {
        "_encoding": {
          "fingerprint": "DISPLAY_HEX",
          "cipher_and_version_fingerprint": "DISPLAY_HEX",
          "tls_extensions_sha256": "DISPLAY_HEX"
        },
        "fingerprint": "15d2ad16d29d29d00015d2ad15d29de87e6567d901388794cb6a875a1928aa",
        "cipher_and_version_fingerprint": "15d2ad16d29d29d00015d2ad15d29d",
        "tls_extensions_sha256": "e87e6567d901388794cb6a875a1928aa",
        "observed_at": "2023-02-02T15:33:17.819841031Z"
      },
      "observed_at": "2023-01-31T18:45:18.110489965Z",
      "perspective_id": "PERSPECTIVE_TATA",
      "port": 993,
      "service_name": "IMAP",
      "source_ip": "167.94.138.44",
      "tls": {
        "version_selected": "TLSv1_2",
        "cipher_selected": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
        "certificates": {
          "_encoding": {
            "leaf_fp_sha_256": "DISPLAY_HEX"
          },
          "leaf_fp_sha_256": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
          "leaf_data": {
            "names": [
              "*.zxcs.nl",
              "zxcs.nl"
            ],
            "subject_dn": "CN=*.zxcs.nl",
            "issuer_dn": "C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA",
            "pubkey_bit_size": 4096,
            "pubkey_algorithm": "RSA",
            "tbs_fingerprint": "da1507fcd9c61b261239cf848d34ac61f474a9ec81aea43992fb9ffd99bdb453",
            "fingerprint": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
            "issuer": {
              "common_name": [
                "Sectigo RSA Domain Validation Secure Server CA"
              ],
              "locality": [
                "Salford"
              ],
              "organization": [
                "Sectigo Limited"
              ],
              "province": [
                "Greater Manchester"
              ],
              "country": [
                "GB"
              ]
            },
            "subject": {
              "common_name": [
                "*.zxcs.nl"
              ]
            },
            "public_key": {
              "key_algorithm": "RSA",
              "rsa": {
                "_encoding": {
                  "modulus": "DISPLAY_BASE64",
                  "exponent": "DISPLAY_BASE64"
                },
                "modulus": "vTbnI9el20RXX5mnBWeoyazddGTGCyxtFYWiaKdo7YflkF7/DQAfBcl39Z2jTMj4Yls71EVhVfu1HRvXLCcCZnOU63OQ3fonoD69D7oSJijPrrIRh+eoIlPRxJ8Vue2x7rMU9k1ZHZf+U9MCNSzyU/0jU1wmTyOzhjIte20ikoH9peEXK7Og+gIQs4LDNRVQniBVubOULS/iEGV9L2AE4wWScWUYBq4506Y/rfuVcp4QLwR+OM9ZrglX4o0Q8R8hIwDvdweuK0PoSKra7IdyHGH0+Jt/nr7mi3255fr5waO0vPIq8sfVpPYTZRJQJ3LFLqJtU+4QQZeEaKXIzNTP+w7L++2m486gU0hsvOVXYLtb29BFzyeg30PCcA9rGlVIdSp6s0DmyyaNI6lnPjxdkNMqfCjZ5/x8HpmkoFsI6Oa04Wm7LQn478ENTiBvtUdpXTPaNCsXIWKergeavvu6OrZpa7C2eGQMTVC0uj43DMRvk3UDoAlu1k5TpQY/RhzQoaMo169uWQwbNJXyqkfe/gztSGnxCtAB1bEWezYOn0WoHN/IBpTdNEACf1rmYPalqm5izIjQn6XBv/twNWFnPm6jq2zyO668J5au9K7DeoNDIT/PyclyMT7V/lfQneZrcNSZSCXYHv0k8jVWWvEhNil9eXZEHTNqZ4QK30Jw0b0=",
                "exponent": "AAEAAQ==",
                "length": 512
              },
              "fingerprint": "1e91299b6e1128d3162c9e0aef2ccea10653abb5de2c0629bf25732f68111bd2"
            },
            "signature": {
              "signature_algorithm": "SHA256-RSA",
              "self_signed": false
            }
          }
        },
        "server_key_exchange": {
          "ec_params": {
            "named_curve": 24
          }
        },
        "_encoding": {
          "ja3s": "DISPLAY_HEX"
        },
        "ja3s": "303951d4c50efb2e991652225a6f02b1"
      },
      "transport_fingerprint": {
        "id": 6,
        "os": "Linux",
        "raw": "14480,64,true,MSTNW,1460,false,false"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "pop3",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "certificate": "DISPLAY_HEX",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "+OK ZXCS ready.\r\n",
      "banner_hashes": [
        "sha256:445ebc0521fa546a154acfb9d2dc5e064acabd0c9017f002055d9cce81c429c4"
      ],
      "banner_hex": "2b4f4b205a5843532072656164792e0d0a",
      "certificate": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
      "extended_service_name": "POP3S",
      "observed_at": "2023-02-02T10:49:37.688319151Z",
      "perspective_id": "PERSPECTIVE_HE",
      "pop3": {
        "_encoding": {
          "banner": "DISPLAY_UTF8"
        },
        "banner": "+OK ZXCS ready.\r\n"
      },
      "port": 995,
      "service_name": "POP3",
      "source_ip": "162.142.125.10",
      "tls": {
        "version_selected": "TLSv1_2",
        "cipher_selected": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
        "certificates": {
          "_encoding": {
            "leaf_fp_sha_256": "DISPLAY_HEX"
          },
          "leaf_fp_sha_256": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
          "leaf_data": {
            "names": [
              "*.zxcs.nl",
              "zxcs.nl"
            ],
            "subject_dn": "CN=*.zxcs.nl",
            "issuer_dn": "C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Domain Validation Secure Server CA",
            "pubkey_bit_size": 4096,
            "pubkey_algorithm": "RSA",
            "tbs_fingerprint": "da1507fcd9c61b261239cf848d34ac61f474a9ec81aea43992fb9ffd99bdb453",
            "fingerprint": "38db8c253614f4f120a2c9b09ff34b091d3154c822b994c71664f6dfe2dd1a70",
            "issuer": {
              "common_name": [
                "Sectigo RSA Domain Validation Secure Server CA"
              ],
              "locality": [
                "Salford"
              ],
              "organization": [
                "Sectigo Limited"
              ],
              "province": [
                "Greater Manchester"
              ],
              "country": [
                "GB"
              ]
            },
            "subject": {
              "common_name": [
                "*.zxcs.nl"
              ]
            },
            "public_key": {
              "key_algorithm": "RSA",
              "rsa": {
                "_encoding": {
                  "modulus": "DISPLAY_BASE64",
                  "exponent": "DISPLAY_BASE64"
                },
                "modulus": "vTbnI9el20RXX5mnBWeoyazddGTGCyxtFYWiaKdo7YflkF7/DQAfBcl39Z2jTMj4Yls71EVhVfu1HRvXLCcCZnOU63OQ3fonoD69D7oSJijPrrIRh+eoIlPRxJ8Vue2x7rMU9k1ZHZf+U9MCNSzyU/0jU1wmTyOzhjIte20ikoH9peEXK7Og+gIQs4LDNRVQniBVubOULS/iEGV9L2AE4wWScWUYBq4506Y/rfuVcp4QLwR+OM9ZrglX4o0Q8R8hIwDvdweuK0PoSKra7IdyHGH0+Jt/nr7mi3255fr5waO0vPIq8sfVpPYTZRJQJ3LFLqJtU+4QQZeEaKXIzNTP+w7L++2m486gU0hsvOVXYLtb29BFzyeg30PCcA9rGlVIdSp6s0DmyyaNI6lnPjxdkNMqfCjZ5/x8HpmkoFsI6Oa04Wm7LQn478ENTiBvtUdpXTPaNCsXIWKergeavvu6OrZpa7C2eGQMTVC0uj43DMRvk3UDoAlu1k5TpQY/RhzQoaMo169uWQwbNJXyqkfe/gztSGnxCtAB1bEWezYOn0WoHN/IBpTdNEACf1rmYPalqm5izIjQn6XBv/twNWFnPm6jq2zyO668J5au9K7DeoNDIT/PyclyMT7V/lfQneZrcNSZSCXYHv0k8jVWWvEhNil9eXZEHTNqZ4QK30Jw0b0=",
                "exponent": "AAEAAQ==",
                "length": 512
              },
              "fingerprint": "1e91299b6e1128d3162c9e0aef2ccea10653abb5de2c0629bf25732f68111bd2"
            },
            "signature": {
              "signature_algorithm": "SHA256-RSA",
              "self_signed": false
            }
          }
        },
        "server_key_exchange": {
          "ec_params": {
            "named_curve": 24
          }
        },
        "_encoding": {
          "ja3s": "DISPLAY_HEX"
        },
        "ja3s": "303951d4c50efb2e991652225a6f02b1"
      },
      "transport_fingerprint": {
        "id": 6,
        "os": "Linux",
        "raw": "14480,64,true,MSTNW,1460,false,false"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "banner_grab",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "\u0000\u0000\u0001.R\ufffd\u0002\n\u0014\b\ufffd\ufffd\u0004\u0010\u0001\u0018\u0000 \u0000*\bNOTFOUND\u0010\u0000\u001a\ufffd\u0002-----BEGIN PUBLIC KEY-----\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC+lzNwVTHAH4equntsL1svA7Bo\nVjNkUd5hpiAsDpK8ovdEi4edkePhit3KND3GwjN10zaKrtST02wve5oYKRCFMvnz\nFW10itQe7XCrZArKIFkGMcFljhOqReXy/mzdH1wZPKQsFDQmHn8EBvz2pTJPiliL\nFoEgfS2BRaypzkeuvwIDAQAB\n-----END PUBLIC KEY-----\n",
      "banner_grab": {
        "_encoding": {
          "banner": "DISPLAY_BASE64"
        },
        "banner": "AAABLlKrAgoUCKOABBABGAAgACoITk9URk9VTkQQABqQAi0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1JR2ZNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0R05BRENCaVFLQmdRQytsek53VlRIQUg0ZXF1bnRzTDFzdkE3Qm8KVmpOa1VkNWhwaUFzRHBLOG92ZEVpNGVka2VQaGl0M0tORDNHd2pOMTB6YUtydFNUMDJ3dmU1b1lLUkNGTXZuegpGVzEwaXRRZTdYQ3JaQXJLSUZrR01jRmxqaE9xUmVYeS9temRIMXdaUEtRc0ZEUW1IbjhFQnZ6MnBUSlBpbGlMCkZvRWdmUzJCUmF5cHprZXV2d0lEQVFBQgotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0K",
        "transport": "TCP"
      },
      "banner_hashes": [
        "sha256:0f43b03abd112773d0d22a65c228b05130001ae7cc264aa4963263972fc329ef"
      ],
      "banner_hex": "0000012e52ab020a1408a380041001180020002a084e4f54464f554e4410001a90022d2d2d2d2d424547494e205055424c4943204b45592d2d2d2d2d0a4d4947664d413047435371475349623344514542415155414134474e4144434269514b426751432b6c7a4e775654484148346571756e74734c3173764137426f0a566a4e6b556435687069417344704b386f766445693465646b6550686974334b4e443347776a4e31307a614b727453543032777665356f594b5243464d766e7a0a4657313069745165375843725a41724b49466b474d63466c6a684f71526558792f6d7a644831775a504b51734644516d486e384542767a3270544a50696c694c0a466f456766533242526179707a6b657576774944415141420a2d2d2d2d2d454e44205055424c4943204b45592d2d2d2d2d0a",
      "extended_service_name": "UNKNOWN",
      "observed_at": "2023-02-02T02:15:05.521942290Z",
      "perspective_id": "PERSPECTIVE_TATA",
      "port": 1167,
      "service_name": "UNKNOWN",
      "source_ip": "167.94.138.60",
      "transport_fingerprint": {
        "id": 6,
        "os": "Linux",
        "raw": "14480,64,true,MSTNW,1460,false,false"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "http",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "HTTP/1.1 200 OK\r\nCache-Control: no-cache\r\nContent-Encoding: gzip\r\nContent-Type: text/html\r\nPragma: no-cache\r\nServer: DirectAdmin Daemon\r\nSet-Cookie: session=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT; SameSite=Lax; HttpOnly\r\nVary: Origin\r\nVary: Accept-Encoding\r\nX-Directadmin: Unauthorized\r\nX-Frame-Options: sameorigin\r\nX-Valid: yes\r\nDate:  <REDACTED>\r\nTransfer-Encoding: chunked\r\n",
      "banner_hashes": [
        "sha256:8527d1726a07b9513d715e3d928db870278c405e8b7c4885ca163a768a478dad"
      ],
      "banner_hex": "485454502f312e3120323030204f4b0d0a43616368652d436f6e74726f6c3a206e6f2d63616368650d0a436f6e74656e742d456e636f64696e673a20677a69700d0a436f6e74656e742d547970653a20746578742f68746d6c0d0a507261676d613a206e6f2d63616368650d0a5365727665723a2044697265637441646d696e204461656d6f6e0d0a5365742d436f6f6b69653a2073657373696f6e3d3b20706174683d2f3b20657870697265733d5468752c203031204a616e20313937302030303a30303a303020474d543b2053616d65536974653d4c61783b20487474704f6e6c790d0a566172793a204f726967696e0d0a566172793a204163636570742d456e636f64696e670d0a582d44697265637461646d696e3a20556e617574686f72697a65640d0a582d4672616d652d4f7074696f6e733a2073616d656f726967696e0d0a582d56616c69643a207965730d0a446174653a20203c52454441435445443e0d0a5472616e736665722d456e636f64696e673a206368756e6b65640d0a",
      "extended_service_name": "HTTP",
      "http": {
        "request": {
          "method": "GET",
          "uri": "http://185.104.28.45:2222/",
          "headers": {
            "Accept": [
              "*/*"
            ],
            "_encoding": {
              "Accept": "DISPLAY_UTF8",
              "User_Agent": "DISPLAY_UTF8"
            },
            "User_Agent": [
              "Mozilla/5.0 (compatible; CensysInspect/1.1; +https://about.censys.io/)"
            ]
          }
        },
        "response": {
          "protocol": "HTTP/1.1",
          "status_code": 200,
          "status_reason": "OK",
          "headers": {
            "Server": [
              "DirectAdmin Daemon"
            ],
            "_encoding": {
              "Server": "DISPLAY_UTF8",
              "Set_Cookie": "DISPLAY_UTF8",
              "Vary": "DISPLAY_UTF8",
              "Content_Type": "DISPLAY_UTF8",
              "Pragma": "DISPLAY_UTF8",
              "X_Valid": "DISPLAY_UTF8",
              "Date": "DISPLAY_UTF8",
              "X_Directadmin": "DISPLAY_UTF8",
              "Cache_Control": "DISPLAY_UTF8",
              "X_Frame_Options": "DISPLAY_UTF8"
            },
            "Set_Cookie": [
              "session=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT; SameSite=Lax; HttpOnly"
            ],
            "Vary": [
              "Origin",
              "Accept-Encoding"
            ],
            "Content_Type": [
              "text/html"
            ],
            "Pragma": [
              "no-cache"
            ],
            "X_Valid": [
              "yes"
            ],
            "Date": [
              "<REDACTED>"
            ],
            "X_Directadmin": [
              "Unauthorized"
            ],
            "Cache_Control": [
              "no-cache"
            ],
            "X_Frame_Options": [
              "sameorigin"
            ]
          },
          "_encoding": {
            "html_tags": "DISPLAY_UTF8",
            "body": "DISPLAY_UTF8",
            "body_hash": "DISPLAY_UTF8",
            "html_title": "DISPLAY_UTF8"
          },
          "html_tags": [
            "<title>DirectAdmin Login</title>",
            "<meta name=\"robots\" content=\"noindex,nofollow\">",
            "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">"
          ],
          "body_size": 1917,
          "body": "<html>\n<head>\n<title>DirectAdmin Login</title>\n<meta name=\"robots\" content=\"noindex,nofollow\">\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n<style>\n*{ FONT-SIZE: 8.5pt; FONT-FAMILY: verdana; } b { FONT-WEIGHT: bold; } .listtitle { BACKGROUND: #425984; COLOR: #EEEEEE; white-space: nowrap; border-radius: 3px; box-shadow: 1px 1px 3px #727272; } td.list { BACKGROUND: #EEEEEE; white-space: nowrap; } input { border-radius: 3px; padding-left: 4px; padding-right: 4px; } .inset { border: 1px inset #DDDDDD; } #footer { position: fixed; bottom: 0; width: 100%; padding-bottom: 20px; text-align: center; color: #A1A1A1; } #outofsync { font-weight: bold; color: #990000; }</style>\n</head>\n<body onload=\"document.form.username.focus();if(document.form.referer.value.indexOf('#')==-1)document.form.referer.value+=location.hash;\">\n<center><br><br><br><br>\n<h1>DirectAdmin Login Page</h1>\n<table cellspacing=1 cellpadding=5>\n<tr>\n<td class=listtitle colspan=2>Please enter your Username and Password</td></tr>\n<form action=\"/CMD_LOGIN\" method=\"POST\" name=\"form\">\n<input type=hidden name=referer value=\"/\">\n<tr><td class=list align=right>Username:</td><td class=list><input class=inset type=text name=username autocapitalize='none'></td></tr>\n<tr><td class=list align=right>Password:</td><td class=list><input class=inset type=password name=password></td></tr>\n<tr><td class=listtitle align=right colspan=2><input type=submit value='Login'></td></tr>\n</form>\n</table>\n</center>\n<div id='footer'>Thu Feb  2 03:15:06 2023\n<div id='outofsync'></div><div id='valid'>yes</div></div>\n</body></html>\n<script language=\"JavaScript\">computer_time=Math.floor(Date.now()/1000); server_time=1675304106; time_diff=Math.abs(computer_time-server_time); if (time_diff>86400) { document.getElementById('outofsync').innerHTML='Computer or server time out of sync by '+(Math.round(100*time_diff/3600)/100)+' hours.';}</script>",
          "favicons": [
            {
              "size": 1406,
              "name": "http://185.104.28.45:2222/favicon.ico",
              "md5_hash": "f0cc6dddae553aa7cfeb2ca5b62b2083"
            }
          ],
          "body_hashes": [
            "sha256:70e7522385c5b6f2570a759e6e08aa48373907c19c8b23e9b5f73f5d228e48ac",
            "sha1:bf0c8d114635f3d7269d620e4a5fe4db43df0933"
          ],
          "body_hash": "sha1:bf0c8d114635f3d7269d620e4a5fe4db43df0933",
          "html_title": "DirectAdmin Login"
        },
        "supports_http2": false
      },
      "observed_at": "2023-02-02T02:15:06.630336175Z",
      "perspective_id": "PERSPECTIVE_NTT",
      "port": 2222,
      "service_name": "HTTP",
      "source_ip": "167.248.133.62",
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "mysql",
      "extended_service_name": "MYSQL",
      "mysql": {
        "error_code": 1130,
        "error_id": "ER_HOST_NOT_PRIVILEGED",
        "error_message": "Host 'scanner-04.ch1.censys-scanner.com' is not allowed to connect to this MariaDB server",
        "protocol_version": 0,
        "connection_id": 0,
        "character_set": 0
      },
      "observed_at": "2023-02-02T03:23:06.271704973Z",
      "perspective_id": "PERSPECTIVE_HE",
      "port": 3306,
      "service_name": "MYSQL",
      "software": [
        {
          "uniform_resource_identifier": "cpe:2.3:a:mariadb:mariadb:*:*:*:*:*:*:*:*",
          "part": "a",
          "vendor": "MariaDB",
          "product": "MariaDB",
          "other": {
            "family": "MySQL"
          },
          "source": "OSI_APPLICATION_LAYER"
        }
      ],
      "source_ip": "162.142.125.9",
      "transport_fingerprint": {
        "id": 6,
        "os": "Linux",
        "raw": "14480,64,true,MSTNW,1460,false,false"
      },
      "transport_protocol": "TCP",
      "truncated": false
    },
    {
      "_decoded": "http",
      "_encoding": {
        "banner": "DISPLAY_UTF8",
        "banner_hex": "DISPLAY_HEX"
      },
      "banner": "HTTP/1.1 200 OK\r\nConnection: close\r\nServer: NetData Embedded HTTP Server v1.9.0-175-g092f260d_rolling\r\nAccess-Control-Allow-Origin: *\r\nAccess-Control-Allow-Credentials: true\r\nContent-Type: text/html; charset=utf-8\r\nDate:  <REDACTED>\r\nCache-Control: public\r\nExpires: Wed, 01 Feb 2023 21:29:16 GMT\r\nContent-Encoding: gzip\r\nTransfer-Encoding: chunked\r\n",
      "banner_hashes": [
        "sha256:fe3022ee377100477233d60b7301551634413776fcea002c06ed08b4535bb059"
      ],
      "banner_hex": "485454502f312e3120323030204f4b0d0a436f6e6e656374696f6e3a20636c6f73650d0a5365727665723a204e65744461746120456d6265646465642048545450205365727665722076312e392e302d3137352d6730393266323630645f726f6c6c696e670d0a4163636573732d436f6e74726f6c2d416c6c6f772d4f726967696e3a202a0d0a4163636573732d436f6e74726f6c2d416c6c6f772d43726564656e7469616c733a20747275650d0a436f6e74656e742d547970653a20746578742f68746d6c3b20636861727365743d7574662d380d0a446174653a20203c52454441435445443e0d0a43616368652d436f6e74726f6c3a207075626c69630d0a457870697265733a205765642c2030312046656220323032332032313a32393a313620474d540d0a436f6e74656e742d456e636f64696e673a20677a69700d0a5472616e736665722d456e636f64696e673a206368756e6b65640d0a",
      "extended_service_name": "HTTP",
      "http": {
        "request": {
          "method": "GET",
          "uri": "http://185.104.28.45:19999/",
          "headers": {
            "User_Agent": [
              "Mozilla/5.0 (compatible; CensysInspect/1.1; +https://about.censys.io/)"
            ],
            "_encoding": {
              "User_Agent": "DISPLAY_UTF8",
              "Accept": "DISPLAY_UTF8"
            },
            "Accept": [
              "*/*"
            ]
          }
        },
        "response": {
          "protocol": "HTTP/1.1",
          "status_code": 200,
          "status_reason": "OK",
          "headers": {
            "Date": [
              "<REDACTED>"
            ],
            "_encoding": {
              "Date": "DISPLAY_UTF8",
              "Content_Type": "DISPLAY_UTF8",
              "Server": "DISPLAY_UTF8",
              "Access_Control_Allow_Origin": "DISPLAY_UTF8",
              "Connection": "DISPLAY_UTF8",
              "Cache_Control": "DISPLAY_UTF8",
              "Access_Control_Allow_Credentials": "DISPLAY_UTF8",
              "Expires": "DISPLAY_UTF8"
            },
            "Content_Type": [
              "text/html; charset=utf-8"
            ],
            "Server": [
              "NetData Embedded HTTP Server v1.9.0-175-g092f260d_rolling"
            ],
            "Access_Control_Allow_Origin": [
              "*"
            ],
            "Connection": [
              "close"
            ],
            "Cache_Control": [
              "public"
            ],
            "Access_Control_Allow_Credentials": [
              "true"
            ],
            "Expires": [
              "Wed, 01 Feb 2023 21:29:16 GMT"
            ]
          },
          "_encoding": {
            "html_tags": "DISPLAY_UTF8",
            "body": "DISPLAY_UTF8",
            "body_hash": "DISPLAY_UTF8",
            "html_title": "DISPLAY_UTF8"
          },
          "html_tags": [
            "<title>netdata dashboard</title>",
            "<meta name=\"application-name\" content=\"netdata\">",
            "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />",
            "<meta charset=\"utf-8\">",
            "<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\">",
            "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">",
            "<meta name=\"apple-mobile-web-app-capable\" content=\"yes\">",
            "<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\">",
            "<meta name=\"author\" content=\"[email protected]\">",
            "<meta property=\"og:locale\"             content=\"en_US\" />",
            "<meta property=\"og:url\"                content=\"https://my-netdata.io\" />",
            "<meta property=\"og:type\"               content=\"website\" />",
            "<meta property=\"og:site_name\"          content=\"netdata\"/>",
            "<meta property=\"og:title\"              content=\"Get control of your Linux Servers. Simple. Effective. Awesome.\" />",
            "<meta property=\"og:description\"        content=\"Unparalleled insights, in real-time, of everything happening on your Linux systems and applications, with stunning, interactive web dashboards and powerful performance and health alarms.\" />",
            "<meta property=\"og:image\"              content=\"https://cloud.githubusercontent.com/assets/2662304/22945737/e98cd0c6-f2fd-11e6-96f1-5501934b0955.png\" />",
            "<meta property=\"og:image:type\"         content=\"image/png\" />",
            "<meta property=\"fb:app_id\"             content=\"1200089276712916\" />",
            "<meta name=\"twitter:card\"              content=\"summary\" />",
            "<meta name=\"twitter:site\"              content=\"@linuxnetdata\" />",
            "<meta name=\"twitter:title\"             content=\"Get control of your Linux Servers. Simple. Effective. Awesome.\" />",
            "<meta name=\"twitter:description\"       content=\"Unparalleled insights, in real-time, of everything happening on your Linux systems and applications, with stunning, interactive web dashboards and powerful performance and health alarms.\" />",
            "<meta name=\"twitter:image\"             content=\"https://cloud.githubusercontent.com/assets/2662304/14092712/93b039ea-f551-11e5-822c-beadbf2b2a2e.gif\" />"
          ],
          "body_size": 65536,
          "body": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <title>netdata dashboard</title>\n    <meta name=\"application-name\" content=\"netdata\">\n\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n    <meta name=\"apple-mobile-web-app-capable\" content=\"yes\">\n    <meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\">\n    <meta name=\"author\" content=\"[email protected]\">\n\n    <!-- <link rel=\"shortcut icon\" href=\"images/seo-performance-multi-size.ico\"> -->\n\n    <!-- <link rel=\"apple-touch-icon\" href=\"images/seo-performance-72.png\"> -->\n    <!-- <link rel=\"apple-touch-icon\" sizes=\"72x72\" href=\"images/seo-performance-72.png\"> -->\n    <!-- <link rel=\"apple-touch-icon\" sizes=\"114x114\" href=\"images/seo-performance-114.png\"> -->\n\n    <!-- <link rel=\"icon\" type=\"image/png\" sizes=\"512x512\" href=\"images/seo-performance-512.png\"> -->\n    <!-- <link rel=\"icon\" type=\"image/png\" sizes=\"256x256\" href=\"images/seo-performance-256.png\"> -->\n    <!-- <link rel=\"icon\" type=\"image/png\" sizes=\"128x128\" href=\"images/seo-performance-128.png\"> -->\n    <!-- <link rel=\"icon\" type=\"image/png\" sizes=\"64x64\" href=\"images/seo-performance-64.png\"> -->\n    <!-- <link rel=\"icon\" type=\"image/png\" sizes=\"48x48\" href=\"images/seo-performance-48.png\"> -->\n    <!-- <link rel=\"icon\" type=\"image/png\" sizes=\"24x24\" href=\"images/seo-performance-24.png\"> -->\n    <!-- <link rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"images/seo-performance-16.png\"> -->\n    <!-- <link rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"images/seo-performance-32.png\"> -->\n\n    <link rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACNklEQVRYhcXXv2tUQRAH8M+FEIJISBHCIWIhIQSUILERi4AiiqCggiIiomAjlhaC4j+ghYWISgqNohZaCBZBC8Ei8QdEUCutFBsxCBqDYkgci/cunkfuJffjJQPD8mZm5/vd2WV2HzlJ0Bs8CvrywsgCHwy+BpGOg0sJfjj4nYKX9FdwKG9gwZlgtgK8pLOpPxfw1mCoCnClDgWtzQTvCEYWCV7SkWAlFBoEb8dlDKBF8t2bMWUSH/AHr3CiEfz5CPUusPJLkRCdk5ZqyeqUrQv4R7E5TwK7M3zTeIKduRAIitiWEfIY69GdCwGcRFuG/xqONRkzkaA7+J5x+MaDtWmHvJ4HgeEM8Nn0bridfv9HoOFyBAdwJCPkqqTzHWwUaz7wgeBHxupfBKuCj2W25mxBsCGYyAB/FxTT27HcPlyep64tCLbjKbqqhLzBlgKfF8pVE4FgRXABI+ioEnYfOyzcFWsCbg+OV+xlpU4ER4O+4HVwL51b3xYEXcGu4Ao+YQhr5gmdxHmsQyfG0b/YxbWmLfRWmnxa0s06VbTMCpnBS9zFzQKTwR5cXCzwHIE02Sl8wSZsRI/kgLVJqjSd+t9LVjiG1diPszhdK3A5gR48k5zYMTwscC59sfT799CYKvA8EttbSeXgTr3gJQKl91kR+yTlvyG5uUbLYh9gb+ovltkb6qYtNSRo3kOygsBSzGlKsubf43USWLYK5CLLXoFWyU/CtzLbVDpW2n+m40yN9ukqdvAX9ac/EIgOapcAAAAASUVORK5CYII=\">\n\n    <meta property=\"og:locale\"             content=\"en_US\" />\n    <meta property=\"og:url\"                content=\"https://my-netdata.io\" />\n    <meta property=\"og:type\"               content=\"website\" />\n    <meta property=\"og:site_name\"          content=\"netdata\"/>\n    <meta property=\"og:title\"              content=\"Get control of your Linux Servers. Simple. Effective. Awesome.\" />\n    <meta property=\"og:description\"        content=\"Unparalleled insights, in real-time, of everything happening on your Linux systems and applications, with stunning, interactive web dashboards and powerful performance and health alarms.\" />\n    <meta property=\"og:image\"              content=\"https://cloud.githubusercontent.com/assets/2662304/22945737/e98cd0c6-f2fd-11e6-96f1-5501934b0955.png\" />\n    <meta property=\"og:image:type\"         content=\"image/png\" />\n    <meta property=\"fb:app_id\"             content=\"1200089276712916\" />\n\n    <meta name=\"twitter:card\"              content=\"summary\" />\n    <meta name=\"twitter:site\"              content=\"@linuxnetdata\" />\n    <meta name=\"twitter:title\"             content=\"Get control of your Linux Servers. Simple. Effective. Awesome.\" />\n    <meta name=\"twitter:description\"       content=\"Unparalleled insights, in real-time, of everything happening on your Linux systems and applications, with stunning, interactive web dashboards and powerful performance and health alarms.\" />\n    <meta name=\"twitter:image\"             content=\"https://cloud.githubusercontent.com/assets/2662304/14092712/93b039ea-f551-11e5-822c-beadbf2b2a2e.gif\" />\n\n    <style>\n\n    /* force the vertical window scrollbar */\n    html {\n        overflow-y: scroll;\n    }\n\n    /* prevent body from hiding under the navbar */\n    body {\n        padding-top: 50px;\n    }\n\n    .loadOverlay {\n        position: absolute;\n        top: 0px;\n        left: 0px;\n        width: 100%;\n        height:100%;\n        z-index: 2000;\n        font-size: 10vh;\n        font-family: sans-serif;\n        padding: 40vh 0 40vh 0;\n        font-weight: bold;\n        text-align: center;\n    }\n\n    .navbar-highlight {\n        display: none;\n        position: fixed;\n        margin-top: 5px;\n        height: 26px;\n        width: 100%;\n        text-align: center;\n        overflow: hidden;\n        z-index: 30;\n        pointer-events: none !important;\n    }\n\n    .navbar-highlight-content {\n        position: relative;\n        display: inline-block;\n        margin: 0 auto;\n        height: 26px;\n        min-width: 500px;\n        background-color:rgba(0, 0, 0, 0.7);\n        padding-top: 2px;\n        padding-bottom: 2px;\n        padding-left: 15px;\n        padding-right: 15px;\n        border-radius:10px;\n        color: lightgrey;\n        pointer-events: auto !important;\n    }\n\n    .navbar-highlight-bar {\n        cursor: pointer;\n    }\n    .navbar-highlight-button-right {\n        cursor: pointer;\n        padding-left: 10px;\n    }\n\n    .modal-wide .modal-dialog {\n        width: 80%;\n    }\n\n    /* fix # anchors scrolling under the navbar\n       https://github.com/twbs/bootstrap/issues/1768#issuecomment-46519033\n     */\n    h1 {\n        position: relative;\n        z-index: -1;\n    }\n    h2 {\n        position: relative;\n        z-index: -2;\n    }\n    h1:before, h2:before {\n        display: block;\n        content: \" \";\n        margin-top: -70px;\n        height: 70px;\n        visibility: hidden;\n    }\n\n    .p {\n        display: block;\n        margin-top: 15px;\n    }\n\n    .option-row,\n    .option-control {\n        vertical-align: top;\n        padding: 10px;\n        padding-top: 30px;\n        padding-left: 30px;\n    }\n\n    .option-info {\n        padding: 10px;\n    }\n\n    .dashboard-submenu-info {\n        display: block;\n        margin-top: 10px;\n    }\n\n    .dashboard-context-info {\n        display: block;\n        margin-top: 10px;\n    }\n\n    #masthead h1 {\n        /*font-size: 30px;*/\n        line-height: 1;\n        padding-top: 30px;\n    }\n\n    #masthead .well {\n        margin-top:4%;\n    }\n\n    /* fix the navbar shifting when a modal is open */\n    /* https://github.com/twbs/bootstrap/issues/14040#issuecomment-159891033 */\n    body.modal-open{\n        width: 100% !important;\n        padding-right: 0 !important;\n/*      overflow-y: scroll !important; */\n/*      position: fixed !important;*/\n        overflow: visible;\n    }\n\n    /* make accordion use the whole header bar for expand/collapse */\n    .panel-title a {\n        display: block;\n        padding: 10px 15px;\n        margin: -10px -15px;\n    }\n\n    /*\n     * Side navigation\n     *\n     * Scrollspy and affixed enhanced navigation to highlight sections and secondary\n     * sections of docs content.\n     */\n\n    .affix {\n        position: static;\n        top: 70px !important;\n        /*width: 220px;*/\n    }\n\n    .affix-top {\n        /*width: 220px;*/\n    }\n\n    .dashboard-sidebar {\n        max-height: calc(100% - 70px) !important;\n        overflow-y: auto;\n        /*width: 220px !important;*/\n    }\n\n    /* By default it's not affixed in mobile views, so undo that */\n    .dashboard-sidebar.affix {\n        position: static;\n    }\n\n    @media (min-width: 768px) {\n        .dashboard-sidebar {\n            padding-left: 20px;\n        }\n    }\n\n    /* First level of nav */\n    .dashboard-sidenav {\n        margin-top: 20px;\n        margin-bottom: 20px;\n    }\n\n    /* All levels of nav */\n    .dashboard-sidebar .nav > li > a {\n        display: block;\n        padding: 4px 20px;\n        font-size: 13px;\n        font-weight: 500;\n        color: #767676;\n    }\n    .dashboard-sidebar .nav > li > a > .svg-inline--fa {\n        width: 20px;\n        text-align: center;\n    }\n    .dashboard-sidebar .nav > li > a:hover,\n    .dashboard-sidebar .nav > li > a:focus {\n        padding-left: 19px;\n        color: #563d7c;\n        text-decoration: none;\n        background-color: transparent;\n        border-left: 1px solid #563d7c;\n    }\n    .dashboard-sidebar .nav > .active > a,\n    .dashboard-sidebar .nav > .active:hover > a,\n    .dashboard-sidebar .nav > .active:focus > a {\n        padding-left: 18px;\n        font-weight: bold;\n        color: #563d7c;\n        background-color: transparent;\n        border-left: 2px solid #563d7c;\n    }\n\n    /* Nav: second level (shown on .active) */\n    .dashboard-sidebar .nav .nav {\n        display: none; /* Hide by default, but at >768px, show it */\n        padding-bottom: 10px;\n    }\n    .dashboard-sidebar .nav .nav > li > a {\n        padding-top: 1px;\n        padding-bottom: 1px;\n        padding-left: 30px;\n        font-size: 12px;\n        font-weight: normal;\n    }\n    .dashboard-sidebar .nav .nav > li > a:hover,\n    .dashboard-sidebar .nav .nav > li > a:focus {\n        padding-left: 29px;\n    }\n    .dashboard-sidebar .nav .nav > .active > a,\n    .dashboard-sidebar .nav .nav > .active:hover > a,\n    .dashboard-sidebar .nav .nav > .active:focus > a {\n        padding-left: 28px;\n        font-weight: 500;\n    }\n\n    .dropdown-menu {\n        min-width: 200px;\n    }\n    .dropdown-menu.columns-2 {\n        margin: 0;\n        padding: 0;\n        width: 400px;\n    }\n    .dropdown-menu li a {\n        padding: 5px 15px;\n        font-weight: 300;\n    }\n    .dropdown-menu.multi-column {\n        overflow-x: hidden;\n    }\n    .multi-column-dropdown {\n        list-style: none;\n        padding: 0;\n    }\n    .multi-column-dropdown li a {\n        display: block;\n        clear: both;\n        line-height: 1.428571429;\n        white-space: normal;\n    }\n    .multi-column-dropdown li a:hover {\n        text-decoration: none;\n        color: #f5f5f5;\n        background-color: #262626;\n    }\n    .scrollable-menu {\n        height: auto;\n        max-height: 80vh;\n        overflow-x: hidden;\n    }\n    .scrollable-menu-50 {\n        height: auto;\n        max-height: 50vh;\n        overflow-x: hidden;\n    }\n\n    /* Back to top (hidden on mobile) */\n    .back-to-top,\n    .dashboard-theme-toggle {\n        display: none;\n        padding: 4px 10px;\n        margin-top: 10px;\n        margin-left: 10px;\n        font-size: 12px;\n        font-weight: 500;\n        color: #999;\n    }\n    .back-to-top:hover,\n    .dashboard-theme-toggle:hover {\n        color: #563d7c;\n        text-decoration: none;\n    }\n    .dashboard-theme-toggle {\n        margin-top: 0;\n    }\n\n    .container {\n        width: calc(100% - 20px) !important;\n    }\n\n    .charts-body {\n        display: inline-block;\n        width: 100%;\n    }\n\n    .sidebar-body {\n        position: absolute;\n        display: none;\n    }\n\n    .dashboard-section-container {\n        display: block;\n        width: 100%;\n        page-break-before: auto;\n        page-break-after: auto;\n        page-break-inside: auto;\n    }\n\n    .dashboard-print-row {\n        display: block;\n        width: 100%;\n        page-break-before: auto;\n        page-break-after: auto;\n        page-break-inside: avoid;\n    }\n\n    .netdata-chartblock-container {\n        display: inline-block;\n    }\n\n    /* https://github.com/seiyria/bootstrap-slider/issues/746 */\n    .tooltip {\n        -webkit-user-select: none;\n        -moz-user-select: none;\n        -ms-user-select: none;\n        user-select: none;\n    }\n\n    @media print {\n        body {\n            overflow: visible !important;\n            -webkit-print-color-adjust: exact;\n            page-break-inside: auto;\n            page-break-before: auto;\n            page-break-after: auto;\n        }\n\n        .dashboard-section {\n            page-break-inside: auto;\n            page-break-before: auto;\n            page-break-after: auto;\n        }\n\n        .dashboard-subsection {\n            page-break-before: avoid;\n            page-break-after: auto;\n            page-break-inside: auto;\n        }\n\n        .charts-body {\n            padding-left: 0%;\n            padding-right: 0%;\n            display: block;\n            page-break-inside: auto;\n            page-break-before: auto;\n            page-break-after: auto;\n        }\n\n        .back-to-top,\n        .dashboard-theme-toggle {\n            display: block;\n        }\n    }\n\n    @media (min-width: 768px) {\n        .charts-body {\n            padding-left: 0%;\n            padding-right: 0%;\n        }\n\n        .back-to-top,\n        .dashboard-theme-toggle {\n            display: block;\n        }\n    }\n\n    /* Show and affix the side nav when space allows it */\n    @media (min-width: 992px) {\n        .container {\n            padding-left: 0% !important;\n        }\n\n        .charts-body {\n            width: calc(100% - 213px) !important;\n            padding-left: 1% !important;\n            padding-right: 0% !important;\n        }\n\n        .sidebar-body {\n            display: inline-block !important;\n            width: 213px !important;\n        }\n\n        .dashboard-sidebar .nav > .active > ul {\n            display: block;\n        }\n\n        /* Widen the fixed sidebar */\n        .dashboard-sidebar.affix,\n        .dashboard-sidebar.affix-top,\n        .dashboard-sidebar.affix-bottom {\n            width: 213px !important;\n        }\n        .dashboard-sidebar.affix {\n            position: fixed; /* Undo the static from mobile first approach */\n            top: 20px;\n        }\n        .dashboard-sidebar.affix-bottom {\n            position: absolute; /* Undo the static from mobile first approach */\n        }\n        .dashboard-sidebar.affix-bottom .dashboard-sidenav,\n        .dashboard-sidebar.affix .dashboard-sidenav {\n            margin-top: 0;\n            margin-bottom: 0;\n        }\n    }\n\n    @media (min-width: 1200px) {\n        .container {\n            padding-left: 2% !important;\n        }\n\n        .charts-body {\n            width: calc(100% - 233px) !important;\n            padding-left: 1% !important;\n            padding-right: 1% !important;\n        }\n\n        .sidebar-body {\n            display: inline-block !important;\n            width: 233px !important;\n        }\n\n        /* Widen the fixed sidebar again */\n        .dashboard-sidebar.affix,\n        .dashboard-sidebar.affix-top,\n        .dashboard-sidebar.affix-bottom {\n            width: 233px !important;\n        }\n    }\n\n    @media (min-width: 1360px) {\n        .container {\n            padding-left: 3% !important;\n        }\n\n        .charts-body {\n            width: calc(100% - 263px) !important;\n            padding-left: 1% !important;\n            padding-right: 2% !important;\n        }\n\n        .sidebar-body {\n            display: inline-block !important;\n            width: 263px !important;\n        }\n\n        /* Widen the fixed sidebar again */\n        .dashboard-sidebar.affix,\n        .dashboard-sidebar.affix-top,\n        .dashboard-sidebar.affix-bottom {\n            width: 263px !important;\n        }\n    }\n\n    .action-button {\n        position: relative;\n        display: inline-block;\n        color: gray;\n        cursor: pointer;\n        margin: 0 auto;\n        width: 30px;\n        height: 30px;\n        font-size: 25px;\n    }\n\n    .ripple {\n        position: relative;\n        /*overflow: hidden;*/\n        transform: translate3d(0, 0, 0)\n    }\n\n    .ripple:after {\n        content: \"\";\n        display: block;\n        position: absolute;\n        width: 100%;\n        height: 100%;\n        top: 0;\n        left: 0;\n        pointer-events: none;\n        background-image: radial-gradient(circle, #000 10%, transparent 10.01%);\n        background-repeat: no-repeat;\n        background-position: 50%;\n        transform: scale(18, 18); /* the size of the ripple */\n        opacity: 0;\n        transition: transform .5s, opacity 1s\n    }\n\n    .ripple:active:after {\n        transform: scale(0, 0);\n        opacity: .2;\n        transition: 0s\n    }\n    </style>\n\n    <!-- check which theme to use -->\n    <script type=\"text/javascript\">\n        // netdata snapshot data\n        var netdataSnapshotData = null;\n\n        // enable alarms checking and notifications\n        var netdataShowAlarms = true;\n\n        // enable registry updates\n        var netdataRegistry = true;\n\n        // control the welcome modal and analytics\n        var this_is_demo = null;\n\n        // --------------------------------------------------------------------\n        // urlOptions\n\n        var urlOptions = {\n            hash: '#',\n            theme: null,\n            help: null,\n            mode: 'live',         // 'live', 'print'\n            update_always: false,\n            pan_and_zoom: false,\n            server: null,\n            after: 0,\n            before: 0,\n            highlight: false,\n            highlight_after: 0,\n            highlight_before: 0,\n            nowelcome: false,\n            show_alarms: false,\n            chart: null,\n            family: null,\n            alarm: null,\n            alarm_unique_id: 0,\n            alarm_id: 0,\n            alarm_event_id: 0,\n\n            hasProperty: function(property) {\n                // console.log('checking property ' + property + ' of type ' + typeof(this[property]));\n                return typeof this[property] !== 'undefined';\n            },\n\n            genHash: function(forReload) {\n                var hash = urlOptions.hash;\n\n                if(urlOptions.pan_and_zoom === true) {\n                    hash += ';after='  + urlOptions.after.toString() +\n                        ';before=' + urlOptions.before.toString();\n                }\n\n                if(urlOptions.highlight === true) {\n                    hash += ';highlight_after='  + urlOptions.highlight_after.toString() +\n                        ';highlight_before=' + urlOptions.highlight_before.toString();\n                }\n\n                if(urlOptions.theme !== null)\n                    hash += ';theme=' + urlOptions.theme.toString();\n\n                if(urlOptions.help !== null)\n                    hash += ';help=' + urlOptions.help.toString();\n\n                if(urlOptions.update_always === true)\n                    hash += ';update_always=true';\n\n                if(forReload === true && urlOptions.server !== null)\n                    hash += ';server=' + urlOptions.server.toString();\n\n                if(urlOptions.mode !== 'live')\n                    hash += ';mode=' + urlOptions.mode;\n\n                return hash;\n            },\n\n            parseHash: function() {\n                var variables = document.location.hash.split(';');\n                var len = variables.length;\n                while(len--) {\n                    if(len !== 0) {\n                        var p = variables[len].split('=');\n                        if(urlOptions.hasProperty(p[0]) && typeof p[1] !== 'undefined')\n                            urlOptions[p[0]] = decodeURIComponent(p[1]);\n                    }\n                    else {\n                        if(variables[len].length > 0)\n                            urlOptions.hash = variables[len];\n                    }\n                }\n\n                var booleans = [ 'nowelcome', 'show_alarms', 'update_always' ];\n                len = booleans.length;\n                while(len--) {\n                    if(urlOptions[booleans[len]] === 'true' || urlOptions[booleans[len]] === true || urlOptions[booleans[len]] === '1' || urlOptions[booleans[len]] === 1)\n                        urlOptions[booleans[len]] = true;\n                    else\n                        urlOptions[booleans[len]] = false;\n                }\n\n                var numeric = [ 'after', 'before', 'highlight_after', 'highlight_before' ];\n                len = numeric.length;\n                while(len--) {\n                    if(typeof urlOptions[numeric[len]] === 'string') {\n                        try {\n                            urlOptions[numeric[len]] = parseInt(urlOptions[numeric[len]]);\n                        }\n                        catch(e) {\n                            console.log('failed to parse URL hash parameter ' + numeric[len]);\n                            urlOptions[numeric[len]] = 0;\n                        }\n                    }\n                }\n\n                if(urlOptions.server !== null && urlOptions.server !== '') {\n                    netdataServerStatic = document.location.origin.toString() + document.location.pathname.toString();\n                    netdataServer = urlOptions.server;\n                }\n                else\n                    urlOptions.server = null;\n\n                if(urlOptions.before > 0 && urlOptions.after > 0) {\n                    urlOptions.pan_and_zoom = true;\n                    urlOptions.nowelcome = true;\n                }\n                else\n                    urlOptions.pan_and_zoom = false;\n\n                if(urlOptions.highlight_before > 0 && urlOptions.highlight_after > 0) {\n                    urlOptions.highlight = true;\n                }\n                else\n                    urlOptions.highlight = false\n\n                switch(urlOptions.mode) {\n                    case 'print':\n                        urlOptions.theme = 'white';\n                        urlOptions.welcome = false;\n                        urlOptions.help = false;\n                        urlOptions.show_alarms = false;\n\n                        if(urlOptions.pan_and_zoom === false) {\n                            urlOptions.pan_and_zoom = true;\n                            urlOptions.before = Date.now();\n                            urlOptions.after = urlOptions.before - 600000;\n                        }\n\n                        netdataShowAlarms = false;\n                        netdataRegistry = false;\n                        this_is_demo = false;\n                        break;\n\n                    case 'live':\n                    default:\n                        urlOptions.mode = 'live';\n                        break;\n                }\n\n                // console.log(urlOptions);\n            },\n\n            hashUpdate: function() {\n                history.replaceState(null, '', urlOptions.genHash(true));\n            },\n\n            netdataPanAndZoomCallback: function(status, after, before) {\n                //console.log(1);\n                //console.log(new Error().stack);\n\n                if(netdataSnapshotData === null) {\n                    urlOptions.pan_and_zoom = status;\n                    urlOptions.after = after;\n                    urlOptions.before = before;\n                    urlOptions.hashUpdate();\n                }\n            },\n\n            netdataHighlightCallback: function(status, after, before) {\n                //console.log(2);\n                //console.log(new Error().stack);\n\n                if(status === true && (after === null || before === null || after <= 0 || before <= 0 || after >= before)) {\n                    status = false;\n                    after = 0;\n                    before = 0;\n                }\n\n                if(netdataSnapshotData === null)\n                    urlOptions.highlight = status;\n                else\n                    urlOptions.highlight = false;\n\n                urlOptions.highlight_after = Math.round(after);\n                urlOptions.highlight_before = Math.round(before);\n                urlOptions.hashUpdate();\n\n                var show_eye = NETDATA.globalChartUnderlay.hasViewport();\n\n                if(status === true && after > 0 && before > 0 && after < before) {\n                    var d1 = NETDATA.dateTime.localeDateString(after);\n                    var d2 = NETDATA.dateTime.localeDateString(before);\n                    if(d1 === d2) d2 = '';\n                    document.getElementById('navbar-highlight-content').innerHTML =\n                        ((show_eye === true)?'<span class=\"navbar-highlight-bar highlight-tooltip\" onclick=\"urlOptions.showHighlight();\" title=\"restore the highlighted view\" data-toggle=\"tooltip\" data-placement=\"bottom\">':'<span>').toString()\n                        + 'highlighted time-frame'\n                        + ' <b>' + d1 + ' <code>' + NETDATA.dateTime.localeTimeString(after) + '</code></b> to '\n                        + ' <b>' + d2 + ' <code>' + NETDATA.dateTime.localeTimeString(before) + '</code></b>, '\n                        + 'duration <b>' + NETDATA.seconds4human(Math.round((before - after) / 1000)) + '</b>'\n                        + '</span>'\n                        + '<span class=\"navbar-highlight-button-right highlight-tooltip\" onclick=\"urlOptions.clearHighlight();\" title=\"clear the highlighted time-frame\" data-toggle=\"tooltip\" data-placement=\"bottom\"><i class=\"fas fa-times\"></i></span>';\n\n                    $('.navbar-highlight').show();\n\n                    $('.highlight-tooltip').tooltip({\n                        html: true,\n                        delay: {show: 500, hide: 0},\n                        container: 'body'\n                    });\n                }\n                else\n                    $('.navbar-highlight').hide();\n            },\n\n            clearHighlight: function() {\n                NETDATA.globalChartUnderlay.clear();\n\n                if(NETDATA.globalPanAndZoom.isActive() === true)\n                    NETDATA.globalPanAndZoom.clearMaster();\n            },\n\n            showHighlight: function() {\n                NETDATA.globalChartUnderlay.focus();\n            }\n        };\n\n        urlOptions.parseHash();\n\n        // --------------------------------------------------------------------\n        // check options that should be processed before loading netdata.js\n\n        var localStorageTested = -1;\n        function localStorageTest() {\n            if(localStorageTested !== -1)\n                return localStorageTested;\n\n            if(typeof Storage !== \"undefined\" && typeof localStorage === 'object') {\n                var test = 'test';\n                try {\n                    localStorage.setItem(test, test);\n                    localStorage.removeItem(test);\n                    localStorageTested = true;\n                }\n                catch (e) {\n                    console.log(e);\n                    localStorageTested = false;\n                }\n            }\n            else\n                localStorageTested = false;\n\n            return localStorageTested;\n        }\n\n        function loadLocalStorage(name) {\n            var ret = null;\n\n            try {\n                if(localStorageTest() === true)\n                    ret = localStorage.getItem(name);\n                else\n                    console.log('localStorage is not available');\n            }\n            catch(error) {\n                console.log(error);\n                return null;\n            }\n\n            if(typeof ret === 'undefined' || ret === null)\n                return null;\n\n            // console.log('loaded: ' + name.toString() + ' = ' + ret.toString());\n\n            return ret;\n        }\n\n        function saveLocalStorage(name, value) {\n            // console.log('saving: ' + name.toString() + ' = ' + value.toString());\n            try {\n                if(localStorageTest() === true) {\n                    localStorage.setItem(name, value.toString());\n                    return true;\n                }\n            }\n            catch(error) {\n                console.log(error);\n            }\n\n            return false;\n        }\n\n        function getTheme(def) {\n            if(urlOptions.mode === 'print')\n                return 'white';\n\n            var ret = loadLocalStorage('netdataTheme');\n            if(typeof ret === 'undefined' || ret === null || ret === 'undefined')\n                return def;\n            else\n                return ret;\n        }\n\n        function setTheme(theme) {\n            if(urlOptions.mode === 'print') return false;\n\n            if(theme === netdataTheme) return false;\n            return saveLocalStorage('netdataTheme', theme);\n        }\n\n        var netdataTheme = getTheme('slate');\n        var netdataShowHelp = true;\n\n        if(urlOptions.theme !== null) {\n            setTheme(urlOptions.theme);\n            netdataTheme = urlOptions.theme;\n        }\n        else\n            urlOptions.theme = netdataTheme;\n\n        if(urlOptions.help !== null) {\n            saveLocalStorage('options.show_help', urlOptions.help);\n            netdataShowHelp = urlOptions.help;\n        }\n        else {\n            urlOptions.help = loadLocalStorage('options.show_help');\n        }\n\n        // --------------------------------------------------------------------\n        // natural sorting\n        // http://www.davekoelle.com/files/alphanum.js - LGPL\n\n        function naturalSortChunkify(t) {\n            var tz = [];\n            var x = 0, y = -1, n = 0, i, j;\n\n            while (i = (j = t.charAt(x++)).charCodeAt(0)) {\n                var m = (i >= 48 && i <= 57);\n                if (m !== n) {\n                    tz[++y] = \"\";\n                    n = m;\n                }\n                tz[y] += j;\n            }\n\n            return tz;\n        }\n\n        function naturalSortCompare(a, b) {\n            var aa = naturalSortChunkify(a.toLowerCase());\n            var bb = naturalSortChunkify(b.toLowerCase());\n\n            for (var x = 0; aa[x] && bb[x]; x++) {\n                if (aa[x] !== bb[x]) {\n                    var c = Number(aa[x]), d = Number(bb[x]);\n                    if (c.toString() === aa[x] && d.toString() === bb[x])\n                        return c - d;\n                    else\n                        return (aa[x] > bb[x]) ? 1 : -1;\n                }\n            }\n\n            return aa.length - bb.length;\n        }\n\n        // --------------------------------------------------------------------\n        // saving files to client\n\n        function saveTextToClient(data, filename) {\n            var blob = new Blob( [ data ], {\n                type: 'application/octet-stream'\n            });\n\n            var url = URL.createObjectURL( blob );\n            var link = document.createElement( 'a' );\n            link.setAttribute( 'href', url );\n            link.setAttribute( 'download', filename );\n\n            var el = document.getElementById('hiddenDownloadLinks');\n            el.innerHTML = '';\n            el.appendChild(link);\n\n            setTimeout(function(){\n                el.removeChild(link);\n                URL.revokeObjectURL(url);\n            }, 60);\n\n            link.click();\n        }\n\n        function saveObjectToClient(data, filename) {\n            saveTextToClient(JSON.stringify(data), filename);\n        }\n\n        // --------------------------------------------------------------------\n        // registry call back to render my-netdata menu\n\n        var netdataRegistryCallback = function(machines_array) {\n            var el = '';\n            var a1 = '';\n            var found = 0, hosted = 0;\n            var len, i, url, hostname, icon;\n\n            if(options.hosts.length > 1) {\n                // there are mirrored hosts here\n\n                el += '<li><a href=\"#\" onClick=\"return false;\" style=\"color: #666;\" target=\"_blank\">databases available on this host</a></li>';\n                a1 += '<li><a href=\"#\" onClick=\"return false;\"><i class=\"fas fa-info-circle\" style=\"color: #666;\"></i></a></li>';\n\n                var base = document.location.origin.toString() + document.location.pathname.toString();\n                if(base.endsWith(\"/host/\" + options.hostname + \"/\"))\n                    base = base.substring(0, base.length - (\"/host/\" + options.hostname + \"/\").toString().length);\n\n                if(base.endsWith(\"/\"))\n                    base = base.substring(0, base.length - 1);\n\n                var master = options.hosts[0].hostname;\n                var sorted = options.hosts.sort(function(a, b) {\n                    if(a.hostname === master) return -1;\n                    return naturalSortCompare(a.hostname, b.hostname);\n                });\n\n                i = 0;\n                len = sorted.length;\n                while(len--) {\n                    hostname = sorted[i].hostname;\n                    if(hostname === master) {\n                        url = base + \"/\";\n                        icon = \"home\";\n                    }\n                    else {\n                        url = base + \"/host/\" + hostname + \"/\";\n                        icon = \"window-restore\";\n                    }\n\n                    el += '<li id=\"registry_server_hosted_' + len.toString() + '\"><a class=\"registry_link\" href=\"' + url + '#\" onClick=\"return gotoHostedModalHandler(\\'' + url + '\\');\">' + hostname + '</a></li>';\n                    a1 += '<li id=\"registry_action_hosted_' + len.toString() + '\"><a class=\"registry_link\" href=\"' + url + '#\" onClick=\"return gotoHostedModalHandler(\\'' + url + '\\');\"><i class=\"fas fa-' + icon + '\" style=\"color: #999;\"></i></a></li>';\n                    hosted++;\n                    i++;\n                }\n\n                el += '<li role=\"separator\" class=\"divider\"></li>';\n                a1 += '<li role=\"separator\" class=\"divider\"></li>';\n            }\n\n            if(machines_array === null) {\n                var ret = loadLocalStorage(\"registryCallback\");\n                if(typeof ret !== 'undefined' && ret !== null) {\n                    machines_array = JSON.parse(ret);\n                    console.log(\"failed to contact the registry - loaded registry data from browser local storage\");\n                }\n            }\n\n            if(machines_array) {\n                saveLocalStorage(\"registryCallback\", JSON.stringify(machines_array));\n\n                var machines = machines_array.sort(function (a, b) {\n                    return naturalSortCompare(a.name, b.name);\n                });\n\n                i = 0;\n                len = machines.length;\n                while(len--) {\n                    var u = machines[i++];\n                    found++;\n                    el += '<li id=\"registry_server_' + u.guid + '\"><a class=\"registry_link\" href=\"' + u.url + '#\" onClick=\"return gotoServerModalHandler(\\'' + u.guid + '\\');\">' + u.name + '</a></li>';\n                    a1 += '<li id=\"registry_action_' + u.guid + '\"><a href=\"#\" onclick=\"deleteRegistryModalHandler(\\'' + u.guid + '\\',\\'' + u.name + '\\',\\'' + u.url + '\\'); return false;\"><i class=\"fas fa-trash\" style=\"color: #999;\"></i></a></li>';\n                }\n            }\n\n            if(!found) {\n                if(machines)\n                    el += '<li><a href=\"https://github.com/firehol/netdata/wiki/mynetdata-menu-item\" style=\"color: #666;\" target=\"_blank\">your netdata server list is empty...</a></li>';\n                else\n                    el += '<li><a href=\"https://github.com/firehol/netdata/wiki/mynetdata-menu-item\" style=\"color: #666;\" target=\"_blank\">failed to contact the registry...</a></li>';\n\n                a1 += '<li><a href=\"#\" onClick=\"return false;\">&nbsp;</a></li>';\n\n                el += '<li role=\"separator\" class=\"divider\"></li>' +\n                        '<li><a href=\"//london.netdata.rocks/default.html\">UK - London (DigitalOcean.com)</a></li>' +\n                        '<li><a href=\"//newyork.netdata.rocks/default.html\">US - New York (DigitalOcean.com)</a></li>' +\n                        '<li><a href=\"//sanfrancisco.netdata.rocks/default.html\">US - San Francisco (DigitalOcean.com)</a></li>' +\n                        '<li><a href=\"//atlanta.netdata.rocks/default.html\">US - Atlanta (CDN77.com)</a></li>' +\n                        '<li><a href=\"//frankfurt.netdata.rocks/default.html\">Germany - Frankfurt (DigitalOcean.com)</a></li>' +\n                        '<li><a href=\"//toronto.netdata.rocks/default.html\">Canada - Toronto (DigitalOcean.com)</a></li>' +\n                        '<li><a href=\"//singapore.netdata.rocks/default.html\">Japan - Singapore (DigitalOcean.com)</a></li>' +\n                        '<li><a href=\"//bangalore.netdata.rocks/default.html\">India - Bangalore (DigitalOcean.com)</a></li>';\n                a1 += '<li role=\"separator\" class=\"divider\"></li>' +\n                        '<li><a href=\"#\">&nbsp;</a></li>' +\n                        '<li><a href=\"#\">&nbsp;</a></li>'+\n                        '<li><a href=\"#\">&nbsp;</a></li>'+\n                        '<li><a href=\"#\">&nbsp;</a></li>'+\n                        '<li><a href=\"#\">&nbsp;</a></li>'+\n                        '<li><a href=\"#\">&nbsp;</a></li>'+\n                        '<li><a href=\"#\">&nbsp;</a></li>'+\n                        '<li><a href=\"#\">&nbsp;</a></li>';\n            }\n\n            el += '<li role=\"separator\" class=\"divider\"></li>';\n            a1 += '<li role=\"separator\" class=\"divider\"></li>';\n\n            el += '<li><a href=\"https://github.com/firehol/netdata/wiki/mynetdata-menu-item\" style=\"color: #999;\" target=\"_blank\">What is this?</a></li>';\n            a1 += '<li><a href=\"#\" style=\"color: #999;\" onclick=\"switchRegistryModalHandler(); return false;\"><i class=\"fas fa-cog\" style=\"color: #999;\"></i></a></li>'\n\n            document.getElementById('mynetdata_servers').innerHTML = el;\n            document.getElementById('mynetdata_servers2').innerHTML = el;\n            document.getElementById('mynetdata_actions1').innerHTML = a1;\n\n            gotoServerInit();\n        };\n\n        function isdemo() {\n            if(this_is_demo !== null) return this_is_demo;\n            this_is_demo = false;\n\n            try {\n                if(typeof document.location.hostname === 'string') {\n                    if(document.location.hostname.endsWith('.my-netdata.io') ||\n                            document.location.hostname.endsWith('.mynetdata.io') ||\n                            document.location.hostname.endsWith('.netdata.rocks') ||\n                            document.location.hostname.endsWith('.firehol.org') ||\n                            document.location.hostname.endsWith('.netdata.online'))\n                            this_is_demo = true;\n                }\n            }\n            catch(error) {}\n            return this_is_demo;\n        }\n\n        function netdataURL(url, forReload) {\n            if(typeof url === 'undefined')\n                url = document.location.toString();\n\n            if(url.indexOf('#') !== -1)\n                url = url.substring(0, url.indexOf('#'));\n\n            var hash = urlOptions.genHash(forReload);\n\n            // console.log('netdataURL: ' + url + hash);\n\n            return url + hash;\n        }\n\n        function netdataReload(url) {\n            document.location = netdataURL(url, true);\n\n            // since we play with hash\n            // this is needed to reload the page\n            location.reload();\n        }\n\n        function gotoHostedModalHandler(url) {\n            document.location = url + urlOptions.genHash();\n            return false;\n        }\n\n        var gotoServerValidateRemaining = 0;\n        var gotoServerMiddleClick = false;\n        var gotoServerStop = false;\n        function gotoServerValidateUrl(id, guid, url) {\n            var penaldy = 0;\n            var error = 'failed';\n\n            if(document.location.toString().startsWith('http://') && url.toString().startsWith('https://'))\n                // we penalize https only if the current url is http\n                // to allow the user walk through all its servers.\n                penaldy = 500;\n\n            else if(document.location.toString().startsWith('https://') && url.toString().startsWith('http://'))\n                error = 'can\\'t check';\n\n            var finalURL = netdataURL(url);\n\n            setTimeout(function() {\n                document.getElementById('gotoServerList').innerHTML += '<tr><td style=\"padding-left: 20px;\"><a href=\"' + finalURL + '\" target=\"_blank\">' + url + '</a></td><td style=\"padding-left: 30px;\"><code id=\"' + guid + '-' + id + '-status\">checking...</code></td></tr>';\n\n                NETDATA.registry.hello(url, function(data) {\n                    if(typeof data !== 'undefined' && data !== null && typeof data.machine_guid === 'string' && data.machine_guid === guid) {\n                        // console.log('OK ' + id + ' URL: ' + url);\n                        document.getElementById(guid + '-' + id + '-status').innerHTML = \"OK\";\n\n                        if(!gotoServerStop) {\n                            gotoServerStop = true;\n\n                            if(gotoServerMiddleClick) {\n                                window.open(finalURL, '_blank');\n                                gotoServerMiddleClick = false;\n                                document.getElementById('gotoServerResponse').innerHTML = '<b>Opening new window to ' + NETDATA.registry.machines[guid].name + '<br/><a href=\"' + finalURL + '\">' + url + '</a></b><br/>(check your pop-up blocker if it fails)';\n                            }\n                            else {\n                                document.getElementById('gotoServerResponse').innerHTML += 'found it! It is at:<br/><small>' + url + '</small>';\n                                document.location = finalURL;\n                            }\n                        }\n                    }\n                    else {\n                        if(typeof data !== 'undefined' && data !== null && typeof data.machine_guid === 'string' && data.machine_guid !== guid)\n                            error = 'wrong machine';\n\n                        document.getElementById(guid + '-' + id + '-status').innerHTML = error;\n                        gotoServerValidateRemaining--;\n                        if(gotoServerValidateRemaining <= 0) {\n                            gotoServerMiddleClick = false;\n                            document.getElementById('gotoServerResponse').innerHTML = '<b>Sorry! I cannot find any operational URL for this server</b>';\n                        }\n                    }\n                });\n            }, (id * 50) + penaldy);\n        }\n\n        function gotoServerModalHandler(guid) {\n            // console.log('goto server: ' + guid);\n\n            gotoServerStop = false;\n            var checked = {};\n            var len = NETDATA.registry.machines[guid].alternate_urls.length;\n            var count = 0;\n\n            document.getElementById('gotoServerResponse').innerHTML = '';\n            document.getElementById('gotoServerList').innerHTML = '';\n            document.getElementById('gotoServerName').innerHTML = NETDATA.registry.machines[guid].name;\n            $('#gotoServerModal').modal('show');\n\n            gotoServerValidateRemaining = len;\n            while(len--) {\n                var url = NETDATA.registry.machines[guid].alternate_urls[len];\n                checked[url] = true;\n                gotoServerValidateUrl(count++, guid, url);\n            }\n\n            setTimeout(function() {\n                if(gotoServerStop === false) {\n                    document.getElementById('gotoServerResponse').innerHTML = '<b>Added all the known URLs for this machine.</b>';\n                    NETDATA.registry.search(guid, function(data) {\n                        // console.log(data);\n                        len = data.urls.length;\n                        while(len--) {\n                            var url = data.urls[len][1];\n                            // console.log(url);\n                            if(typeof checked[url] === 'undefined') {\n                                gotoServerValidateRemaining++;\n                                checked[url] = true;\n                                gotoServerValidateUrl(count++, guid, url);\n                            }\n                        }\n                    });\n                }\n            }, 2000);\n            return false;\n        }\n\n        function gotoServerInit() {\n            $(\".registry_link\").on('click', function(e) {\n                if(e.which === 2) {\n                    e.preventDefault();\n                    gotoServerMiddleClick = true;\n                }\n                else {\n                    gotoServerMiddleClick = false;\n                }\n\n                return true;\n            });\n        }\n\n        function switchRegistryModalHandler() {\n            document.getElementById('switchRegistryPersonGUID').value = NETDATA.registry.person_guid;\n            document.getElementById('switchRegistryURL').innerHTML = NETDATA.registry.server;\n            document.getElementById('switchRegistryResponse').innerHTML = '';\n            $('#switchRegistryModal').modal('show');\n        }\n\n        function notifyForSwitchRegistry() {\n            var n = document.getElementById('switchRegistryPersonGUID').value;\n\n            if(n !== '' && n.length === 36) {\n                NETDATA.registry.switch(n, function(result) {\n                    if(result !== null) {\n                        $('#switchRegistryModal').modal('hide');\n                        NETDATA.registry.init();\n                    }\n                    else {\n                        document.getElementById('switchRegistryResponse').innerHTML = \"<b>Sorry! The registry rejected your request.</b>\";\n                    }\n                });\n            }\n            else\n                document.getElementById('switchRegistryResponse').innerHTML = \"<b>The ID you have entered is not a GUID.</b>\";\n        }\n\n        var deleteRegistryUrl = null;\n        function deleteRegistryModalHandler(guid, name, url) {\n            void(guid);\n\n            deleteRegistryUrl = url;\n            document.getElementById('deleteRegistryServerName').innerHTML = name;\n            document.getElementById('deleteRegistryServerName2').innerHTML = name;\n            document.getElementById('deleteRegistryServerURL').innerHTML = url;\n            document.getElementById('deleteRegistryResponse').innerHTML = '';\n            $('#deleteRegistryModal').modal('show');\n        }\n\n        function notifyForDeleteRegistry() {\n            if(deleteRegistryUrl) {\n                NETDATA.registry.delete(deleteRegistryUrl, function(result) {\n                    if(result !== null) {\n                        deleteRegistryUrl = null;\n                        $('#deleteRegistryModal').modal('hide');\n                        NETDATA.registry.init();\n                    }\n                    else {\n                        document.getElementById('deleteRegistryResponse').innerHTML = \"<b>Sorry! this command was rejected by the registry server.</b>\";\n                    }\n                });\n            }\n        }\n\n        var options = {\n            menus: {},\n            submenu_names: {},\n            data: null,\n            hostname: 'netdata_server', // will be overwritten by the netdata server\n            version: 'unknown',\n            hosts: [],\n\n            duration: 0, // the default duration of the charts\n            update_every: 1,\n\n            chartsPerRow: 0,\n            // chartsMinWidth: 1450,\n            chartsHeight: 180,\n        };\n\n        function chartsPerRow(total) {\n            void(total);\n\n            if(options.chartsPerRow === 0) {\n                return 1;\n                //var width = Math.floor(total / options.chartsMinWidth);\n                //if(width === 0) width = 1;\n                //return width;\n            }\n            else return options.chartsPerRow;\n        }\n\n        function prioritySort(a, b) {\n            if(a.priority < b.priority) return -1;\n            if(a.priority > b.priority) return 1;\n            return naturalSortCompare(a.name, b.name);\n        }\n\n        function sortObjectByPriority(object) {\n            var idx = {};\n            var sorted = [];\n\n            for(var i in object) {\n                if(!object.hasOwnProperty(i)) continue;\n\n                if(typeof idx[i] === 'undefined') {\n                    idx[i] = object[i];\n                    sorted.push(i);\n                }\n            }\n\n            sorted.sort(function(a, b) {\n                if(idx[a].priority < idx[b].priority) return -1;\n                if(idx[a].priority > idx[b].priority) return 1;\n                return naturalSortCompare(a, b);\n            });\n\n            return sorted;\n        }\n\n\n        // ----------------------------------------------------------------------------\n        // scroll to a section, without changing the browser history\n\n        function scrollToId(hash) {\n            if(hash && hash !== '' && document.getElementById(hash) !== null) {\n                var offset = $('#' + hash).offset();\n                if(typeof offset !== 'undefined') {\n                    //console.log('scrolling to ' + hash + ' at ' + offset.top.toString());\n                    $('html, body').animate({scrollTop: offset.top - 30}, 0);\n                }\n            }\n\n            // we must return false to prevent the default action\n            return false;\n        }\n\n        // ----------------------------------------------------------------------------\n\n        // user editable information\n        var customDashboard = {\n            menu: {},\n            submenu: {},\n            context: {}\n        };\n\n        // netdata standard information\n        var netdataDashboard = {\n            sparklines_registry: {},\n            os: 'unknown',\n\n            menu: {},\n            submenu: {},\n            context: {},\n\n            // generate a sparkline\n            // used in the documentation\n            sparkline: function (prefix, chart, dimension, units, suffix) {\n                if(options.data === null || typeof options.data.charts === 'undefined')\n                    return '';\n\n                if(typeof options.data.charts[chart] === 'undefined')\n                    return '';\n\n                if(typeof options.data.charts[chart].dimensions === 'undefined')\n                    return '';\n\n                if(typeof options.data.charts[chart].dimensions[dimension] === 'undefined')\n                    return '';\n\n                var key = chart + '.' + dimension;\n\n                if(typeof units === 'undefined')\n                    units = '';\n\n                if(typeof this.sparklines_registry[key] === 'undefined')\n                    this.sparklines_registry[key] = { count: 1 };\n                else\n                    this.sparklines_registry[key].count++;\n\n                key = key + '.' + this.sparklines_registry[key].count;\n\n                return prefix + '<div class=\"netdata-container\" data-netdata=\"' + chart + '\" data-after=\"-120\" data-width=\"25%\" data-height=\"15px\" data-chart-library=\"dygraph\" data-dygraph-theme=\"sparkline\" data-dimensions=\"' + dimension + '\" data-show-value-of-' + dimension + '-at=\"' + key + '\"></div> (<span id=\"' + key + '\" style=\"display: inline-block; min-width: 50px; text-align: right;\">X</span>' + units + ')' + suffix;\n            },\n\n            gaugeChart: function(title, width, dimensions, colors) {\n                if(typeof colors === 'undefined')\n                    colors = '';\n\n                if(typeof dimensions === 'undefined')\n                    dimensions = '';\n\n                return '<div class=\"netdata-container\" data-netdata=\"CHART_UNIQUE_ID\"'\n                            + ' data-dimensions=\"' + dimensions + '\"'\n                            + ' data-chart-library=\"gauge\"'\n                            + ' data-gauge-adjust=\"width\"'\n                            + ' data-title=\"' + title + '\"'\n                            + ' data-width=\"' + width + '\"'\n                            + ' data-before=\"0\"'\n                            + ' data-after=\"-CHART_DURATION\"'\n                            + ' data-points=\"CHART_DURATION\"'\n                            + ' data-colors=\"' + colors + '\"'\n                            + ' role=\"application\"></div>';\n            },\n\n            anyAttribute: function(obj, attr, key, def) {\n                if(typeof(obj[key]) !== 'undefined') {\n                    var x = obj[key][attr];\n\n                    if(typeof(x) === 'undefined')\n                        return def;\n\n                    if(typeof(x) === 'function') {\n                        return x(netdataDashboard.os);\n                    }\n\n                    return x;\n                }\n\n                return def;\n            },\n\n            menuTitle: function(chart) {\n                if(typeof chart.menu_pattern !== 'undefined') {\n                    return (this.anyAttribute(this.menu, 'title', chart.menu_pattern, chart.menu_pattern).toString()\n                            + '&nbsp;' + chart.type.slice(-(chart.type.length - chart.menu_pattern.length - 1)).toString()).replace(/_/g, ' ');\n                }\n\n                return (this.anyAttribute(this.menu, 'title', chart.menu, chart.menu)).toString().replace(/_/g, ' ');\n            },\n\n            menuIcon: function(chart) {\n                if(typeof chart.menu_pattern !== 'undefined')\n                    return this.anyAttribute(this.menu, 'icon', chart.menu_pattern, '<i class=\"fas fa-puzzle-piece\"></i>').toString();\n\n                return this.anyAttribute(this.menu, 'icon', chart.menu, '<i class=\"fas fa-puzzle-piece\"></i>');\n            },\n\n            menuInfo: function(chart) {\n                if(typeof chart.menu_pattern !== 'undefined')\n                    return this.anyAttribute(this.menu, 'info', chart.menu_pattern, null);\n\n                return this.anyAttribute(this.menu, 'info', chart.menu, null);\n            },\n\n            menuHeight: function(chart) {\n                if(typeof chart.menu_pattern !== 'undefined')\n                    return this.anyAttribute(this.menu, 'height', chart.menu_pattern, 1.0);\n\n                return this.anyAttribute(this.menu, 'height', chart.menu, 1.0);\n            },\n\n            submenuTitle: function(menu, submenu) {\n                var key = menu + '.' + submenu;\n                // console.log(key);\n                var title = this.anyAttribute(this.submenu, 'title', key, submenu).toString().replace(/_/g, ' ');\n                if(title.length > 28) {\n                    var a = title.substring(0, 13);\n                    var b = title.substring(title.length - 12, title.length);\n                    return a + '...' + b;\n                }\n                return title;\n            },\n\n            submenuInfo: function(menu, submenu) {\n                var key = menu + '.' + submenu;\n                return this.anyAttribute(this.submenu, 'info', key, null);\n            },\n\n            submenuHeight: function(menu, submenu, relative) {\n                var key = menu + '.' + submenu;\n                return this.anyAttribute(this.submenu, 'height', key, 1.0) * relative;\n            },\n\n            contextInfo: function(id) {\n                var x = this.anyAttribute(this.context, 'info', id, null);\n\n                if(x !== null)\n                    return '<div class=\"shorten dashboard-context-info netdata-chart-alignment\" role=\"document\">' + x + '</div>';\n                else\n                    return '';\n            },\n\n            contextValueRange: function(id) {\n                if(typeof this.context[id] !== 'undefined' && typeof this.context[id].valueRange !== 'undefined')\n                    return this.context[id].valueRange;\n                else\n                    return '[null, null]';\n            },\n\n            contextHeight: function(id, def) {\n                if(typeof this.context[id] !== 'undefined' && typeof this.context[id].height !== 'undefined')\n                    return def * this.context[id].height;\n                else\n                    return def;\n            },\n\n            contextDecimalDigits: function(id, def) {\n                if(typeof this.context[id] !== 'undefined' && typeof this.context[id].decimalDigits !== 'undefined')\n                    return this.context[id].decimalDigits;\n                else\n                    return def;\n            }\n        };\n\n        // ----------------------------------------------------------------------------\n\n        // enrich the data structure returned by netdata\n        // to reflect our menu system and content\n        // FIXME: this is a shame - we should fix charts naming (issue #807)\n        function enrichChartData(chart) {\n            var parts = chart.type.split('_');\n            var tmp = parts[0];\n\n            switch(tmp) {\n                case 'ap':\n                case 'net':\n                case 'disk':\n                case 'statsd':\n                    chart.menu = tmp;\n                    break;\n\n                case 'apache':\n                    chart.menu = chart.type;\n                    if(parts.length > 2 && parts[1] === 'cache')\n                        chart.menu_pattern = tmp + '_' + parts[1];\n                    else if(parts.length > 1)\n                        chart.menu_pattern = tmp;\n                    break;\n\n                case 'bind':\n                    chart.menu = chart.type;\n                    if(parts.length > 2 && parts[1] === 'rndc')\n                        chart.menu_pattern = tmp + '_' + parts[1];\n                    else if(parts.length > 1)\n                        chart.menu_pattern = tmp;\n                    break;\n\n                case 'cgroup':\n                    chart.menu = chart.type;\n                    if(chart.id.match(/.*[\\._\\/-:]qemu[\\._\\/-:]*/) || chart.id.match(/.*[\\._\\/-:]kvm[\\._\\/-:]*/))\n                        chart.menu_pattern = 'cgqemu';\n                    else\n                        chart.menu_pattern = 'cgroup';\n                    break;\n\n                case 'go':\n                    chart.menu = chart.type;\n                    if(parts.length > 2 && parts[1] === 'expvar')\n                        chart.menu_pattern = tmp + '_' + parts[1];\n                    else if(parts.length > 1)\n                        chart.menu_pattern = tmp;\n                    break;\n\n                case 'isc':\n                    chart.menu = chart.type;\n                    if(parts.length > 2 && parts[1] === 'dhcpd')\n                        chart.menu_pattern = tmp + '_' + parts[1];\n                    else if(parts.length > 1)\n                        chart.menu_pattern = tmp;\n                    break;\n\n                case 'ovpn':\n                    chart.menu = chart.type;\n                    if(parts.length > 3 && parts[1] === 'status' && parts[2] === 'log')\n                        chart.menu_pattern = tmp + '_' + parts[1];\n                    else if(parts.length > 1)\n                        chart.menu_pattern = tmp;\n                    break;\n\n                case 'smartd':\n                case 'web':\n                    chart.menu = chart.type;\n                    if(parts.length > 2 && parts[1] === 'log')\n                        chart.menu_pattern = tmp + '_' + parts[1];\n                    else if(parts.length > 1)\n                        chart.menu_pattern = tmp;\n                    break;\n\n                case 'tc':\n                    chart.menu = tmp;\n\n                    // find a name for this device from fireqos info\n                    // we strip '_(in|out)' or '(in|out)_'\n                    if(chart.context === 'tc.qos' && (typeof options.submenu_names[chart.family] === 'undefined' || options.submenu_names[chart.family] === chart.family)) {\n                        var n = chart.name.split('.')[1];\n                        if(n.endsWith('_in'))\n                            options.submenu_names[chart.family] = n.slice(0, n.lastIndexOf('_in'));\n                        else if(n.endsWith('_out'))\n                            options.submenu_names[chart.family] = n.slice(0, n.lastIndexOf('_out'));\n                        else if(n.startsWith('in_'))\n                            options.submenu_names[chart.family] = n.slice(3, n.length);\n                        else if(n.startsWith('out_'))\n                            options.submenu_names[chart.family] = n.slice(4, n.length);\n                        else\n                            options.submenu_names[chart.family] = n;\n                    }\n\n                    // increase the priority of IFB devices\n                    // to have inbound appear before outbound\n                    if(chart.id.match(/.*-ifb$/))\n                        chart.priority--;\n\n                    break;\n\n                default:\n                    chart.menu = chart.type;\n                    if(parts.length > 1)\n                        chart.menu_pattern = tmp;\n                    break;\n            }\n\n            chart.submenu = chart.family;\n        }\n\n        // ----------------------------------------------------------------------------\n\n        function headMain(os, charts, duration) {\n            void(os);\n\n            if(urlOptions.mode === 'print')\n                return '';\n\n            var head = '';\n\n            if(typeof charts['system.swap'] !== 'undefined')\n                head += '<div class=\"netdata-container\" style=\"margin-right: 10px;\" data-netdata=\"system.swap\"'\n                    + ' data-dimensions=\"used\"'\n                    + ' data-append-options=\"percentage\"'\n                    + ' data-chart-library=\"easypiechart\"'\n                    + ' data-title=\"Used Swap\"'\n                    + ' data-units=\"%\"'\n                    + ' data-easypiechart-max-value=\"100\"'\n                    + ' data-width=\"9%\"'\n                    + ' data-before=\"0\"'\n                    + ' data-after=\"-' + duration.toString() + '\"'\n                    + ' data-points=\"' + duration.toString() + '\"'\n                    + ' data-colors=\"#DD4400\"'\n                    + ' role=\"application\"></div>';\n\n            if(typeof charts['system.io'] !== 'undefined') {\n                head += '<div class=\"netdata-container\" style=\"margin-right: 10px;\" data-netdata=\"system.io\"'\n                    + ' data-dimensions=\"in\"'\n                    + ' data-chart-library=\"easypiechart\"'\n                    + ' data-title=\"Disk Read\"'\n                    + ' data-width=\"11%\"'\n                    + ' data-before=\"0\"'\n                    + ' data-after=\"-' + duration.toString() + '\"'\n                    + ' data-points=\"' + duration.toString() + '\"'\n                    + ' data-common-units=\"system.io.mainhead\"'\n                    + ' role=\"application\"></div>';\n\n                head += '<div class=\"netdata-container\" style=\"margin-right: 10px;\" data-netdata=\"system.io\"'\n                    + ' data-dimensions=\"out\"'\n                    + ' data-chart-library=\"easypiechart\"'\n                    + ' data-title=\"Disk Write\"'\n                    + ' data-width=\"11%\"'\n                    + ' data-before=\"0\"'\n                    + ' data-after=\"-' + duration.toString() + '\"'\n                    + ' data-points=\"' + duration.toString() + '\"'\n                    + ' data-common-units=\"system.io.mainhead\"'\n                    + ' role=\"application\"></div>';\n            }\n            else if(typeof charts['system.pgpgio'] !== 'undefined') {\n                head += '<div class=\"netdata-container\" style=\"margin-right: 10px;\" data-netdata=\"system.pgpgio\"'\n                    + ' data-dimensions=\"in\"'\n                    + ' data-chart-library=\"easypiechart\"'\n                    + ' data-title=\"Disk Read\"'\n                    + ' data-width=\"11%\"'\n                    + ' data-before=\"0\"'\n                    + ' data-after=\"-' + duration.toString() + '\"'\n                    + ' data-points=\"' + duration.toString() + '\"'\n                    + ' data-common-units=\"system.pgpgio.mainhead\"'\n                    + ' role=\"application\"></div>';\n\n                head += '<div class=\"netdata-container\" style=\"margin-right: 10px;\" data-netdata=\"system.pgpgio\"'\n                    + ' data-dimensions=\"out\"'\n                    + ' data-chart-library=\"easypiechart\"'\n                    + ' data-title=\"Disk Write\"'\n                    + ' data-width=\"11%\"'\n                    + ' data-before=\"0\"'\n                    + ' data-after=\"-' + duration.toString() + '\"'\n                    + ' data-points=\"' + duration.toString() + '\"'\n                    + ' data-common-units=\"system.pgpgio.mainhead\"'\n                    + ' role=\"application\"></div>';\n            }\n\n            if(typeof charts['system.cpu'] !== 'undefined')\n                head += '<div class=\"netdata-container\" style=\"margin-right: 10px;\" data-netdata=\"system.cpu\"'\n                    + ' data-chart-library=\"gauge\"'\n                    + ' data-title=\"CPU\"'\n                    + ' data-units=\"%\"'\n                    + ' data-gauge-max-value=\"100\"'\n                    + ' data-width=\"20%\"'\n                    + ' data-after=\"-' + duration.toString() + '\"'\n                    + ' data-points=\"' + duration.toString() + '\"'\n                    + ' data-colors=\"' + NETDATA.colors[12] + '\"'\n                    + ' role=\"application\"></div>';\n\n            if(typeof charts['system.net'] !== 'undefined') {\n                head += '<div class=\"netdata-container\" style=\"margin-right: 10px;\" data-netdata=\"system.net\"'\n                    + ' data-dimensions=\"received\"'\n                    + ' data-chart-library=\"easypiechart\"'\n                    + ' data-title=\"Net Inbound\"'\n                    + ' data-width=\"11%\"'\n                    + ' data-before=\"0\"'\n                    + ' data-after=\"-' + duration.toString() + '\"'\n                    + ' data-points=\"' + duration.toString() + '\"'\n                    + ' data-common-units=\"system.net.mainhead\"'\n                    + ' role=\"application\"></div>';\n\n                head +",
          "favicons": [
            {
              "size": 623,
              "name": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC...EIgOapcAAAAASUVORK5CYII=",
              "md5_hash": "44b05e8db5c2dec20e8c3607b38a1b44"
            }
          ],
          "body_hashes": [
            "sha256:d8439c1cafd2112f4cb7b3cb5ccb2dfe85e46fa2abf40a2257d832f40580250c",
            "sha1:dccae256a4e56a3fdbd047a11c2c7fd514705548"
          ],
          "body_hash": "sha1:dccae256a4e56a3fdbd047a11c2c7fd514705548",
          "html_title": "netdata dashboard"
        },
        "supports_http2": false
      },
      "observed_at": "2023-01-31T21:29:16.166500285Z",
      "perspective_id": "PERSPECTIVE_NTT",
      "port": 19999,
      "service_name": "HTTP",
      "source_ip": "167.248.133.119",
      "transport_protocol": "TCP",
      "truncated": false
    }
  ],
  "location": {
    "continent": "Europe",
    "country": "Netherlands",
    "country_code": "NL",
    "postal_code": "",
    "timezone": "Europe/Amsterdam",
    "coordinates": {
      "latitude": 52.3824,
      "longitude": 4.8995
    },
    "registered_country": "Netherlands",
    "registered_country_code": "NL"
  },
  "location_updated_at": "2023-01-29T02:17:57.068025Z",
  "autonomous_system": {
    "asn": 206281,
    "description": "AS-ZXCS",
    "bgp_prefix": "185.104.28.0/24",
    "name": "AS-ZXCS",
    "country_code": "NL"
  },
  "autonomous_system_updated_at": "2023-01-22T08:18:41.010378Z",
  "operating_system": {
    "uniform_resource_identifier": "cpe:2.3:o:redhat:enterprise_linux:6:*:*:*:*:*:*:*",
    "part": "o",
    "vendor": "Red Hat",
    "product": "Enterprise Linux",
    "version": "6",
    "other": {
      "family": "Linux"
    }
  },
  "dns": {
    "names": [
      "kuhlakku.de",
      "mail.tandartspraktijkhogeweide.nl",
      "mail.schildersbedrijf-malestein.nl",
      "shop.kwpn.nl",
      "jachtverenigingsoestdijk.nl",
      "gcha.nl",
      "mail.mddispo.nl",
      "solar-factory.nl",
      "bfvtoernooi.nl",
      "mail.uznstables.com",
      "www.gerbincontrol.nl",
      "www.pizza-pazza.nl",
      "www.uznstables.com",
      "limasianbistro.nl",
      "deliciousfish.eu",
      "www.morenso.com",
      "gerbincontrol.nl",
      "tranzer.it",
      "mooieluiertassen.nl",
      "www.vdh-exclusive.nl",
      "www.kraplap.nl",
      "de-kooi.com",
      "urban-engine.com",
      "www.intrabv.com",
      "mail.livingandglamour.nl",
      "www.jachtverenigingsoestdijk.nl",
      "www.arthurhautecoiffure.nl",
      "livingandglamour.nl",
      "hairworldkappers.nl",
      "www.visspecialistsluizeman.nl",
      "mail.uznstables.nl",
      "www.urbanconstructions.nl",
      "wkcreatievecommunicatie.nl",
      "www.prevenko.nl",
      "pstest.purplemedia.nl",
      "mail.linauzunhasan.nl",
      "www.gcha.nl",
      "www.mooieluiertassen.nl",
      "visspecialistsluizeman.nl",
      "www.mbv-nijkerk.nl",
      "www.wkbouw.nl",
      "lynxx.com.au",
      "www.sterrehof.nl",
      "uwvillaonline.nl",
      "kmge.nl",
      "www.noxsensorshop.com",
      "mail.btvdegeeren.nl",
      "heekschoenen.nl",
      "amorkinderbruidskleding.nl",
      "sunsuper.nl",
      "bisju-jewellery.com",
      "www.bramspannenkoeken.nl",
      "mail.casa-mealha.nl",
      "www.grandcafe033.nl",
      "btvdegeeren.nl",
      "www.lynxx.com.au",
      "lynxx.eu",
      "mail.visspecialistsluizeman.nl",
      "old.zazu-kids.nl",
      "boutiquestudio-c.nl",
      "urbanconstructions.nl",
      "bramspannenkoeken.nl",
      "www.solar-factory.nl",
      "www.urban-engine.com",
      "sterk-spezialtiefbau.de",
      "www.wkcreatievecommunicatie.nl",
      "www.tranzer.com",
      "bootkaffee.de",
      "mail.sweetmemories-video.nl",
      "www.bfvtoernooi.nl",
      "www.de-kooi.com",
      "purplemedia.nl",
      "concordia-hoogland.nl",
      "casa-mealha.nl",
      "www.livingandglamour.nl",
      "www.sterk-spezialtiefbau.de",
      "tranzer.com",
      "www.kuhlakku.de",
      "schildersbedrijf-malestein.nl",
      "www.mondzorgirene.nl",
      "www.financialseemland.nl",
      "mail.mooieluiertassen.nl",
      "wkbouw.nl",
      "www.concordia-hoogland.nl",
      "grandcafe033.nl",
      "www.casa-mealha.nl",
      "server.dcwetering.nl",
      "paardenfotoworkshop.nl",
      "morenso.com",
      "www.beekhuis-ra.nl",
      "mail.linauzunhasan.com",
      "mail.pstest.purplemedia.nl",
      "demoshop.purple-media.nl",
      "mail.bisju-jewellery.com",
      "spil-bv.nl",
      "pizza-pazza.nl",
      "www.purple-media.nl",
      "mail.limasianbistro.nl",
      "www.larandulina.com",
      "nieuws.gcha.nl"
    ],
    "records": {
      "boutiquestudio-c.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-16T17:21:58.915549037Z"
      },
      "schildersbedrijf-malestein.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-24T16:36:20.603779461Z"
      },
      "deliciousfish.eu": {
        "record_type": "A",
        "resolved_at": "2023-01-25T17:26:57.709190690Z"
      },
      "www.pizza-pazza.nl": {
        "record_type": "A",
        "resolved_at": "2023-02-01T05:12:05.082343147Z"
      },
      "www.mooieluiertassen.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-02T16:26:00.588660050Z"
      },
      "grandcafe033.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-25T15:50:09.863132864Z"
      },
      "pstest.purplemedia.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-21T17:23:53.146497004Z"
      },
      "paardenfotoworkshop.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-22T17:09:18.155472876Z"
      },
      "heekschoenen.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-29T01:50:19.910830941Z"
      },
      "www.visspecialistsluizeman.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-11T17:02:56.474288770Z"
      },
      "www.kraplap.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-18T22:35:07.773610607Z"
      },
      "kuhlakku.de": {
        "record_type": "A",
        "resolved_at": "2023-01-14T14:24:44.113948255Z"
      },
      "www.gcha.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-24T22:56:37.389441409Z"
      },
      "www.vdh-exclusive.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-16T17:22:38.921719128Z"
      },
      "mail.casa-mealha.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-27T17:01:25.989716758Z"
      },
      "www.urban-engine.com": {
        "record_type": "A",
        "resolved_at": "2023-01-23T14:05:08.914741683Z"
      },
      "www.kuhlakku.de": {
        "record_type": "A",
        "resolved_at": "2023-01-12T14:07:36.456420669Z"
      },
      "visspecialistsluizeman.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-12T15:45:48.909092579Z"
      },
      "www.wkcreatievecommunicatie.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-12T15:45:32.661899950Z"
      },
      "btvdegeeren.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-16T17:21:49.503615934Z"
      },
      "limasianbistro.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-16T17:22:05.427724165Z"
      },
      "www.sterrehof.nl": {
        "record_type": "CNAME",
        "resolved_at": "2023-01-31T17:13:29.429724768Z"
      },
      "www.gerbincontrol.nl": {
        "record_type": "CNAME",
        "resolved_at": "2023-01-11T17:01:49.203068049Z"
      },
      "mail.mddispo.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-27T17:02:36.424221594Z"
      },
      "mail.btvdegeeren.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-16T17:21:50.224325278Z"
      },
      "www.bramspannenkoeken.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-24T16:35:56.949900562Z"
      },
      "demoshop.purple-media.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-27T17:02:47.577575617Z"
      },
      "wkbouw.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-22T16:30:41.019620642Z"
      },
      "wkcreatievecommunicatie.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-16T17:22:44.077621064Z"
      },
      "www.tranzer.com": {
        "record_type": "A",
        "resolved_at": "2023-01-19T13:53:36.558181420Z"
      },
      "www.prevenko.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-24T16:36:36.890045311Z"
      },
      "bramspannenkoeken.nl": {
        "record_type": "A",
        "resolved_at": "2023-02-02T17:48:28.640409573Z"
      },
      "www.concordia-hoogland.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-14T16:48:57.370290338Z"
      },
      "www.casa-mealha.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-28T23:56:24.007663042Z"
      },
      "sunsuper.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-30T16:35:04.149072012Z"
      },
      "www.lynxx.com.au": {
        "record_type": "A",
        "resolved_at": "2023-01-30T12:10:15.773239640Z"
      },
      "shop.kwpn.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-21T17:25:05.990339060Z"
      },
      "www.beekhuis-ra.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-30T16:33:04.725806571Z"
      },
      "www.bfvtoernooi.nl": {
        "record_type": "CNAME",
        "resolved_at": "2023-01-29T17:32:20.585055929Z"
      },
      "tranzer.it": {
        "record_type": "A",
        "resolved_at": "2023-01-18T15:15:47.218739229Z"
      },
      "morenso.com": {
        "record_type": "A",
        "resolved_at": "2023-01-03T13:27:11.890440730Z"
      },
      "mail.pstest.purplemedia.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-22T16:29:54.583006067Z"
      },
      "urban-engine.com": {
        "record_type": "A",
        "resolved_at": "2023-01-29T14:26:51.176474610Z"
      },
      "www.solar-factory.nl": {
        "record_type": "CNAME",
        "resolved_at": "2023-01-30T16:34:40.345775551Z"
      },
      "mail.limasianbistro.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-08T16:15:45.910095481Z"
      },
      "server.dcwetering.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-07T16:49:01.337373396Z"
      },
      "jachtverenigingsoestdijk.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-27T17:02:29.324508371Z"
      },
      "tranzer.com": {
        "record_type": "A",
        "resolved_at": "2023-01-21T14:20:44.062487188Z"
      },
      "uwvillaonline.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-29T17:35:40.366561734Z"
      },
      "pizza-pazza.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-22T16:29:43.605913904Z"
      },
      "mail.uznstables.com": {
        "record_type": "A",
        "resolved_at": "2023-01-29T14:27:18.365793832Z"
      },
      "kmge.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-30T16:34:00.188361593Z"
      },
      "www.larandulina.com": {
        "record_type": "A",
        "resolved_at": "2023-01-06T13:32:11.286486202Z"
      },
      "mooieluiertassen.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-14T16:50:20.404092675Z"
      },
      "www.urbanconstructions.nl": {
        "record_type": "CNAME",
        "resolved_at": "2023-01-14T16:50:35.518789346Z"
      },
      "bfvtoernooi.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-23T00:05:26.966275967Z"
      },
      "solar-factory.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-30T16:34:39.740244900Z"
      },
      "spil-bv.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-08T16:16:02.812232998Z"
      },
      "www.mondzorgirene.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-21T17:24:07.996948672Z"
      },
      "www.intrabv.com": {
        "record_type": "A",
        "resolved_at": "2023-02-02T13:33:19.291565262Z"
      },
      "gcha.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-31T17:11:48.856840638Z"
      },
      "www.livingandglamour.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-24T16:36:20.416691165Z"
      },
      "www.noxsensorshop.com": {
        "record_type": "A",
        "resolved_at": "2023-01-09T13:49:51.961865088Z"
      },
      "hairworldkappers.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-14T16:50:24.898569523Z"
      },
      "mail.linauzunhasan.com": {
        "record_type": "A",
        "resolved_at": "2023-01-16T13:52:37.058309746Z"
      },
      "gerbincontrol.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-24T16:36:01.171060564Z"
      },
      "purplemedia.nl": {
        "record_type": "A",
        "resolved_at": "2022-12-30T16:25:51.251859172Z"
      },
      "bisju-jewellery.com": {
        "record_type": "A",
        "resolved_at": "2023-01-18T13:08:06.414846126Z"
      },
      "www.mbv-nijkerk.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-15T21:25:14.131052371Z"
      },
      "www.purple-media.nl": {
        "record_type": "A",
        "resolved_at": "2022-12-31T17:08:01.931538260Z"
      },
      "mail.schildersbedrijf-malestein.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-14T16:50:24.219281353Z"
      },
      "www.morenso.com": {
        "record_type": "A",
        "resolved_at": "2023-01-21T13:39:07.378937907Z"
      },
      "mail.sweetmemories-video.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-24T16:37:09.567178675Z"
      },
      "concordia-hoogland.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-24T16:35:52.162152221Z"
      },
      "mail.visspecialistsluizeman.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-29T17:34:56.089164664Z"
      },
      "old.zazu-kids.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-09T16:33:13.241426908Z"
      },
      "livingandglamour.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-28T11:07:43.774586712Z"
      },
      "www.jachtverenigingsoestdijk.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-31T17:12:54.220264243Z"
      },
      "de-kooi.com": {
        "record_type": "A",
        "resolved_at": "2023-01-17T13:09:51.314429319Z"
      },
      "www.sterk-spezialtiefbau.de": {
        "record_type": "A",
        "resolved_at": "2023-01-28T14:25:27.085367228Z"
      },
      "mail.linauzunhasan.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-11T17:02:15.522032501Z"
      },
      "www.de-kooi.com": {
        "record_type": "A",
        "resolved_at": "2023-02-01T13:11:22.747445624Z"
      },
      "lynxx.eu": {
        "record_type": "A",
        "resolved_at": "2023-01-27T14:54:11.037578377Z"
      },
      "www.arthurhautecoiffure.nl": {
        "record_type": "CNAME",
        "resolved_at": "2023-01-16T17:21:22.308481499Z"
      },
      "mail.uznstables.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-07T01:15:38.023653143Z"
      },
      "mail.mooieluiertassen.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-24T16:36:43.282488804Z"
      },
      "urbanconstructions.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-29T17:35:01.236231913Z"
      },
      "lynxx.com.au": {
        "record_type": "A",
        "resolved_at": "2023-01-31T12:10:45.459691369Z"
      },
      "bootkaffee.de": {
        "record_type": "A",
        "resolved_at": "2023-01-14T17:24:52.600965523Z"
      },
      "mail.tandartspraktijkhogeweide.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-21T17:25:50.755342399Z"
      },
      "mail.bisju-jewellery.com": {
        "record_type": "A",
        "resolved_at": "2023-01-19T12:58:19.682802257Z"
      },
      "amorkinderbruidskleding.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-29T17:31:50.990505125Z"
      },
      "nieuws.gcha.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-04T16:36:01.106461584Z"
      },
      "sterk-spezialtiefbau.de": {
        "record_type": "A",
        "resolved_at": "2023-01-14T00:05:59.611949301Z"
      },
      "casa-mealha.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-31T02:12:17.452193939Z"
      },
      "mail.livingandglamour.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-30T16:34:07.832780102Z"
      },
      "www.uznstables.com": {
        "record_type": "A",
        "resolved_at": "2023-01-05T14:21:26.630687945Z"
      },
      "www.grandcafe033.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-07T16:49:46.802928965Z"
      },
      "www.wkbouw.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-09T16:33:19.205526352Z"
      },
      "www.financialseemland.nl": {
        "record_type": "A",
        "resolved_at": "2023-01-22T16:29:35.623547239Z"
      }
    },
    "reverse_dns": {
      "names": [
        "dedi0011.zxcs.nl"
      ],
      "resolved_at": "2023-01-31T09:57:32.635287677Z"
    }
  },
  "last_updated_at": "2023-02-02T17:48:31.088Z"
}