Last updated on 2026-05-17 12:49:16 CEST.
| Flavor | Version | Tinstall | Tcheck | Ttotal | Status | Flags |
|---|---|---|---|---|---|---|
| r-devel-linux-x86_64-debian-clang | 1.98-1.18 | 20.11 | 48.18 | 68.29 | ERROR | |
| r-devel-linux-x86_64-debian-gcc | 1.98-1.18 | 15.50 | 34.32 | 49.82 | ERROR | |
| r-devel-linux-x86_64-fedora-clang | 1.98-1.18 | 31.00 | 72.06 | 103.06 | ERROR | |
| r-devel-linux-x86_64-fedora-gcc | 1.98-1.18 | 32.00 | 69.79 | 101.79 | OK | |
| r-devel-windows-x86_64 | 1.98-1.18 | 43.00 | 234.00 | 277.00 | OK | |
| r-patched-linux-x86_64 | 1.98-1.18 | 17.94 | 103.23 | 121.17 | OK | |
| r-release-linux-x86_64 | 1.98-1.18 | 17.37 | 45.09 | 62.46 | ERROR | |
| r-release-macos-arm64 | 1.98-1.18 | 8.00 | 329.00 | 337.00 | OK | |
| r-release-macos-x86_64 | 1.98-1.18 | 25.00 | 137.00 | 162.00 | OK | |
| r-release-windows-x86_64 | 1.98-1.18 | 43.00 | 184.00 | 227.00 | OK | |
| r-oldrel-macos-arm64 | 1.98-1.18 | 7.00 | 38.00 | 45.00 | OK | |
| r-oldrel-macos-x86_64 | 1.98-1.18 | 27.00 | 104.00 | 131.00 | OK | |
| r-oldrel-windows-x86_64 | 1.98-1.18 | 43.00 | 172.00 | 215.00 | OK |
Version: 1.98-1.18
Check: examples
Result: ERROR
Running examples in ‘RCurl-Ex.R’ failed
The error most likely occurred in:
> base::assign(".ptime", proc.time(), pos = "CheckExEnv")
> ### Name: curlSetOpt
> ### Title: Set values for the CURL options
> ### Aliases: curlSetOpt
> ### Keywords: IO
>
> ### ** Examples
>
> if(url.exists("https://www.omegahat.net")) {
+
+ curl = getCurlHandle()
+ # Note the header that extends across two lines with the second line
+ # prefixed with white space.
+ curlSetOpt( .opts = list(httpheader = c(Date = "Wed, 1/2/2000 10:01:01",
+ foo="abc\n extra line"), verbose = TRUE),
+ curl = curl)
+ ans = getURL("https://www.omegahat.net", curl = curl)
+ }
* Host www.omegahat.net:443 was resolved.
* IPv6: 2a06:98c1:3121::a, 2a06:98c1:3120::a
* IPv4: 188.114.96.10, 188.114.97.10
* Trying [2a06:98c1:3121::a]:443...
* Immediate connect fail for 2a06:98c1:3121::a: Network is unreachable
* connect to 2a06:98c1:3121::a port 443 from :: port 0 failed: Success
* Trying 188.114.96.10:443...
* GnuTLS priority: NORMAL:%PROFILE_MEDIUM:-ARCFOUR-128:-CTYPE-ALL:+CTYPE-X509:-VERS-SSL3.0:-VERS-TLS-ALL:+VERS-TLS1.3:+VERS-TLS1.2
* ALPN: curl offers h2,http/1.1
* SSL Trust Anchors:
* CAfile: 144 certificates in /etc/ssl/certs/ca-certificates.crt
* CApath: 435 certificates in /etc/ssl/certs
* SSL connection using TLS1.3 / ECDHE_RSA_AES_256_GCM_SHA384
* SSL certificate verified by GnuTLS
* SSL certificate expiration date OK
* SSL certificate activation date OK
* SSL certificate status verification SKIPPED
* common name: omegahat.net (matched)
* certificate public key: EC/ECDSA
* certificate version: #3
* subject: CN=omegahat.net
* start date: Tue, 12 May 2026 18:07:29 GMT
* expire date: Mon, 10 Aug 2026 18:07:28 GMT
* issuer: C=US,O=Let's Encrypt,CN=E7
* ALPN: server accepted h2
* Established connection to www.omegahat.net (188.114.96.10 port 443) from 137.208.57.142 port 51206
* using HTTP/2
* Connection #0 to host www.omegahat.net:443 left intact
Error in (function (type, msg, asError = TRUE) :
Calls: getURL -> curlPerform -> <Anonymous> -> fun
Execution halted
Examples with CPU (user + system) or elapsed time > 5s
user system elapsed
binaryBuffer 0.15 0.016 9.503
Flavor: r-devel-linux-x86_64-debian-clang
Version: 1.98-1.18
Check: examples
Result: ERROR
Running examples in ‘RCurl-Ex.R’ failed
The error most likely occurred in:
> base::assign(".ptime", proc.time(), pos = "CheckExEnv")
> ### Name: curlSetOpt
> ### Title: Set values for the CURL options
> ### Aliases: curlSetOpt
> ### Keywords: IO
>
> ### ** Examples
>
> if(url.exists("https://www.omegahat.net")) {
+
+ curl = getCurlHandle()
+ # Note the header that extends across two lines with the second line
+ # prefixed with white space.
+ curlSetOpt( .opts = list(httpheader = c(Date = "Wed, 1/2/2000 10:01:01",
+ foo="abc\n extra line"), verbose = TRUE),
+ curl = curl)
+ ans = getURL("https://www.omegahat.net", curl = curl)
+ }
* Host www.omegahat.net:443 was resolved.
* IPv6: 2a06:98c1:3120::a, 2a06:98c1:3121::a
* IPv4: 188.114.96.10, 188.114.97.10
* Trying [2a06:98c1:3120::a]:443...
* Immediate connect fail for 2a06:98c1:3120::a: Network is unreachable
* connect to 2a06:98c1:3120::a port 443 from :: port 0 failed: Success
* Trying 188.114.96.10:443...
* ALPN: curl offers h2,http/1.1
* SSL Trust Anchors:
* CAfile: /etc/ssl/certs/ca-certificates.crt
* CApath: /etc/ssl/certs
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / X25519MLKEM768 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=omegahat.net
* start date: May 12 18:07:29 2026 GMT
* expire date: Aug 10 18:07:28 2026 GMT
* issuer: C=US; O=Let's Encrypt; CN=E7
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using ecdsa-with-SHA384
* Certificate level 1: Public key type EC/secp384r1 (384/192 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* subjectAltName: "www.omegahat.net" matches cert's "*.omegahat.net"
* OpenSSL verify result: 0
* SSL certificate verified via OpenSSL.
* Established connection to www.omegahat.net (188.114.96.10 port 443) from 137.208.57.30 port 37020
* using HTTP/2
* Connection #0 to host www.omegahat.net:443 left intact
Error in (function (type, msg, asError = TRUE) :
Calls: getURL -> curlPerform -> <Anonymous> -> fun
Execution halted
Examples with CPU (user + system) or elapsed time > 5s
user system elapsed
binaryBuffer 0.03 0.011 5.861
Flavor: r-devel-linux-x86_64-debian-gcc
Version: 1.98-1.18
Check: examples
Result: ERROR
Running examples in ‘RCurl-Ex.R’ failed
The error most likely occurred in:
> ### Name: getURL
> ### Title: Download a URI
> ### Aliases: getURL getURI getURLContent
> ### Keywords: IO
>
> ### ** Examples
>
>
> omegahatExists = url.exists("https://www.omegahat.net")
* Host www.omegahat.net:443 was resolved.
* IPv6: 2606:4700:3033::6815:186a, 2606:4700:3036::ac43:da54
* IPv4: 172.67.218.84, 104.21.24.106
* Trying [2606:4700:3033::6815:186a]:443...
* Immediate connect fail for 2606:4700:3033::6815:186a: Network is unreachable
* Trying [2606:4700:3036::ac43:da54]:443...
* Immediate connect fail for 2606:4700:3036::ac43:da54: Network is unreachable
* Trying 172.67.218.84:443...
* ALPN: curl offers h2,http/1.1
* CAfile: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
* CApath: none
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=omegahat.net
* start date: May 12 18:07:29 2026 GMT
* expire date: Aug 10 18:07:28 2026 GMT
* subjectAltName: host "www.omegahat.net" matched cert's "*.omegahat.net"
* issuer: C=US; O=Let's Encrypt; CN=E7
* SSL certificate verify ok.
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using ecdsa-with-SHA384
* Certificate level 1: Public key type EC/secp384r1 (384/192 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Connected to www.omegahat.net (172.67.218.84) port 443
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://www.omegahat.net/
* [HTTP/2] [1] [:method: HEAD]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: www.omegahat.net]
* [HTTP/2] [1] [:path: /]
* [HTTP/2] [1] [accept: */*]
> HEAD / HTTP/2
Host: www.omegahat.net
Accept: */*
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:49 GMT
< content-type: text/html; charset=UTF-8
< location: https://omegahat.net/
< x-redirect-by: WordPress
< cache-control: no-cache, no-store, must-revalidate
< expires: 0
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< pragma: no-cache
< server: cloudflare
< cf-cache-status: DYNAMIC
< report-to: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=NQ0A1crFCehr%2BsKDrm%2FJmGDcBT76jVTMVDZxiFpRKOaEo3sRUk1qK0pj7e9rqyty9MBsUcgTJn7ufurQ4yHtXdwl0LSieh%2B4%2FJK%2F69%2FKnzEWTCWWYlU6CM1ZgH2RYXus6nTl"}]}
< nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
< cf-ray: 9fccd3e71f4fcd11-LHR
< alt-svc: h3=":443"; ma=86400
* Ignoring the response-body
<
* Connection #0 to host www.omegahat.net left intact
* Issue another request to this URL: 'https://omegahat.net/'
* Host omegahat.net:443 was resolved.
* IPv6: 2606:4700:3033::6815:186a, 2606:4700:3036::ac43:da54
* IPv4: 172.67.218.84, 104.21.24.106
* Trying [2606:4700:3033::6815:186a]:443...
* Immediate connect fail for 2606:4700:3033::6815:186a: Network is unreachable
* Trying [2606:4700:3036::ac43:da54]:443...
* Immediate connect fail for 2606:4700:3036::ac43:da54: Network is unreachable
* Trying 172.67.218.84:443...
* ALPN: curl offers h2,http/1.1
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=omegahat.net
* start date: May 12 18:07:29 2026 GMT
* expire date: Aug 10 18:07:28 2026 GMT
* subjectAltName: host "omegahat.net" matched cert's "omegahat.net"
* issuer: C=US; O=Let's Encrypt; CN=E7
* SSL certificate verify ok.
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using ecdsa-with-SHA384
* Certificate level 1: Public key type EC/secp384r1 (384/192 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Connected to omegahat.net (172.67.218.84) port 443
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://omegahat.net/
* [HTTP/2] [1] [:method: HEAD]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: omegahat.net]
* [HTTP/2] [1] [:path: /]
* [HTTP/2] [1] [accept: */*]
* [HTTP/2] [1] [referer: https://www.omegahat.net/]
> HEAD / HTTP/2
Host: omegahat.net
Accept: */*
Referer: https://www.omegahat.net/
* Request completely sent off
< HTTP/2 200
< date: Sat, 16 May 2026 19:35:50 GMT
< content-type: text/html; charset=UTF-8
< link: <https://omegahat.net/wp-json/>; rel="https://api.w.org/", <https://omegahat.net/wp-json/wp/v2/pages/17>; rel="alternate"; title="JSON"; type="application/json", <https://omegahat.net/>; rel=shortlink
< cache-control: no-cache, no-store, must-revalidate
< expires: 0
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< pragma: no-cache
< server: cloudflare
< cf-cache-status: DYNAMIC
< report-to: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=6zZQAMGACMqwaPThB0yqZWJ9Ysp1JrKec0eCo6oUfGKMduI2rEIbwmPiSiY693vNHaEa%2BGQZ6C%2FCvUi2nY8iRrOPbxgIq3owmjB3uQ%2FDiUvvOc%2BvJpbbfMrXDKSmGfU%3D"}]}
< nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
< cf-ray: 9fccd3e9add2001d-LHR
< alt-svc: h3=":443"; ma=86400
<
* Connection #1 to host omegahat.net left intact
>
> # Regular HTTP
> if(omegahatExists && requireNamespace("XML", quietly = TRUE)) withAutoprint({
+ txt = getURL("https://www.omegahat.net/RCurl/")
+ ## Then we could parse the result.
+ XML::htmlTreeParse(txt, asText = TRUE)
+ })
> txt = getURL("https://www.omegahat.net/RCurl/")
* Host www.omegahat.net:443 was resolved.
* IPv6: 2606:4700:3036::ac43:da54, 2606:4700:3033::6815:186a
* IPv4: 172.67.218.84, 104.21.24.106
* Trying [2606:4700:3036::ac43:da54]:443...
* Immediate connect fail for 2606:4700:3036::ac43:da54: Network is unreachable
* Trying [2606:4700:3033::6815:186a]:443...
* Immediate connect fail for 2606:4700:3033::6815:186a: Network is unreachable
* Trying 172.67.218.84:443...
* ALPN: curl offers h2,http/1.1
* CAfile: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
* CApath: none
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=omegahat.net
* start date: May 12 18:07:29 2026 GMT
* expire date: Aug 10 18:07:28 2026 GMT
* subjectAltName: host "www.omegahat.net" matched cert's "*.omegahat.net"
* issuer: C=US; O=Let's Encrypt; CN=E7
* SSL certificate verify ok.
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using ecdsa-with-SHA384
* Certificate level 1: Public key type EC/secp384r1 (384/192 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Connected to www.omegahat.net (172.67.218.84) port 443
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://www.omegahat.net/RCurl/
* [HTTP/2] [1] [:method: GET]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: www.omegahat.net]
* [HTTP/2] [1] [:path: /RCurl/]
* [HTTP/2] [1] [accept: */*]
> GET /RCurl/ HTTP/2
Host: www.omegahat.net
Accept: */*
* Request completely sent off
< HTTP/2 200
< date: Sat, 16 May 2026 19:35:50 GMT
< content-type: text/html
< last-modified: Wed, 13 May 2026 07:46:26 GMT
< nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
< cache-control: no-cache, no-store, must-revalidate
< expires: 0
< vary: Accept-Encoding
< report-to: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=BfeTsOray9KUf1fYGoHpf%2BPWfIvmLqG3SZtCsnzaXsESfM%2BS6rVyqyHhF%2BIXVrAk5YDKPkovOicI2RPnEpkVQ5RkI5wPjQAT6i%2B3pm1GN03wQOZD5OREUpjJT9JiPUfWLWgj"}]}
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< pragma: no-cache
< server: cloudflare
< cf-cache-status: DYNAMIC
< cf-ray: 9fccd3ec99789574-LHR
< alt-svc: h3=":443"; ma=86400
<
* Connection #0 to host www.omegahat.net left intact
> XML::htmlTreeParse(txt, asText = TRUE)
$file
[1] "<buffer>"
$version
[1] ""
$children
$children$html
<html>
<head>
<link href="https://www.omegahat.org/OmegaTech.css" rel="stylesheet"/>
<title>RCurl</title>
</head>
<body>
<h1>The RCurl Package</h1>
<p align="right">
<a href="../RCurl_1.96-0.tar.gz">RCurl_1.96-0.tar.gz</a>
(20 June 2014)
</p>
<p align="right">
<a href="../philosophy.html">Manual</a>
</p>
The RCurl package is an R-interface to the
<a href="http://curl.haxx.se">libcurl</a>
library that provides HTTP facilities. This
allows us to download files from Web servers, post forms, use HTTPS
(the secure HTTP), use persistent connections, upload files, use
binary content, handle redirects, password authentication, etc.
<p>The primary top-level entry points are</p>
<ul>
<li>
<a href="../installed/RCurl/html/getURL.html">getURL()</a>
</li>
<li>
<a href="../installed/RCurl/html/getURL.html">getURLContent()</a>
</li>
<li>
<a href="../installed/RCurl/html/postForm.html">getForm()</a>
</li>
<li>
<a href="../installed/RCurl/html/postForm.html">postForm()</a>
</li>
</ul>
However, access to the C-level routines is also available
via the R code, and one can specify options to all of the
libcurl operations to control how they are performed.
Documentation about the options and commands
can be found at the
<a href="http://curl.haxx.se">libcurl web site</a>
<p>
R functions can be specified to collect text from both the
response and its headers. This can be used to customize the processing
of the requests and feed the results to higher-level processing
(e.g. HTML parsing via the htmlTreeParse function in the
<a href="http://www.omegahat.org/RSXML">XML package</a>
).
</p>
<p>
This package will be used to implement the low-level communication
in the
<a href="http://www.omegahat.org/SSOAP">SSOAP</a>
package
and other high-level packages that utilize HTTP to exchange
requests and data.
</p>
<h2>Documentation</h2>
<dl>
<dt>
<li>
<a href="../RCurlJSS.pdf">Paper</a>
outlining the package with some advanced examples.
<dd/>
<dt>
<li>
<a href="../philosophy.html">Guide</a>
<dd/>
<dt>
<li>
<a href="../Changes.html">Changes across releases</a>
<dd/>
<dt>
<li>
Examples of using asynchronous, multiple concurrent requests.
<dd>
<ul>
<li>
<a href="../concurrent.html">Concurrent downloads</a>
</li>
<li>
<a href="../nestedHTML.html">Nested HTML requests</a>
</li>
<li>
<a href="../xmlParse.html">XML parsing with nested requests</a>
</li>
</ul>
</dd>
<dt>
<li>
<a href="../FAQ.html">FAQ</a>
<dd/>
</li>
</dt>
</li>
</dt>
</li>
</dt>
</li>
</dt>
</li>
</dt>
</dl>
<h2>Other Approaches</h2>
<dl>
<dt>
<a href="http://cran.r-project.org/src/contrib/Descriptions/httpRequest.html">httpRequest</a>
</dt>
<dd>The httpRequest is a package on CRAN that implements a small
part of HTTP directly in R using sockets.</dd>
<dt>httpClient</dt>
<dd>
I have developed the
<b>httpClient</b>
package using
R code and connections that supports additional
aspects of R and HTTP, such as cookies, character escaping, and also
SSL for HTTPS. I haven't released the code (favoring the
approach of building on existing C code) but can make it available if anyone
is interested.
</dd>
</dl>
While having code in R makes it easier to understand, explore and
modify, it is probably better to use existing specialized libraries
like libcurl rather than doing this ourself. We gain speed and a
large development community that cares about getting things right and
testing them.
We will explore the use of
<a href="http://www.w3.org/Library">libwww</a>
<h2>Issues</h2>
Using the opaque data structures of the libcurl infrastructure
means that we cannot easily access the file descriptors used
in the communication. This makes it somewhat more difficult
to integrate these streams into an R even loop
(e.g.
<a href="http://www.omegahat.org/REventLoop">REventLoop</a>
).
We can potentially turn them into regular connections
(if the internal API is made "public").
<h2>License</h2>
This is distributed under the
<a href="http://www.omegahat.org/BSDLicense.html">BSD license</a>
in the same spirit as libcurl itself.
<hr/>
<address>
<a href="http://www.stat.ucdavis.edu/~duncan">Duncan Temple Lang</a>
<a href="/cdn-cgi/l/email-protection#482c3d262b2926083f29242c663d2b2c293e213b662d2c3d">
<
<span class="__cf_email__" data-cfemail="7317061d10121d3304121f175d06101712051a005d161706">[email protected]</span>
>
</a>
</address>
<!--hhmts start-->
Last modified: Mon May 25 11:35:38 PDT 2009
<!--hhmts end-->
<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"/>
</body>
</html>
attr(,"class")
[1] "XMLDocumentContent"
>
>
> # HTTPS. First check to see that we have support compiled into
> # libcurl for ssl.
> if(interactive() && ("ssl" %in% names(curlVersion()$features))
+ && url.exists("https://sourceforge.net/")) {
+ txt = tryCatch(getURL("https://sourceforge.net/"),
+ error = function(e) {
+ getURL("https://sourceforge.net/",
+ ssl.verifypeer = FALSE)
+ })
+
+ }
>
>
> # Create a CURL handle that we will reuse.
> if(interactive() && omegahatExists) {
+ curl = getCurlHandle()
+ pages = list()
+ for(u in c("https://www.omegahat.net/RCurl/index.html",
+ "https://www.omegahat.net/RGtk/index.html")) {
+ pages[[u]] = getURL(u, curl = curl)
+ }
+ }
>
>
> # Set additional fields in the header of the HTTP request.
> # verbose option allows us to see that they were included.
> if(omegahatExists)
+ getURL("https://www.omegahat.net", httpheader = c(Accept = "text/html",
+ MyField = "Duncan"),
+ verbose = TRUE)
* Host www.omegahat.net:443 was resolved.
* IPv6: 2606:4700:3036::ac43:da54, 2606:4700:3033::6815:186a
* IPv4: 104.21.24.106, 172.67.218.84
* Trying [2606:4700:3036::ac43:da54]:443...
* Immediate connect fail for 2606:4700:3036::ac43:da54: Network is unreachable
* Trying [2606:4700:3033::6815:186a]:443...
* Immediate connect fail for 2606:4700:3033::6815:186a: Network is unreachable
* Trying 104.21.24.106:443...
* ALPN: curl offers h2,http/1.1
* CAfile: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
* CApath: none
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=omegahat.net
* start date: May 12 18:07:29 2026 GMT
* expire date: Aug 10 18:07:28 2026 GMT
* subjectAltName: host "www.omegahat.net" matched cert's "*.omegahat.net"
* issuer: C=US; O=Let's Encrypt; CN=E7
* SSL certificate verify ok.
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using ecdsa-with-SHA384
* Certificate level 1: Public key type EC/secp384r1 (384/192 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Connected to www.omegahat.net (104.21.24.106) port 443
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://www.omegahat.net/
* [HTTP/2] [1] [:method: GET]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: www.omegahat.net]
* [HTTP/2] [1] [:path: /]
* [HTTP/2] [1] [accept: text/html]
* [HTTP/2] [1] [myfield: Duncan]
> GET / HTTP/2
Host: www.omegahat.net
Accept: text/html
MyField: Duncan
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:51 GMT
< content-type: text/html; charset=UTF-8
< location: https://omegahat.net/
< x-redirect-by: WordPress
< cache-control: no-cache, no-store, must-revalidate
< expires: 0
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< pragma: no-cache
< server: cloudflare
< cf-cache-status: DYNAMIC
< nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
< report-to: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=MRDlR5DPGd3mzVc57%2FlPNueTZKEw0LnUCBAb92DovsLRPA35yk8itTtgVIOihKIY3%2FzuOiu3Bfvm8T1Y8NgDDuKs6nDLBlDvLn80R64Lg0JGuCO6s%2FXtxbTW4qhIYJseglt2"}]}
< cf-ray: 9fccd3ef1e14ede7-LHR
< alt-svc: h3=":443"; ma=86400
* Ignoring the response-body
<
* Connection #0 to host www.omegahat.net left intact
* Issue another request to this URL: 'https://omegahat.net/'
* Host omegahat.net:443 was resolved.
* IPv6: 2606:4700:3036::ac43:da54, 2606:4700:3033::6815:186a
* IPv4: 172.67.218.84, 104.21.24.106
* Trying [2606:4700:3036::ac43:da54]:443...
* Immediate connect fail for 2606:4700:3036::ac43:da54: Network is unreachable
* Trying [2606:4700:3033::6815:186a]:443...
* Immediate connect fail for 2606:4700:3033::6815:186a: Network is unreachable
* Trying 172.67.218.84:443...
* ALPN: curl offers h2,http/1.1
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=omegahat.net
* start date: May 12 18:07:29 2026 GMT
* expire date: Aug 10 18:07:28 2026 GMT
* subjectAltName: host "omegahat.net" matched cert's "omegahat.net"
* issuer: C=US; O=Let's Encrypt; CN=E7
* SSL certificate verify ok.
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using ecdsa-with-SHA384
* Certificate level 1: Public key type EC/secp384r1 (384/192 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Connected to omegahat.net (172.67.218.84) port 443
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://omegahat.net/
* [HTTP/2] [1] [:method: GET]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: omegahat.net]
* [HTTP/2] [1] [:path: /]
* [HTTP/2] [1] [referer: https://www.omegahat.net/]
* [HTTP/2] [1] [accept: text/html]
* [HTTP/2] [1] [myfield: Duncan]
> GET / HTTP/2
Host: omegahat.net
Referer: https://www.omegahat.net/
Accept: text/html
MyField: Duncan
* Request completely sent off
< HTTP/2 200
< date: Sat, 16 May 2026 19:35:51 GMT
< content-type: text/html; charset=UTF-8
< link: <https://omegahat.net/wp-json/>; rel="https://api.w.org/", <https://omegahat.net/wp-json/wp/v2/pages/17>; rel="alternate"; title="JSON"; type="application/json", <https://omegahat.net/>; rel=shortlink
< cache-control: no-cache, no-store, must-revalidate
< expires: 0
< vary: Accept-Encoding
< report-to: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=AOWrHQiOCXjyPcloVAMXHUlQd5pKD0L2BeBd4tdsXXXGbp7COOR%2B4x%2FBGQwCtDs5cDlvu4NkzLVGXKLnjvi6eS8gceNWp20ojCEVjosY18KmL7yK0%2FwekbCv3VOjqb8%3D"}]}
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< pragma: no-cache
< server: cloudflare
< cf-cache-status: DYNAMIC
< nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
< cf-ray: 9fccd3f1a82d940b-LHR
< alt-svc: h3=":443"; ma=86400
<
* Connection #1 to host omegahat.net left intact
[1] "<!doctype html>\n<html lang=\"en-US\" prefix=\"og: https://ogp.me/ns#\" class=\"no-js\" itemtype=\"https://schema.org/WebPage\" itemscope>\n<head>\n\t<meta charset=\"UTF-8\">\n\t<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, minimum-scale=1\">\n\t\n<!-- Search Engine Optimization by Rank Math - https://rankmath.com/ -->\n<title>Home - Omegahat</title>\n<meta name=\"description\" content=\"Related infrastructure packages include\"/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-video-preview:-1, max-image-preview:large\"/>\n<link rel=\"canonical\" href=\"https://omegahat.net/\" />\n<meta property=\"og:locale\" content=\"en_US\" />\n<meta property=\"og:type\" content=\"website\" />\n<meta property=\"og:title\" content=\"Home - Omegahat\" />\n<meta property=\"og:description\" content=\"Related infrastructure packages include\" />\n<meta property=\"og:url\" content=\"https://omegahat.net/\" />\n<meta property=\"og:site_name\" content=\"Omegahat\" />\n<meta property=\"og:updated_time\" content=\"2026-04-27T23:39:00+03:00\" />\n<meta property=\"article:published_time\" content=\"2026-04-27T21:59:25+03:00\" />\n<meta property=\"article:modified_time\" content=\"2026-04-27T23:39:00+03:00\" />\n<meta name=\"twitter:card\" content=\"summary_large_image\" />\n<meta name=\"twitter:title\" content=\"Home - Omegahat\" />\n<meta name=\"twitter:description\" content=\"Related infrastructure packages include\" />\n<meta name=\"twitter:label1\" content=\"Written by\" />\n<meta name=\"twitter:data1\" content=\"hgkgbygyniu7ooiohjoi\" />\n<meta name=\"twitter:label2\" content=\"Time to read\" />\n<meta name=\"twitter:data2\" content=\"14 minutes\" />\n<script type=\"application/ld+json\" class=\"rank-math-schema\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https://omegahat.net/#person\",\"name\":\"Omegahat\",\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"https://omegahat.net/#logo\",\"url\":\"https://nxv.kue.mybluehost.me/website_fb45777b/wp-content/uploads/2026/04/new.jpg\",\"contentUrl\":\"https://nxv.kue.mybluehost.me/website_fb45777b/wp-content/uploads/2026/04/new.jpg\",\"caption\":\"Omegahat\",\"inLanguage\":\"en-US\",\"width\":\"28\",\"height\":\"14\"},\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https://omegahat.net/#logo\",\"url\":\"https://nxv.kue.mybluehost.me/website_fb45777b/wp-content/uploads/2026/04/new.jpg\",\"contentUrl\":\"https://nxv.kue.mybluehost.me/website_fb45777b/wp-content/uploads/2026/04/new.jpg\",\"caption\":\"Omegahat\",\"inLanguage\":\"en-US\",\"width\":\"28\",\"height\":\"14\"}},{\"@type\":\"WebSite\",\"@id\":\"https://omegahat.net/#website\",\"url\":\"https://omegahat.net\",\"name\":\"Omegahat\",\"publisher\":{\"@id\":\"https://omegahat.net/#person\"},\"inLanguage\":\"en-US\",\"potentialAction\":{\"@type\":\"SearchAction\",\"target\":\"https://omegahat.net/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}},{\"@type\":\"ImageObject\",\"@id\":\"Images/new.jpg\",\"url\":\"Images/new.jpg\",\"width\":\"200\",\"height\":\"200\",\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https://omegahat.net/#webpage\",\"url\":\"https://omegahat.net/\",\"name\":\"Home - Omegahat\",\"datePublished\":\"2026-04-27T21:59:25+03:00\",\"dateModified\":\"2026-04-27T23:39:00+03:00\",\"about\":{\"@id\":\"https://omegahat.net/#person\"},\"isPartOf\":{\"@id\":\"https://omegahat.net/#website\"},\"primaryImageOfPage\":{\"@id\":\"Images/new.jpg\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https://omegahat.net/author/hgkgbygyniu7ooiohjoi/\",\"name\":\"hgkgbygyniu7ooiohjoi\",\"url\":\"https://omegahat.net/author/hgkgbygyniu7ooiohjoi/\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https://secure.gravatar.com/avatar/0a6bbd52e8c7b3e847d030f2d3c95718ba8b490437546b955dbcbfa2185669ca?s=96&d=wavatar&r=g\",\"url\":\"https://secure.gravatar.com/avatar/0a6bbd52e8c7b3e847d030f2d3c95718ba8b490437546b955dbcbfa2185669ca?s=96&d=wavatar&r=g\",\"caption\":\"hgkgbygyniu7ooiohjoi\",\"inLanguage\":\"en-US\"}},{\"@type\":\"Article\",\"headline\":\"Home - Omegahat\",\"datePublished\":\"2026-04-27T21:59:25+03:00\",\"dateModified\":\"2026-04-27T23:39:00+03:00\",\"author\":{\"@id\":\"https://omegahat.net/author/hgkgbygyniu7ooiohjoi/\",\"name\":\"hgkgbygyniu7ooiohjoi\"},\"publisher\":{\"@id\":\"https://omegahat.net/#person\"},\"description\":\"Related infrastructure packages include\",\"name\":\"Home - Omegahat\",\"@id\":\"https://omegahat.net/#richSnippet\",\"isPartOf\":{\"@id\":\"https://omegahat.net/#webpage\"},\"image\":{\"@id\":\"Images/new.jpg\"},\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https://omegahat.net/#webpage\"}}]}</script>\n<!-- /Rank Math WordPress SEO plugin -->\n\n<link rel=\"alternate\" type=\"application/rss+xml\" title=\"Omegahat » Feed\" href=\"https://omegahat.net/feed/\" />\n<link rel=\"alternate\" type=\"application/rss+xml\" title=\"Omegahat » Comments Feed\" href=\"https://omegahat.net/comments/feed/\" />\n\t\t\t<script>document.documentElement.classList.remove( 'no-js' );</script>\n\t\t\t<link rel=\"alternate\" title=\"oEmbed (JSON)\" type=\"application/json+oembed\" href=\"https://omegahat.net/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fomegahat.net%2F\" />\n<link rel=\"alternate\" title=\"oEmbed (XML)\" type=\"text/xml+oembed\" href=\"https://omegahat.net/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fomegahat.net%2F&format=xml\" />\n<style id='wp-img-auto-sizes-contain-inline-css'>\nimg:is([sizes=auto i],[sizes^=\"auto,\" i]){contain-intrinsic-size:3000px 1500px}\n/*# sourceURL=wp-img-auto-sizes-contain-inline-css */\n</style>\n<style id='wp-emoji-styles-inline-css'>\n\n\timg.wp-smiley, img.emoji {\n\t\tdisplay: inline !important;\n\t\tborder: none !important;\n\t\tbox-shadow: none !important;\n\t\theight: 1em !important;\n\t\twidth: 1em !important;\n\t\tmargin: 0 0.07em !important;\n\t\tvertical-align: -0.1em !important;\n\t\tbackground: none !important;\n\t\tpadding: 0 !important;\n\t}\n/*# sourceURL=wp-emoji-styles-inline-css */\n</style>\n<style id='wp-block-library-inline-css'>\n:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}.has-text-align-center{text-align:center}.has-text-align-left{text-align:left}.has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}\n\n/*# sourceURL=wp-block-library-inline-css */\n</style>\n<style id='wp-block-paragraph-inline-css'>\n.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*=\"writing-mode:vertical-lr\"],p.has-text-align-right[style*=\"writing-mode:vertical-rl\"]{rotate:180deg}\n/*# sourceURL=https://omegahat.net/wp-includes/blocks/paragraph/style.min.css */\n</style>\n\n<style id='classic-theme-styles-inline-css'>\n/*! This file is auto-generated */\n.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}\n/*# sourceURL=/wp-includes/css/classic-themes.min.css */\n</style>\n<style id='global-styles-inline-css'>\n:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--theme-palette-1: var(--global-palette1);--wp--preset--color--theme-palette-2: var(--global-palette2);--wp--preset--color--theme-palette-3: var(--global-palette3);--wp--preset--color--theme-palette-4: var(--global-palette4);--wp--preset--color--theme-palette-5: var(--global-palette5);--wp--preset--color--theme-palette-6: var(--global-palette6);--wp--preset--color--theme-palette-7: var(--global-palette7);--wp--preset--color--theme-palette-8: var(--global-palette8);--wp--preset--color--theme-palette-9: var(--global-palette9);--wp--preset--color--theme-palette-10: var(--global-palette10);--wp--preset--color--theme-palette-11: var(--global-palette11);--wp--preset--color--theme-palette-12: var(--global-palette12);--wp--preset--color--theme-palette-13: var(--global-palette13);--wp--preset--color--theme-palette-14: var(--global-palette14);--wp--preset--color--theme-palette-15: var(--global-palette15);--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: var(--global-font-size-small);--wp--preset--font-size--medium: var(--global-font-size-medium);--wp--preset--font-size--large: var(--global-font-size-large);--wp--preset--font-size--x-large: 42px;--wp--preset--font-size--larger: var(--global-font-size-larger);--wp--preset--font-size--xxlarge: var(--global-font-size-xxlarge);--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}\n/*# sourceURL=global-styles-inline-css */\n</style>\n\n<link rel='stylesheet' id='dashicons-css' href='https://omegahat.net/wp-includes/css/dashicons.min.css?ver=6.9.4' media='all' />\n<link rel='stylesheet' id='admin-bar-css' href='https://omegahat.net/wp-includes/css/admin-bar.min.css?ver=6.9.4' media='all' />\n<style id='admin-bar-inline-css'>\n\n /* Hide CanvasJS credits for P404 charts specifically */\n #p404RedirectChart .canvasjs-chart-credit {\n display: none !important;\n }\n \n #p404RedirectChart canvas {\n border-radius: 6px;\n }\n\n .p404-redirect-adminbar-weekly-title {\n font-weight: bold;\n font-size: 14px;\n color: #fff;\n margin-bottom: 6px;\n }\n\n #wpadminbar #wp-admin-bar-p404_free_top_button .ab-icon:before {\n content: \"\f103\";\n color: #dc3545;\n top: 3px;\n }\n \n #wp-admin-bar-p404_free_top_button .ab-item {\n min-width: 80px !important;\n padding: 0px !important;\n }\n \n /* Ensure proper positioning and z-index for P404 dropdown */\n .p404-redirect-adminbar-dropdown-wrap { \n min-width: 0; \n padding: 0;\n position: static !important;\n }\n \n #wpadminbar #wp-admin-bar-p404_free_top_button_dropdown {\n position: static !important;\n }\n \n #wpadminbar #wp-admin-bar-p404_free_top_button_dropdown .ab-item {\n padding: 0 !important;\n margin: 0 !important;\n }\n \n .p404-redirect-dropdown-container {\n min-width: 340px;\n padding: 18px 18px 12px 18px;\n background: #23282d !important;\n color: #fff;\n border-radius: 12px;\n box-shadow: 0 8px 32px rgba(0,0,0,0.25);\n margin-top: 10px;\n position: relative !important;\n z-index: 999999 !important;\n display: block !important;\n border: 1px solid #444;\n }\n \n /* Ensure P404 dropdown appears on hover */\n #wpadminbar #wp-admin-bar-p404_free_top_button .p404-redirect-dropdown-container { \n display: none !important;\n }\n \n #wpadminbar #wp-admin-bar-p404_free_top_button:hover .p404-redirect-dropdown-container { \n display: block !important;\n }\n \n #wpadminbar #wp-admin-bar-p404_free_top_button:hover #wp-admin-bar-p404_free_top_button_dropdown .p404-redirect-dropdown-container {\n display: block !important;\n }\n \n .p404-redirect-card {\n background: #2c3338;\n border-radius: 8px;\n padding: 18px 18px 12px 18px;\n box-shadow: 0 2px 8px rgba(0,0,0,0.07);\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n border: 1px solid #444;\n }\n \n .p404-redirect-btn {\n display: inline-block;\n background: #dc3545;\n color: #fff !important;\n font-weight: bold;\n padding: 5px 22px;\n border-radius: 8px;\n text-decoration: none;\n font-size: 17px;\n transition: background 0.2s, box-shadow 0.2s;\n margin-top: 8px;\n box-shadow: 0 2px 8px rgba(220,53,69,0.15);\n text-align: center;\n line-height: 1.6;\n }\n \n .p404-redirect-btn:hover {\n background: #c82333;\n color: #fff !important;\n box-shadow: 0 4px 16px rgba(220,53,69,0.25);\n }\n \n /* Prevent conflicts with other admin bar dropdowns */\n #wpadminbar .ab-top-menu > li:hover > .ab-item,\n #wpadminbar .ab-top-menu > li.hover > .ab-item {\n z-index: auto;\n }\n \n #wpadminbar #wp-admin-bar-p404_free_top_button:hover > .ab-item {\n z-index: 999998 !important;\n }\n \n/*# sourceURL=admin-bar-inline-css */\n</style>\n<link rel='stylesheet' id='kadence-global-css' href='https://omegahat.net/wp-content/themes/kadence/assets/css/global.min.css?ver=1.4.5' media='all' />\n<style id='kadence-global-inline-css'>\n/* Kadence Base CSS */\n:root{--global-palette1:#2B6CB0;--global-palette2:#215387;--global-palette3:#1A202C;--global-palette4:#2D3748;--global-palette5:#4A5568;--global-palette6:#718096;--global-palette7:#EDF2F7;--global-palette8:#F7FAFC;--global-palette9:#ffffff;--global-palette10:oklch(from var(--global-palette1) calc(l + 0.10 * (1 - l)) calc(c * 1.00) calc(h + 180) / 100%);--global-palette11:#13612e;--global-palette12:#1159af;--global-palette13:#b82105;--global-palette14:#f7630c;--global-palette15:#f5a524;--global-palette9rgb:255, 255, 255;--global-palette-highlight:var(--global-palette1);--global-palette-highlight-alt:var(--global-palette2);--global-palette-highlight-alt2:var(--global-palette9);--global-palette-btn-bg:var(--global-palette1);--global-palette-btn-bg-hover:var(--global-palette2);--global-palette-btn:var(--global-palette9);--global-palette-btn-hover:var(--global-palette9);--global-palette-btn-sec-bg:var(--global-palette7);--global-palette-btn-sec-bg-hover:var(--global-palette2);--global-palette-btn-sec:var(--global-palette3);--global-palette-btn-sec-hover:var(--global-palette9);--global-body-font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Oxygen-Sans,Ubuntu,Cantarell,\"Helvetica Neue\",sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";--global-heading-font-family:inherit;--global-primary-nav-font-family:inherit;--global-fallback-font:sans-serif;--global-display-fallback-font:sans-serif;--global-content-width:1290px;--global-content-wide-width:calc(1290px + 230px);--global-content-narrow-width:842px;--global-content-edge-padding:1.5rem;--global-content-boxed-padding:2rem;--global-calc-content-width:calc(1290px - var(--global-content-edge-padding) - var(--global-content-edge-padding) );--wp--style--global--content-size:var(--global-calc-content-width);}.wp-site-blocks{--global-vw:calc( 100vw - ( 0.5 * var(--scrollbar-offset)));}body{background:var(--global-palette8);}body, input, select, optgroup, textarea{font-weight:400;font-size:17px;line-height:1.6;font-family:var(--global-body-font-family);color:var(--global-palette4);}.content-bg, body.content-style-unboxed .site{background:var(--global-palette9);}h1,h2,h3,h4,h5,h6{font-family:var(--global-heading-font-family);}h1{font-weight:700;font-size:32px;line-height:1.5;color:var(--global-palette3);}h2{font-weight:700;font-size:28px;line-height:1.5;color:var(--global-palette3);}h3{font-weight:700;font-size:24px;line-height:1.5;color:var(--global-palette3);}h4{font-weight:700;font-size:22px;line-height:1.5;color:var(--global-palette4);}h5{font-weight:700;font-size:20px;line-height:1.5;color:var(--global-palette4);}h6{font-weight:700;font-size:18px;line-height:1.5;color:var(--global-palette5);}.entry-hero .kadence-breadcrumbs{max-width:1290px;}.site-container, .site-header-row-layout-contained, .site-footer-row-layout-contained, .entry-hero-layout-contained, .comments-area, .alignfull > .wp-block-cover__inner-container, .alignwide > .wp-block-cover__inner-container{max-width:var(--global-content-width);}.content-width-narrow .content-container.site-container, .content-width-narrow .hero-container.site-container{max-width:var(--global-content-narrow-width);}@media all and (min-width: 1520px){.wp-site-blocks .content-container .alignwide{margin-left:-115px;margin-right:-115px;width:unset;max-width:unset;}}@media all and (min-width: 1102px){.content-width-narrow .wp-site-blocks .content-container .alignwide{margin-left:-130px;margin-right:-130px;width:unset;max-width:unset;}}.content-style-boxed .wp-site-blocks .entry-content .alignwide{margin-left:calc( -1 * var( --global-content-boxed-padding ) );margin-right:calc( -1 * var( --global-content-boxed-padding ) );}.content-area{margin-top:5rem;margin-bottom:5rem;}@media all and (max-width: 1024px){.content-area{margin-top:3rem;margin-bottom:3rem;}}@media all and (max-width: 767px){.content-area{margin-top:2rem;margin-bottom:2rem;}}@media all and (max-width: 1024px){:root{--global-content-boxed-padding:2rem;}}@media all and (max-width: 767px){:root{--global-content-boxed-padding:1.5rem;}}.entry-content-wrap{padding:2rem;}@media all and (max-width: 1024px){.entry-content-wrap{padding:2rem;}}@media all and (max-width: 767px){.entry-content-wrap{padding:1.5rem;}}.entry.single-entry{box-shadow:0px 15px 15px -10px rgba(0,0,0,0.05);}.entry.loop-entry{box-shadow:0px 15px 15px -10px rgba(0,0,0,0.05);}.loop-entry .entry-content-wrap{padding:2rem;}@media all and (max-width: 1024px){.loop-entry .entry-content-wrap{padding:2rem;}}@media all and (max-width: 767px){.loop-entry .entry-content-wrap{padding:1.5rem;}}button, .button, .wp-block-button__link, input[type=\"button\"], input[type=\"reset\"], input[type=\"submit\"], .fl-button, .elementor-button-wrapper .elementor-button, .wc-block-components-checkout-place-order-button, .wc-block-cart__submit{box-shadow:0px 0px 0px -7px rgba(0,0,0,0);}button:hover, button:focus, button:active, .button:hover, .button:focus, .button:active, .wp-block-button__link:hover, .wp-block-button__link:focus, .wp-block-button__link:active, input[type=\"button\"]:hover, input[type=\"button\"]:focus, input[type=\"button\"]:active, input[type=\"reset\"]:hover, input[type=\"reset\"]:focus, input[type=\"reset\"]:active, input[type=\"submit\"]:hover, input[type=\"submit\"]:focus, input[type=\"submit\"]:active, .elementor-button-wrapper .elementor-button:hover, .elementor-button-wrapper .elementor-button:focus, .elementor-button-wrapper .elementor-button:active, .wc-block-cart__submit:hover{box-shadow:0px 15px 25px -7px rgba(0,0,0,0.1);}.kb-button.kb-btn-global-outline.kb-btn-global-inherit{padding-top:calc(px - 2px);padding-right:calc(px - 2px);padding-bottom:calc(px - 2px);padding-left:calc(px - 2px);}.entry-hero.page-hero-section .entry-header{min-height:200px;}\n/* Kadence Pro Header CSS */\n.header-navigation-dropdown-direction-left ul ul.submenu, .header-navigation-dropdown-direction-left ul ul.sub-menu{right:0px;left:auto;}.rtl .header-navigation-dropdown-direction-right ul ul.submenu, .rtl .header-navigation-dropdown-direction-right ul ul.sub-menu{left:0px;right:auto;}.header-account-button .nav-drop-title-wrap > .kadence-svg-iconset, .header-account-button > .kadence-svg-iconset{font-size:1.2em;}.site-header-item .header-account-button .nav-drop-title-wrap, .site-header-item .header-account-wrap > .header-account-button{display:flex;align-items:center;}.header-account-style-icon_label .header-account-label{padding-left:5px;}.header-account-style-label_icon .header-account-label{padding-right:5px;}.site-header-item .header-account-wrap .header-account-button{text-decoration:none;box-shadow:none;color:inherit;background:transparent;padding:0.6em 0em 0.6em 0em;}.header-mobile-account-wrap .header-account-button .nav-drop-title-wrap > .kadence-svg-iconset, .header-mobile-account-wrap .header-account-button > .kadence-svg-iconset{font-size:1.2em;}.header-mobile-account-wrap .header-account-button .nav-drop-title-wrap, .header-mobile-account-wrap > .header-account-button{display:flex;align-items:center;}.header-mobile-account-wrap.header-account-style-icon_label .header-account-label{padding-left:5px;}.header-mobile-account-wrap.header-account-style-label_icon .header-account-label{padding-right:5px;}.header-mobile-account-wrap .header-account-button{text-decoration:none;box-shadow:none;color:inherit;background:transparent;padding:0.6em 0em 0.6em 0em;}#login-drawer .drawer-inner .drawer-content{display:flex;justify-content:center;align-items:center;position:absolute;top:0px;bottom:0px;left:0px;right:0px;padding:0px;}#loginform p label{display:block;}#login-drawer #loginform{width:100%;}#login-drawer #loginform input{width:100%;}#login-drawer #loginform input[type=\"checkbox\"]{width:auto;}#login-drawer .drawer-inner .drawer-header{position:relative;z-index:100;}#login-drawer .drawer-content_inner.widget_login_form_inner{padding:2em;width:100%;max-width:350px;border-radius:.25rem;background:var(--global-palette9);color:var(--global-palette4);}#login-drawer .lost_password a{color:var(--global-palette6);}#login-drawer .lost_password, #login-drawer .register-field{text-align:center;}#login-drawer .widget_login_form_inner p{margin-top:1.2em;margin-bottom:0em;}#login-drawer .widget_login_form_inner p:first-child{margin-top:0em;}#login-drawer .widget_login_form_inner label{margin-bottom:0.5em;}#login-drawer hr.register-divider{margin:1.2em 0;border-width:1px;}#login-drawer .register-field{font-size:90%;}.tertiary-navigation .tertiary-menu-container > ul > li > a{padding-left:calc(1.2em / 2);padding-right:calc(1.2em / 2);padding-top:0.6em;padding-bottom:0.6em;color:var(--global-palette5);}.tertiary-navigation .tertiary-menu-container > ul > li > a:hover{color:var(--global-palette-highlight);}.tertiary-navigation .tertiary-menu-container > ul > li.current-menu-item > a{color:var(--global-palette3);}.quaternary-navigation .quaternary-menu-container > ul > li > a{padding-left:calc(1.2em / 2);padding-right:calc(1.2em / 2);padding-top:0.6em;padding-bottom:0.6em;color:var(--global-palette5);}.quaternary-navigation .quaternary-menu-container > ul > li > a:hover{color:var(--global-palette-highlight);}.quaternary-navigation .quaternary-menu-container > ul > li.current-menu-item > a{color:var(--global-palette3);}#main-header .header-divider{border-right:1px solid var(--global-palette6);height:50%;}#main-header .header-divider2{border-right:1px solid var(--global-palette6);height:50%;}#main-header .header-divider3{border-right:1px solid var(--global-palette6);height:50%;}#mobile-header .header-mobile-divider{border-right:1px solid var(--global-palette6);height:50%;}#mobile-header .header-mobile-divider2{border-right:1px solid var(--global-palette6);height:50%;}.header-item-search-bar form ::-webkit-input-placeholder{color:currentColor;opacity:0.5;}.header-item-search-bar form ::placeholder{color:currentColor;opacity:0.5;}.header-search-bar form{max-width:100%;width:240px;}.header-mobile-search-bar form{max-width:calc(100vw - var(--global-sm-spacing) - var(--global-sm-spacing));width:240px;}.header-widget-lstyle-normal .header-widget-area-inner a:not(.button){text-decoration:underline;}.element-contact-inner-wrap{display:flex;flex-wrap:wrap;align-items:center;margin-top:-0.6em;margin-left:calc(-0.6em / 2);margin-right:calc(-0.6em / 2);}.element-contact-inner-wrap .header-contact-item{display:inline-flex;flex-wrap:wrap;align-items:center;margin-top:0.6em;margin-left:calc(0.6em / 2);margin-right:calc(0.6em / 2);}.element-contact-inner-wrap .header-contact-item .kadence-svg-iconset{font-size:1em;}.header-contact-item img{display:inline-block;}.header-contact-item .contact-label{margin-left:0.3em;}.rtl .header-contact-item .contact-label{margin-right:0.3em;margin-left:0px;}.header-mobile-contact-wrap .element-contact-inner-wrap{display:flex;flex-wrap:wrap;align-items:center;margin-top:-0.6em;margin-left:calc(-0.6em / 2);margin-right:calc(-0.6em / 2);}.header-mobile-contact-wrap .element-contact-inner-wrap .header-contact-item{display:inline-flex;flex-wrap:wrap;align-items:center;margin-top:0.6em;margin-left:calc(0.6em / 2);margin-right:calc(0.6em / 2);}.header-mobile-contact-wrap .element-contact-inner-wrap .header-contact-item .kadence-svg-iconset{font-size:1em;}#main-header .header-button2{border:2px none transparent;box-shadow:0px 0px 0px -7px rgba(0,0,0,0);}#main-header .header-button2:hover{box-shadow:0px 15px 25px -7px rgba(0,0,0,0.1);}.mobile-header-button2-wrap .mobile-header-button2{border:2px none transparent;}#widget-drawer.popup-drawer-layout-fullwidth .drawer-content .header-widget2, #widget-drawer.popup-drawer-layout-sidepanel .drawer-inner{max-width:400px;}#widget-drawer.popup-drawer-layout-fullwidth .drawer-content .header-widget2{margin:0 auto;}.widget-toggle-open{display:flex;align-items:center;background:transparent;box-shadow:none;}.widget-toggle-open:hover, .widget-toggle-open:focus{border-color:currentColor;background:transparent;box-shadow:none;}.widget-toggle-open .widget-toggle-icon{display:flex;}.widget-toggle-open .widget-toggle-label{padding-right:5px;}.rtl .widget-toggle-open .widget-toggle-label{padding-left:5px;padding-right:0px;}.widget-toggle-open .widget-toggle-label:empty, .rtl .widget-toggle-open .widget-toggle-label:empty{padding-right:0px;padding-left:0px;}.widget-toggle-open-container .widget-toggle-open{color:var(--global-palette5);padding:0.4em 0.6em 0.4em 0.6em;font-size:14px;}.widget-toggle-open-container .widget-toggle-open.widget-toggle-style-bordered{border:1px solid currentColor;}.widget-toggle-open-container .widget-toggle-open .widget-toggle-icon{font-size:20px;}.widget-toggle-open-container .widget-toggle-open:hover, .widget-toggle-open-container .widget-toggle-open:focus{color:var(--global-palette-highlight);}#widget-drawer .header-widget-2style-normal a:not(.button){text-decoration:underline;}#widget-drawer .header-widget-2style-plain a:not(.button){text-decoration:none;}#widget-drawer .header-widget2 .widget-title{color:var(--global-palette9);}#widget-drawer .header-widget2{color:var(--global-palette8);}#widget-drawer .header-widget2 a:not(.button), #widget-drawer .header-widget2 .drawer-sub-toggle{color:var(--global-palette8);}#widget-drawer .header-widget2 a:not(.button):hover, #widget-drawer .header-widget2 .drawer-sub-toggle:hover{color:var(--global-palette9);}#mobile-secondary-site-navigation ul li{font-size:14px;}#mobile-secondary-site-navigation ul li a{padding-top:1em;padding-bottom:1em;}#mobile-secondary-site-navigation ul li > a, #mobile-secondary-site-navigation ul li.menu-item-has-children > .drawer-nav-drop-wrap{color:var(--global-palette8);}#mobile-secondary-site-navigation ul li.current-menu-item > a, #mobile-secondary-site-navigation ul li.current-menu-item.menu-item-has-children > .drawer-nav-drop-wrap{color:var(--global-palette-highlight);}#mobile-secondary-site-navigation ul li.menu-item-has-children .drawer-nav-drop-wrap, #mobile-secondary-site-navigation ul li:not(.menu-item-has-children) a{border-bottom:1px solid rgba(255,255,255,0.1);}#mobile-secondary-site-navigation:not(.drawer-navigation-parent-toggle-true) ul li.menu-item-has-children .drawer-nav-drop-wrap button{border-left:1px solid rgba(255,255,255,0.1);}\n/*# sourceURL=kadence-global-inline-css */\n</style>\n<link rel='stylesheet' id='kadence-content-css' href='https://omegahat.net/wp-content/themes/kadence/assets/css/content.min.css?ver=1.4.5' media='all' />\n<link rel='stylesheet' id='menu-addons-css' href='https://omegahat.net/wp-content/plugins/kadence-pro/dist/mega-menu/menu-addon.css?ver=1.0.4' media='all' />\n<style id='kadence-blocks-advancedheading-inline-css'>\n\t.wp-block-kadence-advancedheading mark{background:transparent;border-style:solid;border-width:0}\n\t.wp-block-kadence-advancedheading mark.kt-highlight{color:#f76a0c;}\n\t.kb-adv-heading-icon{display: inline-flex;justify-content: center;align-items: center;}\n\t.is-layout-constrained > .kb-advanced-heading-link {display: block;}.wp-block-kadence-advancedheading.has-background{padding: 0;}\t.single-content .kadence-advanced-heading-wrapper h1,\n\t.single-content .kadence-advanced-heading-wrapper h2,\n\t.single-content .kadence-advanced-heading-wrapper h3,\n\t.single-content .kadence-advanced-heading-wrapper h4,\n\t.single-content .kadence-advanced-heading-wrapper h5,\n\t.single-content .kadence-advanced-heading-wrapper h6 {margin: 1.5em 0 .5em;}\n\t.single-content .kadence-advanced-heading-wrapper+* { margin-top:0;}.kb-screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);}\n/*# sourceURL=kadence-blocks-advancedheading-inline-css */\n</style>\n<link rel='stylesheet' id='kadence-blocks-rowlayout-css' href='https://omegahat.net/wp-content/plugins/kadence-blocks/dist/style-blocks-rowlayout.css?ver=3.6.7' media='all' />\n<link rel='stylesheet' id='kadence-blocks-column-css' href='https://omegahat.net/wp-content/plugins/kadence-blocks/dist/style-blocks-column.css?ver=3.6.7' media='all' />\n<link rel='stylesheet' id='kadence-rankmath-css' href='https://omegahat.net/wp-content/themes/kadence/assets/css/rankmath.min.css?ver=1.4.5' media='all' />\n<link rel='stylesheet' id='kadence-blocks-pro-query-css' href='https://omegahat.net/wp-content/plugins/kadence-blocks-pro/dist/style-blocks-query.css?ver=2.4.5' media='all' />\n<link rel='stylesheet' id='kadence-blocks-advancedbtn-css' href='https://omegahat.net/wp-content/plugins/kadence-blocks/dist/style-blocks-advancedbtn.css?ver=3.6.7' media='all' />\n<link rel='stylesheet' id='kadence-blocks-pro-dynamichtml-css' href='https://omegahat.net/wp-content/plugins/kadence-blocks-pro/dist/style-blocks-dynamichtml.css?ver=2.4.5' media='all' />\n<style id='kadence-blocks-global-variables-inline-css'>\n:root {--global-kb-font-size-sm:clamp(0.8rem, 0.73rem + 0.217vw, 0.9rem);--global-kb-font-size-md:clamp(1.1rem, 0.995rem + 0.326vw, 1.25rem);--global-kb-font-size-lg:clamp(1.75rem, 1.576rem + 0.543vw, 2rem);--global-kb-font-size-xl:clamp(2.25rem, 1.728rem + 1.63vw, 3rem);--global-kb-font-size-xxl:clamp(2.5rem, 1.456rem + 3.26vw, 4rem);--global-kb-font-size-xxxl:clamp(2.75rem, 0.489rem + 7.065vw, 6rem);}\n/*# sourceURL=kadence-blocks-global-variables-inline-css */\n</style>\n<style id='kadence_blocks_css-inline-css'>\n.wp-block-kadence-advancedheading.kt-adv-heading17_b659ae-8f, .wp-block-kadence-advancedheading.kt-adv-heading17_b659ae-8f[data-kb-block=\"kb-adv-heading17_b659ae-8f\"]{text-align:center;}.wp-block-kadence-advancedheading.kt-adv-heading17_b659ae-8f mark.kt-highlight, .wp-block-kadence-advancedheading.kt-adv-heading17_b659ae-8f[data-kb-block=\"kb-adv-heading17_b659ae-8f\"] mark.kt-highlight{-webkit-box-decoration-break:clone;box-decoration-break:clone;}.wp-block-kadence-advancedheading.kt-adv-heading17_b659ae-8f img.kb-inline-image, .wp-block-kadence-advancedheading.kt-adv-heading17_b659ae-8f[data-kb-block=\"kb-adv-heading17_b659ae-8f\"] img.kb-inline-image{width:150px;display:inline-block;}.kb-row-layout-id17_84928d-96 > .kt-row-column-wrap{padding-top:var( --global-kb-row-default-top, var(--global-kb-spacing-sm, 1.5rem) );padding-bottom:var( --global-kb-row-default-bottom, var(--global-kb-spacing-sm, 1.5rem) );grid-template-columns:minmax(0, 1fr);}@media all and (max-width: 767px){.kb-row-layout-id17_84928d-96 > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr);}}.kadence-column17_476431-f4 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column17_476431-f4 > .kt-inside-inner-col{flex-direction:column;}.kadence-column17_476431-f4 > .kt-inside-inner-col > .aligncenter{width:100%;}@media all and (max-width: 1024px){.kadence-column17_476431-f4 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column17_476431-f4 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}.kb-row-layout-id17_626afb-c4 > .kt-row-column-wrap{column-gap:var(--global-kb-gap-none, 0rem );row-gap:var(--global-kb-gap-none, 0rem );padding-top:0px;padding-right:0px;padding-bottom:var(--global-kb-spacing-md, 2rem);padding-left:0px;grid-template-columns:minmax(0, 1fr) minmax(0, 2fr);}.kb-row-layout-id17_626afb-c4{border-bottom:1px solid var(--global-palette7, #EDF2F7);}@media all and (max-width: 1024px){.kb-row-layout-id17_626afb-c4 > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr) minmax(0, 2fr);}}@media all and (max-width: 1024px){.kb-row-layout-id17_626afb-c4{border-bottom:1px solid var(--global-palette7, #EDF2F7);}}@media all and (max-width: 767px){.kb-row-layout-id17_626afb-c4 > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr);}.kb-row-layout-id17_626afb-c4{border-bottom:1px solid var(--global-palette7, #EDF2F7);}}.kadence-column17_2a1a1f-5a > .kt-inside-inner-col{padding-top:var(--global-kb-spacing-md, 2rem);padding-right:var(--global-kb-spacing-md, 2rem);padding-bottom:var(--global-kb-spacing-md, 2rem);padding-left:var(--global-kb-spacing-md, 2rem);}.kadence-column17_2a1a1f-5a > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column17_2a1a1f-5a > .kt-inside-inner-col{flex-direction:column;}.kadence-column17_2a1a1f-5a > .kt-inside-inner-col > .aligncenter{width:100%;}@media all and (max-width: 1024px){.kadence-column17_2a1a1f-5a > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column17_2a1a1f-5a > .kt-inside-inner-col{padding-top:var(--global-kb-spacing-sm, 1.5rem);padding-right:var(--global-kb-spacing-sm, 1.5rem);padding-bottom:var(--global-kb-spacing-sm, 1.5rem);padding-left:var(--global-kb-spacing-sm, 1.5rem);flex-direction:column;justify-content:center;}}.wp-block-kadence-advancedbtn.kb-btns17_b2c8db-6d{justify-content:flex-end;}\n/*# sourceURL=kadence_blocks_css-inline-css */\n</style>\n<link rel=\"https://api.w.org/\" href=\"https://omegahat.net/wp-json/\" /><link rel=\"alternate\" title=\"JSON\" type=\"application/json\" href=\"https://omegahat.net/wp-json/wp/v2/pages/17\" /><link rel=\"EditURI\" type=\"application/rsd+xml\" title=\"RSD\" href=\"https://omegahat.net/xmlrpc.php?rsd\" />\n<meta name=\"generator\" content=\"WordPress 6.9.4\" />\n<link rel='shortlink' href='https://omegahat.net/' />\n<link rel=\"icon\" href=\"https://omegahat.net/wp-content/uploads/2026/04/cropped-new-32x32.jpg\" sizes=\"32x32\" />\n<link rel=\"icon\" href=\"https://omegahat.net/wp-content/uploads/2026/04/cropped-new-192x192.jpg\" sizes=\"192x192\" />\n<link rel=\"apple-touch-icon\" href=\"https://omegahat.net/wp-content/uploads/2026/04/cropped-new-180x180.jpg\" />\n<meta name=\"msapplication-TileImage\" content=\"https://omegahat.net/wp-content/uploads/2026/04/cropped-new-270x270.jpg\" />\n</head>\n\n<body class=\"home wp-singular page-template-default page page-id-17 wp-embed-responsive wp-theme-kadence footer-on-bottom hide-focus-outline link-style-standard no-header no-footer content-title-style-hide content-width-fullwidth content-style-boxed content-vertical-padding-show non-transparent-header mobile-non-transparent-header\">\n<div id=\"wrapper\" class=\"site wp-site-blocks\">\n\t\t\t<a class=\"skip-link screen-reader-text scroll-ignore\" href=\"#main\">Skip to content</a>\n\t\t<!-- [element-21] -->\n<p></p>\n\n\n\n<style>\n.header-menu {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 20px;\n}\n</style>\n<div class='header-menu'>\n<p align=\"right\"><a href=\"/home/\">Home</a></p>\n<p align=\"right\"><a href=\"/blog/\">Blog</a></p>\n<p align=\"right\"><a href=\"../contents.html\"><font size=\"-1\">Table of Contents</font></a>\n<p align=right><a href=\"../RecentChanges.html\"><font size=-1>Recent Changes</font></a>\n<p align=\"right\"><a href=\"../cranRepository.html\">CRAN-style repository for Omegahat packages</a>\n</div>\n<!-- [/element-21] -->\n\t<main id=\"inner-wrap\" class=\"wrap kt-clear\" role=\"main\">\n\t\t<div id=\"primary\" class=\"content-area\">\n\t<div class=\"content-container site-container\">\n\t\t<div id=\"main\" class=\"site-main\">\n\t\t\t\t\t\t<div class=\"content-wrap\">\n\t\t\t\t<article id=\"post-17\" class=\"entry content-bg single-entry post-17 page type-page status-publish hentry\">\n\t<div class=\"entry-content-wrap\">\n\t\t\n<div class=\"entry-content single-content\">\n\t\n<center><h1><a name=\"toc1\">The Omega Project for Statistical Computing</a></h1></center>\n\n<h2>Recently Updated packages</h2>\n<div style=\"padding-left: 50pt; padding-right: 50pt;\">\n<div style=\"background-color: lightgray;\">\n<p>\n These can (typically) be download from the package-specific site\nwhich is <i>http://www.omegahat.net/<package name></i>,\ne.g.\n <b>http://www.omegahat.net/RGraphicsDevice</b>\n<p>\nAlternatively, you can download any package (and its previous versions) from the R repository on this site\n<center>\n<code>http://www.omegahat.net/R</code>\n</center>\nand specifically\n<center>\n<code><a href=\"/../../R/src/contrib\">http://www.omegahat.net/R/src/contrib</a></code>\n</center>\nOne can use this repository from within R via\n<pre class=\"scode\">\n install.packages(packageName, repos = \"http://www.omegahat.net/R\")\n</pre>\n\nFor some packages, there are binaries for Windows.\nFor most others, you will need to specify to download the source package:\n<pre class=\"scode\">\n install.packages(packageName, repos = \"http://www.omegahat.net/R\"<b>, type = \"source\"</b>)\n</pre>\n</p>\n</p></div>\n</div>\n<center>\n<table border=\"1\">\n<title>Omegahat Packages for R</title>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RFirefox\">RFirefox</a></th><th>\n This embeds R within the Firefox Web browser and allows \n JavaScript code to call R functions and evaluate R expressions.\n It also allows R functions and code to access JavaScript objects\n and methods and so be used as event handlers and to generate dynamic content within\n a Web page. (Gabe Becker and Duncan Temple Lang)\n </th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RKML\">RKML</a></th><th>(Version 0.1-0) updates to RKML\n and <a href=\"../RKML/JSM2011/README.html\">annotated examples</a> presented at the JSM 2011 in the\n session <a href=\"http://www.amstat.org/meetings/jsm/2011/onlineprogram/ActivityDetails.cfm?SessionID=206267\" target=\"_blank\" rel=\"noopener\">Statistical Graphics in Climate Research</a>.\n </th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RGoogleStorage\">RGoogleStorage</a></th><th>(Version 0.1-0) a package to interface\nGoogle’s storage API from within R, to upload and download data.\n </th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../REuPathDB\">REuPathDB</a></th><th>(Version 1.0-0) a package to interface\nthe EuPathDB (Eukaryotic Pathogen Database Resources) Web Services\nvia their REST API. This is machine generated code derived from\nthe WADL files describing the Web service methods. \n </th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../WADL\">WADL</a></th><th>(Version 0.2-0) a package that can\nprogrammatically generate R code to interface REST Web Services\nthat are described by a WADL (Web Application Description Language)\ndocument, e.g. the EuPathDB.\n </th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RExcelXML\">RExcelXML</a>\n</th><th>Enhancements for reading XLSX files. See also the xlsx package by Adrian Dragulescu.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RGoogleDocs\">RGoogleDocs</a></th><th>update for RGoogleDocs\nto enhance uploadDoc() and deleteDoc() and subsetting worksheet references, among other things.\n </th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../REuPathDB\">REuPathDB</a></th><th>a package to interface\nthe EuPathDB (Eukaryotic Pathogen Database Resources) Web Services\nvia their REST API. This is machine generated code derived from\nthe WADL files describing the Web service methods. \n </th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../WADL\">WADL</a></th><th>a package that can\nprogrammatically generate R code to interface REST Web Services\nthat are described by a WADL (Web Application Description Language)\ndocument, e.g. the EuPathDB.\n </th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../SpiderMonkey\">SpiderMonkey</a></th><th>a package that maps allows R programmers to call\nJavaScript functions and methods from R and to evaluate JavaScript scripts.\nThis is useful for running JavaScript code that might be of use in R,\nbut also for manipulating Web documents displayed in a Web browser\nwhen R is embedded in the browser as an extension. This is possible\nwith an updated version of the RFirefox package to be released very soon.\n </th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../ROpenOffice\">ROpenOffice</a></th><th>update for\nreading OpenOffice spreadsheets directly in R via the XML\ncontent in the .ods files.\n </th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../GeoIP\">GeoIP</a></th><th>a package that maps IP addressess and \n host names to geographic locations – latitude, longitude, region, city, zip code, ….\n This package is built via RGCCTUFFI to provide dynamic access to existing native code.\n In addition to the basic functions provided by the C library, the package provides a function\n for finding the nearest CRAN mirror.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RGCCTUFFI\">RGCCTUFFI</a></th><th>a package that programmatically\ngenerates Rffi-based dynamic interfaces to native C routines and data structures\nwithout very much human intervention. (You have to call the main function in the package!)</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RAutoGenRunTime\">RAutoGenRunTime</a></th><th>run-time support for\nprogrammatically generated code via RGCCTranslationUnit and RGCCTUFFI.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../Rffi\">Rffi</a></th><th>an interface to libffi for invoking\n arbitrary compiled routines from R without the need for writing and compiling\n wrapper code. Instead, one can describe the routine’s input and output types in R\n and Rffi does the marshalling to invoke the routine and return the value.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RGCCTranslationUnit\">RGCCTranslationUnit</a></th><th>functionality to read C/C++ code and to generate\nbindings to those routines, classes and data structures.</th></tr>\n<tr align=\"left\"><th><a href=\"../XMLRPC\">XMLRPC</a></th><th>Bug fix release thanks to Paul Shannon.</th></tr>\n<tr align=\"left\"><th><a href=\"../RCurl\">RCurl</a></th><th>Bug fix for ftpUpload(), found by Spencer Graves.</th></tr>\n<tr align=\"left\"><th><a href=\"../RKML/GoogleEarth\">Google Earth plugin and R</a></th><th>Examples for embedding\n Google Earth in a Web page and using an R plot (in SVG) to\n interact with the Google Earth plugin. </th></tr>\n<tr align=\"left\"><th><a href=\"../RWordpress\">RWordpress</a></th><th>Facilities for\n interacting with a blog site.</th></tr>\n<tr align=\"left\"><th><a href=\"../XMLRPC\">XMLRPC</a></th><th>Update to\n the XMLRPC package for remote procedure calls via HTTP and XML.</th></tr>\n<tr align=\"left\"><th><a href=\"../RKMLDevice\">RKMLDevice</a></th><th>R\n graphics device (pure R code) for drawing R plots in KML for\n display on Google Earth.</th></tr>\n<tr align=\"left\"><th><a href=\"../RKML\">RKML</a></th><th>Updated</th></tr>\n<tr align=\"left\"><th><a href=\"../RHTMLForms\">RHTMLForms</a></th><th>Updated</th></tr>\n<tr align=\"left\"><th><a href=\"../RFreetype\">RFreetype</a></th><th>A package to read font\n files,\n\te.g. True Type Font files (.ttf files),\n and to retrieve font metric information. This can be used\n by graphics devices (written in R with <a href=\"../RGraphicsDevice\">RGraphicsDevice</a>)\n to do computations on strings to determine their sizes.</th>\n<tr align=\"left\"><th><a href=\"../RGoogleTrends\">RGoogleTrends</a></th><th>Interface to query\n and download Google trends data.</th>\n<tr align=\"left\"><th><a href=\"../RTidyHTML\">RTidyHTML</a></th><th>Interface to libtidy for\n cleaning up HTML documents to be well-formed</th>\n<tr align=\"left\"><th><a href=\"../RNYTimes\">RNYTimes</a></th><th>Interface to several New York Times Web services</th>\n<tr align=\"left\"><th>\n\tREST-related packages\n\t</th>\n<th>\n The following are examples of implementing interfaces\n to REST APIs as an R client:\n <ul>\n<li> <a href=\"../RGoogleDocs\">RGoogleDocs</a>\n<li> <a href=\"../Zillow\">Zillow</a>\n<li> <a href=\"../RAmazonS3\">RAmazonS3</a>\n<li> <a href=\"../RAmazonDBREST\">RAmazonDBREST</a>\n<li> <a href=\"../Rflickr\">Rflickr</a>\n<li> <a href=\"../RNYTimes\">RNYTimes</a>\n<li> <a href=\"http://cran.r-project.org/web/packages/twitteR/index.html\" target=\"_blank\" rel=\"noopener\">twitteR\n by Jeff Gentry</a>\n<li> <a href=\"http://cran.r-project.org/web/packages/RLastFM/index.html\" target=\"_blank\" rel=\"noopener\">\n\t RLastFM by Greg Hirson</a>\n</li></li></li></li></li></li></li></li></ul>\n\n Related infrastructure packages include\n <ul>\n<li> <a href=\"../RCurl\">RCurl</a>\n<li> <a href=\"../XML\">XML</a>\n<li> <a href=\"../RJSONIO\">RJSONIO</a>\n<li> <a href=\"http://cran.r-project.org/web/packages/rjson/index.html\" target=\"_blank\" rel=\"noopener\">rjson</a>\n</li></li></li></li></ul>\n</th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RAmazonDBREST\">RAmazonDBREST</a>\n</th><th>A REST-based interface to Amazon’s SimpleDB service\n\tfor hosting databases and facilitating creating databases,\n\tadding and deleting content, and making queries.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RDocbook\">RDocbook</a>\n</th><th>Code for working with R and Docbook documents.\n\t These are external facilities (from R) such as\n\t Emacs bindings and shell scripts that facilitate authoring\n\tand processing Docbook documents with R code.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../XMLRPC\">XMLRPC</a>\n</th><th>A package that provides basic XML-RPC client\n\tfacilities for accessing remote methods in XML-RPC\n\tservers.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RExcelXML\">RExcelXML</a>\n</th><th>Facilities for working with .xlsx documents,\n\ti.e. Excel 2007.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RUbigraph\">RUbigraph</a>\n</th><th>A package that provides an interface to Ubigraph,\n\t an Open GL application for rendering interactive graphs\n\t(node & edges). The connection is via XML-RPC.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RKML\">RKML</a>\n</th><th>A package that provides high-level functions\n\tfor creating KML displays for Google Earth from within R,\n\t using spatial temporal data.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../R2GoogleMaps\">R2GoogleMaps</a>\n</th><th>A package that allows R programmers to create HTML\n\tand JavaScript code to display content via Google Maps in a\n\tWeb Browser</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RJavaScript\">RJavaScript</a>\n</th><th>A package that converts R code to JavaScript to help\n\tcreating JavaScript content for Web pages, Flash applications,\n\tSVG displays, …</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RAmazonS3\">RAmazonS3</a>\n</th><th>Package that allows R programmers to interact with\n\tAmazon’s S3 storage server, uploading and downloading and\n\tgenerally managing files.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RRuby\">RRuby</a>\n</th><th>Package that allows R programmers to call Ruby from R</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../Rcrypt\">Rcrypt</a>\n</th><th>Interface to the crypt C routine for encrypting passwords.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RGraphicsDevice\">RGraphicsDevice</a>\n</th><th>Package that allows R programmers to implement R graphics devices entirely within R code</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../FlashMXML\">FlashMXML</a>\n</th><th>a prototype of an R graphics device that generates Flash/Flex content.</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../XMLSchema\">XMLSchema</a>\n</th><th>A package for reading and processing XML schema in R</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../SSOAP\">SSOAP</a>\n</th><th>A package for R client-side access to SOAP-based Web services </th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../RSXML\">XML</a>\n</th>\n<th>Numerous updates for parsing and generating XML content. </th>\n</tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../RCurl\">RCurl</a>\n</th>\n<th>Updates for new versions of libcurl and the many new options.</th>\n</tr>\n<tr align=\"left\"><th><a href=\"../Rcompression/index.html\">Rcompression package</a>\n</th><th> Interface to zlib and bzip2 libraries for performing in-memory compression and decompression\n in R. This is useful when receiving or sending contents to remote servers, e.g. Web services, HTTP requests via RCurl.\n</th></tr>\n<tr align=\"left\"><th><a href=\"../Sxslt/index.html\">Sxslt package</a>\n</th><th>Updates to the bi-directional interface between R and\n\tlibxslt.\n In particular, the use of XSLT from within R is greatly\n\tenhanced with much greater control of registering functions, \n parameters, etc.\n</th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../RSJava\">SJava</a>\n</th>\n<th>\n Bug fixes and new features for converters.\n And removed the dependency on an old version of ANTLR.\n </th>\n</tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../Rexif\">Rexif</a>\n</th>\n<th>\n An R package for reading camera information\n and other meta-data from images taken with digital cameras.\n </th>\n</tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../CGIwithR\">CGIwithR</a>\n</th>\n<th>\n Extensions to David Firth’s original CGIwithR package.\n I am now maintaining that package after David’s \n good work.\n </th>\n</tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../Aspell\">Aspell</a>\n</th>\n<th>\n An interface to the GNU aspell library for checking\n the spelling of words and entire documents.\n </th>\n</tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../RDCOMEvents\">RDCOMEvents</a>\n</th>\n<th>\n This package provides a facility to listen for DCOM events\n from applications such as Excel and Word and others and to \n process them with R functions.\n </th>\n</tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/>\n<a href=\"/../../Combinations\">Combinations</a>\n</th>\n<th>\n This package is used for generating the combinations for choosing r\n items from a set of n items but does it in C code.\n When n gets large, the package provides a mechanism for dealing with each combination\n as it is generated so that one does not have to hold the entire collection around\n and operate on them after creating the entire collection.\n This makes computations feasible for very large numbers of combinations. It does not \n necessarily make them fast!\n The package is also a good example of the basics of calling R functions from C code.\n It also illustrates aspects of adapting code for a stand-alone application to be used within\n an interactive language like R/S-Plus, Python, Perl or Matlab/Octave.\n </th>\n</tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../RMatlab\">RMatlab</a>\n</th>\n<th>\n An interface between R and Matlab.\n One can call R functions from Matlab code,\n and Matlab functions from R code\n using the syntax of the local programming language.\n </th>\n</tr>\n<tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/>\n<a href=\"/../../RCurl\">RCurl</a>\n</th>\n<th>\n A package for performing HTTP requests\n using the C-level cURL library.\n This is a very flexible, customizable way to\n handle HTTP-based communications from within R\n in a higher-level and more extensive way than\n is directly available via socket connections.\n This is used by the <a href=\"/../../SSOAP\">SSOAP\n package</a>\n and a forthcoming package for HTML form submissions.\n </th>\n</tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../Rstem\">Rstem</a>\n</th>\n<th>\n A package for performing word stemming\n for use in text analysis.\n This is an interface to Martin Porter’s\n <a href=\"http://snowball.tartarus.org\" target=\"_blank\" rel=\"noopener\">Snowball</a>\n generated C code for performing\n stemming. The package has\n support for several languages\n and is exensible.\n </th>\n</tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../IDocs\">IDocs</a>\n</th>\n<th>\n An experimental package for interactive documents\n created in XML and rendered using\n viewHtml in <a href=\"RGtkViewers\">RGtkViewers</a>.\n This connects the different plugins in a document\n and across documents using nested environments and\n a stack that pushes and pops environments as they\n are entered and exited.\n </th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../OmegahatXSL\">XSL files\n\tfor Omegahat</a>\n</th>\n<th>\n This is a collection of support XSL, DTD and CSS files\n for Omegahat. The suite allows thefiles to be used via <i>catalogs</i>.\n </th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../SASXML\">SASXML</a>\n</th>\n<th>\n An experimental package for reading XML data in\n the Open Information Model (OIM) format,\n e.g. SAS XML files.\n This might be generalized to have functionality\n for reading PMML (Predictive Model Markup Language).\n </th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../RDCOMServer\">RDCOMServer</a>\n</th>\n<th>\n A rich, extensible and flexible mechanism for defining\n and implementing COM classes and objects\n entirely within the S language.\n This allows one to make S functions and objects\n accessible to other applications and programming languages\n without people having to know the S language.\n This provids not just access to the R evaluator, but\n arbitrary S objects.\n </th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../RDCOMClient\">RDCOMClient</a>\n</th>\n<th>\n A mechanism that allows S users to create and use COM objects\n directly within an R session.\n </th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../RGnomePrint\">RGnomePrint</a>\n</th>\n<th>\n An R interface to libgnomeprint, the Gnome printing library that\n provides facilities for controlling printing from Gtk widgets,\n previewing, and generating Postscript, Windows metafiles (and\n potentially PDF.)\n </th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../GccTranslationUnit\">GccTranslationUnit</a>\n</th>\n<th>\n A Python module for obtaining reflectance information from C/C++\n source code. This can be used to programmatically generate S bindings\n to arbitrary routines, classes and data structures\n in native code and also build the registration\n table for routines to be accessed from R.\n We can also use this to compute on C/C++ code,\n e.g. determining call graphs, free variables. \n </th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../SWinTypeLibs\">SWinTypeLibs</a>\n</th>\n<th>\n Facilities for reading type information from DLLs, type\n libraries or (D)COM objects directly in R.\n This can be used to programmatically generate interfaces\n to C/C++ code.\n </th></tr>\n<tr>\n<tr align=\"left\"><th>\n<a href=\"/../../SWinRegistry\">SWinRegistry</a>\n</th>\n<th>\n Read and write access to the Windows registry.\n For Windows platform only.\n </th></tr>\n<tr>\n<tr align=\"left\"><th><a href=\"../RGtkExtra/index.html\">S language binding\n\tto the gtk+extra library.\n\t</a>\n</th><th>\n\t Access to the widgets in the gtk+extra library,\n\t i.e. the data-grid/sheet display,\n\t directory list, icon list and file list.\n\t</th></tr>\n<tr>\n<tr align=\"left\"><th><a href=\"../RGdkPixbuf/index.html\">S language binding\n\tto the Gdk pixbuf library.\n\t</a>\n</th><th>\n\t Access to the Pixbuf library for reading\n\t images into R to be used in RGtk\n\t and associated packages.\n\t</th></tr>\n<tr>\n<tr align=\"left\"><th><a href=\"../RGtkGlade/index.html\">S language binding\n\tto the Glade library.\n\t</a>\n</th><th>\n\t S language facilities for instantiating\n\t GUIs constructed interactively via the\n\t glade GUI builder.\n\t This can register S functions or expressions, or C routines specified\n\t as callbacks in the glade interface.\n\t</th></tr>\n<tr>\n<tr align=\"left\"><th><a href=\"../REventLoop/index.html\">\n\tA plugin event-loop for R.\n\t</a>\n</th><th>\n A facility that allows one to dynamically\n\t specify a new event loop to use within\n\t an R session. This allows one to use\n\t Gtk or Tk event loop\n\t to drive R. One can write methods\n\t for other toolkits such as Carbon, Qt, etc.\n\t</th></tr>\n<tr>\n<tr align=\"left\"><th><a href=\"../RGtkBindingGenerator/index.html\">S language binding\n\tgenerator for Gtk-based libraries.\n\t</a>\n</th><th>A package that creates S and C code to\n\tinterface to arbitrary Gtk-based C libraries and Gtk classes\n\t such as Gtk itself, Zvt, gtk+-extra, gtkhtml, embedded\n\t Mozilla, etc.\n\t</th></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RSXML/index.html\">R/SPlus XML Parsing\n\tpackage</a>\n</th><th>Parse and create XML documents within the S\n\t language.</th></tr>\n<tr align=\"left\"><th><a href=\"../RGtk/index.html\">RGtk package </a>\n</th><th>Bindings for programming GUIs using Gtk and extended\n\t widget sets.</th></tr>\n<tr align=\"left\"><th><a href=\"../RXLisp/index.html\">An R-XLisp\n\tinterface </a>\n</th><th>Interface between R and XLisp allowing R code to call\n\t XLisp functions.</th></tr>\n<tr align=\"left\"><th><a href=\"../RObjectTables/index.html\">RObjectTables\n\tpackage </a>\n</th><th>Framework for user-defined search path elements,\n\t alternative automatic serialization, \n\t external variables, etc.</th></tr>\n<tr align=\"left\"><th><a href=\"../RGtkViewers/index.html\">RGtkViewers package</a>\n</th><th>A collection of GUI tools for viewing different\n\t information, built using RGtk.</th></tr>\n<tr align=\"left\"><th><a href=\"../RSMethods/index.html\">RSMethods</a></th>\n<th>Formal S classes and methods for R.</th>\n<tr></tr>\n<tr align=\"left\"><th><img decoding=\"async\" src=\"Images/new.jpg\"/><a href=\"../RSPython/index.html\">RSPython</a></th>\n<th>a bi-directional interface allowing calling\n R functions from Python code and accessing Python\n objects, classes and functions from R sessions.</th></tr>\n<tr align=\"left\"><th><a href=\"../RSPerl/index.html\">RSPerl</a></th>\n<th>a bi-directional interface allowing calling\n R functions from Perl code and accessing Perl\n objects, classes and routies from R sessions.</th></tr>\n<tr align=\"left\"><th><a href=\"../RGnumeric/index.html\">RGnumeric</a></th>\n<th>an R plugin for Gnumeric that allows Gnumeric\n\tusers to call R functions from within a spreadsheet,\n\tand for R programmers to access Gnumeric sheets\n\tand their contents from within R functions.</th>\n</tr>\n<tr align=\"left\"><th><a href=\"../SXalan\">R embedded in Xalan, the XSL\n translator</a></th><th>Use R to generate output in and control\n\t transformation of XML documents using XSL functions</th></tr>\n<tr align=\"left\"><th><a href=\"../SNetscape\">R Plugin for\n Netscape</a></th><th>\n\t A plugin for Netscape that allows one to call R from\n\t JavaScript and JavaScript from R.\n\t </th></tr>\n</tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></tr></table>\n</center>\n\nThese are just some of a <a href=\"../download/R/packages\">complete collection of Omegahat packages for R and S-Plus</a>.\n \n<center><h3>\n</h3></center>\n<hr width=\"50%\"/>\n\nOmega is a joint project with the goal of providing a variety of\n<a href=\"../License.html\">open-source</a> software for statistical\napplications.\nThe Omega project began in July, 1998, with discussions among\ndesigners responsible for three current statistical languages (S, R,\nand Lisp-Stat), with the idea of working together on new directions\nwith special emphasis on web-based software, Java, the Java\nvirtual machine, and distributed computing.\nWe encourage participation by anyone wanting to extend\ncomputing capabilities in one of the existing languages, to those\ninterested in distributed or web-based statistical software, and to\nthose interested in the design of new statistical languages.\n<p>\nSoftware is being developed for the project; we refer to it as the <font class=\"Omegahat\">omegahat</font> software, to emphasize in typical\nstatistical terminology that we are starting on a process of\napproximating the ideal software through many iterations, among other\n<a href=\"../Name.html\">reasons</a>.\n<p>\n\nFollow the pointers below to find out more about the omegahat software.\n<ul>\n<li> <a href=\"#Levels\">Organization of the Software.</a>\n<li> <a href=\"#Documentation\">Documentation. </a>\n<li>\n<a href=\"/../../mailman/listinfo\">Mailing Lists.</a>.\n<li> <a href=\"../download/index.html\">Source & Binary\n Distributions.</a>\n<li><a href=\"#Related\">Related Software.</a>\n<p>\n</p></li></li></li></li></li></ul>\n<p>\n<h2><a href=\"../philosophy.html\">Philosophy</a></h2>\n<h2><a name=\"Related\">Related Software</a></h2><p>\nSome of the many areas in which Java packages may be of value to statistics\ninclude:\n<ul>\n<li>the JDBC database connectivity software, providing a general interface to database\nsystems, extended by some facilities typically needed in\nstatistical applications;\n<li> numerical computations for linear algebra (e.g.,\nwork is currently proceeding on two Java matrix\nand linear algebra packages called\n<a href=\"http://math.nist.gov/javanumerics/jama/\" target=\"_blank\" rel=\"noopener\">JAMA</a>\n and\n<a href=\"http://nicewww.cern.ch/~hoschek/colt/index.htm\" target=\"_blank\" rel=\"noopener\">COLT</a>\n);\n<li>processing and analysis of images—can we combine\ncomputational techniques with the flexibility of graphics\nand user interface tools in Java;\n<li>graphics—possible new models for statistical graphics;\n<li>dynamic reporting — the Java packages supporting \n<a href=\"http://www.w3.org/XML\" target=\"_blank\" rel=\"noopener\">XML</a>, lightweight components\n(<a href=\"http://www.javasoft.com/products/jfc/tsc/index.html\" target=\"_blank\" rel=\"noopener\">Swing/Java Foundation Classes</a>), HTML viewers\nand network-distributed computations make the Omega\nenvironment useful for generating reports with live objects.\n</li></li></li></li></li></ul>\nIn many of these areas, there have been questions about the speed\nattainable by Java. Investigating such questions is part of what we\nwant to do.\n\n<h2><a name=\"toc3\">Policy</a></h2>\n<p>\nSpecific goals and procedures are still being developed, but the current\npolicy includes the following.\n<ul>\n<li>The code developed will be created and offered as open-source\nsoftware, under a <a href=\"../License.html\">public license</a> similar to the licenses used for\nLinux, Netscape, and R.\n<li>Contributions are encouraged in the form of software compatible\nwith the three-level structure shown above. This includes but is not restricted\nto: Java packages; software in other languages, if it can be structured as a module\ndefined in CORBA; software for the interactive languages built in\nOmega.\n<li>We anticipate organizing software into layers, including at\nleast two: a general contributed software layer and a central layer for\ncore Omega facilities.\n<li>We have established a number of\n<a href=\"/../../mailman/listinfo/\">mailing\nlists</a> for exchange of ideas. These include lists for general\ndiscussion, for Omega packages, for interactive languages using\nOmega, and for technical issues about Omega itself.\n</li></li></li></li></ul>\n<p>\n<h2><a name=\"toc4\">Membership</a></h2>\n<p>\nThe current core group of Omega developers includes:\n<center>\n<table border=\"1\">\n<tr>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.stat.wisc.edu/~bates/\" target=\"_blank\" rel=\"noopener\">Douglas Bates</a></font></th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://cm.bell-labs.com/stat/jmc/\" target=\"_blank\" rel=\"noopener\">John Chambers</a></font> </th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.public.iastate.edu/~dicook\" target=\"_blank\" rel=\"noopener\">Di Cook</a></font> </th>\n</tr>\n<tr>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.biostat.ku.dk/~pd\" target=\"_blank\" rel=\"noopener\">Peter Dalgaard</a></font></th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.stat.auckland.ac.nz/rgentlem/rgentlem.html\" target=\"_blank\" rel=\"noopener\">Robert Gentleman</a></font> </th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.ci.tuwien.ac.at/~hornik/\" target=\"_blank\" rel=\"noopener\">Kurt Hornik</a></font></th>\n</tr>\n<tr>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.stat.auckland.ac.nz/PEOPLE/ihaka/rihaka.html\" target=\"_blank\" rel=\"noopener\">Ross Ihaka</a></font> </th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.ci.tuwien.ac.at/~leisch/\" target=\"_blank\" rel=\"noopener\">Friedrich Leisch</a></font> </th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.biostat.washington.edu/~thomas/\" target=\"_blank\" rel=\"noopener\">Thomas Lumley</a></font></th>\n<tr>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://stat.ethz.ch/~maechler/\" target=\"_blank\" rel=\"noopener\">Martin Mächler</a></font></th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://sirio.stat.unipd.it/\" target=\"_blank\" rel=\"noopener\">Guido Masarotto</a></font></th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.stat.auckland.ac.nz/PEOPLE/paul/paul.shtml\" target=\"_blank\" rel=\"noopener\">Paul Murrell</a></font></th>\n</tr>\n<tr>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www-stat.stanford.edu/~naras/\" target=\"_blank\" rel=\"noopener\">Balasubramanian Narasimhan</a></font></th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.stats.ox.ac.uk/~ripley/\" target=\"_blank\" rel=\"noopener\">Brian Ripley</a></font></th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.statlab.uni-heidelberg.de/people/sawitzki/\" target=\"_blank\" rel=\"noopener\">Günther Sawitzki</a></font></th>\n</tr>\n<tr>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.stat.ucdavis.edu/~duncan/\" target=\"_blank\" rel=\"noopener\">Duncan Temple Lang</a></font></th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://stat.umn.edu/~luke/\" target=\"_blank\" rel=\"noopener\">Luke Tierney</a></font> </th>\n<th align=\"left\"><font size=\"-1\"><a href=\"http://www.cmis.csiro.au/bill.venables/\" target=\"_blank\" rel=\"noopener\">Bill Venables</a></font></th>\n</tr>\n</tr></table>\n</center>\n<p>\nParticipation in the general and special-purpose software work of the\nOmega project is open to anyone interested in our goals.\nThe <a href=\"/../../mailman/listinfo/\">mailing\nlists</a> are a good place to start; in particular\n<a name=\"NWD1\"></a>\n<a href=\"/cdn-cgi/l/email-protection#412e2c2426206c252437242d012e2c2426202920356f2f2435\"><span class=\"__cf_email__\" data-cfemail=\"0966646c6e68246d6c7f6c654966646c6e6861687d27676c7d\">[email protected]</span></a>\nis a list for discussion of the general development of software\nfor the project.\nThe success of the Omega project is highly dependent on the\ninvolvement of a wide range of participants in many different areas.\nWe can all benefit.\n<p>\n\n</p></p></p></p></p></p></p></p></p></p></p></p><script data-cfasync=\"false\" src=\"/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js\"></script></body> </html>\n\n\n\n<h2 class=\"kt-adv-heading17_b659ae-8f wp-block-kadence-advancedheading\" data-kb-block=\"kb-adv-heading17_b659ae-8f\">Blog articles</h2>\n\n\n<div class=\"kb-row-layout-wrap kb-row-layout-id17_84928d-96 alignnone wp-block-kadence-rowlayout\"><div class=\"kt-row-column-wrap kt-has-1-columns kt-row-layout-equal kt-tab-layout-inherit kt-mobile-layout-row kt-row-valign-top\">\n\n<div class=\"wp-block-kadence-column kadence-column17_476431-f4\"><div class=\"kt-inside-inner-col\"><div class=\"wp-block-kadence-query wp-block-kadence-query17_da18d8-f8 kadence-query-init kb-query-basic-style animation-overlay kb-query wp-block-kadence-query\" data-id=\"44\" data-infinite-scroll=\"\">\n<style>.wp-block-kadence-query-card17_9b2677-5a.wp-block-kadence-query-card .kb-query-grid-wrap{grid-template-columns:repeat(1, 1fr);row-gap:var(--global-kb-gap-md, 2rem);column-gap:var(--global-kb-gap-md, 2rem);}.wp-block-kadence-query-card17_9b2677-5a .kb-query-grid-wrap .kb-query-item.kb-query-block-post{background:normal;}.wp-block-kadence-query-card17_9b2677-5a .kb-query-grid-wrap .kb-query-item.kb-query-block-post:hover{background:normal;}@media all and (max-width: 767px){.wp-block-kadence-query-card17_9b2677-5a.wp-block-kadence-query-card .kb-query-grid-wrap{grid-template-columns:repeat(, 1fr);}}</style><div class=\"wp-block-kadence-query-card17_9b2677-5a wp-block-kadence-query-card\" data-max-num-pages=\"0\"><div class=\"overlay\"></div><ul class=\"kb-query-grid-wrap\"></ul></div>\n<input type='hidden' name='44_query_exclude_post_id' value='17' /></div></div></div>\n\n</div></div>\n\n\n<p></p>\n</div><!-- .entry-content -->\n\t</div>\n</article><!-- #post-17 -->\n\n\t\t\t</div>\n\t\t\t\t\t</div><!-- #main -->\n\t\t\t</div>\n</div><!-- #primary -->\n\t</main><!-- #inner-wrap -->\n\t<!-- [element-23] -->\n<h2>The Omega Project Umbrella</h2>\n\nAs well as developing software ourselves,\nthe project also hopes to support other development efforts.\nTo this end, Doug Bates has generously allowed his machine to be used\nfor distributing code for different projects.\nThese projects include.\n<ul>\n<li>RS-DBI: Database connectivity for both R and S.</li>\n</ul>\n<!-- [/element-23] --></div><!-- #wrapper -->\n\n\t\t\t<script>document.documentElement.style.setProperty('--scrollbar-offset', window.innerWidth - document.documentElement.clientWidth + 'px' );</script>\n\t\t\t<script type=\"speculationrules\">\n{\"prefetch\":[{\"source\":\"document\",\"where\":{\"and\":[{\"href_matches\":\"/*\"},{\"not\":{\"href_matches\":[\"/wp-*.php\",\"/wp-admin/*\",\"/wp-content/uploads/*\",\"/wp-content/*\",\"/wp-content/plugins/*\",\"/wp-content/themes/kadence/*\",\"/*\\?(.+)\"]}},{\"not\":{\"selector_matches\":\"a[rel~=\\\"nofollow\\\"]\"}},{\"not\":{\"selector_matches\":\".no-prefetch, .no-prefetch a\"}}]},\"eagerness\":\"conservative\"}]}\n</script>\n<script id=\"kadence-navigation-js-extra\">\nvar kadenceConfig = {\"screenReader\":{\"expand\":\"Child menu\",\"expandOf\":\"Child menu of\",\"collapse\":\"Child menu\",\"collapseOf\":\"Child menu of\"},\"breakPoints\":{\"desktop\":\"1024\",\"tablet\":768},\"scrollOffset\":\"0\"};\n//# sourceURL=kadence-navigation-js-extra\n</script>\n<script src=\"https://omegahat.net/wp-content/themes/kadence/assets/js/navigation.min.js?ver=1.4.5\" id=\"kadence-navigation-js\" async></script>\n<script id=\"kadence-blocks-query-js-extra\">\nvar kbp_query_loop_rest_endpoint = {\"url\":\"https://omegahat.net/wp-json/wp/v2/kadence_query/query\"};\n//# sourceURL=kadence-blocks-query-js-extra\n</script>\n<script src=\"https://omegahat.net/wp-content/plugins/kadence-blocks-pro/dist/query.js?ver=2.4.5\" id=\"kadence-blocks-query-js\"></script>\n<script id=\"wp-emoji-settings\" type=\"application/json\">\n{\"baseUrl\":\"https://s.w.org/images/core/emoji/17.0.2/72x72/\",\"ext\":\".png\",\"svgUrl\":\"https://s.w.org/images/core/emoji/17.0.2/svg/\",\"svgExt\":\".svg\",\"source\":{\"concatemoji\":\"https://omegahat.net/wp-includes/js/wp-emoji-release.min.js?ver=6.9.4\"}}\n</script>\n<script type=\"module\">\n/*! This file is auto-generated */\nconst a=JSON.parse(document.getElementById(\"wp-emoji-settings\").textContent),o=(window._wpemojiSettings=a,\"wpEmojiSettingsSupports\"),s=[\"flag\",\"emoji\"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const a=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===a[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,a){switch(t){case\"flag\":return n(e,\"\xed\xa0\xbc\xed\xbf\xb3️⚧️\",\"\xed\xa0\xbc\xed\xbf\xb3️⚧️\")?!1:!n(e,\"\xed\xa0\xbc\xed\xb7\xa8\xed\xa0\xbc\xed\xb7\xb6\",\"\xed\xa0\xbc\xed\xb7\xa8\xed\xa0\xbc\xed\xb7\xb6\")&&!n(e,\"\xed\xa0\xbc\xed\xbf\xb4\xed\xad\x80\xed\xb1\xa7\xed\xad\x80\xed\xb1\xa2\xed\xad\x80\xed\xb1\xa5\xed\xad\x80\xed\xb1\xae\xed\xad\x80\xed\xb1\xa7\xed\xad\x80\xed\xb1\xbf\",\"\xed\xa0\xbc\xed\xbf\xb4\xed\xad\x80\xed\xb1\xa7\xed\xad\x80\xed\xb1\xa2\xed\xad\x80\xed\xb1\xa5\xed\xad\x80\xed\xb1\xae\xed\xad\x80\xed\xb1\xa7\xed\xad\x80\xed\xb1\xbf\");case\"emoji\":return!a(e,\"\xed\xa0\xbeᾬ8\")}return!1}function f(e,t,n,a){let r;const o=(r=\"undefined\"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement(\"canvas\")).getContext(\"2d\",{willReadFrequently:!0}),s=(o.textBaseline=\"top\",o.font=\"600 32px Arial\",{});return e.forEach(e=>{s[e]=t(o,e,n,a)}),s}function r(e){var t=document.createElement(\"script\");t.src=e,t.defer=!0,document.head.appendChild(t)}a.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if(\"object\"==typeof e&&\"number\"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&\"object\"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if(\"undefined\"!=typeof Worker&&\"undefined\"!=typeof OffscreenCanvas&&\"undefined\"!=typeof URL&&URL.createObjectURL&&\"undefined\"!=typeof Blob)try{var e=\"postMessage(\"+f.toString()+\"(\"+[JSON.stringify(s),u.toString(),c.toString(),p.toString()].join(\",\")+\"));\",a=new Blob([e],{type:\"text/javascript\"});const r=new Worker(URL.createObjectURL(a),{name:\"wpTestEmojiSupports\"});return void(r.onmessage=e=>{i(n=e.data),r.terminate(),t(n)})}catch(e){}i(n=f(s,u,c,p))}t(n)}).then(e=>{for(const n in e)a.supports[n]=e[n],a.supports.everything=a.supports.everything&&a.supports[n],\"flag\"!==n&&(a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&a.supports[n]);var t;a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&!a.supports.flag,a.supports.everything||((t=a.source||{}).concatemoji?r(t.concatemoji):t.wpemoji&&t.twemoji&&(r(t.twemoji),r(t.wpemoji)))});\n//# sourceURL=https://omegahat.net/wp-includes/js/wp-emoji-loader.min.js\n</script>\n</body>\n</html>\n"
>
>
>
> # Arrange to read the header of the response from the HTTP server as
> # a separate "stream". Then we can break it into name-value
> # pairs. (The first line is the HTTP/1.1 200 Ok or 301 Moved Permanently
> # status line)
> if(omegahatExists) withAutoprint({
+ h = basicTextGatherer()
+ txt = getURL("https://www.omegahat.net/RCurl/index.html",
+ header= TRUE, headerfunction = h$update,
+ httpheader = c(Accept="text/html", Test=1), verbose = TRUE)
+ print(paste(h$value(NULL)[-1], collapse=""))
+ con <- textConnection(paste(h$value(NULL)[-1], collapse=""))
+ read.dcf(con)
+ close(con)
+ })
> h = basicTextGatherer()
> txt = getURL("https://www.omegahat.net/RCurl/index.html", header = TRUE,
+ headerfunction = h$update, httpheader = c(Accept = "text/html", Test = 1), verbose = TRUE)
* Host www.omegahat.net:443 was resolved.
* IPv6: 2606:4700:3036::ac43:da54, 2606:4700:3033::6815:186a
* IPv4: 172.67.218.84, 104.21.24.106
* Trying [2606:4700:3036::ac43:da54]:443...
* Immediate connect fail for 2606:4700:3036::ac43:da54: Network is unreachable
* Trying [2606:4700:3033::6815:186a]:443...
* Immediate connect fail for 2606:4700:3033::6815:186a: Network is unreachable
* Trying 172.67.218.84:443...
* ALPN: curl offers h2,http/1.1
* CAfile: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
* CApath: none
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=omegahat.net
* start date: May 12 18:07:29 2026 GMT
* expire date: Aug 10 18:07:28 2026 GMT
* subjectAltName: host "www.omegahat.net" matched cert's "*.omegahat.net"
* issuer: C=US; O=Let's Encrypt; CN=E7
* SSL certificate verify ok.
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using ecdsa-with-SHA384
* Certificate level 1: Public key type EC/secp384r1 (384/192 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Connected to www.omegahat.net (172.67.218.84) port 443
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://www.omegahat.net/RCurl/index.html
* [HTTP/2] [1] [:method: GET]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: www.omegahat.net]
* [HTTP/2] [1] [:path: /RCurl/index.html]
* [HTTP/2] [1] [accept: text/html]
* [HTTP/2] [1] [test: 1]
> GET /RCurl/index.html HTTP/2
Host: www.omegahat.net
Accept: text/html
Test: 1
* Request completely sent off
< HTTP/2 200
< date: Sat, 16 May 2026 19:35:52 GMT
< content-type: text/html
< last-modified: Wed, 13 May 2026 07:46:26 GMT
< nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
< cache-control: no-cache, no-store, must-revalidate
< expires: 0
< vary: Accept-Encoding
< report-to: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=vogsMuT1uZaDhqavl7FNmRnD1rbVvtMBIQWXPlJ1ItVojP4REFJBByLGFYS8zutFXCSb2qb%2BUfTKBt8CtlBupWBpgAe0vKkA4%2FvAJ7ymRzuEN9eJq8GKr%2B8J%2FG3YLDSXe%2BvR"}]}
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< pragma: no-cache
< server: cloudflare
< cf-cache-status: DYNAMIC
< cf-ray: 9fccd3f51d3a2d0d-LHR
< alt-svc: h3=":443"; ma=86400
<
* Connection #0 to host www.omegahat.net left intact
> print(paste(h$value(NULL)[-1], collapse = ""))
[1] "date: Sat, 16 May 2026 19:35:52 GMT\r\ncontent-type: text/html\r\nlast-modified: Wed, 13 May 2026 07:46:26 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncache-control: no-cache, no-store, must-revalidate\r\nexpires: 0\r\nvary: Accept-Encoding\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=vogsMuT1uZaDhqavl7FNmRnD1rbVvtMBIQWXPlJ1ItVojP4REFJBByLGFYS8zutFXCSb2qb%2BUfTKBt8CtlBupWBpgAe0vKkA4%2FvAJ7ymRzuEN9eJq8GKr%2B8J%2FG3YLDSXe%2BvR\"}]}\r\nhost-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==\r\npragma: no-cache\r\nserver: cloudflare\r\ncf-cache-status: DYNAMIC\r\ncf-ray: 9fccd3f51d3a2d0d-LHR\r\nalt-svc: h3=\":443\"; ma=86400\r\n\r\n"
> con <- textConnection(paste(h$value(NULL)[-1], collapse = ""))
> read.dcf(con)
date content-type
[1,] "Sat, 16 May 2026 19:35:52 GMT" "text/html"
last-modified
[1,] "Wed, 13 May 2026 07:46:26 GMT"
nel
[1,] "{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"
cache-control expires vary
[1,] "no-cache, no-store, must-revalidate" "0" "Accept-Encoding"
report-to
[1,] "{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=vogsMuT1uZaDhqavl7FNmRnD1rbVvtMBIQWXPlJ1ItVojP4REFJBByLGFYS8zutFXCSb2qb%2BUfTKBt8CtlBupWBpgAe0vKkA4%2FvAJ7ymRzuEN9eJq8GKr%2B8J%2FG3YLDSXe%2BvR\"}]}"
host-header pragma server cf-cache-status
[1,] "c2hhcmVkLmJsdWVob3N0LmNvbQ==" "no-cache" "cloudflare" "DYNAMIC"
cf-ray alt-svc
[1,] "9fccd3f51d3a2d0d-LHR" "h3=\":443\"; ma=86400"
> close(con)
>
>
>
> # Test the passwords.
> if(omegahatExists) withAutoprint({
+ x = getURL("https://www.omegahat.net/RCurl/testPassword/index.html", userpwd = "bob:duncantl")
+
+ # Catch an error because no authorization
+ # We catch the generic HTTPError, but we could catch the more specific "Unauthorized" error
+ # type.
+ x = tryCatch(getURLContent("https://www.omegahat.net/RCurl/testPassword/index.html"),
+ HTTPError = function(e) {
+ cat("HTTP error: ", e$message, "\n")
+ })
+ })
> x = getURL("https://www.omegahat.net/RCurl/testPassword/index.html", userpwd = "bob:duncantl")
* Host www.omegahat.net:443 was resolved.
* IPv6: 2606:4700:3036::ac43:da54, 2606:4700:3033::6815:186a
* IPv4: 104.21.24.106, 172.67.218.84
* Trying [2606:4700:3036::ac43:da54]:443...
* Immediate connect fail for 2606:4700:3036::ac43:da54: Network is unreachable
* Trying [2606:4700:3033::6815:186a]:443...
* Immediate connect fail for 2606:4700:3033::6815:186a: Network is unreachable
* Trying 104.21.24.106:443...
* ALPN: curl offers h2,http/1.1
* CAfile: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
* CApath: none
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=omegahat.net
* start date: May 12 18:07:29 2026 GMT
* expire date: Aug 10 18:07:28 2026 GMT
* subjectAltName: host "www.omegahat.net" matched cert's "*.omegahat.net"
* issuer: C=US; O=Let's Encrypt; CN=E7
* SSL certificate verify ok.
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using ecdsa-with-SHA384
* Certificate level 1: Public key type EC/secp384r1 (384/192 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Connected to www.omegahat.net (104.21.24.106) port 443
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://www.omegahat.net/RCurl/testPassword/index.html
* [HTTP/2] [1] [:method: GET]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: www.omegahat.net]
* [HTTP/2] [1] [:path: /RCurl/testPassword/index.html]
* [HTTP/2] [1] [accept: */*]
> GET /RCurl/testPassword/index.html HTTP/2
Host: www.omegahat.net
Accept: */*
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:52 GMT
< content-type: text/html; charset=UTF-8
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< expires: 0
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< cache-control: no-cache, no-store, must-revalidate
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< pragma: no-cache
< server: cloudflare
< cf-cache-status: DYNAMIC
< nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
< report-to: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=O4o5C46KmiKvWO3hK6mMbe6DdObC7MYguRvBaJ%2BN1JdZ7T3DwsL35Q%2F1NYVc%2BCPFE4rIokP5AZx9IR7SL7kfL42UYyKYDldTRtt%2B5yTf1nJGkN4mMAqaJjuwgBX22%2F%2FDcnxZ"}]}
< cf-ray: 9fccd3f72adf6541-LHR
< alt-svc: h3=":443"; ma=86400
* Ignoring the response-body
<
* Connection #0 to host www.omegahat.net left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Host nxv.kue.mybluehost.me:443 was resolved.
* IPv6: (none)
* IPv4: 129.121.81.73
* Trying 129.121.81.73:443...
* ALPN: curl offers h2,http/1.1
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / RSASSA-PSS
* ALPN: server accepted h2
* Server certificate:
* subject: CN=webmail.nxv.kue.mybluehost.me
* start date: Apr 28 00:34:56 2026 GMT
* expire date: Jul 27 00:34:55 2026 GMT
* subjectAltName: host "nxv.kue.mybluehost.me" matched cert's "nxv.kue.mybluehost.me"
* issuer: C=US; O=Let's Encrypt; CN=R12
* SSL certificate verify ok.
* Certificate level 0: Public key type RSA (2048/112 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 1: Public key type RSA (2048/112 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Connected to nxv.kue.mybluehost.me (129.121.81.73) port 443
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [1] [:method: GET]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [1] [:path: /website_fb45777b]
* [HTTP/2] [1] [accept: */*]
* [HTTP/2] [1] [referer: https://www.omegahat.net/RCurl/testPassword/index.html]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://www.omegahat.net/RCurl/testPassword/index.html
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:52 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [3] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [3] [:method: GET]
* [HTTP/2] [3] [:scheme: https]
* [HTTP/2] [3] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [3] [:path: /website_fb45777b/]
* [HTTP/2] [3] [accept: */*]
* [HTTP/2] [3] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:53 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [5] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [5] [:method: GET]
* [HTTP/2] [5] [:scheme: https]
* [HTTP/2] [5] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [5] [:path: /website_fb45777b]
* [HTTP/2] [5] [accept: */*]
* [HTTP/2] [5] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:53 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [7] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [7] [:method: GET]
* [HTTP/2] [7] [:scheme: https]
* [HTTP/2] [7] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [7] [:path: /website_fb45777b/]
* [HTTP/2] [7] [accept: */*]
* [HTTP/2] [7] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:53 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [9] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [9] [:method: GET]
* [HTTP/2] [9] [:scheme: https]
* [HTTP/2] [9] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [9] [:path: /website_fb45777b]
* [HTTP/2] [9] [accept: */*]
* [HTTP/2] [9] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:53 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [11] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [11] [:method: GET]
* [HTTP/2] [11] [:scheme: https]
* [HTTP/2] [11] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [11] [:path: /website_fb45777b/]
* [HTTP/2] [11] [accept: */*]
* [HTTP/2] [11] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:53 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [13] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [13] [:method: GET]
* [HTTP/2] [13] [:scheme: https]
* [HTTP/2] [13] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [13] [:path: /website_fb45777b]
* [HTTP/2] [13] [accept: */*]
* [HTTP/2] [13] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:53 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [15] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [15] [:method: GET]
* [HTTP/2] [15] [:scheme: https]
* [HTTP/2] [15] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [15] [:path: /website_fb45777b/]
* [HTTP/2] [15] [accept: */*]
* [HTTP/2] [15] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:54 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [17] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [17] [:method: GET]
* [HTTP/2] [17] [:scheme: https]
* [HTTP/2] [17] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [17] [:path: /website_fb45777b]
* [HTTP/2] [17] [accept: */*]
* [HTTP/2] [17] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:54 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [19] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [19] [:method: GET]
* [HTTP/2] [19] [:scheme: https]
* [HTTP/2] [19] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [19] [:path: /website_fb45777b/]
* [HTTP/2] [19] [accept: */*]
* [HTTP/2] [19] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:54 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [21] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [21] [:method: GET]
* [HTTP/2] [21] [:scheme: https]
* [HTTP/2] [21] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [21] [:path: /website_fb45777b]
* [HTTP/2] [21] [accept: */*]
* [HTTP/2] [21] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:54 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [23] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [23] [:method: GET]
* [HTTP/2] [23] [:scheme: https]
* [HTTP/2] [23] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [23] [:path: /website_fb45777b/]
* [HTTP/2] [23] [accept: */*]
* [HTTP/2] [23] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:54 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [25] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [25] [:method: GET]
* [HTTP/2] [25] [:scheme: https]
* [HTTP/2] [25] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [25] [:path: /website_fb45777b]
* [HTTP/2] [25] [accept: */*]
* [HTTP/2] [25] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:54 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [27] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [27] [:method: GET]
* [HTTP/2] [27] [:scheme: https]
* [HTTP/2] [27] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [27] [:path: /website_fb45777b/]
* [HTTP/2] [27] [accept: */*]
* [HTTP/2] [27] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:55 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [29] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [29] [:method: GET]
* [HTTP/2] [29] [:scheme: https]
* [HTTP/2] [29] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [29] [:path: /website_fb45777b]
* [HTTP/2] [29] [accept: */*]
* [HTTP/2] [29] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:55 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [31] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [31] [:method: GET]
* [HTTP/2] [31] [:scheme: https]
* [HTTP/2] [31] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [31] [:path: /website_fb45777b/]
* [HTTP/2] [31] [accept: */*]
* [HTTP/2] [31] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:55 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [33] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [33] [:method: GET]
* [HTTP/2] [33] [:scheme: https]
* [HTTP/2] [33] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [33] [:path: /website_fb45777b]
* [HTTP/2] [33] [accept: */*]
* [HTTP/2] [33] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:55 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [35] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [35] [:method: GET]
* [HTTP/2] [35] [:scheme: https]
* [HTTP/2] [35] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [35] [:path: /website_fb45777b/]
* [HTTP/2] [35] [accept: */*]
* [HTTP/2] [35] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:55 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [37] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [37] [:method: GET]
* [HTTP/2] [37] [:scheme: https]
* [HTTP/2] [37] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [37] [:path: /website_fb45777b]
* [HTTP/2] [37] [accept: */*]
* [HTTP/2] [37] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:55 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [39] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [39] [:method: GET]
* [HTTP/2] [39] [:scheme: https]
* [HTTP/2] [39] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [39] [:path: /website_fb45777b/]
* [HTTP/2] [39] [accept: */*]
* [HTTP/2] [39] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:56 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [41] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [41] [:method: GET]
* [HTTP/2] [41] [:scheme: https]
* [HTTP/2] [41] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [41] [:path: /website_fb45777b]
* [HTTP/2] [41] [accept: */*]
* [HTTP/2] [41] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:56 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [43] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [43] [:method: GET]
* [HTTP/2] [43] [:scheme: https]
* [HTTP/2] [43] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [43] [:path: /website_fb45777b/]
* [HTTP/2] [43] [accept: */*]
* [HTTP/2] [43] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:56 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [45] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [45] [:method: GET]
* [HTTP/2] [45] [:scheme: https]
* [HTTP/2] [45] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [45] [:path: /website_fb45777b]
* [HTTP/2] [45] [accept: */*]
* [HTTP/2] [45] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:56 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [47] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [47] [:method: GET]
* [HTTP/2] [47] [:scheme: https]
* [HTTP/2] [47] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [47] [:path: /website_fb45777b/]
* [HTTP/2] [47] [accept: */*]
* [HTTP/2] [47] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:56 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [49] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [49] [:method: GET]
* [HTTP/2] [49] [:scheme: https]
* [HTTP/2] [49] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [49] [:path: /website_fb45777b]
* [HTTP/2] [49] [accept: */*]
* [HTTP/2] [49] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:56 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [51] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [51] [:method: GET]
* [HTTP/2] [51] [:scheme: https]
* [HTTP/2] [51] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [51] [:path: /website_fb45777b/]
* [HTTP/2] [51] [accept: */*]
* [HTTP/2] [51] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:57 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [53] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [53] [:method: GET]
* [HTTP/2] [53] [:scheme: https]
* [HTTP/2] [53] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [53] [:path: /website_fb45777b]
* [HTTP/2] [53] [accept: */*]
* [HTTP/2] [53] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:57 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [55] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [55] [:method: GET]
* [HTTP/2] [55] [:scheme: https]
* [HTTP/2] [55] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [55] [:path: /website_fb45777b/]
* [HTTP/2] [55] [accept: */*]
* [HTTP/2] [55] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:57 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [57] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b
* [HTTP/2] [57] [:method: GET]
* [HTTP/2] [57] [:scheme: https]
* [HTTP/2] [57] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [57] [:path: /website_fb45777b]
* [HTTP/2] [57] [accept: */*]
* [HTTP/2] [57] [referer: https://nxv.kue.mybluehost.me/website_fb45777b/]
> GET /website_fb45777b HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b/
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:57 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=iso-8859-1
< content-length: 295
< location: https://nxv.kue.mybluehost.me/website_fb45777b/
< cache-control: max-age=7200
< expires: Sat, 16 May 2026 21:32:28 GMT
< x-server-cache: true
< x-proxy-cache: HIT
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Issue another request to this URL: 'https://nxv.kue.mybluehost.me/website_fb45777b/'
* Re-using existing connection with host nxv.kue.mybluehost.me
* [HTTP/2] [59] OPENED stream for https://nxv.kue.mybluehost.me/website_fb45777b/
* [HTTP/2] [59] [:method: GET]
* [HTTP/2] [59] [:scheme: https]
* [HTTP/2] [59] [:authority: nxv.kue.mybluehost.me]
* [HTTP/2] [59] [:path: /website_fb45777b/]
* [HTTP/2] [59] [accept: */*]
* [HTTP/2] [59] [referer: https://nxv.kue.mybluehost.me/website_fb45777b]
> GET /website_fb45777b/ HTTP/2
Host: nxv.kue.mybluehost.me
Accept: */*
Referer: https://nxv.kue.mybluehost.me/website_fb45777b
* Request completely sent off
< HTTP/2 301
< date: Sat, 16 May 2026 19:35:57 GMT
< server: nginx/1.27.2
< content-type: text/html; charset=UTF-8
< content-length: 0
< expires: Wed, 11 Jan 1984 05:00:00 GMT
< cache-control: no-cache, must-revalidate, max-age=0, no-store, private
< location: https://nxv.kue.mybluehost.me/website_fb45777b
< host-header: c2hhcmVkLmJsdWVob3N0LmNvbQ==
< cache-control: no-cache, no-store, must-revalidate
< pragma: no-cache
< x-server-cache: true
< x-proxy-cache: MISS
* Ignoring the response-body
* setting size while ignoring
<
* Connection #1 to host nxv.kue.mybluehost.me left intact
* Maximum (30) redirects followed
Error in (function (type, msg, asError = TRUE) :
Maximum (30) redirects followed
Calls: withAutoprint ... eval -> getURL -> curlPerform -> <Anonymous> -> fun
Execution halted
Flavor: r-devel-linux-x86_64-fedora-clang
Version: 1.98-1.18
Check: examples
Result: ERROR
Running examples in ‘RCurl-Ex.R’ failed
The error most likely occurred in:
> base::assign(".ptime", proc.time(), pos = "CheckExEnv")
> ### Name: curlSetOpt
> ### Title: Set values for the CURL options
> ### Aliases: curlSetOpt
> ### Keywords: IO
>
> ### ** Examples
>
> if(url.exists("https://www.omegahat.net")) {
+
+ curl = getCurlHandle()
+ # Note the header that extends across two lines with the second line
+ # prefixed with white space.
+ curlSetOpt( .opts = list(httpheader = c(Date = "Wed, 1/2/2000 10:01:01",
+ foo="abc\n extra line"), verbose = TRUE),
+ curl = curl)
+ ans = getURL("https://www.omegahat.net", curl = curl)
+ }
* Host www.omegahat.net:443 was resolved.
* IPv6: 2a06:98c1:3120::a, 2a06:98c1:3121::a
* IPv4: 188.114.96.10, 188.114.97.10
* Trying [2a06:98c1:3120::a]:443...
* Immediate connect fail for 2a06:98c1:3120::a: Network is unreachable
* connect to 2a06:98c1:3120::a port 443 from :: port 0 failed: Success
* Trying 188.114.96.10:443...
* GnuTLS priority: NORMAL:%PROFILE_MEDIUM:-ARCFOUR-128:-CTYPE-ALL:+CTYPE-X509:-VERS-SSL3.0:-VERS-TLS-ALL:+VERS-TLS1.3:+VERS-TLS1.2
* ALPN: curl offers h2,http/1.1
* SSL Trust Anchors:
* CAfile: 144 certificates in /etc/ssl/certs/ca-certificates.crt
* CApath: 435 certificates in /etc/ssl/certs
* SSL connection using TLS1.3 / ECDHE_RSA_AES_256_GCM_SHA384
* SSL certificate verified by GnuTLS
* SSL certificate expiration date OK
* SSL certificate activation date OK
* SSL certificate status verification SKIPPED
* common name: omegahat.net (matched)
* certificate public key: EC/ECDSA
* certificate version: #3
* subject: CN=omegahat.net
* start date: Tue, 12 May 2026 18:07:29 GMT
* expire date: Mon, 10 Aug 2026 18:07:28 GMT
* issuer: C=US,O=Let's Encrypt,CN=E7
* ALPN: server accepted h2
* Established connection to www.omegahat.net (188.114.96.10 port 443) from 137.208.57.142 port 36484
* using HTTP/2
* Connection #0 to host www.omegahat.net:443 left intact
Error in (function (type, msg, asError = TRUE) :
Calls: getURL -> curlPerform -> <Anonymous> -> fun
Execution halted
Examples with CPU (user + system) or elapsed time > 5s
user system elapsed
binaryBuffer 0.146 0.008 5.928
Flavor: r-release-linux-x86_64