Most everything is optional. Performance can drop dramatically if you choose to exclude data points. The more data you send Akismet about each comment, the greater the accuracy. They recommend erring on the side of including too much data.
If you are sending content to Akismet to be rechecked, such as a post that has been edited or old pending comments that you'd like to recheck, include this parameter with a string describing why the content is being rechecked.
In PHP, there is an array of environmental variables called $_SERVER that contains information about the Web server itself as well as a key/value for every HTTP header sent with the request. This data is highly useful to Akismet.
If you are sending content to Akismet to be rechecked, such as a post that has been edited or old pending comments that you'd like to recheck, include this parameter with a string describing why the content is being rechecked.
In PHP, there is an array of environmental variables called $_SERVER that contains information about the Web server itself as well as a key/value for every HTTP header sent with the request. This data is highly useful to Akismet.
How the submitted content interacts with the server can be very telling, so please include as much of it as possible.
This is the call you will make the most. It takes a number of arguments and characteristics about the submitted content and then returns a thumbs up or thumbs down. Performance can drop dramatically if you choose to exclude data points. The more data you send Akismet about each comment, the greater the accuracy. They recommend erring on the side of including too much data
By default, if an error (IO, empty response from Akismet, etc.) occurs the function will return false and log the error, use the trueOnError parameter to change this behavior.
Set to true if Akismet has determined that the last checked comment is blatant spam, and you can safely discard it without saving it in any spam queue.
Set to true if Akismet has determined that the last checked comment is blatant spam, and you can safely discard it without saving it in any spam queue.
The x-akismet-pro-tip header from the last operation, if any.
If the x-akismet-pro-tip header is set to discard, then Akismet has determined that the comment is blatant spam, and you can safely discard it without saving it in any spam queue.
This call is intended for the submission of false positives - items that were incorrectly classified as spam by Akismet. It takes identical arguments as comment check and submit spam.
It is very important that the values you submit with this call match those of your comment check calls as closely as possible. In order to learn from its mistakes, Akismet needs to match your missed spam and false positive reports to the original comment-check API calls made when the content was first posted. While it is normal for less information to be available for submit-spam and submit-ham calls (most comment systems and forums will not store all metadata), you should ensure that the values that you do send match those of the original content.
This call is for submitting comments that weren't marked as spam but should have been.
It is very important that the values you submit with this call match those of your comment check calls as closely as possible. In order to learn from its mistakes, Akismet needs to match your missed spam and false positive reports to the original comment-check API calls made when the content was first posted. While it is normal for less information to be available for submit-spam and submit-ham calls (most comment systems and forums will not store all metadata), you should ensure that the values that you do send match those of the original content.
Key verification authenticates your key before calling the comment check, submit spam, or submit ham methods. This is the first call that you should make to Akismet and is especially useful if you will have multiple users with their own Akismet subscriptions using your application.
+
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-a-d-m-i-n_-r-o-l-e.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-a-d-m-i-n_-r-o-l-e.md
deleted file mode 100644
index a567a6d..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-a-d-m-i-n_-r-o-l-e.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [ADMIN_ROLE](./-a-d-m-i-n_-r-o-l-e.md)
-
-# ADMIN_ROLE
-
-`const val ADMIN_ROLE: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L93)
-
-Administrator role. If used, Akismet will always return false.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-init-.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-init-.md
deleted file mode 100644
index 82e489b..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-init-.md
+++ /dev/null
@@ -1,36 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [<init>](./-init-.md)
-
-# <init>
-
-`AkismetComment(request: `[`HttpServletRequest`](https://javaee.github.io/javaee-spec/javadocs/javax/servlet/http/HttpServletRequest.html)`)`
-
-Create an Akismet comment extracting the [userIp](user-ip.md), [userAgent](user-agent.md), [referrer](referrer.md) and [serverEnv](server-env.md) environment variables
-from a Servlet request.
-
-See the
-[Akismet API](https://akismet.com/development/api/#comment-check) for more details.
-
-**See Also**
-
-[serverEnv](server-env.md)
-
-`AkismetComment(userIp: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, userAgent: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`)`
-
-Create an Akismet comment instance.
-
-See the [Akismet API](https://akismet.com/development/api/#comment-check) for more details.
-
-### Parameters
-
-`userIp` - IP address of the comment submitter.
-
-`userAgent` - User agent string of the web browser submitting the comment.
-
-**Constructor**
-
-Create an Akismet comment instance.
-
-
-
-See the [Akismet API](https://akismet.com/development/api/#comment-check) for more details.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-b-l-o-g_-p-o-s-t.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-b-l-o-g_-p-o-s-t.md
deleted file mode 100644
index b93f825..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-b-l-o-g_-p-o-s-t.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_BLOG_POST](./-t-y-p-e_-b-l-o-g_-p-o-s-t.md)
-
-# TYPE_BLOG_POST
-
-`const val TYPE_BLOG_POST: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L72)
-
-A blog post.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-c-o-m-m-e-n-t.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-c-o-m-m-e-n-t.md
deleted file mode 100644
index 84c1dc5..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-c-o-m-m-e-n-t.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_COMMENT](./-t-y-p-e_-c-o-m-m-e-n-t.md)
-
-# TYPE_COMMENT
-
-`const val TYPE_COMMENT: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L63)
-
-A blog comment.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-c-o-n-t-a-c-t_-f-o-r-m.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-c-o-n-t-a-c-t_-f-o-r-m.md
deleted file mode 100644
index 3b10983..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-c-o-n-t-a-c-t_-f-o-r-m.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_CONTACT_FORM](./-t-y-p-e_-c-o-n-t-a-c-t_-f-o-r-m.md)
-
-# TYPE_CONTACT_FORM
-
-`const val TYPE_CONTACT_FORM: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L75)
-
-A contact form or feedback form submission.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-f-o-r-u-m_-p-o-s-t.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-f-o-r-u-m_-p-o-s-t.md
deleted file mode 100644
index 13f7b30..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-f-o-r-u-m_-p-o-s-t.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_FORUM_POST](./-t-y-p-e_-f-o-r-u-m_-p-o-s-t.md)
-
-# TYPE_FORUM_POST
-
-`const val TYPE_FORUM_POST: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L66)
-
-A top-level forum post.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-m-e-s-s-a-g-e.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-m-e-s-s-a-g-e.md
deleted file mode 100644
index 120bd77..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-m-e-s-s-a-g-e.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_MESSAGE](./-t-y-p-e_-m-e-s-s-a-g-e.md)
-
-# TYPE_MESSAGE
-
-`const val TYPE_MESSAGE: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L81)
-
-A message sent between just a few users.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-p-i-n-g-b-a-c-k.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-p-i-n-g-b-a-c-k.md
deleted file mode 100644
index a4fed1b..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-p-i-n-g-b-a-c-k.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_PINGBACK](./-t-y-p-e_-p-i-n-g-b-a-c-k.md)
-
-# TYPE_PINGBACK
-
-`const val TYPE_PINGBACK: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L84)
-
-A pingback.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-r-e-p-l-y.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-r-e-p-l-y.md
deleted file mode 100644
index c135cbd..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-r-e-p-l-y.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_REPLY](./-t-y-p-e_-r-e-p-l-y.md)
-
-# TYPE_REPLY
-
-`const val TYPE_REPLY: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L69)
-
-A reply to a top-level forum post.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-s-i-g-n-u-p.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-s-i-g-n-u-p.md
deleted file mode 100644
index 4238737..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-s-i-g-n-u-p.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_SIGNUP](./-t-y-p-e_-s-i-g-n-u-p.md)
-
-# TYPE_SIGNUP
-
-`const val TYPE_SIGNUP: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L78)
-
-A new user account.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-t-r-a-c-k-b-a-c-k.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-t-r-a-c-k-b-a-c-k.md
deleted file mode 100644
index 8643403..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-t-r-a-c-k-b-a-c-k.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_TRACKBACK](./-t-y-p-e_-t-r-a-c-k-b-a-c-k.md)
-
-# TYPE_TRACKBACK
-
-`const val TYPE_TRACKBACK: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L87)
-
-A trackback.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-t-w-e-e-t.md b/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-t-w-e-e-t.md
deleted file mode 100644
index e831c8e..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/-t-y-p-e_-t-w-e-e-t.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [TYPE_TWEET](./-t-y-p-e_-t-w-e-e-t.md)
-
-# TYPE_TWEET
-
-`const val TYPE_TWEET: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L90)
-
-A Twitter message.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/author-email.md b/docs/net.thauvin.erik.akismet/-akismet-comment/author-email.md
deleted file mode 100644
index ff71cc6..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/author-email.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [authorEmail](./author-email.md)
-
-# authorEmail
-
-`var authorEmail: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L138)
-
-Email address submitted with the comment.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/author-url.md b/docs/net.thauvin.erik.akismet/-akismet-comment/author-url.md
deleted file mode 100644
index 7aac7ad..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/author-url.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [authorUrl](./author-url.md)
-
-# authorUrl
-
-`var authorUrl: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L144)
-
-URL submitted with comment.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/author.md b/docs/net.thauvin.erik.akismet/-akismet-comment/author.md
deleted file mode 100644
index 47d105a..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/author.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [author](./author.md)
-
-# author
-
-`var author: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L132)
-
-Name submitted with the comment.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/blog-charset.md b/docs/net.thauvin.erik.akismet/-akismet-comment/blog-charset.md
deleted file mode 100644
index 3fafe04..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/blog-charset.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [blogCharset](./blog-charset.md)
-
-# blogCharset
-
-`var blogCharset: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L190)
-
-The character encoding for the form values included in comment parameters, such as UTF-8 or ISO-8859-1
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/blog-lang.md b/docs/net.thauvin.erik.akismet/-akismet-comment/blog-lang.md
deleted file mode 100644
index e04e4fc..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/blog-lang.md
+++ /dev/null
@@ -1,10 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [blogLang](./blog-lang.md)
-
-# blogLang
-
-`var blogLang: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L182)
-
-Indicates the language(s) in use on the blog or site, in ISO 639-1 format, comma-separated.
-
-A site with articles in English and French might use: `en, fr_ca`
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/content.md b/docs/net.thauvin.erik.akismet/-akismet-comment/content.md
deleted file mode 100644
index d6c5450..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/content.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [content](./content.md)
-
-# content
-
-`var content: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L150)
-
-The content that was submitted.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/date-gmt.md b/docs/net.thauvin.erik.akismet/-akismet-comment/date-gmt.md
deleted file mode 100644
index afe199e..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/date-gmt.md
+++ /dev/null
@@ -1,14 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [dateGmt](./date-gmt.md)
-
-# dateGmt
-
-`var dateGmt: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L162)
-
-The UTC timestamp of the creation of the comment, in ISO 8601 format.
-
-May be omitted if the comment is sent to the API at the time it is created.
-
-**See Also**
-
-[Akismet.dateToGmt](../-akismet/date-to-gmt.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/equals.md b/docs/net.thauvin.erik.akismet/-akismet-comment/equals.md
deleted file mode 100644
index 2c62689..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/equals.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [equals](./equals.md)
-
-# equals
-
-`open fun equals(other: `[`Any`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)`?): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L269)
-
-Indicates whether some other object is *equal to* this one.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/hash-code.md b/docs/net.thauvin.erik.akismet/-akismet-comment/hash-code.md
deleted file mode 100644
index a0621ad..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/hash-code.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [hashCode](./hash-code.md)
-
-# hashCode
-
-`open fun hashCode(): `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L300)
-
-Returns a hash code value for the object.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/index.md b/docs/net.thauvin.erik.akismet/-akismet-comment/index.md
deleted file mode 100644
index 4653a84..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/index.md
+++ /dev/null
@@ -1,66 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](./index.md)
-
-# AkismetComment
-
-`open class AkismetComment` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L59)
-
-A comment to send to Akismet.
-
-Most everything is optional. Performance can drop dramatically if you choose to exclude data points. The more data
-you send Akismet about each comment, the greater the accuracy. They recommend erring on the side of including
-too much data.
-
-See the [Akismet API](https://akismet.com/development/api/#comment-check) for more details.
-
-### Constructors
-
-| Name | Summary |
-|---|---|
-| [<init>](-init-.md) | Create an Akismet comment extracting the [userIp](user-ip.md), [userAgent](user-agent.md), [referrer](referrer.md) and [serverEnv](server-env.md) environment variables from a Servlet request.`AkismetComment(request: `[`HttpServletRequest`](https://javaee.github.io/javaee-spec/javadocs/javax/servlet/http/HttpServletRequest.html)`)` Create an Akismet comment instance.`AkismetComment(userIp: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, userAgent: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`)` |
-
-### Properties
-
-| Name | Summary |
-|---|---|
-| [author](author.md) | Name submitted with the comment.`var author: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [authorEmail](author-email.md) | Email address submitted with the comment.`var authorEmail: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [authorUrl](author-url.md) | URL submitted with comment.`var authorUrl: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [blogCharset](blog-charset.md) | The character encoding for the form values included in comment parameters, such as UTF-8 or ISO-8859-1`var blogCharset: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [blogLang](blog-lang.md) | Indicates the language(s) in use on the blog or site, in ISO 639-1 format, comma-separated.`var blogLang: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [content](content.md) | The content that was submitted.`var content: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [dateGmt](date-gmt.md) | The UTC timestamp of the creation of the comment, in ISO 8601 format.`var dateGmt: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [isTest](is-test.md) | This is an optional parameter. You can use it when submitting test queries to Akismet.`var isTest: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [permalink](permalink.md) | The full permanent URL of the entry the comment was submitted to.`var permalink: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [postModifiedGmt](post-modified-gmt.md) | The UTC timestamp of the publication time for the post, page or thread on which the comment was posted.`var postModifiedGmt: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [recheckReason](recheck-reason.md) | If you are sending content to Akismet to be rechecked, such as a post that has been edited or old pending comments that you'd like to recheck, include this parameter with a string describing why the content is being rechecked.`var recheckReason: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [referrer](referrer.md) | The content of the referer header should be set here.`var referrer: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [serverEnv](server-env.md) | In PHP, there is an array of environmental variables called `$_SERVER` that contains information about the Web server itself as well as a key/value for every HTTP header sent with the request. This data is highly useful to Akismet.`var serverEnv: `[`Map`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html)`<`[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`>` |
-| [type](type.md) | A string that describes the type of content being sent, such as:`var type: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-| [userAgent](user-agent.md) | User agent string of the web browser submitting the comment.`val userAgent: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [userIp](user-ip.md) | IP address of the comment submitter.`val userIp: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [userRole](user-role.md) | The user role of the user who submitted the comment. This is an optional parameter.`var userRole: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` |
-
-### Functions
-
-| Name | Summary |
-|---|---|
-| [equals](equals.md) | Indicates whether some other object is *equal to* this one.`open fun equals(other: `[`Any`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)`?): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [hashCode](hash-code.md) | Returns a hash code value for the object.`open fun hashCode(): `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [toJson](to-json.md) | Returns a JSON representation of the comment.`fun toJson(): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [toString](to-string.md) | Returns a JSON representation of the comment.`open fun toString(): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-
-### Companion Object Properties
-
-| Name | Summary |
-|---|---|
-| [ADMIN_ROLE](-a-d-m-i-n_-r-o-l-e.md) | Administrator role. If used, Akismet will always return false.`const val ADMIN_ROLE: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_BLOG_POST](-t-y-p-e_-b-l-o-g_-p-o-s-t.md) | A blog post.`const val TYPE_BLOG_POST: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_COMMENT](-t-y-p-e_-c-o-m-m-e-n-t.md) | A blog comment.`const val TYPE_COMMENT: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_CONTACT_FORM](-t-y-p-e_-c-o-n-t-a-c-t_-f-o-r-m.md) | A contact form or feedback form submission.`const val TYPE_CONTACT_FORM: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_FORUM_POST](-t-y-p-e_-f-o-r-u-m_-p-o-s-t.md) | A top-level forum post.`const val TYPE_FORUM_POST: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_MESSAGE](-t-y-p-e_-m-e-s-s-a-g-e.md) | A message sent between just a few users.`const val TYPE_MESSAGE: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_PINGBACK](-t-y-p-e_-p-i-n-g-b-a-c-k.md) | A pingback.`const val TYPE_PINGBACK: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_REPLY](-t-y-p-e_-r-e-p-l-y.md) | A reply to a top-level forum post.`const val TYPE_REPLY: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_SIGNUP](-t-y-p-e_-s-i-g-n-u-p.md) | A new user account.`const val TYPE_SIGNUP: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_TRACKBACK](-t-y-p-e_-t-r-a-c-k-b-a-c-k.md) | A trackback.`const val TYPE_TRACKBACK: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [TYPE_TWEET](-t-y-p-e_-t-w-e-e-t.md) | A Twitter message.`const val TYPE_TWEET: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/is-test.md b/docs/net.thauvin.erik.akismet/-akismet-comment/is-test.md
deleted file mode 100644
index af49fb6..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/is-test.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [isTest](./is-test.md)
-
-# isTest
-
-`var isTest: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L206)
-
-This is an optional parameter. You can use it when submitting test queries to Akismet.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/permalink.md b/docs/net.thauvin.erik.akismet/-akismet-comment/permalink.md
deleted file mode 100644
index 3c36968..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/permalink.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [permalink](./permalink.md)
-
-# permalink
-
-`var permalink: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L103)
-
-The full permanent URL of the entry the comment was submitted to.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/post-modified-gmt.md b/docs/net.thauvin.erik.akismet/-akismet-comment/post-modified-gmt.md
deleted file mode 100644
index 54a9ff4..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/post-modified-gmt.md
+++ /dev/null
@@ -1,12 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [postModifiedGmt](./post-modified-gmt.md)
-
-# postModifiedGmt
-
-`var postModifiedGmt: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L172)
-
-The UTC timestamp of the publication time for the post, page or thread on which the comment was posted.
-
-**See Also**
-
-[Akismet.dateToGmt](../-akismet/date-to-gmt.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/recheck-reason.md b/docs/net.thauvin.erik.akismet/-akismet-comment/recheck-reason.md
deleted file mode 100644
index 7c1437b..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/recheck-reason.md
+++ /dev/null
@@ -1,12 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [recheckReason](./recheck-reason.md)
-
-# recheckReason
-
-`var recheckReason: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L215)
-
-If you are sending content to Akismet to be rechecked, such as a post that has been edited or old pending
-comments that you'd like to recheck, include this parameter with a string describing why the content is
-being rechecked.
-
-For example: `edit`
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/referrer.md b/docs/net.thauvin.erik.akismet/-akismet-comment/referrer.md
deleted file mode 100644
index 0eb9867..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/referrer.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [referrer](./referrer.md)
-
-# referrer
-
-`var referrer: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L97)
-
-The content of the referer header should be set here.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/server-env.md b/docs/net.thauvin.erik.akismet/-akismet-comment/server-env.md
deleted file mode 100644
index 0d7297a..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/server-env.md
+++ /dev/null
@@ -1,13 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [serverEnv](./server-env.md)
-
-# serverEnv
-
-`var serverEnv: `[`Map`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html)`<`[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`>` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L228)
-
-In PHP, there is an array of environmental variables called `$_SERVER` that contains information about the Web
-server itself as well as a key/value for every HTTP header sent with the request. This data is highly useful to
-Akismet.
-
-How the submitted content interacts with the server can be very telling, so please include as much of it as
-possible.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/to-json.md b/docs/net.thauvin.erik.akismet/-akismet-comment/to-json.md
deleted file mode 100644
index 6c2cd3b..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/to-json.md
+++ /dev/null
@@ -1,12 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [toJson](./to-json.md)
-
-# toJson
-
-`fun toJson(): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L252)
-
-Returns a JSON representation of the comment.
-
-**See Also**
-
-[Akismet.jsonComment](../-akismet/json-comment.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/to-string.md b/docs/net.thauvin.erik.akismet/-akismet-comment/to-string.md
deleted file mode 100644
index 5be0702..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/to-string.md
+++ /dev/null
@@ -1,12 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [toString](./to-string.md)
-
-# toString
-
-`open fun toString(): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L261)
-
-Returns a JSON representation of the comment.
-
-**See Also**
-
-[Akismet.jsonComment](../-akismet/json-comment.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/type.md b/docs/net.thauvin.erik.akismet/-akismet-comment/type.md
deleted file mode 100644
index f91a68e..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/type.md
+++ /dev/null
@@ -1,23 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [type](./type.md)
-
-# type
-
-`var type: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L126)
-
-A string that describes the type of content being sent, such as:
-
-* [TYPE_COMMENT](-t-y-p-e_-c-o-m-m-e-n-t.md)
-* [TYPE_FORUM_POST](-t-y-p-e_-f-o-r-u-m_-p-o-s-t.md)
-* [TYPE_REPLY](-t-y-p-e_-r-e-p-l-y.md)
-* [TYPE_BLOG_POST](-t-y-p-e_-b-l-o-g_-p-o-s-t.md)
-* [TYPE_CONTACT_FORM](-t-y-p-e_-c-o-n-t-a-c-t_-f-o-r-m.md)
-* [TYPE_SIGNUP](-t-y-p-e_-s-i-g-n-u-p.md)
-* [TYPE_MESSAGE](-t-y-p-e_-m-e-s-s-a-g-e.md)
-* [TYPE_PINGBACK](-t-y-p-e_-p-i-n-g-b-a-c-k.md)
-* [TYPE_TRACKBACK](-t-y-p-e_-t-r-a-c-k-b-a-c-k.md)
-* [TYPE_TWEET](-t-y-p-e_-t-w-e-e-t.md)
-
-You may send a value not listed above if none of them accurately describe your content.
-
-This is further explained [here](http://blog.akismet.com/2012/06/19/pro-tip-tell-us-your-comment_type/).
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/user-agent.md b/docs/net.thauvin.erik.akismet/-akismet-comment/user-agent.md
deleted file mode 100644
index 2f4e9d2..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/user-agent.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [userAgent](./user-agent.md)
-
-# userAgent
-
-`val userAgent: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L59)
-
-User agent string of the web browser submitting the comment.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/user-ip.md b/docs/net.thauvin.erik.akismet/-akismet-comment/user-ip.md
deleted file mode 100644
index 48d7b05..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/user-ip.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [userIp](./user-ip.md)
-
-# userIp
-
-`val userIp: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L59)
-
-IP address of the comment submitter.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet-comment/user-role.md b/docs/net.thauvin.erik.akismet/-akismet-comment/user-role.md
deleted file mode 100644
index bc4dabe..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet-comment/user-role.md
+++ /dev/null
@@ -1,10 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [AkismetComment](index.md) / [userRole](./user-role.md)
-
-# userRole
-
-`var userRole: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/AkismetComment.kt#L200)
-
-The user role of the user who submitted the comment. This is an optional parameter.
-
-If you set it to [ADMIN_ROLE](-a-d-m-i-n_-r-o-l-e.md), Akismet will always return false.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/-init-.md b/docs/net.thauvin.erik.akismet/-akismet/-init-.md
deleted file mode 100644
index 15b2f79..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/-init-.md
+++ /dev/null
@@ -1,15 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [<init>](./-init-.md)
-
-# <init>
-
-`Akismet(apiKey: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, blog: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`)`
-
-Create a new instance using an [Akismet](https://www.askimet.com/) API key and URL registered with Akismet.
-
-`Akismet(apiKey: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`)`
-
-Creates new instance using the provided [Akismet](https://www.askimet.com/) API key.
-
-**Constructor**
-Creates new instance using the provided [Akismet](https://www.askimet.com/) API key.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/app-user-agent.md b/docs/net.thauvin.erik.akismet/-akismet/app-user-agent.md
deleted file mode 100644
index 2043255..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/app-user-agent.md
+++ /dev/null
@@ -1,18 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [appUserAgent](./app-user-agent.md)
-
-# appUserAgent
-
-`var appUserAgent: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L126)
-
-The application user agent to be sent to Akismet.
-
-If possible, the application user agent string should always use the following format:
-
-```
- Application Name/Version
-```
-
-The library's own user agent string will automatically be appended.
-
-See the [Akismet API](https://akismet.com/development/api/#detailed-docs) for more details.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/blog.md b/docs/net.thauvin.erik.akismet/-akismet/blog.md
deleted file mode 100644
index d31ab8b..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/blog.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [blog](./blog.md)
-
-# blog
-
-`var blog: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L107)
-
-The URL registered with Akismet.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/check-comment.md b/docs/net.thauvin.erik.akismet/-akismet/check-comment.md
deleted file mode 100644
index 504dcda..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/check-comment.md
+++ /dev/null
@@ -1,25 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [checkComment](./check-comment.md)
-
-# checkComment
-
-`@JvmOverloads fun checkComment(comment: `[`AkismetComment`](../-akismet-comment/index.md)`, trueOnError: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = false): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L275)
-
-Comment Check.
-
-This is the call you will make the most. It takes a number of arguments and characteristics about the submitted
-content and then returns a thumbs up or thumbs down. Performance can drop dramatically if you choose to exclude
-data points. The more data you send Akismet about each comment, the greater the accuracy. They recommend erring
-on the side of including too much data
-
-By default, if an error (IO, empty response from Akismet, etc.) occurs the function will return `false` and
-log the error, use the `trueOnError` parameter to change this behavior.
-
-See the [Akismet API](https://akismet.com/development/api/#comment-check) for more details.
-
-### Parameters
-
-`trueOnError` - Set to return `true` on error.
-
-**Return**
-`true` if the comment is spam, `false` if the comment is not.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/date-to-gmt.md b/docs/net.thauvin.erik.akismet/-akismet/date-to-gmt.md
deleted file mode 100644
index 2d42959..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/date-to-gmt.md
+++ /dev/null
@@ -1,24 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [dateToGmt](./date-to-gmt.md)
-
-# dateToGmt
-
-`@JvmStatic fun dateToGmt(date: `[`Date`](https://docs.oracle.com/javase/8/docs/api/java/util/Date.html)`): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L78)
-
-Convert a date to a UTC timestamp. (ISO 8601)
-
-**See Also**
-
-[AkismetComment.dateGmt](../-akismet-comment/date-gmt.md)
-
-[AkismetComment.postModifiedGmt](../-akismet-comment/post-modified-gmt.md)
-
-`@JvmStatic fun dateToGmt(date: `[`LocalDateTime`](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html)`): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L91)
-
-Convert a locale date/time to a UTC timestamp. (ISO 8601)
-
-**See Also**
-
-[AkismetComment.dateGmt](../-akismet-comment/date-gmt.md)
-
-[AkismetComment.postModifiedGmt](../-akismet-comment/post-modified-gmt.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/debug-help.md b/docs/net.thauvin.erik.akismet/-akismet/debug-help.md
deleted file mode 100644
index f213bf0..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/debug-help.md
+++ /dev/null
@@ -1,16 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [debugHelp](./debug-help.md)
-
-# debugHelp
-
-`var debugHelp: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L199)
-
-The `x-akismet-debug-help` header from the last operation, if any.
-
-If the call returns neither `true` nor `false`, the `x-akismet-debug-help` header will provide context for any
-error that has occurred.
-
-Note that the `x-akismet-debug-help` header will not always be sent if a response does not return `false`
-or `true`.
-
-See the [Akismet API](https://akismet.com/development/api/#comment-check) for more details.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/error-message.md b/docs/net.thauvin.erik.akismet/-akismet/error-message.md
deleted file mode 100644
index f17c669..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/error-message.md
+++ /dev/null
@@ -1,14 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [errorMessage](./error-message.md)
-
-# errorMessage
-
-`var errorMessage: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L159)
-
-The error message.
-
-The error (IO, empty response from Akismet, etc.) message is also logged as a warning.
-
-**See Also**
-
-[Akismet.checkComment](check-comment.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/execute-method.md b/docs/net.thauvin.erik.akismet/-akismet/execute-method.md
deleted file mode 100644
index 667df74..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/execute-method.md
+++ /dev/null
@@ -1,15 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [executeMethod](./execute-method.md)
-
-# executeMethod
-
-`@JvmOverloads fun executeMethod(apiUrl: HttpUrl?, formBody: FormBody, trueOnError: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = false): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L329)
-
-Execute a call to an Akismet REST API method.
-
-### Parameters
-
-`apiUrl` - The Akismet API URL endpoint. (e.g. https://rest.akismet.com/1.1/verify-key)
-
-`formBody` - The HTTP POST form body containing the request parameters to be submitted.
-
-`trueOnError` - Set to return `true` on error (IO, empty response, etc.)
\ No newline at end of file
diff --git a/docs/net.thauvin.erik.akismet/-akismet/http-status-code.md b/docs/net.thauvin.erik.akismet/-akismet/http-status-code.md
deleted file mode 100644
index ec3dfbe..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/http-status-code.md
+++ /dev/null
@@ -1,8 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [httpStatusCode](./http-status-code.md)
-
-# httpStatusCode
-
-`var httpStatusCode: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L140)
-
-The [HTTP status code](https://www.restapitutorial.com/httpstatuscodes.html) of the last operation.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/index.md b/docs/net.thauvin.erik.akismet/-akismet/index.md
deleted file mode 100644
index 5ac379d..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/index.md
+++ /dev/null
@@ -1,46 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](./index.md)
-
-# Akismet
-
-`open class Akismet` [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L59)
-
-Provides access to the [Akismet API](https://akismet.com/development/api/).
-
-### Constructors
-
-| Name | Summary |
-|---|---|
-| [<init>](-init-.md) | Create a new instance using an [Akismet](https://www.askimet.com/) API key and URL registered with Akismet.`Akismet(apiKey: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, blog: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`)` Creates new instance using the provided [Akismet](https://www.askimet.com/) API key.`Akismet(apiKey: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`)` |
-
-### Properties
-
-| Name | Summary |
-|---|---|
-| [appUserAgent](app-user-agent.md) | The application user agent to be sent to Akismet.`var appUserAgent: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [blog](blog.md) | The URL registered with Akismet.`var blog: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [debugHelp](debug-help.md) | The `x-akismet-debug-help` header from the last operation, if any.`var debugHelp: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [errorMessage](error-message.md) | The error message.`var errorMessage: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [httpStatusCode](http-status-code.md) | The [HTTP status code](https://www.restapitutorial.com/httpstatuscodes.html) of the last operation.`var httpStatusCode: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [isDiscard](is-discard.md) | Set to true if Akismet has determined that the last [checked comment](check-comment.md) is blatant spam, and you can safely discard it without saving it in any spam queue.`var isDiscard: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [isVerifiedKey](is-verified-key.md) | Check if the API Key has been verified`var isVerifiedKey: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [logger](logger.md) | The logger instance.`val logger: `[`Logger`](https://docs.oracle.com/javase/8/docs/api/java/util/logging/Logger.html) |
-| [proTip](pro-tip.md) | The `x-akismet-pro-tip` header from the last operation, if any.`var proTip: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [response](response.md) | The actual response sent by Akismet from the last operation.`var response: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-
-### Functions
-
-| Name | Summary |
-|---|---|
-| [checkComment](check-comment.md) | Comment Check.`fun checkComment(comment: `[`AkismetComment`](../-akismet-comment/index.md)`, trueOnError: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = false): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [executeMethod](execute-method.md) | Execute a call to an Akismet REST API method.`fun executeMethod(apiUrl: HttpUrl?, formBody: FormBody, trueOnError: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = false): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [reset](reset.md) | Reset the [debugHelp](debug-help.md), [errorMessage](error-message.md), [httpStatusCode](http-status-code.md), [isDiscard](is-discard.md), [isVerifiedKey](is-verified-key.md), [proTip](pro-tip.md), and [response](response.md) properties.`fun reset(): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) |
-| [submitHam](submit-ham.md) | Submit Ham. (False Positives)`fun submitHam(comment: `[`AkismetComment`](../-akismet-comment/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [submitSpam](submit-spam.md) | Submit Spam. (Missed Spam)`fun submitSpam(comment: `[`AkismetComment`](../-akismet-comment/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [verifyKey](verify-key.md) | Key Verification.`fun verifyKey(): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-
-### Companion Object Functions
-
-| Name | Summary |
-|---|---|
-| [dateToGmt](date-to-gmt.md) | Convert a date to a UTC timestamp. (ISO 8601)`fun dateToGmt(date: `[`Date`](https://docs.oracle.com/javase/8/docs/api/java/util/Date.html)`): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) Convert a locale date/time to a UTC timestamp. (ISO 8601)`fun dateToGmt(date: `[`LocalDateTime`](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html)`): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [jsonComment](json-comment.md) | (Re)Create a [comment](../-akismet-comment/index.md) from a JSON string.`fun jsonComment(json: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`AkismetComment`](../-akismet-comment/index.md) |
diff --git a/docs/net.thauvin.erik.akismet/-akismet/is-discard.md b/docs/net.thauvin.erik.akismet/-akismet/is-discard.md
deleted file mode 100644
index c090ebd..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/is-discard.md
+++ /dev/null
@@ -1,15 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [isDiscard](./is-discard.md)
-
-# isDiscard
-
-`var isDiscard: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L185)
-
-Set to true if Akismet has determined that the last [checked comment](check-comment.md) is blatant spam, and you
-can safely discard it without saving it in any spam queue.
-
-See the [Akismet API](https://akismet.com/development/api/#comment-check) for more details.
-
-**See Also**
-
-[Akismet.proTip](pro-tip.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/is-verified-key.md b/docs/net.thauvin.erik.akismet/-akismet/is-verified-key.md
deleted file mode 100644
index 5f37c57..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/is-verified-key.md
+++ /dev/null
@@ -1,12 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [isVerifiedKey](./is-verified-key.md)
-
-# isVerifiedKey
-
-`var isVerifiedKey: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L133)
-
-Check if the API Key has been verified
-
-**See Also**
-
-[Akismet.verifyKey](verify-key.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/json-comment.md b/docs/net.thauvin.erik.akismet/-akismet/json-comment.md
deleted file mode 100644
index e057896..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/json-comment.md
+++ /dev/null
@@ -1,12 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [jsonComment](./json-comment.md)
-
-# jsonComment
-
-`@JvmStatic fun jsonComment(json: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`AkismetComment`](../-akismet-comment/index.md) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L67)
-
-(Re)Create a [comment](../-akismet-comment/index.md) from a JSON string.
-
-**See Also**
-
-[AkismetComment.toString](../-akismet-comment/to-string.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/logger.md b/docs/net.thauvin.erik.akismet/-akismet/logger.md
deleted file mode 100644
index 141e9ae..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/logger.md
+++ /dev/null
@@ -1,12 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [logger](./logger.md)
-
-# logger
-
-`val logger: `[`Logger`](https://docs.oracle.com/javase/8/docs/api/java/util/logging/Logger.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L205)
-
-The logger instance.
-
-**Getter**
-
-The logger instance.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/pro-tip.md b/docs/net.thauvin.erik.akismet/-akismet/pro-tip.md
deleted file mode 100644
index 2ba0339..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/pro-tip.md
+++ /dev/null
@@ -1,17 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [proTip](./pro-tip.md)
-
-# proTip
-
-`var proTip: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L173)
-
-The `x-akismet-pro-tip` header from the last operation, if any.
-
-If the `x-akismet-pro-tip` header is set to discard, then Akismet has determined that the comment is blatant
-spam, and you can safely discard it without saving it in any spam queue.
-
-See the [Akismet API](https://akismet.com/development/api/#comment-check) for more details.
-
-**See Also**
-
-[Akismet.isDiscard](is-discard.md)
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/reset.md b/docs/net.thauvin.erik.akismet/-akismet/reset.md
deleted file mode 100644
index 768d27f..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/reset.md
+++ /dev/null
@@ -1,9 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [reset](./reset.md)
-
-# reset
-
-`fun reset(): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L378)
-
-Reset the [debugHelp](debug-help.md), [errorMessage](error-message.md), [httpStatusCode](http-status-code.md), [isDiscard](is-discard.md), [isVerifiedKey](is-verified-key.md), [proTip](pro-tip.md), and
-[response](response.md) properties.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/response.md b/docs/net.thauvin.erik.akismet/-akismet/response.md
deleted file mode 100644
index f3a9b80..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/response.md
+++ /dev/null
@@ -1,10 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [response](./response.md)
-
-# response
-
-`var response: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L149)
-
-The actual response sent by Akismet from the last operation.
-
-For example: `true`, `false`, `valid`, `invalid`, etc.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/submit-ham.md b/docs/net.thauvin.erik.akismet/-akismet/submit-ham.md
deleted file mode 100644
index ba60e72..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/submit-ham.md
+++ /dev/null
@@ -1,24 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [submitHam](./submit-ham.md)
-
-# submitHam
-
-`fun submitHam(comment: `[`AkismetComment`](../-akismet-comment/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L317)
-
-Submit Ham. (False Positives)
-
-This call is intended for the submission of false positives - items that were incorrectly classified as spam by
-Akismet. It takes identical arguments as [comment check](check-comment.md) and
-[submit spam](submit-spam.md).
-
-It is very important that the values you submit with this call match those of your
-[comment check](check-comment.md) calls as closely as possible. In order to learn from its mistakes,
-Akismet needs to match your missed spam and false positive reports to the original comment-check API calls made
-when the content was first posted. While it is normal for less information to be available for submit-spam and
-submit-ham calls (most comment systems and forums will not store all metadata), you should ensure that the
-values that you do send match those of the original content.
-
-See the [Akismet API](https://akismet.com/development/api/#submit-ham) for more details.
-
-**Return**
-`true` if the comment was submitted, `false` otherwise.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/submit-spam.md b/docs/net.thauvin.erik.akismet/-akismet/submit-spam.md
deleted file mode 100644
index b71cc8c..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/submit-spam.md
+++ /dev/null
@@ -1,22 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [submitSpam](./submit-spam.md)
-
-# submitSpam
-
-`fun submitSpam(comment: `[`AkismetComment`](../-akismet-comment/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L295)
-
-Submit Spam. (Missed Spam)
-
-This call is for submitting comments that weren't marked as spam but should have been.
-
-It is very important that the values you submit with this call match those of your
-[comment check](check-comment.md) calls as closely as possible. In order to learn from its mistakes,
-Akismet needs to match your missed spam and false positive reports to the original comment-check API calls made
-when the content was first posted. While it is normal for less information to be available for submit-spam and
-submit-ham calls (most comment systems and forums will not store all metadata), you should ensure that the
-values that you do send match those of the original content.
-
-See the [Akismet API](https://akismet.com/development/api/#submit-spam) for more details.
-
-**Return**
-`true` if the comment was submitted, `false` otherwise.
-
diff --git a/docs/net.thauvin.erik.akismet/-akismet/verify-key.md b/docs/net.thauvin.erik.akismet/-akismet/verify-key.md
deleted file mode 100644
index c7b6ca2..0000000
--- a/docs/net.thauvin.erik.akismet/-akismet/verify-key.md
+++ /dev/null
@@ -1,22 +0,0 @@
-[docs](../../index.md) / [net.thauvin.erik.akismet](../index.md) / [Akismet](index.md) / [verifyKey](./verify-key.md)
-
-# verifyKey
-
-`fun verifyKey(): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) [(source)](https://github.com/ethauvin/akismet-kotlin/tree/master/src/main/kotlin/net/thauvin/erik/akismet/Akismet.kt#L249)
-
-Key Verification.
-
-Key verification authenticates your key before calling the [comment check](check-comment.md),
-[submit spam](submit-spam.md), or [submit ham](submit-ham.md) methods. This is the first call that you
-should make to Akismet and is especially useful if you will have multiple users with their own Akismet
-subscriptions using your application.
-
-See the [Akismet API](https://akismet.com/development/api/#verify-key) for more details.
-
-**Return**
-`true` if the key is valid, `false` otherwise.
-
-**See Also**
-
-[Akismet.isVerifiedKey](is-verified-key.md)
-
diff --git a/docs/net.thauvin.erik.akismet/index.md b/docs/net.thauvin.erik.akismet/index.md
deleted file mode 100644
index d8e9a22..0000000
--- a/docs/net.thauvin.erik.akismet/index.md
+++ /dev/null
@@ -1,12 +0,0 @@
-[docs](../index.md) / [net.thauvin.erik.akismet](./index.md)
-
-## Package net.thauvin.erik.akismet
-
-A Kotlin/Java library for accessing the Akismet service.
-
-### Types
-
-| Name | Summary |
-|---|---|
-| [Akismet](-akismet/index.md) | Provides access to the [Akismet API](https://akismet.com/development/api/).`open class Akismet` |
-| [AkismetComment](-akismet-comment/index.md) | A comment to send to Akismet.`open class AkismetComment` |
diff --git a/docs/package-list b/docs/package-list
deleted file mode 100644
index 5f10e95..0000000
--- a/docs/package-list
+++ /dev/null
@@ -1,4 +0,0 @@
-$dokka.format:gfm
-$dokka.linkExtension:md
-
-net.thauvin.erik.akismet
diff --git a/docs/scripts/clipboard.js b/docs/scripts/clipboard.js
new file mode 100644
index 0000000..b00ce24
--- /dev/null
+++ b/docs/scripts/clipboard.js
@@ -0,0 +1,52 @@
+window.addEventListener('load', () => {
+ document.querySelectorAll('span.copy-icon').forEach(element => {
+ element.addEventListener('click', (el) => copyElementsContentToClipboard(element));
+ })
+
+ document.querySelectorAll('span.anchor-icon').forEach(element => {
+ element.addEventListener('click', (el) => {
+ if(element.hasAttribute('pointing-to')){
+ const location = hrefWithoutCurrentlyUsedAnchor() + '#' + element.getAttribute('pointing-to')
+ copyTextToClipboard(element, location)
+ }
+ });
+ })
+})
+
+const copyElementsContentToClipboard = (element) => {
+ const selection = window.getSelection();
+ const range = document.createRange();
+ range.selectNodeContents(element.parentNode.parentNode);
+ selection.removeAllRanges();
+ selection.addRange(range);
+
+ copyAndShowPopup(element, () => selection.removeAllRanges())
+}
+
+const copyTextToClipboard = (element, text) => {
+ var textarea = document.createElement("textarea");
+ textarea.textContent = text;
+ textarea.style.position = "fixed";
+ document.body.appendChild(textarea);
+ textarea.select();
+
+ copyAndShowPopup(element, () => document.body.removeChild(textarea))
+}
+
+const copyAndShowPopup = (element, after) => {
+ try {
+ document.execCommand('copy');
+ element.nextElementSibling.classList.add('active-popup');
+ setTimeout(() => {
+ element.nextElementSibling.classList.remove('active-popup');
+ }, 1200);
+ } catch (e) {
+ console.error('Failed to write to clipboard:', e)
+ }
+ finally {
+ if(after) after()
+ }
+}
+
+const hrefWithoutCurrentlyUsedAnchor = () => window.location.href.split('#')[0]
+
diff --git a/docs/scripts/main.js b/docs/scripts/main.js
new file mode 100644
index 0000000..ca7ae01
--- /dev/null
+++ b/docs/scripts/main.js
@@ -0,0 +1,44 @@
+(()=>{var e={8527:e=>{e.exports=''},5570:e=>{e.exports=''},107:e=>{e.exports=''},7224:e=>{e.exports=''},538:e=>{e.exports=''},1924:(e,n,t)=>{"use strict";var r=t(210),o=t(5559),i=o(r("String.prototype.indexOf"));e.exports=function(e,n){var t=r(e,!!n);return"function"==typeof t&&i(e,".prototype.")>-1?o(t):t}},5559:(e,n,t)=>{"use strict";var r=t(8612),o=t(210),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),l=o("%Reflect.apply%",!0)||r.call(a,i),c=o("%Object.getOwnPropertyDescriptor%",!0),u=o("%Object.defineProperty%",!0),s=o("%Math.max%");if(u)try{u({},"a",{value:1})}catch(e){u=null}e.exports=function(e){var n=l(r,a,arguments);if(c&&u){var t=c(n,"length");t.configurable&&u(n,"length",{value:1+s(0,e.length-(arguments.length-1))})}return n};var f=function(){return l(r,i,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},4184:(e,n)=>{var t;
+/*!
+ Copyright (c) 2018 Jed Watson.
+ Licensed under the MIT License (MIT), see
+ http://jedwatson.github.io/classnames
+*/!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],n=0;n{"use strict";e.exports=function(e,n){var t=this,r=t.constructor;return t.options=Object.assign({storeInstancesGlobally:!0},n||{}),t.callbacks={},t.directMap={},t.sequenceLevels={},t.resetTimer=null,t.ignoreNextKeyup=!1,t.ignoreNextKeypress=!1,t.nextExpectedAction=!1,t.element=e,t.addEvents(),t.options.storeInstancesGlobally&&r.instances.push(t),t},e.exports.prototype.bind=t(2207),e.exports.prototype.bindMultiple=t(3396),e.exports.prototype.unbind=t(9208),e.exports.prototype.trigger=t(9855),e.exports.prototype.reset=t(6214),e.exports.prototype.stopCallback=t(3450),e.exports.prototype.handleKey=t(3067),e.exports.prototype.addEvents=t(718),e.exports.prototype.bindSingle=t(8763),e.exports.prototype.getKeyInfo=t(5825),e.exports.prototype.pickBestAction=t(8608),e.exports.prototype.getReverseMap=t(3956),e.exports.prototype.getMatches=t(3373),e.exports.prototype.resetSequences=t(3346),e.exports.prototype.fireCallback=t(2684),e.exports.prototype.bindSequence=t(7103),e.exports.prototype.resetSequenceTimer=t(7309),e.exports.prototype.detach=t(7554),e.exports.instances=[],e.exports.reset=t(1822),e.exports.REVERSE_MAP=null},718:(e,n,t)=>{"use strict";e.exports=function(){var e=this,n=t(4323),r=e.element;e.eventHandler=t(9646).bind(e),n(r,"keypress",e.eventHandler),n(r,"keydown",e.eventHandler),n(r,"keyup",e.eventHandler)}},2207:e=>{"use strict";e.exports=function(e,n,t){return e=e instanceof Array?e:[e],this.bindMultiple(e,n,t),this}},3396:e=>{"use strict";e.exports=function(e,n,t){for(var r=0;r{"use strict";e.exports=function(e,n,r,o){var i=this;function a(n){return function(){i.nextExpectedAction=n,++i.sequenceLevels[e],i.resetSequenceTimer()}}function l(n){var a;i.fireCallback(r,n,e),"keyup"!==o&&(a=t(6770),i.ignoreNextKeyup=a(n)),setTimeout((function(){i.resetSequences()}),10)}i.sequenceLevels[e]=0;for(var c=0;c{"use strict";e.exports=function(e,n,t,r,o){var i=this;i.directMap[e+":"+t]=n;var a,l=(e=e.replace(/\s+/g," ")).split(" ");l.length>1?i.bindSequence(e,l,n,t):(a=i.getKeyInfo(e,t),i.callbacks[a.key]=i.callbacks[a.key]||[],i.getMatches(a.key,a.modifiers,{type:a.action},r,e,o),i.callbacks[a.key][r?"unshift":"push"]({callback:n,modifiers:a.modifiers,action:a.action,seq:r,level:o,combo:e}))}},7554:(e,n,t)=>{var r=t(4323).off;e.exports=function(){var e=this,n=e.element;r(n,"keypress",e.eventHandler),r(n,"keydown",e.eventHandler),r(n,"keyup",e.eventHandler)}},4323:e=>{function n(e,n,t,r){return!e.addEventListener&&(n="on"+n),(e.addEventListener||e.attachEvent).call(e,n,t,r),t}e.exports=n,e.exports.on=n,e.exports.off=function(e,n,t,r){return!e.removeEventListener&&(n="on"+n),(e.removeEventListener||e.detachEvent).call(e,n,t,r),t}},2684:(e,n,t)=>{"use strict";e.exports=function(e,n,r,o){this.stopCallback(n,n.target||n.srcElement,r,o)||!1===e(n,r)&&(t(1350)(n),t(6103)(n))}},5825:(e,n,t)=>{"use strict";e.exports=function(e,n){var r,o,i,a,l,c,u=[];for(r=t(4520)(e),a=t(7549),l=t(5355),c=t(8581),i=0;i{"use strict";e.exports=function(e,n,r,o,i,a){var l,c,u,s,f=this,p=[],d=r.type;"keypress"!==d||r.code&&"Arrow"===r.code.slice(0,5)||(f.callbacks["any-character"]||[]).forEach((function(e){p.push(e)}));if(!f.callbacks[e])return p;for(u=t(8581),"keyup"===d&&u(e)&&(n=[e]),l=0;l{"use strict";e.exports=function(){var e,n=this.constructor;if(!n.REVERSE_MAP)for(var r in n.REVERSE_MAP={},e=t(4766))r>95&&r<112||e.hasOwnProperty(r)&&(n.REVERSE_MAP[e[r]]=r);return n.REVERSE_MAP}},3067:(e,n,t)=>{"use strict";e.exports=function(e,n,r){var o,i,a,l,c=this,u={},s=0,f=!1;for(o=c.getMatches(e,n,r),i=0;i{"use strict";e.exports=function(e){var n,r=this;"number"!=typeof e.which&&(e.which=e.keyCode);var o=t(6770)(e);void 0!==o&&("keyup"!==e.type||r.ignoreNextKeyup!==o?(n=t(4610),r.handleKey(o,n(e),e)):r.ignoreNextKeyup=!1)}},5532:e=>{"use strict";e.exports=function(e,n){return e.sort().join(",")===n.sort().join(",")}},8608:e=>{"use strict";e.exports=function(e,n,t){return t||(t=this.getReverseMap()[e]?"keydown":"keypress"),"keypress"===t&&n.length&&(t="keydown"),t}},6214:e=>{"use strict";e.exports=function(){return this.callbacks={},this.directMap={},this}},7309:e=>{"use strict";e.exports=function(){var e=this;clearTimeout(e.resetTimer),e.resetTimer=setTimeout((function(){e.resetSequences()}),1e3)}},3346:e=>{"use strict";e.exports=function(e){var n=this;e=e||{};var t,r=!1;for(t in n.sequenceLevels)e[t]?r=!0:n.sequenceLevels[t]=0;r||(n.nextExpectedAction=!1)}},3450:e=>{"use strict";e.exports=function(e,n){if((" "+n.className+" ").indexOf(" combokeys ")>-1)return!1;var t=n.tagName.toLowerCase();return"input"===t||"select"===t||"textarea"===t||n.isContentEditable}},9855:e=>{"use strict";e.exports=function(e,n){return this.directMap[e+":"+n]&&this.directMap[e+":"+n]({},e),this}},9208:e=>{"use strict";e.exports=function(e,n){return this.bind(e,(function(){}),n)}},1822:e=>{"use strict";e.exports=function(){this.instances.forEach((function(e){e.reset()}))}},6770:(e,n,t)=>{"use strict";e.exports=function(e){var n,r;if(n=t(4766),r=t(5295),"keypress"===e.type){var o=String.fromCharCode(e.which);return e.shiftKey||(o=o.toLowerCase()),o}return void 0!==n[e.which]?n[e.which]:void 0!==r[e.which]?r[e.which]:String.fromCharCode(e.which).toLowerCase()}},4610:e=>{"use strict";e.exports=function(e){var n=[];return e.shiftKey&&n.push("shift"),e.altKey&&n.push("alt"),e.ctrlKey&&n.push("ctrl"),e.metaKey&&n.push("meta"),n}},8581:e=>{"use strict";e.exports=function(e){return"shift"===e||"ctrl"===e||"alt"===e||"meta"===e}},4520:e=>{"use strict";e.exports=function(e){return"+"===e?["+"]:e.split("+")}},1350:e=>{"use strict";e.exports=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1}},5355:e=>{"use strict";e.exports={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"}},7549:e=>{"use strict";e.exports={option:"alt",command:"meta",return:"enter",escape:"esc",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"}},5295:e=>{"use strict";e.exports={106:"*",107:"plus",109:"minus",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}},4766:e=>{"use strict";e.exports={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",173:"minus",187:"plus",189:"minus",224:"meta"};for(var n=1;n<20;++n)e.exports[111+n]="f"+n;for(n=0;n<=9;++n)e.exports[n+96]=n},6103:e=>{"use strict";e.exports=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}},3362:()=>{var e;!function(){var e=Math.PI,n=2*e,t=e/180,r=document.createElement("div");document.head.appendChild(r);var o=self.ConicGradient=function(e){o.all.push(this),e=e||{},this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.repeating=!!e.repeating,this.size=e.size||Math.max(innerWidth,innerHeight),this.canvas.width=this.canvas.height=this.size;var n=e.stops;this.stops=(n||"").split(/\s*,(?![^(]*\))\s*/),this.from=0;for(var t=0;t0){var i=this.stops[0].clone();i.pos=0,this.stops.unshift(i)}if(void 0===this.stops[this.stops.length-1].pos)this.stops[this.stops.length-1].pos=1;else if(!this.repeating&&this.stops[this.stops.length-1].pos<1){var a=this.stops[this.stops.length-1].clone();a.pos=1,this.stops.push(a)}if(this.stops.forEach((function(e,n){if(void 0===e.pos){for(var t=n+1;this[t];t++)if(void 0!==this[t].pos){e.pos=this[n-1].pos+(this[t].pos-this[n-1].pos)/(t-n+1);break}}else n>0&&(e.pos=Math.max(e.pos,this[n-1].pos))}),this.stops),this.repeating){var l=(n=this.stops.slice())[n.length-1].pos-n[0].pos;for(t=0;this.stops[this.stops.length-1].pos<1&&t<1e4;t++)for(var c=0;c'},get png(){return this.canvas.toDataURL()},get r(){return Math.sqrt(2)*this.size/2},paint:function(){var e,n,r,o=this.context,i=this.r,a=this.size/2,l=0,c=this.stops[l];o.translate(this.size/2,this.size/2),o.rotate(-90*t),o.rotate(this.from*t),o.translate(-this.size/2,-this.size/2);for(var u=0;u<360;){if(u/360+1e-5>=c.pos){do{e=c,l++,c=this.stops[l]}while(c&&c!=e&&c.pos===e.pos);if(!c)break;var s=e.color+""==c.color+""&&e!=c;n=e.color.map((function(e,n){return c.color[n]-e}))}r=(u/360-e.pos)/(c.pos-e.pos);var f=s?c.color:n.map((function(n,t){var o=n*r+e.color[t];return t<3?255&o:o}));if(o.fillStyle="rgba("+f.join(",")+")",o.beginPath(),o.moveTo(a,a),s)var p=360*(c.pos-e.pos);else p=.5;var d=u*t,h=(d=Math.min(360*t,d))+p*t;h=Math.min(360*t,h+.02),o.arc(a,a,i,d,h),o.closePath(),o.fill(),u+=p}}},o.ColorStop=function(e,t){if(this.gradient=e,t){var r=t.match(/^(.+?)(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?\s*$/);if(this.color=o.ColorStop.colorToRGBA(r[1]),r[2]){var i=r[3];"%"==i||"0"===r[2]&&!i?this.pos=r[2]/100:"turn"==i?this.pos=+r[2]:"deg"==i?this.pos=r[2]/360:"grad"==i?this.pos=r[2]/400:"rad"==i&&(this.pos=r[2]/n)}r[4]&&(this.next=new o.ColorStop(e,r[1]+" "+r[4]+r[5]))}},o.ColorStop.prototype={clone:function(){var e=new o.ColorStop(this.gradient);return e.color=this.color,e.pos=this.pos,e},toString:function(){return"rgba("+this.color.join(", ")+") "+100*this.pos+"%"}},o.ColorStop.colorToRGBA=function(e){if(!Array.isArray(e)&&-1==e.indexOf("from")){r.style.color=e;var n=getComputedStyle(r).color.match(/rgba?\(([\d.]+), ([\d.]+), ([\d.]+)(?:, ([\d.]+))?\)/);return n&&(n.shift(),(n=n.map((function(e){return+e})))[3]=isNaN(n[3])?1:n[3]),n||[0,0,0,0]}return e}}(),self.StyleFix&&((e=document.createElement("p")).style.backgroundImage="conic-gradient(white, black)",e.style.backgroundImage=PrefixFree.prefix+"conic-gradient(white, black)",e.style.backgroundImage||StyleFix.register((function(e,n){return e.indexOf("conic-gradient")>-1&&(e=e.replace(/(?:repeating-)?conic-gradient\(\s*((?:\([^()]+\)|[^;()}])+?)\)/g,(function(e,n){return new ConicGradient({stops:n,repeating:e.indexOf("repeating-")>-1})}))),e})))},9662:(e,n,t)=>{var r=t(7854),o=t(614),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a function")}},9483:(e,n,t)=>{var r=t(7854),o=t(4411),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a constructor")}},6077:(e,n,t)=>{var r=t(7854),o=t(614),i=r.String,a=r.TypeError;e.exports=function(e){if("object"==typeof e||o(e))return e;throw a("Can't set "+i(e)+" as a prototype")}},1223:(e,n,t)=>{var r=t(5112),o=t(30),i=t(3070),a=r("unscopables"),l=Array.prototype;null==l[a]&&i.f(l,a,{configurable:!0,value:o(null)}),e.exports=function(e){l[a][e]=!0}},1530:(e,n,t)=>{"use strict";var r=t(8710).charAt;e.exports=function(e,n,t){return n+(t?r(e,n).length:1)}},5787:(e,n,t)=>{var r=t(7854),o=t(7976),i=r.TypeError;e.exports=function(e,n){if(o(n,e))return e;throw i("Incorrect invocation")}},9670:(e,n,t)=>{var r=t(7854),o=t(111),i=r.String,a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not an object")}},7556:(e,n,t)=>{var r=t(7293);e.exports=r((function(){if("function"==typeof ArrayBuffer){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}))},8533:(e,n,t)=>{"use strict";var r=t(2092).forEach,o=t(9341)("forEach");e.exports=o?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},8457:(e,n,t)=>{"use strict";var r=t(7854),o=t(9974),i=t(6916),a=t(7908),l=t(3411),c=t(7659),u=t(4411),s=t(6244),f=t(6135),p=t(8554),d=t(1246),h=r.Array;e.exports=function(e){var n=a(e),t=u(this),r=arguments.length,g=r>1?arguments[1]:void 0,v=void 0!==g;v&&(g=o(g,r>2?arguments[2]:void 0));var A,b,m,y,E,_,C=d(n),w=0;if(!C||this==h&&c(C))for(A=s(n),b=t?new this(A):h(A);A>w;w++)_=v?g(n[w],w):n[w],f(b,w,_);else for(E=(y=p(n,C)).next,b=t?new this:[];!(m=i(E,y)).done;w++)_=v?l(y,g,[m.value,w],!0):m.value,f(b,w,_);return b.length=w,b}},1318:(e,n,t)=>{var r=t(5656),o=t(1400),i=t(6244),a=function(e){return function(n,t,a){var l,c=r(n),u=i(c),s=o(a,u);if(e&&t!=t){for(;u>s;)if((l=c[s++])!=l)return!0}else for(;u>s;s++)if((e||s in c)&&c[s]===t)return e||s||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},2092:(e,n,t)=>{var r=t(9974),o=t(1702),i=t(8361),a=t(7908),l=t(6244),c=t(5417),u=o([].push),s=function(e){var n=1==e,t=2==e,o=3==e,s=4==e,f=6==e,p=7==e,d=5==e||f;return function(h,g,v,A){for(var b,m,y=a(h),E=i(y),_=r(g,v),C=l(E),w=0,x=A||c,k=n?x(h,C):t||p?x(h,0):void 0;C>w;w++)if((d||w in E)&&(m=_(b=E[w],w,y),e))if(n)k[w]=m;else if(m)switch(e){case 3:return!0;case 5:return b;case 6:return w;case 2:u(k,b)}else switch(e){case 4:return!1;case 7:u(k,b)}return f?-1:o||s?s:k}};e.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterReject:s(7)}},1194:(e,n,t)=>{var r=t(7293),o=t(5112),i=t(7392),a=o("species");e.exports=function(e){return i>=51||!r((function(){var n=[];return(n.constructor={})[a]=function(){return{foo:1}},1!==n[e](Boolean).foo}))}},9341:(e,n,t)=>{"use strict";var r=t(7293);e.exports=function(e,n){var t=[][e];return!!t&&r((function(){t.call(null,n||function(){throw 1},1)}))}},3671:(e,n,t)=>{var r=t(7854),o=t(9662),i=t(7908),a=t(8361),l=t(6244),c=r.TypeError,u=function(e){return function(n,t,r,u){o(t);var s=i(n),f=a(s),p=l(s),d=e?p-1:0,h=e?-1:1;if(r<2)for(;;){if(d in f){u=f[d],d+=h;break}if(d+=h,e?d<0:p<=d)throw c("Reduce of empty array with no initial value")}for(;e?d>=0:p>d;d+=h)d in f&&(u=t(u,f[d],d,s));return u}};e.exports={left:u(!1),right:u(!0)}},206:(e,n,t)=>{var r=t(1702);e.exports=r([].slice)},4362:(e,n,t)=>{var r=t(206),o=Math.floor,i=function(e,n){var t=e.length,c=o(t/2);return t<8?a(e,n):l(e,i(r(e,0,c),n),i(r(e,c),n),n)},a=function(e,n){for(var t,r,o=e.length,i=1;i0;)e[r]=e[--r];r!==i++&&(e[r]=t)}return e},l=function(e,n,t,r){for(var o=n.length,i=t.length,a=0,l=0;a{var r=t(7854),o=t(3157),i=t(4411),a=t(111),l=t(5112)("species"),c=r.Array;e.exports=function(e){var n;return o(e)&&(n=e.constructor,(i(n)&&(n===c||o(n.prototype))||a(n)&&null===(n=n[l]))&&(n=void 0)),void 0===n?c:n}},5417:(e,n,t)=>{var r=t(7475);e.exports=function(e,n){return new(r(e))(0===n?0:n)}},3411:(e,n,t)=>{var r=t(9670),o=t(9212);e.exports=function(e,n,t,i){try{return i?n(r(t)[0],t[1]):n(t)}catch(n){o(e,"throw",n)}}},7072:(e,n,t)=>{var r=t(5112)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,n){if(!n&&!o)return!1;var t=!1;try{var i={};i[r]=function(){return{next:function(){return{done:t=!0}}}},e(i)}catch(e){}return t}},4326:(e,n,t)=>{var r=t(1702),o=r({}.toString),i=r("".slice);e.exports=function(e){return i(o(e),8,-1)}},648:(e,n,t)=>{var r=t(7854),o=t(1694),i=t(614),a=t(4326),l=t(5112)("toStringTag"),c=r.Object,u="Arguments"==a(function(){return arguments}());e.exports=o?a:function(e){var n,t,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=function(e,n){try{return e[n]}catch(e){}}(n=c(e),l))?t:u?a(n):"Object"==(r=a(n))&&i(n.callee)?"Arguments":r}},5631:(e,n,t)=>{"use strict";var r=t(3070).f,o=t(30),i=t(2248),a=t(9974),l=t(5787),c=t(408),u=t(654),s=t(6340),f=t(9781),p=t(2423).fastKey,d=t(9909),h=d.set,g=d.getterFor;e.exports={getConstructor:function(e,n,t,u){var s=e((function(e,r){l(e,d),h(e,{type:n,index:o(null),first:void 0,last:void 0,size:0}),f||(e.size=0),null!=r&&c(r,e[u],{that:e,AS_ENTRIES:t})})),d=s.prototype,v=g(n),A=function(e,n,t){var r,o,i=v(e),a=b(e,n);return a?a.value=t:(i.last=a={index:o=p(n,!0),key:n,value:t,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),f?i.size++:e.size++,"F"!==o&&(i.index[o]=a)),e},b=function(e,n){var t,r=v(e),o=p(n);if("F"!==o)return r.index[o];for(t=r.first;t;t=t.next)if(t.key==n)return t};return i(d,{clear:function(){for(var e=v(this),n=e.index,t=e.first;t;)t.removed=!0,t.previous&&(t.previous=t.previous.next=void 0),delete n[t.index],t=t.next;e.first=e.last=void 0,f?e.size=0:this.size=0},delete:function(e){var n=this,t=v(n),r=b(n,e);if(r){var o=r.next,i=r.previous;delete t.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),t.first==r&&(t.first=o),t.last==r&&(t.last=i),f?t.size--:n.size--}return!!r},forEach:function(e){for(var n,t=v(this),r=a(e,arguments.length>1?arguments[1]:void 0);n=n?n.next:t.first;)for(r(n.value,n.key,this);n&&n.removed;)n=n.previous},has:function(e){return!!b(this,e)}}),i(d,t?{get:function(e){var n=b(this,e);return n&&n.value},set:function(e,n){return A(this,0===e?0:e,n)}}:{add:function(e){return A(this,e=0===e?0:e,e)}}),f&&r(d,"size",{get:function(){return v(this).size}}),s},setStrong:function(e,n,t){var r=n+" Iterator",o=g(n),i=g(r);u(e,n,(function(e,n){h(this,{type:r,target:e,state:o(e),kind:n,last:void 0})}),(function(){for(var e=i(this),n=e.kind,t=e.last;t&&t.removed;)t=t.previous;return e.target&&(e.last=t=t?t.next:e.state.first)?"keys"==n?{value:t.key,done:!1}:"values"==n?{value:t.value,done:!1}:{value:[t.key,t.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),t?"entries":"values",!t,!0),s(n)}}},9320:(e,n,t)=>{"use strict";var r=t(1702),o=t(2248),i=t(2423).getWeakData,a=t(9670),l=t(111),c=t(5787),u=t(408),s=t(2092),f=t(2597),p=t(9909),d=p.set,h=p.getterFor,g=s.find,v=s.findIndex,A=r([].splice),b=0,m=function(e){return e.frozen||(e.frozen=new y)},y=function(){this.entries=[]},E=function(e,n){return g(e.entries,(function(e){return e[0]===n}))};y.prototype={get:function(e){var n=E(this,e);if(n)return n[1]},has:function(e){return!!E(this,e)},set:function(e,n){var t=E(this,e);t?t[1]=n:this.entries.push([e,n])},delete:function(e){var n=v(this.entries,(function(n){return n[0]===e}));return~n&&A(this.entries,n,1),!!~n}},e.exports={getConstructor:function(e,n,t,r){var s=e((function(e,o){c(e,p),d(e,{type:n,id:b++,frozen:void 0}),null!=o&&u(o,e[r],{that:e,AS_ENTRIES:t})})),p=s.prototype,g=h(n),v=function(e,n,t){var r=g(e),o=i(a(n),!0);return!0===o?m(r).set(n,t):o[r.id]=t,e};return o(p,{delete:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).delete(e):t&&f(t,n.id)&&delete t[n.id]},has:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).has(e):t&&f(t,n.id)}}),o(p,t?{get:function(e){var n=g(this);if(l(e)){var t=i(e);return!0===t?m(n).get(e):t?t[n.id]:void 0}},set:function(e,n){return v(this,e,n)}}:{add:function(e){return v(this,e,!0)}}),s}}},7710:(e,n,t)=>{"use strict";var r=t(2109),o=t(7854),i=t(1702),a=t(4705),l=t(1320),c=t(2423),u=t(408),s=t(5787),f=t(614),p=t(111),d=t(7293),h=t(7072),g=t(8003),v=t(9587);e.exports=function(e,n,t){var A=-1!==e.indexOf("Map"),b=-1!==e.indexOf("Weak"),m=A?"set":"add",y=o[e],E=y&&y.prototype,_=y,C={},w=function(e){var n=i(E[e]);l(E,e,"add"==e?function(e){return n(this,0===e?0:e),this}:"delete"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:"get"==e?function(e){return b&&!p(e)?void 0:n(this,0===e?0:e)}:"has"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:function(e,t){return n(this,0===e?0:e,t),this})};if(a(e,!f(y)||!(b||E.forEach&&!d((function(){(new y).entries().next()})))))_=t.getConstructor(n,e,A,m),c.enable();else if(a(e,!0)){var x=new _,k=x[m](b?{}:-0,1)!=x,S=d((function(){x.has(1)})),O=h((function(e){new y(e)})),B=!b&&d((function(){for(var e=new y,n=5;n--;)e[m](n,n);return!e.has(-0)}));O||((_=n((function(e,n){s(e,E);var t=v(new y,e,_);return null!=n&&u(n,t[m],{that:t,AS_ENTRIES:A}),t}))).prototype=E,E.constructor=_),(S||B)&&(w("delete"),w("has"),A&&w("get")),(B||k)&&w(m),b&&E.clear&&delete E.clear}return C[e]=_,r({global:!0,forced:_!=y},C),g(_,e),b||t.setStrong(_,e,A),_}},9920:(e,n,t)=>{var r=t(2597),o=t(3887),i=t(1236),a=t(3070);e.exports=function(e,n){for(var t=o(n),l=a.f,c=i.f,u=0;u{var r=t(5112)("match");e.exports=function(e){var n=/./;try{"/./"[e](n)}catch(t){try{return n[r]=!1,"/./"[e](n)}catch(e){}}return!1}},8544:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},4230:(e,n,t)=>{var r=t(1702),o=t(4488),i=t(1340),a=/"/g,l=r("".replace);e.exports=function(e,n,t,r){var c=i(o(e)),u="<"+n;return""!==t&&(u+=" "+t+'="'+l(i(r),a,""")+'"'),u+">"+c+""+n+">"}},4994:(e,n,t)=>{"use strict";var r=t(3383).IteratorPrototype,o=t(30),i=t(9114),a=t(8003),l=t(7497),c=function(){return this};e.exports=function(e,n,t){var u=n+" Iterator";return e.prototype=o(r,{next:i(1,t)}),a(e,u,!1,!0),l[u]=c,e}},8880:(e,n,t)=>{var r=t(9781),o=t(3070),i=t(9114);e.exports=r?function(e,n,t){return o.f(e,n,i(1,t))}:function(e,n,t){return e[n]=t,e}},9114:e=>{e.exports=function(e,n){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:n}}},6135:(e,n,t)=>{"use strict";var r=t(4948),o=t(3070),i=t(9114);e.exports=function(e,n,t){var a=r(n);a in e?o.f(e,a,i(0,t)):e[a]=t}},8709:(e,n,t)=>{"use strict";var r=t(7854),o=t(9670),i=t(2140),a=r.TypeError;e.exports=function(e){if(o(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw a("Incorrect hint");return i(this,e)}},654:(e,n,t)=>{"use strict";var r=t(2109),o=t(6916),i=t(1913),a=t(6530),l=t(614),c=t(4994),u=t(9518),s=t(7674),f=t(8003),p=t(8880),d=t(1320),h=t(5112),g=t(7497),v=t(3383),A=a.PROPER,b=a.CONFIGURABLE,m=v.IteratorPrototype,y=v.BUGGY_SAFARI_ITERATORS,E=h("iterator"),_="keys",C="values",w="entries",x=function(){return this};e.exports=function(e,n,t,a,h,v,k){c(t,n,a);var S,O,B,I=function(e){if(e===h&&R)return R;if(!y&&e in j)return j[e];switch(e){case _:case C:case w:return function(){return new t(this,e)}}return function(){return new t(this)}},T=n+" Iterator",P=!1,j=e.prototype,z=j[E]||j["@@iterator"]||h&&j[h],R=!y&&z||I(h),M="Array"==n&&j.entries||z;if(M&&(S=u(M.call(new e)))!==Object.prototype&&S.next&&(i||u(S)===m||(s?s(S,m):l(S[E])||d(S,E,x)),f(S,T,!0,!0),i&&(g[T]=x)),A&&h==C&&z&&z.name!==C&&(!i&&b?p(j,"name",C):(P=!0,R=function(){return o(z,this)})),h)if(O={values:I(C),keys:v?R:I(_),entries:I(w)},k)for(B in O)(y||P||!(B in j))&&d(j,B,O[B]);else r({target:n,proto:!0,forced:y||P},O);return i&&!k||j[E]===R||d(j,E,R,{name:h}),g[n]=R,O}},7235:(e,n,t)=>{var r=t(857),o=t(2597),i=t(6061),a=t(3070).f;e.exports=function(e){var n=r.Symbol||(r.Symbol={});o(n,e)||a(n,e,{value:i.f(e)})}},9781:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:(e,n,t)=>{var r=t(7854),o=t(111),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},8324:e=>{e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8509:(e,n,t)=>{var r=t(317)("span").classList,o=r&&r.constructor&&r.constructor.prototype;e.exports=o===Object.prototype?void 0:o},8886:(e,n,t)=>{var r=t(8113).match(/firefox\/(\d+)/i);e.exports=!!r&&+r[1]},256:(e,n,t)=>{var r=t(8113);e.exports=/MSIE|Trident/.test(r)},5268:(e,n,t)=>{var r=t(4326),o=t(7854);e.exports="process"==r(o.process)},8113:(e,n,t)=>{var r=t(5005);e.exports=r("navigator","userAgent")||""},7392:(e,n,t)=>{var r,o,i=t(7854),a=t(8113),l=i.process,c=i.Deno,u=l&&l.versions||c&&c.version,s=u&&u.v8;s&&(o=(r=s.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},8008:(e,n,t)=>{var r=t(8113).match(/AppleWebKit\/(\d+)\./);e.exports=!!r&&+r[1]},748:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:(e,n,t)=>{var r=t(7854),o=t(1236).f,i=t(8880),a=t(1320),l=t(3505),c=t(9920),u=t(4705);e.exports=function(e,n){var t,s,f,p,d,h=e.target,g=e.global,v=e.stat;if(t=g?r:v?r[h]||l(h,{}):(r[h]||{}).prototype)for(s in n){if(p=n[s],f=e.noTargetGet?(d=o(t,s))&&d.value:t[s],!u(g?s:h+(v?".":"#")+s,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(t,s,p,e)}}},7293:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},7007:(e,n,t)=>{"use strict";t(4916);var r=t(1702),o=t(1320),i=t(2261),a=t(7293),l=t(5112),c=t(8880),u=l("species"),s=RegExp.prototype;e.exports=function(e,n,t,f){var p=l(e),d=!a((function(){var n={};return n[p]=function(){return 7},7!=""[e](n)})),h=d&&!a((function(){var n=!1,t=/a/;return"split"===e&&((t={}).constructor={},t.constructor[u]=function(){return t},t.flags="",t[p]=/./[p]),t.exec=function(){return n=!0,null},t[p](""),!n}));if(!d||!h||t){var g=r(/./[p]),v=n(p,""[e],(function(e,n,t,o,a){var l=r(e),c=n.exec;return c===i||c===s.exec?d&&!a?{done:!0,value:g(n,t,o)}:{done:!0,value:l(t,n,o)}:{done:!1}}));o(String.prototype,e,v[0]),o(s,p,v[1])}f&&c(s[p],"sham",!0)}},6677:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},2104:e=>{var n=Function.prototype,t=n.apply,r=n.bind,o=n.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?o.bind(t):function(){return o.apply(t,arguments)})},9974:(e,n,t)=>{var r=t(1702),o=t(9662),i=r(r.bind);e.exports=function(e,n){return o(e),void 0===n?e:i?i(e,n):function(){return e.apply(n,arguments)}}},7065:(e,n,t)=>{"use strict";var r=t(7854),o=t(1702),i=t(9662),a=t(111),l=t(2597),c=t(206),u=r.Function,s=o([].concat),f=o([].join),p={},d=function(e,n,t){if(!l(p,n)){for(var r=[],o=0;o{var n=Function.prototype.call;e.exports=n.bind?n.bind(n):function(){return n.apply(n,arguments)}},6530:(e,n,t)=>{var r=t(9781),o=t(2597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,l=o(i,"name"),c=l&&"something"===function(){}.name,u=l&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:l,PROPER:c,CONFIGURABLE:u}},1702:e=>{var n=Function.prototype,t=n.bind,r=n.call,o=t&&t.bind(r);e.exports=t?function(e){return e&&o(r,e)}:function(e){return e&&function(){return r.apply(e,arguments)}}},5005:(e,n,t)=>{var r=t(7854),o=t(614),i=function(e){return o(e)?e:void 0};e.exports=function(e,n){return arguments.length<2?i(r[e]):r[e]&&r[e][n]}},1246:(e,n,t)=>{var r=t(648),o=t(8173),i=t(7497),a=t(5112)("iterator");e.exports=function(e){if(null!=e)return o(e,a)||o(e,"@@iterator")||i[r(e)]}},8554:(e,n,t)=>{var r=t(7854),o=t(6916),i=t(9662),a=t(9670),l=t(6330),c=t(1246),u=r.TypeError;e.exports=function(e,n){var t=arguments.length<2?c(e):n;if(i(t))return a(o(t,e));throw u(l(e)+" is not iterable")}},8173:(e,n,t)=>{var r=t(9662);e.exports=function(e,n){var t=e[n];return null==t?void 0:r(t)}},647:(e,n,t)=>{var r=t(1702),o=t(7908),i=Math.floor,a=r("".charAt),l=r("".replace),c=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,n,t,r,f,p){var d=t+e.length,h=r.length,g=s;return void 0!==f&&(f=o(f),g=u),l(p,g,(function(o,l){var u;switch(a(l,0)){case"$":return"$";case"&":return e;case"`":return c(n,0,t);case"'":return c(n,d);case"<":u=f[c(l,1,-1)];break;default:var s=+l;if(0===s)return o;if(s>h){var p=i(s/10);return 0===p?o:p<=h?void 0===r[p-1]?a(l,1):r[p-1]+a(l,1):o}u=r[s-1]}return void 0===u?"":u}))}},7854:(e,n,t)=>{var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof t.g&&t.g)||function(){return this}()||Function("return this")()},2597:(e,n,t)=>{var r=t(1702),o=t(7908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,n){return i(o(e),n)}},3501:e=>{e.exports={}},490:(e,n,t)=>{var r=t(5005);e.exports=r("document","documentElement")},4664:(e,n,t)=>{var r=t(9781),o=t(7293),i=t(317);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:(e,n,t)=>{var r=t(7854),o=t(1702),i=t(7293),a=t(4326),l=r.Object,c=o("".split);e.exports=i((function(){return!l("z").propertyIsEnumerable(0)}))?function(e){return"String"==a(e)?c(e,""):l(e)}:l},9587:(e,n,t)=>{var r=t(614),o=t(111),i=t(7674);e.exports=function(e,n,t){var a,l;return i&&r(a=n.constructor)&&a!==t&&o(l=a.prototype)&&l!==t.prototype&&i(e,l),e}},2788:(e,n,t)=>{var r=t(1702),o=t(614),i=t(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},2423:(e,n,t)=>{var r=t(2109),o=t(1702),i=t(3501),a=t(111),l=t(2597),c=t(3070).f,u=t(8006),s=t(1156),f=t(2050),p=t(9711),d=t(6677),h=!1,g=p("meta"),v=0,A=function(e){c(e,g,{value:{objectID:"O"+v++,weakData:{}}})},b=e.exports={enable:function(){b.enable=function(){},h=!0;var e=u.f,n=o([].splice),t={};t[g]=1,e(t).length&&(u.f=function(t){for(var r=e(t),o=0,i=r.length;o{var r,o,i,a=t(8536),l=t(7854),c=t(1702),u=t(111),s=t(8880),f=t(2597),p=t(5465),d=t(6200),h=t(3501),g="Object already initialized",v=l.TypeError,A=l.WeakMap;if(a||p.state){var b=p.state||(p.state=new A),m=c(b.get),y=c(b.has),E=c(b.set);r=function(e,n){if(y(b,e))throw new v(g);return n.facade=e,E(b,e,n),n},o=function(e){return m(b,e)||{}},i=function(e){return y(b,e)}}else{var _=d("state");h[_]=!0,r=function(e,n){if(f(e,_))throw new v(g);return n.facade=e,s(e,_,n),n},o=function(e){return f(e,_)?e[_]:{}},i=function(e){return f(e,_)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(n){var t;if(!u(n)||(t=o(n)).type!==e)throw v("Incompatible receiver, "+e+" required");return t}}}},7659:(e,n,t)=>{var r=t(5112),o=t(7497),i=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||a[i]===e)}},3157:(e,n,t)=>{var r=t(4326);e.exports=Array.isArray||function(e){return"Array"==r(e)}},614:e=>{e.exports=function(e){return"function"==typeof e}},4411:(e,n,t)=>{var r=t(1702),o=t(7293),i=t(614),a=t(648),l=t(5005),c=t(2788),u=function(){},s=[],f=l("Reflect","construct"),p=/^\s*(?:class|function)\b/,d=r(p.exec),h=!p.exec(u),g=function(e){if(!i(e))return!1;try{return f(u,s,e),!0}catch(e){return!1}};e.exports=!f||o((function(){var e;return g(g.call)||!g(Object)||!g((function(){e=!0}))||e}))?function(e){if(!i(e))return!1;switch(a(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}return h||!!d(p,c(e))}:g},4705:(e,n,t)=>{var r=t(7293),o=t(614),i=/#|\.prototype\./,a=function(e,n){var t=c[l(e)];return t==s||t!=u&&(o(n)?r(n):!!n)},l=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",s=a.POLYFILL="P";e.exports=a},111:(e,n,t)=>{var r=t(614);e.exports=function(e){return"object"==typeof e?null!==e:r(e)}},1913:e=>{e.exports=!1},7850:(e,n,t)=>{var r=t(111),o=t(4326),i=t(5112)("match");e.exports=function(e){var n;return r(e)&&(void 0!==(n=e[i])?!!n:"RegExp"==o(e))}},2190:(e,n,t)=>{var r=t(7854),o=t(5005),i=t(614),a=t(7976),l=t(3307),c=r.Object;e.exports=l?function(e){return"symbol"==typeof e}:function(e){var n=o("Symbol");return i(n)&&a(n.prototype,c(e))}},408:(e,n,t)=>{var r=t(7854),o=t(9974),i=t(6916),a=t(9670),l=t(6330),c=t(7659),u=t(6244),s=t(7976),f=t(8554),p=t(1246),d=t(9212),h=r.TypeError,g=function(e,n){this.stopped=e,this.result=n},v=g.prototype;e.exports=function(e,n,t){var r,A,b,m,y,E,_,C=t&&t.that,w=!(!t||!t.AS_ENTRIES),x=!(!t||!t.IS_ITERATOR),k=!(!t||!t.INTERRUPTED),S=o(n,C),O=function(e){return r&&d(r,"normal",e),new g(!0,e)},B=function(e){return w?(a(e),k?S(e[0],e[1],O):S(e[0],e[1])):k?S(e,O):S(e)};if(x)r=e;else{if(!(A=p(e)))throw h(l(e)+" is not iterable");if(c(A)){for(b=0,m=u(e);m>b;b++)if((y=B(e[b]))&&s(v,y))return y;return new g(!1)}r=f(e,A)}for(E=r.next;!(_=i(E,r)).done;){try{y=B(_.value)}catch(e){d(r,"throw",e)}if("object"==typeof y&&y&&s(v,y))return y}return new g(!1)}},9212:(e,n,t)=>{var r=t(6916),o=t(9670),i=t(8173);e.exports=function(e,n,t){var a,l;o(e);try{if(!(a=i(e,"return"))){if("throw"===n)throw t;return t}a=r(a,e)}catch(e){l=!0,a=e}if("throw"===n)throw t;if(l)throw a;return o(a),t}},3383:(e,n,t)=>{"use strict";var r,o,i,a=t(7293),l=t(614),c=t(30),u=t(9518),s=t(1320),f=t(5112),p=t(1913),d=f("iterator"),h=!1;[].keys&&("next"in(i=[].keys())?(o=u(u(i)))!==Object.prototype&&(r=o):h=!0),null==r||a((function(){var e={};return r[d].call(e)!==e}))?r={}:p&&(r=c(r)),l(r[d])||s(r,d,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:h}},7497:e=>{e.exports={}},6244:(e,n,t)=>{var r=t(7466);e.exports=function(e){return r(e.length)}},133:(e,n,t)=>{var r=t(7392),o=t(7293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},8536:(e,n,t)=>{var r=t(7854),o=t(614),i=t(2788),a=r.WeakMap;e.exports=o(a)&&/native code/.test(i(a))},3929:(e,n,t)=>{var r=t(7854),o=t(7850),i=r.TypeError;e.exports=function(e){if(o(e))throw i("The method doesn't accept regular expressions");return e}},1574:(e,n,t)=>{"use strict";var r=t(9781),o=t(1702),i=t(6916),a=t(7293),l=t(1956),c=t(5181),u=t(5296),s=t(7908),f=t(8361),p=Object.assign,d=Object.defineProperty,h=o([].concat);e.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},n={},t=Symbol(),o="abcdefghijklmnopqrst";return e[t]=7,o.split("").forEach((function(e){n[e]=e})),7!=p({},e)[t]||l(p({},n)).join("")!=o}))?function(e,n){for(var t=s(e),o=arguments.length,a=1,p=c.f,d=u.f;o>a;)for(var g,v=f(arguments[a++]),A=p?h(l(v),p(v)):l(v),b=A.length,m=0;b>m;)g=A[m++],r&&!i(d,v,g)||(t[g]=v[g]);return t}:p},30:(e,n,t)=>{var r,o=t(9670),i=t(6048),a=t(748),l=t(3501),c=t(490),u=t(317),s=t(6200),f=s("IE_PROTO"),p=function(){},d=function(e){return"