2024-02-12 18:23:26 +05:30
<!doctype html> < html lang = en-us > < head > < meta charset = utf-8 > < meta http-equiv = x-ua-compatible content = "ie=edge" > < meta name = viewport content = "width=device-width,initial-scale=1,shrink-to-fit=no" > < link rel = preload as = font href = /fonts/vendor/jost/jost-v4-latin-regular.woff2 type = font/woff2 crossorigin > < link rel = preload as = font href = /fonts/vendor/jost/jost-v4-latin-700.woff2 type = font/woff2 crossorigin > < link rel = stylesheet href = /main.f998e900ad1763639b2de999d219c60a588fb531888a0672d99b77aca3c151f84bdf80fcc8ca4046d0c23b9d5873eb2d32c59c17011fead4bedea7bc2b062d61.css integrity = "sha512-+ZjpAK0XY2ObLemZ0hnGCliPtTGIigZy2Zt3rKPBUfhL34D8yMpARtDCO51Yc+stMsWcFwEf6tS+3qe8KwYtYQ==" crossorigin = anonymous > < noscript > < style > img . lazyload { display : none } < / style > < / noscript > < meta name = robots content = "index, follow" > < meta name = googlebot content = "index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1" > < meta name = bingbot content = "index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1" > < title > CLI tool - mCaptcha< / title > < meta name = description content = "Instructions to install mCaptcha CLI" > < link rel = canonical href = /docs/user-manual/cli/ > < meta name = twitter:card content = "summary_large_image" > < meta name = twitter:image content = "/icon.png" > < meta name = twitter:title content = "CLI tool" > < meta name = twitter:description content = "Instructions to install mCaptcha CLI" > < meta name = twitter:site content = "@" > < meta name = twitter:creator content = "@" > < meta property = "og:title" content = "CLI tool" > < meta property = "og:description" content = "Instructions to install mCaptcha CLI" > < meta property = "og:type" content = "article" > < meta property = "og:url" content = "/docs/user-manual/cli/" > < meta property = "og:image" content = "/icon.png" > < meta property = "article:published_time" content = "2023-10-27T08:48:45+00:00" > < meta property = "article:modified_time" content = "2023-10-28T01:09:37+05:30" > < meta property = "og:site_name" content = "mCaptcha" > < meta property = "article:publisher" content = "https://www.facebook.com/" > < meta property = "article:author" content = "https://www.facebook.com/" > < meta property = "og:locale" content = "en_US" > < script type = application/ld+json > { "@context" : "http://schema.org" , "@type" : "BreadcrumbList" , "itemListElement" : [ { "@type" : "ListItem" , "position" : 1 , "name" : "Home" , "item" : "\/" } , { "@type" : "ListItem" , "position" : 2 , "name" : "Docsuser Manualcli" , "item" : "\/docsuser-manualcli\/" } ] } < / script > < meta name = theme-color content = "#fff" > < link rel = apple-touch-icon sizes = 180x180 href = /apple-touch-icon.png > < link rel = icon type = image/png sizes = 32x32 href = /favicon-32x32.png > < link rel = icon type = image/png sizes = 16x16 href = /favicon-16x16.png > < link rel = manifest href = /site.webmanifest > < / head > < body class = "docs single" > < div class = "header-bar fixed-top" > < / div > < header class = "navbar fixed-top navbar-expand-md navbar-light" > < div class = container > < input class = "menu-btn order-0" type = checkbox id = menu-btn >
< label class = "menu-icon d-md-none" for = menu-btn > < span class = navicon > < / span > < / label > < a class = "navbar-brand order-1 order-md-0 me-auto" href = / > mCaptcha< / a >
< button id = mode class = "btn btn-link order-2 order-md-4" type = button aria-label = "Toggle mode" >
< span class = toggle-dark > < svg xmlns = "http://www.w3.org/2000/svg" width = "20" height = "20" viewBox = "0 0 24 24" fill = "none" stroke = "currentcolor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" class = "feather feather-moon" > < path d = "M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z" / > < / svg > < / span > < span class = toggle-light > < svg xmlns = "http://www.w3.org/2000/svg" width = "20" height = "20" viewBox = "0 0 24 24" fill = "none" stroke = "currentcolor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" class = "feather feather-sun" > < circle cx = "12" cy = "12" r = "5" / > < line x1 = "12" y1 = "1" x2 = "12" y2 = "3" / > < line x1 = "12" y1 = "21" x2 = "12" y2 = "23" / > < line x1 = "4.22" y1 = "4.22" x2 = "5.64" y2 = "5.64" / > < line x1 = "18.36" y1 = "18.36" x2 = "19.78" y2 = "19.78" / > < line x1 = "1" y1 = "12" x2 = "3" y2 = "12" / > < line x1 = "21" y1 = "12" x2 = "23" y2 = "12" / > < line x1 = "4.22" y1 = "19.78" x2 = "5.64" y2 = "18.36" / > < line x1 = "18.36" y1 = "5.64" x2 = "19.78" y2 = "4.22" / > < / svg > < / span > < / button > < ul class = "navbar-nav social-nav order-3 order-md-5" > < li class = nav-item > < a class = nav-link href = https://github.com/mCaptcha > < svg xmlns = "http://www.w3.org/2000/svg" width = "20" height = "20" viewBox = "0 0 24 24" fill = "none" stroke = "currentcolor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" class = "feather feather-github" > < path d = "M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22" / > < / svg > < span class = "ms-2 visually-hidden" > GitHub< / span > < / a > < / li > < / ul > < div class = "collapse navbar-collapse order-4 order-md-1" > < ul class = "navbar-nav main-nav me-auto order-5 order-md-2" > < li class = nav-item > < a class = nav-link href = /blog/ > Blog< / a > < / li > < li class = nav-item > < a class = nav-link href = /community/ > Community< / a > < / li > < li class = nav-item > < a class = nav-link href = /contact/ > Contact< / a > < / li > < li class = nav-item > < a class = nav-link href = /about/ > About< / a > < / li > < li class = "nav-item active" > < a class = nav-link href = /docs/webmasters/installing-captcha/ > Docs< / a > < / li > < / ul > < div class = "break order-6 d-md-none" > < / div > < form class = "navbar-form flex-grow-1 order-7 order-md-3" > < input id = userinput class = "form-control is-search" type = search placeholder = "Search docs..." aria-label = "Search docs..." autocomplete = off > < div id = suggestions class = "shadow bg-white rounded" > < / div > < / form > < / div > < / div > < / header > < div class = "wrap container" role = document > < div class = content > < div class = "row flex-xl-nowrap" > < div class = "col-lg-5 col-xl-4 docs-sidebar" > < nav class = docs-links aria-label = "Main navigation" > < h3 > Webmasters< / h3 > < ul class = list-unstyled > < li > < a class = docs-link href = /docs/webmasters/installing-captcha/ > Installing mCaptcha on your website< / a > < / li > < li > < a class = docs-link href = /docs/webmasters/configuring-difficulty-factor/ > Configuring Difficulty Factor< / a > < / li > < li > < a class = docs-link href = /docs/webmasters/terminology/ > Terminology< / a > < / li > < li > < a class = docs-link href = /docs/webmasters/faq/ > Webmasters FAQ< / a > < / li > < / ul > < h3 > User Manual< / h3 > < ul class = list-unstyled > < li > < a class = "docs-link active" href = /docs/user-manual/cli/ > CLI tool< / a > < / li > < li > < a class = docs-link href = /docs/user-manual/how-to-mcaptcha-without-js/ > Use mCaptcha without JavaScript< / a > < / li > < / ul > < h3 > Self-Hosting< / h3 > < ul class = list-unstyled > < li > < a class = docs-link href = /docs/self-hosting/getting-started/ > Getting started< / a > < / li > < li > < a class = docs-link href = /docs/self-hosting/bare-metal/ > Deploy bare metal< / a > < / li > < li > < a class = docs-link href = /docs/self-hosting/ansible/ > Using Ansible< / a > < / li > < li > < a class = docs-link href = /docs/self-hosting/docker/ > Using Docker< / a > < / li > < / ul > < h3 > API< / h3 > < ul class = list-unstyled > < li > < a class = docs-link href = /docs/api/browser/ > Browser libraries< / a > < / li > < li > < a class = docs-link href = /docs/api/mcaptcha-system/ > mCaptcha System Library< / a > < / li > < li > < a class = docs-link href = /docs/api/pow-sha256/ > pow_sha256< / a > < / li > < / ul > < h3 > Help< / h3 > < ul class = list-unstyled > < li > < a class = docs-link href = /docs/help/troubleshooting/ > Troubleshooting< / a > < / li > < li > < a class = docs-link href = /docs/help/
from multiple sources:< / p > < h2 id = install > Install< a href = #install class = anchor aria-hidden = true > #< / a > < / h2 > < h3 id = cratesio > crates.io< a href = #cratesio class = anchor aria-hidden = true > #< / a > < / h3 > < p > The CLI tool is available on, < a href = https://crates.io > crates.io< / a > , the Rust
2023-10-28 03:18:10 +05:30
language’ s package registry. Rust language toolchain is required to
2024-02-12 18:23:26 +05:30
install from crates.io, please see < a href = https://rustup.rs > rustup.rs< / a > for
Instructions to install it.< / p > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > cargo install mcaptcha-cli
< / code > < / pre > < / div > < h3 id = pre-compiled-binaries > Pre-compiled binaries< a href = #pre-compiled-binaries class = anchor aria-hidden = true > #< / a > < / h3 > < p > Nightly builds and stable releases are regularly published to
< a href = https://dl.mcaptcha.org/mcaptcha/cli > dl.mcaptcha.org< / a > for a variety of
CPU architectures and operating systems.< / p > < ol > < li > Download binary, checksum and GPG signature files< / li > < / ol > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > wget https://dl.mcaptcha.org/mcaptcha/cli/< span style = color:#ff79c6 > {< / span > VERSION< span style = color:#ff79c6 > }< / span > /< span style = color:#ff79c6 > {< / span > FILENAME< span style = color:#ff79c6 > }< / span > .tar.gz
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 2< / span > wget https://dl.mcaptcha.org/mcaptcha/cli/< span style = color:#ff79c6 > {< / span > VERSION< span style = color:#ff79c6 > }< / span > /< span style = color:#ff79c6 > {< / span > FILENAME< span style = color:#ff79c6 > }< / span > .tar.gz.asc
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 3< / span > wget https://dl.mcaptcha.org/mcaptcha/cli/< span style = color:#ff79c6 > {< / span > VERSION< span style = color:#ff79c6 > }< / span > /< span style = color:#ff79c6 > {< / span > FILENAME< span style = color:#ff79c6 > }< / span > .tar.gz.sha256
< / code > < / pre > < / div > < ol start = 2 > < li > Verify checksum< / li > < / ol > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > sha256sum -c < span style = color:#ff79c6 > {< / span > FILENAME< span style = color:#ff79c6 > }< / span > .tar.gz.sha256
< / code > < / pre > < / div > < ol start = 3 > < li > Download mCaptcha’ s GPG release keys and verify GPG signature< / li > < / ol > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > gpg --keyserver keyserver.ubuntu.com --recv 73DAC973A9ADBB9ADCB5CDC4595A08135BA9FF73
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 2< / span > gpg --verify < span style = color:#ff79c6 > {< / span > FILENAME< span style = color:#ff79c6 > }< / span > .tar.gz.asc
< / code > < / pre > < / div > < ol start = 4 > < li > Install Binary< / li > < / ol > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > tar -xvzf < span style = color:#ff79c6 > {< / span > FILENAME< span style = color:#ff79c6 > }< / span > .tar.gz < span style = color:#ff79c6 > & & < / span > sudo cp < span style = color:#ff79c6 > {< / span > FILENAME< span style = color:#ff79c6 > }< / span > /mcaptcha-cli /usr/local/bin
< / code > < / pre > < / div > < h3 id = build-from-source > Build from source< a href = #build-from-source class = anchor aria-hidden = true > #< / a > < / h3 > < ol > < li > Install Rust tool chain
Please see < a href = https://rustup.rs > here< / a > for instructions.< / li > < li > Download source code< / li > < / ol > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > git clone https://git.batsense.net/mCaptcha/cli
< / code > < / pre > < / div > < ol start = 3 > < li > Compile and install< / li > < / ol > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > cargo build --release < span style = color:#ff79c6 > & & < / span > sudp cp ./target/release/mcaptcha-cli
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 2< / span > /usr/local/bin
< / code > < / pre > < / div > < h2 id = pass-mcaptcha-challenge > Pass mCaptcha challenge< a href = #pass-mcaptcha-challenge class = anchor aria-hidden = true > #< / a > < / h2 > < p > The CLI tool requires details about the challenge to work on it. The
tool can be used in three different modes compute challenge:< / p > < ol > < li > Protected Page: Compute mCaptcha challenge for the CAPTCHA at a
protected page< / li > < li > Widget URL: Compute PoW for captcha at widget URL< / li > < li > (Developer mode) Offline: Computes PoW over given CAPTCHA parameters< / li > < / ol > < h3 id = from-protected-page-url > From protected page URL< a href = #from-protected-page-url class = anchor aria-hidden = true > #< / a > < / h3 > < p > The most convenient mode: copy the URL of the webpage which has the
2023-10-28 03:18:10 +05:30
mCaptcha widget (example: showcase.mcaptcha.org) and run the CLI tool
with it to get an authorization code:
2024-02-12 18:23:26 +05:30
Compute challenge using the URL< / p > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > 03:39 atm@lab cli ±|feat-parse-webpage ✗|→ mcaptcha-cli protected-page https://showcase.mcaptcha.org/
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 2< / span > Authorization token: eRAZJiMrW58uDYA1s64Tmwq1u30HutuF
< / code > < / pre > < / div > < h3 id = widget-url > Widget URL< a href = #widget-url class = anchor aria-hidden = true > #< / a > < / h3 > < p > If you have the widget URL (will be in format https://mcaptcha.example.org/widget?sitekey=randomstring), it can be used to solve challenge as well:< / p > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > Compute PoW by fetching parameters from CAPTCHA URL
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 2< / span >
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 3< / span > Usage: mcaptcha-cli online --url < URL>
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 4< / span >
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 5< / span > Options:
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 6< / span > -u, --url < URL> URL of the CAPTCHA. Example: https://example.org/widget?sitekey< span style = color:#ff79c6 > =< / span > foo
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 7< / span > -h, --help Print < span style = color:#8be9fd;font-style:italic > help< / span >
< / code > < / pre > < / div > < p > Example usage:< / p > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > 13:32 atm@lab cli ±|online ✗|→ mcaptcha-cli online -u https://demo.mcaptcha.org/widget?sitekey< span style = color:#ff79c6 > =< / span > pHy0AktWyOKuxZDzFfoaewncWecCHo23
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 2< / span > Authorization token: 3xleN26OctBuVu3X4t6CYyUjErhaxQvz
< / code > < / pre > < / div > < h3 id = developer-mode-offline > [Developer mode] Offline< a href = #developer-mode-offline class = anchor aria-hidden = true > #< / a > < / h3 > < p > Useful while debugging mCaptcha configurations, works on raw challenge
parameters.< / p > < p > Help menu:< / p > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > Compute PoW with offline parameters
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 2< / span >
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 3< / span > Usage: mcaptcha-cli offline --salt < SALT> --phrase < PHRASE> --difficulty-factor < DIFFICULTY_FACTOR>
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 4< / span >
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 5< / span > Options:
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 6< / span > -s, --salt < SALT> Salt with which PoW should be computed
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 7< / span > -p, --phrase < PHRASE> Phrase over which PoW should be computed
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 8< / span > -d, --difficulty-factor < DIFFICULTY_FACTOR> Difficulty Factor
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 9< / span > -h, --help Print < span style = color:#8be9fd;font-style:italic > help< / span >
< / code > < / pre > < / div > < p > Example usage:< / p > < div class = highlight > < pre style = color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4 > < code class = language-bash data-lang = bash > < span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 1< / span > 13:28 atm@lab cli ±|online|→ mcaptcha-cli offline -s < span style = color:#ff79c6 > $(< / span > rand 32< span style = color:#ff79c6 > )< / span > -p < span style = color:#ff79c6 > $(< / span > rand 32< span style = color:#ff79c6 > )< / span > -d < span style = color:#bd93f9 > 50000< / span >
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 2< / span > difficulty: < span style = color:#bd93f9 > 50000< / span >
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 3< / span > nonce: < span style = color:#bd93f9 > 90507< / span >
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 4< / span > original phrase: f351f333d44b2c6b5bf7f033b065bbb8fb5e9dd153bd402e43ed04425f5a3859
< span style = "margin-right:.4em;padding:0 .4em;color:#7f7f7f" > 5< / span > result: < span style = color:#bd93f9 > 340276562956196291522979356090220150471< / span >
2024-03-23 13:54:11 +05:30
< / code > < / pre > < / div > < p > Where rand is < a href = https://github.com/realaravinth/dotfiles/blob/6fc6c87cc912e17488a35c0d3327ecf393221270/scripts/rand#L20 > this< / a > script.< / p > < p class = edit-page > < a href = https://git.batsense.net/mCaptcha/website/blob/master/content/docs/user-manual/cli.md > < svg xmlns = "http://www.w3.org/2000/svg" width = "16" height = "16" viewBox = "0 0 24 24" fill = "none" stroke = "currentcolor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" class = "feather feather-edit-2" > < path d = "M17 3a2.828 2.828.0 114 4L7.5 20.5 2 22l1.5-5.5L17 3z" / > < / svg > Edit this page on git.batsense.net< / a > < / p > < div class = "docs-navigation d-flex justify-content-between" > < a href = /docs/help/faq/ > < div class = "card my-1" > < div class = "card-body py-2" > ← FAQ< / div > < / div > < / a > < a class = ms-auto href = /docs/user-manual/how-to-mcaptcha-without-js/ > < div class = "card my-1" > < div class = "card-body py-2" > Use mCaptcha without JavaScript → < / div > < / div > < / a > < / div > < / main > < / div > < / div > < / div > < footer class = "footer text-muted" > < div class = container > < div class = row > < div class = "col-lg-8 order-last order-lg-first" > < ul class = list-inline > < li class = list-inline-item > Powered by < a href = https://gohugo.io/ > Hugo< / a > , and < a href = https://getdoks.org/ > Doks< / a > < / li > < / ul > < / div > < div class = "col-lg-8 order-first order-lg-last text-lg-end" > < ul class = list-inline > < li class = list-inline-item > < a href = /about/ > About< / a > < / li > < li class = list-inline-item > < a href = /donate > Donate< / a > < / li > < li class = list-inline-item > < a href = /privacy-policy/ > Privacy< / a > < / li > < li class = list-inline-item > < a href = /security > Security< / a > < / li > < li class = list-inline-item > < a href = https://stats.uptimerobot.com/GK7VLFJnBl > Status< / a > < / li > < li class = list-inline-item > < a href = /thanks > Thanks< / a > < / li > < / ul > < / div > < / div > < / div > < / footer > < script src = /main.min.993b2b4c58b07e7a4bb3423cf18ccd78a85d0063680c0fc9bf6d9cc02be98e08793034d984dd8f7c60ad5b70f3186cc8bc280b1077b7e37c2d64f36f118099bb.js integrity = "sha512-mTsrTFiwfnpLs0I88YzNeKhdAGNoDA/Jv22cwCvpjgh5MDTZhN2PfGCtW3DzGGzIvCgLEHe343wtZPNvEYCZuw==" crossorigin = anonymous defer > < / script > < script src = /index.min.54509ba7c5e639f5ec4ae9409f76e99f01de45aae0c450b398bb04083016dc4213a82a49528708fd7d36c22e60debacd894f3dbdc3a30fa796132f9a541ccdab.js integrity = "sha512-VFCbp8XmOfXsSulAn3bpnwHeRargxFCzmLsECDAW3EITqCpJUocI/X02wi5g3rrNiU89vcOjD6eWEy+aVBzNqw==" crossorigin = anonymous defer > < / script > < / body > < / html >