Merge pull request #324 from annando/1510-xmpp

New addon "XMPP"
This commit is contained in:
Tobias Diekershoff 2015-11-12 08:15:52 +01:00
commit 5c413572c8
30 changed files with 19159 additions and 0 deletions

236
xmpp/converse/builds/converse.min.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

18
xmpp/converse/css/converse.min.css vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24px" height="12px" viewBox="0 0 24 12" zoomAndPan="disable">
<line x1="0" y1="0" x2="12" y2="12" style="stroke:#ccc;stroke-width:1.5" />
<line x1="24" y1="0" x2="12" y2="12" style="stroke:#ccc;stroke-width:1.5" />
</svg>

After

Width:  |  Height:  |  Size: 316 B

View file

@ -0,0 +1,26 @@
<!--
Tessellate 1.0 by HTML5 UP
html5up.net | @n33co
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1000px" height="1000px" viewBox="0 0 1000 1000" zoomAndPan="disable">
<style type="text/css"><![CDATA[
line
{
stroke: rgba(255,255,255,0.1);
stroke-width: 0.85px;
}
]]></style>
<line x1="-180" y1="0" x2="820" y2="1000" />
<line x1="-380" y1="0" x2="620" y2="1000" />
<line x1="-530" y1="0" x2="470" y2="1000" />
<line x1="-655" y1="0" x2="345" y2="1000" />
<line x1="-755" y1="0" x2="245" y2="1000" />
<line x1="-830" y1="0" x2="170" y2="1000" />
<line x1="-880" y1="0" x2="120" y2="1000" />
<line x1="-920" y1="0" x2="80" y2="1000" />
<line x1="-950" y1="0" x2="50" y2="1000" />
<line x1="-970" y1="0" x2="30" y2="1000" />
<line x1="-985" y1="0" x2="15" y2="1000" />
<line x1="-995" y1="0" x2="5" y2="1000" />
</svg>

After

Width:  |  Height:  |  Size: 1,009 B

View file

@ -0,0 +1,26 @@
<!--
Tessellate 1.0 by HTML5 UP
html5up.net | @n33co
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1000px" height="1000px" viewBox="0 0 1000 1000" zoomAndPan="disable">
<style type="text/css"><![CDATA[
line
{
stroke: rgba(255,255,255,0.1);
stroke-width: 0.85px;
}
]]></style>
<line x1="180" y1="0" x2="1180" y2="1000" />
<line x1="380" y1="0" x2="1380" y2="1000" />
<line x1="530" y1="0" x2="1530" y2="1000" />
<line x1="655" y1="0" x2="1655" y2="1000" />
<line x1="755" y1="0" x2="1775" y2="1000" />
<line x1="830" y1="0" x2="1830" y2="1000" />
<line x1="880" y1="0" x2="1880" y2="1000" />
<line x1="920" y1="0" x2="1920" y2="1000" />
<line x1="950" y1="0" x2="1970" y2="1000" />
<line x1="970" y1="0" x2="1970" y2="1000" />
<line x1="985" y1="0" x2="1985" y2="1000" />
<line x1="995" y1="0" x2="1995" y2="1000" />
</svg>

After

Width:  |  Height:  |  Size: 1,015 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

View file

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24px" height="12px" viewBox="0 0 24 12" zoomAndPan="disable">
<line x1="0" y1="0" x2="12" y2="12" style="stroke:rgba(255,255,255,0.65);stroke-width:1" />
<line x1="24" y1="0" x2="12" y2="12" style="stroke:rgba(255,255,255,0.65);stroke-width:1" />
</svg>

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

351
xmpp/converse/css/theme.css Normal file
View file

@ -0,0 +1,351 @@
body {
width: 100%;
height: 100%;
font-family: "Lora", "Helvetica Neue", Helvetica, Arial, sans-serif;
color: #ffffff;
background-color: #211018;
}
html {
width: 100%;
height: 100%;
}
h1,
h2,
h3,
h4,
h5,
h6 {
margin: 0 0 35px;
font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-weight: 700;
letter-spacing: 1px;
}
h1 {
text-transform: uppercase;
}
p {
margin: 0 0 25px;
font-size: 18px;
line-height: 1.5;
}
@media (min-width: 767px) {
p {
margin: 0 0 35px;
font-size: 20px;
line-height: 1.6;
}
}
a {
color: #82B397;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
a:hover,
a:focus {
text-decoration: none;
color: #00aaff;
}
.light {
font-weight: 400;
}
.navbar {
margin-bottom: 0;
border-bottom: 1px solid rgba(255, 255, 255, 0.3);
text-transform: uppercase;
font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
background-color: #211018;
}
.navbar-brand {
font-weight: 700;
}
.navbar-brand:focus {
outline: none;
}
.navbar-custom a {
color: #ffffff;
}
.navbar-custom .nav li a {
-webkit-transition: background 0.3s ease-in-out;
-moz-transition: background 0.3s ease-in-out;
transition: background 0.3s ease-in-out;
}
.navbar-custom .nav li a:hover,
.navbar-custom .nav li a:focus,
.navbar-custom .nav li.active {
outline: none;
background-color: rgba(255, 255, 255, 0.2);
}
.navbar-toggle {
padding: 4px 6px;
font-size: 16px;
color: #ffffff;
}
.navbar-toggle:focus,
.navbar-toggle:active {
outline: none;
}
@media (min-width: 767px) {
.navbar {
padding: 20px 0;
border-bottom: none;
letter-spacing: 1px;
background: transparent;
-webkit-transition: background 0.5s ease-in-out, padding 0.5s ease-in-out;
-moz-transition: background 0.5s ease-in-out, padding 0.5s ease-in-out;
transition: background 0.5s ease-in-out, padding 0.5s ease-in-out;
}
.top-nav-collapse {
padding: 0;
background-color: #211018;
}
.navbar-custom.top-nav-collapse {
border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
}
.features-section,
.outro,
.intro {
display: table;
width: 100%;
height: 100%;
padding: 100px 0;
text-align: center;
color: #fff;
}
.intro {
background: url(images/header.jpg) no-repeat bottom center scroll;
background-color: #211018;
-webkit-background-size: cover;
-moz-background-size: cover;
background-size: cover;
-o-background-size: cover;
}
.features-section {
background: url('images/bgtr.svg') top right no-repeat, url('images/bgbl.svg') bottom left no-repeat, url('images/bgbl.svg') bottom left no-repeat, url('images/overlay.png'), linear-gradient(45deg, #85505f, #384955, #655361);
}
.features-section a {
color: #82B397;
}
.outro {
background: url('images/bgtr.svg') top right no-repeat, url('images/bgbl.svg') bottom left no-repeat, url('images/overlay.png'), linear-gradient(45deg, #384955, #655361, #85505f);
}
.intro-body {
display: table-cell;
vertical-align: middle;
}
.brand-heading {
font-size: 40px;
}
.intro-text {
font-size: 18px;
}
@media (min-width: 767px) {
.intro {
height: 100%;
padding: 0;
}
.brand-heading {
font-size: 100px;
}
.intro-text {
font-size: 25px;
}
}
.btn-circle {
width: 70px;
height: 70px;
margin-top: 15px;
padding: 7px 16px;
border: 2px solid #ffffff;
border-radius: 35px;
font-size: 40px;
color: #ffffff;
background: transparent;
-webkit-transition: background 0.3s ease-in-out;
-moz-transition: background 0.3s ease-in-out;
transition: background 0.3s ease-in-out;
}
.btn-circle:hover,
.btn-circle:focus {
outline: none;
color: #ffffff;
background: rgba(255, 255, 255, 0.1);
}
.page-scroll .btn-circle i.animated {
-webkit-transition-property: -webkit-transform;
-webkit-transition-duration: 1s;
-moz-transition-property: -moz-transform;
-moz-transition-duration: 1s;
}
.page-scroll .btn-circle:hover i.animated {
-webkit-animation-name: pulse;
-moz-animation-name: pulse;
-webkit-animation-duration: 1.5s;
-moz-animation-duration: 1.5s;
-webkit-animation-iteration-count: infinite;
-moz-animation-iteration-count: infinite;
-webkit-animation-timing-function: linear;
-moz-animation-timing-function: linear;
}
/*
@-webkit-keyframes pulse {
0 {
-webkit-transform: scale(1);
transform: scale(1);
}
50% {
-webkit-transform: scale(1.2);
transform: scale(1.2);
}
100% {
-webkit-transform: scale(1);
transform: scale(1);
}
}
@-moz-keyframes pulse {
0 {
-moz-transform: scale(1);
transform: scale(1);
}
50% {
-moz-transform: scale(1.2);
transform: scale(1.2);
}
100% {
-moz-transform: scale(1);
transform: scale(1);
}
}
*/
.content-section {
padding-top: 100px;
}
.donate-section {
width: 100%;
padding: 50px 0;
color: #ffffff;
background-color: #211018;
}
.donate-section p.bitcoin-header {
margin: 0 0 5px;
}
@media (min-width: 767px) {
.content-section {
padding-top: 150px;
padding-bottom: 50px;
}
.donate-section {
padding: 100px 0;
}
}
.btn {
text-transform: uppercase;
font-family: FontAwesome;
font-weight: 400;
-webkit-transition: all 0.3s ease-in-out;
-moz-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.btn-default {
border: 1px solid #82B397;
color: #82B397;
background-color: transparent;
}
.btn-default:hover,
.btn-default:focus {
border: 1px solid #82B397;
outline: none;
color: #211018;
background-color: #82B397;
}
.btn-huge {
padding: 25px;
font-size: 26px;
}
.banner-social-buttons {
position: absolute;
bottom: 4em;
left: 0;
}
@media (max-width: 1199px) {
ul.banner-social-buttons {
margin-top: 15px;
}
}
@media (max-width: 767px) {
ul.banner-social-buttons > li {
display: block;
margin-bottom: 20px;
padding: 0;
}
ul.banner-social-buttons > li:last-child {
margin-bottom: 0;
}
}
::-moz-selection {
text-shadow: none;
background: #fcfcfc;
background: rgba(255, 255, 255, 0.2);
}
::selection {
text-shadow: none;
background: #fcfcfc;
background: rgba(255, 255, 255, 0.2);
}
img::selection {
background: transparent;
}
img::-moz-selection {
background: transparent;
}
body {
webkit-tap-highlight-color: rgba(255, 255, 255, 0.2);
}
ul.contact,
ul.integration,
ul.screencasts,
ul.features {
text-align: left;
font-size: 19px;
}
.feature-icon {
display: inline-block;
position: relative;
padding-bottom: 5em;
margin-bottom: 2.75em;
cursor: default;
color: #fff;
}
.feature-icon .fa {
display: inline-block;
width: 2em;
height: 2em;
font-size: 4em;
border-radius: 100%;
box-shadow: inset 0 0 0 1px white;
color: white;
line-height: 2.1em;
}
.feature-icon:before {
content: '';
background: white;
position: absolute;
bottom: 0;
left: 50%;
margin-left: -0.325em;
width: 0.65em;
height: 0.65em;
display: block;
border-radius: 100%;
}
.feature-icon:after {
content: '';
position: absolute;
left: 50%;
bottom: 0.65em;
width: 1px;
height: 4.35em;
background: white;
margin-left: -0.5px;
}

View file

@ -0,0 +1,5 @@
Open *demo.html* to see a list of all the glyphs in your font along with their codes/ligatures.
You won't need any of the files located under the *demo-files* directory when including the generated font in your own projects.
You can import *selection.json* back to the IcoMoon app using the *Import Icons* button (or via Main Menu > Manage Projects) to retrieve your icon selection.

View file

@ -0,0 +1,150 @@
body {
padding: 0;
margin: 0;
font-family: sans-serif;
font-size: 1em;
line-height: 1.5;
color: #555;
background: #fff;
}
h1 {
font-size: 1.5em;
font-weight: normal;
}
small {
font-size: .66666667em;
}
a {
color: #e74c3c;
text-decoration: none;
}
a:hover, a:focus {
box-shadow: 0 1px #e74c3c;
}
.bshadow0, input {
box-shadow: inset 0 -2px #e7e7e7;
}
input:hover {
box-shadow: inset 0 -2px #ccc;
}
input, fieldset {
font-size: 1em;
margin: 0;
padding: 0;
border: 0;
}
input {
color: inherit;
line-height: 1.5;
height: 1.5em;
padding: .25em 0;
}
input:focus {
outline: none;
box-shadow: inset 0 -2px #449fdb;
}
.glyph {
font-size: 16px;
width: 15em;
padding-bottom: 1em;
margin-right: 4em;
margin-bottom: 1em;
float: left;
overflow: hidden;
}
.liga {
width: 80%;
width: calc(100% - 2.5em);
}
.talign-right {
text-align: right;
}
.talign-center {
text-align: center;
}
.bgc1 {
background: #f1f1f1;
}
.fgc1 {
color: #999;
}
.fgc0 {
color: #000;
}
p {
margin-top: 1em;
margin-bottom: 1em;
}
.mvm {
margin-top: .75em;
margin-bottom: .75em;
}
.mtn {
margin-top: 0;
}
.mtl, .mal {
margin-top: 1.5em;
}
.mbl, .mal {
margin-bottom: 1.5em;
}
.mal, .mhl {
margin-left: 1.5em;
margin-right: 1.5em;
}
.mhmm {
margin-left: 1em;
margin-right: 1em;
}
.mls {
margin-left: .25em;
}
.ptl {
padding-top: 1.5em;
}
.pbs, .pvs {
padding-bottom: .25em;
}
.pvs, .pts {
padding-top: .25em;
}
.unit {
float: left;
}
.unitRight {
float: right;
}
.size1of2 {
width: 50%;
}
.size1of1 {
width: 100%;
}
.clearfix:before, .clearfix:after {
content: " ";
display: table;
}
.clearfix:after {
clear: both;
}
.hidden-true {
display: none;
}
.textbox0 {
width: 3em;
background: #f1f1f1;
padding: .25em .5em;
line-height: 1.5;
height: 1.5em;
}
#testDrive {
display: block;
padding-top: 24px;
line-height: 1.5;
}
.fs0 {
font-size: 16px;
}
.fs1 {
font-size: 32px;
}

View file

@ -0,0 +1,30 @@
if (!('boxShadow' in document.body.style)) {
document.body.setAttribute('class', 'noBoxShadow');
}
document.body.addEventListener("click", function(e) {
var target = e.target;
if (target.tagName === "INPUT" &&
target.getAttribute('class').indexOf('liga') === -1) {
target.select();
}
});
(function() {
var fontSize = document.getElementById('fontSize'),
testDrive = document.getElementById('testDrive'),
testText = document.getElementById('testText');
function updateTest() {
testDrive.innerHTML = testText.value || String.fromCharCode(160);
if (window.icomoonLiga) {
window.icomoonLiga(testDrive);
}
}
function updateSize() {
testDrive.style.fontSize = fontSize.value + 'px';
}
fontSize.addEventListener('change', updateSize, false);
testText.addEventListener('input', updateTest, false);
testText.addEventListener('change', updateTest, false);
updateSize();
}());

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -0,0 +1,102 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg">
<metadata>Generated by IcoMoon</metadata>
<defs>
<font id="icomoon" horiz-adv-x="512">
<font-face units-per-em="512" ascent="480" descent="-32" />
<missing-glyph horiz-adv-x="512" />
<glyph unicode="&#x20;" d="" horiz-adv-x="256" />
<glyph unicode="&#x231b;" d="M192 416c0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64s-64-28.654-64-64zM327.765 359.765c0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64s-64-28.654-64-64zM416 224c0-17.673 14.327-32 32-32s32 14.327 32 32c0 17.673-14.327 32-32 32s-32-14.327-32-32zM359.765 88.235c0-17.673 14.327-32 32-32s32 14.327 32 32c0 17.673-14.327 32-32 32s-32-14.327-32-32zM224.001 32c0 0 0 0 0 0 0-17.673 14.327-32 32-32s32 14.327 32 32c0 0 0 0 0 0s0 0 0 0c0 17.673-14.327 32-32 32s-32-14.327-32-32c0 0 0 0 0 0zM88.236 88.235c0 0 0 0 0 0 0-17.673 14.327-32 32-32s32 14.327 32 32c0 0 0 0 0 0s0 0 0 0c0 17.673-14.327 32-32 32s-32-14.327-32-32c0 0 0 0 0 0zM72.236 359.765c0 0 0 0 0 0 0-26.51 21.49-48 48-48s48 21.49 48 48c0 0 0 0 0 0s0 0 0 0c0 26.51-21.49 48-48 48s-48-21.49-48-48c0 0 0 0 0 0zM28 224c0-19.882 16.117-36 36-36s36 16.118 36 36c0 19.882-16.118 36-36 36s-36-16.118-36-36z" />
<glyph unicode="&#x2360;" d="M256 480c-141.385 0-256-114.615-256-256s114.615-256 256-256 256 114.615 256 256-114.615 256-256 256zM256 16c-114.875 0-208 93.125-208 208s93.125 208 208 208 208-93.125 208-208-93.125-208-208-208zM224 352h64v-64h-64zM320 96h-128v32h32v96h-32v32h96v-128h32z" />
<glyph unicode="&#x2364;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM192 128c0 35.346 28.654 64 64 64s64-28.654 64-64c0-35.346-28.654-64-64-64s-64 28.654-64 64zM320 304c0-26.51 14.327-48 32-48s32 21.49 32 48c0 26.51-14.327 48-32 48s-32-21.49-32-48zM128 304c0-26.51 14.327-48 32-48s32 21.49 32 48c0 26.51-14.327 48-32 48s-32-21.49-32-48z" />
<glyph unicode="&#x2368;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM128 320c0-17.673 14.327-32 32-32s32 14.327 32 32c0 17.673-14.327 32-32 32s-32-14.327-32-32zM320 320c0-17.673 14.327-32 32-32s32 14.327 32 32c0 17.673-14.327 32-32 32s-32-14.327-32-32zM363.053 160h32.432c4.623-36.253-16.226-72.265-51.979-85.28-41.452-15.088-87.45 6.358-102.54 47.808-9.054 24.872-36.653 37.741-61.524 28.686-22.781-8.294-35.478-32.149-30.494-55.212h-32.43c-4.621 36.254 16.225 72.264 51.978 85.28 41.452 15.089 87.451-6.358 102.541-47.807 9.052-24.874 36.653-37.741 61.522-28.686 22.781 8.292 35.478 32.149 30.494 55.211z" />
<glyph unicode="&#x2369;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM372.87 179.19l11.244-38.388-218.504-64.001-11.244 38.388zM128 320c0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32s-32 14.327-32 32zM320 320c0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32s-32 14.327-32 32z" />
<glyph unicode="&#x25ba;" d="M96 416l320-192-320-192z" />
<glyph unicode="&#x25bc;" d="M448 384l-192-320-192 320z" />
<glyph unicode="&#x25d9;" d="M490.594 399.946c-71.816 10.325-151.166 16.054-234.593 16.054-83.43 0-162.778-5.729-234.597-16.054-13.765-53.863-21.404-113.375-21.404-175.946 0-62.57 7.639-122.083 21.404-175.945 71.819-10.326 151.168-16.055 234.597-16.055 83.427 0 162.776 5.729 234.593 16.055 13.766 53.862 21.406 113.375 21.406 175.945 0 62.571-7.64 122.083-21.406 175.946zM192.001 128v192l160-96-160-96z" />
<glyph unicode="&#x25fb;" d="M256 384c-27.466 0-53.994-4.331-78.847-12.871-23.356-8.027-44.153-19.372-61.814-33.722-33.107-26.899-51.339-61.492-51.339-97.407 0-20.149 5.594-39.689 16.626-58.076 11.376-18.96 28.491-36.293 49.494-50.126 15.178-9.996 25.39-25.974 28.088-43.947 0.9-5.992 1.464-12.044 1.685-18.062 3.735 3.097 7.375 6.423 10.94 9.988 12.077 12.076 28.39 18.745 45.251 18.745 2.684 0 5.381-0.168 8.078-0.512 10.487-1.333 21.199-2.010 31.838-2.010 27.467 0 53.994 4.33 78.847 12.871 23.356 8.027 44.153 19.372 61.814 33.722 33.107 26.898 51.339 61.492 51.339 97.407s-18.232 70.508-51.339 97.407c-17.661 14.349-38.458 25.695-61.814 33.722-24.853 8.54-51.38 12.871-78.847 12.871zM256 448v0c141.385 0 256-93.125 256-208s-114.615-208-256-208c-13.578 0-26.905 0.867-39.912 2.522-54.989-54.989-120.625-64.85-184.088-66.298v13.458c34.268 16.789 64 47.37 64 82.318 0 4.877-0.379 9.665-1.082 14.348-57.898 38.132-94.918 96.377-94.918 161.652 0 114.875 114.615 208 256 208z" />
<glyph unicode="&#x25fc;" d="M256 448c141.385 0 256-93.125 256-208s-114.615-208-256-208c-13.578 0-26.905 0.867-39.912 2.522-54.989-54.989-120.625-64.85-184.088-66.298v13.458c34.268 16.789 64 47.37 64 82.318 0 4.877-0.379 9.665-1.082 14.348-57.898 38.132-94.918 96.377-94.918 161.652 0 114.875 114.615 208 256 208z" />
<glyph unicode="&#x260e;" d="M508.689 192.003c4.002-27.741 6.608-65.696-5.832-80.223-20.571-24.022-150.856-24.022-150.856 24.021 0 24.199 21.428 40.067 0.856 64.089-20.236 23.631-56.513 24.015-96.857 24.021-40.343-0.006-76.621-0.39-96.857-24.021-20.571-24.023 0.857-39.89 0.857-64.089 0-48.043-130.285-48.043-150.857-24.022-12.439 14.527-9.834 52.482-5.831 80.223 3.080 18.519 10.862 38.498 35.774 63.997 0 0.001 0.001 0.001 0.001 0.002 37.369 34.871 93.923 63.369 214.913 63.984v0.015c0.672 0 1.332-0.005 2-0.007 0.669 0.002 1.328 0.007 2 0.007v-0.014c120.99-0.615 177.544-29.113 214.913-63.984 0.001-0.001 0.001-0.002 0.001-0.002 24.912-25.498 32.695-45.477 35.775-63.997z" />
<glyph unicode="&#x260f;" d="M352 160c-32-32-32-64-64-64s-64 32-96 64-64 64-64 96 32 32 64 64-64 128-96 128-96-96-96-96c0-64 65.75-193.75 128-256s192-128 256-128c0 0 96 64 96 96s-96 128-128 96z" />
<glyph unicode="&#x2611;" d="M0 480v-512h512v512h-512zM480 0h-448v448h448v-448zM384 368l-160-160-96 96-64-64 160-160 224 224-64 64z" />
<glyph unicode="&#x2616;" d="M192 336c0-44.183 35.817-80 80-80s80 35.817 80 80c0 44.183-35.817 80-80 80s-80-35.817-80-80zM0 336c0-44.183 35.817-80 80-80s80 35.817 80 80c0 44.183-35.817 80-80 80s-80-35.817-80-80zM384 176v48c0 17.6-14.4 32-32 32h-320c-17.6 0-32-14.4-32-32v-160c0-17.6 14.4-32 32-32h320c17.6 0 32 14.4 32 32v48l128-80v224l-128-80zM320 96h-256v96h256v-96z" />
<glyph unicode="&#x261d;" d="M464 192c36.5 0 16-96-16-96 16 0 0-80-32-80 0-32-32-48-64-48-135.176 0-87.632 33.825-224 48v256c120.461 36.134 240 126.712 240 208 26.5 0 96-32 0-192 0 0 80 0 96 0 48 0 32-96 0-96zM96 272v-256h32v-16h-64c-17.6 0-32 21.6-32 48v192c0 26.4 14.4 48 32 48h64v-16h-32z" />
<glyph unicode="&#x261f;" d="M319.998 256c-17.673 0-32 14.327-31.999 32.001 0 0.585 0.018 1.165 0.049 1.742 1.016 23.727 22.606 39.473 40.796 48.569 17.371 8.685 34.551 13.030 35.274 13.211 8.573 2.144 17.259-3.069 19.403-11.642 2.142-8.573-3.070-17.259-11.642-19.403-8.813-2.225-19.261-6.060-28.468-10.675 5.324-5.715 8.587-13.376 8.587-21.803 0-17.673-14.327-32-32-32zM140.121 320.478c-8.572 2.143-13.784 10.83-11.641 19.402s10.83 13.786 19.403 11.642c0.722-0.181 17.903-4.525 35.274-13.211 18.191-9.095 39.78-24.842 40.796-48.569 0.031-0.577 0.049-1.158 0.049-1.742 0-17.673-14.327-32-32-32s-32 14.327-32 32c0 8.427 3.263 16.088 8.587 21.803-9.207 4.615-19.656 8.45-28.468 10.675zM256 112c40.777 0 76.462 21.796 96.049 54.37l41.164-24.698c-27.981-46.535-78.958-77.672-137.213-77.672s-109.232 31.137-137.213 77.672l41.164 24.698c19.587-32.574 55.271-54.37 96.049-54.37zM512 448c0 22.758-4.762 44.4-13.326 64-16.788-38.418-48.224-68.966-87.247-84.589-43.097 32.98-96.968 52.589-155.427 52.589s-112.33-19.609-155.427-52.589c-39.024 15.623-70.459 46.171-87.247 84.589-8.564-19.6-13.326-41.242-13.326-64 0-36.787 12.425-70.664 33.294-97.689-21.185-37.271-33.294-80.375-33.294-126.311 0-141.385 114.615-256 256-256s256 114.615 256 256c0 45.936-12.109 89.040-33.294 126.311 20.869 27.025 33.294 60.902 33.294 97.689zM256 16c-114.875 0-208 93.125-208 208s93.125 208 208 208 208-93.125 208-208-93.125-208-208-208z" />
<glyph unicode="&#x2639;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM128 320c0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32s-32 14.327-32 32zM320 320c0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32s-32 14.327-32 32zM159.951 89.63l-41.164 24.698c27.981 46.535 78.958 77.672 137.213 77.672s109.231-31.137 137.213-77.672l-41.164-24.698c-19.587 32.574-55.271 54.37-96.049 54.37-40.779 0-76.462-21.796-96.049-54.37z" />
<glyph unicode="&#x263a;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM128 320c0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32s-32 14.327-32 32zM320 320c0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32s-32 14.327-32 32zM352.049 166.37l41.164-24.698c-27.981-46.535-78.958-77.672-137.213-77.672s-109.232 31.137-137.213 77.672l41.164 24.698c19.587-32.574 55.271-54.37 96.049-54.37s76.462 21.796 96.049 54.37z" />
<glyph unicode="&#x263b;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM256 180.62c57.975 0 113.115 15.403 160 42.46-7.287-89.219-76.564-159.080-160-159.080-83.434 0-152.711 69.936-160 159.152 46.885-27.056 102.025-42.532 160-42.532zM128 304c0-26.51 14.327-48 32-48s32 21.49 32 48c0 26.51-14.327 48-32 48s-32-21.49-32-48zM320 304c0-26.51 14.327-48 32-48s32 21.49 32 48c0 26.51-14.327 48-32 48s-32-21.49-32-48z" />
<glyph unicode="&#x266b;" d="M160 384l352 96v-368c0-44.183-50.145-80-112-80s-112 35.817-112 80c0 44.183 50.145 80 112 80 17.179 0 33.451-2.766 48-7.703v164.794l-224-61.091v-240c0-44.183-50.144-80-112-80s-112 35.817-112 80c0 44.183 50.144 80 112 80 17.179 0 33.451-2.766 48-7.703v263.703z" />
<glyph unicode="&#x266c;" d="M96 190.857v-221.715c5.227-0.748 10.567-1.143 16-1.143h16v224.001h-16c-5.433 0-10.773-0.395-16-1.143zM384 192v-224h16c5.434 0 10.773 0.395 16 1.143v221.714c-5.227 0.748-10.566 1.143-16 1.143h-16zM512 224c0 141.385-114.615 256-256 256s-256-114.615-256-256c0-30.709 5.414-60.153 15.328-87.437-9.736-16.601-15.328-35.926-15.328-56.563 0-44.677 26.163-83.239 64-101.216v202.432c-10.063-4.781-19.29-11.030-27.429-18.452-2.996 14.61-4.571 29.739-4.571 45.236 0 123.712 100.288 224 224 224s224-100.288 224-224c0-15.497-1.574-30.626-4.571-45.236-8.14 7.422-17.365 13.671-27.429 18.452v-202.432c37.838 17.977 64 56.539 64 101.216 0 20.637-5.592 39.962-15.328 56.563 9.914 27.284 15.328 56.728 15.328 87.437z" />
<glyph unicode="&#x26a0;" d="M256 400.638l-172.417-368.638h344.834l-172.417 368.638zM256 480v0c11.035 0 22.070-7.441 30.442-22.324l218.536-435.556c16.745-29.766 2.5-54.12-31.651-54.12h-434.654c-34.152 0-48.395 24.354-31.652 54.12l218.537 435.556c8.372 14.883 19.407 22.324 30.442 22.324zM224 96c0-17.673 14.327-32 32-32s32 14.327 32 32c0 17.673-14.327 32-32 32s-32-14.327-32-32zM256 288c17.673 0 32-14.327 32-32l-10-96h-44l-10 96c0 17.673 14.327 32 32 32z" />
<glyph unicode="&#x2709;" d="M464 416h-416c-26.4 0-48-21.6-48-48v-320c0-26.4 21.6-48 48-48h416c26.4 0 48 21.6 48 48v320c0 26.4-21.6 48-48 48zM199.37 204.814l-135.37-105.446v250.821l135.37-145.375zM88.19 352h335.62l-167.81-126-167.81 126zM204.644 199.151l51.356-55.151 51.355 55.151 105.277-135.151h-313.264l105.276 135.151zM312.63 204.814l135.37 145.375v-250.821l-135.37 105.446z" />
<glyph unicode="&#x270e;" d="M432 480c44.182 0 80-35.817 80-80 0-18.010-5.955-34.629-16-48l-32-32-112 112 32 32c13.371 10.045 29.989 16 48 16zM32 112l-32-144 144 32 296 296-112 112-296-296zM357.789 298.211l-224-224-27.578 27.578 224 224 27.578-27.578z" />
<glyph unicode="&#x270f;" d="M480 352c17.673 0 32 14.327 32 32v64h-64v32h-416c-17.6 0-32-14.399-32-32v-448c0-17.6 14.398-32 32-32h416v128h32c17.673 0 32 14.327 32 32v64h-64v32h32c17.673 0 32 14.327 32 32v64h-64v32h32zM288 351.835c35.255 0 63.835-28.58 63.835-63.835s-28.58-63.835-63.835-63.835c-35.255 0-63.835 28.58-63.835 63.835s28.58 63.835 63.835 63.835zM128 0h-32v448h32v-448zM384 96h-192v32c0 35.347 28.654 64 64 64v0h64c35.348 0 64-28.653 64-64v-32z" />
<glyph unicode="&#x2710;" d="M449.18 448h-385.18v-64h-46.82c-8.8 0-17.18-6.264-17.18-15.064v-32c0-8.8 8.38-16.936 17.18-16.936h46.82v-32h-46.82c-8.8 0-17.18-6.264-17.18-15.064v-32c0-8.8 8.38-16.936 17.18-16.936h46.82v-32h-46.82c-8.8 0-17.18-6.264-17.18-15.064v-32c0-8.799 8.38-16.936 17.18-16.936h46.82v-32h-46.82c-8.8 0-17.18-6.264-17.18-15.064v-32c0-8.8 8.38-16.936 17.18-16.936h46.82v-64h385.18c17.674 0 30.82 15.263 30.82 32.936v416c0 17.673-13.146 31.064-30.82 31.064zM160 0h-64v32h17.18c8.8 0 14.82 8.136 14.82 16.936v32c0 8.801-6.021 15.064-14.82 15.064h-17.18v32h17.18c8.8 0 14.82 8.136 14.82 16.936v32c0 8.801-6.021 15.064-14.82 15.064h-17.18v32h17.18c8.8 0 14.82 8.136 14.82 16.936v32c0 8.801-6.021 15.064-14.82 15.064h-17.18v32h17.18c8.8 0 14.82 8.136 14.82 16.936v32c0 8.801-6.020 15.064-14.82 15.064h-17.18v32h64v-416z" />
<glyph unicode="&#x2713;" d="M432 416l-240-240-112 112-80-80 192-192 320 320z" />
<glyph unicode="&#x2715;" d="M507.331 68.67c-0.002 0.002-0.004 0.004-0.006 0.005l-155.322 155.325 155.322 155.325c0.002 0.002 0.004 0.003 0.006 0.005 1.672 1.673 2.881 3.627 3.656 5.708 2.123 5.688 0.912 12.341-3.662 16.915l-73.373 73.373c-4.574 4.573-11.225 5.783-16.914 3.66-2.080-0.775-4.035-1.984-5.709-3.655 0-0.002-0.002-0.003-0.004-0.005l-155.324-155.326-155.324 155.325c-0.002 0.002-0.003 0.003-0.005 0.005-1.673 1.671-3.627 2.88-5.707 3.655-5.69 2.124-12.341 0.913-16.915-3.66l-73.374-73.374c-4.574-4.574-5.784-11.226-3.661-16.914 0.776-2.080 1.985-4.036 3.656-5.708 0.002-0.001 0.003-0.003 0.005-0.005l155.325-155.324-155.325-155.326c-0.001-0.002-0.003-0.003-0.004-0.005-1.671-1.673-2.88-3.627-3.657-5.707-2.124-5.688-0.913-12.341 3.661-16.915l73.374-73.373c4.575-4.574 11.226-5.784 16.915-3.661 2.080 0.776 4.035 1.985 5.708 3.656 0.001 0.002 0.003 0.003 0.005 0.005l155.324 155.325 155.324-155.325c0.002-0.001 0.004-0.003 0.006-0.004 1.674-1.672 3.627-2.881 5.707-3.657 5.689-2.123 12.342-0.913 16.914 3.661l73.373 73.374c4.574 4.574 5.785 11.227 3.662 16.915-0.776 2.080-1.985 4.034-3.657 5.707z" />
<glyph unicode="&#x2718;" d="M0 224c0-141.385 114.615-256 256-256s256 114.615 256 256-114.614 256-256 256c-141.385 0-256-114.615-256-256zM448 224c0-36.618-10.256-70.84-28.044-99.956l-263.911 263.912c29.115 17.789 63.337 28.044 99.955 28.044 106.038 0 192-85.961 192-192zM64 224c0 36.618 10.256 70.839 28.045 99.956l263.911-263.912c-29.117-17.789-63.338-28.044-99.956-28.044-106.038 0-192 85.961-192 192z" />
<glyph unicode="&#x271a;" d="M496 288h-176v176c0 8.836-7.164 16-16 16h-96c-8.836 0-16-7.164-16-16v-176h-176c-8.836 0-16-7.164-16-16v-96c0-8.836 7.164-16 16-16h176v-176c0-8.836 7.164-16 16-16h96c8.836 0 16 7.164 16 16v176h176c8.836 0 16 7.164 16 16v96c0 8.836-7.164 16-16 16z" />
<glyph unicode="&#x2764;" d="M512 300.922c0 81.229-65.85 147.078-147.078 147.078-43.181 0-82.015-18.609-108.922-48.245-26.907 29.636-65.741 48.245-108.922 48.245-81.229 0-147.078-65.849-147.078-147.078 0-43.181 18.609-82.015 48.245-108.922h-0.245l160-160c16-16 32-32 48-32s32 16 48 32l160 160h-0.245c29.636 26.907 48.245 65.741 48.245 108.922zM420.734 239.384l-161.989-162.129c-0.839-0.839-1.766-1.766-2.745-2.74-0.98 0.975-1.907 1.901-2.745 2.74l-161.989 162.128c-17.583 15.964-27.266 37.819-27.266 61.539 0 45.809 37.269 83.078 83.078 83.078 23.72 0 45.575-9.683 61.538-27.266l47.384-52.19 47.384 52.189c15.964 17.584 37.818 27.267 61.538 27.267 45.809 0 83.078-37.269 83.078-83.078 0-23.72-9.684-45.575-27.266-61.538z" />
<glyph unicode="&#x2b14;" d="M448 384h-384v-320h384v320zM512 448v0-448h-512v448h512zM416 96h-320v64l96 160 131.5-160 92.5 64v-32zM320 304c0-26.51 21.49-48 48-48s48 21.49 48 48c0 26.51-21.49 48-48 48s-48-21.49-48-48z" />
<glyph unicode="&#x2b25;" d="M256 480c-141.385 0-256-114.615-256-256s114.615-256 256-256 256 114.615 256 256-114.615 256-256 256zM256 32c-106.039 0-192 85.961-192 192s85.961 192 192 192c106.039 0 192-85.961 192-192s-85.961-192-192-192z" />
<glyph unicode="&#x2b26;" d="M256 480c-141.385 0-256-114.615-256-256s114.615-256 256-256 256 114.615 256 256-114.615 256-256 256zM256 32c-106.039 0-192 85.961-192 192s85.961 192 192 192c106.039 0 192-85.961 192-192s-85.961-192-192-192zM160 224c0-53.019 42.981-96 96-96s96 42.981 96 96c0 53.019-42.981 96-96 96s-96-42.981-96-96z" />
<glyph unicode="&#x2b27;" d="M0 480v-512h512v512h-512zM480 0h-448v448h448v-448z" />
<glyph unicode="&#x2b28;" d="M0 480v-512h512v512h-512zM480 0h-448v448h448v-448zM128 352h256v-256h-256z" />
<glyph unicode="&#xe000;" d="M512 184.778l-256 198.713-256-198.714v81.019l256 198.713 256-198.714zM448 192v-192h-128v128h-128v-128h-128v192l192 144z" />
<glyph unicode="&#xe001;" d="M448 352v64h-448v-352c0-17.673 14.327-32 32-32h432c26.511 0 48 21.489 48 48v272h-64zM416 64h-384v320h384v-320zM64 320h320v-32h-320zM256 256h128v-32h-128zM256 192h128v-32h-128zM256 128h96v-32h-96zM64 256h160v-160h-160z" />
<glyph unicode="&#xe002;" d="M256 448c-141.382 0-256-93.106-256-208.004 0-65.249 37.368-123.33 95.271-161.451 0.698-4.701 0.729-9.658 0.729-14.545 0-34.956-29.743-65.404-64-82.184v-13.816c63.465 1.443 129.008 11.21 184.002 66.18 13.009-1.652 26.43-2.18 39.998-2.18 141.382 0 256 93.13 256 207.996 0 114.898-114.618 208.004-256 208.004zM162.909 382.542c1.575 0.325 3.576-0.156 5.089-0.722 1.109-0.411 2.017-1.288 2.909-2.188l82.913-82.905 82.905 82.905c0.9 0.9 1.808 1.777 2.909 2.188 3.049 1.133 7.006 0.248 9.457-2.188l39.277-39.268c2.428-2.452 2.583-5.694 1.45-8.728-0.411-1.109-0.558-2.017-1.45-2.909l-83.643-82.913 83.643-82.905c0.892-0.892 1.039-1.8 1.45-2.909 1.141-3.041 0.993-7.005-1.45-9.456l-39.277-39.269c-2.451-2.436-6.423-2.591-9.457-1.459-1.101 0.411-2.009 0.559-2.909 1.459l-82.905 82.905-82.913-82.905c-0.892-0.9-1.8-1.048-2.909-1.459-3.041-1.14-7.005-0.993-9.449 1.459l-38.547 39.269c-2.436 2.451-3.313 6.423-2.18 9.456 0.403 1.109 1.28 2.017 2.18 2.909l82.905 82.905-82.905 82.913c-0.9 0.892-1.777 1.8-2.18 2.909-1.148 3.041-0.271 6.276 2.18 8.728l38.547 39.268c1.218 1.218 2.785 2.592 4.36 2.91z" />
<glyph unicode="&#xe003;" d="M152 176c0-57.438 46.562-104 104-104s104 46.562 104 104-46.562 104-104 104-104-46.562-104-104zM480 352h-112c-8 32-16 64-48 64h-128c-32 0-40-32-48-64h-112c-17.6 0-32-14.4-32-32v-288c0-17.6 14.4-32 32-32h448c17.6 0 32 14.4 32 32v288c0 17.6-14.4 32-32 32zM256 34c-78.425 0-142 63.574-142 142s63.575 142 142 142c78.426 0 142-63.575 142-142s-63.573-142-142-142zM480 256h-64v32h64v-32z" />
<glyph unicode="&#xe004;" d="M256 448c-141.382 0-256-93.106-256-208.004 0-65.249 37.368-123.33 95.271-161.451 0.698-4.701 0.729-9.658 0.729-14.545 0-34.956-29.743-65.404-64-82.184v-13.816c63.465 1.443 129.008 11.21 184.002 66.18 13.009-1.652 26.43-2.18 39.998-2.18 141.382 0 256 93.13 256 207.996 0 114.898-114.618 208.004-256 208.004zM77.816 288h347.64c6.408 0 11.637-5.229 11.637-11.636v-69.819c0-6.407-5.229-11.636-11.637-11.636h-347.64c-6.408 0-11.636 5.229-11.636 11.636v69.819c0 6.407 5.228 11.636 11.636 11.636z" />
<glyph unicode="&#xe012;" d="M272 480l-48-48 48-48-112-128h-112l88-88-136-180.308v-19.692h19.692l180.308 136 88-88v112l128 112 48-48 48 48-240 240zM224 208l-32 32 112 112 32-32-112-112z" />
<glyph unicode="&#xe015;" d="M544 29.417c0-22.75 13.014-42.454 32-52.092v-7.969c-5.313-0.727-10.736-1.112-16.25-1.112-34.004 0-64.674 14.264-86.361 37.132-13.111-3.491-27.001-5.376-41.389-5.376-79.529 0-144 57.308-144 128s64.471 128 144 128c79.529 0 144-57.308 144-128 0-27.674-9.882-53.296-26.678-74.233-3.412-7.412-5.322-15.656-5.322-24.35zM115.339 369.407c-33.107-26.899-51.339-61.492-51.339-97.407 0-20.149 5.594-39.689 16.626-58.075 11.376-18.96 28.491-36.293 49.494-50.126 15.178-9.996 25.39-25.974 28.088-43.947 0.9-5.992 1.464-12.044 1.685-18.062 3.735 3.097 7.375 6.423 10.94 9.988 12.077 12.076 28.39 18.745 45.251 18.745 2.684 0 5.381-0.168 8.078-0.512 10.474-1.331 21.172-2.008 31.797-2.010v-64c-13.564 0.001-26.877 0.869-39.871 2.521-54.989-54.989-120.625-64.85-184.088-66.298v13.458c34.268 16.789 64 47.37 64 82.318 0 4.877-0.379 9.665-1.082 14.348-57.898 38.132-94.918 96.377-94.918 161.652 0 114.875 114.615 208 256 208 139.229 0 252.496-90.307 255.918-202.76-20.548 9.158-42.92 14.711-66.131 16.289-5.765 28.034-22.701 54.408-49.126 75.878-17.661 14.349-38.458 25.695-61.814 33.722-24.853 8.54-51.38 12.871-78.847 12.871s-53.994-4.331-78.847-12.871c-23.356-8.027-44.153-19.372-61.814-33.722z" horiz-adv-x="576" />
<glyph unicode="&#xe016;" d="M240 480v0c132.548 0 240-86.957 240-194.224s-107.452-194.224-240-194.224c-12.729 0-25.223 0.81-37.417 2.355-51.553-51.347-111.086-60.554-170.583-61.907v12.567c32.126 15.677 58 44.233 58 76.867 0 4.553-0.356 9.024-1.015 13.397-54.279 35.607-88.985 89.994-88.985 150.945 0 107.267 107.452 194.224 240 194.224zM498 44.657c0-27.971 18.157-52.449 46-65.886v-10.771c-51.563 1.159-98.893 9.051-143.571 53.063-10.57-1.325-21.397-2.020-32.429-2.020-47.735 0-91.704 12.879-126.807 34.52 72.337 0.253 140.63 23.427 192.417 65.336 26.104 21.126 46.697 45.913 61.207 73.674 15.383 29.433 23.183 60.791 23.183 93.203 0 5.224-0.225 10.418-0.629 15.584 36.285-29.967 58.629-70.811 58.629-115.838 0-52.244-30.079-98.861-77.12-129.382-0.571-3.748-0.88-7.58-0.88-11.483z" horiz-adv-x="576" />
<glyph unicode="&#xe017;" d="M240 416c-25.333 0-49.791-3.975-72.693-11.814-21.462-7.347-40.557-17.718-56.751-30.823-30.022-24.295-46.556-55.401-46.556-87.587 0-17.995 5.033-35.474 14.96-51.949 10.343-17.17 25.949-32.897 45.13-45.479 15.22-9.984 25.468-25.976 28.181-43.975 0.451-2.995 0.815-6.003 1.090-9.016 1.361 1.26 2.712 2.557 4.057 3.897 12.069 12.020 28.344 18.656 45.161 18.656 2.674 0 5.359-0.168 8.047-0.509 9.68-1.226 19.562-1.848 29.374-1.848 25.333 0 49.79 3.974 72.692 11.814 21.463 7.346 40.558 17.717 56.752 30.822 30.023 24.295 46.556 55.401 46.556 87.587s-16.533 63.291-46.556 87.587c-16.194 13.106-35.289 23.476-56.752 30.823-22.902 7.839-47.359 11.814-72.692 11.814zM240 480v0c132.548 0 240-86.957 240-194.224s-107.452-194.224-240-194.224c-12.729 0-25.223 0.81-37.417 2.355-51.553-51.347-111.086-60.554-170.583-61.907v12.567c32.126 15.677 58 44.233 58 76.867 0 4.553-0.356 9.024-1.015 13.397-54.279 35.607-88.985 89.994-88.985 150.945 0 107.267 107.452 194.224 240 194.224zM498 44.657c0-27.971 18.157-52.449 46-65.886v-10.771c-51.563 1.159-98.893 9.051-143.571 53.063-10.57-1.325-21.397-2.020-32.429-2.020-47.735 0-91.704 12.879-126.807 34.52 72.337 0.253 140.63 23.427 192.417 65.336 26.104 21.126 46.697 45.913 61.207 73.674 15.383 29.433 23.183 60.791 23.183 93.203 0 5.224-0.225 10.418-0.629 15.584 36.285-29.967 58.629-70.811 58.629-115.838 0-52.244-30.079-98.861-77.12-129.382-0.571-3.748-0.88-7.58-0.88-11.483z" horiz-adv-x="576" />
<glyph unicode="&#xe01a;" d="M424-32h-336c-13.255 0-24 10.745-24 24 0 34.431 14.534 76.102 38.879 111.471 20.346 29.559 45.342 51.81 72.339 64.805-11.899 10.822-22.147 24.013-30.254 39.061-13 24.131-19.873 52.024-19.873 80.664 0 39.803 13.102 77.411 36.893 105.895 24.832 29.73 58.221 46.104 94.016 46.104s69.184-16.374 94.017-46.105c23.79-28.484 36.893-66.091 36.893-105.895 0-28.64-6.872-56.533-19.872-80.664-8.107-15.048-18.355-28.239-30.255-39.061 26.997-12.995 51.993-35.246 72.339-64.805 24.344-35.368 38.878-77.039 38.878-111.47 0-13.255-10.745-24-24-24zM115.037 16h281.926c-4.613 19.67-14.26 41.192-27.381 60.255-20.727 30.113-46.588 49.811-72.819 55.463-11.053 2.382-18.944 12.155-18.944 23.462v17.146c0 8.63 4.633 16.595 12.135 20.861 29.739 16.916 48.956 54.133 48.956 94.813 0 57.346-37.192 104-82.909 104s-82.909-46.654-82.909-104c0-40.68 19.217-77.896 48.957-94.813 7.501-4.267 12.134-12.231 12.134-20.861v-17.146c0-11.307-7.892-21.080-18.944-23.462-26.231-5.652-52.092-25.35-72.82-55.463-13.123-19.063-22.768-40.585-27.382-60.255z" />
<glyph unicode="&#xe01b;" d="M488-32h-336c-13.255 0-24 10.745-24 24 0 34.431 14.534 76.102 38.879 111.471 20.346 29.559 45.342 51.81 72.339 64.805-11.899 10.822-22.147 24.013-30.254 39.061-13 24.131-19.873 52.024-19.873 80.664 0 39.803 13.102 77.411 36.893 105.895 24.832 29.73 58.221 46.104 94.016 46.104s69.184-16.374 94.017-46.105c23.79-28.484 36.893-66.091 36.893-105.895 0-28.64-6.872-56.533-19.872-80.664-8.107-15.048-18.355-28.239-30.255-39.061 26.997-12.995 51.993-35.246 72.339-64.805 24.344-35.368 38.878-77.039 38.878-111.47 0-13.255-10.745-24-24-24zM179.037 16h281.926c-4.613 19.67-14.26 41.192-27.381 60.255-20.727 30.113-46.588 49.811-72.819 55.463-11.053 2.382-18.944 12.155-18.944 23.462v17.146c0 8.63 4.633 16.595 12.135 20.861 29.739 16.916 48.956 54.133 48.956 94.813 0 57.346-37.192 104-82.909 104s-82.909-46.654-82.909-104c0-40.68 19.217-77.896 48.957-94.813 7.501-4.267 12.134-12.231 12.134-20.861v-17.146c0-11.307-7.892-21.080-18.944-23.462-26.231-5.652-52.092-25.35-72.82-55.463-13.123-19.063-22.768-40.585-27.382-60.255zM98.557 48h-47.52c4.614 19.67 14.259 41.192 27.38 60.255 20.728 30.113 46.589 49.811 72.82 55.463 11.053 2.382 18.944 12.155 18.944 23.462v17.146c0 8.63-4.633 16.595-12.134 20.861-29.74 16.917-48.957 54.133-48.957 94.813 0 57.346 37.192 104 82.909 104 3.127 0 6.213-0.226 9.251-0.651 13.179 14.667 28.117 26.587 44.321 35.502-16.596 8.616-34.75 13.149-53.571 13.149-35.795 0-69.184-16.374-94.017-46.105-23.79-28.484-36.892-66.092-36.892-105.895 0-28.64 6.872-56.533 19.873-80.664 8.107-15.048 18.355-28.238 30.254-39.061-26.997-12.995-51.993-35.246-72.339-64.805-24.345-35.368-38.879-77.039-38.879-111.47 0-13.255 10.745-24 24-24h66.193c0.738 15.513 3.599 31.706 8.364 48z" />
<glyph unicode="&#xe01c;" d="M461.118-32h-317.491c-12.525 0-22.678 10.153-22.678 22.678 0 32.534 13.733 71.91 36.738 105.331 19.225 27.93 42.844 48.956 68.354 61.235-11.244 10.226-20.927 22.69-28.588 36.909-12.284 22.801-18.779 49.159-18.779 76.221 0 37.611 12.381 73.147 34.861 100.062 23.464 28.092 55.014 43.564 88.837 43.564s65.373-15.472 88.838-43.565c22.48-26.915 34.861-62.45 34.861-100.062 0-27.063-6.493-53.419-18.777-76.221-7.661-14.219-17.344-26.683-28.589-36.909 25.51-12.279 49.129-33.305 68.354-61.235 23.003-33.42 36.736-72.796 36.736-105.329 0-12.525-10.153-22.678-22.678-22.678zM169.175 13.356h266.396c-4.359 18.587-13.474 38.923-25.873 56.936-19.586 28.454-44.022 47.067-68.808 52.408-10.444 2.251-17.901 11.486-17.901 22.17v16.202c0 8.154 4.378 15.681 11.466 19.712 28.101 15.984 46.26 51.151 46.26 89.59 0 54.187-35.144 98.271-78.342 98.271s-78.342-44.084-78.342-98.271c0-38.439 18.159-73.605 46.26-89.59 7.088-4.032 11.466-11.558 11.466-19.712v-16.202c0-10.684-7.457-19.919-17.901-22.169-24.786-5.341-49.222-23.954-68.808-52.408-12.4-18.013-21.514-38.349-25.874-56.936zM93.128 43.593h-44.903c4.36 18.587 13.474 38.923 25.872 56.936 19.586 28.454 44.023 47.067 68.809 52.408 10.444 2.251 17.9 11.486 17.9 22.169v16.202c0 8.154-4.378 15.681-11.465 19.712-28.102 15.985-46.26 51.151-46.26 89.59 0 54.187 35.144 98.271 78.342 98.271 2.954 0 5.871-0.213 8.742-0.615 12.453 13.859 26.568 25.123 41.88 33.547-15.682 8.142-32.836 12.424-50.62 12.424-33.823 0-65.373-15.472-88.838-43.565-22.48-26.915-34.86-62.451-34.86-100.062 0-27.063 6.493-53.419 18.778-76.221 7.66-14.219 17.344-26.683 28.588-36.909-25.51-12.279-49.129-33.305-68.354-61.235-23.004-33.42-36.737-72.796-36.737-105.329 0-12.525 10.153-22.678 22.678-22.678h62.547c0.698 14.659 3.401 29.959 7.903 45.356zM363.512 444.513v-27.615c0-2.542 2.061-4.603 4.603-4.603h138.077c2.542 0 4.603 2.061 4.603 4.603v27.615c0 2.542-2.061 4.603-4.603 4.603h-138.077c-2.542 0-4.603-2.061-4.603-4.603z" />
<glyph unicode="&#xe01d;" d="M112.5 256c61.856 0 112-50.145 112-112s-50.144-112-112-112-112 50.144-112 112l-0.5 16c0 123.712 100.288 224 224 224v-64c-42.737 0-82.917-16.643-113.137-46.863-5.817-5.818-11.126-12.008-15.915-18.51 5.719 0.9 11.58 1.373 17.552 1.373zM400.5 256c61.855 0 112-50.145 112-112s-50.145-112-112-112-112 50.144-112 112l-0.5 16c0 123.712 100.288 224 224 224v-64c-42.737 0-82.917-16.643-113.137-46.863-5.818-5.818-11.127-12.008-15.916-18.51 5.72 0.9 11.58 1.373 17.553 1.373z" />
<glyph unicode="&#xe01e;" d="M461.118-32h-317.491c-12.525 0-22.678 10.153-22.678 22.678 0 32.534 13.733 71.91 36.738 105.331 19.225 27.93 42.844 48.956 68.354 61.235-11.244 10.226-20.927 22.69-28.588 36.909-12.284 22.801-18.779 49.159-18.779 76.221 0 37.611 12.381 73.147 34.861 100.062 23.464 28.092 55.014 43.564 88.837 43.564s65.373-15.472 88.838-43.565c22.48-26.915 34.861-62.45 34.861-100.062 0-27.063-6.493-53.419-18.777-76.221-7.661-14.219-17.344-26.683-28.589-36.909 25.51-12.279 49.129-33.305 68.354-61.235 23.003-33.42 36.736-72.796 36.736-105.329 0-12.525-10.153-22.678-22.678-22.678zM169.175 13.356h266.396c-4.359 18.587-13.474 38.923-25.873 56.936-19.586 28.454-44.022 47.067-68.808 52.408-10.444 2.251-17.901 11.486-17.901 22.17v16.202c0 8.154 4.378 15.681 11.466 19.712 28.101 15.984 46.26 51.151 46.26 89.59 0 54.187-35.144 98.271-78.342 98.271s-78.342-44.084-78.342-98.271c0-38.439 18.159-73.605 46.26-89.59 7.088-4.032 11.466-11.558 11.466-19.712v-16.202c0-10.684-7.457-19.919-17.901-22.169-24.786-5.341-49.222-23.954-68.808-52.408-12.4-18.013-21.514-38.349-25.874-56.936zM93.128 43.593h-44.903c4.36 18.587 13.474 38.923 25.872 56.936 19.586 28.454 44.023 47.067 68.809 52.408 10.444 2.251 17.9 11.486 17.9 22.169v16.202c0 8.154-4.378 15.681-11.465 19.712-28.102 15.985-46.26 51.151-46.26 89.59 0 54.187 35.144 98.271 78.342 98.271 2.954 0 5.871-0.213 8.742-0.615 12.453 13.859 26.568 25.123 41.88 33.547-15.682 8.142-32.836 12.424-50.62 12.424-33.823 0-65.373-15.472-88.838-43.565-22.48-26.915-34.86-62.451-34.86-100.062 0-27.063 6.493-53.419 18.778-76.221 7.66-14.219 17.344-26.683 28.588-36.909-25.51-12.279-49.129-33.305-68.354-61.235-23.004-33.42-36.737-72.796-36.737-105.329 0-12.525 10.153-22.678 22.678-22.678h62.547c0.698 14.659 3.401 29.959 7.903 45.356zM512.211 429.587h-48.225v48.225c0 2.421-1.963 4.384-4.384 4.384h-26.305c-2.421 0-4.384-1.963-4.384-4.384v-48.225h-48.225c-2.421 0-4.384-1.963-4.384-4.384v-26.304c0-2.421 1.963-4.384 4.384-4.384h48.225v-48.225c0-2.421 1.963-4.384 4.384-4.384h26.305c2.421 0 4.384 1.963 4.384 4.384v48.225h48.225c2.421 0 4.384 1.963 4.384 4.384v26.305c0 2.421-1.963 4.384-4.384 4.384z" />
<glyph unicode="&#xe01f;" d="M256 432c-55.559 0-107.792-21.636-147.078-60.922s-60.922-91.519-60.922-147.078c0-55.559 21.636-107.792 60.922-147.078s91.519-60.922 147.078-60.922c55.559 0 107.792 21.636 147.078 60.922s60.922 91.519 60.922 147.078c0 55.559-21.636 107.792-60.922 147.078s-91.519 60.922-147.078 60.922zM256 480v0c141.385 0 256-114.615 256-256s-114.615-256-256-256c-141.385 0-256 114.615-256 256s114.615 256 256 256zM224 128h64v-64h-64zM224 384h64v-192h-64z" />
<glyph unicode="&#xe021;" d="M496.131 44.302l-121.276 103.147c-12.537 11.283-25.945 16.463-36.776 15.963 28.628 33.534 45.921 77.039 45.921 124.588 0 106.039-85.961 192-192 192s-192-85.961-192-192 85.961-192 192-192c47.549 0 91.054 17.293 124.588 45.922-0.5-10.831 4.68-24.239 15.963-36.776l103.147-121.276c17.661-19.623 46.511-21.277 64.11-3.678s15.946 46.449-3.677 64.11zM192 160c-70.692 0-128 57.308-128 128s57.308 128 128 128 128-57.308 128-128-57.307-128-128-128z" />
<glyph unicode="&#xe022;" d="M181.861 118.974l20.649 28.908-22.627 22.628-28.909-20.648c-5.361 2.997-11.102 5.387-17.133 7.096l-5.841 35.042h-32l-5.84-35.043c-6.031-1.709-11.772-4.099-17.133-7.096l-28.909 20.649-22.628-22.628 20.649-28.908c-2.997-5.36-5.387-11.103-7.096-17.133l-35.043-5.841v-32l35.043-5.841c1.709-6.030 4.099-11.772 7.096-17.133l-20.649-28.908 22.627-22.628 28.909 20.648c5.361-2.997 11.102-5.387 17.133-7.096l5.841-35.042h32l5.84 35.043c6.031 1.709 11.772 4.099 17.133 7.096l28.909-20.648 22.627 22.628-20.649 28.908c2.997 5.36 5.387 11.103 7.096 17.133l35.044 5.84v32l-35.043 5.841c-1.709 6.030-4.099 11.772-7.096 17.133zM112 48c-17.674 0-32 14.327-32 32s14.326 32 32 32 32-14.327 32-32-14.326-32-32-32zM512 288v32l-33.691 6.125c-0.621 4.023-1.416 7.989-2.362 11.895l28.779 18.55-12.246 29.564-33.472-7.234c-2.107 3.455-4.363 6.81-6.746 10.065l19.503 28.171-22.628 22.627-28.171-19.503c-3.256 2.383-6.61 4.638-10.065 6.747l7.234 33.472-29.564 12.247-18.55-28.779c-3.906 0.946-7.872 1.741-11.895 2.362l-6.126 33.691h-32l-6.126-33.691c-4.023-0.621-7.988-1.416-11.895-2.362l-18.549 28.779-29.564-12.246 7.234-33.472c-3.455-2.108-6.81-4.364-10.065-6.747l-28.171 19.503-22.627-22.627 19.503-28.171c-2.383-3.255-4.639-6.61-6.747-10.065l-33.472 7.234-12.246-29.564 28.779-18.55c-0.946-3.906-1.741-7.871-2.362-11.895l-33.692-6.126v-32l33.691-6.125c0.621-4.023 1.416-7.989 2.362-11.895l-28.779-18.55 12.246-29.564 33.472 7.234c2.108-3.455 4.364-6.809 6.747-10.065l-19.503-28.171 22.627-22.628 28.171 19.503c3.255-2.383 6.61-4.638 10.065-6.746l-7.234-33.472 29.564-12.246 18.551 28.779c3.905-0.946 7.871-1.741 11.894-2.362l6.126-33.692h32l6.126 33.691c4.022 0.621 7.988 1.416 11.895 2.362l18.55-28.779 29.564 12.246-7.234 33.472c3.455 2.108 6.81 4.363 10.065 6.746l28.171-19.503 22.628 22.628-19.503 28.171c2.383 3.256 4.638 6.61 6.746 10.065l33.472-7.234 12.246 29.565-28.779 18.55c0.946 3.906 1.741 7.871 2.362 11.895l33.691 6.125zM336 234.4c-38.439 0-69.6 31.161-69.6 69.6s31.16 69.6 69.6 69.6 69.6-31.161 69.6-69.6c0-38.439-31.16-69.6-69.6-69.6z" />
<glyph unicode="&#xe024;" d="M501.467 71.062l-230.276 197.38c10.724 20.149 16.809 43.141 16.809 67.558 0 79.529-64.471 144-144 144-14.547 0-28.586-2.166-41.823-6.177l83.195-83.195c12.445-12.445 12.445-32.81 0-45.255l-50.745-50.745c-12.445-12.445-32.81-12.445-45.255 0l-83.195 83.195c-4.011-13.237-6.177-27.276-6.177-41.823 0-79.529 64.471-144 144-144 24.417 0 47.409 6.085 67.558 16.81l197.38-230.276c11.454-13.362 31.008-14.113 43.452-1.669l50.746 50.746c12.444 12.444 11.693 31.997-1.669 43.451z" />
<glyph unicode="&#xe025;" d="M384 448h-64c-52.935 0-96-43.065-96-96v-96h-200c-13.2 0-24-10.8-24-24v-240c0-13.2 10.8-24 24-24h272c13.2 0 24 10.8 24 24v240c0 13.2-10.8 24-24 24h-8v96c0 17.645 14.355 32 32 32h64c17.645 0 32-14.355 32-32v-96h64v96c0 52.935-43.065 96-96 96zM192 32h-64l13.92 69.6c-8.404 5.766-13.92 15.437-13.92 26.4 0 17.673 14.327 32 32 32s32-14.327 32-32c0-10.963-5.516-20.634-13.92-26.4l13.92-69.6z" />
<glyph unicode="&#xe026;" d="M416 256h-32v96c0 70.692-57.308 128-128 128s-128-57.308-128-128v-96h-32c-17.6 0-32-14.4-32-32v-224c0-17.6 14.4-32 32-32h320c17.6 0 32 14.4 32 32v224c0 17.6-14.4 32-32 32zM256 64c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zM320 256h-128v96c0 35.29 28.71 64 64 64s64-28.71 64-64v-96z" />
<glyph unicode="&#xe027;" d="M296 256h-8v96c0 52.935-43.065 96-96 96h-64c-52.935 0-96-43.065-96-96v-96h-8c-13.2 0-24-10.8-24-24v-240c0-13.2 10.8-24 24-24h272c13.2 0 24 10.8 24 24v240c0 13.2-10.8 24-24 24zM192 32h-64l13.92 69.6c-8.404 5.766-13.92 15.437-13.92 26.4 0 17.673 14.327 32 32 32s32-14.327 32-32c0-10.963-5.516-20.634-13.92-26.4l13.92-69.6zM224 256h-128v96c0 17.645 14.355 32 32 32h64c17.645 0 32-14.355 32-32v-96z" />
<glyph unicode="&#xe028;" d="M352 480c-88.365 0-160-71.634-160-160 0-10.013 0.929-19.808 2.688-29.312l-194.688-194.688v-96c0-17.673 14.327-32 32-32h32v32h64v64h64v64h64l41.521 41.521c17.005-6.158 35.348-9.521 54.479-9.521 88.365 0 160 71.634 160 160s-71.635 160-160 160zM399.937 319.937c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48z" />
<glyph unicode="&#xe029;" d="M501.066 322.879l-50.553 50.552c-12.396 12.397-32.685 32.684-45.081 45.082l-50.553 50.552c-12.396 12.397-34.477 14.583-49.065 4.858l-138.219-92.146c-14.588-9.726-20.109-30.514-12.268-46.195l35.243-70.487c1.077-2.153 2.323-4.448 3.695-6.83l-178.265-178.265-16-112h96v32h64v64h64v64h64v35.593c3.198-1.906 6.267-3.608 9.096-5.022l70.485-35.244c15.683-7.841 36.47-2.319 46.195 12.269l92.147 138.22c9.727 14.586 7.539 36.665-4.857 49.063zM75.314 52.687l-22.627 22.627 155.786 155.785 22.627-22.627-155.786-155.785zM458.51 268.118l-22.628-22.628c-6.223-6.222-16.404-6.222-22.627 0l-135.765 135.765c-6.223 6.222-6.223 16.405 0 22.627l22.628 22.628c6.223 6.222 16.404 6.222 22.627 0l135.765-135.765c6.223-6.222 6.223-16.405 0-22.627z" />
<glyph unicode="&#xe02a;" d="M496.131 44.302l-121.276 103.147c-12.537 11.283-25.945 16.463-36.776 15.963 28.628 33.534 45.921 77.039 45.921 124.588 0 106.039-85.961 192-192 192s-192-85.961-192-192 85.961-192 192-192c47.549 0 91.054 17.293 124.588 45.922-0.5-10.831 4.68-24.239 15.963-36.776l103.147-121.276c17.661-19.623 46.511-21.277 64.11-3.678s15.946 46.449-3.677 64.11zM192 160c-70.692 0-128 57.308-128 128s57.308 128 128 128 128-57.308 128-128-57.307-128-128-128zM96 320h192v-64h-192z" />
<glyph unicode="&#xe02b;" d="M496.131 44.302l-121.276 103.147c-12.537 11.283-25.945 16.463-36.776 15.963 28.628 33.534 45.921 77.039 45.921 124.588 0 106.039-85.961 192-192 192s-192-85.961-192-192 85.961-192 192-192c47.549 0 91.054 17.293 124.588 45.922-0.5-10.831 4.68-24.239 15.963-36.776l103.147-121.276c17.661-19.623 46.511-21.277 64.11-3.678s15.946 46.449-3.677 64.11zM192 160c-70.692 0-128 57.308-128 128s57.308 128 128 128 128-57.308 128-128-57.307-128-128-128zM224 384h-64v-64h-64v-64h64v-64h64v64h64v64h-64z" />
<glyph unicode="&#xe02d;" d="M400 416h-288c-26.51 0-48-21.49-48-48v-16h384v16c0 26.51-21.49 48-48 48zM316.16 448l7.058-50.5h-134.436l7.057 50.5h120.321zM320 480h-128c-13.2 0-25.495-10.696-27.321-23.769l-9.357-66.962c-1.827-13.073 7.478-23.769 20.678-23.769h160c13.2 0 22.505 10.696 20.679 23.769l-9.357 66.962c-1.827 13.073-14.122 23.769-27.322 23.769v0zM408 320h-304c-17.6 0-30.696-14.341-29.103-31.869l26.206-288.263c1.593-17.527 17.297-31.868 34.897-31.868h240c17.6 0 33.304 14.341 34.897 31.868l26.205 288.263c1.594 17.528-11.502 31.869-29.102 31.869zM192 32h-48l-16 224h64v-224zM288 32h-64v224h64v-224zM368 32h-48v224h64l-16-224z" />
<glyph unicode="&#xe02f;" d="M512 175.953v96.094l-73.387 12.231c-2.979 9.066-6.611 17.834-10.847 26.25l43.227 60.517-67.948 67.949-60.413-43.152c-8.455 4.277-17.269 7.944-26.384 10.951l-12.201 73.207h-96.094l-12.201-73.208c-9.115-3.007-17.929-6.674-26.383-10.951l-60.414 43.152-67.949-67.949 43.227-60.518c-4.235-8.415-7.867-17.183-10.846-26.249l-73.387-12.23v-96.094l73.559-12.26c2.98-8.984 6.605-17.674 10.821-26.015l-43.374-60.724 67.949-67.948 60.827 43.447c8.301-4.175 16.945-7.764 25.882-10.717l12.289-73.736h96.094l12.289 73.737c8.937 2.953 17.581 6.542 25.883 10.716l60.826-43.446 67.948 67.948-43.372 60.723c4.216 8.341 7.839 17.031 10.82 26.016l73.559 12.259zM256 160c-35.346 0-64 28.653-64 64s28.654 64 64 64c35.347 0 64-28.654 64-64s-28.653-64-64-64z" />
<glyph unicode="&#xe030;" d="M256 384c-111.659 0-208.441-65.021-256-160 47.559-94.979 144.341-160 256-160 111.657 0 208.439 65.021 256 160-47.558 94.979-144.343 160-256 160zM382.225 299.148c30.081-19.187 55.571-44.887 74.717-75.148-19.146-30.261-44.637-55.961-74.718-75.149-37.797-24.108-81.445-36.851-126.224-36.851-44.78 0-88.428 12.743-126.225 36.852-30.080 19.186-55.57 44.886-74.717 75.148 19.146 30.262 44.637 55.962 74.717 75.148 1.959 1.25 3.938 2.461 5.929 3.65-4.979-13.664-7.704-28.411-7.704-43.798 0-70.692 57.308-128 128-128s128 57.308 128 128c0 15.387-2.725 30.134-7.704 43.799 1.99-1.189 3.969-2.401 5.929-3.651zM256 275c0-26.51-21.49-48-48-48s-48 21.49-48 48 21.49 48 48 48 48-21.49 48-48z" />
<glyph unicode="&#xe031;" d="M419.661 331.792c38.822-27.515 70.685-64.546 92.339-107.792-47.561-94.979-144.343-160-256-160-31.283 0-61.396 5.106-89.589 14.542l38.978 38.978c16.529-3.65 33.486-5.52 50.611-5.52 44.779 0 88.427 12.743 126.223 36.852 30.081 19.188 55.572 44.888 74.718 75.149-18.526 29.283-43.007 54.275-71.825 73.247l34.545 34.544zM256 131c-11.362 0-22.376 1.488-32.864 4.267l156.593 156.592c2.781-10.486 4.271-21.497 4.271-32.859 0-70.692-57.308-128-128-128zM480 480h-26.869l-109.806-109.806c-27.538 8.962-56.877 13.806-87.325 13.806-111.659 0-208.441-65.021-256-160 21.329-42.596 52.564-79.154 90.597-106.534l-90.597-90.597v-26.869h26.869l453.131 453.131v26.869zM208 323c24.022 0 43.923-17.647 47.446-40.685l-54.762-54.762c-23.037 3.524-40.684 23.425-40.684 47.447 0 26.51 21.49 48 48 48zM55.058 224c19.146 30.262 44.637 55.962 74.717 75.148 1.959 1.25 3.938 2.461 5.929 3.65-4.979-13.664-7.704-28.411-7.704-43.798 0-29.262 9.825-56.224 26.349-77.781l-29.275-29.275c-28.036 18.821-51.877 43.386-70.016 72.056z" />
<glyph unicode="&#xe032;" d="M348.916 316.476l-32.476 32.461-162.405-162.371c-26.907-26.896-26.907-70.524 0-97.422 26.902-26.896 70.53-26.896 97.437 0l194.886 194.854c44.857 44.831 44.857 117.531 0 162.363-44.833 44.852-117.556 44.852-162.391 0l-204.615-204.589c-0.145-0.152-0.306-0.288-0.438-0.423-62.551-62.548-62.551-163.928 0-226.453 62.527-62.528 163.934-62.528 226.494 0 0.137 0.137 0.258 0.284 0.41 0.438l0.016-0.017 139.666 139.646-32.493 32.46-139.665-139.631c-0.148-0.134-0.282-0.285-0.423-0.422-44.537-44.529-116.99-44.529-161.538 0-44.531 44.521-44.531 116.961 0 161.489 0.152 0.152 0.302 0.291 0.444 0.423l-0.023 0.030 204.64 204.583c26.856 26.869 70.572 26.869 97.443 0 26.856-26.867 26.856-70.574 0-97.42l-194.886-194.85c-8.968-8.961-23.527-8.961-32.486 0-8.947 8.943-8.947 23.516 0 32.46l162.403 162.391z" />
<glyph unicode="&#xe033;" d="M240 448c-132.548 0-240-107.452-240-240s107.452-240 240-240c132.549 0 240 107.451 240 240s-107.451 240-240 240zM375.795 128c4.29 20.227 6.998 41.696 7.879 64h63.723c-1.668-22.098-6.812-43.557-15.34-64h-56.262zM104.205 288c-4.29-20.227-6.998-41.696-7.879-64h-63.722c1.668 22.097 6.811 43.557 15.339 64h56.262zM343.018 288c4.807-20.481 7.699-41.927 8.64-64h-95.658v64h87.018zM256 320v93.669c7.295-2.123 14.522-5.685 21.614-10.685 13.291-9.37 26.006-23.804 36.77-41.743 7.441-12.401 13.876-26.208 19.248-41.242h-77.632zM165.616 361.242c10.764 17.939 23.478 32.374 36.77 41.743 7.091 5 14.319 8.562 21.614 10.685v-93.67h-77.632c5.373 15.033 11.808 28.84 19.248 41.242zM224 288v-64h-95.657c0.94 22.073 3.833 43.519 8.639 64h87.018zM47.944 128c-8.528 20.443-13.671 41.902-15.339 64h63.722c0.881-22.304 3.589-43.773 7.879-64h-56.262zM128.343 192h95.657v-64h-87.018c-4.806 20.48-7.699 41.927-8.639 64zM224 96v-93.67c-7.294 2.123-14.522 5.686-21.614 10.685-13.292 9.37-26.007 23.805-36.77 41.743-7.441 12.402-13.875 26.209-19.249 41.242h77.633zM314.384 54.758c-10.764-17.938-23.479-32.373-36.77-41.743-7.092-4.999-14.319-8.562-21.614-10.685v93.67h77.633c-5.373-15.033-11.808-28.84-19.249-41.242zM256 128v64h95.657c-0.94-22.073-3.833-43.52-8.64-64h-87.017zM383.674 224c-0.881 22.304-3.589 43.773-7.879 64h56.262c8.528-20.443 13.672-41.903 15.34-64h-63.723zM415.329 320h-47.95c-9.319 29.381-22.188 55.147-37.658 75.714 21.268-10.17 40.529-23.808 57.357-40.636 10.74-10.739 20.181-22.469 28.251-35.078zM92.922 355.078c16.829 16.829 36.090 30.466 57.357 40.636-15.471-20.567-28.338-46.333-37.658-75.714h-47.949c8.069 12.609 17.511 24.339 28.25 35.078zM64.672 96h47.949c9.32-29.381 22.188-55.147 37.659-75.715-21.268 10.17-40.529 23.808-57.357 40.637-10.74 10.739-20.182 22.469-28.251 35.078zM387.078 60.922c-16.828-16.829-36.090-30.467-57.357-40.637 15.471 20.567 28.339 46.334 37.658 75.715h47.95c-8.070-12.609-17.511-24.339-28.251-35.078z" />
<glyph unicode="&#xe038;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM128 320c0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32s-32 14.327-32 32zM320 320c0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32s-32 14.327-32 32zM384 192v-32h-32v-48c0-26.51-21.49-48-48-48s-48 21.49-48 48v48h-128v32h256z" />
<glyph unicode="&#xe03a;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM271.37 124.486c70.124 13.853 124.555 45.771 144.227 88.297-10.827-83.978-80.759-148.783-165.425-148.783-59.621 0-111.929 32.141-141.446 80.474 35.205-27.529 97.267-32.904 162.644-19.988zM320 304c0-26.51 14.327-48 32-48s32 21.49 32 48c0 26.51-14.327 48-32 48s-32-21.49-32-48zM176 294.25c-20.898 0-38.667-7.828-45.258-18.75-1.77 2.933-2.742 16.087-2.742 19.375 0 15.533 21.49 28.125 48 28.125s48-12.592 48-28.125c0-3.288-0.972-16.442-2.742-19.375-6.591 10.922-24.36 18.75-45.258 18.75z" />
<glyph unicode="&#xe03f;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM352.049 89.63c-19.587 32.574-55.272 54.37-96.049 54.37s-76.462-21.796-96.049-54.37l-41.164 24.698c27.98 46.535 78.958 77.672 137.213 77.672s109.232-31.137 137.213-77.672l-41.164-24.698zM383.521 339.88c2.142-8.572-3.070-17.259-11.641-19.402-8.813-2.225-19.261-6.060-28.468-10.675 5.324-5.715 8.587-13.376 8.587-21.803 0-17.673-14.327-32-32-32s-32 14.327-32 32c0 0.585 0.018 1.165 0.049 1.742 1.016 23.727 22.606 39.473 40.796 48.569 17.371 8.685 34.551 13.030 35.274 13.211 8.573 2.144 17.259-3.069 19.403-11.642zM128.479 339.88c2.144 8.573 10.83 13.786 19.403 11.642 0.723-0.181 17.903-4.526 35.274-13.211 18.19-9.096 39.78-24.842 40.796-48.569 0.031-0.577 0.049-1.157 0.049-1.742 0-17.673-14.327-32-32-32s-32 14.327-32 32c0 8.427 3.263 16.088 8.587 21.803-9.207 4.615-19.655 8.45-28.468 10.675-8.571 2.143-13.783 10.83-11.641 19.402z" />
<glyph unicode="&#xe040;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM400 352c8.8 0 16-7.2 16-16v-48c0-17.6-14.4-32-32-32h-64c-17.6 0-32 14.4-32 32h-64c0-17.6-14.4-32-32-32h-64c-17.6 0-32 14.4-32 32v48c0 8.8 7.2 16 16 16h96c8.8 0 16-7.2 16-16v-16h64v16c0 8.8 7.2 16 16 16h96zM256 96c46.604 0 87.386 24.909 109.773 62.139l27.44-16.467c-27.983-46.535-78.958-77.672-137.213-77.672-24.229 0-47.192 5.398-67.77 15.041l16.581 27.639c15.677-6.857 32.982-10.68 51.189-10.68z" />
<glyph unicode="&#xe041;" d="M256-32c141.385 0 256 114.615 256 256s-114.615 256-256 256-256-114.615-256-256 114.615-256 256-256zM256 432c114.875 0 208-93.125 208-208s-93.125-208-208-208-208 93.125-208 208 93.125 208 208 208zM96 224v-32c0-70.4 57.6-128 128-128h64c70.4 0 128 57.6 128 128v32h-320zM192 101.506c-13.269 4.729-25.462 12.411-35.772 22.723-18.203 18.201-28.228 42.27-28.228 67.771h64v-90.494zM288 96h-64v96h64v-96zM355.772 124.229c-10.312-10.312-22.505-17.994-35.772-22.723v90.494h64c0-25.501-10.024-49.57-28.228-67.771zM112.676 288c0.001 0 0 0 0 0 4.884 0 9.054 3.528 9.862 8.345 3.079 18.342 18.834 31.655 37.462 31.655s34.383-13.313 37.462-31.655c0.808-4.816 4.978-8.345 9.861-8.345 4.884 0 9.054 3.528 9.862 8.344 0.541 3.218 0.814 6.467 0.814 9.656 0 31.981-26.019 58-58 58s-58-26.019-58-58c0-3.189 0.274-6.438 0.814-9.656 0.81-4.816 4.98-8.344 9.863-8.344zM304.676 288c0.001 0 0 0 0 0 4.885 0 9.056 3.528 9.862 8.345 3.079 18.342 18.834 31.655 37.462 31.655s34.383-13.313 37.462-31.655c0.808-4.816 4.979-8.345 9.861-8.345s9.054 3.528 9.861 8.344c0.541 3.218 0.814 6.467 0.814 9.656 0 31.981-26.019 58-58 58s-58-26.019-58-58c0-3.189 0.272-6.438 0.813-9.656 0.812-4.816 4.982-8.344 9.865-8.344z" />
<glyph unicode="&#xe045;" d="M64 352h64v-96h32v192c0 17.6-14.4 32-32 32h-64c-17.6 0-32-14.4-32-32v-192h32v96zM64 448h64v-64h-64v64zM480 448v32h-96c-17.601 0-32-14.4-32-32v-160c0-17.6 14.399-32 32-32h96v32h-96v160h96zM320 400v48c0 17.6-14.4 32-32 32h-96v-224h96c17.6 0 32 14.4 32 32v48c0 17.6-4.4 32-22 32 17.6 0 22 14.4 22 32zM288 288h-64v64h64v-64zM288 384h-64v64h64v-64zM416 192l-208-224-112 144 41 35 71-74 176 151z" />
<glyph unicode="&#xe046;" d="M445.020 18.98c-6.143 0-12.284 2.343-16.971 7.029-9.372 9.373-9.372 24.568 0 33.941 43.819 43.821 67.952 102.080 67.952 164.050 0 61.969-24.133 120.229-67.952 164.049-9.372 9.373-9.372 24.569 0 33.941s24.569 9.372 33.941 0c52.885-52.886 82.011-123.2 82.011-197.99s-29.126-145.104-82.011-197.99c-4.686-4.687-10.828-7.030-16.97-7.030zM359.765 64.235c-6.143 0-12.284 2.343-16.971 7.029-9.372 9.372-9.372 24.568 0 33.941 65.503 65.503 65.503 172.085 0 237.588-9.372 9.373-9.372 24.569 0 33.941 9.372 9.371 24.569 9.372 33.941 0 40.797-40.796 63.265-95.038 63.265-152.734s-22.468-111.938-63.265-152.735c-4.686-4.687-10.828-7.030-16.97-7.030zM274.51 109.49c-6.143 0-12.284 2.343-16.971 7.029-9.373 9.373-9.373 24.568 0 33.941 40.55 40.55 40.55 106.529 0 147.078-9.373 9.373-9.373 24.569 0 33.941s24.568 9.372 33.941 0c59.265-59.265 59.265-155.696 0-214.961-4.686-4.685-10.828-7.028-16.97-7.028zM200.666 440.666c12.834 12.834 23.334 8.484 23.334-9.666v-414c0-18.15-10.5-22.499-23.334-9.665l-120.666 120.665h-80v192h80l120.666 120.666z" horiz-adv-x="544" />
<glyph unicode="&#xe047;" d="M359.765 64.235c-6.143 0-12.284 2.343-16.971 7.029-9.372 9.372-9.372 24.568 0 33.941 65.503 65.503 65.503 172.085 0 237.588-9.372 9.373-9.372 24.569 0 33.941 9.372 9.371 24.569 9.372 33.941 0 40.797-40.796 63.265-95.038 63.265-152.734s-22.468-111.938-63.265-152.735c-4.686-4.687-10.828-7.030-16.97-7.030zM274.51 109.49c-6.143 0-12.284 2.343-16.971 7.029-9.373 9.373-9.373 24.568 0 33.941 40.55 40.55 40.55 106.529 0 147.078-9.373 9.373-9.373 24.569 0 33.941s24.568 9.372 33.941 0c59.265-59.265 59.265-155.696 0-214.961-4.686-4.685-10.828-7.028-16.97-7.028zM200.666 440.666c12.834 12.834 23.334 8.484 23.334-9.666v-414c0-18.15-10.5-22.499-23.334-9.665l-120.666 120.665h-80v192h80l120.666 120.666z" />
<glyph unicode="&#xe048;" d="M274.51 109.49c-6.143 0-12.284 2.343-16.971 7.029-9.373 9.373-9.373 24.568 0 33.941 40.55 40.55 40.55 106.529 0 147.078-9.373 9.373-9.373 24.569 0 33.941s24.568 9.372 33.941 0c59.265-59.265 59.265-155.696 0-214.961-4.686-4.685-10.828-7.028-16.97-7.028zM200.666 440.666c12.834 12.834 23.334 8.484 23.334-9.666v-414c0-18.15-10.5-22.499-23.334-9.665l-120.666 120.665h-80v192h80l120.666 120.666z" />
<glyph unicode="&#xe049;" d="M200.666 440.666c12.834 12.834 23.334 8.484 23.334-9.666v-414c0-18.15-10.5-22.499-23.334-9.665l-120.666 120.665h-80v192h80l120.666 120.666zM480 170.426v-42.426h-42.426l-53.574 53.574-53.574-53.574h-42.426v42.426l53.574 53.574-53.574 53.574v42.426h42.426l53.574-53.574 53.574 53.574h42.426v-42.426l-53.574-53.574z" />
<glyph unicode="&#xe04a;" d="M200.666 440.666c12.834 12.834 23.334 8.484 23.334-9.666v-414c0-18.15-10.5-22.499-23.334-9.665l-120.666 120.665h-80v192h80l120.666 120.666z" />
<glyph unicode="&#xe04b;" d="M214.082 448.041c5.988 0 9.918-5.939 9.919-17.041v-414c0-11.103-3.928-17.041-9.918-17.041-3.802 0-8.434 2.394-13.417 7.376l-120.666 120.665h-80v192h80l120.666 120.666c4.983 4.983 9.614 7.375 13.416 7.375zM256 256h256v-64h-256z" />
<glyph unicode="&#xe04c;" d="M214.082 448.041c5.988 0 9.918-5.939 9.919-17.041v-414c0-11.103-3.928-17.041-9.918-17.041-3.802 0-8.434 2.394-13.417 7.376l-120.666 120.665h-80v192h80l120.666 120.666c4.983 4.983 9.614 7.375 13.416 7.375zM512 192h-96v-96h-64v96h-96v64h96v96h64v-96h96z" />
<glyph unicode="&#xe04d;" d="M353.94 237.674c18.749 22.271 30.060 51.004 30.060 82.326 0 70.58-57.421 128-128 128h-160v-448h192c70.579 0 128 57.421 128 128 0 46.478-24.899 87.248-62.060 109.674zM192 384h50.75c27.984 0 50.75-28.71 50.75-64s-22.766-64-50.75-64h-50.75v128zM271.5 64h-79.5v128h79.5c29.225 0 53-28.71 53-64s-23.775-64-53-64z" />
<glyph unicode="&#xe04e;" d="M352 448h64v-208c0-79.529-71.634-144-160-144s-160 64.471-160 144v208h64v-208c0-20.083 9.119-39.352 25.677-54.253 18.448-16.602 43.423-25.747 70.323-25.747s51.875 9.145 70.323 25.747c16.558 14.901 25.677 34.17 25.677 54.253v208zM96 64h320v-64h-320z" />
<glyph unicode="&#xe04f;" d="M448 448v-32h-64l-160-384h64v-32h-224v32h64l160 384h-64v32z" />
<glyph unicode="&#xe050;" d="M512 224v-32h-117.253c13.752-19.255 21.253-41.346 21.253-64 0-35.439-18.33-69.513-50.29-93.482-29.679-22.259-68.642-34.518-109.71-34.518-41.069 0-80.031 12.259-109.71 34.518-31.96 23.969-50.29 58.043-50.29 93.482h64c0-34.691 43.963-64 96-64s96 29.309 96 64c0 34.691-43.963 64-96 64h-256v32h149.759c-1.169 0.827-2.328 1.662-3.469 2.518-31.96 23.97-50.29 58.043-50.29 93.482s18.33 69.512 50.29 93.482c29.679 22.259 68.641 34.518 109.71 34.518 41.068 0 80.031-12.259 109.71-34.518 31.96-23.97 50.29-58.043 50.29-93.482h-64c0 34.691-43.963 64-96 64s-96-29.309-96-64c0-34.691 43.963-64 96-64 39.489 0 77.027-11.339 106.241-32h149.759z" />
<glyph unicode="&#xe053;" d="M96 448v-384h384v384h-384zM448 96h-320v320h320v-320zM64 32v320l-32 32v-384h384l-32 32zM214.627 137.373l96 96 73.373-73.373v192h-192l73.373-73.373-96-96z" />
<glyph unicode="&#xe055;" d="M416 416h-320c-52.8 0-96-43.2-96-96v-192c0-52.8 43.2-96 96-96h320c52.8 0 96 43.2 96 96v192c0 52.8-43.2 96-96 96zM480 128c0-16.989-6.687-33.031-18.827-45.173-12.142-12.14-28.183-18.827-45.173-18.827h-320c-16.989 0-33.031 6.687-45.172 18.827-12.141 12.142-18.828 28.184-18.828 45.173v192c0 16.989 6.687 33.031 18.828 45.172s28.183 18.828 45.172 18.828h320c16.989 0 33.031-6.687 45.173-18.828s18.827-28.183 18.827-45.172v-192zM192 96l160 128-160 128z" />
<glyph unicode="&#xe058;" d="M256 480c-141.385 0-256-114.615-256-256s114.615-256 256-256 256 114.615 256 256-114.615 256-256 256zM384 306.745l-82.744-82.745 82.744-82.744v-45.256h-45.256l-82.744 82.744-82.745-82.744h-45.255v45.256l82.745 82.744-82.745 82.745v45.255h45.255l82.745-82.745 82.744 82.745h45.256v-45.255z" />
<glyph unicode="&#xe059;" d="M256 480c-141.385 0-256-114.615-256-256s114.615-256 256-256 256 114.615 256 256-114.615 256-256 256zM224 384h64v-64h-64v64zM320 64h-128v32h32v128h-32v32h96v-160h32v-32z" />
<glyph unicode="&#xe05a;" d="M0 272v-96c0-8.836 7.164-16 16-16h480c8.836 0 16 7.164 16 16v96c0 8.836-7.164 16-16 16h-480c-8.836 0-16-7.164-16-16z" />
<glyph unicode="&#xe600;" d="M39.349 399.017c-17.206 0-31.051-13.844-31.051-31.051v-361.923c0-17.207 13.845-31.068 31.051-31.068h323.589c17.207 0 31.068 13.861 31.068 31.068v361.923c0 17.207-13.861 31.051-31.068 31.051h-323.589zM46.803 392.288h309.317c16.698 0 30.151-13.454 30.151-30.151v-118.928l-46.498-52.778h-269.841l-5.207-4.325-47.364-54.733-0.761 83.5 0.242 2.526c-0.109 1.043-0.173 2.092-0.173 3.166v141.571c0 16.698 13.437 30.152 30.134 30.152zM274.731 341.379c-27.38 0-49.578-22.182-49.578-49.561s22.198-49.578 49.578-49.578c27.38 0 49.578 22.198 49.578 49.578s-22.199 49.561-49.578 49.561zM125.65 133.691c0.425 0.010 0.853 0 1.28 0 27.38 0 49.56-22.181 49.56-49.56s-22.181-49.578-49.56-49.578c-27.38 0-49.578 22.199-49.578 49.578 0 26.952 21.51 48.882 48.298 49.56z" horiz-adv-x="410" />
<glyph unicode="&#xe601;" d="M384 160v64h-160v64h160v64l96-96zM352 192v-128h-160v-96l-192 96v416h352v-160h-32v128h-256l128-64v-288h128v96z" />
<glyph unicode="&#xe602;" d="M353.825-31.334c-7.731 0.603-18.904 2.467-26.955 4.5-31.274 7.894-61.113 27.811-80.623 53.813l-4.316 5.753-6.785 0.453c-3.732 0.249-9.418 0.76-12.637 1.137l-5.853 0.684-4.602-4.351c-42.045-39.748-93.922-58.769-167.866-61.551l-11.84-0.445v14.216l3.395 1.834c13.346 7.21 24.137 15.128 33.861 24.846 12.21 12.202 19.795 24.279 23.617 37.604 2.056 7.17 3.198 16.551 2.683 22.043-0.975 10.388-0.341 9.2-7.671 14.407-17.231 12.243-36.264 30.14-47.508 44.673-15.707 20.301-27.456 42.712-33.645 64.178-10.544 36.57-8.728 76.714 5.058 111.801 35.493 90.334 141.651 150.144 257.076 144.836 36.486-1.678 67.24-8.061 98.589-20.464 70.337-27.826 121.201-80.164 138.156-142.162 4.647-16.993 6.614-33.061 6.051-49.422-0.656-19.032-3.22-33.797-8.839-50.891l-2.351-7.154 1.998-5.519c12.073-33.353 12.431-69.262 1.027-103.235-3.092-9.213-11.693-26.695-17.157-34.877-14.281-21.379-32.64-38.055-55.062-50.013-23.134-12.337-52.597-18.66-77.8-16.696v0zM377.786 8.294c11.009 1.305 24.373 5.429 35.034 10.81 19.764 9.974 38.827 29.211 48.958 49.404 25.974 51.769 9.822 114.569-37.703 146.593-11.748 7.916-25.447 13.569-40.299 16.629-10.827 2.231-29.448 2.262-40.399 0.069-73.502-14.72-112.105-95.584-78.077-163.556 12.747-25.462 36.724-46.281 63.726-55.334 15.912-5.334 30.803-6.743 48.76-4.614v0zM375.29 80.832l-30.783 31.428v84.055h37.938v-67.702l24.959-25.536c13.728-14.045 24.952-25.75 24.943-26.012s-5.924-6.592-13.145-14.067l-13.13-13.591-30.783 31.428zM168.934 79.403c2.823 2.651 7.016 6.212 9.318 7.912 9.934 7.339 23.738 12.284 34.286 12.284h3.566l-0.527 5.169c-0.906 8.889-0.505 29.149 0.744 37.519 4.928 33.042 18.965 61.7 41.608 84.95 12.924 13.27 25.206 22.282 40.984 30.072 19.443 9.6 37.712 14.121 59.903 14.825 29.371 0.931 55.94-6.053 81.034-21.303l7.155-4.348v2.429c-0.006 3.828-1.878 14.427-3.697 20.908-6.327 22.552-20.584 44.728-39.897 62.057-30.675 27.524-68.606 44.101-116.477 50.902-10.048 1.428-39.526 2.019-50.95 1.022-46.279-4.039-86.225-19.189-119.439-45.298-6.522-5.127-21.262-20.093-26.063-26.464-27.791-36.876-33.073-78.923-14.783-117.696 10.785-22.863 29.244-43.615 53.472-60.116 10.876-7.408 18.928-16.449 24.006-26.957 3.623-7.498 5.441-14.452 6.362-24.327 0.394-4.229 0.855-8.399 1.024-9.265 0.303-1.552 0.329-1.557 1.774-0.336 0.806 0.682 3.776 3.409 6.599 6.060h-0.002z" />
</font></defs></svg>

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,301 @@
@font-face {
font-family: 'icomoon';
src:url('fonts/icomoon.eot?dvaucx');
src:url('fonts/icomoon.eot?#iefixdvaucx') format('embedded-opentype'),
url('fonts/icomoon.ttf?dvaucx') format('truetype'),
url('fonts/icomoon.woff?dvaucx') format('woff'),
url('fonts/icomoon.svg?dvaucx#icomoon') format('svg');
font-weight: normal;
font-style: normal;
}
[class^="icon-"], [class*=" icon-"] {
font-family: 'icomoon';
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-xa:before {
content: "\e602";
}
.icon-conversejs:before {
content: "\e600";
}
.icon-closed:before {
content: "\25ba";
}
.icon-opened:before {
content: "\25bc";
}
.icon-checkmark:before {
content: "\2713";
}
.icon-home:before {
content: "\e000";
}
.icon-pencil:before {
content: "\270e";
}
.icon-camera:before {
content: "\e003";
}
.icon-camera-2:before {
content: "\2616";
}
.icon-play:before {
content: "\25d9";
}
.icon-music:before {
content: "\266b";
}
.icon-headphones:before {
content: "\266c";
}
.icon-phone:before {
content: "\260f";
}
.icon-phone-hang-up:before {
content: "\260e";
}
.icon-address-book:before {
content: "\270f";
}
.icon-notebook:before {
content: "\2710";
}
.icon-envelop:before {
content: "\2709";
}
.icon-pushpin:before {
content: "\e012";
}
.icon-online:before {
content: "\25fc";
}
.icon-away:before {
content: "\25fb";
}
.icon-bubbles:before {
content: "\e015";
}
.icon-bubbles2:before {
content: "\e016";
}
.icon-bubbles3:before {
content: "\e017";
}
.icon-user:before {
content: "\e01a";
}
.icon-hide-users:before {
content: "\e01c";
}
.icon-show-users:before {
content: "\e01e";
}
.icon-users:before {
content: "\e01b";
}
.icon-quotes-left:before {
content: "\e01d";
}
.icon-spinner:before {
content: "\231b";
}
.icon-search:before {
content: "\e021";
}
.icon-cogs:before {
content: "\e022";
}
.icon-wrench:before {
content: "\e024";
}
.icon-unlocked:before {
content: "\e025";
}
.icon-lock:before {
content: "\e026";
}
.icon-lock-2:before {
content: "\e027";
}
.icon-key:before {
content: "\e028";
}
.icon-key-2:before {
content: "\e029";
}
.icon-zoomout:before {
content: "\e02a";
}
.icon-zoomin:before {
content: "\e02b";
}
.icon-cog:before {
content: "\e02f";
}
.icon-remove:before {
content: "\e02d";
}
.icon-eye:before {
content: "\e030";
}
.icon-eye-blocked:before {
content: "\e031";
}
.icon-attachment:before {
content: "\e032";
}
.icon-globe:before {
content: "\e033";
}
.icon-heart:before {
content: "\2764";
}
.icon-happy:before {
content: "\263b";
}
.icon-thumbs-up:before {
content: "\261d";
}
.icon-smiley:before {
content: "\263a";
}
.icon-tongue:before {
content: "\e038";
}
.icon-sad:before {
content: "\2639";
}
.icon-wink:before {
content: "\e03a";
}
.icon-wondering:before {
content: "\2369";
}
.icon-confused:before {
content: "\2368";
}
.icon-shocked:before {
content: "\2364";
}
.icon-evil:before {
content: "\261f";
}
.icon-angry:before {
content: "\e03f";
}
.icon-cool:before {
content: "\e040";
}
.icon-grin:before {
content: "\e041";
}
.icon-info:before {
content: "\2360";
}
.icon-notification:before {
content: "\e01f";
}
.icon-warning:before {
content: "\26a0";
}
.icon-spell-check:before {
content: "\e045";
}
.icon-volume-high:before {
content: "\e046";
}
.icon-volume-medium:before {
content: "\e047";
}
.icon-volume-low:before {
content: "\e048";
}
.icon-volume-mute:before {
content: "\e049";
}
.icon-volume-mute2:before {
content: "\e04a";
}
.icon-volume-decrease:before {
content: "\e04b";
}
.icon-volume-increase:before {
content: "\e04c";
}
.icon-bold:before {
content: "\e04d";
}
.icon-underline:before {
content: "\e04e";
}
.icon-italic:before {
content: "\e04f";
}
.icon-strikethrough:before {
content: "\e050";
}
.icon-newtab:before {
content: "\e053";
}
.icon-youtube:before {
content: "\e055";
}
.icon-close:before {
content: "\2715";
}
.icon-blocked:before {
content: "\2718";
}
.icon-cancel-circle:before {
content: "\e058";
}
.icon-minus:before {
content: "\e05a";
}
.icon-plus:before {
content: "\271a";
}
.icon-checkbox-checked:before {
content: "\2611";
}
.icon-checkbox-unchecked:before {
content: "\2b27";
}
.icon-checkbox-partial:before {
content: "\2b28";
}
.icon-radio-checked:before {
content: "\2b26";
}
.icon-radio-unchecked:before {
content: "\2b25";
}
.icon-room-info:before {
content: "\e059";
}
.icon-newspaper:before {
content: "\e001";
}
.icon-image:before {
content: "\2b14";
}
.icon-offline:before {
content: "\e002";
}
.icon-busy:before {
content: "\e004";
}
.icon-exit:before {
content: "\e601";
}

View file

@ -0,0 +1,5 @@
Sound credit:
=============
Message received notification sound by Alastair Cameron
https://www.freesound.org/people/cameronmusic

Binary file not shown.

Binary file not shown.

3
xmpp/templates/admin.tpl Normal file
View file

@ -0,0 +1,3 @@
{{include file="field_input.tpl" field=$bosh_proxy}}
{{include file="field_checkbox.tpl" field=$central_userbase}}
<div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>

10
xmpp/xmpp.css Normal file
View file

@ -0,0 +1,10 @@
#xmpp-enabled-label, #xmpp-individual-label, #xmpp-bosh-proxy-label
{
float: left;
width: 200px;
}
#xmpp-enabled, #xmpp-individual, #xmpp-bosh-proxy {
float: left;
}

197
xmpp/xmpp.php Normal file
View file

@ -0,0 +1,197 @@
<?php
/**
* Name: XMPP (Jabber)
* Description: Embedded XMPP (Jabber) client
* Version: 0.1
* Author: Michael Vogel <https://pirati.ca/profile/heluecht>
*/
function xmpp_install() {
register_hook('plugin_settings', 'addon/xmpp/xmpp.php', 'xmpp_plugin_settings');
register_hook('plugin_settings_post', 'addon/xmpp/xmpp.php', 'xmpp_plugin_settings_post');
register_hook('page_end', 'addon/xmpp/xmpp.php', 'xmpp_script');
register_hook('logged_in', 'addon/xmpp/xmpp.php', 'xmpp_login');
}
function xmpp_uninstall() {
unregister_hook('plugin_settings', 'addon/xmpp/xmpp.php', 'xmpp_plugin_settings');
unregister_hook('plugin_settings_post', 'addon/xmpp/xmpp.php', 'xmpp_plugin_settings_post');
unregister_hook('page_end', 'addon/xmpp/xmpp.php', 'xmpp_script');
unregister_hook('logged_in', 'addon/xmpp/xmpp.php', 'xmpp_login');
}
function xmpp_plugin_settings_post($a,$post) {
if(! local_user() || (! x($_POST,'xmpp-settings-submit')))
return;
set_pconfig(local_user(),'xmpp','enabled',intval($_POST['xmpp_enabled']));
set_pconfig(local_user(),'xmpp','individual',intval($_POST['xmpp_individual']));
set_pconfig(local_user(),'xmpp','bosh_proxy',$_POST['xmpp_bosh_proxy']);
info( t('XMPP settings updated.') . EOL);
}
function xmpp_plugin_settings(&$a,&$s) {
if(! local_user())
return;
/* Add our stylesheet to the xmpp so we can make our settings look nice */
$a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="' . $a->get_baseurl() . '/addon/xmpp/xmpp.css' . '" media="all" />' . "\r\n";
/* Get the current state of our config variable */
$enabled = intval(get_pconfig(local_user(),'xmpp','enabled'));
$enabled_checked = (($enabled) ? ' checked="checked" ' : '');
$individual = intval(get_pconfig(local_user(),'xmpp','individual'));
$individual_checked = (($individual) ? ' checked="checked" ' : '');
$bosh_proxy = get_pconfig(local_user(),"xmpp","bosh_proxy");
/* Add some HTML to the existing form */
$s .= '<span id="settings_xmpp_inflated" class="settings-block fakelink" style="display: block;" onclick="openClose(\'settings_xmpp_expanded\'); openClose(\'settings_xmpp_inflated\');">';
$s .= '<h3>' . t('XMPP-Chat (Jabber)') . '</h3>';
$s .= '</span>';
$s .= '<div id="settings_xmpp_expanded" class="settings-block" style="display: none;">';
$s .= '<span class="fakelink" onclick="openClose(\'settings_xmpp_expanded\'); openClose(\'settings_xmpp_inflated\');">';
$s .= '<h3>' . t('XMPP-Chat (Jabber)') . '</h3>';
$s .= '</span>';
$s .= '<div id="xmpp-settings-wrapper">';
$s .= '<label id="xmpp-enabled-label" for="xmpp-enabled">' . t('Enable Webchat') . '</label>';
$s .= '<input id="xmpp-enabled" type="checkbox" name="xmpp_enabled" value="1" ' . $enabled_checked . '/>';
$s .= '<div class="clear"></div>';
if (get_config("xmpp", "central_userbase")) {
$s .= '<label id="xmpp-individual-label" for="xmpp-individual">' . t('Individual Credentials') . '</label>';
$s .= '<input id="xmpp-individual" type="checkbox" name="xmpp_individual" value="1" ' . $individual_checked . '/>';
$s .= '<div class="clear"></div>';
}
if (!get_config("xmpp", "central_userbase") OR get_pconfig(local_user(),"xmpp","individual")) {
$s .= '<label id="xmpp-bosh-proxy-label" for="xmpp-bosh-proxy">'.t('Jabber BOSH host').'</label>';
$s .= ' <input id="xmpp-bosh-proxy" type="text" name="xmpp_bosh_proxy" value="'.$bosh_proxy.'" />';
$s .= '<div class="clear"></div>';
}
$s .= '</div>';
/* provide a submit button */
$s .= '<div class="settings-submit-wrapper" ><input type="submit" name="xmpp-settings-submit" class="settings-submit" value="' . t('Save Settings') . '" /></div></div>';
}
function xmpp_login($a,$b) {
if (!$_SESSION["allow_api"]) {
$password = substr(random_string(),0,16);
set_pconfig(local_user(), "xmpp", "password", $password);
}
}
function xmpp_plugin_admin(&$a, &$o){
$t = get_markup_template("admin.tpl", "addon/xmpp/");
$o = replace_macros($t, array(
'$submit' => t('Save Settings'),
'$bosh_proxy' => array('bosh_proxy', t('Jabber BOSH host'), get_config('xmpp', 'bosh_proxy'), ''),
'$central_userbase' => array('central_userbase', t('Use central userbase'), get_config('xmpp', 'central_userbase'), t('If enabled, users will automatically login to an ejabberd server that has to be installed on this machine with synchronized credentials via the "auth_ejabberd.php" script.')),
));
}
function xmpp_plugin_admin_post(&$a){
$bosh_proxy = ((x($_POST,'bosh_proxy')) ? trim($_POST['bosh_proxy']) : '');
$central_userbase = ((x($_POST,'central_userbase')) ? intval($_POST['central_userbase']) : false);
set_config('xmpp','bosh_proxy',$bosh_proxy);
set_config('xmpp','central_userbase',$central_userbase);
info( t('Settings updated.'). EOL );
}
function xmpp_script(&$a,&$s) {
xmpp_converse($a,$s);
}
function xmpp_converse(&$a,&$s) {
if (!local_user())
return;
if ($_GET["mode"] == "minimal")
return;
if ($a->is_mobile || $a->is_tablet)
return;
if (!get_pconfig(local_user(),"xmpp","enabled"))
return;
$a->page['htmlhead'] .= '<link type="text/css" rel="stylesheet" media="screen" href="addon/xmpp/converse/css/converse.css" />'."\n";
$a->page['htmlhead'] .= '<script src="addon/xmpp/converse/builds/converse.min.js"></script>'."\n";
if (get_config("xmpp", "central_userbase") AND !get_pconfig(local_user(),"xmpp","individual")) {
$bosh_proxy = get_config("xmpp", "bosh_proxy");
$password = get_pconfig(local_user(), "xmpp", "password");
if ($password == "") {
$password = substr(random_string(),0,16);
set_pconfig(local_user(), "xmpp", "password", $password);
}
$jid = $a->user["nickname"]."@".$a->get_hostname()."/converse-".substr(random_string(),0,5);;
$auto_login = "auto_login: true,
authentication: 'login',
jid: '$jid',
password: '$password',
allow_logout: false,";
} else {
$bosh_proxy = get_pconfig(local_user(), "xmpp", "bosh_proxy");
$auto_login = "";
}
if ($bosh_proxy == "")
return;
if (in_array($a->argv[0], array("manage", "logout")))
$additional_commands = "converse.user.logout();\n";
else
$additional_commands = "";
$on_ready = "";
$initialize = "converse.initialize({
bosh_service_url: '$bosh_proxy',
keepalive: true,
message_carbons: false,
forward_messages: false,
play_sounds: true,
sounds_path: 'addon/xmpp/converse/sounds/',
roster_groups: false,
show_controlbox_by_default: false,
show_toolbar: true,
allow_contact_removal: false,
allow_registration: false,
hide_offline_users: true,
allow_chat_pending_contacts: false,
allow_dragresize: true,
auto_away: 0,
auto_xa: 0,
csi_waiting_time: 300,
auto_reconnect: true,
$auto_login
xhr_user_search: false
});\n";
$a->page['htmlhead'] .= "<script>
require(['converse'], function (converse) {
$initialize
converse.listen.on('ready', function (event) {
$on_ready
});
$additional_commands
});
</script>";
}
?>