diff --git a/LICENSE.md b/LICENSE.md
new file mode 100644
index 0000000..8368966
--- /dev/null
+++ b/LICENSE.md
@@ -0,0 +1,419 @@
+Attribution 4.0 International
+
+=======================================================================
+
+Creative Commons Corporation ("Creative Commons") is not a law firm and
+does not provide legal services or legal advice. Distribution of
+Creative Commons public licenses does not create a lawyer-client or
+other relationship. Creative Commons makes its licenses and related
+information available on an "as-is" basis. Creative Commons gives no
+warranties regarding its licenses, any material licensed under their
+terms and conditions, or any related information. Creative Commons
+disclaims all liability for damages resulting from their use to the
+fullest extent possible.
+
+Using Creative Commons Public Licenses
+
+Creative Commons public licenses provide a standard set of terms and
+conditions that creators and other rights holders may use to share
+original works of authorship and other material subject to copyright
+and certain other rights specified in the public license below. The
+following considerations are for informational purposes only, are not
+exhaustive, and do not form part of our licenses.
+
+ Considerations for licensors: Our public licenses are
+ intended for use by those authorized to give the public
+ permission to use material in ways otherwise restricted by
+ copyright and certain other rights. Our licenses are
+ irrevocable. Licensors should read and understand the terms
+ and conditions of the license they choose before applying it.
+ Licensors should also secure all rights necessary before
+ applying our licenses so that the public can reuse the
+ material as expected. Licensors should clearly mark any
+ material not subject to the license. This includes other CC-
+ licensed material, or material used under an exception or
+ limitation to copyright. More considerations for licensors:
+ wiki.creativecommons.org/Considerations_for_licensors
+
+ Considerations for the public: By using one of our public
+ licenses, a licensor grants the public permission to use the
+ licensed material under specified terms and conditions. If
+ the licensor's permission is not necessary for any reason--for
+ example, because of any applicable exception or limitation to
+ copyright--then that use is not regulated by the license. Our
+ licenses grant only permissions under copyright and certain
+ other rights that a licensor has authority to grant. Use of
+ the licensed material may still be restricted for other
+ reasons, including because others have copyright or other
+ rights in the material. A licensor may make special requests,
+ such as asking that all changes be marked or described.
+ Although not required by our licenses, you are encouraged to
+ respect those requests where reasonable. More considerations
+ for the public:
+ wiki.creativecommons.org/Considerations_for_licensees
+
+=======================================================================
+
+Creative Commons Attribution 4.0 International Public License
+
+By exercising the Licensed Rights (defined below), You accept and agree
+to be bound by the terms and conditions of this Creative Commons
+Attribution 4.0 International Public License ("Public License"). To the
+extent this Public License may be interpreted as a contract, You are
+granted the Licensed Rights in consideration of Your acceptance of
+these terms and conditions, and the Licensor grants You such rights in
+consideration of benefits the Licensor receives from making the
+Licensed Material available under these terms and conditions.
+
+
+Section 1 -- Definitions.
+
+ a. Adapted Material means material subject to Copyright and Similar
+ Rights that is derived from or based upon the Licensed Material
+ and in which the Licensed Material is translated, altered,
+ arranged, transformed, or otherwise modified in a manner requiring
+ permission under the Copyright and Similar Rights held by the
+ Licensor. For purposes of this Public License, where the Licensed
+ Material is a musical work, performance, or sound recording,
+ Adapted Material is always produced where the Licensed Material is
+ synched in timed relation with a moving image.
+
+ b. Adapter's License means the license You apply to Your Copyright
+ and Similar Rights in Your contributions to Adapted Material in
+ accordance with the terms and conditions of this Public License.
+
+ c. Copyright and Similar Rights means copyright and/or similar rights
+ closely related to copyright including, without limitation,
+ performance, broadcast, sound recording, and Sui Generis Database
+ Rights, without regard to how the rights are labeled or
+ categorized. For purposes of this Public License, the rights
+ specified in Section 2(b)(1)-(2) are not Copyright and Similar
+ Rights.
+
+ d. Effective Technological Measures means those measures that, in the
+ absence of proper authority, may not be circumvented under laws
+ fulfilling obligations under Article 11 of the WIPO Copyright
+ Treaty adopted on December 20, 1996, and/or similar international
+ agreements.
+
+ e. Exceptions and Limitations means fair use, fair dealing, and/or
+ any other exception or limitation to Copyright and Similar Rights
+ that applies to Your use of the Licensed Material.
+
+ f. Licensed Material means the artistic or literary work, database,
+ or other material to which the Licensor applied this Public
+ License.
+
+ g. Licensed Rights means the rights granted to You subject to the
+ terms and conditions of this Public License, which are limited to
+ all Copyright and Similar Rights that apply to Your use of the
+ Licensed Material and that the Licensor has authority to license.
+
+ h. Licensor means the individual(s) or entity(ies) granting rights
+ under this Public License.
+
+ i. Share means to provide material to the public by any means or
+ process that requires permission under the Licensed Rights, such
+ as reproduction, public display, public performance, distribution,
+ dissemination, communication, or importation, and to make material
+ available to the public including in ways that members of the
+ public may access the material from a place and at a time
+ individually chosen by them.
+
+ j. Sui Generis Database Rights means rights other than copyright
+ resulting from Directive 96/9/EC of the European Parliament and of
+ the Council of 11 March 1996 on the legal protection of databases,
+ as amended and/or succeeded, as well as other essentially
+ equivalent rights anywhere in the world.
+
+ k. You means the individual or entity exercising the Licensed Rights
+ under this Public License. Your has a corresponding meaning.
+
+
+Section 2 -- Scope.
+
+ a. License grant.
+
+ 1. Subject to the terms and conditions of this Public License,
+ the Licensor hereby grants You a worldwide, royalty-free,
+ non-sublicensable, non-exclusive, irrevocable license to
+ exercise the Licensed Rights in the Licensed Material to:
+
+ a. reproduce and Share the Licensed Material, in whole or
+ in part; and
+
+ b. produce, reproduce, and Share Adapted Material.
+
+ 2. Exceptions and Limitations. For the avoidance of doubt, where
+ Exceptions and Limitations apply to Your use, this Public
+ License does not apply, and You do not need to comply with
+ its terms and conditions.
+
+ 3. Term. The term of this Public License is specified in Section
+ 6(a).
+
+ 4. Media and formats; technical modifications allowed. The
+ Licensor authorizes You to exercise the Licensed Rights in
+ all media and formats whether now known or hereafter created,
+ and to make technical modifications necessary to do so. The
+ Licensor waives and/or agrees not to assert any right or
+ authority to forbid You from making technical modifications
+ necessary to exercise the Licensed Rights, including
+ technical modifications necessary to circumvent Effective
+ Technological Measures. For purposes of this Public License,
+ simply making modifications authorized by this Section 2(a)
+ (4) never produces Adapted Material.
+
+ 5. Downstream recipients.
+
+ a. Offer from the Licensor -- Licensed Material. Every
+ recipient of the Licensed Material automatically
+ receives an offer from the Licensor to exercise the
+ Licensed Rights under the terms and conditions of this
+ Public License.
+
+ b. No downstream restrictions. You may not offer or impose
+ any additional or different terms or conditions on, or
+ apply any Effective Technological Measures to, the
+ Licensed Material if doing so restricts exercise of the
+ Licensed Rights by any recipient of the Licensed
+ Material.
+
+ 6. No endorsement. Nothing in this Public License constitutes or
+ may be construed as permission to assert or imply that You
+ are, or that Your use of the Licensed Material is, connected
+ with, or sponsored, endorsed, or granted official status by,
+ the Licensor or others designated to receive attribution as
+ provided in Section 3(a)(1)(A)(i).
+
+ b. Other rights.
+
+ 1. Moral rights, such as the right of integrity, are not
+ licensed under this Public License, nor are publicity,
+ privacy, and/or other similar personality rights; however, to
+ the extent possible, the Licensor waives and/or agrees not to
+ assert any such rights held by the Licensor to the limited
+ extent necessary to allow You to exercise the Licensed
+ Rights, but not otherwise.
+
+ 2. Patent and trademark rights are not licensed under this
+ Public License.
+
+ 3. To the extent possible, the Licensor waives any right to
+ collect royalties from You for the exercise of the Licensed
+ Rights, whether directly or through a collecting society
+ under any voluntary or waivable statutory or compulsory
+ licensing scheme. In all other cases the Licensor expressly
+ reserves any right to collect such royalties.
+
+
+Section 3 -- License Conditions.
+
+Your exercise of the Licensed Rights is expressly made subject to the
+following conditions.
+
+ a. Attribution.
+
+ 1. If You Share the Licensed Material (including in modified
+ form), You must:
+
+ a. retain the following if it is supplied by the Licensor
+ with the Licensed Material:
+
+ i. identification of the creator(s) of the Licensed
+ Material and any others designated to receive
+ attribution, in any reasonable manner requested by
+ the Licensor (including by pseudonym if
+ designated);
+
+ ii. a copyright notice;
+
+ iii. a notice that refers to this Public License;
+
+ iv. a notice that refers to the disclaimer of
+ warranties;
+
+ v. a URI or hyperlink to the Licensed Material to the
+ extent reasonably practicable;
+
+ b. indicate if You modified the Licensed Material and
+ retain an indication of any previous modifications; and
+
+ c. indicate the Licensed Material is licensed under this
+ Public License, and include the text of, or the URI or
+ hyperlink to, this Public License.
+
+ 2. You may satisfy the conditions in Section 3(a)(1) in any
+ reasonable manner based on the medium, means, and context in
+ which You Share the Licensed Material. For example, it may be
+ reasonable to satisfy the conditions by providing a URI or
+ hyperlink to a resource that includes the required
+ information.
+
+ 3. If requested by the Licensor, You must remove any of the
+ information required by Section 3(a)(1)(A) to the extent
+ reasonably practicable.
+
+ 4. If You Share Adapted Material You produce, the Adapter's
+ License You apply must not prevent recipients of the Adapted
+ Material from complying with this Public License.
+
+
+Section 4 -- Sui Generis Database Rights.
+
+Where the Licensed Rights include Sui Generis Database Rights that
+apply to Your use of the Licensed Material:
+
+ a. for the avoidance of doubt, Section 2(a)(1) grants You the right
+ to extract, reuse, reproduce, and Share all or a substantial
+ portion of the contents of the database;
+
+ b. if You include all or a substantial portion of the database
+ contents in a database in which You have Sui Generis Database
+ Rights, then the database in which You have Sui Generis Database
+ Rights (but not its individual contents) is Adapted Material; and
+
+ c. You must comply with the conditions in Section 3(a) if You Share
+ all or a substantial portion of the contents of the database.
+
+For the avoidance of doubt, this Section 4 supplements and does not
+replace Your obligations under this Public License where the Licensed
+Rights include other Copyright and Similar Rights.
+
+
+Section 5 -- Disclaimer of Warranties and Limitation of Liability.
+
+ a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
+ EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
+ AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
+ ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
+ IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
+ WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
+ PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
+ ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
+ KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
+ ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
+
+ b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
+ TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
+ NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
+ INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
+ COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
+ USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
+ ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
+ DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
+ IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
+
+ c. The disclaimer of warranties and limitation of liability provided
+ above shall be interpreted in a manner that, to the extent
+ possible, most closely approximates an absolute disclaimer and
+ waiver of all liability.
+
+
+Section 6 -- Term and Termination.
+
+ a. This Public License applies for the term of the Copyright and
+ Similar Rights licensed here. However, if You fail to comply with
+ this Public License, then Your rights under this Public License
+ terminate automatically.
+
+ b. Where Your right to use the Licensed Material has terminated under
+ Section 6(a), it reinstates:
+
+ 1. automatically as of the date the violation is cured, provided
+ it is cured within 30 days of Your discovery of the
+ violation; or
+
+ 2. upon express reinstatement by the Licensor.
+
+ For the avoidance of doubt, this Section 6(b) does not affect any
+ right the Licensor may have to seek remedies for Your violations
+ of this Public License.
+
+ c. For the avoidance of doubt, the Licensor may also offer the
+ Licensed Material under separate terms or conditions or stop
+ distributing the Licensed Material at any time; however, doing so
+ will not terminate this Public License.
+
+ d. Sections 1, 5, 6, 7, and 8 survive termination of this Public
+ License.
+
+
+Section 7 -- Other Terms and Conditions.
+
+ a. The Licensor shall not be bound by any additional or different
+ terms or conditions communicated by You unless expressly agreed.
+
+ b. Any arrangements, understandings, or agreements regarding the
+ Licensed Material not stated herein are separate from and
+ independent of the terms and conditions of this Public License.
+
+
+Section 8 -- Interpretation.
+
+ a. For the avoidance of doubt, this Public License does not, and
+ shall not be interpreted to, reduce, limit, restrict, or impose
+ conditions on any use of the Licensed Material that could lawfully
+ be made without permission under this Public License.
+
+ b. To the extent possible, if any provision of this Public License is
+ deemed unenforceable, it shall be automatically reformed to the
+ minimum extent necessary to make it enforceable. If the provision
+ cannot be reformed, it shall be severed from this Public License
+ without affecting the enforceability of the remaining terms and
+ conditions.
+
+ c. No term or condition of this Public License will be waived and no
+ failure to comply consented to unless expressly agreed to by the
+ Licensor.
+
+ d. Nothing in this Public License constitutes or may be interpreted
+ as a limitation upon, or waiver of, any privileges and immunities
+ that apply to the Licensor or You, including from the legal
+ processes of any jurisdiction or authority.
+
+
+=======================================================================
+
+Creative Commons is not a party to its public
+licenses. Notwithstanding, Creative Commons may elect to apply one of
+its public licenses to material it publishes and in those instances
+will be considered the “Licensor.” The text of the Creative Commons
+public licenses is dedicated to the public domain under the CC0 Public
+Domain Dedication. Except for the limited purpose of indicating that
+material is shared under a Creative Commons public license or as
+otherwise permitted by the Creative Commons policies published at
+creativecommons.org/policies, Creative Commons does not authorize the
+use of the trademark "Creative Commons" or any other trademark or logo
+of Creative Commons without its prior written consent including,
+without limitation, in connection with any unauthorized modifications
+to any of its public licenses or any other arrangements,
+understandings, or agreements concerning use of licensed material. For
+the avoidance of doubt, this paragraph does not form part of the
+public licenses.
+
+Creative Commons may be contacted at creativecommons.org.
+
+---
+
+# MIT License
+
+Copyright (c) 2019 Noam Ross
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/archetypes/default.md b/archetypes/default.md
new file mode 100644
index 0000000..ac36e06
--- /dev/null
+++ b/archetypes/default.md
@@ -0,0 +1,2 @@
++++
++++
diff --git a/layouts/404.html b/layouts/404.html
new file mode 100755
index 0000000..bfd4c10
--- /dev/null
+++ b/layouts/404.html
@@ -0,0 +1,37 @@
+{{ $asset_base := .Site.BaseURL }}
+{{ if ne (getenv "HUGO_ASSET_BASEURL") "" }}
+ {{ $asset_base = (getenv "HUGO_ASSET_BASEURL") }}
+{{ end }}
+
+
+{{ partial "head.html" . }}
+
+ {{ partial "navbar.html" . }}
+
+
+
+
Click on icons for more information.
+
+
+
+
+
+
+
+
+
+
Education
+
+ {{ range sort .Site.Data.education "date" "desc" }}
+
+ {{ .title }}, {{ .department}} {{ dateFormat "2006" .date }}
+ {{ .university }} {{ .location }}
+
+ {{ end }}
+
+
+
Professional Experience
+
+ {{ range sort .Site.Data.employment "start_date" "desc" }}
+
+
+ {{ .title }} {{ dateFormat "2006" .start_date }}-{{ if .end_date }}{{ dateFormat "2006" .end_date }}{{ end }}
+ {{ .organization }} {{ .location }}
+
+ {{ end }}
+
+
+
Selected Software Packages
+
+ {{ range .Site.Data.software }}
+ {{ partial "work.html" .}}
+ {{ end }}
+
+
+
Courses and Workshops
+
+ {{ range sort .Site.Data.courses "date" "desc" }}
+ {{ partial "work.html" .}}
+ {{ end }}
+
+
+
Presentations
+
+ {{ range sort .Site.Data.presentations "date" "desc" }}
+ {{ partial "work.html" .}}
+ {{ end }}
+
+
+
+
+
Publications
+
+ {{ range sort .Site.Data.papers "date" "desc" }}
+ {{ partial "work.html" .}}
+ {{ end }}
+
+
+
+
+
+
+
+ {{ partial "footer.html" . }}
+
+
+
+
diff --git a/layouts/shortcodes/asseturl.html b/layouts/shortcodes/asseturl.html
new file mode 100644
index 0000000..c055ba9
--- /dev/null
+++ b/layouts/shortcodes/asseturl.html
@@ -0,0 +1 @@
+{{ $asset_base := .Site.BaseURL }}{{ if ne (getenv "HUGO_ASSET_BASEURL") "" }}{{ $asset_base = (getenv "HUGO_ASSET_BASEURL") }}{{ end }}{{ $asset_base }}
\ No newline at end of file
diff --git a/layouts/shortcodes/baseurl.html b/layouts/shortcodes/baseurl.html
new file mode 100644
index 0000000..b9d49ea
--- /dev/null
+++ b/layouts/shortcodes/baseurl.html
@@ -0,0 +1 @@
+{{ .Site.BaseURL }}
\ No newline at end of file
diff --git a/layouts/shortcodes/drop.html b/layouts/shortcodes/drop.html
new file mode 100644
index 0000000..e15bb57
--- /dev/null
+++ b/layouts/shortcodes/drop.html
@@ -0,0 +1,5 @@
+
+
+{{ .Inner | markdownify }}
+
+
\ No newline at end of file
diff --git a/layouts/shortcodes/mn.html b/layouts/shortcodes/mn.html
new file mode 100755
index 0000000..9380a69
--- /dev/null
+++ b/layouts/shortcodes/mn.html
@@ -0,0 +1,4 @@
+{{ $uid := now.UnixNano }}
+
⊕
+
+
{{ .Inner }}
diff --git a/layouts/shortcodes/sn.html b/layouts/shortcodes/sn.html
new file mode 100755
index 0000000..2ee18b6
--- /dev/null
+++ b/layouts/shortcodes/sn.html
@@ -0,0 +1,4 @@
+{{ $uid := now.UnixNano }}
+
+
+
{{ .Inner }}
diff --git a/layouts/shortcodes/tweet.html b/layouts/shortcodes/tweet.html
new file mode 100755
index 0000000..e9ab131
--- /dev/null
+++ b/layouts/shortcodes/tweet.html
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/static/.htaccess b/static/.htaccess
new file mode 100644
index 0000000..b61df8f
--- /dev/null
+++ b/static/.htaccess
@@ -0,0 +1,21 @@
+BrowserMatchNoCase "mj12bot" bots Order Allow,Deny Allow from ALL Deny from env=bots
+
+ErrorDocument 404 /404.html
+
+RewriteEngine on
+
+RewriteRule ^about\.html / [L,R=301]
+RewriteRule ^publications.html /vitae/ [L,R=301]
+RewriteRule ^connect.html /#connect [L,R=301]
+RewriteRule ^tags.html /musings/ [L,R=301]
+RewriteRule ^davis-r-users-group.html https://d-rug.github.io [L,R=301]
+
+RewriteRule ^blog/rss.xml /index.xml [L,R=301]
+RewriteRule ^blog/R\.xml /categories/r/index.xml [L,R=301]
+RewriteRule ^blog/(\w+)\.xml /tags/$1/index.xml [L,R=301]
+
+RewriteRule ^blog/(.*)--(.*)$ /blog/$1-$2 [N]
+RewriteRule ^blog/(\d+)/(\d)/(\d)/([^\.]*)\.html /archives/$1-0$2-0$3-$4/ [L,R=301]
+RewriteRule ^blog/(\d+)/(\d)/(\d+)/([^\.]*)\.html /archives/$1-0$2-$3-$4/ [L,R=301]
+RewriteRule ^blog/(\d+)/(\d+)/(\d)/([^\.]*)\.html /archives/$1-$2-0$3-$4/ [L,R=301]
+RewriteRule ^blog/(\d+)/(\d+)/(\d+)/([^\.]*)\.html /archives/$1-$2-$3-$4/ [L,R=301]
diff --git a/static/assets/android-chrome-192x192.png b/static/assets/android-chrome-192x192.png
new file mode 100644
index 0000000..8d76570
Binary files /dev/null and b/static/assets/android-chrome-192x192.png differ
diff --git a/static/assets/android-chrome-512x512.png b/static/assets/android-chrome-512x512.png
new file mode 100644
index 0000000..14a9c6a
Binary files /dev/null and b/static/assets/android-chrome-512x512.png differ
diff --git a/static/assets/apple-touch-icon.png b/static/assets/apple-touch-icon.png
new file mode 100644
index 0000000..ba85c6a
Binary files /dev/null and b/static/assets/apple-touch-icon.png differ
diff --git a/static/assets/awicons/browser/abilon.png b/static/assets/awicons/browser/abilon.png
new file mode 100644
index 0000000..0581c91
Binary files /dev/null and b/static/assets/awicons/browser/abilon.png differ
diff --git a/static/assets/awicons/browser/adobe.png b/static/assets/awicons/browser/adobe.png
new file mode 100644
index 0000000..0830fac
Binary files /dev/null and b/static/assets/awicons/browser/adobe.png differ
diff --git a/static/assets/awicons/browser/akregator.png b/static/assets/awicons/browser/akregator.png
new file mode 100644
index 0000000..aa321e9
Binary files /dev/null and b/static/assets/awicons/browser/akregator.png differ
diff --git a/static/assets/awicons/browser/alcatel.png b/static/assets/awicons/browser/alcatel.png
new file mode 100644
index 0000000..706f61d
Binary files /dev/null and b/static/assets/awicons/browser/alcatel.png differ
diff --git a/static/assets/awicons/browser/amaya.png b/static/assets/awicons/browser/amaya.png
new file mode 100644
index 0000000..4bfb97d
Binary files /dev/null and b/static/assets/awicons/browser/amaya.png differ
diff --git a/static/assets/awicons/browser/amigavoyager.png b/static/assets/awicons/browser/amigavoyager.png
new file mode 100644
index 0000000..eef57d5
Binary files /dev/null and b/static/assets/awicons/browser/amigavoyager.png differ
diff --git a/static/assets/awicons/browser/analogx.png b/static/assets/awicons/browser/analogx.png
new file mode 100644
index 0000000..654d581
Binary files /dev/null and b/static/assets/awicons/browser/analogx.png differ
diff --git a/static/assets/awicons/browser/android.png b/static/assets/awicons/browser/android.png
new file mode 100644
index 0000000..d12f8cb
Binary files /dev/null and b/static/assets/awicons/browser/android.png differ
diff --git a/static/assets/awicons/browser/apt.png b/static/assets/awicons/browser/apt.png
new file mode 100644
index 0000000..29a66ed
Binary files /dev/null and b/static/assets/awicons/browser/apt.png differ
diff --git a/static/assets/awicons/browser/avant.png b/static/assets/awicons/browser/avant.png
new file mode 100644
index 0000000..1143e9f
Binary files /dev/null and b/static/assets/awicons/browser/avant.png differ
diff --git a/static/assets/awicons/browser/aweb.png b/static/assets/awicons/browser/aweb.png
new file mode 100644
index 0000000..cf50596
Binary files /dev/null and b/static/assets/awicons/browser/aweb.png differ
diff --git a/static/assets/awicons/browser/bpftp.png b/static/assets/awicons/browser/bpftp.png
new file mode 100644
index 0000000..3ab2cae
Binary files /dev/null and b/static/assets/awicons/browser/bpftp.png differ
diff --git a/static/assets/awicons/browser/bytel.png b/static/assets/awicons/browser/bytel.png
new file mode 100644
index 0000000..078fc8e
Binary files /dev/null and b/static/assets/awicons/browser/bytel.png differ
diff --git a/static/assets/awicons/browser/chimera.png b/static/assets/awicons/browser/chimera.png
new file mode 100644
index 0000000..c93232f
Binary files /dev/null and b/static/assets/awicons/browser/chimera.png differ
diff --git a/static/assets/awicons/browser/chrome.png b/static/assets/awicons/browser/chrome.png
new file mode 100644
index 0000000..84dc2de
Binary files /dev/null and b/static/assets/awicons/browser/chrome.png differ
diff --git a/static/assets/awicons/browser/cyberdog.png b/static/assets/awicons/browser/cyberdog.png
new file mode 100644
index 0000000..b94533a
Binary files /dev/null and b/static/assets/awicons/browser/cyberdog.png differ
diff --git a/static/assets/awicons/browser/da.png b/static/assets/awicons/browser/da.png
new file mode 100644
index 0000000..e4fa7bf
Binary files /dev/null and b/static/assets/awicons/browser/da.png differ
diff --git a/static/assets/awicons/browser/dillo.png b/static/assets/awicons/browser/dillo.png
new file mode 100644
index 0000000..ba666da
Binary files /dev/null and b/static/assets/awicons/browser/dillo.png differ
diff --git a/static/assets/awicons/browser/doris.png b/static/assets/awicons/browser/doris.png
new file mode 100644
index 0000000..ace3c9b
Binary files /dev/null and b/static/assets/awicons/browser/doris.png differ
diff --git a/static/assets/awicons/browser/dreamcast.png b/static/assets/awicons/browser/dreamcast.png
new file mode 100644
index 0000000..409d0dd
Binary files /dev/null and b/static/assets/awicons/browser/dreamcast.png differ
diff --git a/static/assets/awicons/browser/ecatch.png b/static/assets/awicons/browser/ecatch.png
new file mode 100644
index 0000000..9c85e2c
Binary files /dev/null and b/static/assets/awicons/browser/ecatch.png differ
diff --git a/static/assets/awicons/browser/edge.png b/static/assets/awicons/browser/edge.png
new file mode 100644
index 0000000..5b82524
Binary files /dev/null and b/static/assets/awicons/browser/edge.png differ
diff --git a/static/assets/awicons/browser/encompass.png b/static/assets/awicons/browser/encompass.png
new file mode 100644
index 0000000..e9277cc
Binary files /dev/null and b/static/assets/awicons/browser/encompass.png differ
diff --git a/static/assets/awicons/browser/epiphany.png b/static/assets/awicons/browser/epiphany.png
new file mode 100644
index 0000000..dc87718
Binary files /dev/null and b/static/assets/awicons/browser/epiphany.png differ
diff --git a/static/assets/awicons/browser/ericsson.png b/static/assets/awicons/browser/ericsson.png
new file mode 100644
index 0000000..8c182c5
Binary files /dev/null and b/static/assets/awicons/browser/ericsson.png differ
diff --git a/static/assets/awicons/browser/feeddemon.png b/static/assets/awicons/browser/feeddemon.png
new file mode 100644
index 0000000..a840200
Binary files /dev/null and b/static/assets/awicons/browser/feeddemon.png differ
diff --git a/static/assets/awicons/browser/feedreader.png b/static/assets/awicons/browser/feedreader.png
new file mode 100644
index 0000000..72928c6
Binary files /dev/null and b/static/assets/awicons/browser/feedreader.png differ
diff --git a/static/assets/awicons/browser/firefox.png b/static/assets/awicons/browser/firefox.png
new file mode 100644
index 0000000..eb55e7e
Binary files /dev/null and b/static/assets/awicons/browser/firefox.png differ
diff --git a/static/assets/awicons/browser/flashget.png b/static/assets/awicons/browser/flashget.png
new file mode 100644
index 0000000..ce099d1
Binary files /dev/null and b/static/assets/awicons/browser/flashget.png differ
diff --git a/static/assets/awicons/browser/flock.png b/static/assets/awicons/browser/flock.png
new file mode 100644
index 0000000..4247ba9
Binary files /dev/null and b/static/assets/awicons/browser/flock.png differ
diff --git a/static/assets/awicons/browser/fpexpress.png b/static/assets/awicons/browser/fpexpress.png
new file mode 100644
index 0000000..2111c71
Binary files /dev/null and b/static/assets/awicons/browser/fpexpress.png differ
diff --git a/static/assets/awicons/browser/fresco.png b/static/assets/awicons/browser/fresco.png
new file mode 100644
index 0000000..3321eba
Binary files /dev/null and b/static/assets/awicons/browser/fresco.png differ
diff --git a/static/assets/awicons/browser/freshdownload.png b/static/assets/awicons/browser/freshdownload.png
new file mode 100644
index 0000000..b06cb88
Binary files /dev/null and b/static/assets/awicons/browser/freshdownload.png differ
diff --git a/static/assets/awicons/browser/frontpage.png b/static/assets/awicons/browser/frontpage.png
new file mode 100644
index 0000000..fdb3212
Binary files /dev/null and b/static/assets/awicons/browser/frontpage.png differ
diff --git a/static/assets/awicons/browser/galeon.png b/static/assets/awicons/browser/galeon.png
new file mode 100644
index 0000000..92d0a22
Binary files /dev/null and b/static/assets/awicons/browser/galeon.png differ
diff --git a/static/assets/awicons/browser/getright.png b/static/assets/awicons/browser/getright.png
new file mode 100644
index 0000000..cb70df8
Binary files /dev/null and b/static/assets/awicons/browser/getright.png differ
diff --git a/static/assets/awicons/browser/gnome.png b/static/assets/awicons/browser/gnome.png
new file mode 100644
index 0000000..0b388b6
Binary files /dev/null and b/static/assets/awicons/browser/gnome.png differ
diff --git a/static/assets/awicons/browser/gnus.png b/static/assets/awicons/browser/gnus.png
new file mode 100644
index 0000000..ddb59a7
Binary files /dev/null and b/static/assets/awicons/browser/gnus.png differ
diff --git a/static/assets/awicons/browser/gozilla.png b/static/assets/awicons/browser/gozilla.png
new file mode 100644
index 0000000..eb1578e
Binary files /dev/null and b/static/assets/awicons/browser/gozilla.png differ
diff --git a/static/assets/awicons/browser/hotjava.png b/static/assets/awicons/browser/hotjava.png
new file mode 100644
index 0000000..6bd83da
Binary files /dev/null and b/static/assets/awicons/browser/hotjava.png differ
diff --git a/static/assets/awicons/browser/httrack.png b/static/assets/awicons/browser/httrack.png
new file mode 100644
index 0000000..7559701
Binary files /dev/null and b/static/assets/awicons/browser/httrack.png differ
diff --git a/static/assets/awicons/browser/ibrowse.png b/static/assets/awicons/browser/ibrowse.png
new file mode 100644
index 0000000..8ecac94
Binary files /dev/null and b/static/assets/awicons/browser/ibrowse.png differ
diff --git a/static/assets/awicons/browser/icab.png b/static/assets/awicons/browser/icab.png
new file mode 100644
index 0000000..c30ade7
Binary files /dev/null and b/static/assets/awicons/browser/icab.png differ
diff --git a/static/assets/awicons/browser/icecat.png b/static/assets/awicons/browser/icecat.png
new file mode 100644
index 0000000..c3bd099
Binary files /dev/null and b/static/assets/awicons/browser/icecat.png differ
diff --git a/static/assets/awicons/browser/iceweasel.png b/static/assets/awicons/browser/iceweasel.png
new file mode 100644
index 0000000..90f3881
Binary files /dev/null and b/static/assets/awicons/browser/iceweasel.png differ
diff --git a/static/assets/awicons/browser/java.png b/static/assets/awicons/browser/java.png
new file mode 100644
index 0000000..5d9ce9f
Binary files /dev/null and b/static/assets/awicons/browser/java.png differ
diff --git a/static/assets/awicons/browser/jetbrains_omea.png b/static/assets/awicons/browser/jetbrains_omea.png
new file mode 100644
index 0000000..81f2418
Binary files /dev/null and b/static/assets/awicons/browser/jetbrains_omea.png differ
diff --git a/static/assets/awicons/browser/kmeleon.png b/static/assets/awicons/browser/kmeleon.png
new file mode 100644
index 0000000..a787f6c
Binary files /dev/null and b/static/assets/awicons/browser/kmeleon.png differ
diff --git a/static/assets/awicons/browser/konqueror.png b/static/assets/awicons/browser/konqueror.png
new file mode 100644
index 0000000..3fb315d
Binary files /dev/null and b/static/assets/awicons/browser/konqueror.png differ
diff --git a/static/assets/awicons/browser/leechget.png b/static/assets/awicons/browser/leechget.png
new file mode 100644
index 0000000..76b752d
Binary files /dev/null and b/static/assets/awicons/browser/leechget.png differ
diff --git a/static/assets/awicons/browser/lg.png b/static/assets/awicons/browser/lg.png
new file mode 100644
index 0000000..c009af4
Binary files /dev/null and b/static/assets/awicons/browser/lg.png differ
diff --git a/static/assets/awicons/browser/lotusnotes.png b/static/assets/awicons/browser/lotusnotes.png
new file mode 100644
index 0000000..31ce8ff
Binary files /dev/null and b/static/assets/awicons/browser/lotusnotes.png differ
diff --git a/static/assets/awicons/browser/lynx.png b/static/assets/awicons/browser/lynx.png
new file mode 100644
index 0000000..4d98861
Binary files /dev/null and b/static/assets/awicons/browser/lynx.png differ
diff --git a/static/assets/awicons/browser/macweb.png b/static/assets/awicons/browser/macweb.png
new file mode 100644
index 0000000..8f4322a
Binary files /dev/null and b/static/assets/awicons/browser/macweb.png differ
diff --git a/static/assets/awicons/browser/mediaplayer.png b/static/assets/awicons/browser/mediaplayer.png
new file mode 100644
index 0000000..0536ebf
Binary files /dev/null and b/static/assets/awicons/browser/mediaplayer.png differ
diff --git a/static/assets/awicons/browser/motorola.png b/static/assets/awicons/browser/motorola.png
new file mode 100644
index 0000000..72604c9
Binary files /dev/null and b/static/assets/awicons/browser/motorola.png differ
diff --git a/static/assets/awicons/browser/mozilla.png b/static/assets/awicons/browser/mozilla.png
new file mode 100644
index 0000000..6008a31
Binary files /dev/null and b/static/assets/awicons/browser/mozilla.png differ
diff --git a/static/assets/awicons/browser/mplayer.png b/static/assets/awicons/browser/mplayer.png
new file mode 100644
index 0000000..1eb7839
Binary files /dev/null and b/static/assets/awicons/browser/mplayer.png differ
diff --git a/static/assets/awicons/browser/msie.png b/static/assets/awicons/browser/msie.png
new file mode 100644
index 0000000..6dbe4d0
Binary files /dev/null and b/static/assets/awicons/browser/msie.png differ
diff --git a/static/assets/awicons/browser/msie_large.png b/static/assets/awicons/browser/msie_large.png
new file mode 100644
index 0000000..0ff2362
Binary files /dev/null and b/static/assets/awicons/browser/msie_large.png differ
diff --git a/static/assets/awicons/browser/multizilla.png b/static/assets/awicons/browser/multizilla.png
new file mode 100644
index 0000000..22f26b1
Binary files /dev/null and b/static/assets/awicons/browser/multizilla.png differ
diff --git a/static/assets/awicons/browser/ncsa_mosaic.png b/static/assets/awicons/browser/ncsa_mosaic.png
new file mode 100644
index 0000000..0236f08
Binary files /dev/null and b/static/assets/awicons/browser/ncsa_mosaic.png differ
diff --git a/static/assets/awicons/browser/neon.png b/static/assets/awicons/browser/neon.png
new file mode 100644
index 0000000..d404c26
Binary files /dev/null and b/static/assets/awicons/browser/neon.png differ
diff --git a/static/assets/awicons/browser/netnewswire.png b/static/assets/awicons/browser/netnewswire.png
new file mode 100644
index 0000000..ed465f0
Binary files /dev/null and b/static/assets/awicons/browser/netnewswire.png differ
diff --git a/static/assets/awicons/browser/netpositive.png b/static/assets/awicons/browser/netpositive.png
new file mode 100644
index 0000000..9c53455
Binary files /dev/null and b/static/assets/awicons/browser/netpositive.png differ
diff --git a/static/assets/awicons/browser/netscape.png b/static/assets/awicons/browser/netscape.png
new file mode 100644
index 0000000..7c9921e
Binary files /dev/null and b/static/assets/awicons/browser/netscape.png differ
diff --git a/static/assets/awicons/browser/netscape_large.png b/static/assets/awicons/browser/netscape_large.png
new file mode 100644
index 0000000..7bd913a
Binary files /dev/null and b/static/assets/awicons/browser/netscape_large.png differ
diff --git a/static/assets/awicons/browser/netshow.png b/static/assets/awicons/browser/netshow.png
new file mode 100644
index 0000000..8abaacf
Binary files /dev/null and b/static/assets/awicons/browser/netshow.png differ
diff --git a/static/assets/awicons/browser/newsfire.png b/static/assets/awicons/browser/newsfire.png
new file mode 100644
index 0000000..9d180b1
Binary files /dev/null and b/static/assets/awicons/browser/newsfire.png differ
diff --git a/static/assets/awicons/browser/newsgator.png b/static/assets/awicons/browser/newsgator.png
new file mode 100644
index 0000000..51e24fe
Binary files /dev/null and b/static/assets/awicons/browser/newsgator.png differ
diff --git a/static/assets/awicons/browser/newzcrawler.png b/static/assets/awicons/browser/newzcrawler.png
new file mode 100644
index 0000000..dc9b222
Binary files /dev/null and b/static/assets/awicons/browser/newzcrawler.png differ
diff --git a/static/assets/awicons/browser/nokia.png b/static/assets/awicons/browser/nokia.png
new file mode 100644
index 0000000..3147b98
Binary files /dev/null and b/static/assets/awicons/browser/nokia.png differ
diff --git a/static/assets/awicons/browser/notavailable.png b/static/assets/awicons/browser/notavailable.png
new file mode 100644
index 0000000..05ff318
Binary files /dev/null and b/static/assets/awicons/browser/notavailable.png differ
diff --git a/static/assets/awicons/browser/omniweb.png b/static/assets/awicons/browser/omniweb.png
new file mode 100644
index 0000000..6f07f16
Binary files /dev/null and b/static/assets/awicons/browser/omniweb.png differ
diff --git a/static/assets/awicons/browser/opera.png b/static/assets/awicons/browser/opera.png
new file mode 100644
index 0000000..9b70988
Binary files /dev/null and b/static/assets/awicons/browser/opera.png differ
diff --git a/static/assets/awicons/browser/panasonic.png b/static/assets/awicons/browser/panasonic.png
new file mode 100644
index 0000000..329958b
Binary files /dev/null and b/static/assets/awicons/browser/panasonic.png differ
diff --git a/static/assets/awicons/browser/pdaphone.png b/static/assets/awicons/browser/pdaphone.png
new file mode 100644
index 0000000..4f4f68d
Binary files /dev/null and b/static/assets/awicons/browser/pdaphone.png differ
diff --git a/static/assets/awicons/browser/philips.png b/static/assets/awicons/browser/philips.png
new file mode 100644
index 0000000..3f57816
Binary files /dev/null and b/static/assets/awicons/browser/philips.png differ
diff --git a/static/assets/awicons/browser/phoenix.png b/static/assets/awicons/browser/phoenix.png
new file mode 100644
index 0000000..d133ef2
Binary files /dev/null and b/static/assets/awicons/browser/phoenix.png differ
diff --git a/static/assets/awicons/browser/pluck.png b/static/assets/awicons/browser/pluck.png
new file mode 100644
index 0000000..ef37504
Binary files /dev/null and b/static/assets/awicons/browser/pluck.png differ
diff --git a/static/assets/awicons/browser/pulpfiction.png b/static/assets/awicons/browser/pulpfiction.png
new file mode 100644
index 0000000..b915740
Binary files /dev/null and b/static/assets/awicons/browser/pulpfiction.png differ
diff --git a/static/assets/awicons/browser/real.png b/static/assets/awicons/browser/real.png
new file mode 100644
index 0000000..9ca3fbf
Binary files /dev/null and b/static/assets/awicons/browser/real.png differ
diff --git a/static/assets/awicons/browser/rss.png b/static/assets/awicons/browser/rss.png
new file mode 100644
index 0000000..7a139ea
Binary files /dev/null and b/static/assets/awicons/browser/rss.png differ
diff --git a/static/assets/awicons/browser/rssbandit.png b/static/assets/awicons/browser/rssbandit.png
new file mode 100644
index 0000000..e70b987
Binary files /dev/null and b/static/assets/awicons/browser/rssbandit.png differ
diff --git a/static/assets/awicons/browser/rssowl.png b/static/assets/awicons/browser/rssowl.png
new file mode 100644
index 0000000..6185d26
Binary files /dev/null and b/static/assets/awicons/browser/rssowl.png differ
diff --git a/static/assets/awicons/browser/rssreader.png b/static/assets/awicons/browser/rssreader.png
new file mode 100644
index 0000000..fc8deb4
Binary files /dev/null and b/static/assets/awicons/browser/rssreader.png differ
diff --git a/static/assets/awicons/browser/rssxpress.png b/static/assets/awicons/browser/rssxpress.png
new file mode 100644
index 0000000..a4c4e02
Binary files /dev/null and b/static/assets/awicons/browser/rssxpress.png differ
diff --git a/static/assets/awicons/browser/safari.png b/static/assets/awicons/browser/safari.png
new file mode 100644
index 0000000..683f2ea
Binary files /dev/null and b/static/assets/awicons/browser/safari.png differ
diff --git a/static/assets/awicons/browser/sagem.png b/static/assets/awicons/browser/sagem.png
new file mode 100644
index 0000000..4b05c81
Binary files /dev/null and b/static/assets/awicons/browser/sagem.png differ
diff --git a/static/assets/awicons/browser/samsung.png b/static/assets/awicons/browser/samsung.png
new file mode 100644
index 0000000..8d14913
Binary files /dev/null and b/static/assets/awicons/browser/samsung.png differ
diff --git a/static/assets/awicons/browser/seamonkey.png b/static/assets/awicons/browser/seamonkey.png
new file mode 100644
index 0000000..7242ed2
Binary files /dev/null and b/static/assets/awicons/browser/seamonkey.png differ
diff --git a/static/assets/awicons/browser/sharp.png b/static/assets/awicons/browser/sharp.png
new file mode 100644
index 0000000..ee552bd
Binary files /dev/null and b/static/assets/awicons/browser/sharp.png differ
diff --git a/static/assets/awicons/browser/sharpreader.png b/static/assets/awicons/browser/sharpreader.png
new file mode 100644
index 0000000..845966b
Binary files /dev/null and b/static/assets/awicons/browser/sharpreader.png differ
diff --git a/static/assets/awicons/browser/shrook.png b/static/assets/awicons/browser/shrook.png
new file mode 100644
index 0000000..193cb33
Binary files /dev/null and b/static/assets/awicons/browser/shrook.png differ
diff --git a/static/assets/awicons/browser/siemens.png b/static/assets/awicons/browser/siemens.png
new file mode 100644
index 0000000..9d82628
Binary files /dev/null and b/static/assets/awicons/browser/siemens.png differ
diff --git a/static/assets/awicons/browser/sony.png b/static/assets/awicons/browser/sony.png
new file mode 100644
index 0000000..8c182c5
Binary files /dev/null and b/static/assets/awicons/browser/sony.png differ
diff --git a/static/assets/awicons/browser/staroffice.png b/static/assets/awicons/browser/staroffice.png
new file mode 100644
index 0000000..b9d7778
Binary files /dev/null and b/static/assets/awicons/browser/staroffice.png differ
diff --git a/static/assets/awicons/browser/subversion.png b/static/assets/awicons/browser/subversion.png
new file mode 100644
index 0000000..d732495
Binary files /dev/null and b/static/assets/awicons/browser/subversion.png differ
diff --git a/static/assets/awicons/browser/teleport.png b/static/assets/awicons/browser/teleport.png
new file mode 100644
index 0000000..dceba90
Binary files /dev/null and b/static/assets/awicons/browser/teleport.png differ
diff --git a/static/assets/awicons/browser/trium.png b/static/assets/awicons/browser/trium.png
new file mode 100644
index 0000000..e6d07f6
Binary files /dev/null and b/static/assets/awicons/browser/trium.png differ
diff --git a/static/assets/awicons/browser/unknown.png b/static/assets/awicons/browser/unknown.png
new file mode 100644
index 0000000..895b771
Binary files /dev/null and b/static/assets/awicons/browser/unknown.png differ
diff --git a/static/assets/awicons/browser/w3c.png b/static/assets/awicons/browser/w3c.png
new file mode 100644
index 0000000..d7e90d9
Binary files /dev/null and b/static/assets/awicons/browser/w3c.png differ
diff --git a/static/assets/awicons/browser/webcopier.png b/static/assets/awicons/browser/webcopier.png
new file mode 100644
index 0000000..9a2bffb
Binary files /dev/null and b/static/assets/awicons/browser/webcopier.png differ
diff --git a/static/assets/awicons/browser/webreaper.png b/static/assets/awicons/browser/webreaper.png
new file mode 100644
index 0000000..c806913
Binary files /dev/null and b/static/assets/awicons/browser/webreaper.png differ
diff --git a/static/assets/awicons/browser/webtv.png b/static/assets/awicons/browser/webtv.png
new file mode 100644
index 0000000..07dc458
Binary files /dev/null and b/static/assets/awicons/browser/webtv.png differ
diff --git a/static/assets/awicons/browser/webzip.png b/static/assets/awicons/browser/webzip.png
new file mode 100644
index 0000000..e79bd25
Binary files /dev/null and b/static/assets/awicons/browser/webzip.png differ
diff --git a/static/assets/awicons/browser/winxbox.png b/static/assets/awicons/browser/winxbox.png
new file mode 100644
index 0000000..85087e4
Binary files /dev/null and b/static/assets/awicons/browser/winxbox.png differ
diff --git a/static/assets/awicons/browser/wizz.png b/static/assets/awicons/browser/wizz.png
new file mode 100644
index 0000000..f79d1d7
Binary files /dev/null and b/static/assets/awicons/browser/wizz.png differ
diff --git a/static/assets/awicons/clock/hr1.png b/static/assets/awicons/clock/hr1.png
new file mode 100644
index 0000000..f829d37
Binary files /dev/null and b/static/assets/awicons/clock/hr1.png differ
diff --git a/static/assets/awicons/clock/hr10.png b/static/assets/awicons/clock/hr10.png
new file mode 100644
index 0000000..d8300ee
Binary files /dev/null and b/static/assets/awicons/clock/hr10.png differ
diff --git a/static/assets/awicons/clock/hr11.png b/static/assets/awicons/clock/hr11.png
new file mode 100644
index 0000000..e2c1294
Binary files /dev/null and b/static/assets/awicons/clock/hr11.png differ
diff --git a/static/assets/awicons/clock/hr12.png b/static/assets/awicons/clock/hr12.png
new file mode 100644
index 0000000..51dedf5
Binary files /dev/null and b/static/assets/awicons/clock/hr12.png differ
diff --git a/static/assets/awicons/clock/hr2.png b/static/assets/awicons/clock/hr2.png
new file mode 100644
index 0000000..6ed7457
Binary files /dev/null and b/static/assets/awicons/clock/hr2.png differ
diff --git a/static/assets/awicons/clock/hr3.png b/static/assets/awicons/clock/hr3.png
new file mode 100644
index 0000000..624558d
Binary files /dev/null and b/static/assets/awicons/clock/hr3.png differ
diff --git a/static/assets/awicons/clock/hr4.png b/static/assets/awicons/clock/hr4.png
new file mode 100644
index 0000000..c312f79
Binary files /dev/null and b/static/assets/awicons/clock/hr4.png differ
diff --git a/static/assets/awicons/clock/hr5.png b/static/assets/awicons/clock/hr5.png
new file mode 100644
index 0000000..f223807
Binary files /dev/null and b/static/assets/awicons/clock/hr5.png differ
diff --git a/static/assets/awicons/clock/hr6.png b/static/assets/awicons/clock/hr6.png
new file mode 100644
index 0000000..9a97b31
Binary files /dev/null and b/static/assets/awicons/clock/hr6.png differ
diff --git a/static/assets/awicons/clock/hr7.png b/static/assets/awicons/clock/hr7.png
new file mode 100644
index 0000000..67e8b52
Binary files /dev/null and b/static/assets/awicons/clock/hr7.png differ
diff --git a/static/assets/awicons/clock/hr8.png b/static/assets/awicons/clock/hr8.png
new file mode 100644
index 0000000..7ec6f6f
Binary files /dev/null and b/static/assets/awicons/clock/hr8.png differ
diff --git a/static/assets/awicons/clock/hr9.png b/static/assets/awicons/clock/hr9.png
new file mode 100644
index 0000000..8e7516c
Binary files /dev/null and b/static/assets/awicons/clock/hr9.png differ
diff --git a/static/assets/awicons/cpu/digital.png b/static/assets/awicons/cpu/digital.png
new file mode 100644
index 0000000..48f3546
Binary files /dev/null and b/static/assets/awicons/cpu/digital.png differ
diff --git a/static/assets/awicons/cpu/hp.png b/static/assets/awicons/cpu/hp.png
new file mode 100644
index 0000000..8b4fa8c
Binary files /dev/null and b/static/assets/awicons/cpu/hp.png differ
diff --git a/static/assets/awicons/cpu/ibm.png b/static/assets/awicons/cpu/ibm.png
new file mode 100644
index 0000000..0743233
Binary files /dev/null and b/static/assets/awicons/cpu/ibm.png differ
diff --git a/static/assets/awicons/cpu/intel.png b/static/assets/awicons/cpu/intel.png
new file mode 100644
index 0000000..84ca8ba
Binary files /dev/null and b/static/assets/awicons/cpu/intel.png differ
diff --git a/static/assets/awicons/cpu/java.png b/static/assets/awicons/cpu/java.png
new file mode 100644
index 0000000..d9830fc
Binary files /dev/null and b/static/assets/awicons/cpu/java.png differ
diff --git a/static/assets/awicons/cpu/mips.png b/static/assets/awicons/cpu/mips.png
new file mode 100644
index 0000000..46125a2
Binary files /dev/null and b/static/assets/awicons/cpu/mips.png differ
diff --git a/static/assets/awicons/cpu/motorola.png b/static/assets/awicons/cpu/motorola.png
new file mode 100644
index 0000000..dc3615c
Binary files /dev/null and b/static/assets/awicons/cpu/motorola.png differ
diff --git a/static/assets/awicons/cpu/sun.png b/static/assets/awicons/cpu/sun.png
new file mode 100644
index 0000000..276f1a2
Binary files /dev/null and b/static/assets/awicons/cpu/sun.png differ
diff --git a/static/assets/awicons/cpu/unknown.png b/static/assets/awicons/cpu/unknown.png
new file mode 100644
index 0000000..69b2d1d
Binary files /dev/null and b/static/assets/awicons/cpu/unknown.png differ
diff --git a/static/assets/awicons/flags/a2.png b/static/assets/awicons/flags/a2.png
new file mode 100644
index 0000000..30dd64a
Binary files /dev/null and b/static/assets/awicons/flags/a2.png differ
diff --git a/static/assets/awicons/flags/ac.png b/static/assets/awicons/flags/ac.png
new file mode 100644
index 0000000..4f154f8
Binary files /dev/null and b/static/assets/awicons/flags/ac.png differ
diff --git a/static/assets/awicons/flags/ad.png b/static/assets/awicons/flags/ad.png
new file mode 100644
index 0000000..f676f64
Binary files /dev/null and b/static/assets/awicons/flags/ad.png differ
diff --git a/static/assets/awicons/flags/ae.png b/static/assets/awicons/flags/ae.png
new file mode 100644
index 0000000..c6952aa
Binary files /dev/null and b/static/assets/awicons/flags/ae.png differ
diff --git a/static/assets/awicons/flags/aero.png b/static/assets/awicons/flags/aero.png
new file mode 100644
index 0000000..0d37472
Binary files /dev/null and b/static/assets/awicons/flags/aero.png differ
diff --git a/static/assets/awicons/flags/af.png b/static/assets/awicons/flags/af.png
new file mode 100644
index 0000000..582fc06
Binary files /dev/null and b/static/assets/awicons/flags/af.png differ
diff --git a/static/assets/awicons/flags/ag.png b/static/assets/awicons/flags/ag.png
new file mode 100644
index 0000000..fbf917c
Binary files /dev/null and b/static/assets/awicons/flags/ag.png differ
diff --git a/static/assets/awicons/flags/ai.png b/static/assets/awicons/flags/ai.png
new file mode 100644
index 0000000..badcd96
Binary files /dev/null and b/static/assets/awicons/flags/ai.png differ
diff --git a/static/assets/awicons/flags/al.png b/static/assets/awicons/flags/al.png
new file mode 100644
index 0000000..2ff7780
Binary files /dev/null and b/static/assets/awicons/flags/al.png differ
diff --git a/static/assets/awicons/flags/am.png b/static/assets/awicons/flags/am.png
new file mode 100644
index 0000000..c8e056b
Binary files /dev/null and b/static/assets/awicons/flags/am.png differ
diff --git a/static/assets/awicons/flags/an.png b/static/assets/awicons/flags/an.png
new file mode 100644
index 0000000..6b0f085
Binary files /dev/null and b/static/assets/awicons/flags/an.png differ
diff --git a/static/assets/awicons/flags/ao.png b/static/assets/awicons/flags/ao.png
new file mode 100644
index 0000000..127796d
Binary files /dev/null and b/static/assets/awicons/flags/ao.png differ
diff --git a/static/assets/awicons/flags/aq.png b/static/assets/awicons/flags/aq.png
new file mode 100644
index 0000000..dc6b1ab
Binary files /dev/null and b/static/assets/awicons/flags/aq.png differ
diff --git a/static/assets/awicons/flags/ar.png b/static/assets/awicons/flags/ar.png
new file mode 100644
index 0000000..755b40e
Binary files /dev/null and b/static/assets/awicons/flags/ar.png differ
diff --git a/static/assets/awicons/flags/arpa.png b/static/assets/awicons/flags/arpa.png
new file mode 100644
index 0000000..4502b8d
Binary files /dev/null and b/static/assets/awicons/flags/arpa.png differ
diff --git a/static/assets/awicons/flags/as.png b/static/assets/awicons/flags/as.png
new file mode 100644
index 0000000..614d01d
Binary files /dev/null and b/static/assets/awicons/flags/as.png differ
diff --git a/static/assets/awicons/flags/at.png b/static/assets/awicons/flags/at.png
new file mode 100644
index 0000000..7982808
Binary files /dev/null and b/static/assets/awicons/flags/at.png differ
diff --git a/static/assets/awicons/flags/au.png b/static/assets/awicons/flags/au.png
new file mode 100644
index 0000000..595bff6
Binary files /dev/null and b/static/assets/awicons/flags/au.png differ
diff --git a/static/assets/awicons/flags/aw.png b/static/assets/awicons/flags/aw.png
new file mode 100644
index 0000000..4aa502c
Binary files /dev/null and b/static/assets/awicons/flags/aw.png differ
diff --git a/static/assets/awicons/flags/ax.png b/static/assets/awicons/flags/ax.png
new file mode 100644
index 0000000..e43bf0a
Binary files /dev/null and b/static/assets/awicons/flags/ax.png differ
diff --git a/static/assets/awicons/flags/az.png b/static/assets/awicons/flags/az.png
new file mode 100644
index 0000000..d07d9b4
Binary files /dev/null and b/static/assets/awicons/flags/az.png differ
diff --git a/static/assets/awicons/flags/ba.png b/static/assets/awicons/flags/ba.png
new file mode 100644
index 0000000..42c31e9
Binary files /dev/null and b/static/assets/awicons/flags/ba.png differ
diff --git a/static/assets/awicons/flags/bb.png b/static/assets/awicons/flags/bb.png
new file mode 100644
index 0000000..88e4e67
Binary files /dev/null and b/static/assets/awicons/flags/bb.png differ
diff --git a/static/assets/awicons/flags/bd.png b/static/assets/awicons/flags/bd.png
new file mode 100644
index 0000000..b49714a
Binary files /dev/null and b/static/assets/awicons/flags/bd.png differ
diff --git a/static/assets/awicons/flags/be.png b/static/assets/awicons/flags/be.png
new file mode 100644
index 0000000..872f562
Binary files /dev/null and b/static/assets/awicons/flags/be.png differ
diff --git a/static/assets/awicons/flags/bf.png b/static/assets/awicons/flags/bf.png
new file mode 100644
index 0000000..9151366
Binary files /dev/null and b/static/assets/awicons/flags/bf.png differ
diff --git a/static/assets/awicons/flags/bg.png b/static/assets/awicons/flags/bg.png
new file mode 100644
index 0000000..2c1f46b
Binary files /dev/null and b/static/assets/awicons/flags/bg.png differ
diff --git a/static/assets/awicons/flags/bh.png b/static/assets/awicons/flags/bh.png
new file mode 100644
index 0000000..1b0d04d
Binary files /dev/null and b/static/assets/awicons/flags/bh.png differ
diff --git a/static/assets/awicons/flags/bi.png b/static/assets/awicons/flags/bi.png
new file mode 100644
index 0000000..518e030
Binary files /dev/null and b/static/assets/awicons/flags/bi.png differ
diff --git a/static/assets/awicons/flags/biz.png b/static/assets/awicons/flags/biz.png
new file mode 100644
index 0000000..7bd40c2
Binary files /dev/null and b/static/assets/awicons/flags/biz.png differ
diff --git a/static/assets/awicons/flags/bj.png b/static/assets/awicons/flags/bj.png
new file mode 100644
index 0000000..6473bf1
Binary files /dev/null and b/static/assets/awicons/flags/bj.png differ
diff --git a/static/assets/awicons/flags/bm.png b/static/assets/awicons/flags/bm.png
new file mode 100644
index 0000000..9ea8c4f
Binary files /dev/null and b/static/assets/awicons/flags/bm.png differ
diff --git a/static/assets/awicons/flags/bn.png b/static/assets/awicons/flags/bn.png
new file mode 100644
index 0000000..2585a38
Binary files /dev/null and b/static/assets/awicons/flags/bn.png differ
diff --git a/static/assets/awicons/flags/bo.png b/static/assets/awicons/flags/bo.png
new file mode 100644
index 0000000..27025ca
Binary files /dev/null and b/static/assets/awicons/flags/bo.png differ
diff --git a/static/assets/awicons/flags/br.png b/static/assets/awicons/flags/br.png
new file mode 100644
index 0000000..f94d2e2
Binary files /dev/null and b/static/assets/awicons/flags/br.png differ
diff --git a/static/assets/awicons/flags/bs.png b/static/assets/awicons/flags/bs.png
new file mode 100644
index 0000000..0eaa50d
Binary files /dev/null and b/static/assets/awicons/flags/bs.png differ
diff --git a/static/assets/awicons/flags/bt.png b/static/assets/awicons/flags/bt.png
new file mode 100644
index 0000000..e12aa33
Binary files /dev/null and b/static/assets/awicons/flags/bt.png differ
diff --git a/static/assets/awicons/flags/bv.png b/static/assets/awicons/flags/bv.png
new file mode 100644
index 0000000..e75a6c8
Binary files /dev/null and b/static/assets/awicons/flags/bv.png differ
diff --git a/static/assets/awicons/flags/bw.png b/static/assets/awicons/flags/bw.png
new file mode 100644
index 0000000..c224fcd
Binary files /dev/null and b/static/assets/awicons/flags/bw.png differ
diff --git a/static/assets/awicons/flags/by.png b/static/assets/awicons/flags/by.png
new file mode 100644
index 0000000..c3f4713
Binary files /dev/null and b/static/assets/awicons/flags/by.png differ
diff --git a/static/assets/awicons/flags/bz.png b/static/assets/awicons/flags/bz.png
new file mode 100644
index 0000000..378ec4a
Binary files /dev/null and b/static/assets/awicons/flags/bz.png differ
diff --git a/static/assets/awicons/flags/ca.png b/static/assets/awicons/flags/ca.png
new file mode 100644
index 0000000..38a5ae6
Binary files /dev/null and b/static/assets/awicons/flags/ca.png differ
diff --git a/static/assets/awicons/flags/cc.png b/static/assets/awicons/flags/cc.png
new file mode 100644
index 0000000..0050bab
Binary files /dev/null and b/static/assets/awicons/flags/cc.png differ
diff --git a/static/assets/awicons/flags/cd.png b/static/assets/awicons/flags/cd.png
new file mode 100644
index 0000000..f50b0ae
Binary files /dev/null and b/static/assets/awicons/flags/cd.png differ
diff --git a/static/assets/awicons/flags/cf.png b/static/assets/awicons/flags/cf.png
new file mode 100644
index 0000000..fcca6fd
Binary files /dev/null and b/static/assets/awicons/flags/cf.png differ
diff --git a/static/assets/awicons/flags/cg.png b/static/assets/awicons/flags/cg.png
new file mode 100644
index 0000000..14ada0a
Binary files /dev/null and b/static/assets/awicons/flags/cg.png differ
diff --git a/static/assets/awicons/flags/ch.png b/static/assets/awicons/flags/ch.png
new file mode 100644
index 0000000..681c706
Binary files /dev/null and b/static/assets/awicons/flags/ch.png differ
diff --git a/static/assets/awicons/flags/ci.png b/static/assets/awicons/flags/ci.png
new file mode 100644
index 0000000..53a7ccd
Binary files /dev/null and b/static/assets/awicons/flags/ci.png differ
diff --git a/static/assets/awicons/flags/ck.png b/static/assets/awicons/flags/ck.png
new file mode 100644
index 0000000..18b5fe1
Binary files /dev/null and b/static/assets/awicons/flags/ck.png differ
diff --git a/static/assets/awicons/flags/cl.png b/static/assets/awicons/flags/cl.png
new file mode 100644
index 0000000..98992c6
Binary files /dev/null and b/static/assets/awicons/flags/cl.png differ
diff --git a/static/assets/awicons/flags/cm.png b/static/assets/awicons/flags/cm.png
new file mode 100644
index 0000000..4ab7c60
Binary files /dev/null and b/static/assets/awicons/flags/cm.png differ
diff --git a/static/assets/awicons/flags/cn.png b/static/assets/awicons/flags/cn.png
new file mode 100644
index 0000000..f83bbe1
Binary files /dev/null and b/static/assets/awicons/flags/cn.png differ
diff --git a/static/assets/awicons/flags/co.png b/static/assets/awicons/flags/co.png
new file mode 100644
index 0000000..9c1d3cc
Binary files /dev/null and b/static/assets/awicons/flags/co.png differ
diff --git a/static/assets/awicons/flags/com.png b/static/assets/awicons/flags/com.png
new file mode 100644
index 0000000..114dba3
Binary files /dev/null and b/static/assets/awicons/flags/com.png differ
diff --git a/static/assets/awicons/flags/coop.png b/static/assets/awicons/flags/coop.png
new file mode 100644
index 0000000..114dba3
Binary files /dev/null and b/static/assets/awicons/flags/coop.png differ
diff --git a/static/assets/awicons/flags/cr.png b/static/assets/awicons/flags/cr.png
new file mode 100644
index 0000000..a3d8933
Binary files /dev/null and b/static/assets/awicons/flags/cr.png differ
diff --git a/static/assets/awicons/flags/cs.png b/static/assets/awicons/flags/cs.png
new file mode 100644
index 0000000..8ca1fb6
Binary files /dev/null and b/static/assets/awicons/flags/cs.png differ
diff --git a/static/assets/awicons/flags/cu.png b/static/assets/awicons/flags/cu.png
new file mode 100644
index 0000000..16b2b3a
Binary files /dev/null and b/static/assets/awicons/flags/cu.png differ
diff --git a/static/assets/awicons/flags/cv.png b/static/assets/awicons/flags/cv.png
new file mode 100644
index 0000000..9de2cb6
Binary files /dev/null and b/static/assets/awicons/flags/cv.png differ
diff --git a/static/assets/awicons/flags/cx.png b/static/assets/awicons/flags/cx.png
new file mode 100644
index 0000000..d4273dd
Binary files /dev/null and b/static/assets/awicons/flags/cx.png differ
diff --git a/static/assets/awicons/flags/cy.png b/static/assets/awicons/flags/cy.png
new file mode 100644
index 0000000..57fcca7
Binary files /dev/null and b/static/assets/awicons/flags/cy.png differ
diff --git a/static/assets/awicons/flags/cz.png b/static/assets/awicons/flags/cz.png
new file mode 100644
index 0000000..8ca1fb6
Binary files /dev/null and b/static/assets/awicons/flags/cz.png differ
diff --git a/static/assets/awicons/flags/de.png b/static/assets/awicons/flags/de.png
new file mode 100644
index 0000000..ff85c66
Binary files /dev/null and b/static/assets/awicons/flags/de.png differ
diff --git a/static/assets/awicons/flags/dj.png b/static/assets/awicons/flags/dj.png
new file mode 100644
index 0000000..bb98a86
Binary files /dev/null and b/static/assets/awicons/flags/dj.png differ
diff --git a/static/assets/awicons/flags/dk.png b/static/assets/awicons/flags/dk.png
new file mode 100644
index 0000000..7986a0f
Binary files /dev/null and b/static/assets/awicons/flags/dk.png differ
diff --git a/static/assets/awicons/flags/dm.png b/static/assets/awicons/flags/dm.png
new file mode 100644
index 0000000..34e4fb3
Binary files /dev/null and b/static/assets/awicons/flags/dm.png differ
diff --git a/static/assets/awicons/flags/do.png b/static/assets/awicons/flags/do.png
new file mode 100644
index 0000000..e0c37d6
Binary files /dev/null and b/static/assets/awicons/flags/do.png differ
diff --git a/static/assets/awicons/flags/dz.png b/static/assets/awicons/flags/dz.png
new file mode 100644
index 0000000..6454fa8
Binary files /dev/null and b/static/assets/awicons/flags/dz.png differ
diff --git a/static/assets/awicons/flags/ec.png b/static/assets/awicons/flags/ec.png
new file mode 100644
index 0000000..3dc0528
Binary files /dev/null and b/static/assets/awicons/flags/ec.png differ
diff --git a/static/assets/awicons/flags/edu.png b/static/assets/awicons/flags/edu.png
new file mode 100644
index 0000000..78d0951
Binary files /dev/null and b/static/assets/awicons/flags/edu.png differ
diff --git a/static/assets/awicons/flags/ee.png b/static/assets/awicons/flags/ee.png
new file mode 100644
index 0000000..80763f0
Binary files /dev/null and b/static/assets/awicons/flags/ee.png differ
diff --git a/static/assets/awicons/flags/eg.png b/static/assets/awicons/flags/eg.png
new file mode 100644
index 0000000..71947de
Binary files /dev/null and b/static/assets/awicons/flags/eg.png differ
diff --git a/static/assets/awicons/flags/eh.png b/static/assets/awicons/flags/eh.png
new file mode 100644
index 0000000..d518ea5
Binary files /dev/null and b/static/assets/awicons/flags/eh.png differ
diff --git a/static/assets/awicons/flags/el.png b/static/assets/awicons/flags/el.png
new file mode 100644
index 0000000..ddd9f17
Binary files /dev/null and b/static/assets/awicons/flags/el.png differ
diff --git a/static/assets/awicons/flags/en.png b/static/assets/awicons/flags/en.png
new file mode 100644
index 0000000..5de202b
Binary files /dev/null and b/static/assets/awicons/flags/en.png differ
diff --git a/static/assets/awicons/flags/er.png b/static/assets/awicons/flags/er.png
new file mode 100644
index 0000000..b21bb88
Binary files /dev/null and b/static/assets/awicons/flags/er.png differ
diff --git a/static/assets/awicons/flags/es.png b/static/assets/awicons/flags/es.png
new file mode 100644
index 0000000..09a7531
Binary files /dev/null and b/static/assets/awicons/flags/es.png differ
diff --git a/static/assets/awicons/flags/es_cat.png b/static/assets/awicons/flags/es_cat.png
new file mode 100644
index 0000000..41b1410
Binary files /dev/null and b/static/assets/awicons/flags/es_cat.png differ
diff --git a/static/assets/awicons/flags/es_eu.png b/static/assets/awicons/flags/es_eu.png
new file mode 100644
index 0000000..462be61
Binary files /dev/null and b/static/assets/awicons/flags/es_eu.png differ
diff --git a/static/assets/awicons/flags/et.png b/static/assets/awicons/flags/et.png
new file mode 100644
index 0000000..dc8f7f0
Binary files /dev/null and b/static/assets/awicons/flags/et.png differ
diff --git a/static/assets/awicons/flags/eu.png b/static/assets/awicons/flags/eu.png
new file mode 100644
index 0000000..eec69ea
Binary files /dev/null and b/static/assets/awicons/flags/eu.png differ
diff --git a/static/assets/awicons/flags/fi.png b/static/assets/awicons/flags/fi.png
new file mode 100644
index 0000000..2a5ffe1
Binary files /dev/null and b/static/assets/awicons/flags/fi.png differ
diff --git a/static/assets/awicons/flags/fj.png b/static/assets/awicons/flags/fj.png
new file mode 100644
index 0000000..91b022c
Binary files /dev/null and b/static/assets/awicons/flags/fj.png differ
diff --git a/static/assets/awicons/flags/fk.png b/static/assets/awicons/flags/fk.png
new file mode 100644
index 0000000..08e7110
Binary files /dev/null and b/static/assets/awicons/flags/fk.png differ
diff --git a/static/assets/awicons/flags/fm.png b/static/assets/awicons/flags/fm.png
new file mode 100644
index 0000000..6364ebd
Binary files /dev/null and b/static/assets/awicons/flags/fm.png differ
diff --git a/static/assets/awicons/flags/fo.png b/static/assets/awicons/flags/fo.png
new file mode 100644
index 0000000..7228cad
Binary files /dev/null and b/static/assets/awicons/flags/fo.png differ
diff --git a/static/assets/awicons/flags/fr.png b/static/assets/awicons/flags/fr.png
new file mode 100644
index 0000000..aea1151
Binary files /dev/null and b/static/assets/awicons/flags/fr.png differ
diff --git a/static/assets/awicons/flags/fx.png b/static/assets/awicons/flags/fx.png
new file mode 100644
index 0000000..aea1151
Binary files /dev/null and b/static/assets/awicons/flags/fx.png differ
diff --git a/static/assets/awicons/flags/ga.png b/static/assets/awicons/flags/ga.png
new file mode 100644
index 0000000..5208c02
Binary files /dev/null and b/static/assets/awicons/flags/ga.png differ
diff --git a/static/assets/awicons/flags/gb.png b/static/assets/awicons/flags/gb.png
new file mode 100644
index 0000000..2b8cdde
Binary files /dev/null and b/static/assets/awicons/flags/gb.png differ
diff --git a/static/assets/awicons/flags/gd.png b/static/assets/awicons/flags/gd.png
new file mode 100644
index 0000000..318dcdc
Binary files /dev/null and b/static/assets/awicons/flags/gd.png differ
diff --git a/static/assets/awicons/flags/ge.png b/static/assets/awicons/flags/ge.png
new file mode 100644
index 0000000..c9b6352
Binary files /dev/null and b/static/assets/awicons/flags/ge.png differ
diff --git a/static/assets/awicons/flags/gf.png b/static/assets/awicons/flags/gf.png
new file mode 100644
index 0000000..4ac9c2c
Binary files /dev/null and b/static/assets/awicons/flags/gf.png differ
diff --git a/static/assets/awicons/flags/gg.png b/static/assets/awicons/flags/gg.png
new file mode 100644
index 0000000..2053db6
Binary files /dev/null and b/static/assets/awicons/flags/gg.png differ
diff --git a/static/assets/awicons/flags/gh.png b/static/assets/awicons/flags/gh.png
new file mode 100644
index 0000000..0b4e4f1
Binary files /dev/null and b/static/assets/awicons/flags/gh.png differ
diff --git a/static/assets/awicons/flags/gi.png b/static/assets/awicons/flags/gi.png
new file mode 100644
index 0000000..023a4f7
Binary files /dev/null and b/static/assets/awicons/flags/gi.png differ
diff --git a/static/assets/awicons/flags/gl.png b/static/assets/awicons/flags/gl.png
new file mode 100644
index 0000000..2b4a291
Binary files /dev/null and b/static/assets/awicons/flags/gl.png differ
diff --git a/static/assets/awicons/flags/glg.png b/static/assets/awicons/flags/glg.png
new file mode 100644
index 0000000..0610c23
Binary files /dev/null and b/static/assets/awicons/flags/glg.png differ
diff --git a/static/assets/awicons/flags/gm.png b/static/assets/awicons/flags/gm.png
new file mode 100644
index 0000000..75c58fb
Binary files /dev/null and b/static/assets/awicons/flags/gm.png differ
diff --git a/static/assets/awicons/flags/gn.png b/static/assets/awicons/flags/gn.png
new file mode 100644
index 0000000..55b87f6
Binary files /dev/null and b/static/assets/awicons/flags/gn.png differ
diff --git a/static/assets/awicons/flags/gov.png b/static/assets/awicons/flags/gov.png
new file mode 100644
index 0000000..a293ebd
Binary files /dev/null and b/static/assets/awicons/flags/gov.png differ
diff --git a/static/assets/awicons/flags/gp.png b/static/assets/awicons/flags/gp.png
new file mode 100644
index 0000000..89ece94
Binary files /dev/null and b/static/assets/awicons/flags/gp.png differ
diff --git a/static/assets/awicons/flags/gq.png b/static/assets/awicons/flags/gq.png
new file mode 100644
index 0000000..a2ff841
Binary files /dev/null and b/static/assets/awicons/flags/gq.png differ
diff --git a/static/assets/awicons/flags/gr.png b/static/assets/awicons/flags/gr.png
new file mode 100644
index 0000000..ddd9f17
Binary files /dev/null and b/static/assets/awicons/flags/gr.png differ
diff --git a/static/assets/awicons/flags/gs.png b/static/assets/awicons/flags/gs.png
new file mode 100644
index 0000000..5f779ec
Binary files /dev/null and b/static/assets/awicons/flags/gs.png differ
diff --git a/static/assets/awicons/flags/gt.png b/static/assets/awicons/flags/gt.png
new file mode 100644
index 0000000..455820b
Binary files /dev/null and b/static/assets/awicons/flags/gt.png differ
diff --git a/static/assets/awicons/flags/gu.png b/static/assets/awicons/flags/gu.png
new file mode 100644
index 0000000..0ea9ba6
Binary files /dev/null and b/static/assets/awicons/flags/gu.png differ
diff --git a/static/assets/awicons/flags/gw.png b/static/assets/awicons/flags/gw.png
new file mode 100644
index 0000000..12f71fc
Binary files /dev/null and b/static/assets/awicons/flags/gw.png differ
diff --git a/static/assets/awicons/flags/gy.png b/static/assets/awicons/flags/gy.png
new file mode 100644
index 0000000..e006994
Binary files /dev/null and b/static/assets/awicons/flags/gy.png differ
diff --git a/static/assets/awicons/flags/hk.png b/static/assets/awicons/flags/hk.png
new file mode 100644
index 0000000..a2b12f0
Binary files /dev/null and b/static/assets/awicons/flags/hk.png differ
diff --git a/static/assets/awicons/flags/hm.png b/static/assets/awicons/flags/hm.png
new file mode 100644
index 0000000..06e0ec6
Binary files /dev/null and b/static/assets/awicons/flags/hm.png differ
diff --git a/static/assets/awicons/flags/hn.png b/static/assets/awicons/flags/hn.png
new file mode 100644
index 0000000..292c1b1
Binary files /dev/null and b/static/assets/awicons/flags/hn.png differ
diff --git a/static/assets/awicons/flags/hr.png b/static/assets/awicons/flags/hr.png
new file mode 100644
index 0000000..e3bb792
Binary files /dev/null and b/static/assets/awicons/flags/hr.png differ
diff --git a/static/assets/awicons/flags/ht.png b/static/assets/awicons/flags/ht.png
new file mode 100644
index 0000000..237e758
Binary files /dev/null and b/static/assets/awicons/flags/ht.png differ
diff --git a/static/assets/awicons/flags/hu.png b/static/assets/awicons/flags/hu.png
new file mode 100644
index 0000000..ade6808
Binary files /dev/null and b/static/assets/awicons/flags/hu.png differ
diff --git a/static/assets/awicons/flags/i0.png b/static/assets/awicons/flags/i0.png
new file mode 100644
index 0000000..4502b8d
Binary files /dev/null and b/static/assets/awicons/flags/i0.png differ
diff --git a/static/assets/awicons/flags/id.png b/static/assets/awicons/flags/id.png
new file mode 100644
index 0000000..3fb4905
Binary files /dev/null and b/static/assets/awicons/flags/id.png differ
diff --git a/static/assets/awicons/flags/ie.png b/static/assets/awicons/flags/ie.png
new file mode 100644
index 0000000..9029a23
Binary files /dev/null and b/static/assets/awicons/flags/ie.png differ
diff --git a/static/assets/awicons/flags/il.png b/static/assets/awicons/flags/il.png
new file mode 100644
index 0000000..deacbf4
Binary files /dev/null and b/static/assets/awicons/flags/il.png differ
diff --git a/static/assets/awicons/flags/im.png b/static/assets/awicons/flags/im.png
new file mode 100644
index 0000000..7e9b7c9
Binary files /dev/null and b/static/assets/awicons/flags/im.png differ
diff --git a/static/assets/awicons/flags/in.png b/static/assets/awicons/flags/in.png
new file mode 100644
index 0000000..fca700e
Binary files /dev/null and b/static/assets/awicons/flags/in.png differ
diff --git a/static/assets/awicons/flags/info.png b/static/assets/awicons/flags/info.png
new file mode 100644
index 0000000..7bd40c2
Binary files /dev/null and b/static/assets/awicons/flags/info.png differ
diff --git a/static/assets/awicons/flags/int.png b/static/assets/awicons/flags/int.png
new file mode 100644
index 0000000..2f1a781
Binary files /dev/null and b/static/assets/awicons/flags/int.png differ
diff --git a/static/assets/awicons/flags/io.png b/static/assets/awicons/flags/io.png
new file mode 100644
index 0000000..a64095c
Binary files /dev/null and b/static/assets/awicons/flags/io.png differ
diff --git a/static/assets/awicons/flags/ip.png b/static/assets/awicons/flags/ip.png
new file mode 100644
index 0000000..883082b
Binary files /dev/null and b/static/assets/awicons/flags/ip.png differ
diff --git a/static/assets/awicons/flags/iq.png b/static/assets/awicons/flags/iq.png
new file mode 100644
index 0000000..5225164
Binary files /dev/null and b/static/assets/awicons/flags/iq.png differ
diff --git a/static/assets/awicons/flags/ir.png b/static/assets/awicons/flags/ir.png
new file mode 100644
index 0000000..51da41e
Binary files /dev/null and b/static/assets/awicons/flags/ir.png differ
diff --git a/static/assets/awicons/flags/is.png b/static/assets/awicons/flags/is.png
new file mode 100644
index 0000000..d91c583
Binary files /dev/null and b/static/assets/awicons/flags/is.png differ
diff --git a/static/assets/awicons/flags/it.png b/static/assets/awicons/flags/it.png
new file mode 100644
index 0000000..879296f
Binary files /dev/null and b/static/assets/awicons/flags/it.png differ
diff --git a/static/assets/awicons/flags/jm.png b/static/assets/awicons/flags/jm.png
new file mode 100644
index 0000000..980f613
Binary files /dev/null and b/static/assets/awicons/flags/jm.png differ
diff --git a/static/assets/awicons/flags/jo.png b/static/assets/awicons/flags/jo.png
new file mode 100644
index 0000000..90f6cc5
Binary files /dev/null and b/static/assets/awicons/flags/jo.png differ
diff --git a/static/assets/awicons/flags/jp.png b/static/assets/awicons/flags/jp.png
new file mode 100644
index 0000000..8655f75
Binary files /dev/null and b/static/assets/awicons/flags/jp.png differ
diff --git a/static/assets/awicons/flags/ke.png b/static/assets/awicons/flags/ke.png
new file mode 100644
index 0000000..a4eb346
Binary files /dev/null and b/static/assets/awicons/flags/ke.png differ
diff --git a/static/assets/awicons/flags/kg.png b/static/assets/awicons/flags/kg.png
new file mode 100644
index 0000000..c765f83
Binary files /dev/null and b/static/assets/awicons/flags/kg.png differ
diff --git a/static/assets/awicons/flags/kh.png b/static/assets/awicons/flags/kh.png
new file mode 100644
index 0000000..d43f060
Binary files /dev/null and b/static/assets/awicons/flags/kh.png differ
diff --git a/static/assets/awicons/flags/ki.png b/static/assets/awicons/flags/ki.png
new file mode 100644
index 0000000..2de8785
Binary files /dev/null and b/static/assets/awicons/flags/ki.png differ
diff --git a/static/assets/awicons/flags/km.png b/static/assets/awicons/flags/km.png
new file mode 100644
index 0000000..335526d
Binary files /dev/null and b/static/assets/awicons/flags/km.png differ
diff --git a/static/assets/awicons/flags/kn.png b/static/assets/awicons/flags/kn.png
new file mode 100644
index 0000000..be2d801
Binary files /dev/null and b/static/assets/awicons/flags/kn.png differ
diff --git a/static/assets/awicons/flags/kp.png b/static/assets/awicons/flags/kp.png
new file mode 100644
index 0000000..2430525
Binary files /dev/null and b/static/assets/awicons/flags/kp.png differ
diff --git a/static/assets/awicons/flags/kr.png b/static/assets/awicons/flags/kr.png
new file mode 100644
index 0000000..48098aa
Binary files /dev/null and b/static/assets/awicons/flags/kr.png differ
diff --git a/static/assets/awicons/flags/kw.png b/static/assets/awicons/flags/kw.png
new file mode 100644
index 0000000..94fc856
Binary files /dev/null and b/static/assets/awicons/flags/kw.png differ
diff --git a/static/assets/awicons/flags/ky.png b/static/assets/awicons/flags/ky.png
new file mode 100644
index 0000000..e278582
Binary files /dev/null and b/static/assets/awicons/flags/ky.png differ
diff --git a/static/assets/awicons/flags/kz.png b/static/assets/awicons/flags/kz.png
new file mode 100644
index 0000000..b158cd9
Binary files /dev/null and b/static/assets/awicons/flags/kz.png differ
diff --git a/static/assets/awicons/flags/la.png b/static/assets/awicons/flags/la.png
new file mode 100644
index 0000000..7550211
Binary files /dev/null and b/static/assets/awicons/flags/la.png differ
diff --git a/static/assets/awicons/flags/lb.png b/static/assets/awicons/flags/lb.png
new file mode 100644
index 0000000..2996d75
Binary files /dev/null and b/static/assets/awicons/flags/lb.png differ
diff --git a/static/assets/awicons/flags/lc.png b/static/assets/awicons/flags/lc.png
new file mode 100644
index 0000000..d6ae67b
Binary files /dev/null and b/static/assets/awicons/flags/lc.png differ
diff --git a/static/assets/awicons/flags/li.png b/static/assets/awicons/flags/li.png
new file mode 100644
index 0000000..1a601d9
Binary files /dev/null and b/static/assets/awicons/flags/li.png differ
diff --git a/static/assets/awicons/flags/lk.png b/static/assets/awicons/flags/lk.png
new file mode 100644
index 0000000..1517840
Binary files /dev/null and b/static/assets/awicons/flags/lk.png differ
diff --git a/static/assets/awicons/flags/lr.png b/static/assets/awicons/flags/lr.png
new file mode 100644
index 0000000..4cd00f3
Binary files /dev/null and b/static/assets/awicons/flags/lr.png differ
diff --git a/static/assets/awicons/flags/ls.png b/static/assets/awicons/flags/ls.png
new file mode 100644
index 0000000..8fff881
Binary files /dev/null and b/static/assets/awicons/flags/ls.png differ
diff --git a/static/assets/awicons/flags/lt.png b/static/assets/awicons/flags/lt.png
new file mode 100644
index 0000000..edbb143
Binary files /dev/null and b/static/assets/awicons/flags/lt.png differ
diff --git a/static/assets/awicons/flags/lu.png b/static/assets/awicons/flags/lu.png
new file mode 100644
index 0000000..9b6e836
Binary files /dev/null and b/static/assets/awicons/flags/lu.png differ
diff --git a/static/assets/awicons/flags/lv.png b/static/assets/awicons/flags/lv.png
new file mode 100644
index 0000000..90fdf8f
Binary files /dev/null and b/static/assets/awicons/flags/lv.png differ
diff --git a/static/assets/awicons/flags/ly.png b/static/assets/awicons/flags/ly.png
new file mode 100644
index 0000000..07653b6
Binary files /dev/null and b/static/assets/awicons/flags/ly.png differ
diff --git a/static/assets/awicons/flags/ma.png b/static/assets/awicons/flags/ma.png
new file mode 100644
index 0000000..5e43d7c
Binary files /dev/null and b/static/assets/awicons/flags/ma.png differ
diff --git a/static/assets/awicons/flags/mc.png b/static/assets/awicons/flags/mc.png
new file mode 100644
index 0000000..71c462a
Binary files /dev/null and b/static/assets/awicons/flags/mc.png differ
diff --git a/static/assets/awicons/flags/md.png b/static/assets/awicons/flags/md.png
new file mode 100644
index 0000000..8f7357b
Binary files /dev/null and b/static/assets/awicons/flags/md.png differ
diff --git a/static/assets/awicons/flags/me.png b/static/assets/awicons/flags/me.png
new file mode 100644
index 0000000..c89f413
Binary files /dev/null and b/static/assets/awicons/flags/me.png differ
diff --git a/static/assets/awicons/flags/mg.png b/static/assets/awicons/flags/mg.png
new file mode 100644
index 0000000..d614548
Binary files /dev/null and b/static/assets/awicons/flags/mg.png differ
diff --git a/static/assets/awicons/flags/mil.png b/static/assets/awicons/flags/mil.png
new file mode 100644
index 0000000..898a255
Binary files /dev/null and b/static/assets/awicons/flags/mil.png differ
diff --git a/static/assets/awicons/flags/mk.png b/static/assets/awicons/flags/mk.png
new file mode 100644
index 0000000..578266d
Binary files /dev/null and b/static/assets/awicons/flags/mk.png differ
diff --git a/static/assets/awicons/flags/ml.png b/static/assets/awicons/flags/ml.png
new file mode 100644
index 0000000..8994e0f
Binary files /dev/null and b/static/assets/awicons/flags/ml.png differ
diff --git a/static/assets/awicons/flags/mm.png b/static/assets/awicons/flags/mm.png
new file mode 100644
index 0000000..d204ca1
Binary files /dev/null and b/static/assets/awicons/flags/mm.png differ
diff --git a/static/assets/awicons/flags/mn.png b/static/assets/awicons/flags/mn.png
new file mode 100644
index 0000000..407510f
Binary files /dev/null and b/static/assets/awicons/flags/mn.png differ
diff --git a/static/assets/awicons/flags/mo.png b/static/assets/awicons/flags/mo.png
new file mode 100644
index 0000000..6f7ced4
Binary files /dev/null and b/static/assets/awicons/flags/mo.png differ
diff --git a/static/assets/awicons/flags/mp.png b/static/assets/awicons/flags/mp.png
new file mode 100644
index 0000000..79d2293
Binary files /dev/null and b/static/assets/awicons/flags/mp.png differ
diff --git a/static/assets/awicons/flags/mq.png b/static/assets/awicons/flags/mq.png
new file mode 100644
index 0000000..053f950
Binary files /dev/null and b/static/assets/awicons/flags/mq.png differ
diff --git a/static/assets/awicons/flags/mr.png b/static/assets/awicons/flags/mr.png
new file mode 100644
index 0000000..4e8e04e
Binary files /dev/null and b/static/assets/awicons/flags/mr.png differ
diff --git a/static/assets/awicons/flags/ms.png b/static/assets/awicons/flags/ms.png
new file mode 100644
index 0000000..286cabd
Binary files /dev/null and b/static/assets/awicons/flags/ms.png differ
diff --git a/static/assets/awicons/flags/mt.png b/static/assets/awicons/flags/mt.png
new file mode 100644
index 0000000..83e20a0
Binary files /dev/null and b/static/assets/awicons/flags/mt.png differ
diff --git a/static/assets/awicons/flags/mu.png b/static/assets/awicons/flags/mu.png
new file mode 100644
index 0000000..e51da3d
Binary files /dev/null and b/static/assets/awicons/flags/mu.png differ
diff --git a/static/assets/awicons/flags/museum.png b/static/assets/awicons/flags/museum.png
new file mode 100644
index 0000000..7bd40c2
Binary files /dev/null and b/static/assets/awicons/flags/museum.png differ
diff --git a/static/assets/awicons/flags/mv.png b/static/assets/awicons/flags/mv.png
new file mode 100644
index 0000000..449b944
Binary files /dev/null and b/static/assets/awicons/flags/mv.png differ
diff --git a/static/assets/awicons/flags/mw.png b/static/assets/awicons/flags/mw.png
new file mode 100644
index 0000000..50d32c0
Binary files /dev/null and b/static/assets/awicons/flags/mw.png differ
diff --git a/static/assets/awicons/flags/mx.png b/static/assets/awicons/flags/mx.png
new file mode 100644
index 0000000..ebd2b79
Binary files /dev/null and b/static/assets/awicons/flags/mx.png differ
diff --git a/static/assets/awicons/flags/my.png b/static/assets/awicons/flags/my.png
new file mode 100644
index 0000000..1cb6139
Binary files /dev/null and b/static/assets/awicons/flags/my.png differ
diff --git a/static/assets/awicons/flags/mz.png b/static/assets/awicons/flags/mz.png
new file mode 100644
index 0000000..1a949ca
Binary files /dev/null and b/static/assets/awicons/flags/mz.png differ
diff --git a/static/assets/awicons/flags/na.png b/static/assets/awicons/flags/na.png
new file mode 100644
index 0000000..c1d5687
Binary files /dev/null and b/static/assets/awicons/flags/na.png differ
diff --git a/static/assets/awicons/flags/name.png b/static/assets/awicons/flags/name.png
new file mode 100644
index 0000000..6767617
Binary files /dev/null and b/static/assets/awicons/flags/name.png differ
diff --git a/static/assets/awicons/flags/nato.png b/static/assets/awicons/flags/nato.png
new file mode 100644
index 0000000..bd90ac8
Binary files /dev/null and b/static/assets/awicons/flags/nato.png differ
diff --git a/static/assets/awicons/flags/nb.png b/static/assets/awicons/flags/nb.png
new file mode 100644
index 0000000..76cea41
Binary files /dev/null and b/static/assets/awicons/flags/nb.png differ
diff --git a/static/assets/awicons/flags/nc.png b/static/assets/awicons/flags/nc.png
new file mode 100644
index 0000000..aea1151
Binary files /dev/null and b/static/assets/awicons/flags/nc.png differ
diff --git a/static/assets/awicons/flags/ne.png b/static/assets/awicons/flags/ne.png
new file mode 100644
index 0000000..6c42be5
Binary files /dev/null and b/static/assets/awicons/flags/ne.png differ
diff --git a/static/assets/awicons/flags/net.png b/static/assets/awicons/flags/net.png
new file mode 100644
index 0000000..37c1bee
Binary files /dev/null and b/static/assets/awicons/flags/net.png differ
diff --git a/static/assets/awicons/flags/ng.png b/static/assets/awicons/flags/ng.png
new file mode 100644
index 0000000..4e39270
Binary files /dev/null and b/static/assets/awicons/flags/ng.png differ
diff --git a/static/assets/awicons/flags/ni.png b/static/assets/awicons/flags/ni.png
new file mode 100644
index 0000000..ab154d4
Binary files /dev/null and b/static/assets/awicons/flags/ni.png differ
diff --git a/static/assets/awicons/flags/nl.png b/static/assets/awicons/flags/nl.png
new file mode 100644
index 0000000..4195ae9
Binary files /dev/null and b/static/assets/awicons/flags/nl.png differ
diff --git a/static/assets/awicons/flags/nn.png b/static/assets/awicons/flags/nn.png
new file mode 100644
index 0000000..76cea41
Binary files /dev/null and b/static/assets/awicons/flags/nn.png differ
diff --git a/static/assets/awicons/flags/no.png b/static/assets/awicons/flags/no.png
new file mode 100644
index 0000000..76cea41
Binary files /dev/null and b/static/assets/awicons/flags/no.png differ
diff --git a/static/assets/awicons/flags/np.png b/static/assets/awicons/flags/np.png
new file mode 100644
index 0000000..1efd2df
Binary files /dev/null and b/static/assets/awicons/flags/np.png differ
diff --git a/static/assets/awicons/flags/nr.png b/static/assets/awicons/flags/nr.png
new file mode 100644
index 0000000..ee3f13a
Binary files /dev/null and b/static/assets/awicons/flags/nr.png differ
diff --git a/static/assets/awicons/flags/nt.png b/static/assets/awicons/flags/nt.png
new file mode 100644
index 0000000..7bd40c2
Binary files /dev/null and b/static/assets/awicons/flags/nt.png differ
diff --git a/static/assets/awicons/flags/nu.png b/static/assets/awicons/flags/nu.png
new file mode 100644
index 0000000..9d2d75c
Binary files /dev/null and b/static/assets/awicons/flags/nu.png differ
diff --git a/static/assets/awicons/flags/nz.png b/static/assets/awicons/flags/nz.png
new file mode 100644
index 0000000..9bdd98d
Binary files /dev/null and b/static/assets/awicons/flags/nz.png differ
diff --git a/static/assets/awicons/flags/om.png b/static/assets/awicons/flags/om.png
new file mode 100644
index 0000000..5588510
Binary files /dev/null and b/static/assets/awicons/flags/om.png differ
diff --git a/static/assets/awicons/flags/org.png b/static/assets/awicons/flags/org.png
new file mode 100644
index 0000000..30dd64a
Binary files /dev/null and b/static/assets/awicons/flags/org.png differ
diff --git a/static/assets/awicons/flags/pa.png b/static/assets/awicons/flags/pa.png
new file mode 100644
index 0000000..cc4ae8d
Binary files /dev/null and b/static/assets/awicons/flags/pa.png differ
diff --git a/static/assets/awicons/flags/pe.png b/static/assets/awicons/flags/pe.png
new file mode 100644
index 0000000..e799dce
Binary files /dev/null and b/static/assets/awicons/flags/pe.png differ
diff --git a/static/assets/awicons/flags/pf.png b/static/assets/awicons/flags/pf.png
new file mode 100644
index 0000000..4f60b16
Binary files /dev/null and b/static/assets/awicons/flags/pf.png differ
diff --git a/static/assets/awicons/flags/pg.png b/static/assets/awicons/flags/pg.png
new file mode 100644
index 0000000..4ea06e3
Binary files /dev/null and b/static/assets/awicons/flags/pg.png differ
diff --git a/static/assets/awicons/flags/ph.png b/static/assets/awicons/flags/ph.png
new file mode 100644
index 0000000..d252607
Binary files /dev/null and b/static/assets/awicons/flags/ph.png differ
diff --git a/static/assets/awicons/flags/pk.png b/static/assets/awicons/flags/pk.png
new file mode 100644
index 0000000..bc0ad13
Binary files /dev/null and b/static/assets/awicons/flags/pk.png differ
diff --git a/static/assets/awicons/flags/pl.png b/static/assets/awicons/flags/pl.png
new file mode 100644
index 0000000..a6e3c56
Binary files /dev/null and b/static/assets/awicons/flags/pl.png differ
diff --git a/static/assets/awicons/flags/pr.png b/static/assets/awicons/flags/pr.png
new file mode 100644
index 0000000..9abe52a
Binary files /dev/null and b/static/assets/awicons/flags/pr.png differ
diff --git a/static/assets/awicons/flags/pro.png b/static/assets/awicons/flags/pro.png
new file mode 100644
index 0000000..7bd40c2
Binary files /dev/null and b/static/assets/awicons/flags/pro.png differ
diff --git a/static/assets/awicons/flags/ps.png b/static/assets/awicons/flags/ps.png
new file mode 100644
index 0000000..19157ee
Binary files /dev/null and b/static/assets/awicons/flags/ps.png differ
diff --git a/static/assets/awicons/flags/pt.png b/static/assets/awicons/flags/pt.png
new file mode 100644
index 0000000..06b747f
Binary files /dev/null and b/static/assets/awicons/flags/pt.png differ
diff --git a/static/assets/awicons/flags/py.png b/static/assets/awicons/flags/py.png
new file mode 100644
index 0000000..63afcaf
Binary files /dev/null and b/static/assets/awicons/flags/py.png differ
diff --git a/static/assets/awicons/flags/qa.png b/static/assets/awicons/flags/qa.png
new file mode 100644
index 0000000..ea078df
Binary files /dev/null and b/static/assets/awicons/flags/qa.png differ
diff --git a/static/assets/awicons/flags/re.png b/static/assets/awicons/flags/re.png
new file mode 100644
index 0000000..ad972bc
Binary files /dev/null and b/static/assets/awicons/flags/re.png differ
diff --git a/static/assets/awicons/flags/ro.png b/static/assets/awicons/flags/ro.png
new file mode 100644
index 0000000..26ea38a
Binary files /dev/null and b/static/assets/awicons/flags/ro.png differ
diff --git a/static/assets/awicons/flags/rs.png b/static/assets/awicons/flags/rs.png
new file mode 100644
index 0000000..98967d2
Binary files /dev/null and b/static/assets/awicons/flags/rs.png differ
diff --git a/static/assets/awicons/flags/ru.png b/static/assets/awicons/flags/ru.png
new file mode 100644
index 0000000..a5b1a15
Binary files /dev/null and b/static/assets/awicons/flags/ru.png differ
diff --git a/static/assets/awicons/flags/rw.png b/static/assets/awicons/flags/rw.png
new file mode 100644
index 0000000..ce8dc85
Binary files /dev/null and b/static/assets/awicons/flags/rw.png differ
diff --git a/static/assets/awicons/flags/sa.png b/static/assets/awicons/flags/sa.png
new file mode 100644
index 0000000..15d1995
Binary files /dev/null and b/static/assets/awicons/flags/sa.png differ
diff --git a/static/assets/awicons/flags/sb.png b/static/assets/awicons/flags/sb.png
new file mode 100644
index 0000000..5249207
Binary files /dev/null and b/static/assets/awicons/flags/sb.png differ
diff --git a/static/assets/awicons/flags/sc.png b/static/assets/awicons/flags/sc.png
new file mode 100644
index 0000000..05950c2
Binary files /dev/null and b/static/assets/awicons/flags/sc.png differ
diff --git a/static/assets/awicons/flags/sd.png b/static/assets/awicons/flags/sd.png
new file mode 100644
index 0000000..1af8740
Binary files /dev/null and b/static/assets/awicons/flags/sd.png differ
diff --git a/static/assets/awicons/flags/se.png b/static/assets/awicons/flags/se.png
new file mode 100644
index 0000000..35aeb7b
Binary files /dev/null and b/static/assets/awicons/flags/se.png differ
diff --git a/static/assets/awicons/flags/sg.png b/static/assets/awicons/flags/sg.png
new file mode 100644
index 0000000..1ba1eeb
Binary files /dev/null and b/static/assets/awicons/flags/sg.png differ
diff --git a/static/assets/awicons/flags/si.png b/static/assets/awicons/flags/si.png
new file mode 100644
index 0000000..6bab773
Binary files /dev/null and b/static/assets/awicons/flags/si.png differ
diff --git a/static/assets/awicons/flags/sk.png b/static/assets/awicons/flags/sk.png
new file mode 100644
index 0000000..98645d1
Binary files /dev/null and b/static/assets/awicons/flags/sk.png differ
diff --git a/static/assets/awicons/flags/sl.png b/static/assets/awicons/flags/sl.png
new file mode 100644
index 0000000..3202cd8
Binary files /dev/null and b/static/assets/awicons/flags/sl.png differ
diff --git a/static/assets/awicons/flags/sm.png b/static/assets/awicons/flags/sm.png
new file mode 100644
index 0000000..ce75b61
Binary files /dev/null and b/static/assets/awicons/flags/sm.png differ
diff --git a/static/assets/awicons/flags/sn.png b/static/assets/awicons/flags/sn.png
new file mode 100644
index 0000000..1e86ff8
Binary files /dev/null and b/static/assets/awicons/flags/sn.png differ
diff --git a/static/assets/awicons/flags/sr.png b/static/assets/awicons/flags/sr.png
new file mode 100644
index 0000000..230c0cc
Binary files /dev/null and b/static/assets/awicons/flags/sr.png differ
diff --git a/static/assets/awicons/flags/st.png b/static/assets/awicons/flags/st.png
new file mode 100644
index 0000000..789282b
Binary files /dev/null and b/static/assets/awicons/flags/st.png differ
diff --git a/static/assets/awicons/flags/su.png b/static/assets/awicons/flags/su.png
new file mode 100644
index 0000000..0b1b499
Binary files /dev/null and b/static/assets/awicons/flags/su.png differ
diff --git a/static/assets/awicons/flags/sv.png b/static/assets/awicons/flags/sv.png
new file mode 100644
index 0000000..194a77a
Binary files /dev/null and b/static/assets/awicons/flags/sv.png differ
diff --git a/static/assets/awicons/flags/sy.png b/static/assets/awicons/flags/sy.png
new file mode 100644
index 0000000..abb980d
Binary files /dev/null and b/static/assets/awicons/flags/sy.png differ
diff --git a/static/assets/awicons/flags/sz.png b/static/assets/awicons/flags/sz.png
new file mode 100644
index 0000000..e4a33b0
Binary files /dev/null and b/static/assets/awicons/flags/sz.png differ
diff --git a/static/assets/awicons/flags/tc.png b/static/assets/awicons/flags/tc.png
new file mode 100644
index 0000000..bf9d43d
Binary files /dev/null and b/static/assets/awicons/flags/tc.png differ
diff --git a/static/assets/awicons/flags/td.png b/static/assets/awicons/flags/td.png
new file mode 100644
index 0000000..de0df6d
Binary files /dev/null and b/static/assets/awicons/flags/td.png differ
diff --git a/static/assets/awicons/flags/tf.png b/static/assets/awicons/flags/tf.png
new file mode 100644
index 0000000..85c5591
Binary files /dev/null and b/static/assets/awicons/flags/tf.png differ
diff --git a/static/assets/awicons/flags/tg.png b/static/assets/awicons/flags/tg.png
new file mode 100644
index 0000000..b9f6101
Binary files /dev/null and b/static/assets/awicons/flags/tg.png differ
diff --git a/static/assets/awicons/flags/th.png b/static/assets/awicons/flags/th.png
new file mode 100644
index 0000000..2e8a282
Binary files /dev/null and b/static/assets/awicons/flags/th.png differ
diff --git a/static/assets/awicons/flags/tk.png b/static/assets/awicons/flags/tk.png
new file mode 100644
index 0000000..ab79b28
Binary files /dev/null and b/static/assets/awicons/flags/tk.png differ
diff --git a/static/assets/awicons/flags/tm.png b/static/assets/awicons/flags/tm.png
new file mode 100644
index 0000000..344049a
Binary files /dev/null and b/static/assets/awicons/flags/tm.png differ
diff --git a/static/assets/awicons/flags/tn.png b/static/assets/awicons/flags/tn.png
new file mode 100644
index 0000000..23ed954
Binary files /dev/null and b/static/assets/awicons/flags/tn.png differ
diff --git a/static/assets/awicons/flags/to.png b/static/assets/awicons/flags/to.png
new file mode 100644
index 0000000..3289128
Binary files /dev/null and b/static/assets/awicons/flags/to.png differ
diff --git a/static/assets/awicons/flags/tr.png b/static/assets/awicons/flags/tr.png
new file mode 100644
index 0000000..175d81a
Binary files /dev/null and b/static/assets/awicons/flags/tr.png differ
diff --git a/static/assets/awicons/flags/tt.png b/static/assets/awicons/flags/tt.png
new file mode 100644
index 0000000..f5dc69e
Binary files /dev/null and b/static/assets/awicons/flags/tt.png differ
diff --git a/static/assets/awicons/flags/tv.png b/static/assets/awicons/flags/tv.png
new file mode 100644
index 0000000..3f37936
Binary files /dev/null and b/static/assets/awicons/flags/tv.png differ
diff --git a/static/assets/awicons/flags/tw.png b/static/assets/awicons/flags/tw.png
new file mode 100644
index 0000000..106d664
Binary files /dev/null and b/static/assets/awicons/flags/tw.png differ
diff --git a/static/assets/awicons/flags/tz.png b/static/assets/awicons/flags/tz.png
new file mode 100644
index 0000000..a08c6f4
Binary files /dev/null and b/static/assets/awicons/flags/tz.png differ
diff --git a/static/assets/awicons/flags/ua.png b/static/assets/awicons/flags/ua.png
new file mode 100644
index 0000000..aa20c83
Binary files /dev/null and b/static/assets/awicons/flags/ua.png differ
diff --git a/static/assets/awicons/flags/ug.png b/static/assets/awicons/flags/ug.png
new file mode 100644
index 0000000..b86caaa
Binary files /dev/null and b/static/assets/awicons/flags/ug.png differ
diff --git a/static/assets/awicons/flags/uk.png b/static/assets/awicons/flags/uk.png
new file mode 100644
index 0000000..b83c204
Binary files /dev/null and b/static/assets/awicons/flags/uk.png differ
diff --git a/static/assets/awicons/flags/um.png b/static/assets/awicons/flags/um.png
new file mode 100644
index 0000000..94ab2b6
Binary files /dev/null and b/static/assets/awicons/flags/um.png differ
diff --git a/static/assets/awicons/flags/unknown.png b/static/assets/awicons/flags/unknown.png
new file mode 100644
index 0000000..85e4c4c
Binary files /dev/null and b/static/assets/awicons/flags/unknown.png differ
diff --git a/static/assets/awicons/flags/us.png b/static/assets/awicons/flags/us.png
new file mode 100644
index 0000000..865e458
Binary files /dev/null and b/static/assets/awicons/flags/us.png differ
diff --git a/static/assets/awicons/flags/uy.png b/static/assets/awicons/flags/uy.png
new file mode 100644
index 0000000..4eb24e0
Binary files /dev/null and b/static/assets/awicons/flags/uy.png differ
diff --git a/static/assets/awicons/flags/uz.png b/static/assets/awicons/flags/uz.png
new file mode 100644
index 0000000..56e95a8
Binary files /dev/null and b/static/assets/awicons/flags/uz.png differ
diff --git a/static/assets/awicons/flags/va.png b/static/assets/awicons/flags/va.png
new file mode 100644
index 0000000..7bc573f
Binary files /dev/null and b/static/assets/awicons/flags/va.png differ
diff --git a/static/assets/awicons/flags/vc.png b/static/assets/awicons/flags/vc.png
new file mode 100644
index 0000000..042d5ab
Binary files /dev/null and b/static/assets/awicons/flags/vc.png differ
diff --git a/static/assets/awicons/flags/ve.png b/static/assets/awicons/flags/ve.png
new file mode 100644
index 0000000..bb14a3f
Binary files /dev/null and b/static/assets/awicons/flags/ve.png differ
diff --git a/static/assets/awicons/flags/vg.png b/static/assets/awicons/flags/vg.png
new file mode 100644
index 0000000..b95d418
Binary files /dev/null and b/static/assets/awicons/flags/vg.png differ
diff --git a/static/assets/awicons/flags/vi.png b/static/assets/awicons/flags/vi.png
new file mode 100644
index 0000000..ceb9deb
Binary files /dev/null and b/static/assets/awicons/flags/vi.png differ
diff --git a/static/assets/awicons/flags/vn.png b/static/assets/awicons/flags/vn.png
new file mode 100644
index 0000000..7db2375
Binary files /dev/null and b/static/assets/awicons/flags/vn.png differ
diff --git a/static/assets/awicons/flags/vu.png b/static/assets/awicons/flags/vu.png
new file mode 100644
index 0000000..1aa2dcd
Binary files /dev/null and b/static/assets/awicons/flags/vu.png differ
diff --git a/static/assets/awicons/flags/wf.png b/static/assets/awicons/flags/wf.png
new file mode 100644
index 0000000..205bebf
Binary files /dev/null and b/static/assets/awicons/flags/wf.png differ
diff --git a/static/assets/awicons/flags/wlk.png b/static/assets/awicons/flags/wlk.png
new file mode 100644
index 0000000..6def11d
Binary files /dev/null and b/static/assets/awicons/flags/wlk.png differ
diff --git a/static/assets/awicons/flags/ws.png b/static/assets/awicons/flags/ws.png
new file mode 100644
index 0000000..3b0d996
Binary files /dev/null and b/static/assets/awicons/flags/ws.png differ
diff --git a/static/assets/awicons/flags/ye.png b/static/assets/awicons/flags/ye.png
new file mode 100644
index 0000000..70c3618
Binary files /dev/null and b/static/assets/awicons/flags/ye.png differ
diff --git a/static/assets/awicons/flags/yt.png b/static/assets/awicons/flags/yt.png
new file mode 100644
index 0000000..f007cfd
Binary files /dev/null and b/static/assets/awicons/flags/yt.png differ
diff --git a/static/assets/awicons/flags/yu.png b/static/assets/awicons/flags/yu.png
new file mode 100644
index 0000000..b741ead
Binary files /dev/null and b/static/assets/awicons/flags/yu.png differ
diff --git a/static/assets/awicons/flags/za.png b/static/assets/awicons/flags/za.png
new file mode 100644
index 0000000..b4e1131
Binary files /dev/null and b/static/assets/awicons/flags/za.png differ
diff --git a/static/assets/awicons/flags/ze.png b/static/assets/awicons/flags/ze.png
new file mode 100644
index 0000000..6955a4e
Binary files /dev/null and b/static/assets/awicons/flags/ze.png differ
diff --git a/static/assets/awicons/flags/zm.png b/static/assets/awicons/flags/zm.png
new file mode 100644
index 0000000..a489499
Binary files /dev/null and b/static/assets/awicons/flags/zm.png differ
diff --git a/static/assets/awicons/flags/zw.png b/static/assets/awicons/flags/zw.png
new file mode 100644
index 0000000..78ad9d2
Binary files /dev/null and b/static/assets/awicons/flags/zw.png differ
diff --git a/static/assets/awicons/mime/ai.png b/static/assets/awicons/mime/ai.png
new file mode 100644
index 0000000..39939af
Binary files /dev/null and b/static/assets/awicons/mime/ai.png differ
diff --git a/static/assets/awicons/mime/archive.png b/static/assets/awicons/mime/archive.png
new file mode 100644
index 0000000..fd4bbcc
Binary files /dev/null and b/static/assets/awicons/mime/archive.png differ
diff --git a/static/assets/awicons/mime/audio.png b/static/assets/awicons/mime/audio.png
new file mode 100644
index 0000000..6056d23
Binary files /dev/null and b/static/assets/awicons/mime/audio.png differ
diff --git a/static/assets/awicons/mime/crystal.png b/static/assets/awicons/mime/crystal.png
new file mode 100644
index 0000000..65f1755
Binary files /dev/null and b/static/assets/awicons/mime/crystal.png differ
diff --git a/static/assets/awicons/mime/css.png b/static/assets/awicons/mime/css.png
new file mode 100644
index 0000000..106f5aa
Binary files /dev/null and b/static/assets/awicons/mime/css.png differ
diff --git a/static/assets/awicons/mime/csv.png b/static/assets/awicons/mime/csv.png
new file mode 100644
index 0000000..813f712
Binary files /dev/null and b/static/assets/awicons/mime/csv.png differ
diff --git a/static/assets/awicons/mime/doc.png b/static/assets/awicons/mime/doc.png
new file mode 100644
index 0000000..ae8ecbf
Binary files /dev/null and b/static/assets/awicons/mime/doc.png differ
diff --git a/static/assets/awicons/mime/document.png b/static/assets/awicons/mime/document.png
new file mode 100644
index 0000000..8b8b1ca
Binary files /dev/null and b/static/assets/awicons/mime/document.png differ
diff --git a/static/assets/awicons/mime/dotnet.png b/static/assets/awicons/mime/dotnet.png
new file mode 100644
index 0000000..a0a433d
Binary files /dev/null and b/static/assets/awicons/mime/dotnet.png differ
diff --git a/static/assets/awicons/mime/encrypt.png b/static/assets/awicons/mime/encrypt.png
new file mode 100644
index 0000000..2ebc4f6
Binary files /dev/null and b/static/assets/awicons/mime/encrypt.png differ
diff --git a/static/assets/awicons/mime/flash.png b/static/assets/awicons/mime/flash.png
new file mode 100644
index 0000000..5769120
Binary files /dev/null and b/static/assets/awicons/mime/flash.png differ
diff --git a/static/assets/awicons/mime/fon.png b/static/assets/awicons/mime/fon.png
new file mode 100644
index 0000000..f3cc58c
Binary files /dev/null and b/static/assets/awicons/mime/fon.png differ
diff --git a/static/assets/awicons/mime/glasses.png b/static/assets/awicons/mime/glasses.png
new file mode 100644
index 0000000..3622414
Binary files /dev/null and b/static/assets/awicons/mime/glasses.png differ
diff --git a/static/assets/awicons/mime/gpx.png b/static/assets/awicons/mime/gpx.png
new file mode 100644
index 0000000..03292a8
Binary files /dev/null and b/static/assets/awicons/mime/gpx.png differ
diff --git a/static/assets/awicons/mime/html.png b/static/assets/awicons/mime/html.png
new file mode 100644
index 0000000..6ed2490
Binary files /dev/null and b/static/assets/awicons/mime/html.png differ
diff --git a/static/assets/awicons/mime/image.png b/static/assets/awicons/mime/image.png
new file mode 100644
index 0000000..4a158fe
Binary files /dev/null and b/static/assets/awicons/mime/image.png differ
diff --git a/static/assets/awicons/mime/jnlp.png b/static/assets/awicons/mime/jnlp.png
new file mode 100644
index 0000000..2b36ee0
Binary files /dev/null and b/static/assets/awicons/mime/jnlp.png differ
diff --git a/static/assets/awicons/mime/jscript.png b/static/assets/awicons/mime/jscript.png
new file mode 100644
index 0000000..63fe6ce
Binary files /dev/null and b/static/assets/awicons/mime/jscript.png differ
diff --git a/static/assets/awicons/mime/json.png b/static/assets/awicons/mime/json.png
new file mode 100644
index 0000000..106f5aa
Binary files /dev/null and b/static/assets/awicons/mime/json.png differ
diff --git a/static/assets/awicons/mime/library.png b/static/assets/awicons/mime/library.png
new file mode 100644
index 0000000..807b862
Binary files /dev/null and b/static/assets/awicons/mime/library.png differ
diff --git a/static/assets/awicons/mime/lit.png b/static/assets/awicons/mime/lit.png
new file mode 100644
index 0000000..88ae1fe
Binary files /dev/null and b/static/assets/awicons/mime/lit.png differ
diff --git a/static/assets/awicons/mime/mdb.png b/static/assets/awicons/mime/mdb.png
new file mode 100644
index 0000000..bddba1f
Binary files /dev/null and b/static/assets/awicons/mime/mdb.png differ
diff --git a/static/assets/awicons/mime/notavailable.png b/static/assets/awicons/mime/notavailable.png
new file mode 100644
index 0000000..05ff318
Binary files /dev/null and b/static/assets/awicons/mime/notavailable.png differ
diff --git a/static/assets/awicons/mime/ooffice.png b/static/assets/awicons/mime/ooffice.png
new file mode 100644
index 0000000..9777717
Binary files /dev/null and b/static/assets/awicons/mime/ooffice.png differ
diff --git a/static/assets/awicons/mime/other.png b/static/assets/awicons/mime/other.png
new file mode 100644
index 0000000..8b8b1ca
Binary files /dev/null and b/static/assets/awicons/mime/other.png differ
diff --git a/static/assets/awicons/mime/package.png b/static/assets/awicons/mime/package.png
new file mode 100644
index 0000000..1dee9e3
Binary files /dev/null and b/static/assets/awicons/mime/package.png differ
diff --git a/static/assets/awicons/mime/page.png b/static/assets/awicons/mime/page.png
new file mode 100644
index 0000000..6ed2490
Binary files /dev/null and b/static/assets/awicons/mime/page.png differ
diff --git a/static/assets/awicons/mime/pdf.png b/static/assets/awicons/mime/pdf.png
new file mode 100644
index 0000000..8f8095e
Binary files /dev/null and b/static/assets/awicons/mime/pdf.png differ
diff --git a/static/assets/awicons/mime/php.png b/static/assets/awicons/mime/php.png
new file mode 100644
index 0000000..7868a25
Binary files /dev/null and b/static/assets/awicons/mime/php.png differ
diff --git a/static/assets/awicons/mime/phshop.png b/static/assets/awicons/mime/phshop.png
new file mode 100644
index 0000000..c6e9358
Binary files /dev/null and b/static/assets/awicons/mime/phshop.png differ
diff --git a/static/assets/awicons/mime/pl.png b/static/assets/awicons/mime/pl.png
new file mode 100644
index 0000000..95deeff
Binary files /dev/null and b/static/assets/awicons/mime/pl.png differ
diff --git a/static/assets/awicons/mime/ppt.png b/static/assets/awicons/mime/ppt.png
new file mode 100644
index 0000000..c4eff03
Binary files /dev/null and b/static/assets/awicons/mime/ppt.png differ
diff --git a/static/assets/awicons/mime/quicktime.png b/static/assets/awicons/mime/quicktime.png
new file mode 100644
index 0000000..3089b46
Binary files /dev/null and b/static/assets/awicons/mime/quicktime.png differ
diff --git a/static/assets/awicons/mime/rar.png b/static/assets/awicons/mime/rar.png
new file mode 100644
index 0000000..c08c978
Binary files /dev/null and b/static/assets/awicons/mime/rar.png differ
diff --git a/static/assets/awicons/mime/readme.txt b/static/assets/awicons/mime/readme.txt
new file mode 100644
index 0000000..8b22595
--- /dev/null
+++ b/static/assets/awicons/mime/readme.txt
@@ -0,0 +1,3 @@
+Many of the icons in this directory were created by Mark James and are licensed under the Creative Commons Attribution 2.5 License
+Find more of the Silk 1.3 series at: http://famfamfam.com/lab/icons/silk/
+http://creativecommons.org/licenses/by/2.5/
\ No newline at end of file
diff --git a/static/assets/awicons/mime/real.png b/static/assets/awicons/mime/real.png
new file mode 100644
index 0000000..9ca3fbf
Binary files /dev/null and b/static/assets/awicons/mime/real.png differ
diff --git a/static/assets/awicons/mime/rss.png b/static/assets/awicons/mime/rss.png
new file mode 100644
index 0000000..315c4f4
Binary files /dev/null and b/static/assets/awicons/mime/rss.png differ
diff --git a/static/assets/awicons/mime/runtime.png b/static/assets/awicons/mime/runtime.png
new file mode 100644
index 0000000..2b36ee0
Binary files /dev/null and b/static/assets/awicons/mime/runtime.png differ
diff --git a/static/assets/awicons/mime/script.png b/static/assets/awicons/mime/script.png
new file mode 100644
index 0000000..0f9ed4d
Binary files /dev/null and b/static/assets/awicons/mime/script.png differ
diff --git a/static/assets/awicons/mime/svg.png b/static/assets/awicons/mime/svg.png
new file mode 100644
index 0000000..bfc5645
Binary files /dev/null and b/static/assets/awicons/mime/svg.png differ
diff --git a/static/assets/awicons/mime/text.png b/static/assets/awicons/mime/text.png
new file mode 100644
index 0000000..813f712
Binary files /dev/null and b/static/assets/awicons/mime/text.png differ
diff --git a/static/assets/awicons/mime/ttf.png b/static/assets/awicons/mime/ttf.png
new file mode 100644
index 0000000..f3cc58c
Binary files /dev/null and b/static/assets/awicons/mime/ttf.png differ
diff --git a/static/assets/awicons/mime/unknown.png b/static/assets/awicons/mime/unknown.png
new file mode 100644
index 0000000..5c87017
Binary files /dev/null and b/static/assets/awicons/mime/unknown.png differ
diff --git a/static/assets/awicons/mime/video.png b/static/assets/awicons/mime/video.png
new file mode 100644
index 0000000..b0ce7bb
Binary files /dev/null and b/static/assets/awicons/mime/video.png differ
diff --git a/static/assets/awicons/mime/wmv.png b/static/assets/awicons/mime/wmv.png
new file mode 100644
index 0000000..922552d
Binary files /dev/null and b/static/assets/awicons/mime/wmv.png differ
diff --git a/static/assets/awicons/mime/xls.png b/static/assets/awicons/mime/xls.png
new file mode 100644
index 0000000..b977d7e
Binary files /dev/null and b/static/assets/awicons/mime/xls.png differ
diff --git a/static/assets/awicons/mime/xsl.png b/static/assets/awicons/mime/xsl.png
new file mode 100644
index 0000000..106f5aa
Binary files /dev/null and b/static/assets/awicons/mime/xsl.png differ
diff --git a/static/assets/awicons/os/aix.png b/static/assets/awicons/os/aix.png
new file mode 100644
index 0000000..90581d1
Binary files /dev/null and b/static/assets/awicons/os/aix.png differ
diff --git a/static/assets/awicons/os/amigaos.png b/static/assets/awicons/os/amigaos.png
new file mode 100644
index 0000000..8efdcec
Binary files /dev/null and b/static/assets/awicons/os/amigaos.png differ
diff --git a/static/assets/awicons/os/apple.png b/static/assets/awicons/os/apple.png
new file mode 100644
index 0000000..c3c1fe0
Binary files /dev/null and b/static/assets/awicons/os/apple.png differ
diff --git a/static/assets/awicons/os/atari.png b/static/assets/awicons/os/atari.png
new file mode 100644
index 0000000..d51836b
Binary files /dev/null and b/static/assets/awicons/os/atari.png differ
diff --git a/static/assets/awicons/os/beos.png b/static/assets/awicons/os/beos.png
new file mode 100644
index 0000000..bab61ff
Binary files /dev/null and b/static/assets/awicons/os/beos.png differ
diff --git a/static/assets/awicons/os/blackberry.png b/static/assets/awicons/os/blackberry.png
new file mode 100644
index 0000000..4f4f68d
Binary files /dev/null and b/static/assets/awicons/os/blackberry.png differ
diff --git a/static/assets/awicons/os/bsd.png b/static/assets/awicons/os/bsd.png
new file mode 100644
index 0000000..6bd3d29
Binary files /dev/null and b/static/assets/awicons/os/bsd.png differ
diff --git a/static/assets/awicons/os/bsddflybsd.png b/static/assets/awicons/os/bsddflybsd.png
new file mode 100644
index 0000000..3b59862
Binary files /dev/null and b/static/assets/awicons/os/bsddflybsd.png differ
diff --git a/static/assets/awicons/os/bsdfreebsd.png b/static/assets/awicons/os/bsdfreebsd.png
new file mode 100644
index 0000000..3b59862
Binary files /dev/null and b/static/assets/awicons/os/bsdfreebsd.png differ
diff --git a/static/assets/awicons/os/bsdi.png b/static/assets/awicons/os/bsdi.png
new file mode 100644
index 0000000..6bd3d29
Binary files /dev/null and b/static/assets/awicons/os/bsdi.png differ
diff --git a/static/assets/awicons/os/bsdkfreebsd.png b/static/assets/awicons/os/bsdkfreebsd.png
new file mode 100644
index 0000000..3b59862
Binary files /dev/null and b/static/assets/awicons/os/bsdkfreebsd.png differ
diff --git a/static/assets/awicons/os/bsdnetbsd.png b/static/assets/awicons/os/bsdnetbsd.png
new file mode 100644
index 0000000..3b59862
Binary files /dev/null and b/static/assets/awicons/os/bsdnetbsd.png differ
diff --git a/static/assets/awicons/os/bsdopenbsd.png b/static/assets/awicons/os/bsdopenbsd.png
new file mode 100644
index 0000000..7d672e5
Binary files /dev/null and b/static/assets/awicons/os/bsdopenbsd.png differ
diff --git a/static/assets/awicons/os/commodore.png b/static/assets/awicons/os/commodore.png
new file mode 100644
index 0000000..6dd71bd
Binary files /dev/null and b/static/assets/awicons/os/commodore.png differ
diff --git a/static/assets/awicons/os/cpm.png b/static/assets/awicons/os/cpm.png
new file mode 100644
index 0000000..caa00a1
Binary files /dev/null and b/static/assets/awicons/os/cpm.png differ
diff --git a/static/assets/awicons/os/debian.png b/static/assets/awicons/os/debian.png
new file mode 100644
index 0000000..29a66ed
Binary files /dev/null and b/static/assets/awicons/os/debian.png differ
diff --git a/static/assets/awicons/os/digital.png b/static/assets/awicons/os/digital.png
new file mode 100644
index 0000000..4b946cb
Binary files /dev/null and b/static/assets/awicons/os/digital.png differ
diff --git a/static/assets/awicons/os/dos.png b/static/assets/awicons/os/dos.png
new file mode 100644
index 0000000..ce04e4d
Binary files /dev/null and b/static/assets/awicons/os/dos.png differ
diff --git a/static/assets/awicons/os/dreamcast.png b/static/assets/awicons/os/dreamcast.png
new file mode 100644
index 0000000..573d542
Binary files /dev/null and b/static/assets/awicons/os/dreamcast.png differ
diff --git a/static/assets/awicons/os/freebsd.png b/static/assets/awicons/os/freebsd.png
new file mode 100644
index 0000000..3b59862
Binary files /dev/null and b/static/assets/awicons/os/freebsd.png differ
diff --git a/static/assets/awicons/os/gnu.png b/static/assets/awicons/os/gnu.png
new file mode 100644
index 0000000..8469ec6
Binary files /dev/null and b/static/assets/awicons/os/gnu.png differ
diff --git a/static/assets/awicons/os/hpux.png b/static/assets/awicons/os/hpux.png
new file mode 100644
index 0000000..a1d554a
Binary files /dev/null and b/static/assets/awicons/os/hpux.png differ
diff --git a/static/assets/awicons/os/ibm.png b/static/assets/awicons/os/ibm.png
new file mode 100644
index 0000000..67b103d
Binary files /dev/null and b/static/assets/awicons/os/ibm.png differ
diff --git a/static/assets/awicons/os/imode.png b/static/assets/awicons/os/imode.png
new file mode 100644
index 0000000..4c68317
Binary files /dev/null and b/static/assets/awicons/os/imode.png differ
diff --git a/static/assets/awicons/os/inferno.png b/static/assets/awicons/os/inferno.png
new file mode 100644
index 0000000..72928c6
Binary files /dev/null and b/static/assets/awicons/os/inferno.png differ
diff --git a/static/assets/awicons/os/ios.png b/static/assets/awicons/os/ios.png
new file mode 100644
index 0000000..3e9ca49
Binary files /dev/null and b/static/assets/awicons/os/ios.png differ
diff --git a/static/assets/awicons/os/ios_ipad.png b/static/assets/awicons/os/ios_ipad.png
new file mode 100644
index 0000000..3e9ca49
Binary files /dev/null and b/static/assets/awicons/os/ios_ipad.png differ
diff --git a/static/assets/awicons/os/ios_iphone.png b/static/assets/awicons/os/ios_iphone.png
new file mode 100644
index 0000000..3e9ca49
Binary files /dev/null and b/static/assets/awicons/os/ios_iphone.png differ
diff --git a/static/assets/awicons/os/iphone.png b/static/assets/awicons/os/iphone.png
new file mode 100644
index 0000000..3e9ca49
Binary files /dev/null and b/static/assets/awicons/os/iphone.png differ
diff --git a/static/assets/awicons/os/irix.png b/static/assets/awicons/os/irix.png
new file mode 100644
index 0000000..9722f69
Binary files /dev/null and b/static/assets/awicons/os/irix.png differ
diff --git a/static/assets/awicons/os/j2me.png b/static/assets/awicons/os/j2me.png
new file mode 100644
index 0000000..72928c6
Binary files /dev/null and b/static/assets/awicons/os/j2me.png differ
diff --git a/static/assets/awicons/os/java.png b/static/assets/awicons/os/java.png
new file mode 100644
index 0000000..5d9ce9f
Binary files /dev/null and b/static/assets/awicons/os/java.png differ
diff --git a/static/assets/awicons/os/kfreebsd.png b/static/assets/awicons/os/kfreebsd.png
new file mode 100644
index 0000000..3b59862
Binary files /dev/null and b/static/assets/awicons/os/kfreebsd.png differ
diff --git a/static/assets/awicons/os/linux.png b/static/assets/awicons/os/linux.png
new file mode 100644
index 0000000..33dace8
Binary files /dev/null and b/static/assets/awicons/os/linux.png differ
diff --git a/static/assets/awicons/os/linuxandroid.png b/static/assets/awicons/os/linuxandroid.png
new file mode 100644
index 0000000..07d266f
Binary files /dev/null and b/static/assets/awicons/os/linuxandroid.png differ
diff --git a/static/assets/awicons/os/linuxasplinux.png b/static/assets/awicons/os/linuxasplinux.png
new file mode 100644
index 0000000..33dace8
Binary files /dev/null and b/static/assets/awicons/os/linuxasplinux.png differ
diff --git a/static/assets/awicons/os/linuxcentos.png b/static/assets/awicons/os/linuxcentos.png
new file mode 100644
index 0000000..c2541d1
Binary files /dev/null and b/static/assets/awicons/os/linuxcentos.png differ
diff --git a/static/assets/awicons/os/linuxdebian.png b/static/assets/awicons/os/linuxdebian.png
new file mode 100644
index 0000000..97d8214
Binary files /dev/null and b/static/assets/awicons/os/linuxdebian.png differ
diff --git a/static/assets/awicons/os/linuxfedora.png b/static/assets/awicons/os/linuxfedora.png
new file mode 100644
index 0000000..00a02c6
Binary files /dev/null and b/static/assets/awicons/os/linuxfedora.png differ
diff --git a/static/assets/awicons/os/linuxgentoo.png b/static/assets/awicons/os/linuxgentoo.png
new file mode 100644
index 0000000..f00eeff
Binary files /dev/null and b/static/assets/awicons/os/linuxgentoo.png differ
diff --git a/static/assets/awicons/os/linuxmandr.png b/static/assets/awicons/os/linuxmandr.png
new file mode 100644
index 0000000..5dcf361
Binary files /dev/null and b/static/assets/awicons/os/linuxmandr.png differ
diff --git a/static/assets/awicons/os/linuxpclinuxos.png b/static/assets/awicons/os/linuxpclinuxos.png
new file mode 100644
index 0000000..33dace8
Binary files /dev/null and b/static/assets/awicons/os/linuxpclinuxos.png differ
diff --git a/static/assets/awicons/os/linuxredhat.png b/static/assets/awicons/os/linuxredhat.png
new file mode 100644
index 0000000..00e6095
Binary files /dev/null and b/static/assets/awicons/os/linuxredhat.png differ
diff --git a/static/assets/awicons/os/linuxsuse.png b/static/assets/awicons/os/linuxsuse.png
new file mode 100644
index 0000000..26cb28a
Binary files /dev/null and b/static/assets/awicons/os/linuxsuse.png differ
diff --git a/static/assets/awicons/os/linuxubuntu.png b/static/assets/awicons/os/linuxubuntu.png
new file mode 100644
index 0000000..7454e09
Binary files /dev/null and b/static/assets/awicons/os/linuxubuntu.png differ
diff --git a/static/assets/awicons/os/linuxvine.png b/static/assets/awicons/os/linuxvine.png
new file mode 100644
index 0000000..33dace8
Binary files /dev/null and b/static/assets/awicons/os/linuxvine.png differ
diff --git a/static/assets/awicons/os/linuxzenwalk.png b/static/assets/awicons/os/linuxzenwalk.png
new file mode 100644
index 0000000..33dace8
Binary files /dev/null and b/static/assets/awicons/os/linuxzenwalk.png differ
diff --git a/static/assets/awicons/os/mac.png b/static/assets/awicons/os/mac.png
new file mode 100644
index 0000000..03f56f4
Binary files /dev/null and b/static/assets/awicons/os/mac.png differ
diff --git a/static/assets/awicons/os/macintosh.png b/static/assets/awicons/os/macintosh.png
new file mode 100644
index 0000000..03f56f4
Binary files /dev/null and b/static/assets/awicons/os/macintosh.png differ
diff --git a/static/assets/awicons/os/macosx.png b/static/assets/awicons/os/macosx.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx.png differ
diff --git a/static/assets/awicons/os/macosx10.png b/static/assets/awicons/os/macosx10.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx10.png differ
diff --git a/static/assets/awicons/os/macosx11.png b/static/assets/awicons/os/macosx11.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx11.png differ
diff --git a/static/assets/awicons/os/macosx12.png b/static/assets/awicons/os/macosx12.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx12.png differ
diff --git a/static/assets/awicons/os/macosx4.png b/static/assets/awicons/os/macosx4.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx4.png differ
diff --git a/static/assets/awicons/os/macosx5.png b/static/assets/awicons/os/macosx5.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx5.png differ
diff --git a/static/assets/awicons/os/macosx6.png b/static/assets/awicons/os/macosx6.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx6.png differ
diff --git a/static/assets/awicons/os/macosx7.png b/static/assets/awicons/os/macosx7.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx7.png differ
diff --git a/static/assets/awicons/os/macosx8.png b/static/assets/awicons/os/macosx8.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx8.png differ
diff --git a/static/assets/awicons/os/macosx9.png b/static/assets/awicons/os/macosx9.png
new file mode 100644
index 0000000..777f350
Binary files /dev/null and b/static/assets/awicons/os/macosx9.png differ
diff --git a/static/assets/awicons/os/netbsd.png b/static/assets/awicons/os/netbsd.png
new file mode 100644
index 0000000..3b59862
Binary files /dev/null and b/static/assets/awicons/os/netbsd.png differ
diff --git a/static/assets/awicons/os/netware.png b/static/assets/awicons/os/netware.png
new file mode 100644
index 0000000..79b5c10
Binary files /dev/null and b/static/assets/awicons/os/netware.png differ
diff --git a/static/assets/awicons/os/next.png b/static/assets/awicons/os/next.png
new file mode 100644
index 0000000..f4da2ae
Binary files /dev/null and b/static/assets/awicons/os/next.png differ
diff --git a/static/assets/awicons/os/openbsd.png b/static/assets/awicons/os/openbsd.png
new file mode 100644
index 0000000..7d672e5
Binary files /dev/null and b/static/assets/awicons/os/openbsd.png differ
diff --git a/static/assets/awicons/os/os2.png b/static/assets/awicons/os/os2.png
new file mode 100644
index 0000000..4dcb675
Binary files /dev/null and b/static/assets/awicons/os/os2.png differ
diff --git a/static/assets/awicons/os/osf.png b/static/assets/awicons/os/osf.png
new file mode 100644
index 0000000..18836fc
Binary files /dev/null and b/static/assets/awicons/os/osf.png differ
diff --git a/static/assets/awicons/os/palmos.png b/static/assets/awicons/os/palmos.png
new file mode 100644
index 0000000..4f4f68d
Binary files /dev/null and b/static/assets/awicons/os/palmos.png differ
diff --git a/static/assets/awicons/os/psp.png b/static/assets/awicons/os/psp.png
new file mode 100644
index 0000000..6734f7d
Binary files /dev/null and b/static/assets/awicons/os/psp.png differ
diff --git a/static/assets/awicons/os/qnx.png b/static/assets/awicons/os/qnx.png
new file mode 100644
index 0000000..8ffcce6
Binary files /dev/null and b/static/assets/awicons/os/qnx.png differ
diff --git a/static/assets/awicons/os/riscos.png b/static/assets/awicons/os/riscos.png
new file mode 100644
index 0000000..c20b34d
Binary files /dev/null and b/static/assets/awicons/os/riscos.png differ
diff --git a/static/assets/awicons/os/sco.png b/static/assets/awicons/os/sco.png
new file mode 100644
index 0000000..55cc4ca
Binary files /dev/null and b/static/assets/awicons/os/sco.png differ
diff --git a/static/assets/awicons/os/sunos.png b/static/assets/awicons/os/sunos.png
new file mode 100644
index 0000000..e37e602
Binary files /dev/null and b/static/assets/awicons/os/sunos.png differ
diff --git a/static/assets/awicons/os/syllable.png b/static/assets/awicons/os/syllable.png
new file mode 100644
index 0000000..72928c6
Binary files /dev/null and b/static/assets/awicons/os/syllable.png differ
diff --git a/static/assets/awicons/os/symbian.png b/static/assets/awicons/os/symbian.png
new file mode 100644
index 0000000..c9b5984
Binary files /dev/null and b/static/assets/awicons/os/symbian.png differ
diff --git a/static/assets/awicons/os/unix.png b/static/assets/awicons/os/unix.png
new file mode 100644
index 0000000..995c967
Binary files /dev/null and b/static/assets/awicons/os/unix.png differ
diff --git a/static/assets/awicons/os/unknown.png b/static/assets/awicons/os/unknown.png
new file mode 100644
index 0000000..895b771
Binary files /dev/null and b/static/assets/awicons/os/unknown.png differ
diff --git a/static/assets/awicons/os/vms.png b/static/assets/awicons/os/vms.png
new file mode 100644
index 0000000..58568f6
Binary files /dev/null and b/static/assets/awicons/os/vms.png differ
diff --git a/static/assets/awicons/os/webtv.png b/static/assets/awicons/os/webtv.png
new file mode 100644
index 0000000..07dc458
Binary files /dev/null and b/static/assets/awicons/os/webtv.png differ
diff --git a/static/assets/awicons/os/wii.png b/static/assets/awicons/os/wii.png
new file mode 100644
index 0000000..9d44c99
Binary files /dev/null and b/static/assets/awicons/os/wii.png differ
diff --git a/static/assets/awicons/os/win.png b/static/assets/awicons/os/win.png
new file mode 100644
index 0000000..a3e9a96
Binary files /dev/null and b/static/assets/awicons/os/win.png differ
diff --git a/static/assets/awicons/os/win10.png b/static/assets/awicons/os/win10.png
new file mode 100644
index 0000000..03ba900
Binary files /dev/null and b/static/assets/awicons/os/win10.png differ
diff --git a/static/assets/awicons/os/win16.png b/static/assets/awicons/os/win16.png
new file mode 100644
index 0000000..a3e9a96
Binary files /dev/null and b/static/assets/awicons/os/win16.png differ
diff --git a/static/assets/awicons/os/win2000.png b/static/assets/awicons/os/win2000.png
new file mode 100644
index 0000000..a3e9a96
Binary files /dev/null and b/static/assets/awicons/os/win2000.png differ
diff --git a/static/assets/awicons/os/win2003.png b/static/assets/awicons/os/win2003.png
new file mode 100644
index 0000000..247caed
Binary files /dev/null and b/static/assets/awicons/os/win2003.png differ
diff --git a/static/assets/awicons/os/win2008.png b/static/assets/awicons/os/win2008.png
new file mode 100644
index 0000000..247caed
Binary files /dev/null and b/static/assets/awicons/os/win2008.png differ
diff --git a/static/assets/awicons/os/win7.png b/static/assets/awicons/os/win7.png
new file mode 100644
index 0000000..8001539
Binary files /dev/null and b/static/assets/awicons/os/win7.png differ
diff --git a/static/assets/awicons/os/win8.1.png b/static/assets/awicons/os/win8.1.png
new file mode 100644
index 0000000..8001539
Binary files /dev/null and b/static/assets/awicons/os/win8.1.png differ
diff --git a/static/assets/awicons/os/win8.png b/static/assets/awicons/os/win8.png
new file mode 100644
index 0000000..8001539
Binary files /dev/null and b/static/assets/awicons/os/win8.png differ
diff --git a/static/assets/awicons/os/win80.png b/static/assets/awicons/os/win80.png
new file mode 100644
index 0000000..03ba900
Binary files /dev/null and b/static/assets/awicons/os/win80.png differ
diff --git a/static/assets/awicons/os/win81.png b/static/assets/awicons/os/win81.png
new file mode 100644
index 0000000..03ba900
Binary files /dev/null and b/static/assets/awicons/os/win81.png differ
diff --git a/static/assets/awicons/os/win95.png b/static/assets/awicons/os/win95.png
new file mode 100644
index 0000000..a3e9a96
Binary files /dev/null and b/static/assets/awicons/os/win95.png differ
diff --git a/static/assets/awicons/os/win98.png b/static/assets/awicons/os/win98.png
new file mode 100644
index 0000000..a3e9a96
Binary files /dev/null and b/static/assets/awicons/os/win98.png differ
diff --git a/static/assets/awicons/os/wince.png b/static/assets/awicons/os/wince.png
new file mode 100644
index 0000000..a3e9a96
Binary files /dev/null and b/static/assets/awicons/os/wince.png differ
diff --git a/static/assets/awicons/os/winlong.png b/static/assets/awicons/os/winlong.png
new file mode 100644
index 0000000..8001539
Binary files /dev/null and b/static/assets/awicons/os/winlong.png differ
diff --git a/static/assets/awicons/os/winme.png b/static/assets/awicons/os/winme.png
new file mode 100644
index 0000000..a3e9a96
Binary files /dev/null and b/static/assets/awicons/os/winme.png differ
diff --git a/static/assets/awicons/os/winnt.png b/static/assets/awicons/os/winnt.png
new file mode 100644
index 0000000..a3e9a96
Binary files /dev/null and b/static/assets/awicons/os/winnt.png differ
diff --git a/static/assets/awicons/os/winphone.png b/static/assets/awicons/os/winphone.png
new file mode 100644
index 0000000..03ba900
Binary files /dev/null and b/static/assets/awicons/os/winphone.png differ
diff --git a/static/assets/awicons/os/winunknown.png b/static/assets/awicons/os/winunknown.png
new file mode 100644
index 0000000..a3e9a96
Binary files /dev/null and b/static/assets/awicons/os/winunknown.png differ
diff --git a/static/assets/awicons/os/winvista.png b/static/assets/awicons/os/winvista.png
new file mode 100644
index 0000000..247caed
Binary files /dev/null and b/static/assets/awicons/os/winvista.png differ
diff --git a/static/assets/awicons/os/winxbox.png b/static/assets/awicons/os/winxbox.png
new file mode 100644
index 0000000..85087e4
Binary files /dev/null and b/static/assets/awicons/os/winxbox.png differ
diff --git a/static/assets/awicons/os/winxp.png b/static/assets/awicons/os/winxp.png
new file mode 100644
index 0000000..247caed
Binary files /dev/null and b/static/assets/awicons/os/winxp.png differ
diff --git a/static/assets/awicons/other/awstats_logo1.png b/static/assets/awicons/other/awstats_logo1.png
new file mode 100644
index 0000000..cb69646
Binary files /dev/null and b/static/assets/awicons/other/awstats_logo1.png differ
diff --git a/static/assets/awicons/other/awstats_logo5.png b/static/assets/awicons/other/awstats_logo5.png
new file mode 100644
index 0000000..9a1822c
Binary files /dev/null and b/static/assets/awicons/other/awstats_logo5.png differ
diff --git a/static/assets/awicons/other/awstats_logo6.png b/static/assets/awicons/other/awstats_logo6.png
new file mode 100644
index 0000000..52f9589
Binary files /dev/null and b/static/assets/awicons/other/awstats_logo6.png differ
diff --git a/static/assets/awicons/other/backleft.png b/static/assets/awicons/other/backleft.png
new file mode 100644
index 0000000..185f7c2
Binary files /dev/null and b/static/assets/awicons/other/backleft.png differ
diff --git a/static/assets/awicons/other/button.gif b/static/assets/awicons/other/button.gif
new file mode 100644
index 0000000..5e8501d
Binary files /dev/null and b/static/assets/awicons/other/button.gif differ
diff --git a/static/assets/awicons/other/he.png b/static/assets/awicons/other/he.png
new file mode 100644
index 0000000..82e25f9
Binary files /dev/null and b/static/assets/awicons/other/he.png differ
diff --git a/static/assets/awicons/other/hh.png b/static/assets/awicons/other/hh.png
new file mode 100644
index 0000000..b3cc158
Binary files /dev/null and b/static/assets/awicons/other/hh.png differ
diff --git a/static/assets/awicons/other/hk.png b/static/assets/awicons/other/hk.png
new file mode 100644
index 0000000..b2e7741
Binary files /dev/null and b/static/assets/awicons/other/hk.png differ
diff --git a/static/assets/awicons/other/hp.png b/static/assets/awicons/other/hp.png
new file mode 100644
index 0000000..d8e46f2
Binary files /dev/null and b/static/assets/awicons/other/hp.png differ
diff --git a/static/assets/awicons/other/ht.png b/static/assets/awicons/other/ht.png
new file mode 100644
index 0000000..4ca20ce
Binary files /dev/null and b/static/assets/awicons/other/ht.png differ
diff --git a/static/assets/awicons/other/hx.png b/static/assets/awicons/other/hx.png
new file mode 100644
index 0000000..4f2b63c
Binary files /dev/null and b/static/assets/awicons/other/hx.png differ
diff --git a/static/assets/awicons/other/menu1.png b/static/assets/awicons/other/menu1.png
new file mode 100644
index 0000000..5a5b24f
Binary files /dev/null and b/static/assets/awicons/other/menu1.png differ
diff --git a/static/assets/awicons/other/menu2.png b/static/assets/awicons/other/menu2.png
new file mode 100644
index 0000000..ee2c294
Binary files /dev/null and b/static/assets/awicons/other/menu2.png differ
diff --git a/static/assets/awicons/other/menu3.png b/static/assets/awicons/other/menu3.png
new file mode 100644
index 0000000..c90a7bb
Binary files /dev/null and b/static/assets/awicons/other/menu3.png differ
diff --git a/static/assets/awicons/other/menu4.png b/static/assets/awicons/other/menu4.png
new file mode 100644
index 0000000..77da047
Binary files /dev/null and b/static/assets/awicons/other/menu4.png differ
diff --git a/static/assets/awicons/other/menu5.png b/static/assets/awicons/other/menu5.png
new file mode 100644
index 0000000..7642920
Binary files /dev/null and b/static/assets/awicons/other/menu5.png differ
diff --git a/static/assets/awicons/other/menu6.png b/static/assets/awicons/other/menu6.png
new file mode 100644
index 0000000..1427295
Binary files /dev/null and b/static/assets/awicons/other/menu6.png differ
diff --git a/static/assets/awicons/other/menu7.png b/static/assets/awicons/other/menu7.png
new file mode 100644
index 0000000..d117bbc
Binary files /dev/null and b/static/assets/awicons/other/menu7.png differ
diff --git a/static/assets/awicons/other/menu8.png b/static/assets/awicons/other/menu8.png
new file mode 100644
index 0000000..ceff521
Binary files /dev/null and b/static/assets/awicons/other/menu8.png differ
diff --git a/static/assets/awicons/other/page.png b/static/assets/awicons/other/page.png
new file mode 100644
index 0000000..bb859ee
Binary files /dev/null and b/static/assets/awicons/other/page.png differ
diff --git a/static/assets/awicons/other/vh.png b/static/assets/awicons/other/vh.png
new file mode 100644
index 0000000..13e52f9
Binary files /dev/null and b/static/assets/awicons/other/vh.png differ
diff --git a/static/assets/awicons/other/vk.png b/static/assets/awicons/other/vk.png
new file mode 100644
index 0000000..ac1bc63
Binary files /dev/null and b/static/assets/awicons/other/vk.png differ
diff --git a/static/assets/awicons/other/vp.png b/static/assets/awicons/other/vp.png
new file mode 100644
index 0000000..8ebf702
Binary files /dev/null and b/static/assets/awicons/other/vp.png differ
diff --git a/static/assets/awicons/other/vu.png b/static/assets/awicons/other/vu.png
new file mode 100644
index 0000000..7d39356
Binary files /dev/null and b/static/assets/awicons/other/vu.png differ
diff --git a/static/assets/awicons/other/vv.png b/static/assets/awicons/other/vv.png
new file mode 100644
index 0000000..d5b7cdd
Binary files /dev/null and b/static/assets/awicons/other/vv.png differ
diff --git a/static/assets/browserconfig.xml b/static/assets/browserconfig.xml
new file mode 100644
index 0000000..b3930d0
--- /dev/null
+++ b/static/assets/browserconfig.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+ #da532c
+
+
+
diff --git a/static/assets/css/custom.css b/static/assets/css/custom.css
new file mode 100755
index 0000000..3ec7c04
--- /dev/null
+++ b/static/assets/css/custom.css
@@ -0,0 +1,458 @@
+/* =Typography
+-----------------------------------------------------------------------------*/
+.pointer {
+ font-family: 'IM FELL FLOWERS 2';
+}
+
+body {
+ font-family: 'Alegreya', 'Hoefler Text', Times, Serif;
+ font-size: 1.05em;
+ line-height: 1.6em;
+ background-color: #ffffff;
+ /* background-image: url(../img/grid-18px-masked.png);
+ background-repeat: repeat-x; */
+}
+
+blockquote {
+ border-left: 3px solid #AFAFB0;
+}
+
+blockquote p {
+ line-height: 1.5em;
+}
+
+div:not(.summary)>.story>p:first-of-type:first-line {
+ font-family: "IM Fell English SC", "Times New Roman", Times, serif;
+ font-size: 1.5em;
+ line-height: 1
+}
+
+div:not(.summary)>.story>p:first-of-type:first-letter {
+ font-family: "IM Fell English", Georgia, "Times New Roman", Times, serif;
+ font-size: 4em;
+ font-style: normal;
+ float: left;
+ padding-right: 0.1em;
+ margin-bottom: -0.24em;
+ text-transform: uppercase
+}
+
+.story hr, .summary hr {
+ background: none;
+ margin: 0;
+ border: none;
+ margin-bottom: 0.5em;
+}
+
+.story hr::before, .summary hr::before {
+ font-family: 'IM FELL FLOWERS 2';
+ content: 'N';
+ display: block;
+ text-align: center;
+ opacity: 0.8;
+ margin-top: -1.25em;
+ line-height: 2.5em;
+ font-size: 2.5em;
+}
+
+.story .footnotes hr {
+ border-top: 1px solid #ecc;
+ margin-top: 5ex;
+ margin-bottom: 5ex;
+}
+
+.story .footnotes hr::before {
+ display: none;
+}
+
+pre {
+ padding: 0;
+ border-radius: 0;
+ border: none;
+}
+
+pre code {
+ line-height: 1.4em;
+ font-size: 85%;
+ font-family: "Hack", Menlo, Monaco, Consolas, "Courier New", monospace;
+ background-color: #f0f3f3;
+ padding: 8px;
+ width: 100%;
+ border-radius: 0;
+
+}
+
+p code {
+ font-family: "Hack", Menlo, Monaco, Consolas, "Courier New", monospace;
+ background-color: #f0f3f3;
+ font-size: 85%;
+ padding: 3px;
+ border: none;
+}
+
+form, input[type="search"], select[multiple="multiple"] {
+ font-family: 'Alegreya', 'Trebuchet MS', Helvetica, Arial, sans-serif;
+ border-radius:50px;
+}
+
+h1, h2, h3, h4, h5 {
+ font-family: 'IM Fell English', 'Trebuchet MS', Helvetica, Arial, sans-serif;
+ font-style: normal;
+ color: #b24;
+ font-weight: normal;
+
+}
+
+h2, h3, h4, h5 {
+ font-weight: normal;
+ font-style: italic;
+}
+
+h2, h3 {
+ text-transform: lowercase;
+ font-family: 'Alegreya SC';
+ font-style: normal;
+}
+
+.label-red {
+ background-color: #b24;
+}
+
+a {
+ color: #b24;
+ text-decoration: none;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+/* =Common
+-----------------------------------------------------------------------------*/
+img,
+#feedback,
+#banner,
+#intro li {
+ border-radius: 3px;
+}
+
+nav {
+ font-family: 'IM Fell English';
+}
+
+.caps {
+ font-family: 'Alegreya SC';
+}
+
+.compact {
+ margin: 0 0 0 1.3em;
+}
+
+hr {
+ border-top: 1px solid #ecc;
+ margin-top: 5ex;
+ margin-bottom: 5ex;
+}
+
+.separator {
+ border-top: 5px solid #ecc;
+}
+
+h2 {
+ border-bottom: 1px solid #ecc;
+}
+
+/* =Layout
+-----------------------------------------------------------------------------*/
+.wrapper {
+ padding: 0 10px;
+ width: 94%;
+ max-width: 1300px;
+ margin: auto;
+}
+
+#topbar {
+ background: #ffffff00;
+ padding: 0px;
+ padding-bottom: 10px;
+ margin-bottom: 40px;
+ border-bottom: 1px solid #bbbbbbbb;
+ font-family: 'IM Fell English';
+ color: #b24;
+}
+
+#topbar .is-brand {
+ letter-spacing: -5px;
+ font-size: 1.9em;
+}
+
+#topbar .icon-kube-menu::before {
+ color: #b24;
+}
+
+#topbar .icon-kube-menu::before:hover {
+ text-decoration: none;
+}
+
+#topbar ul li {
+ font-size: 1.5em;
+}
+
+.avatar {
+ -webkit-border-radius: 50em;
+ -moz-border-radius: 50em;
+ border-radius: 50em;
+}
+
+.image-left {
+ float: left;
+ margin: 0 1em 1em 0;
+}
+
+.header-img {
+ width: 650px;
+ max-width: 100%;
+ float: right;
+}
+
+@media screen and (max-width: 960px) {
+.header-img {
+ float:none !important;
+ display: block;
+ margin-left: auto;
+ margin-right: auto;
+}}
+
+/* =Header
+-----------------------------------------------------------------------------*/
+header {
+ padding-top: 15px;
+ margin-bottom: 0em;
+}
+
+/* #header h1 {
+ float: left;
+ font-size: 48px;
+ margin-top: 1px;
+ margin-bottom: 0;
+ color: #ffffff;
+} */
+/* #header nav {
+ margin-top: 1.2em;
+ margin-bottom: 0;
+ float: right;
+} */
+header h1 {
+ font-size: 24px;
+ margin-top: 1px;
+ margin-bottom: 0;
+ font-weight: 400;
+ /* color: #ffffff;*/
+}
+
+
+/* =Promo
+-----------------------------------------------------------------------------*/
+#promo {
+ margin-bottom: 1.5em;
+}
+
+/* =Intro
+-----------------------------------------------------------------------------*/
+#intro .subheader {
+ color: rgba(0, 0, 0, .4);
+ padding-bottom: .3em;
+ border-bottom: 1px solid #ccc;
+}
+
+#intro li {
+ /* background-color: #e9e6da;*/
+}
+
+/* =Feedback
+-----------------------------------------------------------------------------*/
+#feedback {
+ background-color: rgba(0, 0, 0, .5);
+ padding: 2em 3em;
+}
+
+/* =Banner
+-----------------------------------------------------------------------------*/
+#banner {
+ line-height: 0;
+ padding: 1.5em;
+ background-color: #e9e6da;
+}
+
+/* =Blocks
+-----------------------------------------------------------------------------*/
+#blocks dl {
+ overflow: hidden;
+ margin: 0;
+ padding-bottom: 1.5em;
+}
+
+#blocks dt {
+ float: left;
+ width: 22%;
+ margin-right: 4%;
+}
+
+#blocks dt img {
+ padding: 4px;
+ background-color: #fff;
+ border: 1px solid #000;
+ box-shadow: 4px 4px 0 #000;
+}
+
+#blocks dd {
+ margin: 0;
+ float: left;
+ width: 74%;
+ padding-bottom: 1.5em;
+}
+
+/* =Partners
+-----------------------------------------------------------------------------*/
+#partners {
+ padding-top: 1.5em;
+}
+
+#partners h4 {
+ color: #666;
+}
+
+/* =Footer
+-----------------------------------------------------------------------------*/
+.dateblock {
+ text-align: right;
+}
+
+/* =Footer
+-----------------------------------------------------------------------------*/
+#footer {
+ margin-top: 3ex;
+ padding-bottom: 20px;
+ padding-top: 1em;
+ overflow: hidden;
+ border-top: 1px solid #bbbbbbbb;
+}
+
+#footer h3 {
+ text-align: center;
+}
+
+#footer p {
+ margin-bottom: 0.5em;
+}
+
+#footer a {
+ color: #b24;
+}
+
+.fa-li {
+ color: rgb(238, 136, 136);
+}
+
+a .fa, .far, .fab, .fas {
+ color: rgb(238, 136, 136);
+}
+
+/* =Tablet (Portrait)
+-----------------------------------------------------------------------------*/
+@media only screen and (min-width: 768px) and (max-width: 959px) {
+ .wrapper {
+ width: 748px;
+ }
+}
+
+/* =Mobile (Portrait)
+-----------------------------------------------------------------------------*/
+@media only screen and (max-width: 767px) {
+
+ #topbar #navbar-main {
+ text-align: center;
+ }
+
+ #banner {
+ text-align: center;
+ margin-bottom: 1.5em;
+ }
+
+ #footer section, #footer nav {
+ float: none;
+ text-align: center;
+ }
+
+ #footer nav ul {
+ margin-top: 1em;
+ text-align: center;
+ }
+
+ #footer nav ul li {
+ margin: 0;
+ margin-right: 1em;
+ }
+
+ .dateblock {
+ text-align: center;
+ }
+
+ h1, h2, h3, h4, h5, form, input {
+ text-align: center;
+ }
+}
+
+/* =Mobile (Landscape)
+-----------------------------------------------------------------------------*/
+@media only screen and (min-width: 480px) and (max-width: 767px) {
+ .wrapper {
+ width: 420px;
+ }
+}
+
+/* -------------- */
+.grlog blockquote {
+ font-style: normal;
+ border: 0px;
+ font-size: 1em;
+}
+
+.grlog blockquote blockquote {
+ border-left: 2px solid #dddddd;
+}
+
+.grlog .datestamp {
+ text-transform: lowercase;
+ font-family: 'Alegreya SC';
+}
+
+.grlog img {
+ margin-left: 12px;
+ margin-bottom: 12px;
+ margin-top: 12px;
+}
+
+.grlog p {
+ padding-top: 0.5em;
+}
+
+.oldcons img {
+ margin-left: 0px;
+ margin-bottom: 24px;
+ margin-top: 12px;
+}
+
+.oldcons p {
+ padding-top: 0.5em;
+}
+
+.oldcons h3 {
+ padding-top: 0.2em;
+}
+
+.logician {
+ float: left;
+ margin-right: 16px;
+}
+
diff --git a/static/assets/css/kube.css b/static/assets/css/kube.css
new file mode 100644
index 0000000..e3518d9
--- /dev/null
+++ b/static/assets/css/kube.css
@@ -0,0 +1,3775 @@
+/*
+ Kube UI Framework
+ Version 7.2.1
+ Updated: November 10, 2018
+
+ http://imperavi.com/kube/
+
+ Copyright (c) 2009-2018, Imperavi LLC.
+ License: MIT
+*/
+html {
+ box-sizing: border-box;
+ -webkit-text-size-adjust: 100%; }
+
+*,
+*:before,
+*:after {
+ box-sizing: inherit; }
+
+* {
+ margin: 0;
+ padding: 0;
+ outline: none; }
+
+img,
+video,
+audio {
+ max-width: 100%; }
+
+img,
+video {
+ height: auto; }
+
+audio,
+canvas,
+iframe,
+img,
+svg,
+video {
+ vertical-align: middle; }
+
+svg {
+ max-height: 100%; }
+
+svg:not(:root) {
+ overflow: hidden; }
+
+iframe {
+ border: none;
+ width: 100%; }
+
+button,
+[type="submit"] {
+ -webkit-appearance: button; }
+
+[type="radio"],
+[type="checkbox"] {
+ vertical-align: middle;
+ position: relative;
+ bottom: 0.15rem;
+ margin-right: 2px; }
+
+input[type="search"] {
+ -webkit-appearance: textfield; }
+
+input[type="search"]::-webkit-search-decoration,
+input[type="search"]::-webkit-search-cancel-button {
+ -webkit-appearance: none; }
+
+::-moz-focus-inner {
+ border: none;
+ padding: 0; }
+
+@font-face {
+ font-family: 'Kube';
+ src: url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBfgAAAC8AAAAYGNtYXAXVtKOAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5ZsMn2SAAAAF4AAADeGhlYWQMP9EUAAAE8AAAADZoaGVhB8IDzQAABSgAAAAkaG10eCYABd4AAAVMAAAAMGxvY2EFWASuAAAFfAAAABptYXhwABcAmwAABZgAAAAgbmFtZfMJxocAAAW4AAABYnBvc3QAAwAAAAAHHAAAACAAAwPHAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpBwPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6Qf//f//AAAAAAAg6QD//f//AAH/4xcEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAAKAAAAAAQAA8AADwAUACQANABEAFYAaAB4AIgAmAAAEyIGFREUFjMhMjY1ETQmIwUhESEREzgBMSIGFRQWMzI2NTQmIzM4ATEiBhUUFjMyNjU0JiMzOAExIgYVFBYzMjY1NCYjATIWHQEUBiMiJj0BNDYzOAExITIWHQEUBiMiJj0BNDYzOAExATgBMSIGFRQWMzI2NTQmIzM4ATEiBhUUFjMyNjU0JiMzOAExIgYVFBYzMjY1NCYjwFBwcFACgFBwcFD9IQM+/MKrHioqHh4qKh70HioqHh4qKh70HisrHh0rKh7+MBQdHRQUHBwUAbgUHBwUFB0dFP4wHioqHh4qKh70HioqHh4qKh70HisrHh0rKh4DYHBQ/iBQcHBQAeBQcF/9XwKh/n8qHh4qKh4eKioeHioqHh4qKh4eKioeHioCQBwVjhUcHBWOFRwcFY4VHBwVjhUc/rAqHh4qKh4eKioeHioqHh4qKh4eKioeHioAAAABAQAAwAMAAcAACwAAAQcXBycHJzcnNxc3AwDMAjMDAzMCzDTMzAGVqAIrAgIrAqgrqKgAAQGAAEACgAJAAAsAACUnByc3JzcXNxcHFwJVqAIrAgIrAqgrqKhAzAIzAwMzAsw0zMwAAAEBgABAAoACQAALAAABFzcXBxcHJwcnNycBq6gCKwICKwKoK6ioAkDMAjMDAzMCzDTMzAABAQAAwAMAAcAACwAAJTcnNxc3FwcXBycHAQDMAjMDAzMCzDTMzOuoAisCAisCqCuoqAAAAgAP/+UD1AOqAAQACAAAEwEHATcFAScBSwOJPPx3PAOJ/Hc8A4kDqvx3PAOJPDz8dzwDiQAAAAADAIAAgAOAAwAAAwAHAAsAADc1IRUBIRUhESEVIYADAP0AAwD9AAMA/QCAgIABgIABgIAAAgBPAA8DsgNxABgALQAAJQcBDgEjIi4CNTQ+AjMyHgIVFAYHAQEiDgIVFB4CMzI+AjU0LgIjA7JY/t4lWTBBc1YxMVZzQUFzVTIcGQEi/dgxVkAlJUBWMTFWQCUlQFYxZ1gBIRkcMlVzQUFzVjExVnNBMFkm/uACuyVAVjExVkAlJUBWMTFWQCUAAAABAAAAAQAABhlWm18PPPUACwQAAAAAANSQRjkAAAAA1JBGOQAA/+UEAAPAAAAACAACAAAAAAAAAAEAAAPA/8AAAAQAAAAAAAQAAAEAAAAAAAAAAAAAAAAAAAAMBAAAAAAAAAAAAAAAAgAAAAQAAAAEAAEABAABgAQAAYAEAAEABAAADwQAAIAEAABPAAAAAAAKABQAHgDYAPIBDAEmAUABXAF2AbwAAAABAAAADACZAAoAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEABAAAAAEAAAAAAAIABwBFAAEAAAAAAAMABAAtAAEAAAAAAAQABABaAAEAAAAAAAUACwAMAAEAAAAAAAYABAA5AAEAAAAAAAoAGgBmAAMAAQQJAAEACAAEAAMAAQQJAAIADgBMAAMAAQQJAAMACAAxAAMAAQQJAAQACABeAAMAAQQJAAUAFgAXAAMAAQQJAAYACAA9AAMAAQQJAAoANACAS3ViZQBLAHUAYgBlVmVyc2lvbiAxLjAAVgBlAHIAcwBpAG8AbgAgADEALgAwS3ViZQBLAHUAYgBlS3ViZQBLAHUAYgBlUmVndWxhcgBSAGUAZwB1AGwAYQByS3ViZQBLAHUAYgBlRm9udCBnZW5lcmF0ZWQgYnkgSWNvTW9vbi4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==") format("truetype");
+ font-weight: normal;
+ font-style: normal; }
+
+[class^="icon-kube-"], [class*=" icon-kube-"], .close, .caret {
+ /* use !important to prevent issues with browser extensions that change fonts */
+ font-family: 'Kube' !important;
+ speak: none;
+ font-style: normal;
+ font-weight: normal;
+ font-variant: normal;
+ text-transform: none;
+ line-height: 1;
+ /* Better Font Rendering =========== */
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale; }
+
+.icon-kube-calendar:before {
+ content: "\e900"; }
+
+.caret.is-down:before,
+.icon-kube-caret-down:before {
+ content: "\e901"; }
+
+.caret.is-left:before,
+.icon-kube-caret-left:before {
+ content: "\e902"; }
+
+.caret.is-right:before,
+.icon-kube-caret-right:before {
+ content: "\e903"; }
+
+.caret.is-up:before,
+.icon-kube-caret-up:before {
+ content: "\e904"; }
+
+.close:before,
+.icon-kube-close:before {
+ content: "\e905"; }
+
+.icon-kube-menu:before {
+ content: "\e906"; }
+
+.icon-kube-search:before {
+ content: "\e907"; }
+
+html {
+ font-size: 1em; }
+
+body {
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
+ color: #111113;
+ line-height: 1.5; }
+
+a {
+ color: #158df7; }
+
+a:hover {
+ color: #ee2455; }
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
+ font-weight: bold;
+ text-rendering: optimizeLegibility;
+ color: inherit;
+ line-height: 1.2; }
+ h1 + *,
+ h2 + *,
+ h3 + *,
+ h4 + *,
+ h5 + *,
+ h6 + * {
+ margin-top: 8px; }
+ h1 + h1,
+ h1 + h2,
+ h1 + h3,
+ h1 + h4,
+ h1 + h5,
+ h1 + h6,
+ h2 + h1,
+ h2 + h2,
+ h2 + h3,
+ h2 + h4,
+ h2 + h5,
+ h2 + h6,
+ h3 + h1,
+ h3 + h2,
+ h3 + h3,
+ h3 + h4,
+ h3 + h5,
+ h3 + h6,
+ h4 + h1,
+ h4 + h2,
+ h4 + h3,
+ h4 + h4,
+ h4 + h5,
+ h4 + h6,
+ h5 + h1,
+ h5 + h2,
+ h5 + h3,
+ h5 + h4,
+ h5 + h5,
+ h5 + h6,
+ h6 + h1,
+ h6 + h2,
+ h6 + h3,
+ h6 + h4,
+ h6 + h5,
+ h6 + h6 {
+ margin-top: 8px; }
+
+h1 {
+ font-size: 2.5em; }
+
+h2 {
+ font-size: 1.75em; }
+
+h3 {
+ font-size: 1.5em; }
+
+h4 {
+ font-size: 1.25em; }
+
+h5 {
+ font-size: 1em; }
+
+h6 {
+ font-size: 0.75em; }
+
+h6 {
+ text-transform: uppercase;
+ letter-spacing: .01em; }
+
+p,
+blockquote,
+hr,
+pre,
+ol,
+ul,
+dl,
+figure,
+address {
+ margin-bottom: 16px; }
+
+p + h1,
+p + h2,
+p + h3,
+p + h4,
+p + h5,
+p + h6,
+blockquote + h1,
+blockquote + h2,
+blockquote + h3,
+blockquote + h4,
+blockquote + h5,
+blockquote + h6,
+hr + h1,
+hr + h2,
+hr + h3,
+hr + h4,
+hr + h5,
+hr + h6,
+pre + h1,
+pre + h2,
+pre + h3,
+pre + h4,
+pre + h5,
+pre + h6,
+ol + h1,
+ol + h2,
+ol + h3,
+ol + h4,
+ol + h5,
+ol + h6,
+ul + h1,
+ul + h2,
+ul + h3,
+ul + h4,
+ul + h5,
+ul + h6,
+dl + h1,
+dl + h2,
+dl + h3,
+dl + h4,
+dl + h5,
+dl + h6,
+table + h1,
+table + h2,
+table + h3,
+table + h4,
+table + h5,
+table + h6,
+div + h1,
+div + h2,
+div + h3,
+div + h4,
+div + h5,
+div + h6,
+form + h1,
+form + h2,
+form + h3,
+form + h4,
+form + h5,
+form + h6 {
+ margin-top: 20px; }
+
+ul,
+ol {
+ margin-left: 20px; }
+
+ul ul,
+ul ol,
+ol ul,
+ol ol {
+ margin-top: 0;
+ margin-bottom: 0; }
+
+nav ul,
+nav ol {
+ margin-left: 0;
+ margin-bottom: 0;
+ list-style: none; }
+
+nav ul ul,
+nav ul ol,
+nav ol ol,
+nav ol ul {
+ margin-left: 20px; }
+
+li li {
+ font-size: 1em; }
+
+ul.is-bar,
+ol.is-bar {
+ margin: 0;
+ list-style: none; }
+ ul.is-bar li,
+ ol.is-bar li {
+ display: inline-block; }
+ ul.is-bar li + li,
+ ol.is-bar li + li {
+ margin-left: 1em; }
+
+dt {
+ font-weight: 600; }
+
+dl dd + dt {
+ margin-top: 8px; }
+
+hr {
+ border: none;
+ border-bottom: 1px solid rgba(0, 0, 0, 0.1);
+ overflow: visible;
+ margin-top: -1px; }
+
+blockquote {
+ font-size: 1.125em;
+ font-weight: normal;
+ font-style: italic;
+ line-height: 1.45;
+ color: rgba(17, 17, 19, 0.6);
+ padding: 0.4em 0 0.4em 1rem;
+ border: none;
+ border-left: 3px solid rgba(21, 141, 247, 0.6); }
+ blockquote small {
+ color: rgba(17, 17, 19, 0.6); }
+ blockquote p:last-child {
+ margin-bottom: 0; }
+
+b,
+strong {
+ font-weight: 600; }
+
+em,
+i,
+cite,
+dfn {
+ font-style: italic; }
+
+time, small {
+ display: inline-block;
+ font-size: 87.5%;
+ line-height: 1;
+ color: rgba(17, 17, 19, 0.6); }
+
+figcaption, code, var, kbd {
+ display: inline-block;
+ font-family: monospace, monospace;
+ font-size: 87.5%;
+ line-height: 1;
+ color: rgba(17, 17, 19, 0.85); }
+
+figcaption {
+ font-size: 80%;
+ font-style: italic;
+ color: rgba(17, 17, 19, 0.7); }
+
+code {
+ color: rgba(17, 17, 19, 0.75);
+ background: rgba(17, 17, 19, 0.05);
+ border: 0 solid transparent;
+ border-radius: 4px; }
+
+var {
+ opacity: .7;
+ font-style: normal; }
+
+dfn,
+abbr {
+ text-transform: uppercase; }
+ dfn[title],
+ abbr[title] {
+ text-decoration: none;
+ border-bottom: 1px dotted rgba(17, 17, 19, 0.5);
+ cursor: help; }
+
+code, kbd {
+ position: relative;
+ top: -1px;
+ padding: .25em .35em; }
+
+kbd {
+ color: rgba(17, 17, 19, 0.75);
+ background: none;
+ border: 1px solid rgba(17, 17, 19, 0.2);
+ border-radius: 4px; }
+
+sup,
+sub {
+ font-size: .6em; }
+
+sup {
+ vertical-align: top;
+ position: relative;
+ bottom: -.2em; }
+
+h1 sup,
+h1 sub,
+h2 sup,
+h2 sub,
+h3 sup,
+h3 sub {
+ font-size: .4em; }
+
+sub {
+ line-height: 1; }
+
+pre {
+ font-family: monospace, monospace;
+ font-size: 0.875em; }
+
+pre,
+pre code {
+ background: transparent;
+ padding: 0;
+ top: 0;
+ display: block;
+ line-height: 1.5;
+ color: #111113;
+ overflow: auto;
+ white-space: pre; }
+
+pre {
+ padding: 1rem;
+ border: 1px solid rgba(17, 17, 19, 0.08);
+ border-radius: 4px; }
+
+pre code {
+ font-size: 100%;
+ border: none;
+ background: none; }
+
+figure div + figcaption,
+figure pre + figcaption {
+ position: relative;
+ top: -8px; }
+
+figure pre {
+ background-color: none;
+ border: 1px solid rgba(17, 17, 19, 0.1);
+ border-radius: 4px;
+ margin-bottom: .5rem; }
+
+ul.is-unstyled {
+ margin-left: 0; }
+
+ul.is-unstyled,
+ul.is-unstyled ul {
+ list-style: none; }
+
+.is-muted {
+ color: rgba(17, 17, 19, 0.6); }
+
+.is-muted a,
+a.is-muted {
+ color: rgba(17, 17, 19, 0.6); }
+
+.is-muted a:hover,
+a.is-muted:hover {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ color: #111113; }
+
+.is-color-black,
+.is-color-black a {
+ color: #111113; }
+
+a.is-color-black:hover,
+.is-color-black a:hover {
+ color: #ee2455; }
+
+.is-large {
+ font-size: 1.3125em;
+ line-height: 1.45; }
+
+.is-big {
+ font-size: 1.125em;
+ line-height: 1.45; }
+
+.is-small {
+ font-size: 0.875em; }
+
+.is-smaller {
+ font-size: 0.75em; }
+
+.is-text-left {
+ text-align: left; }
+
+.is-text-center {
+ text-align: center; }
+
+.is-text-right {
+ text-align: right; }
+
+@media only screen and (max-width: 767px) {
+ .is-text-left-mobile {
+ text-align: left; }
+ .is-text-right-mobile {
+ text-align: right; }
+ .is-text-center-mobile {
+ text-align: center; } }
+
+.is-nowrap,
+.is-nowrap td {
+ white-space: nowrap; }
+
+.is-highlight {
+ background-color: rgba(21, 141, 247, 0.1); }
+
+table {
+ font-size: 0.9375em;
+ border-collapse: collapse;
+ border-spacing: 0;
+ max-width: 100%;
+ width: 100%;
+ empty-cells: show;
+ margin-bottom: 20px; }
+
+table caption {
+ text-align: left;
+ font-size: 11px;
+ font-weight: bold;
+ text-transform: uppercase;
+ color: rgba(17, 17, 19, 0.4);
+ letter-spacing: 1px;
+ margin-bottom: 2px; }
+
+th {
+ font-weight: 700;
+ color: inherit;
+ text-align: left;
+ vertical-align: bottom; }
+
+td {
+ color: inherit;
+ vertical-align: top; }
+
+tbody.is-middle td,
+tr.is-middle td,
+td.is-middle {
+ vertical-align: middle; }
+
+th,
+td {
+ padding: 16px 16px;
+ border-bottom: 1px solid #eee; }
+ th::before, th::after,
+ td::before,
+ td::after {
+ content: '';
+ display: block;
+ height: 0;
+ width: 0; }
+ th::before,
+ td::before {
+ margin-top: calc((0.75 - 1.5) * 0.49em); }
+ th::after,
+ td::after {
+ margin-bottom: calc((0.75 - 1.5) * 0.49em); }
+ th:first-child,
+ td:first-child {
+ padding-left: 0; }
+ th:last-child,
+ td:last-child {
+ padding-right: 0; }
+
+tbody th,
+tbody td {
+ border-width: 1px;
+ border-color: #eee; }
+
+tfoot th,
+tfoot td {
+ color: rgba(17, 17, 19, 0.5); }
+
+table.is-border td,
+table.is-border th,
+table.is-bordered td,
+table.is-bordered th {
+ border: 1px solid #eee; }
+
+table.is-border tbody th,
+table.is-border tbody td,
+table.is-bordered tbody th,
+table.is-bordered tbody td {
+ border-bottom-width: 1px;
+ border-bottom-color: #eee; }
+
+table.is-striped tr:nth-child(odd) td {
+ background-color: #fafafa; }
+
+table.is-border td:first-child,
+table.is-border th:first-child,
+table.is-bordered td:first-child,
+table.is-bordered th:first-child,
+table.is-striped td:first-child,
+table.is-striped th:first-child {
+ padding-left: 16px; }
+
+table.is-border td:last-child,
+table.is-border th:last-child,
+table.is-bordered td:last-child,
+table.is-bordered th:last-child,
+table.is-striped td:last-child,
+table.is-striped th:last-child {
+ padding-right: 16px; }
+
+@media only screen and (max-width: 767px) {
+ table.is-responsive th {
+ display: none; }
+ table.is-responsive tr, table.is-responsive td {
+ display: block; }
+ table.is-responsive tr:nth-child(odd) {
+ background-color: #fafafa; }
+ table.is-responsive td {
+ padding: 16px;
+ text-align: right; }
+ table.is-responsive td:before {
+ margin-top: 2px;
+ content: attr(data-label);
+ float: left;
+ font-size: 0.875em;
+ font-weight: bold;
+ text-transform: uppercase;
+ white-space: nowrap; } }
+
+.is-table-container {
+ overflow-x: auto;
+ -webkit-overflow-scrolling: touch;
+ margin-bottom: 16px; }
+ .is-table-container table {
+ margin-bottom: 0; }
+
+.is-row {
+ display: flex;
+ flex-direction: row;
+ flex-wrap: wrap;
+ margin-left: -24px; }
+ .is-row.is-gapless,
+ .is-row.is-gapless > .is-row {
+ margin-left: 0;
+ margin-top: 0; }
+ .is-row > .is-col {
+ flex: 1;
+ margin-left: 24px; }
+ .is-row > .is-col.is-10 {
+ min-width: calc(10% - 24px); }
+ .is-row > .is-col.is-20 {
+ min-width: calc(20% - 24px); }
+ .is-row > .is-col.is-25 {
+ min-width: calc(25% - 24px); }
+ .is-row > .is-col.is-30 {
+ min-width: calc(30% - 24px); }
+ .is-row > .is-col.is-33, .is-row > .is-col.is-34 {
+ min-width: calc(33.3333% - 24px); }
+ .is-row > .is-col.is-35 {
+ min-width: calc(35% - 24px); }
+ .is-row > .is-col.is-40 {
+ min-width: calc(40% - 24px); }
+ .is-row > .is-col.is-50 {
+ min-width: calc(50% - 24px); }
+ .is-row > .is-col.is-60 {
+ min-width: calc(60% - 24px); }
+ .is-row > .is-col.is-65 {
+ min-width: calc(65% - 24px); }
+ .is-row > .is-col.is-66, .is-row > .is-col.is-67 {
+ min-width: calc(66.6666% - 24px); }
+ .is-row > .is-col.is-70 {
+ min-width: calc(70% - 24px); }
+ .is-row > .is-col.is-75 {
+ min-width: calc(75% - 24px); }
+ .is-row > .is-col.is-80 {
+ min-width: calc(80% - 24px); }
+ .is-row > .is-col.is-90 {
+ min-width: calc(90% - 24px); }
+ .is-row.is-gapless > .is-col {
+ margin-left: 0; }
+
+@media only screen and (max-width: 767px) {
+ [class^='is-offset-'],
+ [class*=' is-offset-'] {
+ margin-left: 0; } }
+
+@media only screen and (max-width: 767px) {
+ .is-row {
+ flex-direction: column;
+ flex-wrap: nowrap;
+ margin-left: 0;
+ margin-top: 0; }
+ .is-row + .is-row {
+ margin-top: 0; }
+ .is-row > .is-col {
+ flex: 0 0 100%;
+ width: 100% !important;
+ max-width: 100% !important;
+ margin-left: 0; } }
+
+.label {
+ display: inline-block;
+ vertical-align: baseline;
+ text-decoration: none;
+ font-size: 13px;
+ font-weight: 500;
+ letter-spacing: 0;
+ text-transform: none;
+ line-height: 20px;
+ background: #f3f3f3;
+ color: rgba(17, 17, 19, 0.85);
+ padding: 0 8px;
+ border: 1px solid transparent;
+ border-radius: 4px; }
+ .label a {
+ color: inherit;
+ text-decoration: none; }
+ .label a:hover {
+ color: inherit;
+ text-decoration: underline; }
+ .label .close {
+ margin-right: -3px; }
+
+a.label {
+ color: rgba(17, 17, 19, 0.85); }
+ a.label:hover {
+ text-decoration: underline; }
+
+.label.is-secondary {
+ font-size: 13px;
+ font-weight: 500;
+ letter-spacing: 0;
+ text-transform: none;
+ padding: 0 0.5em;
+ background: none;
+ color: rgba(17, 17, 19, 0.85);
+ border: 1px solid rgba(17, 17, 19, 0.2);
+ border-radius: 4px; }
+
+.label.is-tertiary {
+ letter-spacing: 0.035em;
+ background: none;
+ color: #111113;
+ text-transform: uppercase;
+ font-size: 12px;
+ font-weight: bold;
+ padding: 0 0.2em;
+ border: 1px solid transparent;
+ border-radius: 0; }
+
+.label.is-badge {
+ text-align: center;
+ font-size: 10px;
+ line-height: 16px;
+ height: 18px;
+ border-radius: 64px;
+ min-width: 18px;
+ padding-left: 2px;
+ padding-right: 2px; }
+
+.label.is-error {
+ background-color: rgba(238, 36, 85, 0.07);
+ color: #ee2455; }
+ .label.is-error.is-secondary {
+ background-color: transparent;
+ color: #ee2455;
+ border-color: rgba(238, 36, 85, 0.3); }
+ .label.is-error.is-tertiary {
+ background-color: transparent;
+ color: #ee2455; }
+ .label.is-error .close:hover {
+ background-color: #ee2455; }
+
+.label.is-focus {
+ background-color: rgba(21, 141, 247, 0.07);
+ color: #158df7; }
+ .label.is-focus.is-secondary {
+ background-color: transparent;
+ color: #158df7;
+ border-color: rgba(21, 141, 247, 0.3); }
+ .label.is-focus.is-tertiary {
+ background-color: transparent;
+ color: #158df7; }
+ .label.is-focus .close:hover {
+ background-color: #158df7; }
+
+.label.is-success {
+ background-color: rgba(32, 188, 113, 0.07);
+ color: #20bc71; }
+ .label.is-success.is-secondary {
+ background-color: transparent;
+ color: #20bc71;
+ border-color: rgba(32, 188, 113, 0.3); }
+ .label.is-success.is-tertiary {
+ background-color: transparent;
+ color: #20bc71; }
+ .label.is-success .close:hover {
+ background-color: #20bc71; }
+
+.label.is-warning {
+ background-color: rgba(255, 105, 81, 0.07);
+ color: #ff6951; }
+ .label.is-warning.is-secondary {
+ background-color: transparent;
+ color: #ff6951;
+ border-color: rgba(255, 105, 81, 0.3); }
+ .label.is-warning.is-tertiary {
+ background-color: transparent;
+ color: #ff6951; }
+ .label.is-warning .close:hover {
+ background-color: #ff6951; }
+
+.button, .button:active, .button:focus {
+ -webkit-appearance: none;
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ vertical-align: middle;
+ text-align: center;
+ font-family: inherit;
+ font-size: 0.9375em;
+ font-weight: 500;
+ text-decoration: none;
+ text-transform: none;
+ color: rgba(255, 255, 255, 0.95);
+ background: #0c3dd7;
+ border-radius: 4px;
+ border: 0 solid transparent;
+ min-height: 2.66667em;
+ padding: 0.5em 1.6em;
+ box-shadow: none;
+ cursor: pointer;
+ line-height: 1.2; }
+
+.button i,
+.button span {
+ position: relative;
+ top: 1px;
+ display: inline-block;
+ font-size: 16px;
+ width: 24px; }
+ .button i.caret,
+ .button span.caret {
+ top: 0;
+ font-size: 110%;
+ margin-right: -12px; }
+
+.button:hover {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ outline: none;
+ text-decoration: none;
+ color: rgba(255, 255, 255, 0.95);
+ background-color: #2355f3; }
+
+.button:disabled, .button.is-disabled {
+ cursor: default;
+ font-style: normal;
+ color: #fff;
+ background-color: rgba(17, 17, 19, 0.5);
+ opacity: .55; }
+
+.button.is-secondary {
+ font-size: 0.9375em;
+ font-weight: 500;
+ text-decoration: none;
+ text-transform: none;
+ color: #0c3dd7;
+ background: none;
+ border-radius: 4px;
+ border: 2px solid #0c3dd7;
+ min-height: 2.66667em;
+ padding: 0.5em 1.6em;
+ box-shadow: none; }
+ .button.is-secondary:hover {
+ color: rgba(255, 255, 255, 0.95);
+ background: #0c3dd7;
+ border-color: #0c3dd7; }
+ .button.is-secondary.is-loading:before {
+ width: 22px;
+ height: 22px;
+ border-color: rgba(12, 61, 215, 0.25);
+ border-bottom-color: #0c3dd7; }
+ .button.is-secondary.is-loading:hover:before {
+ border-color: rgba(255, 255, 255, 0.25);
+ border-bottom-color: #fff; }
+ .button.is-secondary:disabled, .button.is-secondary.is-disabled {
+ color: rgba(17, 17, 19, 0.5);
+ border-color: rgba(17, 17, 19, 0.3);
+ background: none; }
+ .button.is-secondary:disabled:hover, .button.is-secondary.is-disabled:hover {
+ background-color: none; }
+
+.button.is-tertiary {
+ font-size: 0.9375em;
+ font-weight: 500;
+ text-decoration: none;
+ text-transform: none;
+ color: #0c3dd7;
+ background: none;
+ border-radius: 4px;
+ border: 0 solid transparent;
+ min-height: 2.66667em;
+ padding: 0.5em 0;
+ box-shadow: none; }
+ .button.is-tertiary i,
+ .button.is-tertiary span {
+ top: 0; }
+ .button.is-tertiary i.caret,
+ .button.is-tertiary span.caret {
+ top: -1px;
+ margin-left: -4px; }
+ .button.is-tertiary:hover {
+ color: #0c3dd7;
+ text-decoration: underline; }
+ .button.is-tertiary.is-loading:before {
+ border-color: rgba(12, 61, 215, 0.25);
+ border-bottom-color: #0c3dd7; }
+ .button.is-tertiary:disabled, .button.is-tertiary.is-disabled {
+ text-decoration: none;
+ color: rgba(17, 17, 19, 0.5); }
+
+.button.is-inverted {
+ color: #111113;
+ background-color: #fff; }
+ .button.is-inverted:hover {
+ opacity: .7; }
+ .button.is-inverted:disabled:hover, .button.is-inverted.is-disabled:hover {
+ opacity: .55; }
+ .button.is-inverted.is-secondary {
+ background: none;
+ color: #fff;
+ border-color: #fff; }
+ .button.is-inverted.is-secondary:hover {
+ opacity: 1;
+ background-color: #fff;
+ color: rgba(17, 17, 19, 0.95);
+ border-color: #fff; }
+ .button.is-inverted.is-secondary:disabled:hover, .button.is-inverted.is-secondary.is-disabled:hover {
+ opacity: .55;
+ background: none;
+ color: #fff; }
+ .button.is-inverted.is-tertiary {
+ background: none;
+ color: #fff; }
+ .button.is-inverted.is-tertiary:hover {
+ opacity: .6; }
+ .button.is-inverted.is-tertiary:disabled:hover, .button.is-inverted.is-tertiary.is-disabled:hover {
+ opacity: .55; }
+
+.button.is-small {
+ font-size: 0.875em;
+ min-height: 2.28571em;
+ padding: 0.45em 1.15em; }
+ .button.is-small.is-tertiary {
+ padding-left: 0;
+ padding-right: 0; }
+
+.button.is-big {
+ font-size: 1.125em;
+ min-height: 2.44444em;
+ padding: 0.45em 1.45em; }
+ .button.is-big.is-tertiary {
+ padding-left: 0;
+ padding-right: 0; }
+
+.button.is-loading, .button.is-icon {
+ padding-left: 1em;
+ padding-right: 1em; }
+ .button.is-loading.is-tertiary, .button.is-icon.is-tertiary {
+ padding-left: 0;
+ padding-right: 0; }
+
+.button:empty.is-loading:before {
+ margin-right: 0; }
+
+::placeholder {
+ color: rgba(17, 17, 19, 0.4);
+ opacity: 1; }
+
+:-ms-input-placeholder {
+ color: rgba(17, 17, 19, 0.4); }
+
+::-ms-input-placeholder {
+ color: rgba(17, 17, 19, 0.4); }
+
+fieldset {
+ font-family: inherit;
+ border: 1px solid rgba(17, 17, 19, 0.1);
+ border-radius: 4px;
+ padding: 32px;
+ margin-bottom: 16px; }
+
+legend {
+ font-size: 0.75em;
+ font-weight: bold;
+ text-transform: uppercase;
+ color: rgba(17, 17, 19, 0.5);
+ padding: 0 1rem;
+ margin-left: -1rem;
+ top: 2px;
+ position: relative;
+ line-height: 0; }
+
+input,
+textarea,
+select {
+ display: block;
+ width: 100%;
+ font-family: inherit;
+ vertical-align: middle;
+ font-size: 0.9375em;
+ font-weight: normal;
+ height: 2.66667em;
+ background-color: #fff;
+ border: 1px solid rgba(17, 17, 19, 0.1);
+ border-radius: 4px;
+ box-shadow: none;
+ padding: 0 8px;
+ color: rgba(17, 17, 19, 0.8); }
+
+textarea {
+ padding: 8px;
+ resize: vertical;
+ height: auto;
+ line-height: 1.5;
+ vertical-align: top; }
+
+select {
+ -webkit-appearance: none;
+ background-image: url('data:image/svg+xml;utf8,
');
+ background-repeat: no-repeat;
+ background-position: right .65em center;
+ padding-right: 28px; }
+
+select[multiple] {
+ background-image: none;
+ height: auto;
+ padding: 8px; }
+
+input:hover,
+textarea:hover,
+select:hover {
+ outline: none;
+ color: inherit;
+ background-color: #fff;
+ border: 1px solid rgba(17, 17, 19, 0.2);
+ box-shadow: none; }
+
+input:focus,
+textarea:focus,
+select:focus {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ outline: none;
+ color: inherit;
+ background-color: #fff;
+ border: 1px solid rgba(21, 141, 247, 0.5);
+ box-shadow: 0 0 3px rgba(21, 141, 247, 0.5) inset; }
+
+input.is-error,
+textarea.is-error,
+select.is-error {
+ background-color: rgba(238, 36, 85, 0.05);
+ border: 1px solid rgba(238, 36, 85, 0.5);
+ box-shadow: none inset; }
+ input.is-error:focus,
+ textarea.is-error:focus,
+ select.is-error:focus {
+ border-color: rgba(238, 36, 85, 0.75);
+ box-shadow: 0 0 3px rgba(238, 36, 85, 0.5) inset; }
+
+input.is-success,
+textarea.is-success,
+select.is-success {
+ background-color: rgba(32, 188, 113, 0.05);
+ border: 1px solid rgba(32, 188, 113, 0.5);
+ box-shadow: none inset; }
+ input.is-success:focus,
+ textarea.is-success:focus,
+ select.is-success:focus {
+ border-color: rgba(32, 188, 113, 0.75);
+ box-shadow: 0 0 3px rgba(32, 188, 113, 0.5) inset; }
+
+input.is-warning,
+textarea.is-warning,
+select.is-warning {
+ background-color: rgba(255, 105, 81, 0.05);
+ border: 1px solid rgba(255, 105, 81, 0.5);
+ box-shadow: none inset; }
+ input.is-warning:focus,
+ textarea.is-warning:focus,
+ select.is-warning:focus {
+ border-color: rgba(255, 105, 81, 0.75);
+ box-shadow: 0 0 3px rgba(255, 105, 81, 0.5) inset; }
+
+input:disabled, input:disabled:hover, input.is-disabled, input.is-disabled:hover,
+textarea:disabled,
+textarea:disabled:hover,
+textarea.is-disabled,
+textarea.is-disabled:hover,
+select:disabled,
+select:disabled:hover,
+select.is-disabled,
+select.is-disabled:hover {
+ resize: none;
+ opacity: 0.7;
+ cursor: default;
+ font-style: italic;
+ color: rgba(17, 17, 19, 0.6);
+ border: 1px solid rgba(17, 17, 19, 0.1);
+ box-shadow: none;
+ background-color: #fff; }
+
+input[type="radio"].is-error,
+input[type="checkbox"].is-error {
+ outline: 2px solid rgba(238, 36, 85, 0.5); }
+
+input[type="radio"].is-success,
+input[type="checkbox"].is-success {
+ outline: 2px solid rgba(32, 188, 113, 0.5); }
+
+input[type="file"] {
+ width: auto;
+ border: none;
+ padding: 0;
+ height: auto;
+ background: none;
+ box-shadow: none;
+ display: inline-block; }
+
+input[type="search"],
+input.is-search {
+ background-repeat: no-repeat;
+ background-position: 8px 51%;
+ background-image: url('data:image/svg+xml;utf8,
');
+ padding-left: 32px; }
+
+input[type="radio"],
+input[type="checkbox"] {
+ display: inline-block;
+ width: auto;
+ height: auto;
+ padding: 0; }
+
+label {
+ display: block;
+ font-size: 0.9375em;
+ font-weight: normal;
+ text-transform: none;
+ color: #111113;
+ margin-bottom: 4px; }
+ label.is-checkbox,
+ label .is-desc,
+ label .is-success,
+ label .is-warning,
+ label .is-error {
+ text-transform: none;
+ font-weight: normal; }
+ label.is-checkbox {
+ font-size: 1em;
+ line-height: 1.5;
+ cursor: pointer;
+ color: inherit; }
+ label.is-checkbox.is-small {
+ font-size: 0.875em; }
+ label.is-checkbox.is-big {
+ font-size: 1.125em; }
+ label.is-checkbox.is-large {
+ font-size: 1.3125em; }
+
+form {
+ margin-bottom: 16px; }
+ form span.is-success,
+ form div.is-success {
+ font-size: 0.75em;
+ color: #20bc71; }
+ form span.is-error,
+ form div.is-error {
+ font-size: 0.75em;
+ color: #ee2455; }
+ form span.is-warning,
+ form div.is-warning {
+ font-size: 0.75em;
+ color: #ff6951; }
+ form span.is-success,
+ form span.is-error,
+ form span.is-warning {
+ margin-left: 2px; }
+ form .is-desc {
+ font-size: 0.75rem;
+ font-weight: normal;
+ text-transform: none;
+ color: rgba(17, 17, 19, 0.5); }
+ form span.is-desc {
+ margin-left: 4px; }
+ form div.is-desc {
+ margin-top: 4px;
+ margin-bottom: -4px; }
+ form .is-req {
+ position: relative;
+ top: 1px;
+ font-size: 1rem;
+ font-weight: bold;
+ color: #ee2455; }
+
+.form-item {
+ margin-bottom: 16px; }
+
+fieldset > .form-item:last-child {
+ margin-bottom: 0; }
+
+.form-checkboxes label.is-checkbox {
+ display: inline-block;
+ margin-right: 16px; }
+
+.form-item.is-inline,
+.form-item.is-inline-offset {
+ padding-left: 150px; }
+
+.form-item.is-inline label:not(.is-checkbox) {
+ float: left;
+ margin-left: -150px; }
+
+.form-item.is-bar input,
+.form-item.is-bar textarea,
+.form-item.is-bar select {
+ display: inline-block;
+ width: auto; }
+
+.form-item.is-buttons {
+ display: flex; }
+ .form-item.is-buttons button,
+ .form-item.is-buttons .button {
+ margin-right: 8px; }
+ .form-item.is-buttons button + .button.is-tertiary {
+ margin-left: 8px; }
+ .form-item.is-buttons button.is-push-right,
+ .form-item.is-buttons .button.is-tertiary.is-push-right,
+ .form-item.is-buttons .button.is-push-right {
+ margin-left: auto;
+ margin-right: 0; }
+
+.is-append,
+.is-prepend {
+ display: flex; }
+ .is-append input,
+ .is-prepend input {
+ flex: 1; }
+ .is-append .button,
+ .is-append span,
+ .is-append a,
+ .is-prepend .button,
+ .is-prepend span,
+ .is-prepend a {
+ flex-shrink: 0; }
+ .is-append span,
+ .is-append a,
+ .is-prepend span,
+ .is-prepend a {
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ padding: 0 16px;
+ border: 1px solid rgba(17, 17, 19, 0.1);
+ background-color: #fff;
+ white-space: nowrap; }
+ .is-append span,
+ .is-prepend span {
+ font-size: 0.875em;
+ font-weight: normal;
+ text-transform: none;
+ color: rgba(17, 17, 19, 0.5); }
+ .is-append a,
+ .is-prepend a {
+ font-size: 0.875em;
+ color: #158df7;
+ text-decoration: none; }
+ .is-append a:hover,
+ .is-prepend a:hover {
+ text-decoration: underline; }
+ .is-append a.icon,
+ .is-append a[class^="icon-kube-"],
+ .is-append a[class*=" icon-kube-"],
+ .is-prepend a.icon,
+ .is-prepend a[class^="icon-kube-"],
+ .is-prepend a[class*=" icon-kube-"] {
+ font-size: 1rem;
+ color: rgba(17, 17, 19, 0.6); }
+ .is-append a.icon:hover,
+ .is-append a[class^="icon-kube-"]:hover,
+ .is-append a[class*=" icon-kube-"]:hover,
+ .is-prepend a.icon:hover,
+ .is-prepend a[class^="icon-kube-"]:hover,
+ .is-prepend a[class*=" icon-kube-"]:hover {
+ color: #111113;
+ text-decoration: none; }
+
+.is-prepend input {
+ border-radius: 0 4px 4px 0; }
+
+.is-prepend .button {
+ margin-right: -1px;
+ border-radius: 4px 0 0 4px !important; }
+
+.is-prepend span,
+.is-prepend a {
+ border-right: none;
+ border-radius: 4px 0 0 4px; }
+
+.is-append input {
+ border-radius: 4px 0 0 4px; }
+
+.is-append .button {
+ margin-left: -1px;
+ border-radius: 0 4px 4px 0 !important; }
+
+.is-append span,
+.is-append a {
+ border-left: none;
+ border-radius: 0 4px 4px 0; }
+
+.breadcrumb {
+ display: flex;
+ align-items: center;
+ font-size: 0.875em;
+ font-weight: normal;
+ text-transform: none; }
+ .breadcrumb a,
+ .breadcrumb span {
+ font-style: normal;
+ padding-right: 8px;
+ white-space: nowrap;
+ color: #111113;
+ text-decoration: none; }
+ .breadcrumb a:hover {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ color: #158df7;
+ text-decoration: underline; }
+ .breadcrumb span:after,
+ .breadcrumb a:after {
+ display: inline-block;
+ content: "/";
+ color: rgba(17, 17, 19, 0.4);
+ padding-left: 8px; }
+ .breadcrumb span:last-child:after,
+ .breadcrumb a:last-child:after {
+ display: none; }
+ .breadcrumb span,
+ .breadcrumb span:last-child {
+ color: rgba(17, 17, 19, 0.55);
+ text-decoration: none; }
+
+.pager {
+ font-size: 0.875em;
+ font-weight: normal;
+ text-transform: none;
+ margin-top: 20px;
+ margin-bottom: 20px; }
+ .pager:after {
+ content: '';
+ display: table;
+ clear: both; }
+ .pager a,
+ .pager span {
+ float: left;
+ padding: 8px 16px;
+ border: 1px solid rgba(17, 17, 19, 0.1);
+ border-right-color: transparent;
+ color: #111113;
+ text-decoration: none;
+ line-height: 1.4; }
+ .pager a:first-child,
+ .pager span:first-child {
+ border-top-left-radius: 4px;
+ border-bottom-left-radius: 4px; }
+ .pager a:last-child,
+ .pager span:last-child {
+ border-right-color: rgba(17, 17, 19, 0.1);
+ border-top-right-radius: 4px;
+ border-bottom-right-radius: 4px; }
+ .pager a.is-prev:before,
+ .pager a.is-next:after {
+ position: relative;
+ top: 1px;
+ font-size: 125%;
+ line-height: 1; }
+ .pager a.is-prev:before {
+ content: '<';
+ margin-right: 8px; }
+ .pager a.is-next:after {
+ content: '>';
+ margin-left: 8px; }
+ .pager a.is-prev:empty:before {
+ margin-right: 0; }
+ .pager a.is-next:empty:after {
+ margin-left: 0; }
+ .pager a:hover {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ background-color: rgba(17, 17, 19, 0.04); }
+ .pager a.is-disabled {
+ background-color: transparent;
+ color: rgba(17, 17, 19, 0.3); }
+ .pager span,
+ .pager a.is-current,
+ .pager a.is-active {
+ background-color: rgba(17, 17, 19, 0.04);
+ color: rgba(17, 17, 19, 0.5); }
+ .pager.is-stacked a {
+ position: relative;
+ width: 50%;
+ border: none;
+ font-size: 1.1rem;
+ font-weight: bold;
+ padding: 0;
+ padding-top: 20px; }
+ .pager.is-stacked a:hover {
+ background: none;
+ text-decoration: underline;
+ color: #158df7; }
+ .pager.is-stacked a.is-prev:before,
+ .pager.is-stacked a.is-next:after {
+ content: '';
+ margin: 0; }
+ .pager.is-stacked a.is-prev:after,
+ .pager.is-stacked a.is-next:before {
+ position: absolute;
+ top: 0;
+ left: 0;
+ content: attr(data-label);
+ font-size: 11px;
+ text-transform: uppercase;
+ font-style: normal;
+ font-weight: normal;
+ letter-spacing: .03em;
+ margin-bottom: 4px;
+ color: rgba(17, 17, 19, 0.5); }
+ .pager.is-stacked .is-next {
+ text-align: right; }
+ .pager.is-stacked a.is-next:before {
+ right: 0; }
+
+@media only screen and (max-width: 767px) {
+ .pager.is-stacked a {
+ float: none;
+ display: block;
+ width: 100%;
+ margin-bottom: 20px; }
+ .pager.is-stacked a:last-child {
+ margin-bottom: 0; }
+ .pager.is-stacked a.is-next {
+ text-align: left; } }
+
+.alert {
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
+ font-size: 0.9375em;
+ font-weight: 500;
+ text-transform: none;
+ background: #fff;
+ color: #111113;
+ padding: 16px 32px 16px 16px;
+ box-shadow: none;
+ border: 1px solid rgba(17, 17, 19, 0.1);
+ border-radius: 4px;
+ position: relative;
+ margin-bottom: 16px; }
+ .alert h1,
+ .alert h2,
+ .alert h3,
+ .alert h4,
+ .alert h5,
+ .alert h6 {
+ margin-bottom: 2px; }
+ .alert a {
+ color: inherit; }
+ .alert a:hover {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ color: #ee2455; }
+ .alert .close {
+ position: absolute;
+ right: 8px;
+ top: 20px; }
+ .alert p {
+ margin-top: 0;
+ margin-bottom: 0; }
+
+.alert.is-error {
+ background: rgba(238, 36, 85, 0.07);
+ border-color: rgba(238, 36, 85, 0.3);
+ color: #ee2455; }
+ .alert.is-error a:hover {
+ color: #111113; }
+
+.alert.is-success {
+ background: rgba(32, 188, 113, 0.07);
+ border-color: rgba(32, 188, 113, 0.3);
+ color: #20bc71; }
+ .alert.is-success a:hover {
+ color: #111113; }
+
+.alert.is-focus {
+ background: rgba(21, 141, 247, 0.07);
+ border-color: rgba(21, 141, 247, 0.3);
+ color: #158df7; }
+ .alert.is-focus a:hover {
+ color: #111113; }
+
+.alert.is-inverted {
+ background: rgba(255, 255, 255, 0.15);
+ border-color: rgba(255, 255, 255, 0.4);
+ color: #fff; }
+ .alert.is-inverted a:hover {
+ color: rgba(255, 255, 255, 0.6); }
+
+.is-navbar-container,
+.is-navbar-box {
+ display: flex;
+ flex: 1;
+ align-items: center;
+ min-width: 100%;
+ min-height: 100%; }
+ @media only screen and (max-width: 767px) {
+ .is-navbar-container,
+ .is-navbar-box {
+ flex-direction: column; } }
+ .is-navbar-container .is-brand,
+ .is-navbar-box .is-brand {
+ display: flex;
+ align-items: center; }
+ .is-navbar-container .is-brand h1,
+ .is-navbar-container .is-brand h2,
+ .is-navbar-container .is-brand h3,
+ .is-navbar-container .is-brand h4,
+ .is-navbar-container .is-brand h5,
+ .is-navbar-container .is-brand h6,
+ .is-navbar-box .is-brand h1,
+ .is-navbar-box .is-brand h2,
+ .is-navbar-box .is-brand h3,
+ .is-navbar-box .is-brand h4,
+ .is-navbar-box .is-brand h5,
+ .is-navbar-box .is-brand h6 {
+ line-height: 1;
+ margin: 0; }
+
+.is-navbar {
+ display: flex;
+ flex: 1;
+ align-items: center; }
+ @media only screen and (max-width: 767px) {
+ .is-navbar {
+ flex-direction: column; } }
+ .is-navbar ul {
+ display: flex;
+ flex: 1;
+ align-items: center; }
+ @media only screen and (max-width: 767px) {
+ .is-navbar ul {
+ flex-direction: column; } }
+ .is-navbar li {
+ white-space: nowrap;
+ margin-left: 28px; }
+ .is-navbar a:not(.button) {
+ line-height: 1;
+ display: block;
+ padding-top: 8px;
+ padding-bottom: 8px; }
+ .is-navbar a:not(.button)::before, .is-navbar a:not(.button)::after {
+ content: '';
+ display: block;
+ height: 0;
+ width: 0; }
+ .is-navbar a:not(.button)::before {
+ margin-top: calc((0.75 - 1) * 0.49em); }
+ .is-navbar a:not(.button)::after {
+ margin-bottom: calc((0.75 - 1) * 0.49em); }
+ .is-navbar form {
+ margin: 0; }
+ .is-navbar input {
+ position: relative;
+ top: 1px; }
+ .is-navbar nav.is-justify {
+ text-align: center;
+ width: 100%; }
+ .is-navbar nav.is-justify li {
+ flex: 1;
+ margin-left: 0;
+ margin-right: 0; }
+
+@media only screen and (max-width: 767px) {
+ .is-navbar-container.is-scrollable,
+ .is-navbar-container.is-scrollable .is-navbar,
+ .is-navbar-container.is-scrollable .is-navbar ul,
+ .is-navbar-box.is-scrollable,
+ .is-navbar-box.is-scrollable .is-navbar,
+ .is-navbar-box.is-scrollable .is-navbar ul {
+ display: flex;
+ flex-direction: row; }
+ .is-navbar-container:not(.is-scrollable),
+ .is-navbar-container:not(.is-scrollable) .is-navbar,
+ .is-navbar-container:not(.is-scrollable) .is-navbar ul,
+ .is-navbar-box:not(.is-scrollable),
+ .is-navbar-box:not(.is-scrollable) .is-navbar,
+ .is-navbar-box:not(.is-scrollable) .is-navbar ul {
+ align-items: flex-start;
+ display: block;
+ max-width: 100%; }
+ .is-navbar-container:not(.is-scrollable) .is-navbar li,
+ .is-navbar-box:not(.is-scrollable) .is-navbar li {
+ margin-left: 0; }
+ .is-navbar-container:not(.is-scrollable) .is-navbar input,
+ .is-navbar-container:not(.is-scrollable) .is-navbar .button.is-small,
+ .is-navbar-box:not(.is-scrollable) .is-navbar input,
+ .is-navbar-box:not(.is-scrollable) .is-navbar .button.is-small {
+ margin-top: 8px;
+ margin-bottom: 8px; }
+ .is-navbar-container:not(.is-scrollable) .is-navbar nav.is-justify,
+ .is-navbar-box:not(.is-scrollable) .is-navbar nav.is-justify {
+ text-align: left; } }
+
+@keyframes slideUp {
+ to {
+ height: 0;
+ padding-top: 0;
+ padding-bottom: 0;
+ margin-bottom: 0; } }
+
+@keyframes slideDown {
+ from {
+ height: 0;
+ padding-top: 0;
+ padding-bottom: 0;
+ margin-bottom: 0; } }
+
+@keyframes fadeIn {
+ from {
+ opacity: 0; }
+ to {
+ opacity: 1; } }
+
+@keyframes fadeOut {
+ from {
+ opacity: 1; }
+ to {
+ opacity: 0; } }
+
+@keyframes flipIn {
+ from {
+ opacity: 0;
+ transform: scaleY(0); }
+ to {
+ opacity: 1;
+ transform: scaleY(1); } }
+
+@keyframes flipOut {
+ from {
+ opacity: 1;
+ transform: scaleY(1); }
+ to {
+ opacity: 0;
+ transform: scaleY(0); } }
+
+@keyframes zoomIn {
+ from {
+ opacity: 0;
+ transform: scale3d(0.3, 0.3, 0.3); }
+ 50% {
+ opacity: 1; } }
+
+@keyframes zoomOut {
+ from {
+ opacity: 1; }
+ 50% {
+ opacity: 0;
+ transform: scale3d(0.3, 0.3, 0.3); }
+ to {
+ opacity: 0; } }
+
+@keyframes slideInRight {
+ from {
+ transform: translate3d(100%, 0, 0);
+ visibility: visible; }
+ to {
+ transform: translate3d(0, 0, 0); } }
+
+@keyframes slideInLeft {
+ from {
+ transform: translate3d(-100%, 0, 0);
+ visibility: visible; }
+ to {
+ transform: translate3d(0, 0, 0); } }
+
+@keyframes slideInDown {
+ from {
+ transform: translate3d(0, -100%, 0);
+ visibility: visible; }
+ to {
+ transform: translate3d(0, 0, 0); } }
+
+@keyframes slideOutLeft {
+ from {
+ transform: translate3d(0, 0, 0); }
+ to {
+ visibility: hidden;
+ transform: translate3d(-100%, 0, 0); } }
+
+@keyframes slideOutRight {
+ from {
+ transform: translate3d(0, 0, 0); }
+ to {
+ visibility: hidden;
+ transform: translate3d(100%, 0, 0); } }
+
+@keyframes slideOutUp {
+ from {
+ transform: translate3d(0, 0, 0); }
+ to {
+ visibility: hidden;
+ transform: translate3d(0, -100%, 0); } }
+
+@keyframes rotate {
+ from {
+ transform: rotate(0deg); }
+ to {
+ transform: rotate(360deg); } }
+
+@keyframes pulse {
+ from {
+ transform: scale3d(1, 1, 1); }
+ 50% {
+ transform: scale3d(1.1, 1.1, 1.1); }
+ to {
+ transform: scale3d(1, 1, 1); } }
+
+@keyframes shake {
+ 15% {
+ transform: translateX(0.5rem); }
+ 30% {
+ transform: translateX(-0.4rem); }
+ 45% {
+ transform: translateX(0.3rem); }
+ 60% {
+ transform: translateX(-0.2rem); }
+ 75% {
+ transform: translateX(0.1rem); }
+ 90% {
+ transform: translateX(0); }
+ 90% {
+ transform: translateX(0); } }
+
+.kube-fadeIn {
+ opacity: 0;
+ animation: fadeIn .5s ease-in-out; }
+
+.kube-fadeOut {
+ opacity: 1;
+ animation: fadeOut .5s ease-in-out; }
+
+.kube-zoomIn {
+ animation: zoomIn .5s ease-in; }
+
+.kube-zoomOut {
+ animation: zoomOut .5s ease-in; }
+
+.kube-slideInRight {
+ animation: slideInRight .5s ease; }
+
+.kube-slideInLeft {
+ animation: slideInLeft .5s ease; }
+
+.kube-slideInDown {
+ animation: slideInDown .5s ease; }
+
+.kube-slideOutLeft {
+ animation: slideOutLeft .5s ease; }
+
+.kube-slideOutRight {
+ animation: slideOutRight .5s ease; }
+
+.kube-slideOutUp {
+ animation: slideOutUp .5s ease; }
+
+.kube-slideUp {
+ overflow: hidden;
+ animation: slideUp .3s ease-out; }
+
+.kube-slideDown {
+ overflow: hidden;
+ animation: slideDown .4s ease-in-out; }
+
+.kube-flipIn {
+ animation: flipIn 0.5s cubic-bezier(0.5, -0.5, 0.5, 1.5); }
+
+.kube-flipOut {
+ animation: flipOut 0.5s cubic-bezier(0.5, -0.5, 0.5, 1.5); }
+
+.kube-rotate {
+ animation: rotate .5s ease-in-out; }
+
+.kube-pulse {
+ animation: pulse .5s ease-out 2; }
+
+.kube-shake {
+ animation: shake .5s ease-in-out; }
+
+.message {
+ position: fixed;
+ top: 8px;
+ right: 8px;
+ width: 360px;
+ background: #fff;
+ box-shadow: 0 6px 24px rgba(17, 17, 19, 0.12);
+ border-radius: 4px;
+ z-index: 400;
+ border: 1px solid transparent;
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
+ font-size: 0.9375em;
+ font-weight: normal;
+ text-transform: none;
+ color: #111113;
+ padding: 16px; }
+ .message h1,
+ .message h2,
+ .message h3,
+ .message h4,
+ .message h5,
+ .message h6,
+ .message a {
+ color: inherit; }
+ .message a:hover {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ color: rgba(17, 17, 19, 0.6); }
+ .message.is-center, .message.is-centered {
+ left: 50%;
+ margin-left: -180px; }
+ .message.is-left {
+ left: 8px;
+ right: auto; }
+ .message.is-line {
+ width: 100%;
+ top: 0;
+ left: 0;
+ right: 0;
+ border-radius: 0; }
+
+.message.is-error {
+ background: #ee2455;
+ color: #fff;
+ border-color: transparent; }
+ .message.is-error a:hover {
+ color: rgba(255, 255, 255, 0.7); }
+
+.message.is-success {
+ background: #20bc71;
+ color: #fff;
+ border-color: transparent; }
+ .message.is-success a:hover {
+ color: rgba(255, 255, 255, 0.7); }
+
+.message.is-focus {
+ background: #158df7;
+ color: rgba(255, 255, 255, 0.95);
+ border-color: transparent; }
+ .message.is-focus a:hover {
+ color: rgba(255, 255, 255, 0.7); }
+
+.message.is-black {
+ background: #111113;
+ color: #fff;
+ border-color: transparent; }
+ .message.is-black a:hover {
+ color: rgba(255, 255, 255, 0.7); }
+
+.tabs {
+ display: flex;
+ font-size: 0.9375em;
+ font-weight: normal;
+ text-transform: none;
+ margin-bottom: 20px;
+ border-bottom: 1px solid rgba(17, 17, 19, 0.1); }
+ .tabs a {
+ position: relative;
+ top: 1px;
+ display: block;
+ padding: 8px 20px;
+ border-bottom: 2px solid transparent;
+ color: rgba(17, 17, 19, 0.65);
+ background-color: transparent;
+ text-decoration: none; }
+ .tabs a:hover {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ color: #158df7;
+ background: none;
+ text-decoration: none;
+ border-bottom: 2px solid #158df7; }
+ .tabs a.is-active {
+ cursor: default;
+ color: #111113;
+ background: none;
+ text-decoration: none;
+ border-bottom: 2px solid #111113; }
+
+@media only screen and (max-width: 767px) {
+ .tabs {
+ display: block; } }
+
+.dropdown {
+ position: absolute;
+ z-index: 300;
+ background: #fff;
+ box-shadow: 0 6px 24px rgba(17, 17, 19, 0.12);
+ border-radius: 4px;
+ width: 280px;
+ font-size: 0.9375em;
+ font-weight: normal;
+ border: 0 solid transparent;
+ padding: 0 0 2px 0; }
+ .dropdown span,
+ .dropdown a {
+ display: block;
+ text-decoration: none;
+ padding: 8px 16px;
+ white-space: nowrap; }
+ .dropdown a {
+ color: #111113;
+ background: none; }
+ .dropdown a:hover {
+ text-decoration: underline;
+ color: #111113;
+ background: rgba(17, 17, 19, 0.04); }
+ .dropdown a.is-separator {
+ padding-bottom: 8px;
+ border-bottom: 1px solid rgba(17, 17, 19, 0.05); }
+ .dropdown a:first-child,
+ .dropdown span:first-child {
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px; }
+ .dropdown a.is-active, .dropdown a.is-active:hover,
+ .dropdown span,
+ .dropdown span:hover {
+ text-decoration: none;
+ cursor: text;
+ color: rgba(17, 17, 19, 0.4);
+ background: none; }
+
+.modal-box {
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ overflow-x: hidden;
+ overflow-y: auto;
+ z-index: 200; }
+
+.modal {
+ position: relative;
+ margin: 16px auto;
+ padding: 0;
+ font-family: inherit;
+ background: #fff;
+ box-shadow: 0 15px 40px rgba(17, 17, 19, 0.2);
+ border-radius: 4px;
+ color: #111113; }
+ @media only screen and (max-width: 767px) {
+ .modal input,
+ .modal textarea {
+ font-size: 16px; } }
+ .modal .close {
+ position: absolute;
+ top: 22px;
+ right: 16px;
+ font-size: 16px;
+ width: 32px;
+ height: 32px;
+ line-height: 32px;
+ opacity: .4; }
+ .modal .close:hover {
+ opacity: 1; }
+
+.modal-header {
+ font-size: 1.05rem;
+ font-weight: bold;
+ background: none;
+ padding: 20px 24px;
+ border-bottom: 1px solid rgba(17, 17, 19, 0.05); }
+ .modal-header:empty {
+ display: none; }
+
+.modal-body {
+ font-size: inherit;
+ background: none;
+ padding: 24px; }
+
+.modal-footer {
+ font-size: inherit;
+ font-weight: normal;
+ background-color: none;
+ padding: 16px 24px;
+ border-top: 1px solid rgba(17, 17, 19, 0.05); }
+ .modal-footer:empty {
+ display: none; }
+ .modal-footer button {
+ margin-right: 8px; }
+ .modal-footer button + button.is-tertiary {
+ margin-left: 8px; }
+
+@keyframes progress-bar-stripes {
+ from {
+ background-position: 40px 0; }
+ to {
+ background-position: 0 0; } }
+
+.kube-progress {
+ position: absolute;
+ top: 0;
+ left: 0;
+ z-index: 11000;
+ width: 100%;
+ background-color: rgba(17, 17, 19, 0.2); }
+ .kube-progress span {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
+ -webkit-animation: progress-bar-stripes 2s linear infinite;
+ -moz-animation: progress-bar-stripes 2s linear infinite;
+ animation: progress-bar-stripes 2s linear infinite;
+ content: '';
+ display: block;
+ min-height: 8px;
+ width: 100%;
+ height: 100%;
+ background-color: #158df7;
+ background-size: 40px 40px; }
+
+.is-offcanvasTransition {
+ transition: transform .5s ease-in-out; }
+
+.is-offcanvas {
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: auto;
+ overflow-y: scroll;
+ z-index: 200;
+ min-height: 100vh;
+ width: 300px;
+ padding: 16px 20px;
+ background-color: #111113;
+ font-size: 0.9375em;
+ color: #fff; }
+ .is-offcanvas.is-offcanvas-right {
+ left: auto;
+ right: 0; }
+ .is-offcanvas.is-offcanvas-push {
+ left: -300px;
+ right: auto; }
+ .is-offcanvas.is-offcanvas-push.is-offcanvas-right {
+ right: -300px;
+ left: auto; }
+ .is-offcanvas a {
+ color: #fff; }
+ .is-offcanvas a:hover {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ color: rgba(255, 255, 255, 0.6); }
+
+.nav-toggle {
+ position: relative;
+ top: 1px;
+ color: #111113;
+ text-decoration: none; }
+ .nav-toggle:active {
+ color: #111113; }
+ .nav-toggle:hover {
+ color: #ee2455; }
+
+.is-container {
+ display: flex;
+ flex: 1; }
+ @media only screen and (max-width: 767px) {
+ .is-container {
+ flex-direction: column; } }
+
+.is-container-row {
+ display: flex;
+ flex: 1; }
+
+.is-container-column {
+ display: flex;
+ flex-direction: column;
+ flex: 1; }
+
+.is-items-middle {
+ align-items: center; }
+ @media only screen and (max-width: 767px) {
+ .is-items-middle {
+ justify-content: flex-start;
+ align-items: flex-start; } }
+
+.is-push-right {
+ margin-left: auto;
+ flex: none; }
+
+@media only screen and (max-width: 767px) {
+ .is-push-right {
+ margin-left: 0; }
+ .is-push-right-mobile {
+ margin-left: auto; } }
+
+.is-center,
+.is-centered {
+ margin-left: auto;
+ margin-right: auto; }
+
+@media only screen and (max-width: 767px) {
+ .is-left-mobile {
+ margin-left: 0; } }
+
+.is-fixed {
+ position: fixed !important;
+ top: 0;
+ left: 0;
+ z-index: 200; }
+
+.is-relative {
+ position: relative; }
+
+.is-width-large {
+ max-width: 1000px; }
+
+.is-width-medium {
+ max-width: 820px; }
+
+.is-width-small {
+ max-width: 420px; }
+
+.is-10 {
+ width: 10%;
+ min-width: 10%; }
+
+.is-20 {
+ width: 20%;
+ min-width: 20%; }
+
+.is-25 {
+ width: 25%;
+ min-width: 25%; }
+
+.is-30 {
+ width: 30%;
+ min-width: 30%; }
+
+.is-33,
+.is-34 {
+ width: 33.3333%;
+ min-width: 33.3333%; }
+
+.is-35 {
+ width: 35%;
+ min-width: 35%; }
+
+.is-40 {
+ width: 40%;
+ min-width: 40%; }
+
+.is-50 {
+ width: 50%;
+ min-width: 50%; }
+
+.is-60 {
+ width: 60%; }
+
+.is-65 {
+ width: 65%; }
+
+.is-66,
+.is-67 {
+ width: 66.6666%;
+ min-width: 66.6666%; }
+
+.is-70 {
+ width: 70%;
+ min-width: 70%; }
+
+.is-75 {
+ width: 75%;
+ min-width: 75%; }
+
+.is-80 {
+ width: 80%;
+ min-width: 80%; }
+
+.is-90 {
+ width: 90%;
+ min-width: 90%; }
+
+.is-100 {
+ width: 100%;
+ min-width: 100%; }
+
+@media only screen and (max-width: 767px) {
+ .is-width-large,
+ .is-width-medium,
+ .is-width-small,
+ .is-10,
+ .is-20,
+ .is-25,
+ .is-30,
+ .is-33,
+ .is-34,
+ .is-35,
+ .is-40,
+ .is-50,
+ .is-60,
+ .is-65,
+ .is-66,
+ .is-67,
+ .is-70,
+ .is-75,
+ .is-80,
+ .is-90,
+ .is-100 {
+ width: auto;
+ min-width: 100%; } }
+
+.is-invisible {
+ visibility: hidden; }
+
+.is-visible {
+ visibility: visible; }
+
+.is-hidden {
+ display: none !important; }
+
+@media only screen and (max-width: 767px) {
+ .is-hidden-mobile {
+ display: none !important; } }
+
+@media only screen and (min-width: 768px) {
+ .is-shown-mobile {
+ display: none; } }
+
+@media print {
+ .is-hidden-print {
+ display: none; } }
+
+.is-shadow-1 {
+ box-shadow: 0 1px 3px rgba(17, 17, 19, 0.15); }
+
+.is-shadow-2 {
+ box-shadow: 0 6px 24px rgba(17, 17, 19, 0.12); }
+
+.is-shadow-3 {
+ box-shadow: 0 15px 40px rgba(17, 17, 19, 0.2); }
+
+.is-border {
+ border: 1px solid rgba(17, 17, 19, 0.07); }
+
+.is-border-top {
+ border-top: 1px solid rgba(17, 17, 19, 0.07); }
+
+.is-border-bottom {
+ border-bottom: 1px solid rgba(17, 17, 19, 0.07); }
+
+.is-border-radius {
+ border-radius: 4px; }
+
+.is-scrollable {
+ overflow-x: auto;
+ white-space: nowrap; }
+
+.is-no-scroll {
+ overflow: hidden; }
+
+.is-no-scroll-x {
+ overflow-x: hidden; }
+
+.is-video-container {
+ height: 0;
+ padding-bottom: 56.25%;
+ position: relative;
+ margin-bottom: 16px; }
+ .is-video-container iframe,
+ .is-video-container object,
+ .is-video-container embed {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100% !important;
+ height: 100% !important; }
+
+figure .is-video-container {
+ margin-bottom: 8px; }
+
+.close {
+ display: inline-block;
+ vertical-align: baseline;
+ text-align: center;
+ font-size: 9px;
+ opacity: .85;
+ border-radius: 20px;
+ cursor: pointer;
+ margin-top: -3px;
+ margin-bottom: -3px;
+ width: 20px;
+ height: 20px;
+ line-height: 22px; }
+ .close:hover {
+ -moz-transition: all linear 0.2s;
+ transition: all linear 0.2s;
+ opacity: 1;
+ color: #fff;
+ background-color: #111113; }
+ .close.is-big {
+ font-size: 14px;
+ width: 28px;
+ height: 28px;
+ line-height: 28px; }
+ .close.is-large {
+ font-size: 18px;
+ width: 36px;
+ height: 36px;
+ line-height: 36px; }
+ .close.is-inverted {
+ color: #fff; }
+
+.caret {
+ display: inline-block; }
+
+.is-loading:before {
+ content: '';
+ display: inline-block;
+ width: 24px;
+ height: 24px;
+ margin-right: .5em;
+ border-radius: 50%;
+ border: 4px solid rgba(255, 255, 255, 0.25);
+ border-bottom-color: #fff;
+ -webkit-animation: loadingRotate 2s linear 0s infinite;
+ animation: loadingRotate 2s linear 0s infinite; }
+
+@keyframes loadingRotate {
+ 0% {
+ transform: rotate(0deg); }
+ 100% {
+ transform: rotate(360deg); } }
+
+.overlay {
+ position: fixed;
+ z-index: 100;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ background-color: rgba(17, 17, 19, 0.18); }
+ .overlay > .close {
+ position: fixed;
+ top: 1rem;
+ right: 1rem; }
+
+.is-inset-none {
+ padding: 0; }
+
+.is-inset-2 {
+ padding: 2px; }
+
+.is-inset-4 {
+ padding: 4px; }
+
+.is-inset-8 {
+ padding: 8px; }
+
+.is-inset-12 {
+ padding: 12px; }
+
+.is-inset-16 {
+ padding: 16px; }
+
+.is-inset-20 {
+ padding: 20px; }
+
+.is-inset-24 {
+ padding: 24px; }
+
+.is-inset-28 {
+ padding: 28px; }
+
+.is-inset-32 {
+ padding: 32px; }
+
+.is-inset-36 {
+ padding: 36px; }
+
+.is-inset-40 {
+ padding: 40px; }
+
+.is-inset-44 {
+ padding: 44px; }
+
+.is-inset-48 {
+ padding: 48px; }
+
+.is-inset-52 {
+ padding: 52px; }
+
+.is-inset-56 {
+ padding: 56px; }
+
+.is-inset-60 {
+ padding: 60px; }
+
+.is-inset-64 {
+ padding: 64px; }
+
+.is-inset-80 {
+ padding: 80px; }
+
+.is-inset-100 {
+ padding: 100px; }
+
+.is-inset-120 {
+ padding: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .inset-none-mobile {
+ padding: 0; }
+ .is-inset-2-mobile {
+ padding: 2px; }
+ .is-inset-4-mobile {
+ padding: 4px; }
+ .is-inset-8-mobile {
+ padding: 8px; }
+ .is-inset-12-mobile {
+ padding: 12px; }
+ .is-inset-16-mobile {
+ padding: 16px; }
+ .is-inset-20-mobile {
+ padding: 20px; }
+ .is-inset-24-mobile {
+ padding: 24px; }
+ .is-inset-28-mobile {
+ padding: 28px; }
+ .is-inset-32-mobile {
+ padding: 32px; }
+ .is-inset-36-mobile {
+ padding: 36px; }
+ .is-inset-40-mobile {
+ padding: 40px; }
+ .is-inset-44-mobile {
+ padding: 44px; }
+ .is-inset-48-mobile {
+ padding: 48px; }
+ .is-inset-52-mobile {
+ padding: 52px; }
+ .is-inset-56-mobile {
+ padding: 56px; }
+ .is-inset-60-mobile {
+ padding: 60px; }
+ .is-inset-64-mobile {
+ padding: 64px; }
+ .is-inset-80-mobile {
+ padding: 80px; }
+ .is-inset-100-mobile {
+ padding: 100px; }
+ .is-inset-120-mobile {
+ padding: 120px; } }
+
+.is-inset-x-none {
+ padding-left: 0;
+ padding-right: 0; }
+
+.is-inset-x-2 {
+ padding-left: 2px;
+ padding-right: 2px; }
+
+.is-inset-x-4 {
+ padding-left: 4px;
+ padding-right: 4px; }
+
+.is-inset-x-8 {
+ padding-left: 8px;
+ padding-right: 8px; }
+
+.is-inset-x-12 {
+ padding-left: 12px;
+ padding-right: 12px; }
+
+.is-inset-x-16 {
+ padding-left: 16px;
+ padding-right: 16px; }
+
+.is-inset-x-20 {
+ padding-left: 20px;
+ padding-right: 20px; }
+
+.is-inset-x-24 {
+ padding-left: 24px;
+ padding-right: 24px; }
+
+.is-inset-x-28 {
+ padding-left: 28px;
+ padding-right: 28px; }
+
+.is-inset-x-32 {
+ padding-left: 32px;
+ padding-right: 32px; }
+
+.is-inset-x-36 {
+ padding-left: 36px;
+ padding-right: 36px; }
+
+.is-inset-x-40 {
+ padding-left: 40px;
+ padding-right: 40px; }
+
+.is-inset-x-44 {
+ padding-left: 44px;
+ padding-right: 44px; }
+
+.is-inset-x-48 {
+ padding-left: 48px;
+ padding-right: 48px; }
+
+.is-inset-x-52 {
+ padding-left: 52px;
+ padding-right: 52px; }
+
+.is-inset-x-56 {
+ padding-left: 56px;
+ padding-right: 56px; }
+
+.is-inset-x-60 {
+ padding-left: 60px;
+ padding-right: 60px; }
+
+.is-inset-x-64 {
+ padding-left: 64px;
+ padding-right: 64px; }
+
+.is-inset-x-80 {
+ padding-left: 80px;
+ padding-right: 80px; }
+
+.is-inset-x-100 {
+ padding-left: 100px;
+ padding-right: 100px; }
+
+.is-inset-x-120 {
+ padding-left: 120px;
+ padding-right: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .inset-x-none-mobile {
+ padding-left: 0;
+ padding-right: 0; }
+ .is-inset-x-2-mobile {
+ padding-left: 2px;
+ padding-right: 2px; }
+ .is-inset-x-4-mobile {
+ padding-left: 4px;
+ padding-right: 4px; }
+ .is-inset-x-8-mobile {
+ padding-left: 8px;
+ padding-right: 8px; }
+ .is-inset-x-12-mobile {
+ padding-left: 12px;
+ padding-right: 12px; }
+ .is-inset-x-16-mobile {
+ padding-left: 16px;
+ padding-right: 16px; }
+ .is-inset-x-20-mobile {
+ padding-left: 20px;
+ padding-right: 20px; }
+ .is-inset-x-24-mobile {
+ padding-left: 24px;
+ padding-right: 24px; }
+ .is-inset-x-28-mobile {
+ padding-left: 28px;
+ padding-right: 28px; }
+ .is-inset-x-32-mobile {
+ padding-left: 32px;
+ padding-right: 32px; }
+ .is-inset-x-36-mobile {
+ padding-left: 36px;
+ padding-right: 36px; }
+ .is-inset-x-40-mobile {
+ padding-left: 40px;
+ padding-right: 40px; }
+ .is-inset-x-44-mobile {
+ padding-left: 44px;
+ padding-right: 44px; }
+ .is-inset-x-48-mobile {
+ padding-left: 48px;
+ padding-right: 48px; }
+ .is-inset-x-52-mobile {
+ padding-left: 52px;
+ padding-right: 52px; }
+ .is-inset-x-56-mobile {
+ padding-left: 56px;
+ padding-right: 56px; }
+ .is-inset-x-60-mobile {
+ padding-left: 60px;
+ padding-right: 60px; }
+ .is-inset-x-64-mobile {
+ padding-left: 64px;
+ padding-right: 64px; }
+ .is-inset-x-80-mobile {
+ padding-left: 80px;
+ padding-right: 80px; }
+ .is-inset-x-100-mobile {
+ padding-left: 100px;
+ padding-right: 100px; }
+ .is-inset-x-120-mobile {
+ padding-left: 120px;
+ padding-right: 120px; } }
+
+.is-inset-y-none {
+ padding-top: 0;
+ padding-bottom: 0; }
+
+.is-inset-y-2 {
+ padding-top: 2px;
+ padding-bottom: 2px; }
+
+.is-inset-y-4 {
+ padding-top: 4px;
+ padding-bottom: 4px; }
+
+.is-inset-y-8 {
+ padding-top: 8px;
+ padding-bottom: 8px; }
+
+.is-inset-y-12 {
+ padding-top: 12px;
+ padding-bottom: 12px; }
+
+.is-inset-y-16 {
+ padding-top: 16px;
+ padding-bottom: 16px; }
+
+.is-inset-y-20 {
+ padding-top: 20px;
+ padding-bottom: 20px; }
+
+.is-inset-y-24 {
+ padding-top: 24px;
+ padding-bottom: 24px; }
+
+.is-inset-y-28 {
+ padding-top: 28px;
+ padding-bottom: 28px; }
+
+.is-inset-y-32 {
+ padding-top: 32px;
+ padding-bottom: 32px; }
+
+.is-inset-y-36 {
+ padding-top: 36px;
+ padding-bottom: 36px; }
+
+.is-inset-y-40 {
+ padding-top: 40px;
+ padding-bottom: 40px; }
+
+.is-inset-y-44 {
+ padding-top: 44px;
+ padding-bottom: 44px; }
+
+.is-inset-y-48 {
+ padding-top: 48px;
+ padding-bottom: 48px; }
+
+.is-inset-y-52 {
+ padding-top: 52px;
+ padding-bottom: 52px; }
+
+.is-inset-y-56 {
+ padding-top: 56px;
+ padding-bottom: 56px; }
+
+.is-inset-y-60 {
+ padding-top: 60px;
+ padding-bottom: 60px; }
+
+.is-inset-y-64 {
+ padding-top: 64px;
+ padding-bottom: 64px; }
+
+.is-inset-y-80 {
+ padding-top: 80px;
+ padding-bottom: 80px; }
+
+.is-inset-y-100 {
+ padding-top: 100px;
+ padding-bottom: 100px; }
+
+.is-inset-y-120 {
+ padding-top: 120px;
+ padding-bottom: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .inset-y-none-mobile {
+ padding-top: 0;
+ padding-bottom: 0; }
+ .is-inset-y-2-mobile {
+ padding-top: 2px;
+ padding-bottom: 2px; }
+ .is-inset-y-4-mobile {
+ padding-top: 4px;
+ padding-bottom: 4px; }
+ .is-inset-y-8-mobile {
+ padding-top: 8px;
+ padding-bottom: 8px; }
+ .is-inset-y-12-mobile {
+ padding-top: 12px;
+ padding-bottom: 12px; }
+ .is-inset-y-16-mobile {
+ padding-top: 16px;
+ padding-bottom: 16px; }
+ .is-inset-y-20-mobile {
+ padding-top: 20px;
+ padding-bottom: 20px; }
+ .is-inset-y-24-mobile {
+ padding-top: 24px;
+ padding-bottom: 24px; }
+ .is-inset-y-28-mobile {
+ padding-top: 28px;
+ padding-bottom: 28px; }
+ .is-inset-y-32-mobile {
+ padding-top: 32px;
+ padding-bottom: 32px; }
+ .is-inset-y-36-mobile {
+ padding-top: 36px;
+ padding-bottom: 36px; }
+ .is-inset-y-40-mobile {
+ padding-top: 40px;
+ padding-bottom: 40px; }
+ .is-inset-y-44-mobile {
+ padding-top: 44px;
+ padding-bottom: 44px; }
+ .is-inset-y-48-mobile {
+ padding-top: 48px;
+ padding-bottom: 48px; }
+ .is-inset-y-52-mobile {
+ padding-top: 52px;
+ padding-bottom: 52px; }
+ .is-inset-y-56-mobile {
+ padding-top: 56px;
+ padding-bottom: 56px; }
+ .is-inset-y-60-mobile {
+ padding-top: 60px;
+ padding-bottom: 60px; }
+ .is-inset-y-64-mobile {
+ padding-top: 64px;
+ padding-bottom: 64px; }
+ .is-inset-y-80-mobile {
+ padding-top: 80px;
+ padding-bottom: 80px; }
+ .is-inset-y-100-mobile {
+ padding-top: 100px;
+ padding-bottom: 100px; }
+ .is-inset-y-120-mobile {
+ padding-top: 120px;
+ padding-bottom: 120px; } }
+
+.is-inset-top-none {
+ padding-top: 0; }
+
+.is-inset-top-2 {
+ padding-top: 2px; }
+
+.is-inset-top-4 {
+ padding-top: 4px; }
+
+.is-inset-top-8 {
+ padding-top: 8px; }
+
+.is-inset-top-12 {
+ padding-top: 12px; }
+
+.is-inset-top-16 {
+ padding-top: 16px; }
+
+.is-inset-top-20 {
+ padding-top: 20px; }
+
+.is-inset-top-24 {
+ padding-top: 24px; }
+
+.is-inset-top-28 {
+ padding-top: 28px; }
+
+.is-inset-top-32 {
+ padding-top: 32px; }
+
+.is-inset-top-36 {
+ padding-top: 36px; }
+
+.is-inset-top-40 {
+ padding-top: 40px; }
+
+.is-inset-top-44 {
+ padding-top: 44px; }
+
+.is-inset-top-48 {
+ padding-top: 48px; }
+
+.is-inset-top-52 {
+ padding-top: 52px; }
+
+.is-inset-top-56 {
+ padding-top: 56px; }
+
+.is-inset-top-60 {
+ padding-top: 60px; }
+
+.is-inset-top-64 {
+ padding-top: 64px; }
+
+.is-inset-top-80 {
+ padding-top: 80px; }
+
+.is-inset-top-100 {
+ padding-top: 100px; }
+
+.is-inset-top-120 {
+ padding-top: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .is-inset-top-none-mobile {
+ padding-top: 0; }
+ .is-inset-top-2-mobile {
+ padding-top: 2px; }
+ .is-inset-top-4-mobile {
+ padding-top: 4px; }
+ .is-inset-top-8-mobile {
+ padding-top: 8px; }
+ .is-inset-top-12-mobile {
+ padding-top: 12px; }
+ .is-inset-top-16-mobile {
+ padding-top: 16px; }
+ .is-inset-top-20-mobile {
+ padding-top: 20px; }
+ .is-inset-top-24-mobile {
+ padding-top: 24px; }
+ .is-inset-top-28-mobile {
+ padding-top: 28px; }
+ .is-inset-top-32-mobile {
+ padding-top: 32px; }
+ .is-inset-top-36-mobile {
+ padding-top: 36px; }
+ .is-inset-top-40-mobile {
+ padding-top: 40px; }
+ .is-inset-top-44-mobile {
+ padding-top: 44px; }
+ .is-inset-top-48-mobile {
+ padding-top: 48px; }
+ .is-inset-top-52-mobile {
+ padding-top: 52px; }
+ .is-inset-top-56-mobile {
+ padding-top: 56px; }
+ .is-inset-top-60-mobile {
+ padding-top: 60px; }
+ .is-inset-top-64-mobile {
+ padding-top: 64px; }
+ .is-inset-top-80-mobile {
+ padding-top: 80px; }
+ .is-inset-top-100-mobile {
+ padding-top: 100px; }
+ .is-inset-top-120-mobile {
+ padding-top: 120px; } }
+
+.is-inset-bottom-none {
+ padding-bottom: 0; }
+
+.is-inset-bottom-2 {
+ padding-bottom: 2px; }
+
+.is-inset-bottom-4 {
+ padding-bottom: 4px; }
+
+.is-inset-bottom-8 {
+ padding-bottom: 8px; }
+
+.is-inset-bottom-12 {
+ padding-bottom: 12px; }
+
+.is-inset-bottom-16 {
+ padding-bottom: 16px; }
+
+.is-inset-bottom-20 {
+ padding-bottom: 20px; }
+
+.is-inset-bottom-24 {
+ padding-bottom: 24px; }
+
+.is-inset-bottom-28 {
+ padding-bottom: 28px; }
+
+.is-inset-bottom-32 {
+ padding-bottom: 32px; }
+
+.is-inset-bottom-36 {
+ padding-bottom: 36px; }
+
+.is-inset-bottom-40 {
+ padding-bottom: 40px; }
+
+.is-inset-bottom-44 {
+ padding-bottom: 44px; }
+
+.is-inset-bottom-48 {
+ padding-bottom: 48px; }
+
+.is-inset-bottom-52 {
+ padding-bottom: 52px; }
+
+.is-inset-bottom-56 {
+ padding-bottom: 56px; }
+
+.is-inset-bottom-60 {
+ padding-bottom: 60px; }
+
+.is-inset-bottom-64 {
+ padding-bottom: 64px; }
+
+.is-inset-bottom-80 {
+ padding-bottom: 80px; }
+
+.is-inset-bottom-100 {
+ padding-bottom: 100px; }
+
+.is-inset-bottom-120 {
+ padding-bottom: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .is-inset-bottom-none-mobile {
+ padding-bottom: 0; }
+ .is-inset-bottom-2-mobile {
+ padding-bottom: 2px; }
+ .is-inset-bottom-4-mobile {
+ padding-bottom: 4px; }
+ .is-inset-bottom-8-mobile {
+ padding-bottom: 8px; }
+ .is-inset-bottom-12-mobile {
+ padding-bottom: 12px; }
+ .is-inset-bottom-16-mobile {
+ padding-bottom: 16px; }
+ .is-inset-bottom-20-mobile {
+ padding-bottom: 20px; }
+ .is-inset-bottom-24-mobile {
+ padding-bottom: 24px; }
+ .is-inset-bottom-28-mobile {
+ padding-bottom: 28px; }
+ .is-inset-bottom-32-mobile {
+ padding-bottom: 32px; }
+ .is-inset-bottom-36-mobile {
+ padding-bottom: 36px; }
+ .is-inset-bottom-40-mobile {
+ padding-bottom: 40px; }
+ .is-inset-bottom-44-mobile {
+ padding-bottom: 44px; }
+ .is-inset-bottom-48-mobile {
+ padding-bottom: 48px; }
+ .is-inset-bottom-52-mobile {
+ padding-bottom: 52px; }
+ .is-inset-bottom-56-mobile {
+ padding-bottom: 56px; }
+ .is-inset-bottom-60-mobile {
+ padding-bottom: 60px; }
+ .is-inset-bottom-64-mobile {
+ padding-bottom: 64px; }
+ .is-inset-bottom-80-mobile {
+ padding-bottom: 80px; }
+ .is-inset-bottom-100-mobile {
+ padding-bottom: 100px; }
+ .is-inset-bottom-120-mobile {
+ padding-bottom: 120px; } }
+
+.is-inset-left-none {
+ padding-left: 0; }
+
+.is-inset-left-2 {
+ padding-left: 2px; }
+
+.is-inset-left-4 {
+ padding-left: 4px; }
+
+.is-inset-left-8 {
+ padding-left: 8px; }
+
+.is-inset-left-12 {
+ padding-left: 12px; }
+
+.is-inset-left-16 {
+ padding-left: 16px; }
+
+.is-inset-left-20 {
+ padding-left: 20px; }
+
+.is-inset-left-24 {
+ padding-left: 24px; }
+
+.is-inset-left-28 {
+ padding-left: 28px; }
+
+.is-inset-left-32 {
+ padding-left: 32px; }
+
+.is-inset-left-36 {
+ padding-left: 36px; }
+
+.is-inset-left-40 {
+ padding-left: 40px; }
+
+.is-inset-left-44 {
+ padding-left: 44px; }
+
+.is-inset-left-48 {
+ padding-left: 48px; }
+
+.is-inset-left-52 {
+ padding-left: 52px; }
+
+.is-inset-left-56 {
+ padding-left: 56px; }
+
+.is-inset-left-60 {
+ padding-left: 60px; }
+
+.is-inset-left-64 {
+ padding-left: 64px; }
+
+.is-inset-left-80 {
+ padding-left: 80px; }
+
+.is-inset-left-100 {
+ padding-left: 100px; }
+
+.is-inset-left-120 {
+ padding-left: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .is-inset-left-none {
+ padding-left: 0; }
+ .is-inset-left-2-mobile {
+ padding-left: 2px; }
+ .is-inset-left-4-mobile {
+ padding-left: 4px; }
+ .is-inset-left-8-mobile {
+ padding-left: 8px; }
+ .is-inset-left-12-mobile {
+ padding-left: 12px; }
+ .is-inset-left-16-mobile {
+ padding-left: 16px; }
+ .is-inset-left-20-mobile {
+ padding-left: 20px; }
+ .is-inset-left-24-mobile {
+ padding-left: 24px; }
+ .is-inset-left-28-mobile {
+ padding-left: 28px; }
+ .is-inset-left-32-mobile {
+ padding-left: 32px; }
+ .is-inset-left-36-mobile {
+ padding-left: 36px; }
+ .is-inset-left-40-mobile {
+ padding-left: 40px; }
+ .is-inset-left-44-mobile {
+ padding-left: 44px; }
+ .is-inset-left-48-mobile {
+ padding-left: 48px; }
+ .is-inset-left-52-mobile {
+ padding-left: 52px; }
+ .is-inset-left-56-mobile {
+ padding-left: 56px; }
+ .is-inset-left-60-mobile {
+ padding-left: 60px; }
+ .is-inset-left-64-mobile {
+ padding-left: 64px; }
+ .is-inset-left-80-mobile {
+ padding-left: 80px; }
+ .is-inset-left-100-mobile {
+ padding-left: 100px; }
+ .is-inset-left-120-mobile {
+ padding-left: 120px; } }
+
+.is-inset-right-none {
+ padding-right: 0; }
+
+.is-inset-right-2 {
+ padding-right: 2px; }
+
+.is-inset-right-4 {
+ padding-right: 4px; }
+
+.is-inset-right-8 {
+ padding-right: 8px; }
+
+.is-inset-right-12 {
+ padding-right: 12px; }
+
+.is-inset-right-16 {
+ padding-right: 16px; }
+
+.is-inset-right-20 {
+ padding-right: 20px; }
+
+.is-inset-right-24 {
+ padding-right: 24px; }
+
+.is-inset-right-28 {
+ padding-right: 28px; }
+
+.is-inset-right-32 {
+ padding-right: 32px; }
+
+.is-inset-right-36 {
+ padding-right: 36px; }
+
+.is-inset-right-40 {
+ padding-right: 40px; }
+
+.is-inset-right-44 {
+ padding-right: 44px; }
+
+.is-inset-right-48 {
+ padding-right: 48px; }
+
+.is-inset-right-52 {
+ padding-right: 52px; }
+
+.is-inset-right-56 {
+ padding-right: 56px; }
+
+.is-inset-right-60 {
+ padding-right: 60px; }
+
+.is-inset-right-64 {
+ padding-right: 64px; }
+
+.is-inset-right-80 {
+ padding-right: 80px; }
+
+.is-inset-right-100 {
+ padding-right: 100px; }
+
+.is-inset-right-120 {
+ padding-right: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .is-inset-right-none-mobile {
+ padding-right: 0; }
+ .is-inset-right-2-mobile {
+ padding-right: 2px; }
+ .is-inset-right-4-mobile {
+ padding-right: 4px; }
+ .is-inset-right-8-mobile {
+ padding-right: 8px; }
+ .is-inset-right-12-mobile {
+ padding-right: 12px; }
+ .is-inset-right-16-mobile {
+ padding-right: 16px; }
+ .is-inset-right-20-mobile {
+ padding-right: 20px; }
+ .is-inset-right-24-mobile {
+ padding-right: 24px; }
+ .is-inset-right-28-mobile {
+ padding-right: 28px; }
+ .is-inset-right-32-mobile {
+ padding-right: 32px; }
+ .is-inset-right-36-mobile {
+ padding-right: 36px; }
+ .is-inset-right-40-mobile {
+ padding-right: 40px; }
+ .is-inset-right-44-mobile {
+ padding-right: 44px; }
+ .is-inset-right-48-mobile {
+ padding-right: 48px; }
+ .is-inset-right-52-mobile {
+ padding-right: 52px; }
+ .is-inset-right-56-mobile {
+ padding-right: 56px; }
+ .is-inset-right-60-mobile {
+ padding-right: 60px; }
+ .is-inset-right-64-mobile {
+ padding-right: 64px; }
+ .is-inset-right-80-mobile {
+ padding-right: 80px; }
+ .is-inset-right-100-mobile {
+ padding-right: 100px; }
+ .is-inset-right-120-mobile {
+ padding-right: 120px; } }
+
+.is-outset-none {
+ margin: 0; }
+
+.is-outset-2 {
+ margin: 2px; }
+
+.is-outset-4 {
+ margin: 4px; }
+
+.is-outset-8 {
+ margin: 8px; }
+
+.is-outset-12 {
+ margin: 12px; }
+
+.is-outset-16 {
+ margin: 16px; }
+
+.is-outset-20 {
+ margin: 20px; }
+
+.is-outset-24 {
+ margin: 24px; }
+
+.is-outset-28 {
+ margin: 28px; }
+
+.is-outset-32 {
+ margin: 32px; }
+
+.is-outset-36 {
+ margin: 36px; }
+
+.is-outset-40 {
+ margin: 40px; }
+
+.is-outset-44 {
+ margin: 44px; }
+
+.is-outset-48 {
+ margin: 48px; }
+
+.is-outset-52 {
+ margin: 52px; }
+
+.is-outset-56 {
+ margin: 56px; }
+
+.is-outset-60 {
+ margin: 60px; }
+
+.is-outset-64 {
+ margin: 64px; }
+
+.is-outset-80 {
+ margin: 80px; }
+
+.is-outset-100 {
+ margin: 100px; }
+
+.is-outset-120 {
+ margin: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .is-outset-none-mobile {
+ margin: 0; }
+ .is-outset-2-mobile {
+ margin: 2px; }
+ .is-outset-4-mobile {
+ margin: 4px; }
+ .is-outset-8-mobile {
+ margin: 8px; }
+ .is-outset-12-mobile {
+ margin: 12px; }
+ .is-outset-16-mobile {
+ margin: 16px; }
+ .is-outset-20-mobile {
+ margin: 20px; }
+ .is-outset-24-mobile {
+ margin: 24px; }
+ .is-outset-28-mobile {
+ margin: 28px; }
+ .is-outset-32-mobile {
+ margin: 32px; }
+ .is-outset-36-mobile {
+ margin: 36px; }
+ .is-outset-40-mobile {
+ margin: 40px; }
+ .is-outset-44-mobile {
+ margin: 44px; }
+ .is-outset-48-mobile {
+ margin: 48px; }
+ .is-outset-52-mobile {
+ margin: 52px; }
+ .is-outset-56-mobile {
+ margin: 56px; }
+ .is-outset-60-mobile {
+ margin: 60px; }
+ .is-outset-64-mobile {
+ margin: 64px; }
+ .is-outset-80-mobile {
+ margin: 80px; }
+ .is-outset-100-mobile {
+ margin: 100px; }
+ .is-outset-120-mobile {
+ margin: 120px; } }
+
+.is-outset-x-none {
+ margin-left: 0;
+ margin-right: 0; }
+
+.is-outset-x-2 {
+ margin-left: 2px;
+ margin-right: 2px; }
+
+.is-outset-x-4 {
+ margin-left: 4px;
+ margin-right: 4px; }
+
+.is-outset-x-8 {
+ margin-left: 8px;
+ margin-right: 8px; }
+
+.is-outset-x-12 {
+ margin-left: 12px;
+ margin-right: 12px; }
+
+.is-outset-x-16 {
+ margin-left: 16px;
+ margin-right: 16px; }
+
+.is-outset-x-20 {
+ margin-left: 20px;
+ margin-right: 20px; }
+
+.is-outset-x-24 {
+ margin-left: 24px;
+ margin-right: 24px; }
+
+.is-outset-x-28 {
+ margin-left: 28px;
+ margin-right: 28px; }
+
+.is-outset-x-32 {
+ margin-left: 32px;
+ margin-right: 32px; }
+
+.is-outset-x-36 {
+ margin-left: 36px;
+ margin-right: 36px; }
+
+.is-outset-x-40 {
+ margin-left: 40px;
+ margin-right: 40px; }
+
+.is-outset-x-44 {
+ margin-left: 44px;
+ margin-right: 44px; }
+
+.is-outset-x-48 {
+ margin-left: 48px;
+ margin-right: 48px; }
+
+.is-outset-x-52 {
+ margin-left: 52px;
+ margin-right: 52px; }
+
+.is-outset-x-56 {
+ margin-left: 56px;
+ margin-right: 56px; }
+
+.is-outset-x-60 {
+ margin-left: 60px;
+ margin-right: 60px; }
+
+.is-outset-x-64 {
+ margin-left: 64px;
+ margin-right: 64px; }
+
+.is-outset-x-80 {
+ margin-left: 80px;
+ margin-right: 80px; }
+
+.is-outset-x-100 {
+ margin-left: 100px;
+ margin-right: 100px; }
+
+.is-outset-x-120 {
+ margin-left: 120px;
+ margin-right: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .is-outset-x-none-mobile {
+ margin-left: 0;
+ margin-right: 0; }
+ .is-outset-x-2-mobile {
+ margin-left: 2px;
+ margin-right: 2px; }
+ .is-outset-x-4-mobile {
+ margin-left: 4px;
+ margin-right: 4px; }
+ .is-outset-x-8-mobile {
+ margin-left: 8px;
+ margin-right: 8px; }
+ .is-outset-x-12-mobile {
+ margin-left: 12px;
+ margin-right: 12px; }
+ .is-outset-x-16-mobile {
+ margin-left: 16px;
+ margin-right: 16px; }
+ .is-outset-x-20-mobile {
+ margin-left: 20px;
+ margin-right: 20px; }
+ .is-outset-x-24-mobile {
+ margin-left: 24px;
+ margin-right: 24px; }
+ .is-outset-x-28-mobile {
+ margin-left: 28px;
+ margin-right: 28px; }
+ .is-outset-x-32-mobile {
+ margin-left: 32px;
+ margin-right: 32px; }
+ .is-outset-x-36-mobile {
+ margin-left: 36px;
+ margin-right: 36px; }
+ .is-outset-x-40-mobile {
+ margin-left: 40px;
+ margin-right: 40px; }
+ .is-outset-x-44-mobile {
+ margin-left: 44px;
+ margin-right: 44px; }
+ .is-outset-x-48-mobile {
+ margin-left: 48px;
+ margin-right: 48px; }
+ .is-outset-x-52-mobile {
+ margin-left: 52px;
+ margin-right: 52px; }
+ .is-outset-x-56-mobile {
+ margin-left: 56px;
+ margin-right: 56px; }
+ .is-outset-x-60-mobile {
+ margin-left: 60px;
+ margin-right: 60px; }
+ .is-outset-x-64-mobile {
+ margin-left: 64px;
+ margin-right: 64px; }
+ .is-outset-x-80-mobile {
+ margin-left: 80px;
+ margin-right: 80px; }
+ .is-outset-x-100-mobile {
+ margin-left: 100px;
+ margin-right: 100px; }
+ .is-outset-x-120-mobile {
+ margin-left: 120px;
+ margin-right: 120px; } }
+
+.is-outset-y-none {
+ margin-top: 0;
+ margin-bottom: 0; }
+
+.is-outset-y-2 {
+ margin-top: 2px;
+ margin-bottom: 2px; }
+
+.is-outset-y-4 {
+ margin-top: 4px;
+ margin-bottom: 4px; }
+
+.is-outset-y-8 {
+ margin-top: 8px;
+ margin-bottom: 8px; }
+
+.is-outset-y-12 {
+ margin-top: 12px;
+ margin-bottom: 12px; }
+
+.is-outset-y-16 {
+ margin-top: 16px;
+ margin-bottom: 16px; }
+
+.is-outset-y-20 {
+ margin-top: 20px;
+ margin-bottom: 20px; }
+
+.is-outset-y-24 {
+ margin-top: 24px;
+ margin-bottom: 24px; }
+
+.is-outset-y-28 {
+ margin-top: 28px;
+ margin-bottom: 28px; }
+
+.is-outset-y-32 {
+ margin-top: 32px;
+ margin-bottom: 32px; }
+
+.is-outset-y-36 {
+ margin-top: 36px;
+ margin-bottom: 36px; }
+
+.is-outset-y-40 {
+ margin-top: 40px;
+ margin-bottom: 40px; }
+
+.is-outset-y-44 {
+ margin-top: 44px;
+ margin-bottom: 44px; }
+
+.is-outset-y-48 {
+ margin-top: 48px;
+ margin-bottom: 48px; }
+
+.is-outset-y-52 {
+ margin-top: 52px;
+ margin-bottom: 52px; }
+
+.is-outset-y-56 {
+ margin-top: 56px;
+ margin-bottom: 56px; }
+
+.is-outset-y-60 {
+ margin-top: 60px;
+ margin-bottom: 60px; }
+
+.is-outset-y-64 {
+ margin-top: 64px;
+ margin-bottom: 64px; }
+
+.is-outset-y-80 {
+ margin-top: 80px;
+ margin-bottom: 80px; }
+
+.is-outset-y-100 {
+ margin-top: 100px;
+ margin-bottom: 100px; }
+
+.is-outset-y-120 {
+ margin-top: 120px;
+ margin-bottom: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .is-outset-y-none-mobile {
+ margin-top: 0;
+ margin-bottom: 0; }
+ .is-outset-y-2-mobile {
+ margin-top: 2px;
+ margin-bottom: 2px; }
+ .is-outset-y-4-mobile {
+ margin-top: 4px;
+ margin-bottom: 4px; }
+ .is-outset-y-8-mobile {
+ margin-top: 8px;
+ margin-bottom: 8px; }
+ .is-outset-y-12-mobile {
+ margin-top: 12px;
+ margin-bottom: 12px; }
+ .is-outset-y-16-mobile {
+ margin-top: 16px;
+ margin-bottom: 16px; }
+ .is-outset-y-20-mobile {
+ margin-top: 20px;
+ margin-bottom: 20px; }
+ .is-outset-y-24-mobile {
+ margin-top: 24px;
+ margin-bottom: 24px; }
+ .is-outset-y-28-mobile {
+ margin-top: 28px;
+ margin-bottom: 28px; }
+ .is-outset-y-32-mobile {
+ margin-top: 32px;
+ margin-bottom: 32px; }
+ .is-outset-y-36-mobile {
+ margin-top: 36px;
+ margin-bottom: 36px; }
+ .is-outset-y-40-mobile {
+ margin-top: 40px;
+ margin-bottom: 40px; }
+ .is-outset-y-44-mobile {
+ margin-top: 44px;
+ margin-bottom: 44px; }
+ .is-outset-y-48-mobile {
+ margin-top: 48px;
+ margin-bottom: 48px; }
+ .is-outset-y-52-mobile {
+ margin-top: 52px;
+ margin-bottom: 52px; }
+ .is-outset-y-56-mobile {
+ margin-top: 56px;
+ margin-bottom: 56px; }
+ .is-outset-y-60-mobile {
+ margin-top: 60px;
+ margin-bottom: 60px; }
+ .is-outset-y-64-mobile {
+ margin-top: 64px;
+ margin-bottom: 64px; }
+ .is-outset-y-80-mobile {
+ margin-top: 80px;
+ margin-bottom: 80px; }
+ .is-outset-y-100-mobile {
+ margin-top: 100px;
+ margin-bottom: 100px; }
+ .is-outset-y-120-mobile {
+ margin-top: 120px;
+ margin-bottom: 120px; } }
+
+.is-stack-none,
+.is-col-stack-none .is-col {
+ margin-bottom: 0; }
+
+.is-stack-2,
+.is-col-stack-2 .is-col {
+ margin-bottom: 2px; }
+
+.is-stack-4,
+.is-col-stack-4 .is-col {
+ margin-bottom: 4px; }
+
+.is-stack-8,
+.is-col-stack-8 .is-col {
+ margin-bottom: 8px; }
+
+.is-stack-12,
+.is-col-stack-12 .is-col {
+ margin-bottom: 12px; }
+
+.is-stack-16,
+.is-col-stack-16 .is-col {
+ margin-bottom: 16px; }
+
+.is-stack-20,
+.is-col-stack-20 .is-col {
+ margin-bottom: 20px; }
+
+.is-stack-24,
+.is-col-stack-24 .is-col {
+ margin-bottom: 24px; }
+
+.is-stack-28,
+.is-col-stack-28 .is-col {
+ margin-bottom: 28px; }
+
+.is-stack-32,
+.is-col-stack-32 .is-col {
+ margin-bottom: 32px; }
+
+.is-stack-36,
+.is-col-stack-36 .is-col {
+ margin-bottom: 36px; }
+
+.is-stack-40,
+.is-col-stack-40 .is-col {
+ margin-bottom: 40px; }
+
+.is-stack-44,
+.is-col-stack-44 .is-col {
+ margin-bottom: 44px; }
+
+.is-stack-48,
+.is-col-stack-48 .is-col {
+ margin-bottom: 48px; }
+
+.is-stack-52,
+.is-col-stack-52 .is-col {
+ margin-bottom: 52px; }
+
+.is-stack-56,
+.is-col-stack-56 .is-col {
+ margin-bottom: 56px; }
+
+.is-stack-60,
+.is-col-stack-60 .is-col {
+ margin-bottom: 60px; }
+
+.is-stack-64,
+.is-col-stack-64 .is-col {
+ margin-bottom: 64px; }
+
+.is-stack-80,
+.is-col-stack-80 .is-col {
+ margin-bottom: 80px; }
+
+.is-stack-100,
+.is-col-stack-100 .is-col {
+ margin-bottom: 100px; }
+
+.is-stack-120,
+.is-col-stack-120 .is-col {
+ margin-bottom: 120px; }
+
+@media only screen and (max-width: 767px) {
+ .is-stack-none-mobile,
+ .is-col-stack-none-mobile .is-col {
+ margin-bottom: 0; }
+ .is-stack-2-mobile,
+ .is-col-stack-2-mobile .is-col {
+ margin-bottom: 2px; }
+ .is-stack-4-mobile,
+ .is-col-stack-4-mobile .is-col {
+ margin-bottom: 4px; }
+ .is-stack-8-mobile,
+ .is-col-stack-8-mobile .is-col {
+ margin-bottom: 8px; }
+ .is-stack-12-mobile,
+ .is-col-stack-12-mobile .is-col {
+ margin-bottom: 12px; }
+ .is-stack-16-mobile,
+ .is-col-stack-16-mobile .is-col {
+ margin-bottom: 16px; }
+ .is-stack-20-mobile,
+ .is-col-stack-20-mobile .is-col {
+ margin-bottom: 20px; }
+ .is-stack-24-mobile,
+ .is-col-stack-24-mobile .is-col {
+ margin-bottom: 24px; }
+ .is-stack-28-mobile,
+ .is-col-stack-28-mobile .is-col {
+ margin-bottom: 28px; }
+ .is-stack-32-mobile,
+ .is-col-stack-32-mobile .is-col {
+ margin-bottom: 32px; }
+ .is-stack-36-mobile,
+ .is-col-stack-36-mobile .is-col {
+ margin-bottom: 36px; }
+ .is-stack-40-mobile,
+ .is-col-stack-40-mobile .is-col {
+ margin-bottom: 40px; }
+ .is-stack-44-mobile,
+ .is-col-stack-44-mobile .is-col {
+ margin-bottom: 44px; }
+ .is-stack-48-mobile,
+ .is-col-stack-48-mobile .is-col {
+ margin-bottom: 48px; }
+ .is-stack-52-mobile,
+ .is-col-stack-52-mobile .is-col {
+ margin-bottom: 52px; }
+ .is-stack-56-mobile,
+ .is-col-stack-56-mobile .is-col {
+ margin-bottom: 56px; }
+ .is-stack-60-mobile,
+ .is-col-stack-60-mobile .is-col {
+ margin-bottom: 60px; }
+ .is-stack-64-mobile,
+ .is-col-stack-64-mobile .is-col {
+ margin-bottom: 64px; }
+ .is-stack-80-mobile,
+ .is-col-stack-80-mobile .is-col {
+ margin-bottom: 80px; }
+ .is-stack-100-mobile,
+ .is-col-stack-100-mobile .is-col {
+ margin-bottom: 100px; }
+ .is-stack-120-mobile,
+ .is-col-stack-120-mobile .is-col {
+ margin-bottom: 120px; } }
+
+@media print {
+ body {
+ color: #000; }
+ a, a:link, a:visited {
+ color: #000;
+ text-decoration: none; } }
diff --git a/static/assets/css/kube.min.css b/static/assets/css/kube.min.css
new file mode 100755
index 0000000..57e8ad4
--- /dev/null
+++ b/static/assets/css/kube.min.css
@@ -0,0 +1 @@
+*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}html,body,div,span,object,iframe,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,h1,h2,h3,h4,h5,h6{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}a:active,a:hover{outline:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,embed,object,iframe,audio,video,canvas,progress,meter,output,textarea{display:block}audio:not([controls]){display:none;height:0}blockquote,q{quotes:none}blockquote p:before,blockquote p:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}caption,th,td{text-align:left;vertical-align:top}thead th,thead td{font-weight:bold;vertical-align:bottom}a img,th img,td img{vertical-align:top}button,input,select,textarea{margin:0}textarea{overflow:auto;vertical-align:top;resize:vertical}button{width:auto;overflow:visible}input[type="reset"],input[type="submit"],input[type="file"],input[type="radio"],input[type="checkbox"],select,button{cursor:pointer}input[type="radio"],input[type="checkbox"]{font-size:110%;position:relative;top:-1px;margin-right:3px}input[type="search"]{-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}hr{display:block;height:1px;border:0;border-top:1px solid #ddd}img,video,audio,embed,object{max-width:100%}img,video,embed,object{height:auto}embed,object{height:100%}img{vertical-align:middle;-ms-interpolation-mode:bicubic}body{font-family:"Helvetica Neue",Helvetica,Tahoma,sans-serif;font-size:.9375em;line-height:1.65em;background:#fff;color:#222}a{color:#134da5}a:focus,a:hover{color:#de2c3b}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Tahoma,sans-serif;font-weight:bold;color:#000;text-rendering:optimizeLegibility;margin:0 0 .5em 0}h1,.h1,h2,.h2{line-height:1.1}h3,.h3,h4,.h4{line-height:1.3}h1,.h1{font-size:2.25em}h2,.h2{font-size:1.5em;margin-bottom:.7em}h3,.h3{font-size:1.3125em}h4,.h4{font-size:1.125em}h5,.h5{font-size:1em}h6,.h6{font-size:.75em;text-transform:uppercase}.lead{font-size:1.3125em;line-height:1.5;margin-bottom:1.0999999999999999em}p,ul,ol,dl,dd,dt,blockquote,td,th{line-height:1.65em}ul,ol,ul ul,ol ol,ul ol,ol ul{margin:0 0 0 3.3em}ul li,ol li{text-align:left}ol ol li{list-style-type:lower-alpha}ol ol ol li{list-style-type:lower-roman}p,ul,ol,dl,blockquote,hr,pre,table,form,fieldset,figure,address{margin-bottom:1.65em}blockquote{position:relative;font-style:italic;font-size:1.125em;margin-left:2.4749999999999996em;padding-left:1.65em;border-left:2px solid #ddd}blockquote p{margin-bottom:.5em}blockquote small,cite{color:rgba(0,0,0,0.4);font-style:italic}small,blockquote cite{font-size:12.75px;line-height:1}address{font-style:normal}dl dt{font-weight:bold}dd{margin-left:1.65em}s,del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted #0f0f0f;cursor:help}strong,b{font-weight:bold}em,i{font-style:italic}sub,sup{font-size:11.25px;line-height:0;position:relative}sup{top:-0.5em}sub{bottom:-0.25em}figcaption{margin:.3em 0;font-size:12.75px;font-style:italic}ins,u{text-decoration:underline}mark{background-color:#ffc800;color:#0f0f0f;text-decoration:none}pre,code,kbd,samp,var,output{font-size:90%;font-style:normal;font-family:Menlo,Monaco,Consolas,"Courier New",monospace}pre{margin-top:1.65em;font-size:100%;line-height:1.5;color:#222;overflow:auto}code,samp,kbd{padding:3px 6px 2px 6px;display:inline-block;line-height:1;border-radius:2px}code{background:#f4f4f4;border:1px solid #d4d4d4}pre code{font-size:100%;border:0;padding:0;background:0;line-height:1.65em}var{color:rgba(0,0,0,0.5)}samp{background:#d3e3fb;border:1px solid #b2cef8}kbd{background:#0f0f0f;color:rgba(255,255,255,0.85);white-space:nowrap}button:active,button:focus{outline:0}textarea,select{font-family:"Helvetica Neue",Helvetica,Tahoma,sans-serif;font-size:1em;box-shadow:none}textarea,select[multiple],select[multiple="multiple"]{padding:.3em .35em;line-height:1.35em;width:100%}input[type="text"],input[type="password"],input[type="email"],input[type="url"],input[type="phone"],input[type="tel"],input[type="number"],input[type="datetime"],input[type="date"],input[type="month"],input[type="color"],input[type="time"],input[type="search"],input[type="datetime-local"]{font-family:"Helvetica Neue",Helvetica,Tahoma,sans-serif;font-size:1em;box-shadow:none;padding:.3em .35em;line-height:1.65em;border-radius:0;outline:0}select[multiple],select[multiple="multiple"],textarea,input[type="text"],input[type="password"],input[type="email"],input[type="url"],input[type="phone"],input[type="tel"],input[type="number"],input[type="datetime"],input[type="date"],input[type="month"],input[type="color"],input[type="time"],input[type="search"],input[type="datetime-local"]{background:#fff;border:1px solid #ccc;position:relative;z-index:2;-webkit-appearance:none}textarea[disabled],input[type="text"][disabled],input[type="password"][disabled],input[type="email"][disabled],input[type="url"][disabled],input[type="phone"][disabled],input[type="tel"][disabled],input[type="number"][disabled],input[type="datetime"][disabled],input[type="date"][disabled],input[type="month"][disabled],input[type="color"][disabled],input[type="time"][disabled],input[type="search"][disabled],input[type="datetime-local"][disabled]{resize:none;color:rgba(0,0,0,0.5)}select[disabled],input[type="checkbox"][disabled],input[type="radio"][disabled]{cursor:default}input::-moz-focus-inner,button::-moz-focus-inner{border:0;padding:0}input[type="range"]{position:relative;top:3px}select{margin-bottom:0!important}fieldset{padding:1.65em;margin-bottom:1.65em;border:1px solid #ccc}fieldset *:last-child{margin-bottom:0!important}legend{font-weight:bold;padding:0 1em;margin-left:-1em}table{max-width:100%;width:100%;empty-cells:show}table caption{text-transform:uppercase;padding:0 1.0999999999999999em;color:rgba(0,0,0,0.4);font-size:12.75px}table th,table td{border-bottom:1px solid #eee;padding:.825em 1.0999999999999999em}table tfoot th,table tfoot td{color:rgba(0,0,0,0.4)}.units-container:after,.units-row:after{content:"";display:table;clear:both}.units-container:after,.units-row:after{content:"";display:table;clear:both}.units-container{padding-top:1px;margin-top:-1px}.units-row{margin-bottom:1.65em}.width-100,.unit-100{width:100%}.width-90,.unit-90{width:90%}.width-80,.unit-80{width:80%}.width-75,.unit-75{width:75%}.width-70,.unit-70{width:70%}.width-66,.unit-66{width:66.6%}.width-65,.unit-65{width:65%}.width-60,.unit-60{width:60%}.width-50,.unit-50{width:50%}.width-40,.unit-40{width:40%}.width-35,.unit-35{width:35%}.width-33,.unit-33{width:33.3%}.width-30,.unit-30{width:30%}.width-25,.unit-25{width:25%}.width-20,.unit-20{width:20%}.width-10,.unit-10{width:10%}.units-row .unit-90,.units-row .unit-80,.units-row .unit-75,.units-row .unit-70,.units-row .unit-66,.units-row .unit-65,.units-row .unit-60,.units-row .unit-50,.units-row .unit-40,.units-row .unit-35,.units-row .unit-33,.units-row .unit-30,.units-row .unit-25,.units-row .unit-20,.units-row .unit-10{float:left;margin-left:3%}.units-row .unit-90:first-child,.units-row .unit-80:first-child,.units-row .unit-75:first-child,.units-row .unit-70:first-child,.units-row .unit-66:first-child,.units-row .unit-65:first-child,.units-row .unit-60:first-child,.units-row .unit-50:first-child,.units-row .unit-40:first-child,.units-row .unit-35:first-child,.units-row .unit-33:first-child,.units-row .unit-30:first-child,.units-row .unit-25:first-child,.units-row .unit-20:first-child,.units-row .unit-10:first-child{margin-left:0}.units-row .unit-90{width:89.7%}.units-row .unit-80{width:79.4%}.units-row .unit-75{width:74.25%}.units-row .unit-70{width:69.1%}.units-row .unit-66{width:65.66666666666666%}.units-row .unit-65{width:65.66666666666666%}.units-row .unit-60{width:58.800000000000004%}.units-row .unit-50{width:48.5%}.units-row .unit-40{width:38.2%}.units-row .unit-35{width:31.333333333333332%}.units-row .unit-33{width:31.333333333333332%}.units-row .unit-30{width:27.9%}.units-row .unit-25{width:22.75%}.units-row .unit-20{width:17.6%}.units-row .unit-10{width:7.3%}.unit-push-90,.unit-push-80,.unit-push-75,.unit-push-70,.unit-push-66,.unit-push-65,.unit-push-60,.unit-push-50,.unit-push-40,.unit-push-35,.unit-push-33,.unit-push-30,.unit-push-25,.unit-push-20,.unit-push-10{position:relative}.unit-push-90{left:92.7%}.unit-push-80{left:82.4%}.unit-push-75{left:77.25%}.unit-push-70{left:72.1%}.unit-push-66{left:68.66666666666666%}.unit-push-65{left:68.66666666666666%}.unit-push-60{left:61.800000000000004%}.unit-push-50{left:51.5%}.unit-push-40{left:41.2%}.unit-push-35{left:34.33333333333333%}.unit-push-33{left:34.33333333333333%}.unit-push-30{left:30.9%}.unit-push-25{left:25.75%}.unit-push-20{left:20.6%}.unit-push-10{left:10.3%}.units-row .unit-push-right{float:right}.units-row .unit-role-right{margin-left:3%;float:right}.units-row .unit-role-left{margin-left:0}.centered,.unit-centered{float:none!important;margin:0 auto!important}.unit-padding{padding:1.65em}.units-padding .unit-100,.units-padding .unit-90,.units-padding .unit-80,.units-padding .unit-75,.units-padding .unit-70,.units-padding .unit-66,.units-padding .unit-65,.units-padding .unit-60,.units-padding .unit-50,.units-padding .unit-40,.units-padding .unit-35,.units-padding .unit-33,.units-padding .unit-30,.units-padding .unit-25,.units-padding .unit-20,.units-padding .unit-10{padding:1.65em}.units-split .unit-90,.units-split .unit-80,.units-split .unit-75,.units-split .unit-70,.units-split .unit-66,.units-split .unit-65,.units-split .unit-60,.units-split .unit-50,.units-split .unit-40,.units-split .unit-35,.units-split .unit-33,.units-split .unit-30,.units-split .unit-25,.units-split .unit-20,.units-split .unit-10{margin-left:0}.units-split .unit-90{width:90%}.units-split .unit-80{width:80%}.units-split .unit-75{width:75%}.units-split .unit-70{width:70%}.units-split .unit-66{width:66.6%}.units-split .unit-65{width:65%}.units-split .unit-60{width:60%}.units-split .unit-50{width:50%}.units-split .unit-40{width:40%}.units-split .unit-35{width:35%}.units-split .unit-33{width:33.3%}.units-split .unit-30{width:30%}.units-split .unit-25{width:25%}.units-split .unit-20{width:20%}.units-split .unit-10{width:10%}.blocks-2,.blocks-3,.blocks-4,.blocks-5,.blocks-6{padding-left:0;list-style:none;margin-left:-3%}.blocks-2:after,.blocks-3:after,.blocks-4:after,.blocks-5:after,.blocks-6:after{content:"";display:table;clear:both}.blocks-2:after,.blocks-3:after,.blocks-4:after,.blocks-5:after,.blocks-6:after{content:"";display:table;clear:both}.blocks-2>li,.blocks-3>li,.blocks-4>li,.blocks-5>li,.blocks-6>li{height:auto;float:left;margin-bottom:1.65em;margin-left:3%}.blocks-2>li ul,.blocks-3>li ul,.blocks-4>li ul,.blocks-5>li ul,.blocks-6>li ul{list-style-type:disc}.blocks-2>li ul ul,.blocks-3>li ul ul,.blocks-4>li ul ul,.blocks-5>li ul ul,.blocks-6>li ul ul{list-style-type:circle}.blocks-2>li li,.blocks-3>li li,.blocks-4>li li,.blocks-5>li li,.blocks-6>li li{float:none;margin:0}.blocks-2>li{width:47%}.blocks-3>li{width:30.333333333333332%}.blocks-4>li{width:22%}.blocks-5>li{width:17%}.blocks-6>li{width:13.666666666666666%}.block-first{clear:both}table.table-bordered td,table.table-bordered th{border:1px solid #eee}table.table-simple td,table.table-simple th,table.table-simple caption{border:0;padding-left:0}table.table-flat td,table.table-flat th,table.table-flat caption{border:0;padding:0}table.table-stroked td,table.table-stroked th{border-bottom:1px solid #eee}table.table-stripped tbody tr:nth-child(odd) td{background:#f8f8f8}table.table-hovered tbody tr:hover td{background-color:#f4f4f4}.table-container{width:100%;overflow:auto;margin-bottom:1.65em}.table-container table{margin-bottom:0}.table-container::-webkit-scrollbar{-webkit-appearance:none;width:14px;height:14px}.table-container::-webkit-scrollbar-thumb{border-radius:8px;border:3px solid #fff;background-color:rgba(0,0,0,0.3)}.forms .btn,.forms input[type="submit"].btn,.forms button,.forms input[type="submit"],.forms input[type="reset"]{padding:.3625em 1.3em}.forms .btn-outline{padding:.3em 1.3em}.forms .btn-outline.bold{padding:.2375em 1.3em}.forms label{display:block;margin-bottom:1.0999999999999999em}.forms input[type="text"],.forms input[type="password"],.forms input[type="email"],.forms input[type="url"],.forms input[type="phone"],.forms input[type="tel"],.forms input[type="number"],.forms input[type="datetime"],.forms input[type="date"],.forms input[type="month"],.forms input[type="color"],.forms input[type="time"],.forms input[type="search"],.forms input[type="range"],.forms input[type="file"],.forms input[type="datetime-local"],.forms textarea,.forms select{display:block}.forms-inline input[type="text"],.forms-inline-list input[type="text"],.forms-inline input[type="password"],.forms-inline-list input[type="password"],.forms-inline input[type="email"],.forms-inline-list input[type="email"],.forms-inline input[type="url"],.forms-inline-list input[type="url"],.forms-inline input[type="phone"],.forms-inline-list input[type="phone"],.forms-inline input[type="tel"],.forms-inline-list input[type="tel"],.forms-inline input[type="number"],.forms-inline-list input[type="number"],.forms-inline input[type="datetime"],.forms-inline-list input[type="datetime"],.forms-inline input[type="date"],.forms-inline-list input[type="date"],.forms-inline input[type="month"],.forms-inline-list input[type="month"],.forms-inline input[type="color"],.forms-inline-list input[type="color"],.forms-inline input[type="time"],.forms-inline-list input[type="time"],.forms-inline input[type="search"],.forms-inline-list input[type="search"],.forms-inline input[type="range"],.forms-inline-list input[type="range"],.forms-inline input[type="file"],.forms-inline-list input[type="file"],.forms-inline input[type="datetime-local"],.forms-inline-list input[type="datetime-local"],.forms-inline textarea,.forms-inline-list textarea,.forms-inline select,.forms-inline-list select{display:inline-block}.forms-list,.forms-inline,.forms-inline-list{margin:0;padding:0;margin-bottom:1.0999999999999999em;list-style:none}.forms-list label,.forms-inline label,.forms-inline-list li,.forms-inline-list li label{display:inline-block;margin-bottom:0}.forms-inline-list li label{margin-right:.825em}.forms-inline-list li{margin-bottom:3px}.forms-list li{margin-bottom:6px}.forms-desc{margin-top:4px;color:rgba(0,0,0,0.4);font-size:12.75px;line-height:1.4em}input[type="text"],input[type="password"],input[type="email"],input[type="url"],input[type="phone"],input[type="tel"],input[type="number"],input[type="datetime"],input[type="date"],input[type="month"],input[type="color"],input[type="time"],input[type="search"],input[type="datetime-local"],textarea{-moz-transition:border ease .5s;transition:border ease .5s}.error,.success{font-weight:normal;font-size:12.75px}input.input-error,textarea.input-error,select.input-error,.input-error{border-color:#de2c3b;box-shadow:0 0 0 2px rgba(222,44,59,0.3),0 1px 2px rgba(0,0,0,0.2) inset}input.input-success,textarea.input-success,select.input-success,.input-success{border-color:#2c9f42;box-shadow:0 0 0 2px rgba(44,159,66,0.3),0 1px 2px rgba(0,0,0,0.2) inset}input.input-gray,textarea.input-gray,select.input-gray,.input-gray{border-color:#b3b6b7;box-shadow:0 0 0 2px rgba(179,182,183,0.4),0 1px 2px rgba(0,0,0,0.2) inset}input[type="text"]:focus,input[type="password"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="phone"]:focus,input[type="tel"]:focus,input[type="number"]:focus,input[type="datetime"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="color"]:focus,input[type="time"]:focus,input[type="search"]:focus,input[type="datetime-local"]:focus,textarea:focus{outline:0;border-color:#2575ed;box-shadow:0 0 0 2px rgba(37,117,237,0.3),0 1px 2px rgba(0,0,0,0.2) inset}input.input-search,input[type="search"]{padding-right:.5em;padding-left:.5em;margin-bottom:0;border-radius:15px}input.input-on-black{border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.35)}input.input-on-black::-webkit-input-placeholder{color:rgba(255,255,255,0.6)}input.input-on-black::-moz-placeholder{color:rgba(255,255,255,0.6)}input.input-on-black:focus,input.input-on-black.active{border:1px solid #fff;background:#fff;box-shadow:none}input.input-on-black:focus::-webkit-input-placeholder,input.input-on-black.active::-webkit-input-placeholder{color:#aaa}input.input-on-black:focus::-moz-placeholder,input.input-on-black.active::-moz-placeholder{color:#aaa}input.input-big{font-size:18px}input.input-small{font-size:12.75px}input.input-smaller{font-size:11.25px}.input-groups{display:table!important}.input-groups input{width:100%}.input-groups input,.input-groups .input-append,.input-groups .input-prepend,.input-groups .btn-append{display:table-cell!important}.input-groups .btn-append,.input-groups .input-append,.input-groups .input-prepend{width:1%;vertical-align:middle}.input-groups .input-append,.input-groups .input-prepend{background-color:#f4f4f4;border:1px solid #d4d4d4;margin:0;padding:.45em .75em .15em .75em;color:rgba(0,0,0,0.6);line-height:1.65em;font-size:12.75px;white-space:nowrap}.input-groups .input-prepend{border-right:0}.input-groups .input-append{position:relative;z-index:1;border-left:none}.input-groups .btn-append .btn{display:block;height:auto;border-radius:0 2px 2px 0}.navbar{font-size:105%;margin-bottom:1.65em}.navbar:after{content:"";display:table;clear:both}.navbar:after{content:"";display:table;clear:both}.navbar.navbar-left{float:left}.navbar.navbar-right{float:right}.navbar ul{list-style:none;margin:0}.navbar ul:after{content:"";display:table;clear:both}.navbar ul:after{content:"";display:table;clear:both}.navbar li{float:left;margin-right:1.65em}.navbar.navbar-right li{margin-right:0;margin-left:1.65em}.navbar a,.navbar span{display:block;text-decoration:none}.navbar a:hover{color:#de2c3b;text-decoration:underline}.navbar li.active a,.navbar span{text-decoration:none;cursor:text;color:rgba(0,0,0,0.4)}.navigation-toggle{display:none;text-transform:uppercase;position:relative;color:#0f0f0f;background-color:#fff}.navigation-toggle:after{position:absolute;z-index:1;top:50%;margin-top:-12px;left:10px;content:"\2630";font-size:24px;line-height:1}.navigation-toggle.navigation-toggle-black{background-color:#0f0f0f;color:#fff}.navigation-toggle.navigation-toggle-show{margin-bottom:1.65em}.navigation-toggle span{position:relative;z-index:2;cursor:pointer;display:block;padding:10px 20px 10px 40px}.navigation-fixed{position:fixed;top:0;left:0;z-index:101}.navbar-pills a,.navbar-pills span{padding:.825em 1.65em}.navbar-pills a:hover{color:#0f0f0f;background:#eee}.navbar-pills li.active a,.navbar-pills span{text-decoration:none;cursor:text;color:rgba(0,0,0,0.4);background:#eee}.navbar-pills li{margin-right:1px}.navbar-pills.navbar-right li{margin-left:1px}.fullwidth ul{width:100%}.fullwidth li{float:none!important;margin:0;display:table-cell;width:1%;text-align:center}.fullwidth li a,.fullwidth li span{display:block}.nav{margin-bottom:1.65em}.nav ul{list-style:none;margin:0}.nav ul li ul{margin-left:2em;font-size:.95em}.nav a,.nav span{display:block;padding:.5em 0}.nav a{color:#0f0f0f;text-decoration:none}.nav a:hover{color:#de2c3b;text-decoration:underline}.nav li.active a,.nav span{text-decoration:none;cursor:text;color:rgba(0,0,0,0.4)}.nav i.fa{width:1.65em}.nav-stacked li{margin-bottom:1px}.nav-stacked a,.nav-stacked span{padding:.6em .7em}.nav-stacked a{background:#f6f6f6}.nav-stacked a:hover{color:#000;background:#eee}.nav-stacked li.active a,.nav-stacked span{background:#fff;text-decoration:none;cursor:text;color:rgba(0,0,0,0.3)}.nav-stats li{position:relative}.nav-stats a,.nav-stats span{padding-right:50px}.nav-stats sup,.nav-stats .badge{position:absolute;top:50%;right:0}.nav-stats sup{color:rgba(0,0,0,0.4)}.nav-stats .badge{margin-top:-8px}.nav-tabs{border-bottom:1px solid #e3e3e3;margin-bottom:1.65em}.nav-tabs:after{content:"";display:table;clear:both}.nav-tabs:after{content:"";display:table;clear:both}.nav-tabs ul{list-style:none;margin:0}.nav-tabs li{float:left;margin-right:2px}.nav-tabs a,.nav-tabs span{display:block;line-height:1;padding:.825em 1.65em;border:1px solid transparent}.nav-tabs a{color:rgba(0,0,0,0.5);text-decoration:none}.nav-tabs a:focus,.nav-tabs a:hover{color:#0f0f0f;text-decoration:underline;background-color:#eee}.nav-tabs li.active a,.nav-tabs span{color:#0f0f0f;background:#fff;position:relative;border:1px solid #ddd;border-bottom:1px solid #fff;bottom:-1px;cursor:default;text-decoration:none}.breadcrumbs{margin-bottom:1.65em}.breadcrumbs:after{content:"";display:table;clear:both}.breadcrumbs:after{content:"";display:table;clear:both}.breadcrumbs ul{font-size:.9em;color:rgba(0,0,0,0.4);list-style:none;margin:0}.breadcrumbs ul:after{content:"";display:table;clear:both}.breadcrumbs ul:after{content:"";display:table;clear:both}.breadcrumbs li{float:left;margin-right:5px}.breadcrumbs li+li:before{content:" > ";color:#aaa;font-size:12px;margin:0 7px 0 5px;position:relative;top:-1px}.breadcrumbs.breadcrumbs-path li+li:before{content:" / ";top:0}.breadcrumbs a{color:#0f0f0f;text-decoration:none}.breadcrumbs a:hover{color:#0f0f0f;text-decoration:underline}.breadcrumbs li.active a,.breadcrumbs span,.breadcrumbs li.active a:hover{text-decoration:none;cursor:text;color:rgba(0,0,0,0.4)}.pagination{position:relative;left:-9px;margin-left:0;list-style:none}.pagination:after{content:"";display:table;clear:both}.pagination:after{content:"";display:table;clear:both}.pagination li{float:left;margin-right:2px}.pagination a,.pagination span{display:block;padding:7px 9px;line-height:1;border-radius:2px;color:#0f0f0f;text-decoration:none}.pagination span,.pagination li.active a,.pagination li.active a:hover{color:#fff;background-color:#0f0f0f;cursor:text}.pagination a:focus,.pagination a:hover{text-decoration:none;background-color:#0f0f0f;color:#fff}.btn,input[type="submit"].btn{display:inline-block;vertical-align:top;font-family:"Helvetica Neue",Helvetica,Tahoma,sans-serif;font-size:1em;font-weight:400;line-height:1.65em;text-align:center;text-decoration:none;color:#222;-webkit-appearance:none;outline:0;margin:0;border:0;border-radius:2px;box-shadow:none;cursor:pointer;background:#e0e3e5;padding:.55em 2.5em}.btn:hover,input[type="submit"].btn:hover{color:rgba(0,0,0,0.5);background:#b3b6b7}.btn::-moz-focus-inner{border:0;padding:0}.btn-big,input[type="submit"].btn-big{font-size:18px}.btn-small,input[type="submit"].btn-small{font-size:12.75px}.btn-smaller,input[type="submit"].btn-smaller{font-size:11.25px;vertical-align:baseline}.btn-round{border-radius:15px}.btn-outline,input[type="submit"].btn-outline{background:0;padding:.48750000000000004em 2.5em;border:1px solid #0f0f0f}.btn-outline:hover,input[type="submit"].btn-outline:hover{border-color:#b3b6b7}.btn-outline.btn-active{padding:.55em 2.5em}.btn-outline.bold{border-width:2px;padding:.42500000000000004em 2.5em}.btn-active,.btn[disabled],.btn-disabled{background:0;background:#b3b6b7;color:rgba(0,0,0,0.5)}.btn-active:hover,.btn[disabled]:hover,.btn-disabled:hover{color:rgba(0,0,0,0.5);background:#b3b6b7}.btn-active{box-shadow:0 1px 3px rgba(0,0,0,0.4) inset}.btn-outline.btn[disabled],.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(0,0,0,0.3);border:1px solid rgba(0,0,0,0.1)}.btn-outline.btn-active{background:0;color:rgba(0,0,0,0.4);border:0;box-shadow:0 1px 3px rgba(0,0,0,0.2) inset}.btn[disabled],.btn-disabled{cursor:default;box-shadow:none}.btn-blue,input[type="submit"].btn-blue{color:rgba(255,255,255,0.9);background:#2575ed}.btn-blue:hover,input[type="submit"].btn-blue:hover{color:rgba(255,255,255,0.6);background:#1a52a5}.btn-blue.btn-active,input[type="submit"].btn-blue.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.5) inset}.btn-blue.btn-active,input[type="submit"].btn-blue.btn-active,.btn-blue.btn-disabled,input[type="submit"].btn-blue.btn-disabled,.btn-blue.btn[disabled],input[type="submit"].btn-blue.btn[disabled]{color:rgba(255,255,255,0.5);background:#1a52a5}.btn-blue.btn-active:hover,input[type="submit"].btn-blue.btn-active:hover,.btn-blue.btn-disabled:hover,input[type="submit"].btn-blue.btn-disabled:hover,.btn-blue.btn[disabled]:hover,input[type="submit"].btn-blue.btn[disabled]:hover{color:rgba(255,255,255,0.5)}.btn-blue.btn-outline,input[type="submit"].btn-blue.btn-outline{background:0;border-color:#2575ed;color:#2575ed}.btn-blue.btn-outline:hover,input[type="submit"].btn-blue.btn-outline:hover{color:rgba(255,255,255,0.9);background:#2575ed}.btn-blue.btn-outline.btn[disabled],input[type="submit"].btn-blue.btn-outline.btn[disabled],.btn-blue.btn-outline.btn-disabled,input[type="submit"].btn-blue.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(37,117,237,0.4);border:1px solid rgba(37,117,237,0.3)}.btn-blue.btn-outline.btn-active,input[type="submit"].btn-blue.btn-outline.btn-active{background:0;color:rgba(37,117,237,0.6);border:0;box-shadow:0 1px 3px rgba(26,82,165,0.6) inset}.btn-blue:hover,input[type="submit"].btn-blue:hover{color:rgba(255,255,255,0.6);background:#1a52a5}.btn-blue.btn-active,input[type="submit"].btn-blue.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.5) inset}.btn-blue.btn-active,input[type="submit"].btn-blue.btn-active,.btn-blue.btn-disabled,input[type="submit"].btn-blue.btn-disabled,.btn-blue.btn[disabled],input[type="submit"].btn-blue.btn[disabled]{color:rgba(255,255,255,0.5);background:#1a52a5}.btn-blue.btn-active:hover,input[type="submit"].btn-blue.btn-active:hover,.btn-blue.btn-disabled:hover,input[type="submit"].btn-blue.btn-disabled:hover,.btn-blue.btn[disabled]:hover,input[type="submit"].btn-blue.btn[disabled]:hover{color:rgba(255,255,255,0.5)}.btn-blue.btn-outline,input[type="submit"].btn-blue.btn-outline{background:0;border-color:#2575ed;color:#2575ed}.btn-blue.btn-outline:hover,input[type="submit"].btn-blue.btn-outline:hover{color:rgba(255,255,255,0.9);background:#2575ed}.btn-blue.btn-outline.btn[disabled],input[type="submit"].btn-blue.btn-outline.btn[disabled],.btn-blue.btn-outline.btn-disabled,input[type="submit"].btn-blue.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(37,117,237,0.4);border:1px solid rgba(37,117,237,0.3)}.btn-blue.btn-outline.btn-active,input[type="submit"].btn-blue.btn-outline.btn-active{background:0;color:rgba(37,117,237,0.6);border:0;box-shadow:0 1px 3px rgba(26,82,165,0.6) inset}.btn-red,input[type="submit"].btn-red{color:rgba(255,255,255,0.9);background:#de2c3b}.btn-red:hover,input[type="submit"].btn-red:hover{color:rgba(255,255,255,0.6);background:#b2232f}.btn-red.btn-active,input[type="submit"].btn-red.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.5) inset}.btn-red.btn-active,input[type="submit"].btn-red.btn-active,.btn-red.btn-disabled,input[type="submit"].btn-red.btn-disabled,.btn-red.btn[disabled],input[type="submit"].btn-red.btn[disabled]{color:rgba(255,255,255,0.5);background:#b2232f}.btn-red.btn-active:hover,input[type="submit"].btn-red.btn-active:hover,.btn-red.btn-disabled:hover,input[type="submit"].btn-red.btn-disabled:hover,.btn-red.btn[disabled]:hover,input[type="submit"].btn-red.btn[disabled]:hover{color:rgba(255,255,255,0.5)}.btn-red.btn-outline,input[type="submit"].btn-red.btn-outline{background:0;border-color:#de2c3b;color:#de2c3b}.btn-red.btn-outline:hover,input[type="submit"].btn-red.btn-outline:hover{color:rgba(255,255,255,0.9);background:#de2c3b}.btn-red.btn-outline.btn[disabled],input[type="submit"].btn-red.btn-outline.btn[disabled],.btn-red.btn-outline.btn-disabled,input[type="submit"].btn-red.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(222,44,59,0.4);border:1px solid rgba(222,44,59,0.3)}.btn-red.btn-outline.btn-active,input[type="submit"].btn-red.btn-outline.btn-active{background:0;color:rgba(222,44,59,0.6);border:0;box-shadow:0 1px 3px rgba(178,35,47,0.6) inset}.btn-red:hover,input[type="submit"].btn-red:hover{color:rgba(255,255,255,0.6);background:#b2232f}.btn-red.btn-active,input[type="submit"].btn-red.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.5) inset}.btn-red.btn-active,input[type="submit"].btn-red.btn-active,.btn-red.btn-disabled,input[type="submit"].btn-red.btn-disabled,.btn-red.btn[disabled],input[type="submit"].btn-red.btn[disabled]{color:rgba(255,255,255,0.5);background:#b2232f}.btn-red.btn-active:hover,input[type="submit"].btn-red.btn-active:hover,.btn-red.btn-disabled:hover,input[type="submit"].btn-red.btn-disabled:hover,.btn-red.btn[disabled]:hover,input[type="submit"].btn-red.btn[disabled]:hover{color:rgba(255,255,255,0.5)}.btn-red.btn-outline,input[type="submit"].btn-red.btn-outline{background:0;border-color:#de2c3b;color:#de2c3b}.btn-red.btn-outline:hover,input[type="submit"].btn-red.btn-outline:hover{color:rgba(255,255,255,0.9);background:#de2c3b}.btn-red.btn-outline.btn[disabled],input[type="submit"].btn-red.btn-outline.btn[disabled],.btn-red.btn-outline.btn-disabled,input[type="submit"].btn-red.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(222,44,59,0.4);border:1px solid rgba(222,44,59,0.3)}.btn-red.btn-outline.btn-active,input[type="submit"].btn-red.btn-outline.btn-active{background:0;color:rgba(222,44,59,0.6);border:0;box-shadow:0 1px 3px rgba(178,35,47,0.6) inset}.btn-green,input[type="submit"].btn-green{color:rgba(255,255,255,0.9);background:#2c9f42}.btn-green:hover,input[type="submit"].btn-green:hover{color:rgba(255,255,255,0.6);background:#237f35}.btn-green.btn-active,input[type="submit"].btn-green.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.5) inset}.btn-green.btn-active,input[type="submit"].btn-green.btn-active,.btn-green.btn-disabled,input[type="submit"].btn-green.btn-disabled,.btn-green.btn[disabled],input[type="submit"].btn-green.btn[disabled]{color:rgba(255,255,255,0.5);background:#237f35}.btn-green.btn-active:hover,input[type="submit"].btn-green.btn-active:hover,.btn-green.btn-disabled:hover,input[type="submit"].btn-green.btn-disabled:hover,.btn-green.btn[disabled]:hover,input[type="submit"].btn-green.btn[disabled]:hover{color:rgba(255,255,255,0.5)}.btn-green.btn-outline,input[type="submit"].btn-green.btn-outline{background:0;border-color:#2c9f42;color:#2c9f42}.btn-green.btn-outline:hover,input[type="submit"].btn-green.btn-outline:hover{color:rgba(255,255,255,0.9);background:#2c9f42}.btn-green.btn-outline.btn[disabled],input[type="submit"].btn-green.btn-outline.btn[disabled],.btn-green.btn-outline.btn-disabled,input[type="submit"].btn-green.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(44,159,66,0.4);border:1px solid rgba(44,159,66,0.3)}.btn-green.btn-outline.btn-active,input[type="submit"].btn-green.btn-outline.btn-active{background:0;color:rgba(44,159,66,0.6);border:0;box-shadow:0 1px 3px rgba(35,127,53,0.6) inset}.btn-green:hover,input[type="submit"].btn-green:hover{color:rgba(255,255,255,0.6);background:#237f35}.btn-green.btn-active,input[type="submit"].btn-green.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.5) inset}.btn-green.btn-active,input[type="submit"].btn-green.btn-active,.btn-green.btn-disabled,input[type="submit"].btn-green.btn-disabled,.btn-green.btn[disabled],input[type="submit"].btn-green.btn[disabled]{color:rgba(255,255,255,0.5);background:#237f35}.btn-green.btn-active:hover,input[type="submit"].btn-green.btn-active:hover,.btn-green.btn-disabled:hover,input[type="submit"].btn-green.btn-disabled:hover,.btn-green.btn[disabled]:hover,input[type="submit"].btn-green.btn[disabled]:hover{color:rgba(255,255,255,0.5)}.btn-green.btn-outline,input[type="submit"].btn-green.btn-outline{background:0;border-color:#2c9f42;color:#2c9f42}.btn-green.btn-outline:hover,input[type="submit"].btn-green.btn-outline:hover{color:rgba(255,255,255,0.9);background:#2c9f42}.btn-green.btn-outline.btn[disabled],input[type="submit"].btn-green.btn-outline.btn[disabled],.btn-green.btn-outline.btn-disabled,input[type="submit"].btn-green.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(44,159,66,0.4);border:1px solid rgba(44,159,66,0.3)}.btn-green.btn-outline.btn-active,input[type="submit"].btn-green.btn-outline.btn-active{background:0;color:rgba(44,159,66,0.6);border:0;box-shadow:0 1px 3px rgba(35,127,53,0.6) inset}.btn-black,input[type="submit"].btn-black{color:rgba(255,255,255,0.9);background:#0f0f0f}.btn-black:hover,input[type="submit"].btn-black:hover{color:rgba(255,255,255,0.6);background:#363738}.btn-black.btn-active,input[type="submit"].btn-black.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.7) inset}.btn-black.btn-active,input[type="submit"].btn-black.btn-active,.btn-black.btn-disabled,input[type="submit"].btn-black.btn-disabled,.btn-black.btn[disabled],input[type="submit"].btn-black.btn[disabled]{color:rgba(255,255,255,0.5);background:#363738}.btn-black.btn-active:hover,input[type="submit"].btn-black.btn-active:hover,.btn-black.btn-disabled:hover,input[type="submit"].btn-black.btn-disabled:hover,.btn-black.btn[disabled]:hover,input[type="submit"].btn-black.btn[disabled]:hover{color:rgba(255,255,255,0.5)}.btn-black.btn-outline,input[type="submit"].btn-black.btn-outline{background:0;border-color:#0f0f0f;color:#0f0f0f}.btn-black.btn-outline:hover,input[type="submit"].btn-black.btn-outline:hover{color:rgba(255,255,255,0.9);background:#0f0f0f}.btn-black.btn-outline.btn[disabled],input[type="submit"].btn-black.btn-outline.btn[disabled],.btn-black.btn-outline.btn-disabled,input[type="submit"].btn-black.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(15,15,15,0.4);border:1px solid rgba(15,15,15,0.3)}.btn-black.btn-outline.btn-active,input[type="submit"].btn-black.btn-outline.btn-active{background:0;color:rgba(15,15,15,0.6);border:0;box-shadow:0 1px 3px rgba(54,55,56,0.6) inset}.btn-black:hover,input[type="submit"].btn-black:hover{color:rgba(255,255,255,0.6);background:#363738}.btn-black.btn-active,input[type="submit"].btn-black.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.7) inset}.btn-black.btn-active,input[type="submit"].btn-black.btn-active,.btn-black.btn-disabled,input[type="submit"].btn-black.btn-disabled,.btn-black.btn[disabled],input[type="submit"].btn-black.btn[disabled]{color:rgba(255,255,255,0.5);background:#363738}.btn-black.btn-active:hover,input[type="submit"].btn-black.btn-active:hover,.btn-black.btn-disabled:hover,input[type="submit"].btn-black.btn-disabled:hover,.btn-black.btn[disabled]:hover,input[type="submit"].btn-black.btn[disabled]:hover{color:rgba(255,255,255,0.5)}.btn-black.btn-outline,input[type="submit"].btn-black.btn-outline{background:0;border-color:#0f0f0f;color:#0f0f0f}.btn-black.btn-outline:hover,input[type="submit"].btn-black.btn-outline:hover{color:rgba(255,255,255,0.9);background:#0f0f0f}.btn-black.btn-outline.btn[disabled],input[type="submit"].btn-black.btn-outline.btn[disabled],.btn-black.btn-outline.btn-disabled,input[type="submit"].btn-black.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(15,15,15,0.4);border:1px solid rgba(15,15,15,0.3)}.btn-black.btn-outline.btn-active,input[type="submit"].btn-black.btn-outline.btn-active{background:0;color:rgba(15,15,15,0.6);border:0;box-shadow:0 1px 3px rgba(54,55,56,0.6) inset}.btn-yellow,input[type="submit"].btn-yellow{color:rgba(0,0,0,0.9);background:#ffc800}.btn-yellow:hover,input[type="submit"].btn-yellow:hover{color:rgba(0,0,0,0.6);background:#cca000}.btn-yellow.btn-active,input[type="submit"].btn-yellow.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.5) inset}.btn-yellow.btn-active,input[type="submit"].btn-yellow.btn-active,.btn-yellow.btn-disabled,input[type="submit"].btn-yellow.btn-disabled,.btn-yellow.btn[disabled],input[type="submit"].btn-yellow.btn[disabled]{color:rgba(0,0,0,0.5);background:#cca000}.btn-yellow.btn-active:hover,input[type="submit"].btn-yellow.btn-active:hover,.btn-yellow.btn-disabled:hover,input[type="submit"].btn-yellow.btn-disabled:hover,.btn-yellow.btn[disabled]:hover,input[type="submit"].btn-yellow.btn[disabled]:hover{color:rgba(0,0,0,0.5)}.btn-yellow.btn-outline,input[type="submit"].btn-yellow.btn-outline{background:0;border-color:#ffc800;color:#ffc800}.btn-yellow.btn-outline:hover,input[type="submit"].btn-yellow.btn-outline:hover{color:rgba(0,0,0,0.9);background:#ffc800}.btn-yellow.btn-outline.btn[disabled],input[type="submit"].btn-yellow.btn-outline.btn[disabled],.btn-yellow.btn-outline.btn-disabled,input[type="submit"].btn-yellow.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(255,200,0,0.4);border:1px solid rgba(255,200,0,0.3)}.btn-yellow.btn-outline.btn-active,input[type="submit"].btn-yellow.btn-outline.btn-active{background:0;color:rgba(255,200,0,0.6);border:0;box-shadow:0 1px 3px rgba(204,160,0,0.6) inset}.btn-yellow:hover,input[type="submit"].btn-yellow:hover{color:rgba(0,0,0,0.6);background:#cca000}.btn-yellow.btn-active,input[type="submit"].btn-yellow.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.5) inset}.btn-yellow.btn-active,input[type="submit"].btn-yellow.btn-active,.btn-yellow.btn-disabled,input[type="submit"].btn-yellow.btn-disabled,.btn-yellow.btn[disabled],input[type="submit"].btn-yellow.btn[disabled]{color:rgba(0,0,0,0.5);background:#cca000}.btn-yellow.btn-active:hover,input[type="submit"].btn-yellow.btn-active:hover,.btn-yellow.btn-disabled:hover,input[type="submit"].btn-yellow.btn-disabled:hover,.btn-yellow.btn[disabled]:hover,input[type="submit"].btn-yellow.btn[disabled]:hover{color:rgba(0,0,0,0.5)}.btn-yellow.btn-outline,input[type="submit"].btn-yellow.btn-outline{background:0;border-color:#ffc800;color:#ffc800}.btn-yellow.btn-outline:hover,input[type="submit"].btn-yellow.btn-outline:hover{color:rgba(0,0,0,0.9);background:#ffc800}.btn-yellow.btn-outline.btn[disabled],input[type="submit"].btn-yellow.btn-outline.btn[disabled],.btn-yellow.btn-outline.btn-disabled,input[type="submit"].btn-yellow.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(255,200,0,0.4);border:1px solid rgba(255,200,0,0.3)}.btn-yellow.btn-outline.btn-active,input[type="submit"].btn-yellow.btn-outline.btn-active{background:0;color:rgba(255,200,0,0.6);border:0;box-shadow:0 1px 3px rgba(204,160,0,0.6) inset}.btn-white,input[type="submit"].btn-white{color:rgba(0,0,0,0.9);background:#fff}.btn-white:hover,input[type="submit"].btn-white:hover{color:rgba(0,0,0,0.6);background:#ededed}.btn-white.btn-active,input[type="submit"].btn-white.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.2) inset}.btn-white.btn-active,input[type="submit"].btn-white.btn-active,.btn-white.btn-disabled,input[type="submit"].btn-white.btn-disabled,.btn-white.btn[disabled],input[type="submit"].btn-white.btn[disabled]{color:rgba(0,0,0,0.5);background:#ededed}.btn-white.btn-active:hover,input[type="submit"].btn-white.btn-active:hover,.btn-white.btn-disabled:hover,input[type="submit"].btn-white.btn-disabled:hover,.btn-white.btn[disabled]:hover,input[type="submit"].btn-white.btn[disabled]:hover{color:rgba(0,0,0,0.5)}.btn-white.btn-outline,input[type="submit"].btn-white.btn-outline{background:0;border-color:#fff;color:#fff}.btn-white.btn-outline:hover,input[type="submit"].btn-white.btn-outline:hover{color:rgba(0,0,0,0.9);background:#fff}.btn-white.btn-outline.btn[disabled],input[type="submit"].btn-white.btn-outline.btn[disabled],.btn-white.btn-outline.btn-disabled,input[type="submit"].btn-white.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(255,255,255,0.4);border:1px solid rgba(255,255,255,0.3)}.btn-white.btn-outline.btn-active,input[type="submit"].btn-white.btn-outline.btn-active{background:0;color:rgba(255,255,255,0.6);border:0;box-shadow:0 1px 3px rgba(237,237,237,0.6) inset}.btn-white:hover,input[type="submit"].btn-white:hover{color:rgba(0,0,0,0.6);background:#ededed}.btn-white.btn-active,input[type="submit"].btn-white.btn-active{box-shadow:0 1px 4px rgba(0,0,0,0.2) inset}.btn-white.btn-active,input[type="submit"].btn-white.btn-active,.btn-white.btn-disabled,input[type="submit"].btn-white.btn-disabled,.btn-white.btn[disabled],input[type="submit"].btn-white.btn[disabled]{color:rgba(0,0,0,0.5);background:#ededed}.btn-white.btn-active:hover,input[type="submit"].btn-white.btn-active:hover,.btn-white.btn-disabled:hover,input[type="submit"].btn-white.btn-disabled:hover,.btn-white.btn[disabled]:hover,input[type="submit"].btn-white.btn[disabled]:hover{color:rgba(0,0,0,0.5)}.btn-white.btn-outline,input[type="submit"].btn-white.btn-outline{background:0;border-color:#fff;color:#fff}.btn-white.btn-outline:hover,input[type="submit"].btn-white.btn-outline:hover{color:rgba(0,0,0,0.9);background:#fff}.btn-white.btn-outline.btn[disabled],input[type="submit"].btn-white.btn-outline.btn[disabled],.btn-white.btn-outline.btn-disabled,input[type="submit"].btn-white.btn-outline.btn-disabled{background:0;box-shadow:none;color:rgba(255,255,255,0.4);border:1px solid rgba(255,255,255,0.3)}.btn-white.btn-outline.btn-active,input[type="submit"].btn-white.btn-outline.btn-active{background:0;color:rgba(255,255,255,0.6);border:0;box-shadow:0 1px 3px rgba(237,237,237,0.6) inset}.btn-white.btn-outline.btn-active{box-shadow:none;border:1px solid rgba(255,255,255,0.3);padding:.48750000000000004em 2.5em}.btn-single,.btn-group{display:inline-block;margin-right:2px;vertical-align:bottom}.btn-single:after,.btn-group:after{content:"";display:table;clear:both}.btn-single:after,.btn-group:after{content:"";display:table;clear:both}.btn-single>.btn,.btn-single>input,.btn-group>.btn,.btn-group>input{float:left;border-radius:0;margin-left:-1px}.btn-single>.btn{border-radius:2px}.btn-group>.btn:first-child{border-radius:2px 0 0 2px}.btn-group>.btn:last-child{border-radius:0 2px 2px 0}.btn-group>.btn.btn-round:first-child,.btn-group>.input-search:first-child{border-radius:15px 0 0 15px}.btn-group>.btn.btn-round:last-child,.btn-group>.input-search:last-child{border-radius:0 15px 15px 0}.tools-alert{padding:12px 15px;background:#f7f8f8;color:#0f0f0f;margin-bottom:1.65em}.tools-message{display:none;position:fixed;z-index:100;top:10px;right:10px;max-width:350px;line-height:1.5;font-size:95%;padding:12px 15px;color:#0f0f0f;background:#e0e3e5}.tools-message ul{margin:0;list-style:none}.tools-message-black,.tools-message-blue,.tools-message-red,.tools-message-green{color:rgba(255,255,255,0.95)}.tools-message-black{background:#0f0f0f}.tools-message-blue{background:#2575ed}.tools-message-red{background:#de2c3b}.tools-message-yellow{background:#ffc800}.tools-message-green{background:#2c9f42}.tools-alert-black{background:#dadada}.tools-alert-blue{background:#d3e3fb}.tools-alert-red{background:#f8d5d8}.tools-alert-yellow{background:#fff4cc}.tools-alert-green{background:#d5ecd9}.label,.badge{background:#e0e3e5;font-size:12.75px;display:inline-block;line-height:1;padding:4px 7px 3px 7px;color:#0f0f0f;text-align:center;font-weight:normal;text-transform:uppercase}.label-outline{background:0;border:1px solid #0f0f0f;padding:3px 6px 2px 6px}.badge{border-radius:15px}.badge-small{font-size:11.25px;padding:3px 5px}.label-black,.label-blue,.label-red,.label-green,.badge-black,.badge-blue,.badge-red,.badge-green{color:#fff}.label-black,.badge-black{background:#0f0f0f}.label-blue,.badge-blue{background:#2575ed}.label-red,.badge-red{background:#de2c3b}.label-green,.badge-green{background:#2c9f42}.label-yellow,.badge-yellow{background:#ffc800}.label-white,.badge-white{background:#fff}.label-black.label-outline,.label-blue.label-outline,.label-red.label-outline,.label-green.label-outline,.label-yellow.label-outline,.label-white.label-outline{background:0;color:#0f0f0f}.label-blue.label-outline{border-color:#2575ed;color:#2575ed}.label-red.label-outline{border-color:#de2c3b;color:#de2c3b}.label-green.label-outline{border-color:#2c9f42;color:#2c9f42}.label-yellow.label-outline{border-color:#ffc800;color:#ffc800}.label-white.label-outline{border-color:#fff;color:#fff}#tools-progress{position:fixed;top:0;left:0;width:100%;z-index:1000000;height:10px}#tools-progress span{display:block;width:100%;height:100%;background-color:#1a52a5;background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.2) 50%,rgba(255,255,255,0.2) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.2) 50%,rgba(255,255,255,0.2) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.2) 50%,rgba(255,255,255,0.2) 75%,transparent 75%,transparent);-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite;background-size:40px 40px}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.accordion-title{position:relative;display:block;margin:0;margin-bottom:2px;padding:12px 50px 12px 18px;color:#000;text-decoration:none;font-weight:normal;font-size:.9375em;line-height:1,4em;background:#f7f8f8;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.accordion-title.accordion-title-opened{margin-bottom:0;font-weight:bold;background:#f0f1f2}.accordion-title a,.accordion-title:hover{color:#000;text-decoration:none}.accordion-panel{padding:1.65em;margin-bottom:10px}.accordion-toggle{position:absolute;top:50%;margin-top:-8px;right:20px;padding:0;font-size:0;line-height:1}.accordion-toggle-closed{background:#000;width:1px;height:15px;margin-left:1px}.accordion-toggle-closed:before{position:absolute;top:7px;left:-7px;content:"";width:15px;height:1px;background:#000}.accordion-toggle-opened:before{position:absolute;top:7px;left:-8px;content:"";width:15px;height:1px;background:#000}.filterbox{position:relative}.filterbox input{padding-right:30px}.filterbox span{position:absolute;z-index:2;top:0;right:1px;width:26px;height:100%;cursor:pointer}.filterbox span:after{content:"";display:inline-block;position:relative;top:50%;margin-left:8px;margin-top:-21px;width:0;height:0;vertical-align:middle;border-top:5px solid rgba(0,0,0,0.6);border-right:5px solid transparent;border-left:5px solid transparent}.filterbox-list{z-index:1000;position:absolute;left:0;display:none;margin:0;list-style:none;background:#fff;width:100%;box-shadow:0 1px 3px rgba(0,0,0,0.2);max-height:250px;overflow:auto}.filterbox-list li{padding:4px 10px;color:#000;cursor:pointer}.filterbox-list li:hover{background:#f0f1f2}.filterbox-list li.active{background:#2575ed;color:#fff}.tooltip{position:absolute;z-index:10000;display:inline-block;color:#fff;padding:2px 10px;font-size:12.75px;line-height:1.5em;max-width:250px;background:#0f0f0f}.tooltip-theme-red{background:#de2c3b}.tooltip-theme-blue{background:#2575ed}.tooltip-theme-green{background:#2c9f42}.tooltip-theme-yellow{background:#ffc800}.tooltip-theme-white{background:#fff}.tooltip-theme-yellow,.tooltip-theme-white{color:#000}.dropdown{display:none;position:absolute;z-index:102;top:0;right:0;width:250px;color:#0f0f0f;background:#fff;box-shadow:0 1px 5px rgba(0,0,0,0.3);overflow:auto}.dropdown section{max-height:250px;overflow:auto;padding:20px}.dropdown footer{padding:20px}ul.dropdown{max-height:300px;list-style:none;margin:0;line-height:1.5;font-size:95%;padding:0}ul.dropdown a{display:block;padding:7px 15px;text-decoration:none;color:#0f0f0f}ul.dropdown a:hover{background:#eee}ul.dropdown li.divider{border-bottom:1px solid #e2e2e2}.caret{display:inline-block;width:0;height:0;margin-left:.3em;vertical-align:middle;border-top:5px solid;border-right:5px solid transparent;border-left:5px solid transparent}.caret.caret-up{border-top:0;border-bottom:4px solid}.livesearch-box{position:relative;display:inline-block;width:100%}.livesearch-box input{padding-left:30px}.livesearch-box .close{position:absolute;top:.2em;right:5px;z-index:2;padding:4px 6px;line-height:1;font-size:20px;cursor:pointer;color:#000;text-decoration:none;filter:alpha(opacity=50);-moz-opacity:.5;opacity:.5}.livesearch-box .close:before{content:'\00D7'}.livesearch-box .close:hover{filter:alpha(opacity=100);-moz-opacity:1;opacity:1}.livesearch-box .close:before{content:'\00D7'}.livesearch-box .close:hover{filter:alpha(opacity=100);-moz-opacity:1;opacity:1}.livesearch-icon{position:absolute;top:53%;left:10px;z-index:2}.livesearch-icon:before,.livesearch-icon:after{content:"";position:absolute;top:50%;left:0;margin:-8px 0 0;background:rgba(0,0,0,0.5)}.livesearch-icon:before{width:10px;height:10px;border:2px solid rgba(0,0,0,0.5);background:transparent;border-radius:12px}.livesearch-icon:after{left:10px;width:2px;height:7px;margin-top:0;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.tools-droparea{position:relative;overflow:hidden;padding:80px 20px;border:3px dashed rgba(0,0,0,0.1)}.tools-droparea.drag-hover{background:rgba(200,222,250,0.75)}.tools-droparea.drag-drop{background:rgba(250,248,200,0.5)}.tools-droparea-placeholder{text-align:center;font-size:11px;color:rgba(0,0,0,0.5)}.autocomplete{position:absolute;z-index:1000;left:0;display:none;margin:0;list-style:none;background:#fff;width:250px;box-shadow:0 1px 3px rgba(0,0,0,0.2);max-height:250px;overflow:auto}.autocomplete a{padding:4px 10px;color:#000;display:block;text-decoration:none}.autocomplete a:hover{background:#f0f1f2}.autocomplete a.active{background:#2575ed;color:#fff}#modal-overlay{position:fixed;top:0;left:0;margin:auto;overflow:auto;width:100%;height:100%;background-color:#000!important;filter:alpha(opacity=30);-moz-opacity:.3;opacity:.3;z-index:100}.modal-blur{-webkit-filter:blur(3px);-moz-filter:blur(3px);-ms-filter:blur(3px);filter:blur(3px)}.modal-box{position:fixed;top:0;left:0;bottom:0;right:0;overflow-x:hidden;overflow-y:auto;z-index:101}.modal{position:relative;margin:auto;margin-bottom:20px;padding:0;background:#fff;color:#000;box-shadow:0 1px 70px rgba(0,0,0,0.5)}.modal header{padding:30px 40px 5px 40px;font-size:18px;font-weight:bold}.modal section{padding:30px 40px 50px 40px}.modal footer button{width:100%;border-radius:0}.modal-close{position:absolute;top:8px;right:12px;width:30px;height:30px;text-align:right;color:#bbb;font-size:30px;font-weight:300;cursor:pointer}.modal-close:hover{color:#000}.group:after{content:"";display:table;clear:both}.group:after{content:"";display:table;clear:both}.hide{display:none}.highlight{background-color:#f7f3e2}.big{font-size:18px}.small{font-size:12.75px}.smaller{font-size:11.25px}.nowrap,.nowrap td{white-space:nowrap}.req,.required{font-weight:normal;color:#de2c3b}.error{color:#de2c3b}.success{color:#2c9f42}.text-centered{text-align:center}.text-right{text-align:right}.last{margin-right:0!important}.pause{margin-bottom:.825em!important}.end{margin-bottom:0!important}.normal{font-weight:normal}.light{font-weight:300}.bold{font-weight:bold}.italic{font-style:italic}.left{float:left}.right{float:right}.upper{text-transform:uppercase}.list-flat{margin-left:0;list-style:none}.color-black{color:#0f0f0f}.color-white{color:#fff}.color-gray-10{color:rgba(0,0,0,0.1)}.color-gray-20{color:rgba(0,0,0,0.2)}.color-gray-30{color:rgba(0,0,0,0.3)}.color-gray-40{color:rgba(0,0,0,0.4)}.color-gray-50{color:rgba(0,0,0,0.5)}.color-gray-60{color:rgba(0,0,0,0.6)}.color-gray-70{color:rgba(0,0,0,0.7)}.color-gray-80{color:rgba(0,0,0,0.8)}.color-gray-90{color:rgba(0,0,0,0.9)}.color-white-10{color:rgba(255,255,255,0.1)}.color-white-20{color:rgba(255,255,255,0.2)}.color-white-30{color:rgba(255,255,255,0.3)}.color-white-40{color:rgba(255,255,255,0.4)}.color-white-50{color:rgba(255,255,255,0.5)}.color-white-60{color:rgba(255,255,255,0.6)}.color-white-70{color:rgba(255,255,255,0.7)}.color-white-80{color:rgba(255,255,255,0.8)}.color-white-90{color:rgba(255,255,255,0.9)}.video-wrapper{height:0;padding-bottom:56.25%;position:relative;margin-bottom:1.65em}.video-wrapper iframe,.video-wrapper object,.video-wrapper embed{position:absolute;top:0;left:0;width:100%;height:100%}@media only screen and (max-width:767px){.left,.right{float:none}.hide-on-mobile{display:none}}.str{color:#d14}.kwd{color:#333}.com{color:#998}.typ{color:#458}.lit{color:#458}.pun{color:#888}.opn{color:#333}.clo{color:#333}.tag{color:#367ac3}.atn{color:#51a7c9}.atv{color:#709c1a}.dec{color:#666}.var{color:teal}.fun{color:#900}.linenums ol li{list-style-type:none;counter-increment:list;position:relative}.linenums ol li:after{content:counter(list);position:absolute;left:-3.3em;border-right:1px solid #e5e5e5;padding-right:9px;width:2.45em;text-align:right;color:rgba(0,0,0,0.3);font-size:12px}@media only screen and (max-width:767px){.mobile-width-100{width:100%}.units-row .unit-90,.units-row .unit-80,.units-row .unit-75,.units-row .unit-70,.units-row .unit-66,.units-row .unit-65,.units-row .unit-60,.units-row .unit-50,.units-row .unit-40,.units-row .unit-35,.units-row .unit-33,.units-row .unit-30,.units-row .unit-25,.units-row .unit-20,.units-row .unit-10{width:100%;float:none;margin-left:0;margin-bottom:1.65em}.unit-push-90,.unit-push-80,.unit-push-75,.unit-push-70,.unit-push-66,.unit-push-65,.unit-push-60,.unit-push-50,.unit-push-40,.unit-push-35,.unit-push-33,.unit-push-30,.unit-push-25,.unit-push-20,.unit-push-10{left:0}.units-row .unit-push-right{float:none}.units-mobile-50 .unit-90,.units-mobile-50 .unit-80,.units-mobile-50 .unit-75,.units-mobile-50 .unit-70,.units-mobile-50 .unit-66,.units-mobile-50 .unit-65,.units-mobile-50 .unit-60,.units-mobile-50 .unit-40,.units-mobile-50 .unit-30,.units-mobile-50 .unit-35,.units-mobile-50 .unit-33,.units-mobile-50 .unit-25,.units-mobile-50 .unit-20,.units-mobile-50 .unit-10{float:left;margin-left:3%;width:48.5%}.units-mobile-50 .unit-90:first-child,.units-mobile-50 .unit-80:first-child,.units-mobile-50 .unit-75:first-child,.units-mobile-50 .unit-70:first-child,.units-mobile-50 .unit-66:first-child,.units-mobile-50 .unit-65:first-child,.units-mobile-50 .unit-60:first-child,.units-mobile-50 .unit-40:first-child,.units-mobile-50 .unit-35:first-child,.units-mobile-50 .unit-30:first-child,.units-mobile-50 .unit-33:first-child,.units-mobile-50 .unit-25:first-child,.units-mobile-50 .unit-20:first-child,.units-mobile-50 .unit-10:first-child{margin-left:0}}@media only screen and (max-width:767px){.blocks-2,.blocks-3,.blocks-4,.blocks-5,.blocks-6{margin-left:0;margin-bottom:1.65em}.blocks-2>li,.blocks-3>li,.blocks-4>li,.blocks-5>li,.blocks-6>li{float:none;margin-left:0;width:100%}.blocks-mobile-50>li,.blocks-mobile-33>li{float:left;margin-left:3%}.blocks-mobile-33,.blocks-mobile-50{margin-left:-3%}.blocks-mobile-50>li{width:47%}.blocks-mobile-33>li{width:30.333333333333332%}}@media(min-width:768px) and (max-width:979px){h1{font-size:2.25em;line-height:1.125}h2{font-size:1.5em;line-height:1.25}h3{font-size:1.3125em;line-height:1.25}h4{font-size:1.125em;line-height:1.22222222}h5{font-size:1em}h6{font-size:.75em}}@media(max-width:767px){h1{font-size:2.25em;line-height:1.25}h2{font-size:1.5em;line-height:1.15384615}h3{font-size:1.3125em;line-height:1.13636364}h4{font-size:1.125em;line-height:1.11111111}h5{font-size:1em}h6{font-size:.75em}.lead{font-size:1.2em}ul,ol,ul ul,ol ol,ul ol,ol ul{margin-left:1.65em}blockquote{margin-left:0}}@media only screen and (max-width:767px){.navbar.navbar-left,.navbar.navbar-right,.navbar li,.navbar.navbar-left li,.navbar.navbar-right li{float:none;text-align:left;width:auto}.navbar li,.navbar.navbar-right li{margin-left:0;margin-right:0}.fullwidth ul,.fullwidth li{width:auto}.fullwidth li{display:block}}@media only screen and (max-width:767px){.forms-list label{display:inline-block}}@media print{*{text-shadow:none!important;color:#000!important;background:transparent!important;box-shadow:none!important;font-size:12pt}.h1,h1{font-size:36pt}.h2,h2{font-size:24pt}.h3,h3{font-size:18pt}.h4,h4{font-size:14pt}.h5,h5{font-size:12pt}.h6,h6{font-size:12pt}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{page-break-inside:avoid}blockquote{border:0;font-style:italic}img{max-width:100%!important}select{background:#fff!important}}
\ No newline at end of file
diff --git a/static/assets/css/tufte.css b/static/assets/css/tufte.css
new file mode 100644
index 0000000..ade0258
--- /dev/null
+++ b/static/assets/css/tufte.css
@@ -0,0 +1,91 @@
+body {
+ counter-reset: sidenote-counter;
+}
+
+.sidenote,
+.marginnote {
+ float: right;
+ clear: right;
+ margin-right: -45%;
+ width: 40%;
+ margin-top: 0;
+ margin-bottom: 0;
+ font-size: 0.8rem;
+ line-height: 1.3;
+ vertical-align: baseline;
+ position: relative;
+ font-style: normal;
+}
+
+.sidenote-number {
+ counter-increment: sidenote-counter;
+}
+
+.sidenote-number:after,
+.sidenote:before {
+ position: relative;
+ vertical-align: baseline;
+}
+
+.sidenote:before {
+ margin-left: -0.5rem;
+}
+
+input.margin-toggle {
+ display: none;
+}
+
+label.sidenote-number {
+ display: inline;
+}
+
+label.margin-toggle:not(.sidenote-number) {
+ display: none;
+}
+
+.sidenote-number:after {
+ content: counter(sidenote-counter);
+ font-size: 0.65rem;
+ top: -0.5rem;
+ left: -0.1rem;
+}
+
+.sidenote:before {
+ content: counter(sidenote-counter) " ";
+ font-size: 0.8rem;
+ top: -0.25rem;
+}
+
+@media only screen and (max-width: 767px) {
+ .sidenote, .marginnote {
+ display: none;
+ }
+
+ label.sidenote-number {
+ display: inline;
+ color: #b24;
+ }
+
+
+ label.margin-toggle:not(.sidenote-number) {
+ display: inline;
+ color: #b24;
+ font-style: normal;
+ }
+
+ .margin-toggle:checked+.sidenote,
+ .margin-toggle:checked+.marginnote {
+ display: block;
+ float: left;
+ left: 2.5%;
+ clear: both;
+ width: 87.5%;
+ margin: 1rem 5%;
+ vertical-align: baseline;
+ position: relative;
+ }
+
+ label {
+ cursor: pointer;
+ }
+}
diff --git a/static/assets/favicon-16x16.png b/static/assets/favicon-16x16.png
new file mode 100644
index 0000000..5b90727
Binary files /dev/null and b/static/assets/favicon-16x16.png differ
diff --git a/static/assets/favicon-32x32.png b/static/assets/favicon-32x32.png
new file mode 100644
index 0000000..67642ef
Binary files /dev/null and b/static/assets/favicon-32x32.png differ
diff --git a/static/assets/favicon.ico b/static/assets/favicon.ico
new file mode 100644
index 0000000..8587f46
Binary files /dev/null and b/static/assets/favicon.ico differ
diff --git a/static/assets/fonts/fell-flowers/FeFlow2.woff b/static/assets/fonts/fell-flowers/FeFlow2.woff
new file mode 100644
index 0000000..cdb3e66
Binary files /dev/null and b/static/assets/fonts/fell-flowers/FeFlow2.woff differ
diff --git a/static/assets/fonts/fell-flowers/style.css b/static/assets/fonts/fell-flowers/style.css
new file mode 100644
index 0000000..81e02fe
--- /dev/null
+++ b/static/assets/fonts/fell-flowers/style.css
@@ -0,0 +1,8 @@
+/* #### Generated By: http://www.cufonfonts.com #### */
+
+@font-face {
+font-family: 'IM FELL FLOWERS 2';
+font-style: normal;
+font-weight: normal;
+src: local('IM FELL FLOWERS 2'), url('FeFlow2.woff') format('woff');
+}
\ No newline at end of file
diff --git a/static/assets/fonts/fontawesome/css/all.css b/static/assets/fonts/fontawesome/css/all.css
new file mode 100644
index 0000000..bca4744
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/all.css
@@ -0,0 +1,4396 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+.fa,
+.fas,
+.far,
+.fal,
+.fad,
+.fab {
+ -moz-osx-font-smoothing: grayscale;
+ -webkit-font-smoothing: antialiased;
+ display: inline-block;
+ font-style: normal;
+ font-variant: normal;
+ text-rendering: auto;
+ line-height: 1; }
+
+.fa-lg {
+ font-size: 1.33333em;
+ line-height: 0.75em;
+ vertical-align: -.0667em; }
+
+.fa-xs {
+ font-size: .75em; }
+
+.fa-sm {
+ font-size: .875em; }
+
+.fa-1x {
+ font-size: 1em; }
+
+.fa-2x {
+ font-size: 2em; }
+
+.fa-3x {
+ font-size: 3em; }
+
+.fa-4x {
+ font-size: 4em; }
+
+.fa-5x {
+ font-size: 5em; }
+
+.fa-6x {
+ font-size: 6em; }
+
+.fa-7x {
+ font-size: 7em; }
+
+.fa-8x {
+ font-size: 8em; }
+
+.fa-9x {
+ font-size: 9em; }
+
+.fa-10x {
+ font-size: 10em; }
+
+.fa-fw {
+ text-align: center;
+ width: 1.25em; }
+
+.fa-ul {
+ list-style-type: none;
+ margin-left: 2.5em;
+ padding-left: 0; }
+ .fa-ul > li {
+ position: relative; }
+
+.fa-li {
+ left: -2em;
+ position: absolute;
+ text-align: center;
+ width: 2em;
+ line-height: inherit; }
+
+.fa-border {
+ border: solid 0.08em #eee;
+ border-radius: .1em;
+ padding: .2em .25em .15em; }
+
+.fa-pull-left {
+ float: left; }
+
+.fa-pull-right {
+ float: right; }
+
+.fa.fa-pull-left,
+.fas.fa-pull-left,
+.far.fa-pull-left,
+.fal.fa-pull-left,
+.fab.fa-pull-left {
+ margin-right: .3em; }
+
+.fa.fa-pull-right,
+.fas.fa-pull-right,
+.far.fa-pull-right,
+.fal.fa-pull-right,
+.fab.fa-pull-right {
+ margin-left: .3em; }
+
+.fa-spin {
+ -webkit-animation: fa-spin 2s infinite linear;
+ animation: fa-spin 2s infinite linear; }
+
+.fa-pulse {
+ -webkit-animation: fa-spin 1s infinite steps(8);
+ animation: fa-spin 1s infinite steps(8); }
+
+@-webkit-keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg); }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg); } }
+
+@keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg); }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg); } }
+
+.fa-rotate-90 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
+ -webkit-transform: rotate(90deg);
+ transform: rotate(90deg); }
+
+.fa-rotate-180 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
+ -webkit-transform: rotate(180deg);
+ transform: rotate(180deg); }
+
+.fa-rotate-270 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
+ -webkit-transform: rotate(270deg);
+ transform: rotate(270deg); }
+
+.fa-flip-horizontal {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
+ -webkit-transform: scale(-1, 1);
+ transform: scale(-1, 1); }
+
+.fa-flip-vertical {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
+ -webkit-transform: scale(1, -1);
+ transform: scale(1, -1); }
+
+.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
+ -webkit-transform: scale(-1, -1);
+ transform: scale(-1, -1); }
+
+:root .fa-rotate-90,
+:root .fa-rotate-180,
+:root .fa-rotate-270,
+:root .fa-flip-horizontal,
+:root .fa-flip-vertical,
+:root .fa-flip-both {
+ -webkit-filter: none;
+ filter: none; }
+
+.fa-stack {
+ display: inline-block;
+ height: 2em;
+ line-height: 2em;
+ position: relative;
+ vertical-align: middle;
+ width: 2.5em; }
+
+.fa-stack-1x,
+.fa-stack-2x {
+ left: 0;
+ position: absolute;
+ text-align: center;
+ width: 100%; }
+
+.fa-stack-1x {
+ line-height: inherit; }
+
+.fa-stack-2x {
+ font-size: 2em; }
+
+.fa-inverse {
+ color: #fff; }
+
+/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
+readers do not read off random characters that represent icons */
+.fa-500px:before {
+ content: "\f26e"; }
+
+.fa-accessible-icon:before {
+ content: "\f368"; }
+
+.fa-accusoft:before {
+ content: "\f369"; }
+
+.fa-acquisitions-incorporated:before {
+ content: "\f6af"; }
+
+.fa-ad:before {
+ content: "\f641"; }
+
+.fa-address-book:before {
+ content: "\f2b9"; }
+
+.fa-address-card:before {
+ content: "\f2bb"; }
+
+.fa-adjust:before {
+ content: "\f042"; }
+
+.fa-adn:before {
+ content: "\f170"; }
+
+.fa-adobe:before {
+ content: "\f778"; }
+
+.fa-adversal:before {
+ content: "\f36a"; }
+
+.fa-affiliatetheme:before {
+ content: "\f36b"; }
+
+.fa-air-freshener:before {
+ content: "\f5d0"; }
+
+.fa-airbnb:before {
+ content: "\f834"; }
+
+.fa-algolia:before {
+ content: "\f36c"; }
+
+.fa-align-center:before {
+ content: "\f037"; }
+
+.fa-align-justify:before {
+ content: "\f039"; }
+
+.fa-align-left:before {
+ content: "\f036"; }
+
+.fa-align-right:before {
+ content: "\f038"; }
+
+.fa-alipay:before {
+ content: "\f642"; }
+
+.fa-allergies:before {
+ content: "\f461"; }
+
+.fa-amazon:before {
+ content: "\f270"; }
+
+.fa-amazon-pay:before {
+ content: "\f42c"; }
+
+.fa-ambulance:before {
+ content: "\f0f9"; }
+
+.fa-american-sign-language-interpreting:before {
+ content: "\f2a3"; }
+
+.fa-amilia:before {
+ content: "\f36d"; }
+
+.fa-anchor:before {
+ content: "\f13d"; }
+
+.fa-android:before {
+ content: "\f17b"; }
+
+.fa-angellist:before {
+ content: "\f209"; }
+
+.fa-angle-double-down:before {
+ content: "\f103"; }
+
+.fa-angle-double-left:before {
+ content: "\f100"; }
+
+.fa-angle-double-right:before {
+ content: "\f101"; }
+
+.fa-angle-double-up:before {
+ content: "\f102"; }
+
+.fa-angle-down:before {
+ content: "\f107"; }
+
+.fa-angle-left:before {
+ content: "\f104"; }
+
+.fa-angle-right:before {
+ content: "\f105"; }
+
+.fa-angle-up:before {
+ content: "\f106"; }
+
+.fa-angry:before {
+ content: "\f556"; }
+
+.fa-angrycreative:before {
+ content: "\f36e"; }
+
+.fa-angular:before {
+ content: "\f420"; }
+
+.fa-ankh:before {
+ content: "\f644"; }
+
+.fa-app-store:before {
+ content: "\f36f"; }
+
+.fa-app-store-ios:before {
+ content: "\f370"; }
+
+.fa-apper:before {
+ content: "\f371"; }
+
+.fa-apple:before {
+ content: "\f179"; }
+
+.fa-apple-alt:before {
+ content: "\f5d1"; }
+
+.fa-apple-pay:before {
+ content: "\f415"; }
+
+.fa-archive:before {
+ content: "\f187"; }
+
+.fa-archway:before {
+ content: "\f557"; }
+
+.fa-arrow-alt-circle-down:before {
+ content: "\f358"; }
+
+.fa-arrow-alt-circle-left:before {
+ content: "\f359"; }
+
+.fa-arrow-alt-circle-right:before {
+ content: "\f35a"; }
+
+.fa-arrow-alt-circle-up:before {
+ content: "\f35b"; }
+
+.fa-arrow-circle-down:before {
+ content: "\f0ab"; }
+
+.fa-arrow-circle-left:before {
+ content: "\f0a8"; }
+
+.fa-arrow-circle-right:before {
+ content: "\f0a9"; }
+
+.fa-arrow-circle-up:before {
+ content: "\f0aa"; }
+
+.fa-arrow-down:before {
+ content: "\f063"; }
+
+.fa-arrow-left:before {
+ content: "\f060"; }
+
+.fa-arrow-right:before {
+ content: "\f061"; }
+
+.fa-arrow-up:before {
+ content: "\f062"; }
+
+.fa-arrows-alt:before {
+ content: "\f0b2"; }
+
+.fa-arrows-alt-h:before {
+ content: "\f337"; }
+
+.fa-arrows-alt-v:before {
+ content: "\f338"; }
+
+.fa-artstation:before {
+ content: "\f77a"; }
+
+.fa-assistive-listening-systems:before {
+ content: "\f2a2"; }
+
+.fa-asterisk:before {
+ content: "\f069"; }
+
+.fa-asymmetrik:before {
+ content: "\f372"; }
+
+.fa-at:before {
+ content: "\f1fa"; }
+
+.fa-atlas:before {
+ content: "\f558"; }
+
+.fa-atlassian:before {
+ content: "\f77b"; }
+
+.fa-atom:before {
+ content: "\f5d2"; }
+
+.fa-audible:before {
+ content: "\f373"; }
+
+.fa-audio-description:before {
+ content: "\f29e"; }
+
+.fa-autoprefixer:before {
+ content: "\f41c"; }
+
+.fa-avianex:before {
+ content: "\f374"; }
+
+.fa-aviato:before {
+ content: "\f421"; }
+
+.fa-award:before {
+ content: "\f559"; }
+
+.fa-aws:before {
+ content: "\f375"; }
+
+.fa-baby:before {
+ content: "\f77c"; }
+
+.fa-baby-carriage:before {
+ content: "\f77d"; }
+
+.fa-backspace:before {
+ content: "\f55a"; }
+
+.fa-backward:before {
+ content: "\f04a"; }
+
+.fa-bacon:before {
+ content: "\f7e5"; }
+
+.fa-balance-scale:before {
+ content: "\f24e"; }
+
+.fa-balance-scale-left:before {
+ content: "\f515"; }
+
+.fa-balance-scale-right:before {
+ content: "\f516"; }
+
+.fa-ban:before {
+ content: "\f05e"; }
+
+.fa-band-aid:before {
+ content: "\f462"; }
+
+.fa-bandcamp:before {
+ content: "\f2d5"; }
+
+.fa-barcode:before {
+ content: "\f02a"; }
+
+.fa-bars:before {
+ content: "\f0c9"; }
+
+.fa-baseball-ball:before {
+ content: "\f433"; }
+
+.fa-basketball-ball:before {
+ content: "\f434"; }
+
+.fa-bath:before {
+ content: "\f2cd"; }
+
+.fa-battery-empty:before {
+ content: "\f244"; }
+
+.fa-battery-full:before {
+ content: "\f240"; }
+
+.fa-battery-half:before {
+ content: "\f242"; }
+
+.fa-battery-quarter:before {
+ content: "\f243"; }
+
+.fa-battery-three-quarters:before {
+ content: "\f241"; }
+
+.fa-battle-net:before {
+ content: "\f835"; }
+
+.fa-bed:before {
+ content: "\f236"; }
+
+.fa-beer:before {
+ content: "\f0fc"; }
+
+.fa-behance:before {
+ content: "\f1b4"; }
+
+.fa-behance-square:before {
+ content: "\f1b5"; }
+
+.fa-bell:before {
+ content: "\f0f3"; }
+
+.fa-bell-slash:before {
+ content: "\f1f6"; }
+
+.fa-bezier-curve:before {
+ content: "\f55b"; }
+
+.fa-bible:before {
+ content: "\f647"; }
+
+.fa-bicycle:before {
+ content: "\f206"; }
+
+.fa-biking:before {
+ content: "\f84a"; }
+
+.fa-bimobject:before {
+ content: "\f378"; }
+
+.fa-binoculars:before {
+ content: "\f1e5"; }
+
+.fa-biohazard:before {
+ content: "\f780"; }
+
+.fa-birthday-cake:before {
+ content: "\f1fd"; }
+
+.fa-bitbucket:before {
+ content: "\f171"; }
+
+.fa-bitcoin:before {
+ content: "\f379"; }
+
+.fa-bity:before {
+ content: "\f37a"; }
+
+.fa-black-tie:before {
+ content: "\f27e"; }
+
+.fa-blackberry:before {
+ content: "\f37b"; }
+
+.fa-blender:before {
+ content: "\f517"; }
+
+.fa-blender-phone:before {
+ content: "\f6b6"; }
+
+.fa-blind:before {
+ content: "\f29d"; }
+
+.fa-blog:before {
+ content: "\f781"; }
+
+.fa-blogger:before {
+ content: "\f37c"; }
+
+.fa-blogger-b:before {
+ content: "\f37d"; }
+
+.fa-bluetooth:before {
+ content: "\f293"; }
+
+.fa-bluetooth-b:before {
+ content: "\f294"; }
+
+.fa-bold:before {
+ content: "\f032"; }
+
+.fa-bolt:before {
+ content: "\f0e7"; }
+
+.fa-bomb:before {
+ content: "\f1e2"; }
+
+.fa-bone:before {
+ content: "\f5d7"; }
+
+.fa-bong:before {
+ content: "\f55c"; }
+
+.fa-book:before {
+ content: "\f02d"; }
+
+.fa-book-dead:before {
+ content: "\f6b7"; }
+
+.fa-book-medical:before {
+ content: "\f7e6"; }
+
+.fa-book-open:before {
+ content: "\f518"; }
+
+.fa-book-reader:before {
+ content: "\f5da"; }
+
+.fa-bookmark:before {
+ content: "\f02e"; }
+
+.fa-bootstrap:before {
+ content: "\f836"; }
+
+.fa-border-all:before {
+ content: "\f84c"; }
+
+.fa-border-none:before {
+ content: "\f850"; }
+
+.fa-border-style:before {
+ content: "\f853"; }
+
+.fa-bowling-ball:before {
+ content: "\f436"; }
+
+.fa-box:before {
+ content: "\f466"; }
+
+.fa-box-open:before {
+ content: "\f49e"; }
+
+.fa-boxes:before {
+ content: "\f468"; }
+
+.fa-braille:before {
+ content: "\f2a1"; }
+
+.fa-brain:before {
+ content: "\f5dc"; }
+
+.fa-bread-slice:before {
+ content: "\f7ec"; }
+
+.fa-briefcase:before {
+ content: "\f0b1"; }
+
+.fa-briefcase-medical:before {
+ content: "\f469"; }
+
+.fa-broadcast-tower:before {
+ content: "\f519"; }
+
+.fa-broom:before {
+ content: "\f51a"; }
+
+.fa-brush:before {
+ content: "\f55d"; }
+
+.fa-btc:before {
+ content: "\f15a"; }
+
+.fa-buffer:before {
+ content: "\f837"; }
+
+.fa-bug:before {
+ content: "\f188"; }
+
+.fa-building:before {
+ content: "\f1ad"; }
+
+.fa-bullhorn:before {
+ content: "\f0a1"; }
+
+.fa-bullseye:before {
+ content: "\f140"; }
+
+.fa-burn:before {
+ content: "\f46a"; }
+
+.fa-buromobelexperte:before {
+ content: "\f37f"; }
+
+.fa-bus:before {
+ content: "\f207"; }
+
+.fa-bus-alt:before {
+ content: "\f55e"; }
+
+.fa-business-time:before {
+ content: "\f64a"; }
+
+.fa-buysellads:before {
+ content: "\f20d"; }
+
+.fa-calculator:before {
+ content: "\f1ec"; }
+
+.fa-calendar:before {
+ content: "\f133"; }
+
+.fa-calendar-alt:before {
+ content: "\f073"; }
+
+.fa-calendar-check:before {
+ content: "\f274"; }
+
+.fa-calendar-day:before {
+ content: "\f783"; }
+
+.fa-calendar-minus:before {
+ content: "\f272"; }
+
+.fa-calendar-plus:before {
+ content: "\f271"; }
+
+.fa-calendar-times:before {
+ content: "\f273"; }
+
+.fa-calendar-week:before {
+ content: "\f784"; }
+
+.fa-camera:before {
+ content: "\f030"; }
+
+.fa-camera-retro:before {
+ content: "\f083"; }
+
+.fa-campground:before {
+ content: "\f6bb"; }
+
+.fa-canadian-maple-leaf:before {
+ content: "\f785"; }
+
+.fa-candy-cane:before {
+ content: "\f786"; }
+
+.fa-cannabis:before {
+ content: "\f55f"; }
+
+.fa-capsules:before {
+ content: "\f46b"; }
+
+.fa-car:before {
+ content: "\f1b9"; }
+
+.fa-car-alt:before {
+ content: "\f5de"; }
+
+.fa-car-battery:before {
+ content: "\f5df"; }
+
+.fa-car-crash:before {
+ content: "\f5e1"; }
+
+.fa-car-side:before {
+ content: "\f5e4"; }
+
+.fa-caret-down:before {
+ content: "\f0d7"; }
+
+.fa-caret-left:before {
+ content: "\f0d9"; }
+
+.fa-caret-right:before {
+ content: "\f0da"; }
+
+.fa-caret-square-down:before {
+ content: "\f150"; }
+
+.fa-caret-square-left:before {
+ content: "\f191"; }
+
+.fa-caret-square-right:before {
+ content: "\f152"; }
+
+.fa-caret-square-up:before {
+ content: "\f151"; }
+
+.fa-caret-up:before {
+ content: "\f0d8"; }
+
+.fa-carrot:before {
+ content: "\f787"; }
+
+.fa-cart-arrow-down:before {
+ content: "\f218"; }
+
+.fa-cart-plus:before {
+ content: "\f217"; }
+
+.fa-cash-register:before {
+ content: "\f788"; }
+
+.fa-cat:before {
+ content: "\f6be"; }
+
+.fa-cc-amazon-pay:before {
+ content: "\f42d"; }
+
+.fa-cc-amex:before {
+ content: "\f1f3"; }
+
+.fa-cc-apple-pay:before {
+ content: "\f416"; }
+
+.fa-cc-diners-club:before {
+ content: "\f24c"; }
+
+.fa-cc-discover:before {
+ content: "\f1f2"; }
+
+.fa-cc-jcb:before {
+ content: "\f24b"; }
+
+.fa-cc-mastercard:before {
+ content: "\f1f1"; }
+
+.fa-cc-paypal:before {
+ content: "\f1f4"; }
+
+.fa-cc-stripe:before {
+ content: "\f1f5"; }
+
+.fa-cc-visa:before {
+ content: "\f1f0"; }
+
+.fa-centercode:before {
+ content: "\f380"; }
+
+.fa-centos:before {
+ content: "\f789"; }
+
+.fa-certificate:before {
+ content: "\f0a3"; }
+
+.fa-chair:before {
+ content: "\f6c0"; }
+
+.fa-chalkboard:before {
+ content: "\f51b"; }
+
+.fa-chalkboard-teacher:before {
+ content: "\f51c"; }
+
+.fa-charging-station:before {
+ content: "\f5e7"; }
+
+.fa-chart-area:before {
+ content: "\f1fe"; }
+
+.fa-chart-bar:before {
+ content: "\f080"; }
+
+.fa-chart-line:before {
+ content: "\f201"; }
+
+.fa-chart-pie:before {
+ content: "\f200"; }
+
+.fa-check:before {
+ content: "\f00c"; }
+
+.fa-check-circle:before {
+ content: "\f058"; }
+
+.fa-check-double:before {
+ content: "\f560"; }
+
+.fa-check-square:before {
+ content: "\f14a"; }
+
+.fa-cheese:before {
+ content: "\f7ef"; }
+
+.fa-chess:before {
+ content: "\f439"; }
+
+.fa-chess-bishop:before {
+ content: "\f43a"; }
+
+.fa-chess-board:before {
+ content: "\f43c"; }
+
+.fa-chess-king:before {
+ content: "\f43f"; }
+
+.fa-chess-knight:before {
+ content: "\f441"; }
+
+.fa-chess-pawn:before {
+ content: "\f443"; }
+
+.fa-chess-queen:before {
+ content: "\f445"; }
+
+.fa-chess-rook:before {
+ content: "\f447"; }
+
+.fa-chevron-circle-down:before {
+ content: "\f13a"; }
+
+.fa-chevron-circle-left:before {
+ content: "\f137"; }
+
+.fa-chevron-circle-right:before {
+ content: "\f138"; }
+
+.fa-chevron-circle-up:before {
+ content: "\f139"; }
+
+.fa-chevron-down:before {
+ content: "\f078"; }
+
+.fa-chevron-left:before {
+ content: "\f053"; }
+
+.fa-chevron-right:before {
+ content: "\f054"; }
+
+.fa-chevron-up:before {
+ content: "\f077"; }
+
+.fa-child:before {
+ content: "\f1ae"; }
+
+.fa-chrome:before {
+ content: "\f268"; }
+
+.fa-chromecast:before {
+ content: "\f838"; }
+
+.fa-church:before {
+ content: "\f51d"; }
+
+.fa-circle:before {
+ content: "\f111"; }
+
+.fa-circle-notch:before {
+ content: "\f1ce"; }
+
+.fa-city:before {
+ content: "\f64f"; }
+
+.fa-clinic-medical:before {
+ content: "\f7f2"; }
+
+.fa-clipboard:before {
+ content: "\f328"; }
+
+.fa-clipboard-check:before {
+ content: "\f46c"; }
+
+.fa-clipboard-list:before {
+ content: "\f46d"; }
+
+.fa-clock:before {
+ content: "\f017"; }
+
+.fa-clone:before {
+ content: "\f24d"; }
+
+.fa-closed-captioning:before {
+ content: "\f20a"; }
+
+.fa-cloud:before {
+ content: "\f0c2"; }
+
+.fa-cloud-download-alt:before {
+ content: "\f381"; }
+
+.fa-cloud-meatball:before {
+ content: "\f73b"; }
+
+.fa-cloud-moon:before {
+ content: "\f6c3"; }
+
+.fa-cloud-moon-rain:before {
+ content: "\f73c"; }
+
+.fa-cloud-rain:before {
+ content: "\f73d"; }
+
+.fa-cloud-showers-heavy:before {
+ content: "\f740"; }
+
+.fa-cloud-sun:before {
+ content: "\f6c4"; }
+
+.fa-cloud-sun-rain:before {
+ content: "\f743"; }
+
+.fa-cloud-upload-alt:before {
+ content: "\f382"; }
+
+.fa-cloudscale:before {
+ content: "\f383"; }
+
+.fa-cloudsmith:before {
+ content: "\f384"; }
+
+.fa-cloudversify:before {
+ content: "\f385"; }
+
+.fa-cocktail:before {
+ content: "\f561"; }
+
+.fa-code:before {
+ content: "\f121"; }
+
+.fa-code-branch:before {
+ content: "\f126"; }
+
+.fa-codepen:before {
+ content: "\f1cb"; }
+
+.fa-codiepie:before {
+ content: "\f284"; }
+
+.fa-coffee:before {
+ content: "\f0f4"; }
+
+.fa-cog:before {
+ content: "\f013"; }
+
+.fa-cogs:before {
+ content: "\f085"; }
+
+.fa-coins:before {
+ content: "\f51e"; }
+
+.fa-columns:before {
+ content: "\f0db"; }
+
+.fa-comment:before {
+ content: "\f075"; }
+
+.fa-comment-alt:before {
+ content: "\f27a"; }
+
+.fa-comment-dollar:before {
+ content: "\f651"; }
+
+.fa-comment-dots:before {
+ content: "\f4ad"; }
+
+.fa-comment-medical:before {
+ content: "\f7f5"; }
+
+.fa-comment-slash:before {
+ content: "\f4b3"; }
+
+.fa-comments:before {
+ content: "\f086"; }
+
+.fa-comments-dollar:before {
+ content: "\f653"; }
+
+.fa-compact-disc:before {
+ content: "\f51f"; }
+
+.fa-compass:before {
+ content: "\f14e"; }
+
+.fa-compress:before {
+ content: "\f066"; }
+
+.fa-compress-arrows-alt:before {
+ content: "\f78c"; }
+
+.fa-concierge-bell:before {
+ content: "\f562"; }
+
+.fa-confluence:before {
+ content: "\f78d"; }
+
+.fa-connectdevelop:before {
+ content: "\f20e"; }
+
+.fa-contao:before {
+ content: "\f26d"; }
+
+.fa-cookie:before {
+ content: "\f563"; }
+
+.fa-cookie-bite:before {
+ content: "\f564"; }
+
+.fa-copy:before {
+ content: "\f0c5"; }
+
+.fa-copyright:before {
+ content: "\f1f9"; }
+
+.fa-cotton-bureau:before {
+ content: "\f89e"; }
+
+.fa-couch:before {
+ content: "\f4b8"; }
+
+.fa-cpanel:before {
+ content: "\f388"; }
+
+.fa-creative-commons:before {
+ content: "\f25e"; }
+
+.fa-creative-commons-by:before {
+ content: "\f4e7"; }
+
+.fa-creative-commons-nc:before {
+ content: "\f4e8"; }
+
+.fa-creative-commons-nc-eu:before {
+ content: "\f4e9"; }
+
+.fa-creative-commons-nc-jp:before {
+ content: "\f4ea"; }
+
+.fa-creative-commons-nd:before {
+ content: "\f4eb"; }
+
+.fa-creative-commons-pd:before {
+ content: "\f4ec"; }
+
+.fa-creative-commons-pd-alt:before {
+ content: "\f4ed"; }
+
+.fa-creative-commons-remix:before {
+ content: "\f4ee"; }
+
+.fa-creative-commons-sa:before {
+ content: "\f4ef"; }
+
+.fa-creative-commons-sampling:before {
+ content: "\f4f0"; }
+
+.fa-creative-commons-sampling-plus:before {
+ content: "\f4f1"; }
+
+.fa-creative-commons-share:before {
+ content: "\f4f2"; }
+
+.fa-creative-commons-zero:before {
+ content: "\f4f3"; }
+
+.fa-credit-card:before {
+ content: "\f09d"; }
+
+.fa-critical-role:before {
+ content: "\f6c9"; }
+
+.fa-crop:before {
+ content: "\f125"; }
+
+.fa-crop-alt:before {
+ content: "\f565"; }
+
+.fa-cross:before {
+ content: "\f654"; }
+
+.fa-crosshairs:before {
+ content: "\f05b"; }
+
+.fa-crow:before {
+ content: "\f520"; }
+
+.fa-crown:before {
+ content: "\f521"; }
+
+.fa-crutch:before {
+ content: "\f7f7"; }
+
+.fa-css3:before {
+ content: "\f13c"; }
+
+.fa-css3-alt:before {
+ content: "\f38b"; }
+
+.fa-cube:before {
+ content: "\f1b2"; }
+
+.fa-cubes:before {
+ content: "\f1b3"; }
+
+.fa-cut:before {
+ content: "\f0c4"; }
+
+.fa-cuttlefish:before {
+ content: "\f38c"; }
+
+.fa-d-and-d:before {
+ content: "\f38d"; }
+
+.fa-d-and-d-beyond:before {
+ content: "\f6ca"; }
+
+.fa-dashcube:before {
+ content: "\f210"; }
+
+.fa-database:before {
+ content: "\f1c0"; }
+
+.fa-deaf:before {
+ content: "\f2a4"; }
+
+.fa-delicious:before {
+ content: "\f1a5"; }
+
+.fa-democrat:before {
+ content: "\f747"; }
+
+.fa-deploydog:before {
+ content: "\f38e"; }
+
+.fa-deskpro:before {
+ content: "\f38f"; }
+
+.fa-desktop:before {
+ content: "\f108"; }
+
+.fa-dev:before {
+ content: "\f6cc"; }
+
+.fa-deviantart:before {
+ content: "\f1bd"; }
+
+.fa-dharmachakra:before {
+ content: "\f655"; }
+
+.fa-dhl:before {
+ content: "\f790"; }
+
+.fa-diagnoses:before {
+ content: "\f470"; }
+
+.fa-diaspora:before {
+ content: "\f791"; }
+
+.fa-dice:before {
+ content: "\f522"; }
+
+.fa-dice-d20:before {
+ content: "\f6cf"; }
+
+.fa-dice-d6:before {
+ content: "\f6d1"; }
+
+.fa-dice-five:before {
+ content: "\f523"; }
+
+.fa-dice-four:before {
+ content: "\f524"; }
+
+.fa-dice-one:before {
+ content: "\f525"; }
+
+.fa-dice-six:before {
+ content: "\f526"; }
+
+.fa-dice-three:before {
+ content: "\f527"; }
+
+.fa-dice-two:before {
+ content: "\f528"; }
+
+.fa-digg:before {
+ content: "\f1a6"; }
+
+.fa-digital-ocean:before {
+ content: "\f391"; }
+
+.fa-digital-tachograph:before {
+ content: "\f566"; }
+
+.fa-directions:before {
+ content: "\f5eb"; }
+
+.fa-discord:before {
+ content: "\f392"; }
+
+.fa-discourse:before {
+ content: "\f393"; }
+
+.fa-divide:before {
+ content: "\f529"; }
+
+.fa-dizzy:before {
+ content: "\f567"; }
+
+.fa-dna:before {
+ content: "\f471"; }
+
+.fa-dochub:before {
+ content: "\f394"; }
+
+.fa-docker:before {
+ content: "\f395"; }
+
+.fa-dog:before {
+ content: "\f6d3"; }
+
+.fa-dollar-sign:before {
+ content: "\f155"; }
+
+.fa-dolly:before {
+ content: "\f472"; }
+
+.fa-dolly-flatbed:before {
+ content: "\f474"; }
+
+.fa-donate:before {
+ content: "\f4b9"; }
+
+.fa-door-closed:before {
+ content: "\f52a"; }
+
+.fa-door-open:before {
+ content: "\f52b"; }
+
+.fa-dot-circle:before {
+ content: "\f192"; }
+
+.fa-dove:before {
+ content: "\f4ba"; }
+
+.fa-download:before {
+ content: "\f019"; }
+
+.fa-draft2digital:before {
+ content: "\f396"; }
+
+.fa-drafting-compass:before {
+ content: "\f568"; }
+
+.fa-dragon:before {
+ content: "\f6d5"; }
+
+.fa-draw-polygon:before {
+ content: "\f5ee"; }
+
+.fa-dribbble:before {
+ content: "\f17d"; }
+
+.fa-dribbble-square:before {
+ content: "\f397"; }
+
+.fa-dropbox:before {
+ content: "\f16b"; }
+
+.fa-drum:before {
+ content: "\f569"; }
+
+.fa-drum-steelpan:before {
+ content: "\f56a"; }
+
+.fa-drumstick-bite:before {
+ content: "\f6d7"; }
+
+.fa-drupal:before {
+ content: "\f1a9"; }
+
+.fa-dumbbell:before {
+ content: "\f44b"; }
+
+.fa-dumpster:before {
+ content: "\f793"; }
+
+.fa-dumpster-fire:before {
+ content: "\f794"; }
+
+.fa-dungeon:before {
+ content: "\f6d9"; }
+
+.fa-dyalog:before {
+ content: "\f399"; }
+
+.fa-earlybirds:before {
+ content: "\f39a"; }
+
+.fa-ebay:before {
+ content: "\f4f4"; }
+
+.fa-edge:before {
+ content: "\f282"; }
+
+.fa-edit:before {
+ content: "\f044"; }
+
+.fa-egg:before {
+ content: "\f7fb"; }
+
+.fa-eject:before {
+ content: "\f052"; }
+
+.fa-elementor:before {
+ content: "\f430"; }
+
+.fa-ellipsis-h:before {
+ content: "\f141"; }
+
+.fa-ellipsis-v:before {
+ content: "\f142"; }
+
+.fa-ello:before {
+ content: "\f5f1"; }
+
+.fa-ember:before {
+ content: "\f423"; }
+
+.fa-empire:before {
+ content: "\f1d1"; }
+
+.fa-envelope:before {
+ content: "\f0e0"; }
+
+.fa-envelope-open:before {
+ content: "\f2b6"; }
+
+.fa-envelope-open-text:before {
+ content: "\f658"; }
+
+.fa-envelope-square:before {
+ content: "\f199"; }
+
+.fa-envira:before {
+ content: "\f299"; }
+
+.fa-equals:before {
+ content: "\f52c"; }
+
+.fa-eraser:before {
+ content: "\f12d"; }
+
+.fa-erlang:before {
+ content: "\f39d"; }
+
+.fa-ethereum:before {
+ content: "\f42e"; }
+
+.fa-ethernet:before {
+ content: "\f796"; }
+
+.fa-etsy:before {
+ content: "\f2d7"; }
+
+.fa-euro-sign:before {
+ content: "\f153"; }
+
+.fa-evernote:before {
+ content: "\f839"; }
+
+.fa-exchange-alt:before {
+ content: "\f362"; }
+
+.fa-exclamation:before {
+ content: "\f12a"; }
+
+.fa-exclamation-circle:before {
+ content: "\f06a"; }
+
+.fa-exclamation-triangle:before {
+ content: "\f071"; }
+
+.fa-expand:before {
+ content: "\f065"; }
+
+.fa-expand-arrows-alt:before {
+ content: "\f31e"; }
+
+.fa-expeditedssl:before {
+ content: "\f23e"; }
+
+.fa-external-link-alt:before {
+ content: "\f35d"; }
+
+.fa-external-link-square-alt:before {
+ content: "\f360"; }
+
+.fa-eye:before {
+ content: "\f06e"; }
+
+.fa-eye-dropper:before {
+ content: "\f1fb"; }
+
+.fa-eye-slash:before {
+ content: "\f070"; }
+
+.fa-facebook:before {
+ content: "\f09a"; }
+
+.fa-facebook-f:before {
+ content: "\f39e"; }
+
+.fa-facebook-messenger:before {
+ content: "\f39f"; }
+
+.fa-facebook-square:before {
+ content: "\f082"; }
+
+.fa-fan:before {
+ content: "\f863"; }
+
+.fa-fantasy-flight-games:before {
+ content: "\f6dc"; }
+
+.fa-fast-backward:before {
+ content: "\f049"; }
+
+.fa-fast-forward:before {
+ content: "\f050"; }
+
+.fa-fax:before {
+ content: "\f1ac"; }
+
+.fa-feather:before {
+ content: "\f52d"; }
+
+.fa-feather-alt:before {
+ content: "\f56b"; }
+
+.fa-fedex:before {
+ content: "\f797"; }
+
+.fa-fedora:before {
+ content: "\f798"; }
+
+.fa-female:before {
+ content: "\f182"; }
+
+.fa-fighter-jet:before {
+ content: "\f0fb"; }
+
+.fa-figma:before {
+ content: "\f799"; }
+
+.fa-file:before {
+ content: "\f15b"; }
+
+.fa-file-alt:before {
+ content: "\f15c"; }
+
+.fa-file-archive:before {
+ content: "\f1c6"; }
+
+.fa-file-audio:before {
+ content: "\f1c7"; }
+
+.fa-file-code:before {
+ content: "\f1c9"; }
+
+.fa-file-contract:before {
+ content: "\f56c"; }
+
+.fa-file-csv:before {
+ content: "\f6dd"; }
+
+.fa-file-download:before {
+ content: "\f56d"; }
+
+.fa-file-excel:before {
+ content: "\f1c3"; }
+
+.fa-file-export:before {
+ content: "\f56e"; }
+
+.fa-file-image:before {
+ content: "\f1c5"; }
+
+.fa-file-import:before {
+ content: "\f56f"; }
+
+.fa-file-invoice:before {
+ content: "\f570"; }
+
+.fa-file-invoice-dollar:before {
+ content: "\f571"; }
+
+.fa-file-medical:before {
+ content: "\f477"; }
+
+.fa-file-medical-alt:before {
+ content: "\f478"; }
+
+.fa-file-pdf:before {
+ content: "\f1c1"; }
+
+.fa-file-powerpoint:before {
+ content: "\f1c4"; }
+
+.fa-file-prescription:before {
+ content: "\f572"; }
+
+.fa-file-signature:before {
+ content: "\f573"; }
+
+.fa-file-upload:before {
+ content: "\f574"; }
+
+.fa-file-video:before {
+ content: "\f1c8"; }
+
+.fa-file-word:before {
+ content: "\f1c2"; }
+
+.fa-fill:before {
+ content: "\f575"; }
+
+.fa-fill-drip:before {
+ content: "\f576"; }
+
+.fa-film:before {
+ content: "\f008"; }
+
+.fa-filter:before {
+ content: "\f0b0"; }
+
+.fa-fingerprint:before {
+ content: "\f577"; }
+
+.fa-fire:before {
+ content: "\f06d"; }
+
+.fa-fire-alt:before {
+ content: "\f7e4"; }
+
+.fa-fire-extinguisher:before {
+ content: "\f134"; }
+
+.fa-firefox:before {
+ content: "\f269"; }
+
+.fa-first-aid:before {
+ content: "\f479"; }
+
+.fa-first-order:before {
+ content: "\f2b0"; }
+
+.fa-first-order-alt:before {
+ content: "\f50a"; }
+
+.fa-firstdraft:before {
+ content: "\f3a1"; }
+
+.fa-fish:before {
+ content: "\f578"; }
+
+.fa-fist-raised:before {
+ content: "\f6de"; }
+
+.fa-flag:before {
+ content: "\f024"; }
+
+.fa-flag-checkered:before {
+ content: "\f11e"; }
+
+.fa-flag-usa:before {
+ content: "\f74d"; }
+
+.fa-flask:before {
+ content: "\f0c3"; }
+
+.fa-flickr:before {
+ content: "\f16e"; }
+
+.fa-flipboard:before {
+ content: "\f44d"; }
+
+.fa-flushed:before {
+ content: "\f579"; }
+
+.fa-fly:before {
+ content: "\f417"; }
+
+.fa-folder:before {
+ content: "\f07b"; }
+
+.fa-folder-minus:before {
+ content: "\f65d"; }
+
+.fa-folder-open:before {
+ content: "\f07c"; }
+
+.fa-folder-plus:before {
+ content: "\f65e"; }
+
+.fa-font:before {
+ content: "\f031"; }
+
+.fa-font-awesome:before {
+ content: "\f2b4"; }
+
+.fa-font-awesome-alt:before {
+ content: "\f35c"; }
+
+.fa-font-awesome-flag:before {
+ content: "\f425"; }
+
+.fa-font-awesome-logo-full:before {
+ content: "\f4e6"; }
+
+.fa-fonticons:before {
+ content: "\f280"; }
+
+.fa-fonticons-fi:before {
+ content: "\f3a2"; }
+
+.fa-football-ball:before {
+ content: "\f44e"; }
+
+.fa-fort-awesome:before {
+ content: "\f286"; }
+
+.fa-fort-awesome-alt:before {
+ content: "\f3a3"; }
+
+.fa-forumbee:before {
+ content: "\f211"; }
+
+.fa-forward:before {
+ content: "\f04e"; }
+
+.fa-foursquare:before {
+ content: "\f180"; }
+
+.fa-free-code-camp:before {
+ content: "\f2c5"; }
+
+.fa-freebsd:before {
+ content: "\f3a4"; }
+
+.fa-frog:before {
+ content: "\f52e"; }
+
+.fa-frown:before {
+ content: "\f119"; }
+
+.fa-frown-open:before {
+ content: "\f57a"; }
+
+.fa-fulcrum:before {
+ content: "\f50b"; }
+
+.fa-funnel-dollar:before {
+ content: "\f662"; }
+
+.fa-futbol:before {
+ content: "\f1e3"; }
+
+.fa-galactic-republic:before {
+ content: "\f50c"; }
+
+.fa-galactic-senate:before {
+ content: "\f50d"; }
+
+.fa-gamepad:before {
+ content: "\f11b"; }
+
+.fa-gas-pump:before {
+ content: "\f52f"; }
+
+.fa-gavel:before {
+ content: "\f0e3"; }
+
+.fa-gem:before {
+ content: "\f3a5"; }
+
+.fa-genderless:before {
+ content: "\f22d"; }
+
+.fa-get-pocket:before {
+ content: "\f265"; }
+
+.fa-gg:before {
+ content: "\f260"; }
+
+.fa-gg-circle:before {
+ content: "\f261"; }
+
+.fa-ghost:before {
+ content: "\f6e2"; }
+
+.fa-gift:before {
+ content: "\f06b"; }
+
+.fa-gifts:before {
+ content: "\f79c"; }
+
+.fa-git:before {
+ content: "\f1d3"; }
+
+.fa-git-alt:before {
+ content: "\f841"; }
+
+.fa-git-square:before {
+ content: "\f1d2"; }
+
+.fa-github:before {
+ content: "\f09b"; }
+
+.fa-github-alt:before {
+ content: "\f113"; }
+
+.fa-github-square:before {
+ content: "\f092"; }
+
+.fa-gitkraken:before {
+ content: "\f3a6"; }
+
+.fa-gitlab:before {
+ content: "\f296"; }
+
+.fa-gitter:before {
+ content: "\f426"; }
+
+.fa-glass-cheers:before {
+ content: "\f79f"; }
+
+.fa-glass-martini:before {
+ content: "\f000"; }
+
+.fa-glass-martini-alt:before {
+ content: "\f57b"; }
+
+.fa-glass-whiskey:before {
+ content: "\f7a0"; }
+
+.fa-glasses:before {
+ content: "\f530"; }
+
+.fa-glide:before {
+ content: "\f2a5"; }
+
+.fa-glide-g:before {
+ content: "\f2a6"; }
+
+.fa-globe:before {
+ content: "\f0ac"; }
+
+.fa-globe-africa:before {
+ content: "\f57c"; }
+
+.fa-globe-americas:before {
+ content: "\f57d"; }
+
+.fa-globe-asia:before {
+ content: "\f57e"; }
+
+.fa-globe-europe:before {
+ content: "\f7a2"; }
+
+.fa-gofore:before {
+ content: "\f3a7"; }
+
+.fa-golf-ball:before {
+ content: "\f450"; }
+
+.fa-goodreads:before {
+ content: "\f3a8"; }
+
+.fa-goodreads-g:before {
+ content: "\f3a9"; }
+
+.fa-google:before {
+ content: "\f1a0"; }
+
+.fa-google-drive:before {
+ content: "\f3aa"; }
+
+.fa-google-play:before {
+ content: "\f3ab"; }
+
+.fa-google-plus:before {
+ content: "\f2b3"; }
+
+.fa-google-plus-g:before {
+ content: "\f0d5"; }
+
+.fa-google-plus-square:before {
+ content: "\f0d4"; }
+
+.fa-google-wallet:before {
+ content: "\f1ee"; }
+
+.fa-gopuram:before {
+ content: "\f664"; }
+
+.fa-graduation-cap:before {
+ content: "\f19d"; }
+
+.fa-gratipay:before {
+ content: "\f184"; }
+
+.fa-grav:before {
+ content: "\f2d6"; }
+
+.fa-greater-than:before {
+ content: "\f531"; }
+
+.fa-greater-than-equal:before {
+ content: "\f532"; }
+
+.fa-grimace:before {
+ content: "\f57f"; }
+
+.fa-grin:before {
+ content: "\f580"; }
+
+.fa-grin-alt:before {
+ content: "\f581"; }
+
+.fa-grin-beam:before {
+ content: "\f582"; }
+
+.fa-grin-beam-sweat:before {
+ content: "\f583"; }
+
+.fa-grin-hearts:before {
+ content: "\f584"; }
+
+.fa-grin-squint:before {
+ content: "\f585"; }
+
+.fa-grin-squint-tears:before {
+ content: "\f586"; }
+
+.fa-grin-stars:before {
+ content: "\f587"; }
+
+.fa-grin-tears:before {
+ content: "\f588"; }
+
+.fa-grin-tongue:before {
+ content: "\f589"; }
+
+.fa-grin-tongue-squint:before {
+ content: "\f58a"; }
+
+.fa-grin-tongue-wink:before {
+ content: "\f58b"; }
+
+.fa-grin-wink:before {
+ content: "\f58c"; }
+
+.fa-grip-horizontal:before {
+ content: "\f58d"; }
+
+.fa-grip-lines:before {
+ content: "\f7a4"; }
+
+.fa-grip-lines-vertical:before {
+ content: "\f7a5"; }
+
+.fa-grip-vertical:before {
+ content: "\f58e"; }
+
+.fa-gripfire:before {
+ content: "\f3ac"; }
+
+.fa-grunt:before {
+ content: "\f3ad"; }
+
+.fa-guitar:before {
+ content: "\f7a6"; }
+
+.fa-gulp:before {
+ content: "\f3ae"; }
+
+.fa-h-square:before {
+ content: "\f0fd"; }
+
+.fa-hacker-news:before {
+ content: "\f1d4"; }
+
+.fa-hacker-news-square:before {
+ content: "\f3af"; }
+
+.fa-hackerrank:before {
+ content: "\f5f7"; }
+
+.fa-hamburger:before {
+ content: "\f805"; }
+
+.fa-hammer:before {
+ content: "\f6e3"; }
+
+.fa-hamsa:before {
+ content: "\f665"; }
+
+.fa-hand-holding:before {
+ content: "\f4bd"; }
+
+.fa-hand-holding-heart:before {
+ content: "\f4be"; }
+
+.fa-hand-holding-usd:before {
+ content: "\f4c0"; }
+
+.fa-hand-lizard:before {
+ content: "\f258"; }
+
+.fa-hand-middle-finger:before {
+ content: "\f806"; }
+
+.fa-hand-paper:before {
+ content: "\f256"; }
+
+.fa-hand-peace:before {
+ content: "\f25b"; }
+
+.fa-hand-point-down:before {
+ content: "\f0a7"; }
+
+.fa-hand-point-left:before {
+ content: "\f0a5"; }
+
+.fa-hand-point-right:before {
+ content: "\f0a4"; }
+
+.fa-hand-point-up:before {
+ content: "\f0a6"; }
+
+.fa-hand-pointer:before {
+ content: "\f25a"; }
+
+.fa-hand-rock:before {
+ content: "\f255"; }
+
+.fa-hand-scissors:before {
+ content: "\f257"; }
+
+.fa-hand-spock:before {
+ content: "\f259"; }
+
+.fa-hands:before {
+ content: "\f4c2"; }
+
+.fa-hands-helping:before {
+ content: "\f4c4"; }
+
+.fa-handshake:before {
+ content: "\f2b5"; }
+
+.fa-hanukiah:before {
+ content: "\f6e6"; }
+
+.fa-hard-hat:before {
+ content: "\f807"; }
+
+.fa-hashtag:before {
+ content: "\f292"; }
+
+.fa-hat-wizard:before {
+ content: "\f6e8"; }
+
+.fa-haykal:before {
+ content: "\f666"; }
+
+.fa-hdd:before {
+ content: "\f0a0"; }
+
+.fa-heading:before {
+ content: "\f1dc"; }
+
+.fa-headphones:before {
+ content: "\f025"; }
+
+.fa-headphones-alt:before {
+ content: "\f58f"; }
+
+.fa-headset:before {
+ content: "\f590"; }
+
+.fa-heart:before {
+ content: "\f004"; }
+
+.fa-heart-broken:before {
+ content: "\f7a9"; }
+
+.fa-heartbeat:before {
+ content: "\f21e"; }
+
+.fa-helicopter:before {
+ content: "\f533"; }
+
+.fa-highlighter:before {
+ content: "\f591"; }
+
+.fa-hiking:before {
+ content: "\f6ec"; }
+
+.fa-hippo:before {
+ content: "\f6ed"; }
+
+.fa-hips:before {
+ content: "\f452"; }
+
+.fa-hire-a-helper:before {
+ content: "\f3b0"; }
+
+.fa-history:before {
+ content: "\f1da"; }
+
+.fa-hockey-puck:before {
+ content: "\f453"; }
+
+.fa-holly-berry:before {
+ content: "\f7aa"; }
+
+.fa-home:before {
+ content: "\f015"; }
+
+.fa-hooli:before {
+ content: "\f427"; }
+
+.fa-hornbill:before {
+ content: "\f592"; }
+
+.fa-horse:before {
+ content: "\f6f0"; }
+
+.fa-horse-head:before {
+ content: "\f7ab"; }
+
+.fa-hospital:before {
+ content: "\f0f8"; }
+
+.fa-hospital-alt:before {
+ content: "\f47d"; }
+
+.fa-hospital-symbol:before {
+ content: "\f47e"; }
+
+.fa-hot-tub:before {
+ content: "\f593"; }
+
+.fa-hotdog:before {
+ content: "\f80f"; }
+
+.fa-hotel:before {
+ content: "\f594"; }
+
+.fa-hotjar:before {
+ content: "\f3b1"; }
+
+.fa-hourglass:before {
+ content: "\f254"; }
+
+.fa-hourglass-end:before {
+ content: "\f253"; }
+
+.fa-hourglass-half:before {
+ content: "\f252"; }
+
+.fa-hourglass-start:before {
+ content: "\f251"; }
+
+.fa-house-damage:before {
+ content: "\f6f1"; }
+
+.fa-houzz:before {
+ content: "\f27c"; }
+
+.fa-hryvnia:before {
+ content: "\f6f2"; }
+
+.fa-html5:before {
+ content: "\f13b"; }
+
+.fa-hubspot:before {
+ content: "\f3b2"; }
+
+.fa-i-cursor:before {
+ content: "\f246"; }
+
+.fa-ice-cream:before {
+ content: "\f810"; }
+
+.fa-icicles:before {
+ content: "\f7ad"; }
+
+.fa-icons:before {
+ content: "\f86d"; }
+
+.fa-id-badge:before {
+ content: "\f2c1"; }
+
+.fa-id-card:before {
+ content: "\f2c2"; }
+
+.fa-id-card-alt:before {
+ content: "\f47f"; }
+
+.fa-igloo:before {
+ content: "\f7ae"; }
+
+.fa-image:before {
+ content: "\f03e"; }
+
+.fa-images:before {
+ content: "\f302"; }
+
+.fa-imdb:before {
+ content: "\f2d8"; }
+
+.fa-inbox:before {
+ content: "\f01c"; }
+
+.fa-indent:before {
+ content: "\f03c"; }
+
+.fa-industry:before {
+ content: "\f275"; }
+
+.fa-infinity:before {
+ content: "\f534"; }
+
+.fa-info:before {
+ content: "\f129"; }
+
+.fa-info-circle:before {
+ content: "\f05a"; }
+
+.fa-instagram:before {
+ content: "\f16d"; }
+
+.fa-intercom:before {
+ content: "\f7af"; }
+
+.fa-internet-explorer:before {
+ content: "\f26b"; }
+
+.fa-invision:before {
+ content: "\f7b0"; }
+
+.fa-ioxhost:before {
+ content: "\f208"; }
+
+.fa-italic:before {
+ content: "\f033"; }
+
+.fa-itch-io:before {
+ content: "\f83a"; }
+
+.fa-itunes:before {
+ content: "\f3b4"; }
+
+.fa-itunes-note:before {
+ content: "\f3b5"; }
+
+.fa-java:before {
+ content: "\f4e4"; }
+
+.fa-jedi:before {
+ content: "\f669"; }
+
+.fa-jedi-order:before {
+ content: "\f50e"; }
+
+.fa-jenkins:before {
+ content: "\f3b6"; }
+
+.fa-jira:before {
+ content: "\f7b1"; }
+
+.fa-joget:before {
+ content: "\f3b7"; }
+
+.fa-joint:before {
+ content: "\f595"; }
+
+.fa-joomla:before {
+ content: "\f1aa"; }
+
+.fa-journal-whills:before {
+ content: "\f66a"; }
+
+.fa-js:before {
+ content: "\f3b8"; }
+
+.fa-js-square:before {
+ content: "\f3b9"; }
+
+.fa-jsfiddle:before {
+ content: "\f1cc"; }
+
+.fa-kaaba:before {
+ content: "\f66b"; }
+
+.fa-kaggle:before {
+ content: "\f5fa"; }
+
+.fa-key:before {
+ content: "\f084"; }
+
+.fa-keybase:before {
+ content: "\f4f5"; }
+
+.fa-keyboard:before {
+ content: "\f11c"; }
+
+.fa-keycdn:before {
+ content: "\f3ba"; }
+
+.fa-khanda:before {
+ content: "\f66d"; }
+
+.fa-kickstarter:before {
+ content: "\f3bb"; }
+
+.fa-kickstarter-k:before {
+ content: "\f3bc"; }
+
+.fa-kiss:before {
+ content: "\f596"; }
+
+.fa-kiss-beam:before {
+ content: "\f597"; }
+
+.fa-kiss-wink-heart:before {
+ content: "\f598"; }
+
+.fa-kiwi-bird:before {
+ content: "\f535"; }
+
+.fa-korvue:before {
+ content: "\f42f"; }
+
+.fa-landmark:before {
+ content: "\f66f"; }
+
+.fa-language:before {
+ content: "\f1ab"; }
+
+.fa-laptop:before {
+ content: "\f109"; }
+
+.fa-laptop-code:before {
+ content: "\f5fc"; }
+
+.fa-laptop-medical:before {
+ content: "\f812"; }
+
+.fa-laravel:before {
+ content: "\f3bd"; }
+
+.fa-lastfm:before {
+ content: "\f202"; }
+
+.fa-lastfm-square:before {
+ content: "\f203"; }
+
+.fa-laugh:before {
+ content: "\f599"; }
+
+.fa-laugh-beam:before {
+ content: "\f59a"; }
+
+.fa-laugh-squint:before {
+ content: "\f59b"; }
+
+.fa-laugh-wink:before {
+ content: "\f59c"; }
+
+.fa-layer-group:before {
+ content: "\f5fd"; }
+
+.fa-leaf:before {
+ content: "\f06c"; }
+
+.fa-leanpub:before {
+ content: "\f212"; }
+
+.fa-lemon:before {
+ content: "\f094"; }
+
+.fa-less:before {
+ content: "\f41d"; }
+
+.fa-less-than:before {
+ content: "\f536"; }
+
+.fa-less-than-equal:before {
+ content: "\f537"; }
+
+.fa-level-down-alt:before {
+ content: "\f3be"; }
+
+.fa-level-up-alt:before {
+ content: "\f3bf"; }
+
+.fa-life-ring:before {
+ content: "\f1cd"; }
+
+.fa-lightbulb:before {
+ content: "\f0eb"; }
+
+.fa-line:before {
+ content: "\f3c0"; }
+
+.fa-link:before {
+ content: "\f0c1"; }
+
+.fa-linkedin:before {
+ content: "\f08c"; }
+
+.fa-linkedin-in:before {
+ content: "\f0e1"; }
+
+.fa-linode:before {
+ content: "\f2b8"; }
+
+.fa-linux:before {
+ content: "\f17c"; }
+
+.fa-lira-sign:before {
+ content: "\f195"; }
+
+.fa-list:before {
+ content: "\f03a"; }
+
+.fa-list-alt:before {
+ content: "\f022"; }
+
+.fa-list-ol:before {
+ content: "\f0cb"; }
+
+.fa-list-ul:before {
+ content: "\f0ca"; }
+
+.fa-location-arrow:before {
+ content: "\f124"; }
+
+.fa-lock:before {
+ content: "\f023"; }
+
+.fa-lock-open:before {
+ content: "\f3c1"; }
+
+.fa-long-arrow-alt-down:before {
+ content: "\f309"; }
+
+.fa-long-arrow-alt-left:before {
+ content: "\f30a"; }
+
+.fa-long-arrow-alt-right:before {
+ content: "\f30b"; }
+
+.fa-long-arrow-alt-up:before {
+ content: "\f30c"; }
+
+.fa-low-vision:before {
+ content: "\f2a8"; }
+
+.fa-luggage-cart:before {
+ content: "\f59d"; }
+
+.fa-lyft:before {
+ content: "\f3c3"; }
+
+.fa-magento:before {
+ content: "\f3c4"; }
+
+.fa-magic:before {
+ content: "\f0d0"; }
+
+.fa-magnet:before {
+ content: "\f076"; }
+
+.fa-mail-bulk:before {
+ content: "\f674"; }
+
+.fa-mailchimp:before {
+ content: "\f59e"; }
+
+.fa-male:before {
+ content: "\f183"; }
+
+.fa-mandalorian:before {
+ content: "\f50f"; }
+
+.fa-map:before {
+ content: "\f279"; }
+
+.fa-map-marked:before {
+ content: "\f59f"; }
+
+.fa-map-marked-alt:before {
+ content: "\f5a0"; }
+
+.fa-map-marker:before {
+ content: "\f041"; }
+
+.fa-map-marker-alt:before {
+ content: "\f3c5"; }
+
+.fa-map-pin:before {
+ content: "\f276"; }
+
+.fa-map-signs:before {
+ content: "\f277"; }
+
+.fa-markdown:before {
+ content: "\f60f"; }
+
+.fa-marker:before {
+ content: "\f5a1"; }
+
+.fa-mars:before {
+ content: "\f222"; }
+
+.fa-mars-double:before {
+ content: "\f227"; }
+
+.fa-mars-stroke:before {
+ content: "\f229"; }
+
+.fa-mars-stroke-h:before {
+ content: "\f22b"; }
+
+.fa-mars-stroke-v:before {
+ content: "\f22a"; }
+
+.fa-mask:before {
+ content: "\f6fa"; }
+
+.fa-mastodon:before {
+ content: "\f4f6"; }
+
+.fa-maxcdn:before {
+ content: "\f136"; }
+
+.fa-medal:before {
+ content: "\f5a2"; }
+
+.fa-medapps:before {
+ content: "\f3c6"; }
+
+.fa-medium:before {
+ content: "\f23a"; }
+
+.fa-medium-m:before {
+ content: "\f3c7"; }
+
+.fa-medkit:before {
+ content: "\f0fa"; }
+
+.fa-medrt:before {
+ content: "\f3c8"; }
+
+.fa-meetup:before {
+ content: "\f2e0"; }
+
+.fa-megaport:before {
+ content: "\f5a3"; }
+
+.fa-meh:before {
+ content: "\f11a"; }
+
+.fa-meh-blank:before {
+ content: "\f5a4"; }
+
+.fa-meh-rolling-eyes:before {
+ content: "\f5a5"; }
+
+.fa-memory:before {
+ content: "\f538"; }
+
+.fa-mendeley:before {
+ content: "\f7b3"; }
+
+.fa-menorah:before {
+ content: "\f676"; }
+
+.fa-mercury:before {
+ content: "\f223"; }
+
+.fa-meteor:before {
+ content: "\f753"; }
+
+.fa-microchip:before {
+ content: "\f2db"; }
+
+.fa-microphone:before {
+ content: "\f130"; }
+
+.fa-microphone-alt:before {
+ content: "\f3c9"; }
+
+.fa-microphone-alt-slash:before {
+ content: "\f539"; }
+
+.fa-microphone-slash:before {
+ content: "\f131"; }
+
+.fa-microscope:before {
+ content: "\f610"; }
+
+.fa-microsoft:before {
+ content: "\f3ca"; }
+
+.fa-minus:before {
+ content: "\f068"; }
+
+.fa-minus-circle:before {
+ content: "\f056"; }
+
+.fa-minus-square:before {
+ content: "\f146"; }
+
+.fa-mitten:before {
+ content: "\f7b5"; }
+
+.fa-mix:before {
+ content: "\f3cb"; }
+
+.fa-mixcloud:before {
+ content: "\f289"; }
+
+.fa-mizuni:before {
+ content: "\f3cc"; }
+
+.fa-mobile:before {
+ content: "\f10b"; }
+
+.fa-mobile-alt:before {
+ content: "\f3cd"; }
+
+.fa-modx:before {
+ content: "\f285"; }
+
+.fa-monero:before {
+ content: "\f3d0"; }
+
+.fa-money-bill:before {
+ content: "\f0d6"; }
+
+.fa-money-bill-alt:before {
+ content: "\f3d1"; }
+
+.fa-money-bill-wave:before {
+ content: "\f53a"; }
+
+.fa-money-bill-wave-alt:before {
+ content: "\f53b"; }
+
+.fa-money-check:before {
+ content: "\f53c"; }
+
+.fa-money-check-alt:before {
+ content: "\f53d"; }
+
+.fa-monument:before {
+ content: "\f5a6"; }
+
+.fa-moon:before {
+ content: "\f186"; }
+
+.fa-mortar-pestle:before {
+ content: "\f5a7"; }
+
+.fa-mosque:before {
+ content: "\f678"; }
+
+.fa-motorcycle:before {
+ content: "\f21c"; }
+
+.fa-mountain:before {
+ content: "\f6fc"; }
+
+.fa-mouse-pointer:before {
+ content: "\f245"; }
+
+.fa-mug-hot:before {
+ content: "\f7b6"; }
+
+.fa-music:before {
+ content: "\f001"; }
+
+.fa-napster:before {
+ content: "\f3d2"; }
+
+.fa-neos:before {
+ content: "\f612"; }
+
+.fa-network-wired:before {
+ content: "\f6ff"; }
+
+.fa-neuter:before {
+ content: "\f22c"; }
+
+.fa-newspaper:before {
+ content: "\f1ea"; }
+
+.fa-nimblr:before {
+ content: "\f5a8"; }
+
+.fa-node:before {
+ content: "\f419"; }
+
+.fa-node-js:before {
+ content: "\f3d3"; }
+
+.fa-not-equal:before {
+ content: "\f53e"; }
+
+.fa-notes-medical:before {
+ content: "\f481"; }
+
+.fa-npm:before {
+ content: "\f3d4"; }
+
+.fa-ns8:before {
+ content: "\f3d5"; }
+
+.fa-nutritionix:before {
+ content: "\f3d6"; }
+
+.fa-object-group:before {
+ content: "\f247"; }
+
+.fa-object-ungroup:before {
+ content: "\f248"; }
+
+.fa-odnoklassniki:before {
+ content: "\f263"; }
+
+.fa-odnoklassniki-square:before {
+ content: "\f264"; }
+
+.fa-oil-can:before {
+ content: "\f613"; }
+
+.fa-old-republic:before {
+ content: "\f510"; }
+
+.fa-om:before {
+ content: "\f679"; }
+
+.fa-opencart:before {
+ content: "\f23d"; }
+
+.fa-openid:before {
+ content: "\f19b"; }
+
+.fa-opera:before {
+ content: "\f26a"; }
+
+.fa-optin-monster:before {
+ content: "\f23c"; }
+
+.fa-osi:before {
+ content: "\f41a"; }
+
+.fa-otter:before {
+ content: "\f700"; }
+
+.fa-outdent:before {
+ content: "\f03b"; }
+
+.fa-page4:before {
+ content: "\f3d7"; }
+
+.fa-pagelines:before {
+ content: "\f18c"; }
+
+.fa-pager:before {
+ content: "\f815"; }
+
+.fa-paint-brush:before {
+ content: "\f1fc"; }
+
+.fa-paint-roller:before {
+ content: "\f5aa"; }
+
+.fa-palette:before {
+ content: "\f53f"; }
+
+.fa-palfed:before {
+ content: "\f3d8"; }
+
+.fa-pallet:before {
+ content: "\f482"; }
+
+.fa-paper-plane:before {
+ content: "\f1d8"; }
+
+.fa-paperclip:before {
+ content: "\f0c6"; }
+
+.fa-parachute-box:before {
+ content: "\f4cd"; }
+
+.fa-paragraph:before {
+ content: "\f1dd"; }
+
+.fa-parking:before {
+ content: "\f540"; }
+
+.fa-passport:before {
+ content: "\f5ab"; }
+
+.fa-pastafarianism:before {
+ content: "\f67b"; }
+
+.fa-paste:before {
+ content: "\f0ea"; }
+
+.fa-patreon:before {
+ content: "\f3d9"; }
+
+.fa-pause:before {
+ content: "\f04c"; }
+
+.fa-pause-circle:before {
+ content: "\f28b"; }
+
+.fa-paw:before {
+ content: "\f1b0"; }
+
+.fa-paypal:before {
+ content: "\f1ed"; }
+
+.fa-peace:before {
+ content: "\f67c"; }
+
+.fa-pen:before {
+ content: "\f304"; }
+
+.fa-pen-alt:before {
+ content: "\f305"; }
+
+.fa-pen-fancy:before {
+ content: "\f5ac"; }
+
+.fa-pen-nib:before {
+ content: "\f5ad"; }
+
+.fa-pen-square:before {
+ content: "\f14b"; }
+
+.fa-pencil-alt:before {
+ content: "\f303"; }
+
+.fa-pencil-ruler:before {
+ content: "\f5ae"; }
+
+.fa-penny-arcade:before {
+ content: "\f704"; }
+
+.fa-people-carry:before {
+ content: "\f4ce"; }
+
+.fa-pepper-hot:before {
+ content: "\f816"; }
+
+.fa-percent:before {
+ content: "\f295"; }
+
+.fa-percentage:before {
+ content: "\f541"; }
+
+.fa-periscope:before {
+ content: "\f3da"; }
+
+.fa-person-booth:before {
+ content: "\f756"; }
+
+.fa-phabricator:before {
+ content: "\f3db"; }
+
+.fa-phoenix-framework:before {
+ content: "\f3dc"; }
+
+.fa-phoenix-squadron:before {
+ content: "\f511"; }
+
+.fa-phone:before {
+ content: "\f095"; }
+
+.fa-phone-alt:before {
+ content: "\f879"; }
+
+.fa-phone-slash:before {
+ content: "\f3dd"; }
+
+.fa-phone-square:before {
+ content: "\f098"; }
+
+.fa-phone-square-alt:before {
+ content: "\f87b"; }
+
+.fa-phone-volume:before {
+ content: "\f2a0"; }
+
+.fa-photo-video:before {
+ content: "\f87c"; }
+
+.fa-php:before {
+ content: "\f457"; }
+
+.fa-pied-piper:before {
+ content: "\f2ae"; }
+
+.fa-pied-piper-alt:before {
+ content: "\f1a8"; }
+
+.fa-pied-piper-hat:before {
+ content: "\f4e5"; }
+
+.fa-pied-piper-pp:before {
+ content: "\f1a7"; }
+
+.fa-piggy-bank:before {
+ content: "\f4d3"; }
+
+.fa-pills:before {
+ content: "\f484"; }
+
+.fa-pinterest:before {
+ content: "\f0d2"; }
+
+.fa-pinterest-p:before {
+ content: "\f231"; }
+
+.fa-pinterest-square:before {
+ content: "\f0d3"; }
+
+.fa-pizza-slice:before {
+ content: "\f818"; }
+
+.fa-place-of-worship:before {
+ content: "\f67f"; }
+
+.fa-plane:before {
+ content: "\f072"; }
+
+.fa-plane-arrival:before {
+ content: "\f5af"; }
+
+.fa-plane-departure:before {
+ content: "\f5b0"; }
+
+.fa-play:before {
+ content: "\f04b"; }
+
+.fa-play-circle:before {
+ content: "\f144"; }
+
+.fa-playstation:before {
+ content: "\f3df"; }
+
+.fa-plug:before {
+ content: "\f1e6"; }
+
+.fa-plus:before {
+ content: "\f067"; }
+
+.fa-plus-circle:before {
+ content: "\f055"; }
+
+.fa-plus-square:before {
+ content: "\f0fe"; }
+
+.fa-podcast:before {
+ content: "\f2ce"; }
+
+.fa-poll:before {
+ content: "\f681"; }
+
+.fa-poll-h:before {
+ content: "\f682"; }
+
+.fa-poo:before {
+ content: "\f2fe"; }
+
+.fa-poo-storm:before {
+ content: "\f75a"; }
+
+.fa-poop:before {
+ content: "\f619"; }
+
+.fa-portrait:before {
+ content: "\f3e0"; }
+
+.fa-pound-sign:before {
+ content: "\f154"; }
+
+.fa-power-off:before {
+ content: "\f011"; }
+
+.fa-pray:before {
+ content: "\f683"; }
+
+.fa-praying-hands:before {
+ content: "\f684"; }
+
+.fa-prescription:before {
+ content: "\f5b1"; }
+
+.fa-prescription-bottle:before {
+ content: "\f485"; }
+
+.fa-prescription-bottle-alt:before {
+ content: "\f486"; }
+
+.fa-print:before {
+ content: "\f02f"; }
+
+.fa-procedures:before {
+ content: "\f487"; }
+
+.fa-product-hunt:before {
+ content: "\f288"; }
+
+.fa-project-diagram:before {
+ content: "\f542"; }
+
+.fa-pushed:before {
+ content: "\f3e1"; }
+
+.fa-puzzle-piece:before {
+ content: "\f12e"; }
+
+.fa-python:before {
+ content: "\f3e2"; }
+
+.fa-qq:before {
+ content: "\f1d6"; }
+
+.fa-qrcode:before {
+ content: "\f029"; }
+
+.fa-question:before {
+ content: "\f128"; }
+
+.fa-question-circle:before {
+ content: "\f059"; }
+
+.fa-quidditch:before {
+ content: "\f458"; }
+
+.fa-quinscape:before {
+ content: "\f459"; }
+
+.fa-quora:before {
+ content: "\f2c4"; }
+
+.fa-quote-left:before {
+ content: "\f10d"; }
+
+.fa-quote-right:before {
+ content: "\f10e"; }
+
+.fa-quran:before {
+ content: "\f687"; }
+
+.fa-r-project:before {
+ content: "\f4f7"; }
+
+.fa-radiation:before {
+ content: "\f7b9"; }
+
+.fa-radiation-alt:before {
+ content: "\f7ba"; }
+
+.fa-rainbow:before {
+ content: "\f75b"; }
+
+.fa-random:before {
+ content: "\f074"; }
+
+.fa-raspberry-pi:before {
+ content: "\f7bb"; }
+
+.fa-ravelry:before {
+ content: "\f2d9"; }
+
+.fa-react:before {
+ content: "\f41b"; }
+
+.fa-reacteurope:before {
+ content: "\f75d"; }
+
+.fa-readme:before {
+ content: "\f4d5"; }
+
+.fa-rebel:before {
+ content: "\f1d0"; }
+
+.fa-receipt:before {
+ content: "\f543"; }
+
+.fa-recycle:before {
+ content: "\f1b8"; }
+
+.fa-red-river:before {
+ content: "\f3e3"; }
+
+.fa-reddit:before {
+ content: "\f1a1"; }
+
+.fa-reddit-alien:before {
+ content: "\f281"; }
+
+.fa-reddit-square:before {
+ content: "\f1a2"; }
+
+.fa-redhat:before {
+ content: "\f7bc"; }
+
+.fa-redo:before {
+ content: "\f01e"; }
+
+.fa-redo-alt:before {
+ content: "\f2f9"; }
+
+.fa-registered:before {
+ content: "\f25d"; }
+
+.fa-remove-format:before {
+ content: "\f87d"; }
+
+.fa-renren:before {
+ content: "\f18b"; }
+
+.fa-reply:before {
+ content: "\f3e5"; }
+
+.fa-reply-all:before {
+ content: "\f122"; }
+
+.fa-replyd:before {
+ content: "\f3e6"; }
+
+.fa-republican:before {
+ content: "\f75e"; }
+
+.fa-researchgate:before {
+ content: "\f4f8"; }
+
+.fa-resolving:before {
+ content: "\f3e7"; }
+
+.fa-restroom:before {
+ content: "\f7bd"; }
+
+.fa-retweet:before {
+ content: "\f079"; }
+
+.fa-rev:before {
+ content: "\f5b2"; }
+
+.fa-ribbon:before {
+ content: "\f4d6"; }
+
+.fa-ring:before {
+ content: "\f70b"; }
+
+.fa-road:before {
+ content: "\f018"; }
+
+.fa-robot:before {
+ content: "\f544"; }
+
+.fa-rocket:before {
+ content: "\f135"; }
+
+.fa-rocketchat:before {
+ content: "\f3e8"; }
+
+.fa-rockrms:before {
+ content: "\f3e9"; }
+
+.fa-route:before {
+ content: "\f4d7"; }
+
+.fa-rss:before {
+ content: "\f09e"; }
+
+.fa-rss-square:before {
+ content: "\f143"; }
+
+.fa-ruble-sign:before {
+ content: "\f158"; }
+
+.fa-ruler:before {
+ content: "\f545"; }
+
+.fa-ruler-combined:before {
+ content: "\f546"; }
+
+.fa-ruler-horizontal:before {
+ content: "\f547"; }
+
+.fa-ruler-vertical:before {
+ content: "\f548"; }
+
+.fa-running:before {
+ content: "\f70c"; }
+
+.fa-rupee-sign:before {
+ content: "\f156"; }
+
+.fa-sad-cry:before {
+ content: "\f5b3"; }
+
+.fa-sad-tear:before {
+ content: "\f5b4"; }
+
+.fa-safari:before {
+ content: "\f267"; }
+
+.fa-salesforce:before {
+ content: "\f83b"; }
+
+.fa-sass:before {
+ content: "\f41e"; }
+
+.fa-satellite:before {
+ content: "\f7bf"; }
+
+.fa-satellite-dish:before {
+ content: "\f7c0"; }
+
+.fa-save:before {
+ content: "\f0c7"; }
+
+.fa-schlix:before {
+ content: "\f3ea"; }
+
+.fa-school:before {
+ content: "\f549"; }
+
+.fa-screwdriver:before {
+ content: "\f54a"; }
+
+.fa-scribd:before {
+ content: "\f28a"; }
+
+.fa-scroll:before {
+ content: "\f70e"; }
+
+.fa-sd-card:before {
+ content: "\f7c2"; }
+
+.fa-search:before {
+ content: "\f002"; }
+
+.fa-search-dollar:before {
+ content: "\f688"; }
+
+.fa-search-location:before {
+ content: "\f689"; }
+
+.fa-search-minus:before {
+ content: "\f010"; }
+
+.fa-search-plus:before {
+ content: "\f00e"; }
+
+.fa-searchengin:before {
+ content: "\f3eb"; }
+
+.fa-seedling:before {
+ content: "\f4d8"; }
+
+.fa-sellcast:before {
+ content: "\f2da"; }
+
+.fa-sellsy:before {
+ content: "\f213"; }
+
+.fa-server:before {
+ content: "\f233"; }
+
+.fa-servicestack:before {
+ content: "\f3ec"; }
+
+.fa-shapes:before {
+ content: "\f61f"; }
+
+.fa-share:before {
+ content: "\f064"; }
+
+.fa-share-alt:before {
+ content: "\f1e0"; }
+
+.fa-share-alt-square:before {
+ content: "\f1e1"; }
+
+.fa-share-square:before {
+ content: "\f14d"; }
+
+.fa-shekel-sign:before {
+ content: "\f20b"; }
+
+.fa-shield-alt:before {
+ content: "\f3ed"; }
+
+.fa-ship:before {
+ content: "\f21a"; }
+
+.fa-shipping-fast:before {
+ content: "\f48b"; }
+
+.fa-shirtsinbulk:before {
+ content: "\f214"; }
+
+.fa-shoe-prints:before {
+ content: "\f54b"; }
+
+.fa-shopping-bag:before {
+ content: "\f290"; }
+
+.fa-shopping-basket:before {
+ content: "\f291"; }
+
+.fa-shopping-cart:before {
+ content: "\f07a"; }
+
+.fa-shopware:before {
+ content: "\f5b5"; }
+
+.fa-shower:before {
+ content: "\f2cc"; }
+
+.fa-shuttle-van:before {
+ content: "\f5b6"; }
+
+.fa-sign:before {
+ content: "\f4d9"; }
+
+.fa-sign-in-alt:before {
+ content: "\f2f6"; }
+
+.fa-sign-language:before {
+ content: "\f2a7"; }
+
+.fa-sign-out-alt:before {
+ content: "\f2f5"; }
+
+.fa-signal:before {
+ content: "\f012"; }
+
+.fa-signature:before {
+ content: "\f5b7"; }
+
+.fa-sim-card:before {
+ content: "\f7c4"; }
+
+.fa-simplybuilt:before {
+ content: "\f215"; }
+
+.fa-sistrix:before {
+ content: "\f3ee"; }
+
+.fa-sitemap:before {
+ content: "\f0e8"; }
+
+.fa-sith:before {
+ content: "\f512"; }
+
+.fa-skating:before {
+ content: "\f7c5"; }
+
+.fa-sketch:before {
+ content: "\f7c6"; }
+
+.fa-skiing:before {
+ content: "\f7c9"; }
+
+.fa-skiing-nordic:before {
+ content: "\f7ca"; }
+
+.fa-skull:before {
+ content: "\f54c"; }
+
+.fa-skull-crossbones:before {
+ content: "\f714"; }
+
+.fa-skyatlas:before {
+ content: "\f216"; }
+
+.fa-skype:before {
+ content: "\f17e"; }
+
+.fa-slack:before {
+ content: "\f198"; }
+
+.fa-slack-hash:before {
+ content: "\f3ef"; }
+
+.fa-slash:before {
+ content: "\f715"; }
+
+.fa-sleigh:before {
+ content: "\f7cc"; }
+
+.fa-sliders-h:before {
+ content: "\f1de"; }
+
+.fa-slideshare:before {
+ content: "\f1e7"; }
+
+.fa-smile:before {
+ content: "\f118"; }
+
+.fa-smile-beam:before {
+ content: "\f5b8"; }
+
+.fa-smile-wink:before {
+ content: "\f4da"; }
+
+.fa-smog:before {
+ content: "\f75f"; }
+
+.fa-smoking:before {
+ content: "\f48d"; }
+
+.fa-smoking-ban:before {
+ content: "\f54d"; }
+
+.fa-sms:before {
+ content: "\f7cd"; }
+
+.fa-snapchat:before {
+ content: "\f2ab"; }
+
+.fa-snapchat-ghost:before {
+ content: "\f2ac"; }
+
+.fa-snapchat-square:before {
+ content: "\f2ad"; }
+
+.fa-snowboarding:before {
+ content: "\f7ce"; }
+
+.fa-snowflake:before {
+ content: "\f2dc"; }
+
+.fa-snowman:before {
+ content: "\f7d0"; }
+
+.fa-snowplow:before {
+ content: "\f7d2"; }
+
+.fa-socks:before {
+ content: "\f696"; }
+
+.fa-solar-panel:before {
+ content: "\f5ba"; }
+
+.fa-sort:before {
+ content: "\f0dc"; }
+
+.fa-sort-alpha-down:before {
+ content: "\f15d"; }
+
+.fa-sort-alpha-down-alt:before {
+ content: "\f881"; }
+
+.fa-sort-alpha-up:before {
+ content: "\f15e"; }
+
+.fa-sort-alpha-up-alt:before {
+ content: "\f882"; }
+
+.fa-sort-amount-down:before {
+ content: "\f160"; }
+
+.fa-sort-amount-down-alt:before {
+ content: "\f884"; }
+
+.fa-sort-amount-up:before {
+ content: "\f161"; }
+
+.fa-sort-amount-up-alt:before {
+ content: "\f885"; }
+
+.fa-sort-down:before {
+ content: "\f0dd"; }
+
+.fa-sort-numeric-down:before {
+ content: "\f162"; }
+
+.fa-sort-numeric-down-alt:before {
+ content: "\f886"; }
+
+.fa-sort-numeric-up:before {
+ content: "\f163"; }
+
+.fa-sort-numeric-up-alt:before {
+ content: "\f887"; }
+
+.fa-sort-up:before {
+ content: "\f0de"; }
+
+.fa-soundcloud:before {
+ content: "\f1be"; }
+
+.fa-sourcetree:before {
+ content: "\f7d3"; }
+
+.fa-spa:before {
+ content: "\f5bb"; }
+
+.fa-space-shuttle:before {
+ content: "\f197"; }
+
+.fa-speakap:before {
+ content: "\f3f3"; }
+
+.fa-speaker-deck:before {
+ content: "\f83c"; }
+
+.fa-spell-check:before {
+ content: "\f891"; }
+
+.fa-spider:before {
+ content: "\f717"; }
+
+.fa-spinner:before {
+ content: "\f110"; }
+
+.fa-splotch:before {
+ content: "\f5bc"; }
+
+.fa-spotify:before {
+ content: "\f1bc"; }
+
+.fa-spray-can:before {
+ content: "\f5bd"; }
+
+.fa-square:before {
+ content: "\f0c8"; }
+
+.fa-square-full:before {
+ content: "\f45c"; }
+
+.fa-square-root-alt:before {
+ content: "\f698"; }
+
+.fa-squarespace:before {
+ content: "\f5be"; }
+
+.fa-stack-exchange:before {
+ content: "\f18d"; }
+
+.fa-stack-overflow:before {
+ content: "\f16c"; }
+
+.fa-stackpath:before {
+ content: "\f842"; }
+
+.fa-stamp:before {
+ content: "\f5bf"; }
+
+.fa-star:before {
+ content: "\f005"; }
+
+.fa-star-and-crescent:before {
+ content: "\f699"; }
+
+.fa-star-half:before {
+ content: "\f089"; }
+
+.fa-star-half-alt:before {
+ content: "\f5c0"; }
+
+.fa-star-of-david:before {
+ content: "\f69a"; }
+
+.fa-star-of-life:before {
+ content: "\f621"; }
+
+.fa-staylinked:before {
+ content: "\f3f5"; }
+
+.fa-steam:before {
+ content: "\f1b6"; }
+
+.fa-steam-square:before {
+ content: "\f1b7"; }
+
+.fa-steam-symbol:before {
+ content: "\f3f6"; }
+
+.fa-step-backward:before {
+ content: "\f048"; }
+
+.fa-step-forward:before {
+ content: "\f051"; }
+
+.fa-stethoscope:before {
+ content: "\f0f1"; }
+
+.fa-sticker-mule:before {
+ content: "\f3f7"; }
+
+.fa-sticky-note:before {
+ content: "\f249"; }
+
+.fa-stop:before {
+ content: "\f04d"; }
+
+.fa-stop-circle:before {
+ content: "\f28d"; }
+
+.fa-stopwatch:before {
+ content: "\f2f2"; }
+
+.fa-store:before {
+ content: "\f54e"; }
+
+.fa-store-alt:before {
+ content: "\f54f"; }
+
+.fa-strava:before {
+ content: "\f428"; }
+
+.fa-stream:before {
+ content: "\f550"; }
+
+.fa-street-view:before {
+ content: "\f21d"; }
+
+.fa-strikethrough:before {
+ content: "\f0cc"; }
+
+.fa-stripe:before {
+ content: "\f429"; }
+
+.fa-stripe-s:before {
+ content: "\f42a"; }
+
+.fa-stroopwafel:before {
+ content: "\f551"; }
+
+.fa-studiovinari:before {
+ content: "\f3f8"; }
+
+.fa-stumbleupon:before {
+ content: "\f1a4"; }
+
+.fa-stumbleupon-circle:before {
+ content: "\f1a3"; }
+
+.fa-subscript:before {
+ content: "\f12c"; }
+
+.fa-subway:before {
+ content: "\f239"; }
+
+.fa-suitcase:before {
+ content: "\f0f2"; }
+
+.fa-suitcase-rolling:before {
+ content: "\f5c1"; }
+
+.fa-sun:before {
+ content: "\f185"; }
+
+.fa-superpowers:before {
+ content: "\f2dd"; }
+
+.fa-superscript:before {
+ content: "\f12b"; }
+
+.fa-supple:before {
+ content: "\f3f9"; }
+
+.fa-surprise:before {
+ content: "\f5c2"; }
+
+.fa-suse:before {
+ content: "\f7d6"; }
+
+.fa-swatchbook:before {
+ content: "\f5c3"; }
+
+.fa-swimmer:before {
+ content: "\f5c4"; }
+
+.fa-swimming-pool:before {
+ content: "\f5c5"; }
+
+.fa-symfony:before {
+ content: "\f83d"; }
+
+.fa-synagogue:before {
+ content: "\f69b"; }
+
+.fa-sync:before {
+ content: "\f021"; }
+
+.fa-sync-alt:before {
+ content: "\f2f1"; }
+
+.fa-syringe:before {
+ content: "\f48e"; }
+
+.fa-table:before {
+ content: "\f0ce"; }
+
+.fa-table-tennis:before {
+ content: "\f45d"; }
+
+.fa-tablet:before {
+ content: "\f10a"; }
+
+.fa-tablet-alt:before {
+ content: "\f3fa"; }
+
+.fa-tablets:before {
+ content: "\f490"; }
+
+.fa-tachometer-alt:before {
+ content: "\f3fd"; }
+
+.fa-tag:before {
+ content: "\f02b"; }
+
+.fa-tags:before {
+ content: "\f02c"; }
+
+.fa-tape:before {
+ content: "\f4db"; }
+
+.fa-tasks:before {
+ content: "\f0ae"; }
+
+.fa-taxi:before {
+ content: "\f1ba"; }
+
+.fa-teamspeak:before {
+ content: "\f4f9"; }
+
+.fa-teeth:before {
+ content: "\f62e"; }
+
+.fa-teeth-open:before {
+ content: "\f62f"; }
+
+.fa-telegram:before {
+ content: "\f2c6"; }
+
+.fa-telegram-plane:before {
+ content: "\f3fe"; }
+
+.fa-temperature-high:before {
+ content: "\f769"; }
+
+.fa-temperature-low:before {
+ content: "\f76b"; }
+
+.fa-tencent-weibo:before {
+ content: "\f1d5"; }
+
+.fa-tenge:before {
+ content: "\f7d7"; }
+
+.fa-terminal:before {
+ content: "\f120"; }
+
+.fa-text-height:before {
+ content: "\f034"; }
+
+.fa-text-width:before {
+ content: "\f035"; }
+
+.fa-th:before {
+ content: "\f00a"; }
+
+.fa-th-large:before {
+ content: "\f009"; }
+
+.fa-th-list:before {
+ content: "\f00b"; }
+
+.fa-the-red-yeti:before {
+ content: "\f69d"; }
+
+.fa-theater-masks:before {
+ content: "\f630"; }
+
+.fa-themeco:before {
+ content: "\f5c6"; }
+
+.fa-themeisle:before {
+ content: "\f2b2"; }
+
+.fa-thermometer:before {
+ content: "\f491"; }
+
+.fa-thermometer-empty:before {
+ content: "\f2cb"; }
+
+.fa-thermometer-full:before {
+ content: "\f2c7"; }
+
+.fa-thermometer-half:before {
+ content: "\f2c9"; }
+
+.fa-thermometer-quarter:before {
+ content: "\f2ca"; }
+
+.fa-thermometer-three-quarters:before {
+ content: "\f2c8"; }
+
+.fa-think-peaks:before {
+ content: "\f731"; }
+
+.fa-thumbs-down:before {
+ content: "\f165"; }
+
+.fa-thumbs-up:before {
+ content: "\f164"; }
+
+.fa-thumbtack:before {
+ content: "\f08d"; }
+
+.fa-ticket-alt:before {
+ content: "\f3ff"; }
+
+.fa-times:before {
+ content: "\f00d"; }
+
+.fa-times-circle:before {
+ content: "\f057"; }
+
+.fa-tint:before {
+ content: "\f043"; }
+
+.fa-tint-slash:before {
+ content: "\f5c7"; }
+
+.fa-tired:before {
+ content: "\f5c8"; }
+
+.fa-toggle-off:before {
+ content: "\f204"; }
+
+.fa-toggle-on:before {
+ content: "\f205"; }
+
+.fa-toilet:before {
+ content: "\f7d8"; }
+
+.fa-toilet-paper:before {
+ content: "\f71e"; }
+
+.fa-toolbox:before {
+ content: "\f552"; }
+
+.fa-tools:before {
+ content: "\f7d9"; }
+
+.fa-tooth:before {
+ content: "\f5c9"; }
+
+.fa-torah:before {
+ content: "\f6a0"; }
+
+.fa-torii-gate:before {
+ content: "\f6a1"; }
+
+.fa-tractor:before {
+ content: "\f722"; }
+
+.fa-trade-federation:before {
+ content: "\f513"; }
+
+.fa-trademark:before {
+ content: "\f25c"; }
+
+.fa-traffic-light:before {
+ content: "\f637"; }
+
+.fa-train:before {
+ content: "\f238"; }
+
+.fa-tram:before {
+ content: "\f7da"; }
+
+.fa-transgender:before {
+ content: "\f224"; }
+
+.fa-transgender-alt:before {
+ content: "\f225"; }
+
+.fa-trash:before {
+ content: "\f1f8"; }
+
+.fa-trash-alt:before {
+ content: "\f2ed"; }
+
+.fa-trash-restore:before {
+ content: "\f829"; }
+
+.fa-trash-restore-alt:before {
+ content: "\f82a"; }
+
+.fa-tree:before {
+ content: "\f1bb"; }
+
+.fa-trello:before {
+ content: "\f181"; }
+
+.fa-tripadvisor:before {
+ content: "\f262"; }
+
+.fa-trophy:before {
+ content: "\f091"; }
+
+.fa-truck:before {
+ content: "\f0d1"; }
+
+.fa-truck-loading:before {
+ content: "\f4de"; }
+
+.fa-truck-monster:before {
+ content: "\f63b"; }
+
+.fa-truck-moving:before {
+ content: "\f4df"; }
+
+.fa-truck-pickup:before {
+ content: "\f63c"; }
+
+.fa-tshirt:before {
+ content: "\f553"; }
+
+.fa-tty:before {
+ content: "\f1e4"; }
+
+.fa-tumblr:before {
+ content: "\f173"; }
+
+.fa-tumblr-square:before {
+ content: "\f174"; }
+
+.fa-tv:before {
+ content: "\f26c"; }
+
+.fa-twitch:before {
+ content: "\f1e8"; }
+
+.fa-twitter:before {
+ content: "\f099"; }
+
+.fa-twitter-square:before {
+ content: "\f081"; }
+
+.fa-typo3:before {
+ content: "\f42b"; }
+
+.fa-uber:before {
+ content: "\f402"; }
+
+.fa-ubuntu:before {
+ content: "\f7df"; }
+
+.fa-uikit:before {
+ content: "\f403"; }
+
+.fa-umbrella:before {
+ content: "\f0e9"; }
+
+.fa-umbrella-beach:before {
+ content: "\f5ca"; }
+
+.fa-underline:before {
+ content: "\f0cd"; }
+
+.fa-undo:before {
+ content: "\f0e2"; }
+
+.fa-undo-alt:before {
+ content: "\f2ea"; }
+
+.fa-uniregistry:before {
+ content: "\f404"; }
+
+.fa-universal-access:before {
+ content: "\f29a"; }
+
+.fa-university:before {
+ content: "\f19c"; }
+
+.fa-unlink:before {
+ content: "\f127"; }
+
+.fa-unlock:before {
+ content: "\f09c"; }
+
+.fa-unlock-alt:before {
+ content: "\f13e"; }
+
+.fa-untappd:before {
+ content: "\f405"; }
+
+.fa-upload:before {
+ content: "\f093"; }
+
+.fa-ups:before {
+ content: "\f7e0"; }
+
+.fa-usb:before {
+ content: "\f287"; }
+
+.fa-user:before {
+ content: "\f007"; }
+
+.fa-user-alt:before {
+ content: "\f406"; }
+
+.fa-user-alt-slash:before {
+ content: "\f4fa"; }
+
+.fa-user-astronaut:before {
+ content: "\f4fb"; }
+
+.fa-user-check:before {
+ content: "\f4fc"; }
+
+.fa-user-circle:before {
+ content: "\f2bd"; }
+
+.fa-user-clock:before {
+ content: "\f4fd"; }
+
+.fa-user-cog:before {
+ content: "\f4fe"; }
+
+.fa-user-edit:before {
+ content: "\f4ff"; }
+
+.fa-user-friends:before {
+ content: "\f500"; }
+
+.fa-user-graduate:before {
+ content: "\f501"; }
+
+.fa-user-injured:before {
+ content: "\f728"; }
+
+.fa-user-lock:before {
+ content: "\f502"; }
+
+.fa-user-md:before {
+ content: "\f0f0"; }
+
+.fa-user-minus:before {
+ content: "\f503"; }
+
+.fa-user-ninja:before {
+ content: "\f504"; }
+
+.fa-user-nurse:before {
+ content: "\f82f"; }
+
+.fa-user-plus:before {
+ content: "\f234"; }
+
+.fa-user-secret:before {
+ content: "\f21b"; }
+
+.fa-user-shield:before {
+ content: "\f505"; }
+
+.fa-user-slash:before {
+ content: "\f506"; }
+
+.fa-user-tag:before {
+ content: "\f507"; }
+
+.fa-user-tie:before {
+ content: "\f508"; }
+
+.fa-user-times:before {
+ content: "\f235"; }
+
+.fa-users:before {
+ content: "\f0c0"; }
+
+.fa-users-cog:before {
+ content: "\f509"; }
+
+.fa-usps:before {
+ content: "\f7e1"; }
+
+.fa-ussunnah:before {
+ content: "\f407"; }
+
+.fa-utensil-spoon:before {
+ content: "\f2e5"; }
+
+.fa-utensils:before {
+ content: "\f2e7"; }
+
+.fa-vaadin:before {
+ content: "\f408"; }
+
+.fa-vector-square:before {
+ content: "\f5cb"; }
+
+.fa-venus:before {
+ content: "\f221"; }
+
+.fa-venus-double:before {
+ content: "\f226"; }
+
+.fa-venus-mars:before {
+ content: "\f228"; }
+
+.fa-viacoin:before {
+ content: "\f237"; }
+
+.fa-viadeo:before {
+ content: "\f2a9"; }
+
+.fa-viadeo-square:before {
+ content: "\f2aa"; }
+
+.fa-vial:before {
+ content: "\f492"; }
+
+.fa-vials:before {
+ content: "\f493"; }
+
+.fa-viber:before {
+ content: "\f409"; }
+
+.fa-video:before {
+ content: "\f03d"; }
+
+.fa-video-slash:before {
+ content: "\f4e2"; }
+
+.fa-vihara:before {
+ content: "\f6a7"; }
+
+.fa-vimeo:before {
+ content: "\f40a"; }
+
+.fa-vimeo-square:before {
+ content: "\f194"; }
+
+.fa-vimeo-v:before {
+ content: "\f27d"; }
+
+.fa-vine:before {
+ content: "\f1ca"; }
+
+.fa-vk:before {
+ content: "\f189"; }
+
+.fa-vnv:before {
+ content: "\f40b"; }
+
+.fa-voicemail:before {
+ content: "\f897"; }
+
+.fa-volleyball-ball:before {
+ content: "\f45f"; }
+
+.fa-volume-down:before {
+ content: "\f027"; }
+
+.fa-volume-mute:before {
+ content: "\f6a9"; }
+
+.fa-volume-off:before {
+ content: "\f026"; }
+
+.fa-volume-up:before {
+ content: "\f028"; }
+
+.fa-vote-yea:before {
+ content: "\f772"; }
+
+.fa-vr-cardboard:before {
+ content: "\f729"; }
+
+.fa-vuejs:before {
+ content: "\f41f"; }
+
+.fa-walking:before {
+ content: "\f554"; }
+
+.fa-wallet:before {
+ content: "\f555"; }
+
+.fa-warehouse:before {
+ content: "\f494"; }
+
+.fa-water:before {
+ content: "\f773"; }
+
+.fa-wave-square:before {
+ content: "\f83e"; }
+
+.fa-waze:before {
+ content: "\f83f"; }
+
+.fa-weebly:before {
+ content: "\f5cc"; }
+
+.fa-weibo:before {
+ content: "\f18a"; }
+
+.fa-weight:before {
+ content: "\f496"; }
+
+.fa-weight-hanging:before {
+ content: "\f5cd"; }
+
+.fa-weixin:before {
+ content: "\f1d7"; }
+
+.fa-whatsapp:before {
+ content: "\f232"; }
+
+.fa-whatsapp-square:before {
+ content: "\f40c"; }
+
+.fa-wheelchair:before {
+ content: "\f193"; }
+
+.fa-whmcs:before {
+ content: "\f40d"; }
+
+.fa-wifi:before {
+ content: "\f1eb"; }
+
+.fa-wikipedia-w:before {
+ content: "\f266"; }
+
+.fa-wind:before {
+ content: "\f72e"; }
+
+.fa-window-close:before {
+ content: "\f410"; }
+
+.fa-window-maximize:before {
+ content: "\f2d0"; }
+
+.fa-window-minimize:before {
+ content: "\f2d1"; }
+
+.fa-window-restore:before {
+ content: "\f2d2"; }
+
+.fa-windows:before {
+ content: "\f17a"; }
+
+.fa-wine-bottle:before {
+ content: "\f72f"; }
+
+.fa-wine-glass:before {
+ content: "\f4e3"; }
+
+.fa-wine-glass-alt:before {
+ content: "\f5ce"; }
+
+.fa-wix:before {
+ content: "\f5cf"; }
+
+.fa-wizards-of-the-coast:before {
+ content: "\f730"; }
+
+.fa-wolf-pack-battalion:before {
+ content: "\f514"; }
+
+.fa-won-sign:before {
+ content: "\f159"; }
+
+.fa-wordpress:before {
+ content: "\f19a"; }
+
+.fa-wordpress-simple:before {
+ content: "\f411"; }
+
+.fa-wpbeginner:before {
+ content: "\f297"; }
+
+.fa-wpexplorer:before {
+ content: "\f2de"; }
+
+.fa-wpforms:before {
+ content: "\f298"; }
+
+.fa-wpressr:before {
+ content: "\f3e4"; }
+
+.fa-wrench:before {
+ content: "\f0ad"; }
+
+.fa-x-ray:before {
+ content: "\f497"; }
+
+.fa-xbox:before {
+ content: "\f412"; }
+
+.fa-xing:before {
+ content: "\f168"; }
+
+.fa-xing-square:before {
+ content: "\f169"; }
+
+.fa-y-combinator:before {
+ content: "\f23b"; }
+
+.fa-yahoo:before {
+ content: "\f19e"; }
+
+.fa-yammer:before {
+ content: "\f840"; }
+
+.fa-yandex:before {
+ content: "\f413"; }
+
+.fa-yandex-international:before {
+ content: "\f414"; }
+
+.fa-yarn:before {
+ content: "\f7e3"; }
+
+.fa-yelp:before {
+ content: "\f1e9"; }
+
+.fa-yen-sign:before {
+ content: "\f157"; }
+
+.fa-yin-yang:before {
+ content: "\f6ad"; }
+
+.fa-yoast:before {
+ content: "\f2b1"; }
+
+.fa-youtube:before {
+ content: "\f167"; }
+
+.fa-youtube-square:before {
+ content: "\f431"; }
+
+.fa-zhihu:before {
+ content: "\f63f"; }
+
+.sr-only {
+ border: 0;
+ clip: rect(0, 0, 0, 0);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ width: 1px; }
+
+.sr-only-focusable:active, .sr-only-focusable:focus {
+ clip: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ position: static;
+ width: auto; }
+@font-face {
+ font-family: 'Font Awesome 5 Brands';
+ font-style: normal;
+ font-weight: normal;
+ font-display: auto;
+ src: url("../webfonts/fa-brands-400.eot");
+ src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
+
+.fab {
+ font-family: 'Font Awesome 5 Brands'; }
+@font-face {
+ font-family: 'Font Awesome 5 Free';
+ font-style: normal;
+ font-weight: 400;
+ font-display: auto;
+ src: url("../webfonts/fa-regular-400.eot");
+ src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
+
+.far {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+@font-face {
+ font-family: 'Font Awesome 5 Free';
+ font-style: normal;
+ font-weight: 900;
+ font-display: auto;
+ src: url("../webfonts/fa-solid-900.eot");
+ src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
+
+.fa,
+.fas {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 900; }
diff --git a/static/assets/fonts/fontawesome/css/all.min.css b/static/assets/fonts/fontawesome/css/all.min.css
new file mode 100644
index 0000000..72ebe49
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/all.min.css
@@ -0,0 +1,5 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-wizard:before{content:"\f6e8"}.fa-haykal:before{content:"\f666"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:normal;font-display:auto;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:auto;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900}
\ No newline at end of file
diff --git a/static/assets/fonts/fontawesome/css/brands.css b/static/assets/fonts/fontawesome/css/brands.css
new file mode 100644
index 0000000..c547dba
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/brands.css
@@ -0,0 +1,14 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+@font-face {
+ font-family: 'Font Awesome 5 Brands';
+ font-style: normal;
+ font-weight: normal;
+ font-display: auto;
+ src: url("../webfonts/fa-brands-400.eot");
+ src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
+
+.fab {
+ font-family: 'Font Awesome 5 Brands'; }
diff --git a/static/assets/fonts/fontawesome/css/brands.min.css b/static/assets/fonts/fontawesome/css/brands.min.css
new file mode 100644
index 0000000..07acf02
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/brands.min.css
@@ -0,0 +1,5 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:normal;font-display:auto;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}
\ No newline at end of file
diff --git a/static/assets/fonts/fontawesome/css/fontawesome.css b/static/assets/fonts/fontawesome/css/fontawesome.css
new file mode 100644
index 0000000..513c8ca
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/fontawesome.css
@@ -0,0 +1,4363 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+.fa,
+.fas,
+.far,
+.fal,
+.fad,
+.fab {
+ -moz-osx-font-smoothing: grayscale;
+ -webkit-font-smoothing: antialiased;
+ display: inline-block;
+ font-style: normal;
+ font-variant: normal;
+ text-rendering: auto;
+ line-height: 1; }
+
+.fa-lg {
+ font-size: 1.33333em;
+ line-height: 0.75em;
+ vertical-align: -.0667em; }
+
+.fa-xs {
+ font-size: .75em; }
+
+.fa-sm {
+ font-size: .875em; }
+
+.fa-1x {
+ font-size: 1em; }
+
+.fa-2x {
+ font-size: 2em; }
+
+.fa-3x {
+ font-size: 3em; }
+
+.fa-4x {
+ font-size: 4em; }
+
+.fa-5x {
+ font-size: 5em; }
+
+.fa-6x {
+ font-size: 6em; }
+
+.fa-7x {
+ font-size: 7em; }
+
+.fa-8x {
+ font-size: 8em; }
+
+.fa-9x {
+ font-size: 9em; }
+
+.fa-10x {
+ font-size: 10em; }
+
+.fa-fw {
+ text-align: center;
+ width: 1.25em; }
+
+.fa-ul {
+ list-style-type: none;
+ margin-left: 2.5em;
+ padding-left: 0; }
+ .fa-ul > li {
+ position: relative; }
+
+.fa-li {
+ left: -2em;
+ position: absolute;
+ text-align: center;
+ width: 2em;
+ line-height: inherit; }
+
+.fa-border {
+ border: solid 0.08em #eee;
+ border-radius: .1em;
+ padding: .2em .25em .15em; }
+
+.fa-pull-left {
+ float: left; }
+
+.fa-pull-right {
+ float: right; }
+
+.fa.fa-pull-left,
+.fas.fa-pull-left,
+.far.fa-pull-left,
+.fal.fa-pull-left,
+.fab.fa-pull-left {
+ margin-right: .3em; }
+
+.fa.fa-pull-right,
+.fas.fa-pull-right,
+.far.fa-pull-right,
+.fal.fa-pull-right,
+.fab.fa-pull-right {
+ margin-left: .3em; }
+
+.fa-spin {
+ -webkit-animation: fa-spin 2s infinite linear;
+ animation: fa-spin 2s infinite linear; }
+
+.fa-pulse {
+ -webkit-animation: fa-spin 1s infinite steps(8);
+ animation: fa-spin 1s infinite steps(8); }
+
+@-webkit-keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg); }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg); } }
+
+@keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg); }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg); } }
+
+.fa-rotate-90 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
+ -webkit-transform: rotate(90deg);
+ transform: rotate(90deg); }
+
+.fa-rotate-180 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
+ -webkit-transform: rotate(180deg);
+ transform: rotate(180deg); }
+
+.fa-rotate-270 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
+ -webkit-transform: rotate(270deg);
+ transform: rotate(270deg); }
+
+.fa-flip-horizontal {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
+ -webkit-transform: scale(-1, 1);
+ transform: scale(-1, 1); }
+
+.fa-flip-vertical {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
+ -webkit-transform: scale(1, -1);
+ transform: scale(1, -1); }
+
+.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
+ -webkit-transform: scale(-1, -1);
+ transform: scale(-1, -1); }
+
+:root .fa-rotate-90,
+:root .fa-rotate-180,
+:root .fa-rotate-270,
+:root .fa-flip-horizontal,
+:root .fa-flip-vertical,
+:root .fa-flip-both {
+ -webkit-filter: none;
+ filter: none; }
+
+.fa-stack {
+ display: inline-block;
+ height: 2em;
+ line-height: 2em;
+ position: relative;
+ vertical-align: middle;
+ width: 2.5em; }
+
+.fa-stack-1x,
+.fa-stack-2x {
+ left: 0;
+ position: absolute;
+ text-align: center;
+ width: 100%; }
+
+.fa-stack-1x {
+ line-height: inherit; }
+
+.fa-stack-2x {
+ font-size: 2em; }
+
+.fa-inverse {
+ color: #fff; }
+
+/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
+readers do not read off random characters that represent icons */
+.fa-500px:before {
+ content: "\f26e"; }
+
+.fa-accessible-icon:before {
+ content: "\f368"; }
+
+.fa-accusoft:before {
+ content: "\f369"; }
+
+.fa-acquisitions-incorporated:before {
+ content: "\f6af"; }
+
+.fa-ad:before {
+ content: "\f641"; }
+
+.fa-address-book:before {
+ content: "\f2b9"; }
+
+.fa-address-card:before {
+ content: "\f2bb"; }
+
+.fa-adjust:before {
+ content: "\f042"; }
+
+.fa-adn:before {
+ content: "\f170"; }
+
+.fa-adobe:before {
+ content: "\f778"; }
+
+.fa-adversal:before {
+ content: "\f36a"; }
+
+.fa-affiliatetheme:before {
+ content: "\f36b"; }
+
+.fa-air-freshener:before {
+ content: "\f5d0"; }
+
+.fa-airbnb:before {
+ content: "\f834"; }
+
+.fa-algolia:before {
+ content: "\f36c"; }
+
+.fa-align-center:before {
+ content: "\f037"; }
+
+.fa-align-justify:before {
+ content: "\f039"; }
+
+.fa-align-left:before {
+ content: "\f036"; }
+
+.fa-align-right:before {
+ content: "\f038"; }
+
+.fa-alipay:before {
+ content: "\f642"; }
+
+.fa-allergies:before {
+ content: "\f461"; }
+
+.fa-amazon:before {
+ content: "\f270"; }
+
+.fa-amazon-pay:before {
+ content: "\f42c"; }
+
+.fa-ambulance:before {
+ content: "\f0f9"; }
+
+.fa-american-sign-language-interpreting:before {
+ content: "\f2a3"; }
+
+.fa-amilia:before {
+ content: "\f36d"; }
+
+.fa-anchor:before {
+ content: "\f13d"; }
+
+.fa-android:before {
+ content: "\f17b"; }
+
+.fa-angellist:before {
+ content: "\f209"; }
+
+.fa-angle-double-down:before {
+ content: "\f103"; }
+
+.fa-angle-double-left:before {
+ content: "\f100"; }
+
+.fa-angle-double-right:before {
+ content: "\f101"; }
+
+.fa-angle-double-up:before {
+ content: "\f102"; }
+
+.fa-angle-down:before {
+ content: "\f107"; }
+
+.fa-angle-left:before {
+ content: "\f104"; }
+
+.fa-angle-right:before {
+ content: "\f105"; }
+
+.fa-angle-up:before {
+ content: "\f106"; }
+
+.fa-angry:before {
+ content: "\f556"; }
+
+.fa-angrycreative:before {
+ content: "\f36e"; }
+
+.fa-angular:before {
+ content: "\f420"; }
+
+.fa-ankh:before {
+ content: "\f644"; }
+
+.fa-app-store:before {
+ content: "\f36f"; }
+
+.fa-app-store-ios:before {
+ content: "\f370"; }
+
+.fa-apper:before {
+ content: "\f371"; }
+
+.fa-apple:before {
+ content: "\f179"; }
+
+.fa-apple-alt:before {
+ content: "\f5d1"; }
+
+.fa-apple-pay:before {
+ content: "\f415"; }
+
+.fa-archive:before {
+ content: "\f187"; }
+
+.fa-archway:before {
+ content: "\f557"; }
+
+.fa-arrow-alt-circle-down:before {
+ content: "\f358"; }
+
+.fa-arrow-alt-circle-left:before {
+ content: "\f359"; }
+
+.fa-arrow-alt-circle-right:before {
+ content: "\f35a"; }
+
+.fa-arrow-alt-circle-up:before {
+ content: "\f35b"; }
+
+.fa-arrow-circle-down:before {
+ content: "\f0ab"; }
+
+.fa-arrow-circle-left:before {
+ content: "\f0a8"; }
+
+.fa-arrow-circle-right:before {
+ content: "\f0a9"; }
+
+.fa-arrow-circle-up:before {
+ content: "\f0aa"; }
+
+.fa-arrow-down:before {
+ content: "\f063"; }
+
+.fa-arrow-left:before {
+ content: "\f060"; }
+
+.fa-arrow-right:before {
+ content: "\f061"; }
+
+.fa-arrow-up:before {
+ content: "\f062"; }
+
+.fa-arrows-alt:before {
+ content: "\f0b2"; }
+
+.fa-arrows-alt-h:before {
+ content: "\f337"; }
+
+.fa-arrows-alt-v:before {
+ content: "\f338"; }
+
+.fa-artstation:before {
+ content: "\f77a"; }
+
+.fa-assistive-listening-systems:before {
+ content: "\f2a2"; }
+
+.fa-asterisk:before {
+ content: "\f069"; }
+
+.fa-asymmetrik:before {
+ content: "\f372"; }
+
+.fa-at:before {
+ content: "\f1fa"; }
+
+.fa-atlas:before {
+ content: "\f558"; }
+
+.fa-atlassian:before {
+ content: "\f77b"; }
+
+.fa-atom:before {
+ content: "\f5d2"; }
+
+.fa-audible:before {
+ content: "\f373"; }
+
+.fa-audio-description:before {
+ content: "\f29e"; }
+
+.fa-autoprefixer:before {
+ content: "\f41c"; }
+
+.fa-avianex:before {
+ content: "\f374"; }
+
+.fa-aviato:before {
+ content: "\f421"; }
+
+.fa-award:before {
+ content: "\f559"; }
+
+.fa-aws:before {
+ content: "\f375"; }
+
+.fa-baby:before {
+ content: "\f77c"; }
+
+.fa-baby-carriage:before {
+ content: "\f77d"; }
+
+.fa-backspace:before {
+ content: "\f55a"; }
+
+.fa-backward:before {
+ content: "\f04a"; }
+
+.fa-bacon:before {
+ content: "\f7e5"; }
+
+.fa-balance-scale:before {
+ content: "\f24e"; }
+
+.fa-balance-scale-left:before {
+ content: "\f515"; }
+
+.fa-balance-scale-right:before {
+ content: "\f516"; }
+
+.fa-ban:before {
+ content: "\f05e"; }
+
+.fa-band-aid:before {
+ content: "\f462"; }
+
+.fa-bandcamp:before {
+ content: "\f2d5"; }
+
+.fa-barcode:before {
+ content: "\f02a"; }
+
+.fa-bars:before {
+ content: "\f0c9"; }
+
+.fa-baseball-ball:before {
+ content: "\f433"; }
+
+.fa-basketball-ball:before {
+ content: "\f434"; }
+
+.fa-bath:before {
+ content: "\f2cd"; }
+
+.fa-battery-empty:before {
+ content: "\f244"; }
+
+.fa-battery-full:before {
+ content: "\f240"; }
+
+.fa-battery-half:before {
+ content: "\f242"; }
+
+.fa-battery-quarter:before {
+ content: "\f243"; }
+
+.fa-battery-three-quarters:before {
+ content: "\f241"; }
+
+.fa-battle-net:before {
+ content: "\f835"; }
+
+.fa-bed:before {
+ content: "\f236"; }
+
+.fa-beer:before {
+ content: "\f0fc"; }
+
+.fa-behance:before {
+ content: "\f1b4"; }
+
+.fa-behance-square:before {
+ content: "\f1b5"; }
+
+.fa-bell:before {
+ content: "\f0f3"; }
+
+.fa-bell-slash:before {
+ content: "\f1f6"; }
+
+.fa-bezier-curve:before {
+ content: "\f55b"; }
+
+.fa-bible:before {
+ content: "\f647"; }
+
+.fa-bicycle:before {
+ content: "\f206"; }
+
+.fa-biking:before {
+ content: "\f84a"; }
+
+.fa-bimobject:before {
+ content: "\f378"; }
+
+.fa-binoculars:before {
+ content: "\f1e5"; }
+
+.fa-biohazard:before {
+ content: "\f780"; }
+
+.fa-birthday-cake:before {
+ content: "\f1fd"; }
+
+.fa-bitbucket:before {
+ content: "\f171"; }
+
+.fa-bitcoin:before {
+ content: "\f379"; }
+
+.fa-bity:before {
+ content: "\f37a"; }
+
+.fa-black-tie:before {
+ content: "\f27e"; }
+
+.fa-blackberry:before {
+ content: "\f37b"; }
+
+.fa-blender:before {
+ content: "\f517"; }
+
+.fa-blender-phone:before {
+ content: "\f6b6"; }
+
+.fa-blind:before {
+ content: "\f29d"; }
+
+.fa-blog:before {
+ content: "\f781"; }
+
+.fa-blogger:before {
+ content: "\f37c"; }
+
+.fa-blogger-b:before {
+ content: "\f37d"; }
+
+.fa-bluetooth:before {
+ content: "\f293"; }
+
+.fa-bluetooth-b:before {
+ content: "\f294"; }
+
+.fa-bold:before {
+ content: "\f032"; }
+
+.fa-bolt:before {
+ content: "\f0e7"; }
+
+.fa-bomb:before {
+ content: "\f1e2"; }
+
+.fa-bone:before {
+ content: "\f5d7"; }
+
+.fa-bong:before {
+ content: "\f55c"; }
+
+.fa-book:before {
+ content: "\f02d"; }
+
+.fa-book-dead:before {
+ content: "\f6b7"; }
+
+.fa-book-medical:before {
+ content: "\f7e6"; }
+
+.fa-book-open:before {
+ content: "\f518"; }
+
+.fa-book-reader:before {
+ content: "\f5da"; }
+
+.fa-bookmark:before {
+ content: "\f02e"; }
+
+.fa-bootstrap:before {
+ content: "\f836"; }
+
+.fa-border-all:before {
+ content: "\f84c"; }
+
+.fa-border-none:before {
+ content: "\f850"; }
+
+.fa-border-style:before {
+ content: "\f853"; }
+
+.fa-bowling-ball:before {
+ content: "\f436"; }
+
+.fa-box:before {
+ content: "\f466"; }
+
+.fa-box-open:before {
+ content: "\f49e"; }
+
+.fa-boxes:before {
+ content: "\f468"; }
+
+.fa-braille:before {
+ content: "\f2a1"; }
+
+.fa-brain:before {
+ content: "\f5dc"; }
+
+.fa-bread-slice:before {
+ content: "\f7ec"; }
+
+.fa-briefcase:before {
+ content: "\f0b1"; }
+
+.fa-briefcase-medical:before {
+ content: "\f469"; }
+
+.fa-broadcast-tower:before {
+ content: "\f519"; }
+
+.fa-broom:before {
+ content: "\f51a"; }
+
+.fa-brush:before {
+ content: "\f55d"; }
+
+.fa-btc:before {
+ content: "\f15a"; }
+
+.fa-buffer:before {
+ content: "\f837"; }
+
+.fa-bug:before {
+ content: "\f188"; }
+
+.fa-building:before {
+ content: "\f1ad"; }
+
+.fa-bullhorn:before {
+ content: "\f0a1"; }
+
+.fa-bullseye:before {
+ content: "\f140"; }
+
+.fa-burn:before {
+ content: "\f46a"; }
+
+.fa-buromobelexperte:before {
+ content: "\f37f"; }
+
+.fa-bus:before {
+ content: "\f207"; }
+
+.fa-bus-alt:before {
+ content: "\f55e"; }
+
+.fa-business-time:before {
+ content: "\f64a"; }
+
+.fa-buysellads:before {
+ content: "\f20d"; }
+
+.fa-calculator:before {
+ content: "\f1ec"; }
+
+.fa-calendar:before {
+ content: "\f133"; }
+
+.fa-calendar-alt:before {
+ content: "\f073"; }
+
+.fa-calendar-check:before {
+ content: "\f274"; }
+
+.fa-calendar-day:before {
+ content: "\f783"; }
+
+.fa-calendar-minus:before {
+ content: "\f272"; }
+
+.fa-calendar-plus:before {
+ content: "\f271"; }
+
+.fa-calendar-times:before {
+ content: "\f273"; }
+
+.fa-calendar-week:before {
+ content: "\f784"; }
+
+.fa-camera:before {
+ content: "\f030"; }
+
+.fa-camera-retro:before {
+ content: "\f083"; }
+
+.fa-campground:before {
+ content: "\f6bb"; }
+
+.fa-canadian-maple-leaf:before {
+ content: "\f785"; }
+
+.fa-candy-cane:before {
+ content: "\f786"; }
+
+.fa-cannabis:before {
+ content: "\f55f"; }
+
+.fa-capsules:before {
+ content: "\f46b"; }
+
+.fa-car:before {
+ content: "\f1b9"; }
+
+.fa-car-alt:before {
+ content: "\f5de"; }
+
+.fa-car-battery:before {
+ content: "\f5df"; }
+
+.fa-car-crash:before {
+ content: "\f5e1"; }
+
+.fa-car-side:before {
+ content: "\f5e4"; }
+
+.fa-caret-down:before {
+ content: "\f0d7"; }
+
+.fa-caret-left:before {
+ content: "\f0d9"; }
+
+.fa-caret-right:before {
+ content: "\f0da"; }
+
+.fa-caret-square-down:before {
+ content: "\f150"; }
+
+.fa-caret-square-left:before {
+ content: "\f191"; }
+
+.fa-caret-square-right:before {
+ content: "\f152"; }
+
+.fa-caret-square-up:before {
+ content: "\f151"; }
+
+.fa-caret-up:before {
+ content: "\f0d8"; }
+
+.fa-carrot:before {
+ content: "\f787"; }
+
+.fa-cart-arrow-down:before {
+ content: "\f218"; }
+
+.fa-cart-plus:before {
+ content: "\f217"; }
+
+.fa-cash-register:before {
+ content: "\f788"; }
+
+.fa-cat:before {
+ content: "\f6be"; }
+
+.fa-cc-amazon-pay:before {
+ content: "\f42d"; }
+
+.fa-cc-amex:before {
+ content: "\f1f3"; }
+
+.fa-cc-apple-pay:before {
+ content: "\f416"; }
+
+.fa-cc-diners-club:before {
+ content: "\f24c"; }
+
+.fa-cc-discover:before {
+ content: "\f1f2"; }
+
+.fa-cc-jcb:before {
+ content: "\f24b"; }
+
+.fa-cc-mastercard:before {
+ content: "\f1f1"; }
+
+.fa-cc-paypal:before {
+ content: "\f1f4"; }
+
+.fa-cc-stripe:before {
+ content: "\f1f5"; }
+
+.fa-cc-visa:before {
+ content: "\f1f0"; }
+
+.fa-centercode:before {
+ content: "\f380"; }
+
+.fa-centos:before {
+ content: "\f789"; }
+
+.fa-certificate:before {
+ content: "\f0a3"; }
+
+.fa-chair:before {
+ content: "\f6c0"; }
+
+.fa-chalkboard:before {
+ content: "\f51b"; }
+
+.fa-chalkboard-teacher:before {
+ content: "\f51c"; }
+
+.fa-charging-station:before {
+ content: "\f5e7"; }
+
+.fa-chart-area:before {
+ content: "\f1fe"; }
+
+.fa-chart-bar:before {
+ content: "\f080"; }
+
+.fa-chart-line:before {
+ content: "\f201"; }
+
+.fa-chart-pie:before {
+ content: "\f200"; }
+
+.fa-check:before {
+ content: "\f00c"; }
+
+.fa-check-circle:before {
+ content: "\f058"; }
+
+.fa-check-double:before {
+ content: "\f560"; }
+
+.fa-check-square:before {
+ content: "\f14a"; }
+
+.fa-cheese:before {
+ content: "\f7ef"; }
+
+.fa-chess:before {
+ content: "\f439"; }
+
+.fa-chess-bishop:before {
+ content: "\f43a"; }
+
+.fa-chess-board:before {
+ content: "\f43c"; }
+
+.fa-chess-king:before {
+ content: "\f43f"; }
+
+.fa-chess-knight:before {
+ content: "\f441"; }
+
+.fa-chess-pawn:before {
+ content: "\f443"; }
+
+.fa-chess-queen:before {
+ content: "\f445"; }
+
+.fa-chess-rook:before {
+ content: "\f447"; }
+
+.fa-chevron-circle-down:before {
+ content: "\f13a"; }
+
+.fa-chevron-circle-left:before {
+ content: "\f137"; }
+
+.fa-chevron-circle-right:before {
+ content: "\f138"; }
+
+.fa-chevron-circle-up:before {
+ content: "\f139"; }
+
+.fa-chevron-down:before {
+ content: "\f078"; }
+
+.fa-chevron-left:before {
+ content: "\f053"; }
+
+.fa-chevron-right:before {
+ content: "\f054"; }
+
+.fa-chevron-up:before {
+ content: "\f077"; }
+
+.fa-child:before {
+ content: "\f1ae"; }
+
+.fa-chrome:before {
+ content: "\f268"; }
+
+.fa-chromecast:before {
+ content: "\f838"; }
+
+.fa-church:before {
+ content: "\f51d"; }
+
+.fa-circle:before {
+ content: "\f111"; }
+
+.fa-circle-notch:before {
+ content: "\f1ce"; }
+
+.fa-city:before {
+ content: "\f64f"; }
+
+.fa-clinic-medical:before {
+ content: "\f7f2"; }
+
+.fa-clipboard:before {
+ content: "\f328"; }
+
+.fa-clipboard-check:before {
+ content: "\f46c"; }
+
+.fa-clipboard-list:before {
+ content: "\f46d"; }
+
+.fa-clock:before {
+ content: "\f017"; }
+
+.fa-clone:before {
+ content: "\f24d"; }
+
+.fa-closed-captioning:before {
+ content: "\f20a"; }
+
+.fa-cloud:before {
+ content: "\f0c2"; }
+
+.fa-cloud-download-alt:before {
+ content: "\f381"; }
+
+.fa-cloud-meatball:before {
+ content: "\f73b"; }
+
+.fa-cloud-moon:before {
+ content: "\f6c3"; }
+
+.fa-cloud-moon-rain:before {
+ content: "\f73c"; }
+
+.fa-cloud-rain:before {
+ content: "\f73d"; }
+
+.fa-cloud-showers-heavy:before {
+ content: "\f740"; }
+
+.fa-cloud-sun:before {
+ content: "\f6c4"; }
+
+.fa-cloud-sun-rain:before {
+ content: "\f743"; }
+
+.fa-cloud-upload-alt:before {
+ content: "\f382"; }
+
+.fa-cloudscale:before {
+ content: "\f383"; }
+
+.fa-cloudsmith:before {
+ content: "\f384"; }
+
+.fa-cloudversify:before {
+ content: "\f385"; }
+
+.fa-cocktail:before {
+ content: "\f561"; }
+
+.fa-code:before {
+ content: "\f121"; }
+
+.fa-code-branch:before {
+ content: "\f126"; }
+
+.fa-codepen:before {
+ content: "\f1cb"; }
+
+.fa-codiepie:before {
+ content: "\f284"; }
+
+.fa-coffee:before {
+ content: "\f0f4"; }
+
+.fa-cog:before {
+ content: "\f013"; }
+
+.fa-cogs:before {
+ content: "\f085"; }
+
+.fa-coins:before {
+ content: "\f51e"; }
+
+.fa-columns:before {
+ content: "\f0db"; }
+
+.fa-comment:before {
+ content: "\f075"; }
+
+.fa-comment-alt:before {
+ content: "\f27a"; }
+
+.fa-comment-dollar:before {
+ content: "\f651"; }
+
+.fa-comment-dots:before {
+ content: "\f4ad"; }
+
+.fa-comment-medical:before {
+ content: "\f7f5"; }
+
+.fa-comment-slash:before {
+ content: "\f4b3"; }
+
+.fa-comments:before {
+ content: "\f086"; }
+
+.fa-comments-dollar:before {
+ content: "\f653"; }
+
+.fa-compact-disc:before {
+ content: "\f51f"; }
+
+.fa-compass:before {
+ content: "\f14e"; }
+
+.fa-compress:before {
+ content: "\f066"; }
+
+.fa-compress-arrows-alt:before {
+ content: "\f78c"; }
+
+.fa-concierge-bell:before {
+ content: "\f562"; }
+
+.fa-confluence:before {
+ content: "\f78d"; }
+
+.fa-connectdevelop:before {
+ content: "\f20e"; }
+
+.fa-contao:before {
+ content: "\f26d"; }
+
+.fa-cookie:before {
+ content: "\f563"; }
+
+.fa-cookie-bite:before {
+ content: "\f564"; }
+
+.fa-copy:before {
+ content: "\f0c5"; }
+
+.fa-copyright:before {
+ content: "\f1f9"; }
+
+.fa-cotton-bureau:before {
+ content: "\f89e"; }
+
+.fa-couch:before {
+ content: "\f4b8"; }
+
+.fa-cpanel:before {
+ content: "\f388"; }
+
+.fa-creative-commons:before {
+ content: "\f25e"; }
+
+.fa-creative-commons-by:before {
+ content: "\f4e7"; }
+
+.fa-creative-commons-nc:before {
+ content: "\f4e8"; }
+
+.fa-creative-commons-nc-eu:before {
+ content: "\f4e9"; }
+
+.fa-creative-commons-nc-jp:before {
+ content: "\f4ea"; }
+
+.fa-creative-commons-nd:before {
+ content: "\f4eb"; }
+
+.fa-creative-commons-pd:before {
+ content: "\f4ec"; }
+
+.fa-creative-commons-pd-alt:before {
+ content: "\f4ed"; }
+
+.fa-creative-commons-remix:before {
+ content: "\f4ee"; }
+
+.fa-creative-commons-sa:before {
+ content: "\f4ef"; }
+
+.fa-creative-commons-sampling:before {
+ content: "\f4f0"; }
+
+.fa-creative-commons-sampling-plus:before {
+ content: "\f4f1"; }
+
+.fa-creative-commons-share:before {
+ content: "\f4f2"; }
+
+.fa-creative-commons-zero:before {
+ content: "\f4f3"; }
+
+.fa-credit-card:before {
+ content: "\f09d"; }
+
+.fa-critical-role:before {
+ content: "\f6c9"; }
+
+.fa-crop:before {
+ content: "\f125"; }
+
+.fa-crop-alt:before {
+ content: "\f565"; }
+
+.fa-cross:before {
+ content: "\f654"; }
+
+.fa-crosshairs:before {
+ content: "\f05b"; }
+
+.fa-crow:before {
+ content: "\f520"; }
+
+.fa-crown:before {
+ content: "\f521"; }
+
+.fa-crutch:before {
+ content: "\f7f7"; }
+
+.fa-css3:before {
+ content: "\f13c"; }
+
+.fa-css3-alt:before {
+ content: "\f38b"; }
+
+.fa-cube:before {
+ content: "\f1b2"; }
+
+.fa-cubes:before {
+ content: "\f1b3"; }
+
+.fa-cut:before {
+ content: "\f0c4"; }
+
+.fa-cuttlefish:before {
+ content: "\f38c"; }
+
+.fa-d-and-d:before {
+ content: "\f38d"; }
+
+.fa-d-and-d-beyond:before {
+ content: "\f6ca"; }
+
+.fa-dashcube:before {
+ content: "\f210"; }
+
+.fa-database:before {
+ content: "\f1c0"; }
+
+.fa-deaf:before {
+ content: "\f2a4"; }
+
+.fa-delicious:before {
+ content: "\f1a5"; }
+
+.fa-democrat:before {
+ content: "\f747"; }
+
+.fa-deploydog:before {
+ content: "\f38e"; }
+
+.fa-deskpro:before {
+ content: "\f38f"; }
+
+.fa-desktop:before {
+ content: "\f108"; }
+
+.fa-dev:before {
+ content: "\f6cc"; }
+
+.fa-deviantart:before {
+ content: "\f1bd"; }
+
+.fa-dharmachakra:before {
+ content: "\f655"; }
+
+.fa-dhl:before {
+ content: "\f790"; }
+
+.fa-diagnoses:before {
+ content: "\f470"; }
+
+.fa-diaspora:before {
+ content: "\f791"; }
+
+.fa-dice:before {
+ content: "\f522"; }
+
+.fa-dice-d20:before {
+ content: "\f6cf"; }
+
+.fa-dice-d6:before {
+ content: "\f6d1"; }
+
+.fa-dice-five:before {
+ content: "\f523"; }
+
+.fa-dice-four:before {
+ content: "\f524"; }
+
+.fa-dice-one:before {
+ content: "\f525"; }
+
+.fa-dice-six:before {
+ content: "\f526"; }
+
+.fa-dice-three:before {
+ content: "\f527"; }
+
+.fa-dice-two:before {
+ content: "\f528"; }
+
+.fa-digg:before {
+ content: "\f1a6"; }
+
+.fa-digital-ocean:before {
+ content: "\f391"; }
+
+.fa-digital-tachograph:before {
+ content: "\f566"; }
+
+.fa-directions:before {
+ content: "\f5eb"; }
+
+.fa-discord:before {
+ content: "\f392"; }
+
+.fa-discourse:before {
+ content: "\f393"; }
+
+.fa-divide:before {
+ content: "\f529"; }
+
+.fa-dizzy:before {
+ content: "\f567"; }
+
+.fa-dna:before {
+ content: "\f471"; }
+
+.fa-dochub:before {
+ content: "\f394"; }
+
+.fa-docker:before {
+ content: "\f395"; }
+
+.fa-dog:before {
+ content: "\f6d3"; }
+
+.fa-dollar-sign:before {
+ content: "\f155"; }
+
+.fa-dolly:before {
+ content: "\f472"; }
+
+.fa-dolly-flatbed:before {
+ content: "\f474"; }
+
+.fa-donate:before {
+ content: "\f4b9"; }
+
+.fa-door-closed:before {
+ content: "\f52a"; }
+
+.fa-door-open:before {
+ content: "\f52b"; }
+
+.fa-dot-circle:before {
+ content: "\f192"; }
+
+.fa-dove:before {
+ content: "\f4ba"; }
+
+.fa-download:before {
+ content: "\f019"; }
+
+.fa-draft2digital:before {
+ content: "\f396"; }
+
+.fa-drafting-compass:before {
+ content: "\f568"; }
+
+.fa-dragon:before {
+ content: "\f6d5"; }
+
+.fa-draw-polygon:before {
+ content: "\f5ee"; }
+
+.fa-dribbble:before {
+ content: "\f17d"; }
+
+.fa-dribbble-square:before {
+ content: "\f397"; }
+
+.fa-dropbox:before {
+ content: "\f16b"; }
+
+.fa-drum:before {
+ content: "\f569"; }
+
+.fa-drum-steelpan:before {
+ content: "\f56a"; }
+
+.fa-drumstick-bite:before {
+ content: "\f6d7"; }
+
+.fa-drupal:before {
+ content: "\f1a9"; }
+
+.fa-dumbbell:before {
+ content: "\f44b"; }
+
+.fa-dumpster:before {
+ content: "\f793"; }
+
+.fa-dumpster-fire:before {
+ content: "\f794"; }
+
+.fa-dungeon:before {
+ content: "\f6d9"; }
+
+.fa-dyalog:before {
+ content: "\f399"; }
+
+.fa-earlybirds:before {
+ content: "\f39a"; }
+
+.fa-ebay:before {
+ content: "\f4f4"; }
+
+.fa-edge:before {
+ content: "\f282"; }
+
+.fa-edit:before {
+ content: "\f044"; }
+
+.fa-egg:before {
+ content: "\f7fb"; }
+
+.fa-eject:before {
+ content: "\f052"; }
+
+.fa-elementor:before {
+ content: "\f430"; }
+
+.fa-ellipsis-h:before {
+ content: "\f141"; }
+
+.fa-ellipsis-v:before {
+ content: "\f142"; }
+
+.fa-ello:before {
+ content: "\f5f1"; }
+
+.fa-ember:before {
+ content: "\f423"; }
+
+.fa-empire:before {
+ content: "\f1d1"; }
+
+.fa-envelope:before {
+ content: "\f0e0"; }
+
+.fa-envelope-open:before {
+ content: "\f2b6"; }
+
+.fa-envelope-open-text:before {
+ content: "\f658"; }
+
+.fa-envelope-square:before {
+ content: "\f199"; }
+
+.fa-envira:before {
+ content: "\f299"; }
+
+.fa-equals:before {
+ content: "\f52c"; }
+
+.fa-eraser:before {
+ content: "\f12d"; }
+
+.fa-erlang:before {
+ content: "\f39d"; }
+
+.fa-ethereum:before {
+ content: "\f42e"; }
+
+.fa-ethernet:before {
+ content: "\f796"; }
+
+.fa-etsy:before {
+ content: "\f2d7"; }
+
+.fa-euro-sign:before {
+ content: "\f153"; }
+
+.fa-evernote:before {
+ content: "\f839"; }
+
+.fa-exchange-alt:before {
+ content: "\f362"; }
+
+.fa-exclamation:before {
+ content: "\f12a"; }
+
+.fa-exclamation-circle:before {
+ content: "\f06a"; }
+
+.fa-exclamation-triangle:before {
+ content: "\f071"; }
+
+.fa-expand:before {
+ content: "\f065"; }
+
+.fa-expand-arrows-alt:before {
+ content: "\f31e"; }
+
+.fa-expeditedssl:before {
+ content: "\f23e"; }
+
+.fa-external-link-alt:before {
+ content: "\f35d"; }
+
+.fa-external-link-square-alt:before {
+ content: "\f360"; }
+
+.fa-eye:before {
+ content: "\f06e"; }
+
+.fa-eye-dropper:before {
+ content: "\f1fb"; }
+
+.fa-eye-slash:before {
+ content: "\f070"; }
+
+.fa-facebook:before {
+ content: "\f09a"; }
+
+.fa-facebook-f:before {
+ content: "\f39e"; }
+
+.fa-facebook-messenger:before {
+ content: "\f39f"; }
+
+.fa-facebook-square:before {
+ content: "\f082"; }
+
+.fa-fan:before {
+ content: "\f863"; }
+
+.fa-fantasy-flight-games:before {
+ content: "\f6dc"; }
+
+.fa-fast-backward:before {
+ content: "\f049"; }
+
+.fa-fast-forward:before {
+ content: "\f050"; }
+
+.fa-fax:before {
+ content: "\f1ac"; }
+
+.fa-feather:before {
+ content: "\f52d"; }
+
+.fa-feather-alt:before {
+ content: "\f56b"; }
+
+.fa-fedex:before {
+ content: "\f797"; }
+
+.fa-fedora:before {
+ content: "\f798"; }
+
+.fa-female:before {
+ content: "\f182"; }
+
+.fa-fighter-jet:before {
+ content: "\f0fb"; }
+
+.fa-figma:before {
+ content: "\f799"; }
+
+.fa-file:before {
+ content: "\f15b"; }
+
+.fa-file-alt:before {
+ content: "\f15c"; }
+
+.fa-file-archive:before {
+ content: "\f1c6"; }
+
+.fa-file-audio:before {
+ content: "\f1c7"; }
+
+.fa-file-code:before {
+ content: "\f1c9"; }
+
+.fa-file-contract:before {
+ content: "\f56c"; }
+
+.fa-file-csv:before {
+ content: "\f6dd"; }
+
+.fa-file-download:before {
+ content: "\f56d"; }
+
+.fa-file-excel:before {
+ content: "\f1c3"; }
+
+.fa-file-export:before {
+ content: "\f56e"; }
+
+.fa-file-image:before {
+ content: "\f1c5"; }
+
+.fa-file-import:before {
+ content: "\f56f"; }
+
+.fa-file-invoice:before {
+ content: "\f570"; }
+
+.fa-file-invoice-dollar:before {
+ content: "\f571"; }
+
+.fa-file-medical:before {
+ content: "\f477"; }
+
+.fa-file-medical-alt:before {
+ content: "\f478"; }
+
+.fa-file-pdf:before {
+ content: "\f1c1"; }
+
+.fa-file-powerpoint:before {
+ content: "\f1c4"; }
+
+.fa-file-prescription:before {
+ content: "\f572"; }
+
+.fa-file-signature:before {
+ content: "\f573"; }
+
+.fa-file-upload:before {
+ content: "\f574"; }
+
+.fa-file-video:before {
+ content: "\f1c8"; }
+
+.fa-file-word:before {
+ content: "\f1c2"; }
+
+.fa-fill:before {
+ content: "\f575"; }
+
+.fa-fill-drip:before {
+ content: "\f576"; }
+
+.fa-film:before {
+ content: "\f008"; }
+
+.fa-filter:before {
+ content: "\f0b0"; }
+
+.fa-fingerprint:before {
+ content: "\f577"; }
+
+.fa-fire:before {
+ content: "\f06d"; }
+
+.fa-fire-alt:before {
+ content: "\f7e4"; }
+
+.fa-fire-extinguisher:before {
+ content: "\f134"; }
+
+.fa-firefox:before {
+ content: "\f269"; }
+
+.fa-first-aid:before {
+ content: "\f479"; }
+
+.fa-first-order:before {
+ content: "\f2b0"; }
+
+.fa-first-order-alt:before {
+ content: "\f50a"; }
+
+.fa-firstdraft:before {
+ content: "\f3a1"; }
+
+.fa-fish:before {
+ content: "\f578"; }
+
+.fa-fist-raised:before {
+ content: "\f6de"; }
+
+.fa-flag:before {
+ content: "\f024"; }
+
+.fa-flag-checkered:before {
+ content: "\f11e"; }
+
+.fa-flag-usa:before {
+ content: "\f74d"; }
+
+.fa-flask:before {
+ content: "\f0c3"; }
+
+.fa-flickr:before {
+ content: "\f16e"; }
+
+.fa-flipboard:before {
+ content: "\f44d"; }
+
+.fa-flushed:before {
+ content: "\f579"; }
+
+.fa-fly:before {
+ content: "\f417"; }
+
+.fa-folder:before {
+ content: "\f07b"; }
+
+.fa-folder-minus:before {
+ content: "\f65d"; }
+
+.fa-folder-open:before {
+ content: "\f07c"; }
+
+.fa-folder-plus:before {
+ content: "\f65e"; }
+
+.fa-font:before {
+ content: "\f031"; }
+
+.fa-font-awesome:before {
+ content: "\f2b4"; }
+
+.fa-font-awesome-alt:before {
+ content: "\f35c"; }
+
+.fa-font-awesome-flag:before {
+ content: "\f425"; }
+
+.fa-font-awesome-logo-full:before {
+ content: "\f4e6"; }
+
+.fa-fonticons:before {
+ content: "\f280"; }
+
+.fa-fonticons-fi:before {
+ content: "\f3a2"; }
+
+.fa-football-ball:before {
+ content: "\f44e"; }
+
+.fa-fort-awesome:before {
+ content: "\f286"; }
+
+.fa-fort-awesome-alt:before {
+ content: "\f3a3"; }
+
+.fa-forumbee:before {
+ content: "\f211"; }
+
+.fa-forward:before {
+ content: "\f04e"; }
+
+.fa-foursquare:before {
+ content: "\f180"; }
+
+.fa-free-code-camp:before {
+ content: "\f2c5"; }
+
+.fa-freebsd:before {
+ content: "\f3a4"; }
+
+.fa-frog:before {
+ content: "\f52e"; }
+
+.fa-frown:before {
+ content: "\f119"; }
+
+.fa-frown-open:before {
+ content: "\f57a"; }
+
+.fa-fulcrum:before {
+ content: "\f50b"; }
+
+.fa-funnel-dollar:before {
+ content: "\f662"; }
+
+.fa-futbol:before {
+ content: "\f1e3"; }
+
+.fa-galactic-republic:before {
+ content: "\f50c"; }
+
+.fa-galactic-senate:before {
+ content: "\f50d"; }
+
+.fa-gamepad:before {
+ content: "\f11b"; }
+
+.fa-gas-pump:before {
+ content: "\f52f"; }
+
+.fa-gavel:before {
+ content: "\f0e3"; }
+
+.fa-gem:before {
+ content: "\f3a5"; }
+
+.fa-genderless:before {
+ content: "\f22d"; }
+
+.fa-get-pocket:before {
+ content: "\f265"; }
+
+.fa-gg:before {
+ content: "\f260"; }
+
+.fa-gg-circle:before {
+ content: "\f261"; }
+
+.fa-ghost:before {
+ content: "\f6e2"; }
+
+.fa-gift:before {
+ content: "\f06b"; }
+
+.fa-gifts:before {
+ content: "\f79c"; }
+
+.fa-git:before {
+ content: "\f1d3"; }
+
+.fa-git-alt:before {
+ content: "\f841"; }
+
+.fa-git-square:before {
+ content: "\f1d2"; }
+
+.fa-github:before {
+ content: "\f09b"; }
+
+.fa-github-alt:before {
+ content: "\f113"; }
+
+.fa-github-square:before {
+ content: "\f092"; }
+
+.fa-gitkraken:before {
+ content: "\f3a6"; }
+
+.fa-gitlab:before {
+ content: "\f296"; }
+
+.fa-gitter:before {
+ content: "\f426"; }
+
+.fa-glass-cheers:before {
+ content: "\f79f"; }
+
+.fa-glass-martini:before {
+ content: "\f000"; }
+
+.fa-glass-martini-alt:before {
+ content: "\f57b"; }
+
+.fa-glass-whiskey:before {
+ content: "\f7a0"; }
+
+.fa-glasses:before {
+ content: "\f530"; }
+
+.fa-glide:before {
+ content: "\f2a5"; }
+
+.fa-glide-g:before {
+ content: "\f2a6"; }
+
+.fa-globe:before {
+ content: "\f0ac"; }
+
+.fa-globe-africa:before {
+ content: "\f57c"; }
+
+.fa-globe-americas:before {
+ content: "\f57d"; }
+
+.fa-globe-asia:before {
+ content: "\f57e"; }
+
+.fa-globe-europe:before {
+ content: "\f7a2"; }
+
+.fa-gofore:before {
+ content: "\f3a7"; }
+
+.fa-golf-ball:before {
+ content: "\f450"; }
+
+.fa-goodreads:before {
+ content: "\f3a8"; }
+
+.fa-goodreads-g:before {
+ content: "\f3a9"; }
+
+.fa-google:before {
+ content: "\f1a0"; }
+
+.fa-google-drive:before {
+ content: "\f3aa"; }
+
+.fa-google-play:before {
+ content: "\f3ab"; }
+
+.fa-google-plus:before {
+ content: "\f2b3"; }
+
+.fa-google-plus-g:before {
+ content: "\f0d5"; }
+
+.fa-google-plus-square:before {
+ content: "\f0d4"; }
+
+.fa-google-wallet:before {
+ content: "\f1ee"; }
+
+.fa-gopuram:before {
+ content: "\f664"; }
+
+.fa-graduation-cap:before {
+ content: "\f19d"; }
+
+.fa-gratipay:before {
+ content: "\f184"; }
+
+.fa-grav:before {
+ content: "\f2d6"; }
+
+.fa-greater-than:before {
+ content: "\f531"; }
+
+.fa-greater-than-equal:before {
+ content: "\f532"; }
+
+.fa-grimace:before {
+ content: "\f57f"; }
+
+.fa-grin:before {
+ content: "\f580"; }
+
+.fa-grin-alt:before {
+ content: "\f581"; }
+
+.fa-grin-beam:before {
+ content: "\f582"; }
+
+.fa-grin-beam-sweat:before {
+ content: "\f583"; }
+
+.fa-grin-hearts:before {
+ content: "\f584"; }
+
+.fa-grin-squint:before {
+ content: "\f585"; }
+
+.fa-grin-squint-tears:before {
+ content: "\f586"; }
+
+.fa-grin-stars:before {
+ content: "\f587"; }
+
+.fa-grin-tears:before {
+ content: "\f588"; }
+
+.fa-grin-tongue:before {
+ content: "\f589"; }
+
+.fa-grin-tongue-squint:before {
+ content: "\f58a"; }
+
+.fa-grin-tongue-wink:before {
+ content: "\f58b"; }
+
+.fa-grin-wink:before {
+ content: "\f58c"; }
+
+.fa-grip-horizontal:before {
+ content: "\f58d"; }
+
+.fa-grip-lines:before {
+ content: "\f7a4"; }
+
+.fa-grip-lines-vertical:before {
+ content: "\f7a5"; }
+
+.fa-grip-vertical:before {
+ content: "\f58e"; }
+
+.fa-gripfire:before {
+ content: "\f3ac"; }
+
+.fa-grunt:before {
+ content: "\f3ad"; }
+
+.fa-guitar:before {
+ content: "\f7a6"; }
+
+.fa-gulp:before {
+ content: "\f3ae"; }
+
+.fa-h-square:before {
+ content: "\f0fd"; }
+
+.fa-hacker-news:before {
+ content: "\f1d4"; }
+
+.fa-hacker-news-square:before {
+ content: "\f3af"; }
+
+.fa-hackerrank:before {
+ content: "\f5f7"; }
+
+.fa-hamburger:before {
+ content: "\f805"; }
+
+.fa-hammer:before {
+ content: "\f6e3"; }
+
+.fa-hamsa:before {
+ content: "\f665"; }
+
+.fa-hand-holding:before {
+ content: "\f4bd"; }
+
+.fa-hand-holding-heart:before {
+ content: "\f4be"; }
+
+.fa-hand-holding-usd:before {
+ content: "\f4c0"; }
+
+.fa-hand-lizard:before {
+ content: "\f258"; }
+
+.fa-hand-middle-finger:before {
+ content: "\f806"; }
+
+.fa-hand-paper:before {
+ content: "\f256"; }
+
+.fa-hand-peace:before {
+ content: "\f25b"; }
+
+.fa-hand-point-down:before {
+ content: "\f0a7"; }
+
+.fa-hand-point-left:before {
+ content: "\f0a5"; }
+
+.fa-hand-point-right:before {
+ content: "\f0a4"; }
+
+.fa-hand-point-up:before {
+ content: "\f0a6"; }
+
+.fa-hand-pointer:before {
+ content: "\f25a"; }
+
+.fa-hand-rock:before {
+ content: "\f255"; }
+
+.fa-hand-scissors:before {
+ content: "\f257"; }
+
+.fa-hand-spock:before {
+ content: "\f259"; }
+
+.fa-hands:before {
+ content: "\f4c2"; }
+
+.fa-hands-helping:before {
+ content: "\f4c4"; }
+
+.fa-handshake:before {
+ content: "\f2b5"; }
+
+.fa-hanukiah:before {
+ content: "\f6e6"; }
+
+.fa-hard-hat:before {
+ content: "\f807"; }
+
+.fa-hashtag:before {
+ content: "\f292"; }
+
+.fa-hat-wizard:before {
+ content: "\f6e8"; }
+
+.fa-haykal:before {
+ content: "\f666"; }
+
+.fa-hdd:before {
+ content: "\f0a0"; }
+
+.fa-heading:before {
+ content: "\f1dc"; }
+
+.fa-headphones:before {
+ content: "\f025"; }
+
+.fa-headphones-alt:before {
+ content: "\f58f"; }
+
+.fa-headset:before {
+ content: "\f590"; }
+
+.fa-heart:before {
+ content: "\f004"; }
+
+.fa-heart-broken:before {
+ content: "\f7a9"; }
+
+.fa-heartbeat:before {
+ content: "\f21e"; }
+
+.fa-helicopter:before {
+ content: "\f533"; }
+
+.fa-highlighter:before {
+ content: "\f591"; }
+
+.fa-hiking:before {
+ content: "\f6ec"; }
+
+.fa-hippo:before {
+ content: "\f6ed"; }
+
+.fa-hips:before {
+ content: "\f452"; }
+
+.fa-hire-a-helper:before {
+ content: "\f3b0"; }
+
+.fa-history:before {
+ content: "\f1da"; }
+
+.fa-hockey-puck:before {
+ content: "\f453"; }
+
+.fa-holly-berry:before {
+ content: "\f7aa"; }
+
+.fa-home:before {
+ content: "\f015"; }
+
+.fa-hooli:before {
+ content: "\f427"; }
+
+.fa-hornbill:before {
+ content: "\f592"; }
+
+.fa-horse:before {
+ content: "\f6f0"; }
+
+.fa-horse-head:before {
+ content: "\f7ab"; }
+
+.fa-hospital:before {
+ content: "\f0f8"; }
+
+.fa-hospital-alt:before {
+ content: "\f47d"; }
+
+.fa-hospital-symbol:before {
+ content: "\f47e"; }
+
+.fa-hot-tub:before {
+ content: "\f593"; }
+
+.fa-hotdog:before {
+ content: "\f80f"; }
+
+.fa-hotel:before {
+ content: "\f594"; }
+
+.fa-hotjar:before {
+ content: "\f3b1"; }
+
+.fa-hourglass:before {
+ content: "\f254"; }
+
+.fa-hourglass-end:before {
+ content: "\f253"; }
+
+.fa-hourglass-half:before {
+ content: "\f252"; }
+
+.fa-hourglass-start:before {
+ content: "\f251"; }
+
+.fa-house-damage:before {
+ content: "\f6f1"; }
+
+.fa-houzz:before {
+ content: "\f27c"; }
+
+.fa-hryvnia:before {
+ content: "\f6f2"; }
+
+.fa-html5:before {
+ content: "\f13b"; }
+
+.fa-hubspot:before {
+ content: "\f3b2"; }
+
+.fa-i-cursor:before {
+ content: "\f246"; }
+
+.fa-ice-cream:before {
+ content: "\f810"; }
+
+.fa-icicles:before {
+ content: "\f7ad"; }
+
+.fa-icons:before {
+ content: "\f86d"; }
+
+.fa-id-badge:before {
+ content: "\f2c1"; }
+
+.fa-id-card:before {
+ content: "\f2c2"; }
+
+.fa-id-card-alt:before {
+ content: "\f47f"; }
+
+.fa-igloo:before {
+ content: "\f7ae"; }
+
+.fa-image:before {
+ content: "\f03e"; }
+
+.fa-images:before {
+ content: "\f302"; }
+
+.fa-imdb:before {
+ content: "\f2d8"; }
+
+.fa-inbox:before {
+ content: "\f01c"; }
+
+.fa-indent:before {
+ content: "\f03c"; }
+
+.fa-industry:before {
+ content: "\f275"; }
+
+.fa-infinity:before {
+ content: "\f534"; }
+
+.fa-info:before {
+ content: "\f129"; }
+
+.fa-info-circle:before {
+ content: "\f05a"; }
+
+.fa-instagram:before {
+ content: "\f16d"; }
+
+.fa-intercom:before {
+ content: "\f7af"; }
+
+.fa-internet-explorer:before {
+ content: "\f26b"; }
+
+.fa-invision:before {
+ content: "\f7b0"; }
+
+.fa-ioxhost:before {
+ content: "\f208"; }
+
+.fa-italic:before {
+ content: "\f033"; }
+
+.fa-itch-io:before {
+ content: "\f83a"; }
+
+.fa-itunes:before {
+ content: "\f3b4"; }
+
+.fa-itunes-note:before {
+ content: "\f3b5"; }
+
+.fa-java:before {
+ content: "\f4e4"; }
+
+.fa-jedi:before {
+ content: "\f669"; }
+
+.fa-jedi-order:before {
+ content: "\f50e"; }
+
+.fa-jenkins:before {
+ content: "\f3b6"; }
+
+.fa-jira:before {
+ content: "\f7b1"; }
+
+.fa-joget:before {
+ content: "\f3b7"; }
+
+.fa-joint:before {
+ content: "\f595"; }
+
+.fa-joomla:before {
+ content: "\f1aa"; }
+
+.fa-journal-whills:before {
+ content: "\f66a"; }
+
+.fa-js:before {
+ content: "\f3b8"; }
+
+.fa-js-square:before {
+ content: "\f3b9"; }
+
+.fa-jsfiddle:before {
+ content: "\f1cc"; }
+
+.fa-kaaba:before {
+ content: "\f66b"; }
+
+.fa-kaggle:before {
+ content: "\f5fa"; }
+
+.fa-key:before {
+ content: "\f084"; }
+
+.fa-keybase:before {
+ content: "\f4f5"; }
+
+.fa-keyboard:before {
+ content: "\f11c"; }
+
+.fa-keycdn:before {
+ content: "\f3ba"; }
+
+.fa-khanda:before {
+ content: "\f66d"; }
+
+.fa-kickstarter:before {
+ content: "\f3bb"; }
+
+.fa-kickstarter-k:before {
+ content: "\f3bc"; }
+
+.fa-kiss:before {
+ content: "\f596"; }
+
+.fa-kiss-beam:before {
+ content: "\f597"; }
+
+.fa-kiss-wink-heart:before {
+ content: "\f598"; }
+
+.fa-kiwi-bird:before {
+ content: "\f535"; }
+
+.fa-korvue:before {
+ content: "\f42f"; }
+
+.fa-landmark:before {
+ content: "\f66f"; }
+
+.fa-language:before {
+ content: "\f1ab"; }
+
+.fa-laptop:before {
+ content: "\f109"; }
+
+.fa-laptop-code:before {
+ content: "\f5fc"; }
+
+.fa-laptop-medical:before {
+ content: "\f812"; }
+
+.fa-laravel:before {
+ content: "\f3bd"; }
+
+.fa-lastfm:before {
+ content: "\f202"; }
+
+.fa-lastfm-square:before {
+ content: "\f203"; }
+
+.fa-laugh:before {
+ content: "\f599"; }
+
+.fa-laugh-beam:before {
+ content: "\f59a"; }
+
+.fa-laugh-squint:before {
+ content: "\f59b"; }
+
+.fa-laugh-wink:before {
+ content: "\f59c"; }
+
+.fa-layer-group:before {
+ content: "\f5fd"; }
+
+.fa-leaf:before {
+ content: "\f06c"; }
+
+.fa-leanpub:before {
+ content: "\f212"; }
+
+.fa-lemon:before {
+ content: "\f094"; }
+
+.fa-less:before {
+ content: "\f41d"; }
+
+.fa-less-than:before {
+ content: "\f536"; }
+
+.fa-less-than-equal:before {
+ content: "\f537"; }
+
+.fa-level-down-alt:before {
+ content: "\f3be"; }
+
+.fa-level-up-alt:before {
+ content: "\f3bf"; }
+
+.fa-life-ring:before {
+ content: "\f1cd"; }
+
+.fa-lightbulb:before {
+ content: "\f0eb"; }
+
+.fa-line:before {
+ content: "\f3c0"; }
+
+.fa-link:before {
+ content: "\f0c1"; }
+
+.fa-linkedin:before {
+ content: "\f08c"; }
+
+.fa-linkedin-in:before {
+ content: "\f0e1"; }
+
+.fa-linode:before {
+ content: "\f2b8"; }
+
+.fa-linux:before {
+ content: "\f17c"; }
+
+.fa-lira-sign:before {
+ content: "\f195"; }
+
+.fa-list:before {
+ content: "\f03a"; }
+
+.fa-list-alt:before {
+ content: "\f022"; }
+
+.fa-list-ol:before {
+ content: "\f0cb"; }
+
+.fa-list-ul:before {
+ content: "\f0ca"; }
+
+.fa-location-arrow:before {
+ content: "\f124"; }
+
+.fa-lock:before {
+ content: "\f023"; }
+
+.fa-lock-open:before {
+ content: "\f3c1"; }
+
+.fa-long-arrow-alt-down:before {
+ content: "\f309"; }
+
+.fa-long-arrow-alt-left:before {
+ content: "\f30a"; }
+
+.fa-long-arrow-alt-right:before {
+ content: "\f30b"; }
+
+.fa-long-arrow-alt-up:before {
+ content: "\f30c"; }
+
+.fa-low-vision:before {
+ content: "\f2a8"; }
+
+.fa-luggage-cart:before {
+ content: "\f59d"; }
+
+.fa-lyft:before {
+ content: "\f3c3"; }
+
+.fa-magento:before {
+ content: "\f3c4"; }
+
+.fa-magic:before {
+ content: "\f0d0"; }
+
+.fa-magnet:before {
+ content: "\f076"; }
+
+.fa-mail-bulk:before {
+ content: "\f674"; }
+
+.fa-mailchimp:before {
+ content: "\f59e"; }
+
+.fa-male:before {
+ content: "\f183"; }
+
+.fa-mandalorian:before {
+ content: "\f50f"; }
+
+.fa-map:before {
+ content: "\f279"; }
+
+.fa-map-marked:before {
+ content: "\f59f"; }
+
+.fa-map-marked-alt:before {
+ content: "\f5a0"; }
+
+.fa-map-marker:before {
+ content: "\f041"; }
+
+.fa-map-marker-alt:before {
+ content: "\f3c5"; }
+
+.fa-map-pin:before {
+ content: "\f276"; }
+
+.fa-map-signs:before {
+ content: "\f277"; }
+
+.fa-markdown:before {
+ content: "\f60f"; }
+
+.fa-marker:before {
+ content: "\f5a1"; }
+
+.fa-mars:before {
+ content: "\f222"; }
+
+.fa-mars-double:before {
+ content: "\f227"; }
+
+.fa-mars-stroke:before {
+ content: "\f229"; }
+
+.fa-mars-stroke-h:before {
+ content: "\f22b"; }
+
+.fa-mars-stroke-v:before {
+ content: "\f22a"; }
+
+.fa-mask:before {
+ content: "\f6fa"; }
+
+.fa-mastodon:before {
+ content: "\f4f6"; }
+
+.fa-maxcdn:before {
+ content: "\f136"; }
+
+.fa-medal:before {
+ content: "\f5a2"; }
+
+.fa-medapps:before {
+ content: "\f3c6"; }
+
+.fa-medium:before {
+ content: "\f23a"; }
+
+.fa-medium-m:before {
+ content: "\f3c7"; }
+
+.fa-medkit:before {
+ content: "\f0fa"; }
+
+.fa-medrt:before {
+ content: "\f3c8"; }
+
+.fa-meetup:before {
+ content: "\f2e0"; }
+
+.fa-megaport:before {
+ content: "\f5a3"; }
+
+.fa-meh:before {
+ content: "\f11a"; }
+
+.fa-meh-blank:before {
+ content: "\f5a4"; }
+
+.fa-meh-rolling-eyes:before {
+ content: "\f5a5"; }
+
+.fa-memory:before {
+ content: "\f538"; }
+
+.fa-mendeley:before {
+ content: "\f7b3"; }
+
+.fa-menorah:before {
+ content: "\f676"; }
+
+.fa-mercury:before {
+ content: "\f223"; }
+
+.fa-meteor:before {
+ content: "\f753"; }
+
+.fa-microchip:before {
+ content: "\f2db"; }
+
+.fa-microphone:before {
+ content: "\f130"; }
+
+.fa-microphone-alt:before {
+ content: "\f3c9"; }
+
+.fa-microphone-alt-slash:before {
+ content: "\f539"; }
+
+.fa-microphone-slash:before {
+ content: "\f131"; }
+
+.fa-microscope:before {
+ content: "\f610"; }
+
+.fa-microsoft:before {
+ content: "\f3ca"; }
+
+.fa-minus:before {
+ content: "\f068"; }
+
+.fa-minus-circle:before {
+ content: "\f056"; }
+
+.fa-minus-square:before {
+ content: "\f146"; }
+
+.fa-mitten:before {
+ content: "\f7b5"; }
+
+.fa-mix:before {
+ content: "\f3cb"; }
+
+.fa-mixcloud:before {
+ content: "\f289"; }
+
+.fa-mizuni:before {
+ content: "\f3cc"; }
+
+.fa-mobile:before {
+ content: "\f10b"; }
+
+.fa-mobile-alt:before {
+ content: "\f3cd"; }
+
+.fa-modx:before {
+ content: "\f285"; }
+
+.fa-monero:before {
+ content: "\f3d0"; }
+
+.fa-money-bill:before {
+ content: "\f0d6"; }
+
+.fa-money-bill-alt:before {
+ content: "\f3d1"; }
+
+.fa-money-bill-wave:before {
+ content: "\f53a"; }
+
+.fa-money-bill-wave-alt:before {
+ content: "\f53b"; }
+
+.fa-money-check:before {
+ content: "\f53c"; }
+
+.fa-money-check-alt:before {
+ content: "\f53d"; }
+
+.fa-monument:before {
+ content: "\f5a6"; }
+
+.fa-moon:before {
+ content: "\f186"; }
+
+.fa-mortar-pestle:before {
+ content: "\f5a7"; }
+
+.fa-mosque:before {
+ content: "\f678"; }
+
+.fa-motorcycle:before {
+ content: "\f21c"; }
+
+.fa-mountain:before {
+ content: "\f6fc"; }
+
+.fa-mouse-pointer:before {
+ content: "\f245"; }
+
+.fa-mug-hot:before {
+ content: "\f7b6"; }
+
+.fa-music:before {
+ content: "\f001"; }
+
+.fa-napster:before {
+ content: "\f3d2"; }
+
+.fa-neos:before {
+ content: "\f612"; }
+
+.fa-network-wired:before {
+ content: "\f6ff"; }
+
+.fa-neuter:before {
+ content: "\f22c"; }
+
+.fa-newspaper:before {
+ content: "\f1ea"; }
+
+.fa-nimblr:before {
+ content: "\f5a8"; }
+
+.fa-node:before {
+ content: "\f419"; }
+
+.fa-node-js:before {
+ content: "\f3d3"; }
+
+.fa-not-equal:before {
+ content: "\f53e"; }
+
+.fa-notes-medical:before {
+ content: "\f481"; }
+
+.fa-npm:before {
+ content: "\f3d4"; }
+
+.fa-ns8:before {
+ content: "\f3d5"; }
+
+.fa-nutritionix:before {
+ content: "\f3d6"; }
+
+.fa-object-group:before {
+ content: "\f247"; }
+
+.fa-object-ungroup:before {
+ content: "\f248"; }
+
+.fa-odnoklassniki:before {
+ content: "\f263"; }
+
+.fa-odnoklassniki-square:before {
+ content: "\f264"; }
+
+.fa-oil-can:before {
+ content: "\f613"; }
+
+.fa-old-republic:before {
+ content: "\f510"; }
+
+.fa-om:before {
+ content: "\f679"; }
+
+.fa-opencart:before {
+ content: "\f23d"; }
+
+.fa-openid:before {
+ content: "\f19b"; }
+
+.fa-opera:before {
+ content: "\f26a"; }
+
+.fa-optin-monster:before {
+ content: "\f23c"; }
+
+.fa-osi:before {
+ content: "\f41a"; }
+
+.fa-otter:before {
+ content: "\f700"; }
+
+.fa-outdent:before {
+ content: "\f03b"; }
+
+.fa-page4:before {
+ content: "\f3d7"; }
+
+.fa-pagelines:before {
+ content: "\f18c"; }
+
+.fa-pager:before {
+ content: "\f815"; }
+
+.fa-paint-brush:before {
+ content: "\f1fc"; }
+
+.fa-paint-roller:before {
+ content: "\f5aa"; }
+
+.fa-palette:before {
+ content: "\f53f"; }
+
+.fa-palfed:before {
+ content: "\f3d8"; }
+
+.fa-pallet:before {
+ content: "\f482"; }
+
+.fa-paper-plane:before {
+ content: "\f1d8"; }
+
+.fa-paperclip:before {
+ content: "\f0c6"; }
+
+.fa-parachute-box:before {
+ content: "\f4cd"; }
+
+.fa-paragraph:before {
+ content: "\f1dd"; }
+
+.fa-parking:before {
+ content: "\f540"; }
+
+.fa-passport:before {
+ content: "\f5ab"; }
+
+.fa-pastafarianism:before {
+ content: "\f67b"; }
+
+.fa-paste:before {
+ content: "\f0ea"; }
+
+.fa-patreon:before {
+ content: "\f3d9"; }
+
+.fa-pause:before {
+ content: "\f04c"; }
+
+.fa-pause-circle:before {
+ content: "\f28b"; }
+
+.fa-paw:before {
+ content: "\f1b0"; }
+
+.fa-paypal:before {
+ content: "\f1ed"; }
+
+.fa-peace:before {
+ content: "\f67c"; }
+
+.fa-pen:before {
+ content: "\f304"; }
+
+.fa-pen-alt:before {
+ content: "\f305"; }
+
+.fa-pen-fancy:before {
+ content: "\f5ac"; }
+
+.fa-pen-nib:before {
+ content: "\f5ad"; }
+
+.fa-pen-square:before {
+ content: "\f14b"; }
+
+.fa-pencil-alt:before {
+ content: "\f303"; }
+
+.fa-pencil-ruler:before {
+ content: "\f5ae"; }
+
+.fa-penny-arcade:before {
+ content: "\f704"; }
+
+.fa-people-carry:before {
+ content: "\f4ce"; }
+
+.fa-pepper-hot:before {
+ content: "\f816"; }
+
+.fa-percent:before {
+ content: "\f295"; }
+
+.fa-percentage:before {
+ content: "\f541"; }
+
+.fa-periscope:before {
+ content: "\f3da"; }
+
+.fa-person-booth:before {
+ content: "\f756"; }
+
+.fa-phabricator:before {
+ content: "\f3db"; }
+
+.fa-phoenix-framework:before {
+ content: "\f3dc"; }
+
+.fa-phoenix-squadron:before {
+ content: "\f511"; }
+
+.fa-phone:before {
+ content: "\f095"; }
+
+.fa-phone-alt:before {
+ content: "\f879"; }
+
+.fa-phone-slash:before {
+ content: "\f3dd"; }
+
+.fa-phone-square:before {
+ content: "\f098"; }
+
+.fa-phone-square-alt:before {
+ content: "\f87b"; }
+
+.fa-phone-volume:before {
+ content: "\f2a0"; }
+
+.fa-photo-video:before {
+ content: "\f87c"; }
+
+.fa-php:before {
+ content: "\f457"; }
+
+.fa-pied-piper:before {
+ content: "\f2ae"; }
+
+.fa-pied-piper-alt:before {
+ content: "\f1a8"; }
+
+.fa-pied-piper-hat:before {
+ content: "\f4e5"; }
+
+.fa-pied-piper-pp:before {
+ content: "\f1a7"; }
+
+.fa-piggy-bank:before {
+ content: "\f4d3"; }
+
+.fa-pills:before {
+ content: "\f484"; }
+
+.fa-pinterest:before {
+ content: "\f0d2"; }
+
+.fa-pinterest-p:before {
+ content: "\f231"; }
+
+.fa-pinterest-square:before {
+ content: "\f0d3"; }
+
+.fa-pizza-slice:before {
+ content: "\f818"; }
+
+.fa-place-of-worship:before {
+ content: "\f67f"; }
+
+.fa-plane:before {
+ content: "\f072"; }
+
+.fa-plane-arrival:before {
+ content: "\f5af"; }
+
+.fa-plane-departure:before {
+ content: "\f5b0"; }
+
+.fa-play:before {
+ content: "\f04b"; }
+
+.fa-play-circle:before {
+ content: "\f144"; }
+
+.fa-playstation:before {
+ content: "\f3df"; }
+
+.fa-plug:before {
+ content: "\f1e6"; }
+
+.fa-plus:before {
+ content: "\f067"; }
+
+.fa-plus-circle:before {
+ content: "\f055"; }
+
+.fa-plus-square:before {
+ content: "\f0fe"; }
+
+.fa-podcast:before {
+ content: "\f2ce"; }
+
+.fa-poll:before {
+ content: "\f681"; }
+
+.fa-poll-h:before {
+ content: "\f682"; }
+
+.fa-poo:before {
+ content: "\f2fe"; }
+
+.fa-poo-storm:before {
+ content: "\f75a"; }
+
+.fa-poop:before {
+ content: "\f619"; }
+
+.fa-portrait:before {
+ content: "\f3e0"; }
+
+.fa-pound-sign:before {
+ content: "\f154"; }
+
+.fa-power-off:before {
+ content: "\f011"; }
+
+.fa-pray:before {
+ content: "\f683"; }
+
+.fa-praying-hands:before {
+ content: "\f684"; }
+
+.fa-prescription:before {
+ content: "\f5b1"; }
+
+.fa-prescription-bottle:before {
+ content: "\f485"; }
+
+.fa-prescription-bottle-alt:before {
+ content: "\f486"; }
+
+.fa-print:before {
+ content: "\f02f"; }
+
+.fa-procedures:before {
+ content: "\f487"; }
+
+.fa-product-hunt:before {
+ content: "\f288"; }
+
+.fa-project-diagram:before {
+ content: "\f542"; }
+
+.fa-pushed:before {
+ content: "\f3e1"; }
+
+.fa-puzzle-piece:before {
+ content: "\f12e"; }
+
+.fa-python:before {
+ content: "\f3e2"; }
+
+.fa-qq:before {
+ content: "\f1d6"; }
+
+.fa-qrcode:before {
+ content: "\f029"; }
+
+.fa-question:before {
+ content: "\f128"; }
+
+.fa-question-circle:before {
+ content: "\f059"; }
+
+.fa-quidditch:before {
+ content: "\f458"; }
+
+.fa-quinscape:before {
+ content: "\f459"; }
+
+.fa-quora:before {
+ content: "\f2c4"; }
+
+.fa-quote-left:before {
+ content: "\f10d"; }
+
+.fa-quote-right:before {
+ content: "\f10e"; }
+
+.fa-quran:before {
+ content: "\f687"; }
+
+.fa-r-project:before {
+ content: "\f4f7"; }
+
+.fa-radiation:before {
+ content: "\f7b9"; }
+
+.fa-radiation-alt:before {
+ content: "\f7ba"; }
+
+.fa-rainbow:before {
+ content: "\f75b"; }
+
+.fa-random:before {
+ content: "\f074"; }
+
+.fa-raspberry-pi:before {
+ content: "\f7bb"; }
+
+.fa-ravelry:before {
+ content: "\f2d9"; }
+
+.fa-react:before {
+ content: "\f41b"; }
+
+.fa-reacteurope:before {
+ content: "\f75d"; }
+
+.fa-readme:before {
+ content: "\f4d5"; }
+
+.fa-rebel:before {
+ content: "\f1d0"; }
+
+.fa-receipt:before {
+ content: "\f543"; }
+
+.fa-recycle:before {
+ content: "\f1b8"; }
+
+.fa-red-river:before {
+ content: "\f3e3"; }
+
+.fa-reddit:before {
+ content: "\f1a1"; }
+
+.fa-reddit-alien:before {
+ content: "\f281"; }
+
+.fa-reddit-square:before {
+ content: "\f1a2"; }
+
+.fa-redhat:before {
+ content: "\f7bc"; }
+
+.fa-redo:before {
+ content: "\f01e"; }
+
+.fa-redo-alt:before {
+ content: "\f2f9"; }
+
+.fa-registered:before {
+ content: "\f25d"; }
+
+.fa-remove-format:before {
+ content: "\f87d"; }
+
+.fa-renren:before {
+ content: "\f18b"; }
+
+.fa-reply:before {
+ content: "\f3e5"; }
+
+.fa-reply-all:before {
+ content: "\f122"; }
+
+.fa-replyd:before {
+ content: "\f3e6"; }
+
+.fa-republican:before {
+ content: "\f75e"; }
+
+.fa-researchgate:before {
+ content: "\f4f8"; }
+
+.fa-resolving:before {
+ content: "\f3e7"; }
+
+.fa-restroom:before {
+ content: "\f7bd"; }
+
+.fa-retweet:before {
+ content: "\f079"; }
+
+.fa-rev:before {
+ content: "\f5b2"; }
+
+.fa-ribbon:before {
+ content: "\f4d6"; }
+
+.fa-ring:before {
+ content: "\f70b"; }
+
+.fa-road:before {
+ content: "\f018"; }
+
+.fa-robot:before {
+ content: "\f544"; }
+
+.fa-rocket:before {
+ content: "\f135"; }
+
+.fa-rocketchat:before {
+ content: "\f3e8"; }
+
+.fa-rockrms:before {
+ content: "\f3e9"; }
+
+.fa-route:before {
+ content: "\f4d7"; }
+
+.fa-rss:before {
+ content: "\f09e"; }
+
+.fa-rss-square:before {
+ content: "\f143"; }
+
+.fa-ruble-sign:before {
+ content: "\f158"; }
+
+.fa-ruler:before {
+ content: "\f545"; }
+
+.fa-ruler-combined:before {
+ content: "\f546"; }
+
+.fa-ruler-horizontal:before {
+ content: "\f547"; }
+
+.fa-ruler-vertical:before {
+ content: "\f548"; }
+
+.fa-running:before {
+ content: "\f70c"; }
+
+.fa-rupee-sign:before {
+ content: "\f156"; }
+
+.fa-sad-cry:before {
+ content: "\f5b3"; }
+
+.fa-sad-tear:before {
+ content: "\f5b4"; }
+
+.fa-safari:before {
+ content: "\f267"; }
+
+.fa-salesforce:before {
+ content: "\f83b"; }
+
+.fa-sass:before {
+ content: "\f41e"; }
+
+.fa-satellite:before {
+ content: "\f7bf"; }
+
+.fa-satellite-dish:before {
+ content: "\f7c0"; }
+
+.fa-save:before {
+ content: "\f0c7"; }
+
+.fa-schlix:before {
+ content: "\f3ea"; }
+
+.fa-school:before {
+ content: "\f549"; }
+
+.fa-screwdriver:before {
+ content: "\f54a"; }
+
+.fa-scribd:before {
+ content: "\f28a"; }
+
+.fa-scroll:before {
+ content: "\f70e"; }
+
+.fa-sd-card:before {
+ content: "\f7c2"; }
+
+.fa-search:before {
+ content: "\f002"; }
+
+.fa-search-dollar:before {
+ content: "\f688"; }
+
+.fa-search-location:before {
+ content: "\f689"; }
+
+.fa-search-minus:before {
+ content: "\f010"; }
+
+.fa-search-plus:before {
+ content: "\f00e"; }
+
+.fa-searchengin:before {
+ content: "\f3eb"; }
+
+.fa-seedling:before {
+ content: "\f4d8"; }
+
+.fa-sellcast:before {
+ content: "\f2da"; }
+
+.fa-sellsy:before {
+ content: "\f213"; }
+
+.fa-server:before {
+ content: "\f233"; }
+
+.fa-servicestack:before {
+ content: "\f3ec"; }
+
+.fa-shapes:before {
+ content: "\f61f"; }
+
+.fa-share:before {
+ content: "\f064"; }
+
+.fa-share-alt:before {
+ content: "\f1e0"; }
+
+.fa-share-alt-square:before {
+ content: "\f1e1"; }
+
+.fa-share-square:before {
+ content: "\f14d"; }
+
+.fa-shekel-sign:before {
+ content: "\f20b"; }
+
+.fa-shield-alt:before {
+ content: "\f3ed"; }
+
+.fa-ship:before {
+ content: "\f21a"; }
+
+.fa-shipping-fast:before {
+ content: "\f48b"; }
+
+.fa-shirtsinbulk:before {
+ content: "\f214"; }
+
+.fa-shoe-prints:before {
+ content: "\f54b"; }
+
+.fa-shopping-bag:before {
+ content: "\f290"; }
+
+.fa-shopping-basket:before {
+ content: "\f291"; }
+
+.fa-shopping-cart:before {
+ content: "\f07a"; }
+
+.fa-shopware:before {
+ content: "\f5b5"; }
+
+.fa-shower:before {
+ content: "\f2cc"; }
+
+.fa-shuttle-van:before {
+ content: "\f5b6"; }
+
+.fa-sign:before {
+ content: "\f4d9"; }
+
+.fa-sign-in-alt:before {
+ content: "\f2f6"; }
+
+.fa-sign-language:before {
+ content: "\f2a7"; }
+
+.fa-sign-out-alt:before {
+ content: "\f2f5"; }
+
+.fa-signal:before {
+ content: "\f012"; }
+
+.fa-signature:before {
+ content: "\f5b7"; }
+
+.fa-sim-card:before {
+ content: "\f7c4"; }
+
+.fa-simplybuilt:before {
+ content: "\f215"; }
+
+.fa-sistrix:before {
+ content: "\f3ee"; }
+
+.fa-sitemap:before {
+ content: "\f0e8"; }
+
+.fa-sith:before {
+ content: "\f512"; }
+
+.fa-skating:before {
+ content: "\f7c5"; }
+
+.fa-sketch:before {
+ content: "\f7c6"; }
+
+.fa-skiing:before {
+ content: "\f7c9"; }
+
+.fa-skiing-nordic:before {
+ content: "\f7ca"; }
+
+.fa-skull:before {
+ content: "\f54c"; }
+
+.fa-skull-crossbones:before {
+ content: "\f714"; }
+
+.fa-skyatlas:before {
+ content: "\f216"; }
+
+.fa-skype:before {
+ content: "\f17e"; }
+
+.fa-slack:before {
+ content: "\f198"; }
+
+.fa-slack-hash:before {
+ content: "\f3ef"; }
+
+.fa-slash:before {
+ content: "\f715"; }
+
+.fa-sleigh:before {
+ content: "\f7cc"; }
+
+.fa-sliders-h:before {
+ content: "\f1de"; }
+
+.fa-slideshare:before {
+ content: "\f1e7"; }
+
+.fa-smile:before {
+ content: "\f118"; }
+
+.fa-smile-beam:before {
+ content: "\f5b8"; }
+
+.fa-smile-wink:before {
+ content: "\f4da"; }
+
+.fa-smog:before {
+ content: "\f75f"; }
+
+.fa-smoking:before {
+ content: "\f48d"; }
+
+.fa-smoking-ban:before {
+ content: "\f54d"; }
+
+.fa-sms:before {
+ content: "\f7cd"; }
+
+.fa-snapchat:before {
+ content: "\f2ab"; }
+
+.fa-snapchat-ghost:before {
+ content: "\f2ac"; }
+
+.fa-snapchat-square:before {
+ content: "\f2ad"; }
+
+.fa-snowboarding:before {
+ content: "\f7ce"; }
+
+.fa-snowflake:before {
+ content: "\f2dc"; }
+
+.fa-snowman:before {
+ content: "\f7d0"; }
+
+.fa-snowplow:before {
+ content: "\f7d2"; }
+
+.fa-socks:before {
+ content: "\f696"; }
+
+.fa-solar-panel:before {
+ content: "\f5ba"; }
+
+.fa-sort:before {
+ content: "\f0dc"; }
+
+.fa-sort-alpha-down:before {
+ content: "\f15d"; }
+
+.fa-sort-alpha-down-alt:before {
+ content: "\f881"; }
+
+.fa-sort-alpha-up:before {
+ content: "\f15e"; }
+
+.fa-sort-alpha-up-alt:before {
+ content: "\f882"; }
+
+.fa-sort-amount-down:before {
+ content: "\f160"; }
+
+.fa-sort-amount-down-alt:before {
+ content: "\f884"; }
+
+.fa-sort-amount-up:before {
+ content: "\f161"; }
+
+.fa-sort-amount-up-alt:before {
+ content: "\f885"; }
+
+.fa-sort-down:before {
+ content: "\f0dd"; }
+
+.fa-sort-numeric-down:before {
+ content: "\f162"; }
+
+.fa-sort-numeric-down-alt:before {
+ content: "\f886"; }
+
+.fa-sort-numeric-up:before {
+ content: "\f163"; }
+
+.fa-sort-numeric-up-alt:before {
+ content: "\f887"; }
+
+.fa-sort-up:before {
+ content: "\f0de"; }
+
+.fa-soundcloud:before {
+ content: "\f1be"; }
+
+.fa-sourcetree:before {
+ content: "\f7d3"; }
+
+.fa-spa:before {
+ content: "\f5bb"; }
+
+.fa-space-shuttle:before {
+ content: "\f197"; }
+
+.fa-speakap:before {
+ content: "\f3f3"; }
+
+.fa-speaker-deck:before {
+ content: "\f83c"; }
+
+.fa-spell-check:before {
+ content: "\f891"; }
+
+.fa-spider:before {
+ content: "\f717"; }
+
+.fa-spinner:before {
+ content: "\f110"; }
+
+.fa-splotch:before {
+ content: "\f5bc"; }
+
+.fa-spotify:before {
+ content: "\f1bc"; }
+
+.fa-spray-can:before {
+ content: "\f5bd"; }
+
+.fa-square:before {
+ content: "\f0c8"; }
+
+.fa-square-full:before {
+ content: "\f45c"; }
+
+.fa-square-root-alt:before {
+ content: "\f698"; }
+
+.fa-squarespace:before {
+ content: "\f5be"; }
+
+.fa-stack-exchange:before {
+ content: "\f18d"; }
+
+.fa-stack-overflow:before {
+ content: "\f16c"; }
+
+.fa-stackpath:before {
+ content: "\f842"; }
+
+.fa-stamp:before {
+ content: "\f5bf"; }
+
+.fa-star:before {
+ content: "\f005"; }
+
+.fa-star-and-crescent:before {
+ content: "\f699"; }
+
+.fa-star-half:before {
+ content: "\f089"; }
+
+.fa-star-half-alt:before {
+ content: "\f5c0"; }
+
+.fa-star-of-david:before {
+ content: "\f69a"; }
+
+.fa-star-of-life:before {
+ content: "\f621"; }
+
+.fa-staylinked:before {
+ content: "\f3f5"; }
+
+.fa-steam:before {
+ content: "\f1b6"; }
+
+.fa-steam-square:before {
+ content: "\f1b7"; }
+
+.fa-steam-symbol:before {
+ content: "\f3f6"; }
+
+.fa-step-backward:before {
+ content: "\f048"; }
+
+.fa-step-forward:before {
+ content: "\f051"; }
+
+.fa-stethoscope:before {
+ content: "\f0f1"; }
+
+.fa-sticker-mule:before {
+ content: "\f3f7"; }
+
+.fa-sticky-note:before {
+ content: "\f249"; }
+
+.fa-stop:before {
+ content: "\f04d"; }
+
+.fa-stop-circle:before {
+ content: "\f28d"; }
+
+.fa-stopwatch:before {
+ content: "\f2f2"; }
+
+.fa-store:before {
+ content: "\f54e"; }
+
+.fa-store-alt:before {
+ content: "\f54f"; }
+
+.fa-strava:before {
+ content: "\f428"; }
+
+.fa-stream:before {
+ content: "\f550"; }
+
+.fa-street-view:before {
+ content: "\f21d"; }
+
+.fa-strikethrough:before {
+ content: "\f0cc"; }
+
+.fa-stripe:before {
+ content: "\f429"; }
+
+.fa-stripe-s:before {
+ content: "\f42a"; }
+
+.fa-stroopwafel:before {
+ content: "\f551"; }
+
+.fa-studiovinari:before {
+ content: "\f3f8"; }
+
+.fa-stumbleupon:before {
+ content: "\f1a4"; }
+
+.fa-stumbleupon-circle:before {
+ content: "\f1a3"; }
+
+.fa-subscript:before {
+ content: "\f12c"; }
+
+.fa-subway:before {
+ content: "\f239"; }
+
+.fa-suitcase:before {
+ content: "\f0f2"; }
+
+.fa-suitcase-rolling:before {
+ content: "\f5c1"; }
+
+.fa-sun:before {
+ content: "\f185"; }
+
+.fa-superpowers:before {
+ content: "\f2dd"; }
+
+.fa-superscript:before {
+ content: "\f12b"; }
+
+.fa-supple:before {
+ content: "\f3f9"; }
+
+.fa-surprise:before {
+ content: "\f5c2"; }
+
+.fa-suse:before {
+ content: "\f7d6"; }
+
+.fa-swatchbook:before {
+ content: "\f5c3"; }
+
+.fa-swimmer:before {
+ content: "\f5c4"; }
+
+.fa-swimming-pool:before {
+ content: "\f5c5"; }
+
+.fa-symfony:before {
+ content: "\f83d"; }
+
+.fa-synagogue:before {
+ content: "\f69b"; }
+
+.fa-sync:before {
+ content: "\f021"; }
+
+.fa-sync-alt:before {
+ content: "\f2f1"; }
+
+.fa-syringe:before {
+ content: "\f48e"; }
+
+.fa-table:before {
+ content: "\f0ce"; }
+
+.fa-table-tennis:before {
+ content: "\f45d"; }
+
+.fa-tablet:before {
+ content: "\f10a"; }
+
+.fa-tablet-alt:before {
+ content: "\f3fa"; }
+
+.fa-tablets:before {
+ content: "\f490"; }
+
+.fa-tachometer-alt:before {
+ content: "\f3fd"; }
+
+.fa-tag:before {
+ content: "\f02b"; }
+
+.fa-tags:before {
+ content: "\f02c"; }
+
+.fa-tape:before {
+ content: "\f4db"; }
+
+.fa-tasks:before {
+ content: "\f0ae"; }
+
+.fa-taxi:before {
+ content: "\f1ba"; }
+
+.fa-teamspeak:before {
+ content: "\f4f9"; }
+
+.fa-teeth:before {
+ content: "\f62e"; }
+
+.fa-teeth-open:before {
+ content: "\f62f"; }
+
+.fa-telegram:before {
+ content: "\f2c6"; }
+
+.fa-telegram-plane:before {
+ content: "\f3fe"; }
+
+.fa-temperature-high:before {
+ content: "\f769"; }
+
+.fa-temperature-low:before {
+ content: "\f76b"; }
+
+.fa-tencent-weibo:before {
+ content: "\f1d5"; }
+
+.fa-tenge:before {
+ content: "\f7d7"; }
+
+.fa-terminal:before {
+ content: "\f120"; }
+
+.fa-text-height:before {
+ content: "\f034"; }
+
+.fa-text-width:before {
+ content: "\f035"; }
+
+.fa-th:before {
+ content: "\f00a"; }
+
+.fa-th-large:before {
+ content: "\f009"; }
+
+.fa-th-list:before {
+ content: "\f00b"; }
+
+.fa-the-red-yeti:before {
+ content: "\f69d"; }
+
+.fa-theater-masks:before {
+ content: "\f630"; }
+
+.fa-themeco:before {
+ content: "\f5c6"; }
+
+.fa-themeisle:before {
+ content: "\f2b2"; }
+
+.fa-thermometer:before {
+ content: "\f491"; }
+
+.fa-thermometer-empty:before {
+ content: "\f2cb"; }
+
+.fa-thermometer-full:before {
+ content: "\f2c7"; }
+
+.fa-thermometer-half:before {
+ content: "\f2c9"; }
+
+.fa-thermometer-quarter:before {
+ content: "\f2ca"; }
+
+.fa-thermometer-three-quarters:before {
+ content: "\f2c8"; }
+
+.fa-think-peaks:before {
+ content: "\f731"; }
+
+.fa-thumbs-down:before {
+ content: "\f165"; }
+
+.fa-thumbs-up:before {
+ content: "\f164"; }
+
+.fa-thumbtack:before {
+ content: "\f08d"; }
+
+.fa-ticket-alt:before {
+ content: "\f3ff"; }
+
+.fa-times:before {
+ content: "\f00d"; }
+
+.fa-times-circle:before {
+ content: "\f057"; }
+
+.fa-tint:before {
+ content: "\f043"; }
+
+.fa-tint-slash:before {
+ content: "\f5c7"; }
+
+.fa-tired:before {
+ content: "\f5c8"; }
+
+.fa-toggle-off:before {
+ content: "\f204"; }
+
+.fa-toggle-on:before {
+ content: "\f205"; }
+
+.fa-toilet:before {
+ content: "\f7d8"; }
+
+.fa-toilet-paper:before {
+ content: "\f71e"; }
+
+.fa-toolbox:before {
+ content: "\f552"; }
+
+.fa-tools:before {
+ content: "\f7d9"; }
+
+.fa-tooth:before {
+ content: "\f5c9"; }
+
+.fa-torah:before {
+ content: "\f6a0"; }
+
+.fa-torii-gate:before {
+ content: "\f6a1"; }
+
+.fa-tractor:before {
+ content: "\f722"; }
+
+.fa-trade-federation:before {
+ content: "\f513"; }
+
+.fa-trademark:before {
+ content: "\f25c"; }
+
+.fa-traffic-light:before {
+ content: "\f637"; }
+
+.fa-train:before {
+ content: "\f238"; }
+
+.fa-tram:before {
+ content: "\f7da"; }
+
+.fa-transgender:before {
+ content: "\f224"; }
+
+.fa-transgender-alt:before {
+ content: "\f225"; }
+
+.fa-trash:before {
+ content: "\f1f8"; }
+
+.fa-trash-alt:before {
+ content: "\f2ed"; }
+
+.fa-trash-restore:before {
+ content: "\f829"; }
+
+.fa-trash-restore-alt:before {
+ content: "\f82a"; }
+
+.fa-tree:before {
+ content: "\f1bb"; }
+
+.fa-trello:before {
+ content: "\f181"; }
+
+.fa-tripadvisor:before {
+ content: "\f262"; }
+
+.fa-trophy:before {
+ content: "\f091"; }
+
+.fa-truck:before {
+ content: "\f0d1"; }
+
+.fa-truck-loading:before {
+ content: "\f4de"; }
+
+.fa-truck-monster:before {
+ content: "\f63b"; }
+
+.fa-truck-moving:before {
+ content: "\f4df"; }
+
+.fa-truck-pickup:before {
+ content: "\f63c"; }
+
+.fa-tshirt:before {
+ content: "\f553"; }
+
+.fa-tty:before {
+ content: "\f1e4"; }
+
+.fa-tumblr:before {
+ content: "\f173"; }
+
+.fa-tumblr-square:before {
+ content: "\f174"; }
+
+.fa-tv:before {
+ content: "\f26c"; }
+
+.fa-twitch:before {
+ content: "\f1e8"; }
+
+.fa-twitter:before {
+ content: "\f099"; }
+
+.fa-twitter-square:before {
+ content: "\f081"; }
+
+.fa-typo3:before {
+ content: "\f42b"; }
+
+.fa-uber:before {
+ content: "\f402"; }
+
+.fa-ubuntu:before {
+ content: "\f7df"; }
+
+.fa-uikit:before {
+ content: "\f403"; }
+
+.fa-umbrella:before {
+ content: "\f0e9"; }
+
+.fa-umbrella-beach:before {
+ content: "\f5ca"; }
+
+.fa-underline:before {
+ content: "\f0cd"; }
+
+.fa-undo:before {
+ content: "\f0e2"; }
+
+.fa-undo-alt:before {
+ content: "\f2ea"; }
+
+.fa-uniregistry:before {
+ content: "\f404"; }
+
+.fa-universal-access:before {
+ content: "\f29a"; }
+
+.fa-university:before {
+ content: "\f19c"; }
+
+.fa-unlink:before {
+ content: "\f127"; }
+
+.fa-unlock:before {
+ content: "\f09c"; }
+
+.fa-unlock-alt:before {
+ content: "\f13e"; }
+
+.fa-untappd:before {
+ content: "\f405"; }
+
+.fa-upload:before {
+ content: "\f093"; }
+
+.fa-ups:before {
+ content: "\f7e0"; }
+
+.fa-usb:before {
+ content: "\f287"; }
+
+.fa-user:before {
+ content: "\f007"; }
+
+.fa-user-alt:before {
+ content: "\f406"; }
+
+.fa-user-alt-slash:before {
+ content: "\f4fa"; }
+
+.fa-user-astronaut:before {
+ content: "\f4fb"; }
+
+.fa-user-check:before {
+ content: "\f4fc"; }
+
+.fa-user-circle:before {
+ content: "\f2bd"; }
+
+.fa-user-clock:before {
+ content: "\f4fd"; }
+
+.fa-user-cog:before {
+ content: "\f4fe"; }
+
+.fa-user-edit:before {
+ content: "\f4ff"; }
+
+.fa-user-friends:before {
+ content: "\f500"; }
+
+.fa-user-graduate:before {
+ content: "\f501"; }
+
+.fa-user-injured:before {
+ content: "\f728"; }
+
+.fa-user-lock:before {
+ content: "\f502"; }
+
+.fa-user-md:before {
+ content: "\f0f0"; }
+
+.fa-user-minus:before {
+ content: "\f503"; }
+
+.fa-user-ninja:before {
+ content: "\f504"; }
+
+.fa-user-nurse:before {
+ content: "\f82f"; }
+
+.fa-user-plus:before {
+ content: "\f234"; }
+
+.fa-user-secret:before {
+ content: "\f21b"; }
+
+.fa-user-shield:before {
+ content: "\f505"; }
+
+.fa-user-slash:before {
+ content: "\f506"; }
+
+.fa-user-tag:before {
+ content: "\f507"; }
+
+.fa-user-tie:before {
+ content: "\f508"; }
+
+.fa-user-times:before {
+ content: "\f235"; }
+
+.fa-users:before {
+ content: "\f0c0"; }
+
+.fa-users-cog:before {
+ content: "\f509"; }
+
+.fa-usps:before {
+ content: "\f7e1"; }
+
+.fa-ussunnah:before {
+ content: "\f407"; }
+
+.fa-utensil-spoon:before {
+ content: "\f2e5"; }
+
+.fa-utensils:before {
+ content: "\f2e7"; }
+
+.fa-vaadin:before {
+ content: "\f408"; }
+
+.fa-vector-square:before {
+ content: "\f5cb"; }
+
+.fa-venus:before {
+ content: "\f221"; }
+
+.fa-venus-double:before {
+ content: "\f226"; }
+
+.fa-venus-mars:before {
+ content: "\f228"; }
+
+.fa-viacoin:before {
+ content: "\f237"; }
+
+.fa-viadeo:before {
+ content: "\f2a9"; }
+
+.fa-viadeo-square:before {
+ content: "\f2aa"; }
+
+.fa-vial:before {
+ content: "\f492"; }
+
+.fa-vials:before {
+ content: "\f493"; }
+
+.fa-viber:before {
+ content: "\f409"; }
+
+.fa-video:before {
+ content: "\f03d"; }
+
+.fa-video-slash:before {
+ content: "\f4e2"; }
+
+.fa-vihara:before {
+ content: "\f6a7"; }
+
+.fa-vimeo:before {
+ content: "\f40a"; }
+
+.fa-vimeo-square:before {
+ content: "\f194"; }
+
+.fa-vimeo-v:before {
+ content: "\f27d"; }
+
+.fa-vine:before {
+ content: "\f1ca"; }
+
+.fa-vk:before {
+ content: "\f189"; }
+
+.fa-vnv:before {
+ content: "\f40b"; }
+
+.fa-voicemail:before {
+ content: "\f897"; }
+
+.fa-volleyball-ball:before {
+ content: "\f45f"; }
+
+.fa-volume-down:before {
+ content: "\f027"; }
+
+.fa-volume-mute:before {
+ content: "\f6a9"; }
+
+.fa-volume-off:before {
+ content: "\f026"; }
+
+.fa-volume-up:before {
+ content: "\f028"; }
+
+.fa-vote-yea:before {
+ content: "\f772"; }
+
+.fa-vr-cardboard:before {
+ content: "\f729"; }
+
+.fa-vuejs:before {
+ content: "\f41f"; }
+
+.fa-walking:before {
+ content: "\f554"; }
+
+.fa-wallet:before {
+ content: "\f555"; }
+
+.fa-warehouse:before {
+ content: "\f494"; }
+
+.fa-water:before {
+ content: "\f773"; }
+
+.fa-wave-square:before {
+ content: "\f83e"; }
+
+.fa-waze:before {
+ content: "\f83f"; }
+
+.fa-weebly:before {
+ content: "\f5cc"; }
+
+.fa-weibo:before {
+ content: "\f18a"; }
+
+.fa-weight:before {
+ content: "\f496"; }
+
+.fa-weight-hanging:before {
+ content: "\f5cd"; }
+
+.fa-weixin:before {
+ content: "\f1d7"; }
+
+.fa-whatsapp:before {
+ content: "\f232"; }
+
+.fa-whatsapp-square:before {
+ content: "\f40c"; }
+
+.fa-wheelchair:before {
+ content: "\f193"; }
+
+.fa-whmcs:before {
+ content: "\f40d"; }
+
+.fa-wifi:before {
+ content: "\f1eb"; }
+
+.fa-wikipedia-w:before {
+ content: "\f266"; }
+
+.fa-wind:before {
+ content: "\f72e"; }
+
+.fa-window-close:before {
+ content: "\f410"; }
+
+.fa-window-maximize:before {
+ content: "\f2d0"; }
+
+.fa-window-minimize:before {
+ content: "\f2d1"; }
+
+.fa-window-restore:before {
+ content: "\f2d2"; }
+
+.fa-windows:before {
+ content: "\f17a"; }
+
+.fa-wine-bottle:before {
+ content: "\f72f"; }
+
+.fa-wine-glass:before {
+ content: "\f4e3"; }
+
+.fa-wine-glass-alt:before {
+ content: "\f5ce"; }
+
+.fa-wix:before {
+ content: "\f5cf"; }
+
+.fa-wizards-of-the-coast:before {
+ content: "\f730"; }
+
+.fa-wolf-pack-battalion:before {
+ content: "\f514"; }
+
+.fa-won-sign:before {
+ content: "\f159"; }
+
+.fa-wordpress:before {
+ content: "\f19a"; }
+
+.fa-wordpress-simple:before {
+ content: "\f411"; }
+
+.fa-wpbeginner:before {
+ content: "\f297"; }
+
+.fa-wpexplorer:before {
+ content: "\f2de"; }
+
+.fa-wpforms:before {
+ content: "\f298"; }
+
+.fa-wpressr:before {
+ content: "\f3e4"; }
+
+.fa-wrench:before {
+ content: "\f0ad"; }
+
+.fa-x-ray:before {
+ content: "\f497"; }
+
+.fa-xbox:before {
+ content: "\f412"; }
+
+.fa-xing:before {
+ content: "\f168"; }
+
+.fa-xing-square:before {
+ content: "\f169"; }
+
+.fa-y-combinator:before {
+ content: "\f23b"; }
+
+.fa-yahoo:before {
+ content: "\f19e"; }
+
+.fa-yammer:before {
+ content: "\f840"; }
+
+.fa-yandex:before {
+ content: "\f413"; }
+
+.fa-yandex-international:before {
+ content: "\f414"; }
+
+.fa-yarn:before {
+ content: "\f7e3"; }
+
+.fa-yelp:before {
+ content: "\f1e9"; }
+
+.fa-yen-sign:before {
+ content: "\f157"; }
+
+.fa-yin-yang:before {
+ content: "\f6ad"; }
+
+.fa-yoast:before {
+ content: "\f2b1"; }
+
+.fa-youtube:before {
+ content: "\f167"; }
+
+.fa-youtube-square:before {
+ content: "\f431"; }
+
+.fa-zhihu:before {
+ content: "\f63f"; }
+
+.sr-only {
+ border: 0;
+ clip: rect(0, 0, 0, 0);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ width: 1px; }
+
+.sr-only-focusable:active, .sr-only-focusable:focus {
+ clip: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ position: static;
+ width: auto; }
diff --git a/static/assets/fonts/fontawesome/css/fontawesome.min.css b/static/assets/fonts/fontawesome/css/fontawesome.min.css
new file mode 100644
index 0000000..2119440
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/fontawesome.min.css
@@ -0,0 +1,5 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-wizard:before{content:"\f6e8"}.fa-haykal:before{content:"\f666"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}
\ No newline at end of file
diff --git a/static/assets/fonts/fontawesome/css/regular.css b/static/assets/fonts/fontawesome/css/regular.css
new file mode 100644
index 0000000..bc5237e
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/regular.css
@@ -0,0 +1,15 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+@font-face {
+ font-family: 'Font Awesome 5 Free';
+ font-style: normal;
+ font-weight: 400;
+ font-display: auto;
+ src: url("../webfonts/fa-regular-400.eot");
+ src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
+
+.far {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
diff --git a/static/assets/fonts/fontawesome/css/regular.min.css b/static/assets/fonts/fontawesome/css/regular.min.css
new file mode 100644
index 0000000..d1f7e53
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/regular.min.css
@@ -0,0 +1,5 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:"Font Awesome 5 Free";font-weight:400}
\ No newline at end of file
diff --git a/static/assets/fonts/fontawesome/css/solid.css b/static/assets/fonts/fontawesome/css/solid.css
new file mode 100644
index 0000000..11eff7f
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/solid.css
@@ -0,0 +1,16 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+@font-face {
+ font-family: 'Font Awesome 5 Free';
+ font-style: normal;
+ font-weight: 900;
+ font-display: auto;
+ src: url("../webfonts/fa-solid-900.eot");
+ src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
+
+.fa,
+.fas {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 900; }
diff --git a/static/assets/fonts/fontawesome/css/solid.min.css b/static/assets/fonts/fontawesome/css/solid.min.css
new file mode 100644
index 0000000..f19304b
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/solid.min.css
@@ -0,0 +1,5 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:auto;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Free";font-weight:900}
\ No newline at end of file
diff --git a/static/assets/fonts/fontawesome/css/svg-with-js.css b/static/assets/fonts/fontawesome/css/svg-with-js.css
new file mode 100644
index 0000000..afc09ee
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/svg-with-js.css
@@ -0,0 +1,371 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+svg:not(:root).svg-inline--fa {
+ overflow: visible; }
+
+.svg-inline--fa {
+ display: inline-block;
+ font-size: inherit;
+ height: 1em;
+ overflow: visible;
+ vertical-align: -.125em; }
+ .svg-inline--fa.fa-lg {
+ vertical-align: -.225em; }
+ .svg-inline--fa.fa-w-1 {
+ width: 0.0625em; }
+ .svg-inline--fa.fa-w-2 {
+ width: 0.125em; }
+ .svg-inline--fa.fa-w-3 {
+ width: 0.1875em; }
+ .svg-inline--fa.fa-w-4 {
+ width: 0.25em; }
+ .svg-inline--fa.fa-w-5 {
+ width: 0.3125em; }
+ .svg-inline--fa.fa-w-6 {
+ width: 0.375em; }
+ .svg-inline--fa.fa-w-7 {
+ width: 0.4375em; }
+ .svg-inline--fa.fa-w-8 {
+ width: 0.5em; }
+ .svg-inline--fa.fa-w-9 {
+ width: 0.5625em; }
+ .svg-inline--fa.fa-w-10 {
+ width: 0.625em; }
+ .svg-inline--fa.fa-w-11 {
+ width: 0.6875em; }
+ .svg-inline--fa.fa-w-12 {
+ width: 0.75em; }
+ .svg-inline--fa.fa-w-13 {
+ width: 0.8125em; }
+ .svg-inline--fa.fa-w-14 {
+ width: 0.875em; }
+ .svg-inline--fa.fa-w-15 {
+ width: 0.9375em; }
+ .svg-inline--fa.fa-w-16 {
+ width: 1em; }
+ .svg-inline--fa.fa-w-17 {
+ width: 1.0625em; }
+ .svg-inline--fa.fa-w-18 {
+ width: 1.125em; }
+ .svg-inline--fa.fa-w-19 {
+ width: 1.1875em; }
+ .svg-inline--fa.fa-w-20 {
+ width: 1.25em; }
+ .svg-inline--fa.fa-pull-left {
+ margin-right: .3em;
+ width: auto; }
+ .svg-inline--fa.fa-pull-right {
+ margin-left: .3em;
+ width: auto; }
+ .svg-inline--fa.fa-border {
+ height: 1.5em; }
+ .svg-inline--fa.fa-li {
+ width: 2em; }
+ .svg-inline--fa.fa-fw {
+ width: 1.25em; }
+
+.fa-layers svg.svg-inline--fa {
+ bottom: 0;
+ left: 0;
+ margin: auto;
+ position: absolute;
+ right: 0;
+ top: 0; }
+
+.fa-layers {
+ display: inline-block;
+ height: 1em;
+ position: relative;
+ text-align: center;
+ vertical-align: -.125em;
+ width: 1em; }
+ .fa-layers svg.svg-inline--fa {
+ -webkit-transform-origin: center center;
+ transform-origin: center center; }
+
+.fa-layers-text, .fa-layers-counter {
+ display: inline-block;
+ position: absolute;
+ text-align: center; }
+
+.fa-layers-text {
+ left: 50%;
+ top: 50%;
+ -webkit-transform: translate(-50%, -50%);
+ transform: translate(-50%, -50%);
+ -webkit-transform-origin: center center;
+ transform-origin: center center; }
+
+.fa-layers-counter {
+ background-color: #ff253a;
+ border-radius: 1em;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ color: #fff;
+ height: 1.5em;
+ line-height: 1;
+ max-width: 5em;
+ min-width: 1.5em;
+ overflow: hidden;
+ padding: .25em;
+ right: 0;
+ text-overflow: ellipsis;
+ top: 0;
+ -webkit-transform: scale(0.25);
+ transform: scale(0.25);
+ -webkit-transform-origin: top right;
+ transform-origin: top right; }
+
+.fa-layers-bottom-right {
+ bottom: 0;
+ right: 0;
+ top: auto;
+ -webkit-transform: scale(0.25);
+ transform: scale(0.25);
+ -webkit-transform-origin: bottom right;
+ transform-origin: bottom right; }
+
+.fa-layers-bottom-left {
+ bottom: 0;
+ left: 0;
+ right: auto;
+ top: auto;
+ -webkit-transform: scale(0.25);
+ transform: scale(0.25);
+ -webkit-transform-origin: bottom left;
+ transform-origin: bottom left; }
+
+.fa-layers-top-right {
+ right: 0;
+ top: 0;
+ -webkit-transform: scale(0.25);
+ transform: scale(0.25);
+ -webkit-transform-origin: top right;
+ transform-origin: top right; }
+
+.fa-layers-top-left {
+ left: 0;
+ right: auto;
+ top: 0;
+ -webkit-transform: scale(0.25);
+ transform: scale(0.25);
+ -webkit-transform-origin: top left;
+ transform-origin: top left; }
+
+.fa-lg {
+ font-size: 1.33333em;
+ line-height: 0.75em;
+ vertical-align: -.0667em; }
+
+.fa-xs {
+ font-size: .75em; }
+
+.fa-sm {
+ font-size: .875em; }
+
+.fa-1x {
+ font-size: 1em; }
+
+.fa-2x {
+ font-size: 2em; }
+
+.fa-3x {
+ font-size: 3em; }
+
+.fa-4x {
+ font-size: 4em; }
+
+.fa-5x {
+ font-size: 5em; }
+
+.fa-6x {
+ font-size: 6em; }
+
+.fa-7x {
+ font-size: 7em; }
+
+.fa-8x {
+ font-size: 8em; }
+
+.fa-9x {
+ font-size: 9em; }
+
+.fa-10x {
+ font-size: 10em; }
+
+.fa-fw {
+ text-align: center;
+ width: 1.25em; }
+
+.fa-ul {
+ list-style-type: none;
+ margin-left: 2.5em;
+ padding-left: 0; }
+ .fa-ul > li {
+ position: relative; }
+
+.fa-li {
+ left: -2em;
+ position: absolute;
+ text-align: center;
+ width: 2em;
+ line-height: inherit; }
+
+.fa-border {
+ border: solid 0.08em #eee;
+ border-radius: .1em;
+ padding: .2em .25em .15em; }
+
+.fa-pull-left {
+ float: left; }
+
+.fa-pull-right {
+ float: right; }
+
+.fa.fa-pull-left,
+.fas.fa-pull-left,
+.far.fa-pull-left,
+.fal.fa-pull-left,
+.fab.fa-pull-left {
+ margin-right: .3em; }
+
+.fa.fa-pull-right,
+.fas.fa-pull-right,
+.far.fa-pull-right,
+.fal.fa-pull-right,
+.fab.fa-pull-right {
+ margin-left: .3em; }
+
+.fa-spin {
+ -webkit-animation: fa-spin 2s infinite linear;
+ animation: fa-spin 2s infinite linear; }
+
+.fa-pulse {
+ -webkit-animation: fa-spin 1s infinite steps(8);
+ animation: fa-spin 1s infinite steps(8); }
+
+@-webkit-keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg); }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg); } }
+
+@keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg); }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg); } }
+
+.fa-rotate-90 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
+ -webkit-transform: rotate(90deg);
+ transform: rotate(90deg); }
+
+.fa-rotate-180 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
+ -webkit-transform: rotate(180deg);
+ transform: rotate(180deg); }
+
+.fa-rotate-270 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
+ -webkit-transform: rotate(270deg);
+ transform: rotate(270deg); }
+
+.fa-flip-horizontal {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
+ -webkit-transform: scale(-1, 1);
+ transform: scale(-1, 1); }
+
+.fa-flip-vertical {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
+ -webkit-transform: scale(1, -1);
+ transform: scale(1, -1); }
+
+.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
+ -webkit-transform: scale(-1, -1);
+ transform: scale(-1, -1); }
+
+:root .fa-rotate-90,
+:root .fa-rotate-180,
+:root .fa-rotate-270,
+:root .fa-flip-horizontal,
+:root .fa-flip-vertical,
+:root .fa-flip-both {
+ -webkit-filter: none;
+ filter: none; }
+
+.fa-stack {
+ display: inline-block;
+ height: 2em;
+ position: relative;
+ width: 2.5em; }
+
+.fa-stack-1x,
+.fa-stack-2x {
+ bottom: 0;
+ left: 0;
+ margin: auto;
+ position: absolute;
+ right: 0;
+ top: 0; }
+
+.svg-inline--fa.fa-stack-1x {
+ height: 1em;
+ width: 1.25em; }
+
+.svg-inline--fa.fa-stack-2x {
+ height: 2em;
+ width: 2.5em; }
+
+.fa-inverse {
+ color: #fff; }
+
+.sr-only {
+ border: 0;
+ clip: rect(0, 0, 0, 0);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ width: 1px; }
+
+.sr-only-focusable:active, .sr-only-focusable:focus {
+ clip: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ position: static;
+ width: auto; }
+
+.svg-inline--fa .fa-primary {
+ fill: var(--fa-primary-color, currentColor);
+ opacity: 1;
+ opacity: var(--fa-primary-opacity, 1); }
+
+.svg-inline--fa .fa-secondary {
+ fill: var(--fa-secondary-color, currentColor);
+ opacity: 0.4;
+ opacity: var(--fa-secondary-opacity, 0.4); }
+
+.svg-inline--fa.fa-swap-opacity .fa-primary {
+ opacity: 0.4;
+ opacity: var(--fa-secondary-opacity, 0.4); }
+
+.svg-inline--fa.fa-swap-opacity .fa-secondary {
+ opacity: 1;
+ opacity: var(--fa-primary-opacity, 1); }
+
+.svg-inline--fa mask .fa-primary,
+.svg-inline--fa mask .fa-secondary {
+ fill: black; }
+
+.fad.fa-inverse {
+ color: #fff; }
diff --git a/static/assets/fonts/fontawesome/css/svg-with-js.min.css b/static/assets/fonts/fontawesome/css/svg-with-js.min.css
new file mode 100644
index 0000000..5320921
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/svg-with-js.min.css
@@ -0,0 +1,5 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+.svg-inline--fa,svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa .fa-secondary,.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fad.fa-inverse{color:#fff}
\ No newline at end of file
diff --git a/static/assets/fonts/fontawesome/css/v4-shims.css b/static/assets/fonts/fontawesome/css/v4-shims.css
new file mode 100644
index 0000000..c2f0e8a
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/v4-shims.css
@@ -0,0 +1,2166 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+.fa.fa-glass:before {
+ content: "\f000"; }
+
+.fa.fa-meetup {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-star-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-star-o:before {
+ content: "\f005"; }
+
+.fa.fa-remove:before {
+ content: "\f00d"; }
+
+.fa.fa-close:before {
+ content: "\f00d"; }
+
+.fa.fa-gear:before {
+ content: "\f013"; }
+
+.fa.fa-trash-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-trash-o:before {
+ content: "\f2ed"; }
+
+.fa.fa-file-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-o:before {
+ content: "\f15b"; }
+
+.fa.fa-clock-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-clock-o:before {
+ content: "\f017"; }
+
+.fa.fa-arrow-circle-o-down {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-arrow-circle-o-down:before {
+ content: "\f358"; }
+
+.fa.fa-arrow-circle-o-up {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-arrow-circle-o-up:before {
+ content: "\f35b"; }
+
+.fa.fa-play-circle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-play-circle-o:before {
+ content: "\f144"; }
+
+.fa.fa-repeat:before {
+ content: "\f01e"; }
+
+.fa.fa-rotate-right:before {
+ content: "\f01e"; }
+
+.fa.fa-refresh:before {
+ content: "\f021"; }
+
+.fa.fa-list-alt {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-dedent:before {
+ content: "\f03b"; }
+
+.fa.fa-video-camera:before {
+ content: "\f03d"; }
+
+.fa.fa-picture-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-picture-o:before {
+ content: "\f03e"; }
+
+.fa.fa-photo {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-photo:before {
+ content: "\f03e"; }
+
+.fa.fa-image {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-image:before {
+ content: "\f03e"; }
+
+.fa.fa-pencil:before {
+ content: "\f303"; }
+
+.fa.fa-map-marker:before {
+ content: "\f3c5"; }
+
+.fa.fa-pencil-square-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-pencil-square-o:before {
+ content: "\f044"; }
+
+.fa.fa-share-square-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-share-square-o:before {
+ content: "\f14d"; }
+
+.fa.fa-check-square-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-check-square-o:before {
+ content: "\f14a"; }
+
+.fa.fa-arrows:before {
+ content: "\f0b2"; }
+
+.fa.fa-times-circle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-times-circle-o:before {
+ content: "\f057"; }
+
+.fa.fa-check-circle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-check-circle-o:before {
+ content: "\f058"; }
+
+.fa.fa-mail-forward:before {
+ content: "\f064"; }
+
+.fa.fa-eye {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-eye-slash {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-warning:before {
+ content: "\f071"; }
+
+.fa.fa-calendar:before {
+ content: "\f073"; }
+
+.fa.fa-arrows-v:before {
+ content: "\f338"; }
+
+.fa.fa-arrows-h:before {
+ content: "\f337"; }
+
+.fa.fa-bar-chart {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-bar-chart:before {
+ content: "\f080"; }
+
+.fa.fa-bar-chart-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-bar-chart-o:before {
+ content: "\f080"; }
+
+.fa.fa-twitter-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-facebook-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-gears:before {
+ content: "\f085"; }
+
+.fa.fa-thumbs-o-up {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-thumbs-o-up:before {
+ content: "\f164"; }
+
+.fa.fa-thumbs-o-down {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-thumbs-o-down:before {
+ content: "\f165"; }
+
+.fa.fa-heart-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-heart-o:before {
+ content: "\f004"; }
+
+.fa.fa-sign-out:before {
+ content: "\f2f5"; }
+
+.fa.fa-linkedin-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-linkedin-square:before {
+ content: "\f08c"; }
+
+.fa.fa-thumb-tack:before {
+ content: "\f08d"; }
+
+.fa.fa-external-link:before {
+ content: "\f35d"; }
+
+.fa.fa-sign-in:before {
+ content: "\f2f6"; }
+
+.fa.fa-github-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-lemon-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-lemon-o:before {
+ content: "\f094"; }
+
+.fa.fa-square-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-square-o:before {
+ content: "\f0c8"; }
+
+.fa.fa-bookmark-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-bookmark-o:before {
+ content: "\f02e"; }
+
+.fa.fa-twitter {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-facebook {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-facebook:before {
+ content: "\f39e"; }
+
+.fa.fa-facebook-f {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-facebook-f:before {
+ content: "\f39e"; }
+
+.fa.fa-github {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-credit-card {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-feed:before {
+ content: "\f09e"; }
+
+.fa.fa-hdd-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hdd-o:before {
+ content: "\f0a0"; }
+
+.fa.fa-hand-o-right {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-o-right:before {
+ content: "\f0a4"; }
+
+.fa.fa-hand-o-left {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-o-left:before {
+ content: "\f0a5"; }
+
+.fa.fa-hand-o-up {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-o-up:before {
+ content: "\f0a6"; }
+
+.fa.fa-hand-o-down {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-o-down:before {
+ content: "\f0a7"; }
+
+.fa.fa-arrows-alt:before {
+ content: "\f31e"; }
+
+.fa.fa-group:before {
+ content: "\f0c0"; }
+
+.fa.fa-chain:before {
+ content: "\f0c1"; }
+
+.fa.fa-scissors:before {
+ content: "\f0c4"; }
+
+.fa.fa-files-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-files-o:before {
+ content: "\f0c5"; }
+
+.fa.fa-floppy-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-floppy-o:before {
+ content: "\f0c7"; }
+
+.fa.fa-navicon:before {
+ content: "\f0c9"; }
+
+.fa.fa-reorder:before {
+ content: "\f0c9"; }
+
+.fa.fa-pinterest {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-pinterest-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-google-plus-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-google-plus {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-google-plus:before {
+ content: "\f0d5"; }
+
+.fa.fa-money {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-money:before {
+ content: "\f3d1"; }
+
+.fa.fa-unsorted:before {
+ content: "\f0dc"; }
+
+.fa.fa-sort-desc:before {
+ content: "\f0dd"; }
+
+.fa.fa-sort-asc:before {
+ content: "\f0de"; }
+
+.fa.fa-linkedin {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-linkedin:before {
+ content: "\f0e1"; }
+
+.fa.fa-rotate-left:before {
+ content: "\f0e2"; }
+
+.fa.fa-legal:before {
+ content: "\f0e3"; }
+
+.fa.fa-tachometer:before {
+ content: "\f3fd"; }
+
+.fa.fa-dashboard:before {
+ content: "\f3fd"; }
+
+.fa.fa-comment-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-comment-o:before {
+ content: "\f075"; }
+
+.fa.fa-comments-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-comments-o:before {
+ content: "\f086"; }
+
+.fa.fa-flash:before {
+ content: "\f0e7"; }
+
+.fa.fa-clipboard {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-paste {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-paste:before {
+ content: "\f328"; }
+
+.fa.fa-lightbulb-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-lightbulb-o:before {
+ content: "\f0eb"; }
+
+.fa.fa-exchange:before {
+ content: "\f362"; }
+
+.fa.fa-cloud-download:before {
+ content: "\f381"; }
+
+.fa.fa-cloud-upload:before {
+ content: "\f382"; }
+
+.fa.fa-bell-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-bell-o:before {
+ content: "\f0f3"; }
+
+.fa.fa-cutlery:before {
+ content: "\f2e7"; }
+
+.fa.fa-file-text-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-text-o:before {
+ content: "\f15c"; }
+
+.fa.fa-building-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-building-o:before {
+ content: "\f1ad"; }
+
+.fa.fa-hospital-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hospital-o:before {
+ content: "\f0f8"; }
+
+.fa.fa-tablet:before {
+ content: "\f3fa"; }
+
+.fa.fa-mobile:before {
+ content: "\f3cd"; }
+
+.fa.fa-mobile-phone:before {
+ content: "\f3cd"; }
+
+.fa.fa-circle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-circle-o:before {
+ content: "\f111"; }
+
+.fa.fa-mail-reply:before {
+ content: "\f3e5"; }
+
+.fa.fa-github-alt {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-folder-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-folder-o:before {
+ content: "\f07b"; }
+
+.fa.fa-folder-open-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-folder-open-o:before {
+ content: "\f07c"; }
+
+.fa.fa-smile-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-smile-o:before {
+ content: "\f118"; }
+
+.fa.fa-frown-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-frown-o:before {
+ content: "\f119"; }
+
+.fa.fa-meh-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-meh-o:before {
+ content: "\f11a"; }
+
+.fa.fa-keyboard-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-keyboard-o:before {
+ content: "\f11c"; }
+
+.fa.fa-flag-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-flag-o:before {
+ content: "\f024"; }
+
+.fa.fa-mail-reply-all:before {
+ content: "\f122"; }
+
+.fa.fa-star-half-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-star-half-o:before {
+ content: "\f089"; }
+
+.fa.fa-star-half-empty {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-star-half-empty:before {
+ content: "\f089"; }
+
+.fa.fa-star-half-full {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-star-half-full:before {
+ content: "\f089"; }
+
+.fa.fa-code-fork:before {
+ content: "\f126"; }
+
+.fa.fa-chain-broken:before {
+ content: "\f127"; }
+
+.fa.fa-shield:before {
+ content: "\f3ed"; }
+
+.fa.fa-calendar-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-calendar-o:before {
+ content: "\f133"; }
+
+.fa.fa-maxcdn {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-html5 {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-css3 {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-ticket:before {
+ content: "\f3ff"; }
+
+.fa.fa-minus-square-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-minus-square-o:before {
+ content: "\f146"; }
+
+.fa.fa-level-up:before {
+ content: "\f3bf"; }
+
+.fa.fa-level-down:before {
+ content: "\f3be"; }
+
+.fa.fa-pencil-square:before {
+ content: "\f14b"; }
+
+.fa.fa-external-link-square:before {
+ content: "\f360"; }
+
+.fa.fa-compass {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-caret-square-o-down {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-caret-square-o-down:before {
+ content: "\f150"; }
+
+.fa.fa-toggle-down {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-toggle-down:before {
+ content: "\f150"; }
+
+.fa.fa-caret-square-o-up {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-caret-square-o-up:before {
+ content: "\f151"; }
+
+.fa.fa-toggle-up {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-toggle-up:before {
+ content: "\f151"; }
+
+.fa.fa-caret-square-o-right {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-caret-square-o-right:before {
+ content: "\f152"; }
+
+.fa.fa-toggle-right {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-toggle-right:before {
+ content: "\f152"; }
+
+.fa.fa-eur:before {
+ content: "\f153"; }
+
+.fa.fa-euro:before {
+ content: "\f153"; }
+
+.fa.fa-gbp:before {
+ content: "\f154"; }
+
+.fa.fa-usd:before {
+ content: "\f155"; }
+
+.fa.fa-dollar:before {
+ content: "\f155"; }
+
+.fa.fa-inr:before {
+ content: "\f156"; }
+
+.fa.fa-rupee:before {
+ content: "\f156"; }
+
+.fa.fa-jpy:before {
+ content: "\f157"; }
+
+.fa.fa-cny:before {
+ content: "\f157"; }
+
+.fa.fa-rmb:before {
+ content: "\f157"; }
+
+.fa.fa-yen:before {
+ content: "\f157"; }
+
+.fa.fa-rub:before {
+ content: "\f158"; }
+
+.fa.fa-ruble:before {
+ content: "\f158"; }
+
+.fa.fa-rouble:before {
+ content: "\f158"; }
+
+.fa.fa-krw:before {
+ content: "\f159"; }
+
+.fa.fa-won:before {
+ content: "\f159"; }
+
+.fa.fa-btc {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-bitcoin {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-bitcoin:before {
+ content: "\f15a"; }
+
+.fa.fa-file-text:before {
+ content: "\f15c"; }
+
+.fa.fa-sort-alpha-asc:before {
+ content: "\f15d"; }
+
+.fa.fa-sort-alpha-desc:before {
+ content: "\f881"; }
+
+.fa.fa-sort-amount-asc:before {
+ content: "\f160"; }
+
+.fa.fa-sort-amount-desc:before {
+ content: "\f884"; }
+
+.fa.fa-sort-numeric-asc:before {
+ content: "\f162"; }
+
+.fa.fa-sort-numeric-desc:before {
+ content: "\f886"; }
+
+.fa.fa-youtube-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-youtube {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-xing {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-xing-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-youtube-play {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-youtube-play:before {
+ content: "\f167"; }
+
+.fa.fa-dropbox {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-stack-overflow {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-instagram {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-flickr {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-adn {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-bitbucket {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-bitbucket-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-bitbucket-square:before {
+ content: "\f171"; }
+
+.fa.fa-tumblr {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-tumblr-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-long-arrow-down:before {
+ content: "\f309"; }
+
+.fa.fa-long-arrow-up:before {
+ content: "\f30c"; }
+
+.fa.fa-long-arrow-left:before {
+ content: "\f30a"; }
+
+.fa.fa-long-arrow-right:before {
+ content: "\f30b"; }
+
+.fa.fa-apple {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-windows {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-android {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-linux {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-dribbble {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-skype {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-foursquare {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-trello {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-gratipay {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-gittip {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-gittip:before {
+ content: "\f184"; }
+
+.fa.fa-sun-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-sun-o:before {
+ content: "\f185"; }
+
+.fa.fa-moon-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-moon-o:before {
+ content: "\f186"; }
+
+.fa.fa-vk {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-weibo {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-renren {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-pagelines {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-stack-exchange {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-arrow-circle-o-right {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-arrow-circle-o-right:before {
+ content: "\f35a"; }
+
+.fa.fa-arrow-circle-o-left {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-arrow-circle-o-left:before {
+ content: "\f359"; }
+
+.fa.fa-caret-square-o-left {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-caret-square-o-left:before {
+ content: "\f191"; }
+
+.fa.fa-toggle-left {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-toggle-left:before {
+ content: "\f191"; }
+
+.fa.fa-dot-circle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-dot-circle-o:before {
+ content: "\f192"; }
+
+.fa.fa-vimeo-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-try:before {
+ content: "\f195"; }
+
+.fa.fa-turkish-lira:before {
+ content: "\f195"; }
+
+.fa.fa-plus-square-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-plus-square-o:before {
+ content: "\f0fe"; }
+
+.fa.fa-slack {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-wordpress {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-openid {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-institution:before {
+ content: "\f19c"; }
+
+.fa.fa-bank:before {
+ content: "\f19c"; }
+
+.fa.fa-mortar-board:before {
+ content: "\f19d"; }
+
+.fa.fa-yahoo {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-google {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-reddit {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-reddit-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-stumbleupon-circle {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-stumbleupon {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-delicious {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-digg {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-pied-piper-pp {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-pied-piper-alt {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-drupal {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-joomla {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-spoon:before {
+ content: "\f2e5"; }
+
+.fa.fa-behance {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-behance-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-steam {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-steam-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-automobile:before {
+ content: "\f1b9"; }
+
+.fa.fa-cab:before {
+ content: "\f1ba"; }
+
+.fa.fa-envelope-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-envelope-o:before {
+ content: "\f0e0"; }
+
+.fa.fa-deviantart {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-soundcloud {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-file-pdf-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-pdf-o:before {
+ content: "\f1c1"; }
+
+.fa.fa-file-word-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-word-o:before {
+ content: "\f1c2"; }
+
+.fa.fa-file-excel-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-excel-o:before {
+ content: "\f1c3"; }
+
+.fa.fa-file-powerpoint-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-powerpoint-o:before {
+ content: "\f1c4"; }
+
+.fa.fa-file-image-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-image-o:before {
+ content: "\f1c5"; }
+
+.fa.fa-file-photo-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-photo-o:before {
+ content: "\f1c5"; }
+
+.fa.fa-file-picture-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-picture-o:before {
+ content: "\f1c5"; }
+
+.fa.fa-file-archive-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-archive-o:before {
+ content: "\f1c6"; }
+
+.fa.fa-file-zip-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-zip-o:before {
+ content: "\f1c6"; }
+
+.fa.fa-file-audio-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-audio-o:before {
+ content: "\f1c7"; }
+
+.fa.fa-file-sound-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-sound-o:before {
+ content: "\f1c7"; }
+
+.fa.fa-file-video-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-video-o:before {
+ content: "\f1c8"; }
+
+.fa.fa-file-movie-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-movie-o:before {
+ content: "\f1c8"; }
+
+.fa.fa-file-code-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-file-code-o:before {
+ content: "\f1c9"; }
+
+.fa.fa-vine {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-codepen {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-jsfiddle {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-life-ring {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-life-bouy {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-life-bouy:before {
+ content: "\f1cd"; }
+
+.fa.fa-life-buoy {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-life-buoy:before {
+ content: "\f1cd"; }
+
+.fa.fa-life-saver {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-life-saver:before {
+ content: "\f1cd"; }
+
+.fa.fa-support {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-support:before {
+ content: "\f1cd"; }
+
+.fa.fa-circle-o-notch:before {
+ content: "\f1ce"; }
+
+.fa.fa-rebel {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-ra {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-ra:before {
+ content: "\f1d0"; }
+
+.fa.fa-resistance {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-resistance:before {
+ content: "\f1d0"; }
+
+.fa.fa-empire {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-ge {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-ge:before {
+ content: "\f1d1"; }
+
+.fa.fa-git-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-git {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-hacker-news {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-y-combinator-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-y-combinator-square:before {
+ content: "\f1d4"; }
+
+.fa.fa-yc-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-yc-square:before {
+ content: "\f1d4"; }
+
+.fa.fa-tencent-weibo {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-qq {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-weixin {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-wechat {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-wechat:before {
+ content: "\f1d7"; }
+
+.fa.fa-send:before {
+ content: "\f1d8"; }
+
+.fa.fa-paper-plane-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-paper-plane-o:before {
+ content: "\f1d8"; }
+
+.fa.fa-send-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-send-o:before {
+ content: "\f1d8"; }
+
+.fa.fa-circle-thin {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-circle-thin:before {
+ content: "\f111"; }
+
+.fa.fa-header:before {
+ content: "\f1dc"; }
+
+.fa.fa-sliders:before {
+ content: "\f1de"; }
+
+.fa.fa-futbol-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-futbol-o:before {
+ content: "\f1e3"; }
+
+.fa.fa-soccer-ball-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-soccer-ball-o:before {
+ content: "\f1e3"; }
+
+.fa.fa-slideshare {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-twitch {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-yelp {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-newspaper-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-newspaper-o:before {
+ content: "\f1ea"; }
+
+.fa.fa-paypal {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-google-wallet {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-cc-visa {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-cc-mastercard {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-cc-discover {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-cc-amex {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-cc-paypal {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-cc-stripe {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-bell-slash-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-bell-slash-o:before {
+ content: "\f1f6"; }
+
+.fa.fa-trash:before {
+ content: "\f2ed"; }
+
+.fa.fa-copyright {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-eyedropper:before {
+ content: "\f1fb"; }
+
+.fa.fa-area-chart:before {
+ content: "\f1fe"; }
+
+.fa.fa-pie-chart:before {
+ content: "\f200"; }
+
+.fa.fa-line-chart:before {
+ content: "\f201"; }
+
+.fa.fa-lastfm {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-lastfm-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-ioxhost {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-angellist {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-cc {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-cc:before {
+ content: "\f20a"; }
+
+.fa.fa-ils:before {
+ content: "\f20b"; }
+
+.fa.fa-shekel:before {
+ content: "\f20b"; }
+
+.fa.fa-sheqel:before {
+ content: "\f20b"; }
+
+.fa.fa-meanpath {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-meanpath:before {
+ content: "\f2b4"; }
+
+.fa.fa-buysellads {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-connectdevelop {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-dashcube {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-forumbee {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-leanpub {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-sellsy {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-shirtsinbulk {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-simplybuilt {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-skyatlas {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-diamond {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-diamond:before {
+ content: "\f3a5"; }
+
+.fa.fa-intersex:before {
+ content: "\f224"; }
+
+.fa.fa-facebook-official {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-facebook-official:before {
+ content: "\f09a"; }
+
+.fa.fa-pinterest-p {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-whatsapp {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-hotel:before {
+ content: "\f236"; }
+
+.fa.fa-viacoin {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-medium {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-y-combinator {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-yc {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-yc:before {
+ content: "\f23b"; }
+
+.fa.fa-optin-monster {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-opencart {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-expeditedssl {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-battery-4:before {
+ content: "\f240"; }
+
+.fa.fa-battery:before {
+ content: "\f240"; }
+
+.fa.fa-battery-3:before {
+ content: "\f241"; }
+
+.fa.fa-battery-2:before {
+ content: "\f242"; }
+
+.fa.fa-battery-1:before {
+ content: "\f243"; }
+
+.fa.fa-battery-0:before {
+ content: "\f244"; }
+
+.fa.fa-object-group {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-object-ungroup {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-sticky-note-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-sticky-note-o:before {
+ content: "\f249"; }
+
+.fa.fa-cc-jcb {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-cc-diners-club {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-clone {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hourglass-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hourglass-o:before {
+ content: "\f254"; }
+
+.fa.fa-hourglass-1:before {
+ content: "\f251"; }
+
+.fa.fa-hourglass-2:before {
+ content: "\f252"; }
+
+.fa.fa-hourglass-3:before {
+ content: "\f253"; }
+
+.fa.fa-hand-rock-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-rock-o:before {
+ content: "\f255"; }
+
+.fa.fa-hand-grab-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-grab-o:before {
+ content: "\f255"; }
+
+.fa.fa-hand-paper-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-paper-o:before {
+ content: "\f256"; }
+
+.fa.fa-hand-stop-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-stop-o:before {
+ content: "\f256"; }
+
+.fa.fa-hand-scissors-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-scissors-o:before {
+ content: "\f257"; }
+
+.fa.fa-hand-lizard-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-lizard-o:before {
+ content: "\f258"; }
+
+.fa.fa-hand-spock-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-spock-o:before {
+ content: "\f259"; }
+
+.fa.fa-hand-pointer-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-pointer-o:before {
+ content: "\f25a"; }
+
+.fa.fa-hand-peace-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-hand-peace-o:before {
+ content: "\f25b"; }
+
+.fa.fa-registered {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-creative-commons {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-gg {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-gg-circle {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-tripadvisor {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-odnoklassniki {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-odnoklassniki-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-get-pocket {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-wikipedia-w {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-safari {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-chrome {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-firefox {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-opera {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-internet-explorer {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-television:before {
+ content: "\f26c"; }
+
+.fa.fa-contao {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-500px {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-amazon {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-calendar-plus-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-calendar-plus-o:before {
+ content: "\f271"; }
+
+.fa.fa-calendar-minus-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-calendar-minus-o:before {
+ content: "\f272"; }
+
+.fa.fa-calendar-times-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-calendar-times-o:before {
+ content: "\f273"; }
+
+.fa.fa-calendar-check-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-calendar-check-o:before {
+ content: "\f274"; }
+
+.fa.fa-map-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-map-o:before {
+ content: "\f279"; }
+
+.fa.fa-commenting:before {
+ content: "\f4ad"; }
+
+.fa.fa-commenting-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-commenting-o:before {
+ content: "\f4ad"; }
+
+.fa.fa-houzz {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-vimeo {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-vimeo:before {
+ content: "\f27d"; }
+
+.fa.fa-black-tie {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-fonticons {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-reddit-alien {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-edge {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-credit-card-alt:before {
+ content: "\f09d"; }
+
+.fa.fa-codiepie {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-modx {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-fort-awesome {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-usb {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-product-hunt {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-mixcloud {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-scribd {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-pause-circle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-pause-circle-o:before {
+ content: "\f28b"; }
+
+.fa.fa-stop-circle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-stop-circle-o:before {
+ content: "\f28d"; }
+
+.fa.fa-bluetooth {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-bluetooth-b {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-gitlab {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-wpbeginner {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-wpforms {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-envira {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-wheelchair-alt {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-wheelchair-alt:before {
+ content: "\f368"; }
+
+.fa.fa-question-circle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-question-circle-o:before {
+ content: "\f059"; }
+
+.fa.fa-volume-control-phone:before {
+ content: "\f2a0"; }
+
+.fa.fa-asl-interpreting:before {
+ content: "\f2a3"; }
+
+.fa.fa-deafness:before {
+ content: "\f2a4"; }
+
+.fa.fa-hard-of-hearing:before {
+ content: "\f2a4"; }
+
+.fa.fa-glide {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-glide-g {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-signing:before {
+ content: "\f2a7"; }
+
+.fa.fa-viadeo {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-viadeo-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-snapchat {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-snapchat-ghost {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-snapchat-square {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-pied-piper {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-first-order {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-yoast {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-themeisle {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-google-plus-official {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-google-plus-official:before {
+ content: "\f2b3"; }
+
+.fa.fa-google-plus-circle {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-google-plus-circle:before {
+ content: "\f2b3"; }
+
+.fa.fa-font-awesome {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-fa {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-fa:before {
+ content: "\f2b4"; }
+
+.fa.fa-handshake-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-handshake-o:before {
+ content: "\f2b5"; }
+
+.fa.fa-envelope-open-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-envelope-open-o:before {
+ content: "\f2b6"; }
+
+.fa.fa-linode {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-address-book-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-address-book-o:before {
+ content: "\f2b9"; }
+
+.fa.fa-vcard:before {
+ content: "\f2bb"; }
+
+.fa.fa-address-card-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-address-card-o:before {
+ content: "\f2bb"; }
+
+.fa.fa-vcard-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-vcard-o:before {
+ content: "\f2bb"; }
+
+.fa.fa-user-circle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-user-circle-o:before {
+ content: "\f2bd"; }
+
+.fa.fa-user-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-user-o:before {
+ content: "\f007"; }
+
+.fa.fa-id-badge {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-drivers-license:before {
+ content: "\f2c2"; }
+
+.fa.fa-id-card-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-id-card-o:before {
+ content: "\f2c2"; }
+
+.fa.fa-drivers-license-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-drivers-license-o:before {
+ content: "\f2c2"; }
+
+.fa.fa-quora {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-free-code-camp {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-telegram {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-thermometer-4:before {
+ content: "\f2c7"; }
+
+.fa.fa-thermometer:before {
+ content: "\f2c7"; }
+
+.fa.fa-thermometer-3:before {
+ content: "\f2c8"; }
+
+.fa.fa-thermometer-2:before {
+ content: "\f2c9"; }
+
+.fa.fa-thermometer-1:before {
+ content: "\f2ca"; }
+
+.fa.fa-thermometer-0:before {
+ content: "\f2cb"; }
+
+.fa.fa-bathtub:before {
+ content: "\f2cd"; }
+
+.fa.fa-s15:before {
+ content: "\f2cd"; }
+
+.fa.fa-window-maximize {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-window-restore {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-times-rectangle:before {
+ content: "\f410"; }
+
+.fa.fa-window-close-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-window-close-o:before {
+ content: "\f410"; }
+
+.fa.fa-times-rectangle-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-times-rectangle-o:before {
+ content: "\f410"; }
+
+.fa.fa-bandcamp {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-grav {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-etsy {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-imdb {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-ravelry {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-eercast {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-eercast:before {
+ content: "\f2da"; }
+
+.fa.fa-snowflake-o {
+ font-family: 'Font Awesome 5 Free';
+ font-weight: 400; }
+
+.fa.fa-snowflake-o:before {
+ content: "\f2dc"; }
+
+.fa.fa-superpowers {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-wpexplorer {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
+
+.fa.fa-spotify {
+ font-family: 'Font Awesome 5 Brands';
+ font-weight: 400; }
diff --git a/static/assets/fonts/fontawesome/css/v4-shims.min.css b/static/assets/fonts/fontawesome/css/v4-shims.min.css
new file mode 100644
index 0000000..a2a9845
--- /dev/null
+++ b/static/assets/fonts/fontawesome/css/v4-shims.min.css
@@ -0,0 +1,5 @@
+/*!
+ * Font Awesome Free 5.10.1 by @fontawesome - https://fontawesome.com
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
+ */
+.fa.fa-glass:before{content:"\f000"}.fa.fa-meetup{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-star-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-o:before{content:"\f005"}.fa.fa-close:before,.fa.fa-remove:before{content:"\f00d"}.fa.fa-gear:before{content:"\f013"}.fa.fa-trash-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-trash-o:before{content:"\f2ed"}.fa.fa-file-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-o:before{content:"\f15b"}.fa.fa-clock-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-clock-o:before{content:"\f017"}.fa.fa-arrow-circle-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-down:before{content:"\f358"}.fa.fa-arrow-circle-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-up:before{content:"\f35b"}.fa.fa-play-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-play-circle-o:before{content:"\f144"}.fa.fa-repeat:before,.fa.fa-rotate-right:before{content:"\f01e"}.fa.fa-refresh:before{content:"\f021"}.fa.fa-list-alt{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-dedent:before{content:"\f03b"}.fa.fa-video-camera:before{content:"\f03d"}.fa.fa-picture-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-picture-o:before{content:"\f03e"}.fa.fa-photo{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-photo:before{content:"\f03e"}.fa.fa-image{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-image:before{content:"\f03e"}.fa.fa-pencil:before{content:"\f303"}.fa.fa-map-marker:before{content:"\f3c5"}.fa.fa-pencil-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-pencil-square-o:before{content:"\f044"}.fa.fa-share-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-share-square-o:before{content:"\f14d"}.fa.fa-check-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-check-square-o:before{content:"\f14a"}.fa.fa-arrows:before{content:"\f0b2"}.fa.fa-times-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-times-circle-o:before{content:"\f057"}.fa.fa-check-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-check-circle-o:before{content:"\f058"}.fa.fa-mail-forward:before{content:"\f064"}.fa.fa-eye,.fa.fa-eye-slash{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-warning:before{content:"\f071"}.fa.fa-calendar:before{content:"\f073"}.fa.fa-arrows-v:before{content:"\f338"}.fa.fa-arrows-h:before{content:"\f337"}.fa.fa-bar-chart{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bar-chart:before{content:"\f080"}.fa.fa-bar-chart-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bar-chart-o:before{content:"\f080"}.fa.fa-facebook-square,.fa.fa-twitter-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-gears:before{content:"\f085"}.fa.fa-thumbs-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-thumbs-o-up:before{content:"\f164"}.fa.fa-thumbs-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-thumbs-o-down:before{content:"\f165"}.fa.fa-heart-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-heart-o:before{content:"\f004"}.fa.fa-sign-out:before{content:"\f2f5"}.fa.fa-linkedin-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-linkedin-square:before{content:"\f08c"}.fa.fa-thumb-tack:before{content:"\f08d"}.fa.fa-external-link:before{content:"\f35d"}.fa.fa-sign-in:before{content:"\f2f6"}.fa.fa-github-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-lemon-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-lemon-o:before{content:"\f094"}.fa.fa-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-square-o:before{content:"\f0c8"}.fa.fa-bookmark-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bookmark-o:before{content:"\f02e"}.fa.fa-facebook,.fa.fa-twitter{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-facebook:before{content:"\f39e"}.fa.fa-facebook-f{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-facebook-f:before{content:"\f39e"}.fa.fa-github{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-credit-card{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-feed:before{content:"\f09e"}.fa.fa-hdd-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hdd-o:before{content:"\f0a0"}.fa.fa-hand-o-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-right:before{content:"\f0a4"}.fa.fa-hand-o-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-left:before{content:"\f0a5"}.fa.fa-hand-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-up:before{content:"\f0a6"}.fa.fa-hand-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-down:before{content:"\f0a7"}.fa.fa-arrows-alt:before{content:"\f31e"}.fa.fa-group:before{content:"\f0c0"}.fa.fa-chain:before{content:"\f0c1"}.fa.fa-scissors:before{content:"\f0c4"}.fa.fa-files-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-files-o:before{content:"\f0c5"}.fa.fa-floppy-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-floppy-o:before{content:"\f0c7"}.fa.fa-navicon:before,.fa.fa-reorder:before{content:"\f0c9"}.fa.fa-google-plus,.fa.fa-google-plus-square,.fa.fa-pinterest,.fa.fa-pinterest-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-google-plus:before{content:"\f0d5"}.fa.fa-money{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-money:before{content:"\f3d1"}.fa.fa-unsorted:before{content:"\f0dc"}.fa.fa-sort-desc:before{content:"\f0dd"}.fa.fa-sort-asc:before{content:"\f0de"}.fa.fa-linkedin{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-linkedin:before{content:"\f0e1"}.fa.fa-rotate-left:before{content:"\f0e2"}.fa.fa-legal:before{content:"\f0e3"}.fa.fa-dashboard:before,.fa.fa-tachometer:before{content:"\f3fd"}.fa.fa-comment-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-comment-o:before{content:"\f075"}.fa.fa-comments-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-comments-o:before{content:"\f086"}.fa.fa-flash:before{content:"\f0e7"}.fa.fa-clipboard,.fa.fa-paste{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-paste:before{content:"\f328"}.fa.fa-lightbulb-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-lightbulb-o:before{content:"\f0eb"}.fa.fa-exchange:before{content:"\f362"}.fa.fa-cloud-download:before{content:"\f381"}.fa.fa-cloud-upload:before{content:"\f382"}.fa.fa-bell-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bell-o:before{content:"\f0f3"}.fa.fa-cutlery:before{content:"\f2e7"}.fa.fa-file-text-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-text-o:before{content:"\f15c"}.fa.fa-building-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-building-o:before{content:"\f1ad"}.fa.fa-hospital-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hospital-o:before{content:"\f0f8"}.fa.fa-tablet:before{content:"\f3fa"}.fa.fa-mobile-phone:before,.fa.fa-mobile:before{content:"\f3cd"}.fa.fa-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-circle-o:before{content:"\f111"}.fa.fa-mail-reply:before{content:"\f3e5"}.fa.fa-github-alt{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-folder-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-folder-o:before{content:"\f07b"}.fa.fa-folder-open-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-folder-open-o:before{content:"\f07c"}.fa.fa-smile-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-smile-o:before{content:"\f118"}.fa.fa-frown-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-frown-o:before{content:"\f119"}.fa.fa-meh-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-meh-o:before{content:"\f11a"}.fa.fa-keyboard-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-keyboard-o:before{content:"\f11c"}.fa.fa-flag-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-flag-o:before{content:"\f024"}.fa.fa-mail-reply-all:before{content:"\f122"}.fa.fa-star-half-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-half-o:before{content:"\f089"}.fa.fa-star-half-empty{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-half-empty:before{content:"\f089"}.fa.fa-star-half-full{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-half-full:before{content:"\f089"}.fa.fa-code-fork:before{content:"\f126"}.fa.fa-chain-broken:before{content:"\f127"}.fa.fa-shield:before{content:"\f3ed"}.fa.fa-calendar-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-o:before{content:"\f133"}.fa.fa-css3,.fa.fa-html5,.fa.fa-maxcdn{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-ticket:before{content:"\f3ff"}.fa.fa-minus-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-minus-square-o:before{content:"\f146"}.fa.fa-level-up:before{content:"\f3bf"}.fa.fa-level-down:before{content:"\f3be"}.fa.fa-pencil-square:before{content:"\f14b"}.fa.fa-external-link-square:before{content:"\f360"}.fa.fa-compass{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-down:before{content:"\f150"}.fa.fa-toggle-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-down:before{content:"\f150"}.fa.fa-caret-square-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-up:before{content:"\f151"}.fa.fa-toggle-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-up:before{content:"\f151"}.fa.fa-caret-square-o-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-right:before{content:"\f152"}.fa.fa-toggle-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-right:before{content:"\f152"}.fa.fa-eur:before,.fa.fa-euro:before{content:"\f153"}.fa.fa-gbp:before{content:"\f154"}.fa.fa-dollar:before,.fa.fa-usd:before{content:"\f155"}.fa.fa-inr:before,.fa.fa-rupee:before{content:"\f156"}.fa.fa-cny:before,.fa.fa-jpy:before,.fa.fa-rmb:before,.fa.fa-yen:before{content:"\f157"}.fa.fa-rouble:before,.fa.fa-rub:before,.fa.fa-ruble:before{content:"\f158"}.fa.fa-krw:before,.fa.fa-won:before{content:"\f159"}.fa.fa-bitcoin,.fa.fa-btc{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bitcoin:before{content:"\f15a"}.fa.fa-file-text:before{content:"\f15c"}.fa.fa-sort-alpha-asc:before{content:"\f15d"}.fa.fa-sort-alpha-desc:before{content:"\f881"}.fa.fa-sort-amount-asc:before{content:"\f160"}.fa.fa-sort-amount-desc:before{content:"\f884"}.fa.fa-sort-numeric-asc:before{content:"\f162"}.fa.fa-sort-numeric-desc:before{content:"\f886"}.fa.fa-xing,.fa.fa-xing-square,.fa.fa-youtube,.fa.fa-youtube-play,.fa.fa-youtube-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-youtube-play:before{content:"\f167"}.fa.fa-adn,.fa.fa-bitbucket,.fa.fa-bitbucket-square,.fa.fa-dropbox,.fa.fa-flickr,.fa.fa-instagram,.fa.fa-stack-overflow{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bitbucket-square:before{content:"\f171"}.fa.fa-tumblr,.fa.fa-tumblr-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-long-arrow-down:before{content:"\f309"}.fa.fa-long-arrow-up:before{content:"\f30c"}.fa.fa-long-arrow-left:before{content:"\f30a"}.fa.fa-long-arrow-right:before{content:"\f30b"}.fa.fa-android,.fa.fa-apple,.fa.fa-dribbble,.fa.fa-foursquare,.fa.fa-gittip,.fa.fa-gratipay,.fa.fa-linux,.fa.fa-skype,.fa.fa-trello,.fa.fa-windows{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-gittip:before{content:"\f184"}.fa.fa-sun-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-sun-o:before{content:"\f185"}.fa.fa-moon-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-moon-o:before{content:"\f186"}.fa.fa-pagelines,.fa.fa-renren,.fa.fa-stack-exchange,.fa.fa-vk,.fa.fa-weibo{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-arrow-circle-o-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-right:before{content:"\f35a"}.fa.fa-arrow-circle-o-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-left:before{content:"\f359"}.fa.fa-caret-square-o-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-left:before{content:"\f191"}.fa.fa-toggle-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-left:before{content:"\f191"}.fa.fa-dot-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-dot-circle-o:before{content:"\f192"}.fa.fa-vimeo-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-try:before,.fa.fa-turkish-lira:before{content:"\f195"}.fa.fa-plus-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-plus-square-o:before{content:"\f0fe"}.fa.fa-openid,.fa.fa-slack,.fa.fa-wordpress{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bank:before,.fa.fa-institution:before{content:"\f19c"}.fa.fa-mortar-board:before{content:"\f19d"}.fa.fa-delicious,.fa.fa-digg,.fa.fa-drupal,.fa.fa-google,.fa.fa-joomla,.fa.fa-pied-piper-alt,.fa.fa-pied-piper-pp,.fa.fa-reddit,.fa.fa-reddit-square,.fa.fa-stumbleupon,.fa.fa-stumbleupon-circle,.fa.fa-yahoo{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-spoon:before{content:"\f2e5"}.fa.fa-behance,.fa.fa-behance-square,.fa.fa-steam,.fa.fa-steam-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-automobile:before{content:"\f1b9"}.fa.fa-cab:before{content:"\f1ba"}.fa.fa-envelope-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-envelope-o:before{content:"\f0e0"}.fa.fa-deviantart,.fa.fa-soundcloud{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-file-pdf-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-pdf-o:before{content:"\f1c1"}.fa.fa-file-word-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-word-o:before{content:"\f1c2"}.fa.fa-file-excel-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-excel-o:before{content:"\f1c3"}.fa.fa-file-powerpoint-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-powerpoint-o:before{content:"\f1c4"}.fa.fa-file-image-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-image-o:before{content:"\f1c5"}.fa.fa-file-photo-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-photo-o:before{content:"\f1c5"}.fa.fa-file-picture-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-picture-o:before{content:"\f1c5"}.fa.fa-file-archive-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-archive-o:before{content:"\f1c6"}.fa.fa-file-zip-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-zip-o:before{content:"\f1c6"}.fa.fa-file-audio-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-audio-o:before{content:"\f1c7"}.fa.fa-file-sound-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-sound-o:before{content:"\f1c7"}.fa.fa-file-video-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-video-o:before{content:"\f1c8"}.fa.fa-file-movie-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-movie-o:before{content:"\f1c8"}.fa.fa-file-code-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-code-o:before{content:"\f1c9"}.fa.fa-codepen,.fa.fa-jsfiddle,.fa.fa-vine{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-life-bouy,.fa.fa-life-ring{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-life-bouy:before{content:"\f1cd"}.fa.fa-life-buoy{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-life-buoy:before{content:"\f1cd"}.fa.fa-life-saver{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-life-saver:before{content:"\f1cd"}.fa.fa-support{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-support:before{content:"\f1cd"}.fa.fa-circle-o-notch:before{content:"\f1ce"}.fa.fa-ra,.fa.fa-rebel{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-ra:before{content:"\f1d0"}.fa.fa-resistance{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-resistance:before{content:"\f1d0"}.fa.fa-empire,.fa.fa-ge{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-ge:before{content:"\f1d1"}.fa.fa-git,.fa.fa-git-square,.fa.fa-hacker-news,.fa.fa-y-combinator-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-y-combinator-square:before{content:"\f1d4"}.fa.fa-yc-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-yc-square:before{content:"\f1d4"}.fa.fa-qq,.fa.fa-tencent-weibo,.fa.fa-wechat,.fa.fa-weixin{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-wechat:before{content:"\f1d7"}.fa.fa-send:before{content:"\f1d8"}.fa.fa-paper-plane-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-paper-plane-o:before{content:"\f1d8"}.fa.fa-send-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-send-o:before{content:"\f1d8"}.fa.fa-circle-thin{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-circle-thin:before{content:"\f111"}.fa.fa-header:before{content:"\f1dc"}.fa.fa-sliders:before{content:"\f1de"}.fa.fa-futbol-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-futbol-o:before{content:"\f1e3"}.fa.fa-soccer-ball-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-soccer-ball-o:before{content:"\f1e3"}.fa.fa-slideshare,.fa.fa-twitch,.fa.fa-yelp{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-newspaper-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-newspaper-o:before{content:"\f1ea"}.fa.fa-cc-amex,.fa.fa-cc-discover,.fa.fa-cc-mastercard,.fa.fa-cc-paypal,.fa.fa-cc-stripe,.fa.fa-cc-visa,.fa.fa-google-wallet,.fa.fa-paypal{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bell-slash-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bell-slash-o:before{content:"\f1f6"}.fa.fa-trash:before{content:"\f2ed"}.fa.fa-copyright{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-eyedropper:before{content:"\f1fb"}.fa.fa-area-chart:before{content:"\f1fe"}.fa.fa-pie-chart:before{content:"\f200"}.fa.fa-line-chart:before{content:"\f201"}.fa.fa-angellist,.fa.fa-ioxhost,.fa.fa-lastfm,.fa.fa-lastfm-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-cc{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-cc:before{content:"\f20a"}.fa.fa-ils:before,.fa.fa-shekel:before,.fa.fa-sheqel:before{content:"\f20b"}.fa.fa-meanpath{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-meanpath:before{content:"\f2b4"}.fa.fa-buysellads,.fa.fa-connectdevelop,.fa.fa-dashcube,.fa.fa-forumbee,.fa.fa-leanpub,.fa.fa-sellsy,.fa.fa-shirtsinbulk,.fa.fa-simplybuilt,.fa.fa-skyatlas{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-diamond{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-diamond:before{content:"\f3a5"}.fa.fa-intersex:before{content:"\f224"}.fa.fa-facebook-official{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-facebook-official:before{content:"\f09a"}.fa.fa-pinterest-p,.fa.fa-whatsapp{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-hotel:before{content:"\f236"}.fa.fa-medium,.fa.fa-viacoin,.fa.fa-y-combinator,.fa.fa-yc{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-yc:before{content:"\f23b"}.fa.fa-expeditedssl,.fa.fa-opencart,.fa.fa-optin-monster{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-battery-4:before,.fa.fa-battery:before{content:"\f240"}.fa.fa-battery-3:before{content:"\f241"}.fa.fa-battery-2:before{content:"\f242"}.fa.fa-battery-1:before{content:"\f243"}.fa.fa-battery-0:before{content:"\f244"}.fa.fa-object-group,.fa.fa-object-ungroup,.fa.fa-sticky-note-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-sticky-note-o:before{content:"\f249"}.fa.fa-cc-diners-club,.fa.fa-cc-jcb{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-clone,.fa.fa-hourglass-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hourglass-o:before{content:"\f254"}.fa.fa-hourglass-1:before{content:"\f251"}.fa.fa-hourglass-2:before{content:"\f252"}.fa.fa-hourglass-3:before{content:"\f253"}.fa.fa-hand-rock-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-rock-o:before{content:"\f255"}.fa.fa-hand-grab-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-grab-o:before{content:"\f255"}.fa.fa-hand-paper-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-paper-o:before{content:"\f256"}.fa.fa-hand-stop-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-stop-o:before{content:"\f256"}.fa.fa-hand-scissors-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-scissors-o:before{content:"\f257"}.fa.fa-hand-lizard-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-lizard-o:before{content:"\f258"}.fa.fa-hand-spock-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-spock-o:before{content:"\f259"}.fa.fa-hand-pointer-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-pointer-o:before{content:"\f25a"}.fa.fa-hand-peace-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-peace-o:before{content:"\f25b"}.fa.fa-registered{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-chrome,.fa.fa-creative-commons,.fa.fa-firefox,.fa.fa-get-pocket,.fa.fa-gg,.fa.fa-gg-circle,.fa.fa-internet-explorer,.fa.fa-odnoklassniki,.fa.fa-odnoklassniki-square,.fa.fa-opera,.fa.fa-safari,.fa.fa-tripadvisor,.fa.fa-wikipedia-w{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-television:before{content:"\f26c"}.fa.fa-500px,.fa.fa-amazon,.fa.fa-contao{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-calendar-plus-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-plus-o:before{content:"\f271"}.fa.fa-calendar-minus-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-minus-o:before{content:"\f272"}.fa.fa-calendar-times-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-times-o:before{content:"\f273"}.fa.fa-calendar-check-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-check-o:before{content:"\f274"}.fa.fa-map-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-map-o:before{content:"\f279"}.fa.fa-commenting:before{content:"\f4ad"}.fa.fa-commenting-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-commenting-o:before{content:"\f4ad"}.fa.fa-houzz,.fa.fa-vimeo{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-vimeo:before{content:"\f27d"}.fa.fa-black-tie,.fa.fa-edge,.fa.fa-fonticons,.fa.fa-reddit-alien{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-credit-card-alt:before{content:"\f09d"}.fa.fa-codiepie,.fa.fa-fort-awesome,.fa.fa-mixcloud,.fa.fa-modx,.fa.fa-product-hunt,.fa.fa-scribd,.fa.fa-usb{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-pause-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-pause-circle-o:before{content:"\f28b"}.fa.fa-stop-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-stop-circle-o:before{content:"\f28d"}.fa.fa-bluetooth,.fa.fa-bluetooth-b,.fa.fa-envira,.fa.fa-gitlab,.fa.fa-wheelchair-alt,.fa.fa-wpbeginner,.fa.fa-wpforms{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-wheelchair-alt:before{content:"\f368"}.fa.fa-question-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-question-circle-o:before{content:"\f059"}.fa.fa-volume-control-phone:before{content:"\f2a0"}.fa.fa-asl-interpreting:before{content:"\f2a3"}.fa.fa-deafness:before,.fa.fa-hard-of-hearing:before{content:"\f2a4"}.fa.fa-glide,.fa.fa-glide-g{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-signing:before{content:"\f2a7"}.fa.fa-first-order,.fa.fa-google-plus-official,.fa.fa-pied-piper,.fa.fa-snapchat,.fa.fa-snapchat-ghost,.fa.fa-snapchat-square,.fa.fa-themeisle,.fa.fa-viadeo,.fa.fa-viadeo-square,.fa.fa-yoast{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-google-plus-official:before{content:"\f2b3"}.fa.fa-google-plus-circle{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-google-plus-circle:before{content:"\f2b3"}.fa.fa-fa,.fa.fa-font-awesome{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-fa:before{content:"\f2b4"}.fa.fa-handshake-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-handshake-o:before{content:"\f2b5"}.fa.fa-envelope-open-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-envelope-open-o:before{content:"\f2b6"}.fa.fa-linode{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-address-book-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-address-book-o:before{content:"\f2b9"}.fa.fa-vcard:before{content:"\f2bb"}.fa.fa-address-card-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-address-card-o:before{content:"\f2bb"}.fa.fa-vcard-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-vcard-o:before{content:"\f2bb"}.fa.fa-user-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-user-circle-o:before{content:"\f2bd"}.fa.fa-user-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-user-o:before{content:"\f007"}.fa.fa-id-badge{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-drivers-license:before{content:"\f2c2"}.fa.fa-id-card-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-id-card-o:before{content:"\f2c2"}.fa.fa-drivers-license-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-drivers-license-o:before{content:"\f2c2"}.fa.fa-free-code-camp,.fa.fa-quora,.fa.fa-telegram{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-thermometer-4:before,.fa.fa-thermometer:before{content:"\f2c7"}.fa.fa-thermometer-3:before{content:"\f2c8"}.fa.fa-thermometer-2:before{content:"\f2c9"}.fa.fa-thermometer-1:before{content:"\f2ca"}.fa.fa-thermometer-0:before{content:"\f2cb"}.fa.fa-bathtub:before,.fa.fa-s15:before{content:"\f2cd"}.fa.fa-window-maximize,.fa.fa-window-restore{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-times-rectangle:before{content:"\f410"}.fa.fa-window-close-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-window-close-o:before{content:"\f410"}.fa.fa-times-rectangle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-times-rectangle-o:before{content:"\f410"}.fa.fa-bandcamp,.fa.fa-eercast,.fa.fa-etsy,.fa.fa-grav,.fa.fa-imdb,.fa.fa-ravelry{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-eercast:before{content:"\f2da"}.fa.fa-snowflake-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-snowflake-o:before{content:"\f2dc"}.fa.fa-spotify,.fa.fa-superpowers,.fa.fa-wpexplorer{font-family:"Font Awesome 5 Brands";font-weight:400}
\ No newline at end of file
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-brands-400.eot b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.eot
new file mode 100644
index 0000000..a619622
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.eot differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-brands-400.svg b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.svg
new file mode 100644
index 0000000..33efe39
--- /dev/null
+++ b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.svg
@@ -0,0 +1,3451 @@
+
+
+
+
+
+Created by FontForge 20190112 at Fri Aug 2 14:42:17 2019
+ By Robert Madole
+Copyright (c) Font Awesome
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-brands-400.ttf b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.ttf
new file mode 100644
index 0000000..c3edffd
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.ttf differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-brands-400.woff b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.woff
new file mode 100644
index 0000000..13125dc
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.woff differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-brands-400.woff2 b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.woff2
new file mode 100644
index 0000000..ce25be0
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-brands-400.woff2 differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-regular-400.eot b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.eot
new file mode 100644
index 0000000..0610148
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.eot differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-regular-400.svg b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.svg
new file mode 100644
index 0000000..4576c80
--- /dev/null
+++ b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.svg
@@ -0,0 +1,803 @@
+
+
+
+
+
+Created by FontForge 20190112 at Fri Aug 2 14:42:17 2019
+ By Robert Madole
+Copyright (c) Font Awesome
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-regular-400.ttf b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.ttf
new file mode 100644
index 0000000..d71787b
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.ttf differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-regular-400.woff b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.woff
new file mode 100644
index 0000000..8894b46
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.woff differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-regular-400.woff2 b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.woff2
new file mode 100644
index 0000000..a5c98bc
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-regular-400.woff2 differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-solid-900.eot b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.eot
new file mode 100644
index 0000000..7c78e8c
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.eot differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-solid-900.svg b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.svg
new file mode 100644
index 0000000..6b98037
--- /dev/null
+++ b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.svg
@@ -0,0 +1,4649 @@
+
+
+
+
+
+Created by FontForge 20190112 at Fri Aug 2 14:42:17 2019
+ By Robert Madole
+Copyright (c) Font Awesome
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-solid-900.ttf b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.ttf
new file mode 100644
index 0000000..d4e300d
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.ttf differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-solid-900.woff b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.woff
new file mode 100644
index 0000000..a50f67f
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.woff differ
diff --git a/static/assets/fonts/fontawesome/webfonts/fa-solid-900.woff2 b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.woff2
new file mode 100644
index 0000000..a43e1ca
Binary files /dev/null and b/static/assets/fonts/fontawesome/webfonts/fa-solid-900.woff2 differ
diff --git a/static/assets/img/Noam_Ross_proper_profile.jpg b/static/assets/img/Noam_Ross_proper_profile.jpg
new file mode 100644
index 0000000..9ec43e7
Binary files /dev/null and b/static/assets/img/Noam_Ross_proper_profile.jpg differ
diff --git a/static/assets/img/banner.jpg b/static/assets/img/banner.jpg
new file mode 100755
index 0000000..c2b8813
Binary files /dev/null and b/static/assets/img/banner.jpg differ
diff --git a/static/assets/img/bg2.jpg b/static/assets/img/bg2.jpg
new file mode 100755
index 0000000..8d88f40
Binary files /dev/null and b/static/assets/img/bg2.jpg differ
diff --git a/static/assets/img/blogpic.jpg b/static/assets/img/blogpic.jpg
new file mode 100644
index 0000000..be9e742
Binary files /dev/null and b/static/assets/img/blogpic.jpg differ
diff --git a/static/assets/img/bnr.jpg b/static/assets/img/bnr.jpg
new file mode 100755
index 0000000..7ab1338
Binary files /dev/null and b/static/assets/img/bnr.jpg differ
diff --git a/static/assets/img/card-img-2.png b/static/assets/img/card-img-2.png
new file mode 100644
index 0000000..3066530
Binary files /dev/null and b/static/assets/img/card-img-2.png differ
diff --git a/static/assets/img/card-img.png b/static/assets/img/card-img.png
new file mode 100644
index 0000000..aa48047
Binary files /dev/null and b/static/assets/img/card-img.png differ
diff --git a/static/assets/img/ee9.png b/static/assets/img/ee9.png
new file mode 100644
index 0000000..a12714f
Binary files /dev/null and b/static/assets/img/ee9.png differ
diff --git a/static/assets/img/feed-icon-10x10.png b/static/assets/img/feed-icon-10x10.png
new file mode 100755
index 0000000..cc869bc
Binary files /dev/null and b/static/assets/img/feed-icon-10x10.png differ
diff --git a/static/assets/img/gauze.png b/static/assets/img/gauze.png
new file mode 100755
index 0000000..dfdf35d
Binary files /dev/null and b/static/assets/img/gauze.png differ
diff --git a/static/assets/img/grid-18px-masked.png b/static/assets/img/grid-18px-masked.png
new file mode 100644
index 0000000..1bc82b0
Binary files /dev/null and b/static/assets/img/grid-18px-masked.png differ
diff --git a/static/assets/img/header-pic.jpg b/static/assets/img/header-pic.jpg
new file mode 100644
index 0000000..9c6be92
Binary files /dev/null and b/static/assets/img/header-pic.jpg differ
diff --git a/static/assets/img/i2.png b/static/assets/img/i2.png
new file mode 100644
index 0000000..3c5fb83
Binary files /dev/null and b/static/assets/img/i2.png differ
diff --git a/static/assets/img/icarus.jpg b/static/assets/img/icarus.jpg
new file mode 100644
index 0000000..25b8939
Binary files /dev/null and b/static/assets/img/icarus.jpg differ
diff --git a/static/assets/img/misc/belial-and-satan.jpg b/static/assets/img/misc/belial-and-satan.jpg
new file mode 100644
index 0000000..7e77fc8
Binary files /dev/null and b/static/assets/img/misc/belial-and-satan.jpg differ
diff --git a/static/assets/img/nr.png b/static/assets/img/nr.png
new file mode 100644
index 0000000..79645b2
Binary files /dev/null and b/static/assets/img/nr.png differ
diff --git a/static/assets/img/nr.svg b/static/assets/img/nr.svg
new file mode 100644
index 0000000..4ba91b8
--- /dev/null
+++ b/static/assets/img/nr.svg
@@ -0,0 +1,696 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
diff --git a/static/assets/js/kube.js b/static/assets/js/kube.js
new file mode 100644
index 0000000..3c1a5c3
--- /dev/null
+++ b/static/assets/js/kube.js
@@ -0,0 +1,4026 @@
+/*
+ Kube UI Framework
+ Version 7.2.1
+ Updated: November 10, 2018
+
+ http://imperavi.com/kube/
+
+ Copyright (c) 2009-2018, Imperavi LLC.
+ License: MIT
+*/
+(function() {
+var Ajax = {};
+
+Ajax.settings = {};
+Ajax.post = function(options) { return new AjaxRequest('post', options); };
+Ajax.get = function(options) { return new AjaxRequest('get', options); };
+
+var AjaxRequest = function(method, options)
+{
+ var defaults = {
+ method: method,
+ url: '',
+ before: function() {},
+ success: function() {},
+ error: function() {},
+ data: false,
+ async: true,
+ headers: {}
+ };
+
+ this.p = this.extend(defaults, options);
+ this.p = this.extend(this.p, Ajax.settings);
+ this.p.method = this.p.method.toUpperCase();
+
+ this.prepareData();
+
+ this.xhr = new XMLHttpRequest();
+ this.xhr.open(this.p.method, this.p.url, this.p.async);
+
+ this.setHeaders();
+
+ var before = (typeof this.p.before === 'function') ? this.p.before(this.xhr) : true;
+ if (before !== false)
+ {
+ this.send();
+ }
+};
+
+AjaxRequest.prototype = {
+ extend: function(obj1, obj2)
+ {
+ if (obj2) for (var name in obj2) { obj1[name] = obj2[name]; }
+ return obj1;
+ },
+ prepareData: function()
+ {
+ if (this.p.method === 'POST' && !this.isFormData()) this.p.headers['Content-Type'] = 'application/x-www-form-urlencoded';
+ if (typeof this.p.data === 'object' && !this.isFormData()) this.p.data = this.toParams(this.p.data);
+ if (this.p.method === 'GET') this.p.url = (this.p.data) ? this.p.url + '?' + this.p.data : this.p.url;
+ },
+ setHeaders: function()
+ {
+ this.xhr.setRequestHeader('X-Requested-With', this.p.headers['X-Requested-With'] || 'XMLHttpRequest');
+ for (var name in this.p.headers)
+ {
+ this.xhr.setRequestHeader(name, this.p.headers[name]);
+ }
+ },
+ isFormData: function()
+ {
+ return (typeof window.FormData !== 'undefined' && this.p.data instanceof window.FormData);
+ },
+ isComplete: function()
+ {
+ return !(this.xhr.status < 200 || this.xhr.status >= 300 && this.xhr.status !== 304);
+ },
+ send: function()
+ {
+ if (this.p.async)
+ {
+ this.xhr.onload = this.loaded.bind(this);
+ this.xhr.send(this.p.data);
+ }
+ else
+ {
+ this.xhr.send(this.p.data);
+ this.loaded.call(this);
+ }
+ },
+ loaded: function()
+ {
+ if (this.isComplete())
+ {
+ var response = this.xhr.response;
+ var json = this.parseJson(response);
+ response = (json) ? json : response;
+
+ if (typeof this.p.success === 'function') this.p.success(response, this.xhr);
+ }
+ else
+ {
+ if (typeof this.p.error === 'function') this.p.error(this.xhr.statusText);
+ }
+ },
+ parseJson: function(str)
+ {
+ try {
+ var o = JSON.parse(str);
+ if (o && typeof o === 'object')
+ {
+ return o;
+ }
+
+ } catch (e) {}
+
+ return false;
+ },
+ toParams: function (obj)
+ {
+ return Object.keys(obj).map(
+ function(k){ return encodeURIComponent(k) + '=' + encodeURIComponent(obj[k]); }
+ ).join('&');
+ }
+};
+var DomCache = [0];
+var DomExpando = 'data' + +new Date();
+var DomHClass = 'is-hidden';
+var DomHMClass = 'is-hidden-mobile';
+
+var Dom = function(selector, context)
+{
+ return this.parse(selector, context);
+};
+
+Dom.ready = function(fn)
+{
+ if (document.readyState != 'loading') fn();
+ else document.addEventListener('DOMContentLoaded', fn);
+};
+
+Dom.prototype = {
+ get dom()
+ {
+ return true;
+ },
+ get length()
+ {
+ return this.nodes.length;
+ },
+ parse: function(selector, context)
+ {
+ var nodes;
+ var reHtmlTest = /^\s*<(\w+|!)[^>]*>/;
+
+ if (!selector)
+ {
+ nodes = [];
+ }
+ else if (selector.dom)
+ {
+ this.nodes = selector.nodes;
+ return selector;
+ }
+ else if (typeof selector !== 'string')
+ {
+ if (selector.nodeType && selector.nodeType === 11)
+ {
+ nodes = selector.childNodes;
+ }
+ else
+ {
+ nodes = (selector.nodeType || selector === window) ? [selector] : selector;
+ }
+ }
+ else if (reHtmlTest.test(selector))
+ {
+ nodes = this.create(selector);
+ }
+ else
+ {
+ nodes = this._query(selector, context);
+ }
+
+ this.nodes = this._slice(nodes);
+ },
+ create: function(html)
+ {
+ if (/^<(\w+)\s*\/?>(?:<\/\1>|)$/.test(html))
+ {
+ return [document.createElement(RegExp.$1)];
+ }
+
+ var elements = [];
+ var container = document.createElement('div');
+ var children = container.childNodes;
+
+ container.innerHTML = html;
+
+ for (var i = 0, l = children.length; i < l; i++)
+ {
+ elements.push(children[i]);
+ }
+
+ return elements;
+ },
+
+ // add
+ add: function(nodes)
+ {
+ this.nodes = this.nodes.concat(this._toArray(nodes));
+ },
+
+ // get
+ get: function(index)
+ {
+ return this.nodes[(index || 0)] || false;
+ },
+ getAll: function()
+ {
+ return this.nodes;
+ },
+ eq: function(index)
+ {
+ return new Dom(this.nodes[index]);
+ },
+ first: function()
+ {
+ return new Dom(this.nodes[0]);
+ },
+ last: function()
+ {
+ return new Dom(this.nodes[this.nodes.length - 1]);
+ },
+ contents: function()
+ {
+ return this.get().childNodes;
+ },
+
+ // loop
+ each: function(callback)
+ {
+ var len = this.nodes.length;
+ for (var i = 0; i < len; i++)
+ {
+ callback.call(this, (this.nodes[i].dom) ? this.nodes[i].get() : this.nodes[i], i);
+ }
+
+ return this;
+ },
+
+ // traversing
+ is: function(selector)
+ {
+ return (this.filter(selector).length > 0);
+ },
+ filter: function (selector)
+ {
+ var callback;
+ if (selector === undefined)
+ {
+ return this;
+ }
+ else if (typeof selector === 'function')
+ {
+ callback = selector;
+ }
+ else
+ {
+ callback = function(node)
+ {
+ if (selector instanceof Node)
+ {
+ return (selector === node);
+ }
+ else if (selector && selector.dom)
+ {
+ return ((selector.nodes).indexOf(node) !== -1);
+ }
+ else
+ {
+ node.matches = node.matches || node.msMatchesSelector || node.webkitMatchesSelector;
+ return (node.nodeType === 1) ? node.matches(selector || '*') : false;
+ }
+ };
+ }
+
+ return new Dom(this.nodes.filter(callback));
+ },
+ not: function(filter)
+ {
+ return this.filter(function(node)
+ {
+ return !new Dom(node).is(filter || true);
+ });
+ },
+ find: function(selector)
+ {
+ var nodes = [];
+ this.each(function(node)
+ {
+ var ns = this._query(selector || '*', node);
+ for (var i = 0; i < ns.length; i++)
+ {
+ nodes.push(ns[i]);
+ }
+ });
+
+ return new Dom(nodes);
+ },
+ children: function(selector)
+ {
+ var nodes = [];
+ this.each(function(node)
+ {
+ if (node.children)
+ {
+ var ns = node.children;
+ for (var i = 0; i < ns.length; i++)
+ {
+ nodes.push(ns[i]);
+ }
+ }
+ });
+
+ return new Dom(nodes).filter(selector);
+ },
+ parent: function(selector)
+ {
+ var nodes = [];
+ this.each(function(node)
+ {
+ if (node.parentNode) nodes.push(node.parentNode);
+ });
+
+ return new Dom(nodes).filter(selector);
+ },
+ parents: function(selector, context)
+ {
+ context = this._getContext(context);
+
+ var nodes = [];
+ this.each(function(node)
+ {
+ var parent = node.parentNode;
+ while (parent && parent !== context)
+ {
+ if (selector)
+ {
+ if (new Dom(parent).is(selector)) { nodes.push(parent); }
+ }
+ else
+ {
+ nodes.push(parent);
+ }
+
+ parent = parent.parentNode;
+ }
+ });
+
+ return new Dom(nodes);
+ },
+ closest: function(selector, context)
+ {
+ context = this._getContext(context);
+ selector = (selector.dom) ? selector.get() : selector;
+
+ var nodes = [];
+ var isNode = (selector && selector.nodeType);
+ this.each(function(node)
+ {
+ do {
+ if ((isNode && node === selector) || new Dom(node).is(selector)) return nodes.push(node);
+ } while ((node = node.parentNode) && node !== context);
+ });
+
+ return new Dom(nodes);
+ },
+ next: function(selector)
+ {
+ return this._getSibling(selector, 'nextSibling');
+ },
+ nextElement: function(selector)
+ {
+ return this._getSibling(selector, 'nextElementSibling');
+ },
+ prev: function(selector)
+ {
+ return this._getSibling(selector, 'previousSibling');
+ },
+ prevElement: function(selector)
+ {
+ return this._getSibling(selector, 'previousElementSibling');
+ },
+
+ // css
+ css: function(name, value)
+ {
+ if (value === undefined && (typeof name !== 'object'))
+ {
+ var node = this.get();
+ if (name === 'width' || name === 'height')
+ {
+ return (node.style) ? this._getHeightOrWidth(name, node, false) + 'px' : undefined;
+ }
+ else
+ {
+ return (node.style) ? getComputedStyle(node, null)[name] : undefined;
+ }
+ }
+
+ // set
+ return this.each(function(node)
+ {
+ var obj = {};
+ if (typeof name === 'object') obj = name;
+ else obj[name] = value;
+
+ for (var key in obj)
+ {
+ if (node.style) node.style[key] = obj[key];
+ }
+ });
+ },
+
+ // attr
+ attr: function(name, value, data)
+ {
+ data = (data) ? 'data-' : '';
+
+ if (value === undefined && (typeof name !== 'object'))
+ {
+ var node = this.get();
+ if (node && node.nodeType !== 3)
+ {
+ return (name === 'checked') ? node.checked : this._getBooleanFromStr(node.getAttribute(data + name));
+ }
+ else return;
+ }
+
+ // set
+ return this.each(function(node)
+ {
+ var obj = {};
+ if (typeof name === 'object') obj = name;
+ else obj[name] = value;
+
+ for (var key in obj)
+ {
+ if (node.nodeType !== 3)
+ {
+ if (key === 'checked') node.checked = obj[key];
+ else node.setAttribute(data + key, obj[key]);
+ }
+ }
+ });
+ },
+ data: function(name, value)
+ {
+ if (name === undefined)
+ {
+ var reDataAttr = /^data\-(.+)$/;
+ var attrs = this.get().attributes;
+
+ var data = {};
+ var replacer = function (g) { return g[1].toUpperCase(); };
+
+ for (var key in attrs)
+ {
+ if (attrs[key] && reDataAttr.test(attrs[key].nodeName))
+ {
+ var dataName = attrs[key].nodeName.match(reDataAttr)[1];
+ var val = attrs[key].value;
+ dataName = dataName.replace(/-([a-z])/g, replacer);
+
+ if (this._isObjectString(val)) val = this._toObject(val);
+ else val = (this._isNumber(val)) ? parseFloat(val) : this._getBooleanFromStr(val);
+
+ data[dataName] = val;
+ }
+ }
+
+ return data;
+ }
+
+ return this.attr(name, value, true);
+ },
+ val: function(value)
+ {
+ if (value === undefined)
+ {
+ var el = this.get();
+ if (el.type && el.type === 'checkbox') return el.checked;
+ else return el.value;
+ }
+
+ return this.each(function(node)
+ {
+ node.value = value;
+ });
+ },
+ removeAttr: function(value)
+ {
+ return this.each(function(node)
+ {
+ var rmAttr = function(name) { if (node.nodeType !== 3) node.removeAttribute(name); };
+ value.split(' ').forEach(rmAttr);
+ });
+ },
+ removeData: function(value)
+ {
+ return this.each(function(node)
+ {
+ var rmData = function(name) { if (node.nodeType !== 3) node.removeAttribute('data-' + name); };
+ value.split(' ').forEach(rmData);
+ });
+ },
+
+ // dataset/dataget
+ dataset: function(key, value)
+ {
+ return this.each(function(node)
+ {
+ DomCache[this.dataindex(node)][key] = value;
+ });
+ },
+ dataget: function(key)
+ {
+ return DomCache[this.dataindex(this.get())][key];
+ },
+ dataindex: function(el)
+ {
+ var cacheIndex = el[DomExpando];
+ var nextCacheIndex = DomCache.length;
+
+ if (!cacheIndex)
+ {
+ cacheIndex = el[DomExpando] = nextCacheIndex;
+ DomCache[cacheIndex] = {};
+ }
+
+ return cacheIndex;
+ },
+
+
+ // class
+ addClass: function(value)
+ {
+ return this._eachClass(value, 'add');
+ },
+ removeClass: function(value)
+ {
+ return this._eachClass(value, 'remove');
+ },
+ toggleClass: function(value)
+ {
+ return this._eachClass(value, 'toggle');
+ },
+ hasClass: function(value)
+ {
+ return this.nodes.some(function(node)
+ {
+ return (node.classList) ? node.classList.contains(value) : false;
+ });
+ },
+
+ // html & text
+ empty: function()
+ {
+ return this.each(function(node)
+ {
+ node.innerHTML = '';
+ });
+ },
+ html: function(html)
+ {
+ return (html === undefined) ? (this.get().innerHTML || '') : this.empty().append(html);
+ },
+ text: function(text)
+ {
+ return (text === undefined) ? (this.get().textContent || '') : this.each(function(node) { node.textContent = text; });
+ },
+
+ // manipulation
+ after: function(html)
+ {
+ return this._inject(html, function(frag, node)
+ {
+ if (typeof frag === 'string')
+ {
+ node.insertAdjacentHTML('afterend', frag);
+ }
+ else
+ {
+ var elms = (frag instanceof Node) ? [frag] : this._toArray(frag).reverse();
+ for (var i = 0; i < elms.length; i++)
+ {
+ node.parentNode.insertBefore(elms[i], node.nextSibling);
+ }
+ }
+
+ return node;
+
+ });
+ },
+ before: function(html)
+ {
+ return this._inject(html, function(frag, node)
+ {
+ if (typeof frag === 'string')
+ {
+ node.insertAdjacentHTML('beforebegin', frag);
+ }
+ else
+ {
+ var elms = (frag instanceof Node) ? [frag] : this._toArray(frag);
+ for (var i = 0; i < elms.length; i++)
+ {
+ node.parentNode.insertBefore(elms[i], node);
+ }
+ }
+
+ return node;
+ });
+ },
+ append: function(html)
+ {
+ return this._inject(html, function(frag, node)
+ {
+ if (typeof frag === 'string' || typeof frag === 'number')
+ {
+ node.insertAdjacentHTML('beforeend', frag);
+ }
+ else
+ {
+ var elms = (frag instanceof Node) ? [frag] : this._toArray(frag);
+ for (var i = 0; i < elms.length; i++)
+ {
+ node.appendChild(elms[i]);
+ }
+ }
+
+ return node;
+ });
+ },
+ prepend: function(html)
+ {
+ return this._inject(html, function(frag, node)
+ {
+ if (typeof frag === 'string' || typeof frag === 'number')
+ {
+ node.insertAdjacentHTML('afterbegin', frag);
+ }
+ else
+ {
+ var elms = (frag instanceof Node) ? [frag] : this._toArray(frag).reverse();
+ for (var i = 0; i < elms.length; i++)
+ {
+ node.insertBefore(elms[i], node.firstChild);
+ }
+ }
+
+ return node;
+ });
+ },
+ wrap: function(html)
+ {
+ return this._inject(html, function(frag, node)
+ {
+ var wrapper = (typeof frag === 'string' || typeof frag === 'number') ? this.create(frag)[0] : (frag instanceof Node) ? frag : this._toArray(frag)[0];
+
+ if (node.parentNode)
+ {
+ node.parentNode.insertBefore(wrapper, node);
+ }
+
+ wrapper.appendChild(node);
+
+ return new Dom(wrapper);
+
+ });
+ },
+ unwrap: function()
+ {
+ return this.each(function(node)
+ {
+ var $node = new Dom(node);
+
+ return $node.replaceWith($node.contents());
+ });
+ },
+ replaceWith: function(html)
+ {
+ return this._inject(html, function(frag, node)
+ {
+ var docFrag = document.createDocumentFragment();
+ var elms = (typeof frag === 'string' || typeof frag === 'number') ? this.create(frag) : (frag instanceof Node) ? [frag] : this._toArray(frag);
+
+ for (var i = 0; i < elms.length; i++)
+ {
+ docFrag.appendChild(elms[i]);
+ }
+
+ var result = docFrag.childNodes[0];
+ node.parentNode.replaceChild(docFrag, node);
+
+ return result;
+
+ });
+ },
+ remove: function()
+ {
+ return this.each(function(node)
+ {
+ if (node.parentNode) node.parentNode.removeChild(node);
+ });
+ },
+ clone: function(events)
+ {
+ var nodes = [];
+ this.each(function(node)
+ {
+ var copy = this._clone(node);
+ if (events) copy = this._cloneEvents(node, copy);
+ nodes.push(copy);
+ });
+
+ return new Dom(nodes);
+ },
+
+ // show/hide
+ show: function()
+ {
+ return this.each(function(node)
+ {
+ if (!node.style || !this._hasDisplayNone(node)) return;
+
+ var target = node.getAttribute('domTargetShow');
+ var isHidden = (node.classList) ? node.classList.contains(DomHClass) : false;
+ var isHiddenMobile = (node.classList) ? node.classList.contains(DomHMClass) : false;
+ var type;
+
+ if (isHidden)
+ {
+ type = DomHClass;
+ node.classList.remove(DomHClass);
+ }
+ else if (isHiddenMobile)
+ {
+ type = DomHMClass;
+ node.classList.remove(DomHMClass);
+ }
+ else
+ {
+ node.style.display = (target) ? target : 'block';
+ }
+
+ if (type) node.setAttribute('domTargetHide', type);
+ node.removeAttribute('domTargetShow');
+
+ }.bind(this));
+ },
+ hide: function()
+ {
+ return this.each(function(node)
+ {
+ if (!node.style || this._hasDisplayNone(node)) return;
+
+ var display = node.style.display;
+ var target = node.getAttribute('domTargetHide');
+
+ if (target === DomHClass)
+ {
+ node.classList.add(DomHClass);
+ }
+ else if (target === DomHMClass)
+ {
+ node.classList.add(DomHMClass);
+ }
+ else
+ {
+ if (display !== 'block') node.setAttribute('domTargetShow', display);
+ node.style.display = 'none';
+ }
+
+ node.removeAttribute('domTargetHide');
+
+ });
+ },
+
+ // dimensions
+ scrollTop: function(value)
+ {
+ var node = this.get();
+ var isWindow = (node === window);
+ var isDocument = (node.nodeType === 9);
+ var el = (isDocument) ? (document.scrollingElement || document.body.parentNode || document.body || document.documentElement) : node;
+
+ if (value !== undefined)
+ {
+ if (isWindow) window.scrollTo(0, value);
+ else el.scrollTop = value;
+ return;
+ }
+
+ if (isDocument)
+ {
+ return (typeof window.pageYOffset != 'undefined') ? window.pageYOffset : ((document.documentElement.scrollTop) ? document.documentElement.scrollTop : ((document.body.scrollTop) ? document.body.scrollTop : 0));
+ }
+ else
+ {
+ return (isWindow) ? window.pageYOffset : el.scrollTop;
+ }
+ },
+ offset: function()
+ {
+ return this._getDim('Offset');
+ },
+ position: function()
+ {
+ return this._getDim('Position');
+ },
+ width: function(value, adjust)
+ {
+ return this._getSize('width', 'Width', value, adjust);
+ },
+ height: function(value, adjust)
+ {
+ return this._getSize('height', 'Height', value, adjust);
+ },
+ outerWidth: function()
+ {
+ return this._getInnerOrOuter('width', 'outer');
+ },
+ outerHeight: function()
+ {
+ return this._getInnerOrOuter('height', 'outer');
+ },
+ innerWidth: function()
+ {
+ return this._getInnerOrOuter('width', 'inner');
+ },
+ innerHeight: function()
+ {
+ return this._getInnerOrOuter('height', 'inner');
+ },
+
+ // events
+ click: function()
+ {
+ return this._triggerEvent('click');
+ },
+ focus: function()
+ {
+ return this._triggerEvent('focus');
+ },
+ trigger: function(names)
+ {
+ return this.each(function(node)
+ {
+ var events = names.split(' ');
+ for (var i = 0; i < events.length; i++)
+ {
+ var ev;
+ var opts = { bubbles: true, cancelable: true };
+
+ try {
+ ev = new window.CustomEvent(events[i], opts);
+ } catch(e) {
+ ev = document.createEvent('CustomEvent');
+ ev.initCustomEvent(events[i], true, true);
+ }
+
+ node.dispatchEvent(ev);
+ }
+ });
+ },
+ on: function(names, handler, one)
+ {
+ return this.each(function(node)
+ {
+ var events = names.split(' ');
+ for (var i = 0; i < events.length; i++)
+ {
+ var event = this._getEventName(events[i]);
+ var namespace = this._getEventNamespace(events[i]);
+
+ handler = (one) ? this._getOneHandler(handler, names) : handler;
+ node.addEventListener(event, handler);
+
+ node._e = node._e || {};
+ node._e[namespace] = node._e[namespace] || {};
+ node._e[namespace][event] = node._e[namespace][event] || [];
+ node._e[namespace][event].push(handler);
+ }
+
+ });
+ },
+ one: function(events, handler)
+ {
+ return this.on(events, handler, true);
+ },
+ off: function(names, handler)
+ {
+ var testEvent = function(name, key, event) { return (name === event); };
+ var testNamespace = function(name, key, event, namespace) { return (key === namespace); };
+ var testEventNamespace = function(name, key, event, namespace) { return (name === event && key === namespace); };
+ var testPositive = function() { return true; };
+
+ if (names === undefined)
+ {
+ // ALL
+ return this.each(function(node)
+ {
+ this._offEvent(node, false, false, handler, testPositive);
+ });
+ }
+
+ return this.each(function(node)
+ {
+ var events = names.split(' ');
+
+ for (var i = 0; i < events.length; i++)
+ {
+ var event = this._getEventName(events[i]);
+ var namespace = this._getEventNamespace(events[i]);
+
+ // 1) event without namespace
+ if (namespace === '_events') this._offEvent(node, event, namespace, handler, testEvent);
+ // 2) only namespace
+ else if (!event && namespace !== '_events') this._offEvent(node, event, namespace, handler, testNamespace);
+ // 3) event + namespace
+ else this._offEvent(node, event, namespace, handler, testEventNamespace);
+ }
+ });
+ },
+
+ // form
+ serialize: function(asObject)
+ {
+ var obj = {};
+ var elms = this.get().elements;
+ for (var i = 0; i < elms.length; i++)
+ {
+ var el = elms[i];
+ if (/(checkbox|radio)/.test(el.type) && !el.checked) continue;
+ if (!el.name || el.disabled || el.type === 'file') continue;
+
+ if (el.type === 'select-multiple')
+ {
+ for (var z = 0; z < el.options.length; z++)
+ {
+ var opt = el.options[z];
+ if (opt.selected) obj[el.name] = opt.value;
+ }
+ }
+
+ obj[el.name] = (this._isNumber(el.value)) ? parseFloat(el.value) : this._getBooleanFromStr(el.value);
+ }
+
+ return (asObject) ? obj : this._toParams(obj);
+ },
+ ajax: function(success, error)
+ {
+ if (typeof AjaxRequest !== 'undefined')
+ {
+ var method = this.attr('method') || 'post';
+ var options = {
+ url: this.attr('action'),
+ data: this.serialize(),
+ success: success,
+ error: error
+ };
+
+ return new AjaxRequest(method, options);
+ }
+ },
+
+ // private
+ _queryContext: function(selector, context)
+ {
+ context = this._getContext(context);
+
+ return (context.nodeType !== 3 && typeof context.querySelectorAll === 'function') ? context.querySelectorAll(selector) : [];
+ },
+ _query: function(selector, context)
+ {
+ if (context)
+ {
+ return this._queryContext(selector, context);
+ }
+ else if (/^[.#]?[\w-]*$/.test(selector))
+ {
+ if (selector[0] === '#')
+ {
+ var element = document.getElementById(selector.slice(1));
+ return element ? [element] : [];
+ }
+
+ if (selector[0] === '.')
+ {
+ return document.getElementsByClassName(selector.slice(1));
+ }
+
+ return document.getElementsByTagName(selector);
+ }
+
+ return document.querySelectorAll(selector);
+ },
+ _getContext: function(context)
+ {
+ context = (typeof context === 'string') ? document.querySelector(context) : context;
+
+ return (context && context.dom) ? context.get() : (context || document);
+ },
+ _inject: function(html, fn)
+ {
+ var len = this.nodes.length;
+ var nodes = [];
+ while (len--)
+ {
+ var res = (typeof html === 'function') ? html.call(this, this.nodes[len]) : html;
+ var el = (len === 0) ? res : this._clone(res);
+ var node = fn.call(this, el, this.nodes[len]);
+
+ if (node)
+ {
+ if (node.dom) nodes.push(node.get());
+ else nodes.push(node);
+ }
+ }
+
+ return new Dom(nodes);
+ },
+ _cloneEvents: function(node, copy)
+ {
+ var events = node._e;
+ if (events)
+ {
+ copy._e = events;
+ for (var name in events._events)
+ {
+ for (var i = 0; i < events._events[name].length; i++)
+ {
+ copy.addEventListener(name, events._events[name][i]);
+ }
+ }
+ }
+
+ return copy;
+ },
+ _clone: function(node)
+ {
+ if (typeof node === 'undefined') return;
+ if (typeof node === 'string') return node;
+ else if (node instanceof Node || node.nodeType) return node.cloneNode(true);
+ else if ('length' in node)
+ {
+ return [].map.call(this._toArray(node), function(el) { return el.cloneNode(true); });
+ }
+ },
+ _slice: function(obj)
+ {
+ return (!obj || obj.length === 0) ? [] : (obj.length) ? [].slice.call(obj.nodes || obj) : [obj];
+ },
+ _eachClass: function(value, type)
+ {
+ return this.each(function(node)
+ {
+ if (value)
+ {
+ var setClass = function(name) { if (node.classList) node.classList[type](name); };
+ value.split(' ').forEach(setClass);
+ }
+ });
+ },
+ _triggerEvent: function(name)
+ {
+ var node = this.get();
+ if (node && node.nodeType !== 3) node[name]();
+ return this;
+ },
+ _getOneHandler: function(handler, events)
+ {
+ var self = this;
+ return function()
+ {
+ handler.apply(this, arguments);
+ self.off(events);
+ };
+ },
+ _getEventNamespace: function(event)
+ {
+ var arr = event.split('.');
+ var namespace = (arr[1]) ? arr[1] : '_events';
+ return (arr[2]) ? namespace + arr[2] : namespace;
+ },
+ _getEventName: function(event)
+ {
+ return event.split('.')[0];
+ },
+ _offEvent: function(node, event, namespace, handler, condition)
+ {
+ for (var key in node._e)
+ {
+ for (var name in node._e[key])
+ {
+ if (condition(name, key, event, namespace))
+ {
+ var handlers = node._e[key][name];
+ for (var i = 0; i < handlers.length; i++)
+ {
+ if (typeof handler !== 'undefined' && handlers[i].toString() !== handler.toString())
+ {
+ continue;
+ }
+
+ node.removeEventListener(name, handlers[i]);
+ node._e[key][name].splice(i, 1);
+
+ if (node._e[key][name].length === 0) delete node._e[key][name];
+ if (Object.keys(node._e[key]).length === 0) delete node._e[key];
+ }
+ }
+ }
+ }
+ },
+ _getInnerOrOuter: function(method, type)
+ {
+ return this[method](undefined, type);
+ },
+ _getDocSize: function(node, type)
+ {
+ var body = node.body, html = node.documentElement;
+ return Math.max(body['scroll' + type], body['offset' + type], html['client' + type], html['scroll' + type], html['offset' + type]);
+ },
+ _getSize: function(type, captype, value, adjust)
+ {
+ if (value === undefined)
+ {
+ var el = this.get();
+ if (el.nodeType === 3) value = 0;
+ else if (el.nodeType === 9) value = this._getDocSize(el, captype);
+ else if (el === window) value = window['inner' + captype];
+ else value = this._getHeightOrWidth(type, el, adjust || 'normal');
+
+ return Math.round(value);
+ }
+
+ return this.each(function(node)
+ {
+ value = parseFloat(value);
+ value = value + this._adjustResultHeightOrWidth(type, node, adjust || 'normal');
+
+ new Dom(node).css(type, value + 'px');
+
+ }.bind(this));
+ },
+ _getHeightOrWidth: function(type, el, adjust)
+ {
+ if (!el) return 0;
+
+ var name = type.charAt(0).toUpperCase() + type.slice(1);
+ var result = 0;
+ var style = getComputedStyle(el, null);
+ var $el = new Dom(el);
+ var $targets = $el.parents().filter(function(node)
+ {
+ return (node.nodeType === 1 && getComputedStyle(node, null).display === 'none') ? node : false;
+ });
+
+ if (style.display === 'none') $targets.add(el);
+ if ($targets.length !== 0)
+ {
+ var fixStyle = 'visibility: hidden !important; display: block !important;';
+ var tmp = [];
+
+ $targets.each(function(node)
+ {
+ var $node = new Dom(node);
+ var thisStyle = $node.attr('style');
+ if (thisStyle !== null) tmp.push(thisStyle);
+ $node.attr('style', (thisStyle !== null) ? thisStyle + ';' + fixStyle : fixStyle);
+ });
+
+ result = $el.get()['offset' + name] - this._adjustResultHeightOrWidth(type, el, adjust);
+
+ $targets.each(function(node, i)
+ {
+ var $node = new Dom(node);
+ if (tmp[i] === undefined) $node.removeAttr('style');
+ else $node.attr('style', tmp[i]);
+ });
+ }
+ else
+ {
+ result = el['offset' + name] - this._adjustResultHeightOrWidth(type, el, adjust);
+ }
+
+ return result;
+ },
+ _adjustResultHeightOrWidth: function(type, el, adjust)
+ {
+ if (!el || adjust === false) return 0;
+
+ var fix = 0;
+ var style = getComputedStyle(el, null);
+ var isBorderBox = (style.boxSizing === "border-box");
+
+ if (type === 'height')
+ {
+ if (adjust === 'inner' || (adjust === 'normal' && isBorderBox))
+ {
+ fix += (parseFloat(style.borderTopWidth) || 0) + (parseFloat(style.borderBottomWidth) || 0);
+ }
+
+ if (adjust === 'outer') fix -= (parseFloat(style.marginTop) || 0) + (parseFloat(style.marginBottom) || 0);
+ }
+ else
+ {
+ if (adjust === 'inner' || (adjust === 'normal' && isBorderBox))
+ {
+ fix += (parseFloat(style.borderLeftWidth) || 0) + (parseFloat(style.borderRightWidth) || 0);
+ }
+
+ if (adjust === 'outer') fix -= (parseFloat(style.marginLeft) || 0) + (parseFloat(style.marginRight) || 0);
+ }
+
+ return fix;
+ },
+ _getDim: function(type)
+ {
+ var node = this.get();
+ return (node.nodeType === 3) ? { top: 0, left: 0 } : this['_get' + type](node);
+ },
+ _getPosition: function(node)
+ {
+ return { top: node.offsetTop, left: node.offsetLeft };
+ },
+ _getOffset: function(node)
+ {
+ var rect = node.getBoundingClientRect();
+ var doc = node.ownerDocument;
+ var docElem = doc.documentElement;
+ var win = doc.defaultView;
+
+ return {
+ top: rect.top + win.pageYOffset - docElem.clientTop,
+ left: rect.left + win.pageXOffset - docElem.clientLeft
+ };
+ },
+ _getSibling: function(selector, method)
+ {
+ selector = (selector && selector.dom) ? selector.get() : selector;
+
+ var isNode = (selector && selector.nodeType);
+ var sibling;
+
+ this.each(function(node)
+ {
+ while (node = node[method])
+ {
+ if ((isNode && node === selector) || new Dom(node).is(selector))
+ {
+ sibling = node;
+ return;
+ }
+ }
+ });
+
+ return new Dom(sibling);
+ },
+ _toArray: function(obj)
+ {
+ if (obj instanceof NodeList)
+ {
+ var arr = [];
+ for (var i = 0; i < obj.length; i++)
+ {
+ arr[i] = obj[i];
+ }
+
+ return arr;
+ }
+ else if (obj === undefined) return [];
+ else
+ {
+ return (obj.dom) ? obj.nodes : obj;
+ }
+ },
+ _toParams: function(obj)
+ {
+ var params = '';
+ for (var key in obj)
+ {
+ params += '&' + this._encodeUri(key) + '=' + this._encodeUri(obj[key]);
+ }
+
+ return params.replace(/^&/, '');
+ },
+ _toObject: function(str)
+ {
+ return (new Function("return " + str))();
+ },
+ _encodeUri: function(str)
+ {
+ return encodeURIComponent(str).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28').replace(/\)/g, '%29').replace(/\*/g, '%2A').replace(/%20/g, '+');
+ },
+ _isNumber: function(str)
+ {
+ return !isNaN(str) && !isNaN(parseFloat(str));
+ },
+ _isObjectString: function(str)
+ {
+ return (str.search(/^{/) !== -1);
+ },
+ _getBooleanFromStr: function(str)
+ {
+ if (str === 'true') return true;
+ else if (str === 'false') return false;
+
+ return str;
+ },
+ _hasDisplayNone: function(el)
+ {
+ return (el.style.display === 'none') || ((el.currentStyle) ? el.currentStyle.display : getComputedStyle(el, null).display) === 'none';
+ }
+};
+// Wrapper
+var $K = {};
+
+// Globals
+$K.app = [];
+$K.version = '7.2.1';
+$K.options = {};
+$K.modules = {};
+$K.services = {};
+$K.plugins = {};
+$K.classes = {};
+$K.extends = {};
+$K.lang = {};
+$K.dom = function(selector, context) { return new Dom(selector, context); };
+$K.ajax = Ajax;
+$K.Dom = Dom;
+$K.env = {
+ 'module': 'modules',
+ 'service': 'services',
+ 'plugin': 'plugins',
+ 'class': 'classes',
+ 'extend': 'extends'
+};
+
+// init class
+var KubeApp = function(options, args)
+{
+ return ($K.app = new App(options));
+};
+
+// init
+$K.init = function(options)
+{
+ return new KubeApp(options, [].slice.call(arguments, 1));
+};
+
+// api
+$K.api = function(name)
+{
+ var app = $K.app;
+ var args = [].slice.call(arguments, 1);
+
+ if (app)
+ {
+ args.unshift(name);
+ app.api.apply(app, args);
+ }
+};
+
+// add
+$K.add = function(type, name, obj)
+{
+ if (typeof $K.env[type] === 'undefined') return;
+
+ // translations
+ if (obj.translations)
+ {
+ $K.lang = $K.extend(true, {}, $K.lang, obj.translations);
+ }
+
+ // extend
+ if (type === 'extend')
+ {
+ $K[$K.env[type]][name] = obj;
+ }
+ else
+ {
+ // prototype
+ var F = function() {};
+ F.prototype = obj;
+
+ // extends
+ if (obj.extends)
+ {
+ for (var i = 0; i < obj.extends.length; i++)
+ {
+ $K.inherit(F, $K.extends[obj.extends[i]]);
+ }
+ }
+
+ $K[$K.env[type]][name] = F;
+ }
+};
+
+// add lang
+$K.addLang = function(lang, obj)
+{
+ if (typeof $K.lang[lang] === 'undefined')
+ {
+ $K.lang[lang] = {};
+ }
+
+ $K.lang[lang] = $K.extend($K.lang[lang], obj);
+};
+
+// create
+$K.create = function(name)
+{
+ var arr = name.split('.');
+ var args = [].slice.call(arguments, 1);
+
+ var type = 'classes';
+ if (typeof $K.env[arr[0]] !== 'undefined')
+ {
+ type = $K.env[arr[0]];
+ name = arr.slice(1).join('.');
+ }
+
+ // construct
+ var instance = new $K[type][name]();
+
+ instance._type = arr[0];
+ instance._name = name;
+
+ // init
+ if (instance.init)
+ {
+ var res = instance.init.apply(instance, args);
+
+ return (res) ? res : instance;
+ }
+
+ return instance;
+};
+
+// inherit
+$K.inherit = function(current, parent)
+{
+ var F = function () {};
+ F.prototype = parent;
+ var f = new F();
+
+ for (var prop in current.prototype)
+ {
+ if (current.prototype.__lookupGetter__(prop)) f.__defineGetter__(prop, current.prototype.__lookupGetter__(prop));
+ else f[prop] = current.prototype[prop];
+ }
+
+ current.prototype = f;
+ current.prototype.super = parent;
+
+ return current;
+};
+
+// error
+$K.error = function(exception)
+{
+ throw exception;
+};
+
+// extend
+$K.extend = function()
+{
+ var extended = {};
+ var deep = false;
+ var i = 0;
+ var length = arguments.length;
+
+ if (Object.prototype.toString.call( arguments[0] ) === '[object Boolean]')
+ {
+ deep = arguments[0];
+ i++;
+ }
+
+ var merge = function(obj)
+ {
+ for (var prop in obj)
+ {
+ if (Object.prototype.hasOwnProperty.call(obj, prop))
+ {
+ if (deep && Object.prototype.toString.call(obj[prop]) === '[object Object]') extended[prop] = $K.extend(true, extended[prop], obj[prop]);
+ else extended[prop] = obj[prop];
+ }
+ }
+ };
+
+ for (; i < length; i++ )
+ {
+ var obj = arguments[i];
+ merge(obj);
+ }
+
+ return extended;
+};
+var App = function(options)
+{
+ this.modules = {};
+ this.services = [];
+ this.queueStart = { 'service': {}, 'module': {} };
+ this.queueStop = { 'service': {}, 'module': {} };
+ this.started = false;
+ this.stopped = false;
+
+ // environment
+ this.namespace = 'kube';
+ this.dataNamespace = 'data-kube';
+ this.instancePrefix = 'kube-instance-';
+ this.rootOpts = options;
+ this.$win = $K.dom(window);
+ this.$doc = $K.dom(document);
+ this.$body = $K.dom('body');
+
+ // core services
+ this.coreServices = ['options', 'lang', 'utils'];
+ this.bindableServices = ['opts', 'lang', 'utils', '$win', '$doc', '$body']
+
+ this.utils = $K.create('service.utils', this);
+ this.opts = $K.create('service.options', this, 'global', options);
+ this.lang = $K.create('service.lang', this);
+
+ this.appcallback = new App.Callback(this);
+ this.appstarter = new App.Starter(this);
+ this.appbuilder = new App.Builder(this);
+ this.appbroadcast = new App.Broadcast(this);
+ this.appapi = new App.Api(this);
+
+ this.build();
+ this.start();
+};
+
+App.prototype = {
+
+ // build
+ build: function()
+ {
+ this.appbuilder.build();
+ },
+
+ // start & stop
+ start: function()
+ {
+ // start
+ this.stopped = false;
+ this.broadcast('start', this);
+
+ // starter
+ this.appstarter.start();
+
+ // started
+ this.broadcast('started', this);
+ this.started = true;
+ },
+ stop: function()
+ {
+ this.started = false;
+ this.stopped = true;
+
+ // stop
+ this.broadcast('stop', this);
+
+ // stopper
+ this.appstarter.stop();
+
+ // stopped
+ this.broadcast('stopped', this);
+ },
+
+ // starter & stopper
+ starter: function(instance, priority)
+ {
+ var type = (instance._type !== 'service') ? 'module' : instance._type;
+ this.queueStart[type][priority] = instance._name;
+ },
+ stopper: function(instance, priority)
+ {
+ var type = (instance._type !== 'service') ? 'module' : instance._type;
+ this.queueStop[type][priority] = instance._name;
+ },
+
+ // started & stopped
+ isStarted: function()
+ {
+ return this.started;
+ },
+ isStopped: function()
+ {
+ return this.stopped;
+ },
+
+ // broadcast
+ broadcast: function(name, sender)
+ {
+ this.appbroadcast.trigger(name, sender, [].slice.call(arguments, 2));
+ },
+
+ // callback
+ on: function(name, func)
+ {
+ this.appcallback.add(name, func);
+ },
+ off: function(name, func)
+ {
+ this.appcallback.remove(name, func);
+ },
+
+ // api
+ api: function(name)
+ {
+ return this.appapi.trigger(name, [].slice.call(arguments, 1));
+ }
+};
+App.Module = function(app, $el, name, id)
+{
+ this.app = app;
+ this.instancePrefix = app.instancePrefix;
+
+ // local
+ this.eventTypes = ['click', 'mouseover', 'mouseout', 'mousedown', 'mouseup', 'mousemove',
+ 'keydown', 'keyup', 'focus', 'submit', 'change', 'contextmenu', 'input'];
+
+ // build
+ return this._build($el, name, id);
+};
+
+App.Module.prototype = {
+ _build: function($el, name, id)
+ {
+ var instance = $el.dataget(this.instancePrefix + name);
+ if (!instance && typeof $K.modules[name] !== 'undefined')
+ {
+ var context = new App.Context(this.app, $el, id);
+ var $target = context.getTarget();
+
+ instance = $K.create('module.' + name, this.app, context);
+ instance._id = id;
+
+ $el.dataset(this.instancePrefix + name, instance);
+ $el.attr('data-loaded', true);
+
+ // delegate events
+ this._delegateModuleEvents(instance, $el, name);
+
+ // delegate commands
+ this._delegateModuleCommands(instance, $el);
+
+ if ($target.is())
+ {
+ this._delegateModuleCommands(instance, $target);
+ }
+ }
+
+ return instance;
+ },
+
+ _delegateModuleCommands: function(instance, $el)
+ {
+ $el.find('[data-command]').each(function(node)
+ {
+ this._delegateCommand(instance, node, node.getAttribute('data-command'));
+
+ }.bind(this));
+ },
+ _delegateCommand: function(instance, node, command)
+ {
+ if (typeof instance._eventCommands === 'undefined') instance._eventCommands = [];
+
+ var self = this;
+ var $node = $K.dom(node);
+
+ instance._eventCommands.push($node);
+
+ $node.on('click.generatedcommand', function(e)
+ {
+ e.preventDefault();
+
+ var args = $node.data();
+ args.event = e;
+
+ self.app.broadcast(command, instance, $node, args);
+ });
+ },
+ _delegateModuleEvents: function(instance, $el, name)
+ {
+ $el.find('[data-type]').each(function(node)
+ {
+ var arr = node.getAttribute('data-type').split('.');
+ var type = arr[0];
+ var scope = name;
+
+ if (arr.length === 2)
+ {
+ scope = arr[0];
+ type = arr[1];
+ }
+
+ if (scope === name)
+ {
+ this._delegateEvent(instance, name, node, type);
+ }
+
+ }.bind(this));
+ },
+ _delegateEvent: function(instance, name, node, type)
+ {
+ if (typeof instance._eventNodes === 'undefined') instance._eventNodes = [];
+
+ var $node = $K.dom(node);
+ var callback = function(e, eventType, element, type, args)
+ {
+ return instance['on' + eventType].call(instance, e, element, type, args);
+ };
+
+ instance._eventNodes.push($node);
+
+ for (var i = 0; i < this.eventTypes.length; i++)
+ {
+ var event = 'on' + this.eventTypes[i];
+ if (typeof instance[event] === 'function')
+ {
+ $node.on(this.eventTypes[i] + '.generatedevent', function(e)
+ {
+ var args = $node.data();
+ callback(e, e.type, this, type, args);
+ });
+ }
+ }
+ }
+};
+App.Context = function(app, $el, name)
+{
+ this.app = app;
+ this.opts = app.opts;
+
+ // build
+ this.$element = this._buildElement($el);
+ this.params = this._buildParams();
+ this.name = this._buildName(name);
+ this.$target = this._buildTarget();
+};
+
+App.Context.prototype = {
+
+ // public
+ getElement: function()
+ {
+ return this.$element;
+ },
+ getTarget: function()
+ {
+ return this.$target;
+ },
+ getParams: function(defaults)
+ {
+ return (defaults) ? $K.extend({}, defaults, this.params) : this.params;
+ },
+ getName: function()
+ {
+ return this.name;
+ },
+
+ // private
+ _buildName: function(name)
+ {
+ return (this.params.name) ? this.params.name : name;
+ },
+ _buildParams: function()
+ {
+ return $K.create('service.options', this.app, 'element', this.$element);
+ },
+ _buildElement: function($el)
+ {
+ return new App.Element(this.app, $el);
+ },
+ _buildTarget: function()
+ {
+ return new App.Target(this.app, this.params.target);
+ }
+};
+App.Callback = function(app)
+{
+ this.app = app;
+ this.opts = app.opts;
+
+ // local
+ this.callbacks = {};
+
+ // build
+ this._build();
+};
+
+App.Callback.prototype = {
+ stop: function()
+ {
+ this.callbacks = {};
+ },
+ add: function(name, handler)
+ {
+ if (typeof this.callbacks[name] === 'undefined') this.callbacks[name] = [];
+
+ this.callbacks[name].push(handler);
+ },
+ remove: function(name, handler)
+ {
+ if (handler === undefined)
+ {
+ delete this.callbacks[name];
+ }
+ else
+ {
+ for (var i = 0; i < this.callbacks[name].length; i++)
+ {
+ this.callbacks[name].splice(i, 1);
+ }
+
+ if (this.callbacks[name].length === 0)
+ {
+ delete this.callbacks[name];
+ }
+ }
+ },
+ trigger: function(name, args)
+ {
+ if (typeof this.callbacks[name] === 'undefined') return;
+
+ for (var i = 0; i < this.callbacks[name].length; i++)
+ {
+ this.callbacks[name][i].apply(this.app, args);
+ }
+ },
+
+ // private
+ _build: function()
+ {
+ if (this.opts.callbacks)
+ {
+ for (var name in this.opts.callbacks)
+ {
+ if (typeof this.opts.callbacks[name] === 'function')
+ {
+ if (typeof this.callbacks[name] === 'undefined') this.callbacks[name] = [];
+ this.callbacks[name].push(this.opts.callbacks[name]);
+ }
+ else
+ {
+ for (var key in this.opts.callbacks[name])
+ {
+ if (typeof this.callbacks[name + '.' + key] === 'undefined') this.callbacks[name + '.' + key] = [];
+ this.callbacks[name + '.' + key].push(this.opts.callbacks[name][key]);
+ }
+
+ }
+ }
+ }
+ }
+};
+App.Element = function(app, $el)
+{
+ this.app = app;
+ this.parse($el);
+};
+
+App.Element.prototype = {
+ isOpened: function()
+ {
+ return !this.isClosed();
+ },
+ isClosed: function()
+ {
+ return (this.hasClass('is-hidden') || this.css('display') === 'none');
+ }
+};
+
+$K.inherit(App.Element, Dom.prototype);
+App.Target = function(app, selector)
+{
+ this.app = app;
+ this.parse(selector);
+};
+
+App.Target.prototype = {
+ isOpened: function()
+ {
+ return !this.isClosed();
+ },
+ isClosed: function()
+ {
+ var self = this;
+ var count = 0;
+ var len = this.length;
+ this.each(function(node)
+ {
+ var $node = $K.dom(node);
+ if ($node.hasClass('is-hidden') || $node.css('display') === 'none')
+ {
+ count++;
+ }
+ });
+
+ return (count === len);
+ }
+};
+
+$K.inherit(App.Target, Dom.prototype);
+App.Api = function(app)
+{
+ this.app = app;
+ this.modules = app.modules;
+};
+
+App.Api.prototype = {
+ trigger: function(name, args)
+ {
+ var arr = name.split('.');
+ var isNamed = (arr.length === 3);
+ var isApp = (arr.length === 1);
+ var isCallback = (arr[0] === 'on' || arr[0] === 'off');
+
+ var module = arr[0];
+ var method = arr[1];
+ var id = false;
+
+ if (isApp)
+ {
+ module = false;
+ method = arr[0];
+ }
+ else if (isNamed)
+ {
+ method = arr[2];
+ id = arr[1];
+ }
+
+ // app
+ if (isApp)
+ {
+ if (typeof this.app[method] === 'function')
+ {
+ return this._call(this.app, method, args);
+ }
+ }
+ // callback
+ else if (isCallback)
+ {
+ return (module === 'on') ? this.app.on(module, args[0]) : this.app.off(module, args[0] || undefined);
+ }
+ else
+ {
+ // service
+ if (this._isInstanceExists(this.app, module))
+ {
+ return this._call(this.app[module], method, args);
+ }
+ // module / plugin / addon
+ else if (this._isInstanceExists(this.modules, module))
+ {
+ this._doApi(module, method, id, args)
+ }
+ }
+ },
+
+ // private
+ _isInstanceExists: function(obj, name)
+ {
+ return (typeof obj[name] !== 'undefined');
+ },
+ _doApi: function(module, method, id, args)
+ {
+ for (var key in this.modules[module])
+ {
+ if (id === false || id === key)
+ {
+ var instance = this.modules[module][key];
+ this._call(instance, method, args);
+ }
+ }
+ },
+ _call: function(instance, method, args)
+ {
+ if (typeof instance[method] === 'function')
+ {
+ return instance[method].apply(instance, args);
+ }
+ }
+};
+App.Broadcast = function(app)
+{
+ this.app = app;
+ this.modules = app.modules;
+ this.callback = app.appcallback;
+};
+
+App.Broadcast.prototype = {
+ trigger: function(name, sender, args)
+ {
+ if (Array.isArray(name))
+ {
+ sender._id = name[0];
+ name = name[1];
+ }
+ else if (sender && typeof sender.context !== 'undefined')
+ {
+ sender._id = sender.context.getName();
+ }
+
+ args.unshift(sender);
+
+ for (var moduleName in this.modules)
+ {
+ for (var key in this.modules[moduleName])
+ {
+ var instance = this.modules[moduleName][key];
+ this._call(instance, name, args, sender);
+ }
+ }
+
+ this.callback.trigger(name, args);
+ },
+
+
+ // private
+ _call: function(instance, name, args, sender)
+ {
+ // new
+ if (typeof instance['onmessage'] !== 'undefined')
+ {
+ var arr = name.split('.');
+ var func = instance['onmessage'][arr[0]];
+
+ if (arr.length === 1 && typeof func === 'function')
+ {
+ func.apply(instance, args);
+ }
+ else if (arr.length === 2 && typeof func !== 'undefined' && typeof func[arr[1]] === 'function')
+ {
+ func[arr[1]].apply(instance, args);
+ }
+ }
+
+ // 7.1.1 compatibility
+ var arr = name.split('.');
+ if (arr.length === 1)
+ {
+ if (typeof instance['on' + name] === 'function')
+ {
+ instance['on' + name].apply(instance, args);
+ }
+ }
+ else
+ {
+ arr[0] = 'on' + arr[0];
+
+ // without id
+ var func = this.app.utils.checkProperty(instance, arr);
+ if (typeof func === 'function')
+ {
+ func.apply(instance, args);
+ }
+
+ // with id
+ if (sender && sender._id)
+ {
+ var idArr = [arr[0], sender._id, arr[1]];
+ var func = this.app.utils.checkProperty(instance, idArr);
+ if (typeof func === 'function')
+ {
+ func.apply(instance, args);
+ }
+ }
+ }
+ }
+};
+App.Builder = function(app)
+{
+ this.app = app;
+ this.opts = app.opts;
+ this.$doc = app.$doc;
+ this.dataNamespace = app.dataNamespace;
+};
+
+App.Builder.prototype = {
+ build: function()
+ {
+ this._buildServices();
+ this._buildModules();
+ },
+
+ // private
+ _buildServices: function()
+ {
+ var services = [];
+ var startableServices = [];
+ for (var name in $K.services)
+ {
+ if (this.app.coreServices.indexOf(name) === -1)
+ {
+ this.app[name] = $K.create('service.' + name, this.app);
+ this.app.bindableServices.push(name);
+ services.push(name);
+ startableServices.push(name);
+ }
+ }
+
+ // make core services to use another services
+ for (var i = 0; i < this.app.coreServices.length; i++)
+ {
+ var name = this.app.coreServices[i];
+ if (name !== 'options') services.push(name);
+ }
+
+ // binding
+ for (var i = 0; i < services.length; i++)
+ {
+ var service = services[i];
+ for (var z = 0; z < this.app.bindableServices.length; z++)
+ {
+ var inj = this.app.bindableServices[z];
+ if (service !== inj)
+ {
+ this.app[service][inj] = this.app[inj];
+ }
+ }
+ }
+
+ this.app.services = startableServices;
+ },
+ _buildModules: function()
+ {
+ this.$doc.find('[' + this.dataNamespace + ']').each(function(node, i)
+ {
+ var $el = $K.dom(node);
+ var name = $el.attr(this.dataNamespace);
+ var id = ($el.attr('id')) ? $el.attr('id') : name + '-' + i;
+ id = ($el.attr('data-name')) ? $el.attr('data-name') : id;
+ var instance = new App.Module(this.app, $el, name, id);
+
+ this._storeElementModule(instance, name, id);
+
+ }.bind(this));
+ },
+ _storeElementModule: function(instance, name, id)
+ {
+ if (instance)
+ {
+ if (typeof this.app.modules[name] === 'undefined')
+ {
+ this.app.modules[name] = {};
+ }
+
+ this.app.modules[name][id] = instance;
+ }
+ }
+};
+App.Starter = function(app)
+{
+ this.app = app;
+ this.queue = {
+ 'start': app.queueStart,
+ 'stop': app.queueStop
+ };
+ this.priority = {
+ 'start': { 'service': [], 'module': [] },
+ 'stop': { 'service': [], 'module': [] }
+ };
+};
+
+App.Starter.prototype = {
+ start: function()
+ {
+ this._stopStart('service', 'start');
+ this._stopStart('module', 'start');
+ },
+ stop: function()
+ {
+ this._stopStart('service', 'stop');
+ this._stopStart('module', 'stop');
+ },
+
+ // private
+ _stopStart: function(type, method)
+ {
+ // priority
+ var queue = this.queue[method][type];
+ for (var key in queue)
+ {
+ var name = queue[key];
+ var instance = (type === 'service') ? this.app[name] : this.app.modules[name];
+
+ this._callInstances(type, method, instance);
+ this.priority[method][type].push(name);
+ }
+
+ // common
+ var modules = (type === 'service') ? this.app.services : this.app.modules;
+ for (var key in modules)
+ {
+ var name = (type === 'service') ? modules[key] : key;
+
+ if (this.priority[method][type].indexOf(name) === -1)
+ {
+ var instance = (type === 'service') ? this.app[name] : modules[name];
+ this._callInstances(type, method, instance);
+ }
+ }
+ },
+ _stopModuleEvents: function(method, instance)
+ {
+ if (method === 'stop')
+ {
+ if (typeof instance._eventNodes !== 'undefined')
+ {
+ for (var i = 0; i < instance._eventNodes.length; i++)
+ {
+ instance._eventNodes[i].off('.generatedevent');
+ }
+ }
+
+ if (typeof instance._eventCommands !== 'undefined')
+ {
+ for (var i = 0; i < instance._eventCommands.length; i++)
+ {
+ instance._eventCommands[i].off('.generatedcommand');
+ }
+ }
+ }
+ },
+ _callInstances: function(type, method, instance)
+ {
+ if (type === 'service')
+ {
+ this._call(instance, method);
+ }
+ else
+ {
+ for (var key in instance)
+ {
+ this._call(instance[key], method);
+ this._stopModuleEvents(method, instance[key]);
+ }
+ }
+ },
+ _call: function(instance, method, args)
+ {
+ if (typeof instance[method] === 'function')
+ {
+ return instance[method].apply(instance, args);
+ }
+ }
+};
+$K.add('extend', 'dom', $K.Dom.prototype);
+$K.add('service', 'animate', {
+ init: function(app)
+ {
+ this.app = app;
+
+ // local
+ this.animationOpt = true;
+ },
+ run: function(element, animation, callback)
+ {
+ return new $K.AnimatePlay(this.app, element, animation, callback, this.animationOpt);
+ },
+ remove: function(element)
+ {
+ this.$el = $K.dom(element);
+ var effect = this.$el.attr('kube-animate-effect');
+
+ this.$el.hide();
+ this.$el.removeClass(effect);
+ this.$el.off('animationend webkitAnimationEnd');
+ }
+});
+
+$K.AnimatePlay = function(app, element, animation, callback, animationOpt)
+{
+ this.hidableEffects = ['fadeOut', 'flipOut', 'slideUp', 'zoomOut', 'slideOutUp', 'slideOutRight', 'slideOutLeft'];
+ this.prefix = 'kube-';
+ this.prefixes = ['', '-webkit-'];
+
+ this.utils = app.utils;
+ this.$el = $K.dom(element);
+ this.$body = $K.dom('body');
+ this.callback = callback;
+ this.animation = (!animationOpt) ? this._buildAnimationOff(animation) : animation;
+
+ this._setHeight();
+
+ // animate
+ if (this._isAnimate()) this._animate();
+ else this._toggle();
+};
+
+$K.AnimatePlay.prototype = {
+ _setHeight: function()
+ {
+ if (this.animation === 'slideUp' || this.animation === 'slideDown')
+ {
+ this.$el.height(this.$el.height());
+ }
+ },
+ _buildAnimationOff: function(animation)
+ {
+ return (this._isHidable(animation)) ? 'hide' : 'show';
+ },
+ _isAnimate: function()
+ {
+ return (this.animation !== 'show' && this.animation !== 'hide');
+ },
+ _isHidable: function(effect)
+ {
+ return (this.hidableEffects.indexOf(effect) !== -1);
+ },
+ _clean: function()
+ {
+ this.$body.removeClass('is-no-scroll-x');
+ this.$el.removeClass(this.prefix + this.animation);
+ this.$el.removeAttr('kube-animate-effect');
+ },
+ _toggle: function()
+ {
+ if (this.animation === 'show') this.$el.show();
+ else this.$el.hide();
+
+ if (typeof this.callback === 'function') this.callback(this);
+ },
+ _animate: function()
+ {
+ this.$body.addClass('is-no-scroll-x');
+ this.$el.show();
+
+ this.$el.addClass(this.prefix + this.animation);
+ this.$el.attr('kube-animate-effect', this.prefix + this.animation);
+ this._complete();
+ },
+ _complete: function()
+ {
+
+ this.$el.one('animationend webkitAnimationEnd', function(e)
+ {
+ if (this.$el.hasClass(this.prefix + this.animation)) this._clean();
+ if (this._isHidable(this.animation)) this.$el.hide();
+
+ if (this.animation === 'slideUp' || this.animation === 'slideDown') this.$el.css('height', '');
+ if (typeof this.callback === 'function') this.callback(this.$el);
+
+ }.bind(this));
+ }
+};
+$K.add('service', 'transition', {
+ init: function(app)
+ {
+ this.transitionOpt = true;
+ },
+ run: function(element, params)
+ {
+ return new $K.TransitionPlay(params, element, this.transitionOpt);
+
+ },
+ remove: function(element)
+ {
+ this.$el = $K.dom(element);
+
+ var classname = this.$el.attr('kube-transition-class');
+ if (classname)
+ {
+ this.$el.removeClass(classname);
+ this.$el.removeAttr('kube-transition-class');
+ }
+
+ var css = this.$el.attr('kube-transition-css');
+ if (css)
+ {
+ var names = css.split(',');
+ for (var i = 0; i < names.length; i++)
+ {
+ this.$el.css(names[i], '');
+ }
+
+ this.$el.removeAttr('kube-transition-css');
+ }
+
+ this.$el.off('transitionend webkitTransitionEnd');
+ }
+});
+
+
+$K.TransitionPlay = function(params, element, transitionOpt)
+{
+ this.$el = $K.dom(element);
+ this.params = params;
+
+ this._transition();
+};
+
+$K.TransitionPlay.prototype = {
+ _transition: function()
+ {
+ if (this.params.classname)
+ {
+ this.$el.addClass(this.params.classname);
+ this.$el.attr('kube-transition-class', this.params.classname);
+ }
+
+ if (this.params.css)
+ {
+ this.$el.css(this.params.css);
+
+ var names = [];
+ for (var key in this.params.css)
+ {
+ names.push(key);
+ }
+
+ this.$el.attr('kube-transition-css', names.join(','))
+ }
+
+ this._complete();
+ },
+ _complete: function()
+ {
+ this.$el.one('transitionend webkitTransitionEnd', function(e)
+ {
+ if (typeof this.params.callback === 'function') this.params.callback(this.$el);
+
+ }.bind(this));
+ }
+};
+$K.add('service', 'lang', {
+ init: function(app)
+ {
+ this.app = app;
+ this.opts = app.opts;
+
+ var lang = (this.opts.lang) ? this.opts.lang : 'en';
+
+ // build
+ this.vars = this.build(lang);
+ },
+ build: function(lang)
+ {
+ lang = ($K.lang[lang] === undefined) ? 'en' : lang;
+
+ return ($K.lang[lang] !== undefined) ? $K.lang[lang] : [];
+ },
+ rebuild: function(lang)
+ {
+ this.opts.lang = lang;
+ this.vars = this.build(lang);
+ },
+ extend: function(obj)
+ {
+ this.vars = $K.extend(this.vars, obj);
+ },
+ parse: function(str)
+ {
+ if (str === undefined)
+ {
+ return '';
+ }
+
+ var matches = str.match(/## (.*?) ##/g);
+ if (matches)
+ {
+ for (var i = 0; i < matches.length; i++)
+ {
+ var key = matches[i].replace(/^##\s/g, '').replace(/\s##$/g, '');
+ str = str.replace(matches[i], this.get(key));
+ }
+ }
+
+ return str;
+ },
+ get: function(name)
+ {
+ return (typeof this.vars[name] !== 'undefined') ? this.vars[name] : '';
+ }
+});
+$K.add('service', 'options', {
+ init: function(app, type, opts)
+ {
+ this.app = app;
+ this.utils = app.utils;
+
+ return (type === 'global') ? this._build(opts) : this._buildElement(opts);
+ },
+ _build: function(opts)
+ {
+ return (opts) ? this._extendFromElements(opts) : {};
+ },
+ _buildElement: function($el)
+ {
+ return $K.extend(
+ {},
+ $el.data()
+ );
+ },
+ _extendFromElements: function(options)
+ {
+ return (options.hasOwnProperty('append')) ? this.utils.extendData(options, options['append']) : options;
+ }
+});
+$K.add('service', 'response', {
+ init: function(app)
+ {
+ this.app = app;
+ },
+ // public
+ parse: function(str)
+ {
+ if (str === '') return false;
+
+ var obj = (typeof str === 'object') ? str : JSON.parse(str);
+ if (obj[0] !== undefined)
+ {
+ for (var item in obj)
+ {
+ this._parseItem(obj[item]);
+ }
+ }
+ else
+ {
+ this._parseItem(obj);
+ }
+
+ return obj;
+ },
+ // private
+ _parseItem: function(item)
+ {
+ if (item.type === 'location')
+ {
+ top.location.href = item.data;
+ }
+ else if (item.type === 'message')
+ {
+ this.message.show(item.data);
+ }
+ else
+ {
+ for (var key in item.data)
+ {
+ var val = item.data[key];
+ var $el = $K.dom(key);
+
+ if (item.type === 'value')
+ {
+ val = (val === null || val === false) ? 0 : val;
+ val = (val === true) ? 1 : val;
+
+ $el.val(val);
+ }
+ else if (item.type === 'html')
+ {
+ val = (val === null || val === false) ? '' : val;
+
+ $el.html(this._stripslashes(val));
+ }
+ else if (item.type === 'addClass')
+ {
+ $el.addClass(val);
+ }
+ else if (item.type === 'removeClass')
+ {
+ $el.removeClass(val);
+ }
+ else if (item.type === 'show')
+ {
+ $el.removeClass('is-hidden');
+ }
+ else if (item.type === 'hide')
+ {
+ $el.addClass('is-hidden');
+ }
+ else if (item.type === 'animate')
+ {
+ this.animate.run($el, val);
+ }
+ }
+ }
+
+ return item;
+ },
+ _stripslashes: function(str)
+ {
+ return (str+'').replace(/\0/g, '0').replace(/\\([\\'"])/g, '$1');
+ }
+});
+$K.add('service', 'progress', {
+ init: function(app)
+ {
+ this.app = app;
+ this.$body = app.$body;
+
+ // defaults
+ this.defaults = {
+ selector: 'kube-progress',
+ target: false,
+ value: 100
+ }
+
+ // local
+ this.$progress = false;
+ this.$progressBar = false;
+ },
+ // public
+ stop: function()
+ {
+ this.$progress = false;
+ this.$progressBar = false;
+
+ $K.dom('#' + this.params.selector).remove();
+
+ if (this.params.target)
+ {
+ var $target = $K.dom(this.params.target);
+ $target.removeClass('is-relative');
+ }
+ },
+ show: function(params)
+ {
+ this._buildDefaults(params);
+ this._build();
+ },
+ hide: function(params)
+ {
+ if (this.$progress)
+ {
+ this._buildDefaults(params);
+ this.animate.run(this.$progress, 'fadeOut', this.stop.bind(this));
+ }
+ },
+ update: function(params)
+ {
+ this._buildDefaults(params);
+
+ if (!this.$progress) this._build();
+ this._setValue();
+ },
+
+ // private
+ _buildDefaults: function(data)
+ {
+ this.params = $K.extend({}, this.defaults, data);
+ },
+ _build: function()
+ {
+ this.stop();
+
+ this.$progress = $K.dom('
');
+ this.$progress.attr('id', this.params.selector);
+ this.$progress.addClass(this.params.selector);
+
+ this.$progressBar = $K.dom('
');
+ this.$progress.append(this.$progressBar);
+
+ if (this.params.target)
+ {
+ var $target = $K.dom(this.params.target);
+ if ($target.css('position') === 'static')
+ {
+ $target.addClass('is-relative');
+ }
+
+ $target.append(this.$progress);
+ }
+ else
+ {
+ this.$progress.addClass('is-fixed');
+ this.$body.append(this.$progress);
+ }
+ },
+ _setValue: function()
+ {
+ this.$progressBar.css('width', this.params.value + '%');
+ }
+});
+$K.add('service', 'message', {
+ init: function(app)
+ {
+ this.app = app;
+
+ // defaults
+ this.defaults = {
+ name: false,
+ delay: 7, // seconds
+ message: '',
+ position: 'right', // left, centered, line
+ positions: ['is-left', 'is-right', 'is-center', 'is-centered', 'is-line'],
+ type: false,
+ types: ['is-error', 'is-success', 'is-focus', 'is-black'],
+ selector: 'kube-message'
+ };
+
+ // animation
+ this.currentAnimation = [];
+ this.animation = {
+ line: ['slideInDown', 'slideOutUp'],
+ centered: ['slideInDown', 'slideOutUp'],
+ left: ['slideInLeft', 'slideOutLeft'],
+ right: ['slideInRight', 'slideOutRight']
+ };
+
+ // local
+ this.$message = false;
+ this.timeout = false;
+ },
+ // public
+ stop: function()
+ {
+ clearTimeout(this.timeout);
+
+ $K.dom('#' + this.params.selector).remove();
+
+ this.$message = false;
+ this.$doc.off('.kube.message');
+ },
+ show: function(params)
+ {
+ this._buildDefaults(params);
+
+ // stop
+ this.stop();
+
+ // build
+ this._build();
+ this._open();
+ },
+ hide: function(params)
+ {
+ this._buildDefaults(params);
+ this._close();
+ },
+ // private
+ _broadcast: function(message)
+ {
+ message = 'message.' + message;
+ message = (this.params.name !== false ) ? [this.params.name, message] : message;
+
+ this.app.broadcast(message, this);
+ },
+ _buildDefaults: function(data)
+ {
+ this.params = $K.extend({}, this.defaults, data);
+ },
+ _buildAnimation: function()
+ {
+ this.currentAnimation = this.animation[this.params.position];
+ },
+ _buildClose: function()
+ {
+ this.$message.on('click.kube.message', this._close.bind(this));
+ },
+ _buildType: function()
+ {
+ if (this.params.type)
+ {
+ this.$message.removeClass(this.params.types.join(' '));
+ this.$message.addClass(this.params.type);
+ }
+ },
+ _buildPosition: function()
+ {
+ this.$message.removeClass(this.params.positions.join(' '));
+ this.$message.addClass('is-' + this.params.position);
+ },
+ _buildMessage: function()
+ {
+ this.$message.html(this.params.message);
+ },
+ _build: function()
+ {
+ this.$message = $K.dom('');
+ this.$message.attr('id', this.params.selector);
+ this.$message.addClass('message is-hidden');
+
+ this.$body.append(this.$message);
+ },
+ _handleKeyboard: function(e)
+ {
+ if (e.which === 27) this._close();
+ },
+ _open: function()
+ {
+ this._broadcast('open');
+
+ this._buildClose();
+ this._buildType();
+ this._buildPosition();
+ this._buildAnimation();
+ this._buildMessage();
+
+ this.animate.run(this.$message, this.currentAnimation[0], this._opened.bind(this));
+ },
+ _close: function(e)
+ {
+ if (this.$message)
+ {
+ this._broadcast('close');
+ this.animate.run(this.$message, this.currentAnimation[1], this._closed.bind(this));
+ }
+ },
+ _opened: function()
+ {
+ this.$doc.on('keyup.kube.message', this._handleKeyboard.bind(this));
+ this.timeout = setTimeout(this._close.bind(this), this.params.delay * 1000);
+
+ this._broadcast('opened');
+ },
+ _closed: function()
+ {
+ this.stop();
+ this._broadcast('closed');
+ }
+});
+$K.add('service', 'modal', {
+ init: function(app)
+ {
+ this.app = app;
+
+ // defaults
+ this.defaults = {
+ target: false,
+ name: false,
+ url: false,
+ title: false,
+ width: '600px',
+ height: false,
+ handle: false,
+ commands: false
+ };
+
+ // local
+ this.$box = false;
+ this.$modal = false;
+
+ },
+ // public
+ stop: function()
+ {
+ if (this.$box)
+ {
+ this.$box.remove();
+ this.$box = false;
+ this.$modal = false;
+
+ this.$doc.off('.kube.modal');
+ this.$win.off('.kube.modal');
+ }
+
+ if (this.$overlay)
+ {
+ this.$overlay.remove();
+ }
+ },
+ open: function(params)
+ {
+ this._buildDefaults(params);
+
+ if (this.params.url)
+ {
+ this._openUrl();
+ }
+ else if (this.params.target)
+ {
+ this._openTarget();
+ }
+ },
+ close: function()
+ {
+ this._close();
+ },
+ resize: function()
+ {
+ this.$modal.setWidth(this.params.width);
+ this.$modal.updatePosition();
+ },
+
+ // private
+ _broadcast: function(message)
+ {
+ message = 'modal.' + message;
+
+ this.app.broadcast([this.params.name, message], this, this.$modal, this.$modalForm);
+ },
+ _isOpened: function()
+ {
+ return (this.$modal && this.$modal.hasClass('is-open'));
+ },
+ _openUrl: function()
+ {
+ $K.ajax.post({
+ url: this.params.url,
+ success: this._doOpen.bind(this)
+ });
+ },
+ _openTarget: function()
+ {
+ var template = $K.dom(this.params.target).clone().html();
+ this._doOpen(template);
+ },
+ _doOpen: function(template)
+ {
+ this.stop();
+
+ if (!this._isDesktop())
+ {
+ document.activeElement.blur();
+ }
+
+
+ this._createModal(template);
+
+ this._buildModalBox();
+ this._buildOverlay();
+ this._buildModal();
+ this._buildModalForm();
+ this._buildModalCommands();
+
+ this.$modal.updatePosition();
+ this._broadcast('open');
+
+ this.animate.run(this.$box, 'fadeIn', this._opened.bind(this));
+ this.animate.run(this.$overlay, 'fadeIn');
+ },
+ _opened: function()
+ {
+ this.$modal.addClass('is-open');
+ this.$box.on('mousedown.kube.modal', this._close.bind(this));
+ this.$doc.on('keyup.kube.modal', this._handleEscape.bind(this));
+ this.$win.on('resize.kube.modal', this.resize.bind(this));
+ this.$modal.getBody().find('input[type=text],input[type=url],input[type=email]').on('keydown.kube.modal', this._handleEnter.bind(this));
+
+ this._broadcast('opened');
+ },
+ _close: function(e)
+ {
+ if (!this.$box || !this._isOpened()) return;
+
+ if (e)
+ {
+ if (!this._needToClose(e.target))
+ {
+ return;
+ }
+
+ e.stopPropagation();
+ e.preventDefault();
+ }
+
+ this._broadcast('close');
+
+ this.animate.run(this.$box, 'fadeOut', this._closed.bind(this));
+ this.animate.run(this.$overlay, 'fadeOut');
+ },
+ _closed: function()
+ {
+ this.$modal.removeClass('is-open');
+ this.$box.off('.kube.modal');
+ this.$doc.off('.kube.modal');
+ this.$win.off('.kube.modal');
+
+ this._broadcast('closed');
+ },
+ _createModal: function(template)
+ {
+ this.$modal = $K.create('class.modal.element', this.app, template);
+ },
+ _buildDefaults: function(data)
+ {
+ this.params = $K.extend({}, this.defaults, data);
+ },
+ _buildModalBox: function()
+ {
+ this.$box = $K.dom('
');
+ this.$box.attr('id', 'kube-modal');
+ this.$box.addClass('modal-box is-hidden');
+ this.$box.html('');
+ this.$body.append(this.$box);
+ },
+ _buildOverlay: function()
+ {
+ this.$overlay = $K.dom('#kube-overlay');
+ if (this.$overlay.length === 0)
+ {
+ this.$overlay = $K.dom('
');
+ this.$overlay.attr('id', 'kube-overlay');
+ this.$overlay.addClass('overlay is-hidden');
+ this.$body.prepend(this.$overlay);
+ }
+ },
+ _buildModal: function()
+ {
+ this.$box.append(this.$modal);
+
+ this.$modal.setTitle(this.params.title);
+ this.$modal.setHeight(this.params.height);
+ this.$modal.setWidth(this.params.width);
+ },
+ _buildModalCommands: function()
+ {
+ if (this.params.commands)
+ {
+ var commands = this.params.commands;
+ var $footer = this.$modal.getFooter();
+ for (var key in commands)
+ {
+ var $btn = $K.dom('
');
+
+ $btn.addClass('button');
+ $btn.html(commands[key].title);
+ $btn.attr('data-command', key);
+
+ if (typeof commands[key].classname !== 'undefined')
+ {
+ $btn.addClass(commands[key].classname);
+ }
+
+ if (typeof commands[key].close !== 'undefined')
+ {
+ $btn.attr('data-action', 'close');
+ $btn.on('click', this._close.bind(this));
+ }
+ else
+ {
+ $btn.on('click', this._handleCommand.bind(this));
+ }
+
+ $footer.append($btn);
+ }
+ }
+ },
+ _buildModalForm: function()
+ {
+ this.$modalForm = $K.create('modal.form', this.app, this.$modal.getForm());
+ },
+ _needToClose: function(el)
+ {
+ var $target = $K.dom(el);
+ if ($target.attr('data-action') === 'close' || this.$modal.isCloseNode(el) || $target.closest('.modal').length === 0)
+ {
+ return true;
+ }
+
+ return false;
+ },
+ _handleCommand: function(e)
+ {
+ var $btn = $K.dom(e.target).closest('button');
+ var command = $btn.attr('data-command');
+
+ if (command !== 'cancel') e.preventDefault();
+
+ this._broadcast(command);
+ },
+ _handleEnter: function(e)
+ {
+ if (e.which === 13)
+ {
+ if (this.params.handle)
+ {
+ e.preventDefault();
+ this._broadcast(this.params.handle);
+ }
+ }
+ },
+ _handleEscape: function(e)
+ {
+ if (e.which === 27) this._close();
+ },
+ _isDesktop: function()
+ {
+ return !/(iPhone|iPod|iPad|Android)/.test(navigator.userAgent);
+ }
+});
+
+$K.add('class', 'modal.form', {
+ extends: ['dom'],
+ init: function(app, element)
+ {
+ this.app = app;
+
+ // build
+ this.build(element);
+ },
+
+ // public
+ build: function(element)
+ {
+ this.parse(element);
+ },
+ getData: function()
+ {
+ var data = {};
+ this.find('[name]').each(function(node)
+ {
+ var $node = $K.dom(node);
+ data[$node.attr('name')] = $node.val();
+ });
+
+ return data;
+ },
+ setData: function(data)
+ {
+ this.find('[name]').each(function(node)
+ {
+ var $node = $K.dom(node);
+ var name = $node.attr('name');
+ if (data.hasOwnProperty(name))
+ {
+ if (node.type && node.type === 'checkbox') node.checked = data[name];
+ else $node.val(data[name]);
+ }
+ });
+ },
+ getItem: function(name)
+ {
+ return this.find('[name=' + name + ']');
+ }
+});
+$K.add('class', 'modal.element', {
+ extends: ['dom'],
+ init: function(app, template)
+ {
+ this.app = app;
+ this.opts = app.opts;
+ this.$win = app.$win;
+
+ // init
+ this._init(template);
+ },
+
+ // get
+ getForm: function()
+ {
+ return this.find('form');
+ },
+ getHeader: function()
+ {
+ return this.$modalHeader;
+ },
+ getBody: function()
+ {
+ return this.$modalBody;
+ },
+ getFooter: function()
+ {
+ return this.$modalFooter;
+ },
+
+ // set
+ setTitle: function(title)
+ {
+ if (title) this.$modalHeader.html(title);
+ },
+ setWidth: function(width)
+ {
+ width = (parseInt(width) >= this.$win.width()) ? '96%' : width;
+
+ this.css('max-width', width);
+ },
+ setHeight: function(height)
+ {
+ if (height !== false) this.$modalBody.css('height', height);
+ },
+
+ // update
+ updatePosition: function()
+ {
+ var width = this.width();
+ this.css({ 'left': '50%', 'margin-left': '-' + (width/2) + 'px' });
+
+ var windowHeight = this.$win.height();
+ var height = this.height();
+ var marginTop = (windowHeight/2 - height/2);
+
+ if (height < windowHeight && marginTop !== 0)
+ {
+ this.css('margin-top', marginTop + 'px');
+ }
+ },
+
+ // is
+ isCloseNode: function(el)
+ {
+ return (el === this.$modalClose.get());
+ },
+
+ // private
+ _init: function(template)
+ {
+ this._build();
+ this._buildClose();
+ this._buildHeader();
+ this._buildBody();
+ this._buildFooter();
+ this._buildTemplate(template);
+ },
+ _build: function()
+ {
+ this.parse('');
+ this.addClass('modal');
+ this.attr('dir', this.opts.direction);
+ },
+ _buildClose: function()
+ {
+ this.$modalClose = $K.dom('
');
+ this.$modalClose.addClass('close');
+
+ this.append(this.$modalClose);
+ },
+ _buildHeader: function()
+ {
+ this.$modalHeader = $K.dom('');
+ this.$modalHeader.addClass('modal-header');
+
+ this.append(this.$modalHeader);
+ },
+ _buildBody: function()
+ {
+ this.$modalBody = $K.dom('
');
+ this.$modalBody.addClass('modal-body');
+
+ this.append(this.$modalBody);
+ },
+ _buildFooter: function()
+ {
+ this.$modalFooter = $K.dom('
');
+ this.$modalFooter.addClass('modal-footer');
+
+ this.append(this.$modalFooter);
+ },
+ _buildTemplate: function(template)
+ {
+ this.$modalBody.html(template);
+ }
+});
+$K.add('service', 'observer', {
+ init: function(app)
+ {
+ this.app = app;
+ this.opts = app.opts;
+
+ if (this._isObserve())
+ {
+ this._build();
+ }
+ },
+
+ // private
+ _isObserve: function()
+ {
+ return (typeof this.opts.observer !== 'undefined' && window.MutationObserver);
+ },
+ _build: function()
+ {
+ var self = this;
+ var observer = new MutationObserver(function(mutations)
+ {
+ mutations.forEach(function(mutation)
+ {
+ var newNodes = mutation.addedNodes;
+ if (newNodes.length === 0 || (newNodes.length === 1 && newNodes.nodeType === 3))
+ {
+ return;
+ }
+
+ self._iterate();
+ });
+ });
+
+ // pass in the target node, as well as the observer options
+ observer.observe(document, {
+ subtree: true,
+ childList: true
+ });
+ },
+ _iterate: function()
+ {
+ var self = this;
+ var $nodes = $K.dom('[data-kube]').not('[data-loaded]');
+ $nodes.each(function(node, i)
+ {
+ var $el = $K.dom(node);
+ var name = $el.attr('data-kube');
+ var id = ($el.attr('id')) ? $el.attr('id') : name + '-' + (self.app.servicesIndex + i);
+ var instance = new App.Module(self.app, $el, name, id);
+
+ self._storeElementModule(instance, name, id)
+ self._call(instance, 'start');
+ });
+
+ // $R
+ if (typeof $R !== 'undefined')
+ {
+ $R('[data-redactor]');
+ }
+ },
+ _call: function(instance, method, args)
+ {
+ if (typeof instance[method] === 'function')
+ {
+ return instance[method].apply(instance, args);
+ }
+ },
+ _storeElementModule: function(instance, name, id)
+ {
+ if (instance)
+ {
+ if (typeof this.app.modules[name] === 'undefined')
+ {
+ this.app.modules[name] = {};
+ }
+
+ this.app.modules[name][id] = instance;
+ }
+ }
+});
+$K.add('service', 'utils', {
+ init: function(app)
+ {
+ this.app = app;
+ },
+
+ // string
+ parseOptsString: function(str)
+ {
+ var properties = str.replace('{', '').replace('}', '').trim().replace(/;$/, '').split(';');
+ var obj = {};
+ properties.forEach(function(property) {
+ var tup = property.split(':');
+ obj[tup[0].trim()] = tup[1].trim().replace(/'/g, '');
+ });
+
+ return obj;
+ },
+ ucfirst: function(str)
+ {
+ return str.charAt(0).toUpperCase() + str.slice(1);
+ },
+
+ // object
+ checkProperty: function(obj)
+ {
+ var args = (arguments[1] && Array.isArray(arguments[1])) ? arguments[1] : [].slice.call(arguments, 1);
+
+ for (var i = 0; i < args.length; i++)
+ {
+ if (!obj || (typeof obj[args[i]] === 'undefined'))
+ {
+ return false;
+ }
+
+ obj = obj[args[i]];
+ }
+
+ return obj;
+ },
+
+ // data
+ extendData: function(data, elements)
+ {
+ if (typeof elements === 'object')
+ {
+ data = $K.extend({}, data, elements);
+ }
+ else if (typeof elements === 'string')
+ {
+ var $elms = $K.dom(elements);
+ $elms.each(function(node)
+ {
+ var $node = $K.dom(node);
+ if (node.tagName === 'FORM')
+ {
+ data = $K.extend({}, data, $node.serialize(true));
+ }
+ else
+ {
+ var name = ($node.attr('name')) ? $node.attr('name') : $node.attr('id');
+ var val = $node.val();
+ data[name] = (this._isNumber(val)) ? parseFloat(val) : this._getBooleanFromStr(val);
+ }
+ });
+ }
+
+ return data;
+ },
+ _isNumber: function(str)
+ {
+ return !isNaN(str) && !isNaN(parseFloat(str));
+ },
+ _getBooleanFromStr: function(str)
+ {
+ if (str === 'true') return true;
+ else if (str === 'false') return false;
+
+ return str;
+ }
+});
+
+ window.Kube = window.$K = $K;
+}());
+(function($K)
+{
+ $K.add('module', 'alert', {
+ init: function(app, context)
+ {
+ this.app = app;
+ this.animate = app.animate;
+
+ // context
+ this.context = context;
+ this.$element = context.getElement();
+ },
+ // events
+ onclick: function(e, element, type)
+ {
+ if (type === 'close')
+ {
+ this.close(e);
+ }
+ },
+ // public
+ open: function(e)
+ {
+ if (this.$element.isOpened()) return;
+ if (e) e.preventDefault();
+
+ this.app.broadcast('alert.open', this);
+ this.animate.run(this.$element, 'fadeIn', this._opened.bind(this));
+ },
+ close: function(e)
+ {
+ if (this.$element.isClosed()) return;
+ if (e) e.preventDefault();
+
+ this.app.broadcast('alert.close', this);
+ this.animate.run(this.$element, 'fadeOut', this._closed.bind(this));
+ },
+ // private
+ _opened: function()
+ {
+ this.app.broadcast('alert.opened', this);
+ },
+ _closed: function()
+ {
+ this.app.broadcast('alert.closed', this);
+ }
+ });
+})(Kube);
+(function($K)
+{
+ $K.add('module', 'toggle', {
+ init: function(app, context)
+ {
+ this.app = app;
+ this.animate = app.animate;
+
+ // defaults
+ var defaults = {
+ target: false
+ };
+
+ // context
+ this.context = context;
+ this.params = context.getParams(defaults);
+ this.$element = context.getElement();
+ this.$target = context.getTarget();
+ },
+ // public
+ start: function()
+ {
+ this.$element.on('click.kube.toggle', this.toggle.bind(this));
+ },
+ stop: function()
+ {
+ this.$element.off('.kube.toggle');
+ },
+ toggle: function(e)
+ {
+ return (this.$target.isOpened()) ? this.close(e) : this.open(e);
+ },
+ open: function(e)
+ {
+ if (this.$target.isOpened()) return;
+ if (e) e.preventDefault();
+
+ this.app.broadcast('toggle.open', this);
+ this.animate.run(this.$target, 'slideDown', this._opened.bind(this));
+ },
+ close: function(e)
+ {
+ if (this.$target.isClosed()) return;
+ if (e) e.preventDefault();
+
+ this.app.broadcast('toggle.close', this);
+ this.animate.run(this.$target, 'slideUp', this._closed.bind(this));
+ },
+
+ // private
+ _opened: function()
+ {
+ this.app.broadcast('toggle.opened', this);
+ },
+ _closed: function()
+ {
+ this.app.broadcast('toggle.closed', this);
+ }
+ });
+})(Kube);
+(function($K)
+{
+ $K.add('module', 'sticky', {
+ init: function(app, context)
+ {
+ this.app = app;
+ this.$win = app.$win;
+
+ // defaults
+ var defaults = {
+ offset: 0 // string in pixels
+ };
+
+ // context
+ this.context = context;
+ this.params = context.getParams(defaults);
+ this.$element = context.getElement();
+ },
+ start: function()
+ {
+ this.offsetTop = this._getOffsetTop();
+
+ this._load();
+ this.$win.on('scroll.kube.sticky', this._load.bind(this));
+ },
+ stop: function()
+ {
+ this.$win.off('scroll.kube.sticky');
+ this.$element.removeClass('fixed').css('top', '');
+ },
+ // private
+ _load: function()
+ {
+ return (this._isFix()) ? this._setFixed() : this._setUnfixed();
+ },
+ _isFix: function()
+ {
+ return (this.$win.scrollTop() > (this.offsetTop + parseInt(this.params.offset, 10)));
+ },
+ _setFixed: function()
+ {
+ this.$element.addClass('is-fixed').css('top', this.params.offset);
+ this.app.broadcast('sticky.fixed', this);
+ },
+ _setUnfixed: function()
+ {
+ this.$element.removeClass('is-fixed').css('top', '');
+ this.app.broadcast('sticky.unfixed', this);
+ },
+ _getOffsetTop: function()
+ {
+ return this.$element.offset().top;
+ }
+ });
+})(Kube);
+(function($K)
+{
+ $K.add('module', 'offcanvas', {
+ init: function(app, context)
+ {
+ this.app = app;
+ this.$doc = app.$doc;
+ this.$body = app.$body;
+ this.utils = app.utils;
+ this.animate = app.animate;
+ this.transition = app.transition;
+
+ // defaults
+ var defaults = {
+ clickOutside: true,
+ target: false
+ };
+
+ // context
+ this.context = context;
+ this.params = context.getParams(defaults);
+ this.$element = context.getElement();
+ this.$target = context.getTarget();
+
+ // build
+ this._build();
+ },
+ start: function()
+ {
+ this.$element.on('click.kube.offcanvas', this.toggle.bind(this));
+ },
+ stop: function()
+ {
+ this._clear();
+ },
+ toggle: function(e)
+ {
+ return (this.$target.isOpened()) ? this.close(e) : this.open(e);
+ },
+ open: function(e)
+ {
+ if (e)
+ {
+ e.stopPropagation();
+ e.preventDefault();
+ }
+
+ this._clear();
+
+ this.$body.addClass('is-no-scroll-x');
+ this.$target.addClass('is-offcanvas');
+
+ this.targetWidth = this.$target.width();
+
+ this._resize();
+ this.app.broadcast('offcanvas.open', this);
+
+ return (this.isSlide) ? this._openSlide() : this._openPush();
+ },
+ close: function(e)
+ {
+ if (this.eventScroll) return;
+ if (e)
+ {
+ var $el = $K.dom(e.target);
+ var el = $el.get();
+ var isClickable = (el.tagName === 'A' ||el.tagName === 'BUTTON');
+ if (!isClickable || el === this.$element.get())
+ {
+ e.stopPropagation();
+ e.preventDefault();
+ }
+ }
+
+ this.app.broadcast('offcanvas.close', this);
+
+ return (this.isSlide) ? this._closeSlide() : this._closePush();
+ },
+ // private
+ _build: function()
+ {
+ this.isSlide = !(this.$target.hasClass('is-offcanvas-push'));
+ this.slideDirection = (this.$target.hasClass('is-offcanvas-right')) ? 'Right' : 'Left';
+ this.pushSign = (this.slideDirection === 'Left') ? '' : '-';
+ this.eventScroll = false;
+ },
+ _handleKeyboard: function(e)
+ {
+ if (e.which === 27) this.close();
+ },
+
+ _openSlide: function()
+ {
+ this.animate.run(this.$target, 'slideIn' + this.slideDirection, this._opened.bind(this));
+ },
+ _openPush: function()
+ {
+ this.$target.show();
+ this._pushBody(this.pushSign + this.targetWidth + 'px', this._opened.bind(this));
+ },
+ _opened: function()
+ {
+ this.$doc.on('touchmove.kube.offcanvas', function() { this.eventScroll = true; }.bind(this));
+ this.$doc.on('touchstart.kube.offcanvas', function() { this.eventScroll = false; }.bind(this));
+ this.$doc.on('keyup.kube.offcanvas', this._handleKeyboard.bind(this));
+
+ if (this.params.clickOutside)
+ {
+ this.$doc.on('click.kube.offcanvas touchend.kube.offcanvas', this.close.bind(this));
+ }
+
+ this.app.broadcast('offcanvas.opened', this);
+ },
+ _closeSlide: function()
+ {
+ this.animate.run(this.$target, 'slideOut' + this.slideDirection, this._closed.bind(this));
+ },
+ _closePush: function()
+ {
+ this._pushBody('0', this._closed.bind(this));
+ },
+ _closed: function()
+ {
+ this.$doc.off('.kube.offcanvas');
+ this.$body.removeClass('is-no-scroll-x');
+ this.transition.remove(this.$body);
+ this.$target.removeClass('is-offcanvas');
+ this.$target.hide();
+
+ this.app.broadcast('offcanvas.closed', this);
+ },
+ _pushBody: function(transform, callback)
+ {
+ var params = {
+ classname: 'is-offcanvasTransition',
+ css: { transform: 'translateX(' + transform + ')' },
+ callback: callback
+ };
+
+ this.transition.run(this.$body, params, callback);
+ },
+ _resize: function()
+ {
+ var resize = function()
+ {
+ this.$target.height(this.$doc.height());
+ }.bind(this);
+
+ resize();
+ this.$doc.on('resize.kube.offcanvas', resize);
+ },
+ _clear: function()
+ {
+ this.$doc.off('.kube.offcanvas');
+ this.transition.remove(this.$body);
+
+ $K.dom('.is-offcanvas').each(function(node)
+ {
+ var $el = $K.dom(node);
+
+ this.animate.remove($el);
+
+ $el.hide();
+ $el.removeClass('is-offcanvas');
+
+ }.bind(this));
+ }
+ });
+})(Kube);
+(function($K)
+{
+ $K.add('module', 'tabs', {
+ init: function(app, context)
+ {
+ this.app = app;
+ this.$body = app.$body;
+
+ // defaults
+ var defaults = {
+ equal: false
+ };
+
+ // context
+ this.context = context;
+ this.params = context.getParams(defaults);
+ this.$element = context.getElement();
+
+ // local
+ this.$boxes = $K.dom([]);
+ this.$tabActive = false;
+ this.$boxActive = false;
+ },
+ start: function()
+ {
+ this._buildControls();
+ this._buildBoxes();
+ this._setEqualBoxes();
+
+ this._open();
+ },
+ stop: function()
+ {
+ this.$tabsControls.off('.kube.tabs');
+ },
+ // api
+ getActiveTab: function()
+ {
+ return this.$tabActive;
+ },
+ getActiveBox: function()
+ {
+ return this.$boxActive;
+ },
+ // private
+ _toggle: function(e)
+ {
+ if (e)
+ {
+ e.stopPropagation();
+ e.preventDefault();
+ }
+
+ var $tab = $K.dom(e.target);
+ var $box = this._getBox($tab);
+
+ if ($tab.hasClass('is-active')) return;
+
+ this._open($tab);
+ this.app.broadcast('tabs.opened', this);
+ },
+ _buildControls: function()
+ {
+ this.$tabsControls = this.$element.find('a');
+ this.$tabsControls.on('click.kube.tabs', this._toggle.bind(this));
+ },
+ _buildBoxes: function()
+ {
+ this.$tabsControls.each(function(node, i)
+ {
+ var $tab = $K.dom(node);
+ var $box = this._getBox($tab);
+
+ this.$boxes.add($box);
+
+ if (i === 0) this.$tabActive = $tab;
+ if ($tab.hasClass('is-active')) this.$tabActive = $tab;
+
+ }.bind(this));
+ },
+ _open: function($tab)
+ {
+ this.$tabActive = ($tab) ? $tab : this.$tabActive;
+
+ this.$tabsControls.removeClass('is-active');
+ this.$tabActive.addClass('is-active');
+ this.$boxActive = this._getBox(this.$tabActive);
+
+ this.$boxes.addClass('is-hidden').removeClass('is-open');
+ this.$boxActive.removeClass('is-hidden').addClass('is-open');
+ },
+ _getBox: function($tab)
+ {
+ return $K.dom($tab.attr('href'));
+ },
+ _setEqualBoxes: function()
+ {
+ if (!this.params.equal) return;
+
+ var minHeight = this._getItemMaxHeight() + 'px';
+
+ this.$boxes.css('min-height', minHeight);
+ },
+ _getItemMaxHeight: function()
+ {
+ var max = 0;
+ this.$boxes.each(function(node)
+ {
+ var $node = $K.dom(node);
+ var h = $node.height();
+ max = (h > max) ? h : max;
+ });
+
+ return max;
+ }
+ });
+})(Kube);
+(function($K)
+{
+ $K.add('module', 'dropdown', {
+ init: function(app, context)
+ {
+ this.app = app;
+ this.$doc = app.$doc;
+ this.$win = app.$win;
+ this.$body = app.$body;
+ this.utils = app.utils;
+ this.animate = app.animate;
+
+ // defaults
+ var defaults = {
+ target: false
+ };
+
+ // context
+ this.context = context;
+ this.params = context.getParams(defaults);
+ this.$element = context.getElement();
+ this.$target = context.getTarget();
+
+ // local
+ this.animationOpen = 'slideDown';
+ this.animationClose = 'slideUp';
+ },
+ // public
+ start: function()
+ {
+ this.$element.on('click.kube.dropdown', this.toggle.bind(this));
+ },
+ stop: function()
+ {
+ this.animate.clear(this.$target);
+ this.$target.hide();
+
+ this.$element.off('.kube.dropdown');
+ this.$doc.off('.kube.dropdown');
+ this.$win.off('.kube.dropdown');
+ },
+ toggle: function(e)
+ {
+ return (this.$target.isOpened()) ? this.close(e) : this.open(e);
+ },
+ open: function(e)
+ {
+ if (this.$target.isOpened()) return;
+ if (e)
+ {
+ e.stopPropagation();
+ e.preventDefault();
+ }
+
+ this.$doc.off('.kube.dropdown');
+ this.$win.off('.kube.dropdown');
+
+ // hide all
+ this.$body.find('.dropdown').each(function(node)
+ {
+ var $el = $K.dom(node);
+
+ this.animate.remove($el);
+ $el.hide();
+
+ }.bind(this));
+
+ this._openCaret();
+ this._setPosition();
+
+ this.$element.addClass('dropdown-in');
+ this.app.broadcast('dropdown.open', this);
+ this.animate.run(this.$target, this.animationOpen, this._opened.bind(this));
+ },
+ close: function(e)
+ {
+ if (this.$target.isClosed()) return;
+ if (e)
+ {
+ var el = e.target;
+ var $el = $K.dom(el);
+ var isClickable = (el.tagName === 'A' || el.tagName === 'BUTTON');
+ if (!isClickable || el === this.$element.get() || (el.tagName === 'A' && $el.hasClass('is-active')))
+ {
+ e.stopPropagation();
+ e.preventDefault();
+ }
+ }
+
+ this.app.broadcast('dropdown.close', this);
+ this.animate.run(this.$target, this.animationClose, this._closed.bind(this));
+ },
+
+ // private
+ _getPlacement: function()
+ {
+ var pos = this.$element.position();
+ var height = parseFloat(this.$element.css('height')) + pos.top + parseFloat(this.$target.css('height'));
+ return (this.$doc.height() < height) ? 'top' : 'bottom';
+ },
+ _setPosition: function()
+ {
+ var elHeight = parseFloat(this.$element.css('height'));
+ var pos = this.$element.offset();
+ var top = pos.top + elHeight;
+ var left = pos.left;
+ var height = parseFloat(this.$target.css('height'));
+ var placement = this._getPlacement();
+ var width = parseFloat(this.$target.css('width'));
+ var borderWidth = parseFloat(this.$element.css('border-left-width')) + parseFloat(this.$element.css('border-right-width'));
+ var leftFix = (this.$win.width() < (left + width)) ? (width - this.$element.width() - borderWidth) : 0;
+
+ if (placement === 'top')
+ {
+ top = top - height - elHeight;
+ this.animationOpen = 'show';
+ this.animationClose = 'hide';
+ }
+ else
+ {
+ this.animationOpen = 'slideDown';
+ this.animationClose = 'slideUp';
+ }
+
+ this.$target.css({ 'top': top + 'px', 'left': (left - leftFix) + 'px' });
+ },
+ _handleKeyboard: function(e)
+ {
+ if (e.which === 27) this.close();
+ },
+ _opened: function()
+ {
+ this.$doc.on('keyup.kube.dropdown', this._handleKeyboard.bind(this));
+ this.$doc.on('click.kube.dropdown touchstart.kube.dropdown', this.close.bind(this));
+ this.$doc.on('scroll.kube.dropdown', this._setPosition.bind(this));
+ this.$win.on('resize.kube.dropdown', this._setPosition.bind(this));
+
+ this.app.broadcast('dropdown.opened', this);
+ },
+ _closed: function()
+ {
+ this.$doc.off('.kube.dropdown');
+ this.$win.off('.kube.dropdown');
+
+ this._closeCaret();
+ this.$element.removeClass('dropdown-in');
+ this.app.broadcast('dropdown.closed', this);
+ },
+ _openCaret: function()
+ {
+ var $caret = this.$element.find('.caret');
+ $caret.removeClass('is-down').addClass('is-left');
+ },
+ _closeCaret: function()
+ {
+ var $caret = this.$element.find('.caret');
+ $caret.removeClass('is-left').addClass('is-down');
+ }
+ });
+})(Kube);
\ No newline at end of file
diff --git a/static/assets/js/kube.min.js b/static/assets/js/kube.min.js
new file mode 100755
index 0000000..a6a3e8c
--- /dev/null
+++ b/static/assets/js/kube.min.js
@@ -0,0 +1 @@
+(function(b){b.fn.accordion=function(c){return this.each(function(){b.data(this,"accordion",{});b.data(this,"accordion",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.Accordion=a;b.Accordion.NAME="accordion";b.Accordion.VERSION="1.0";b.Accordion.opts={scroll:false,collapse:true,toggle:true,titleClass:".accordion-title",panelClass:".accordion-panel"};a.fn=b.Accordion.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.build();if(this.opts.collapse){this.closeAll()}else{this.openAll()}this.loadFromHash()},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.Accordion.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$element[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;f
").addClass("accordion-toggle"));this.titles.each(function(){var c=b(this);c.attr("rel",c.attr("href"))})},getPanels:function(){this.panels=this.$element.find(this.opts.panelClass)},build:function(){this.getTitles();this.getPanels();this.titles.on("click",b.proxy(this.toggle,this))},loadFromHash:function(){if(top.location.hash===""){return}if(!this.opts.scroll){return}if(this.$element.find("[rel="+top.location.hash+"]").size()===0){return}this.open(top.location.hash);this.scrollTo(top.location.hash)},toggle:function(g){g.preventDefault();g.stopPropagation();var f=b(g.target).attr("rel");if(this.opts.toggle){var c=b(g.target);var d=c.closest(this.opts.titleClass);var h=d.hasClass("accordion-title-opened");this.closeAll();if(!h){this.open(f)}}else{if(b("[rel="+f+"]").hasClass("accordion-title-opened")){this.close(f)}else{this.open(f)}}},open:function(c){this.$title=b("[rel="+c+"]");this.$panel=b(c);top.location.hash=c;this.setStatus("open");this.$panel.show();this.setCallback("opened",this.$title,this.$panel)},close:function(c){this.$title=b("[rel="+c+"]");this.$panel=b(c);this.setStatus("close");this.$panel.hide();this.setCallback("closed",this.$title,this.$panel)},setStatus:function(d){var c={toggle:this.$title.find("span.accordion-toggle"),title:this.$title,panel:this.$panel};b.each(c,function(e,f){if(d=="close"){f.removeClass("accordion-"+e+"-opened").addClass("accordion-"+e+"-closed")}else{f.removeClass("accordion-"+e+"-closed").addClass("accordion-"+e+"-opened")}})},openAll:function(){this.titles.each(b.proxy(function(c,d){this.open(b(d).attr("rel"))},this))},closeAll:function(){this.titles.each(b.proxy(function(c,d){this.close(b(d).attr("rel"))},this))},scrollTo:function(c){b("html, body").animate({scrollTop:b(c).offset().top-50},500)}};b(window).on("load.tools.accordion",function(){b('[data-tools="accordion"]').accordion()});a.prototype.init.prototype=a.prototype})(jQuery);(function(b){b.fn.autocomplete=function(c){return this.each(function(){b.data(this,"autocomplete",{});b.data(this,"autocomplete",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.Autocomplete=a;b.Autocomplete.NAME="autocomplete";b.Autocomplete.VERSION="1.0";b.Autocomplete.opts={url:false,min:2,set:"value"};a.fn=b.Autocomplete.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.build()},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.Autocomplete.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$element[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;f
').hide();this.pos=this.$element.offset();this.elementHeight=this.$element.innerHeight();b("body").append(this.result);this.placement=((b(document).height()-(this.pos.top+this.elementHeight))=this.opts.min){this.$element.addClass("autocomplete-in");this.result.addClass("autocomplete-open");this.listen(d)}else{this.hide()}},this))},lookup:function(){b.ajax({url:this.opts.url,type:"post",data:this.$element.attr("name")+"="+this.$element.val(),success:b.proxy(function(c){var d=b.parseJSON(c);this.result.html("");b.each(d,b.proxy(function(h,j){var f=b("");var g=b('').html(j.value).on("click",b.proxy(this.set,this));f.append(g);this.result.append(f)},this));var e=(this.placement==="top")?(this.pos.top-this.result.height()-this.elementHeight):(this.pos.top+this.elementHeight);this.result.css({top:e+"px",left:this.pos.left+"px"});this.result.show();this.active=false},this)})},listen:function(c){if(!this.$element.hasClass("autocomplete-in")){return}c.stopPropagation();c.preventDefault();switch(c.keyCode){case 40:this.select("next");break;case 38:this.select("prev");break;case 13:this.set();break;case 27:this.hide();break;default:this.lookup();break}},select:function(f){var g=this.result.find("a");var e=g.size();var c=this.result.find("a.active");c.removeClass("active");var d=(f==="next")?c.parent().next().children("a"):c.parent().prev().children("a");if(d.size()===0){d=(f==="next")?g.eq(0):g.eq(e-1)}d.addClass("active");this.active=d},set:function(f){var c=b(this.active);if(f){f.preventDefault();c=b(f.target)}var g=c.attr("rel");var d=c.html();if(this.opts.set=="value"){this.$element.val(d)}else{this.$element.val(g)}this.setCallback("set",g,d);this.hide()},hide:function(c){if(c&&(b(c.target).hasClass("autocomplete-in")||b(c.target).hasClass("autocomplete-open")||b(c.target).parents().hasClass("autocomplete-open"))){return}this.$element.removeClass("autocomplete-in");this.result.removeClass("autocomplete-open");this.result.hide()}};b(window).on("load.tools.autocomplete",function(){b('[data-tools="autocomplete"]').autocomplete()});a.prototype.init.prototype=a.prototype})(jQuery);(function(b){b.fn.buttons=function(c){return this.each(function(){b.data(this,"buttons",{});b.data(this,"buttons",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.Buttons=a;b.Buttons.NAME="buttons";b.Buttons.VERSION="1.0";b.Buttons.opts={className:"btn",activeClassName:"btn-active",target:false,type:"switch"};a.fn=b.Buttons.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.buttons=this.getButtons();this.value=this.getValue();this.buttons.each(b.proxy(function(f,g){var e=b(g);this.setDefault(e);e.click(b.proxy(function(h){h.preventDefault();if(this.opts.type==="segmented"){this.setSegmented(e)}else{if(this.opts.type==="toggle"){this.setToggle(e)}else{this.setBasic(e)}}},this))},this))},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.Buttons.opts),this.$element.data(),c)},getButtons:function(){return(this.opts.type==="toggle")?this.$element:this.$element.find("."+this.opts.className)},getValue:function(){return(this.opts.type==="segmented")?b(this.opts.target).val().split(","):b(this.opts.target).val()},setDefault:function(c){if(this.opts.type==="segmented"&&b.inArray(c.val(),this.value)!==-1){this.setActive(c)}else{if((this.opts.type==="toggle"&&this.value===1)||this.value===c.val()){this.setActive(c)}}},setBasic:function(c){this.setInActive(this.buttons);this.setActive(c);b(this.opts.target).val(c.val())},setSegmented:function(d){var c=b(this.opts.target);this.value=c.val().split(",");if(!d.hasClass(this.opts.activeClassName)){this.setActive(d);this.value.push(d.val())}else{this.setInActive(d);this.value.splice(this.value.indexOf(d.val()),1)}c.val(this.value.join(",").replace(/^,/,""))},setToggle:function(c){if(c.hasClass(this.opts.activeClassName)){this.setInActive(c);b(this.opts.target).val(0)}else{this.setActive(c);b(this.opts.target).val(1)}},setActive:function(c){c.addClass(this.opts.activeClassName)},setInActive:function(c){c.removeClass(this.opts.activeClassName)}};b(window).on("load.tools.buttons",function(){b('[data-tools="buttons"]').buttons()});a.prototype.init.prototype=a.prototype})(jQuery);(function(b){b.fn.checkAll=function(c){return this.each(function(){b.data(this,"checkAll",{});b.data(this,"checkAll",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.CheckAll=a;b.CheckAll.opts={classname:false,parent:false,highlight:"highlight",target:false};a.fn=b.CheckAll.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.$elements=b("."+this.opts.classname);this.$target=b(this.opts.target);this.$element.on("click",b.proxy(this.load,this));this.setter=(this.opts.target)?this.$target.val().split(","):[];this.$elements.each(b.proxy(this.setOnStart,this))},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.CheckAll.opts),this.$element.data(),c)},load:function(){if(this.$element.prop("checked")){this.$elements.prop("checked",true);if(this.opts.parent||this.opts.target){this.$elements.each(b.proxy(function(d,e){var c=b(e);this.setHighlight(c);this.setValue(c.val())},this))}}else{this.$elements.prop("checked",false);if(this.opts.parent){this.$elements.each(b.proxy(this.removeHighlight,this))}if(this.opts.target){this.$target.val("")}}},setOnStart:function(d,e){var c=b(e);if(this.$element.prop("checked")||(this.setter&&(b.inArray(c.val(),this.setter)!==-1))){c.prop("checked",true);this.setHighlight(c)}c.on("click",b.proxy(function(){var f=this.$elements.filter(":checked").size();if(c.prop("checked")){this.setValue(c.val());this.setHighlight(c)}else{this.removeValue(c.val());this.removeHighlight(c)}var g=(f!==this.$elements.size())?false:true;this.$element.prop("checked",g)},this))},setHighlight:function(c){if(!this.opts.parent){return}c.closest(this.opts.parent).addClass(this.opts.highlight)},removeHighlight:function(d,c){if(!this.opts.parent){return}b(c).closest(this.opts.parent).removeClass(this.opts.highlight)},setValue:function(d){if(!this.opts.target){return}var e=this.$target.val();var c=e.split(",");c.push(d);if(e===""){c=[d]}this.$target.val(c.join(","))},removeValue:function(e){if(!this.opts.target){return}var c=this.$target.val().split(",");var d=c.indexOf(e);c.splice(d,1);this.$target.val(c.join(","))}};b(window).on("load.tools.buttons",function(){b('[data-tools="check-all"]').checkAll()});a.prototype.init.prototype=a.prototype})(jQuery);(function(b){b.fn.dropdown=function(c){return this.each(function(){b.data(this,"dropdown",{});b.data(this,"dropdown",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.Dropdown=a;b.Dropdown.NAME="dropdown";b.Dropdown.VERSION="1.0";b.Dropdown.opts={target:false,targetClose:false,height:false,width:false};a.fn=b.Dropdown.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.build()},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.Dropdown.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$element[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;f');this.$element.append(this.$caret);this.setCaretUp();this.preventBodyScroll();this.$element.click(b.proxy(this.toggle,this))},setCaretUp:function(){var c=this.$element.offset().top+this.$element.innerHeight()+this.$dropdown.innerHeight();if(b(document).height()>c){return}this.$caret.addClass("caret-up")},toggle:function(c){c.preventDefault();if(this.$element.hasClass("dropdown-in")){this.hide()}else{this.show()}},getPlacement:function(c){return(b(document).height() ');this.$sourceSelect=b(' ');this.$sourceLayer=b('');this.$source=b(' ');this.$sourceBox.append(this.$source);this.$sourceBox.append(this.$sourceSelect);this.$sourceBox.append(this.$sourceLayer);this.setPlaceholder();this.$element.hide().after(this.$sourceBox);this.$element.find("option").each(b.proxy(this.buildListItemsFromOptions,this));this.$source.on("keyup",b.proxy(this.clearSelected,this));this.$sourceSelect.on("click",b.proxy(this.load,this));this.preventBodyScroll()},load:function(f){f.preventDefault();if(this.$sourceLayer.hasClass("open")){this.close();return}var d=this.$element.val();this.$sourceLayer.addClass("open").show();var c=this.$sourceLayer.find("li").removeClass("active");this.setSelectedItem(c,d);b(document).on("click.tools.filterbox",b.proxy(this.close,this));b(document).on("keydown.tools.filterbox",b.proxy(function(l){var h=l.which;var g;var k;if(h===38){l.preventDefault();if(c.hasClass("active")){k=c.filter("li.active");k.removeClass("active");var j=k.prev();g=(j.size()!==0)?g=j:c.last()}else{g=c.last()}g.addClass("active");this.setScrollTop(g)}else{if(h===40){l.preventDefault();if(c.hasClass("active")){k=c.filter("li.active");k.removeClass("active");var i=k.next();g=(i.size()!==0)?i:c.first()}else{g=c.first()}g.addClass("active");this.setScrollTop(g)}else{if(h===13){if(!c.hasClass("active")){return}k=c.filter("li.active");this.onItemClick(l,k)}else{if(h===27){this.close()}}}}},this))},clearSelected:function(){if(this.$source.val().length===0){this.$element.val(0)}},setSelectedItem:function(c,e){var f=c.filter("[rel="+e+"]");if(f.size()===0){f=false;var d=this.$source.val();b.each(c,function(h,j){var g=b(j);if(g.text()==d){f=g}});if(f===false){return}}f.addClass("active");this.setScrollTop(f)},setScrollTop:function(c){this.$sourceLayer.scrollTop(this.$sourceLayer.scrollTop()+c.position().top-40)},buildListItemsFromOptions:function(d,e){var c=b(e);var g=c.val();if(g===0){return}var f=b(" ");f.attr("rel",g).text(c.html());f.on("click",b.proxy(this.onItemClick,this));this.$sourceLayer.append(f)},onItemClick:function(g,f){g.preventDefault();var d=b(f||g.target);var c=d.attr("rel");var h=d.text();this.$source.val(h);this.$element.val(c);this.close();this.setCallback("select",{id:c,value:h})},preventBodyScroll:function(){this.$sourceLayer.on("mouseover",function(){b("html").css("overflow","hidden")});this.$sourceLayer.on("mouseout",function(){b("html").css("overflow","")})},setPlaceholder:function(){if(!this.opts.placeholder){return}this.$source.attr("placeholder",this.opts.placeholder)},close:function(c){if(c&&(b(c.target).hasClass("filterbox-toggle")||b(c.target).closest("div.filterbox").size()==1)){return}this.$sourceLayer.removeClass("open").hide();b(document).off(".tools.filterbox")}};b(window).on("load.tools.filterbox",function(){b('[data-tools="filterbox"]').filterbox()});a.prototype.init.prototype=a.prototype})(jQuery);(function(b){b.fn.infinityScroll=function(c){return this.each(function(){b.data(this,"infinity-scroll",{});b.data(this,"infinity-scroll",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.InfinityScroll=a;b.InfinityScroll.NAME="infinity-scroll";b.InfinityScroll.VERSION="1.0";b.InfinityScroll.opts={url:false,offset:0,limit:20,tolerance:50,pagination:false};a.fn=b.InfinityScroll.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.hidePagination();this.build()},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.InfinityScroll.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$element[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;f=0&&d.left>=0&&d.bottom<=b(window).height()+this.opts.tolerance&&d.right<=b(window).width())}};b(window).on("load.tools.infinity-scroll",function(){b('[data-tools="infinity-scroll"]').infinityScroll()});a.prototype.init.prototype=a.prototype})(jQuery);(function(b){b.fn.livesearch=function(c){return this.each(function(){b.data(this,"livesearch",{});b.data(this,"livesearch",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.Livesearch=a;b.Livesearch.NAME="livesearch";b.Livesearch.VERSION="1.0";b.Livesearch.opts={url:false,target:false,min:2,params:false,appendForms:false};a.fn=b.Livesearch.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.build()},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.Livesearch.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$element[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;f ');this.$element.after(this.$box);this.$box.append(this.$element);this.$element.off("keyup.tools.livesearch");this.$element.on("keyup.tools.livesearch",b.proxy(this.load,this));this.$icon=b(' ');this.$box.append(this.$icon);this.$close=b(' ').hide();this.$box.append(this.$close);this.$close.off("click.tools.livesearch");this.$close.on("click.tools.livesearch",b.proxy(function(){this.search();this.$element.val("").focus();this.$close.hide()},this))},toggleClose:function(c){if(c===0){this.$close.hide()}else{this.$close.show()}},load:function(){var f=this.$element.val();var e="";if(f.length>this.opts.min){var c="q";if(typeof this.$element.attr("name")!="undefined"){c=this.$element.attr("name")}e+="&"+c+"="+f;e=this.appendForms(e);var h="";if(this.opts.params){this.opts.params=b.trim(this.opts.params.replace("{","").replace("}",""));var d=this.opts.params.split(",");var g={};b.each(d,function(j,i){var l=i.split(":");g[b.trim(l[0])]=b.trim(l[1])});h=[];b.each(g,b.proxy(function(j,i){h.push(j+"="+i)},this));h=h.join("&");e+="&"+h}}this.toggleClose(f.length);this.search(e)},appendForms:function(c){if(!this.opts.appendForms){return c}b.each(this.opts.appendForms,function(d,e){c+="&"+b(e).serialize()});return c},search:function(c){b.ajax({url:this.opts.url,type:"post",data:c,success:b.proxy(function(d){b(this.opts.target).html(d);this.setCallback("result",d)},this)})}};b(window).on("load.tools.livesearch",function(){b('[data-tools="livesearch"]').livesearch()});a.prototype.init.prototype=a.prototype})(jQuery);(function(b){b.fn.message=function(d){var e=[];var c=Array.prototype.slice.call(arguments,1);if(typeof d==="string"){this.each(function(){var g=b.data(this,"message");if(typeof g!=="undefined"&&b.isFunction(g[d])){var f=g[d].apply(g,c);if(f!==undefined&&f!==g){e.push(f)}}else{return b.error('No such method "'+d+'" for Message')}})}else{this.each(function(){b.data(this,"message",{});b.data(this,"message",a(this,d))})}if(e.length===0){return this}else{if(e.length===1){return e[0]}else{return e}}};function a(d,c){return new a.prototype.init(d,c)}b.Message=a;b.Message.NAME="message";b.Message.VERSION="1.0";b.Message.opts={target:false,delay:10};a.fn=b.Message.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.build()},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.Message.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$message[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;f ').hide();this.$modal=b('
');this.$modalHeader=b("");this.$modalClose=b(' ').html("×");this.$modalBody=b("");this.$modalFooter=b("");this.$modal.append(this.$modalHeader);this.$modal.append(this.$modalClose);this.$modal.append(this.$modalBody);this.$modal.append(this.$modalFooter);this.$modalBox.append(this.$modal);this.$modalBox.appendTo(document.body)},buildOverlay:function(){this.$modalOverlay=b('').hide();b("body").prepend(this.$modalOverlay);if(this.opts.blur){this.blurredElements=b("body").children("div, section, header, article, pre, aside, table").not(".modal, .modal-box, #modal-overlay");this.blurredElements.addClass("modal-blur")}},show:function(){this.setCallback("loading",this.$modal);this.bodyOveflow=b(document.body).css("overflow");b(document.body).css("overflow","hidden");if(this.isMobile()){this.showOnMobile()}else{this.showOnDesktop()}this.$modalOverlay.show();this.$modalBox.show();this.setButtonsWidth();if(!this.isMobile()){setTimeout(b.proxy(this.showOnDesktop,this),0);b(window).on("resize.tools.modal",b.proxy(this.resize,this))}this.setCallback("opened",this.$modal);b(document).off("focusin.modal")},showOnDesktop:function(){var c=this.$modal.outerHeight();var e=b(window).height();var d=b(window).width();if(this.opts.width>d){this.$modal.css({width:"96%",marginTop:(e/2-c/2)+"px"});return}if(c>e){this.$modal.css({width:this.opts.width+"px",marginTop:"20px"})}else{this.$modal.css({width:this.opts.width+"px",marginTop:(e/2-c/2)+"px"})}},showOnMobile:function(){this.$modal.css({width:"96%",marginTop:"2%"})},resize:function(){if(this.isMobile()){this.showOnMobile()}else{this.showOnDesktop()}},setTitle:function(){this.$modalHeader.html(this.opts.title)},setContent:function(){if(typeof this.opts.content=="object"||this.opts.content.search("#")===0){this.type="html";this.$modalBody.html(b(this.opts.content).html());this.show()}else{b.ajax({url:this.opts.content,cache:false,success:b.proxy(function(c){this.$modalBody.html(c);this.show()},this)})}},setDraggable:function(){if(typeof b.fn.draggable==="undefined"){return}this.$modal.draggable({handle:this.$modalHeader});this.$modalHeader.css("cursor","move")},createCancelButton:function(c){if(typeof c=="undefined"){c="Cancel"}var d=b("").addClass("btn modal-close-btn").html(c);d.on("click",b.proxy(this.close,this));this.$modalFooter.append(d)},createDeleteButton:function(c){if(typeof c=="undefined"){c="Delete"}return this.createButton(c,"red")},createActionButton:function(c){if(typeof c=="undefined"){c="Ok"}return this.createButton(c,"blue")},createButton:function(c,e){var d=b("").addClass("btn").addClass("btn-"+e).html(c);this.$modalFooter.append(d);return d},setButtonsWidth:function(){var c=this.$modalFooter.find("button");var d=c.size();if(d===0){return}c.css("width",(100/d)+"%")},enableEvents:function(){this.$modalClose.on("click.tools.modal",b.proxy(this.close,this));b(document).on("keyup.tools.modal",b.proxy(this.closeHandler,this));this.$modalBox.on("click.tools.modal",b.proxy(this.close,this))},disableEvents:function(){this.$modalClose.off("click.tools.modal");b(document).off("keyup.tools.modal");this.$modalBox.off("click.tools.modal");b(window).off("resize.tools.modal")},closeHandler:function(c){if(c.which!=27){return}this.close()},close:function(c){if(c){if(!b(c.target).hasClass("modal-close-btn")&&c.target!=this.$modalClose[0]&&c.target!=this.$modalBox[0]){return}c.preventDefault()}if(!this.$modalBox){return}this.disableEvents();this.$modalOverlay.remove();this.$modalBox.fadeOut("fast",b.proxy(function(){this.$modalBox.remove();b(document.body).css("overflow",this.bodyOveflow);if(this.opts.blur&&typeof this.blurredElements!="undefined"){this.blurredElements.removeClass("modal-blur")}this.setCallback("closed")},this))},isMobile:function(){var c=window.matchMedia("(max-width: 767px)");return(c.matches)?true:false}};b(window).on("load.tools.modal",function(){b('[data-tools="modal"]').modal()});a.prototype.init.prototype=a.prototype})(jQuery);(function(b){b.fn.navigationFixed=function(c){return this.each(function(){b.data(this,"navigationFixed",{});b.data(this,"navigationFixed",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.NavigationFixed=a;b.NavigationFixed.NAME="navigation-fixed";b.NavigationFixed.VERSION="1.0";b.NavigationFixed.opts={};a.fn=b.NavigationFixed.prototype={init:function(e,c){var d=window.matchMedia("(max-width: 767px)");if(d.matches){return}this.$element=e!==false?b(e):false;this.loadOptions(c);this.navBoxOffsetTop=this.$element.offset().top;this.build();b(window).scroll(b.proxy(this.build,this))},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.NavigationFixed.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$element[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;fthis.navBoxOffsetTop){this.$element.addClass("navigation-fixed");this.setCallback("fixed")}else{this.$element.removeClass("navigation-fixed");this.setCallback("unfixed")}}};b(window).on("load.tools.navigation-fixed",function(){b('[data-tools="navigation-fixed"]').navigationFixed()});a.prototype.init.prototype=a.prototype})(jQuery);(function(b){b.fn.navigationToggle=function(c){return this.each(function(){b.data(this,"navigationToggle",{});b.data(this,"navigationToggle",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.NavigationToggle=a;b.NavigationToggle.NAME="navigation-toggle";b.NavigationToggle.VERSION="1.0";b.NavigationToggle.opts={target:false};a.fn=b.NavigationToggle.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.$target=b(this.opts.target);this.$toggle=this.$element.find("span");this.$toggle.on("click",b.proxy(this.onClick,this));this.build();b(window).resize(b.proxy(this.build,this))},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.NavigationToggle.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$element[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;f
').hide();a(document.body).append(b);a("#tools-progress").fadeIn()}},update:function(b){this.show();a("#tools-progress").find("span").css("width",b+"%")},hide:function(){a("#tools-progress").fadeOut(1500)}}})(jQuery);(function(b){b.fn.tabs=function(d){var e=[];var c=Array.prototype.slice.call(arguments,1);if(typeof d==="string"){this.each(function(){var g=b.data(this,"tabs");if(typeof g!=="undefined"&&b.isFunction(g[d])){var f=g[d].apply(g,c);if(f!==undefined&&f!==g){e.push(f)}}else{return b.error('No such method "'+d+'" for Tabs')}})}else{this.each(function(){b.data(this,"tabs",{});b.data(this,"tabs",a(this,d))})}if(e.length===0){return this}else{if(e.length===1){return e[0]}else{return e}}};function a(d,c){return new a.prototype.init(d,c)}b.Tabs=a;b.Tabs.NAME="tabs";b.Tabs.VERSION="1.0";b.Tabs.opts={equals:false,active:false};a.fn=b.Tabs.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.links=this.$element.find("a");this.tabs=[];this.links.each(b.proxy(this.load,this));this.setEquals();this.setCallback("init")},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.Tabs.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$element[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;fc?d:c});return c}};b(window).on("load.tools.tabs",function(){b('[data-tools="tabs"]').tabs()});a.prototype.init.prototype=a.prototype})(jQuery);(function(a){a.fn.textfit=function(c){return this.each(function(){a.data(this,"textfit",{});a.data(this,"textfit",b(this,c))})};function b(d,c){return new b.prototype.init(d,c)}a.Textfit=b;a.Textfit.NAME="textfit";a.Textfit.VERSION="1.0";a.Textfit.opts={min:"10px",max:"100px",compressor:1};b.fn=a.Textfit.prototype={init:function(d,c){this.$element=d!==false?a(d):false;this.loadOptions(c);this.$element.css("font-size",Math.max(Math.min(this.$element.width()/(this.opts.compressor*10),parseFloat(this.opts.max)),parseFloat(this.opts.min)))},loadOptions:function(c){this.opts=a.extend({},a.extend(true,{},a.Textfit.opts),this.$element.data(),c)}};a(window).on("load.tools.textfit",function(){a('[data-tools="textfit"]').textfit()});b.prototype.init.prototype=b.prototype})(jQuery);(function(b){b.fn.tooltip=function(c){return this.each(function(){b.data(this,"tooltip",{});b.data(this,"tooltip",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.Tooltip=a;b.Tooltip.NAME="tooltip";b.Tooltip.VERSION="1.0";b.Tooltip.opts={theme:false};a.fn=b.Tooltip.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.$element.on("mouseover",b.proxy(this.show,this));this.$element.on("mouseout",b.proxy(this.hide,this))},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.Tooltip.opts),this.$element.data(),c)},show:function(){b(".tooltip").hide();var c=this.$element.attr("title");this.$element.data("cached-title",c);this.$element.attr("title","");this.tooltip=b('
').html(c).hide();if(this.opts.theme!==false){this.tooltip.addClass("tooltip-theme-"+this.opts.theme)}this.tooltip.css({top:(this.$element.offset().top+this.$element.innerHeight())+"px",left:this.$element.offset().left+"px"});b("body").append(this.tooltip);this.tooltip.show()},hide:function(){this.tooltip.fadeOut("fast",b.proxy(function(){this.tooltip.remove()},this));this.$element.attr("title",this.$element.data("cached-title"));this.$element.data("cached-title","")}};a.prototype.init.prototype=a.prototype;b(function(){b('[data-tools="tooltip"]').tooltip()})})(jQuery);(function(b){b.fn.upload=function(c){return this.each(function(){b.data(this,"upload",{});b.data(this,"upload",a(this,c))})};function a(d,c){return new a.prototype.init(d,c)}b.Upload=a;b.Upload.NAME="upload";b.Upload.VERSION="1.0";b.Upload.opts={url:false,placeholder:"Drop file here or ",param:"file"};a.fn=b.Upload.prototype={init:function(d,c){this.$element=d!==false?b(d):false;this.loadOptions(c);this.load()},loadOptions:function(c){this.opts=b.extend({},b.extend(true,{},b.Upload.opts),this.$element.data(),c)},setCallback:function(j,h,d){var m=b._data(this.$element[0],"events");if(m&&typeof m[j]!="undefined"){var k=[];var g=m[j].length;for(var f=0;f ');this.$placeholdler=b('
').text(this.opts.placeholder);this.$droparea.append(this.$placeholdler);this.$element.after(this.$droparea);this.$placeholdler.append(this.$element);this.$droparea.off(".tools.upload");this.$element.off(".tools.upload");this.$droparea.on("dragover.tools.upload",b.proxy(this.onDrag,this));this.$droparea.on("dragleave.tools.upload",b.proxy(this.onDragLeave,this));this.$element.on("change.tools.upload",b.proxy(function(c){c=c.originalEvent||c;this.traverseFile(this.$element[0].files[0],c)},this));this.$droparea.on("drop.tools.upload",b.proxy(function(c){c.preventDefault();this.$droparea.removeClass("drag-hover").addClass("drag-drop");this.onDrop(c)},this))},onDrop:function(d){d=d.originalEvent||d;var c=d.dataTransfer.files;this.traverseFile(c[0],d)},traverseFile:function(c,f){var d=!!window.FormData?new FormData():null;if(window.FormData){d.append(this.opts.param,c)}if(b.progress){b.progress.show()}this.sendData(d,f)},sendData:function(d,c){var f=new XMLHttpRequest();f.open("POST",this.opts.url);f.onreadystatechange=b.proxy(function(){if(f.readyState==4){var g=f.responseText;g=g.replace(/^\[/,"");g=g.replace(/\]$/,"");var e=(typeof g==="string"?b.parseJSON(g):g);if(b.progress){b.progress.hide()}this.$droparea.removeClass("drag-drop");this.setCallback("success",e)}},this);f.send(d)},onDrag:function(c){c.preventDefault();this.$droparea.addClass("drag-hover")},onDragLeave:function(c){c.preventDefault();this.$droparea.removeClass("drag-hover")}};a.prototype.init.prototype=a.prototype;b(function(){b('[data-tools="upload"]').upload()})})(jQuery);
\ No newline at end of file
diff --git a/static/assets/mstile-150x150.png b/static/assets/mstile-150x150.png
new file mode 100644
index 0000000..1267898
Binary files /dev/null and b/static/assets/mstile-150x150.png differ
diff --git a/static/assets/old-blog-stuff/-unnamed-chunk-4.png b/static/assets/old-blog-stuff/-unnamed-chunk-4.png
new file mode 100644
index 0000000..6cfa32e
Binary files /dev/null and b/static/assets/old-blog-stuff/-unnamed-chunk-4.png differ
diff --git a/static/assets/old-blog-stuff/-unnamed-chunk-5.png b/static/assets/old-blog-stuff/-unnamed-chunk-5.png
new file mode 100644
index 0000000..54387e2
Binary files /dev/null and b/static/assets/old-blog-stuff/-unnamed-chunk-5.png differ
diff --git a/static/assets/old-blog-stuff/-unnamed-chunk-6.png b/static/assets/old-blog-stuff/-unnamed-chunk-6.png
new file mode 100644
index 0000000..6c92db6
Binary files /dev/null and b/static/assets/old-blog-stuff/-unnamed-chunk-6.png differ
diff --git a/static/assets/old-blog-stuff/.picasa.ini b/static/assets/old-blog-stuff/.picasa.ini
new file mode 100644
index 0000000..8e181ba
--- /dev/null
+++ b/static/assets/old-blog-stuff/.picasa.ini
@@ -0,0 +1,20 @@
+[Photo Jun 14, 11 56 24 AM.jpg]
+backuphash=49905
+[Contacts]
+2cceea82537bff50=noam.ross_lh,bfb79240cd691d7;Noam.Ross_lh,5c6ecb028820a84b
+681efaac499ef385=noam.ross_lh,4c2546778ef11c66
+59b1fb4227ee5f59=noam.ross_lh,100f77cf8d6f4da8;Noam.Ross_lh,fc4b05e085a3755
+ac18a666cad2d501=noam.ross_lh,2509af8c0da4e790;Noam.Ross_lh,2509af8c0da4e790
+[pit.jpg]
+faces=rect64(91104b60a844705b),2cceea82537bff50
+backuphash=25029
+[QuickShot 2012-03-07 at 17.01.03.jpg]
+faces=rect64(cf87bd7de940e696),681efaac499ef385
+backuphash=7814
+[floodplains_group_1000x637.jpg]
+backuphash=26922
+faces=rect64(53f76d507020a25c),2cceea82537bff50;rect64(8f5c12e3a2d0370f),59b1fb4227ee5f59;rect64(8d0e350ca1ca5c08),ac18a666cad2d501
+filters=bw=1;autolight=1;
+[floodplains_panel_1000x367.jpg]
+backuphash=50717
+filters=bw=1;
diff --git a/static/assets/old-blog-stuff/11.png b/static/assets/old-blog-stuff/11.png
new file mode 100755
index 0000000..20119b7
Binary files /dev/null and b/static/assets/old-blog-stuff/11.png differ
diff --git a/static/assets/old-blog-stuff/22.png b/static/assets/old-blog-stuff/22.png
new file mode 100755
index 0000000..c60e8c1
Binary files /dev/null and b/static/assets/old-blog-stuff/22.png differ
diff --git a/static/assets/old-blog-stuff/240BSyllabus.pdf b/static/assets/old-blog-stuff/240BSyllabus.pdf
new file mode 100644
index 0000000..f38d71c
Binary files /dev/null and b/static/assets/old-blog-stuff/240BSyllabus.pdf differ
diff --git a/static/assets/old-blog-stuff/33.png b/static/assets/old-blog-stuff/33.png
new file mode 100755
index 0000000..388cc7b
Binary files /dev/null and b/static/assets/old-blog-stuff/33.png differ
diff --git a/static/assets/old-blog-stuff/3441713270_110cf23c80_m.jpg b/static/assets/old-blog-stuff/3441713270_110cf23c80_m.jpg
new file mode 100644
index 0000000..e5ee2dc
Binary files /dev/null and b/static/assets/old-blog-stuff/3441713270_110cf23c80_m.jpg differ
diff --git a/static/assets/old-blog-stuff/44.png b/static/assets/old-blog-stuff/44.png
new file mode 100755
index 0000000..f9689ad
Binary files /dev/null and b/static/assets/old-blog-stuff/44.png differ
diff --git a/static/assets/old-blog-stuff/449px-Arundo_donax_1.jpg b/static/assets/old-blog-stuff/449px-Arundo_donax_1.jpg
new file mode 100644
index 0000000..1b92f12
Binary files /dev/null and b/static/assets/old-blog-stuff/449px-Arundo_donax_1.jpg differ
diff --git a/static/assets/old-blog-stuff/55.png b/static/assets/old-blog-stuff/55.png
new file mode 100755
index 0000000..2c5d040
Binary files /dev/null and b/static/assets/old-blog-stuff/55.png differ
diff --git a/static/assets/old-blog-stuff/5780616-8795910-thumbnail.jpg b/static/assets/old-blog-stuff/5780616-8795910-thumbnail.jpg
new file mode 100644
index 0000000..e46a533
Binary files /dev/null and b/static/assets/old-blog-stuff/5780616-8795910-thumbnail.jpg differ
diff --git a/static/assets/old-blog-stuff/66.png b/static/assets/old-blog-stuff/66.png
new file mode 100755
index 0000000..486ca04
Binary files /dev/null and b/static/assets/old-blog-stuff/66.png differ
diff --git a/static/assets/old-blog-stuff/70404620001D-white-billabong_surf_mosh_sticker.jpg b/static/assets/old-blog-stuff/70404620001D-white-billabong_surf_mosh_sticker.jpg
new file mode 100644
index 0000000..687fbfe
Binary files /dev/null and b/static/assets/old-blog-stuff/70404620001D-white-billabong_surf_mosh_sticker.jpg differ
diff --git a/static/assets/old-blog-stuff/96510442_54813d39a8_m.jpg b/static/assets/old-blog-stuff/96510442_54813d39a8_m.jpg
new file mode 100644
index 0000000..d1580af
Binary files /dev/null and b/static/assets/old-blog-stuff/96510442_54813d39a8_m.jpg differ
diff --git a/static/assets/old-blog-stuff/AIC.prior.png b/static/assets/old-blog-stuff/AIC.prior.png
new file mode 100644
index 0000000..c8a3f11
Binary files /dev/null and b/static/assets/old-blog-stuff/AIC.prior.png differ
diff --git a/static/assets/old-blog-stuff/ARE277 HW1.md b/static/assets/old-blog-stuff/ARE277 HW1.md
new file mode 100644
index 0000000..a744f23
--- /dev/null
+++ b/static/assets/old-blog-stuff/ARE277 HW1.md
@@ -0,0 +1,150 @@
+% ARE277 Homework 1 - Population Dynamics and Open-Access
+% Noam Ross
+% 2012-04-03 19:41:31
+
+# Problem 1: Generalized Logistic #
+
+*The generalized logistic population growth model is:*
+
+$$\frac{dN}{dt} = F(N) = rN^{\alpha} - \frac{r}{K} N^{1+\alpha}$$
+
+***(a)** Plot the growth function with varying values of $\alpha$, and discuss the differences with special attention as $N$ goes to zero.*
+
+
+
+For $\alpha=1$, the generalized logistic is the normal logistic, which exhibits zero growth at 0 and $K$ maximum growth at $K/2$, negative growth above $K$, and has a symmetric form. As $\alpha$ goes below 1, zero growth still occurs at 0 and $K$, but maximum growth occurs at lower population levels and the curve is no longer symmetric. For $\alpha$ values above 1, maximum growth occurs at higher values, and the population exhibits a weak Allee effect (depensation) as $N$ approaches zero.
+
+***(b)** Solve for the stock level that corresponds to maximum sustainable yield as a function of the parameters.*
+
+MSY corresponds to the population level with maximum growth rate. We find the maximum by taking the next derivative and setting it to zero:
+
+$$\frac{d^2N}{dt^2} = 0 = \alpha r N^{\alpha-1} - (1+\alpha) \frac{r}{K} N^{\alpha}$$
+
+$$N_{MSY} = \frac{\alpha K}{1 + \alpha}$$
+
+***(c)** Using the following parameters, plot in $(t,N)$ space the transitional dynamics of the generalized logistic and compare paths that result from different values of $\alpha$.*
+
+
+
+As $\alpha$ increases, the population growth rate and rate at which the population approaches the equilibrium $K$ increases
+
+# Problem 2: Open Access #
+
+$$\begin{aligned}
+ \frac{dN}{dt} &= rN^{\alpha} - \frac{r}{K}N^{1+\alpha} - qEN \\
+ \frac{dE}{dt} &= \delta E [pqN - (c + \theta)]
+ \end{aligned}$$
+
+***(a)** For $\alpha=2$, plot the phase diagram and determine the directional/velocity vectors in each quadrant
+
+$$\begin{aligned}
+ 0 &= rN^2 - \frac{r}{K}N^3 - qEN \\
+ &= rN - \frac{r}{K}N^2 - qE \\
+ E &= \frac{r}{q} N - \frac{r}{qK} N^2
+ \end{aligned}$$
+
+This is a parabola with roots at 0 and $K$ and a maximum at $(\frac{1}{2} K, \, \frac{rK}{4q})$. If fishing effort is above this level, the stock will decrease. Below it, stock will increase
+
+$$\begin{aligned}
+ 0 = \delta E[pqN - (c+\theta)] \\
+ N = \frac{c+\theta}{pq}
+ \end{aligned}$$
+
+This is a vertical line at $\frac{c+\theta}{pq}$. At higher stock levels, there will be entry. At lower stock levels, effort will decrease.
+
+![]({{% asseturl %}}assets/old-blog-stuff/generallogisticphase.png)
+
+***(b)** Determine the trajectories at the $E$ and $N$ axes
+
+$$\begin{aligned}
+ \frac{dN}{dt}\bigg|_{N=0} &= 0 \\
+ \frac{dE}{dt}\bigg|_{N=0} &= -\delta E (c+\theta) \\
+ \frac{dE}{dN}\bigg|_{N=0} &= -\infty
+ \end{aligned}$$
+
+As the fish stock approaches zero, the trajectory goes down vertically. The species can not go extinct in this case.
+
+$$\begin{aligned}
+ \frac{dN}{dt}\bigg|_{E=0} &= rN^2 - \frac{r}{K}N^3 \\
+ \frac{dE}{dt}\bigg|_{E=0} &= 0 \\
+ \frac{dE}{dN}\bigg|_{E=0} &= 0
+ \end{aligned}$$
+
+As the fishing effort approaches zero, the trajectory is horizontal. The industry does not crash to zero.
+
+***(c)** Solve for the steady state of $E$ and $N$
+
+$$\begin{aligned}
+ 0 &= rN^{\alpha} - \frac{r}{K}N^{\alpha+1} - qEN \\
+ N &= \frac{c+\theta}{pq} \\
+ E &= \frac{r}{q} \left(\frac{c+\theta}{pq}\right)^{\alpha-1} \left(1 - \frac{c+\theta}{Kpq}\right)
+ \end{aligned}$$
+
+The equilibrium stock level $N$ is independent of $\alpha$.
+
+***(d)** Determine the stability conditions of the steady state.
+
+$$\begin{aligned}
+ \frac{d\dot{N}}{dN} &= \alpha rN^{\alpha-1} - (\alpha +1) \frac{r}{K} N - qE \\
+ \frac{d\dot{N}}{dE} &= -qN \\
+ \frac{d\dot{E}}{dN} &= \delta pq E \\
+ \frac{d\dot{E}}{dE} &= pqN - (c+\theta)
+ \end{aligned}$$
+
+ $$\begin{aligned}
+ \frac{d\dot{N}}{dN}\big|_{N_0,E_0} &= \alpha rN^{\alpha-1} - (\alpha +1) \frac{r}{K} N - rN^{\alpha-1}(1-N) \\
+ &= rN^{\alpha-1} \left(\alpha - \alpha \frac{N}{K} - \frac{N}{K} + 1 - N\right) \\
+ &= r\left(\frac{c+\theta}{pq}\right)^{\alpha-1} \left[\left(\frac{c+\theta}{pq}\right)\left(1 - \frac{\alpha - 1 }{K}\right) + \alpha + 1\right] \\
+ \frac{d\dot{N}}{dE}\big|_{N_0,E_0} &= -\frac{c+\theta}{p} \\
+ \frac{d\dot{E}}{dN}\big|_{N_0,E_0} &= \delta pr \left(\frac{c+\theta}{pq}\right)^{\alpha-1} \left(1 - \frac{c+\theta}{Kpq}\right)\\
+ \frac{d\dot{E}}{dE}\big|_{N_0,E_0} &= 0
+ \end{aligned}$$
+
+$$\begin{aligned}
+ 0 &= \det \begin{bmatrix} r\left(\frac{c+\theta}{pq}\right)^{\alpha-1} \left[\left(\frac{c+\theta}{pq}\right)\left(1 - \frac{\alpha - 1}{K}\right) + \alpha + 1\right] - \lambda && -\frac{c+\theta}{p} \\
+\delta pr \left(\frac{c+\theta}{pq}\right)^{\alpha-1} \left(1 - \frac{c+\theta}{Kpq}\right) && -\lambda
+ \end{bmatrix} \\
+ &= \lambda r\left(\frac{c+\theta}{pq}\right)^{\alpha-1} \left[\left(\frac{c+\theta}{pq}\right)\left(1 - \frac{\alpha - 1}{K}\right) + \alpha + 1\right] - \lambda^2 + \delta r (c +\theta) \left(\frac{c+\theta}{pq}\right)^{\alpha-1} \left(1 - \frac{c+\theta}{Kpq}\right)
+\end{aligned}$$
+
+It might make more sense to leave things in terms of $N_0$ here, as it's a constant anyway:
+
+$$0 = \lambda rN_0^{\alpha-1}\left[N_0\left(1- \frac{\alpha - 1}{K}\right) + \alpha + 1 \right] - \lambda^2 + \delta pqr N_0^{\alpha} \left(1- \frac{N_0}{K} \right)$$
diff --git a/static/assets/old-blog-stuff/ARE277Day1Fig1.jpg b/static/assets/old-blog-stuff/ARE277Day1Fig1.jpg
new file mode 100644
index 0000000..ebb67cd
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277Day1Fig1.jpg differ
diff --git a/static/assets/old-blog-stuff/ARE277Day1Fig2.jpg b/static/assets/old-blog-stuff/ARE277Day1Fig2.jpg
new file mode 100644
index 0000000..6c1e728
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277Day1Fig2.jpg differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig1.ograph b/static/assets/old-blog-stuff/ARE277FinalFig1.ograph
new file mode 100644
index 0000000..085f52c
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig1.ograph differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig1.png b/static/assets/old-blog-stuff/ARE277FinalFig1.png
new file mode 100644
index 0000000..70f2052
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig1.png differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig2.ograph b/static/assets/old-blog-stuff/ARE277FinalFig2.ograph
new file mode 100644
index 0000000..f4c18e9
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig2.ograph differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig2.png b/static/assets/old-blog-stuff/ARE277FinalFig2.png
new file mode 100644
index 0000000..64ac04b
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig2.png differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig3.ograph b/static/assets/old-blog-stuff/ARE277FinalFig3.ograph
new file mode 100644
index 0000000..f7e9568
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig3.ograph differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig3.png b/static/assets/old-blog-stuff/ARE277FinalFig3.png
new file mode 100644
index 0000000..5cea8b6
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig3.png differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig4.ograph b/static/assets/old-blog-stuff/ARE277FinalFig4.ograph
new file mode 100644
index 0000000..cda1798
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig4.ograph differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig4.png b/static/assets/old-blog-stuff/ARE277FinalFig4.png
new file mode 100644
index 0000000..50bf4da
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig4.png differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig5.ograph b/static/assets/old-blog-stuff/ARE277FinalFig5.ograph
new file mode 100644
index 0000000..2750053
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig5.ograph differ
diff --git a/static/assets/old-blog-stuff/ARE277FinalFig5.png b/static/assets/old-blog-stuff/ARE277FinalFig5.png
new file mode 100644
index 0000000..4adb53a
Binary files /dev/null and b/static/assets/old-blog-stuff/ARE277FinalFig5.png differ
diff --git a/static/assets/old-blog-stuff/AlgalBlooms_BalticSea_MER_RR_Or_L.jpg b/static/assets/old-blog-stuff/AlgalBlooms_BalticSea_MER_RR_Or_L.jpg
new file mode 100644
index 0000000..9e7dce1
Binary files /dev/null and b/static/assets/old-blog-stuff/AlgalBlooms_BalticSea_MER_RR_Or_L.jpg differ
diff --git a/static/assets/old-blog-stuff/Cobb2012Fig2f.svg b/static/assets/old-blog-stuff/Cobb2012Fig2f.svg
new file mode 100644
index 0000000..15f449f
--- /dev/null
+++ b/static/assets/old-blog-stuff/Cobb2012Fig2f.svg
@@ -0,0 +1,26158 @@
+
+
+
+image/svg+xml Years to infection
+Years to mortality
+DBH cmDBH cm
+Infected tanoak ha
+–1
+Infected tanoak ha
+–1
+020406080100020406080100
+0200400600800
+0200400600800
+0246810
+0246810
+010203040
+010203040
+(a)
+(c)
+(d)
+(f)
+Years to infection
+Years to mortality
+
\ No newline at end of file
diff --git a/static/assets/old-blog-stuff/DRUG_shiny_2014-01-27_presentation.html b/static/assets/old-blog-stuff/DRUG_shiny_2014-01-27_presentation.html
new file mode 100644
index 0000000..cb32ec8
--- /dev/null
+++ b/static/assets/old-blog-stuff/DRUG_shiny_2014-01-27_presentation.html
@@ -0,0 +1,987 @@
+
+
+
+
+
+ Creating Shiny Apps
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Creating Shiny Apps R. Peek 27 Jan 2014
+
+
+
+
+
+
+
+What is Shiny?
+
+
A way to build web applications without having to learn/know JavaScript, HTML, etc.
+
+
+Instantly updates, outputs change as users modify inputs, without requiring a reload of the browser.
+Build it with R! using “reactive expressions”
+Runs in any R environment( Console R, Rgui for Windows or Mac, ESS, StatET, RStudio, etc.)
+Can be hosted on a server or sign up with shinyapps.io
+
+
+
+
+
+
+Building a Shiny App: what's needed
+
+
2 main files required, a few extras to make things fancy:
+
+
+
+
+
+
+
+Examples of Shiny Apps
+
+
There are many, but a few that I've found interesting and really well designed:
+
+
+
+
And plenty more are available…see RStudio's website: (http://www.rstudio.com/shiny/showcase/ )
+
+
+
+
+
+RStudio Tutorial
+
+
I definitely recommend reading through the RStudio tutorial, it has many useful examples.
+(http://rstudio.github.io/shiny/tutorial/# )
+
+
install.packages("shiny")
+library(shiny)
+
+
+
+
+
+
+River Thermohydrographs
+
+
This is an example using data collected at the Center for Watershed Sciences, I build the app because I often get requests for temperature data for a study site. This provides a great way to both visualize, aggregate, and export data.
+
+
+
+
One issue I ran into related to the default app size , but it was easy to adjust using:
+
+
runApp(appDir= "PATH/PROJECTS/thermohydrographs")
+deployApp() # the app I used was too large for the default container...so...
+configureApp("thermohydrographs", size=medium)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/static/assets/old-blog-stuff/Frankly2009successiontable.png b/static/assets/old-blog-stuff/Frankly2009successiontable.png
new file mode 100644
index 0000000..0f75f9f
Binary files /dev/null and b/static/assets/old-blog-stuff/Frankly2009successiontable.png differ
diff --git a/static/assets/old-blog-stuff/GEO200CN_syllabus.pdf b/static/assets/old-blog-stuff/GEO200CN_syllabus.pdf
new file mode 100644
index 0000000..a4b2772
Binary files /dev/null and b/static/assets/old-blog-stuff/GEO200CN_syllabus.pdf differ
diff --git a/static/assets/old-blog-stuff/IMG_0011.JPG b/static/assets/old-blog-stuff/IMG_0011.JPG
new file mode 100644
index 0000000..ccfea73
Binary files /dev/null and b/static/assets/old-blog-stuff/IMG_0011.JPG differ
diff --git a/static/assets/old-blog-stuff/Introduction to spatial data handling in R.pdf b/static/assets/old-blog-stuff/Introduction to spatial data handling in R.pdf
new file mode 100644
index 0000000..342ac2a
Binary files /dev/null and b/static/assets/old-blog-stuff/Introduction to spatial data handling in R.pdf differ
diff --git a/static/assets/old-blog-stuff/LDA_AIC.png b/static/assets/old-blog-stuff/LDA_AIC.png
new file mode 100644
index 0000000..4e998e4
Binary files /dev/null and b/static/assets/old-blog-stuff/LDA_AIC.png differ
diff --git a/static/assets/old-blog-stuff/Life-History Model for Splittail with Floodplain Index.md b/static/assets/old-blog-stuff/Life-History Model for Splittail with Floodplain Index.md
new file mode 100644
index 0000000..bb462ab
--- /dev/null
+++ b/static/assets/old-blog-stuff/Life-History Model for Splittail with Floodplain Index.md
@@ -0,0 +1,31 @@
+---
+Title: A Life-History Model for Splittail with Continuous Floodplain Habitat Index
+Tags: IGERT, fish
+Date: Feb 22, 2012 15:30
+---
+
+
+
+
+
Approach
+
+Combine two existing models - annual floodplain habitat index, and life-history model from Moyle et al. (2004)
+Move from “wet year” and “dry year” in Moyle et al. (2004) to continuous floodplain habitat
+Floodplain habitat index modifies the number of YOY splittail produced, via the probability of adult spawning, the probability of spawning in suitable habitat, and the survivorship of the young.
+Split each year of adults into those that spawned the previous year and those that haven’t, with one that previously spawned providing zero new fecundity. Probability of entering the “spawned” class is \(P_{spawn}\), a function of floodplan habitat.
+Create linear functions between floodplain habitat and \(P_{spawn}\) and YOY recruitment by using values from Moyle et al. (2004) model for “wet”, “normal”, and “dry” years.
+
+
+
+
Things to examine:
+
+How does annual floodplain habitat index vary with other measures of wet/dry years?
+How does the project configuration modify this relationship?
+
+
References
+
Moyle, P. B., R. D. Baxter, T. Sommer, T. C. Foin, and S. A. Matern. 2004. Biology and Population Dynamics of Sacramento Splittail ( Pogonichthys macrolepidotus ) in the San Francisco Estuary : A Review. San Francisco Estuary and Watershed Science 2.
+
\ No newline at end of file
diff --git a/static/assets/old-blog-stuff/Noam Ross CV.pdf b/static/assets/old-blog-stuff/Noam Ross CV.pdf
new file mode 100644
index 0000000..258e71e
Binary files /dev/null and b/static/assets/old-blog-stuff/Noam Ross CV.pdf differ
diff --git a/static/assets/old-blog-stuff/Noam Ross Thesis Presentation.pdf b/static/assets/old-blog-stuff/Noam Ross Thesis Presentation.pdf
new file mode 100644
index 0000000..7187b00
Binary files /dev/null and b/static/assets/old-blog-stuff/Noam Ross Thesis Presentation.pdf differ
diff --git a/static/assets/old-blog-stuff/Noam Ross Thesis.pdf b/static/assets/old-blog-stuff/Noam Ross Thesis.pdf
new file mode 100644
index 0000000..7ee7dd9
Binary files /dev/null and b/static/assets/old-blog-stuff/Noam Ross Thesis.pdf differ
diff --git a/static/assets/old-blog-stuff/ONS-SCD-Icons.png b/static/assets/old-blog-stuff/ONS-SCD-Icons.png
new file mode 100644
index 0000000..3c6beec
Binary files /dev/null and b/static/assets/old-blog-stuff/ONS-SCD-Icons.png differ
diff --git a/static/assets/old-blog-stuff/Photo-2012.10.23-14.50.40.jpg b/static/assets/old-blog-stuff/Photo-2012.10.23-14.50.40.jpg
new file mode 100644
index 0000000..c00f3e3
Binary files /dev/null and b/static/assets/old-blog-stuff/Photo-2012.10.23-14.50.40.jpg differ
diff --git a/static/assets/old-blog-stuff/Photo-2012.11.08-15.20.37.jpg b/static/assets/old-blog-stuff/Photo-2012.11.08-15.20.37.jpg
new file mode 100644
index 0000000..2fabc30
Binary files /dev/null and b/static/assets/old-blog-stuff/Photo-2012.11.08-15.20.37.jpg differ
diff --git a/static/assets/old-blog-stuff/Photo-2012.11.08-15.33.10.jpg b/static/assets/old-blog-stuff/Photo-2012.11.08-15.33.10.jpg
new file mode 100644
index 0000000..5ea8078
Binary files /dev/null and b/static/assets/old-blog-stuff/Photo-2012.11.08-15.33.10.jpg differ
diff --git a/static/assets/old-blog-stuff/Photo-2012.11.20-11.24.31.jpg b/static/assets/old-blog-stuff/Photo-2012.11.20-11.24.31.jpg
new file mode 100644
index 0000000..3f671af
Binary files /dev/null and b/static/assets/old-blog-stuff/Photo-2012.11.20-11.24.31.jpg differ
diff --git a/static/assets/old-blog-stuff/Reading- Time-Variant Models2.md b/static/assets/old-blog-stuff/Reading- Time-Variant Models2.md
new file mode 100644
index 0000000..9e7e26f
--- /dev/null
+++ b/static/assets/old-blog-stuff/Reading- Time-Variant Models2.md
@@ -0,0 +1,35 @@
+---
+Title: Reading: Time-Variant Models
+Date: Feb 21, 2012
+---
+
+
+
+
+
As I’m trying to develop a time-variant model of the S-Map (Sugihara 1994) , Alan suggested I look into Stokes’ (1988) of a time-variant model of Nicholson’s (1954) blowfly data. My notes:
+
+The data from Nicholson (1957) is actually longer.
+It’s clear that the blowfly data emerge from a time-delayed process
+
+How do S-Maps respond to time-delay processes? Should a time delay introduce another dimension to the data? Let’s try it with both segregated times – \(x = f(x_{t-2})\) – and mixed – \(x= f(x_{t-1}, x_{t-2})\).
+
+Fluctuations become less periodic over time in the longer data set.
+Nicholson speculated that this was due to natural selection
+The model used to estimate the population is:
+\[\begin{aligned} B &= P e^{-f_0 / f} \\ f &= \frac{\phi}{N} \\ N_0 &= \frac{\phi}{f_0} \end{aligned}\]
+The authors fit a model where the parameters change over time, as follows. First, since the protein supply rate \(\phi\) changes with time, fecundity \(B\) changes as follows
+\[\begin{aligned} \frac{dN(t)}{dt} = R(t-\tau) - \delta N(t) \\ R(t) = PN(t) e^{N(t) / N_0} \end{aligned}\]
+\(P\), \(f_0\), and \(\delta\) all become time-variant. \(\tau\) is held constant, in the absence of any way to estimate it.
+Estimating the change is done by breaking up the time series into 100-day blocks and measurin
+The steady state value of the newly estimated model increases, as does the mean of the experimental data.
+Simulations qualitatively show the same changes in time as the real data. They include noise with spectra estimated from the data – \(S_B = 0.36 \text{ days}^{-1}\), and \(S_{\delta} = 0.00625 \text{ days}^{-1}\)
+
+
OK, so this is a data set that has a plausible and characterizable change over time. I could use the real data or simulate it. It could also potentially be fit without breaking up the blocks, using a Bayesian framework.
+
Moe et al. (2002) Uses a non-parametric approach to examining the data from a similar experimental set-up to Nicholson’s. There is no time-variant component, though.
+
References
+
Moe, S. J., N. C. Stenseth, and R. H. Smith. 2002. Density dependence in blowfly populations: experimental evaluation of non-parametric time-series modelling. Oikos 98:523–533. doi: 10.1034/j.1600-0706.2002.980317.x.
+
Nicholson, A. J. 1954. An outline of the dynamics of animal populations.. Australian Journal of Zoology 2:9–65. Retrieved from http://www.publish.csiro.au/?paper=ZO9540009 .
+
Nicholson, A. J. 1957. The self-adjustment of populations to change. Pages 153–173 in Cold Spring Harbor Symposia on Quantitative Biology. Cold Spring Harbor Laboratory Press. Retrieved from http://symposium.cshlp.org/content/22/153.short .
+
Stokes, T. K., W. S. C. Gurney, R. M. Nisbet, and S. P. Blythe. 1988. Parameter evolution in a laboratory insect population. Theoretical Population Biology 34:248–265. Retrieved from http://www.sciencedirect.com/science/article/pii/0040580988900238 .
+
Sugihara, G. 1994. Nonlinear forecasting for the classification of natural time series. the Royal Society of London. Series 348:477–495. Retrieved from http://rsta.royalsocietypublishing.org/content/348/1688/477.short .
+
\ No newline at end of file
diff --git a/static/assets/old-blog-stuff/RevolutionAnalytics_logo_374x87_trans.png b/static/assets/old-blog-stuff/RevolutionAnalytics_logo_374x87_trans.png
new file mode 100644
index 0000000..70450bf
Binary files /dev/null and b/static/assets/old-blog-stuff/RevolutionAnalytics_logo_374x87_trans.png differ
diff --git a/static/assets/old-blog-stuff/Ross et al_Trade-Offs and Synergies in Floodplain Management_Poster 20120601.pdf b/static/assets/old-blog-stuff/Ross et al_Trade-Offs and Synergies in Floodplain Management_Poster 20120601.pdf
new file mode 100644
index 0000000..a564553
Binary files /dev/null and b/static/assets/old-blog-stuff/Ross et al_Trade-Offs and Synergies in Floodplain Management_Poster 20120601.pdf differ
diff --git a/static/assets/old-blog-stuff/SOD_Trade-off.ograph b/static/assets/old-blog-stuff/SOD_Trade-off.ograph
new file mode 100644
index 0000000..e5c932e
Binary files /dev/null and b/static/assets/old-blog-stuff/SOD_Trade-off.ograph differ
diff --git a/static/assets/old-blog-stuff/SOD_Trade-off.png b/static/assets/old-blog-stuff/SOD_Trade-off.png
new file mode 100644
index 0000000..7986499
Binary files /dev/null and b/static/assets/old-blog-stuff/SOD_Trade-off.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 1.43.44 PM.png b/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 1.43.44 PM.png
new file mode 100644
index 0000000..416b236
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 1.43.44 PM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 1.49.23 PM.png b/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 1.49.23 PM.png
new file mode 100644
index 0000000..5fd81ea
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 1.49.23 PM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 4.10.39 PM.png b/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 4.10.39 PM.png
new file mode 100644
index 0000000..8d69479
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 4.10.39 PM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 4.32.26 PM.png b/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 4.32.26 PM.png
new file mode 100644
index 0000000..6e23218
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2012-04-03 at 4.32.26 PM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2012-04-06 at 11.52.46 AM.png b/static/assets/old-blog-stuff/Screen Shot 2012-04-06 at 11.52.46 AM.png
new file mode 100644
index 0000000..f1fb66f
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2012-04-06 at 11.52.46 AM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2012-04-30 at 1.39.50 PM.png b/static/assets/old-blog-stuff/Screen Shot 2012-04-30 at 1.39.50 PM.png
new file mode 100644
index 0000000..8ce0bca
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2012-04-30 at 1.39.50 PM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2012-05-29 at 7.11.04 PM.png b/static/assets/old-blog-stuff/Screen Shot 2012-05-29 at 7.11.04 PM.png
new file mode 100644
index 0000000..7e7b581
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2012-05-29 at 7.11.04 PM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2012-05-29 at 7.13.50 PM.png b/static/assets/old-blog-stuff/Screen Shot 2012-05-29 at 7.13.50 PM.png
new file mode 100644
index 0000000..6a8367a
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2012-05-29 at 7.13.50 PM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2012-12-04 at 10.11.17 AM.png b/static/assets/old-blog-stuff/Screen Shot 2012-12-04 at 10.11.17 AM.png
new file mode 100644
index 0000000..d7c0c7f
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2012-12-04 at 10.11.17 AM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2013-04-22 at 10.21.56 PM.png b/static/assets/old-blog-stuff/Screen Shot 2013-04-22 at 10.21.56 PM.png
new file mode 100644
index 0000000..93b2a43
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2013-04-22 at 10.21.56 PM.png differ
diff --git a/static/assets/old-blog-stuff/Screen Shot 2013-04-22 at 10.23.01 PM.png b/static/assets/old-blog-stuff/Screen Shot 2013-04-22 at 10.23.01 PM.png
new file mode 100644
index 0000000..9df3331
Binary files /dev/null and b/static/assets/old-blog-stuff/Screen Shot 2013-04-22 at 10.23.01 PM.png differ
diff --git a/static/assets/old-blog-stuff/Screenshot 15.PNG b/static/assets/old-blog-stuff/Screenshot 15.PNG
new file mode 100644
index 0000000..3d81b6e
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 15.PNG differ
diff --git a/static/assets/old-blog-stuff/Screenshot 18.PNG b/static/assets/old-blog-stuff/Screenshot 18.PNG
new file mode 100644
index 0000000..2aa9e58
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 18.PNG differ
diff --git a/static/assets/old-blog-stuff/Screenshot 2014-03-05 11.12.53.png b/static/assets/old-blog-stuff/Screenshot 2014-03-05 11.12.53.png
new file mode 100644
index 0000000..49a3d76
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 2014-03-05 11.12.53.png differ
diff --git a/static/assets/old-blog-stuff/Screenshot 2014-03-06 11.11.36.png b/static/assets/old-blog-stuff/Screenshot 2014-03-06 11.11.36.png
new file mode 100644
index 0000000..6cecee5
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 2014-03-06 11.11.36.png differ
diff --git a/static/assets/old-blog-stuff/Screenshot 2014-03-06 11.12.06.png b/static/assets/old-blog-stuff/Screenshot 2014-03-06 11.12.06.png
new file mode 100644
index 0000000..d476a0e
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 2014-03-06 11.12.06.png differ
diff --git a/static/assets/old-blog-stuff/Screenshot 2014-03-10 16.59.27.png b/static/assets/old-blog-stuff/Screenshot 2014-03-10 16.59.27.png
new file mode 100644
index 0000000..e0de767
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 2014-03-10 16.59.27.png differ
diff --git a/static/assets/old-blog-stuff/Screenshot 2014-03-10 17.20.32.png b/static/assets/old-blog-stuff/Screenshot 2014-03-10 17.20.32.png
new file mode 100644
index 0000000..b512492
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 2014-03-10 17.20.32.png differ
diff --git a/static/assets/old-blog-stuff/Screenshot 2014-03-10 17.22.15.png b/static/assets/old-blog-stuff/Screenshot 2014-03-10 17.22.15.png
new file mode 100644
index 0000000..95f7fe4
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 2014-03-10 17.22.15.png differ
diff --git a/static/assets/old-blog-stuff/Screenshot 3.PNG b/static/assets/old-blog-stuff/Screenshot 3.PNG
new file mode 100644
index 0000000..d185ae6
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 3.PNG differ
diff --git a/static/assets/old-blog-stuff/Screenshot 40.PNG b/static/assets/old-blog-stuff/Screenshot 40.PNG
new file mode 100644
index 0000000..8e7122f
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 40.PNG differ
diff --git a/static/assets/old-blog-stuff/Screenshot 42.PNG b/static/assets/old-blog-stuff/Screenshot 42.PNG
new file mode 100644
index 0000000..c5a32c4
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 42.PNG differ
diff --git a/static/assets/old-blog-stuff/Screenshot 8.PNG b/static/assets/old-blog-stuff/Screenshot 8.PNG
new file mode 100644
index 0000000..e3cfbc6
Binary files /dev/null and b/static/assets/old-blog-stuff/Screenshot 8.PNG differ
diff --git a/static/assets/old-blog-stuff/Syllabus_2013.docx b/static/assets/old-blog-stuff/Syllabus_2013.docx
new file mode 100644
index 0000000..37e92f1
Binary files /dev/null and b/static/assets/old-blog-stuff/Syllabus_2013.docx differ
diff --git a/static/assets/old-blog-stuff/WFB_222_ExpSyll12013.pdf b/static/assets/old-blog-stuff/WFB_222_ExpSyll12013.pdf
new file mode 100644
index 0000000..78a67c4
Binary files /dev/null and b/static/assets/old-blog-stuff/WFB_222_ExpSyll12013.pdf differ
diff --git a/static/assets/old-blog-stuff/Wildfire_in_California.jpg b/static/assets/old-blog-stuff/Wildfire_in_California.jpg
new file mode 100644
index 0000000..0a5d5fa
Binary files /dev/null and b/static/assets/old-blog-stuff/Wildfire_in_California.jpg differ
diff --git a/static/assets/old-blog-stuff/Winter 2013 R Course Syllabus.docx b/static/assets/old-blog-stuff/Winter 2013 R Course Syllabus.docx
new file mode 100644
index 0000000..6af8bed
Binary files /dev/null and b/static/assets/old-blog-stuff/Winter 2013 R Course Syllabus.docx differ
diff --git a/static/assets/old-blog-stuff/_51331603_gdp_world_304.gif b/static/assets/old-blog-stuff/_51331603_gdp_world_304.gif
new file mode 100644
index 0000000..2c2c5a2
Binary files /dev/null and b/static/assets/old-blog-stuff/_51331603_gdp_world_304.gif differ
diff --git a/static/assets/old-blog-stuff/a.png b/static/assets/old-blog-stuff/a.png
new file mode 100644
index 0000000..c0ab5ed
Binary files /dev/null and b/static/assets/old-blog-stuff/a.png differ
diff --git a/static/assets/old-blog-stuff/age.png b/static/assets/old-blog-stuff/age.png
new file mode 100644
index 0000000..aa1fc67
Binary files /dev/null and b/static/assets/old-blog-stuff/age.png differ
diff --git a/static/assets/old-blog-stuff/ageclassplot.png b/static/assets/old-blog-stuff/ageclassplot.png
new file mode 100644
index 0000000..b9547b4
Binary files /dev/null and b/static/assets/old-blog-stuff/ageclassplot.png differ
diff --git a/static/assets/old-blog-stuff/anim_assets/css/reset.css b/static/assets/old-blog-stuff/anim_assets/css/reset.css
new file mode 100755
index 0000000..1c85489
--- /dev/null
+++ b/static/assets/old-blog-stuff/anim_assets/css/reset.css
@@ -0,0 +1,53 @@
+/* http://meyerweb.com/eric/tools/css/reset/ */
+/* v1.0 | 20080212 */
+
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, font, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ outline: 0;
+ font-size: 100%;
+ vertical-align: baseline;
+ background: transparent;
+}
+body {
+ line-height: 1;
+}
+ol, ul {
+ list-style: none;
+}
+blockquote, q {
+ quotes: none;
+}
+blockquote:before, blockquote:after,
+q:before, q:after {
+ content: '';
+ content: none;
+}
+
+/* remember to define focus styles! */
+:focus {
+ outline: 0;
+}
+
+/* remember to highlight inserts somehow! */
+ins {
+ text-decoration: none;
+}
+del {
+ text-decoration: line-through;
+}
+
+/* tables still need 'cellspacing="0"' in the markup */
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
diff --git a/static/assets/old-blog-stuff/anim_assets/css/scianimator.blue.css b/static/assets/old-blog-stuff/anim_assets/css/scianimator.blue.css
new file mode 100755
index 0000000..7c5e725
--- /dev/null
+++ b/static/assets/old-blog-stuff/anim_assets/css/scianimator.blue.css
@@ -0,0 +1,44 @@
+/**
+ * SciAnimator - Scientific Image Animator Plugin for jQuery
+ *
+ * Copyright (c) 2010 Brent Ertz
+ * Released under the MIT license.
+ * http://github.com/brentertz/scianimator
+*/
+
+/* Blue theme */
+.scianimator.blue,
+.scianimator.blue a,
+.scianimator.blue a:visited {
+ color: #3985a8;
+}
+.scianimator.blue {
+ background: #ddeef6;
+}
+.scianimator.blue .controls,
+.scianimator.blue .control {
+ background-color: #ddeef6;
+ border: 1px solid #89bad2;
+ color: #3985a8;
+ text-shadow: 0 1px #fff;
+}
+.scianimator.blue .controls {
+ box-shadow: inset 0 1px 3px #fff, inset 0 -17px #cbe6f2, 0 0 3px #89bad2;
+ -o-box-shadow: inset 0 1px 3px #fff, inset 0 -17px #cbe6f2, 0 0 3px #89bad2;
+ -webkit-box-shadow: inset 0 1px 3px #fff, inset 0 -17px #cbe6f2, 0 0 3px #89bad2;
+ -moz-box-shadow: inset 0 1px 3px #fff, inset 0 -17px #cbe6f2, 0 0 3px #89bad2;
+}
+.scianimator.blue .control {
+ box-shadow: inset 0 1px 3px #fff, inset 0 -10px #cbe6f2, 0 0 3px #89bad2;
+ -o-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #cbe6f2, 0 0 3px #89bad2;
+ -webkit-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #cbe6f2, 0 0 3px #89bad2;
+ -moz-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #cbe6f2, 0 0 3px #89bad2;
+}
+.scianimator.blue a:hover {
+ box-shadow: inset 0 1px 3px #fff, inset 0 -10px #cbe6f2, 0 0 3px #3985a8;
+ -o-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #cbe6f2, 0 0 3px #3985a8;
+ -webkit-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #cbe6f2, 0 0 3px #3985a8;
+ -moz-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #cbe6f2, 0 0 3px #3985a8;
+ color: #fff;
+ text-shadow: 0px 1px #3985a8;
+}
\ No newline at end of file
diff --git a/static/assets/old-blog-stuff/anim_assets/css/scianimator.css b/static/assets/old-blog-stuff/anim_assets/css/scianimator.css
new file mode 100755
index 0000000..3138aac
--- /dev/null
+++ b/static/assets/old-blog-stuff/anim_assets/css/scianimator.css
@@ -0,0 +1,108 @@
+/**
+ * SciAnimator - Scientific Image Animator Plugin for jQuery
+ *
+ * Copyright (c) 2010 Brent Ertz
+ * Released under the MIT license.
+ * http://github.com/brentertz/scianimator
+*/
+
+/* Comment out @imports for themes not in use */
+@import url('scianimator.light.css');
+@import url('scianimator.dark.css');
+@import url('scianimator.blue.css');
+
+.scianimator {
+ font-family: 'Lucida Grande', sans-serif;
+ font-size: 12px;
+ text-align: center;
+ margin: auto auto 1em auto;
+ position: relative;
+}
+.scianimator .controls,
+.scianimator .control {
+ border: 1px solid;
+ border-radius: 4px;
+ -moz-border-radius: 4px;
+ font-family: 'Lucida Grande', sans-serif;
+ font-size: 10px;
+ text-shadow: 0 1px #fff;
+ margin: 2px;
+ position: relative;
+}
+.scianimator .controls {
+ margin: 0;
+ padding: 4px;
+ position: relative;
+}
+.scianimator a,
+.scianimator a:visited {
+ cursor: pointer;
+ display: inline-block;
+ padding: 5px 10px;
+ text-decoration: none;
+}
+.scianimator a.small,
+.scianimator a:visited.small {
+ padding: 1px 2px;
+}
+.scianimator a:active {
+ top: 1px;
+}
+.scianimator select.control,
+.scianimator label {
+ margin: 1px;
+ vertical-align: middle;
+}
+.scianimator .control.box {
+ padding: 1px 5px;
+ display: inline-block;
+ vertical-align: top;
+}
+.scianimator .control.box .control {
+ margin-left: 0;
+ margin-right: 0;
+}
+
+.scianimator .box.control.navigator {
+ padding: 2px;
+}
+
+.scianimator .box a.control.navigator,
+.scianimator .box a:hover.control.navigator {
+ display: inline-block;
+ height: 10px;
+ margin: 2px;
+ padding: 0;
+ width: 10px;
+
+ background: #00FF00;
+ box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px #00FF00;
+ -o-box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px #00FF00;
+ -webkit-box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px #00FF00;
+ -moz-box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px #00FF00;
+}
+.scianimator .box a.navigator.disabled,
+.scianimator .box a:hover.navigator.disabled {
+ background: red;
+ box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px red;
+ -o-box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px red;
+ -webkit-box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px red;
+ -moz-box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px red;
+}
+.scianimator .box a.navigator.current,
+.scianimator .box a:hover.navigator.current {
+ background: blue;
+ box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px blue;
+ -o-box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px blue;
+ -webkit-box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px blue;
+ -moz-box-shadow: 0 0 3px 1px #666666 inset, 0 0 1px blue;
+}
+
+.scianimator .status {
+ background: red;
+ color: #fff;
+ right: 0;
+ padding: 5px;
+ position: absolute;
+ top: 0;
+}
\ No newline at end of file
diff --git a/static/assets/old-blog-stuff/anim_assets/css/scianimator.dark.css b/static/assets/old-blog-stuff/anim_assets/css/scianimator.dark.css
new file mode 100755
index 0000000..cee3628
--- /dev/null
+++ b/static/assets/old-blog-stuff/anim_assets/css/scianimator.dark.css
@@ -0,0 +1,44 @@
+/**
+ * SciAnimator - Scientific Image Animator Plugin for jQuery
+ *
+ * Copyright (c) 2010 Brent Ertz
+ * Released under the MIT license.
+ * http://github.com/brentertz/scianimator
+*/
+
+/* Dark theme */
+.scianimator.dark,
+.scianimator.dark a,
+.scianimator.dark a:visited {
+ color: #ccc;
+}
+.scianimator.dark {
+ background: #333;
+}
+.scianimator.dark .controls,
+.scianimator.dark .control {
+ background-color: #333;
+ border-color: #666;
+ color: #ccc;
+ text-shadow: 0 1px #000;
+}
+.scianimator.dark .controls {
+ box-shadow: inset 0 1px 3px #fff, inset 0 -17px #000, 0 0 3px #000;
+ -o-box-shadow: inset 0 1px 3px #fff, inset 0 -17px #000, 0 0 3px #000;
+ -webkit-box-shadow: inset 0 1px 3px #fff, inset 0 -17px #000, 0 0 3px #000;
+ -moz-box-shadow: inset 0 1px 3px #fff, inset 0 -17px #000, 0 0 3px #000;
+}
+.scianimator.dark .control {
+ box-shadow: inset 0 1px 3px #fff, inset 0 -10px #000, 0 0 3px #000;
+ -o-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #000, 0 0 3px #000;
+ -webkit-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #000, 0 0 3px #000;
+ -moz-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #000, 0 0 3px #000;
+}
+.scianimator.dark a:hover {
+ box-shadow: inset 0 1px 3px #fff, inset 0 -10px #000, 0 0 3px #555;
+ -o-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #000, 0 0 3px #555;
+ -webkit-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #000, 0 0 3px #555;
+ -moz-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #333, 0 0 3px #555;
+ color: #fff;
+ text-shadow: 0px 1px #000;
+}
\ No newline at end of file
diff --git a/static/assets/old-blog-stuff/anim_assets/css/scianimator.light.css b/static/assets/old-blog-stuff/anim_assets/css/scianimator.light.css
new file mode 100755
index 0000000..c0298bf
--- /dev/null
+++ b/static/assets/old-blog-stuff/anim_assets/css/scianimator.light.css
@@ -0,0 +1,44 @@
+/**
+ * SciAnimator - Scientific Image Animator Plugin for jQuery
+ *
+ * Copyright (c) 2010 Brent Ertz
+ * Released under the MIT license.
+ * http://github.com/brentertz/scianimator
+*/
+
+/* Light theme */
+.scianimator.light,
+.scianimator.light a,
+.scianimator.light a:visited {
+ color: #555;
+}
+.scianimator.light {
+ background: #ddd;
+}
+.scianimator.light .controls,
+.scianimator.light .control {
+ background-color: #ddd;
+ border-color: #999;
+ color: #555;
+ text-shadow: 0 1px #fff;
+}
+.scianimator.light .controls {
+ box-shadow: inset 0 1px 3px #fff, inset 0 -17px #ccc, 0 0 3px #999;
+ -o-box-shadow: inset 0 1px 3px #fff, inset 0 -17px #ccc, 0 0 3px #999;
+ -webkit-box-shadow: inset 0 1px 3px #fff, inset 0 -17px #ccc, 0 0 3px #999;
+ -moz-box-shadow: inset 0 1px 3px #fff, inset 0 -17px #ccc, 0 0 3px #999;
+}
+.scianimator.light .control {
+ box-shadow: inset 0 1px 3px #fff, inset 0 -10px #ccc, 0 0 3px #999;
+ -o-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #ccc, 0 0 3px #999;
+ -webkit-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #ccc, 0 0 3px #999;
+ -moz-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #ccc, 0 0 3px #999;
+}
+.scianimator.light a:hover {
+ box-shadow: inset 0 1px 3px #fff, inset 0 -10px #ccc, 0 0 3px #555;
+ -o-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #ccc, 0 0 3px #555;
+ -webkit-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #ccc, 0 0 3px #555;
+ -moz-box-shadow: inset 0 1px 3px #fff, inset 0 -10px #ccc, 0 0 3px #555;
+ color: #fff;
+ text-shadow: 0px 1px #555;
+}
\ No newline at end of file
diff --git a/static/assets/old-blog-stuff/anim_assets/css/shCore.css b/static/assets/old-blog-stuff/anim_assets/css/shCore.css
new file mode 100644
index 0000000..34f6864
--- /dev/null
+++ b/static/assets/old-blog-stuff/anim_assets/css/shCore.css
@@ -0,0 +1,226 @@
+/**
+ * SyntaxHighlighter
+ * http://alexgorbatchev.com/SyntaxHighlighter
+ *
+ * SyntaxHighlighter is donationware. If you are using it, please donate.
+ * http://alexgorbatchev.com/SyntaxHighlighter/donate.html
+ *
+ * @version
+ * 3.0.83 (July 02 2010)
+ *
+ * @copyright
+ * Copyright (C) 2004-2010 Alex Gorbatchev.
+ *
+ * @license
+ * Dual licensed under the MIT and GPL licenses.
+ */
+.syntaxhighlighter a,
+.syntaxhighlighter div,
+.syntaxhighlighter code,
+.syntaxhighlighter table,
+.syntaxhighlighter table td,
+.syntaxhighlighter table tr,
+.syntaxhighlighter table tbody,
+.syntaxhighlighter table thead,
+.syntaxhighlighter table caption,
+.syntaxhighlighter textarea {
+ -moz-border-radius: 0 0 0 0 !important;
+ -webkit-border-radius: 0 0 0 0 !important;
+ background: none !important;
+ border: 0 !important;
+ bottom: auto !important;
+ float: none !important;
+ height: auto !important;
+ left: auto !important;
+ line-height: 1.1em !important;
+ margin: 0 !important;
+ outline: 0 !important;
+ overflow: visible !important;
+ padding: 0 !important;
+ position: static !important;
+ right: auto !important;
+ text-align: left !important;
+ top: auto !important;
+ vertical-align: baseline !important;
+ width: auto !important;
+ box-sizing: content-box !important;
+ font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
+ font-weight: normal !important;
+ font-style: normal !important;
+ font-size: 1em !important;
+ min-height: inherit !important;
+ min-height: auto !important;
+}
+
+.syntaxhighlighter {
+ width: 100% !important;
+ margin: 1em 0 1em 0 !important;
+ position: relative !important;
+ overflow: auto !important;
+ font-size: 1em !important;
+}
+.syntaxhighlighter.source {
+ overflow: hidden !important;
+}
+.syntaxhighlighter .bold {
+ font-weight: bold !important;
+}
+.syntaxhighlighter .italic {
+ font-style: italic !important;
+}
+.syntaxhighlighter .line {
+ white-space: pre !important;
+}
+.syntaxhighlighter table {
+ width: 100% !important;
+}
+.syntaxhighlighter table caption {
+ text-align: left !important;
+ padding: .5em 0 0.5em 1em !important;
+}
+.syntaxhighlighter table td.code {
+ width: 100% !important;
+}
+.syntaxhighlighter table td.code .container {
+ position: relative !important;
+}
+.syntaxhighlighter table td.code .container textarea {
+ box-sizing: border-box !important;
+ position: absolute !important;
+ left: 0 !important;
+ top: 0 !important;
+ width: 100% !important;
+ height: 100% !important;
+ border: none !important;
+ background: white !important;
+ padding-left: 1em !important;
+ overflow: hidden !important;
+ white-space: pre !important;
+}
+.syntaxhighlighter table td.gutter .line {
+ text-align: right !important;
+ padding: 0 0.5em 0 1em !important;
+}
+.syntaxhighlighter table td.code .line {
+ padding: 0 1em !important;
+}
+.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
+ padding-left: 0em !important;
+}
+.syntaxhighlighter.show {
+ display: block !important;
+}
+.syntaxhighlighter.collapsed table {
+ display: none !important;
+}
+.syntaxhighlighter.collapsed .toolbar {
+ padding: 0.1em 0.8em 0em 0.8em !important;
+ font-size: 1em !important;
+ position: static !important;
+ width: auto !important;
+ height: auto !important;
+}
+.syntaxhighlighter.collapsed .toolbar span {
+ display: inline !important;
+ margin-right: 1em !important;
+}
+.syntaxhighlighter.collapsed .toolbar span a {
+ padding: 0 !important;
+ display: none !important;
+}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource {
+ display: inline !important;
+}
+.syntaxhighlighter .toolbar {
+ position: absolute !important;
+ right: 1px !important;
+ top: 1px !important;
+ width: 11px !important;
+ height: 11px !important;
+ font-size: 10px !important;
+ z-index: 10 !important;
+}
+.syntaxhighlighter .toolbar span.title {
+ display: inline !important;
+}
+.syntaxhighlighter .toolbar a {
+ display: block !important;
+ text-align: center !important;
+ text-decoration: none !important;
+ padding-top: 1px !important;
+}
+.syntaxhighlighter .toolbar a.expandSource {
+ display: none !important;
+}
+.syntaxhighlighter.ie {
+ font-size: .9em !important;
+ padding: 1px 0 1px 0 !important;
+}
+.syntaxhighlighter.ie .toolbar {
+ line-height: 8px !important;
+}
+.syntaxhighlighter.ie .toolbar a {
+ padding-top: 0px !important;
+}
+.syntaxhighlighter.printing .line.alt1 .content,
+.syntaxhighlighter.printing .line.alt2 .content,
+.syntaxhighlighter.printing .line.highlighted .number,
+.syntaxhighlighter.printing .line.highlighted.alt1 .content,
+.syntaxhighlighter.printing .line.highlighted.alt2 .content {
+ background: none !important;
+}
+.syntaxhighlighter.printing .line .number {
+ color: #bbbbbb !important;
+}
+.syntaxhighlighter.printing .line .content {
+ color: black !important;
+}
+.syntaxhighlighter.printing .toolbar {
+ display: none !important;
+}
+.syntaxhighlighter.printing a {
+ text-decoration: none !important;
+}
+.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
+ color: black !important;
+}
+.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
+ color: #008200 !important;
+}
+.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
+ color: blue !important;
+}
+.syntaxhighlighter.printing .keyword {
+ color: #006699 !important;
+ font-weight: bold !important;
+}
+.syntaxhighlighter.printing .preprocessor {
+ color: gray !important;
+}
+.syntaxhighlighter.printing .variable {
+ color: #aa7700 !important;
+}
+.syntaxhighlighter.printing .value {
+ color: #009900 !important;
+}
+.syntaxhighlighter.printing .functions {
+ color: #ff1493 !important;
+}
+.syntaxhighlighter.printing .constants {
+ color: #0066cc !important;
+}
+.syntaxhighlighter.printing .script {
+ font-weight: bold !important;
+}
+.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
+ color: gray !important;
+}
+.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
+ color: #ff1493 !important;
+}
+.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
+ color: red !important;
+}
+.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
+ color: black !important;
+}
diff --git a/static/assets/old-blog-stuff/anim_assets/css/shThemeDefault.css b/static/assets/old-blog-stuff/anim_assets/css/shThemeDefault.css
new file mode 100644
index 0000000..1365411
--- /dev/null
+++ b/static/assets/old-blog-stuff/anim_assets/css/shThemeDefault.css
@@ -0,0 +1,117 @@
+/**
+ * SyntaxHighlighter
+ * http://alexgorbatchev.com/SyntaxHighlighter
+ *
+ * SyntaxHighlighter is donationware. If you are using it, please donate.
+ * http://alexgorbatchev.com/SyntaxHighlighter/donate.html
+ *
+ * @version
+ * 3.0.83 (July 02 2010)
+ *
+ * @copyright
+ * Copyright (C) 2004-2010 Alex Gorbatchev.
+ *
+ * @license
+ * Dual licensed under the MIT and GPL licenses.
+ */
+.syntaxhighlighter {
+ background-color: white !important;
+}
+.syntaxhighlighter .line.alt1 {
+ background-color: white !important;
+}
+.syntaxhighlighter .line.alt2 {
+ background-color: white !important;
+}
+.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
+ background-color: #e0e0e0 !important;
+}
+.syntaxhighlighter .line.highlighted.number {
+ color: black !important;
+}
+.syntaxhighlighter table caption {
+ color: black !important;
+}
+.syntaxhighlighter .gutter {
+ color: #afafaf !important;
+}
+.syntaxhighlighter .gutter .line {
+ border-right: 3px solid #6ce26c !important;
+}
+.syntaxhighlighter .gutter .line.highlighted {
+ background-color: #6ce26c !important;
+ color: white !important;
+}
+.syntaxhighlighter.printing .line .content {
+ border: none !important;
+}
+.syntaxhighlighter.collapsed {
+ overflow: visible !important;
+}
+.syntaxhighlighter.collapsed .toolbar {
+ color: blue !important;
+ background: white !important;
+ border: 1px solid #6ce26c !important;
+}
+.syntaxhighlighter.collapsed .toolbar a {
+ color: blue !important;
+}
+.syntaxhighlighter.collapsed .toolbar a:hover {
+ color: red !important;
+}
+.syntaxhighlighter .toolbar {
+ color: white !important;
+ background: #6ce26c !important;
+ border: none !important;
+}
+.syntaxhighlighter .toolbar a {
+ color: white !important;
+}
+.syntaxhighlighter .toolbar a:hover {
+ color: black !important;
+}
+.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
+ color: black !important;
+}
+.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
+ color: #008200 !important;
+}
+.syntaxhighlighter .string, .syntaxhighlighter .string a {
+ color: blue !important;
+}
+.syntaxhighlighter .keyword {
+ color: #006699 !important;
+}
+.syntaxhighlighter .preprocessor {
+ color: gray !important;
+}
+.syntaxhighlighter .variable {
+ color: #aa7700 !important;
+}
+.syntaxhighlighter .value {
+ color: #009900 !important;
+}
+.syntaxhighlighter .functions {
+ color: #ff1493 !important;
+}
+.syntaxhighlighter .constants {
+ color: #0066cc !important;
+}
+.syntaxhighlighter .script {
+ font-weight: bold !important;
+ color: #006699 !important;
+ background-color: none !important;
+}
+.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
+ color: gray !important;
+}
+.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
+ color: #ff1493 !important;
+}
+.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
+ color: red !important;
+}
+
+.syntaxhighlighter .keyword {
+ font-weight: bold !important;
+}
diff --git a/static/assets/old-blog-stuff/anim_assets/css/styles.css b/static/assets/old-blog-stuff/anim_assets/css/styles.css
new file mode 100755
index 0000000..8887991
--- /dev/null
+++ b/static/assets/old-blog-stuff/anim_assets/css/styles.css
@@ -0,0 +1,3 @@
+body {
+ margin: 20px;
+}
\ No newline at end of file
diff --git a/static/assets/old-blog-stuff/anim_assets/js/jquery-1.4.4.min.js b/static/assets/old-blog-stuff/anim_assets/js/jquery-1.4.4.min.js
new file mode 100755
index 0000000..8f3ca2e
--- /dev/null
+++ b/static/assets/old-blog-stuff/anim_assets/js/jquery-1.4.4.min.js
@@ -0,0 +1,167 @@
+/*!
+ * jQuery JavaScript Library v1.4.4
+ * http://jquery.com/
+ *
+ * Copyright 2010, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2010, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Thu Nov 11 19:04:53 2010 -0500
+ */
+(function(E,B){function ka(a,b,d){if(d===B&&a.nodeType===1){d=a.getAttribute("data-"+b);if(typeof d==="string"){try{d=d==="true"?true:d==="false"?false:d==="null"?null:!c.isNaN(d)?parseFloat(d):Ja.test(d)?c.parseJSON(d):d}catch(e){}c.data(a,b,d)}else d=B}return d}function U(){return false}function ca(){return true}function la(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ka(a){var b,d,e,f,h,l,k,o,x,r,A,C=[];f=[];h=c.data(this,this.nodeType?"events":"__events__");if(typeof h==="function")h=
+h.events;if(!(a.liveFired===this||!h||!h.live||a.button&&a.type==="click")){if(a.namespace)A=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var J=h.live.slice(0);for(k=0;kd)break;a.currentTarget=f.elem;a.data=f.handleObj.data;a.handleObj=f.handleObj;A=f.handleObj.origHandler.apply(f.elem,arguments);if(A===false||a.isPropagationStopped()){d=f.level;if(A===false)b=false;if(a.isImmediatePropagationStopped())break}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(La,
+"`").replace(Ma,"&")}function ma(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Na.test(b))return c.filter(b,e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function na(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,
+e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var l in e[h])c.event.add(this,h,e[h][l],e[h][l].data)}}})}function Oa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function oa(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?Pa:Qa,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,
+"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function da(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Ra.test(a)?e(a,h):da(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)?e(a,""):c.each(b,function(f,h){da(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(pa.concat.apply([],pa.slice(0,b)),function(){d[this]=a});return d}function qa(a){if(!ea[a]){var b=c("<"+
+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";ea[a]=d}return ea[a]}function fa(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var t=E.document,c=function(){function a(){if(!b.isReady){try{t.documentElement.doScroll("left")}catch(j){setTimeout(a,1);return}b.ready()}}var b=function(j,s){return new b.fn.init(j,s)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,l=/\S/,k=/^\s+/,o=/\s+$/,x=/\W/,r=/\d/,A=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,
+C=/^[\],:{}\s]*$/,J=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,I=/(?:^|:|,)(?:\s*\[)+/g,L=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,i=/(msie) ([\w.]+)/,n=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false,q=[],u,y=Object.prototype.toString,F=Object.prototype.hasOwnProperty,M=Array.prototype.push,N=Array.prototype.slice,O=String.prototype.trim,D=Array.prototype.indexOf,R={};b.fn=b.prototype={init:function(j,
+s){var v,z,H;if(!j)return this;if(j.nodeType){this.context=this[0]=j;this.length=1;return this}if(j==="body"&&!s&&t.body){this.context=t;this[0]=t.body;this.selector="body";this.length=1;return this}if(typeof j==="string")if((v=h.exec(j))&&(v[1]||!s))if(v[1]){H=s?s.ownerDocument||s:t;if(z=A.exec(j))if(b.isPlainObject(s)){j=[t.createElement(z[1])];b.fn.attr.call(j,s,true)}else j=[H.createElement(z[1])];else{z=b.buildFragment([v[1]],[H]);j=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,
+j)}else{if((z=t.getElementById(v[2]))&&z.parentNode){if(z.id!==v[2])return f.find(j);this.length=1;this[0]=z}this.context=t;this.selector=j;return this}else if(!s&&!x.test(j)){this.selector=j;this.context=t;j=t.getElementsByTagName(j);return b.merge(this,j)}else return!s||s.jquery?(s||f).find(j):b(s).find(j);else if(b.isFunction(j))return f.ready(j);if(j.selector!==B){this.selector=j.selector;this.context=j.context}return b.makeArray(j,this)},selector:"",jquery:"1.4.4",length:0,size:function(){return this.length},
+toArray:function(){return N.call(this,0)},get:function(j){return j==null?this.toArray():j<0?this.slice(j)[0]:this[j]},pushStack:function(j,s,v){var z=b();b.isArray(j)?M.apply(z,j):b.merge(z,j);z.prevObject=this;z.context=this.context;if(s==="find")z.selector=this.selector+(this.selector?" ":"")+v;else if(s)z.selector=this.selector+"."+s+"("+v+")";return z},each:function(j,s){return b.each(this,j,s)},ready:function(j){b.bindReady();if(b.isReady)j.call(t,b);else q&&q.push(j);return this},eq:function(j){return j===
+-1?this.slice(j):this.slice(j,+j+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(j){return this.pushStack(b.map(this,function(s,v){return j.call(s,v,s)}))},end:function(){return this.prevObject||b(null)},push:M,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var j,s,v,z,H,G=arguments[0]||{},K=1,Q=arguments.length,ga=false;
+if(typeof G==="boolean"){ga=G;G=arguments[1]||{};K=2}if(typeof G!=="object"&&!b.isFunction(G))G={};if(Q===K){G=this;--K}for(;K0))if(q){var s=0,v=q;for(q=null;j=v[s++];)j.call(t,b);b.fn.trigger&&b(t).trigger("ready").unbind("ready")}}},bindReady:function(){if(!p){p=true;if(t.readyState==="complete")return setTimeout(b.ready,1);if(t.addEventListener){t.addEventListener("DOMContentLoaded",u,false);E.addEventListener("load",b.ready,false)}else if(t.attachEvent){t.attachEvent("onreadystatechange",u);E.attachEvent("onload",
+b.ready);var j=false;try{j=E.frameElement==null}catch(s){}t.documentElement.doScroll&&j&&a()}}},isFunction:function(j){return b.type(j)==="function"},isArray:Array.isArray||function(j){return b.type(j)==="array"},isWindow:function(j){return j&&typeof j==="object"&&"setInterval"in j},isNaN:function(j){return j==null||!r.test(j)||isNaN(j)},type:function(j){return j==null?String(j):R[y.call(j)]||"object"},isPlainObject:function(j){if(!j||b.type(j)!=="object"||j.nodeType||b.isWindow(j))return false;if(j.constructor&&
+!F.call(j,"constructor")&&!F.call(j.constructor.prototype,"isPrototypeOf"))return false;for(var s in j);return s===B||F.call(j,s)},isEmptyObject:function(j){for(var s in j)return false;return true},error:function(j){throw j;},parseJSON:function(j){if(typeof j!=="string"||!j)return null;j=b.trim(j);if(C.test(j.replace(J,"@").replace(w,"]").replace(I,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(j):(new Function("return "+j))();else b.error("Invalid JSON: "+j)},noop:function(){},globalEval:function(j){if(j&&
+l.test(j)){var s=t.getElementsByTagName("head")[0]||t.documentElement,v=t.createElement("script");v.type="text/javascript";if(b.support.scriptEval)v.appendChild(t.createTextNode(j));else v.text=j;s.insertBefore(v,s.firstChild);s.removeChild(v)}},nodeName:function(j,s){return j.nodeName&&j.nodeName.toUpperCase()===s.toUpperCase()},each:function(j,s,v){var z,H=0,G=j.length,K=G===B||b.isFunction(j);if(v)if(K)for(z in j){if(s.apply(j[z],v)===false)break}else for(;Ha ";var f=d.getElementsByTagName("*"),h=d.getElementsByTagName("a")[0],l=t.createElement("select"),
+k=l.appendChild(t.createElement("option"));if(!(!f||!f.length||!h)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(h.getAttribute("style")),hrefNormalized:h.getAttribute("href")==="/a",opacity:/^0.55$/.test(h.style.opacity),cssFloat:!!h.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:k.selected,deleteExpando:true,optDisabled:false,checkClone:false,
+scriptEval:false,noCloneEvent:true,boxModel:null,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableHiddenOffsets:true};l.disabled=true;c.support.optDisabled=!k.disabled;b.type="text/javascript";try{b.appendChild(t.createTextNode("window."+e+"=1;"))}catch(o){}a.insertBefore(b,a.firstChild);if(E[e]){c.support.scriptEval=true;delete E[e]}try{delete b.test}catch(x){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function r(){c.support.noCloneEvent=
+false;d.detachEvent("onclick",r)});d.cloneNode(true).fireEvent("onclick")}d=t.createElement("div");d.innerHTML=" ";a=t.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var r=t.createElement("div");r.style.width=r.style.paddingLeft="1px";t.body.appendChild(r);c.boxModel=c.support.boxModel=r.offsetWidth===2;if("zoom"in r.style){r.style.display="inline";r.style.zoom=
+1;c.support.inlineBlockNeedsLayout=r.offsetWidth===2;r.style.display="";r.innerHTML="
";c.support.shrinkWrapBlocks=r.offsetWidth!==2}r.innerHTML="";var A=r.getElementsByTagName("td");c.support.reliableHiddenOffsets=A[0].offsetHeight===0;A[0].style.display="";A[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&A[0].offsetHeight===0;r.innerHTML="";t.body.removeChild(r).style.display=
+"none"});a=function(r){var A=t.createElement("div");r="on"+r;var C=r in A;if(!C){A.setAttribute(r,"return;");C=typeof A[r]==="function"}return C};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();var ra={},Ja=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?ra:a;var e=a.nodeType,f=e?a[c.expando]:null,h=
+c.cache;if(!(e&&!f&&typeof b==="string"&&d===B)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]=c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==B)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?ra:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);
+else if(d)delete f[e];else for(var l in a)delete a[l]}},acceptData:function(a){if(a.nodeName){var b=c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){var d=null;if(typeof a==="undefined"){if(this.length){var e=this[0].attributes,f;d=c.data(this[0]);for(var h=0,l=e.length;h-1)return true;return false},val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";
+if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h=0;else if(c.nodeName(this,"select")){var A=c.makeArray(r);c("option",this).each(function(){this.selected=c.inArray(c(this).val(),A)>=0});if(!A.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},
+attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return B;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==B;b=e&&c.props[b]||b;var h=Ta.test(b);if((b in a||a[b]!==B)&&e&&!h){if(f){b==="type"&&Ua.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&
+b.specified?b.value:Va.test(a.nodeName)||Wa.test(a.nodeName)&&a.href?0:B;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return B;a=!c.support.hrefNormalized&&e&&h?a.getAttribute(b,2):a.getAttribute(b);return a===null?B:a}});var X=/\.(.*)$/,ia=/^(?:textarea|input|select)$/i,La=/\./g,Ma=/ /g,Xa=/[^\w\s.|`]/g,Ya=function(a){return a.replace(Xa,"\\$&")},ua={focusin:0,focusout:0};
+c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;else if(!d)return;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var l=a.nodeType?"events":"__events__",k=h[l],o=h.handle;if(typeof k==="function"){o=k.handle;k=k.events}else if(!k){a.nodeType||(h[l]=h=function(){});h.events=k={}}if(!o)h.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,
+arguments):B};o.elem=a;b=b.split(" ");for(var x=0,r;l=b[x++];){h=f?c.extend({},f):{handler:d,data:e};if(l.indexOf(".")>-1){r=l.split(".");l=r.shift();h.namespace=r.slice(0).sort().join(".")}else{r=[];h.namespace=""}h.type=l;if(!h.guid)h.guid=d.guid;var A=k[l],C=c.event.special[l]||{};if(!A){A=k[l]=[];if(!C.setup||C.setup.call(a,e,r,o)===false)if(a.addEventListener)a.addEventListener(l,o,false);else a.attachEvent&&a.attachEvent("on"+l,o)}if(C.add){C.add.call(a,h);if(!h.handler.guid)h.handler.guid=
+d.guid}A.push(h);c.event.global[l]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,l=0,k,o,x,r,A,C,J=a.nodeType?"events":"__events__",w=c.data(a),I=w&&w[J];if(w&&I){if(typeof I==="function"){w=I;I=I.events}if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in I)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[l++];){r=f;k=f.indexOf(".")<0;o=[];if(!k){o=f.split(".");f=o.shift();x=RegExp("(^|\\.)"+
+c.map(o.slice(0).sort(),Ya).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(A=I[f])if(d){r=c.event.special[f]||{};for(h=e||0;h=0){a.type=f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===
+8)return B;a.result=B;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)===false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){var l;e=a.target;var k=f.replace(X,""),o=c.nodeName(e,"a")&&k===
+"click",x=c.event.special[k]||{};if((!x._default||x._default.call(d,a)===false)&&!o&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[k]){if(l=e["on"+k])e["on"+k]=null;c.event.triggered=true;e[k]()}}catch(r){}if(l)e["on"+k]=l;c.event.triggered=false}}},handle:function(a){var b,d,e,f;d=[];var h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+
+d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var l=d.length;f-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ia.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=xa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===B||f===e))if(e!=null||f){a.type="change";a.liveFired=
+B;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",xa(a))}},setup:function(){if(this.type===
+"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ia.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ia.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}t.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){ua[b]++===0&&t.addEventListener(a,d,true)},teardown:function(){--ua[b]===
+0&&t.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=B}var l=b==="one"?c.proxy(f,function(o){c(this).unbind(o,l);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var k=this.length;h0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});
+(function(){function a(g,i,n,m,p,q){p=0;for(var u=m.length;p0){F=y;break}}y=y[g]}m[p]=F}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,l=true;[0,0].sort(function(){l=false;return 0});var k=function(g,i,n,m){n=n||[];var p=i=i||t;if(i.nodeType!==1&&i.nodeType!==9)return[];if(!g||typeof g!=="string")return n;var q,u,y,F,M,N=true,O=k.isXML(i),D=[],R=g;do{d.exec("");if(q=d.exec(R)){R=q[3];D.push(q[1]);if(q[2]){F=q[3];
+break}}}while(q);if(D.length>1&&x.exec(g))if(D.length===2&&o.relative[D[0]])u=L(D[0]+D[1],i);else for(u=o.relative[D[0]]?[i]:k(D.shift(),i);D.length;){g=D.shift();if(o.relative[g])g+=D.shift();u=L(g,u)}else{if(!m&&D.length>1&&i.nodeType===9&&!O&&o.match.ID.test(D[0])&&!o.match.ID.test(D[D.length-1])){q=k.find(D.shift(),i,O);i=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]}if(i){q=m?{expr:D.pop(),set:C(m)}:k.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&i.parentNode?i.parentNode:i,O);u=q.expr?k.filter(q.expr,
+q.set):q.set;if(D.length>0)y=C(u);else N=false;for(;D.length;){q=M=D.pop();if(o.relative[M])q=D.pop();else M="";if(q==null)q=i;o.relative[M](y,q,O)}}else y=[]}y||(y=u);y||k.error(M||g);if(f.call(y)==="[object Array]")if(N)if(i&&i.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&k.contains(i,y[g])))n.push(u[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&n.push(u[g]);else n.push.apply(n,y);else C(y,n);if(F){k(F,p,n,m);k.uniqueSort(n)}return n};k.uniqueSort=function(g){if(w){h=
+l;g.sort(w);if(h)for(var i=1;i0};k.find=function(g,i,n){var m;if(!g)return[];for(var p=0,q=o.order.length;p":function(g,i){var n,m=typeof i==="string",p=0,q=g.length;if(m&&!/\W/.test(i))for(i=i.toLowerCase();p=0))n||m.push(u);else if(n)i[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var i=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=i[1]+(i[2]||1)-0;g[3]=i[3]-0}g[0]=e++;return g},ATTR:function(g,i,n,
+m,p,q){i=g[1].replace(/\\/g,"");if(!q&&o.attrMap[i])g[1]=o.attrMap[i];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,i,n,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,i);else{g=k.filter(g[3],i,n,true^p);n||m.push.apply(m,g);return false}else if(o.match.POS.test(g[0])||o.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===
+true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,i,n){return!!k(n[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===
+g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,i){return i===0},last:function(g,i,n,m){return i===m.length-1},even:function(g,i){return i%2===0},odd:function(g,i){return i%2===1},lt:function(g,i,n){return in[3]-0},nth:function(g,i,n){return n[3]-
+0===i},eq:function(g,i,n){return n[3]-0===i}},filter:{PSEUDO:function(g,i,n,m){var p=i[1],q=o.filters[p];if(q)return q(g,n,i,m);else if(p==="contains")return(g.textContent||g.innerText||k.getText([g])||"").indexOf(i[3])>=0;else if(p==="not"){i=i[3];n=0;for(m=i.length;n=0}},ID:function(g,i){return g.nodeType===1&&g.getAttribute("id")===i},TAG:function(g,i){return i==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===
+i},CLASS:function(g,i){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(i)>-1},ATTR:function(g,i){var n=i[1];n=o.attrHandle[n]?o.attrHandle[n](g):g[n]!=null?g[n]:g.getAttribute(n);var m=n+"",p=i[2],q=i[4];return n==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&n!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,i,n,m){var p=o.setFilters[i[2]];
+if(p)return p(g,n,i,m)}}},x=o.match.POS,r=function(g,i){return"\\"+(i-0+1)},A;for(A in o.match){o.match[A]=RegExp(o.match[A].source+/(?![^\[]*\])(?![^\(]*\))/.source);o.leftMatch[A]=RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[A].source.replace(/\\(\d+)/g,r))}var C=function(g,i){g=Array.prototype.slice.call(g,0);if(i){i.push.apply(i,g);return i}return g};try{Array.prototype.slice.call(t.documentElement.childNodes,0)}catch(J){C=function(g,i){var n=0,m=i||[];if(f.call(g)==="[object Array]")Array.prototype.push.apply(m,
+g);else if(typeof g.length==="number")for(var p=g.length;n
";n.insertBefore(g,n.firstChild);if(t.getElementById(i)){o.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:B:[]};o.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}n.removeChild(g);
+n=g=null})();(function(){var g=t.createElement("div");g.appendChild(t.createComment(""));if(g.getElementsByTagName("*").length>0)o.find.TAG=function(i,n){var m=n.getElementsByTagName(i[1]);if(i[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML=" ";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")o.attrHandle.href=function(i){return i.getAttribute("href",2)};g=null})();t.querySelectorAll&&
+function(){var g=k,i=t.createElement("div");i.innerHTML="
";if(!(i.querySelectorAll&&i.querySelectorAll(".TEST").length===0)){k=function(m,p,q,u){p=p||t;m=m.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!u&&!k.isXML(p))if(p.nodeType===9)try{return C(p.querySelectorAll(m),q)}catch(y){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var F=p.getAttribute("id"),M=F||"__sizzle__";F||p.setAttribute("id",M);try{return C(p.querySelectorAll("#"+M+" "+m),q)}catch(N){}finally{F||
+p.removeAttribute("id")}}return g(m,p,q,u)};for(var n in g)k[n]=g[n];i=null}}();(function(){var g=t.documentElement,i=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,n=false;try{i.call(t.documentElement,"[test!='']:sizzle")}catch(m){n=true}if(i)k.matchesSelector=function(p,q){q=q.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(p))try{if(n||!o.match.PSEUDO.test(q)&&!/!=/.test(q))return i.call(p,q)}catch(u){}return k(q,null,null,[p]).length>0}})();(function(){var g=
+t.createElement("div");g.innerHTML="
";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){o.order.splice(1,0,"CLASS");o.find.CLASS=function(i,n,m){if(typeof n.getElementsByClassName!=="undefined"&&!m)return n.getElementsByClassName(i[1])};g=null}}})();k.contains=t.documentElement.contains?function(g,i){return g!==i&&(g.contains?g.contains(i):true)}:t.documentElement.compareDocumentPosition?
+function(g,i){return!!(g.compareDocumentPosition(i)&16)}:function(){return false};k.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var L=function(g,i){for(var n,m=[],p="",q=i.nodeType?[i]:i;n=o.match.PSEUDO.exec(g);){p+=n[0];g=g.replace(o.match.PSEUDO,"")}g=o.relative[g]?g+"*":g;n=0;for(var u=q.length;n0)for(var h=d;h0},closest:function(a,b){var d=[],e,f,h=this[0];if(c.isArray(a)){var l,k={},o=1;if(h&&a.length){e=0;for(f=a.length;e-1:c(h).is(e))d.push({selector:l,elem:h,level:o})}h=
+h.parentNode;o++}}return d}l=cb.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h||!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):
+c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,
+2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,
+b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Za.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||ab.test(e))&&$a.test(a))f=f.reverse();return this.pushStack(f,a,bb.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===B||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&
+e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var za=/ jQuery\d+="(?:\d+|null)"/g,$=/^\s+/,Aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Ba=/<([\w:]+)/,db=/\s]+\/)>/g,P={option:[1,
+""," "],legend:[1,""," "],thead:[1,""],tr:[2,""],td:[3,""],col:[2,""],area:[1,""," "],_default:[0,"",""]};P.optgroup=P.option;P.tbody=P.tfoot=P.colgroup=P.caption=P.thead;P.th=P.td;if(!c.support.htmlSerialize)P._default=[1,"div","
"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
+c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==B)return this.empty().append((this[0]&&this[0].ownerDocument||t).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
+wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
+prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
+this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*"));c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
+return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(za,"").replace(fb,'="$1">').replace($,"")],e)[0]}else return this.cloneNode(true)});if(a===true){na(this,b);na(this.find("*"),b.find("*"))}return b},html:function(a){if(a===B)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(za,""):null;
+else if(typeof a==="string"&&!Ca.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!P[(Ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Aa,"<$1>$2>");try{for(var b=0,d=this.length;b0||e.cacheable||this.length>1?h.cloneNode(true):h)}k.length&&c.each(k,Oa)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:t;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===t&&!Ca.test(a[0])&&(c.support.checkClone||!Da.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",
+prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h=d.length;f0?this.clone(true):this).get();c(d[f])[b](l);e=e.concat(l)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||t;if(typeof b.createElement==="undefined")b=b.ownerDocument||
+b[0]&&b[0].ownerDocument||t;for(var f=[],h=0,l;(l=a[h])!=null;h++){if(typeof l==="number")l+="";if(l){if(typeof l==="string"&&!eb.test(l))l=b.createTextNode(l);else if(typeof l==="string"){l=l.replace(Aa,"<$1>$2>");var k=(Ba.exec(l)||["",""])[1].toLowerCase(),o=P[k]||P._default,x=o[0],r=b.createElement("div");for(r.innerHTML=o[1]+l+o[2];x--;)r=r.lastChild;if(!c.support.tbody){x=db.test(l);k=k==="table"&&!x?r.firstChild&&r.firstChild.childNodes:o[1]===""&&!x?r.childNodes:[];for(o=k.length-
+1;o>=0;--o)c.nodeName(k[o],"tbody")&&!k[o].childNodes.length&&k[o].parentNode.removeChild(k[o])}!c.support.leadingWhitespace&&$.test(l)&&r.insertBefore(b.createTextNode($.exec(l)[0]),r.firstChild);l=r.childNodes}if(l.nodeType)f.push(l);else f=c.merge(f,l)}}if(d)for(h=0;f[h];h++)if(e&&c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));
+d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,l=0,k;(k=a[l])!=null;l++)if(!(k.nodeName&&c.noData[k.nodeName.toLowerCase()]))if(d=k[c.expando]){if((b=e[d])&&b.events)for(var o in b.events)f[o]?c.event.remove(k,o):c.removeEvent(k,o,b.handle);if(h)delete k[c.expando];else k.removeAttribute&&k.removeAttribute(c.expando);delete e[d]}}});var Ea=/alpha\([^)]*\)/i,gb=/opacity=([^)]*)/,hb=/-([a-z])/ig,ib=/([A-Z])/g,Fa=/^-?\d+(?:px)?$/i,
+jb=/^-?\d/,kb={position:"absolute",visibility:"hidden",display:"block"},Pa=["Left","Right"],Qa=["Top","Bottom"],W,Ga,aa,lb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===B)return this;return c.access(this,a,b,true,function(d,e,f){return f!==B?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,
+zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),l=a.style,k=c.cssHooks[h];b=c.cssProps[h]||h;if(d!==B){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!k||!("set"in k)||(d=k.set(a,d))!==B)try{l[b]=d}catch(o){}}}else{if(k&&"get"in k&&(f=k.get(a,false,e))!==B)return f;return l[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),
+h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==B)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]=e[f]},camelCase:function(a){return a.replace(hb,lb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=oa(d,b,f);else c.swap(d,kb,function(){h=oa(d,b,f)});if(h<=0){h=W(d,b,b);if(h==="0px"&&aa)h=aa(d,b,b);
+if(h!=null)return h===""||h==="auto"?"0px":h}if(h<0||h==null){h=d.style[b];return h===""||h==="auto"?"0px":h}return typeof h==="string"?h:h+"px"}},set:function(d,e){if(Fa.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return gb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=
+d.filter||"";d.filter=Ea.test(f)?f.replace(Ea,e):d.filter+" "+e}};if(t.defaultView&&t.defaultView.getComputedStyle)Ga=function(a,b,d){var e;d=d.replace(ib,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return B;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};if(t.documentElement.currentStyle)aa=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b],h=a.style;if(!Fa.test(f)&&jb.test(f)){d=h.left;
+e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f===""?"auto":f};W=Ga||aa;if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var mb=c.now(),nb=/
+
+
+
+
+
+ {{css}}
+
+
+
+
+
+
{{blog_title}}
+
+
+
+
+ {{#posts}}
+
+
+ {{#is_index}}
+
+
+
+ {{#date}}
+
+ {{prettydate}}
+
+ {{/date}}
+
+
+ {{#excerpt}}
{{excerpt}} {{/excerpt}}
+
+ {{content}}
+
+ {{#if_tags}}
+
+ {{/if_tags}}
+
+
+
+
+
+ {{/is_index}}
+
+
+ {{#is_post}}
+
+
+
+ {{#date}}
+
+ {{prettydate}}
+
+ {{/date}}
+
+
+ {{#excerpt}}
{{excerpt}} {{/excerpt}}
+
+ {{content}}
+
+ {{#if_tags}}
+
+ {{/if_tags}}
+
+
+
+
+
+
+
+ {{/is_post}}
+
+
+
+ {{#is_page}}
+
+
+
+
+
+ {{#excerpt}}
{{excerpt}} {{/excerpt}}
+
+ {{content}}
+
+ {{#if_tags}}
+
+ {{/if_tags}}
+
+
+
+
+
+ {{/is_page}}
+
+
+
+ {{#is_archive}}
+
+ {{#archive_divider}}
{{archive_divider}} {{/archive_divider}}
+
+
+
+ {{/is_archive}}
+
+ {{/posts}}
+
+
+
+
+
+
+
+
+
+
+