feat: Migrate site to python3 dashboard
All checks were successful
Check Code Quality / RuffCheck (push) Successful in 1m3s
Build Docker / BuildImage (push) Successful in 1m5s

This commit is contained in:
2026-02-11 14:18:34 +11:00
parent 11abe34d5b
commit 6efc480e70
101 changed files with 1876 additions and 15776 deletions

7
.env.example Normal file
View File

@@ -0,0 +1,7 @@
# Authentik Configuration
AUTHENTIK_METADATA_URL=https://auth.woodburn.au/application/o/woodburn/.well-known/openid-configuration
AUTHENTIK_CLIENT_ID=your-client-id
AUTHENTIK_CLIENT_SECRET=your-client-secret
# App Secret Key (Generate a random string for production)
APP_SECRET_KEY=change-me-to-a-secure-random-string

View File

@@ -1,18 +1,14 @@
name: Build Docker
run-name: Build Docker Image
on: [push]
run-name: Build Docker Images
on:
push:
jobs:
Build Docker:
BuildImage:
runs-on: [ubuntu-latest, amd]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Fix Files
run : |
for file in *.html; do
sed -i 's/\.html//g' "$file"
done
- name: Install Docker
run : |
apt-get install ca-certificates curl gnupg
@@ -21,42 +17,29 @@ jobs:
chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update
apt-get install docker-ce-cli -y
apt-get install docker-ce-cli -y
- name: Build Docker image
run : |
run : |
echo "${{ secrets.DOCKERGIT_TOKEN }}" | docker login git.woodburn.au -u nathanwoodburn --password-stdin
tag_num=$(git rev-parse --short HEAD)
docker build -t woodburn:$tag_num .
docker tag woodburn:$tag_num git.woodburn.au/nathanwoodburn/woodburn:$tag_num
docker push git.woodburn.au/nathanwoodburn/woodburn:$tag_num
docker tag woodburn:$tag_num git.woodburn.au/nathanwoodburn/woodburn:latest
docker push git.woodburn.au/nathanwoodburn/woodburn:latest
Build ARM Docker:
runs-on: [ubuntu-latest, arm]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Fix Files
run : |
for file in *.html; do
sed -i 's/\.html//g' "$file"
done
- name: Install Docker
run : |
apt-get install ca-certificates curl gnupg
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update
apt-get install docker-ce-cli -y
- name: Build Docker image
run : |
echo "${{ secrets.DOCKERGIT_TOKEN }}" | docker login git.woodburn.au -u nathanwoodburn --password-stdin
tag_num=$(git rev-parse --short HEAD)
docker build -t woodburn:$tag_num .
docker tag woodburn:$tag_num git.woodburn.au/nathanwoodburn/woodburn:arm
docker push git.woodburn.au/nathanwoodburn/woodburn:arm
echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}"
tag=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}
tag=${tag//\//-}
tag_num=${GITHUB_RUN_NUMBER}
echo "tag_num=$tag_num"
if [[ "$tag" == "main" ]]; then
tag="latest"
else
tag_num="${tag}-${tag_num}"
fi
repo=$GITHUB_REPOSITORY
repo=${repo#*/}
repo=$(echo $repo | tr '[:upper:]' '[:lower:]')
echo "container=$repo"
docker build -t $repo:$tag_num .
docker tag $repo:$tag_num git.woodburn.au/nathanwoodburn/$repo:$tag_num
docker push git.woodburn.au/nathanwoodburn/$repo:$tag_num
docker tag $repo:$tag_num git.woodburn.au/nathanwoodburn/$repo:$tag
docker push git.woodburn.au/nathanwoodburn/$repo:$tag

View File

@@ -0,0 +1,18 @@
name: Check Code Quality
run-name: Ruff CI
on:
push:
jobs:
RuffCheck:
runs-on: [ubuntu-latest, amd]
steps:
- uses: actions/checkout@v2
- name: Set up Python
run: |
apt update
apt install -y python3 python3-pip
- name: Install Ruff
run: pip install ruff
- name: Run Ruff
run: ruff check .

2
.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
.env
__pycache__

View File

@@ -1,5 +0,0 @@
{
"names": {
"nathan": "b57b6a06fdf0a4095eba69eee26e2bf6fa72bd1ce6cbe9a6f72a7021c7acaa82"
}
}

View File

@@ -1 +0,0 @@
bc1qhs94zzcw64qnwq4hvk056rwxwvgrkd7tq7d4xw

View File

@@ -1 +0,0 @@
cro1zp7mzu39qgg7409ad0cy5e3p27c60nvkcnfc7f

View File

@@ -1 +0,0 @@
0x6cB4B39bEc23a921C9a20D061Bf17d4640B0d39e

View File

@@ -1 +0,0 @@
hs1qk4sq6mk3kcshp02xgchukv09m38czdnq5qv76w

View File

@@ -1 +0,0 @@
0x6cB4B39bEc23a921C9a20D061Bf17d4640B0d39e

View File

@@ -1 +0,0 @@
AJsPEEe6S7XSiVcdZKbeV8GRp1QuhFUsG8mLrqL4XgiU

View File

@@ -1 +0,0 @@
4243nt4ZUspWmBe6mVbLQWNeJEVL9DdmbS3HaUc4QfPUguArWUvdpGDV2hwLh9PQdpb4NY5te2BxB1DBpdDVNdq1KuUmFYZ

View File

@@ -1,25 +0,0 @@
{
"subject": "acct:nathan@woodburn.au",
"links": [
{
"rel": "http://openid.net/specs/connect/1.0/issuer",
"href": "https://auth.woodburn.au/application/o/tailscale/"
},
{
"rel": "authorization_endpoint",
"href": "https://auth.woodburn.au/application/o/tailscale/oauth2/authorize"
},
{
"rel": "token_endpoint",
"href": "https://auth.woodburn.au/application/o/tailscale/oauth2/token"
},
{
"rel": "userinfo_endpoint",
"href": "https://auth.woodburn.au/application/o/tailscale/userinfo"
},
{
"rel": "jwks_uri",
"href": "https://auth.woodburn.au/application/o/tailscale/jwks"
}
]
}

View File

@@ -1,75 +0,0 @@
<!DOCTYPE html>
<html data-bs-theme="light" lang="en-au">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
<title>Woodburn</title>
<link rel="canonical" href="https://woodburn.au/404.html">
<meta property="og:url" content="https://woodburn.au/404.html">
<meta name="twitter:card" content="summary">
<meta property="og:title" content="Woodburn">
<meta property="og:type" content="website">
<meta name="description" content="Woodburn Home Page">
<meta property="og:image" content="https://woodburn.au/assets/img/favicon.png">
<meta property="og:description" content="Woodburn">
<link rel="apple-touch-icon" type="image/png" sizes="180x180" href="assets/img/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="assets/img/favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="assets/img/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="180x180" href="assets/img/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="192x192" href="assets/img/android-chrome-192x192.png">
<link rel="icon" type="image/png" sizes="512x512" href="assets/img/android-chrome-512x512.png">
<link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat:400,700&amp;display=swap">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Kaushan+Script&amp;display=swap">
<link rel="stylesheet" href="assets/css/404.css">
<link rel="stylesheet" href="assets/css/Contact-Form-Clean.css">
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="https://analytics.woodburn.au/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '2']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->
<!--This Website was made by Nathan Woodburn https://nathan.woodburn.au -->
</head>
<body><!-- partial:index.partial.html -->
<p>HTTP: <span>404</span></p>
<div style="text-align: center;">
<div style="display: inline-block; text-align: left;">
<code><span>this_page</span>.<em>not_found</em> = true;</code>
<code><span>if</span> (<b>you_spelt_it_wrong</b>){<br><span>try_again()</span>;<br>}</code>
<code><span>else if</span> (<b>we_screwed_up</b>){<br><em>alert</em>(<i>"We're really sorry about that."</i>);<br><span>window</span>.<em>location</em> = home;<br>}</code>
</div>
</div>
<!-- partial -->
<script type="text/javascript">
function callback(){
return function(){
alert("We're really sorry about that.");
window.location = '/';
}
}
var a = "world";
setTimeout(callback(), 4000);
</script>
<script src="assets/bootstrap/js/bootstrap.min.js"></script>
<script src="assets/js/bs-init.js"></script>
<script src="assets/js/agency.js"></script>
<script src="assets/js/404.js"></script>
</body>
</html>

1
CNAME
View File

@@ -1 +0,0 @@
woodburn.au

View File

@@ -1,4 +1,31 @@
FROM nginx:alpine
COPY . /usr/share/nginx/html
COPY ./assets/img/favicon.png /usr/share/nginx/html
COPY ./nginx.conf /etc/nginx/conf.d/default.conf
FROM --platform=$BUILDPLATFORM python:3.13-alpine
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
# Install curl for healthcheck
RUN apk add --no-cache curl
# Set working directory
WORKDIR /app
# Install dependencies
RUN --mount=type=cache,target=/root/.cache/uv \
--mount=type=bind,source=uv.lock,target=uv.lock \
--mount=type=bind,source=pyproject.toml,target=pyproject.toml \
uv sync --locked --no-install-project
# Copy the project into the image
ADD . /app
# Sync the project
RUN --mount=type=cache,target=/root/.cache/uv \
uv sync --locked
# Add mount point for data volume
ENV BASE_DIR=/data
VOLUME /data
EXPOSE 5000
ENTRYPOINT ["uv", "run"]
CMD ["main.py"]

235
LICENSE Normal file
View File

@@ -0,0 +1,235 @@
GNU AFFERO GENERAL PUBLIC LICENSE
Version 3, 19 November 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
Preamble
The GNU Affero General Public License is a free, copyleft license for software and other kinds of works, specifically designed to ensure cooperation with the community in the case of network server software.
The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, our General Public Licenses are intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things.
Developers that use our General Public Licenses protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License which gives you legal permission to copy, distribute and/or modify the software.
A secondary benefit of defending all users' freedom is that improvements made in alternate versions of the program, if they receive widespread use, become available for other developers to incorporate. Many developers of free software are heartened and encouraged by the resulting cooperation. However, in the case of software used on network servers, this result may fail to come about. The GNU General Public License permits making a modified version and letting the public access it on a server without ever releasing its source code to the public.
The GNU Affero General Public License is designed specifically to ensure that, in such cases, the modified source code becomes available to the community. It requires the operator of a network server to provide the source code of the modified version running there to the users of that server. Therefore, public use of a modified version, on a publicly accessible server, gives the public access to the source code of the modified version.
An older license, called the Affero General Public License and published by Affero, was designed to accomplish similar goals. This is a different license, not a version of the Affero GPL, but Affero has released a new version of the Affero GPL which permits relicensing under this license.
The precise terms and conditions for copying, distribution and modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU Affero General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based on the Program.
To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work.
A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source.
The Corresponding Source for a work in source code form is that same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures.
When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified it, and giving a relevant date.
b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices".
c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so.
A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways:
a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b.
d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d.
A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product.
"Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made.
If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM).
The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or authors of the material; or
e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors.
All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11).
However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.
Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party.
If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it.
A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program.
13. Remote Network Interaction; Use with the GNU General Public License.
Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software. This Corresponding Source shall include the Corresponding Source for any work covered by version 3 of the GNU General Public License that is incorporated pursuant to the following paragraph.
Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the work with which it is combined will remain governed by version 3 of the GNU General Public License.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of the GNU Affero General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU Affero General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU Affero General Public License, you may choose any version ever published by the Free Software Foundation.
If the Program specifies that a proxy can decide which future versions of the GNU Affero General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program.
Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
python-webserver-template
Copyright (C) 2024 nathanwoodburn
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If your software can interact with users remotely through a computer network, you should also make sure that it provides a way for users to get its source. For example, if your program is a web application, its interface could display a "Source" link that leads users to an archive of the code. There are many ways you could offer source, and different solutions will be better for different programs; see section 13 for the specific requirements.
You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU AGPL, see <http://www.gnu.org/licenses/>.

View File

@@ -1,662 +0,0 @@
GNU AFFERO GENERAL PUBLIC LICENSE
Version 3, 19 November 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU Affero General Public License is a free, copyleft license for
software and other kinds of works, specifically designed to ensure
cooperation with the community in the case of network server software.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
our General Public Licenses are intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
Developers that use our General Public Licenses protect your rights
with two steps: (1) assert copyright on the software, and (2) offer
you this License which gives you legal permission to copy, distribute
and/or modify the software.
A secondary benefit of defending all users' freedom is that
improvements made in alternate versions of the program, if they
receive widespread use, become available for other developers to
incorporate. Many developers of free software are heartened and
encouraged by the resulting cooperation. However, in the case of
software used on network servers, this result may fail to come about.
The GNU General Public License permits making a modified version and
letting the public access it on a server without ever releasing its
source code to the public.
The GNU Affero General Public License is designed specifically to
ensure that, in such cases, the modified source code becomes available
to the community. It requires the operator of a network server to
provide the source code of the modified version running there to the
users of that server. Therefore, public use of a modified version, on
a publicly accessible server, gives the public access to the source
code of the modified version.
An older license, called the Affero General Public License and
published by Affero, was designed to accomplish similar goals. This is
a different license, not a version of the Affero GPL, but Affero has
released a new version of the Affero GPL which permits relicensing under
this license.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU Affero General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Remote Network Interaction; Use with the GNU General Public License.
Notwithstanding any other provision of this License, if you modify the
Program, your modified version must prominently offer all users
interacting with it remotely through a computer network (if your version
supports such interaction) an opportunity to receive the Corresponding
Source of your version by providing access to the Corresponding Source
from a network server at no charge, through some standard or customary
means of facilitating copying of software. This Corresponding Source
shall include the Corresponding Source for any work covered by version 3
of the GNU General Public License that is incorporated pursuant to the
following paragraph.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the work with which it is combined will remain governed by version
3 of the GNU General Public License.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU Affero General Public License from time to time. Such new versions
will be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU Affero General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU Affero General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU Affero General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If your software can interact with users remotely through a computer
network, you should also make sure that it provides a way for users to
get its source. For example, if your program is a web application, its
interface could display a "Source" link that leads users to an archive
of the code. There are many ways you could offer source, and different
solutions will be better for different programs; see section 13 for the
specific requirements.
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU AGPL, see
<http://www.gnu.org/licenses/>.

View File

@@ -1,3 +1,33 @@
# Woodburn
Old website files for Woodburn.au and woodburn sites.
The new site is now a dashboard.
# Python Flask Webserver Template
Python3 website template including git actions
## Requirements
- UV
## Development
1. Install project requirements
```bash
uv sync
```
2. Run the dev server
```bash
uv run python3 server.py
```
3. Alternatively use the virtual environment
```bash
source .venv/bin/activate
```
You can exit the environment with `deactivate`
For best development setup, you should install the git hook for pre-commit
```bash
uv run pre-commit install
```
## Production
Run using the main.py file
```bash
python3 main.py
```

View File

@@ -1 +0,0 @@
include: [".well-known"]

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,75 +0,0 @@
* {
padding: 0;
margin: 0;
box-sizing: border-box;
}
body {
background: #282828;
overflow-y: auto;
}
p {
font-family: "Bevan", cursive;
font-size: 130px;
margin: 10vh 0 0;
text-align: center;
overflow-y: auto;
letter-spacing: 5px;
/*background-color: black;*/
color: black;
text-shadow: 2px 2px 3px rgba(255, 255, 255, 0.1);
-webkit-background-clip: text;
-moz-background-clip: text;
background-clip: text;
}
p span {
font-size: 1.2em;
}
code {
color: #bdbdbd;
text-align: left;
display: block;
overflow-y: auto;
font-size: 16px;
margin: 0 30px 25px;
}
code span {
color: #f0c674;
}
code i {
color: #b5bd68;
}
code em {
color: #b294bb;
font-style: unset;
}
code b {
color: #81a2be;
font-weight: 500;
overflow-y: auto;
}
a {
color: #8abeb7;
font-family: monospace;
font-size: 20px;
text-decoration: underline;
overflow-y: auto;
margin-top: 10px;
display: inline-block;
}
@media screen and (max-width: 880px) {
p {
font-size: 14vw;
overflow-y: auto;
}
}

View File

@@ -1 +0,0 @@
*{padding:0;margin:0;box-sizing:border-box}body{background:#282828;overflow-y:auto}p{font-family:Bevan,cursive;font-size:130px;margin:10vh 0 0;text-align:center;overflow-y:auto;letter-spacing:5px;color:#000;text-shadow:2px 2px 3px rgba(255,255,255,.1);-webkit-background-clip:text;-moz-background-clip:text;background-clip:text}p span{font-size:1.2em}code{color:#bdbdbd;text-align:left;display:block;overflow-y:auto;font-size:16px;margin:0 30px 25px}code span{color:#f0c674}code i{color:#b5bd68}code em{color:#b294bb;font-style:unset}code b{color:#81a2be;font-weight:500;overflow-y:auto}a{color:#8abeb7;font-family:monospace;font-size:20px;text-decoration:underline;overflow-y:auto;margin-top:10px;display:inline-block}@media screen and (max-width:880px){p{font-size:14vw;overflow-y:auto}}

View File

@@ -1,86 +0,0 @@
.contact-clean {
background: #f1f7fc;
padding: 80px 0;
}
@media (max-width:767px) {
.contact-clean {
padding: 20px 0;
}
}
.contact-clean form {
max-width: 480px;
width: 90%;
margin: 0 auto;
background-color: #ffffff;
padding: 40px;
border-radius: 4px;
color: #505e6c;
box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
}
@media (max-width:767px) {
.contact-clean form {
padding: 30px;
}
}
.contact-clean h2 {
margin-top: 5px;
font-weight: bold;
font-size: 28px;
margin-bottom: 36px;
color: inherit;
}
.contact-clean form .form-control {
background: #fff;
border-radius: 2px;
box-shadow: 1px 1px 1px rgba(0,0,0,0.05);
outline: none;
color: inherit;
padding-left: 12px;
height: 42px;
}
.contact-clean form .form-control:focus {
border: 1px solid #b2b2b2;
}
.contact-clean form textarea.form-control {
min-height: 100px;
max-height: 260px;
padding-top: 10px;
resize: vertical;
}
.contact-clean form .btn {
padding: 16px 32px;
border: none;
background: none;
box-shadow: none;
text-shadow: none;
opacity: 0.9;
text-transform: uppercase;
font-weight: bold;
font-size: 13px;
letter-spacing: 0.4px;
line-height: 1;
outline: none !important;
}
.contact-clean form .btn:hover {
opacity: 1;
}
.contact-clean form .btn:active {
transform: translateY(1px);
}
.contact-clean form .btn-primary {
background-color: #055ada !important;
margin-top: 15px;
color: #fff;
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,10 +0,0 @@
footer {
position: absolute;
width: 100%;
bottom: 0;
}
a.no-underline {
text-decoration: none;
}

View File

@@ -1 +0,0 @@
footer{position:absolute;width:100%;bottom:0}

View File

@@ -1 +0,0 @@
.contact-clean{background:#f1f7fc;padding:80px 0}.contact-clean form{max-width:480px;width:90%;margin:0 auto;background-color:#fff;padding:40px;border-radius:4px;color:#505e6c;box-shadow:1px 1px 5px rgba(0,0,0,.1)}@media (max-width:767px){.contact-clean{padding:20px 0}.contact-clean form{padding:30px}}.contact-clean h2{margin-top:5px;font-weight:700;font-size:28px;margin-bottom:36px;color:inherit}.contact-clean form .form-control{background:#fff;border-radius:2px;box-shadow:1px 1px 1px rgba(0,0,0,.05);outline:0;color:inherit;padding-left:12px;height:42px}.contact-clean form .form-control:focus{border:1px solid #b2b2b2}.contact-clean form textarea.form-control{min-height:100px;max-height:260px;padding-top:10px;resize:vertical}.contact-clean form .btn{padding:16px 32px;border:none;background:0 0;box-shadow:none;text-shadow:none;opacity:.9;text-transform:uppercase;font-weight:700;font-size:13px;letter-spacing:.4px;line-height:1;outline:0!important}.contact-clean form .btn:hover{opacity:1}.contact-clean form .btn:active{transform:translateY(1px)}.contact-clean form .btn-primary{background-color:#055ada!important;margin-top:15px;color:#fff}

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 692 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,803 +0,0 @@
<?xml version="1.0" standalone="no"?>
<!--
Font Awesome Free 5.12.0 by @fontawesome - https://fontawesome.com
License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
-->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<metadata>
Created by FontForge 20190801 at Tue Dec 10 16:09:21 2019
By Robert Madole
Copyright (c) Font Awesome
</metadata>
<defs>
<font id="FontAwesome5Free-Regular" horiz-adv-x="512" >
<font-face
font-family="Font Awesome 5 Free Regular"
font-weight="400"
font-stretch="normal"
units-per-em="512"
panose-1="2 0 5 3 0 0 0 0 0 0"
ascent="448"
descent="-64"
bbox="-0.0663408 -64.0662 640.01 448.1"
underline-thickness="25"
underline-position="-50"
unicode-range="U+0020-F5C8"
/>
<missing-glyph />
<glyph glyph-name="heart" unicode="&#xf004;"
d="M458.4 383.7c75.2998 -63.4004 64.0996 -166.601 10.5996 -221.3l-175.4 -178.7c-10 -10.2002 -23.2998 -15.7998 -37.5996 -15.7998c-14.2002 0 -27.5996 5.69922 -37.5996 15.8994l-175.4 178.7c-53.5996 54.7002 -64.5996 157.9 10.5996 221.2
c57.8008 48.7002 147.101 41.2998 202.4 -15c55.2998 56.2998 144.6 63.5996 202.4 15zM434.8 196.2c36.2002 36.8994 43.7998 107.7 -7.2998 150.8c-38.7002 32.5996 -98.7002 27.9004 -136.5 -10.5996l-35 -35.7002l-35 35.7002
c-37.5996 38.2998 -97.5996 43.1992 -136.5 10.5c-51.2002 -43.1006 -43.7998 -113.5 -7.2998 -150.7l175.399 -178.7c2.40039 -2.40039 4.40039 -2.40039 6.80078 0z" />
<glyph glyph-name="star" unicode="&#xf005;" horiz-adv-x="576"
d="M528.1 276.5c26.2002 -3.7998 36.7002 -36.0996 17.7002 -54.5996l-105.7 -103l25 -145.5c4.5 -26.3008 -23.1992 -45.9004 -46.3994 -33.7002l-130.7 68.7002l-130.7 -68.7002c-23.2002 -12.2998 -50.8994 7.39941 -46.3994 33.7002l25 145.5l-105.7 103
c-19 18.5 -8.5 50.7998 17.7002 54.5996l146.1 21.2998l65.2998 132.4c11.7998 23.8994 45.7002 23.5996 57.4004 0l65.2998 -132.4zM388.6 135.7l100.601 98l-139 20.2002l-62.2002 126l-62.2002 -126l-139 -20.2002l100.601 -98l-23.7002 -138.4l124.3 65.2998
l124.3 -65.2998z" />
<glyph glyph-name="user" unicode="&#xf007;" horiz-adv-x="448"
d="M313.6 144c74.2002 0 134.4 -60.2002 134.4 -134.4v-25.5996c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v25.5996c0 74.2002 60.2002 134.4 134.4 134.4c28.7998 0 42.5 -16 89.5996 -16s60.9004 16 89.5996 16zM400 -16v25.5996
c0 47.6006 -38.7998 86.4004 -86.4004 86.4004c-14.6992 0 -37.8994 -16 -89.5996 -16c-51.2998 0 -75 16 -89.5996 16c-47.6006 0 -86.4004 -38.7998 -86.4004 -86.4004v-25.5996h352zM224 160c-79.5 0 -144 64.5 -144 144s64.5 144 144 144s144 -64.5 144 -144
s-64.5 -144 -144 -144zM224 400c-52.9004 0 -96 -43.0996 -96 -96s43.0996 -96 96 -96s96 43.0996 96 96s-43.0996 96 -96 96z" />
<glyph glyph-name="clock" unicode="&#xf017;"
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200zM317.8 96.4004l-84.8994 61.6992
c-3.10059 2.30078 -4.90039 5.90039 -4.90039 9.7002v164.2c0 6.59961 5.40039 12 12 12h32c6.59961 0 12 -5.40039 12 -12v-141.7l66.7998 -48.5996c5.40039 -3.90039 6.5 -11.4004 2.60059 -16.7998l-18.8008 -25.9004c-3.89941 -5.2998 -11.3994 -6.5 -16.7998 -2.59961z
" />
<glyph glyph-name="list-alt" unicode="&#xf022;"
d="M464 416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h416zM458 16c3.31152 0 6 2.68848 6 6v340c0 3.31152 -2.68848 6 -6 6h-404c-3.31152 0 -6 -2.68848 -6 -6v-340
c0 -3.31152 2.68848 -6 6 -6h404zM416 108v-24c0 -6.62695 -5.37305 -12 -12 -12h-200c-6.62695 0 -12 5.37305 -12 12v24c0 6.62695 5.37305 12 12 12h200c6.62695 0 12 -5.37305 12 -12zM416 204v-24c0 -6.62695 -5.37305 -12 -12 -12h-200c-6.62695 0 -12 5.37305 -12 12
v24c0 6.62695 5.37305 12 12 12h200c6.62695 0 12 -5.37305 12 -12zM416 300v-24c0 -6.62695 -5.37305 -12 -12 -12h-200c-6.62695 0 -12 5.37305 -12 12v24c0 6.62695 5.37305 12 12 12h200c6.62695 0 12 -5.37305 12 -12zM164 288c0 -19.8818 -16.1182 -36 -36 -36
s-36 16.1182 -36 36s16.1182 36 36 36s36 -16.1182 36 -36zM164 192c0 -19.8818 -16.1182 -36 -36 -36s-36 16.1182 -36 36s16.1182 36 36 36s36 -16.1182 36 -36zM164 96c0 -19.8818 -16.1182 -36 -36 -36s-36 16.1182 -36 36s16.1182 36 36 36s36 -16.1182 36 -36z" />
<glyph glyph-name="flag" unicode="&#xf024;"
d="M336.174 368c35.4668 0 73.0195 12.6914 108.922 28.1797c31.6406 13.6514 66.9043 -9.65723 66.9043 -44.1162v-239.919c0 -16.1953 -8.1543 -31.3057 -21.7129 -40.1631c-26.5762 -17.3643 -70.0693 -39.9814 -128.548 -39.9814c-68.6084 0 -112.781 32 -161.913 32
c-56.5674 0 -89.957 -11.2803 -127.826 -28.5566v-83.4434c0 -8.83691 -7.16309 -16 -16 -16h-16c-8.83691 0 -16 7.16309 -16 16v406.438c-14.3428 8.2998 -24 23.7979 -24 41.5615c0 27.5693 23.2422 49.71 51.2012 47.8965
c22.9658 -1.49023 41.8662 -19.4717 44.4805 -42.3379c0.177734 -1.52441 0.321289 -4.00781 0.321289 -5.54199c0 -4.30176 -1.10352 -11.1035 -2.46289 -15.1846c22.418 8.68555 49.4199 15.168 80.7207 15.168c68.6084 0 112.781 -32 161.913 -32zM464 112v240
c-31.5059 -14.6338 -84.5547 -32 -127.826 -32c-59.9111 0 -101.968 32 -161.913 32c-41.4365 0 -80.4766 -16.5879 -102.261 -32v-232c31.4473 14.5967 84.4648 24 127.826 24c59.9111 0 101.968 -32 161.913 -32c41.4365 0 80.4775 16.5879 102.261 32z" />
<glyph glyph-name="bookmark" unicode="&#xf02e;" horiz-adv-x="384"
d="M336 448c26.5098 0 48 -21.4902 48 -48v-464l-192 112l-192 -112v464c0 26.5098 21.4902 48 48 48h288zM336 19.5703v374.434c0 3.31348 -2.68555 5.99609 -6 5.99609h-276c-3.31152 0 -6 -2.68848 -6 -6v-374.43l144 84z" />
<glyph glyph-name="image" unicode="&#xf03e;"
d="M464 384c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h416zM458 48c3.31152 0 6 2.68848 6 6v276c0 3.31152 -2.68848 6 -6 6h-404c-3.31152 0 -6 -2.68848 -6 -6v-276
c0 -3.31152 2.68848 -6 6 -6h404zM128 296c22.0908 0 40 -17.9092 40 -40s-17.9092 -40 -40 -40s-40 17.9092 -40 40s17.9092 40 40 40zM96 96v48l39.5137 39.5146c4.6875 4.68652 12.2852 4.68652 16.9717 0l39.5146 -39.5146l119.514 119.515
c4.6875 4.68652 12.2852 4.68652 16.9717 0l87.5146 -87.5146v-80h-320z" />
<glyph glyph-name="edit" unicode="&#xf044;" horiz-adv-x="576"
d="M402.3 103.1l32 32c5 5 13.7002 1.5 13.7002 -5.69922v-145.4c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h273.5c7.09961 0 10.7002 -8.59961 5.7002 -13.7002l-32 -32c-1.5 -1.5 -3.5 -2.2998 -5.7002 -2.2998h-241.5v-352h352
v113.5c0 2.09961 0.799805 4.09961 2.2998 5.59961zM558.9 304.9l-262.601 -262.601l-90.3994 -10c-26.2002 -2.89941 -48.5 19.2002 -45.6006 45.6006l10 90.3994l262.601 262.601c22.8994 22.8994 59.8994 22.8994 82.6992 0l43.2002 -43.2002
c22.9004 -22.9004 22.9004 -60 0.100586 -82.7998zM460.1 274l-58.0996 58.0996l-185.8 -185.899l-7.2998 -65.2998l65.2998 7.2998zM524.9 353.7l-43.2002 43.2002c-4.10059 4.09961 -10.7998 4.09961 -14.7998 0l-30.9004 -30.9004l58.0996 -58.0996l30.9004 30.8994
c4 4.2002 4 10.7998 -0.0996094 14.9004z" />
<glyph glyph-name="times-circle" unicode="&#xf057;"
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200zM357.8 254.2l-62.2002 -62.2002l62.2002 -62.2002
c4.7002 -4.7002 4.7002 -12.2998 0 -17l-22.5996 -22.5996c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-62.2002 62.2002l-62.2002 -62.2002c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-22.5996 22.5996c-4.7002 4.7002 -4.7002 12.2998 0 17l62.2002 62.2002l-62.2002 62.2002
c-4.7002 4.7002 -4.7002 12.2998 0 17l22.5996 22.5996c4.7002 4.7002 12.2998 4.7002 17 0l62.2002 -62.2002l62.2002 62.2002c4.7002 4.7002 12.2998 4.7002 17 0l22.5996 -22.5996c4.7002 -4.7002 4.7002 -12.2998 0 -17z" />
<glyph glyph-name="check-circle" unicode="&#xf058;"
d="M256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248zM256 392c-110.549 0 -200 -89.4678 -200 -200c0 -110.549 89.4678 -200 200 -200c110.549 0 200 89.4678 200 200c0 110.549 -89.4678 200 -200 200z
M396.204 261.733c4.66699 -4.70508 4.63672 -12.3037 -0.0673828 -16.9717l-172.589 -171.204c-4.70508 -4.66797 -12.3027 -4.63672 -16.9697 0.0683594l-90.7812 91.5156c-4.66797 4.70605 -4.63672 12.3047 0.0683594 16.9717l22.7188 22.5361
c4.70508 4.66699 12.3027 4.63574 16.9697 -0.0693359l59.792 -60.2773l141.353 140.216c4.70508 4.66797 12.3027 4.6377 16.9697 -0.0673828z" />
<glyph glyph-name="question-circle" unicode="&#xf059;"
d="M256 440c136.957 0 248 -111.083 248 -248c0 -136.997 -111.043 -248 -248 -248s-248 111.003 -248 248c0 136.917 111.043 248 248 248zM256 -8c110.569 0 200 89.4697 200 200c0 110.529 -89.5088 200 -200 200c-110.528 0 -200 -89.5049 -200 -200
c0 -110.569 89.4678 -200 200 -200zM363.244 247.2c0 -67.0518 -72.4209 -68.084 -72.4209 -92.8633v-6.33691c0 -6.62695 -5.37305 -12 -12 -12h-45.6475c-6.62695 0 -12 5.37305 -12 12v8.65918c0 35.7451 27.1006 50.0342 47.5791 61.5156
c17.5615 9.84473 28.3242 16.541 28.3242 29.5791c0 17.2461 -21.999 28.6934 -39.7842 28.6934c-23.1885 0 -33.8936 -10.9775 -48.9424 -29.9697c-4.05664 -5.11914 -11.46 -6.07031 -16.666 -2.12402l-27.8232 21.0986
c-5.10742 3.87207 -6.25098 11.0654 -2.64453 16.3633c23.627 34.6934 53.7217 54.1846 100.575 54.1846c49.0713 0 101.45 -38.3037 101.45 -88.7998zM298 80c0 -23.1592 -18.8408 -42 -42 -42s-42 18.8408 -42 42s18.8408 42 42 42s42 -18.8408 42 -42z" />
<glyph glyph-name="eye" unicode="&#xf06e;" horiz-adv-x="576"
d="M288 304c0.0927734 0 0.244141 0.000976562 0.336914 0.000976562c61.6641 0 111.71 -50.0469 111.71 -111.711c0 -61.6631 -50.0459 -111.71 -111.71 -111.71s-111.71 50.0469 -111.71 111.71c0 8.71289 1.95898 22.5781 4.37305 30.9502
c6.93066 -3.94141 19.0273 -7.18457 27 -7.24023c30.9121 0 56 25.0879 56 56c-0.0556641 7.97266 -3.29883 20.0693 -7.24023 27c8.42383 2.62207 22.4189 4.8623 31.2402 5zM572.52 206.6c1.9209 -3.79883 3.47949 -10.3379 3.47949 -14.5947
s-1.55859 -10.7959 -3.47949 -14.5947c-54.1992 -105.771 -161.59 -177.41 -284.52 -177.41s-230.29 71.5898 -284.52 177.4c-1.9209 3.79883 -3.47949 10.3379 -3.47949 14.5947s1.55859 10.7959 3.47949 14.5947c54.1992 105.771 161.59 177.41 284.52 177.41
s230.29 -71.5898 284.52 -177.4zM288 48c98.6602 0 189.1 55 237.93 144c-48.8398 89 -139.27 144 -237.93 144s-189.09 -55 -237.93 -144c48.8398 -89 139.279 -144 237.93 -144z" />
<glyph glyph-name="eye-slash" unicode="&#xf070;" horiz-adv-x="640"
d="M634 -23c3.31738 -2.65137 6.00977 -8.25098 6.00977 -12.498c0 -3.10449 -1.57715 -7.58984 -3.51953 -10.0117l-10 -12.4902c-2.65234 -3.31152 -8.24707 -6 -12.4902 -6c-3.09961 0 -7.58008 1.57227 -10 3.50977l-598 467.49
c-3.31738 2.65137 -6.00977 8.25098 -6.00977 12.498c0 3.10449 1.57715 7.58984 3.51953 10.0117l10 12.4902c2.65234 3.31152 8.24707 6 12.4902 6c3.09961 0 7.58008 -1.57227 10 -3.50977zM296.79 301.53c6.33496 1.35059 16.7324 2.45801 23.21 2.46973
c60.4805 0 109.36 -47.9102 111.58 -107.85zM343.21 82.46c-6.33496 -1.34375 -16.7334 -2.44629 -23.21 -2.45996c-60.4697 0 -109.35 47.9102 -111.58 107.84zM320 336c-19.8799 0 -39.2803 -2.7998 -58.2197 -7.09961l-46.4102 36.29
c32.9199 11.8096 67.9297 18.8096 104.63 18.8096c122.93 0 230.29 -71.5898 284.57 -177.4c1.91992 -3.79883 3.47949 -10.3379 3.47949 -14.5947s-1.55957 -10.7959 -3.47949 -14.5947c-11.7197 -22.7598 -35.4189 -56.4092 -52.9004 -75.1104l-37.7402 29.5
c14.333 15.0156 34.0449 41.9854 44 60.2002c-48.8398 89 -139.279 144 -237.93 144zM320 48c19.8896 0 39.2803 2.7998 58.2197 7.08984l46.4102 -36.2803c-32.9199 -11.7598 -67.9297 -18.8096 -104.63 -18.8096c-122.92 0 -230.28 71.5898 -284.51 177.4
c-1.9209 3.79883 -3.47949 10.3379 -3.47949 14.5947s1.55859 10.7959 3.47949 14.5947c11.7168 22.7568 35.4111 56.4014 52.8896 75.1006l37.7402 -29.5c-14.3467 -15.0107 -34.0811 -41.9756 -44.0498 -60.1904c48.8496 -89 139.279 -144 237.93 -144z" />
<glyph glyph-name="calendar-alt" unicode="&#xf073;" horiz-adv-x="448"
d="M148 160h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12zM256 172c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40
c6.59961 0 12 -5.40039 12 -12v-40zM352 172c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM256 76c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40
c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM160 76c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM352 76c0 -6.59961 -5.40039 -12 -12 -12h-40
c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM448 336v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40
c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48zM400 -10v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="comment" unicode="&#xf075;"
d="M256 416c141.4 0 256 -93.0996 256 -208s-114.6 -208 -256 -208c-32.7998 0 -64 5.2002 -92.9004 14.2998c-29.0996 -20.5996 -77.5996 -46.2998 -139.1 -46.2998c-9.59961 0 -18.2998 5.7002 -22.0996 14.5c-3.80078 8.7998 -2 19 4.59961 26
c0.5 0.400391 31.5 33.7998 46.4004 73.2002c-33 35.0996 -52.9004 78.7002 -52.9004 126.3c0 114.9 114.6 208 256 208zM256 48c114.7 0 208 71.7998 208 160s-93.2998 160 -208 160s-208 -71.7998 -208 -160c0 -42.2002 21.7002 -74.0996 39.7998 -93.4004
l20.6006 -21.7998l-10.6006 -28.0996c-5.5 -14.5 -12.5996 -28.1006 -19.8994 -40.2002c23.5996 7.59961 43.1992 18.9004 57.5 29l19.5 13.7998l22.6992 -7.2002c25.3008 -8 51.7002 -12.0996 78.4004 -12.0996z" />
<glyph glyph-name="folder" unicode="&#xf07b;"
d="M464 320c26.5098 0 48 -21.4902 48 -48v-224c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h146.74c8.49023 0 16.6299 -3.37012 22.6299 -9.37012l54.6299 -54.6299h192zM464 48v224h-198.62
c-8.49023 0 -16.6299 3.37012 -22.6299 9.37012l-54.6299 54.6299h-140.12v-288h416z" />
<glyph glyph-name="folder-open" unicode="&#xf07c;" horiz-adv-x="576"
d="M527.9 224c37.6992 0 60.6992 -41.5 40.6992 -73.4004l-79.8994 -128c-8.7998 -14.0996 -24.2002 -22.5996 -40.7002 -22.5996h-400c-26.5 0 -48 21.5 -48 48v288c0 26.5 21.5 48 48 48h160l64 -64h160c26.5 0 48 -21.5 48 -48v-48h47.9004zM48 330v-233.4l62.9004 104.2
c8.69922 14.4004 24.2998 23.2002 41.0996 23.2002h280v42c0 3.2998 -2.7002 6 -6 6h-173.9l-64 64h-134.1c-3.2998 0 -6 -2.7002 -6 -6zM448 48l80 128h-378.8l-77.2002 -128h376z" />
<glyph glyph-name="chart-bar" unicode="&#xf080;"
d="M396.8 96c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v230.4c0 6.39941 6.40039 12.7998 12.7998 12.7998h22.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-230.4c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-22.4004zM204.8 96
c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v198.4c0 6.39941 6.40039 12.7998 12.7998 12.7998h22.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-198.4c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-22.4004zM300.8 96
c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v134.4c0 6.39941 6.40039 12.7998 12.7998 12.7998h22.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-134.4c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-22.4004zM496 48c8.83984 0 16 -7.16016 16 -16v-16
c0 -8.83984 -7.16016 -16 -16 -16h-464c-17.6699 0 -32 14.3301 -32 32v336c0 8.83984 7.16016 16 16 16h16c8.83984 0 16 -7.16016 16 -16v-320h448zM108.8 96c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v70.4004c0 6.39941 6.40039 12.7998 12.7998 12.7998h22.4004
c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-70.4004c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-22.4004z" />
<glyph glyph-name="comments" unicode="&#xf086;" horiz-adv-x="576"
d="M532 61.7998c15.2998 -30.7002 37.4004 -54.5 37.7998 -54.7998c6.2998 -6.7002 8 -16.5 4.40039 -25c-3.7002 -8.5 -12 -14 -21.2002 -14c-53.5996 0 -96.7002 20.2998 -125.2 38.7998c-19 -4.39941 -39 -6.7998 -59.7998 -6.7998
c-86.2002 0 -159.9 40.4004 -191.3 97.7998c-9.7002 1.2002 -19.2002 2.7998 -28.4004 4.90039c-28.5 -18.6006 -71.7002 -38.7998 -125.2 -38.7998c-9.19922 0 -17.5996 5.5 -21.1992 14c-3.7002 8.5 -1.90039 18.2998 4.39941 25
c0.400391 0.399414 22.4004 24.1992 37.7002 54.8994c-27.5 27.2002 -44 61.2002 -44 98.2002c0 88.4004 93.0996 160 208 160c86.2998 0 160.3 -40.5 191.8 -98.0996c99.7002 -11.8008 176.2 -77.9004 176.2 -157.9c0 -37.0996 -16.5 -71.0996 -44 -98.2002zM139.2 154.1
l19.7998 -4.5c16 -3.69922 32.5 -5.59961 49 -5.59961c86.7002 0 160 51.2998 160 112s-73.2998 112 -160 112s-160 -51.2998 -160 -112c0 -28.7002 16.2002 -50.5996 29.7002 -64l24.7998 -24.5l-15.5 -31.0996c-2.59961 -5.10059 -5.2998 -10.1006 -8 -14.8008
c14.5996 5.10059 29 12.3008 43.0996 21.4004zM498.3 96c13.5 13.4004 29.7002 35.2998 29.7002 64c0 49.2002 -48.2998 91.5 -112.7 106c0.299805 -3.2998 0.700195 -6.59961 0.700195 -10c0 -80.9004 -78 -147.5 -179.3 -158.3
c29.0996 -29.6006 77.2998 -49.7002 131.3 -49.7002c16.5 0 33 1.90039 49 5.59961l19.9004 4.60059l17.0996 -11.1006c14.0996 -9.09961 28.5 -16.2998 43.0996 -21.3994c-2.69922 4.7002 -5.39941 9.7002 -8 14.7998l-15.5 31.0996z" />
<glyph glyph-name="star-half" unicode="&#xf089;" horiz-adv-x="576"
d="M288 62.7002v-54.2998l-130.7 -68.6006c-23.3994 -12.2998 -50.8994 7.60059 -46.3994 33.7002l25 145.5l-105.7 103c-19 18.5 -8.5 50.7998 17.7002 54.5996l146.1 21.2002l65.2998 132.4c5.90039 11.8994 17.2998 17.7998 28.7002 17.7998v-68.0996l-62.2002 -126
l-139 -20.2002l100.601 -98l-23.7002 -138.4z" />
<glyph glyph-name="lemon" unicode="&#xf094;"
d="M484.112 420.111c28.1221 -28.123 35.9434 -68.0039 19.0215 -97.0547c-23.0576 -39.584 50.1436 -163.384 -82.3311 -295.86c-132.301 -132.298 -256.435 -59.3594 -295.857 -82.3291c-29.0459 -16.917 -68.9219 -9.11426 -97.0576 19.0205
c-28.1221 28.1221 -35.9434 68.0029 -19.0215 97.0547c23.0566 39.5859 -50.1436 163.386 82.3301 295.86c132.308 132.309 256.407 59.3496 295.862 82.332c29.0498 16.9219 68.9307 9.09863 97.0537 -19.0234zM461.707 347.217
c13.5166 23.2031 -27.7578 63.7314 -50.4883 50.4912c-66.6025 -38.7939 -165.646 45.5898 -286.081 -74.8457c-120.444 -120.445 -36.0449 -219.472 -74.8447 -286.08c-13.542 -23.2471 27.8145 -63.6953 50.4932 -50.4883
c66.6006 38.7949 165.636 -45.5996 286.076 74.8428c120.444 120.445 36.0449 219.472 74.8447 286.08zM291.846 338.481c1.37012 -10.96 -6.40332 -20.957 -17.3643 -22.3271c-54.8467 -6.85547 -135.779 -87.7871 -142.636 -142.636
c-1.37305 -10.9883 -11.3984 -18.7334 -22.3262 -17.3643c-10.9609 1.37012 -18.7344 11.3652 -17.3643 22.3262c9.16211 73.2852 104.167 168.215 177.364 177.364c10.9531 1.36816 20.9561 -6.40234 22.3262 -17.3633z" />
<glyph glyph-name="credit-card" unicode="&#xf09d;" horiz-adv-x="576"
d="M527.9 416c26.5996 0 48.0996 -21.5 48.0996 -48v-352c0 -26.5 -21.5 -48 -48.0996 -48h-479.801c-26.5996 0 -48.0996 21.5 -48.0996 48v352c0 26.5 21.5 48 48.0996 48h479.801zM54.0996 368c-3.2998 0 -6 -2.7002 -6 -6v-42h479.801v42c0 3.2998 -2.7002 6 -6 6
h-467.801zM521.9 16c3.2998 0 6 2.7002 6 6v170h-479.801v-170c0 -3.2998 2.7002 -6 6 -6h467.801zM192 116v-40c0 -6.59961 -5.40039 -12 -12 -12h-72c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h72c6.59961 0 12 -5.40039 12 -12zM384 116v-40
c0 -6.59961 -5.40039 -12 -12 -12h-136c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h136c6.59961 0 12 -5.40039 12 -12z" />
<glyph glyph-name="hdd" unicode="&#xf0a0;" horiz-adv-x="576"
d="M567.403 212.358c5.59668 -8.04688 8.59668 -17.6113 8.59668 -27.4121v-136.946c0 -26.5098 -21.4902 -48 -48 -48h-480c-26.5098 0 -48 21.4902 -48 48v136.946c0 8.30957 3.85156 20.5898 8.59668 27.4121l105.08 151.053
c7.90625 11.3652 25.5596 20.5889 39.4033 20.5889h0.000976562h269.838h0.000976562c13.8438 0 31.4971 -9.22363 39.4033 -20.5889zM153.081 336l-77.9131 -112h425.664l-77.9131 112h-269.838zM528 48v128h-480v-128h480zM496 112c0 -17.6729 -14.3271 -32 -32 -32
s-32 14.3271 -32 32s14.3271 32 32 32s32 -14.3271 32 -32zM400 112c0 -17.6729 -14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32s32 -14.3271 32 -32z" />
<glyph glyph-name="hand-point-right" unicode="&#xf0a4;"
d="M428.8 310.4c45.0996 0 83.2002 -38.1016 83.2002 -83.2002c0 -45.6162 -37.7646 -83.2002 -83.2002 -83.2002h-35.6475c-1.41602 -6.36719 -4.96875 -16.252 -7.92969 -22.0645c2.50586 -22.0059 -3.50293 -44.9775 -15.9844 -62.791
c-1.14062 -52.4863 -37.3984 -91.1445 -99.9404 -91.1445h-21.2988c-60.0635 0 -98.5117 40 -127.2 40h-2.67871c-5.74707 -4.95215 -13.5361 -8 -22.1201 -8h-64c-17.6729 0 -32 12.8936 -32 28.7998v230.4c0 15.9062 14.3271 28.7998 32 28.7998h64.001
c8.58398 0 16.373 -3.04785 22.1201 -8h2.67871c6.96387 0 14.8623 6.19336 30.1816 23.6689l0.128906 0.148438l0.130859 0.145508c8.85645 9.93652 18.1162 20.8398 25.8506 33.2529c18.7051 30.2471 30.3936 78.7842 75.707 78.7842c56.9277 0 92 -35.2861 92 -83.2002
v-0.0839844c0 -6.21777 -0.974609 -16.2148 -2.17578 -22.3154h86.1768zM428.8 192c18.9756 0 35.2002 16.2246 35.2002 35.2002c0 18.7002 -16.7754 35.2002 -35.2002 35.2002h-158.399c0 17.3242 26.3994 35.1992 26.3994 70.3994c0 26.4004 -20.625 35.2002 -44 35.2002
c-8.79395 0 -20.4443 -32.7119 -34.9258 -56.0996c-9.07422 -14.5752 -19.5244 -27.2256 -30.7988 -39.875c-16.1094 -18.374 -33.8359 -36.6328 -59.0752 -39.5967v-176.753c42.79 -3.7627 74.5088 -39.6758 120 -39.6758h21.2988
c40.5244 0 57.124 22.1973 50.6006 61.3252c14.6113 8.00098 24.1514 33.9785 12.9248 53.625c19.3652 18.2246 17.7871 46.3809 4.9502 61.0498h91.0254zM88 64c0 13.2549 -10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24z" />
<glyph glyph-name="hand-point-left" unicode="&#xf0a5;"
d="M0 227.2c0 45.0986 38.1006 83.2002 83.2002 83.2002h86.1758c-1.3623 6.91016 -2.17578 14.374 -2.17578 22.3994c0 47.9141 35.0723 83.2002 92 83.2002c45.3135 0 57.002 -48.5371 75.7061 -78.7852c7.73438 -12.4121 16.9951 -23.3154 25.8506 -33.2529
l0.130859 -0.145508l0.128906 -0.148438c15.3213 -17.4746 23.2197 -23.668 30.1836 -23.668h2.67871c5.74707 4.95215 13.5361 8 22.1201 8h64c17.6729 0 32 -12.8936 32 -28.7998v-230.4c0 -15.9062 -14.3271 -28.7998 -32 -28.7998h-64
c-8.58398 0 -16.373 3.04785 -22.1201 8h-2.67871c-28.6885 0 -67.1367 -40 -127.2 -40h-21.2988c-62.542 0 -98.8008 38.6582 -99.9404 91.1445c-12.4814 17.8135 -18.4922 40.7852 -15.9844 62.791c-2.96094 5.8125 -6.51367 15.6973 -7.92969 22.0645h-35.6465
c-45.4355 0 -83.2002 37.584 -83.2002 83.2002zM48 227.2c0 -18.9756 16.2246 -35.2002 35.2002 -35.2002h91.0244c-12.8369 -14.6689 -14.415 -42.8252 4.9502 -61.0498c-11.2256 -19.6465 -1.68652 -45.624 12.9248 -53.625
c-6.52246 -39.1279 10.0771 -61.3252 50.6016 -61.3252h21.2988c45.4912 0 77.21 35.9131 120 39.6768v176.752c-25.2393 2.96289 -42.9658 21.2227 -59.0752 39.5967c-11.2744 12.6494 -21.7246 25.2998 -30.7988 39.875
c-14.4814 23.3877 -26.1318 56.0996 -34.9258 56.0996c-23.375 0 -44 -8.7998 -44 -35.2002c0 -35.2002 26.3994 -53.0752 26.3994 -70.3994h-158.399c-18.4248 0 -35.2002 -16.5 -35.2002 -35.2002zM448 88c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24
s24 10.7451 24 24s-10.7451 24 -24 24z" />
<glyph glyph-name="hand-point-up" unicode="&#xf0a6;" horiz-adv-x="448"
d="M105.6 364.8c0 45.0996 38.1016 83.2002 83.2002 83.2002c45.6162 0 83.2002 -37.7646 83.2002 -83.2002v-35.6465c6.36719 -1.41602 16.252 -4.96875 22.0645 -7.92969c22.0059 2.50684 44.9775 -3.50293 62.791 -15.9844
c52.4863 -1.14062 91.1445 -37.3984 91.1445 -99.9404v-21.2988c0 -60.0635 -40 -98.5117 -40 -127.2v-2.67871c4.95215 -5.74707 8 -13.5361 8 -22.1201v-64c0 -17.6729 -12.8936 -32 -28.7998 -32h-230.4c-15.9062 0 -28.7998 14.3271 -28.7998 32v64
c0 8.58398 3.04785 16.373 8 22.1201v2.67871c0 6.96387 -6.19336 14.8623 -23.6689 30.1816l-0.148438 0.128906l-0.145508 0.130859c-9.93652 8.85645 -20.8398 18.1162 -33.2529 25.8506c-30.2471 18.7051 -78.7842 30.3936 -78.7842 75.707
c0 56.9277 35.2861 92 83.2002 92h0.0839844c6.21777 0 16.2148 -0.974609 22.3154 -2.17578v86.1768zM224 364.8c0 18.9756 -16.2246 35.2002 -35.2002 35.2002c-18.7002 0 -35.2002 -16.7754 -35.2002 -35.2002v-158.399c-17.3242 0 -35.1992 26.3994 -70.3994 26.3994
c-26.4004 0 -35.2002 -20.625 -35.2002 -44c0 -8.79395 32.7119 -20.4443 56.0996 -34.9258c14.5752 -9.07422 27.2256 -19.5244 39.875 -30.7988c18.374 -16.1094 36.6328 -33.8359 39.5967 -59.0752h176.753c3.7627 42.79 39.6758 74.5088 39.6758 120v21.2988
c0 40.5244 -22.1973 57.124 -61.3252 50.6006c-8.00098 14.6113 -33.9785 24.1514 -53.625 12.9248c-18.2246 19.3652 -46.3809 17.7871 -61.0498 4.9502v91.0254zM352 24c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24z" />
<glyph glyph-name="hand-point-down" unicode="&#xf0a7;" horiz-adv-x="448"
d="M188.8 -64c-45.0986 0 -83.2002 38.1006 -83.2002 83.2002v86.1758c-6.91016 -1.3623 -14.374 -2.17578 -22.3994 -2.17578c-47.9141 0 -83.2002 35.0723 -83.2002 92c0 45.3135 48.5371 57.002 78.7852 75.707c12.4121 7.73438 23.3154 16.9951 33.2529 25.8506
l0.145508 0.130859l0.148438 0.128906c17.4746 15.3213 23.668 23.2197 23.668 30.1836v2.67871c-4.95215 5.74707 -8 13.5361 -8 22.1201v64c0 17.6729 12.8936 32 28.7998 32h230.4c15.9062 0 28.7998 -14.3271 28.7998 -32v-64.001
c0 -8.58398 -3.04785 -16.373 -8 -22.1201v-2.67871c0 -28.6885 40 -67.1367 40 -127.2v-21.2988c0 -62.542 -38.6582 -98.8008 -91.1445 -99.9404c-17.8135 -12.4814 -40.7852 -18.4922 -62.791 -15.9844c-5.8125 -2.96094 -15.6973 -6.51367 -22.0645 -7.92969v-35.6465
c0 -45.4355 -37.584 -83.2002 -83.2002 -83.2002zM188.8 -16c18.9756 0 35.2002 16.2246 35.2002 35.2002v91.0244c14.6689 -12.8369 42.8252 -14.415 61.0498 4.9502c19.6465 -11.2256 45.624 -1.68652 53.625 12.9248c39.1279 -6.52246 61.3252 10.0771 61.3252 50.6016
v21.2988c0 45.4912 -35.9131 77.21 -39.6768 120h-176.752c-2.96289 -25.2393 -21.2227 -42.9658 -39.5967 -59.0752c-12.6494 -11.2744 -25.2998 -21.7246 -39.875 -30.7988c-23.3877 -14.4814 -56.0996 -26.1318 -56.0996 -34.9258c0 -23.375 8.7998 -44 35.2002 -44
c35.2002 0 53.0752 26.3994 70.3994 26.3994v-158.399c0 -18.4248 16.5 -35.2002 35.2002 -35.2002zM328 384c0 -13.2549 10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24s-24 -10.7451 -24 -24z" />
<glyph glyph-name="copy" unicode="&#xf0c5;" horiz-adv-x="448"
d="M433.941 382.059c7.75977 -7.75977 14.0586 -22.9658 14.0586 -33.9404v-268.118c0 -26.5098 -21.4902 -48 -48 -48h-80v-48c0 -26.5098 -21.4902 -48 -48 -48h-224c-26.5098 0 -48 21.4902 -48 48v320c0 26.5098 21.4902 48 48 48h80v48c0 26.5098 21.4902 48 48 48
h172.118c10.9746 0 26.1807 -6.29883 33.9404 -14.0586zM266 -16c3.31152 0 6 2.68848 6 6v42h-96c-26.5098 0 -48 21.4902 -48 48v224h-74c-3.31152 0 -6 -2.68848 -6 -6v-308c0 -3.31152 2.68848 -6 6 -6h212zM394 80c3.31152 0 6 2.68848 6 6v202h-88
c-13.2549 0 -24 10.7451 -24 24v88h-106c-3.31152 0 -6 -2.68848 -6 -6v-308c0 -3.31152 2.68848 -6 6 -6h212zM400 336v9.63184v0.000976562c0 1.37207 -0.787109 3.27246 -1.75684 4.24219l-48.3682 48.3682c-1.12598 1.125 -2.65234 1.75684 -4.24316 1.75684h-9.63184
v-64h64z" />
<glyph glyph-name="save" unicode="&#xf0c7;" horiz-adv-x="448"
d="M433.941 318.059c7.75977 -7.75977 14.0586 -22.9658 14.0586 -33.9404v-268.118c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h268.118c10.9746 0 26.1807 -6.29883 33.9404 -14.0586zM272 368h-128v-80h128v80
zM394 16c3.31152 0 6 2.68848 6 6v259.632v0.000976562c0 1.37207 -0.787109 3.27246 -1.75684 4.24219l-78.2432 78.2432v-100.118c0 -13.2549 -10.7451 -24 -24 -24h-176c-13.2549 0 -24 10.7451 -24 24v104h-42c-3.31152 0 -6 -2.68848 -6 -6v-340
c0 -3.31152 2.68848 -6 6 -6h340zM224 216c48.5234 0 88 -39.4766 88 -88s-39.4766 -88 -88 -88s-88 39.4766 -88 88s39.4766 88 88 88zM224 88c22.0557 0 40 17.9443 40 40s-17.9443 40 -40 40s-40 -17.9443 -40 -40s17.9443 -40 40 -40z" />
<glyph glyph-name="square" unicode="&#xf0c8;" horiz-adv-x="448"
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM394 16c3.2998 0 6 2.7002 6 6v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340z" />
<glyph glyph-name="envelope" unicode="&#xf0e0;"
d="M464 384c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h416zM464 336h-416v-40.8047c22.4248 -18.2627 58.1797 -46.6602 134.587 -106.49
c16.834 -13.2422 50.2051 -45.0762 73.4131 -44.7012c23.2119 -0.371094 56.5723 31.4541 73.4131 44.7012c76.4189 59.8389 112.165 88.2305 134.587 106.49v40.8047zM48 48h416v185.601c-22.915 -18.252 -55.4189 -43.8691 -104.947 -82.6523
c-22.5439 -17.748 -60.3359 -55.1787 -103.053 -54.9473c-42.9277 -0.231445 -81.2051 37.75 -103.062 54.9551c-49.5293 38.7842 -82.0244 64.3945 -104.938 82.6455v-185.602z" />
<glyph glyph-name="lightbulb" unicode="&#xf0eb;" horiz-adv-x="352"
d="M176 368c8.83984 0 16 -7.16016 16 -16s-7.16016 -16 -16 -16c-35.2803 0 -64 -28.7002 -64 -64c0 -8.83984 -7.16016 -16 -16 -16s-16 7.16016 -16 16c0 52.9404 43.0596 96 96 96zM96.0596 -11.1699l-0.0400391 43.1797h159.961l-0.0507812 -43.1797
c-0.00976562 -3.13965 -0.939453 -6.21973 -2.67969 -8.83984l-24.5098 -36.8398c-2.95996 -4.45996 -7.95996 -7.14062 -13.3203 -7.14062h-78.8496c-5.35059 0 -10.3506 2.68066 -13.3203 7.14062l-24.5098 36.8398c-1.75 2.62012 -2.68066 5.68945 -2.68066 8.83984z
M176 448c97.2002 0 176 -78.7998 176 -176c0 -44.3701 -16.4502 -84.8496 -43.5498 -115.79c-16.6406 -18.9795 -42.7402 -58.79 -52.4199 -92.1602v-0.0498047h-48v0.0996094c0.00390625 4.04199 0.999023 10.4482 2.21973 14.3008
c5.67969 17.9893 22.9902 64.8496 62.0996 109.46c20.4102 23.29 31.6504 53.1699 31.6504 84.1396c0 70.5801 -57.4199 128 -128 128c-68.2803 0 -128.15 -54.3604 -127.95 -128c0.0898438 -30.9902 11.0703 -60.71 31.6104 -84.1396
c39.3496 -44.9004 56.5801 -91.8604 62.1699 -109.67c1.42969 -4.56055 2.13965 -9.30078 2.15039 -14.0703v-0.120117h-48v0.0595703c-9.68066 33.3604 -35.7803 73.1709 -52.4209 92.1602c-27.1094 30.9307 -43.5596 71.4102 -43.5596 115.78
c0 93.0303 73.7197 176 176 176z" />
<glyph glyph-name="bell" unicode="&#xf0f3;" horiz-adv-x="448"
d="M439.39 85.71c6 -6.44043 8.66016 -14.1602 8.61035 -21.71c-0.0996094 -16.4004 -12.9805 -32 -32.0996 -32h-383.801c-19.1191 0 -31.9893 15.5996 -32.0996 32c-0.0498047 7.5498 2.61035 15.2598 8.61035 21.71c19.3193 20.7598 55.4697 51.9902 55.4697 154.29
c0 77.7002 54.4795 139.9 127.939 155.16v20.8398c0 17.6699 14.3203 32 31.9805 32s31.9805 -14.3301 31.9805 -32v-20.8398c73.46 -15.2598 127.939 -77.46 127.939 -155.16c0 -102.3 36.1504 -133.53 55.4697 -154.29zM67.5303 80h312.939
c-21.2197 27.96 -44.4199 74.3203 -44.5293 159.42c0 0.200195 0.0595703 0.379883 0.0595703 0.580078c0 61.8604 -50.1396 112 -112 112s-112 -50.1396 -112 -112c0 -0.200195 0.0595703 -0.379883 0.0595703 -0.580078
c-0.109375 -85.0898 -23.3096 -131.45 -44.5293 -159.42zM224 -64c-35.3203 0 -63.9697 28.6504 -63.9697 64h127.939c0 -35.3496 -28.6494 -64 -63.9697 -64z" />
<glyph glyph-name="hospital" unicode="&#xf0f8;" horiz-adv-x="448"
d="M128 204v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12zM268 192c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40
c0 -6.62695 -5.37305 -12 -12 -12h-40zM192 108c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM268 96c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40
c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-40zM448 -28v-36h-448v36c0 6.62695 5.37305 12 12 12h19.5v378.965c0 11.6172 10.7451 21.0352 24 21.0352h88.5v40c0 13.2549 10.7451 24 24 24h112c13.2549 0 24 -10.7451 24 -24v-40h88.5
c13.2549 0 24 -9.41797 24 -21.0352v-378.965h19.5c6.62695 0 12 -5.37305 12 -12zM79.5 -15h112.5v67c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-67h112.5v351h-64.5v-24c0 -13.2549 -10.7451 -24 -24 -24h-112c-13.2549 0 -24 10.7451 -24 24v24
h-64.5v-351zM266 384h-26v26c0 3.31152 -2.68848 6 -6 6h-20c-3.31152 0 -6 -2.68848 -6 -6v-26h-26c-3.31152 0 -6 -2.68848 -6 -6v-20c0 -3.31152 2.68848 -6 6 -6h26v-26c0 -3.31152 2.68848 -6 6 -6h20c3.31152 0 6 2.68848 6 6v26h26c3.31152 0 6 2.68848 6 6v20
c0 3.31152 -2.68848 6 -6 6z" />
<glyph glyph-name="plus-square" unicode="&#xf0fe;" horiz-adv-x="448"
d="M352 208v-32c0 -6.59961 -5.40039 -12 -12 -12h-88v-88c0 -6.59961 -5.40039 -12 -12 -12h-32c-6.59961 0 -12 5.40039 -12 12v88h-88c-6.59961 0 -12 5.40039 -12 12v32c0 6.59961 5.40039 12 12 12h88v88c0 6.59961 5.40039 12 12 12h32c6.59961 0 12 -5.40039 12 -12
v-88h88c6.59961 0 12 -5.40039 12 -12zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340
c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="circle" unicode="&#xf111;"
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200z" />
<glyph glyph-name="smile" unicode="&#xf118;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM332 135.4c8.5 10.1992 23.7002 11.5 33.7998 3.09961c10.2002 -8.5 11.6006 -23.5996 3.10059 -33.7998
c-30 -36 -74.1006 -56.6006 -120.9 -56.6006s-90.9004 20.6006 -120.9 56.6006c-8.39941 10.2002 -7.09961 25.2998 3.10059 33.7998c10.0996 8.40039 25.2998 7.09961 33.7998 -3.09961c20.7998 -25.1006 51.5 -39.4004 84 -39.4004s63.2002 14.4004 84 39.4004z" />
<glyph glyph-name="frown" unicode="&#xf119;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM248 144c40.2002 0 78 -17.7002 103.8 -48.5996c8.40039 -10.2002 7.10059 -25.3008 -3.09961 -33.8008
c-10.7002 -8.7998 -25.7002 -6.59961 -33.7998 3.10059c-16.6006 20 -41 31.3994 -66.9004 31.3994s-50.2998 -11.5 -66.9004 -31.3994c-8.5 -10.2002 -23.5996 -11.5 -33.7998 -3.10059c-10.2002 8.5 -11.5996 23.6006 -3.09961 33.8008
c25.7998 30.8994 63.5996 48.5996 103.8 48.5996z" />
<glyph glyph-name="meh" unicode="&#xf11a;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM336 128c13.2002 0 24 -10.7998 24 -24s-10.7998 -24 -24 -24h-176c-13.2002 0 -24 10.7998 -24 24s10.7998 24 24 24h176z
" />
<glyph glyph-name="keyboard" unicode="&#xf11c;" horiz-adv-x="576"
d="M528 384c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48h-480c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h480zM536 48v288c0 4.41113 -3.58887 8 -8 8h-480c-4.41113 0 -8 -3.58887 -8 -8v-288c0 -4.41113 3.58887 -8 8 -8
h480c4.41113 0 8 3.58887 8 8zM170 178c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM266 178c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28
c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM362 178c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM458 178c0 -6.62695 -5.37305 -12 -12 -12h-28
c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM122 96c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM506 96
c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM122 260c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28
c6.62695 0 12 -5.37305 12 -12v-28zM218 260c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM314 260c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28
c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM410 260c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM506 260c0 -6.62695 -5.37305 -12 -12 -12h-28
c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM408 102c0 -6.62695 -5.37305 -12 -12 -12h-216c-6.62695 0 -12 5.37305 -12 12v16c0 6.62695 5.37305 12 12 12h216c6.62695 0 12 -5.37305 12 -12v-16z" />
<glyph glyph-name="calendar" unicode="&#xf133;" horiz-adv-x="448"
d="M400 384c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12
v-52h48zM394 -16c3.2998 0 6 2.7002 6 6v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340z" />
<glyph glyph-name="play-circle" unicode="&#xf144;"
d="M371.7 210c16.3994 -9.2002 16.3994 -32.9004 0 -42l-176 -101c-15.9004 -8.7998 -35.7002 2.59961 -35.7002 21v208c0 18.5 19.9004 29.7998 35.7002 21zM504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM56 192
c0 -110.5 89.5 -200 200 -200s200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200z" />
<glyph glyph-name="minus-square" unicode="&#xf146;" horiz-adv-x="448"
d="M108 164c-6.59961 0 -12 5.40039 -12 12v32c0 6.59961 5.40039 12 12 12h232c6.59961 0 12 -5.40039 12 -12v-32c0 -6.59961 -5.40039 -12 -12 -12h-232zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352
c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="check-square" unicode="&#xf14a;" horiz-adv-x="448"
d="M400 416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352zM400 16v352h-352v-352h352zM364.136 257.724l-172.589 -171.204
c-4.70508 -4.66699 -12.3027 -4.63672 -16.9697 0.0683594l-90.7812 91.5156c-4.66699 4.70508 -4.63672 12.3037 0.0693359 16.9717l22.7188 22.5361c4.70508 4.66699 12.3027 4.63672 16.9697 -0.0693359l59.792 -60.2773l141.353 140.217
c4.70508 4.66699 12.3027 4.63672 16.9697 -0.0683594l22.5361 -22.7178c4.66699 -4.70605 4.63672 -12.3047 -0.0683594 -16.9717z" />
<glyph glyph-name="share-square" unicode="&#xf14d;" horiz-adv-x="576"
d="M561.938 289.94c18.75 -18.7402 18.75 -49.1406 0 -67.8809l-143.998 -144c-29.9727 -29.9727 -81.9404 -9.05273 -81.9404 33.9404v53.7998c-101.266 -7.83691 -99.625 -31.6406 -84.1104 -78.7598c14.2285 -43.0889 -33.4736 -79.248 -71.0195 -55.7402
c-51.6924 32.3057 -84.8701 83.0635 -84.8701 144.76c0 39.3408 12.2197 72.7402 36.3301 99.3008c19.8398 21.8398 47.7402 38.4697 82.9102 49.4199c36.7295 11.4395 78.3096 16.1094 120.76 17.9893v57.1982c0 42.9355 51.9258 63.9541 81.9404 33.9404zM384 112l144 144
l-144 144v-104.09c-110.86 -0.90332 -240 -10.5166 -240 -119.851c0 -52.1396 32.79 -85.6094 62.3096 -104.06c-39.8174 120.65 48.999 141.918 177.69 143.84v-103.84zM408.74 27.5068c6.14844 1.75684 15.5449 5.92383 20.9736 9.30273
c7.97656 4.95215 18.2861 -0.825195 18.2861 -10.2139v-42.5957c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h132c6.62695 0 12 -5.37305 12 -12v-4.48633c0 -4.91699 -2.9873 -9.36914 -7.56934 -11.1514
c-13.7021 -5.33105 -26.3955 -11.5371 -38.0498 -18.585c-1.59668 -0.974609 -4.41016 -1.77051 -6.28027 -1.77734h-86.1006c-3.31152 0 -6 -2.68848 -6 -6v-340c0 -3.31152 2.68848 -6 6 -6h340c3.31152 0 6 2.68848 6 6v25.9658c0 5.37012 3.5791 10.0596 8.74023 11.541
z" />
<glyph glyph-name="compass" unicode="&#xf14e;" horiz-adv-x="496"
d="M347.94 318.14c16.6592 7.61035 33.8096 -9.54004 26.1992 -26.1992l-65.9697 -144.341c-2.73047 -5.97363 -9.7959 -13.0391 -15.7695 -15.7695l-144.341 -65.9697c-16.6592 -7.61035 -33.8096 9.5498 -26.1992 26.1992l65.9697 144.341
c2.73047 5.97363 9.7959 13.0391 15.7695 15.7695zM270.58 169.42c12.4697 12.4697 12.4697 32.6904 0 45.1602s-32.6904 12.4697 -45.1602 0s-12.4697 -32.6904 0 -45.1602s32.6904 -12.4697 45.1602 0zM248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248
s-248 111.03 -248 248s111.03 248 248 248zM248 -8c110.28 0 200 89.7197 200 200s-89.7197 200 -200 200s-200 -89.7197 -200 -200s89.7197 -200 200 -200z" />
<glyph glyph-name="caret-square-down" unicode="&#xf150;" horiz-adv-x="448"
d="M125.1 240h197.801c10.6992 0 16.0996 -13 8.5 -20.5l-98.9004 -98.2998c-4.7002 -4.7002 -12.2002 -4.7002 -16.9004 0l-98.8994 98.2998c-7.7002 7.5 -2.2998 20.5 8.39941 20.5zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="caret-square-up" unicode="&#xf151;" horiz-adv-x="448"
d="M322.9 144h-197.801c-10.6992 0 -16.0996 13 -8.5 20.5l98.9004 98.2998c4.7002 4.7002 12.2002 4.7002 16.9004 0l98.8994 -98.2998c7.7002 -7.5 2.2998 -20.5 -8.39941 -20.5zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="caret-square-right" unicode="&#xf152;" horiz-adv-x="448"
d="M176 93.0996v197.801c0 10.6992 13 16.0996 20.5 8.5l98.2998 -98.9004c4.7002 -4.7002 4.7002 -12.2002 0 -16.9004l-98.2998 -98.8994c-7.5 -7.7002 -20.5 -2.2998 -20.5 8.39941zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="file" unicode="&#xf15b;" horiz-adv-x="384"
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416z" />
<glyph glyph-name="file-alt" unicode="&#xf15c;" horiz-adv-x="384"
d="M288 200v-28c0 -6.59961 -5.40039 -12 -12 -12h-168c-6.59961 0 -12 5.40039 -12 12v28c0 6.59961 5.40039 12 12 12h168c6.59961 0 12 -5.40039 12 -12zM276 128c6.59961 0 12 -5.40039 12 -12v-28c0 -6.59961 -5.40039 -12 -12 -12h-168c-6.59961 0 -12 5.40039 -12 12
v28c0 6.59961 5.40039 12 12 12h168zM384 316.1v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996l83.9004 -83.9004c9 -8.90039 14.0996 -21.2002 14.0996 -33.9004z
M256 396.1v-76.0996h76.0996zM336 -16v288h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416h288z" />
<glyph glyph-name="thumbs-up" unicode="&#xf164;"
d="M466.27 161.31c4.6748 -22.6465 0.864258 -44.5371 -8.98926 -62.9893c2.95898 -23.8682 -4.02148 -48.5654 -17.3398 -66.9902c-0.954102 -55.9072 -35.8232 -95.3301 -112.94 -95.3301c-7 0 -15 0.00976562 -22.2197 0.00976562
c-102.742 0 -133.293 38.9395 -177.803 39.9404c-3.56934 -13.7764 -16.085 -23.9502 -30.9775 -23.9502h-64c-17.6729 0 -32 14.3271 -32 32v240c0 17.6729 14.3271 32 32 32h98.7598c19.1455 16.9531 46.0137 60.6533 68.7598 83.4004
c13.667 13.667 10.1533 108.6 71.7607 108.6c57.5801 0 95.2695 -31.9355 95.2695 -104.73c0 -18.4092 -3.92969 -33.7295 -8.84961 -46.5391h36.4795c48.6025 0 85.8203 -41.5654 85.8203 -85.5801c0 -19.1504 -4.95996 -34.9902 -13.7305 -49.8408zM404.52 107.48
c21.5811 20.3838 18.6992 51.0645 5.21094 65.6191c9.44922 0 22.3594 18.9102 22.2695 37.8105c-0.0898438 18.9102 -16.71 37.8203 -37.8203 37.8203h-103.989c0 37.8193 28.3594 55.3691 28.3594 94.5391c0 23.75 0 56.7305 -47.2695 56.7305
c-18.9102 -18.9102 -9.45996 -66.1797 -37.8203 -94.54c-26.5596 -26.5703 -66.1797 -97.46 -94.54 -97.46h-10.9199v-186.17c53.6113 0 100.001 -37.8203 171.64 -37.8203h37.8203c35.5117 0 60.8203 17.1201 53.1201 65.9004
c15.2002 8.16016 26.5 36.4395 13.9395 57.5703zM88 16c0 13.2549 -10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24z" />
<glyph glyph-name="thumbs-down" unicode="&#xf165;"
d="M466.27 222.69c8.77051 -14.8506 13.7305 -30.6904 13.7305 -49.8408c0 -44.0146 -37.2178 -85.5801 -85.8203 -85.5801h-36.4795c4.91992 -12.8096 8.84961 -28.1299 8.84961 -46.5391c0 -72.7949 -37.6895 -104.73 -95.2695 -104.73
c-61.6074 0 -58.0938 94.9326 -71.7607 108.6c-22.7461 22.7471 -49.6133 66.4473 -68.7598 83.4004h-7.05176c-5.5332 -9.56152 -15.8662 -16 -27.708 -16h-64c-17.6729 0 -32 14.3271 -32 32v240c0 17.6729 14.3271 32 32 32h64c8.11328 0 15.5146 -3.02539 21.1553 -8
h10.8447c40.9971 0 73.1953 39.9902 176.78 39.9902c7.21973 0 15.2197 0.00976562 22.2197 0.00976562c77.1172 0 111.986 -39.4229 112.94 -95.3301c13.3184 -18.4248 20.2979 -43.1221 17.3398 -66.9902c9.85352 -18.4521 13.6641 -40.3428 8.98926 -62.9893zM64 152
c13.2549 0 24 10.7451 24 24s-10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24zM394.18 135.27c21.1104 0 37.7305 18.9102 37.8203 37.8203c0.0898438 18.9004 -12.8203 37.8105 -22.2695 37.8105c13.4883 14.5547 16.3701 45.2354 -5.21094 65.6191
c12.5605 21.1309 1.26074 49.4102 -13.9395 57.5703c7.7002 48.7803 -17.6084 65.9004 -53.1201 65.9004h-37.8203c-71.6387 0 -118.028 -37.8203 -171.64 -37.8203v-186.17h10.9199c28.3604 0 67.9805 -70.8896 94.54 -97.46
c28.3604 -28.3604 18.9102 -75.6299 37.8203 -94.54c47.2695 0 47.2695 32.9805 47.2695 56.7305c0 39.1699 -28.3594 56.7197 -28.3594 94.5391h103.989z" />
<glyph glyph-name="sun" unicode="&#xf185;"
d="M494.2 226.1c11.2002 -7.59961 17.7998 -20.0996 17.8994 -33.6992c0 -13.4004 -6.69922 -26 -17.7998 -33.5l-59.7998 -40.5l13.7002 -71c2.5 -13.2002 -1.60059 -26.8008 -11.1006 -36.3008s-22.8994 -13.7998 -36.2998 -11.0996l-70.8994 13.7002l-40.4004 -59.9004
c-7.5 -11.0996 -20.0996 -17.7998 -33.5 -17.7998s-26 6.7002 -33.5 17.9004l-40.4004 59.8994l-70.7998 -13.7002c-13.3994 -2.59961 -26.7998 1.60059 -36.2998 11.1006s-13.7002 23.0996 -11.0996 36.2998l13.6992 71l-59.7998 40.5
c-11.0996 7.5 -17.7998 20 -17.7998 33.5s6.59961 26 17.7998 33.5996l59.7998 40.5l-13.6992 71c-2.60059 13.2002 1.59961 26.7002 11.0996 36.3008c9.5 9.59961 23 13.6992 36.2998 11.1992l70.7998 -13.6992l40.4004 59.8994c15.0996 22.2998 51.9004 22.2998 67 0
l40.4004 -59.8994l70.8994 13.6992c13 2.60059 26.6006 -1.59961 36.2002 -11.0996c9.5 -9.59961 13.7002 -23.2002 11.0996 -36.4004l-13.6992 -71zM381.3 140.5l76.7998 52.0996l-76.7998 52l17.6006 91.1006l-91 -17.6006l-51.9004 76.9004l-51.7998 -76.7998
l-91 17.5996l17.5996 -91.2002l-76.7998 -52l76.7998 -52l-17.5996 -91.1992l90.8994 17.5996l51.9004 -77l51.9004 76.9004l91 -17.6006zM256 296c57.2998 0 104 -46.7002 104 -104s-46.7002 -104 -104 -104s-104 46.7002 -104 104s46.7002 104 104 104zM256 136
c30.9004 0 56 25.0996 56 56s-25.0996 56 -56 56s-56 -25.0996 -56 -56s25.0996 -56 56 -56z" />
<glyph glyph-name="moon" unicode="&#xf186;"
d="M279.135 -64c-141.424 0 -256 114.64 -256 256c0 141.425 114.641 256 256 256c13.0068 -0.00195312 33.9443 -1.91797 46.7354 -4.27734c44.0205 -8.13086 53.7666 -66.8691 15.0215 -88.9189c-41.374 -23.5439 -67.4336 -67.4121 -67.4336 -115.836
c0 -83.5234 75.9238 -146.475 158.272 -130.792c43.6904 8.32129 74.5186 -42.5693 46.248 -77.4004c-47.8613 -58.9717 -120.088 -94.7754 -198.844 -94.7754zM279.135 400c-114.875 0 -208 -93.125 -208 -208s93.125 -208 208 -208
c65.2314 0 123.439 30.0361 161.575 77.0244c-111.611 -21.2568 -215.252 64.0957 -215.252 177.943c0 67.5127 36.9326 126.392 91.6934 157.555c-12.3271 2.27637 -25.0312 3.47754 -38.0166 3.47754z" />
<glyph glyph-name="caret-square-left" unicode="&#xf191;" horiz-adv-x="448"
d="M272 290.9v-197.801c0 -10.6992 -13 -16.0996 -20.5 -8.5l-98.2998 98.9004c-4.7002 4.7002 -4.7002 12.2002 0 16.9004l98.2998 98.8994c7.5 7.7002 20.5 2.2998 20.5 -8.39941zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="dot-circle" unicode="&#xf192;"
d="M256 392c-110.549 0 -200 -89.4678 -200 -200c0 -110.549 89.4678 -200 200 -200c110.549 0 200 89.4678 200 200c0 110.549 -89.4678 200 -200 200zM256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248z
M256 272c44.1826 0 80 -35.8174 80 -80s-35.8174 -80 -80 -80s-80 35.8174 -80 80s35.8174 80 80 80z" />
<glyph glyph-name="building" unicode="&#xf1ad;" horiz-adv-x="448"
d="M128 300v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12zM268 288c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40
c0 -6.59961 -5.40039 -12 -12 -12h-40zM140 192c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-40zM268 192c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40
c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-40zM192 108c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM268 96c-6.59961 0 -12 5.40039 -12 12v40
c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-40zM448 -28v-36h-448v36c0 6.59961 5.40039 12 12 12h19.5v440c0 13.2998 10.7002 24 24 24h337c13.2998 0 24 -10.7002 24 -24v-440h19.5
c6.59961 0 12 -5.40039 12 -12zM79.5 -15h112.5v67c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-67h112.5v414l-288.5 1z" />
<glyph glyph-name="file-pdf" unicode="&#xf1c1;" horiz-adv-x="384"
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM298.2 127.7c10.5 -10.5 8 -38.7002 -17.5 -38.7002c-14.7998 0 -36.9004 6.7998 -55.7998 17c-21.6006 -3.59961 -46 -12.7002 -68.4004 -20.0996c-50.0996 -86.4004 -79.4004 -47 -76.0996 -31.2002
c4 20 31 35.8994 51 46.2002c10.5 18.3994 25.3994 50.5 35.3994 74.3994c-7.39941 28.6006 -11.3994 51 -7 67.1006c4.7998 17.6992 38.4004 20.2998 42.6006 -5.90039c4.69922 -15.4004 -1.5 -39.9004 -5.40039 -56c8.09961 -21.2998 19.5996 -35.7998 36.7998 -46.2998
c17.4004 2.2002 52.2002 5.5 64.4004 -6.5zM100.1 49.9004c0 -0.700195 11.4004 4.69922 30.4004 35c-5.90039 -5.5 -25.2998 -21.3008 -30.4004 -35zM181.7 240.5c-2.5 0 -2.60059 -26.9004 1.7998 -40.7998c4.90039 8.7002 5.59961 40.7998 -1.7998 40.7998zM157.3 103.9
c15.9004 6.09961 34 14.8994 54.7998 19.1992c-11.1992 8.30078 -21.7998 20.4004 -30.0996 35.5c-6.7002 -17.6992 -15 -37.7998 -24.7002 -54.6992zM288.9 108.9c3.59961 2.39941 -2.2002 10.3994 -37.3008 7.7998c32.3008 -13.7998 37.3008 -7.7998 37.3008 -7.7998z" />
<glyph glyph-name="file-word" unicode="&#xf1c2;" horiz-adv-x="384"
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM268.1 192v0.200195h15.8008c7.7998 0 13.5 -7.2998 11.5996 -14.9004c-4.2998 -17 -13.7002 -54.0996 -34.5 -136c-1.2998 -5.39941 -6.09961 -9.09961 -11.5996 -9.09961h-24.7002
c-5.5 0 -10.2998 3.7998 -11.6006 9.09961c-5.2998 20.9004 -17.7998 71 -17.8994 71.4004l-2.90039 17.2998c-0.5 -5.2998 -1.5 -11.0996 -3 -17.2998l-17.8994 -71.4004c-1.30078 -5.39941 -6.10059 -9.09961 -11.6006 -9.09961h-25.2002
c-5.59961 0 -10.3994 3.7002 -11.6992 9.09961c-6.5 26.5 -25.2002 103.4 -33.2002 136c-1.7998 7.5 3.89941 14.7998 11.7002 14.7998h16.7998c5.7998 0 10.7002 -4.09961 11.7998 -9.69922c5 -25.7002 18.4004 -93.8008 19.0996 -99
c0.300781 -1.7002 0.400391 -3.10059 0.5 -4.2002c0.800781 7.5 0.400391 4.7002 24.8008 103.7c1.39941 5.2998 6.19922 9.09961 11.6992 9.09961h13.3008c5.59961 0 10.3994 -3.7998 11.6992 -9.2002c23.9004 -99.7002 22.8008 -94.3994 23.6006 -99.5
c0.299805 -1.7002 0.5 -3.09961 0.700195 -4.2998c0.599609 8.09961 0.399414 5.7998 21 103.5c1.09961 5.5 6 9.5 11.6992 9.5z" />
<glyph glyph-name="file-excel" unicode="&#xf1c3;" horiz-adv-x="384"
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM260 224c9.2002 0 15 -10 10.2998 -18c-16 -27.5 -45.5996 -76.9004 -46.2998 -78l46.4004 -78c4.59961 -8 -1.10059 -18 -10.4004 -18h-28.7998c-4.40039 0 -8.5 2.40039 -10.6006 6.2998
c-22.6992 41.7998 -13.6992 27.5 -28.5996 57.7002c-5.59961 -12.7002 -6.90039 -17.7002 -28.5996 -57.7002c-2.10059 -3.89941 -6.10059 -6.2998 -10.5 -6.2998h-28.9004c-9.2998 0 -15.0996 10 -10.4004 18l46.3008 78l-46.3008 78c-4.59961 8 1.10059 18 10.4004 18
h28.9004c4.39941 0 8.5 -2.40039 10.5996 -6.2998c21.7002 -40.4004 14.7002 -28.6006 28.5996 -57.7002c6.40039 15.2998 10.6006 24.5996 28.6006 57.7002c2.09961 3.89941 6.09961 6.2998 10.5 6.2998h28.7998z" />
<glyph glyph-name="file-powerpoint" unicode="&#xf1c4;" horiz-adv-x="384"
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM120 44v168c0 6.59961 5.40039 12 12 12h69.2002c36.7002 0 62.7998 -27 62.7998 -66.2998c0 -74.2998 -68.7002 -66.5 -95.5 -66.5v-47.2002c0 -6.59961 -5.40039 -12 -12 -12h-24.5c-6.59961 0 -12 5.40039 -12 12z
M168.5 131.4h23c7.90039 0 13.9004 2.39941 18.0996 7.19922c8.5 9.80078 8.40039 28.5 0.100586 37.8008c-4.10059 4.59961 -9.90039 7 -17.4004 7h-23.8994v-52h0.0996094z" />
<glyph glyph-name="file-image" unicode="&#xf1c5;" horiz-adv-x="384"
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM80 32v64l39.5 39.5c4.7002 4.7002 12.2998 4.7002 17 0l39.5 -39.5l87.5 87.5c4.7002 4.7002 12.2998 4.7002 17 0l23.5 -23.5v-128h-224zM128 272c26.5 0 48 -21.5 48 -48s-21.5 -48 -48 -48s-48 21.5 -48 48
s21.5 48 48 48z" />
<glyph glyph-name="file-archive" unicode="&#xf1c6;" horiz-adv-x="384"
d="M128.3 288h32v-32h-32v32zM192.3 384v-32h-32v32h32zM128.3 352h32v-32h-32v32zM192.3 320v-32h-32v32h32zM369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1
c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM256 396.1v-76.0996h76.0996zM336 -16v288h-104c-13.2998 0 -24 10.7002 -24 24v104h-48.2998v-16h-32v16h-79.7002v-416h288zM194.2 182.3l17.2998 -87.7002c6.40039 -32.3994 -18.4004 -62.5996 -51.5 -62.5996
c-33.2002 0 -58 30.4004 -51.4004 62.9004l19.7002 97.0996v32h32v-32h22.1006c5.7998 0 10.6992 -4.09961 11.7998 -9.7002zM160.3 57.9004c17.9004 0 32.4004 12.0996 32.4004 27c0 14.8994 -14.5 27 -32.4004 27c-17.8994 0 -32.3994 -12.1006 -32.3994 -27
c0 -14.9004 14.5 -27 32.3994 -27zM192.3 256v-32h-32v32h32z" />
<glyph glyph-name="file-audio" unicode="&#xf1c7;" horiz-adv-x="384"
d="M369.941 350.059c7.75977 -7.75977 14.0586 -22.9658 14.0586 -33.9404v-332.118c0 -26.5098 -21.4902 -48 -48 -48h-288c-26.5098 0 -48 21.4902 -48 48v416c0 26.5098 21.4902 48 48 48h204.118c10.9746 0 26.1807 -6.29883 33.9404 -14.0586zM332.118 320
l-76.1182 76.1182v-76.1182h76.1182zM48 -16h288v288h-104c-13.2549 0 -24 10.7451 -24 24v104h-160v-416zM192 60.0244c0 -10.6914 -12.9258 -16.0459 -20.4854 -8.48535l-35.5146 35.9746h-28c-6.62695 0 -12 5.37305 -12 12v56c0 6.62695 5.37305 12 12 12h28
l35.5146 36.9473c7.56055 7.56055 20.4854 2.20605 20.4854 -8.48535v-135.951zM233.201 107.154c9.05078 9.29688 9.05957 24.1328 0.000976562 33.4385c-22.1494 22.752 12.2344 56.2461 34.3945 33.4814c27.1982 -27.9404 27.2119 -72.4443 0.000976562 -100.401
c-21.793 -22.3857 -56.9463 10.3154 -34.3965 33.4814z" />
<glyph glyph-name="file-video" unicode="&#xf1c8;" horiz-adv-x="384"
d="M369.941 350.059c7.75977 -7.75977 14.0586 -22.9658 14.0586 -33.9404v-332.118c0 -26.5098 -21.4902 -48 -48 -48h-288c-26.5098 0 -48 21.4902 -48 48v416c0 26.5098 21.4902 48 48 48h204.118c10.9746 0 26.1807 -6.29883 33.9404 -14.0586zM332.118 320
l-76.1182 76.1182v-76.1182h76.1182zM48 -16h288v288h-104c-13.2549 0 -24 10.7451 -24 24v104h-160v-416zM276.687 195.303c10.0049 10.0049 27.3135 2.99707 27.3135 -11.3135v-111.976c0 -14.2939 -17.2959 -21.332 -27.3135 -11.3135l-52.6865 52.6738v-37.374
c0 -11.0459 -8.9541 -20 -20 -20h-104c-11.0459 0 -20 8.9541 -20 20v104c0 11.0459 8.9541 20 20 20h104c11.0459 0 20 -8.9541 20 -20v-37.374z" />
<glyph glyph-name="file-code" unicode="&#xf1c9;" horiz-adv-x="384"
d="M149.9 98.9004c3.5 -3.30078 3.69922 -8.90039 0.399414 -12.4004l-17.3994 -18.5996c-1.60059 -1.80078 -4 -2.80078 -6.40039 -2.80078c-2.2002 0 -4.40039 0.900391 -6 2.40039l-57.7002 54.0996c-3.7002 3.40039 -3.7002 9.30078 0 12.8008l57.7002 54.0996
c3.40039 3.2998 9 3.2002 12.4004 -0.400391l17.3994 -18.5996l0.200195 -0.200195c3.2002 -3.59961 2.7998 -9.2002 -0.799805 -12.3994l-32.7998 -28.9004l32.7998 -28.9004zM369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288
c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM256 396.1v-76.0996h76.0996zM336 -16v288h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416h288zM209.6 234l24.4004 -7
c4.7002 -1.2998 7.40039 -6.2002 6 -10.9004l-54.7002 -188.199c-1.2998 -4.60059 -6.2002 -7.40039 -10.8994 -6l-24.4004 7.09961c-4.7002 1.2998 -7.40039 6.2002 -6 10.9004l54.7002 188.1c1.39941 4.7002 6.2002 7.40039 10.8994 6zM234.1 157.1
c-3.5 3.30078 -3.69922 8.90039 -0.399414 12.4004l17.3994 18.5996c3.30078 3.60059 8.90039 3.7002 12.4004 0.400391l57.7002 -54.0996c3.7002 -3.40039 3.7002 -9.30078 0 -12.8008l-57.7002 -54.0996c-3.5 -3.2998 -9.09961 -3.09961 -12.4004 0.400391
l-17.3994 18.5996l-0.200195 0.200195c-3.2002 3.59961 -2.7998 9.2002 0.799805 12.3994l32.7998 28.9004l-32.7998 28.9004z" />
<glyph glyph-name="life-ring" unicode="&#xf1cd;"
d="M256 -56c-136.967 0 -248 111.033 -248 248s111.033 248 248 248s248 -111.033 248 -248s-111.033 -248 -248 -248zM152.602 20.7197c63.2178 -38.3184 143.579 -38.3184 206.797 0l-53.4111 53.4111c-31.8467 -13.5215 -68.168 -13.5059 -99.9746 0zM336 192
c0 44.1123 -35.8877 80 -80 80s-80 -35.8877 -80 -80s35.8877 -80 80 -80s80 35.8877 80 80zM427.28 88.6016c38.3184 63.2178 38.3184 143.579 0 206.797l-53.4111 -53.4111c13.5215 -31.8467 13.5049 -68.168 0 -99.9746zM359.397 363.28
c-63.2168 38.3184 -143.578 38.3184 -206.796 0l53.4111 -53.4111c31.8457 13.5215 68.167 13.5049 99.9736 0zM84.7197 295.398c-38.3184 -63.2178 -38.3184 -143.579 0 -206.797l53.4111 53.4111c-13.5215 31.8467 -13.5059 68.168 0 99.9746z" />
<glyph glyph-name="paper-plane" unicode="&#xf1d8;"
d="M440 441.5c34.5996 19.9004 77.5996 -8.7998 71.5 -48.9004l-59.4004 -387.199c-2.2998 -14.5 -11.0996 -27.3008 -23.8994 -34.5c-7.2998 -4.10059 -15.4004 -6.2002 -23.6006 -6.2002c-6.19922 0 -12.3994 1.2002 -18.2998 3.59961l-111.899 46.2002l-43.8008 -59.0996
c-27.3994 -36.9004 -86.5996 -17.8008 -86.5996 28.5996v84.4004l-114.3 47.2998c-36.7998 15.0996 -40.1006 66 -5.7002 85.8994zM192 -16l36.5996 49.5l-36.5996 15.0996v-64.5996zM404.6 12.7002l59.4004 387.3l-416 -240l107.8 -44.5996l211.5 184.3
c14.2002 12.2998 34.4004 -5.7002 23.7002 -21.2002l-140.2 -202.3z" />
<glyph glyph-name="futbol" unicode="&#xf1e3;" horiz-adv-x="496"
d="M483.8 268.6c42.2998 -130.199 -29 -270.1 -159.2 -312.399c-25.5 -8.2998 -51.2998 -12.2002 -76.6992 -12.2002c-104.5 0 -201.7 66.5996 -235.7 171.4c-42.2998 130.199 29 270.1 159.2 312.399c25.5 8.2998 51.2998 12.2002 76.6992 12.2002
c104.5 0 201.7 -66.5996 235.7 -171.4zM409.3 74.9004c6.10059 8.39941 12.1006 16.8994 16.7998 26.1992c14.3008 28.1006 21.5 58.5 21.7002 89.2002l-38.8994 36.4004l-71.1006 -22.1006l-24.3994 -75.1992l43.6992 -60.9004zM409.3 310.3
c-24.5 33.4004 -58.7002 58.4004 -97.8994 71.4004l-47.4004 -26.2002v-73.7998l64.2002 -46.5l70.7002 22zM184.9 381.6c-39.9004 -13.2998 -73.5 -38.5 -97.8008 -71.8994l10.1006 -52.5l70.5996 -22l64.2002 46.5v73.7998zM139 68.5l43.5 61.7002l-24.2998 74.2998
l-71.1006 22.2002l-39 -36.4004c0.5 -55.7002 23.4004 -95.2002 37.8008 -115.3zM187.2 1.5c64.0996 -20.4004 115.5 -1.7998 121.7 0l22.3994 48.0996l-44.2998 61.7002h-78.5996l-43.6006 -61.7002z" />
<glyph glyph-name="newspaper" unicode="&#xf1ea;" horiz-adv-x="576"
d="M552 384c13.2549 0 24 -10.7451 24 -24v-336c0 -13.2549 -10.7451 -24 -24 -24h-496c-30.9277 0 -56 25.0723 -56 56v272c0 13.2549 10.7451 24 24 24h42.752c6.60547 18.623 24.3896 32 45.248 32h440zM48 56c0 -4.41113 3.58887 -8 8 -8s8 3.58887 8 8v248h-16v-248z
M528 48v288h-416v-280c0 -2.7168 -0.204102 -5.38574 -0.578125 -8h416.578zM172 168c-6.62695 0 -12 5.37305 -12 12v96c0 6.62695 5.37305 12 12 12h136c6.62695 0 12 -5.37305 12 -12v-96c0 -6.62695 -5.37305 -12 -12 -12h-136zM200 248v-40h80v40h-80zM160 108v24
c0 6.62695 5.37305 12 12 12h136c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-136c-6.62695 0 -12 5.37305 -12 12zM352 108v24c0 6.62695 5.37305 12 12 12h104c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-104
c-6.62695 0 -12 5.37305 -12 12zM352 252v24c0 6.62695 5.37305 12 12 12h104c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-104c-6.62695 0 -12 5.37305 -12 12zM352 180v24c0 6.62695 5.37305 12 12 12h104c6.62695 0 12 -5.37305 12 -12v-24
c0 -6.62695 -5.37305 -12 -12 -12h-104c-6.62695 0 -12 5.37305 -12 12z" />
<glyph glyph-name="bell-slash" unicode="&#xf1f6;" horiz-adv-x="640"
d="M633.99 -23.0195c6.91016 -5.52051 8.01953 -15.5908 2.5 -22.4902l-10 -12.4902c-5.53027 -6.88965 -15.5898 -8.00977 -22.4902 -2.49023l-598 467.51c-6.90039 5.52051 -8.01953 15.5908 -2.49023 22.4902l10 12.4902
c5.52051 6.90039 15.5898 8.00977 22.4902 2.49023zM163.53 80h182.84l61.3994 -48h-279.659c-19.1201 0 -31.9902 15.5996 -32.1006 32c-0.0498047 7.5498 2.61035 15.2598 8.61035 21.71c18.3701 19.7402 51.5703 49.6904 54.8398 140.42l45.4697 -35.5498
c-6.91992 -54.7803 -24.6895 -88.5498 -41.3994 -110.58zM320 352c-23.3496 0 -45 -7.17969 -62.9404 -19.4004l-38.1699 29.8408c19.6807 15.7793 43.1104 27.3096 69.1299 32.7197v20.8398c0 17.6699 14.3203 32 31.9805 32s31.9805 -14.3301 31.9805 -32v-20.8398
c73.46 -15.2598 127.939 -77.46 127.939 -155.16c0 -41.3604 6.03027 -70.7197 14.3398 -92.8496l-59.5293 46.54c-1.63086 13.96 -2.77051 28.8896 -2.79004 45.7295c0 0.200195 0.0595703 0.379883 0.0595703 0.580078c0 61.8604 -50.1396 112 -112 112zM320 -64
c-35.3203 0 -63.9697 28.6504 -63.9697 64h127.939c0 -35.3496 -28.6494 -64 -63.9697 -64z" />
<glyph glyph-name="copyright" unicode="&#xf1f9;"
d="M256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248zM256 -8c110.549 0 200 89.4678 200 200c0 110.549 -89.4678 200 -200 200c-110.549 0 -200 -89.4688 -200 -200c0 -110.549 89.4678 -200 200 -200z
M363.351 93.0645c-9.61328 -9.71289 -45.5293 -41.3965 -104.064 -41.3965c-82.4297 0 -140.484 61.4248 -140.484 141.567c0 79.1514 60.2754 139.4 139.763 139.4c55.5303 0 88.7373 -26.6201 97.5928 -34.7783c2.13379 -1.96289 3.86523 -5.9082 3.86523 -8.80762
c0 -1.95508 -0.864258 -4.87402 -1.92969 -6.51465l-18.1543 -28.1133c-3.8418 -5.9502 -11.9668 -7.28223 -17.499 -2.9209c-8.5957 6.77637 -31.8145 22.5381 -61.708 22.5381c-48.3037 0 -77.916 -35.3301 -77.916 -80.082c0 -41.5889 26.8877 -83.6924 78.2764 -83.6924
c32.6572 0 56.8428 19.0391 65.7266 27.2256c5.26953 4.85645 13.5957 4.03906 17.8193 -1.73828l19.8652 -27.1699c1.28613 -1.74512 2.33008 -4.91992 2.33008 -7.08789c0 -2.72363 -1.56055 -6.5 -3.48242 -8.42969z" />
<glyph glyph-name="closed-captioning" unicode="&#xf20a;"
d="M464 384c26.5 0 48 -21.5 48 -48v-288c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v288c0 26.5 21.5 48 48 48h416zM458 48c3.2998 0 6 2.7002 6 6v276c0 3.2998 -2.7002 6 -6 6h-404c-3.2998 0 -6 -2.7002 -6 -6v-276c0 -3.2998 2.7002 -6 6 -6h404z
M246.9 133.7c1.69922 -2.40039 1.5 -5.60059 -0.5 -7.7002c-53.6006 -56.7998 -172.801 -32.0996 -172.801 67.9004c0 97.2998 121.7 119.5 172.5 70.0996c2.10059 -2 2.5 -3.2002 1 -5.7002l-17.5 -30.5c-1.89941 -3.09961 -6.19922 -4 -9.09961 -1.7002
c-40.7998 32 -94.5996 14.9004 -94.5996 -31.1992c0 -48 51 -70.5 92.1992 -32.6006c2.80078 2.5 7.10059 2.10059 9.2002 -0.899414zM437.3 133.7c1.7002 -2.40039 1.5 -5.60059 -0.5 -7.7002c-53.5996 -56.9004 -172.8 -32.0996 -172.8 67.9004
c0 97.2998 121.7 119.5 172.5 70.0996c2.09961 -2 2.5 -3.2002 1 -5.7002l-17.5 -30.5c-1.90039 -3.09961 -6.2002 -4 -9.09961 -1.7002c-40.8008 32 -94.6006 14.9004 -94.6006 -31.1992c0 -48 51 -70.5 92.2002 -32.6006c2.7998 2.5 7.09961 2.10059 9.2002 -0.899414z
" />
<glyph glyph-name="object-group" unicode="&#xf247;"
d="M500 320h-12v-256h12c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v12h-320v-12c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h12v256h-12
c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h72c6.62695 0 12 -5.37305 12 -12v-12h320v12c0 6.62695 5.37305 12 12 12h72c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12zM448 384v-32h32v32h-32zM32 384v-32h32v32h-32zM64 0v32
h-32v-32h32zM480 0v32h-32v-32h32zM440 64v256h-12c-6.62695 0 -12 5.37305 -12 12v12h-320v-12c0 -6.62695 -5.37305 -12 -12 -12h-12v-256h12c6.62695 0 12 -5.37305 12 -12v-12h320v12c0 6.62695 5.37305 12 12 12h12zM404 256c6.62695 0 12 -5.37207 12 -12v-168
c0 -6.62793 -5.37305 -12 -12 -12h-200c-6.62695 0 -12 5.37207 -12 12v52h-84c-6.62695 0 -12 5.37207 -12 12v168c0 6.62793 5.37305 12 12 12h200c6.62695 0 12 -5.37207 12 -12v-52h84zM136 280v-112h144v112h-144zM376 104v112h-56v-76
c0 -6.62793 -5.37305 -12 -12 -12h-76v-24h144z" />
<glyph glyph-name="object-ungroup" unicode="&#xf248;" horiz-adv-x="576"
d="M564 224h-12v-160h12c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v12h-224v-12c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h12v24h-88v-12
c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h12v160h-12c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h72c6.62695 0 12 -5.37305 12 -12v-12h224v12c0 6.62695 5.37305 12 12 12h72
c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12h-12v-24h88v12c0 6.62695 5.37305 12 12 12h72c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12zM352 384v-32h32v32h-32zM352 128v-32h32v32h-32zM64 96v32h-32v-32h32zM64 352v32
h-32v-32h32zM96 136h224v12c0 6.62695 5.37305 12 12 12h12v160h-12c-6.62695 0 -12 5.37305 -12 12v12h-224v-12c0 -6.62695 -5.37305 -12 -12 -12h-12v-160h12c6.62695 0 12 -5.37305 12 -12v-12zM224 0v32h-32v-32h32zM504 64v160h-12c-6.62695 0 -12 5.37305 -12 12v12
h-88v-88h12c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v12h-88v-24h12c6.62695 0 12 -5.37305 12 -12v-12h224v12c0 6.62695 5.37305 12 12 12h12zM544 0v32h-32v-32h32zM544 256v32h-32v-32h32z" />
<glyph glyph-name="sticky-note" unicode="&#xf249;" horiz-adv-x="448"
d="M448 99.8936c0 -10.9746 -6.29883 -26.1797 -14.0586 -33.9404l-83.8828 -83.8818c-7.75977 -7.76074 -22.9658 -14.0596 -33.9404 -14.0596h-268.118c-26.5098 0 -48 21.4902 -48 48v351.988c0 26.5098 21.4902 48 48 48h352c26.5098 0 48 -21.4902 48 -48v-268.106z
M320 19.8936l76.1182 76.1182h-76.1182v-76.1182zM400 368h-352v-351.988h224v104c0 13.2549 10.7451 24 24 24h104v223.988z" />
<glyph glyph-name="clone" unicode="&#xf24d;"
d="M464 448c26.5098 0 48 -21.4902 48 -48v-320c0 -26.5098 -21.4902 -48 -48 -48h-48v-48c0 -26.5098 -21.4902 -48 -48 -48h-320c-26.5098 0 -48 21.4902 -48 48v320c0 26.5098 21.4902 48 48 48h48v48c0 26.5098 21.4902 48 48 48h320zM362 -16c3.31152 0 6 2.68848 6 6
v42h-224c-26.5098 0 -48 21.4902 -48 48v224h-42c-3.31152 0 -6 -2.68848 -6 -6v-308c0 -3.31152 2.68848 -6 6 -6h308zM458 80c3.31152 0 6 2.68848 6 6v308c0 3.31152 -2.68848 6 -6 6h-308c-3.31152 0 -6 -2.68848 -6 -6v-308c0 -3.31152 2.68848 -6 6 -6h308z" />
<glyph glyph-name="hourglass" unicode="&#xf254;" horiz-adv-x="384"
d="M368 400c0 -80.0996 -31.8984 -165.619 -97.1797 -208c64.9912 -42.1934 97.1797 -127.436 97.1797 -208h4c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-360c-6.62695 0 -12 5.37305 -12 12v24c0 6.62695 5.37305 12 12 12h4
c0 80.0996 31.8994 165.619 97.1797 208c-64.9912 42.1934 -97.1797 127.436 -97.1797 208h-4c-6.62695 0 -12 5.37305 -12 12v24c0 6.62695 5.37305 12 12 12h360c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-4zM64 400
c0 -101.621 57.3066 -184 128 -184s128 82.3799 128 184h-256zM320 -16c0 101.62 -57.3076 184 -128 184s-128 -82.3799 -128 -184h256z" />
<glyph glyph-name="hand-rock" unicode="&#xf255;"
d="M408.864 368.948c48.8213 20.751 103.136 -15.0723 103.136 -67.9111v-114.443c0 -15.3955 -3.08887 -30.3906 -9.18262 -44.5674l-42.835 -99.6562c-4.99707 -11.625 -3.98242 -18.8574 -3.98242 -42.3701c0 -17.6729 -14.3271 -32 -32 -32h-252
c-17.6729 0 -32 14.3271 -32 32c0 27.3301 1.1416 29.2012 -3.11035 32.9033l-97.71 85.0811c-24.8994 21.6797 -39.1797 52.8926 -39.1797 85.6338v56.9531c0 47.4277 44.8457 82.0215 91.0459 71.1807c1.96094 55.751 63.5107 87.8262 110.671 60.8057
c29.1895 31.0713 78.8604 31.4473 108.334 -0.0214844c32.7051 18.6846 76.4121 10.3096 98.8135 -23.5879zM464 186.594v114.445c0 34.29 -52 33.8232 -52 0.676758c0 -8.83594 -7.16309 -16 -16 -16h-7c-8.83691 0 -16 7.16406 -16 16v26.751
c0 34.457 -52 33.707 -52 0.676758v-27.4287c0 -8.83594 -7.16309 -16 -16 -16h-7c-8.83691 0 -16 7.16406 -16 16v40.4658c0 34.3525 -52 33.8115 -52 0.677734v-41.1436c0 -8.83594 -7.16406 -16 -16 -16h-7c-8.83594 0 -16 7.16406 -16 16v26.751
c0 34.4023 -52 33.7744 -52 0.676758v-116.571c0 -8.83203 -7.16797 -16 -16 -16c-3.30664 0 -8.01367 1.7627 -10.5068 3.93359l-7 6.09473c-3.03223 2.64062 -5.49316 8.04688 -5.49316 12.0674v0v41.2275c0 34.2148 -52 33.8857 -52 0.677734v-56.9531
c0 -18.8555 8.27441 -36.874 22.7002 -49.4365l97.71 -85.0801c12.4502 -10.8398 19.5898 -26.4463 19.5898 -42.8164v-10.2861h220v7.07617c0 13.21 2.65332 26.0791 7.88281 38.25l42.835 99.6553c2.91602 6.75391 5.28223 18.207 5.28223 25.5635v0.0488281z" />
<glyph glyph-name="hand-paper" unicode="&#xf256;" horiz-adv-x="448"
d="M372.57 335.359c39.9062 5.63281 75.4297 -25.7393 75.4297 -66.3594v-131.564c-0.00195312 -12.7666 -2.33008 -33.2246 -5.19531 -45.666l-30.1836 -130.958c-3.34668 -14.5234 -16.2783 -24.8125 -31.1816 -24.8125h-222.897
c-9.10352 0 -20.7793 6.01758 -26.0615 13.4316l-119.97 168.415c-21.2441 29.8203 -14.8047 71.3574 14.5498 93.1533c18.7754 13.9395 42.1309 16.2979 62.083 8.87109v126.13c0 44.0547 41.125 75.5439 82.4053 64.9834c23.8926 48.1963 92.3535 50.2471 117.982 0.74707
c42.5186 11.1445 83.0391 -21.9346 83.0391 -65.5469v-10.8242zM399.997 137.437l-0.00195312 131.563c0 24.9492 -36.5703 25.5508 -36.5703 -0.691406v-76.3086c0 -8.83691 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16309 -16 16v154.184
c0 25.501 -36.5703 26.3633 -36.5703 0.691406v-154.875c0 -8.83691 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16309 -16 16v188.309c0 25.501 -36.5703 26.3545 -36.5703 0.691406v-189c0 -8.83691 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16309 -16 16
v153.309c0 25.501 -36.5713 26.3359 -36.5713 0.691406v-206.494c0 -15.5703 -20.0352 -21.9092 -29.0303 -9.2832l-27.1279 38.0791c-14.3711 20.1709 -43.833 -2.33496 -29.3945 -22.6045l115.196 -161.697h201.92l27.3252 118.551
c2.63086 11.417 3.96484 23.1553 3.96484 34.8857z" />
<glyph glyph-name="hand-scissors" unicode="&#xf257;"
d="M256 -32c-44.9561 0 -77.3428 43.2627 -64.0244 85.8535c-21.6484 13.71 -34.0156 38.7617 -30.3408 65.0068h-87.6348c-40.8037 0 -74 32.8105 -74 73.1406c0 40.3291 33.1963 73.1396 74 73.1396l94 -9.14062l-78.8496 18.6787
c-38.3076 14.7422 -57.04 57.4707 -41.9424 95.1123c15.0303 37.4736 57.7549 55.7803 95.6416 41.2012l144.929 -55.7568c24.9551 30.5566 57.8086 43.9932 92.2178 24.7324l97.999 -54.8525c20.9746 -11.7393 34.0049 -33.8457 34.0049 -57.6904v-205.702
c0 -30.7422 -21.4404 -57.5576 -51.7979 -64.5537l-118.999 -27.4268c-4.97168 -1.14648 -10.0889 -1.72949 -15.2031 -1.72949zM256 16.0127l70 -0.000976562c1.23633 0 3.21777 0.225586 4.42285 0.501953l119.001 27.4277
c8.58203 1.97754 14.5762 9.29102 14.5762 17.7812v205.701c0 6.4873 -3.62109 12.542 -9.44922 15.8047l-98 54.8545c-8.13965 4.55566 -18.668 2.61914 -24.4873 -4.50781l-21.7646 -26.6475c-2.65039 -3.24512 -8.20215 -5.87891 -12.3926 -5.87891
c-1.64062 0 -4.21484 0.477539 -5.74609 1.06738l-166.549 64.0908c-32.6543 12.5664 -50.7744 -34.5771 -19.2227 -46.7168l155.357 -59.7852c5.66016 -2.17773 10.2539 -8.86816 10.2539 -14.9326v0v-11.6328c0 -8.83691 -7.16309 -16 -16 -16h-182
c-34.375 0 -34.4297 -50.2803 0 -50.2803h182c8.83691 0 16 -7.16309 16 -16v-6.85645c0 -8.83691 -7.16309 -16 -16 -16h-28c-25.1221 0 -25.1592 -36.5674 0 -36.5674h28c8.83691 0 16 -7.16211 16 -16v-6.85547c0 -8.83691 -7.16309 -16 -16 -16
c-25.1201 0 -25.1602 -36.5674 0 -36.5674z" />
<glyph glyph-name="hand-lizard" unicode="&#xf258;" horiz-adv-x="576"
d="M556.686 157.458c12.6357 -19.4863 19.3145 -42.0615 19.3145 -65.2871v-124.171h-224v71.582l-99.751 38.7871c-2.7832 1.08203 -5.70996 1.63086 -8.69727 1.63086h-131.552c-30.8789 0 -56 25.1211 -56 56c0 48.5234 39.4766 88 88 88h113.709l18.333 48h-196.042
c-44.1123 0 -80 35.8877 -80 80v8c0 30.8779 25.1211 56 56 56h293.917c24.5 0 47.084 -12.2725 60.4111 -32.8291zM528 16v76.1709v0.0478516c0 11.7461 -5.19141 29.2734 -11.5879 39.124l-146.358 225.715c-4.44336 6.85254 -11.9707 10.9424 -20.1367 10.9424h-293.917
c-4.41113 0 -8 -3.58887 -8 -8v-8c0 -17.6445 14.3555 -32 32 -32h213.471c25.2021 0 42.626 -25.293 33.6299 -48.8457l-24.5518 -64.2812c-7.05371 -18.4658 -25.0732 -30.873 -44.8398 -30.873h-113.709c-22.0557 0 -40 -17.9443 -40 -40c0 -4.41113 3.58887 -8 8 -8
h131.552h0.0517578c7.44141 0 19.1074 -2.19238 26.041 -4.89355l99.752 -38.7881c18.5898 -7.22852 30.6035 -24.7881 30.6035 -44.7363v-23.582h128z" />
<glyph glyph-name="hand-spock" unicode="&#xf259;"
d="M501.03 331.824c6.05762 -9.77832 10.9746 -27.0498 10.9746 -38.5518c0 -4.80664 -0.915039 -12.499 -2.04297 -17.1709l-57.623 -241.963c-12.748 -54.1729 -68.2627 -98.1387 -123.915 -98.1387h-0.345703h-107.455h-0.224609
c-33.8135 0 -81.2148 18.834 -105.807 42.041l-91.3652 85.9766c-12.8213 12.0469 -23.2266 36.1016 -23.2266 53.6943c0 16.1299 8.97266 38.7529 20.0273 50.499c5.31836 5.66406 29.875 29.3926 68.1152 21.8477l-24.3594 82.1973
c-1.68164 5.66406 -3.0459 15.0576 -3.0459 20.9668c0 37.5938 30.417 70.502 67.8955 73.4551c-0.204102 2.03125 -0.369141 5.33691 -0.369141 7.37891c0 31.627 24.8594 63.6895 55.4902 71.5684c43.248 10.9785 80.5645 -17.7012 89.6602 -53.0723l13.6836 -53.207
l4.64648 22.6602c6.76074 32.417 39.123 58.8115 72.2373 58.916c8.73438 0 56.625 -3.26953 70.7383 -54.0801c15.0664 0.710938 46.9199 -3.50977 66.3105 -35.0176zM463.271 287.219c7.86914 32.9844 -42.1211 45.2695 -50.0859 11.9219l-24.8008 -104.146
c-4.38867 -18.4141 -31.7783 -11.8926 -28.0557 6.2168l28.5479 139.166c7.39844 36.0703 -43.3076 45.0703 -50.1182 11.9629l-31.791 -154.971c-3.54883 -17.3086 -28.2832 -18.0469 -32.7109 -0.804688l-47.3262 184.035
c-8.43359 32.8105 -58.3691 20.2676 -49.8652 -12.8359l42.4414 -165.039c4.81641 -18.7207 -23.3711 -26.9121 -28.9648 -8.00781l-31.3438 105.779c-9.6875 32.6465 -59.1191 18.2578 -49.3867 -14.625l36.0137 -121.539
c5.61816 -18.9521 10.1777 -50.377 10.1777 -70.1436v-0.00878906c0 -6.54297 -8.05664 -10.9355 -13.4824 -5.82617l-51.123 48.1074c-24.7852 23.4082 -60.0527 -14.1875 -35.2793 -37.4902l91.3691 -85.9805c16.9629 -16.0068 49.6592 -28.998 72.9824 -28.998h0.154297
h107.455h0.216797c34.7402 0 69.3936 27.4443 77.3525 61.2598z" />
<glyph glyph-name="hand-pointer" unicode="&#xf25a;" horiz-adv-x="448"
d="M358.182 268.639c43.1934 16.6348 89.8184 -15.7949 89.8184 -62.6387v-84c-0.000976562 -4.25 -0.775391 -11.0615 -1.72754 -15.2041l-27.4297 -118.999c-6.98242 -30.2969 -33.7549 -51.7969 -64.5566 -51.7969h-178.286c-21.2588 0 -41.3682 10.4102 -53.791 27.8457
l-109.699 154.001c-21.2432 29.8193 -14.8047 71.3574 14.5498 93.1523c18.8115 13.9658 42.1748 16.2822 62.083 8.87207v161.129c0 36.9443 29.7363 67 66.2861 67s66.2861 -30.0557 66.2861 -67v-73.6338c20.4131 2.85742 41.4678 -3.94238 56.5947 -19.6289
c27.1934 12.8467 60.3799 5.66992 79.8721 -19.0986zM80.9854 168.303c-14.4004 20.2119 -43.8008 -2.38281 -29.3945 -22.6055l109.712 -154c3.43457 -4.81934 8.92871 -7.69727 14.6973 -7.69727h178.285c8.49219 0 15.8037 5.99414 17.7822 14.5762l27.4297 119.001
c0.333008 1.44629 0.501953 2.93457 0.501953 4.42285v84c0 25.1602 -36.5713 25.1211 -36.5713 0c0 -8.83594 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16406 -16 16v21c0 25.1602 -36.5713 25.1201 -36.5713 0v-21c0 -8.83594 -7.16309 -16 -16 -16h-6.85938
c-8.83691 0 -16 7.16406 -16 16v35c0 25.1602 -36.5703 25.1201 -36.5703 0v-35c0 -8.83594 -7.16309 -16 -16 -16h-6.85742c-8.83691 0 -16 7.16406 -16 16v175c0 25.1602 -36.5713 25.1201 -36.5713 0v-241.493c0 -15.5703 -20.0352 -21.9092 -29.0303 -9.2832z
M176.143 48v96c0 8.83691 6.26855 16 14 16h6c7.73242 0 14 -7.16309 14 -16v-96c0 -8.83691 -6.26758 -16 -14 -16h-6c-7.73242 0 -14 7.16309 -14 16zM251.571 48v96c0 8.83691 6.26758 16 14 16h6c7.73145 0 14 -7.16309 14 -16v-96c0 -8.83691 -6.26855 -16 -14 -16h-6
c-7.73242 0 -14 7.16309 -14 16zM327 48v96c0 8.83691 6.26758 16 14 16h6c7.73242 0 14 -7.16309 14 -16v-96c0 -8.83691 -6.26758 -16 -14 -16h-6c-7.73242 0 -14 7.16309 -14 16z" />
<glyph glyph-name="hand-peace" unicode="&#xf25b;" horiz-adv-x="448"
d="M362.146 256.024c42.5908 13.3184 85.8535 -19.0684 85.8535 -64.0244l-0.0117188 -70.001c-0.000976562 -4.25 -0.775391 -11.0615 -1.72949 -15.2031l-27.4268 -118.999c-6.99707 -30.3564 -33.8105 -51.7969 -64.5547 -51.7969h-205.702
c-23.8447 0 -45.9502 13.0303 -57.6904 34.0059l-54.8525 97.999c-19.2607 34.4092 -5.82422 67.2617 24.7324 92.2178l-55.7568 144.928c-14.5791 37.8867 3.72754 80.6113 41.2012 95.6416c37.6406 15.0977 80.3691 -3.63477 95.1123 -41.9424l18.6787 -78.8496
l-9.14062 94c0 40.8037 32.8096 74 73.1396 74s73.1406 -33.1963 73.1406 -74v-87.6348c26.2451 3.6748 51.2959 -8.69238 65.0068 -30.3408zM399.987 122l-0.000976562 70c0 25.1602 -36.5674 25.1201 -36.5674 0c0 -8.83691 -7.16309 -16 -16 -16h-6.85547
c-8.83789 0 -16 7.16309 -16 16v28c0 25.1592 -36.5674 25.1221 -36.5674 0v-28c0 -8.83691 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16309 -16 16v182c0 34.4297 -50.2803 34.375 -50.2803 0v-182c0 -8.83691 -7.16309 -16 -16 -16h-11.6328v0
c-6.06445 0 -12.7549 4.59375 -14.9326 10.2539l-59.7842 155.357c-12.1396 31.5518 -59.2842 13.4326 -46.7168 -19.2227l64.0898 -166.549c0.589844 -1.53125 1.06738 -4.10547 1.06738 -5.74609c0 -4.19043 -2.63379 -9.74219 -5.87891 -12.3926l-26.6475 -21.7646
c-7.12695 -5.81934 -9.06445 -16.3467 -4.50781 -24.4873l54.8535 -98c3.26367 -5.82812 9.31934 -9.44922 15.8057 -9.44922h205.701c8.49121 0 15.8037 5.99414 17.7812 14.5762l27.4277 119.001c0.333008 1.44629 0.501953 2.93457 0.501953 4.42285z" />
<glyph glyph-name="registered" unicode="&#xf25d;"
d="M256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248zM256 -8c110.549 0 200 89.4678 200 200c0 110.549 -89.4678 200 -200 200c-110.549 0 -200 -89.4688 -200 -200c0 -110.549 89.4678 -200 200 -200z
M366.442 73.791c4.40332 -7.99219 -1.37012 -17.791 -10.5107 -17.791h-42.8096h-0.0126953c-3.97559 0 -8.71582 2.84961 -10.5801 6.36035l-47.5156 89.3027h-31.958v-83.6631c0 -6.61719 -5.38281 -12 -12 -12h-38.5674c-6.61719 0 -12 5.38281 -12 12v248.304
c0 6.61719 5.38281 12 12 12h78.667c71.251 0 101.498 -32.749 101.498 -85.252c0 -31.6123 -15.2148 -59.2969 -39.4824 -73.1758c3.02148 -4.61719 0.225586 0.199219 53.2715 -96.085zM256.933 208.094c20.9131 0 32.4307 11.5186 32.4316 32.4316
c0 19.5752 -6.5127 31.709 -38.9297 31.709h-27.377v-64.1406h33.875z" />
<glyph glyph-name="calendar-plus" unicode="&#xf271;" horiz-adv-x="448"
d="M336 156v-24c0 -6.59961 -5.40039 -12 -12 -12h-76v-76c0 -6.59961 -5.40039 -12 -12 -12h-24c-6.59961 0 -12 5.40039 -12 12v76h-76c-6.59961 0 -12 5.40039 -12 12v24c0 6.59961 5.40039 12 12 12h76v76c0 6.59961 5.40039 12 12 12h24c6.59961 0 12 -5.40039 12 -12
v-76h76c6.59961 0 12 -5.40039 12 -12zM448 336v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40
c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48zM400 -10v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="calendar-minus" unicode="&#xf272;" horiz-adv-x="448"
d="M124 120c-6.59961 0 -12 5.40039 -12 12v24c0 6.59961 5.40039 12 12 12h200c6.59961 0 12 -5.40039 12 -12v-24c0 -6.59961 -5.40039 -12 -12 -12h-200zM448 336v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52
c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48zM400 -10v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="calendar-times" unicode="&#xf273;" horiz-adv-x="448"
d="M311.7 73.2998l-17 -17c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-53.7002 53.7998l-53.7002 -53.6992c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-17 17c-4.7002 4.69922 -4.7002 12.2998 0 17l53.7002 53.6992l-53.7002 53.7002c-4.7002 4.7002 -4.7002 12.2998 0 17
l17 17c4.7002 4.7002 12.2998 4.7002 17 0l53.7002 -53.7002l53.7002 53.7002c4.7002 4.7002 12.2998 4.7002 17 0l17 -17c4.7002 -4.7002 4.7002 -12.2998 0 -17l-53.7998 -53.7998l53.6992 -53.7002c4.80078 -4.7002 4.80078 -12.2998 0.100586 -17zM448 336v-352
c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48zM400 -10
v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="calendar-check" unicode="&#xf274;" horiz-adv-x="448"
d="M400 384c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h48v52c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-52h128v52c0 6.62695 5.37305 12 12 12h40
c6.62695 0 12 -5.37305 12 -12v-52h48zM394 -16c3.31152 0 6 2.68848 6 6v298h-352v-298c0 -3.31152 2.68848 -6 6 -6h340zM341.151 184.65l-142.31 -141.169c-4.70508 -4.66699 -12.3027 -4.6377 -16.9707 0.0673828l-75.0908 75.6992
c-4.66699 4.70508 -4.6377 12.3027 0.0673828 16.9707l22.7197 22.5361c4.70508 4.66699 12.3027 4.63672 16.9697 -0.0693359l44.1035 -44.4609l111.072 110.182c4.70508 4.66699 12.3027 4.63672 16.9707 -0.0683594l22.5361 -22.7178
c4.66699 -4.70508 4.63672 -12.3027 -0.0683594 -16.9697z" />
<glyph glyph-name="map" unicode="&#xf279;" horiz-adv-x="576"
d="M560.02 416c8.4502 0 15.9805 -6.83008 15.9805 -16.0195v-346.32c0 -11.9609 -9.01367 -25.2705 -20.1201 -29.71l-151.83 -52.8105c-5.32617 -1.7334 -14.1953 -3.13965 -19.7969 -3.13965c-5.7373 0 -14.8105 1.47363 -20.2529 3.29004l-172 60.71l-170.05 -62.8398
c-1.99023 -0.790039 -4 -1.16016 -5.95996 -1.16016c-8.45996 0 -15.9902 6.83008 -15.9902 16.0195v346.32c0.00292969 11.959 9.0166 25.2686 20.1201 29.71l151.83 52.8105c6.43945 2.08984 13.1201 3.13965 19.8096 3.13965
c5.73242 -0.00195312 14.8008 -1.47168 20.2402 -3.28027l172 -60.7197h0.00976562l170.05 62.8398c1.98047 0.790039 4 1.16016 5.95996 1.16016zM224 357.58v-285.97l128 -45.1904v285.97zM48 29.9502l127.36 47.0801l0.639648 0.229492v286.2l-128 -44.5303v-288.979z
M528 65.0801v288.97l-127.36 -47.0693l-0.639648 -0.240234v-286.19z" />
<glyph glyph-name="comment-alt" unicode="&#xf27a;"
d="M448 448c35.2998 0 64 -28.7002 64 -64v-288c0 -35.2998 -28.7002 -64 -64 -64h-144l-124.9 -93.5996c-2.19922 -1.7002 -4.69922 -2.40039 -7.09961 -2.40039c-6.2002 0 -12 4.90039 -12 12v84h-96c-35.2998 0 -64 28.7002 -64 64v288c0 35.2998 28.7002 64 64 64h384z
M464 96v288c0 8.7998 -7.2002 16 -16 16h-384c-8.7998 0 -16 -7.2002 -16 -16v-288c0 -8.7998 7.2002 -16 16 -16h144v-60l67.2002 50.4004l12.7998 9.59961h160c8.7998 0 16 7.2002 16 16z" />
<glyph glyph-name="pause-circle" unicode="&#xf28b;"
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200zM352 272v-160c0 -8.7998 -7.2002 -16 -16 -16h-48
c-8.7998 0 -16 7.2002 -16 16v160c0 8.7998 7.2002 16 16 16h48c8.7998 0 16 -7.2002 16 -16zM240 272v-160c0 -8.7998 -7.2002 -16 -16 -16h-48c-8.7998 0 -16 7.2002 -16 16v160c0 8.7998 7.2002 16 16 16h48c8.7998 0 16 -7.2002 16 -16z" />
<glyph glyph-name="stop-circle" unicode="&#xf28d;"
d="M504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM56 192c0 -110.5 89.5 -200 200 -200s200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200zM352 272v-160c0 -8.7998 -7.2002 -16 -16 -16h-160
c-8.7998 0 -16 7.2002 -16 16v160c0 8.7998 7.2002 16 16 16h160c8.7998 0 16 -7.2002 16 -16z" />
<glyph glyph-name="handshake" unicode="&#xf2b5;" horiz-adv-x="640"
d="M519.2 320.1h120.8v-255.699h-64c-17.5 0 -31.7998 14.1992 -31.9004 31.6992h-57.8994c-1.7998 -8.19922 -5.2998 -16.0996 -10.9004 -23l-26.2002 -32.2998c-15.7998 -19.3994 -41.8994 -25.5 -64 -16.7998c-13.5 -16.5996 -30.5996 -24 -48.7998 -24
c-15.0996 0 -28.5996 5.09961 -41.0996 15.9004c-31.7998 -21.9004 -74.7002 -21.3008 -105.601 3.7998l-84.5996 76.3994h-9.09961c-0.100586 -17.5 -14.3008 -31.6992 -31.9004 -31.6992h-64v255.699h118l47.5996 47.6006c10.5 10.3994 24.8008 16.2998 39.6006 16.2998
h226.8v0c12.7812 0 30.5225 -7.30273 39.5996 -16.2998zM48 96.4004c8.7998 0 16 7.09961 16 16c0 8.7998 -7.2002 16 -16 16s-16 -7.2002 -16 -16c0 -8.80078 7.2002 -16 16 -16zM438 103.3c2.7002 3.40039 2.2002 8.5 -1.2002 11.2998l-108.2 87.8008l-8.19922 -7.5
c-40.3008 -36.8008 -86.7002 -11.8008 -101.5 4.39941c-26.7002 29 -25 74.4004 4.39941 101.3l38.7002 35.5h-56.7002c-2 -0.799805 -3.7002 -1.5 -5.7002 -2.2998l-61.6992 -61.5996h-41.9004v-128.101h27.7002l97.2998 -88
c16.0996 -13.0996 41.4004 -10.5 55.2998 6.60059l15.6006 19.2002l36.7998 -31.5c3 -2.40039 12 -4.90039 18 2.39941l30 36.5l23.8994 -19.3994c3.5 -2.80078 8.5 -2.2002 11.3008 1.19922zM544 144.1v128h-44.7002l-61.7002 61.6006
c-1.39941 1.5 -3.39941 2.2998 -5.5 2.2998l-83.6992 -0.200195c-10 0 -19.6006 -3.7002 -27 -10.5l-65.6006 -60.0996c-9.7002 -8.7998 -10.5 -24 -1.2002 -33.9004c8.90039 -9.39941 25.1006 -8.7002 34.6006 0l55.2002 50.6006c6.5 5.89941 16.5996 5.5 22.5996 -1
l10.9004 -11.7002c6 -6.5 5.5 -16.6006 -1 -22.6006l-12.5 -11.3994l102.699 -83.4004c2.80078 -2.2998 5.40039 -4.89941 7.7002 -7.7002h69.2002zM592 96.4004c8.7998 0 16 7.09961 16 16c0 8.7998 -7.2002 16 -16 16s-16 -7.2002 -16 -16c0 -8.80078 7.2002 -16 16 -16z
" />
<glyph glyph-name="envelope-open" unicode="&#xf2b6;"
d="M494.586 283.484c9.6123 -7.94824 17.4141 -24.5205 17.4141 -36.9932v-262.491c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v262.515c0 12.5166 7.84668 29.1279 17.5146 37.0771c4.08008 3.35449 110.688 89.0996 135.15 108.549
c22.6992 18.1426 60.1299 55.8594 103.335 55.8594c43.4365 0 81.2314 -38.1914 103.335 -55.8594c23.5283 -18.707 130.554 -104.773 135.251 -108.656zM464 -10v253.632v0.00488281c0 1.5791 -0.996094 3.66602 -2.22363 4.6582
c-15.8633 12.8232 -108.793 87.5752 -132.366 106.316c-17.5527 14.0195 -49.7168 45.3887 -73.4102 45.3887c-23.6016 0 -55.2451 -30.8799 -73.4102 -45.3887c-23.5713 -18.7393 -116.494 -93.4795 -132.364 -106.293
c-1.40918 -1.13965 -2.22559 -2.85254 -2.22559 -4.66504v-253.653c0 -3.31152 2.68848 -6 6 -6h404c3.31152 0 6 2.68848 6 6zM432.009 177.704c4.24902 -5.15918 3.46484 -12.7949 -1.74512 -16.9814c-28.9746 -23.2822 -59.2734 -47.5967 -70.9287 -56.8623
c-22.6992 -18.1436 -60.1299 -55.8604 -103.335 -55.8604c-43.4521 0 -81.2871 38.2373 -103.335 55.8604c-11.2793 8.9668 -41.7441 33.4131 -70.9268 56.8643c-5.20996 4.1875 -5.99316 11.8223 -1.74512 16.9814l15.2578 18.5283
c4.17773 5.07227 11.6572 5.84277 16.7793 1.72559c28.6182 -23.001 58.5654 -47.0352 70.5596 -56.5713c17.5527 -14.0195 49.7168 -45.3887 73.4102 -45.3887c23.6016 0 55.2461 30.8799 73.4102 45.3887c11.9941 9.53516 41.9434 33.5703 70.5625 56.5684
c5.12207 4.11621 12.6016 3.3457 16.7783 -1.72656z" />
<glyph glyph-name="address-book" unicode="&#xf2b9;" horiz-adv-x="448"
d="M436 288h-20v-64h20c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-20v-64h20c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-20v-48c0 -26.5 -21.5 -48 -48 -48h-320c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48
h320c26.5 0 48 -21.5 48 -48v-48h20c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12zM368 -16v416h-320v-416h320zM208 192c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64zM118.4 64
c-12.4004 0 -22.4004 8.59961 -22.4004 19.2002v19.2002c0 31.7998 30.0996 57.5996 67.2002 57.5996c11.3994 0 17.8994 -8 44.7998 -8c26.0996 0 34 8 44.7998 8c37.1006 0 67.2002 -25.7998 67.2002 -57.5996v-19.2002c0 -10.6006 -10 -19.2002 -22.4004 -19.2002
h-179.199z" />
<glyph glyph-name="address-card" unicode="&#xf2bb;" horiz-adv-x="576"
d="M528 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480zM528 16v352h-480v-352h480zM208 192c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64z
M118.4 64c-12.4004 0 -22.4004 8.59961 -22.4004 19.2002v19.2002c0 31.7998 30.0996 57.5996 67.2002 57.5996c11.3994 0 17.8994 -8 44.7998 -8c26.0996 0 34 8 44.7998 8c37.1006 0 67.2002 -25.7998 67.2002 -57.5996v-19.2002
c0 -10.6006 -10 -19.2002 -22.4004 -19.2002h-179.199zM360 128c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112zM360 192c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112
c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112zM360 256c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112z" />
<glyph glyph-name="user-circle" unicode="&#xf2bd;" horiz-adv-x="496"
d="M248 344c53 0 96 -43 96 -96s-43 -96 -96 -96s-96 43 -96 96s43 96 96 96zM248 200c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8
c49.7002 0 95.0996 18.2998 130.1 48.4004c-14.8994 23 -40.3994 38.5 -69.5996 39.5c-20.7998 -6.5 -40.5996 -9.60059 -60.5 -9.60059s-39.7002 3.2002 -60.5 9.60059c-29.2002 -0.900391 -54.7002 -16.5 -69.5996 -39.5c35 -30.1006 80.3994 -48.4004 130.1 -48.4004z
M410.7 76.0996c23.3994 32.7002 37.2998 72.7002 37.2998 115.9c0 110.3 -89.7002 200 -200 200s-200 -89.7002 -200 -200c0 -43.2002 13.9004 -83.2002 37.2998 -115.9c24.5 31.4004 62.2002 51.9004 105.101 51.9004c10.1992 0 26.0996 -9.59961 57.5996 -9.59961
c31.5996 0 47.4004 9.59961 57.5996 9.59961c43 0 80.7002 -20.5 105.101 -51.9004z" />
<glyph glyph-name="id-badge" unicode="&#xf2c1;" horiz-adv-x="384"
d="M336 448c26.5 0 48 -21.5 48 -48v-416c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h288zM336 -16v416h-288v-416h288zM144 336c-8.7998 0 -16 7.2002 -16 16s7.2002 16 16 16h96c8.7998 0 16 -7.2002 16 -16s-7.2002 -16 -16 -16
h-96zM192 160c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64zM102.4 32c-12.4004 0 -22.4004 8.59961 -22.4004 19.2002v19.2002c0 31.7998 30.0996 57.5996 67.2002 57.5996c11.3994 0 17.8994 -8 44.7998 -8
c26.0996 0 34 8 44.7998 8c37.1006 0 67.2002 -25.7998 67.2002 -57.5996v-19.2002c0 -10.6006 -10 -19.2002 -22.4004 -19.2002h-179.199z" />
<glyph glyph-name="id-card" unicode="&#xf2c2;" horiz-adv-x="576"
d="M528 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480zM528 16v288h-480v-288h32.7998c-1 4.5 -0.799805 -3.59961 -0.799805 22.4004c0 31.7998 30.0996 57.5996 67.2002 57.5996
c11.3994 0 17.8994 -8 44.7998 -8c26.0996 0 34 8 44.7998 8c37.1006 0 67.2002 -25.7998 67.2002 -57.5996c0 -26 0.0996094 -17.9004 -0.799805 -22.4004h224.8zM360 96c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112c4.40039 0 8 -3.59961 8 -8v-16
c0 -4.40039 -3.59961 -8 -8 -8h-112zM360 160c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112zM360 224c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112
c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112zM192 128c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64z" />
<glyph glyph-name="window-maximize" unicode="&#xf2d0;"
d="M464 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h416zM464 22v234h-416v-234c0 -3.2998 2.7002 -6 6 -6h404c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="window-minimize" unicode="&#xf2d1;"
d="M480 -32h-448c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32h448c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32z" />
<glyph glyph-name="window-restore" unicode="&#xf2d2;"
d="M464 448c26.5 0 48 -21.5 48 -48v-320c0 -26.5 -21.5 -48 -48 -48h-48v-48c0 -26.5 -21.5 -48 -48 -48h-320c-26.5 0 -48 21.5 -48 48v320c0 26.5 21.5 48 48 48h48v48c0 26.5 21.5 48 48 48h320zM368 -16v208h-320v-208h320zM464 80v320h-320v-48h224
c26.5 0 48 -21.5 48 -48v-224h48z" />
<glyph glyph-name="snowflake" unicode="&#xf2dc;" horiz-adv-x="448"
d="M440.1 92.7998c7.60059 -4.39941 10.1006 -14.2002 5.5 -21.7002l-7.89941 -13.8994c-4.40039 -7.7002 -14 -10.2998 -21.5 -5.90039l-39.2002 23l9.09961 -34.7002c2.30078 -8.5 -2.69922 -17.2998 -11.0996 -19.5996l-15.2002 -4.09961
c-8.39941 -2.30078 -17.0996 2.7998 -19.2998 11.2998l-21.2998 81l-71.9004 42.2002v-84.5l58.2998 -59.3008c6.10059 -6.19922 6.10059 -16.3994 0 -22.5996l-11.0996 -11.2998c-6.09961 -6.2002 -16.0996 -6.2002 -22.2002 0l-24.8994 25.3994v-46.0996
c0 -8.7998 -7 -16 -15.7002 -16h-15.7002c-8.7002 0 -15.7002 7.2002 -15.7002 16v45.9004l-24.8994 -25.4004c-6.10059 -6.2002 -16.1006 -6.2002 -22.2002 0l-11.1006 11.2998c-6.09961 6.2002 -6.09961 16.4004 0 22.6006l58.3008 59.2998v84.5l-71.9004 -42.2002
l-21.2998 -81c-2.2998 -8.5 -10.9004 -13.5996 -19.2998 -11.2998l-15.2002 4.09961c-8.40039 2.2998 -13.2998 11.1006 -11.1006 19.6006l9.10059 34.6992l-39.2002 -23c-7.5 -4.39941 -17.2002 -1.7998 -21.5 5.90039l-7.90039 13.9004
c-4.2998 7.69922 -1.69922 17.5 5.80078 21.8994l39.1992 23l-34.0996 9.2998c-8.40039 2.30078 -13.2998 11.1006 -11.0996 19.6006l4.09961 15.5c2.2998 8.5 10.9004 13.5996 19.2998 11.2998l79.7002 -21.7002l71.9004 42.2002l-71.9004 42.2002l-79.7002 -21.7002
c-8.39941 -2.2998 -17.0996 2.7998 -19.2998 11.2998l-4.09961 15.5c-2.30078 8.5 2.69922 17.2998 11.0996 19.6006l34.0996 9.09961l-39.1992 23c-7.60059 4.5 -10.1006 14.2002 -5.80078 21.9004l7.90039 13.8994c4.40039 7.7002 14 10.2998 21.5 5.90039l39.2002 -23
l-9.10059 34.7002c-2.2998 8.5 2.7002 17.2998 11.1006 19.5996l15.2002 4.09961c8.39941 2.30078 17.0996 -2.7998 19.2998 -11.2998l21.2998 -81l71.9004 -42.2002v84.5l-58.3008 59.3008c-6.09961 6.19922 -6.09961 16.3994 0 22.5996l11.5 11.2998
c6.10059 6.2002 16.1006 6.2002 22.2002 0l24.9004 -25.3994v46.0996c0 8.7998 7 16 15.7002 16h15.6992c8.7002 0 15.7002 -7.2002 15.7002 -16v-45.9004l24.9004 25.4004c6.09961 6.2002 16.0996 6.2002 22.2002 0l11.0996 -11.2998
c6.09961 -6.2002 6.09961 -16.4004 0 -22.6006l-58.2998 -59.2998v-84.5l71.8994 42.2002l21.3008 81c2.2998 8.5 10.8994 13.5996 19.2998 11.2998l15.2002 -4.09961c8.39941 -2.2998 13.2998 -11.1006 11.0996 -19.6006l-9.09961 -34.6992l39.1992 23
c7.5 4.39941 17.2002 1.7998 21.5 -5.90039l7.90039 -13.9004c4.2998 -7.69922 1.7002 -17.5 -5.7998 -21.8994l-39.2002 -23l34.0996 -9.2998c8.40039 -2.30078 13.3008 -11.1006 11.1006 -19.6006l-4.10059 -15.5c-2.2998 -8.5 -10.8994 -13.5996 -19.2998 -11.2998
l-79.7002 21.7002l-71.8994 -42.2002l71.7998 -42.2002l79.7002 21.7002c8.39941 2.2998 17.0996 -2.7998 19.2998 -11.2998l4.09961 -15.5c2.30078 -8.5 -2.69922 -17.2998 -11.0996 -19.6006l-34.0996 -9.2998z" />
<glyph glyph-name="trash-alt" unicode="&#xf2ed;" horiz-adv-x="448"
d="M268 32c-6.62402 0 -12 5.37598 -12 12v216c0 6.62402 5.37598 12 12 12h24c6.62402 0 12 -5.37598 12 -12v-216c0 -6.62402 -5.37598 -12 -12 -12h-24zM432 368c8.83203 0 16 -7.16797 16 -16v-16c0 -8.83203 -7.16797 -16 -16 -16h-16v-336
c0 -26.4961 -21.5039 -48 -48 -48h-288c-26.4961 0 -48 21.5039 -48 48v336h-16c-8.83203 0 -16 7.16797 -16 16v16c0 8.83203 7.16797 16 16 16h82.4102l34.0195 56.7002c7.71875 12.8613 26.1572 23.2998 41.1572 23.2998h0.00292969h100.82h0.0224609
c15 0 33.4385 -10.4385 41.1572 -23.2998l34 -56.7002h82.4102zM171.84 397.09l-17.4502 -29.0898h139.221l-17.46 29.0898c-0.96582 1.60645 -3.26953 2.91016 -5.14355 2.91016h-0.00683594h-94h-0.0166016c-1.87402 0 -4.17871 -1.30371 -5.14355 -2.91016zM368 -16v336
h-288v-336h288zM156 32c-6.62402 0 -12 5.37598 -12 12v216c0 6.62402 5.37598 12 12 12h24c6.62402 0 12 -5.37598 12 -12v-216c0 -6.62402 -5.37598 -12 -12 -12h-24z" />
<glyph glyph-name="images" unicode="&#xf302;" horiz-adv-x="576"
d="M480 32v-16c0 -26.5098 -21.4902 -48 -48 -48h-384c-26.5098 0 -48 21.4902 -48 48v256c0 26.5098 21.4902 48 48 48h16v-48h-10c-3.31152 0 -6 -2.68848 -6 -6v-244c0 -3.31152 2.68848 -6 6 -6h372c3.31152 0 6 2.68848 6 6v10h48zM522 368h-372
c-3.31152 0 -6 -2.68848 -6 -6v-244c0 -3.31152 2.68848 -6 6 -6h372c3.31152 0 6 2.68848 6 6v244c0 3.31152 -2.68848 6 -6 6zM528 416c26.5098 0 48 -21.4902 48 -48v-256c0 -26.5098 -21.4902 -48 -48 -48h-384c-26.5098 0 -48 21.4902 -48 48v256
c0 26.5098 21.4902 48 48 48h384zM264 304c0 -22.0908 -17.9092 -40 -40 -40s-40 17.9092 -40 40s17.9092 40 40 40s40 -17.9092 40 -40zM192 208l39.5146 39.5146c4.68652 4.68652 12.2842 4.68652 16.9717 0l39.5137 -39.5146l103.515 103.515
c4.68652 4.68652 12.2842 4.68652 16.9717 0l71.5137 -71.5146v-80h-288v48z" />
<glyph glyph-name="clipboard" unicode="&#xf328;" horiz-adv-x="384"
d="M336 384c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h80c0 35.2998 28.7002 64 64 64s64 -28.7002 64 -64h80zM192 408c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24s24 10.7002 24 24
s-10.7002 24 -24 24zM336 -10v340c0 3.2998 -2.7002 6 -6 6h-42v-36c0 -6.59961 -5.40039 -12 -12 -12h-168c-6.59961 0 -12 5.40039 -12 12v36h-42c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h276c3.2998 0 6 2.7002 6 6z" />
<glyph glyph-name="arrow-alt-circle-down" unicode="&#xf358;"
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200zM224 308c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-116
h67c10.7002 0 16.0996 -12.9004 8.5 -20.5l-99 -99c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-99 99c-7.5 7.59961 -2.2002 20.5 8.5 20.5h67v116z" />
<glyph glyph-name="arrow-alt-circle-left" unicode="&#xf359;"
d="M8 192c0 137 111 248 248 248s248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248zM456 192c0 110.5 -89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200s200 89.5 200 200zM384 212v-40c0 -6.59961 -5.40039 -12 -12 -12h-116v-67
c0 -10.7002 -12.9004 -16 -20.5 -8.5l-99 99c-4.7002 4.7002 -4.7002 12.2998 0 17l99 99c7.59961 7.59961 20.5 2.2002 20.5 -8.5v-67h116c6.59961 0 12 -5.40039 12 -12z" />
<glyph glyph-name="arrow-alt-circle-right" unicode="&#xf35a;"
d="M504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM56 192c0 -110.5 89.5 -200 200 -200s200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200zM128 172v40c0 6.59961 5.40039 12 12 12h116v67
c0 10.7002 12.9004 16 20.5 8.5l99 -99c4.7002 -4.7002 4.7002 -12.2998 0 -17l-99 -99c-7.59961 -7.59961 -20.5 -2.2002 -20.5 8.5v67h-116c-6.59961 0 -12 5.40039 -12 12z" />
<glyph glyph-name="arrow-alt-circle-up" unicode="&#xf35b;"
d="M256 -56c-137 0 -248 111 -248 248s111 248 248 248s248 -111 248 -248s-111 -248 -248 -248zM256 392c-110.5 0 -200 -89.5 -200 -200s89.5 -200 200 -200s200 89.5 200 200s-89.5 200 -200 200zM276 64h-40c-6.59961 0 -12 5.40039 -12 12v116h-67
c-10.7002 0 -16 12.9004 -8.5 20.5l99 99c4.7002 4.7002 12.2998 4.7002 17 0l99 -99c7.59961 -7.59961 2.2002 -20.5 -8.5 -20.5h-67v-116c0 -6.59961 -5.40039 -12 -12 -12z" />
<glyph glyph-name="gem" unicode="&#xf3a5;" horiz-adv-x="576"
d="M464 448c4.09961 0 7.7998 -2 10.0996 -5.40039l99.9004 -147.199c2.90039 -4.40039 2.59961 -10.1006 -0.700195 -14.2002l-276 -340.8c-4.7998 -5.90039 -13.7998 -5.90039 -18.5996 0l-276 340.8c-3.2998 4 -3.60059 9.7998 -0.700195 14.2002l100 147.199
c2.2002 3.40039 6 5.40039 10 5.40039h352zM444.7 400h-56.7998l51.6992 -96h68.4004zM242.6 400l-51.5996 -96h194l-51.7002 96h-90.7002zM131.3 400l-63.2998 -96h68.4004l51.6992 96h-56.7998zM88.2998 256l119.7 -160l-68.2998 160h-51.4004zM191.2 256l96.7998 -243.3
l96.7998 243.3h-193.6zM368 96l119.6 160h-51.3994z" />
<glyph glyph-name="money-bill-alt" unicode="&#xf3d1;" horiz-adv-x="640"
d="M320 304c53.0195 0 96 -50.1396 96 -112c0 -61.8701 -43 -112 -96 -112c-53.0195 0 -96 50.1504 -96 112c0 61.8604 42.9805 112 96 112zM360 136v16c0 4.41992 -3.58008 8 -8 8h-16v88c0 4.41992 -3.58008 8 -8 8h-13.5801h-0.000976562
c-4.01074 0 -9.97266 -1.80566 -13.3086 -4.03027l-15.3301 -10.2197c-1.96777 -1.30957 -3.56445 -4.29004 -3.56445 -6.65332c0 -1.33691 0.601562 -3.32422 1.34375 -4.43652l8.88086 -13.3105c1.30859 -1.9668 4.29004 -3.56445 6.65332 -3.56445
c1.33691 0 3.32422 0.602539 4.43652 1.34473l0.469727 0.310547v-55.4404h-16c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h64c4.41992 0 8 3.58008 8 8zM608 384c17.6699 0 32 -14.3301 32 -32v-320c0 -17.6699 -14.3301 -32 -32 -32h-576
c-17.6699 0 -32 14.3301 -32 32v320c0 17.6699 14.3301 32 32 32h576zM592 112v160c-35.3496 0 -64 28.6504 -64 64h-416c0 -35.3496 -28.6504 -64 -64 -64v-160c35.3496 0 64 -28.6504 64 -64h416c0 35.3496 28.6504 64 64 64z" />
<glyph glyph-name="window-close" unicode="&#xf410;"
d="M464 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h416zM464 22v340c0 3.2998 -2.7002 6 -6 6h-404c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h404c3.2998 0 6 2.7002 6 6z
M356.5 253.4l-61.4004 -61.4004l61.4004 -61.4004c4.59961 -4.59961 4.59961 -12.0996 0 -16.7998l-22.2998 -22.2998c-4.60059 -4.59961 -12.1006 -4.59961 -16.7998 0l-61.4004 61.4004l-61.4004 -61.4004c-4.59961 -4.59961 -12.0996 -4.59961 -16.7998 0
l-22.2998 22.2998c-4.59961 4.60059 -4.59961 12.1006 0 16.7998l61.4004 61.4004l-61.4004 61.4004c-4.59961 4.59961 -4.59961 12.0996 0 16.7998l22.2998 22.2998c4.60059 4.59961 12.1006 4.59961 16.7998 0l61.4004 -61.4004l61.4004 61.4004
c4.59961 4.59961 12.0996 4.59961 16.7998 0l22.2998 -22.2998c4.7002 -4.60059 4.7002 -12.1006 0 -16.7998z" />
<glyph glyph-name="comment-dots" unicode="&#xf4ad;"
d="M144 240c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM256 240c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM368 240c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32
s-32 14.2998 -32 32s14.2998 32 32 32zM256 416c141.4 0 256 -93.0996 256 -208s-114.6 -208 -256 -208c-32.7998 0 -64 5.2002 -92.9004 14.2998c-29.0996 -20.5996 -77.5996 -46.2998 -139.1 -46.2998c-9.59961 0 -18.2998 5.7002 -22.0996 14.5
c-3.80078 8.7998 -2 19 4.59961 26c0.5 0.400391 31.5 33.7998 46.4004 73.2002c-33 35.0996 -52.9004 78.7002 -52.9004 126.3c0 114.9 114.6 208 256 208zM256 48c114.7 0 208 71.7998 208 160s-93.2998 160 -208 160s-208 -71.7998 -208 -160
c0 -42.2002 21.7002 -74.0996 39.7998 -93.4004l20.6006 -21.7998l-10.6006 -28.0996c-5.5 -14.5 -12.5996 -28.1006 -19.8994 -40.2002c23.5996 7.59961 43.1992 18.9004 57.5 29l19.5 13.7998l22.6992 -7.2002c25.3008 -8 51.7002 -12.0996 78.4004 -12.0996z" />
<glyph glyph-name="smile-wink" unicode="&#xf4da;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM365.8 138.4c10.2002 -8.5 11.6006 -23.6006 3.10059 -33.8008
c-30 -36 -74.1006 -56.5996 -120.9 -56.5996s-90.9004 20.5996 -120.9 56.5996c-8.39941 10.2002 -7.09961 25.3008 3.10059 33.8008c10.0996 8.39941 25.2998 7.09961 33.7998 -3.10059c20.7998 -25.0996 51.5 -39.3994 84 -39.3994s63.2002 14.3994 84 39.3994
c8.5 10.2002 23.5996 11.6006 33.7998 3.10059zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 268c25.7002 0 55.9004 -16.9004 59.7002 -42.0996c1.7998 -11.1006 -11.2998 -18.2002 -19.7998 -10.8008l-9.5 8.5
c-14.8008 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5c-8.30078 -7.39941 -21.5 -0.399414 -19.8008 10.8008c4 25.1992 34.2002 42.0996 59.9004 42.0996z" />
<glyph glyph-name="angry" unicode="&#xf556;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM248 136c33.5996 0 65.2002 -14.7998 86.7998 -40.5996
c8.40039 -10.2002 7.10059 -25.3008 -3.09961 -33.8008c-10.6006 -8.89941 -25.7002 -6.69922 -33.7998 3c-24.8008 29.7002 -75 29.7002 -99.8008 0c-8.5 -10.1992 -23.5996 -11.5 -33.7998 -3s-11.5996 23.6006 -3.09961 33.8008
c21.5996 25.7998 53.2002 40.5996 86.7998 40.5996zM200 208c0 -17.7002 -14.2998 -32.0996 -32 -32.0996s-32 14.2998 -32 32c0 6.19922 2.2002 11.6992 5.2998 16.5996l-28.2002 8.5c-12.6992 3.7998 -19.8994 17.2002 -16.0996 29.9004
c3.7998 12.6992 17.0996 20 29.9004 16.0996l80 -24c12.6992 -3.7998 19.8994 -17.2002 16.0996 -29.9004c-3.09961 -10.3994 -12.7002 -17.0996 -23 -17.0996zM399 262.9c3.7998 -12.7002 -3.40039 -26.1006 -16.0996 -29.8008l-28.2002 -8.5
c3.09961 -4.89941 5.2998 -10.3994 5.2998 -16.5996c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32c-10.2998 0 -19.9004 6.7002 -23 17.0996c-3.7998 12.7002 3.40039 26.1006 16.0996 29.9004l80 24c12.8008 3.7998 26.1006 -3.40039 29.9004 -16.0996z" />
<glyph glyph-name="dizzy" unicode="&#xf567;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM214.2 209.9
c-7.90039 -7.90039 -20.5 -7.90039 -28.4004 -0.200195l-17.7998 17.7998l-17.7998 -17.7998c-7.7998 -7.7998 -20.5 -7.7998 -28.2998 0c-7.80078 7.7998 -7.80078 20.5 0 28.2998l17.8994 17.9004l-17.8994 17.8994c-7.80078 7.7998 -7.80078 20.5 0 28.2998
c7.7998 7.80078 20.5 7.80078 28.2998 0l17.7998 -17.7998l17.9004 17.9004c7.7998 7.7998 20.5 7.7998 28.2998 0s7.7998 -20.5 0 -28.2998l-17.9004 -17.9004l17.9004 -17.7998c7.7998 -7.7998 7.7998 -20.5 0 -28.2998zM374.2 302.1
c7.7002 -7.7998 7.7002 -20.3994 0 -28.1992l-17.9004 -17.9004l17.7998 -18c7.80078 -7.7998 7.80078 -20.5 0 -28.2998c-7.7998 -7.7998 -20.5 -7.7998 -28.2998 0l-17.7998 17.7998l-17.7998 -17.7998c-7.7998 -7.7998 -20.5 -7.7998 -28.2998 0
c-7.80078 7.7998 -7.80078 20.5 0 28.2998l17.8994 17.9004l-17.8994 17.8994c-7.80078 7.7998 -7.80078 20.5 0 28.2998c7.7998 7.80078 20.5 7.80078 28.2998 0l17.7998 -17.7998l17.9004 17.7998c7.7998 7.80078 20.5 7.80078 28.2998 0zM248 176
c35.2998 0 64 -28.7002 64 -64s-28.7002 -64 -64 -64s-64 28.7002 -64 64s28.7002 64 64 64z" />
<glyph glyph-name="flushed" unicode="&#xf579;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM344 304c44.2002 0 80 -35.7998 80 -80s-35.7998 -80 -80 -80
s-80 35.7998 -80 80s35.7998 80 80 80zM344 176c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM344 248c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM232 224c0 -44.2002 -35.7998 -80 -80 -80
s-80 35.7998 -80 80s35.7998 80 80 80s80 -35.7998 80 -80zM152 176c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM152 248c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM312 104
c13.2002 0 24 -10.7998 24 -24s-10.7998 -24 -24 -24h-128c-13.2002 0 -24 10.7998 -24 24s10.7998 24 24 24h128z" />
<glyph glyph-name="frown-open" unicode="&#xf57a;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM200 240c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32
s14.2998 32 32 32s32 -14.2998 32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM248 160c35.5996 0 88.7998 -21.2998 95.7998 -61.2002c2 -11.7998 -9.09961 -21.5996 -20.5 -18.0996
c-31.2002 9.59961 -59.3994 15.2998 -75.2998 15.2998s-44.0996 -5.7002 -75.2998 -15.2998c-11.5 -3.40039 -22.5 6.2998 -20.5 18.0996c7 39.9004 60.2002 61.2002 95.7998 61.2002z" />
<glyph glyph-name="grimace" unicode="&#xf57f;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM344 192c26.5 0 48 -21.5 48 -48v-32c0 -26.5 -21.5 -48 -48 -48h-192c-26.5 0 -48 21.5 -48 48v32c0 26.5 21.5 48 48 48
h192zM176 96v24h-40v-8c0 -8.7998 7.2002 -16 16 -16h24zM176 136v24h-24c-8.7998 0 -16 -7.2002 -16 -16v-8h40zM240 96v24h-48v-24h48zM240 136v24h-48v-24h48zM304 96v24h-48v-24h48zM304 136v24h-48v-24h48zM360 112v8h-40v-24h24c8.7998 0 16 7.2002 16 16zM360 136v8
c0 8.7998 -7.2002 16 -16 16h-24v-24h40z" />
<glyph glyph-name="grin" unicode="&#xf580;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008
c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.9004 -123.3 80c-1.7002 9.90039 7.7998 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32z" />
<glyph glyph-name="grin-alt" unicode="&#xf581;" horiz-adv-x="496"
d="M200.3 200c-7.5 -11.4004 -24.5996 -12 -32.7002 0c-12.3994 18.7002 -15.1992 37.2998 -15.6992 56c0.599609 18.7002 3.2998 37.2998 15.6992 56c7.60059 11.4004 24.7002 12 32.7002 0c12.4004 -18.7002 15.2002 -37.2998 15.7002 -56
c-0.599609 -18.7002 -3.2998 -37.2998 -15.7002 -56zM328.3 200c-7.5 -11.4004 -24.5996 -12 -32.7002 0c-12.3994 18.7002 -15.1992 37.2998 -15.6992 56c0.599609 18.7002 3.2998 37.2998 15.6992 56c7.60059 11.4004 24.7002 12 32.7002 0
c12.4004 -18.7002 15.2002 -37.2998 15.7002 -56c-0.599609 -18.7002 -3.2998 -37.2998 -15.7002 -56zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200
s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.8008 -123.3 80c-1.7002 10 7.7998 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006
s79.7002 4.7998 105.6 13.1006z" />
<glyph glyph-name="grin-beam" unicode="&#xf582;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008
c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.9004 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM117.7 216.3c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998
c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996
l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002zM277.7 216.3c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998
c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002z" />
<glyph glyph-name="grin-beam-sweat" unicode="&#xf583;" horiz-adv-x="496"
d="M440 288c-29.5 0 -53.2998 26.2998 -53.2998 58.7002c0 25 31.7002 75.5 46.2002 97.2998c3.5 5.2998 10.5996 5.2998 14.1992 0c14.5 -21.7998 46.2002 -72.2998 46.2002 -97.2998c0 -32.4004 -23.7998 -58.7002 -53.2998 -58.7002zM248 48
c-51.9004 0 -115.3 32.9004 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996s79.7002 4.7998 105.6 13.0996c10 3.2002 19.4004 -5.39941 17.7002 -15.2998c-8 -47.0996 -71.3994 -80 -123.3 -80zM378.3 216.3
c-3.09961 -0.899414 -7.2002 0.100586 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998
c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998zM483.6 269.2c8 -24.2998 12.4004 -50.2002 12.4004 -77.2002c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248
c45.7002 0 88.4004 -12.5996 125.2 -34.2002c-10.9004 -21.5996 -15.5 -36.2002 -17.2002 -45.7002c-31.2002 20.1006 -68.2002 31.9004 -108 31.9004c-110.3 0 -200 -89.7002 -200 -200s89.7002 -200 200 -200s200 89.7002 200 200
c0 22.5 -3.90039 44.0996 -10.7998 64.2998c0.399414 0 21.7998 -2.7998 46.3994 12.9004zM168 258.6c-12.2998 0 -23.7998 -7.7998 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998
c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996z" />
<glyph glyph-name="grin-hearts" unicode="&#xf584;" horiz-adv-x="496"
d="M353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.8008 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM200.8 192.3
l-70.2002 18.1006c-20.3994 5.2998 -31.8994 27 -24.1992 47.1992c6.69922 17.7002 26.6992 26.7002 44.8994 22l7.10059 -1.89941l2 7.09961c5.09961 18.1006 22.8994 30.9004 41.5 27.9004c21.3994 -3.40039 34.3994 -24.2002 28.7998 -44.5l-19.4004 -69.9004
c-1.2998 -4.5 -6 -7.2002 -10.5 -6zM389.6 257.6c7.7002 -20.1992 -3.7998 -41.7998 -24.1992 -47.0996l-70.2002 -18.2002c-4.60059 -1.2002 -9.2998 1.5 -10.5 6l-19.4004 69.9004c-5.59961 20.2998 7.40039 41.0996 28.7998 44.5c18.7002 3 36.5 -9.7998 41.5 -27.9004
l2 -7.09961l7.10059 1.89941c18.2002 4.7002 38.2002 -4.39941 44.8994 -22zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200
s89.7002 -200 200 -200z" />
<glyph glyph-name="grin-squint" unicode="&#xf585;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008
c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.9004 -123.3 80c-1.7002 9.90039 7.7998 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM118.9 184.2c-3.80078 4.39941 -3.90039 11 -0.100586 15.5l33.6006 40.2998
l-33.6006 40.2998c-3.7002 4.5 -3.7002 11 0.100586 15.5c3.89941 4.40039 10.1992 5.5 15.2998 2.5l80 -48c3.59961 -2.2002 5.7998 -6.09961 5.7998 -10.2998s-2.2002 -8.09961 -5.7998 -10.2998l-80 -48c-5.40039 -3.2002 -11.7002 -1.7002 -15.2998 2.5zM361.8 181.7
l-80 48c-3.59961 2.2002 -5.7998 6.09961 -5.7998 10.2998s2.2002 8.09961 5.7998 10.2998l80 48c5.10059 2.90039 11.5 1.90039 15.2998 -2.5c3.80078 -4.5 3.90039 -11 0.100586 -15.5l-33.6006 -40.2998l33.6006 -40.2998c3.7002 -4.5 3.7002 -11 -0.100586 -15.5
c-3.59961 -4.2002 -9.89941 -5.7002 -15.2998 -2.5z" />
<glyph glyph-name="grin-squint-tears" unicode="&#xf586;"
d="M117.1 63.9004c6.30078 0.899414 11.7002 -4.5 10.9004 -10.9004c-3.7002 -25.7998 -13.7002 -84 -30.5996 -100.9c-22 -21.8994 -57.9004 -21.5 -80.3008 0.900391c-22.3994 22.4004 -22.7998 58.4004 -0.899414 80.2998
c16.8994 16.9004 75.0996 26.9004 100.899 30.6006zM75.9004 105.6c-19.6006 -3.89941 -35.1006 -8.09961 -47.3008 -12.1992c-39.2998 90.5996 -22.0996 199.899 52 274c48.5 48.3994 111.9 72.5996 175.4 72.5996c38.9004 0 77.7998 -9.2002 113.2 -27.4004
c-4 -12.1992 -8.2002 -28 -12 -48.2998c-30.4004 17.9004 -65 27.7002 -101.2 27.7002c-53.4004 0 -103.6 -20.7998 -141.4 -58.5996c-61.5996 -61.5 -74.2998 -153.4 -38.6992 -227.801zM428.2 293.2c20.2998 3.89941 36.2002 8 48.5 12
c47.8994 -93.2002 32.8994 -210.5 -45.2002 -288.601c-48.5 -48.3994 -111.9 -72.5996 -175.4 -72.5996c-33.6992 0 -67.2998 7 -98.6992 20.5996c4.19922 12.2002 8.2998 27.7002 12.1992 47.2002c26.6006 -12.7998 55.9004 -19.7998 86.4004 -19.7998
c53.4004 0 103.6 20.7998 141.4 58.5996c65.6992 65.7002 75.7998 166 30.7998 242.601zM394.9 320.1c-6.30078 -0.899414 -11.7002 4.5 -10.9004 10.9004c3.7002 25.7998 13.7002 84 30.5996 100.9c22 21.8994 57.9004 21.5 80.3008 -0.900391
c22.3994 -22.4004 22.7998 -58.4004 0.899414 -80.2998c-16.8994 -16.9004 -75.0996 -26.9004 -100.899 -30.6006zM207.9 211.8c3 -3 4.19922 -7.2998 3.19922 -11.5l-22.5996 -90.5c-1.40039 -5.39941 -6.2002 -9.09961 -11.7002 -9.09961h-0.899414
c-5.80078 0.5 -10.5 5.09961 -11 10.8994l-4.80078 52.3008l-52.2998 4.7998c-5.7998 0.5 -10.3994 5.2002 -10.8994 11c-0.400391 5.89941 3.39941 11.2002 9.09961 12.5996l90.5 22.7002c4.2002 1 8.40039 -0.200195 11.4004 -3.2002zM247.6 236.9
c-0.0996094 0 -6.39941 -1.80078 -11.3994 3.19922c-3 3 -4.2002 7.30078 -3.2002 11.4004l22.5996 90.5c1.40039 5.7002 7 9.2002 12.6006 9.09961c5.7998 -0.5 10.5 -5.09961 11 -10.8994l4.7998 -52.2998l52.2998 -4.80078c5.7998 -0.5 10.4004 -5.19922 10.9004 -11
c0.399414 -5.89941 -3.40039 -11.1992 -9.10059 -12.5996zM299.6 148.4c29.1006 29.0996 53 59.5996 65.3008 83.7998c4.89941 9.2998 17.5996 9.89941 23.3994 1.7002c27.7002 -38.9004 6.10059 -106.9 -30.5996 -143.7s-104.8 -58.2998 -143.7 -30.6006
c-8.2998 5.90039 -7.5 18.6006 1.7002 23.4004c24.2002 12.5 54.7998 36.2998 83.8994 65.4004z" />
<glyph glyph-name="grin-stars" unicode="&#xf587;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008
c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.8008 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM125.7 200.9l6.09961 34.8994l-25.3994 24.6006
c-4.60059 4.59961 -1.90039 12.2998 4.2998 13.1992l34.8994 5l15.5 31.6006c2.90039 5.7998 11 5.7998 13.9004 0l15.5 -31.6006l34.9004 -5c6.19922 -1 8.7998 -8.69922 4.2998 -13.1992l-25.4004 -24.6006l6 -34.8994c1 -6.2002 -5.39941 -11 -11 -7.90039
l-31.2998 16.2998l-31.2998 -16.2998c-5.60059 -3.09961 -12 1.7002 -11 7.90039zM385.4 273.6c6.19922 -1 8.89941 -8.59961 4.39941 -13.1992l-25.3994 -24.6006l6 -34.8994c1 -6.2002 -5.40039 -11 -11 -7.90039l-31.3008 16.2998l-31.2998 -16.2998
c-5.59961 -3.09961 -12 1.7002 -11 7.90039l6 34.8994l-25.3994 24.6006c-4.60059 4.59961 -1.90039 12.2998 4.2998 13.1992l34.8994 5l15.5 31.6006c2.90039 5.7998 11 5.7998 13.9004 0l15.5 -31.6006z" />
<glyph glyph-name="grin-tears" unicode="&#xf588;" horiz-adv-x="640"
d="M117.1 191.9c6.30078 0.899414 11.7002 -4.5 10.9004 -10.9004c-3.7002 -25.7998 -13.7002 -84 -30.5996 -100.9c-22 -21.8994 -57.9004 -21.5 -80.3008 0.900391c-22.3994 22.4004 -22.7998 58.4004 -0.899414 80.2998c16.8994 16.9004 75.0996 26.9004 100.899 30.6006
zM623.8 161.3c21.9004 -21.8994 21.5 -57.8994 -0.799805 -80.2002c-22.4004 -22.3994 -58.4004 -22.7998 -80.2998 -0.899414c-16.9004 16.8994 -26.9004 75.0996 -30.6006 100.899c-0.899414 6.30078 4.5 11.7002 10.8008 10.8008
c25.7998 -3.7002 84 -13.7002 100.899 -30.6006zM497.2 99.5996c12.3994 -37.2998 25.0996 -43.7998 28.2998 -46.5c-44.5996 -65.7998 -120 -109.1 -205.5 -109.1s-160.9 43.2998 -205.5 109.1c3.09961 2.60059 15.7998 9.10059 28.2998 46.5
c33.4004 -63.8994 100.3 -107.6 177.2 -107.6s143.8 43.7002 177.2 107.6zM122.7 223.5c-2.40039 0.299805 -5 2.5 -49.5 -6.90039c12.3994 125.4 118.1 223.4 246.8 223.4s234.4 -98 246.8 -223.5c-44.2998 9.40039 -47.3994 7.2002 -49.5 7
c-15.2002 95.2998 -97.7998 168.5 -197.3 168.5s-182.1 -73.2002 -197.3 -168.5zM320 48c-51.9004 0 -115.3 32.9004 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996s79.7002 4.7998 105.6 13.0996
c10 3.2002 19.4004 -5.39941 17.7002 -15.2998c-8 -47.0996 -71.3994 -80 -123.3 -80zM450.3 216.3c-3.09961 -0.899414 -7.2002 0.100586 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996l-9.5 -17
c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998zM240 258.6
c-12.2998 0 -23.7998 -7.7998 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004
c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996z" />
<glyph glyph-name="grin-tongue" unicode="&#xf589;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM312 40h0.0996094v43.7998l-17.6992 8.7998c-15.1006 7.60059 -31.5 -1.69922 -34.9004 -16.5l-2.7998 -12.0996c-2.10059 -9.2002 -15.2002 -9.2002 -17.2998 0
l-2.80078 12.0996c-3.39941 14.8008 -19.8994 24 -34.8994 16.5l-17.7002 -8.7998v-42.7998c0 -35.2002 28 -64.5 63.0996 -65c35.8008 -0.5 64.9004 28.4004 64.9004 64zM340.2 14.7002c64 33.3994 107.8 100.3 107.8 177.3c0 110.3 -89.7002 200 -200 200
s-200 -89.7002 -200 -200c0 -77 43.7998 -143.9 107.8 -177.3c-2.2002 8.09961 -3.7998 16.5 -3.7998 25.2998v43.5c-14.2002 12.4004 -24.4004 27.5 -27.2998 44.5c-1.7002 10 7.7998 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996
s79.7002 4.7998 105.6 13.0996c10 3.2002 19.4004 -5.39941 17.7002 -15.2998c-2.89941 -17 -13.0996 -32.0996 -27.2998 -44.5v-43.5c0 -8.7998 -1.59961 -17.2002 -3.7998 -25.2998zM168 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32
s14.2998 32 32 32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32z" />
<glyph glyph-name="grin-tongue-squint" unicode="&#xf58a;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM312 40h0.0996094v43.7998l-17.6992 8.7998c-15.1006 7.60059 -31.5 -1.69922 -34.9004 -16.5l-2.7998 -12.0996c-2.10059 -9.2002 -15.2002 -9.2002 -17.2998 0
l-2.80078 12.0996c-3.39941 14.8008 -19.8994 24 -34.8994 16.5l-17.7002 -8.7998v-42.7998c0 -35.2002 28 -64.5 63.0996 -65c35.8008 -0.5 64.9004 28.4004 64.9004 64zM340.2 14.7002c64 33.3994 107.8 100.3 107.8 177.3c0 110.3 -89.7002 200 -200 200
s-200 -89.7002 -200 -200c0 -77 43.7998 -143.9 107.8 -177.3c-2.2002 8.09961 -3.7998 16.5 -3.7998 25.2998v43.5c-14.2002 12.4004 -24.4004 27.5 -27.2998 44.5c-1.7002 10 7.7998 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996
s79.7002 4.7998 105.6 13.0996c10 3.2002 19.4004 -5.39941 17.7002 -15.2998c-2.89941 -17 -13.0996 -32.0996 -27.2998 -44.5v-43.5c0 -8.7998 -1.59961 -17.2002 -3.7998 -25.2998zM377.1 295.8c3.80078 -4.39941 3.90039 -11 0.100586 -15.5l-33.6006 -40.2998
l33.6006 -40.2998c3.7002 -4.5 3.7002 -11 -0.100586 -15.5c-3.59961 -4.2002 -9.89941 -5.7002 -15.2998 -2.5l-80 48c-3.59961 2.2002 -5.7998 6.09961 -5.7998 10.2998s2.2002 8.09961 5.7998 10.2998l80 48c5 3 11.5 1.90039 15.2998 -2.5zM214.2 250.3
c3.59961 -2.2002 5.7998 -6.09961 5.7998 -10.2998s-2.2002 -8.09961 -5.7998 -10.2998l-80 -48c-5.40039 -3.2002 -11.7002 -1.7002 -15.2998 2.5c-3.80078 4.5 -3.90039 11 -0.100586 15.5l33.6006 40.2998l-33.6006 40.2998c-3.7002 4.5 -3.7002 11 0.100586 15.5
c3.89941 4.5 10.2998 5.5 15.2998 2.5z" />
<glyph glyph-name="grin-tongue-wink" unicode="&#xf58b;" horiz-adv-x="496"
d="M152 268c25.7002 0 55.9004 -16.9004 59.7998 -42.0996c0.799805 -5 -1.7002 -10 -6.09961 -12.4004c-5.7002 -3.09961 -11.2002 -0.599609 -13.7002 1.59961l-9.5 8.5c-14.7998 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5
c-3.7998 -3.39941 -9.2998 -4 -13.7002 -1.59961c-4.39941 2.40039 -6.89941 7.40039 -6.09961 12.4004c3.89941 25.1992 34.0996 42.0996 59.7998 42.0996zM328 320c44.2002 0 80 -35.7998 80 -80s-35.7998 -80 -80 -80s-80 35.7998 -80 80s35.7998 80 80 80zM328 192
c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM328 264c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248z
M312 40h0.0996094v43.7998l-17.6992 8.7998c-15.1006 7.60059 -31.5 -1.69922 -34.9004 -16.5l-2.7998 -12.0996c-2.10059 -9.2002 -15.2002 -9.2002 -17.2998 0l-2.80078 12.0996c-3.39941 14.8008 -19.8994 24 -34.8994 16.5l-17.7002 -8.7998v-42.7998
c0 -35.2002 28 -64.5 63.0996 -65c35.8008 -0.5 64.9004 28.4004 64.9004 64zM340.2 14.7002c64 33.3994 107.8 100.3 107.8 177.3c0 110.3 -89.7002 200 -200 200s-200 -89.7002 -200 -200c0 -77 43.7998 -143.9 107.8 -177.3
c-2.2002 8.09961 -3.7998 16.5 -3.7998 25.2998v43.5c-14.2002 12.4004 -24.4004 27.5 -27.2998 44.5c-1.7002 10 7.7998 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996s79.7002 4.7998 105.6 13.0996c10 3.2002 19.4004 -5.39941 17.7002 -15.2998
c-2.89941 -17 -13.0996 -32.0996 -27.2998 -44.5v-43.5c0 -8.7998 -1.59961 -17.2002 -3.7998 -25.2998z" />
<glyph glyph-name="grin-wink" unicode="&#xf58c;" horiz-adv-x="496"
d="M328 268c25.6904 0 55.8799 -16.9199 59.8701 -42.1201c1.72949 -11.0898 -11.3506 -18.2695 -19.8301 -10.8398l-9.5498 8.47949c-14.8105 13.1904 -46.1602 13.1904 -60.9707 0l-9.5498 -8.47949c-8.33008 -7.40039 -21.5801 -0.379883 -19.8301 10.8398
c3.98047 25.2002 34.1699 42.1201 59.8604 42.1201zM168 208c-17.6699 0 -32 14.3301 -32 32s14.3301 32 32 32s32 -14.3301 32 -32s-14.3301 -32 -32 -32zM353.55 143.36c10.04 3.13965 19.3906 -5.4502 17.71 -15.3408
c-7.92969 -47.1494 -71.3193 -80.0195 -123.26 -80.0195s-115.33 32.8701 -123.26 80.0195c-1.69043 9.9707 7.76953 18.4707 17.71 15.3408c25.9297 -8.31055 64.3994 -13.0605 105.55 -13.0605s79.6201 4.75977 105.55 13.0605zM248 440c136.97 0 248 -111.03 248 -248
s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM248 -8c110.28 0 200 89.7197 200 200s-89.7197 200 -200 200s-200 -89.7197 -200 -200s89.7197 -200 200 -200z" />
<glyph glyph-name="kiss" unicode="&#xf596;" horiz-adv-x="496"
d="M168 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM304 140c0 -13 -13.4004 -27.2998 -35.0996 -36.4004c21.7998 -8.69922 35.1992 -23 35.1992 -36c0 -19.1992 -28.6992 -41.5 -71.5 -44h-0.5
c-3.69922 0 -7 2.60059 -7.7998 6.2002c-0.899414 3.7998 1.10059 7.7002 4.7002 9.2002l17 7.2002c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.2002c-6 2.59961 -5.7002 12.3994 0 14.7998l17 7.2002
c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.19922c-3.59961 1.5 -5.59961 5.40039 -4.7002 9.2002c0.799805 3.7998 4.40039 6.60059 8.2002 6.2002c42.7002 -2.5 71.5 -24.7998 71.5 -44zM248 440c137 0 248 -111 248 -248
s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32z
" />
<glyph glyph-name="kiss-beam" unicode="&#xf597;" horiz-adv-x="496"
d="M168 296c23.7998 0 52.7002 -29.2998 55.7998 -71.4004c0.299805 -3.7998 -2 -7.19922 -5.59961 -8.2998c-3.10059 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996c-12.3008 0 -23.8008 -7.89941 -31.5 -21.5996l-9.5 -17
c-1.80078 -3.2002 -5.80078 -4.7002 -9.30078 -3.7002c-3.59961 1.10059 -5.89941 4.60059 -5.59961 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8
c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM304 140c0 -13 -13.4004 -27.2998 -35.0996 -36.4004c21.7998 -8.69922 35.1992 -23 35.1992 -36c0 -19.1992 -28.6992 -41.5 -71.5 -44h-0.5
c-3.69922 0 -7 2.60059 -7.7998 6.2002c-0.899414 3.7998 1.10059 7.7002 4.7002 9.2002l17 7.2002c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.2002c-6 2.59961 -5.7002 12.3994 0 14.7998l17 7.2002
c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.19922c-3.59961 1.5 -5.59961 5.40039 -4.7002 9.2002c0.799805 3.7998 4.40039 6.60059 8.2002 6.2002c42.7002 -2.5 71.5 -24.7998 71.5 -44zM328 296
c23.7998 0 52.7002 -29.2998 55.7998 -71.4004c0.299805 -3.7998 -2 -7.19922 -5.59961 -8.2998c-3.10059 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996c-12.3008 0 -23.8008 -7.89941 -31.5 -21.5996l-9.5 -17
c-1.80078 -3.2002 -5.80078 -4.7002 -9.30078 -3.7002c-3.59961 1.10059 -5.89941 4.60059 -5.59961 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004z" />
<glyph glyph-name="kiss-wink-heart" unicode="&#xf598;" horiz-adv-x="504"
d="M304 139.5c0 -13 -13.4004 -27.2998 -35.0996 -36.4004c21.7998 -8.69922 35.1992 -23 35.1992 -36c0 -19.1992 -28.6992 -41.5 -71.5 -44h-0.5c-3.69922 0 -7 2.60059 -7.7998 6.2002c-0.899414 3.7998 1.10059 7.7002 4.7002 9.2002l17 7.2002
c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.2002c-6 2.59961 -5.7002 12.3994 0 14.7998l17 7.2002c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.19922c-3.59961 1.5 -5.59961 5.40039 -4.7002 9.2002
c0.799805 3.7998 4.40039 6.60059 8.2002 6.2002c42.7002 -2.5 71.5 -24.7998 71.5 -44zM374.5 223c-14.7998 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5c-2.5 -2.2998 -7.90039 -4.7002 -13.7002 -1.59961c-4.39941 2.39941 -6.89941 7.39941 -6.09961 12.3994
c3.89941 25.2002 34.2002 42.1006 59.7998 42.1006s55.7998 -16.9004 59.7998 -42.1006c0.799805 -5 -1.7002 -10 -6.09961 -12.3994c-4.40039 -2.40039 -9.90039 -1.7002 -13.7002 1.59961zM136 239.5c0 17.7002 14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32
s-32 14.2998 -32 32zM501.1 45.5c9.2002 -23.9004 -4.39941 -49.4004 -28.5 -55.7002l-83 -21.5c-5.39941 -1.39941 -10.8994 1.7998 -12.3994 7.10059l-22.9004 82.5996c-6.59961 24 8.7998 48.5996 34 52.5996c22 3.5 43.1006 -11.5996 49 -33l2.2998 -8.39941
l8.40039 2.2002c21.5996 5.59961 45.0996 -5.10059 53.0996 -25.9004zM334 11.7002c17.7002 -64 10.9004 -39.5 13.4004 -46.7998c-30.5 -13.4004 -64 -20.9004 -99.4004 -20.9004c-137 0 -248 111 -248 248s111 248 248 248s248 -111 247.9 -248
c0 -31.7998 -6.2002 -62.0996 -17.1006 -90c-6 1.5 -12.2002 2.7998 -18.5996 2.90039c-5.60059 9.69922 -13.6006 17.5 -22.6006 23.8994c6.7002 19.9004 10.4004 41.1006 10.4004 63.2002c0 110.3 -89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200
c30.7998 0 59.9004 7.2002 86 19.7002z" />
<glyph glyph-name="laugh" unicode="&#xf599;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM389.4 50.5996c37.7998 37.8008 58.5996 88 58.5996 141.4s-20.7998 103.6 -58.5996 141.4c-37.8008 37.7998 -88 58.5996 -141.4 58.5996s-103.6 -20.7998 -141.4 -58.5996
c-37.7998 -37.8008 -58.5996 -88 -58.5996 -141.4s20.7998 -103.6 58.5996 -141.4c37.8008 -37.7998 88 -58.5996 141.4 -58.5996s103.6 20.7998 141.4 58.5996zM328 224c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM168 224
c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM362.4 160c8.19922 0 14.5 -7 13.5 -15c-7.5 -59.2002 -58.9004 -105 -121.101 -105h-13.5996c-62.2002 0 -113.601 45.7998 -121.101 105c-1 8 5.30078 15 13.5 15h228.801z" />
<glyph glyph-name="laugh-beam" unicode="&#xf59a;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM389.4 50.5996c37.7998 37.8008 58.5996 88 58.5996 141.4s-20.7998 103.6 -58.5996 141.4c-37.8008 37.7998 -88 58.5996 -141.4 58.5996s-103.6 -20.7998 -141.4 -58.5996
c-37.7998 -37.8008 -58.5996 -88 -58.5996 -141.4s20.7998 -103.6 58.5996 -141.4c37.8008 -37.7998 88 -58.5996 141.4 -58.5996s103.6 20.7998 141.4 58.5996zM328 296c23.7998 0 52.7002 -29.2998 55.7998 -71.4004c0.700195 -8.5 -10.7998 -11.8994 -14.8994 -4.5
l-9.5 17c-7.7002 13.7002 -19.2002 21.6006 -31.5 21.6006c-12.3008 0 -23.8008 -7.90039 -31.5 -21.6006l-9.5 -17c-4.10059 -7.39941 -15.6006 -4.09961 -14.9004 4.5c3.2998 42.1006 32.2002 71.4004 56 71.4004zM127 220.1c-4.2002 -7.39941 -15.7002 -4 -15.0996 4.5
c3.2998 42.1006 32.1992 71.4004 56 71.4004c23.7998 0 52.6992 -29.2998 56 -71.4004c0.699219 -8.5 -10.8008 -11.8994 -14.9004 -4.5l-9.5 17c-7.7002 13.7002 -19.2002 21.6006 -31.5 21.6006s-23.7998 -7.90039 -31.5 -21.6006zM362.4 160c8.19922 0 14.5 -7 13.5 -15
c-7.5 -59.2002 -58.9004 -105 -121.101 -105h-13.5996c-62.2002 0 -113.601 45.7998 -121.101 105c-1 8 5.30078 15 13.5 15h228.801z" />
<glyph glyph-name="laugh-squint" unicode="&#xf59b;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM389.4 50.5996c37.7998 37.8008 58.5996 88 58.5996 141.4s-20.7998 103.6 -58.5996 141.4c-37.8008 37.7998 -88 58.5996 -141.4 58.5996s-103.6 -20.7998 -141.4 -58.5996
c-37.7998 -37.8008 -58.5996 -88 -58.5996 -141.4s20.7998 -103.6 58.5996 -141.4c37.8008 -37.7998 88 -58.5996 141.4 -58.5996s103.6 20.7998 141.4 58.5996zM343.6 252l33.6006 -40.2998c8.59961 -10.4004 -3.90039 -24.7998 -15.4004 -18l-80 48
c-7.7998 4.7002 -7.7998 15.8994 0 20.5996l80 48c11.6006 6.7998 24 -7.7002 15.4004 -18zM134.2 193.7c-11.6006 -6.7998 -24.1006 7.59961 -15.4004 18l33.6006 40.2998l-33.6006 40.2998c-8.59961 10.2998 3.7998 24.9004 15.4004 18l80 -48
c7.7998 -4.7002 7.7998 -15.8994 0 -20.5996zM362.4 160c8.19922 0 14.5 -7 13.5 -15c-7.5 -59.2002 -58.9004 -105 -121.101 -105h-13.5996c-62.2002 0 -113.601 45.7998 -121.101 105c-1 8 5.30078 15 13.5 15h228.801z" />
<glyph glyph-name="laugh-wink" unicode="&#xf59c;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM389.4 50.5996c37.7998 37.8008 58.5996 88 58.5996 141.4s-20.7998 103.6 -58.5996 141.4c-37.8008 37.7998 -88 58.5996 -141.4 58.5996s-103.6 -20.7998 -141.4 -58.5996
c-37.7998 -37.8008 -58.5996 -88 -58.5996 -141.4s20.7998 -103.6 58.5996 -141.4c37.8008 -37.7998 88 -58.5996 141.4 -58.5996s103.6 20.7998 141.4 58.5996zM328 284c25.7002 0 55.9004 -16.9004 59.7002 -42.0996c1.7998 -11.1006 -11.2998 -18.2002 -19.7998 -10.8008
l-9.5 8.5c-14.8008 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5c-8.30078 -7.39941 -21.5 -0.399414 -19.8008 10.8008c4 25.1992 34.2002 42.0996 59.9004 42.0996zM168 224c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32z
M362.4 160c8.19922 0 14.5 -7 13.5 -15c-7.5 -59.2002 -58.9004 -105 -121.101 -105h-13.5996c-62.2002 0 -113.601 45.7998 -121.101 105c-1 8 5.30078 15 13.5 15h228.801z" />
<glyph glyph-name="meh-blank" unicode="&#xf5a4;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32
s-32 14.2998 -32 32s14.2998 32 32 32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32z" />
<glyph glyph-name="meh-rolling-eyes" unicode="&#xf5a5;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM336 296c39.7998 0 72 -32.2002 72 -72s-32.2002 -72 -72 -72
s-72 32.2002 -72 72s32.2002 72 72 72zM336 184c22.0996 0 40 17.9004 40 40c0 13.5996 -7.2998 25.0996 -17.7002 32.2998c1 -2.59961 1.7002 -5.39941 1.7002 -8.2998c0 -13.2998 -10.7002 -24 -24 -24s-24 10.7002 -24 24c0 3 0.700195 5.7002 1.7002 8.2998
c-10.4004 -7.2002 -17.7002 -18.7002 -17.7002 -32.2998c0 -22.0996 17.9004 -40 40 -40zM232 224c0 -39.7998 -32.2002 -72 -72 -72s-72 32.2002 -72 72s32.2002 72 72 72s72 -32.2002 72 -72zM120 224c0 -22.0996 17.9004 -40 40 -40s40 17.9004 40 40
c0 13.5996 -7.2998 25.0996 -17.7002 32.2998c1 -2.59961 1.7002 -5.39941 1.7002 -8.2998c0 -13.2998 -10.7002 -24 -24 -24s-24 10.7002 -24 24c0 3 0.700195 5.7002 1.7002 8.2998c-10.4004 -7.2002 -17.7002 -18.7002 -17.7002 -32.2998zM312 96
c13.2002 0 24 -10.7998 24 -24s-10.7998 -24 -24 -24h-128c-13.2002 0 -24 10.7998 -24 24s10.7998 24 24 24h128z" />
<glyph glyph-name="sad-cry" unicode="&#xf5b3;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM392 53.5996c34.5996 35.9004 56 84.7002 56 138.4c0 110.3 -89.7002 200 -200 200s-200 -89.7002 -200 -200c0 -53.7002 21.4004 -102.4 56 -138.4v114.4
c0 13.2002 10.7998 24 24 24s24 -10.7998 24 -24v-151.4c28.5 -15.5996 61.2002 -24.5996 96 -24.5996s67.5 9 96 24.5996v151.4c0 13.2002 10.7998 24 24 24s24 -10.7998 24 -24v-114.4zM205.8 213.5c-5.7998 -3.2002 -11.2002 -0.700195 -13.7002 1.59961l-9.5 8.5
c-14.7998 13.2002 -46.1992 13.2002 -61 0l-9.5 -8.5c-3.7998 -3.39941 -9.2998 -4 -13.6992 -1.59961c-4.40039 2.40039 -6.90039 7.40039 -6.10059 12.4004c3.90039 25.1992 34.2002 42.0996 59.7998 42.0996c25.6006 0 55.8008 -16.9004 59.8008 -42.0996
c0.799805 -5 -1.7002 -10 -6.10059 -12.4004zM344 268c25.7002 0 55.9004 -16.9004 59.7998 -42.0996c0.799805 -5 -1.7002 -10 -6.09961 -12.4004c-5.7002 -3.09961 -11.2002 -0.599609 -13.7002 1.59961l-9.5 8.5c-14.7998 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5
c-3.7998 -3.39941 -9.2002 -4 -13.7002 -1.59961c-4.39941 2.40039 -6.89941 7.40039 -6.09961 12.4004c3.89941 25.1992 34.0996 42.0996 59.7998 42.0996zM248 176c30.9004 0 56 -28.7002 56 -64s-25.0996 -64 -56 -64s-56 28.7002 -56 64s25.0996 64 56 64z" />
<glyph glyph-name="sad-tear" unicode="&#xf5b4;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM256 144c38.0996 0 74 -16.7998 98.5 -46.0996
c8.5 -10.2002 7.09961 -25.3008 -3.09961 -33.8008c-10.6006 -8.7998 -25.7002 -6.69922 -33.8008 3.10059c-15.2998 18.2998 -37.7998 28.7998 -61.5996 28.7998c-13.2002 0 -24 10.7998 -24 24s10.7998 24 24 24zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM162.4 173.2c2.7998 3.7002 8.39941 3.7002 11.1992 0c11.4004 -15.2998 36.4004 -50.6006 36.4004 -68.1006
c0 -22.6992 -18.7998 -41.0996 -42 -41.0996s-42 18.4004 -42 41.0996c0 17.5 25 52.8008 36.4004 68.1006z" />
<glyph glyph-name="smile-beam" unicode="&#xf5b8;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM332 135.4c8.5 10.1992 23.5996 11.5 33.7998 3.09961
c10.2002 -8.5 11.6006 -23.5996 3.10059 -33.7998c-30 -36 -74.1006 -56.6006 -120.9 -56.6006s-90.9004 20.6006 -120.9 56.6006c-8.39941 10.2002 -7.09961 25.2998 3.10059 33.7998c10.2002 8.40039 25.2998 7.09961 33.7998 -3.09961
c20.7998 -25.1006 51.5 -39.4004 84 -39.4004s63.2002 14.4004 84 39.4004zM136.5 237l-9.5 -17c-1.90039 -3.2002 -5.90039 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004
c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996zM328 296c23.7998 0 52.7002 -29.2998 56 -71.4004
c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002
c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004z" />
<glyph glyph-name="surprise" unicode="&#xf5c2;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM248 168c35.2998 0 64 -28.7002 64 -64s-28.7002 -64 -64 -64
s-64 28.7002 -64 64s28.7002 64 64 64zM200 240c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32z" />
<glyph glyph-name="tired" unicode="&#xf5c8;" horiz-adv-x="496"
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM377.1 295.8c3.80078 -4.39941 3.90039 -11 0.100586 -15.5
l-33.6006 -40.2998l33.6006 -40.2998c3.7998 -4.5 3.7002 -11 -0.100586 -15.5c-3.5 -4.10059 -9.89941 -5.7002 -15.2998 -2.5l-80 48c-3.59961 2.2002 -5.7998 6.09961 -5.7998 10.2998s2.2002 8.09961 5.7998 10.2998l80 48c5 2.90039 11.5 1.90039 15.2998 -2.5z
M220 240c0 -4.2002 -2.2002 -8.09961 -5.7998 -10.2998l-80 -48c-5.40039 -3.2002 -11.7998 -1.60059 -15.2998 2.5c-3.80078 4.5 -3.90039 11 -0.100586 15.5l33.6006 40.2998l-33.6006 40.2998c-3.7998 4.5 -3.7002 11 0.100586 15.5
c3.7998 4.40039 10.2998 5.5 15.2998 2.5l80 -48c3.59961 -2.2002 5.7998 -6.09961 5.7998 -10.2998zM248 176c45.4004 0 100.9 -38.2998 107.8 -93.2998c1.5 -11.9004 -7 -21.6006 -15.5 -17.9004c-22.7002 9.7002 -56.2998 15.2002 -92.2998 15.2002
s-69.5996 -5.5 -92.2998 -15.2002c-8.60059 -3.7002 -17 6.10059 -15.5 17.9004c6.89941 55 62.3994 93.2998 107.8 93.2998z" />
</font>
</defs></svg>

Before

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 829 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 434 KiB

Binary file not shown.

View File

@@ -1 +0,0 @@
.fab.fa-bitcoin:before{content:"\f379"}.far.fa-calendar:before,.fas.fa-calendar:before{content:"\f133"}.far.fa-clipboard:before,.fas.fa-clipboard:before{content:"\f328"}.fab.fa-facebook-f:before{content:"\f39e"}.fab.fa-google-plus:before{content:"\f2b3"}.fas.fa-hotel:before{content:"\f594"}.fab.fa-linkedin:before{content:"\f08c"}.fas.fa-reply:before{content:"\f3e5"}.fas.fa-thermometer:before{content:"\f491"}.fab.fa-vimeo:before{content:"\f40a"}.far.fa-window-close:before,.fas.fa-window-close:before{content:"\f410"}.fab.fa-youtube-square:before{content:"\f431"}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 145 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

View File

@@ -1,10 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="450pt" height="450pt" viewBox="0 0 450 450" version="1.1" xmlns="http://www.w3.org/2000/svg">
<g id="#f7f7f7ff">
</g>
<g id="#333333ff">
<path fill="#333333" opacity="1.00" d=" M 83.59 105.42 C 105.77 115.60 127.31 127.07 149.26 137.73 C 153.00 139.72 151.62 144.59 152.15 148.04 C 152.20 179.30 151.87 210.58 152.20 241.84 C 174.88 219.56 196.67 196.36 220.02 174.76 C 221.25 205.17 220.19 235.62 220.66 266.05 C 220.63 270.62 221.09 275.95 217.79 279.60 C 195.53 301.09 174.13 323.44 151.92 344.98 C 132.02 335.26 112.33 325.10 92.38 315.49 C 90.05 314.23 87.56 313.21 85.41 311.64 C 82.50 309.39 83.56 305.19 83.22 301.99 C 83.60 236.47 82.86 170.94 83.59 105.42 Z" />
<path fill="#333333" opacity="1.00" d=" M 300.72 137.74 C 322.63 127.04 344.21 115.64 366.32 105.37 C 367.15 172.91 366.41 240.46 366.71 308.00 C 366.02 311.50 362.49 313.08 359.63 314.51 C 338.98 324.40 318.64 334.93 298.06 344.98 C 278.62 326.08 259.74 306.62 240.41 287.60 C 236.90 284.14 233.03 280.92 230.29 276.79 C 228.95 272.66 229.42 268.28 229.33 264.02 C 229.77 234.27 228.73 204.50 229.95 174.77 C 253.31 196.36 275.07 219.58 297.78 241.83 C 297.93 215.58 297.92 189.32 297.81 163.06 C 297.86 156.04 297.57 149.01 298.11 142.00 C 298.19 140.28 299.11 138.48 300.72 137.74 Z" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 856 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -1,826 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="450pt"
height="450pt"
viewBox="0 0 450 450"
version="1.1"
id="svg20"
sodipodi:docname="favicon.svg"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs24" /><sodipodi:namedview
id="namedview22"
pagecolor="#505050"
bordercolor="#eeeeee"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#505050"
inkscape:document-units="pt"
showgrid="false" /><image
width="450"
height="450"
preserveAspectRatio="none"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfwAAAGuCAYAAAB1FLTvAAAAx3pUWHRSYXcgcHJvZmlsZSB0eXBl
IGV4aWYAAHjabVBbDsMgDPvnFDsCeZTCcWhLpd1gx58hQWq3WiJ2E2qShPZ5n+HVwaRBlzWnklIE
tGjhCpGjoY5IUUccOHdXdM+H2lwyWMBihZyMaeb9h8lUoZaLUd69sN0LRY05/xj5Q9I7YojDjYob
CVuB3KDaWDGVvF5H2Fq8I9sJPWzuOjqK/9+6YnvHgneEuQlJRBRRa0D6kSAVIiEyLqFhUWgaGZI5
EhbytKeJ8AVizVqTyq9J4QAAAYVpQ0NQSUNDIHByb2ZpbGUAAHicfZE9SMNAHMVf02qlVBwsIuKQ
oTpZBxVxLFUsgoXSVmjVweTSL2jSkKS4OAquBQc/FqsOLs66OrgKguAHiKuLk6KLlPi/pNAi1oPj
fry797h7BwiNClNNXxRQNctIxWNiNrcq+l/RiyH4EMCkxEw9kV7MoOv4uoeHr3cRntX93J+jX8mb
DPCIxFGmGxbxBvHspqVz3icOsZKkEJ8TTxh0QeJHrssuv3EuOizwzJCRSc0Th4jFYgfLHcxKhko8
QxxWVI3yhazLCuctzmqlxlr35C8M5rWVNNdpjiKOJSSQhAgZNZRRgYUIrRopJlK0H+viH3H8SXLJ
5CqDkWMBVaiQHD/4H/zu1ixMT7lJwRjQ82LbH2OAfxdo1m37+9i2myeA9xm40tr+agOY+yS93tbC
R8DANnBx3dbkPeByBxh+0iVDciQvTaFQAN7P6JtywOAtEFhze2vt4/QByFBXyzfAwSEwXqTs9S7v
7uvs7d8zrf5+AJcFcrXGVhtUAAAOVWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0
IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4
bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgog
PHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50
YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wTU09
Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICB4bWxuczpzdEV2dD0iaHR0cDov
L25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgeG1sbnM6ZGM9
Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgeG1sbnM6R0lNUD0iaHR0cDov
L3d3dy5naW1wLm9yZy94bXAvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90
aWZmLzEuMC8iCiAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAg
IHhtcE1NOkRvY3VtZW50SUQ9ImdpbXA6ZG9jaWQ6Z2ltcDoyNmMzMWE3My0xYzYwLTQzMzMtYmMw
Ni01ZWJkZGM3YjgyYmEiCiAgIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ZGI2YjNkNDgtOThl
ZS00YjdiLWJlZTgtOTViNDdkNTZjZTgyIgogICB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9Inht
cC5kaWQ6ZTllNWUzNGYtNzdiYi00YTY2LWIwNDQtYmE2OTMzMTBjMzE2IgogICBkYzpGb3JtYXQ9
ImltYWdlL3BuZyIKICAgR0lNUDpBUEk9IjIuMCIKICAgR0lNUDpQbGF0Zm9ybT0iV2luZG93cyIK
ICAgR0lNUDpUaW1lU3RhbXA9IjE2ODc0MDczNzU2OTU4MzEiCiAgIEdJTVA6VmVyc2lvbj0iMi4x
MC4zNCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIu
MTAiCiAgIHhtcDpNZXRhZGF0YURhdGU9IjIwMjM6MDY6MjJUMTQ6MTY6MTMrMTA6MDAiCiAgIHht
cDpNb2RpZnlEYXRlPSIyMDIzOjA2OjIyVDE0OjE2OjEzKzEwOjAwIj4KICAgPHhtcE1NOkhpc3Rv
cnk+CiAgICA8cmRmOlNlcT4KICAgICA8cmRmOmxpCiAgICAgIHN0RXZ0OmFjdGlvbj0ic2F2ZWQi
CiAgICAgIHN0RXZ0OmNoYW5nZWQ9Ii8iCiAgICAgIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6
NWI4OWM0ZjItNDMzYS00ZmM2LTk0YTktZTAwYmI1Mjg4NzdmIgogICAgICBzdEV2dDpzb2Z0d2Fy
ZUFnZW50PSJHaW1wIDIuMTAgKFdpbmRvd3MpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA2LTIx
VDE3OjM2OjMwIi8+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249InNhdmVkIgogICAg
ICBzdEV2dDpjaGFuZ2VkPSIvIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjM0ZDU1
ZGM1LTg1MGUtNDYzMC05MTkwLTcyMzVkNjViMDM2NSIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2Vu
dD0iR2ltcCAyLjEwIChXaW5kb3dzKSIKICAgICAgc3RFdnQ6d2hlbj0iMjAyMy0wNi0yMlQxNDox
NjoxNSIvPgogICAgPC9yZGY6U2VxPgogICA8L3htcE1NOkhpc3Rvcnk+CiAgPC9yZGY6RGVzY3Jp
cHRpb24+CiA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5yyhP1AAAABmJL
R0QA/wD/AP+gvaeTAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAB3RJTUUH5wYWBBAP4NPbZQAAIABJ
REFUeNrsvWd7HdeVLvjuqkIiCJLAQQaRCRIECAYAzDkpUZZly7Ll63vnud09bf8Ez0/o/gnu7/Nh
PPOxr7tlOUsixUyRCpSs2JazRNluX9stEbXmwwk4ocLOVedgv/3ALZ5Qp2qH9a619gqAg4ODg4OD
g4ODg4ODg4ODg4ODg4ODg0MTgFX/o7d3y4ULF869AApx69ZtvPveL5gbIgcHBwcHh+bA1sIwjU1N
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
UupO/j8B+sA7XKLE0AAAAABJRU5ErkJggg==
"
id="image192"
x="5.5511151e-17"
y="-1.110223e-16" /></svg>

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 145 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 KiB

View File

@@ -1,21 +0,0 @@
function type(n, t) {
var str = document.getElementsByTagName("code")[n].innerHTML.toString();
var i = 0;
document.getElementsByTagName("code")[n].innerHTML = "";
setTimeout(function() {
var se = setInterval(function() {
i++;
document.getElementsByTagName("code")[n].innerHTML =
str.slice(0, i) + "|";
if (i == str.length) {
clearInterval(se);
document.getElementsByTagName("code")[n].innerHTML = str;
}
}, 10);
}, t);
}
type(0, 0);
type(1, 600);
type(2, 1300);

View File

@@ -1 +0,0 @@
function type(e,t){var n=document.getElementsByTagName("code")[e].innerHTML.toString(),a=0;document.getElementsByTagName("code")[e].innerHTML="",setTimeout((function(){var t=setInterval((function(){a++,document.getElementsByTagName("code")[e].innerHTML=n.slice(0,a)+"|",a==n.length&&(clearInterval(t),document.getElementsByTagName("code")[e].innerHTML=n)}),10)}),t)}type(0,0),type(1,600),type(2,1300);

View File

@@ -1,57 +0,0 @@
(function() {
"use strict"; // Start of use strict
var mainNav = document.querySelector('#mainNav');
if (mainNav) {
var navbarCollapse = mainNav.querySelector('.navbar-collapse');
if (navbarCollapse) {
var collapse = new bootstrap.Collapse(navbarCollapse, {
toggle: false
});
var navbarItems = navbarCollapse.querySelectorAll('a');
// Closes responsive menu when a scroll trigger link is clicked
for (var item of navbarItems) {
item.addEventListener('click', function (event) {
collapse.hide();
});
}
}
// Collapse Navbar
var collapseNavbar = function() {
var scrollTop = (window.pageYOffset !== undefined) ? window.pageYOffset : (document.documentElement || document.body.parentNode || document.body).scrollTop;
if (scrollTop > 100) {
mainNav.classList.add("navbar-shrink");
} else {
mainNav.classList.remove("navbar-shrink");
}
};
// Collapse now if page is not at top
// collapseNavbar();
// Collapse the navbar when page is scrolled
// document.addEventListener("scroll", collapseNavbar);
// Hide navbar when modals trigger
var modals = document.querySelectorAll('.portfolio-modal');
for (var modal of modals) {
modal.addEventListener('shown.bs.modal', function (event) {
mainNav.classList.add('d-none');
});
modal.addEventListener('hidden.bs.modal', function (event) {
mainNav.classList.remove('d-none');
});
}
}
})(); // End of use strict

View File

@@ -1,19 +0,0 @@
if (window.innerWidth < 768) {
[].slice.call(document.querySelectorAll('[data-bss-disabled-mobile]')).forEach(function (elem) {
elem.classList.remove('animated');
elem.removeAttribute('data-bss-hover-animate');
elem.removeAttribute('data-aos');
elem.removeAttribute('data-bss-parallax-bg');
elem.removeAttribute('data-bss-scroll-zoom');
});
}
document.addEventListener('DOMContentLoaded', function() {
var hoverAnimationTriggerList = [].slice.call(document.querySelectorAll('[data-bss-hover-animate]'));
var hoverAnimationList = hoverAnimationTriggerList.forEach(function (hoverAnimationEl) {
hoverAnimationEl.addEventListener('mouseenter', function(e){ e.target.classList.add('animated', e.target.dataset.bssHoverAnimate) });
hoverAnimationEl.addEventListener('mouseleave', function(e){ e.target.classList.remove('animated', e.target.dataset.bssHoverAnimate) });
});
}, false);

View File

@@ -1,84 +0,0 @@
const letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ/.?!@#$%^&*()_+";
let interval = null;
let interval2 = null;
let interval3 = null;
// window.onload = (event) => {
// target = document.querySelector(".nathanwoodburn");
// let iteration = 0;
// let final = "NATHAN.WOODBURN/";
// clearInterval(interval);
// interval = setInterval(() => {
// target.innerText = target.innerText
// .split("")
// .map((letter, index) => {
// if(index < iteration) {
// return final[index];
// }
// return letters[Math.floor(Math.random() * 41)]
// })
// .join("");
// if(iteration >= final.length){
// clearInterval(interval);
// }
// iteration += 1 / 3;
// }, 30);
// };
document.querySelector(".copyright").onmouseover = event => {
let iteration2 = 0;
let old2 = "Copyright © Nathan.Woodburn/ 2024";
console.log(old2);
clearInterval(interval2);
interval2 = setInterval(() => {
event.target.innerText = event.target.innerText
.split("")
.map((letter, index2) => {
if(index2 < iteration2) {
return old2[index2];
}
return letters[Math.floor(Math.random() * 41)]
})
.join("");
if(iteration2 >= old2.length){
clearInterval(interval2);
}
iteration2 += 1/3;
}, 10);
}
// document.querySelector(".hacker3").onmouseover = event => {
// let iteration3 = 0;
// let old3 = event.target.innerText;
// console.log(old3);
// clearInterval(interval3);
// interval3 = setInterval(() => {
// event.target.innerText = event.target.innerText
// .split("")
// .map((letter, index3) => {
// if(index3 < iteration3) {
// return old3[index3];
// }
// return letters[Math.floor(Math.random() * 41)]
// })
// .join("");
// if(iteration3 >= old3.length){
// clearInterval(interval3);
// }
// iteration3 += 1 / 3;
// }, 10);
// }

View File

@@ -1 +0,0 @@
!function(){"use strict";var e=document.querySelector("#mainNav");if(e){var o=e.querySelector(".navbar-collapse");if(o){var n=new bootstrap.Collapse(o,{toggle:!1}),t=o.querySelectorAll("a");for(var a of t)a.addEventListener("click",(function(e){n.hide()}))}var r=function(){(void 0!==window.pageYOffset?window.pageYOffset:(document.documentElement||document.body.parentNode||document.body).scrollTop)>100?e.classList.add("navbar-shrink"):e.classList.remove("navbar-shrink")};r(),document.addEventListener("scroll",r);var d=document.querySelectorAll(".portfolio-modal");for(var s of d)s.addEventListener("shown.bs.modal",(function(o){e.classList.add("d-none")})),s.addEventListener("hidden.bs.modal",(function(o){e.classList.remove("d-none")}))}}();

View File

@@ -1,50 +0,0 @@
function checkStatus(url, callback) {
fetch(url, {
method: 'GET',
mode: 'no-cors'
}).then(function(response) {
callback('up');
}
).catch(function(error) {
callback('down');
}
);
}
// Check every 5 seconds
setInterval(function() {
checkStatuses();
}, 5000);
function checkStatuses(){
checkStatus('https://nathan.woodburn.au', function(updateStatus) {
if (updateStatus == 'up') document.getElementById('nathan-woodburn-au').style.color = '#00ff00';
else document.getElementById('nathan-woodburn-au').style.color = '#ff0000';
});
checkStatus('https://nathan3dprinting.au', function(updateStatus) {
if (updateStatus == 'up') document.getElementById('nathan3dprinting-au').style.color = '#00ff00';
else document.getElementById('nathan3dprinting-au').style.color = '#ff0000';
});
checkStatus('https://podcast.woodburn.au', function(updateStatus) {
if (updateStatus == 'up') document.getElementById('podcast-woodburn-au').style.color = '#00ff00';
else document.getElementById('podcast-woodburn-au').style.color = '#ff0000';
});
checkStatus('https://uptime.woodburn.au', function(updateStatus) {
if (updateStatus == 'up') document.getElementById('uptime-woodburn-au').style.color = '#00ff00';
else document.getElementById('uptime-woodburn-au').style.color = '#ff0000';
});
checkStatus('https://reg.woodburn.au', function(updateStatus) {
if (updateStatus == 'up') document.getElementById('reg-woodburn-au').style.color = '#00ff00';
else document.getElementById('reg-woodburn-au').style.color = '#ff0000';
});
checkStatus('https://hnscall', function(updateStatus) {
if (updateStatus == 'up') document.getElementById('hnscall').style.color = '#00ff00';
else document.getElementById('hnscall').style.color = '#ff0000';
});
checkStatus('https://hnshosting', function(updateStatus) {
if (updateStatus == 'up') document.getElementById('hnshosting').style.color = '#00ff00';
else document.getElementById('hnshosting').style.color = '#ff0000';
});
}
// Check on load
checkStatuses();

View File

@@ -1 +0,0 @@
powershell -executionpolicy bypass -File cleanup.ps1

View File

@@ -1,25 +0,0 @@
# Get arg 1
$directory = $args[0]
if ($args.Length -eq 0) {
Write-Host "No directory specified using current directory"
$directory = "."
}
Write-Host "Directory: $directory"
# Go through each .html file in the directory
Get-ChildItem -Path $directory -Filter "*.html" | ForEach-Object {
# Get the file name without extension
$filename = $_.BaseName
# Read the file content
$content = Get-Content $_.FullName -Raw
# Replace occurrences of "filename.html" with "filename" (outside HTML comments)
$modifiedContent = $content -replace "$filename\.html", $filename
# Save the modified content back to the file
$modifiedContent | Set-Content $_.FullName
Write-Host "Modified: $($_.Name)"
}

View File

@@ -1,162 +0,0 @@
<!DOCTYPE html>
<html data-bs-theme="light" lang="en-au" style="background: transparent;">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
<title>Home | Woodburn</title>
<link rel="canonical" href="https://woodburn.au/">
<meta property="og:url" content="https://woodburn.au/">
<meta name="twitter:card" content="summary">
<meta property="og:title" content="Woodburn">
<meta property="og:type" content="website">
<meta name="description" content="Woodburn Home Page">
<meta property="og:image" content="https://woodburn.au/assets/img/favicon.png">
<meta property="og:description" content="Woodburn">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebSite",
"name": "Woodburn",
"url": "https://woodburn.au"
}
</script>
<link rel="apple-touch-icon" type="image/png" sizes="180x180" href="assets/img/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="assets/img/favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="assets/img/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="180x180" href="assets/img/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="192x192" href="assets/img/android-chrome-192x192.png">
<link rel="icon" type="image/png" sizes="512x512" href="assets/img/android-chrome-512x512.png">
<link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat:400,700&amp;display=swap">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Kaushan+Script&amp;display=swap">
<link rel="stylesheet" href="assets/fonts/fontawesome-all.min.css">
<link rel="stylesheet" href="assets/fonts/font-awesome.min.css">
<link rel="stylesheet" href="assets/fonts/fontawesome5-overrides.min.css">
<link rel="stylesheet" href="assets/css/animate.min.css">
<link rel="stylesheet" href="assets/css/Contact-Form-Clean.css">
<link rel="stylesheet" href="assets/css/index.css">
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="https://analytics.woodburn.au/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '2']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->
<!--This Website was made by Nathan Woodburn https://nathan.woodburn.au -->
</head>
<body class="justify-content-xl-center" id="page-top" data-bs-spy="scroll" data-bs-target="#mainNav" data-bs-offset="54" style="background: url(&quot;assets/img/background.webp&quot;) top;text-align: center;background-attachment: fixed;"><!--This Website was made by Nathan Woodburn https://nathan.woodburn.au --><script src="https://nathan.woodburn/handshake.js" domain="woodburn"></script>
<script src="https://nathan.woodburn/https.js"></script>
<nav class="navbar navbar-expand-lg fixed-top bg-dark navbar-dark" id="mainNav" style="height: 67px;">
<div class="container-fluid"><a class="navbar-brand" href="/#" style="font-family: Montserrat, sans-serif;font-weight: bold;color: rgb(255,255,255);"><img src="assets/img/favicon.png" width="40px">&nbsp;Woodburn</a><button data-bs-toggle="collapse" data-bs-target="#navbarResponsive" class="navbar-toggler navbar-toggler-right" type="button" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation"><i class="fa fa-bars"></i></button>
<div class="collapse navbar-collapse" id="navbarResponsive" style="margin-top: 4px;">
<ul class="navbar-nav ms-auto text-uppercase" style="background: rgb(52,58,64);">
<li class="nav-item"><a class="nav-link" href="https://dash.woodburn.au" style="padding-left: 15px;">Login</a></li>
</ul>
</div>
</div>
</nav>
<section style="width: 90%;max-width: 1140px;margin-right: auto;margin-left: auto;padding-bottom: 10px;padding-top: 10px;margin-top: 67px;">
<h2 class="fw-bold text-white mb-3" style="background: rgb(52,58,64);border-radius: 10px;">Websites</h2>
<div class="card-group">
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://nathan.woodburn.au" style="color: white;" target="_blank"><i class="fas fa-circle d-xl-flex justify-content-xl-end" id="nathan-woodburn-au" style="color: red;"></i><img src="assets/img/favicon.png" style="width: 90%;margin-top: 5px;">
<h4>Nathan.Woodburn/</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://nathan3dprinting.au" style="color: white;" target="_blank"><i class="fas fa-circle d-xl-flex justify-content-xl-end" id="nathan3dprinting-au" style="color: red;"></i><img src="https://nathan3dprinting.au/assets/img/favicon/N3D_Logo.png" style="width: 90%;margin-top: 5px;">
<h4>3D Printing</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://podcast.woodburn.au" style="color: white;" target="_blank"><i class="fas fa-circle d-xl-flex justify-content-xl-end" id="podcast-woodburn-au" style="color: red;"></i><img src="assets/img/Alliance_Logo.webp" style="width: 90%;margin-top: 5px;">
<h4>Church Podcasts</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://uptime.woodburn.au" style="color: white;" target="_blank"><i class="fas fa-circle d-xl-flex justify-content-xl-end" id="uptime-woodburn-au" style="color: red;"></i><img src="assets/img/favicon.png" style="width: 90%;margin-top: 5px;">
<h4>Uptime</h4>
</a>
<div class="card-body"></div>
</div>
</div>
<div class="card-group">
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://reg.woodburn.au" style="color: white;" target="_blank"><i class="fas fa-circle d-xl-flex justify-content-xl-end" id="reg-woodburn-au" style="color: red;"></i><img src="assets/img/favicon.png" style="width: 90%;margin-top: 5px;">
<h4>Registry</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://hnscall" style="color: white;" target="_blank"><i class="fas fa-circle d-xl-flex justify-content-xl-end" id="hnscall" style="color: red;"></i><img src="https://talk.woodburn.au/images/logo.svg" style="width: 90%;margin-top: 5px;filter: invert(100%);">
<h4>HNS Call</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://github.com/Nathanwoodburn/HNS-server" style="color: white;" target="_blank"><img src="https://github.com/fluidicon.png" style="width: 90%;margin-top: 5px;">
<h4>HNS Server Scripts</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://hnshosting" style="color: white;" target="_blank"><i class="fas fa-circle d-xl-flex justify-content-xl-end" id="hnshosting" style="color: red;"></i><img src="assets/img/favicon.png" style="width: 90%;margin-top: 5px;">
<h4>HNS Hosting</h4>
</a>
<div class="card-body"></div>
</div>
</div>
</section>
<section style="width: 90%;max-width: 1140px;padding-bottom: 10px;padding-top: 10px;margin-right: auto;margin-left: auto;">
<h2 class="fw-bold text-white mb-3" style="background: rgb(52,58,64);border-radius: 10px;">Applications</h2>
<div class="card-group">
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://firewallet.au" style="color: white;" target="_blank"><img src="assets/img/FW.png" style="max-width: 90%;margin-top: 5px;">
<h4>Fire Wallet</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://git.woodburn.au/nathanwoodburn/FireWalletLite" style="color: white;" target="_blank"><img src="assets/img/favicon.png" width="229" height="253" style="width: 90%;height: auto;margin-top: 5px;">
<h4>Fire Wallet Lite</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://github.com/Nathanwoodburn/HSDBatcherGUI" style="color: white;" target="_blank"><img src="assets/img/HSDBatcher.png" style="max-width: 90%;margin-top: 5px;">
<h4>HSD Batcher</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://github.com/Nathanwoodburn/EOL" style="color: white;" target="_blank"><img src="assets/img/favicon.png" style="max-width: 90%;margin-top: 5px;">
<h4>EOL Encryptor</h4>
</a>
<div class="card-body"></div>
</div>
<div class="card" data-bss-hover-animate="pulse" style="margin: 10px;background: var(--bs-secondary-color);color: white;max-width: 500px;"><a class="stretched-link no-underline" href="https://github.com/Nathanwoodburn/Watermark" style="color: white;" target="_blank"><img src="assets/img/favicon.png" style="max-width: 90%;margin-top: 5px;">
<h4>Watermark</h4>
</a>
<div class="card-body"></div>
</div>
</div>
</section>
<section style="padding: 0px;height: 100px;"></section>
<footer style="color: rgb(255,255,255);height: 40px;width: 100%;padding-top: 0px;padding-bottom: 0px;position: relative;background: black;">
<div class="container">
<div class="row justify-content-center align-items-center">
<div class="col-md-4"><div style="height:28px; margin:0px;padding:0px;overflow:hidden"><iframe src="https://uptime.woodburn.au/api/status-page/main/badge?label=Woodburn%20Status&style=for-the-badge" title="Woodburn Uptime"></iframe></div></div>
<div class="col-md-4"><a href="mailto:contact@woodburn.au" style="color: white;">contact@woodburn.au</a></div>
<div class="col-md-4"><span class="copyright">Copyright&nbsp;© Nathan.Woodburn/ 2024</span></div>
</div>
</div>
</footer>
<script src="assets/bootstrap/js/bootstrap.min.js"></script>
<script src="assets/js/bs-init.js"></script>
<script src="assets/js/hacker.js"></script>
<script src="assets/js/agency.js"></script>
<script src="assets/js/status.js"></script>
</body>
</html>

38
main.py Normal file
View File

@@ -0,0 +1,38 @@
import server
from gunicorn.app.base import BaseApplication
import os
import dotenv
class GunicornApp(BaseApplication):
def __init__(self, app, options=None):
self.options = options or {}
self.application = app
super().__init__()
def load_config(self):
for key, value in self.options.items():
if key in self.cfg.settings and value is not None:
self.cfg.set(key.lower(), value)
def load(self):
return self.application
if __name__ == "__main__":
dotenv.load_dotenv()
workers = os.getenv("WORKERS", 1)
threads = os.getenv("THREADS", 2)
workers = int(workers)
threads = int(threads)
options = {
"bind": "0.0.0.0:5000",
"workers": workers,
"threads": threads,
}
gunicorn_app = GunicornApp(server.app, options)
print(f"Starting server with {workers} workers and {threads} threads", flush=True)
gunicorn_app.run()

View File

@@ -1,30 +0,0 @@
server {
listen 80;
listen [::]:80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri.html $uri/ =404;
}
location ~ /\.git {
deny all;
access_log off;
log_not_found off;
}
location ~* (nginx.conf|Dockerfile|cleanup.ps1|cleanup.bat|README.md|LICENSE.md) {
deny all;
}
# Custom 404 page
error_page 404 /404.html;
root /usr/share/nginx/html;
location = /404.html {
}
}

View File

@@ -1 +0,0 @@
pong

20
pyproject.toml Normal file
View File

@@ -0,0 +1,20 @@
[project]
name = "woodburn"
version = "0.1.0"
description = "Woodburn Website"
readme = "README.md"
requires-python = ">=3.13"
dependencies = [
"flask>=3.1.2",
"gunicorn>=23.0.0",
"python-dotenv>=1.2.1",
"requests>=2.32.5",
"authlib==1.3.0",
"flask-caching>=2.3.1",
]
[dependency-groups]
dev = [
"pre-commit>=4.4.0",
"ruff>=0.14.5",
]

326
requirements.txt Normal file
View File

@@ -0,0 +1,326 @@
# This file was autogenerated by uv via the following command:
# uv export --frozen --output-file=requirements.txt
authlib==1.3.0 \
--hash=sha256:959ea62a5b7b5123c5059758296122b57cd2585ae2ed1c0622c21b371ffdae06 \
--hash=sha256:9637e4de1fb498310a56900b3e2043a206b03cb11c05422014b0302cbc814be3
# via woodburn
blinker==1.9.0 \
--hash=sha256:b4ce2265a7abece45e7cc896e98dbebe6cead56bcf805a3d23136d145f5445bf \
--hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc
# via flask
cachelib==0.13.0 \
--hash=sha256:209d8996e3c57595bee274ff97116d1d73c4980b2fd9a34c7846cd07fd2e1a48 \
--hash=sha256:8c8019e53b6302967d4e8329a504acf75e7bc46130291d30188a6e4e58162516
# via flask-caching
certifi==2025.11.12 \
--hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b \
--hash=sha256:d8ab5478f2ecd78af242878415affce761ca6bc54a22a27e026d7c25357c3316
# via requests
cffi==2.0.0 ; platform_python_implementation != 'PyPy' \
--hash=sha256:00bdf7acc5f795150faa6957054fbbca2439db2f775ce831222b66f192f03beb \
--hash=sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b \
--hash=sha256:087067fa8953339c723661eda6b54bc98c5625757ea62e95eb4898ad5e776e9f \
--hash=sha256:0a1527a803f0a659de1af2e1fd700213caba79377e27e4693648c2923da066f9 \
--hash=sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c \
--hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 \
--hash=sha256:1fc9ea04857caf665289b7a75923f2c6ed559b8298a1b8c49e59f7dd95c8481e \
--hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 \
--hash=sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b \
--hash=sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91 \
--hash=sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592 \
--hash=sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1 \
--hash=sha256:44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529 \
--hash=sha256:45d5e886156860dc35862657e1494b9bae8dfa63bf56796f2fb56e1679fc0bca \
--hash=sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4 \
--hash=sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b \
--hash=sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205 \
--hash=sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27 \
--hash=sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512 \
--hash=sha256:7a66c7204d8869299919db4d5069a82f1561581af12b11b3c9f48c584eb8743d \
--hash=sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c \
--hash=sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8 \
--hash=sha256:9a67fc9e8eb39039280526379fb3a70023d77caec1852002b4da7e8b270c4dd9 \
--hash=sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775 \
--hash=sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc \
--hash=sha256:c654de545946e0db659b3400168c9ad31b5d29593291482c43e3564effbcee13 \
--hash=sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26 \
--hash=sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b \
--hash=sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6 \
--hash=sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c \
--hash=sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef \
--hash=sha256:dbd5c7a25a7cb98f5ca55d258b103a2054f859a46ae11aaf23134f9cc0d356ad \
--hash=sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3 \
--hash=sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2 \
--hash=sha256:fc33c5141b55ed366cfaad382df24fe7dcbc686de5be719b207bb248e3053dc5
# via cryptography
cfgv==3.5.0 \
--hash=sha256:a8dc6b26ad22ff227d2634a65cb388215ce6cc96bbcc5cfde7641ae87e8dacc0 \
--hash=sha256:d5b1034354820651caa73ede66a6294d6e95c1b00acc5e9b098e917404669132
# via pre-commit
charset-normalizer==3.4.4 \
--hash=sha256:2b7d8f6c26245217bd2ad053761201e9f9680f8ce52f0fcd8d0755aeae5b2152 \
--hash=sha256:3162d5d8ce1bb98dd51af660f2121c55d0fa541b46dff7bb9b9f86ea1d87de72 \
--hash=sha256:362d61fd13843997c1c446760ef36f240cf81d3ebf74ac62652aebaf7838561e \
--hash=sha256:47cc91b2f4dd2833fddaedd2893006b0106129d4b94fdb6af1f4ce5a9965577c \
--hash=sha256:542d2cee80be6f80247095cc36c418f7bddd14f4a6de45af91dfad36d817bba2 \
--hash=sha256:554af85e960429cf30784dd47447d5125aaa3b99a6f0683589dbd27e2f45da44 \
--hash=sha256:5bd2293095d766545ec1a8f612559f6b40abc0eb18bb2f5d1171872d34036ede \
--hash=sha256:6b39f987ae8ccdf0d2642338faf2abb1862340facc796048b604ef14919e55ed \
--hash=sha256:74018750915ee7ad843a774364e13a3db91682f26142baddf775342c3f5b1133 \
--hash=sha256:74664978bb272435107de04e36db5a9735e78232b85b77d45cfb38f758efd33e \
--hash=sha256:752944c7ffbfdd10c074dc58ec2d5a8a4cd9493b314d367c14d24c17684ddd14 \
--hash=sha256:799a7a5e4fb2d5898c60b640fd4981d6a25f1c11790935a44ce38c54e985f828 \
--hash=sha256:7a32c560861a02ff789ad905a2fe94e3f840803362c84fecf1851cb4cf3dc37f \
--hash=sha256:81d5eb2a312700f4ecaa977a8235b634ce853200e828fbadf3a9c50bab278328 \
--hash=sha256:82004af6c302b5d3ab2cfc4cc5f29db16123b1a8417f2e25f9066f91d4411090 \
--hash=sha256:8a6562c3700cce886c5be75ade4a5db4214fda19fede41d9792d100288d8f94c \
--hash=sha256:8af65f14dc14a79b924524b1e7fffe304517b2bff5a58bf64f30b98bbc5079eb \
--hash=sha256:94537985111c35f28720e43603b8e7b43a6ecfb2ce1d3058bbe955b73404e21a \
--hash=sha256:99ae2cffebb06e6c22bdc25801d7b30f503cc87dbd283479e7b606f70aff57ec \
--hash=sha256:9a26f18905b8dd5d685d6d07b0cdf98a79f3c7a918906af7cc143ea2e164c8bc \
--hash=sha256:9b35f4c90079ff2e2edc5b26c0c77925e5d2d255c42c74fdb70fb49b172726ac \
--hash=sha256:a8a8b89589086a25749f471e6a900d3f662d1d3b6e2e59dcecf787b1cc3a1894 \
--hash=sha256:b435cba5f4f750aa6c0a0d92c541fb79f69a387c91e61f1795227e4ed9cece14 \
--hash=sha256:bc7637e2f80d8530ee4a78e878bce464f70087ce73cf7c1caf142416923b98f1 \
--hash=sha256:c0463276121fdee9c49b98908b3a89c39be45d86d1dbaa22957e38f6321d4ce3 \
--hash=sha256:c8ae8a0f02f57a6e61203a31428fa1d677cbe50c93622b4149d5c0f319c1d19e \
--hash=sha256:cb6254dc36b47a990e59e1068afacdcd02958bdcce30bb50cc1700a8b9d624a6 \
--hash=sha256:d1f13550535ad8cff21b8d757a3257963e951d96e20ec82ab44bc64aeb62a191 \
--hash=sha256:da3326d9e65ef63a817ecbcc0df6e94463713b754fe293eaa03da99befb9a5bd \
--hash=sha256:de00632ca48df9daf77a2c65a484531649261ec9f25489917f09e455cb09ddb2 \
--hash=sha256:e1f185f86a6f3403aa2420e815904c67b2f9ebc443f045edd0de921108345794 \
--hash=sha256:ecaae4149d99b1c9e7b88bb03e3221956f68fd6d50be2ef061b2381b61d20838 \
--hash=sha256:f8bf04158c6b607d747e93949aa60618b61312fe647a6369f88ce2ff16043490 \
--hash=sha256:f9d332f8c2a2fcbffe1378594431458ddbef721c1769d78e2cbc06280d8155f9
# via requests
click==8.3.1 \
--hash=sha256:12ff4785d337a1bb490bb7e9c2b1ee5da3112e94a8622f26a6c77f5d2fc6842a \
--hash=sha256:981153a64e25f12d547d3426c367a4857371575ee7ad18df2a6183ab0545b2a6
# via flask
colorama==0.4.6 ; sys_platform == 'win32' \
--hash=sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44 \
--hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6
# via click
cryptography==46.0.5 \
--hash=sha256:02f547fce831f5096c9a567fd41bc12ca8f11df260959ecc7c3202555cc47a72 \
--hash=sha256:039917b0dc418bb9f6edce8a906572d69e74bd330b0b3fea4f79dab7f8ddd235 \
--hash=sha256:1abfdb89b41c3be0365328a410baa9df3ff8a9110fb75e7b52e66803ddabc9a9 \
--hash=sha256:351695ada9ea9618b3500b490ad54c739860883df6c1f555e088eaf25b1bbaad \
--hash=sha256:38946c54b16c885c72c4f59846be9743d699eee2b69b6988e0a00a01f46a61a4 \
--hash=sha256:3ce58ba46e1bc2aac4f7d9290223cead56743fa6ab94a5d53292ffaac6a91614 \
--hash=sha256:3ee190460e2fbe447175cda91b88b84ae8322a104fc27766ad09428754a618ed \
--hash=sha256:4108d4c09fbbf2789d0c926eb4152ae1760d5a2d97612b92d508d96c861e4d31 \
--hash=sha256:420d0e909050490d04359e7fdb5ed7e667ca5c3c402b809ae2563d7e66a92229 \
--hash=sha256:47fb8a66058b80e509c47118ef8a75d14c455e81ac369050f20ba0d23e77fee0 \
--hash=sha256:4c3341037c136030cb46e4b1e17b7418ea4cbd9dd207e4a6f3b2b24e0d4ac731 \
--hash=sha256:4d7e3d356b8cd4ea5aff04f129d5f66ebdc7b6f8eae802b93739ed520c47c79b \
--hash=sha256:4d8ae8659ab18c65ced284993c2265910f6c9e650189d4e3f68445ef82a810e4 \
--hash=sha256:4e817a8920bfbcff8940ecfd60f23d01836408242b30f1a708d93198393a80b4 \
--hash=sha256:50bfb6925eff619c9c023b967d5b77a54e04256c4281b0e21336a130cd7fc263 \
--hash=sha256:556e106ee01aa13484ce9b0239bca667be5004efb0aabbed28d353df86445595 \
--hash=sha256:582f5fcd2afa31622f317f80426a027f30dc792e9c80ffee87b993200ea115f1 \
--hash=sha256:5be7bf2fb40769e05739dd0046e7b26f9d4670badc7b032d6ce4db64dddc0678 \
--hash=sha256:60ee7e19e95104d4c03871d7d7dfb3d22ef8a9b9c6778c94e1c8fcc8365afd48 \
--hash=sha256:61aa400dce22cb001a98014f647dc21cda08f7915ceb95df0c9eaf84b4b6af76 \
--hash=sha256:68f68d13f2e1cb95163fa3b4db4bf9a159a418f5f6e7242564fc75fcae667fd0 \
--hash=sha256:7d1f30a86d2757199cb2d56e48cce14deddf1f9c95f1ef1b64ee91ea43fe2e18 \
--hash=sha256:7d731d4b107030987fd61a7f8ab512b25b53cef8f233a97379ede116f30eb67d \
--hash=sha256:803812e111e75d1aa73690d2facc295eaefd4439be1023fefc4995eaea2af90d \
--hash=sha256:80a8d7bfdf38f87ca30a5391c0c9ce4ed2926918e017c29ddf643d0ed2778ea1 \
--hash=sha256:8293f3dea7fc929ef7240796ba231413afa7b68ce38fd21da2995549f5961981 \
--hash=sha256:890bcb4abd5a2d3f852196437129eb3667d62630333aacc13dfd470fad3aaa82 \
--hash=sha256:94a76daa32eb78d61339aff7952ea819b1734b46f73646a07decb40e5b3448e2 \
--hash=sha256:9f16fbdf4da055efb21c22d81b89f155f02ba420558db21288b3d0035bafd5f4 \
--hash=sha256:a3d1fae9863299076f05cb8a778c467578262fae09f9dc0ee9b12eb4268ce663 \
--hash=sha256:a3d507bb6a513ca96ba84443226af944b0f7f47dcc9a399d110cd6146481d24c \
--hash=sha256:abace499247268e3757271b2f1e244b36b06f8515cf27c4d49468fc9eb16e93d \
--hash=sha256:ba2a27ff02f48193fc4daeadf8ad2590516fa3d0adeeb34336b96f7fa64c1e3a \
--hash=sha256:bfd56bb4b37ed4f330b82402f6f435845a5f5648edf1ad497da51a8452d5d62d \
--hash=sha256:c18ff11e86df2e28854939acde2d003f7984f721eba450b56a200ad90eeb0e6b \
--hash=sha256:c3bcce8521d785d510b2aad26ae2c966092b7daa8f45dd8f44734a104dc0bc1a \
--hash=sha256:c4143987a42a2397f2fc3b4d7e3a7d313fbe684f67ff443999e803dd75a76826 \
--hash=sha256:c69fd885df7d089548a42d5ec05be26050ebcd2283d89b3d30676eb32ff87dee \
--hash=sha256:ced80795227d70549a411a4ab66e8ce307899fad2220ce5ab2f296e687eacde9 \
--hash=sha256:d66e421495fdb797610a08f43b05269e0a5ea7f5e652a89bfd5a7d3c1dee3648 \
--hash=sha256:e9251e3be159d1020c4030bd2e5f84d6a43fe54b6c19c12f51cde9542a2817b2 \
--hash=sha256:f145bba11b878005c496e93e257c1e88f154d278d2638e6450d17e0f31e558d2 \
--hash=sha256:fe346b143ff9685e40192a4960938545c699054ba11d4f9029f94751e3f71d87
# via authlib
distlib==0.4.0 \
--hash=sha256:9659f7d87e46584a30b5780e43ac7a2143098441670ff0a49d5f9034c54a6c16 \
--hash=sha256:feec40075be03a04501a973d81f633735b4b69f98b05450592310c0f401a4e0d
# via virtualenv
filelock==3.20.0 \
--hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 \
--hash=sha256:711e943b4ec6be42e1d4e6690b48dc175c822967466bb31c0c293f34334c13f4
# via virtualenv
flask==3.1.2 \
--hash=sha256:bf656c15c80190ed628ad08cdfd3aaa35beb087855e2f494910aa3774cc4fd87 \
--hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c
# via
# flask-caching
# woodburn
flask-caching==2.3.1 \
--hash=sha256:65d7fd1b4eebf810f844de7de6258254b3248296ee429bdcb3f741bcbf7b98c9 \
--hash=sha256:d3efcf600e5925ea5a2fcb810f13b341ae984f5b52c00e9d9070392f3ca10761
# via woodburn
gunicorn==23.0.0 \
--hash=sha256:ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d \
--hash=sha256:f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec
# via woodburn
identify==2.6.15 \
--hash=sha256:1181ef7608e00704db228516541eb83a88a9f94433a8c80bb9b5bd54b1d81757 \
--hash=sha256:e4f4864b96c6557ef2a1e1c951771838f4edc9df3a72ec7118b338801b11c7bf
# via pre-commit
idna==3.11 \
--hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea \
--hash=sha256:795dafcc9c04ed0c1fb032c2aa73654d8e8c5023a7df64a53f39190ada629902
# via requests
itsdangerous==2.2.0 \
--hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef \
--hash=sha256:e0050c0b7da1eea53ffaf149c0cfbb5c6e2e2b69c4bef22c81fa6eb73e5f6173
# via flask
jinja2==3.1.6 \
--hash=sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d \
--hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67
# via flask
markupsafe==3.0.3 \
--hash=sha256:0eb9ff8191e8498cca014656ae6b8d61f39da5f95b488805da4bb029cccbfbaf \
--hash=sha256:1085e7fbddd3be5f89cc898938f42c0b3c711fdcb37d75221de2666af647c175 \
--hash=sha256:116bb52f642a37c115f517494ea5feb03889e04df47eeff5b130b1808ce7c219 \
--hash=sha256:12c63dfb4a98206f045aa9563db46507995f7ef6d83b2f68eda65c307c6829eb \
--hash=sha256:133a43e73a802c5562be9bbcd03d090aa5a1fe899db609c29e8c8d815c5f6de6 \
--hash=sha256:1353ef0c1b138e1907ae78e2f6c63ff67501122006b0f9abad68fda5f4ffc6ab \
--hash=sha256:1b4b79e8ebf6b55351f0d91fe80f893b4743f104bff22e90697db1590e47a218 \
--hash=sha256:1b52b4fb9df4eb9ae465f8d0c228a00624de2334f216f178a995ccdcf82c4634 \
--hash=sha256:218551f6df4868a8d527e3062d0fb968682fe92054e89978594c28e642c43a73 \
--hash=sha256:2713baf880df847f2bece4230d4d094280f4e67b1e813eec43b4c0e144a34ffe \
--hash=sha256:32001d6a8fc98c8cb5c947787c5d08b0a50663d139f1305bac5885d98d9b40fa \
--hash=sha256:3524b778fe5cfb3452a09d31e7b5adefeea8c5be1d43c4f810ba09f2ceb29d37 \
--hash=sha256:457a69a9577064c05a97c41f4e65148652db078a3a509039e64d3467b9e7ef97 \
--hash=sha256:4e885a3d1efa2eadc93c894a21770e4bc67899e3543680313b09f139e149ab19 \
--hash=sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9 \
--hash=sha256:509fa21c6deb7a7a273d629cf5ec029bc209d1a51178615ddf718f5918992ab9 \
--hash=sha256:5678211cb9333a6468fb8d8be0305520aa073f50d17f089b5b4b477ea6e67fdc \
--hash=sha256:5a7d5dc5140555cf21a6fefbdbf8723f06fcd2f63ef108f2854de715e4422cb4 \
--hash=sha256:69c0b73548bc525c8cb9a251cddf1931d1db4d2258e9599c28c07ef3580ef354 \
--hash=sha256:722695808f4b6457b320fdc131280796bdceb04ab50fe1795cd540799ebe1698 \
--hash=sha256:729586769a26dbceff69f7a7dbbf59ab6572b99d94576a5592625d5b411576b9 \
--hash=sha256:795e7751525cae078558e679d646ae45574b47ed6e7771863fcc079a6171a0fc \
--hash=sha256:7e68f88e5b8799aa49c85cd116c932a1ac15caaa3f5db09087854d218359e485 \
--hash=sha256:8485f406a96febb5140bfeca44a73e3ce5116b2501ac54fe953e488fb1d03b12 \
--hash=sha256:8709b08f4a89aa7586de0aadc8da56180242ee0ada3999749b183aa23df95025 \
--hash=sha256:8f71bc33915be5186016f675cd83a1e08523649b0e33efdb898db577ef5bb009 \
--hash=sha256:915c04ba3851909ce68ccc2b8e2cd691618c4dc4c4232fb7982bca3f41fd8c3d \
--hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 \
--hash=sha256:9b79b7a16f7fedff2495d684f2b59b0457c3b493778c9eed31111be64d58279f \
--hash=sha256:a4afe79fb3de0b7097d81da19090f4df4f8d3a2b3adaa8764138aac2e44f3af1 \
--hash=sha256:ad2cf8aa28b8c020ab2fc8287b0f823d0a7d8630784c31e9ee5edea20f406287 \
--hash=sha256:b8512a91625c9b3da6f127803b166b629725e68af71f8184ae7e7d54686a56d6 \
--hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 \
--hash=sha256:bdd37121970bfd8be76c5fb069c7751683bdf373db1ed6c010162b2a130248ed \
--hash=sha256:c47a551199eb8eb2121d4f0f15ae0f923d31350ab9280078d1e5f12b249e0026 \
--hash=sha256:ccfcd093f13f0f0b7fdd0f198b90053bf7b2f02a3927a30e63f3ccc9df56b676 \
--hash=sha256:e1cf1972137e83c5d4c136c43ced9ac51d0e124706ee1c8aa8532c1287fa8795 \
--hash=sha256:e56b7d45a839a697b5eb268c82a71bd8c7f6c94d6fd50c3d577fa39a9f1409f5 \
--hash=sha256:e8afc3f2ccfa24215f8cb28dcf43f0113ac3c37c2f0f0806d8c70e4228c5cf4d \
--hash=sha256:eaa9599de571d72e2daf60164784109f19978b327a3910d3e9de8c97b5b70cfe \
--hash=sha256:ec15a59cf5af7be74194f7ab02d0f59a62bdcf1a537677ce67a2537c9b87fcda \
--hash=sha256:f190daf01f13c72eac4efd5c430a8de82489d9cff23c364c3ea822545032993e \
--hash=sha256:f34c41761022dd093b4b6896d4810782ffbabe30f2d443ff5f083e0cbbb8c737 \
--hash=sha256:f3e98bb3798ead92273dc0e5fd0f31ade220f59a266ffd8a4f6065e0a3ce0523 \
--hash=sha256:fed51ac40f757d41b7c48425901843666a6677e3e8eb0abcff09e4ba6e664f50
# via
# flask
# jinja2
# werkzeug
nodeenv==1.9.1 \
--hash=sha256:6ec12890a2dab7946721edbfbcd91f3319c6ccc9aec47be7c7e6b7011ee6645f \
--hash=sha256:ba11c9782d29c27c70ffbdda2d7415098754709be8a7056d79a737cd901155c9
# via pre-commit
packaging==25.0 \
--hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 \
--hash=sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f
# via gunicorn
platformdirs==4.5.0 \
--hash=sha256:70ddccdd7c99fc5942e9fc25636a8b34d04c24b335100223152c2803e4063312 \
--hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3
# via virtualenv
pre-commit==4.4.0 \
--hash=sha256:b35ea52957cbf83dcc5d8ee636cbead8624e3a15fbfa61a370e42158ac8a5813 \
--hash=sha256:f0233ebab440e9f17cabbb558706eb173d19ace965c68cdce2c081042b4fab15
pycparser==3.0 ; implementation_name != 'PyPy' and platform_python_implementation != 'PyPy' \
--hash=sha256:600f49d217304a5902ac3c37e1281c9fe94e4d0489de643a9504c5cdfdfc6b29 \
--hash=sha256:b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992
# via cffi
python-dotenv==1.2.1 \
--hash=sha256:42667e897e16ab0d66954af0e60a9caa94f0fd4ecf3aaf6d2d260eec1aa36ad6 \
--hash=sha256:b81ee9561e9ca4004139c6cbba3a238c32b03e4894671e181b671e8cb8425d61
# via woodburn
pyyaml==6.0.3 \
--hash=sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c \
--hash=sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3 \
--hash=sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6 \
--hash=sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65 \
--hash=sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1 \
--hash=sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310 \
--hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac \
--hash=sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9 \
--hash=sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7 \
--hash=sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35 \
--hash=sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb \
--hash=sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065 \
--hash=sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c \
--hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c \
--hash=sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764 \
--hash=sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac \
--hash=sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8 \
--hash=sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3 \
--hash=sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5 \
--hash=sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702 \
--hash=sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788 \
--hash=sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba \
--hash=sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5 \
--hash=sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26 \
--hash=sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f \
--hash=sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b \
--hash=sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be \
--hash=sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c \
--hash=sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6
# via pre-commit
requests==2.32.5 \
--hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 \
--hash=sha256:dbba0bac56e100853db0ea71b82b4dfd5fe2bf6d3754a8893c3af500cec7d7cf
# via woodburn
ruff==0.14.5 \
--hash=sha256:2d1fa985a42b1f075a098fa1ab9d472b712bdb17ad87a8ec86e45e7fa6273e68 \
--hash=sha256:3676cb02b9061fee7294661071c4709fa21419ea9176087cb77e64410926eb78 \
--hash=sha256:410e781f1122d6be4f446981dd479470af86537fb0b8857f27a6e872f65a38e4 \
--hash=sha256:4b700459d4649e2594b31f20a9de33bc7c19976d4746d8d0798ad959621d64a4 \
--hash=sha256:6d146132d1ee115f8802356a2dc9a634dbf58184c51bff21f313e8cd1c74899a \
--hash=sha256:7497d19dce23976bdaca24345ae131a1d38dcfe1b0850ad8e9e6e4fa321a6e19 \
--hash=sha256:88f0770d42b7fa02bbefddde15d235ca3aa24e2f0137388cc15b2dcbb1f7c7a7 \
--hash=sha256:8d3b48d7d8aad423d3137af7ab6c8b1e38e4de104800f0d596990f6ada1a9fc1 \
--hash=sha256:9d55d7af7166f143c94eae1db3312f9ea8f95a4defef1979ed516dbb38c27621 \
--hash=sha256:b595bedf6bc9cab647c4a173a61acf4f1ac5f2b545203ba82f30fcb10b0318fb \
--hash=sha256:c01be527ef4c91a6d55e53b337bfe2c0f82af024cc1a33c44792d6844e2331e1 \
--hash=sha256:c135d4b681f7401fe0e7312017e41aba9b3160861105726b76cfa14bc25aa367 \
--hash=sha256:c83642e6fccfb6dea8b785eb9f456800dcd6a63f362238af5fc0c83d027dd08b \
--hash=sha256:d93be8f1fa01022337f1f8f3bcaa7ffee2d0b03f00922c45c2207954f351f465 \
--hash=sha256:e2380596653dcd20b057794d55681571a257a42327da8894b93bbd6111aa801f \
--hash=sha256:f3b8248123b586de44a8018bcc9fefe31d23dda57a34e6f0e1e53bd51fd63594 \
--hash=sha256:f55382725ad0bdb2e8ee2babcbbfb16f124f5a59496a2f6a46f1d9d99d93e6e2 \
--hash=sha256:f66e9bb762e68d66e48550b59c74314168ebb46199886c5c5aa0b0fbcc81b151 \
--hash=sha256:f7a75236570318c7a30edd7f5491945f0169de738d945ca8784500b517163a72
urllib3==2.5.0 \
--hash=sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760 \
--hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc
# via requests
virtualenv==20.35.4 \
--hash=sha256:643d3914d73d3eeb0c552cbb12d7e82adf0e504dbf86a3182f8771a153a1971c \
--hash=sha256:c21c9cede36c9753eeade68ba7d523529f228a403463376cf821eaae2b650f1b
# via pre-commit
werkzeug==3.1.3 \
--hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e \
--hash=sha256:60723ce945c19328679790e3282cc758aa4a6040e4bb330f53d30fa546d44746
# via flask

237
server.py Normal file
View File

@@ -0,0 +1,237 @@
from flask import (
Flask,
make_response,
jsonify,
render_template,
send_from_directory,
send_file,
session,
redirect,
url_for,
)
from werkzeug.exceptions import InternalServerError
import os
import json
import requests
from datetime import datetime
import dotenv
from authlib.integrations.flask_client import OAuth
from flask_caching import Cache
dotenv.load_dotenv()
app = Flask(__name__)
app.secret_key = os.getenv("APP_SECRET_KEY", os.urandom(24))
# Cache Configuration
cache = Cache(app, config={'CACHE_TYPE': 'SimpleCache', 'CACHE_DEFAULT_TIMEOUT': 300})
# OAuth Configuration
oauth = OAuth(app)
oauth.register(
name='authentik',
server_metadata_url=os.getenv('AUTHENTIK_METADATA_URL'),
client_id=os.getenv('AUTHENTIK_CLIENT_ID'),
client_secret=os.getenv('AUTHENTIK_CLIENT_SECRET'),
client_kwargs={
'scope': 'openid profile email',
}
)
def load_services():
with open('services.json', 'r') as f:
return json.load(f)
def find(name, path):
for root, dirs, files in os.walk(path):
if name in files:
return os.path.join(root, name)
# Assets routes
@app.route("/assets/<path:path>")
def send_assets(path):
if path.endswith(".json"):
return send_from_directory(
"templates/assets", path, mimetype="application/json"
)
if os.path.isfile("templates/assets/" + path):
return send_from_directory("templates/assets", path)
# Try looking in one of the directories
filename: str = path.split("/")[-1]
if (
filename.endswith(".png")
or filename.endswith(".jpg")
or filename.endswith(".jpeg")
or filename.endswith(".svg")
):
if os.path.isfile("templates/assets/img/" + filename):
return send_from_directory("templates/assets/img", filename)
if os.path.isfile("templates/assets/img/favicon/" + filename):
return send_from_directory("templates/assets/img/favicon", filename)
return render_template("404.html"), 404
@app.route("/services/<string:category>/<string:service>.png")
@cache.cached(timeout=3600, query_string=True)
def service_images(category: str, service: str):
services = load_services()
for svc in services.get(category, []):
if svc["id"] == service:
# If icon is defined, use it, otherwise return 404
if "icon" in svc:
# If the icon isn't a URL, try to serve it from the filesystem
if not svc["icon"].startswith("http"):
icon_path = os.path.join("templates/assets/img/services", svc["icon"])
if os.path.isfile(icon_path):
return make_response(
open(icon_path, "rb").read(), 200, {"Content-Type": "image/png"}
)
else:
print(f"Icon file not found for {service} at {icon_path}")
break # Break to return default favicon
# Pull image from URL and return it
try:
req = requests.get(svc["icon"], timeout=5)
if req.status_code == 200:
return make_response(
req.content, 200, {"Content-Type": req.headers["Content-Type"]}
)
except Exception as e:
print(f"Failed to fetch icon for {service}: {e}")
# Read default favicon into memory to allow caching (pickling)
with open("templates/assets/img/favicon.png", "rb") as f:
return make_response(f.read(), 200, {"Content-Type": "image/png"})
return render_template("404.html"), 404
# region Special routes
@app.route("/favicon.png")
def faviconPNG():
return send_from_directory("templates/assets/img", "favicon.png")
@app.route("/.well-known/<path:path>")
def wellknown(path):
# Try to proxy to https://nathan.woodburn.au/.well-known/
req = requests.get(f"https://nathan.woodburn.au/.well-known/{path}")
return make_response(
req.content, 200, {"Content-Type": req.headers["Content-Type"]}
)
# endregion
# region Main routes
@app.route("/")
def index():
# Get current time in the format "dd MMM YYYY hh:mm AM/PM"
current_datetime = datetime.now().strftime("%d %b %Y %I:%M %p")
services = load_services()
user = session.get('user')
return render_template("index.html", datetime=current_datetime, services=services, user=user)
@app.route("/<path:path>")
def catch_all(path: str):
if os.path.isfile("templates/" + path):
return render_template(path)
# Try with .html
if os.path.isfile("templates/" + path + ".html"):
return render_template(path + ".html")
if os.path.isfile("templates/" + path.strip("/") + ".html"):
return render_template(path.strip("/") + ".html")
# Try to find a file matching
if path.count("/") < 1:
# Try to find a file matching
filename = find(path, "templates")
if filename:
return send_file(filename)
return render_template("404.html"), 404
# endregion
# region API routes
api_requests = 0
@app.route("/api/v1/data", methods=["GET"])
def api_data():
"""
Example API endpoint that returns some data.
You can modify this to return whatever data you need.
"""
global api_requests
api_requests += 1
data = {
"header": "Sample API Response",
"content": f"Hello, this is a sample API response! You have called this endpoint {api_requests} times.",
"timestamp": datetime.now().isoformat(),
}
return jsonify(data)
# endregion
# region Error Catching
# 404 catch all
@app.errorhandler(404)
def not_found(e):
return render_template("404.html"), 404
# endregion
# region Auth routes
@app.route('/login')
def login():
redirect_uri = url_for('auth_callback', _external=True)
return oauth.authentik.authorize_redirect(redirect_uri) # type: ignore
@app.route('/auth/callback')
def auth_callback():
token = oauth.authentik.authorize_access_token() # type: ignore
user = token.get('userinfo')
if user:
session['user'] = user
return redirect(url_for('index'))
@app.route('/logout')
def logout():
session.pop('user', None)
return redirect(url_for('index'))
# endregion
# region Error handling
@app.errorhandler(InternalServerError)
def handle_internal_server_error(e: InternalServerError):
return render_template("500.html", message=e.original_exception), 500
# endregion
if __name__ == "__main__":
app.run(debug=True, port=5000, host="127.0.0.1")

91
services.json Normal file
View File

@@ -0,0 +1,91 @@
{
"external": [
{
"id": "nathan_woodburn",
"name": "Nathan.Woodburn/",
"url": "https://nathan.woodburn.au",
"description": "Nathan's Website"
},
{
"id": "git",
"name": "Woodburn Git",
"url": "https://git.woodburn.au",
"description": "Woodburn Git Repository"
},
{
"id": "tools",
"name": "Tools",
"url": "https://tools.woodburn.au",
"description": "Useful Tools and Resources",
"icon": "https://tools.woodburn.au/android-chrome-192x192.png"
},
{
"id": "uptime",
"name": "Uptime",
"url": "https://uptime.woodburn.au",
"description": "Service Status and Uptime Monitoring"
},
{
"id": "podcast",
"name": "WVAC Podcast",
"url": "https://podcast.woodburn.au",
"description": "WVAC Podcast"
},
{
"id": "transfer_sh",
"name": "Transfer.sh",
"url": "https://upload.woodburn.au/",
"description": "File Sharing Service for Command Line",
"icon": "https://upload.woodburn.au/favicon.ico"
}
],
"internal": [
{
"id": "cloud",
"name": "Woodburn Cloud",
"url": "https://cloud.woodburn.au",
"description": "Personal Cloud Storage and File Sharing Service"
},
{
"id": "links",
"name": "Link Shortener",
"url": "https://l.woodburn.au",
"description": "Personal Link Shortening Service for Easy Sharing"
},
{
"id": "bitwarden",
"name": "Bitwarden",
"url": "https://bw.woodburn.au",
"description": "Personal Password Manager (requires invitation)",
"icon": "vaultwarden.png"
},
{
"id": "kitchen_owl",
"name": "Kitchen Owl",
"url": "https://shopping.woodburn.au",
"description": "Personal Grocery List and Meal Planning Service",
"icon": "https://shopping.woodburn.au/icons/Icon-192.png"
},
{
"id": "immich",
"name": "Immich",
"url": "https://immich.woodburn.au",
"description": "Personal Photo and Video Management Service",
"icon": "https://immich.woodburn.au/favicon-144.png"
},
{
"id": "adventure",
"name": "Adventure Log",
"url": "https://adventure.c.woodburn.au",
"description": "Personal Travel and Adventure Log",
"icon": "https://adventure.c.woodburn.au/favicon.png"
},
{
"id": "vpn",
"name": "VPN Service",
"url": "https://vpn.woodburn.au",
"description": "Personal VPN Service for Secure Browsing and Remote Access",
"icon": "https://netbird.io/icon.png"
}
]
}

21
templates/404.html Normal file
View File

@@ -0,0 +1,21 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Nathan.Woodburn/</title>
<link rel="icon" href="/assets/img/favicon.png" type="image/png">
<link rel="stylesheet" href="/assets/css/404.css">
</head>
<body>
<div class="spacer"></div>
<div class="centre">
<h1>404 | Page not found</h1>
<p>Sorry, the page you are looking for does not exist.</p>
<p><a href="/">Go back to the homepage</a></p>
</div>
</body>
</html>

22
templates/500.html Normal file
View File

@@ -0,0 +1,22 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Nathan.Woodburn/</title>
<link rel="icon" href="/assets/img/favicon.png" type="image/png">
<link rel="stylesheet" href="/assets/css/500.css">
</head>
<body>
<div class="spacer"></div>
<div class="centre">
<h1>500 | Internal Server Error</h1>
<p>Sorry, something went wrong on our end.</p>
<p class="code">{{ message }}</p>
<p><a href="/">Go back to the homepage</a></p>
</div>
</body>
</html>

View File

@@ -0,0 +1,20 @@
body {
background-color: #000000;
color: #ffffff;
}
h1 {
font-size: 50px;
margin: 0;
padding: 0;
}
.centre {
margin-top: 10%;
text-align: center;
}
a {
color: #ffffff;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}

View File

@@ -0,0 +1,28 @@
body {
background-color: #000000;
color: #ffffff;
}
h1 {
font-size: 50px;
margin: 0;
padding: 0;
}
.centre {
margin-top: 10%;
text-align: center;
}
a {
color: #ffffff;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
.code {
font-family: "Courier New", Courier, monospace;
background-color: #222222;
padding: 10px;
border-radius: 5px;
display: inline-block;
margin-top: 20px;
}

View File

@@ -0,0 +1,97 @@
body {
background-color: #000000;
color: #ffffff;
}
h1 {
font-size: 50px;
margin: 0;
padding: 0;
}
.centre {
margin-top: max(5%, 50px);
text-align: center;
}
a {
color: #ffffff;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
.services-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 20px;
max-width: 800px;
margin: 20px auto;
padding: 20px;
}
.service-card {
background-color: #222;
padding: 20px;
border-radius: 8px;
text-align: center;
transition: transform 0.2s, background-color 0.2s;
border: 1px solid #333;
display: flex;
flex-direction: column;
align-items: center;
gap: 10px;
}
.service-card:hover {
transform: translateY(-5px);
background-color: #333;
}
.service-icon {
width: 48px;
height: 48px;
object-fit: contain;
margin-bottom: 10px;
}
.service-name {
font-size: 1.2em;
font-weight: bold;
color: #fff;
margin: 0;
}
.service-desc {
font-size: 0.9em;
color: #aaa;
margin: 0;
}
.section-title {
text-align: center;
margin-top: 40px;
color: #888;
text-transform: uppercase;
letter-spacing: 2px;
font-size: 0.9em;
}
.auth-status {
position: absolute;
top: 20px;
right: 20px;
}
.btn {
padding: 8px 16px;
border-radius: 4px;
background-color: #333;
color: white;
border: none;
cursor: pointer;
font-size: 14px;
}
.btn:hover {
background-color: #444;
text-decoration: none;
}

View File

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

53
templates/index.html Normal file
View File

@@ -0,0 +1,53 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Woodburn/</title>
<link rel="icon" href="/assets/img/favicon.png" type="image/png">
<link rel="stylesheet" href="/assets/css/index.css">
</head>
<body>
<div class="auth-status">
{% if user %}
<span>Hello, {{ user.preferred_username | title or user.name or user.email }}</span>
<a href="/logout" class="btn">Logout</a>
{% else %}
<a href="/login" class="btn">Login</a>
{% endif %}
</div>
<div class="centre">
<h1>Woodburn/</h1>
<span>{{ datetime }}</span>
</div>
<div class="container">
<h3 class="section-title">External Services</h3>
<div class="services-grid">
{% for service in services.external %}
<a href="{{ service.url }}" class="service-card" target="_blank">
<img src="/services/external/{{ service.id }}.png" alt="{{ service.name }}" class="service-icon">
<h4 class="service-name">{{ service.name }}</h4>
<p class="service-desc">{{ service.description }}</p>
</a>
{% endfor %}
</div>
{% if user %}
<h3 class="section-title">Internal Services</h3>
<div class="services-grid">
{% for service in services.internal %}
<a href="{{ service.url }}" class="service-card" target="_blank">
<img src="/services/internal/{{ service.id }}.png" alt="{{ service.name }}" class="service-icon">
<h4 class="service-name">{{ service.name }}</h4>
<p class="service-desc">{{ service.description }}</p>
</a>
{% endfor %}
</div>
{% endif %}
</div>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More