Removing unneeded assets

pull/1/head
Oliver Kennedy 2015-12-03 19:57:46 -05:00
parent 810711a880
commit 2c3b1f5bc2
1103 changed files with 0 additions and 181629 deletions

View File

@ -1,2 +0,0 @@
<?php
// Silence is golden.

View File

@ -1,34 +0,0 @@
# Only allow direct access to specific Web-available files.
# Apache 2.2
<IfModule !mod_authz_core.c>
Order Deny,Allow
Deny from all
</IfModule>
# Apache 2.4
<IfModule mod_authz_core.c>
Require all denied
</IfModule>
# Akismet CSS and JS
<FilesMatch "^(form|akismet)\.(css|js)$">
<IfModule !mod_authz_core.c>
Allow from all
</IfModule>
<IfModule mod_authz_core.c>
Require all granted
</IfModule>
</FilesMatch>
# Akismet images
<FilesMatch "^(.+)\.(png|gif)$">
<IfModule !mod_authz_core.c>
Allow from all
</IfModule>
<IfModule mod_authz_core.c>
Require all granted
</IfModule>
</FilesMatch>

View File

@ -1,339 +0,0 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.

View File

@ -1,376 +0,0 @@
#submitted-on {
position: relative;
}
#the-comment-list .author .akismet-user-comment-count {
display: inline;
}
#the-comment-list .author a span {
text-decoration: none;
color: #999;
}
#the-comment-list .author a span.akismet-span-link {
text-decoration: inherit;
color: inherit;
}
#the-comment-list .remove_url {
margin-left: 3px;
color: #999;
padding: 2px 3px 2px 0;
}
#the-comment-list .remove_url:hover {
color: #A7301F;
font-weight: bold;
padding: 2px 2px 2px 0;
}
#dashboard_recent_comments .akismet-status {
display: none;
}
.akismet-status {
float: right;
}
.akismet-status a {
color: #AAA;
font-style: italic;
}
table.comments td.comment p a {
text-decoration: underline;
}
table.comments td.comment p a:after {
content: attr(href);
color: #aaa;
display: inline-block; /* Show the URL without the link's underline extending under it. */
padding: 0 1ex; /* Because it's inline block, we can't just use spaces in the content: attribute to separate it from the link text. */
}
.mshot-arrow {
width: 0;
height: 0;
border-top: 10px solid transparent;
border-bottom: 10px solid transparent;
border-right: 10px solid #5C5C5C;
position: absolute;
left: -6px;
top: 91px;
}
.mshot-container {
background: #5C5C5C;
position: absolute;
top: -94px;
padding: 7px;
width: 450px;
height: 338px;
z-index: 20000;
-moz-border-radius: 6px;
border-radius: 6px;
-webkit-border-radius: 6px;
}
.akismet-mshot {
position: absolute;
z-index: 100;
}
.akismet-mshot .mshot-image {
margin: 0;
height: 338px;
width: 450px;
}
h2.ak-header {
padding: 30px;
background: #649316 url('img/logo-full-2x.png') no-repeat 20px center;
background-size: 185px 33px;
height: 33px;
text-indent: -9999em;
margin-right: 10px;
}
.checkforspam {
display: inline-block !important;
}
.checkforspam-spinner {
display: inline-block;
margin-top: 7px;
}
.config-wrap {
margin-top: 2em;
max-width: 700px;
}
.activate-option {
background: #e3e3e3;
border-radius: 3px;
margin-bottom: 30px;
overflow: hidden;
padding: 20px;
}
.activate-option.clicked {
background: #649316;
color: #fff;
}
.activate-option.clicked:hover {
background: #68802E;
color: #fff;
}
.activate-option .button.button-secondary {
margin: 15px 0;
}
.activate-option p {
margin: 10px 0 10px;
}
.activate-highlight {
background: #fff;
padding: 30px;
margin-right: 10px;
}
.activate-highlight.secondary {
background: #ddd;
padding: 20px 30px;
}
.activate-highlight h3 {
margin: 0 0 0.3em;
}
.activate-highlight p {
color: #777;
}
.activate-highlight .button-primary {
margin-top: 15px;
}
#akismet-enter-api-key .regular-text {
width: 18em;
margin-top: 15px;
}
.right {
float: right;
}
.alert-text {
color: #dd3d36;
}
.success {
color: #649316;
}
.option-description {
float: left;
font-size: 16px;
}
.option-description span {
color: #666;
display: block;
font-size: 14px;
margin-top: 5px;
}
.option-action {
float: right;
}
.key-config-link {
font-size: 14px;
margin-left: 20px;
}
.jetpack-account {
float: left;
font-size: 18px;
margin-right: 40px;
}
.small-heading {
color: #777;
display: block;
font-size: 12px;
font-weight: bold;
margin-bottom: 5px;
text-transform: uppercase;
}
.inline-label {
background: #ddd;
border-radius: 3px;
font-size: 11px;
padding: 3px 8px;
text-transform: uppercase;
}
.inline-label.alert {
background: #e54747;
color: #fff;
}
.jetpack-account .inline-label {
margin-left: 5px;
}
.option-action .manual-key {
margin-top: 7px;
}
.alert {
border: 1px solid #e5e5e5;
padding: 0.4em 1em 1.4em 1em;
border-radius: 3px;
-webkit-border-radius: 3px;
border-width: 1px;
border-style: solid;
}
.alert h3.key-status {
color: #fff;
margin: 1em 0 0.5em 0;
}
.alert.critical {
background-color: #993300;
}
.alert.active {
background-color: #649316;
}
.alert p.key-status {
font-size: 24px;
}
.alert p.description {
color:#fff;
font-size: 14px;
margin: 0 0;
font-style: normal;
}
.alert p.description a,
.alert p.description a,
.alert p.description a,
.alert p.description a {
color: #fff;
}
.new-snapshot {
margin-top: 1em;
padding: 1em;
text-align: center;
}
.new-snapshot.stats {
background: #fff;
border: 1px solid #e5e5e5;
}
.new-snapshot h3 {
background: #f5f5f5;
color: #888;
font-size: 11px;
margin: 0;
padding: 3px;
}
.new-snapspot ul {
font-size: 12px;
width: 100%;
}
.new-snapshot ul li {
color: #999;
float: left;
font-size: 11px;
padding: 0 20px;
text-transform: uppercase;
width: 33%;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-ms-box-sizing: border-box;
}
.new-snapshot.stats ul li:first-child,
.new-snapshot.stats ul li:nth-child(2) {
border-right:1px dotted #ccc;
}
.new-snapshot.account ul li:nth-child(2) {
border-right: none;
}
.new-snapshot ul li span {
color: #52accc;
display: block;
font-size: 32px;
font-weight: lighter;
line-height: 1.5em;
}
.new-snapshot.stats {
}
.new-snapshot.account,
.new-snapshot.settings {
float: left;
padding: 0;
text-align: left;
width: 50%;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-ms-box-sizing: border-box;
}
.account-container {
background: #fff;
border: 1px solid #e5e5e5;
margin-right: 0.5em;
}
.settings-container {
background: #fff;
border: 1px solid #e5e5e5;
margin-left: 0.5em;
}
.new-snapshot.account ul li {
width:100%
}
.new-snapshot.account ul li span {
font-size: 14px;
font-weight: normal;
}
.new-snapshot.settings ul li {
border: none;
display: block;
width:100%
}
.new-snapshot.settings ul li span {
display: block;
font-size: 14px;
font-weight: normal;
}
.new-snapshot.settings p.submit {
margin: 0;
text-align: center;
}
.akismet-settings th:first-child {
vertical-align: top;
padding-top: 15px;
}
.akismet-settings th.akismet-api-key {
vertical-align: middle;
padding-top: 0;
}
.akismet-settings input[type=text] {
width: 75%;
}
.akismet-settings span.note{
float: left;
padding-left: 23px;
font-size: 75%;
margin-top: -10px;
}
.clearfix {
clear:both;
}

View File

@ -1,189 +0,0 @@
jQuery( function ( $ ) {
var mshotRemovalTimer = null;
var mshotSecondTryTimer = null
var mshotThirdTryTimer = null
$( 'a.activate-option' ).click( function(){
var link = $( this );
if ( link.hasClass( 'clicked' ) ) {
link.removeClass( 'clicked' );
}
else {
link.addClass( 'clicked' );
}
$( '.toggle-have-key' ).slideToggle( 'slow', function() {});
return false;
});
$('.akismet-status').each(function () {
var thisId = $(this).attr('commentid');
$(this).prependTo('#comment-' + thisId + ' .column-comment');
});
$('.akismet-user-comment-count').each(function () {
var thisId = $(this).attr('commentid');
$(this).insertAfter('#comment-' + thisId + ' .author strong:first').show();
});
$('#the-comment-list').find('tr.comment, tr[id ^= "comment-"]').find('.column-author a[title]').each(function () {
// Comment author URLs are the only URL with a title attribute in the author column.
var thisTitle = $(this).attr('title');
var thisCommentId = $(this).parents('tr:first').attr('id').split("-");
$(this).attr("id", "author_comment_url_"+ thisCommentId[1]);
if (thisTitle) {
$(this).after(
$( '<a href="#" class="remove_url">x</a>' )
.attr( 'commentid', thisCommentId[1] )
.attr( 'title', WPAkismet.strings['Remove this URL'] )
);
}
});
$('.remove_url').live('click', function () {
var thisId = $(this).attr('commentid');
var data = {
action: 'comment_author_deurl',
_wpnonce: WPAkismet.comment_author_url_nonce,
id: thisId
};
$.ajax({
url: ajaxurl,
type: 'POST',
data: data,
beforeSend: function () {
// Removes "x" link
$("a[commentid='"+ thisId +"']").hide();
// Show temp status
$("#author_comment_url_"+ thisId).html( $( '<span/>' ).text( WPAkismet.strings['Removing...'] ) );
},
success: function (response) {
if (response) {
// Show status/undo link
$("#author_comment_url_"+ thisId)
.attr('cid', thisId)
.addClass('akismet_undo_link_removal')
.html(
$( '<span/>' ).text( WPAkismet.strings['URL removed'] )
)
.append( ' ' )
.append(
$( '<span/>' )
.text( WPAkismet.strings['(undo)'] )
.addClass( 'akismet-span-link' )
);
}
}
});
return false;
});
$('.akismet_undo_link_removal').live('click', function () {
var thisId = $(this).attr('cid');
var thisUrl = $(this).attr('href');
var data = {
action: 'comment_author_reurl',
_wpnonce: WPAkismet.comment_author_url_nonce,
id: thisId,
url: thisUrl
};
$.ajax({
url: ajaxurl,
type: 'POST',
data: data,
beforeSend: function () {
// Show temp status
$("#author_comment_url_"+ thisId).html( $( '<span/>' ).text( WPAkismet.strings['Re-adding...'] ) );
},
success: function (response) {
if (response) {
// Add "x" link
$("a[commentid='"+ thisId +"']").show();
// Show link. Core strips leading http://, so let's do that too.
$("#author_comment_url_"+ thisId).removeClass('akismet_undo_link_removal').text( thisUrl.replace( /^http:\/\/(www\.)?/ig, '' ) );
}
}
});
return false;
});
// Show a preview image of the hovered URL. Applies to author URLs and URLs inside the comments.
$( 'a[id^="author_comment_url"], tr.pingback td.column-author a:first-of-type, table.comments td.comment p a' ).mouseover( function () {
clearTimeout( mshotRemovalTimer );
if ( $( '.akismet-mshot' ).length > 0 ) {
if ( $( '.akismet-mshot:first' ).data( 'link' ) == this ) {
// The preview is already showing for this link.
return;
}
else {
// A new link is being hovered, so remove the old preview.
$( '.akismet-mshot' ).remove();
}
}
clearTimeout( mshotSecondTryTimer );
clearTimeout( mshotThirdTryTimer );
var thisHref = $.URLEncode( $( this ).attr( 'href' ) );
var mShot = $( '<div class="akismet-mshot mshot-container"><div class="mshot-arrow"></div><img src="//s0.wordpress.com/mshots/v1/' + thisHref + '?w=450" width="450" height="338" class="mshot-image" /></div>' );
mShot.data( 'link', this );
var offset = $( this ).offset();
mShot.offset( {
left : Math.min( $( window ).width() - 475, offset.left + $( this ).width() + 10 ), // Keep it on the screen if the link is near the edge of the window.
top: offset.top + ( $( this ).height() / 2 ) - 101 // 101 = top offset of the arrow plus the top border thickness
} );
mshotSecondTryTimer = setTimeout( function () {
mShot.find( '.mshot-image' ).attr( 'src', '//s0.wordpress.com/mshots/v1/'+thisHref+'?w=450&r=2' );
}, 6000 );
mshotThirdTryTimer = setTimeout( function () {
mShot.find( '.mshot-image' ).attr( 'src', '//s0.wordpress.com/mshots/v1/'+thisHref+'?w=450&r=3' );
}, 12000 );
$( 'body' ).append( mShot );
} ).mouseout( function () {
mshotRemovalTimer = setTimeout( function () {
clearTimeout( mshotSecondTryTimer );
clearTimeout( mshotThirdTryTimer );
$( '.akismet-mshot' ).remove();
}, 200 );
} );
$('.checkforspam:not(.button-disabled)').click( function(e) {
$('.checkforspam:not(.button-disabled)').addClass('button-disabled');
$('.checkforspam-spinner').addClass( 'spinner' );
akismet_check_for_spam(0, 100);
e.preventDefault();
});
function akismet_check_for_spam(offset, limit) {
$.post(
ajaxurl,
{
'action': 'akismet_recheck_queue',
'offset': offset,
'limit': limit
},
function(result) {
if (result.processed < limit) {
window.location.reload();
}
else {
akismet_check_for_spam(offset + limit, limit);
}
}
);
}
});
// URL encode plugin
jQuery.extend({URLEncode:function(c){var o='';var x=0;c=c.toString();var r=/(^[a-zA-Z0-9_.]*)/;
while(x<c.length){var m=r.exec(c.substr(x));
if(m!=null && m.length>1 && m[1]!=''){o+=m[1];x+=m[1].length;
}else{if(c[x]==' ')o+='+';else{var d=c.charCodeAt(x);var h=d.toString(16);
o+='%'+(h.length<2?'0':'')+h.toUpperCase();}x++;}}return o;}
});

View File

@ -1,30 +0,0 @@
var ak_js = document.getElementById( "ak_js" );
if ( ! ak_js ) {
ak_js = document.createElement( 'input' );
ak_js.setAttribute( 'id', 'ak_js' );
ak_js.setAttribute( 'name', 'ak_js' );
ak_js.setAttribute( 'type', 'hidden' );
}
else {
ak_js.parentNode.removeChild( ak_js );
}
ak_js.setAttribute( 'value', ( new Date() ).getTime() );
var commentForm = document.getElementById( 'commentform' );
if ( commentForm ) {
commentForm.appendChild( ak_js );
}
else {
var replyRowContainer = document.getElementById( 'replyrow' );
if ( replyRowContainer ) {
var children = replyRowContainer.getElementsByTagName( 'td' );
if ( children.length > 0 ) {
children[0].appendChild( ak_js );
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

View File

@ -1,61 +0,0 @@
<?php
/**
* @package Akismet
*/
/*
Plugin Name: Akismet
Plugin URI: http://akismet.com/
Description: Used by millions, Akismet is quite possibly the best way in the world to <strong>protect your blog from spam</strong>. It keeps your site protected even while you sleep. To get started: 1) Click the "Activate" link to the left of this description, 2) <a href="http://akismet.com/get/">Sign up for an Akismet plan</a> to get an API key, and 3) Go to your Akismet configuration page, and save your API key.
Version: 3.1.5
Author: Automattic
Author URI: http://automattic.com/wordpress-plugins/
License: GPLv2 or later
Text Domain: akismet
*/
/*
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Copyright 2005-2015 Automattic, Inc.
*/
// Make sure we don't expose any info if called directly
if ( !function_exists( 'add_action' ) ) {
echo 'Hi there! I\'m just a plugin, not much I can do when called directly.';
exit;
}
define( 'AKISMET_VERSION', '3.1.5' );
define( 'AKISMET__MINIMUM_WP_VERSION', '3.2' );
define( 'AKISMET__PLUGIN_URL', plugin_dir_url( __FILE__ ) );
define( 'AKISMET__PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
define( 'AKISMET_DELETE_LIMIT', 100000 );
register_activation_hook( __FILE__, array( 'Akismet', 'plugin_activation' ) );
register_deactivation_hook( __FILE__, array( 'Akismet', 'plugin_deactivation' ) );
require_once( AKISMET__PLUGIN_DIR . 'class.akismet.php' );
require_once( AKISMET__PLUGIN_DIR . 'class.akismet-widget.php' );
add_action( 'init', array( 'Akismet', 'init' ) );
if ( is_admin() ) {
require_once( AKISMET__PLUGIN_DIR . 'class.akismet-admin.php' );
add_action( 'init', array( 'Akismet_Admin', 'init' ) );
}
//add wrapper class around deprecated akismet functions that are referenced elsewhere
require_once( AKISMET__PLUGIN_DIR . 'wrapper.php' );

View File

@ -1,965 +0,0 @@
<?php
class Akismet_Admin {
const NONCE = 'akismet-update-key';
private static $initiated = false;
private static $notices = array();
public static function init() {
if ( ! self::$initiated ) {
self::init_hooks();
}
if ( isset( $_POST['action'] ) && $_POST['action'] == 'enter-key' ) {
self::enter_api_key();
}
}
public static function init_hooks() {
// The standalone stats page was removed in 3.0 for an all-in-one config and stats page.
// Redirect any links that might have been bookmarked or in browser history.
if ( isset( $_GET['page'] ) && 'akismet-stats-display' == $_GET['page'] ) {
wp_safe_redirect( esc_url_raw( self::get_page_url( 'stats' ) ), 301 );
die;
}
self::$initiated = true;
add_action( 'admin_init', array( 'Akismet_Admin', 'admin_init' ) );
add_action( 'admin_menu', array( 'Akismet_Admin', 'admin_menu' ), 5 ); # Priority 5, so it's called before Jetpack's admin_menu.
add_action( 'admin_notices', array( 'Akismet_Admin', 'display_notice' ) );
add_action( 'admin_enqueue_scripts', array( 'Akismet_Admin', 'load_resources' ) );
add_action( 'activity_box_end', array( 'Akismet_Admin', 'dashboard_stats' ) );
add_action( 'rightnow_end', array( 'Akismet_Admin', 'rightnow_stats' ) );
add_action( 'manage_comments_nav', array( 'Akismet_Admin', 'check_for_spam_button' ) );
add_action( 'admin_action_akismet_recheck_queue', array( 'Akismet_Admin', 'recheck_queue' ) );
add_action( 'wp_ajax_akismet_recheck_queue', array( 'Akismet_Admin', 'recheck_queue' ) );
add_action( 'wp_ajax_comment_author_deurl', array( 'Akismet_Admin', 'remove_comment_author_url' ) );
add_action( 'wp_ajax_comment_author_reurl', array( 'Akismet_Admin', 'add_comment_author_url' ) );
add_action( 'jetpack_auto_activate_akismet', array( 'Akismet_Admin', 'connect_jetpack_user' ) );
add_filter( 'plugin_action_links', array( 'Akismet_Admin', 'plugin_action_links' ), 10, 2 );
add_filter( 'comment_row_actions', array( 'Akismet_Admin', 'comment_row_action' ), 10, 2 );
add_filter( 'plugin_action_links_'.plugin_basename( plugin_dir_path( __FILE__ ) . 'akismet.php'), array( 'Akismet_Admin', 'admin_plugin_settings_link' ) );
add_filter( 'wxr_export_skip_commentmeta', array( 'Akismet_Admin', 'exclude_commentmeta_from_export' ), 10, 3 );
}
public static function admin_init() {
load_plugin_textdomain( 'akismet' );
add_meta_box( 'akismet-status', __('Comment History', 'akismet'), array( 'Akismet_Admin', 'comment_status_meta_box' ), 'comment', 'normal' );
}
public static function admin_menu() {
if ( class_exists( 'Jetpack' ) )
add_action( 'jetpack_admin_menu', array( 'Akismet_Admin', 'load_menu' ) );
else
self::load_menu();
}
public static function admin_head() {
if ( !current_user_can( 'manage_options' ) )
return;
}
public static function admin_plugin_settings_link( $links ) {
$settings_link = '<a href="'.esc_url( self::get_page_url() ).'">'.__('Settings', 'akismet').'</a>';
array_unshift( $links, $settings_link );
return $links;
}
public static function load_menu() {
if ( class_exists( 'Jetpack' ) )
$hook = add_submenu_page( 'jetpack', __( 'Akismet' , 'akismet'), __( 'Akismet' , 'akismet'), 'manage_options', 'akismet-key-config', array( 'Akismet_Admin', 'display_page' ) );
else
$hook = add_options_page( __('Akismet', 'akismet'), __('Akismet', 'akismet'), 'manage_options', 'akismet-key-config', array( 'Akismet_Admin', 'display_page' ) );
if ( version_compare( $GLOBALS['wp_version'], '3.3', '>=' ) ) {
add_action( "load-$hook", array( 'Akismet_Admin', 'admin_help' ) );
}
}
public static function load_resources() {
global $hook_suffix;
if ( in_array( $hook_suffix, array(
'index.php', # dashboard
'edit-comments.php',
'comment.php',
'post.php',
'settings_page_akismet-key-config',
'jetpack_page_akismet-key-config',
) ) ) {
wp_register_style( 'akismet.css', AKISMET__PLUGIN_URL . '_inc/akismet.css', array(), AKISMET_VERSION );
wp_enqueue_style( 'akismet.css');
wp_register_script( 'akismet.js', AKISMET__PLUGIN_URL . '_inc/akismet.js', array('jquery','postbox'), AKISMET_VERSION );
wp_enqueue_script( 'akismet.js' );
wp_localize_script( 'akismet.js', 'WPAkismet', array(
'comment_author_url_nonce' => wp_create_nonce( 'comment_author_url_nonce' ),
'strings' => array(
'Remove this URL' => __( 'Remove this URL' , 'akismet'),
'Removing...' => __( 'Removing...' , 'akismet'),
'URL removed' => __( 'URL removed' , 'akismet'),
'(undo)' => __( '(undo)' , 'akismet'),
'Re-adding...' => __( 'Re-adding...' , 'akismet'),
)
) );
}
}
/**
* Add help to the Akismet page
*
* @return false if not the Akismet page
*/
public static function admin_help() {
$current_screen = get_current_screen();
// Screen Content
if ( current_user_can( 'manage_options' ) ) {
if ( !Akismet::get_api_key() || ( isset( $_GET['view'] ) && $_GET['view'] == 'start' ) ) {
//setup page
$current_screen->add_help_tab(
array(
'id' => 'overview',
'title' => __( 'Overview' , 'akismet'),
'content' =>
'<p><strong>' . esc_html__( 'Akismet Setup' , 'akismet') . '</strong></p>' .
'<p>' . esc_html__( 'Akismet filters out spam, so you can focus on more important things.' , 'akismet') . '</p>' .
'<p>' . esc_html__( 'On this page, you are able to set up the Akismet plugin.' , 'akismet') . '</p>',
)
);
$current_screen->add_help_tab(
array(
'id' => 'setup-signup',
'title' => __( 'New to Akismet' , 'akismet'),
'content' =>
'<p><strong>' . esc_html__( 'Akismet Setup' , 'akismet') . '</strong></p>' .
'<p>' . esc_html__( 'You need to enter an API key to activate the Akismet service on your site.' , 'akismet') . '</p>' .
'<p>' . sprintf( __( 'Sign up for an account on %s to get an API Key.' , 'akismet'), '<a href="https://akismet.com/plugin-signup/" target="_blank">Akismet.com</a>' ) . '</p>',
)
);
$current_screen->add_help_tab(
array(
'id' => 'setup-manual',
'title' => __( 'Enter an API Key' , 'akismet'),
'content' =>
'<p><strong>' . esc_html__( 'Akismet Setup' , 'akismet') . '</strong></p>' .
'<p>' . esc_html__( 'If you already have an API key' , 'akismet') . '</p>' .
'<ol>' .
'<li>' . esc_html__( 'Copy and paste the API key into the text field.' , 'akismet') . '</li>' .
'<li>' . esc_html__( 'Click the Use this Key button.' , 'akismet') . '</li>' .
'</ol>',
)
);
}
elseif ( isset( $_GET['view'] ) && $_GET['view'] == 'stats' ) {
//stats page
$current_screen->add_help_tab(
array(
'id' => 'overview',
'title' => __( 'Overview' , 'akismet'),
'content' =>
'<p><strong>' . esc_html__( 'Akismet Stats' , 'akismet') . '</strong></p>' .
'<p>' . esc_html__( 'Akismet filters out spam, so you can focus on more important things.' , 'akismet') . '</p>' .
'<p>' . esc_html__( 'On this page, you are able to view stats on spam filtered on your site.' , 'akismet') . '</p>',
)
);
}
else {
//configuration page
$current_screen->add_help_tab(
array(
'id' => 'overview',
'title' => __( 'Overview' , 'akismet'),
'content' =>
'<p><strong>' . esc_html__( 'Akismet Configuration' , 'akismet') . '</strong></p>' .
'<p>' . esc_html__( 'Akismet filters out spam, so you can focus on more important things.' , 'akismet') . '</p>' .
'<p>' . esc_html__( 'On this page, you are able to enter/remove an API key, view account information and view spam stats.' , 'akismet') . '</p>',
)
);
$current_screen->add_help_tab(
array(
'id' => 'settings',
'title' => __( 'Settings' , 'akismet'),
'content' =>
'<p><strong>' . esc_html__( 'Akismet Configuration' , 'akismet') . '</strong></p>' .
'<p><strong>' . esc_html__( 'API Key' , 'akismet') . '</strong> - ' . esc_html__( 'Enter/remove an API key.' , 'akismet') . '</p>' .
'<p><strong>' . esc_html__( 'Comments' , 'akismet') . '</strong> - ' . esc_html__( 'Show the number of approved comments beside each comment author in the comments list page.' , 'akismet') . '</p>' .
'<p><strong>' . esc_html__( 'Strictness' , 'akismet') . '</strong> - ' . esc_html__( 'Choose to either discard the worst spam automatically or to always put all spam in spam folder.' , 'akismet') . '</p>',
)
);
$current_screen->add_help_tab(
array(
'id' => 'account',
'title' => __( 'Account' , 'akismet'),
'content' =>
'<p><strong>' . esc_html__( 'Akismet Configuration' , 'akismet') . '</strong></p>' .
'<p><strong>' . esc_html__( 'Subscription Type' , 'akismet') . '</strong> - ' . esc_html__( 'The Akismet subscription plan' , 'akismet') . '</p>' .
'<p><strong>' . esc_html__( 'Status' , 'akismet') . '</strong> - ' . esc_html__( 'The subscription status - active, cancelled or suspended' , 'akismet') . '</p>',
)
);
}
}
// Help Sidebar
$current_screen->set_help_sidebar(
'<p><strong>' . esc_html__( 'For more information:' , 'akismet') . '</strong></p>' .
'<p><a href="https://akismet.com/faq/" target="_blank">' . esc_html__( 'Akismet FAQ' , 'akismet') . '</a></p>' .
'<p><a href="https://akismet.com/support/" target="_blank">' . esc_html__( 'Akismet Support' , 'akismet') . '</a></p>'
);
}
public static function enter_api_key() {
if ( function_exists('current_user_can') && !current_user_can('manage_options') )
die(__('Cheatin&#8217; uh?', 'akismet'));
if ( !wp_verify_nonce( $_POST['_wpnonce'], self::NONCE ) )
return false;
foreach( array( 'akismet_strictness', 'akismet_show_user_comments_approved' ) as $option ) {
update_option( $option, isset( $_POST[$option] ) && (int) $_POST[$option] == 1 ? '1' : '0' );
}
if ( defined( 'WPCOM_API_KEY' ) )
return false; //shouldn't have option to save key if already defined
$new_key = preg_replace( '/[^a-f0-9]/i', '', $_POST['key'] );
$old_key = Akismet::get_api_key();
if ( empty( $new_key ) ) {
if ( !empty( $old_key ) ) {
delete_option( 'wordpress_api_key' );
self::$notices[] = 'new-key-empty';
}
}
elseif ( $new_key != $old_key ) {
self::save_key( $new_key );
}
return true;
}
public static function save_key( $api_key ) {
$key_status = Akismet::verify_key( $api_key );
if ( $key_status == 'valid' ) {
$akismet_user = self::get_akismet_user( $api_key );
if ( $akismet_user ) {
if ( in_array( $akismet_user->status, array( 'active', 'active-dunning', 'no-sub' ) ) )
update_option( 'wordpress_api_key', $api_key );
if ( $akismet_user->status == 'active' )
self::$notices['status'] = 'new-key-valid';
else
self::$notices['status'] = $akismet_user->status;
}
else
self::$notices['status'] = 'new-key-invalid';
}
elseif ( in_array( $key_status, array( 'invalid', 'failed' ) ) )
self::$notices['status'] = 'new-key-'.$key_status;
}
public static function dashboard_stats() {
if ( !function_exists('did_action') || did_action( 'rightnow_end' ) )
return; // We already displayed this info in the "Right Now" section
if ( !$count = get_option('akismet_spam_count') )
return;
global $submenu;
echo '<h3>' . esc_html( _x( 'Spam', 'comments' , 'akismet') ) . '</h3>';
echo '<p>'.sprintf( _n(
'<a href="%1$s">Akismet</a> has protected your site from <a href="%2$s">%3$s spam comment</a>.',
'<a href="%1$s">Akismet</a> has protected your site from <a href="%2$s">%3$s spam comments</a>.',
$count
, 'akismet'), 'https://akismet.com/wordpress/', esc_url( add_query_arg( array( 'page' => 'akismet-admin' ), admin_url( isset( $submenu['edit-comments.php'] ) ? 'edit-comments.php' : 'edit.php' ) ) ), number_format_i18n($count) ).'</p>';
}
// WP 2.5+
public static function rightnow_stats() {
if ( $count = get_option('akismet_spam_count') ) {
$intro = sprintf( _n(
'<a href="%1$s">Akismet</a> has protected your site from %2$s spam comment already. ',
'<a href="%1$s">Akismet</a> has protected your site from %2$s spam comments already. ',
$count
, 'akismet'), 'https://akismet.com/wordpress/', number_format_i18n( $count ) );
} else {
$intro = sprintf( __('<a href="%s">Akismet</a> blocks spam from getting to your blog. ', 'akismet'), 'https://akismet.com/wordpress/' );
}
$link = add_query_arg( array( 'comment_status' => 'spam' ), admin_url( 'edit-comments.php' ) );
if ( $queue_count = self::get_spam_count() ) {
$queue_text = sprintf( _n(
'There&#8217;s <a href="%2$s">%1$s comment</a> in your spam queue right now.',
'There are <a href="%2$s">%1$s comments</a> in your spam queue right now.',
$queue_count
, 'akismet'), number_format_i18n( $queue_count ), esc_url( $link ) );
} else {
$queue_text = sprintf( __( "There&#8217;s nothing in your <a href='%s'>spam queue</a> at the moment." , 'akismet'), esc_url( $link ) );
}
$text = $intro . '<br />' . $queue_text;
echo "<p class='akismet-right-now'>$text</p>\n";
}
public static function check_for_spam_button( $comment_status ) {
// The "Check for Spam" button should only appear when the page might be showing
// a comment with comment_approved=0, which means an un-trashed, un-spammed,
// not-yet-moderated comment.
if ( 'all' != $comment_status && 'moderated' != $comment_status ) {
return;
}
if ( function_exists('plugins_url') )
$link = add_query_arg( array( 'action' => 'akismet_recheck_queue' ), admin_url( 'admin.php' ) );
else
$link = add_query_arg( array( 'page' => 'akismet-admin', 'recheckqueue' => 'true', 'noheader' => 'true' ), admin_url( 'edit-comments.php' ) );
echo '</div><div class="alignleft"><a class="button-secondary checkforspam" href="' . esc_url( $link ) . '">' . esc_html__('Check for Spam', 'akismet') . '</a><span class="checkforspam-spinner"></span>';
}
public static function recheck_queue() {
global $wpdb;
Akismet::fix_scheduled_recheck();
if ( ! ( isset( $_GET['recheckqueue'] ) || ( isset( $_REQUEST['action'] ) && 'akismet_recheck_queue' == $_REQUEST['action'] ) ) )
return;
$paginate = '';
if ( isset( $_POST['limit'] ) && isset( $_POST['offset'] ) ) {
$paginate = $wpdb->prepare( " LIMIT %d OFFSET %d", array( $_POST['limit'], $_POST['offset'] ) );
}
$moderation = $wpdb->get_results( "SELECT * FROM {$wpdb->comments} WHERE comment_approved = '0'{$paginate}", ARRAY_A );
foreach ( (array) $moderation as $c ) {
$c['user_ip'] = $c['comment_author_IP'];
$c['user_agent'] = $c['comment_agent'];
$c['referrer'] = '';
$c['blog'] = get_bloginfo('url');
$c['blog_lang'] = get_locale();
$c['blog_charset'] = get_option('blog_charset');
$c['permalink'] = get_permalink($c['comment_post_ID']);
$c['user_role'] = '';
if ( isset( $c['user_ID'] ) )
$c['user_role'] = Akismet::get_user_roles($c['user_ID']);
if ( Akismet::is_test_mode() )
$c['is_test'] = 'true';
add_comment_meta( $c['comment_ID'], 'akismet_rechecking', true );
$response = Akismet::http_post( Akismet::build_query( $c ), 'comment-check' );
if ( 'true' == $response[1] ) {
wp_set_comment_status( $c['comment_ID'], 'spam' );
update_comment_meta( $c['comment_ID'], 'akismet_result', 'true' );
delete_comment_meta( $c['comment_ID'], 'akismet_error' );
delete_comment_meta( $c['comment_ID'], 'akismet_delayed_moderation_email' );
Akismet::update_comment_history( $c['comment_ID'], '', 'recheck-spam' );
} elseif ( 'false' == $response[1] ) {
update_comment_meta( $c['comment_ID'], 'akismet_result', 'false' );
delete_comment_meta( $c['comment_ID'], 'akismet_error' );
delete_comment_meta( $c['comment_ID'], 'akismet_delayed_moderation_email' );
Akismet::update_comment_history( $c['comment_ID'], '', 'recheck-ham' );
// abnormal result: error
} else {
update_comment_meta( $c['comment_ID'], 'akismet_result', 'error' );
Akismet::update_comment_history(
$c['comment_ID'],
'',
'recheck-error',
array( 'response' => substr( $response[1], 0, 50 ) )
);
}
delete_comment_meta( $c['comment_ID'], 'akismet_rechecking' );
}
if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
wp_send_json( array(
'processed' => count((array) $moderation),
));
}
else {
$redirect_to = isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : admin_url( 'edit-comments.php' );
wp_safe_redirect( $redirect_to );
exit;
}
}
// Adds an 'x' link next to author URLs, clicking will remove the author URL and show an undo link
public static function remove_comment_author_url() {
if ( !empty( $_POST['id'] ) && check_admin_referer( 'comment_author_url_nonce' ) ) {
$comment = get_comment( intval( $_POST['id'] ), ARRAY_A );
if ( $comment && current_user_can( 'edit_comment', $comment['comment_ID'] ) ) {
$comment['comment_author_url'] = '';
do_action( 'comment_remove_author_url' );
print( wp_update_comment( $comment ) );
die();
}
}
}
public static function add_comment_author_url() {
if ( !empty( $_POST['id'] ) && !empty( $_POST['url'] ) && check_admin_referer( 'comment_author_url_nonce' ) ) {
$comment = get_comment( intval( $_POST['id'] ), ARRAY_A );
if ( $comment && current_user_can( 'edit_comment', $comment['comment_ID'] ) ) {
$comment['comment_author_url'] = esc_url( $_POST['url'] );
do_action( 'comment_add_author_url' );
print( wp_update_comment( $comment ) );
die();
}
}
}
public static function comment_row_action( $a, $comment ) {
// failsafe for old WP versions
if ( !function_exists('add_comment_meta') )
return $a;
$akismet_result = get_comment_meta( $comment->comment_ID, 'akismet_result', true );
$akismet_error = get_comment_meta( $comment->comment_ID, 'akismet_error', true );
$user_result = get_comment_meta( $comment->comment_ID, 'akismet_user_result', true);
$comment_status = wp_get_comment_status( $comment->comment_ID );
$desc = null;
if ( $akismet_error ) {
$desc = __( 'Awaiting spam check' , 'akismet');
} elseif ( !$user_result || $user_result == $akismet_result ) {
// Show the original Akismet result if the user hasn't overridden it, or if their decision was the same
if ( $akismet_result == 'true' && $comment_status != 'spam' && $comment_status != 'trash' )
$desc = __( 'Flagged as spam by Akismet' , 'akismet');
elseif ( $akismet_result == 'false' && $comment_status == 'spam' )
$desc = __( 'Cleared by Akismet' , 'akismet');
} else {
$who = get_comment_meta( $comment->comment_ID, 'akismet_user', true );
if ( $user_result == 'true' )
$desc = sprintf( __('Flagged as spam by %s', 'akismet'), $who );
else
$desc = sprintf( __('Un-spammed by %s', 'akismet'), $who );
}
// add a History item to the hover links, just after Edit
if ( $akismet_result ) {
$b = array();
foreach ( $a as $k => $item ) {
$b[ $k ] = $item;
if (
$k == 'edit'
|| ( $k == 'unspam' && $GLOBALS['wp_version'] >= 3.4 )
) {
$b['history'] = '<a href="comment.php?action=editcomment&amp;c='.$comment->comment_ID.'#akismet-status" title="'. esc_attr__( 'View comment history' , 'akismet') . '"> '. esc_html__('History', 'akismet') . '</a>';
}
}
$a = $b;
}
if ( $desc )
echo '<span class="akismet-status" commentid="'.$comment->comment_ID.'"><a href="comment.php?action=editcomment&amp;c='.$comment->comment_ID.'#akismet-status" title="' . esc_attr__( 'View comment history' , 'akismet') . '">'.esc_html( $desc ).'</a></span>';
$show_user_comments = apply_filters( 'akismet_show_user_comments_approved', get_option('akismet_show_user_comments_approved') );
$show_user_comments = $show_user_comments === 'false' ? false : $show_user_comments; //option used to be saved as 'false' / 'true'
if ( $show_user_comments ) {
$comment_count = Akismet::get_user_comments_approved( $comment->user_id, $comment->comment_author_email, $comment->comment_author, $comment->comment_author_url );
$comment_count = intval( $comment_count );
echo '<span class="akismet-user-comment-count" commentid="'.$comment->comment_ID.'" style="display:none;"><br><span class="akismet-user-comment-counts">'. sprintf( esc_html( _n( '%s approved', '%s approved', $comment_count , 'akismet') ), number_format_i18n( $comment_count ) ) . '</span></span>';
}
return $a;
}
public static function comment_status_meta_box( $comment ) {
$history = Akismet::get_comment_history( $comment->comment_ID );
if ( $history ) {
echo '<div class="akismet-history" style="margin: 13px;">';
foreach ( $history as $row ) {
$time = date( 'D d M Y @ h:i:m a', $row['time'] ) . ' GMT';
$message = '';
if ( ! empty( $row['message'] ) ) {
// Old versions of Akismet stored the message as a literal string in the commentmeta.
// New versions don't do that for two reasons:
// 1) Save space.
// 2) The message can be translated into the current language of the blog, not stuck
// in the language of the blog when the comment was made.
$message = $row['message'];
}
// If possible, use a current translation.
switch ( $row['event'] ) {
case 'recheck-spam';
$message = __( 'Akismet re-checked and caught this comment as spam.', 'akismet' );
break;
case 'check-spam':
$message = __( 'Akismet caught this comment as spam.', 'akismet' );
break;
case 'recheck-ham':
$message = __( 'Akismet re-checked and cleared this comment.', 'akismet' );
break;
case 'check-ham':
$message = __( 'Akismet cleared this comment.', 'akismet' );
break;
case 'wp-blacklisted':
$message = __( 'Comment was caught by wp_blacklist_check.', 'akismet' );
break;
case 'report-spam':
if ( isset( $row['user'] ) ) {
$message = sprintf( __( '%s reported this comment as spam.', 'akismet' ), $row['user'] );
}
else if ( ! $message ) {
$message = __( 'This comment was reported as spam.', 'akismet' );
}
break;
case 'report-ham':
if ( isset( $row['user'] ) ) {
$message = sprintf( __( '%s reported this comment as not spam.', 'akismet' ), $row['user'] );
}
else if ( ! $message ) {
$message = __( 'This comment was reported as not spam.', 'akismet' );
}
break;
case 'cron-retry-spam':
$message = __( 'Akismet caught this comment as spam during an automatic retry.' , 'akismet');
break;
case 'cron-retry-ham':
$message = __( 'Akismet cleared this comment during an automatic retry.', 'akismet');
break;
case 'check-error':
if ( isset( $row['meta'], $row['meta']['response'] ) ) {
$message = sprintf( __( 'Akismet was unable to check this comment (response: %s) but will automatically retry later.', 'akismet'), $row['meta']['response'] );
}
break;
case 'recheck-error':
if ( isset( $row['meta'], $row['meta']['response'] ) ) {
$message = sprintf( __( 'Akismet was unable to recheck this comment (response: %s).', 'akismet'), $row['meta']['response'] );
}
break;
default:
if ( preg_match( '/^status-changed/', $row['event'] ) ) {
// Half of these used to be saved without the dash after 'status-changed'.
// See https://plugins.trac.wordpress.org/changeset/1150658/akismet/trunk
$new_status = preg_replace( '/^status-changed-?/', '', $row['event'] );
$message = sprintf( __( 'Comment status was changed to %s', 'akismet' ), $new_status );
}
else if ( preg_match( '/^status-/', $row['event'] ) ) {
$new_status = preg_replace( '/^status-/', '', $row['event'] );
if ( isset( $row['user'] ) ) {
$message = sprintf( __( '%1$s changed the comment status to %2$s.', 'akismet' ), $row['user'], $new_status );
}
}
break;
}
echo '<div style="margin-bottom: 13px;">';
echo '<span style="color: #999;" alt="' . $time . '" title="' . $time . '">' . sprintf( esc_html__('%s ago', 'akismet'), human_time_diff( $row['time'] ) ) . '</span>';
echo ' - ';
echo esc_html( $message );
echo '</div>';
}
echo '</div>';
}
}
public static function plugin_action_links( $links, $file ) {
if ( $file == plugin_basename( AKISMET__PLUGIN_URL . '/akismet.php' ) ) {
$links[] = '<a href="' . esc_url( self::get_page_url() ) . '">'.esc_html__( 'Settings' , 'akismet').'</a>';
}
return $links;
}
// Total spam in queue
// get_option( 'akismet_spam_count' ) is the total caught ever
public static function get_spam_count( $type = false ) {
global $wpdb;
if ( !$type ) { // total
$count = wp_cache_get( 'akismet_spam_count', 'widget' );
if ( false === $count ) {
if ( function_exists('wp_count_comments') ) {
$count = wp_count_comments();
$count = $count->spam;
} else {
$count = (int) $wpdb->get_var("SELECT COUNT(comment_ID) FROM {$wpdb->comments} WHERE comment_approved = 'spam'");
}
wp_cache_set( 'akismet_spam_count', $count, 'widget', 3600 );
}
return $count;
} elseif ( 'comments' == $type || 'comment' == $type ) { // comments
$type = '';
}
return (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(comment_ID) FROM {$wpdb->comments} WHERE comment_approved = 'spam' AND comment_type = %s", $type ) );
}
// Check connectivity between the WordPress blog and Akismet's servers.
// Returns an associative array of server IP addresses, where the key is the IP address, and value is true (available) or false (unable to connect).
public static function check_server_ip_connectivity() {
$servers = $ips = array();
// Some web hosts may disable this function
if ( function_exists('gethostbynamel') ) {
$ips = gethostbynamel( 'rest.akismet.com' );
if ( $ips && is_array($ips) && count($ips) ) {
$api_key = Akismet::get_api_key();
foreach ( $ips as $ip ) {
$response = Akismet::verify_key( $api_key, $ip );
// even if the key is invalid, at least we know we have connectivity
if ( $response == 'valid' || $response == 'invalid' )
$servers[$ip] = 'connected';
else
$servers[$ip] = $response ? $response : 'unable to connect';
}
}
}
return $servers;
}
// Simpler connectivity check
public static function check_server_connectivity($cache_timeout = 86400) {
$debug = array();
$debug[ 'PHP_VERSION' ] = PHP_VERSION;
$debug[ 'WORDPRESS_VERSION' ] = $GLOBALS['wp_version'];
$debug[ 'AKISMET_VERSION' ] = AKISMET_VERSION;
$debug[ 'AKISMET__PLUGIN_DIR' ] = AKISMET__PLUGIN_DIR;
$debug[ 'SITE_URL' ] = site_url();
$debug[ 'HOME_URL' ] = home_url();
$servers = get_option('akismet_available_servers');
if ( (time() - get_option('akismet_connectivity_time') < $cache_timeout) && $servers !== false ) {
$servers = self::check_server_ip_connectivity();
update_option('akismet_available_servers', $servers);
update_option('akismet_connectivity_time', time());
}
$response = wp_remote_get( 'http://rest.akismet.com/1.1/test' );
$debug[ 'gethostbynamel' ] = function_exists('gethostbynamel') ? 'exists' : 'not here';
$debug[ 'Servers' ] = $servers;
$debug[ 'Test Connection' ] = $response;
Akismet::log( $debug );
if ( $response && 'connected' == wp_remote_retrieve_body( $response ) )
return true;
return false;
}
// Check the server connectivity and store the available servers in an option.
public static function get_server_connectivity($cache_timeout = 86400) {
return self::check_server_connectivity( $cache_timeout );
}
public static function get_number_spam_waiting() {
global $wpdb;
return (int) $wpdb->get_var( "SELECT COUNT(*) FROM {$wpdb->commentmeta} WHERE meta_key = 'akismet_error'" );
}
public static function get_page_url( $page = 'config' ) {
$args = array( 'page' => 'akismet-key-config' );
if ( $page == 'stats' )
$args = array( 'page' => 'akismet-key-config', 'view' => 'stats' );
elseif ( $page == 'delete_key' )
$args = array( 'page' => 'akismet-key-config', 'view' => 'start', 'action' => 'delete-key', '_wpnonce' => wp_create_nonce( self::NONCE ) );
$url = add_query_arg( $args, class_exists( 'Jetpack' ) ? admin_url( 'admin.php' ) : admin_url( 'options-general.php' ) );
return $url;
}
public static function get_akismet_user( $api_key ) {
$akismet_user = false;
$subscription_verification = Akismet::http_post( Akismet::build_query( array( 'key' => $api_key, 'blog' => get_bloginfo( 'url' ) ) ), 'get-subscription' );
if ( ! empty( $subscription_verification[1] ) ) {
if ( 'invalid' !== $subscription_verification[1] ) {
$akismet_user = json_decode( $subscription_verification[1] );
}
}
return $akismet_user;
}
public static function get_stats( $api_key ) {
$stat_totals = array();
foreach( array( '6-months', 'all' ) as $interval ) {
$response = Akismet::http_post( Akismet::build_query( array( 'blog' => get_bloginfo( 'url' ), 'key' => $api_key, 'from' => $interval ) ), 'get-stats' );
if ( ! empty( $response[1] ) ) {
$stat_totals[$interval] = json_decode( $response[1] );
}
}
return $stat_totals;
}
public static function verify_wpcom_key( $api_key, $user_id, $extra = array() ) {
$akismet_account = Akismet::http_post( Akismet::build_query( array_merge( array(
'user_id' => $user_id,
'api_key' => $api_key,
'get_account_type' => 'true'
), $extra ) ), 'verify-wpcom-key' );
if ( ! empty( $akismet_account[1] ) )
$akismet_account = json_decode( $akismet_account[1] );
Akismet::log( compact( 'akismet_account' ) );
return $akismet_account;
}
public static function connect_jetpack_user() {
if ( $jetpack_user = self::get_jetpack_user() ) {
if ( isset( $jetpack_user['user_id'] ) && isset( $jetpack_user['api_key'] ) ) {
$akismet_user = self::verify_wpcom_key( $jetpack_user['api_key'], $jetpack_user['user_id'], array( 'action' => 'connect_jetpack_user' ) );
if ( is_object( $akismet_user ) ) {
self::save_key( $akismet_user->api_key );
return in_array( $akismet_user->status, array( 'active', 'active-dunning', 'no-sub' ) );
}
}
}
return false;
}
public static function display_alert() {
Akismet::view( 'notice', array(
'type' => 'alert',
'code' => (int) get_option( 'akismet_alert_code' ),
'msg' => get_option( 'akismet_alert_msg' )
) );
}
public static function display_spam_check_warning() {
Akismet::fix_scheduled_recheck();
if ( wp_next_scheduled('akismet_schedule_cron_recheck') > time() && self::get_number_spam_waiting() > 0 ) {
$link_text = apply_filters( 'akismet_spam_check_warning_link_text', sprintf( __( 'Please check your <a href="%s">Akismet configuration</a> and contact your web host if problems persist.', 'akismet'), esc_url( self::get_page_url() ) ) );
Akismet::view( 'notice', array( 'type' => 'spam-check', 'link_text' => $link_text ) );
}
}
public static function display_invalid_version() {
Akismet::view( 'notice', array( 'type' => 'version' ) );
}
public static function display_api_key_warning() {
Akismet::view( 'notice', array( 'type' => 'plugin' ) );
}
public static function display_page() {
if ( !Akismet::get_api_key() || ( isset( $_GET['view'] ) && $_GET['view'] == 'start' ) )
self::display_start_page();
elseif ( isset( $_GET['view'] ) && $_GET['view'] == 'stats' )
self::display_stats_page();
else
self::display_configuration_page();
}
public static function display_start_page() {
if ( isset( $_GET['action'] ) ) {
if ( $_GET['action'] == 'delete-key' ) {
if ( isset( $_GET['_wpnonce'] ) && wp_verify_nonce( $_GET['_wpnonce'], self::NONCE ) )
delete_option( 'wordpress_api_key' );
}
}
if ( $api_key = Akismet::get_api_key() && ( empty( self::$notices['status'] ) || 'existing-key-invalid' != self::$notices['status'] ) ) {
self::display_configuration_page();
return;
}
//the user can choose to auto connect their API key by clicking a button on the akismet done page
//if jetpack, get verified api key by using connected wpcom user id
//if no jetpack, get verified api key by using an akismet token
$akismet_user = false;
if ( isset( $_GET['token'] ) && preg_match('/^(\d+)-[0-9a-f]{20}$/', $_GET['token'] ) )
$akismet_user = self::verify_wpcom_key( '', '', array( 'token' => $_GET['token'] ) );
elseif ( $jetpack_user = self::get_jetpack_user() )
$akismet_user = self::verify_wpcom_key( $jetpack_user['api_key'], $jetpack_user['user_id'] );
if ( isset( $_GET['action'] ) ) {
if ( $_GET['action'] == 'save-key' ) {
if ( is_object( $akismet_user ) ) {
self::save_key( $akismet_user->api_key );
self::display_notice();
self::display_configuration_page();
return;
}
}
}
echo '<h2 class="ak-header">'.esc_html__('Akismet', 'akismet').'</h2>';
self::display_status();
Akismet::view( 'start', compact( 'akismet_user' ) );
}
public static function display_stats_page() {
Akismet::view( 'stats' );
}
public static function display_configuration_page() {
$api_key = Akismet::get_api_key();
$akismet_user = self::get_akismet_user( $api_key );
if ( ! $akismet_user ) {
// This could happen if the user's key became invalid after it was previously valid and successfully set up.
self::$notices['status'] = 'existing-key-invalid';
self::display_start_page();
return;
}
$stat_totals = self::get_stats( $api_key );
// If unset, create the new strictness option using the old discard option to determine its default
if ( get_option( 'akismet_strictness' ) === false )
add_option( 'akismet_strictness', (get_option('akismet_discard_month') === 'true' ? '1' : '0') );
if ( empty( self::$notices ) ) {
//show status
if ( ! empty( $stat_totals['all'] ) && isset( $stat_totals['all']->time_saved ) && $akismet_user->status == 'active' && $akismet_user->account_type == 'free-api-key' ) {
$time_saved = false;
if ( $stat_totals['all']->time_saved > 1800 ) {
$total_in_minutes = round( $stat_totals['all']->time_saved / 60 );
$total_in_hours = round( $total_in_minutes / 60 );
$total_in_days = round( $total_in_hours / 8 );
$cleaning_up = __( 'Cleaning up spam takes time.' , 'akismet');
if ( $total_in_days > 1 )
$time_saved = $cleaning_up . ' ' . sprintf( __( 'Akismet has saved you %s days!' , 'akismet'), number_format_i18n( $total_in_days ) );
elseif ( $total_in_hours > 1 )
$time_saved = $cleaning_up . ' ' . sprintf( __( 'Akismet has saved you %d hours!' , 'akismet'), $total_in_hours );
elseif ( $total_in_minutes >= 30 )
$time_saved = $cleaning_up . ' ' . sprintf( __( 'Akismet has saved you %d minutes!' , 'akismet'), $total_in_minutes );
}
Akismet::view( 'notice', array( 'type' => 'active-notice', 'time_saved' => $time_saved ) );
}
if ( !empty( $akismet_user->limit_reached ) && in_array( $akismet_user->limit_reached, array( 'yellow', 'red' ) ) ) {
Akismet::view( 'notice', array( 'type' => 'limit-reached', 'level' => $akismet_user->limit_reached ) );
}
}
if ( !isset( self::$notices['status'] ) && in_array( $akismet_user->status, array( 'cancelled', 'suspended', 'missing', 'no-sub' ) ) )
Akismet::view( 'notice', array( 'type' => $akismet_user->status ) );
Akismet::log( compact( 'stat_totals', 'akismet_user' ) );
Akismet::view( 'config', compact( 'api_key', 'akismet_user', 'stat_totals' ) );
}
public static function display_notice() {
global $hook_suffix;
if ( in_array( $hook_suffix, array( 'jetpack_page_akismet-key-config', 'settings_page_akismet-key-config', 'edit-comments.php' ) ) && (int) get_option( 'akismet_alert_code' ) > 0 ) {
Akismet::verify_key( Akismet::get_api_key() ); //verify that the key is still in alert state
if ( get_option( 'akismet_alert_code' ) > 0 )
self::display_alert();
}
elseif ( $hook_suffix == 'plugins.php' && !Akismet::get_api_key() ) {
self::display_api_key_warning();
}
elseif ( $hook_suffix == 'edit-comments.php' && wp_next_scheduled( 'akismet_schedule_cron_recheck' ) ) {
self::display_spam_check_warning();
}
elseif ( in_array( $hook_suffix, array( 'jetpack_page_akismet-key-config', 'settings_page_akismet-key-config' ) ) && Akismet::get_api_key() ) {
self::display_status();
}
}
public static function display_status() {
$type = '';
if ( !self::get_server_connectivity() )
$type = 'servers-be-down';
if ( !empty( $type ) )
Akismet::view( 'notice', compact( 'type' ) );
elseif ( !empty( self::$notices ) ) {
foreach ( self::$notices as $type )
Akismet::view( 'notice', compact( 'type' ) );
}
}
private static function get_jetpack_user() {
if ( !class_exists('Jetpack') )
return false;
Jetpack::load_xml_rpc_client();
$xml = new Jetpack_IXR_ClientMulticall( array( 'user_id' => get_current_user_id() ) );
$xml->addCall( 'wpcom.getUserID' );
$xml->addCall( 'akismet.getAPIKey' );
$xml->query();
Akismet::log( compact( 'xml' ) );
if ( !$xml->isError() ) {
$responses = $xml->getResponse();
if ( count( $responses ) > 1 ) {
$api_key = array_shift( $responses[0] );
$user_id = (int) array_shift( $responses[1] );
return compact( 'api_key', 'user_id' );
}
}
return false;
}
/**
* Some commentmeta isn't useful in an export file. Suppress it (when supported).
*
* @param bool $exclude
* @param string $key The meta key
* @param object $meta The meta object
* @return bool Whether to exclude this meta entry from the export.
*/
public static function exclude_commentmeta_from_export( $exclude, $key, $meta ) {
if ( in_array( $key, array( 'akismet_as_submitted', 'akismet_rechecking', 'akismet_delayed_moderation_email' ) ) ) {
return true;
}
return $exclude;
}
}

View File

@ -1,110 +0,0 @@
<?php
/**
* @package Akismet
*/
class Akismet_Widget extends WP_Widget {
function __construct() {
load_plugin_textdomain( 'akismet' );
parent::__construct(
'akismet_widget',
__( 'Akismet Widget' , 'akismet'),
array( 'description' => __( 'Display the number of spam comments Akismet has caught' , 'akismet') )
);
if ( is_active_widget( false, false, $this->id_base ) ) {
add_action( 'wp_head', array( $this, 'css' ) );
}
}
function css() {
?>
<style type="text/css">
.a-stats {
width: auto;
}
.a-stats a {
background: #7CA821;
background-image:-moz-linear-gradient(0% 100% 90deg,#5F8E14,#7CA821);
background-image:-webkit-gradient(linear,0% 0,0% 100%,from(#7CA821),to(#5F8E14));
border: 1px solid #5F8E14;
border-radius:3px;
color: #CFEA93;
cursor: pointer;
display: block;
font-weight: normal;
height: 100%;
-moz-border-radius:3px;
padding: 7px 0 8px;
text-align: center;
text-decoration: none;
-webkit-border-radius:3px;
width: 100%;
}
.a-stats a:hover {
text-decoration: none;
background-image:-moz-linear-gradient(0% 100% 90deg,#6F9C1B,#659417);
background-image:-webkit-gradient(linear,0% 0,0% 100%,from(#659417),to(#6F9C1B));
}
.a-stats .count {
color: #FFF;
display: block;
font-size: 15px;
line-height: 16px;
padding: 0 13px;
white-space: nowrap;
}
</style>
<?php
}
function form( $instance ) {
if ( $instance ) {
$title = $instance['title'];
}
else {
$title = __( 'Spam Blocked' , 'akismet');
}
?>
<p>
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php esc_html_e( 'Title:' , 'akismet'); ?></label>
<input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
</p>
<?php
}
function update( $new_instance, $old_instance ) {
$instance['title'] = strip_tags( $new_instance['title'] );
return $instance;
}
function widget( $args, $instance ) {
$count = get_option( 'akismet_spam_count' );
echo $args['before_widget'];
if ( ! empty( $instance['title'] ) ) {
echo $args['before_title'];
echo esc_html( $instance['title'] );
echo $args['after_title'];
}
?>
<div class="a-stats">
<a href="http://akismet.com" target="_blank" title=""><?php printf( _n( '<strong class="count">%1$s spam</strong> blocked by <strong>Akismet</strong>', '<strong class="count">%1$s spam</strong> blocked by <strong>Akismet</strong>', $count , 'akismet'), number_format_i18n( $count ) ); ?></a>
</div>
<?php
echo $args['after_widget'];
}
}
function akismet_register_widgets() {
register_widget( 'Akismet_Widget' );
}
add_action( 'widgets_init', 'akismet_register_widgets' );

File diff suppressed because it is too large Load Diff

View File

@ -1,2 +0,0 @@
<?php
# Silence is golden.

View File

@ -1,294 +0,0 @@
=== Akismet ===
Contributors: matt, ryan, andy, mdawaffe, tellyworth, josephscott, lessbloat, eoigal, cfinke, automattic, jgs
Tags: akismet, comments, spam, antispam, anti-spam, anti spam, comment moderation, comment spam, contact form spam, spam comments
Requires at least: 3.2
Tested up to: 4.3.1
Stable tag: 3.1.5
License: GPLv2 or later
Akismet checks your comments against the Akismet Web service to see if they look like spam or not.
== Description ==
Akismet checks your comments against the Akismet Web service to see if they look like spam or not and lets you review the spam it catches under your blog's "Comments" admin screen.
Major features in Akismet include:
* Automatically checks all comments and filters out the ones that look like spam.
* Each comment has a status history, so you can easily see which comments were caught or cleared by Akismet and which were spammed or unspammed by a moderator.
* URLs are shown in the comment body to reveal hidden or misleading links.
* Moderators can see the number of approved comments for each user.
* A discard feature that outright blocks the worst spam, saving you disk space and speeding up your site.
PS: You'll need an [Akismet.com API key](http://akismet.com/get/) to use it. Keys are free for personal blogs; paid subscriptions are available for businesses and commercial sites.
== Installation ==
Upload the Akismet plugin to your blog, Activate it, then enter your [Akismet.com API key](http://akismet.com/get/).
1, 2, 3: You're done!
== Changelog ==
= 3.1.5 =
*Release Date - 13 October 2015*
* Closes a potential XSS vulnerability.
= 3.1.4 =
*Release Date - 24 September 2015*
* Fixed a bug that was preventing some users from automatically connecting using Jetpack if they didn't have a current Akismet subscription.
* Fixed a bug that could cause comments caught as spam to be placed in the Pending queue.
* Error messages and instructions have been simplified to be more understandable.
* Link previews are enabled for all links inside comments, not just the author's website link.
= 3.1.3 =
*Release Date - 6 July 2015*
* Notify users when their account status changes after previously being successfully set up. This should help any users who are seeing blank Akismet settings screens.
= 3.1.2 =
*Release Date - 7 June 2015*
* Reduced the amount of space Akismet uses in the commentmeta table.
* Fixed a bug where some comments with quotes in the author name weren't getting history entries
* Pre-emptive security improvements to ensure that the Akismet plugin can't be used by attackers to compromise a WordPress installation.
* Better UI for the key entry field: allow whitespace to be included at the beginning or end of the key and strip it out automatically when the form is submitted.
* When deactivating the plugin, notify the Akismet API so the site can be marked as inactive.
* Clearer error messages.
= 3.1.1 =
*Release Date - 17th March, 2015*
* Improvements to the "Remove comment author URL" JavaScript
* Include the pingback pre-check from the 2.6 branch.
= 3.1 =
*Release Date - 11th March, 2015*
* Use HTTPS by default for all requests to Akismet.
* Fix for a situation where Akismet might strip HTML from a comment.
= 3.0.4 =
*Release Date - 11th December, 2014*
* Fix to make .htaccess compatible with Apache 2.4.
* Fix to allow removal of https author URLs.
* Fix to avoid stripping part of the author URL when removing and re-adding.
* Removed the "Check for Spam" button from the "Trash" and "Approved" queues, where it would have no effect.
* Allow automatic API key configuration when Jetpack is installed and connected to a WordPress.com account
= 3.0.3 =
*Release Date - 3rd November, 2014*
* Fix for sending the wrong data to delete_comment action that could have prevented old spam comments from being deleted.
* Added a filter to disable logging of Akismet debugging information.
* Added a filter for the maximum comment age when deleting old spam comments.
* Added a filter for the number per batch when deleting old spam comments.
* Removed the "Check for Spam" button from the Spam folder.
= 3.0.2 =
*Release Date - 18th August, 2014*
* Performance improvements.
* Fixed a bug that could truncate the comment data being sent to Akismet for checking.
= 3.0.1 =
*Release Date - 9th July, 2014*
* Removed dependency on PHP's fsockopen function
* Fix spam/ham reports to work when reported outside of the WP dashboard, e.g., from Notifications or the WP app
* Remove jQuery dependency for comment form JavaScript
* Remove unnecessary data from some Akismet comment meta
* Suspended keys will now result in all comments being put in moderation, not spam.
= 3.0.0 =
*Release Date - 15th April, 2014*
* Move Akismet to Settings menu
* Drop Akismet Stats menu
* Add stats snapshot to Akismet settings
* Add Akismet subscription details and status to Akismet settings
* Add contextual help for each page
* Improve Akismet setup to use Jetpack to automate plugin setup
* Fix "Check for Spam" to use AJAX to avoid page timing out
* Fix Akismet settings page to be responsive
* Drop legacy code
* Tidy up CSS and Javascript
* Replace the old discard setting with a new "discard pervasive spam" feature.
= 2.6.0 =
*Release Date - 18th March, 2014*
* Add ajax paging to the check for spam button to handle large volumes of comments
* Optimize javascript and add localization support
* Fix bug in link to spam comments from right now dashboard widget
* Fix bug with deleting old comments to avoid timeouts dealing with large volumes of comments
* Include X-Pingback-Forwarded-For header in outbound WordPress pingback verifications
* Add pre-check for pingbacks, to stop spam before an outbound verification request is made
= 2.5.9 =
*Release Date - 1st August, 2013*
* Update 'Already have a key' link to redirect page rather than depend on javascript
* Fix some non-translatable strings to be translatable
* Update Activation banner in plugins page to redirect user to Akismet config page
= 2.5.8 =
*Release Date - 20th January, 2013*
* Simplify the activation process for new users
* Remove the reporter_ip parameter
* Minor preventative security improvements
= 2.5.7 =
*Release Date - 13th December, 2012*
* FireFox Stats iframe preview bug
* Fix mshots preview when using https
* Add .htaccess to block direct access to files
* Prevent some PHP notices
* Fix Check For Spam return location when referrer is empty
* Fix Settings links for network admins
* Fix prepare() warnings in WP 3.5
= 2.5.6 =
*Release Date - 26th April, 2012*
* Prevent retry scheduling problems on sites where wp_cron is misbehaving
* Preload mshot previews
* Modernize the widget code
* Fix a bug where comments were not held for moderation during an error condition
* Improve the UX and display when comments are temporarily held due to an error
* Make the Check For Spam button force a retry when comments are held due to an error
* Handle errors caused by an invalid key
* Don't retry comments that are too old
* Improve error messages when verifying an API key
= 2.5.5 =
*Release Date - 11th January, 2012*
* Add nonce check for comment author URL remove action
* Fix the settings link
= 2.5.4 =
*Release Date - 5th January, 2012*
* Limit Akismet CSS and Javascript loading in wp-admin to just the pages that need it
* Added author URL quick removal functionality
* Added mShot preview on Author URL hover
* Added empty index.php to prevent directory listing
* Move wp-admin menu items under Jetpack, if it is installed
* Purge old Akismet comment meta data, default of 15 days
= 2.5.3 =
*Release Date - 8th Febuary, 2011*
* Specify the license is GPL v2 or later
* Fix a bug that could result in orphaned commentmeta entries
* Include hotfix for WordPress 3.0.5 filter issue
= 2.5.2 =
*Release Date - 14th January, 2011*
* Properly format the comment count for author counts
* Look for super admins on multisite installs when looking up user roles
* Increase the HTTP request timeout
* Removed padding for author approved count
* Fix typo in function name
* Set Akismet stats iframe height to fixed 2500px. Better to have one tall scroll bar than two side by side.
= 2.5.1 =
*Release Date - 17th December, 2010*
* Fix a bug that caused the "Auto delete" option to fail to discard comments correctly
* Remove the comment nonce form field from the 'Akismet Configuration' page in favor of using a filter, akismet_comment_nonce
* Fixed padding bug in "author" column of posts screen
* Added margin-top to "cleared by ..." badges on dashboard
* Fix possible error when calling akismet_cron_recheck()
* Fix more PHP warnings
* Clean up XHTML warnings for comment nonce
* Fix for possible condition where scheduled comment re-checks could get stuck
* Clean up the comment meta details after deleting a comment
* Only show the status badge if the comment status has been changed by someone/something other than Akismet
* Show a 'History' link in the row-actions
* Translation fixes
* Reduced font-size on author name
* Moved "flagged by..." notification to top right corner of comment container and removed heavy styling
* Hid "flagged by..." notification while on dashboard
= 2.5.0 =
*Release Date - 7th December, 2010*
* Track comment actions under 'Akismet Status' on the edit comment screen
* Fix a few remaining deprecated function calls ( props Mike Glendinning )
* Use HTTPS for the stats IFRAME when wp-admin is using HTTPS
* Use the WordPress HTTP class if available
* Move the admin UI code to a separate file, only loaded when needed
* Add cron retry feature, to replace the old connectivity check
* Display Akismet status badge beside each comment
* Record history for each comment, and display it on the edit page
* Record the complete comment as originally submitted in comment_meta, to use when reporting spam and ham
* Highlight links in comment content
* New option, "Show the number of comments you've approved beside each comment author."
* New option, "Use a nonce on the comment form."
= 2.4.0 =
*Release Date - 23rd August, 2010*
* Spell out that the license is GPLv2
* Fix PHP warnings
* Fix WordPress deprecated function calls
* Fire the delete_comment action when deleting comments
* Move code specific for older WP versions to legacy.php
* General code clean up
= 2.3.0 =
*Release Date - 5th June, 2010*
* Fix "Are you sure" nonce message on config screen in WPMU
* Fix XHTML compliance issue in sidebar widget
* Change author link; remove some old references to WordPress.com accounts
* Localize the widget title (core ticket #13879)
= 2.2.9 =
*Release Date - 2nd June, 2010*
* Eliminate a potential conflict with some plugins that may cause spurious reports
= 2.2.8 =
*Release Date - 27th May, 2010*
* Fix bug in initial comment check for ipv6 addresses
* Report comments as ham when they are moved from spam to moderation
* Report comments as ham when clicking undo after spam
* Use transition_comment_status action when available instead of older actions for spam/ham submissions
* Better diagnostic messages when PHP network functions are unavailable
* Better handling of comments by logged-in users
= 2.2.7 =
*Release Date - 17th December, 2009*
* Add a new AKISMET_VERSION constant
* Reduce the possibility of over-counting spam when another spam filter plugin is in use
* Disable the connectivity check when the API key is hard-coded for WPMU
= 2.2.6 =
*Release Date - 20th July, 2009*
* Fix a global warning introduced in 2.2.5
* Add changelog and additional readme.txt tags
* Fix an array conversion warning in some versions of PHP
* Support a new WPCOM_API_KEY constant for easier use with WordPress MU
= 2.2.5 =
*Release Date - 13th July, 2009*
* Include a new Server Connectivity diagnostic check, to detect problems caused by firewalls
= 2.2.4 =
*Release Date - 3rd June, 2009*
* Fixed a key problem affecting the stats feature in WordPress MU
* Provide additional blog information in Akismet API calls

View File

@ -1,220 +0,0 @@
<div class="wrap">
<h2><?php esc_html_e( 'Akismet' , 'akismet');?></h2>
<div class="have-key">
<?php if ( $stat_totals && isset( $stat_totals['all'] ) && (int) $stat_totals['all']->spam > 0 ) : ?>
<div class="new-snapshot stats">
<span style="float:right;margin:10px 15px -5px 0px">
<a href="<?php echo esc_url( Akismet_Admin::get_page_url( 'stats' ) ); ?>" class=""><?php esc_html_e( 'Summaries' , 'akismet');?></a>
</span>
<iframe allowtransparency="true" scrolling="no" frameborder="0" style="width: 100%; height: 215px; overflow: hidden;" src="<?php printf( '//akismet.com/web/1.0/snapshot.php?blog=%s&api_key=%s&height=180&locale=%s', urlencode( get_bloginfo('url') ), Akismet::get_api_key(), get_locale() );?>"></iframe>
<ul>
<li>
<h3><?php esc_html_e( 'Past six months' , 'akismet');?></h3>
<span><?php echo number_format( $stat_totals['6-months']->spam );?></span>
<?php esc_html_e( 'Spam blocked' , 'akismet');?>
</li>
<li>
<h3><?php esc_html_e( 'All time' , 'akismet');?></h3>
<span><?php echo number_format( $stat_totals['all']->spam );?></span>
<?php esc_html_e( 'Spam blocked' , 'akismet');?>
</li>
<li>
<h3><?php esc_html_e( 'Accuracy' , 'akismet');?></h3>
<span><?php echo $stat_totals['all']->accuracy; ?>%</span>
<?php printf(
esc_html(
_n( '%s missed spam, %s false positive', '%s missed spam, %s false positives', $stat_totals['all']->false_positives , 'akismet')
),
number_format( $stat_totals['all']->missed_spam ),
number_format( $stat_totals['all']->false_positives )
); ?>
</li>
</ul>
<div class="clearfix"></div>
</div>
<?php endif;?>
<?php if ( $akismet_user ):?>
<div id="wpcom-stats-meta-box-container" class="metabox-holder"><?php
wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false );
?>
<script type="text/javascript">
jQuery(document).ready( function($) {
jQuery('.if-js-closed').removeClass('if-js-closed').addClass('closed');
if(typeof postboxes !== 'undefined')
postboxes.add_postbox_toggles( 'plugins_page_akismet-key-config' );
});
</script>
<div class="postbox-container" style="width: 55%;margin-right: 10px;">
<div id="normal-sortables" class="meta-box-sortables ui-sortable">
<div id="referrers" class="postbox ">
<div class="handlediv" title="Click to toggle"><br></div>
<h3 class="hndle"><span><?php esc_html_e( 'Settings' , 'akismet');?></span></h3>
<form name="akismet_conf" id="akismet-conf" action="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>" method="POST">
<div class="inside">
<table cellspacing="0" class="akismet-settings">
<tbody>
<?php if ( !defined( 'WPCOM_API_KEY' ) ):?>
<tr>
<th class="akismet-api-key" width="10%" align="left" scope="row"><?php esc_html_e('API Key', 'akismet');?></th>
<td width="5%"/>
<td align="left">
<span class="api-key"><input id="key" name="key" type="text" size="15" value="<?php echo esc_attr( get_option('wordpress_api_key') ); ?>" class="regular-text code <?php echo $akismet_user->status;?>"></span>
</td>
</tr>
<?php endif; ?>
<?php if ( isset( $_GET['ssl_status'] ) ) { ?>
<tr>
<th align="left" scope="row"><?php esc_html_e( 'SSL Status', 'akismet' ); ?></th>
<td></td>
<td align="left">
<p>
<?php
if ( ! function_exists( 'wp_http_supports' ) ) {
?><b><?php esc_html_e( 'Disabled.', 'akismet' ); ?></b> <?php printf( esc_html( 'Your WordPress installation does not include the function %s; upgrade to the latest version of WordPress.', 'akismet' ), '<code>wp_http_supports</code>' ); ?><?php
}
else if ( ! wp_http_supports( array( 'ssl' ) ) ) {
?><b><?php esc_html_e( 'Disabled.', 'akismet' ); ?></b> <?php esc_html_e( 'Your Web server cannot make SSL requests; contact your Web host and ask them to add support for SSL requests.', 'akismet' ); ?><?php
}
else {
$ssl_disabled = get_option( 'akismet_ssl_disabled' );
if ( $ssl_disabled ) {
?><b><?php esc_html_e( 'Temporarily disabled.', 'akismet' ); ?></b> <?php esc_html_e( 'Akismet encountered a problem with a previous SSL request and disabled it temporarily. It will begin using SSL for requests again shortly.', 'akismet' ); ?><?php
}
else {
?><b><?php esc_html_e( 'Enabled.', 'akismet' ); ?></b> <?php esc_html_e( 'All systems functional.', 'akismet' ); ?><?php
}
}
?>
</p>
</td>
</tr>
<?php } ?>
<tr>
<th align="left" scope="row"><?php esc_html_e('Comments', 'akismet');?></th>
<td></td>
<td align="left">
<p>
<label for="akismet_show_user_comments_approved" title="<?php esc_attr_e( 'Show approved comments' , 'akismet'); ?>"><input name="akismet_show_user_comments_approved" id="akismet_show_user_comments_approved" value="1" type="checkbox" <?php checked('1', get_option('akismet_show_user_comments_approved')); ?>> <?php esc_html_e('Show the number of approved comments beside each comment author', 'akismet'); ?></label>
</p>
</td>
</tr>
<tr>
<th class="strictness" align="left" scope="row"><?php esc_html_e('Strictness', 'akismet'); ?></th>
<td></td>
<td align="left">
<fieldset><legend class="screen-reader-text"><span><?php esc_html_e('Akismet anti-spam strictness', 'akismet'); ?></span></legend>
<p><label for="akismet_strictness_1"><input type="radio" name="akismet_strictness" id="akismet_strictness_1" value="1" <?php checked('1', get_option('akismet_strictness')); ?> /> <?php esc_html_e('Silently discard the worst and most pervasive spam so I never see it.', 'akismet'); ?></label></p>
<p><label for="akismet_strictness_0"><input type="radio" name="akismet_strictness" id="akismet_strictness_0" value="0" <?php checked('0', get_option('akismet_strictness')); ?> /> <?php esc_html_e('Always put spam in the Spam folder for review.', 'akismet'); ?></label></p>
</fieldset>
<span class="note"><strong><?php esc_html_e('Note:', 'akismet');?></strong>
<?php
$delete_interval = max( 1, intval( apply_filters( 'akismet_delete_comment_interval', 15 ) ) );
printf(
_n(
'Spam in the <a href="%1$s">spam folder</a> older than 1 day is deleted automatically.',
'Spam in the <a href="%1$s">spam folder</a> older than %2$d days is deleted automatically.',
$delete_interval,
'akismet'
),
admin_url( 'edit-comments.php?comment_status=spam' ),
$delete_interval
);
?>
</td>
</tr>
</tbody>
</table>
</div>
<div id="major-publishing-actions">
<?php if ( !defined( 'WPCOM_API_KEY' ) ):?>
<div id="delete-action">
<a class="submitdelete deletion" href="<?php echo esc_url( Akismet_Admin::get_page_url( 'delete_key' ) ); ?>"><?php esc_html_e('Disconnect this account', 'akismet'); ?></a>
</div>
<?php endif; ?>
<?php wp_nonce_field(Akismet_Admin::NONCE) ?>
<div id="publishing-action">
<input type="hidden" name="action" value="enter-key">
<input type="submit" name="submit" id="submit" class="button button-primary" value="<?php esc_attr_e('Save Changes', 'akismet');?>">
</div>
<div class="clear"></div>
</div>
</form>
</div>
</div>
</div>
<div class="postbox-container" style="width:44%;">
<div id="normal-sortables" class="meta-box-sortables ui-sortable">
<div id="referrers" class="postbox ">
<div class="handlediv" title="Click to toggle"><br></div>
<h3 class="hndle"><span><?php esc_html_e( 'Account' , 'akismet');?></span></h3>
<div class="inside">
<table cellspacing="0">
<tbody>
<tr>
<th scope="row" align="left"><?php esc_html_e( 'Subscription Type' , 'akismet');?></th>
<td width="5%"/>
<td align="left">
<span><?php echo $akismet_user->account_name; ?></span>
</td>
</tr>
<tr>
<th scope="row" align="left"><?php esc_html_e( 'Status' , 'akismet');?></th>
<td width="5%"/>
<td align="left">
<span><?php
if ( 'cancelled' == $akismet_user->status ) :
esc_html_e( 'Cancelled', 'akismet' );
elseif ( 'suspended' == $akismet_user->status ) :
esc_html_e( 'Suspended', 'akismet' );
elseif ( 'missing' == $akismet_user->status ) :
esc_html_e( 'Missing', 'akismet' );
elseif ( 'no-sub' == $akismet_user->status ) :
esc_html_e( 'No Subscription Found', 'akismet' );
else :
esc_html_e( 'Active', 'akismet' );
endif; ?></span>
</td>
</tr>
<?php if ( $akismet_user->next_billing_date ) : ?>
<tr>
<th scope="row" align="left"><?php esc_html_e( 'Next Billing Date' , 'akismet');?></th>
<td width="5%"/>
<td align="left">
<span><?php echo date( 'F j, Y', $akismet_user->next_billing_date ); ?></span>
</td>
</tr>
<?php endif; ?>
</tbody>
</table>
</div>
<div id="major-publishing-actions">
<div id="publishing-action">
<?php Akismet::view( 'get', array( 'text' => ( $akismet_user->account_type == 'free-api-key' && $akismet_user->status == 'active' ? __( 'Upgrade' , 'akismet') : __( 'Change' , 'akismet') ), 'redirect' => 'upgrade' ) ); ?>
</div>
<div class="clear"></div>
</div>
</div>
</div>
</div>
</div>
<?php endif;?>
</div>
</div>

View File

@ -1,6 +0,0 @@
<form name="akismet_activate" action="https://akismet.com/get/" method="POST" target="_blank">
<input type="hidden" name="passback_url" value="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>"/>
<input type="hidden" name="blog" value="<?php echo esc_url( get_bloginfo('url') ); ?>"/>
<input type="hidden" name="redirect" value="<?php echo isset( $redirect ) ? $redirect : 'plugin-signup'; ?>"/>
<input type="submit" class="<?php echo isset( $classes ) && count( $classes ) > 0 ? implode( ' ', $classes ) : 'button button-primary';?>" value="<?php echo esc_attr( $text ); ?>"/>
</form>

View File

@ -1,119 +0,0 @@
<?php if ( $type == 'plugin' ) :?>
<div class="updated" style="padding: 0; margin: 0; border: none; background: none;">
<style type="text/css">
.akismet_activate{min-width:825px;border:1px solid #4F800D;padding:5px;margin:15px 0;background:#83AF24;background-image:-webkit-gradient(linear,0% 0,80% 100%,from(#83AF24),to(#4F800D));background-image:-moz-linear-gradient(80% 100% 120deg,#4F800D,#83AF24);-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:3px;position:relative;overflow:hidden}.akismet_activate .aa_a{position:absolute;top:-5px;right:10px;font-size:140px;color:#769F33;font-family:Georgia, "Times New Roman", Times, serif;z-index:1}.akismet_activate .aa_button{font-weight:bold;border:1px solid #029DD6;border-top:1px solid #06B9FD;font-size:15px;text-align:center;padding:9px 0 8px 0;color:#FFF;background:#029DD6;background-image:-webkit-gradient(linear,0% 0,0% 100%,from(#029DD6),to(#0079B1));background-image:-moz-linear-gradient(0% 100% 90deg,#0079B1,#029DD6);-moz-border-radius:2px;border-radius:2px;-webkit-border-radius:2px}.akismet_activate .aa_button:hover{text-decoration:none !important;border:1px solid #029DD6;border-bottom:1px solid #00A8EF;font-size:15px;text-align:center;padding:9px 0 8px 0;color:#F0F8FB;background:#0079B1;background-image:-webkit-gradient(linear,0% 0,0% 100%,from(#0079B1),to(#0092BF));background-image:-moz-linear-gradient(0% 100% 90deg,#0092BF,#0079B1);-moz-border-radius:2px;border-radius:2px;-webkit-border-radius:2px}.akismet_activate .aa_button_border{border:1px solid #006699;-moz-border-radius:2px;border-radius:2px;-webkit-border-radius:2px;background:#029DD6;background-image:-webkit-gradient(linear,0% 0,0% 100%,from(#029DD6),to(#0079B1));background-image:-moz-linear-gradient(0% 100% 90deg,#0079B1,#029DD6)}.akismet_activate .aa_button_container{cursor:pointer;display:inline-block;background:#DEF1B8;padding:5px;-moz-border-radius:2px;border-radius:2px;-webkit-border-radius:2px;width:266px}.akismet_activate .aa_description{position:absolute;top:22px;left:285px;margin-left:25px;color:#E5F2B1;font-size:15px;z-index:1000}.akismet_activate .aa_description strong{color:#FFF;font-weight:normal}
</style>
<form name="akismet_activate" action="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>" method="POST">
<div class="akismet_activate">
<div class="aa_a">A</div>
<div class="aa_button_container" onclick="document.akismet_activate.submit();">
<div class="aa_button_border">
<div class="aa_button"><?php esc_html_e('Activate your Akismet account', 'akismet');?></div>
</div>
</div>
<div class="aa_description"><?php _e('<strong>Almost done</strong> - activate Akismet and say goodbye to spam', 'akismet');?></div>
</div>
</form>
</div>
<?php elseif ( $type == 'spam-check' ) :?>
<div id="akismet-warning" class="updated fade">
<p><strong><?php esc_html_e( 'Akismet has detected a problem.', 'akismet' );?></strong></p>
<p><?php printf( __( 'Some comments have not yet been checked for spam by Akismet. They have been temporarily held for moderation and will automatically be rechecked later.', 'akismet' ) ); ?></p>
<?php if ( $link_text ) { ?>
<p><?php echo $link_text; ?></p>
<?php } ?>
</div>
<?php elseif ( $type == 'version' ) :?>
<div id="akismet-warning" class="updated fade"><p><strong><?php printf( esc_html__('Akismet %s requires WordPress 3.0 or higher.', 'akismet'), AKISMET_VERSION);?></strong> <?php printf(__('Please <a href="%1$s">upgrade WordPress</a> to a current version, or <a href="%2$s">downgrade to version 2.4 of the Akismet plugin</a>.', 'akismet'), 'https://codex.wordpress.org/Upgrading_WordPress', 'https://wordpress.org/extend/plugins/akismet/download/');?></p></div>
<?php elseif ( $type == 'alert' ) :?>
<div class='error'>
<p><strong><?php printf( esc_html__( 'Akismet Error Code: %s', 'akismet' ), $code ); ?></strong></p>
<p><?php echo esc_html( $msg ); ?></p>
<p><?php
/* translators: the placeholder is a clickable URL that leads to more information regarding an error code. */
printf( esc_html__( 'For more information: %s' , 'akismet'), '<a href="https://akismet.com/errors/' . $code . '">https://akismet.com/errors/' . $code . '</a>' );
?>
</p>
</div>
<?php elseif ( $type == 'missing-functions' ) :?>
<div class="wrap alert critical">
<h3 class="key-status failed"><?php esc_html_e('Network functions are disabled.', 'akismet'); ?></h3>
<p class="description"><?php printf( __('Your web host or server administrator has disabled PHP&#8217;s <code>gethostbynamel</code> function. <strong>Akismet cannot work correctly until this is fixed.</strong> Please contact your web host or firewall administrator and give them <a href="%s" target="_blank">this information about Akismet&#8217;s system requirements</a>.', 'akismet'), 'http://blog.akismet.com/akismet-hosting-faq/'); ?></p>
</div>
<?php elseif ( $type == 'servers-be-down' ) :?>
<div class="wrap alert critical">
<h3 class="key-status failed"><?php esc_html_e("Akismet can&#8217;t connect to your site.", 'akismet'); ?></h3>
<p class="description"><?php printf( __('Your firewall may be blocking Akismet. Please contact your host and refer to <a href="%s" target="_blank">our guide about firewalls</a>.', 'akismet'), 'http://blog.akismet.com/akismet-hosting-faq/'); ?></p>
</div>
<?php elseif ( $type == 'active-dunning' ) :?>
<div class="wrap alert critical">
<h3 class="key-status"><?php esc_html_e("Please update your payment information.", 'akismet'); ?></h3>
<p class="description"><?php printf( __('We cannot process your payment. Please <a href="%s" target="_blank">update your payment details</a>.', 'akismet'), 'https://akismet.com/account/'); ?></p>
</div>
<?php elseif ( $type == 'cancelled' ) :?>
<div class="wrap alert critical">
<h3 class="key-status"><?php esc_html_e("Your Akismet plan has been cancelled.", 'akismet'); ?></h3>
<p class="description"><?php printf( __('Please visit your <a href="%s" target="_blank">Akismet account page</a> to reactivate your subscription.', 'akismet'), 'https://akismet.com/account/'); ?></p>
</div>
<?php elseif ( $type == 'suspended' ) :?>
<div class="wrap alert critical">
<h3 class="key-status failed"><?php esc_html_e("Your Akismet subscription is suspended.", 'akismet'); ?></h3>
<p class="description"><?php printf( __('Please contact <a href="%s" target="_blank">Akismet support</a> for assistance.', 'akismet'), 'https://akismet.com/contact/'); ?></p>
</div>
<?php elseif ( $type == 'active-notice' && $time_saved ) :?>
<div class="wrap alert active">
<h3 class="key-status"><?php echo esc_html( $time_saved ); ?></h3>
<p class="description"><?php printf( __('You can help us fight spam and upgrade your account by <a href="%s" target="_blank">contributing a token amount</a>.', 'akismet'), 'https://akismet.com/account/upgrade/'); ?></p>
</div>
<?php elseif ( $type == 'missing' ) :?>
<div class="wrap alert critical">
<h3 class="key-status failed"><?php esc_html_e( 'There is a problem with your API key.', 'akismet'); ?></h3>
<p class="description"><?php printf( __('Please contact <a href="%s" target="_blank">Akismet support</a> for assistance.', 'akismet'), 'https://akismet.com/contact/'); ?></p>
</div>
<?php elseif ( $type == 'no-sub' ) :?>
<div class="wrap alert critical">
<h3 class="key-status failed"><?php esc_html_e( 'You don&#8217;t have an Akismet plan.', 'akismet'); ?></h3>
<p class="description">
<?php printf( __( 'In 2012, Akismet began using subscription plans for all accounts (even free ones). A plan has not been assigned to your account, and we&#8217;d appreciate it if you&#8217;d <a href="%s" target="_blank">sign into your account</a> and choose one.', 'akismet'), 'https://akismet.com/account/upgrade/' ); ?>
<br /><br />
<?php printf( __( 'Please <a href="%s" target="_blank">contact our support team</a> with any questions.', 'akismet' ), 'https://akismet.com/contact/' ); ?>
</p>
</div>
<?php elseif ( $type == 'new-key-valid' ) :?>
<div class="wrap alert active">
<h3 class="key-status"><?php esc_html_e('Akismet is now activated. Happy blogging!', 'akismet'); ?></h3>
</div>
<?php elseif ( $type == 'new-key-invalid' ) :?>
<div class="wrap alert critical">
<h3 class="key-status"><?php esc_html_e( 'The key you entered is invalid. Please double-check it.' , 'akismet'); ?></h3>
</div>
<?php elseif ( $type == 'existing-key-invalid' ) :?>
<div class="wrap alert critical">
<h3 class="key-status"><?php esc_html_e( 'Your API key is no longer valid. Please enter a new key or contact support@akismet.com.' , 'akismet'); ?></h3>
</div>
<?php elseif ( $type == 'new-key-failed' ) :?>
<div class="wrap alert critical">
<h3 class="key-status"><?php esc_html_e( 'The API key you entered could not be verified.' , 'akismet'); ?></h3>
<p class="description"><?php printf( __('The connection to akismet.com could not be established. Please refer to <a href="%s" target="_blank">our guide about firewalls</a> and check your server configuration.', 'akismet'), 'http://blog.akismet.com/akismet-hosting-faq/'); ?></p>
</div>
<?php elseif ( $type == 'limit-reached' && in_array( $level, array( 'yellow', 'red' ) ) ) :?>
<div class="wrap alert critical">
<?php if ( $level == 'yellow' ): ?>
<h3 class="key-status failed"><?php esc_html_e( 'You&#8217;re using your Akismet key on more sites than your Pro subscription allows.', 'akismet' ); ?></h3>
<p class="description">
<?php printf( __( 'Your Pro subscription allows the use of Akismet on only one site. Please <a href="%s" target="_blank">purchase additional Pro subscriptions</a> or upgrade to an Enterprise subscription that allows the use of Akismet on unlimited sites.', 'akismet' ), 'http://docs.akismet.com/billing/add-more-sites/' ); ?>
<br /><br />
<?php printf( __( 'Please <a href="%s" target="_blank">contact our support team</a> with any questions.', 'akismet' ), 'https://akismet.com/contact/'); ?>
</p>
<?php elseif ( $level == 'red' ): ?>
<h3 class="key-status failed"><?php esc_html_e( 'You&#8217;re using Akismet on far too many sites for your Pro subscription.', 'akismet' ); ?></h3>
<p class="description">
<?php printf( __( 'To continue your service, <a href="%s" target="_blank">upgrade to an Enterprise subscription</a>, which covers an unlimited number of sites.', 'akismet'), 'https://akismet.com/account/upgrade/' ); ?></p>
<br /><br />
<?php printf( __( 'Please <a href="%s" target="_blank">contact our support team</a> with any questions.', 'akismet' ), 'https://akismet.com/contact/'); ?></p>
</p>
<?php endif; ?>
</div>
<?php endif;?>

View File

@ -1,97 +0,0 @@
<div class="no-key config-wrap"><?php
if ( $akismet_user && in_array( $akismet_user->status, array( 'active', 'active-dunning', 'no-sub', 'missing', 'cancelled', 'suspended' ) ) ) :
if ( in_array( $akismet_user->status, array( 'no-sub', 'missing' ) ) ) :?>
<p><?php esc_html_e('Akismet eliminates spam from your site. Register below to get started.', 'akismet'); ?></p>
<div class="activate-highlight activate-option">
<div class="option-description">
<strong class="small-heading"><?php esc_html_e('Connected via Jetpack', 'akismet'); ?></strong>
<?php echo esc_html( $akismet_user->user_email ); ?>
</div>
<form name="akismet_activate" id="akismet_activate" action="https://akismet.com/get/" method="post" class="right" target="_blank">
<input type="hidden" name="passback_url" value="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>"/>
<input type="hidden" name="blog" value="<?php echo esc_url( get_bloginfo('url') ); ?>"/>
<input type="hidden" name="auto-connect" value="<?php echo $akismet_user->ID;?>"/>
<input type="hidden" name="redirect" value="plugin-signup"/>
<input type="submit" class="button button-primary" value="<?php esc_attr_e( 'Register for Akismet' , 'akismet'); ?>"/>
</form>
</div>
<?php elseif ( $akismet_user->status == 'cancelled' ) :?>
<p><?php esc_html_e('Akismet eliminates spam from your site.', 'akismet'); ?></p>
<div class="activate-highlight activate-option">
<div class="option-description" style="width:75%;">
<strong class="small-heading"><?php esc_html_e('Connected via Jetpack', 'akismet'); ?></strong>
<?php printf( esc_html__( 'Your subscription for %s is cancelled' , 'akismet'), $akismet_user->user_email ); ?>
</div>
<form name="akismet_activate" id="akismet_activate" action="https://akismet.com/get/" method="post" class="right" target="_blank">
<input type="hidden" name="passback_url" value="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>"/>
<input type="hidden" name="blog" value="<?php echo esc_url( get_bloginfo('url') ); ?>"/>
<input type="hidden" name="user_id" value="<?php echo $akismet_user->ID;?>"/>
<input type="hidden" name="redirect" value="upgrade"/>
<input type="submit" class="button button-primary" value="<?php esc_attr_e( 'Reactivate Akismet' , 'akismet'); ?>"/>
</form>
</div>
<?php elseif ( $akismet_user->status == 'suspended' ) : ?>
<p><?php esc_html_e('Akismet eliminates spam from your site.', 'akismet'); ?></p>
<div class="activate-highlight centered activate-option">
<strong class="small-heading"><?php esc_html_e( 'Connected via Jetpack' , 'akismet'); ?></strong>
<h3 class="alert-text"><?php printf( esc_html__( 'Your subscription for %s is suspended' , 'akismet'), $akismet_user->user_email ); ?></h3>
<p><?php esc_html_e('No worries! Get in touch and we&#8217;ll sort this out.', 'akismet'); ?></p>
<a href="https://akismet.com/contact" class="button button-primary"><?php esc_html_e( 'Contact Akismet support' , 'akismet'); ?></a>
</div>
<?php else : // ask do they want to use akismet account found using jetpack wpcom connection ?>
<p style="margin-right:10px"><?php esc_html_e('Akismet eliminates spam from your site. To set up Akismet, select one of the options below.', 'akismet'); ?></p>
<div class="activate-highlight activate-option">
<div class="option-description">
<strong class="small-heading"><?php esc_html_e('Connected via Jetpack', 'akismet'); ?></strong>
<?php echo esc_html( $akismet_user->user_email ); ?>
</div>
<form name="akismet_use_wpcom_key" action="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>" method="post" id="akismet-activate" class="right">
<input type="hidden" name="key" value="<?php echo esc_attr( $akismet_user->api_key );?>"/>
<input type="hidden" name="action" value="enter-key">
<?php wp_nonce_field( Akismet_Admin::NONCE ) ?>
<input type="submit" class="button button-primary" value="<?php esc_attr_e( 'Use this account' , 'akismet'); ?>"/>
</form>
</div>
<?php endif;?>
<div class="activate-highlight secondary activate-option">
<div class="option-description">
<strong><?php esc_html_e('Sign up for a plan with a different email address', 'akismet'); ?></strong>
<p><?php esc_html_e('Use this option to use Akismet independently of your Jetpack connection.', 'akismet'); ?></p>
</div>
<?php Akismet::view( 'get', array( 'text' => __( 'Sign up with a different email address' , 'akismet'), 'classes' => array( 'right', 'button', 'button-secondary' ) ) ); ?>
</div>
<div class="activate-highlight secondary activate-option">
<div class="option-description">
<strong><?php esc_html_e('Enter an API key', 'akismet'); ?></strong>
<p><?php esc_html_e('Already have your key? Enter it here.', 'akismet'); ?></p>
</div>
<form action="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>" method="post" id="akismet-enter-api-key" class="right">
<input id="key" name="key" type="text" size="15" value="" class="regular-text code">
<input type="hidden" name="action" value="enter-key">
<?php wp_nonce_field( Akismet_Admin::NONCE ) ?>
<input type="submit" name="submit" id="submit" class="button button-secondary" value="<?php esc_attr_e('Use this key', 'akismet');?>">
</form>
</div>
<?php else :?>
<p><?php esc_html_e('Akismet eliminates spam from your site. To set up Akismet, select one of the options below.', 'akismet'); ?></p>
<div class="activate-highlight activate-option">
<div class="option-description">
<strong><?php esc_html_e( 'Activate Akismet' , 'akismet');?></strong>
<p><?php esc_html_e('Log in or sign up now.', 'akismet'); ?></p>
</div>
<?php Akismet::view( 'get', array( 'text' => __( 'Get your API key' , 'akismet'), 'classes' => array( 'right', 'button', 'button-primary' ) ) ); ?>
</div>
<div class="activate-highlight secondary activate-option">
<div class="option-description">
<strong><?php esc_html_e('Manually enter an API key', 'akismet'); ?></strong>
<p><?php esc_html_e('If you already know your API key.', 'akismet'); ?></p>
</div>
<form action="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>" method="post" id="akismet-enter-api-key" class="right">
<input id="key" name="key" type="text" size="15" value="<?php echo esc_attr( Akismet::get_api_key() ); ?>" class="regular-text code">
<input type="hidden" name="action" value="enter-key">
<?php wp_nonce_field( Akismet_Admin::NONCE ); ?>
<input type="submit" name="submit" id="submit" class="button button-secondary" value="<?php esc_attr_e('Use this key', 'akismet');?>">
</form>
</div><?php
endif;?>
</div>

View File

@ -1,4 +0,0 @@
<div class="wrap">
<h2><?php esc_html_e( 'Akismet Stats' , 'akismet');?><?php if ( !isset( $hide_settings_link ) ): ?> <a href="<?php echo esc_url( Akismet_Admin::get_page_url() );?>" class="add-new-h2"><?php esc_html_e( 'Settings' , 'akismet');?></a><?php endif;?></h2>
<iframe src="<?php echo esc_url( sprintf( '//akismet.com/web/1.0/user-stats.php?blog=%s&api_key=%s&locale=%s', urlencode( get_bloginfo('url') ), Akismet::get_api_key(), get_locale() ) ); ?>" width="100%" height="2500px" frameborder="0" id="akismet-stats-frame"></iframe>
</div>

View File

@ -1,17 +0,0 @@
<fieldset>
<legend class="screen-reader-text">
<span><?php esc_html_e( 'Akismet anti-spam strictness', 'akismet' ); ?></span>
</legend>
<p>
<label for="akismet_strictness_1">
<input type="radio" name="akismet_strictness" id="akismet_strictness_1" value="1" <?php checked( '1', get_option( 'akismet_strictness' ) ); ?> />
<?php esc_html_e( 'Strict: silently discard the worst and most pervasive spam.', 'akismet' ); ?>
</label>
</p>
<p>
<label for="akismet_strictness_0">
<input type="radio" name="akismet_strictness" id="akismet_strictness_0" value="0" <?php checked( '0', get_option( 'akismet_strictness' ) ); ?> />
<?php esc_html_e( 'Safe: always put spam in the Spam folder for review.', 'akismet' ); ?>
</label>
</p>
</fieldset>

View File

@ -1,213 +0,0 @@
<?php
global $wpcom_api_key, $akismet_api_host, $akismet_api_port;
$wpcom_api_key = defined( 'WPCOM_API_KEY' ) ? constant( 'WPCOM_API_KEY' ) : '';
$akismet_api_host = Akismet::get_api_key() . '.rest.akismet.com';
$akismet_api_port = 80;
function akismet_test_mode() {
return Akismet::is_test_mode();
}
function akismet_http_post( $request, $host, $path, $port = 80, $ip = null ) {
$path = str_replace( '/1.1/', '', $path );
return Akismet::http_post( $request, $path, $ip );
}
function akismet_microtime() {
return Akismet::_get_microtime();
}
function akismet_delete_old() {
return Akismet::delete_old_comments();
}
function akismet_delete_old_metadata() {
return Akismet::delete_old_comments_meta();
}
function akismet_check_db_comment( $id, $recheck_reason = 'recheck_queue' ) {
return Akismet::check_db_comment( $id, $recheck_reason );
}
function akismet_rightnow() {
if ( !class_exists( 'Akismet_Admin' ) )
return false;
return Akismet_Admin::rightnow_stats();
}
function akismet_admin_init() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_version_warning() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_load_js_and_css() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_nonce_field( $action = -1 ) {
return wp_nonce_field( $action );
}
function akismet_plugin_action_links( $links, $file ) {
return Akismet_Admin::plugin_action_links( $links, $file );
}
function akismet_conf() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_stats_display() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_stats() {
return Akismet_Admin::dashboard_stats();
}
function akismet_admin_warnings() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_comment_row_action( $a, $comment ) {
return Akismet_Admin::comment_row_actions( $a, $comment );
}
function akismet_comment_status_meta_box( $comment ) {
return Akismet_Admin::comment_status_meta_box( $comment );
}
function akismet_comments_columns( $columns ) {
_deprecated_function( __FUNCTION__, '3.0' );
return $columns;
}
function akismet_comment_column_row( $column, $comment_id ) {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_text_add_link_callback( $m ) {
return Akismet_Admin::text_add_link_callback( $m );
}
function akismet_text_add_link_class( $comment_text ) {
return Akismet_Admin::text_add_link_class( $comment_text );
}
function akismet_check_for_spam_button( $comment_status ) {
return Akismet_Admin::check_for_spam_button( $comment_status );
}
function akismet_submit_nonspam_comment( $comment_id ) {
return Akismet::submit_nonspam_comment( $comment_id );
}
function akismet_submit_spam_comment( $comment_id ) {
return Akismet::submit_spam_comment( $comment_id );
}
function akismet_transition_comment_status( $new_status, $old_status, $comment ) {
return Akismet::transition_comment_status( $new_status, $old_status, $comment );
}
function akismet_spam_count( $type = false ) {
return Akismet_Admin::get_spam_count( $type );
}
function akismet_recheck_queue() {
return Akismet_Admin::recheck_queue();
}
function akismet_remove_comment_author_url() {
return Akismet_Admin::remove_comment_author_url();
}
function akismet_add_comment_author_url() {
return Akismet_Admin::add_comment_author_url();
}
function akismet_check_server_connectivity() {
return Akismet_Admin::check_server_connectivity();
}
function akismet_get_server_connectivity( $cache_timeout = 86400 ) {
return Akismet_Admin::get_server_connectivity( $cache_timeout );
}
function akismet_server_connectivity_ok() {
_deprecated_function( __FUNCTION__, '3.0' );
return true;
}
function akismet_admin_menu() {
return Akismet_Admin::admin_menu();
}
function akismet_load_menu() {
return Akismet_Admin::load_menu();
}
function akismet_init() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_get_key() {
return Akismet::get_api_key();
}
function akismet_check_key_status( $key, $ip = null ) {
return Akismet::check_key_status( $key, $ip );
}
function akismet_update_alert( $response ) {
return Akismet::update_alert( $response );
}
function akismet_verify_key( $key, $ip = null ) {
return Akismet::verify_key( $key, $ip );
}
function akismet_get_user_roles( $user_id ) {
return Akismet::get_user_roles( $user_id );
}
function akismet_result_spam( $approved ) {
return Akismet::comment_is_spam( $approved );
}
function akismet_result_hold( $approved ) {
return Akismet::comment_needs_moderation( $approved );
}
function akismet_get_user_comments_approved( $user_id, $comment_author_email, $comment_author, $comment_author_url ) {
return Akismet::get_user_comments_approved( $user_id, $comment_author_email, $comment_author, $comment_author_url );
}
function akismet_update_comment_history( $comment_id, $message, $event = null ) {
return Akismet::update_comment_history( $comment_id, $message, $event );
}
function akismet_get_comment_history( $comment_id ) {
return Akismet::get_comment_history( $comment_id );
}
function akismet_cmp_time( $a, $b ) {
return Akismet::_cmp_time( $a, $b );
}
function akismet_auto_check_update_meta( $id, $comment ) {
return Akismet::auto_check_update_meta( $id, $comment );
}
function akismet_auto_check_comment( $commentdata ) {
return Akismet::auto_check_comment( $commentdata );
}
function akismet_get_ip_address() {
return Akismet::get_ip_address();
}
function akismet_cron_recheck() {
return Akismet::cron_recheck();
}
function akismet_add_comment_nonce() {
return Akismet::add_comment_nonce( $post_id );
}
function akismet_fix_scheduled_recheck() {
return Akismet::fix_scheduled_recheck();
}
function akismet_spam_comments() {
_deprecated_function( __FUNCTION__, '3.0' );
return array();
}
function akismet_spam_totals() {
_deprecated_function( __FUNCTION__, '3.0' );
return array();
}
function akismet_manage_page() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_caught() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function redirect_old_akismet_urls() {
_deprecated_function( __FUNCTION__, '3.0' );
}
function akismet_kill_proxy_check( $option ) {
_deprecated_function( __FUNCTION__, '3.0' );
return 0;
}
function akismet_pingback_forwarded_for( $r, $url ) {
return Akismet::pingback_forwarded_for( $r, $url );
}
function akismet_pre_check_pingback( $method ) {
return Akismet::pre_check_pingback( $method );
}

View File

@ -1,2 +0,0 @@
<?php
// Silence is golden.

View File

@ -1,47 +0,0 @@
pre.prettyprint {
padding: 10px 15px !important;
border: none !important;
}
.prettyprint,
pre.prettyprint {
background-color: #272822;
border: 1px solid #272822;
overflow: hidden;
padding: 8px;
}
.prettyprint.linenums,
pre.prettyprint.linenums {
-webkit-box-shadow: inset 40px 0 0 #39382E, inset 41px 0 0 #464741;
-moz-box-shadow: inset 40px 0 0 #39382E, inset 41px 0 0 #464741;
box-shadow: inset 40px 0 0 #39382E, inset 41px 0 0 #464741;
}
.prettyprint.linenums ol,
pre.prettyprint.linenums ol {
margin: 0 0 0 33px;
}
.prettyprint.linenums ol li,
pre.prettyprint.linenums ol li {
padding-left: 12px;
color: #bebec5;
line-height: 20px;
margin-left: 0;
list-style: decimal;
}
.prettyprint .com { color: #93a1a1; }
.prettyprint .lit { color: #AE81FF; }
.prettyprint .pun,
.prettyprint .opn,
.prettyprint .clo { color: #F8F8F2; }
.prettyprint .fun { color: #dc322f; }
.prettyprint .str,
.prettyprint .atv { color: #E6DB74; }
.prettyprint .kwd,
.prettyprint .tag { color: #F92659; }
.prettyprint .typ,
.prettyprint .atn,
.prettyprint .dec,
.prettyprint .var { color: #A6E22E; }
.prettyprint .pln { color: #66D9EF; }

View File

@ -1,14 +0,0 @@
i.mce-i-icon {
font: normal 20px/1 'dashicons';
padding: 0;
vertical-align: top;
speak: none;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
margin-left: -2px;
padding-right: 2px;
}
pre{margin:15px auto;font:12px/20px 'courier new';border:1px solid #d6d6d6;border-left-width:4px;background:#fbfbfb;padding:10px 15px}

View File

@ -1,34 +0,0 @@
!function(){var r=null;
(function(){function X(e){function j(){try{J.doScroll("left")}catch(e){P(j,50);return}w("poll")}function w(j){if(!(j.type=="readystatechange"&&x.readyState!="complete")&&((j.type=="load"?n:x)[z](i+j.type,w,!1),!m&&(m=!0)))e.call(n,j.type||j)}var Y=x.addEventListener,m=!1,C=!0,t=Y?"addEventListener":"attachEvent",z=Y?"removeEventListener":"detachEvent",i=Y?"":"on";if(x.readyState=="complete")e.call(n,"lazy");else{if(x.createEventObject&&J.doScroll){try{C=!n.frameElement}catch(A){}C&&j()}x[t](i+"DOMContentLoaded",
w,!1);x[t](i+"readystatechange",w,!1);n[t](i+"load",w,!1)}}function Q(){S&&X(function(){var e=K.length;$(e?function(){for(var j=0;j<e;++j)(function(e){P(function(){n.exports[K[e]].apply(n,arguments)},0)})(j)}:void 0)})}for(var n=window,P=n.setTimeout,x=document,J=x.documentElement,L=x.head||x.getElementsByTagName("head")[0]||J,z="",A=x.scripts,m=A.length;--m>=0;){var M=A[m],T=M.src.match(/^[^#?]*\/run_prettify\.js(\?[^#]*)?(?:#.*)?$/);if(T){z=T[1]||"";M.parentNode.removeChild(M);break}}var S=!0,D=
[],N=[],K=[];z.replace(/[&?]([^&=]+)=([^&]+)/g,function(e,j,w){w=decodeURIComponent(w);j=decodeURIComponent(j);j=="autorun"?S=!/^[0fn]/i.test(w):j=="lang"?D.push(w):j=="skin"?N.push(w):j=="callback"&&K.push(w)});m=0;for(z=D.length;m<z;++m)(function(){var e=x.createElement("script");e.onload=e.onerror=e.onreadystatechange=function(){if(e&&(!e.readyState||/loaded|complete/.test(e.readyState)))e.onerror=e.onload=e.onreadystatechange=r,--R,R||P(Q,0),e.parentNode&&e.parentNode.removeChild(e),e=r};e.type=
"text/javascript";e.src="https://google-code-prettify.googlecode.com/svn/loader/lang-"+encodeURIComponent(D[m])+".js";L.insertBefore(e,L.firstChild)})(D[m]);for(var R=D.length,A=[],m=0,z=N.length;m<z;++m)A.push("https://google-code-prettify.googlecode.com/svn/loader/skins/"+encodeURIComponent(N[m])+".css");A.push("https://google-code-prettify.googlecode.com/svn/loader/prettify.css");(function(e){function j(m){if(m!==w){var n=x.createElement("link");n.rel="stylesheet";n.type="text/css";if(m+1<w)n.error=
n.onerror=function(){j(m+1)};n.href=e[m];L.appendChild(n)}}var w=e.length;j(0)})(A);var $=function(){window.PR_SHOULD_USE_CONTINUATION=!0;var e;(function(){function j(a){function d(f){var b=f.charCodeAt(0);if(b!==92)return b;var a=f.charAt(1);return(b=i[a])?b:"0"<=a&&a<="7"?parseInt(f.substring(1),8):a==="u"||a==="x"?parseInt(f.substring(2),16):f.charCodeAt(1)}function h(f){if(f<32)return(f<16?"\\x0":"\\x")+f.toString(16);f=String.fromCharCode(f);return f==="\\"||f==="-"||f==="]"||f==="^"?"\\"+f:
f}function b(f){var b=f.substring(1,f.length-1).match(/\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\[0-3][0-7]{0,2}|\\[0-7]{1,2}|\\[\S\s]|[^\\]/g),f=[],a=b[0]==="^",c=["["];a&&c.push("^");for(var a=a?1:0,g=b.length;a<g;++a){var k=b[a];if(/\\[bdsw]/i.test(k))c.push(k);else{var k=d(k),o;a+2<g&&"-"===b[a+1]?(o=d(b[a+2]),a+=2):o=k;f.push([k,o]);o<65||k>122||(o<65||k>90||f.push([Math.max(65,k)|32,Math.min(o,90)|32]),o<97||k>122||f.push([Math.max(97,k)&-33,Math.min(o,122)&-33]))}}f.sort(function(f,a){return f[0]-
a[0]||a[1]-f[1]});b=[];g=[];for(a=0;a<f.length;++a)k=f[a],k[0]<=g[1]+1?g[1]=Math.max(g[1],k[1]):b.push(g=k);for(a=0;a<b.length;++a)k=b[a],c.push(h(k[0])),k[1]>k[0]&&(k[1]+1>k[0]&&c.push("-"),c.push(h(k[1])));c.push("]");return c.join("")}function e(f){for(var a=f.source.match(/\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g),c=a.length,d=[],g=0,k=0;g<c;++g){var o=a[g];o==="("?++k:"\\"===o.charAt(0)&&(o=+o.substring(1))&&(o<=k?d[o]=-1:a[g]=h(o))}for(g=
1;g<d.length;++g)-1===d[g]&&(d[g]=++j);for(k=g=0;g<c;++g)o=a[g],o==="("?(++k,d[k]||(a[g]="(?:")):"\\"===o.charAt(0)&&(o=+o.substring(1))&&o<=k&&(a[g]="\\"+d[o]);for(g=0;g<c;++g)"^"===a[g]&&"^"!==a[g+1]&&(a[g]="");if(f.ignoreCase&&F)for(g=0;g<c;++g)o=a[g],f=o.charAt(0),o.length>=2&&f==="["?a[g]=b(o):f!=="\\"&&(a[g]=o.replace(/[A-Za-z]/g,function(a){a=a.charCodeAt(0);return"["+String.fromCharCode(a&-33,a|32)+"]"}));return a.join("")}for(var j=0,F=!1,l=!1,I=0,c=a.length;I<c;++I){var p=a[I];if(p.ignoreCase)l=
!0;else if(/[a-z]/i.test(p.source.replace(/\\u[\da-f]{4}|\\x[\da-f]{2}|\\[^UXux]/gi,""))){F=!0;l=!1;break}}for(var i={b:8,t:9,n:10,v:11,f:12,r:13},q=[],I=0,c=a.length;I<c;++I){p=a[I];if(p.global||p.multiline)throw Error(""+p);q.push("(?:"+e(p)+")")}return RegExp(q.join("|"),l?"gi":"g")}function m(a,d){function h(a){var c=a.nodeType;if(c==1){if(!b.test(a.className)){for(c=a.firstChild;c;c=c.nextSibling)h(c);c=a.nodeName.toLowerCase();if("br"===c||"li"===c)e[l]="\n",F[l<<1]=j++,F[l++<<1|1]=a}}else if(c==
3||c==4)c=a.nodeValue,c.length&&(c=d?c.replace(/\r\n?/g,"\n"):c.replace(/[\t\n\r ]+/g," "),e[l]=c,F[l<<1]=j,j+=c.length,F[l++<<1|1]=a)}var b=/(?:^|\s)nocode(?:\s|$)/,e=[],j=0,F=[],l=0;h(a);return{a:e.join("").replace(/\n$/,""),d:F}}function n(a,d,h,b){d&&(a={a:d,e:a},h(a),b.push.apply(b,a.g))}function x(a){for(var d=void 0,h=a.firstChild;h;h=h.nextSibling)var b=h.nodeType,d=b===1?d?a:h:b===3?S.test(h.nodeValue)?a:d:d;return d===a?void 0:d}function C(a,d){function h(a){for(var l=a.e,j=[l,"pln"],c=
0,p=a.a.match(e)||[],m={},q=0,f=p.length;q<f;++q){var B=p[q],y=m[B],u=void 0,g;if(typeof y==="string")g=!1;else{var k=b[B.charAt(0)];if(k)u=B.match(k[1]),y=k[0];else{for(g=0;g<i;++g)if(k=d[g],u=B.match(k[1])){y=k[0];break}u||(y="pln")}if((g=y.length>=5&&"lang-"===y.substring(0,5))&&!(u&&typeof u[1]==="string"))g=!1,y="src";g||(m[B]=y)}k=c;c+=B.length;if(g){g=u[1];var o=B.indexOf(g),H=o+g.length;u[2]&&(H=B.length-u[2].length,o=H-g.length);y=y.substring(5);n(l+k,B.substring(0,o),h,j);n(l+k+o,g,A(y,
g),j);n(l+k+H,B.substring(H),h,j)}else j.push(l+k,y)}a.g=j}var b={},e;(function(){for(var h=a.concat(d),l=[],i={},c=0,p=h.length;c<p;++c){var m=h[c],q=m[3];if(q)for(var f=q.length;--f>=0;)b[q.charAt(f)]=m;m=m[1];q=""+m;i.hasOwnProperty(q)||(l.push(m),i[q]=r)}l.push(/[\S\s]/);e=j(l)})();var i=d.length;return h}function t(a){var d=[],h=[];a.tripleQuotedStrings?d.push(["str",/^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,
r,"'\""]):a.multiLineStrings?d.push(["str",/^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/,r,"'\"`"]):d.push(["str",/^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,r,"\"'"]);a.verbatimStrings&&h.push(["str",/^@"(?:[^"]|"")*(?:"|$)/,r]);var b=a.hashComments;b&&(a.cStyleComments?(b>1?d.push(["com",/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,r,"#"]):d.push(["com",/^#(?:(?:define|e(?:l|nd)if|else|error|ifn?def|include|line|pragma|undef|warning)\b|[^\n\r]*)/,
r,"#"]),h.push(["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/,r])):d.push(["com",/^#[^\n\r]*/,r,"#"]));a.cStyleComments&&(h.push(["com",/^\/\/[^\n\r]*/,r]),h.push(["com",/^\/\*[\S\s]*?(?:\*\/|$)/,r]));if(b=a.regexLiterals){var e=(b=b>1?"":"\n\r")?".":"[\\S\\s]";h.push(["lang-regex",RegExp("^(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<<?=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*("+
("/(?=[^/*"+b+"])(?:[^/\\x5B\\x5C"+b+"]|\\x5C"+e+"|\\x5B(?:[^\\x5C\\x5D"+b+"]|\\x5C"+e+")*(?:\\x5D|$))+/")+")")])}(b=a.types)&&h.push(["typ",b]);b=(""+a.keywords).replace(/^ | $/g,"");b.length&&h.push(["kwd",RegExp("^(?:"+b.replace(/[\s,]+/g,"|")+")\\b"),r]);d.push(["pln",/^\s+/,r," \r\n\t\u00a0"]);b="^.[^\\s\\w.$@'\"`/\\\\]*";a.regexLiterals&&(b+="(?!s*/)");h.push(["lit",/^@[$_a-z][\w$@]*/i,r],["typ",/^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/,r],["pln",/^[$_a-z][\w$@]*/i,r],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,
r,"0123456789"],["pln",/^\\[\S\s]?/,r],["pun",RegExp(b),r]);return C(d,h)}function z(a,d,h){function b(a){var c=a.nodeType;if(c==1&&!j.test(a.className))if("br"===a.nodeName)e(a),a.parentNode&&a.parentNode.removeChild(a);else for(a=a.firstChild;a;a=a.nextSibling)b(a);else if((c==3||c==4)&&h){var d=a.nodeValue,i=d.match(m);if(i)c=d.substring(0,i.index),a.nodeValue=c,(d=d.substring(i.index+i[0].length))&&a.parentNode.insertBefore(l.createTextNode(d),a.nextSibling),e(a),c||a.parentNode.removeChild(a)}}
function e(a){function b(a,c){var d=c?a.cloneNode(!1):a,f=a.parentNode;if(f){var f=b(f,1),h=a.nextSibling;f.appendChild(d);for(var e=h;e;e=h)h=e.nextSibling,f.appendChild(e)}return d}for(;!a.nextSibling;)if(a=a.parentNode,!a)return;for(var a=b(a.nextSibling,0),d;(d=a.parentNode)&&d.nodeType===1;)a=d;c.push(a)}for(var j=/(?:^|\s)nocode(?:\s|$)/,m=/\r\n?|\n/,l=a.ownerDocument,i=l.createElement("li");a.firstChild;)i.appendChild(a.firstChild);for(var c=[i],p=0;p<c.length;++p)b(c[p]);d===(d|0)&&c[0].setAttribute("value",
d);var n=l.createElement("ol");n.className="linenums";for(var d=Math.max(0,d-1|0)||0,p=0,q=c.length;p<q;++p)i=c[p],i.className="L"+(p+d)%10,i.firstChild||i.appendChild(l.createTextNode("\u00a0")),n.appendChild(i);a.appendChild(n)}function i(a,d){for(var h=d.length;--h>=0;){var b=d[h];U.hasOwnProperty(b)?V.console&&console.warn("cannot override language handler %s",b):U[b]=a}}function A(a,d){if(!a||!U.hasOwnProperty(a))a=/^\s*</.test(d)?"default-markup":"default-code";return U[a]}function D(a){var d=
a.h;try{var h=m(a.c,a.i),b=h.a;a.a=b;a.d=h.d;a.e=0;A(d,b)(a);var e=/\bMSIE\s(\d+)/.exec(navigator.userAgent),e=e&&+e[1]<=8,d=/\n/g,i=a.a,j=i.length,h=0,l=a.d,n=l.length,b=0,c=a.g,p=c.length,t=0;c[p]=j;var q,f;for(f=q=0;f<p;)c[f]!==c[f+2]?(c[q++]=c[f++],c[q++]=c[f++]):f+=2;p=q;for(f=q=0;f<p;){for(var x=c[f],y=c[f+1],u=f+2;u+2<=p&&c[u+1]===y;)u+=2;c[q++]=x;c[q++]=y;f=u}c.length=q;var g=a.c,k;if(g)k=g.style.display,g.style.display="none";try{for(;b<n;){var o=l[b+2]||j,H=c[t+2]||j,u=Math.min(o,H),E=l[b+
1],W;if(E.nodeType!==1&&(W=i.substring(h,u))){e&&(W=W.replace(d,"\r"));E.nodeValue=W;var Z=E.ownerDocument,s=Z.createElement("span");s.className=c[t+1];var z=E.parentNode;z.replaceChild(s,E);s.appendChild(E);h<o&&(l[b+1]=E=Z.createTextNode(i.substring(u,o)),z.insertBefore(E,s.nextSibling))}h=u;h>=o&&(b+=2);h>=H&&(t+=2)}}finally{if(g)g.style.display=k}}catch(v){V.console&&console.log(v&&v.stack||v)}}var V=window,G=["break,continue,do,else,for,if,return,while"],O=[[G,"auto,case,char,const,default,double,enum,extern,float,goto,inline,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],
"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],J=[O,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,delegate,dynamic_cast,explicit,export,friend,generic,late_check,mutable,namespace,nullptr,property,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],K=[O,"abstract,assert,boolean,byte,extends,final,finally,implements,import,instanceof,interface,null,native,package,strictfp,super,synchronized,throws,transient"],
L=[K,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,internal,into,is,let,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where"],O=[O,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],M=[G,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"],
N=[G,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],R=[G,"as,assert,const,copy,drop,enum,extern,fail,false,fn,impl,let,log,loop,match,mod,move,mut,priv,pub,pure,ref,self,static,struct,true,trait,type,unsafe,use"],G=[G,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],Q=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/,
S=/\S/,T=t({keywords:[J,L,O,"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",M,N,G],hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),U={};i(T,["default-code"]);i(C([],[["pln",/^[^<?]+/],["dec",/^<!\w[^>]*(?:>|$)/],["com",/^<\!--[\S\s]*?(?:--\>|$)/],["lang-",/^<\?([\S\s]+?)(?:\?>|$)/],["lang-",/^<%([\S\s]+?)(?:%>|$)/],["pun",/^(?:<[%?]|[%?]>)/],["lang-",
/^<xmp\b[^>]*>([\S\s]+?)<\/xmp\b[^>]*>/i],["lang-js",/^<script\b[^>]*>([\S\s]*?)(<\/script\b[^>]*>)/i],["lang-css",/^<style\b[^>]*>([\S\s]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);i(C([["pln",/^\s+/,r," \t\r\n"],["atv",/^(?:"[^"]*"?|'[^']*'?)/,r,"\"'"]],[["tag",/^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],["atn",/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],["pun",/^[/<->]+/],
["lang-js",/^on\w+\s*=\s*"([^"]+)"/i],["lang-js",/^on\w+\s*=\s*'([^']+)'/i],["lang-js",/^on\w+\s*=\s*([^\s"'>]+)/i],["lang-css",/^style\s*=\s*"([^"]+)"/i],["lang-css",/^style\s*=\s*'([^']+)'/i],["lang-css",/^style\s*=\s*([^\s"'>]+)/i]]),["in.tag"]);i(C([],[["atv",/^[\S\s]+/]]),["uq.val"]);i(t({keywords:J,hashComments:!0,cStyleComments:!0,types:Q}),["c","cc","cpp","cxx","cyc","m"]);i(t({keywords:"null,true,false"}),["json"]);i(t({keywords:L,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:Q}),
["cs"]);i(t({keywords:K,cStyleComments:!0}),["java"]);i(t({keywords:G,hashComments:!0,multiLineStrings:!0}),["bash","bsh","csh","sh"]);i(t({keywords:M,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py","python"]);i(t({keywords:"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",hashComments:!0,multiLineStrings:!0,regexLiterals:2}),["perl","pl","pm"]);i(t({keywords:N,
hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb","ruby"]);i(t({keywords:O,cStyleComments:!0,regexLiterals:!0}),["javascript","js"]);i(t({keywords:"all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,throw,true,try,unless,until,when,while,yes",hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]);i(t({keywords:R,cStyleComments:!0,multilineStrings:!0}),["rc","rs","rust"]);
i(C([],[["str",/^[\S\s]+/]]),["regex"]);var X=V.PR={createSimpleLexer:C,registerLangHandler:i,sourceDecorator:t,PR_ATTRIB_NAME:"atn",PR_ATTRIB_VALUE:"atv",PR_COMMENT:"com",PR_DECLARATION:"dec",PR_KEYWORD:"kwd",PR_LITERAL:"lit",PR_NOCODE:"nocode",PR_PLAIN:"pln",PR_PUNCTUATION:"pun",PR_SOURCE:"src",PR_STRING:"str",PR_TAG:"tag",PR_TYPE:"typ",prettyPrintOne:function(a,d,e){var b=document.createElement("div");b.innerHTML="<pre>"+a+"</pre>";b=b.firstChild;e&&z(b,e,!0);D({h:d,j:e,c:b,i:1});return b.innerHTML},
prettyPrint:e=e=function(a,d){function e(){for(var b=V.PR_SHOULD_USE_CONTINUATION?c.now()+250:Infinity;p<j.length&&c.now()<b;p++){for(var d=j[p],m=k,l=d;l=l.previousSibling;){var n=l.nodeType,s=(n===7||n===8)&&l.nodeValue;if(s?!/^\??prettify\b/.test(s):n!==3||/\S/.test(l.nodeValue))break;if(s){m={};s.replace(/\b(\w+)=([\w%+\-.:]+)/g,function(a,b,c){m[b]=c});break}}l=d.className;if((m!==k||f.test(l))&&!w.test(l)){n=!1;for(s=d.parentNode;s;s=s.parentNode)if(g.test(s.tagName)&&s.className&&f.test(s.className)){n=
!0;break}if(!n){d.className+=" prettyprinted";n=m.lang;if(!n){var n=l.match(q),A;if(!n&&(A=x(d))&&u.test(A.tagName))n=A.className.match(q);n&&(n=n[1])}if(y.test(d.tagName))s=1;else var s=d.currentStyle,v=i.defaultView,s=(s=s?s.whiteSpace:v&&v.getComputedStyle?v.getComputedStyle(d,r).getPropertyValue("white-space"):0)&&"pre"===s.substring(0,3);v=m.linenums;if(!(v=v==="true"||+v))v=(v=l.match(/\blinenums\b(?::(\d+))?/))?v[1]&&v[1].length?+v[1]:!0:!1;v&&z(d,v,s);t={h:n,c:d,j:v,i:s};D(t)}}}p<j.length?
P(e,250):"function"===typeof a&&a()}for(var b=d||document.body,i=b.ownerDocument||document,b=[b.getElementsByTagName("pre"),b.getElementsByTagName("code"),b.getElementsByTagName("xmp")],j=[],m=0;m<b.length;++m)for(var l=0,n=b[m].length;l<n;++l)j.push(b[m][l]);var b=r,c=Date;c.now||(c={now:function(){return+new Date}});var p=0,t,q=/\blang(?:uage)?-([\w.]+)(?!\S)/,f=/\bprettyprint\b/,w=/\bprettyprinted\b/,y=/pre|xmp/i,u=/^code$/i,g=/^(?:pre|code|xmp)$/i,k={};e()}};typeof define==="function"&&define.amd&&
define("google-code-prettify",[],function(){return X})})();return e}();R||P(Q,0)})();}()

View File

@ -1,50 +0,0 @@
=== Simple Code Highlighter ===
Contributors: kedinn
Donate link: http://www.comoprogramar.org
Tags: syntax,code,button,codigo,highlighter
Requires at least: 4.0
Tested up to: 4.0
Stable tag: 4.0
License: GPL2
License URI: http://www.gnu.org/licenses/
Simple Code Highlighter
== Description ==
Simple Code Highlighter
The Code Highlighter Plugin uses Google Code Prettify Script to highlight your code. You don't need programming skills to use'it. Simply press the button on editor toolbar and paste your code. The plugin does all the rest.
See more details and usages guide here http://www.comoprogramar.org
== Installation ==
How to install the plugin and get it working.
1. Plugins > Add New. Search for "Simple Code Highlighter" then Install Now from the list and Activate
2. Plugins > Add New > Upload. Choose File "Simple Code Highlighter.zip" then Install Now and Activate
3. If you have direct access to the installation path, copy the zip file and extract to Plugin folder (usually wp-content/plugins). Then goto Plugins and Activate the plugin.
== Frequently Asked Questions ==
= Why this plugin? =
I needed a simple copy/paste for the code, no shortcodes, no writing a lot, just copy/paste.
== Screenshots ==
1. screenshot-1.png
2. screenshot-2.png
3. screenshot-3.png
== Changelog ==
= 1.0 =
* Initial release. Just a simple button on the text editor

View File

@ -1,91 +0,0 @@
(function(){
var doc = document;
var scriptQuery = '';
for (var scripts = doc.scripts, i = scripts.length; --i >= 0;) {
var script = scripts[i];
var match = script.src.match(
/^[^?#]*\/ai-code-highliter_plugin\.js(\?[^#]*)?(?:#.*)?$/);
if (match) {
scriptQuery = match[1] || '';
script.parentNode.removeChild(script);
break;
}
}
var plugin_folder = '';
scriptQuery.replace(
/[?&]([^&=]+)=([^&]+)/g,
function (_, name, value) {
value = decodeURIComponent(value);
name = decodeURIComponent(name);
if (name == 'plugin_folder') { plugin_folder = value; }
});
function cleanhtml(s) {
return s.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
}
tinymce.PluginManager.add('kedinn', function( editor, url ) {
editor.addButton( 'kedinn', {
title: 'Insertar Codigo',
icon: 'icon dashicons-editor-code',
onclick: function() {
var width = jQuery(window).width(), H = jQuery(window).height(), W = ( 720 < width ) ? 720 : width;
W = W - 80;
H = H - 84;
tb_show( 'Insertar codigo', '#TB_inline?width=' + W + '&height=' + H + '&inlineId=ai-code-highliter-form' );
}
});
});
jQuery(function(){
var form = jQuery('<div id="ai-code-highliter-form"><textarea id="ai-code-highliter-code" name="code" style="width:100%; height:85%; margin-top:12px; margin-bottom:10px" placeholder="paste or enter the code here." />\
<input type="button" id="ai-code-highliter-submit" class="button-primary" value="Insert Code" name="submit" style="float:right;" />\
</div>');
form.appendTo('body').hide();
form.find('#ai-code-highliter-submit').click(function(){
var shortcode = '<?prettify linenums=true?><pre class="prettyprint">\n' + cleanhtml(jQuery('#ai-code-highliter-code').val()) + '</pre>';
tinyMCE.activeEditor.execCommand('mceInsertRawHTML', 0, shortcode);
tb_remove();
});
});
})()
// creates the text button
QTags.addButton( 'ai-code-highliter_button2', 'Code Highlighter', '<?prettify linenums=true?><pre class="prettyprint">', '</pre>', '#', 'Add Highlighted Code');

View File

@ -1,67 +0,0 @@
<?php
/*
Plugin Name: Simple Code Highlighter
Plugin URI: http://www.comoprogramar.org
Description: Highlight your code on Wordpress with simple code syntax button !
Version: 1.0
Author: Kedinn Turpo
Author URI: http://www.comoprogramar.org
*/
add_action( 'wp_enqueue_scripts', 'wpsites_add_js' );
function wpsites_add_js() {
if ( ! is_admin() ) {
wp_enqueue_script( 'pretty', plugins_url( 'js/pretty.js', __FILE__ ), '', '', true );
wp_enqueue_style( 'estilo', plugins_url( 'estilo.css', __FILE__ ) );
}
}
add_action( 'after_setup_theme', 'deel_setup' );
function deel_setup(){
add_editor_style(plugins_url( 'icono.css', __FILE__ ));
}
add_action( 'admin_enqueue_scripts', 'icono_add_js' );
function icono_add_js() {
wp_enqueue_style( 'estilo', plugins_url( 'icono.css', __FILE__ ) );
}
add_action( 'admin_head', 'kedinn_add_mce_button' );
function kedinn_add_mce_button() {
global $typenow;
if ( !current_user_can('edit_posts') && !current_user_can('edit_pages') ) {
return;
}
if( ! in_array( $typenow, array( 'post', 'page' ) ) )
return;
if ( get_user_option('rich_editing') == 'true') {
add_filter('mce_external_plugins', 'kedinn_add_tinymce_plugin');
add_filter('mce_buttons', 'kedinn_register_mce_button');
}
}
function kedinn_register_mce_button($buttons) {
array_push($buttons, 'kedinn');
return $buttons;
}
function kedinn_add_tinymce_plugin($plugin_array) {
$plugin_array['kedinn'] = plugins_url( '/simple-syntax-highlighter-plugin.js', __FILE__ );
return $plugin_array;
}

View File

@ -1,56 +0,0 @@
=== Simple Mathjax ===
Contributors: sgcoskey
Donate link: http://boolesrings.org
Tags: mathjax, latex
Requires at least: 3.0
Tested up to: 4.0
Stable tag: 0.6
Yet another plugin to add MathJax support to your wordpress blog.
Just wrap your equations inside $ signs and MathJax will render
them visually.
== Description ==
This wordpress plugin is yet another simple plugin to load the
[MathJax](http://www.mathjax.org) scripts at the bottom of all of your
pages. It uses a very all-inclusive mathjax configuration by default,
with $'s and $$'s the default delimeters for in-line and displayed
equations.
A preference pane is added to the "Settings" group where you can
modify the MathJax server location (CDN) and the MathJax configuration
settings. (See [this
page](http://www.mathjax.org/docs/1.1/configuration.html#using-in-line-configuration-options)
for details on the options available.) You can also specify a LaTeX
"preamble" of newcommands which will be loaded in a hidden element
near the top of each page.
Fork this plugin on
[GitHub](https://github.com/scoskey/Simple-Mathjax-wordpress-plugin)
== Installation ==
Nothing unusual here!
== Changelog ==
`0.6` allow writing dollar sign using backslash-dollar
`0.5` minor code cleanup, allow mathjax in admin screens
`0.4` use safe mode (prevents evil scripts) by default
`0.3` use wp_enqueue_script to allow others to use mathjax as a dependency
(christianp). removed disqus compatibility due to reports of it no longer
working.
`0.2` added disqus compatibility. enclosed the preamble in a hidden span to
cover a small space created by mathjax v.2
`0.1` improved loading of the LaTeX preamble so that it appears just
below the body tag, rather than in the header
`0.0` initial release

View File

@ -1,128 +0,0 @@
<?php
/*
* Plugin Name: Simple Mathjax
* Description: Load the mathjax scripts across your wordpress blog
* Version: 0.6
* Author: Samuel Coskey, Peter Krautzberger
* Author URI: http://boolesrings.org
*/
/*
* inserts the mathjax configuration
*/
add_action('wp_head','configure_mathjax',1);
function configure_mathjax() {
$custom_config = wp_kses( get_option('custom_mathjax_config'), array() );
$config = $custom_config ? $custom_config : "MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\\\(','\\\\)']], processEscapes: true}});\n";
echo "\n<script type='text/x-mathjax-config'>\n" . $config . "</script>\n";
}
/*
* loads mathjax itself
*/
add_action('wp_enqueue_scripts', 'add_mathjax');
function add_mathjax() {
$custom_cdn = esc_url( get_option('custom_mathjax_cdn') );
$cdn = $custom_cdn ? $custom_cdn : "//cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML,Safe.js";
wp_enqueue_script('mathjax', $cdn);
}
/*
* inserts the mathjax preamble inside the body and above the content
*/
add_action('wp_footer', 'add_preamble_adder');
function add_preamble_adder() {
$preamble = get_option('latex_preamble');
if ( $preamble ) {
$preamble = preg_replace('/\\\\/','\\\\\\\\',$preamble);
?>
<script type='text/javascript'>
newContainer = document.createElement('span');
newContainer.style.setProperty("display","none","");
newNode = document.createElement('script');
newNode.type = "math/tex";
newNode.innerHTML = '<?php echo esc_js($preamble); ?>';
newContainer.appendChild(newNode);
document.body.insertBefore(newContainer,document.body.firstChild);
</script>
<?php
}
}
/*
* Perform all three actions in admin pages too, if the option is set (CP)
*/
if ( get_option( 'mathjax_in_admin' ) ) {
add_action('admin_head', 'configure_mathjax', 1);
add_action('admin_enqueue_scripts', 'add_mathjax');
add_action('admin_footer', 'add_preamble_adder');
}
/*
* The options pane in the settings section
*/
add_action('admin_menu', 'mathjax_create_menu');
function mathjax_create_menu() {
$simple_mathjax_page = add_options_page(
'Simple MathJax options', // Name of page
'Simple Mathjax', // Label in menu
'manage_options', // Capability required
'simple_mathjax_identifier', // Menu slug, used to uniquely identify the page
'simple_mathjax_options' // Function that renders the options page
);
if ( ! $simple_mathjax_page )
return;
//call register settings function
add_action( 'admin_init', 'register_simple_mathjax_settings' );
}
function register_simple_mathjax_settings() {
register_setting( 'simple_mathjax_group', 'custom_mathjax_cdn' );
register_setting( 'simple_mathjax_group', 'custom_mathjax_config' );
register_setting( 'simple_mathjax_group', 'latex_preamble' );
register_setting( 'simple_mathjax_group', 'mathjax_in_admin' );
}
function simple_mathjax_options() {
?>
<div class="wrap">
<h2>Simple Mathjax options</h2>
<p>
(Please note that this still needs to be tested. There may be a problem with string-escaping. For instance, I'm not sure if special characters such as &lt; will be properly processed.)
</p>
<form method="post" action="options.php">
<?php settings_fields( 'simple_mathjax_group' ); ?>
<table class="form-table">
<tr valign="top">
<th scope="row">Custom mathjax CDN</th>
<td><input type="text" name="custom_mathjax_cdn" size="50" value="<?php echo esc_url( get_option('custom_mathjax_cdn') ); ?>" /></td>
<td><p>If you leave this blank, the default will be used: <code>http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML,Safe.js</code></p></td>
</tr>
<tr valign="top">
<th scope="row">Custom mathjax config</th>
<td><textarea name="custom_mathjax_config" cols="50" rows="10"/><?php echo esc_textarea(get_option('custom_mathjax_config')); ?></textarea></td>
<td><p>This text will be placed inside the <code>&lt;script x-mathjax-config&gt;</code> tag</p><p>If you leave this blank, the default will be used: <code>MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});</code></p></td>
</tr>
<tr valign="top">
<th scope="row">Custom LaTeX preamble</th>
<td><textarea name="latex_preamble" cols="50" rows="10"/><?php echo esc_textarea(get_option('latex_preamble')); ?></textarea></td>
<td><p>A good place to put \newcommand's and \renewcommand's</p><p><strong>Do not us $ signs</strong>, they will be added for you</p><p>E.g.<br/><code>\newcommand{\NN}{\mathbb N}<br/>\newcommand{\abs}[1]{\left|#1\right|}</code></p></td>
</tr>
<tr valign="top">
<th scope="row">Load MathJax on admin pages</th>
<td><input type="checkbox" name="mathjax_in_admin" value="yes" <?php if( get_option('mathjax_in_admin') ) { echo "checked"; } ?> /></td>
<td><p>If you tick this box, MathJax will be loaded on admin pages as well as the actual site.</p></td>
</tr>
</table>
<p class="submit">
<input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" />
</p>
</form>
</div>
<?php }
?>

View File

@ -1,99 +0,0 @@
<?php
class UM_ADDON_bp_avatar_transfer {
function __construct() {
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
add_action('admin_init', array(&$this, 'admin_init'), 1);
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
}
function admin_menu() {
global $ultimatemember;
$this->addon = $ultimatemember->addons['bp_avatar_transfer'];
add_submenu_page('ultimatemember', $this->addon[0], $this->addon[0], 'manage_options', 'bp_avatar_transfer', array(&$this, 'content') );
}
function um_admin_addon_hook( $hook ) {
global $ultimatemember;
switch( $hook ) {
case 'bp_avatar_transfer':
if ( class_exists('BuddyPress') ) {
$path = bp_core_avatar_upload_path() . '/avatars';
$files = glob( $path . '/*');
$i = 0;
foreach( $files as $key ) {
$q = (count(glob("$key/*")) === 0) ? 0 : 1;
if ( $q == 1 ) {
$photo = glob( $key . '/*');
foreach( $photo as $file ) {
if ( strstr( $file, 'bpfull' ) ) {
$get_user_id = explode('/', $file);
array_pop($get_user_id);
$user_id = end($get_user_id);
if ( !file_exists( $ultimatemember->files->upload_basedir . $user_id . '/profile_photo.jpg' ) ) {
$ultimatemember->files->new_user( $user_id );
copy( $file, $ultimatemember->files->upload_basedir . $user_id . '/profile_photo.jpg' );
update_user_meta($user_id, 'profile_photo', 'profile_photo.jpg');
$i++;
}
}
}
}
}
$this->content = '<p><strong>Done. Process completed!</p>';
$this->content .= $i . ' user(s) changed.</strong></p>';
}
break;
}
}
function admin_init() {
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
$hook = $_REQUEST['um-addon-hook'];
do_action("um_admin_addon_hook", $hook);
}
}
function content() {
$this->process_link = add_query_arg('um-addon-hook','bp_avatar_transfer');
?>
<div class="wrap">
<h2>Ultimate Member <sup style="font-size:15px"><?php echo ultimatemember_version; ?></sup></h2>
<h3><?php echo $this->addon[0]; ?></h3>
<?php if ( isset( $this->content ) ) {
echo $this->content;
} else { ?>
<p>This tool allows you to move all custom user photos/avatars from BuddyPress to Ultimate Member platform. This can help you If you are switching from BuddyPress.</p>
<p>Depending on your users database, this could take a few moments. To start the process, click the following button.</p>
<p><a href="<?php echo $this->process_link; ?>" class="button button-primary">Start transferring avatars</a></p>
<?php } ?>
</div><div class="clear"></div>
<?php
}
}
$UM_ADDON_bp_avatar_transfer = new UM_ADDON_bp_avatar_transfer();

View File

@ -1,302 +0,0 @@
/*
- General
*/
.um-admin-builder * {
-webkit-font-smoothing: antialiased !important;
-moz-osx-font-smoothing: grayscale;
}
.um-admin-builder i {
font-size: 15px !important;
height: 100% !important;
line-height: 100% !important;
margin: 0 5px 0 0 !important;
}
.um-admin-builder .um-admin-drag {margin-top: 40px}
/*
- Add field
*/
.um-admin-drag-add-field {
display: block;
width: 100%;
height: 30px;
line-height: 30px;
text-align: center;
color: #aaa;
text-decoration: none;
}
.um-admin-drag-add-field:hover {color: #3ba1da}
.um-admin-drag-add-field i {
font-size: 23px !important;
margin: 0 !important;
}
/*
- Drag controls
*/
.um-admin-drag-ctrls-demo.um-admin-drag-ctrls {
position: absolute;
right: 7px;
top: -30px;
left: auto;
}
.um-admin-drag-ctrls {
position: absolute;
top: -30px;
left: 0;
}
.um-admin-drag-ctrls a {
float: left;
margin: 0 5px 0 0;
height: 30px;
line-height: 30px;
background: #eee;
color: #888;
padding: 0 8px;
text-decoration: none;
border-radius: 2px 2px 0 0;
}
.um-admin-drag-ctrls a:hover {background-color: #e5e5e5}
.um-admin-drag-ctrls a.active,
.um-admin-drag-ctrls a.active:hover {
background-color: #3ba1da;
color: #fff;
}
.um-admin-drag-ctrls.columns a {width: 30px !important;background-image: url(../img/1-column.gif); background-repeat: no-repeat; background-position: center;}
.um-admin-drag-ctrls.columns a:nth-child(2) {background-image: url(../img/2-columns.gif);}
.um-admin-drag-ctrls.columns a:last-child {background-image: url(../img/3-columns.gif);}
.um-admin-drag-ctrls.columns a.active {background-image: url(../img/1-column-active.gif)}
.um-admin-drag-ctrls.columns a.active:nth-child(2) {background-image: url(../img/2-columns-active.gif);}
.um-admin-drag-ctrls.columns a.active:last-child {background-image: url(../img/3-columns-active.gif);}
/*
- Drag Area
*/
.um-admin-drag {
width: 100%;
background: #f1f1f1;
box-sizing: border-box;
position: relative;
padding: 60px 20px 20px 20px;
}
.um-admin-drag-row {
width: 100%;
background: #fefefe;
box-sizing: border-box;
position: relative;
padding: 60px 20px 20px 20px;
margin: 0 0 60px 0;
}
.um-admin-drag-row:last-child {margin-bottom: 0}
.um-admin-drag-row-icons {
position: absolute;
right: 0;
top: -30px;
height: 30px;
}
.um-admin-drag-rowsub {
position: relative;
box-sizing: border-box;
background: #f1f1f1;
padding: 20px;
margin: 0 0 60px 0;
}
.um-admin-drag-rowsub:last-child {margin-bottom: 0}
.um-admin-drag-rowsub-icons {
position: absolute;
right: 0;
top: -30px;
height: 30px;
}
.um-admin-drag-col {
float: left;
width: 100%;
background: #fff;
border: 1px dashed #bbb;
box-sizing: border-box;
padding: 20px;
}
.um-admin-drag-col.cols-3 {width: 32%;}
.um-admin-drag-col.cols-3.cols-last {width: 32%;}
.um-admin-drag-col.cols-3.cols-middle {width: 32%;margin: 0 2%;}
.um-admin-drag-col.cols-1 {width: 100%;}
.um-admin-drag-col.cols-1.cols-last {width: 100%;}
.um-admin-drag-col.cols-1.cols-middle {}
.um-admin-drag-col.cols-2 {width: 49%;margin: 0 1% 0 0}
.um-admin-drag-col.cols-2.cols-last {width: 49%;margin: 0 0 0 1%;}
.um-admin-drag-col.cols-2.cols-middle {}
.um-admin-drag-addrow {
text-align: center;
font-size: 14px;
color: #888;
cursor: pointer;
border: 1px dashed #bbb;
padding: 10px 0;
margin: 20px 0 0 0;
}
.um-admin-drag-addrow i {
font-size: 23px !important;
margin: 0 !important;
}
.um-admin-drag-addrow:hover {color: #3ba1da}
/*
- Fields
*/
.um-admin-drag-fld {
display: block;
position: relative;
border: 1px solid #dddddd;
margin: 0 0 15px 0;
background: #F5F5F5;
cursor: move !important;
}
.um-admin-drag-fld-title i {
width: 24px;
display: inline-block;
text-align: center;
}
.um-admin-drag-fld.um-field-type-group {background: #555;border: 0}
.um-admin-drag-fld-title.um-field-type-group,.um-admin-drag-fld-type.um-field-type-group {color: #fff}
.um-admin-drag-group {background: #FCFCFC;cursor: default;padding: 20px;border: 1px dashed #bbb;}
.um-admin-drag-col.cols-3 .um-admin-drag-fld-icons.um-field-type-group{float: left;position: relative;bottom: auto;right: auto;height: 30px;display: block;}
.um-admin-drag-fld-icons.um-field-type-group a.um_admin_duplicate_field {display: none !important}
.um-admin-drag-fld-title,
.um-admin-drag-fld-type {
float: left;
font-weight: bold;
font-size: 13px;
color: #666;
height: 30px;
line-height: 30px;
margin: 0 0 0 20px;
}
.um-admin-drag-fld-type {
font-weight: 400;
color: #999;
}
.um-admin-drag-fld-icons {
float: right;
}
/*
- Responsive cols appearance
*/
.um-admin-drag-col.cols-3 .um-admin-drag-fld-title,
.um-admin-drag-col.cols-3 .um-admin-drag-fld-type {
height: auto;
line-height: 18px;
margin: 10px;
margin-bottom: 0;
}
.um-admin-drag-col.cols-3 .um-admin-drag-fld-type {
margin: 10px;
}
.um-admin-drag-col.cols-3 .um-admin-drag-fld-icons {
float: none;
position: absolute;
bottom: 0;
right: 0;
height: 30px;
display: none;
}
.um-admin-drag-col.cols-3 .um-admin-drag-fld:hover .um-admin-drag-fld-icons{display: block;}
/*
- Icons
*/
.um-admin-drag-row-icons a,
.um-admin-drag-row-icons span,
.um-admin-drag-rowsub-icons a,
.um-admin-drag-rowsub-icons span,
.um-admin-drag-fld-icons a{
text-decoration: none;
color: #fff;
width: 40px;
height: 30px;
line-height: 30px;
text-align: center;
display: block !important;
float: left;
background: #44b0ec;
padding: 0 4px;
transition: all .2s linear;
border-left: 1px solid #379dd5;
}
.um-admin-drag-row-icons span,
.um-admin-drag-rowsub-icons span
{cursor: move!important}
.um-admin-drag-row-icons a:hover,
.um-admin-drag-row-icons span:hover,
.um-admin-drag-rowsub-icons a:hover,
.um-admin-drag-rowsub-icons span:hover,
.um-admin-drag-fld-icons a:hover {background: #3396cd;}
.um-admin-drag-row-icons i,
.um-admin-drag-rowsub-icons i,
.um-admin-drag-fld-icons i{
font-size: 18px !important;
margin: 0 !important;
top: 2px;
position: relative;
}
/*
- UI Placeholders
*/
.um-row-placeholder {
width: 100%;
border: 2px dashed #aaa;
box-sizing: border-box;
}
.um-rowsub-placeholder {
width: 100%;
border: 2px dashed #ccc;
box-sizing: border-box;
display: block;
}
.um-fld-placeholder {
display: block;
border: 1px dashed #dddddd;
background: #fff;
box-sizing: border-box;
width: 100%;
}

View File

@ -1,70 +0,0 @@
.um-admin td, .um-admin th {
-webkit-font-smoothing: antialiased !important;
-moz-osx-font-smoothing: grayscale;
}
.um-admin.post-type-um_form .manage-column.column-id {width: 60px}
.um-admin.post-type-um_form .manage-column.column-mode {width: 100px}
.um-admin.post-type-um_form .manage-column.column-title {width: 200px}
.um-admin.post-type-um_form .manage-column.column-shortcode {width: 200px}
.um-admin.post-type-um_form .manage-column.column-impressions {width: 100px}
.um-admin.post-type-um_form .manage-column.column-conversions {width: 100px}
.um-admin.post-type-um_directory .manage-column.column-id {width: 60px}
.um-admin.post-type-um_directory .manage-column.column-title {width: 250px}
.um-admin.post-type-um_role .manage-column.column-title {width: 200px}
.um-admin.post-type-um_role .manage-column.column-count {width: 150px}
.um-admin.post-type-um_role .manage-column.column-core {width: 150px}
.um-admin.users-php .tablenav.top .bulkactions,
.um-admin.users-php .tablenav.bottom .bulkactions{display:none}
.um-admin.post-type-um_form td.column-shortcode,
.um-admin.post-type-um_form td.column-id,
.um-admin.post-type-um_directory td.column-shortcode,
.um-admin.post-type-um_directory td.column-id,
.um-admin.post-type-um_role td.column-count
{font-size: 14px;}
.um-admin.users-php td.column-um_actions {padding-top: 12px}
.um-admin.users-php td.column-um_actions a.button {
height: 29px !important;
margin: 0 0 0 2px !important;
position: relative;
}
.um-admin-tag {
display: inline-block;
border-radius: 2px;
width: 100%;
box-sizing: border-box;
text-align: center;
background: #3ba1da;
color: #fff;
font-size: 14px;
height: 34px;
line-height: 34px;
}
.um-admin-tag.small {font-size: 13px;height:28px;line-height: 28px;display:inline;padding: 4px 10px;background: transparent;color: #666;border-radius:0;}
.um-admin-tag.approved {border-left: 2px solid #7ACF58}
.um-admin-tag.pending {border-left: 2px solid #C74A4A}
.um-admin-txtspace {margin: 0 0 0 10px;}
.um-adm-ico {
font-size: 18px;
width: 18px;
text-align: center;
display: inline-block;
color: #7ACF58;
}
.um-adm-ico.inactive {color: #C74A4A}
.um-adm-ico.pointer {cursor: pointer}
.um-admin-icontext i {
font-size: 18px;
margin: 0 5px 0 0;
}

View File

@ -1,125 +0,0 @@
#um-extensions-wrap a.plugin-image,
#um-extensions-wrap a.plugin-image img {
max-width: 100%;
display: block;
}
#um-extensions-wrap .plugin-card .name,
#um-extensions-wrap .plugin-card .desc {
margin-left: 0;
}
#um-metaboxes-general.wrap h2 {
font-size: 23px;
font-weight: 400;
padding: 9px 15px 4px 0px;
line-height: 29px;
}
#um-metaboxes-general.wrap h2 sup {
font-size: 15px;
}
.wrap a.red, .wrap span.red {color:#C74A4A}
.wrap span.ok {color:#7ACF58}
/* Misc */
.um-admin-dash-review {
text-decoration: none !important;
font-size: 16px;
position: absolute;
top: -2px;
right: 4px;
}
/* Dashboard widgets */
.p_seperate {
margin-top: 12px;
border-top: 1px solid #ddd;
}
.um-metabox-holder p.sub {
padding: 0 4px 2px 4px;
margin: 0 0 8px 0;
color: #8F8F8F;
font-size: 14px;
border-bottom: 1px solid #ECECEC;
}
.um-metabox-holder .table {
float: left;
width: 45%;
}
.um-metabox-holder a.warning {
color: #C74A4A !important;
background: transparent !important;
border: 0;
}
.um-metabox-holder .table_right {
float: right;
width: 45%;
}
.um-metabox-holder td.b {
padding-right: 6px;
text-align: right;
font-family: Georgia,"Times New Roman","Bitstream Charter",Times,serif;
font-size: 14px;
width: 1%;
}
.um-metabox-holder td.b {
text-align: right;
font-family: Georgia,"Times New Roman","Bitstream Charter",Times,serif;
font-size: 14px;
}
.um-metabox-holder table td {
white-space: nowrap;
font-size: 12px;
}
.um-metabox-holder td.b a {
font-size: 18px;
}
.um-metabox-holder .norm i {
display: inline-block;
width: 30px;
text-align: center;
}
.um-metabox-holder .norm p {
margin: 5px 0;
}
.um-metabox-holder .norm .count {
font-size: 16px;
font-family: Gerogia;
color: #999;
width: 40px;
display: inline-block;
text-align: right;
margin-right: 10px;
}
/* Share bar */
.um-admin-dash-share {
margin-top: 11px !important;
float: left;
line-height: 28px;
font-size: 15px;
}
.um-admin-dash-share a {
margin: 0 15px 0 0 !important;
text-decoration: none !important;
color: #777 !important;
font-size: 22px !important;
}
.um-admin-dash-share a:hover {color: #3ba1da !important}

View File

@ -1,61 +0,0 @@
/*
- General
*/
.um-admin-metabox * {
-webkit-font-smoothing: antialiased !important;
-moz-osx-font-smoothing: grayscale !important;
}
.um-admin-metabox h6 {
font-size: 14px;
margin: 12px 0 0 0;
}
/*
- Metabox layout
*/
.um-admin.post-type-um_form div#submitdiv,
.um-admin.post-type-um_form div#side-sortables
{display:none}
/*
- Boxed Links
*/
.um-admin-boxed-links {
width: 100%;
text-align: center;
}
.um-admin-boxed-links a {
width: 33.3%;
float: left;
border-left: 1px solid #fff;
border-right: 1px solid #fff;
padding: 30px 25px !important;
background: #f8f8f8;
text-align: center;
display: inline-block !important;
font-size: 14px;
transition: all .2s linear;
text-decoration: none;
color: #666;
margin: 0 !important;
box-sizing: border-box !important;
border-radius: 2px;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 600;
}
.um-admin-boxed-links i {
font-size: 28px;
vertical-align: middle;
margin: 0 10px 0 0;
}
.um-admin-boxed-links a:hover {
background: #eee;
}

View File

@ -1,89 +0,0 @@
.um-admin-notice {
border-color: #3ba1da !important;
color: #555;
}
.um-admin-notice a.button-primary {
background-color: #3ba1da !important;
border-color: #3ba1da !important;
}
.um-admin-notice a.button-primary:hover {
background-color: #2295d8 !important;
border-color: #2295d8 !important;
}
.um-admin-notice a.button-secondary {opacity: 0.7}
.um-admin-notice a.button-secondary:hover {opacity: 0.9}
.um-admin-notice a {text-decoration: none;color: #3ba1da}
.um-admin-notice a:hover {color: #44b0ec}
.um-filter {
padding: 12px;
border-color: #ddd !important;
margin: 20px 0 0 0 !important;
font-size: 14px;
line-height: 24px;
}
/*
- General metabox styling
*/
#um-admin-access-settings h3 {
padding: 10px 20px 10px 60px;
color: #fff;
background: #3ba1da url(../img/logo-small.png) no-repeat 12px center;
font-weight: bold;
font-size: 14px !important;
-webkit-font-smoothing: antialiased !important;
-moz-osx-font-smoothing: grayscale !important;
}
#um-admin-access-settings h4 { margin: 10px 0 4px 0!important}
#um-admin-access-settings div.handlediv {
color: #fff !important;
-webkit-font-smoothing: antialiased !important;
-moz-osx-font-smoothing: grayscale !important;
}
#um-admin-access-settings p {font-size: 13px}
#um-admin-access-settings input[type=text] {font-size: 13px}
/*
- Nav Menu
*/
.um-nav-edit * {
-webkit-font-smoothing: antialiased !important;
-moz-osx-font-smoothing: grayscale !important;
}
.um-nav-edit-h2 {
padding: 10px 20px 10px 60px;
margin: 14px 12px 0 0;
border-radius: 3px;
color: #fff;
background: #3ba1da url(../img/logo-small.png) no-repeat 12px center;
font-weight: bold;
}
.um-nav-mode {margin-top:10px}
.um-nav-roles {display: none;margin-top:5px}
/*
- jQuery Tooltips
*/
.um-admin-tip {
margin: 0 0 0 2px;
color: #3ba1da !important;
vertical-align: middle;
position: relative;
top: -3px;
opacity: 0.8;
}
.um-admin-tip.n {margin-left: 5px}
.um-admin-tip i {cursor: pointer; vertical-align: middle; font-size: 20px; line-height: 20px;color: #3ba1da !important;}

View File

@ -1,3 +0,0 @@
ul#adminmenu a.wp-has-current-submenu:after,ul#adminmenu>li.current>a.current:after {display: none !important}
ul#adminmenu li.wp-has-submenu.wp-not-current-submenu:hover:after{right:-9999999px}

View File

@ -1,257 +0,0 @@
/*
- Welcome
*/
.um-about-wrap * {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.um-about-wrap a.um-about-icon {
margin: 0 0 0 15px !important;
padding: 0 !important;
text-decoration: none !important;
color: #777 !important;
font-size: 22px !important;
}
.um-about-wrap a.um-about-icon:hover {color: #3ba1da !important}
.um-badge {
color: #fff;
background: none !important;
background: #3ba1da url(../img/logo_small.png) no-repeat center 0px !important;
}
.um-about-wrap .ultimatemember-actions a.button-primary,
.um-about-wrap .ultimatemember-actions a.button {
vertical-align: top;
margin: 0 5px 0 0;
}
.changelog a.button-primary {
height: 40px;
line-height: 38px;
}
.um-about-wrap a {text-decoration: none}
/*
- General
*/
body.um-admin-modal-open {
overflow: hidden;
}
.um-admin #major-publishing-actions{background-color: #fff !important;border-top:0}
.um-admin-hide {display: none}
.um-admin-field {
display: block;
width: 100%;
margin-top: 10px;
}
.um-admin-field a.button {
position: relative;
top: 1px;
height: 30px !important;
}
.um-admin-half {
float: left;
width: 48%;
}
.um-admin-tri {
float: left;
width: 33%;
}
.um-admin-left{float: left}
.um-admin-right {float: right}
.um-admin-clear {clear: both}
.um-admin a.um-admin-activebg,
.um-admin a.um-admin-activebg:hover{
background: #3ba1da;
color: #fff;
}
.um-admin a.button i,
.um-admin a.button-primary i {
font-size: 15px !important;
height: 15px !important;
width: 15px !important;
text-align: center !important;
margin: 0 5px 0 0 !important;
display: inline-block;
}
.um-admin a.button i:before,
.um-admin a.button-primary i:before {
position: relative;
top: 1px;
}
/*
- Form Inputs
*/
.um-admin-metabox h3 {
padding-left: 0 !important;
}
.um-admin-metabox h4 {
font-size: 14px;
background: #f5f5f5;
padding: 8px 4px;
color: #333;
}
.um-admin-metabox p {margin: 10px 0 0 0}
.um-admin-metabox label{
display: block;
cursor: default;
margin: 0 0 8px 0 !important;
padding: 0!important;
font-size: 13px;
color: #666;
}
.um-admin-metabox input[type=text]:disabled{
opacity: 0.7 !important;
color: #aaa !important;
}
.um-admin-metabox input[type=text],
.um-admin-metabox textarea{
width: 100%;
max-width: 100%;
display: block;
color: #666 !important;
background: #fff;
border: 1px solid #ddd;
border-radius: 2px;
outline: none !important;
box-sizing: border-box !important;
box-shadow: none !important;
font-size: 13px !important;
height: auto !important;
line-height: 1.4em !important;
padding: 4px 10px !important;
}
.um-admin-metabox input[type=text].um-admin-error,
.um-admin-metabox textarea.um-admin-error
{border-color: #C74A4A!important}
.um-admin-metabox input[type=text]:focus,
.um-admin-metabox textarea:focus{
border-color: #ccc;
background-color: #fff !important;
}
.um-admin-metabox input[type=text].small {width: 54px}
.um-admin-metabox textarea {min-height: 100px;height: 100px}
.um-admin-metabox textarea.tall {min-height: 200px;height: 200px}
.wp-picker-container input.wp-color-picker[type="text"] {
width: 68px !important;
float: left !important;
padding: 2px 4px !important;
border-width: 1px !important;
}
/*
- Error blocks
*/
.um-admin-error-block, .um-admin-success-block{
display: none;
width: 100%;
background: #C74A4A;
border-radius: 3px;
color: #fff;
box-sizing: border-box;
position: relative;
padding: 12px;
font-size: 13px;
line-height: 1em !important;
margin: 0 0 16px 0;
}
.um-admin-success-block {
background: #7ACF58;
}
/*
- Yes or NO UI
*/
p.disabled-on-off .um-admin-yesno {
opacity: 0.5!important;
cursor: default !important;
}
p.disabled-on-off .um-admin-yesno *{
cursor: default !important;
}
.um-admin-yesno {
width: 100px !important;
height: 26px;
display: block;
position: relative;
color: #fff;
}
.um-admin-yesno span.btn {
position: absolute;
left: 0;
top: -2px;
width: 50px;
height: 28px;
text-align: center;
background: #f9f9f9;
z-index: 999;
border-radius: 3px;
cursor: pointer;
border: solid 1px #D0D9DB;
margin: 0;
padding: 0 !important;
}
.um-admin-yesno span.btn.pos-1 {left: 48px}
.um-admin-yesno span.yes, .um-admin-yesno span.no {
width: 50px;
float: left;
line-height: 24px;
height: 26px;
cursor: default;
font-size: 14px;
color: #fff;
padding: 0 0 0 10px;
box-sizing: border-box;
}
.um-admin-yesno .yes {
background: #3ba1da;
border-radius: 3px 0 0 3px;
border: 1px solid rgba(0,0,0,.2);
}
.um-admin-yesno .no {
padding: 0 10px 0 0 !important;
text-align: right;
float: right;
background: #fff;
color: #222 !important;
border-radius: 0 3px 3px 0;
border: 1px solid #ddd;
}

View File

@ -1,298 +0,0 @@
/*
- Overlay
*/
.um-admin-overlay {
background: rgba(0,0,0, .7);
width: 100%;
height: 100%;
position: fixed;
top: 0;
left: 0;
z-index: 10000;
}
/*
- modal
*/
.um-admin-modal * {
-webkit-font-smoothing: antialiased !important;
-moz-osx-font-smoothing: grayscale;
}
.um-admin-modal input[type=submit].button-primary,
.um-admin-modal a.button-primary,
.um-admin-modal a.button {
padding: 0 12px !important;
vertical-align: middle !important;
}
.um-admin .um-admin-modal a.button i:before {
display: block;
top: 0px;
}
.um-admin-modal input[type=submit].button-primary {
line-height: 24px !important;
}
.um-admin-modal {
border-radius: 3px;
background: #fff;
position: fixed;
top: 50% !important;
left: 50% !important;
display: none;
z-index: 10001;
box-sizing: border-box;
width: 730px;
margin-left: -365px;
}
.um-admin-modal.normal {width: 730px;margin-left: -365px;}
.um-admin-modal.smaller {width: 500px;margin-left: -250px;}
.um-admin-modal.small {width: 400px;margin-left: -200px;}
.um-admin-modal-close {
position: absolute;
color: #fff !important;
right: 16px;
top: 14px;
font-size: 22px;
text-decoration: none;
opacity: 0.4;
}
.um-admin-modal-close:hover{opacity:1}
.um-admin-modal-head {
padding: 4px 20px;
background: #3ba1da;
position: relative;
border-radius: 3px 3px 0 0;
}
.um-admin-modal-body {
padding: 10px 20px 10px 20px;
max-height: 500px;
overflow: auto;
}
.um-admin-modal-body.um-admin-metabox label {margin: 0!important}
.um-admin-modal.loading .um-admin-modal-body {
height: 200px;
background: url(../img/ajax-loader.gif) no-repeat center;
}
.um-admin-modal-foot {
padding: 20px 0 !important;
border-top: 1px solid #ddd;
text-align: center;
background: #eee;
border-radius: 0 0 3px 3px;
}
.um-admin-modal-foot a,
.um-admin-modal-foot input{
margin: 0 10px !important;
font-size: 14px !important;
}
.um-admin-modal h3 {
font-size: 14px;
line-height: 14px;
font-weight: normal;
color: #fff;
}
.um-admin-modal h4 {
margin: 0 0 10px 0 !important;
}
.um-admin-modal label,
.um-admin-modal p {
font-size: 13px;
color: #aaa;
}
.um-admin-infobox p,
.um-admin-infobox label {
color: #666;
}
.um-admin-infobox p {
border-top: 1px solid #e5e5e5;
padding-top: 15px;
}
.um-admin-infobox label {
font-weight: bold;
display: block;
color: #333;
cursor: default;
}
/*
- Conditional fields
*/
.um-admin-btn-toggle {
padding: 10px 0;
}
.um-admin-btn-toggle p {
margin: 0 5px 0 0 !important;
}
.um-admin-btn-toggle p.um-admin-reset-conditions {
margin: 0 0 5px 0 !important;
}
.um-admin-btn-toggle a {
text-decoration: none;
color: #999;
}
.um-admin-btn-toggle a.active, .um-admin-btn-toggle a.active:hover {
color: #3ba1da;
}
.um-admin-btn-toggle i {
margin: 0 5px 0 0 !important;
height: 100%;
color: #666;
position: relative;
top: 1px;
}
.um-admin-btn-content {
display: none;
padding: 10px 0 0 0;
}
.um-admin-btn-content p {
float: left;
margin-right: 10px !important;
padding: 0 !important;
}
.dynamic-mce-content {display: none}
/*
- Buttons and Links
*/
.um-admin-btns {
line-height: 1.5em;
margin: 0 0 5px 0;
}
.um-admin-btns a {
margin: 0 3px 8px 0!important;
font-size: 12px !important;
display: inline-block !important;
position: relative;
}
.um-admin-btns a.button.with-icon {
padding-right: 25px !important;
}
.um-admin-btns a span {
color: #aaa;
position: absolute !important;
width: 25px;
text-align: center;
right: 0;
top: 0;
font-size: 15px !important;
}
.um-admin-btns a span.remove:before{
font-family: "Ionicons" !important;
content: "\f128";
}
.um-admin-btns a span:hover{color: #cb3838}
/*
- WP Editor
*/
.um-admin-modal-body.um-admin-metabox .um-admin-editor-h {
margin-top: 12px;
}
.um-admin-modal-body.um-admin-metabox .um-admin-editor-h label,
.um-admin-modal-body.um-admin-metabox .wp-editor-wrap
{margin: 0 0 4px 0 !important}
.um-admin-modal-body.um-admin-metabox .wp-editor-wrap textarea {
border: 0 !important;
}
/*
- Boxes / Icons
*/
#UM_fonticons div.um-admin-metabox {
padding-bottom: 22px !important;
}
p._icon_search{
position: relative;
width: 85% !important;
margin: 0 auto !important;
padding: 12px 0 0 0 !important;
}
p._icon_search:before {
position: absolute;
right: 6px;
top: 12px;
font-size: 20px;
content: "\f4a4";
font-family: "Ionicons";
color: #999;
}
p._icon_search input[type=text]{padding-right: 40px!important}
.um-admin-icons {
padding: 0 0 15px 12px;
float: left;
}
.um-admin-icons span {
cursor: pointer;
float: left;
margin: 5px;
color: #777;
border: 4px solid #eee;
border-radius: 3px;
}
.um-admin-icons span:hover,
.um-admin-icons span.highlighted
{color: #3ba1da;border-color: #3ba1da}
.um-admin-icons i{vertical-align: middle !important;font-size: 24px;width: 24px;text-align: center;padding: 15px 20px;display: inline-block;}
span.um-admin-icon-value {
margin: 0 10px;
font-size: 13px;
}
span.um-admin-icon-value i {
font-size: 28px;
color: #3ba1da;
position: relative;
top: 5px;
}
span.um-admin-icon-clear{
display: none;
cursor: pointer;
position: relative;
color: #ccc;
}
span.um-admin-icon-clear.show {display: inline-block}
span.um-admin-icon-clear:hover {color: #777}
span.um-admin-icon-clear i {font-size: 20px;vertical-align: middle;}

View File

@ -1,224 +0,0 @@
/*
- ReduxPanel
*/
.redux-container {
border-radius: 0 !important;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
background: none !important;
box-shadow: none !important;
border: 0 !important;
}
.redux-container #import_export_default_section_group h4 {
margin: 0 0 12px 0 !important;
}
.redux-container #import_export_default_section_group .hr {
height: 4px !important;
}
.redux-sidebar .redux-group-menu li.active a, .redux-sidebar .redux-group-menu li.active a:hover, .redux-sidebar .redux-group-menu li.activeChild a, .redux-sidebar .redux-group-menu li.activeChild a:hover {
background: transparent;
}
.redux-container #info_bar {
display: none;
}
.redux-sidebar .redux-group-menu {
font-size: 14px;
}
.redux-sidebar .redux-group-menu li.active a, .admin-color-fresh .redux-sidebar .redux-group-menu li.activeChild a {
color: #3ba1da !important;
background: #e5e5e5 !important;
}
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections a {
color: #fff !important;
}
.redux-container .redux_field_th {
font-size: 14px;
font-weight: 600;
color: #222;
}
.redux-main {
background: none !important;
box-shadow: none !important;
border-left: 0 !important;
padding: 0 25px;
}
.redux-container-sortable .checkbox-container input {
display: none;
}
#redux-header {
background: transparent !important;
border: none !important;
padding: 0 !important;
}
.redux-container #redux-header .display_header {
margin: 0 0 10px 0 !important;
}
#redux-header .display_header span {
font-size: 15px;
position: relative;
top: -8px;
left: -2px;
padding-left: 0;
font-weight: 400;
line-height: 29px;
color: #222 !important;
}
#redux-header h2 {
color: #222;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-size: 23px;
font-weight: 400;
padding: 1px 15px 4px 0px;
line-height: 29px;
}
#redux-share {margin-top: 11px !important}
#redux-share a {
margin: 0 15px 0 0 !important;
text-decoration: none !important;
color: #777 !important;
font-size: 22px !important;
}
#redux-share a:hover {color: #3ba1da !important}
.redux-main .form-table tr {
border-bottom: 0;
}
.redux-main .redux-option-image {
max-width: 200px;
max-height: 200px;
}
.redux-container #redux-footer {
border-radius: 0;
background: none !important;
padding: 10px 0;
border-top: 1px solid #D8D8D8;
}
.redux-container #redux-footer .redux-action_bar {
padding-top: 9px !important;
}
.redux-container textarea, .redux-container input[type=text], .redux-container ul.data-full li {
font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
font-size: 13px;
line-height: 19px;
color: #333;
}
.redux-sidebar .redux-group-tab-link-a i {
vertical-align: middle;
font-size: 1.2em;
position: absolute;
width: 20px;
text-align: center;
top: 6px;
color: #888;
}
@media screen and (max-width:1124px){
.redux-sidebar .redux-group-tab-link-a i {
position: relative;
top: auto;
}
.redux-sidebar .redux-group-menu li a {
text-align: center;
padding: 6px !important;
}
}
.redux-sidebar .redux-menu-warning i, .redux-sidebar .redux-menu-error i, .redux-sidebar .hasSubSections .extraIconSubsections i {
top: 11px;
}
.redux-container ul.data-full{padding:0!important;margin:0!important}
.redux-container .description {
color: #666 !important;
font-size: 14px !important;
font-style: italic !important;
margin-top: 10px !important;
}
.redux-container-switch {font-size: 13px}
.redux-sidebar .redux-group-menu li {
margin-top: 4px;
}
.redux-sidebar .redux-group-menu li a {
color: #555;
opacity: 1 !important;
padding: 6px 4px 6px 14px;
border-radius: 3px;
border: none;
transition: all .2s linear !important;
}
.redux-sidebar .redux-group-menu li a:hover {
background: #e5e5e5;
color: #333;
}
.redux-main #redux-sticky {
margin: 0;
min-height: auto;
}
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections a {
background: #3ba1da !important;
color: #fff;
}
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections a i {color: #fff !important}
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li.active {
border-right: 0;
}
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li {
border-right: 0;
margin-top: 4px;
padding-left: 12px;
}
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li a {
background: transparent !important;
color: #555 !important;
border-bottom: 0;
padding: 6px 4px 6px 14px !important;
}
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li a:hover {
background: #e5e5e5 !important;
color: #333 !important;
}
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li.active a {
color: #3ba1da !important;
background: #e5e5e5 !important;
text-shadow: none !important;
}
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections .active a:after {
border: none !important;
}

View File

@ -1,74 +0,0 @@
.um-admin-yesno span.yes, .um-admin-yesno span.no {
padding: 0 10px 0 0;
}
.um-admin-drag-ctrls-demo.um-admin-drag-ctrls {
left: 12px;
right: auto;
}
.um-admin-drag-row-icons {
left: 0;
right: auto;
}
.um-admin-drag-ctrls.columns {
right: 0 !important;
left: auto;
}
.um-admin-drag-ctrls.columns a {
float: right;
}
.um-admin-drag-rowsub-icons {
right: auto;
left: 0;
}
.um-admin-drag-row-icons a {
float: right;
}
.um-admin-drag-fld-icons a {
float: right;
}
.um-admin-drag-fld-icons {
float: left;
}
.um-admin-drag-fld-title, .um-admin-drag-fld-type {
float: right;
margin: 0 20px 0 0;
}
.redux-main {
margin-left: 0!important;
margin-right: 201px !important;
}
#redux-header h2 {
padding: 2px 0 4px 15px;
}
.redux-container #redux-header .display_header {float: right}
.admin-color-fresh .redux-sidebar .redux-group-menu li.hasSubSections a .extraIconSubsections {float: left}
.select2-container .select2-choice > .select2-chosen {
text-align: right !important;
}
.select2-container .select2-choice .select2-arrow {
border: none !important;
right: auto !important;
left: 0 !important;
}
.select2-container .select2-choice > .select2-chosen {
margin-right: 10px !important;
margin-left: 26px !important;
}
.redux-container-switch .switch-options {float: right;margin-right:0!important}

View File

@ -1,84 +0,0 @@
body.um-admin .actions,
body.um-admin .bulkactions {
float: left;
margin: 0!important;
padding:0!important;
top: 0!important;
}
body.um-admin .actions .button {
height: 29px !important;
margin: 0 12px 0 0 !important;
display: inline !important;
position: relative;
}
body.um-admin .select2-container {margin-right: 2px!important;}
body.um-admin .select2-drop,
body.um-admin .select2-drop.select2-drop-above,
body.um-admin .select2-drop-active,
body.um-admin .select2-container-multi .select2-choices
{border: 1px solid #ddd !important}
body.um-admin .select2-container .select2-choice
{
height: 27px !important;
line-height: 27px !important;
border: 1px solid #ddd !important;
color: #888 !important;
}
body.um-admin .select2-container .select2-choice > .select2-chosen {
font-size: 13px !important;
}
body.um-admin .select2-container .select2-choice {
font-size: 13px !important;
}
body.um-admin .select2-container .select2-choice .select2-arrow:before {
font-size: 23px !important;
line-height: 27px;
}
body.um-admin .select2-search-choice-close:before {
font-size: 20px !important;
color: #aaa;
line-height: 27px;
}
body.um-admin .select2-container-multi .select2-search-choice-close:before {
font-size: 15px !important;
}
body.um-admin .select2-search input[type=text] {
font-size: 13px !important;
}
body.um-admin .select2-results li {
font-size: 13px !important;
}
body.um-admin .select2-results .select2-no-results,
body.um-admin .select2-results .select2-searching,
body.um-admin .select2-results .select2-selection-limit {
font-size: 13px !important;
}
body.um-admin .select2-container-multi .select2-choices .select2-search-choice {
line-height: 13px !important;
font-size: 13px !important;
}
body.um-admin .select2-drop-mask {
z-index: 10020 !important;
}
body.um-admin .select2-drop {
z-index: 10030 !important;
}
body.um-admin .select2-search {
z-index: 10040 !important;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

View File

@ -1,53 +0,0 @@
jQuery(document).ready(function() {
jQuery(document).ajaxStart(function(){
jQuery('.tipsy').hide();
});
jQuery(document).on('click', 'a[data-silent_action^="um_"]',function(){
in_row = '';
in_sub_row = '';
in_column = '';
in_group = '';
if ( jQuery('.um-col-demon-settings').data('in_column') ) {
in_row = jQuery('.um-col-demon-settings').data('in_row');
in_sub_row = jQuery('.um-col-demon-settings').data('in_sub_row');
in_column = jQuery('.um-col-demon-settings').data('in_column');
in_group = jQuery('.um-col-demon-settings').data('in_group');
}
act_id = jQuery(this).data('silent_action');
arg1 = jQuery(this).data('arg1');
arg2 = jQuery(this).data('arg2');
jQuery('.tipsy').hide();
um_admin_remove_modal();
jQuery.ajax({
url: ultimatemember_ajax_url,
type: 'POST',
data: {action: 'ultimatemember_do_ajax_action', act_id : act_id, arg1 : arg1, arg2 : arg2, in_row: in_row, in_sub_row: in_sub_row, in_column: in_column, in_group: in_group },
success: function(data){
jQuery('.um-col-demon-settings').data('in_row', '');
jQuery('.um-col-demon-settings').data('in_sub_row', '');
jQuery('.um-col-demon-settings').data('in_column', '');
jQuery('.um-col-demon-settings').data('in_group', '');
um_admin_modal_responsive();
um_admin_update_builder();
},
error: function(data){
}
});
return false;
});
});

View File

@ -1,42 +0,0 @@
/**
This function updates the
builder area with fields
**/
function um_admin_update_builder(){
form_id = jQuery('.um-admin-builder').data('form_id');
jQuery('.tipsy').hide();
jQuery.ajax({
url: ultimatemember_ajax_url,
type: 'POST',
data: {action: 'update_builder', form_id: form_id },
success: function(data){
jQuery('.um-admin-drag-ajax').html(data);
jQuery('.tipsy').hide();
/* trigger columns at start */
allow_update_via_col_click = false;
jQuery('.um-admin-drag-ctrls.columns a.active').each(function(){
jQuery(this).trigger('click');
}).promise().done( function(){ allow_update_via_col_click = true; } );
UM_Rows_Refresh();
},
error: function(data){
}
});
return false;
}
jQuery(document).ready(function() {
});

View File

@ -1,3 +0,0 @@
jQuery(document).ready(function() {
});

View File

@ -1,410 +0,0 @@
function UM_Drag_and_Drop(){
jQuery('.um-admin-drag-col,.um-admin-drag-group').sortable({
items: '.um-admin-drag-fld',
connectWith: '.um-admin-drag-col,.um-admin-drag-group',
placeholder: "um-fld-placeholder",
forcePlaceholderSize:true,
update: function(event, ui){
jQuery('#publish').attr('disabled','disabled');
if ( ui.item.hasClass('um-field-type-group') && ui.item.parents('.um-field-type-group').length > 0 ) {
jQuery('.um-admin-drag-col,.um-admin-drag-group').sortable('cancel');
jQuery('#publish').removeAttr('disabled');
} else {
UM_Change_Field_Col();
UM_Change_Field_Grp();
UM_Rows_Refresh();
}
}
});
jQuery('.um-admin-drag-rowsubs').sortable({
items: '.um-admin-drag-rowsub',
placeholder: "um-rowsub-placeholder",
forcePlaceholderSize:true,
zIndex: 9999999999,
update: function(){
jQuery('#publish').attr('disabled','disabled');
UM_update_subrows();
UM_Rows_Refresh();
}
}).disableSelection();
jQuery('.um-admin-drag-rowsub').sortable({
items: '.um-admin-drag-col',
zIndex: 9999999999,
update: function(){
jQuery('#publish').attr('disabled','disabled');
row = jQuery(this);
row.find('.um-admin-drag-col').removeClass('cols-1 cols-2 cols-3 cols-last cols-middle');
row.find('.um-admin-drag-col').addClass('cols-' + row.find('.um-admin-drag-col').length );
row.find('.um-admin-drag-col:last').addClass('cols-last');
if ( row.find('.um-admin-drag-col').length == 3 ) {row.find('.um-admin-drag-col:eq(1)').addClass('cols-middle');}
UM_Change_Field_Col();
UM_Change_Field_Grp();
UM_Rows_Refresh();
}
}).disableSelection();
jQuery('.um-admin-drag-ajax').sortable({
items: '.um-admin-drag-row',
handle: ".um-admin-drag-row-start",
zIndex: 9999999999,
placeholder: "um-row-placeholder",
forcePlaceholderSize:true,
out: function(){
jQuery('.tipsy').remove();
},
update: function(){
jQuery('#publish').attr('disabled','disabled');
UM_update_rows();
UM_Change_Field_Col();
UM_Change_Field_Grp();
UM_Rows_Refresh();
}
}).disableSelection();
}
function UM_update_rows(){
var c = 0;
jQuery('a[data-remove_element="um-admin-drag-row"]').remove();
jQuery('.um-admin-drag-row').each(function(){
c++;
row = jQuery(this);
if ( c != 1 ) {
row.find('.um-admin-drag-row-icons').append( '<a href="#" class="um-admin-tipsy-n" title="Delete Row" data-remove_element="um-admin-drag-row"><i class="um-faicon-trash-o"></i></a>' );
}
});
}
function UM_update_subrows(){
jQuery('a[data-remove_element="um-admin-drag-rowsub"]').remove();
jQuery('.um-admin-drag-row').each(function(){
c = 0;
jQuery(this).find('.um-admin-drag-rowsub').each(function(){
c++;
row = jQuery(this);
if ( c != 1 ) {
row.find('.um-admin-drag-rowsub-icons').append('<a href="#" class="um-admin-tipsy-n" title="Delete Row" data-remove_element="um-admin-drag-rowsub"><i class="um-faicon-trash-o"></i></a>');
}
});
});
}
function UM_Change_Field_Col(){
jQuery('.um-admin-drag-col .um-admin-drag-fld').each(function(){
cols = jQuery(this).parents('.um-admin-drag-rowsub').find('.um-admin-drag-col').length;
col = jQuery(this).parents('.um-admin-drag-col');
if ( col.hasClass('cols-last') ) {
if ( cols == 1 ) {
saved_col = 1;
}
if ( cols == 3 ) {
saved_col = 3;
} else if ( cols == 2 ) {
saved_col = 2;
}
} else if ( col.hasClass('cols-middle') && cols == 3 ) {
saved_col = 2;
} else {
saved_col = 1;
}
jQuery(this).data('column', saved_col);
});
}
function UM_Change_Field_Grp(){
jQuery('.um-admin-drag-col .um-admin-drag-fld:not(.um-field-type-group)').each(function(){
if ( jQuery(this).parents('.um-admin-drag-group').length == 0 ){
jQuery(this).data('group', '');
} else {
jQuery(this).data('group', jQuery(this).parents('.um-admin-drag-fld.um-field-type-group').data('key') );
}
});
}
function UM_Rows_Refresh(){
jQuery('.um_update_order_fields').empty();
/* ROWS */
var c = 0;
jQuery('.um-admin-drag-row').each(function(){
c++;
row = jQuery(this);
col_num = '';
row.find('.um-admin-drag-rowsub').each(function(){
subrow = jQuery(this);
subrow.find('.um-admin-drag-col').removeClass('cols-1 cols-2 cols-3 cols-last cols-middle');
subrow.find('.um-admin-drag-col').addClass('cols-' + subrow.find('.um-admin-drag-col').length );
subrow.find('.um-admin-drag-col:last').addClass('cols-last');
if ( subrow.find('.um-admin-drag-col').length == 3 ) {subrow.find('.um-admin-drag-col:eq(1)').addClass('cols-middle');}
if ( !col_num ) {
col_num = subrow.find('.um-admin-drag-col').length;
} else {
col_num = col_num + ':' + subrow.find('.um-admin-drag-col').length;
}
});
jQuery('.um_update_order_fields').append('<input type="hidden" name="_um_rowcols_'+c+'_cols" id="_um_rowcols_'+c+'_cols" value="'+col_num+'" />');
sub_rows_count = row.find('.um-admin-drag-rowsub').length;
var origin_id = jQuery(this).attr('data-original');
jQuery('.um_update_order_fields').append('<input type="hidden" name="_um_row_'+c+'" id="_um_row_'+c+'" value="_um_row_'+c+'" />');
jQuery('.um_update_order_fields').append('<input type="hidden" name="_um_roworigin_'+c+'_val" id="_um_roworigin_'+c+'_val" value="'+origin_id+'" />');
jQuery('.um_update_order_fields').append('<input type="hidden" name="_um_rowsub_'+c+'_rows" id="_um_rowsub_'+c+'_rows" value="'+sub_rows_count+'" />');
jQuery(this).attr('data-original', '_um_row_'+c );
});
/* FIELDS */
var order;
order = 0;
jQuery('.um-admin-drag-col .um-admin-drag-fld').each(function(){
if ( !jQuery(this).hasClass('group') ) {
var group = jQuery(this).data('group');
if ( group != '' ) {
if ( jQuery('.um-admin-drag-fld.um-field-type-group.' + group ).find('.um-admin-drag-group').find( jQuery(this) ).length == 0 ) {
jQuery(this).appendTo( jQuery('.um-admin-drag-fld.um-field-type-group.' + group ).find('.um-admin-drag-group') );
} else {
//jQuery(this).prependTo( jQuery('.um-admin-drag-fld.um-field-type-group.' + group ).find('.um-admin-drag-group') );
}
jQuery('.um_update_order_fields').append('<input type="hidden" name="um_group_'+jQuery(this).data('key')+'" id="um_group_'+jQuery(this).data('key')+'" value="'+group+'" />');
} else {
jQuery('.um_update_order_fields').append('<input type="hidden" name="um_group_'+jQuery(this).data('key')+'" id="um_group_'+jQuery(this).data('key')+'" value="" />');
}
}
order++;
row = jQuery(this).parents('.um-admin-drag-row').index()+1;
row = '_um_row_'+row;
saved_col = jQuery(this).data('column');
if ( saved_col == 3 ){
jQuery(this).appendTo( jQuery(this).parents('.um-admin-drag-rowsub').find('.um-admin-drag-col:eq(2)') );
}
if ( saved_col == 2 ){
jQuery(this).appendTo( jQuery(this).parents('.um-admin-drag-rowsub').find('.um-admin-drag-col:eq(1)') );
}
sub_row = jQuery(this).parents('.um-admin-drag-rowsub').index();
jQuery('.um_update_order_fields').append('<input type="hidden" name="um_position_'+jQuery(this).data('key')+'" id="um_position_'+jQuery(this).data('key')+'" value="'+order+'" />');
jQuery('.um_update_order_fields').append('<input type="hidden" name="um_row_'+jQuery(this).data('key')+'" id="um_row_'+jQuery(this).data('key')+'" value="'+row+'" />');
jQuery('.um_update_order_fields').append('<input type="hidden" name="um_subrow_'+jQuery(this).data('key')+'" id="um_subrow_'+jQuery(this).data('key')+'" value="'+sub_row+'" />');
jQuery('.um_update_order_fields').append('<input type="hidden" name="um_col_'+jQuery(this).data('key')+'" id="um_col_'+jQuery(this).data('key')+'" value="'+saved_col+'" />');
});
UM_Drag_and_Drop();
UM_Add_Icon();
jQuery.ajax({
url: ultimatemember_ajax_url,
type: 'POST',
data: jQuery('.um_update_order').serialize(),
success: function(){
jQuery('#publish').removeAttr('disabled');
}
});
}
function UM_Add_Icon(){
var add_icon_html = '<a href="#" class="um-admin-drag-add-field um-admin-tipsy-n" title="Add Field" data-modal="UM_fields" data-modal-size="normal" data-dynamic-content="um_admin_show_fields" data-arg2="'+jQuery('.um-admin-drag-ajax').data('form_id')+'" data-arg1=""><i class="um-icon-plus"></i></a>';
jQuery('.um-admin-drag-col').each(function(){
if ( jQuery(this).find('.um-admin-drag-add-field').length == 0 ) {
jQuery(this).append(add_icon_html);
} else {
jQuery(this).find('.um-admin-drag-add-field').remove();
jQuery(this).append(add_icon_html);
}
});
jQuery('.um-admin-drag-group').each(function(){
if ( jQuery(this).find('.um-admin-drag-add-field').length == 0 ) {
jQuery(this).append(add_icon_html);
} else {
jQuery(this).find('.um-admin-drag-add-field').remove();
jQuery(this).append(add_icon_html);
}
});
}
jQuery(document).ready(function() {
if ( !jQuery('.um-admin-drag').length ) return false;
UM_Drag_and_Drop();
/* add field to respected area */
jQuery(document).on('click', 'a.um-admin-drag-add-field', function(){
in_row = jQuery(this).parents('.um-admin-drag-row').index();
in_sub_row = jQuery(this).parents('.um-admin-drag-rowsub').index();
if ( jQuery(this).parents('.um-admin-drag-rowsub').find('.um-admin-drag-col').length == 1 ) {
in_column = 1;
} else {
if ( jQuery(this).parents('.um-admin-drag-col').hasClass('cols-middle')){
in_column = 2;
} else if ( jQuery(this).parents('.um-admin-drag-col').hasClass('cols-last') ) {
if ( jQuery(this).parents('.um-admin-drag-rowsub').find('.um-admin-drag-col').length == 3 ) {
in_column = 3;
} else {
in_column = 2;
}
} else {
in_column = 1;
}
}
if ( jQuery(this).parents('.um-admin-drag-group').length ) {
in_group = jQuery(this).parents('.um-admin-drag-fld.um-field-type-group').data('key');
} else {
in_group = '';
}
jQuery('.um-col-demon-settings').data('in_row', in_row);
jQuery('.um-col-demon-settings').data('in_sub_row', in_sub_row);
jQuery('.um-col-demon-settings').data('in_column', in_column);
jQuery('.um-col-demon-settings').data('in_group', in_group);
});
/* add row */
jQuery(document).on('click', '*[data-row_action="add_row"]', function(){
var dragg = jQuery('.um-admin-drag-ajax');
dragg.append( '<div class="um-admin-drag-row">' + jQuery('.um-col-demon-row').html() + '</div>' );
dragg.find('.um-admin-drag-row:last').find('.um-admin-drag-row-icons').find('a.um-admin-drag-row-edit').attr('data-arg3', '_um_row_' + ( dragg.find('.um-admin-drag-row').length ) );
dragg.find('.um-admin-drag-row:last').attr('data-original', '_um_row_' + ( dragg.find('.um-admin-drag-row').length ) );
UM_update_rows();
UM_update_subrows();
UM_Rows_Refresh();
});
/* add sub row */
jQuery(document).on('click', '*[data-row_action="add_subrow"]', function(){
var dragg = jQuery(this).parents('.um-admin-drag-row').find('.um-admin-drag-rowsubs');
dragg.append( '<div class="um-admin-drag-rowsub">' + jQuery('.um-col-demon-subrow').html() + '</div>' );
UM_update_subrows();
UM_Rows_Refresh();
});
/* remove element */
jQuery(document).on('click', 'a[data-remove_element^="um-"]',function(){
element = jQuery(this).data('remove_element');
jQuery(this).parents('.' +element).find('.um-admin-drag-fld').each(function(){
jQuery(this).find('a[data-silent_action="um_admin_remove_field"]').trigger('click');
});
jQuery(this).parents('.' +element).remove();
jQuery('.tipsy').remove();
UM_Rows_Refresh();
});
/* dynamically change columns */
jQuery(document).on('click', '.um-admin-drag-ctrls.columns a', function(){
var row = jQuery(this).parents('.um-admin-drag-rowsub');
var tab = jQuery(this);
var tabs = jQuery(this).parent();
tabs.find('a').removeClass('active');
tab.addClass('active');
var existing_cols = row.find('.um-admin-drag-col').length;
var required_cols = tab.data('cols');
var needed_cols = required_cols - existing_cols;
if ( needed_cols > 0 ) {
for (i = 0; i < needed_cols; i++){
row.find('.um-admin-drag-col-dynamic').append('<div class="um-admin-drag-col"></div>');
}
row.find('.um-admin-drag-col').removeClass('cols-1 cols-2 cols-3 cols-last cols-middle');
row.find('.um-admin-drag-col').addClass('cols-' + row.find('.um-admin-drag-col').length );
row.find('.um-admin-drag-col:last').addClass('cols-last');
if ( row.find('.um-admin-drag-col').length == 3 ) {row.find('.um-admin-drag-col:eq(1)').addClass('cols-middle');}
} else if ( needed_cols < 0 ) {
needed_cols = needed_cols + 3;
if ( needed_cols == 2 ) {
row.find('.um-admin-drag-col:first').append( row.find('.um-admin-drag-col.cols-last').html() );
row.find('.um-admin-drag-col.cols-last').remove();
}
if ( needed_cols == 1 ) {
row.find('.um-admin-drag-col:first').append( row.find('.um-admin-drag-col.cols-last').html() );
row.find('.um-admin-drag-col:first').append( row.find('.um-admin-drag-col.cols-middle').html() );
row.find('.um-admin-drag-col.cols-last').remove();
row.find('.um-admin-drag-col.cols-middle').remove();
}
row.find('.um-admin-drag-col').removeClass('cols-1 cols-2 cols-3 cols-last cols-middle');
row.find('.um-admin-drag-col').addClass('cols-' + row.find('.um-admin-drag-col:visible').length );
row.find('.um-admin-drag-col:last').addClass('cols-last');
}
if ( allow_update_via_col_click == true ) {
UM_Change_Field_Col();
UM_Rows_Refresh();
}
});
/* trigger columns at start */
allow_update_via_col_click = false;
jQuery('.um-admin-drag-ctrls.columns a.active').each(function(){
jQuery(this).trigger('click');
}).promise().done( function(){ allow_update_via_col_click = true; } );
UM_Rows_Refresh();
});

View File

@ -1,89 +0,0 @@
jQuery(document).ready(function() {
/* Remove field permanently */
jQuery(document).on('click', '.um-admin-btns a span.remove', function(e){
e.preventDefault();
if (confirm('This will permanently delete this custom field from database')) {
jQuery(this).parents('a').remove();
arg1 = jQuery(this).parents('a').data('arg1');
jQuery.ajax({
url: ultimatemember_ajax_url,
type: 'POST',
data: {action: 'ultimatemember_do_ajax_action', act_id : 'um_admin_remove_field_global', arg1 : arg1 },
success: function(data){
},
error: function(data){
}
});
}
return false;
});
/* Add a Field */
jQuery(document).on('submit', 'form.um_add_field', function(e){
e.preventDefault();
var form = jQuery(this);
jQuery.ajax({
url: ultimatemember_ajax_url,
type: 'POST',
dataType: 'json',
data: form.serialize(),
beforeSend: function(){
form.css({'opacity': 0.5});
jQuery('.um-admin-error').removeClass('um-admin-error');
form.find('.um-admin-error-block').hide();
form.find('.um-admin-success-block').hide();
},
complete: function(){
form.css({'opacity': 1});
},
success: function(data){
if (data.error){
c = 0;
jQuery.each(data.error, function(i, v){
c++;
if ( c == 1 ) {
form.find('#'+i).addClass('um-admin-error').focus();
form.find('.um-admin-error-block').show().html(v);
}
});
um_admin_modal_responsive();
} else {
jQuery('.um-col-demon-settings').data('in_row', '');
jQuery('.um-col-demon-settings').data('in_sub_row', '');
jQuery('.um-col-demon-settings').data('in_column', '');
jQuery('.um-col-demon-settings').data('in_group', '');
um_admin_remove_modal();
um_admin_update_builder();
}
},
error: function(data){
}
});
return false;
});
});

View File

@ -1,38 +0,0 @@
jQuery(document).ready(function() {
/* Default form tab */
if ( jQuery('.um-admin-boxed-links').length > 0 ) {
var tab = jQuery('.um-admin-boxed-links a[data-role="'+jQuery('input#_um_mode').val()+'"]');
tab.parents('.um-admin-boxed-links').find('a').removeClass('um-admin-activebg');
tab.addClass('um-admin-activebg');
jQuery('.um-admin div#side-sortables').show();
jQuery('div[id^="um-admin-form"]').hide();
jQuery('#submitdiv').show();
jQuery('div#um-admin-form-mode,div#um-admin-form-title,div#um-admin-form-builder,div#um-admin-form-shortcode').show();
jQuery('div[id^="um-admin-form-'+tab.data('role')+'"]').show();
jQuery('.empty-container').css({'border' : 'none'});
jQuery('.um-admin-builder').removeClass().addClass( 'um-admin-builder ' + jQuery('input#_um_mode').val() );
}
/* Creating new form button */
jQuery('.um-admin-boxed-links:not(.is-core-form) a').click(function(){
var tab = jQuery(this);
tab.parents('.um-admin-boxed-links').find('a').removeClass('um-admin-activebg');
tab.addClass('um-admin-activebg');
jQuery('.um-admin div#side-sortables').show();
jQuery('div[id^="um-admin-form"]').hide();
jQuery('#submitdiv').show();
jQuery('div#um-admin-form-mode,div#um-admin-form-title,div#um-admin-form-builder,div#um-admin-form-shortcode').show();
jQuery('div[id^="um-admin-form-'+tab.data('role')+'"]').show();
jQuery('input#_um_mode').val( tab.data('role') );
jQuery('.empty-container').css({'border' : 'none'});
jQuery('.um-admin-builder').removeClass().addClass( 'um-admin-builder ' + jQuery('input#_um_mode').val() );
});
});

View File

@ -1,331 +0,0 @@
function um_admin_live_update_scripts() {
jQuery('.um-admin-modal-body:visible select').select2({
allowClear: false,
minimumResultsForSearch: 10
});
jQuery('.um-adm-conditional').each(function(){jQuery(this).trigger('change');});
jQuery('.um-admin-colorpicker').wpColorPicker();
}
function um_admin_new_modal( id, ajax, size ){
var modal = jQuery('body').find('.um-admin-overlay');
jQuery('.tipsy').hide();
um_admin_remove_modal();
jQuery('body').addClass('um-admin-modal-open').append('<div class="um-admin-overlay" /><div class="um-admin-modal" />');
jQuery('#' + id).prependTo('.um-admin-modal');
jQuery('#' + id).show();
jQuery('.um-admin-modal').show();
jQuery('.um-admin-modal-head').append('<a href="#" data-action="UM_remove_modal" class="um-admin-modal-close"><i class="um-faicon-times"></i></a>');
if ( ajax == true ) {
um_admin_modal_size( size );
um_admin_modal_preload();
um_admin_modal_responsive();
} else {
um_admin_modal_responsive();
}
}
function um_admin_modal_ajaxcall( act_id, arg1, arg2, arg3 ) {
in_row = '';
in_sub_row = '';
in_column = '';
in_group = '';
if ( jQuery('.um-col-demon-settings').data('in_column') ) {
in_row = jQuery('.um-col-demon-settings').data('in_row');
in_sub_row = jQuery('.um-col-demon-settings').data('in_sub_row');
in_column = jQuery('.um-col-demon-settings').data('in_column');
in_group = jQuery('.um-col-demon-settings').data('in_group');
}
jQuery.ajax({
url: ultimatemember_ajax_url,
type: 'POST',
data: {action: 'ultimatemember_dynamic_modal_content', act_id: act_id, arg1 : arg1, arg2 : arg2, arg3: arg3, in_row: in_row, in_sub_row: in_sub_row, in_column: in_column, in_group: in_group },
complete: function(){
um_admin_modal_loaded();
um_admin_modal_responsive();
},
success: function(data){
jQuery('.um-admin-modal').find('.um-admin-modal-body').html( data );
um_responsive();
um_admin_live_update_scripts();
if ( jQuery('.um-admin-editor:visible').length > 0 ) {
if ( act_id == 'um_admin_edit_field_popup' ) {
tinyMCE.execCommand('mceRemoveEditor', true, 'um_editor_edit');
jQuery('.um-admin-editor:visible').html( jQuery('.um-hidden-editor-edit').contents() );
tinyMCE.execCommand('mceAddEditor', true, 'um_editor_edit');
jQuery('.switch-html').trigger('click');
jQuery('.switch-html').trigger('click');
jQuery('.switch-tmce').trigger('click');
jQuery('#um_editor_edit_ifr').height(200);
var editor = tinyMCE.get('um_editor_edit');
var content = editor.getContent();
editor.setContent( jQuery('.um-admin-modal:visible .dynamic-mce-content').html() );
} else {
tinyMCE.execCommand('mceRemoveEditor', true, 'um_editor_new');
jQuery('.um-admin-editor:visible').html( jQuery('.um-hidden-editor-new').contents() );
tinyMCE.execCommand('mceAddEditor', true, 'um_editor_new');
jQuery('.switch-html').trigger('click');
jQuery('.switch-html').trigger('click');
jQuery('.switch-tmce').trigger('click');
jQuery('#um_editor_new_ifr').height(200);
}
}
},
error: function(data){
}
});
return false;
}
function um_admin_modal_responsive() {
var required_margin = jQuery('.um-admin-modal:visible').innerHeight() / 2 + 'px';
jQuery('.um-admin-modal:visible').css({'margin-top': '-' + required_margin });
}
function um_admin_remove_modal(){
if ( jQuery('.um-admin-editor:visible').length > 0 ) {
if ( jQuery('.um-admin-modal:visible').find('form').parent().attr('id') == 'UM_edit_field' ) {
tinyMCE.execCommand('mceRemoveEditor', true, 'um_editor_edit');
jQuery('.um-hidden-editor-edit').html( jQuery('.um-admin-editor:visible').contents() );
tinyMCE.execCommand('mceAddEditor', true, 'um_editor_edit');
} else {
tinyMCE.execCommand('mceRemoveEditor', true, 'um_editor_new');
jQuery('.um-hidden-editor-new').html( jQuery('.um-admin-editor:visible').contents() );
tinyMCE.execCommand('mceAddEditor', true, 'um_editor_new');
}
}
jQuery('body').removeClass('um-admin-modal-open');
jQuery('.um-admin-modal div[id^="UM_"]').hide().appendTo('body');
jQuery('.um-admin-modal,.um-admin-overlay').remove();
}
function um_admin_modal_preload() {
jQuery('.um-admin-modal:visible').addClass('loading');
jQuery('.um-admin-modal-body:visible').empty();
}
function um_admin_modal_loaded() {
jQuery('.um-admin-modal:visible').removeClass('loading');
}
function um_admin_modal_size( aclass ) {
jQuery('.um-admin-modal:visible').addClass(aclass);
}
function um_admin_modal_add_attr( id, value ) {
jQuery('.um-admin-modal:visible').data( id, value );
}
/**
Custom modal scripting starts
**/
jQuery(document).ready(function() {
/**
disable link
**/
jQuery(document).on('click', '.um-admin-builder a, .um-admin-modal a', function(e){
e.preventDefault();
return false;
});
/**
toggle area
**/
jQuery(document).on('click', '.um-admin-btn-toggle a', function(e){
var content = jQuery(this).parent().find('.um-admin-btn-content');
var link = jQuery(this);
if ( content.is(':hidden') ) {
content.show();
link.find('i').removeClass().addClass('um-icon-minus');
link.addClass('active');
} else {
content.hide();
link.find('i').removeClass().addClass('um-icon-plus');
link.removeClass('active');
}
um_admin_modal_responsive();
});
/**
clone a condition
**/
jQuery(document).on('click', '.um-admin-new-condition', function(){
var content = jQuery(this).parents('.um-admin-btn-content');
content.find('select').select2('destroy');
var length = content.find('.um-admin-cur-condition').length;
if ( length < 5 ) {
var cloned = jQuery(this).parents('.um-admin-cur-condition').clone();
cloned.find('input[type=text],select').each(function(){
jQuery(this).attr('id', jQuery(this).attr('id') + length );
jQuery(this).attr('name', jQuery(this).attr('name') + length );
});
cloned.find('input[type=text]').val('');
cloned.find('.um-admin-new-condition').replaceWith('<p><a href="#" class="um-admin-remove-condition button um-admin-tipsy-n" title="Remove condition"><i class="um-icon-close" style="margin-right:0!important"></i></a></p>');
cloned.appendTo( content );
cloned.find('select').val('');
um_admin_live_update_scripts();
um_admin_modal_responsive();
} else {
alert('You already have 5 rules');
}
});
/**
reset conditions
**/
jQuery(document).on('click', '.um-admin-reset-conditions a', function(){
var content = jQuery(this).parents('.um-admin-btn-content');
content.find('.um-admin-cur-condition').slice(1).remove();
content.find('input[type=text]').val('');
content.find('select').val('');
um_admin_live_update_scripts();
um_admin_modal_responsive();
});
/**
remove a condition
**/
jQuery(document).on('click', '.um-admin-remove-condition', function(){
var condition = jQuery(this).parents('.um-admin-cur-condition');
jQuery('.tipsy').remove();
condition.remove();
um_admin_live_update_scripts();
um_admin_modal_responsive();
});
/**
remove modal via action
**/
jQuery(document).on('click', '.um-admin-overlay, a[data-action="UM_remove_modal"]', function(){
um_admin_remove_modal();
});
/**
fire new modal
**/
jQuery(document).on('click', 'a[data-modal^="UM_"], span[data-modal^="UM_"]', function(e){
e.preventDefault();
var modal_id = jQuery(this).attr('data-modal');
if ( jQuery(this).attr('data-back') ) {
jQuery('#UM_fonticons').find('a.um-admin-modal-back').attr("data-modal", jQuery(this).attr('data-back') );
var current_icon = jQuery( '#' + jQuery(this).attr('data-back') ).find('input#_icon').val();
if ( current_icon == '' ) {
jQuery('#UM_fonticons').find('.um-admin-icons span').removeClass('highlighted');
}
}
if ( jQuery(this).data('dynamic-content') ) {
um_admin_new_modal( modal_id, true, jQuery(this).data('modal-size') );
um_admin_modal_ajaxcall( jQuery(this).data('dynamic-content'), jQuery(this).data('arg1'), jQuery(this).data('arg2'), jQuery(this).data('arg3') );
} else {
um_admin_new_modal( modal_id );
}
return false;
});
/**
choose font icon
**/
jQuery(document).on('click', '.um-admin-icons span', function(){
var icon = jQuery(this).attr('data-code');
jQuery(this).parent().find('span').removeClass('highlighted');
jQuery(this).addClass('highlighted');
jQuery('#UM_fonticons').find('a.um-admin-modal-back').attr("data-code", icon);
});
/**
submit font icon
**/
jQuery(document).on('click', '#UM_fonticons a.um-admin-modal-back:not(.um-admin-modal-cancel)', function(){
var v_id = '';
var icon_selected = jQuery(this).attr('data-code');
if (icon_selected != ''){
if ( jQuery(this).attr('data-modal') ) {
v_id = '#' + jQuery(this).attr('data-modal');
} else {
v_id = '.postbox';
}
jQuery( v_id ).find('input#_icon,input#_um_icon').val( icon_selected );
jQuery( v_id ).find('span.um-admin-icon-value').html('<i class="'+icon_selected+'"></i>');
jQuery( v_id ).find('.um-admin-icon-clear').show();
}
jQuery(this).attr('data-code', '');
if ( v_id == '.postbox' ) {
um_admin_remove_modal();
}
});
/**
restore font icon
**/
jQuery(document).on('click', 'span.um-admin-icon-clear', function(){
var element = jQuery(this).parents('p');
jQuery('#UM_fonticons a.um-admin-modal-back').attr('data-code', '');
element.find('input[type=hidden]').val('');
element.find('.um-admin-icon-value').html('No Icon');
jQuery(this).hide();
});
/**
search font icons
**/
jQuery(document).on('keyup blur', '#_icon_search', function(){
if ( jQuery(this).val().toLowerCase() != '' ) {
jQuery('.um-admin-icons span').hide();
jQuery('.um-admin-icons span[data-code*="'+jQuery(this).val().toLowerCase()+'"]').show();
} else {
jQuery('.um-admin-icons span:hidden').show();
}
um_admin_modal_responsive();
});
});

View File

@ -1,189 +0,0 @@
jQuery(document).ready(function() {
/**
clone a field dropdown
**/
jQuery(document).on('click', '.um-admin-clone', function(e){
e.preventDefault();
var container = jQuery(this).parents('.um-admin-field');
var parent = jQuery(this).parents('p').find('.um-admin-field:last-child');
container.find('select').select2('destroy');
var cloned = container.clone();
cloned.find('.um-admin-clone').replaceWith('<a href="#" class="um-admin-clone-remove button um-admin-tipsy-n" title="Remove Field"><i class="um-icon-close" style="margin-right:0!important"></i></a>');
cloned.insertAfter( parent );
cloned.find('select').val('');
jQuery('.um-admin-field select').select2({
allowClear: true,
minimumResultsForSearch: 10
});
return false;
});
/**
remove a field dropdown
**/
jQuery(document).on('click', '.um-admin-clone-remove', function(e){
e.preventDefault();
var container = jQuery(this).parents('.um-admin-field');
jQuery('.tipsy').remove();
container.remove();
jQuery('.um-admin-field select').select2({
allowClear: true,
minimumResultsForSearch: 10
});
return false;
});
/**
Ajax link
**/
jQuery('.um-admin-ajaxlink').click(function(e){
e.preventDefault();
return false;
});
/**
On/Off Buttons
**/
jQuery(document).on('click', '.um-admin-yesno span.btn', function(){
if (!jQuery(this).parents('p').hasClass('disabled-on-off')){
if ( jQuery(this).parent().find('input[type=hidden]').val() == 0 ){
update_val = 1;
jQuery(this).animate({'left': '48px'}, 200);
jQuery(this).parent().find('input[type=hidden]').val( update_val ).trigger('change');
} else {
update_val = 0;
jQuery(this).animate({'left': '0'}, 200);
jQuery(this).parent().find('input[type=hidden]').val( update_val ).trigger('change');
}
}
});
/**
WP Color Picker
**/
jQuery('.um-admin-colorpicker').wpColorPicker();
/**
Select Dropdowns
**/
jQuery(".umaf-selectjs").select2({
allowClear: false,
minimumResultsForSearch: 10
});
jQuery('.um-admin-field select').select2({
allowClear: true,
minimumResultsForSearch: 10
});
jQuery("body.um-admin .actions select:not('.umaf-selectjs')").select2({
allowClear: false,
minimumResultsForSearch: 10,
width: '160px'
});
/**
Tooltips
**/
jQuery('.um-admin-tipsy-n,#redux-share a').tipsy({gravity: 'n', opacity: 1, live: 'a.live' });
jQuery('.um-admin-tipsy-w').tipsy({gravity: 'w', opacity: 1, live: 'a.live' });
jQuery('.um-admin-tipsy-e').tipsy({gravity: 'e', opacity: 1, live: 'a.live' });
jQuery('.um-admin-tipsy-s').tipsy({gravity: 's', opacity: 1, live: 'a.live' });
/**
Conditional fields
**/
jQuery(document).on('change', '.um-adm-conditional', function(){
if ( jQuery(this).data('cond1') ) {
if (jQuery(this).val() == jQuery(this).data('cond1') ){
jQuery('.' + jQuery(this).data('cond1-show') ).show();
jQuery('.' + jQuery(this).data('cond1-hide') ).hide();
} else {
jQuery('.' + jQuery(this).data('cond1-show') ).hide();
jQuery('.' + jQuery(this).data('cond1-hide') ).show();
}
}
if ( jQuery(this).data('cond2') ) {
if (jQuery(this).val() == jQuery(this).data('cond2') ){
jQuery('.' + jQuery(this).data('cond2-show') ).show();
jQuery('.' + jQuery(this).data('cond2-hide') ).hide();
} else {
jQuery('.' + jQuery(this).data('cond2-show') ).hide();
jQuery('.' + jQuery(this).data('cond2-hide') ).show();
}
}
if ( jQuery(this).data('cond3') ) {
if (jQuery(this).val() == jQuery(this).data('cond3') ){
jQuery('.' + jQuery(this).data('cond3-show') ).show();
jQuery('.' + jQuery(this).data('cond3-hide') ).hide();
} else {
jQuery('.' + jQuery(this).data('cond3-show') ).hide();
jQuery('.' + jQuery(this).data('cond3-hide') ).show();
}
}
});jQuery('.um-adm-conditional').each(function(){jQuery(this).trigger('change');});
/**
Conditional fields for
Radio Group
**/
jQuery('.um-conditional-radio-group input[type=radio]').click(function(){
var holder = jQuery('.um-conditional-radio-group');
var val = jQuery(this).val();
var cond1 = holder.data('cond1');
var show1 = holder.data('cond1-show');
if ( val == cond1 ) { // condition met
jQuery('.' + show1).show();
} else {
jQuery('.' + show1).hide();
}
var val2 = jQuery(this).val();
var cond2 = holder.data('cond2');
var show2 = holder.data('cond2-show');
if ( val2 == cond2 ) { // condition met
jQuery('.' + show2).show();
} else {
jQuery('.' + show2).hide();
}
});jQuery('.um-conditional-radio-group input[type=radio]:checked').each(function(){jQuery(this).trigger('click');});
/**
Conditional fields for
nav-menu editor options
**/
jQuery('.um-nav-mode').each(function(){
if ( jQuery(this).find('input[type=radio]:checked').val() ) {
if ( jQuery(this).find('input[type=radio]:checked').val() == 2 ) {
jQuery(this).parents('.um-nav-edit').find('.um-nav-roles').show();
} else {
jQuery(this).parents('.um-nav-edit').find('.um-nav-roles').hide();
}
}
});
jQuery(document).on('click', '.um-nav-mode input[type=radio]', function(){
if ( jQuery(this).val() == 2 ) {
jQuery(this).parents('.um-nav-edit').find('.um-nav-roles').show();
} else {
jQuery(this).parents('.um-nav-edit').find('.um-nav-roles').hide();
}
});
});

View File

@ -1,3 +0,0 @@
jQuery(document).ready(function() {
});

View File

@ -1,19 +0,0 @@
{
"boss": true,
"immed": true,
"noarg": true,
"onevar": true,
"browser": true,
"globals": {
"_": false,
"jQuery": true,
"module": true,
"console": true,
"document": true,
"window": true,
"redux_change": true,
"redux": true
}
}

View File

@ -1,27 +0,0 @@
First and foremost, PLEASE check to see if you are using the latest version of Redux by checking the repository. If you plan on reporting an issue with any version BUT the latest version, we are going to ask you to upgrade to the latest code base anyway to see if your issue persists. Please save us and yourself some time by taking this simple step first. Thanks!
When submitting a ticket, please make sure you include the following information, It is critical, and required. As Team Redux has not yet earned their certificates in mind reading, we need you to provide for us the following information. :)
1. The version of Redux you are using. Please do not say 'the latest version' as what you perceive as the latest and what might be the latest could easily be two different things. At the bottom of the Redux options panel is a four digit version number. Please include it.
2. The version of Wordpress you are running.
3. Please indicate if you are using Redux in dev_mode.
4. If you are having difficultly with a particular field, please include the config code for that entire field. If the field is dependent on other fields in the section (for example, required arguments are used), then please include the entire section.
5. If you are having difficulty with configuration, please specify if you are using a standalone theme, a child theme, a plugin, etc.
6. Please indicate if you are using Redux as a plugin or embedded in your project.
7. Please check your browser's output console. If there are any javascript errors pertaining to redux, please list them, including the module/file they occurred in and the line number
The follow only applies if Redux is not loading properly:
8. If you are using Redux embedded, please specify the location in which Redux is installed, where you config is located, and the lines of code you are using to initialize Redux and your config.
The way in which we diagnose bugs or config difficulties is to attempt to recreate them on our end. This is why we need the very specific information. Once we are able to confirm the issue, we will either push an update, or assist you in correcting any mistakes in your config.
What we do NOT do is debug your code. We support the Redux code and the way in which the config is put together. Any other issue pertaining to your project is your own, or we might be able to assist with premium support.
- Team Redux

View File

@ -1,441 +0,0 @@
/* jshint node:true */
var shell = require( 'shelljs' );
module.exports = function( grunt ) {
// Project configuration.
grunt.initConfig(
{
pkg: grunt.file.readJSON( 'package.json' ),
concat: {
options: {
separator: ';'
},
core: {
src: [
'ReduxCore/assets/js/vendor/cookie.js',
'ReduxCore/assets/js/vendor/qtip/jquery.qtip.js',
'ReduxCore/assets/js/vendor/jquery.typewatch.js',
'ReduxCore/assets/js/vendor/jquery.serializeForm.js',
'ReduxCore/assets/js/vendor/jquery.alphanum.js',
'ReduxCore/assets/js/redux.js'
],
dest: 'ReduxCore/assets/js/redux.min.js'
},
vendor: {
src: [
'ReduxCore/assets/js/vendor/cookie.js',
'ReduxCore/assets/js/vendor/qtip/jquery.qtip.js',
'ReduxCore/assets/js/vendor/jquery.serializeForm.js',
'ReduxCore/assets/js/vendor/jquery.typewatch.js',
'ReduxCore/assets/js/vendor/jquery.alphanum.js'
],
dest: 'ReduxCore/assets/js/vendor.min.js'
}
},
'gh-pages': {
options: {
base: 'docs',
message: 'Update docs and files to distribute'
},
dev: {
src: ['docs/**/*', 'bin/CNAME']
},
travis: {
options: {
repo: 'https://' + process.env.GH_TOKEN + '@github.com/ReduxFramework/docs.reduxframework.com.git',
user: {
name: 'Travis',
email: 'travis@travis-ci.org'
},
silent: false
},
src: ['**/*']
}
},
uglify: {
fields: {
files: [
{
expand: true,
cwd: 'ReduxCore/inc/fields',
src: ['**/*.js', '!**/*.min.js', '!ace_editor/vendor/*.js', '!ace_editor/vendor/snippets/*.js', '!slider/vendor/nouislider/*.*', '!spinner/vendor/*.*'],
ext: '.min.js',
dest: 'ReduxCore/inc/fields'
}
]
},
extensions: {
files: [
{
expand: true,
cwd: 'ReduxCore/inc/extensions',
src: ['**/*.js', '!**/*.min.js'],
ext: '.min.js',
dest: 'ReduxCore/inc/extensions'
}
]
},
core: {
files: {
'ReduxCore/assets/js/redux.min.js': [
'ReduxCore/assets/js/redux.min.js'
],
'ReduxCore/assets/js/vendor/spectrum/redux-spectrum.min.js': [
'ReduxCore/assets/js/vendor/spectrum/redux-spectrum.js'
],
'ReduxCore/assets/js/vendor/redux.select2.sortable.min.js': [
'ReduxCore/assets/js/vendor/redux.select2.sortable.js'
],
'ReduxCore/assets/js/media/media.min.js': [
'ReduxCore/assets/js/media/media.js'
]
}
},
vendor: {
files: {
'ReduxCore/assets/js/vendor.min.js': [
'ReduxCore/assets/js/vendor.min.js'
]
}
}
},
qunit: {
files: ['test/qunit/**/*.html']
},
// JavaScript linting with JSHint.
jshint: {
options: {
jshintrc: '.jshintrc'
},
files: [
//'Gruntfile.js',
'ReduxCore/assets/js/import_export/import_export.js',
'ReduxCore/assets/js/media/media.js',
'ReduxCore/inc/fields/ace_editor/field_ace_editor.js',
'ReduxCore/inc/fields/background/field_background.js',
'ReduxCore/inc/fields/border/field_border.js',
'ReduxCore/inc/fields/button_set/field_button_set.js',
'ReduxCore/inc/fields/checkbox/field_checkbox.js',
'ReduxCore/inc/fields/color/field_color.js',
'ReduxCore/inc/fields/color_rgba/field_color_rgba.js',
'ReduxCore/inc/fields/date/field_date.js',
'ReduxCore/inc/fields/dimensions/field_dimensions.js',
'ReduxCore/inc/fields/editor/field_editor.js',
'ReduxCore/inc/fields/gallery/field_gallery.js',
'ReduxCore/inc/fields/image_select/field_image_select.js',
'ReduxCore/inc/fields/multi_text/field_multitext.js',
'ReduxCore/inc/fields/palette/field_palette.js',
'ReduxCore/inc/fields/select/field_select.js',
'ReduxCore/inc/fields/select_image/field_select_image.js',
'ReduxCore/inc/fields/slider/field_slider.js',
'ReduxCore/inc/fields/slides/field_slides.js',
'ReduxCore/inc/fields/sortable/field_sortable.js',
'ReduxCore/inc/fields/sorter/field_sorter.js',
'ReduxCore/inc/fields/spacing/field_spacing.js',
'ReduxCore/inc/fields/spinner/field_spinner.js',
'ReduxCore/inc/fields/switch/field_switch.js',
'ReduxCore/inc/fields/typography/field_typography.js',
// 'ReduxCore/inc/fields/**/*.js',
'ReduxCore/extensions/**/*.js',
'ReduxCore/extensions/**/**/*.js',
'ReduxCore/assets/js/redux.js'
]
},
// Watch changes for files.
watch: {
ui: {
files: ['<%= jshint.files %>'],
tasks: ['jshint']
},
php: {
files: ['ReduxCore/**/*.php'],
tasks: ['phplint:core']
},
css: {
files: ['ReduxCore/**/*.less'],
tasks: ['less:development']
}
},
// Add textdomain.
addtextdomain: {
options: {
textdomain: 'redux-framework', // Project text domain.
updateDomains: ['redux', 'redux-framework-demo', 'v'] // List of text domains to replace.
},
target: {
files: {
src: ['*.php', '**/*.php', '!node_modules/**', '!tests/**', '!sample/**']
}
}
},
// Generate POT files.
makepot: {
redux: {
options: {
type: 'wp-plugin',
domainPath: 'ReduxCore/languages',
potFilename: 'redux-framework.pot',
include: [],
exclude: [
'sample/.*'
],
potHeaders: {
poedit: true,
'report-msgid-bugs-to': 'https://github.com/ReduxFramework/ReduxFramework/issues',
'language-team': 'LANGUAGE <support@reduxframework.com>'
}
}
}
},
// Check textdomain errors.
checktextdomain: {
options: {
keywords: [
'__:1,2d',
'_e:1,2d',
'_x:1,2c,3d',
'esc_html__:1,2d',
'esc_html_e:1,2d',
'esc_html_x:1,2c,3d',
'esc_attr__:1,2d',
'esc_attr_e:1,2d',
'esc_attr_x:1,2c,3d',
'_ex:1,2c,3d',
'_n:1,2,4d',
'_nx:1,2,4c,5d',
'_n_noop:1,2,3d',
'_nx_noop:1,2,3c,4d'
]
},
redux: {
cwd: 'ReduxCore/',
options: {
text_domain: 'redux-framework',
},
src: ['**/*.php'],
expand: true
},
sample: {
cwd: 'sample',
options: {
text_domain: 'redux-framework-demo',
},
src: ['**/*.php'],
expand: true
}
},
// Exec shell commands.
shell: {
options: {
stdout: true,
stderr: true
},
// Limited to Maintainers so
// txpush: {
// command: 'tx push -s' // push the resources
// },
txpull: {
command: 'tx pull -a --minimum-perc=25' // pull the .po files
}
},
// Generate MO files.
potomo: {
dist: {
options: {
poDel: true
},
files: [{
expand: true,
cwd: 'ReduxCore/languages/',
src: ['*.po'],
dest: 'ReduxCore/languages/',
ext: '.mo',
nonull: true
}]
}
},
phpdocumentor: {
options: {
directory: 'ReduxCore/',
target: 'docs/'
},
generate: {}
},
phplint: {
options: {
swapPath: './'
},
core: ["ReduxCore/**/*.php"],
plugin: ["class-redux-plugin.php", "index.php", "redux-framework.php"]
},
sass: {
fields: {
options: {
sourcemap: 'none',
style: 'compressed',
noCache: true,
},
files: [{
expand: true, // Enable dynamic expansion.
cwd: 'ReduxCore/inc/fields', // Src matches are relative to this path.
src: ['**/*.scss'], // Actual pattern(s) to match.
dest: 'ReduxCore/inc/fields', // Destination path prefix.
ext: '.css' // Dest filepaths will have this extension.
}]
},
extensions: {
options: {
sourcemap: 'none',
style: 'compressed',
noCache: true,
},
files: [{
expand: true, // Enable dynamic expansion.
cwd: 'ReduxCore/inc/extensions', // Src matches are relative to this path.
src: ['**/*.scss'], // Actual pattern(s) to match.
dest: 'ReduxCore/inc/extensions', // Destination path prefix.
ext: '.css' // Dest filepaths will have this extension.
}]
},
vendor: {
options: {
sourcemap: 'none',
style: 'compressed',
noCache: true
},
files: {
"ReduxCore/assets/css/vendor/jquery-ui-bootstrap/jquery-ui-1.10.0.custom.css": [
"ReduxCore/assets/css/vendor/jquery-ui-bootstrap/jquery-ui-1.10.0.custom.scss"
],
"ReduxCore/assets/css/vendor/elusive-icons/elusive-icons.css": [
"ReduxCore/assets/css/vendor/elusive-icons/scss/elusive-icons.scss"
],
}
},
admin: {
options: {
sourcemap: 'none',
style: 'compressed',
noCache: true
},
files: {
"ReduxCore/assets/css/color-picker/color-picker.css": [
"ReduxCore/assets/css/color-picker/color-picker.scss"
],
"ReduxCore/assets/css/media/media.css": [
"ReduxCore/assets/css/media/media.scss"
],
"ReduxCore/assets/css/redux-admin.css": [
"ReduxCore/assets/css/redux-admin.scss"
],
"ReduxCore/assets/css/rtl.css": [
"ReduxCore/assets/css/rtl.scss"
]
}
},
welcome: {
options: {
sourcemap: 'none',
style: 'compressed',
noCache: true
},
files: {
"ReduxCore/inc/welcome/css/redux-welcome.css": [
"ReduxCore/inc/welcome/css/redux-welcome.scss"
]
}
}
},
cssmin: {
fields: {
files: {
'ReduxCore/assets/css/redux-fields.css': [
'ReduxCore/inc/fields/**/*.css',
"ReduxCore/assets/css/color-picker/color-picker.css",
"ReduxCore/assets/css/media/media.css"
]
}
},
}
}
);
// Load NPM tasks to be used here
grunt.loadNpmTasks( 'grunt-shell' );
grunt.loadNpmTasks( 'grunt-potomo' );
grunt.loadNpmTasks( 'grunt-wp-i18n' );
grunt.loadNpmTasks( 'grunt-checktextdomain' );
grunt.loadNpmTasks( 'grunt-contrib-jshint' );
grunt.loadNpmTasks( 'grunt-contrib-sass' );
grunt.loadNpmTasks( 'grunt-contrib-uglify' );
grunt.loadNpmTasks( 'grunt-contrib-watch' );
grunt.loadNpmTasks( 'grunt-contrib-cssmin' );
grunt.loadNpmTasks( 'grunt-contrib-concat' );
grunt.loadNpmTasks( 'grunt-phpdocumentor' );
grunt.loadNpmTasks( 'grunt-gh-pages' );
grunt.loadNpmTasks( "grunt-phplint" );
//grunt.loadNpmTasks( 'grunt-recess' );
grunt.registerTask(
'langUpdate', [
'addtextdomain',
'makepot',
'shell:txpull',
'potomo'
]
);
// Default task(s).
grunt.registerTask(
'default', [
'jshint',
'concat:core',
'uglify:core',
'concat:vendor',
'uglify:vendor',
'uglify:fields',
'uglify:extensions',
"sass:admin",
"sass:fields",
"sass:extensions",
"sass:vendor",
'cssmin'
]
);
grunt.registerTask( 'travis', ['jshint', 'lintPHP'] );
// this would be run by typing "grunt test" on the command line
grunt.registerTask( 'testJS', ['jshint', 'concat:core', 'concat:vendor'] );
grunt.registerTask( 'watchUI', ['watch:ui'] );
grunt.registerTask( 'watchPHP', ['watch:php', 'phplint:core', 'phplint:plugin'] );
grunt.registerTask( "lintPHP", ["phplint:plugin", "phplint:core"] );
grunt.registerTask( "compileSCSS", ["sass:admin", "sass:fields", "sass:extensions", "sass:vendor", "sass:welcome"] );
grunt.registerTask(
'compileJS',
['jshint', 'concat:core', 'uglify:core', 'concat:vendor', 'uglify:vendor', 'uglify:fields', 'uglify:extensions']
);
grunt.registerTask( 'compileTestJS', ['jshint', 'concat:core', 'concat:vendor'] );
grunt.registerTask( 'compileCSS', ['cssmin'] );
};

View File

@ -1,84 +0,0 @@
## Redux Options Framework [![Build Status](https://travis-ci.org/reduxframework/redux-framework.png?branch=master)](https://travis-ci.org/ReduxFramework/redux-framework) [![Stories in Ready](https://badge.waffle.io/ReduxFramework/redux-framework.png?label=ready)](https://waffle.io/ReduxFramework/redux-framework) [![Built with Grunt](https://cdn.gruntjs.com/builtwith.png)](http://gruntjs.com/)
WordPress options framework which uses the [WordPress Settings API](http://codex.wordpress.org/Settings_API "WordPress Settings API"), Custom Error/Validation Handling, Custom Field/Validation Types, and import/export functionality.
## Posting Guidelines for issues and questions ##
When using our Issue Tracker, you may ask questions where you may be a bit lost or need help understanding the documentation. If, however, you find a bug we require you to read and provide the information contained in our [Contributing Guidelines](https://github.com/ReduxFramework/redux-framework/blob/master/CONTRIBUTING.md). If you do not provide this information, we will request it before we can support you.
If you are stuck in some of your own code, or need help with PHP and anything else not Redux specific, we request you purchase some [Premium Support](http://reduxframework.com/extension/premium-support/) and we will be happy to assist you. If we feel the issue is outside of our scope we will suggest you to purchase some [Premium Support](http://reduxframework.com/extension/premium-support/) in order for us to serve you.
## Kickstart Your Development ##
Are you authoring a theme, or plugin? Visit the [Redux Builder](http://build.reduxframework.com) site and get started!
## Demo Your Products ##
We help you create a seamless user experience for your users to demo your WordPress products. Not only that, we help you make sure theyre engaged, turning them into a potential customer. Visit [wpdemo.io/](http://wpdemo.io/)
## Documentation ##
Need a little help with Redux? Come check out our brand new documentation site at [docs.reduxframework.com](http://docs.reduxframework.com), chock full of tutorials and examples!
## SMOF (Simple Modified Option Users) Converter! ##
Hot off the press, our Redux Converter plugin. It takes your SMOF instance, and allows you to try out Redux without any fear. It also spits out valid PHP source for you if you want to migrate complete with data migration! Give it a try today. It will be in the WordPress.org repo shortly. ;)
https://github.com/ReduxFramework/redux-converter
## Help Us Translate Redux ##
Please head over to the wiki to learn how you can help us translate Redux quickly. Any and all are welcome. We appreciate your help!
https://github.com/ReduxFramework/ReduxFramework/wiki/translate
## Getting Started with Redux ##
ReduxFramework has been built from the ground up to be the most flexible framework around. You can run it as an auto-updating plugin, or embed it inside your plugin or theme. It allows for multiple copies of itself within the same WordPress instance. For a guide on getting started please refer to [https://github.com/ReduxFramework/redux-framework/wiki/Getting-Started](https://github.com/ReduxFramework/redux-framework/wiki/Getting-Started).
You can also [download our sample theme available here](https://github.com/ReduxFramework/ReduxSampleTheme) to start developing right away.
## Please Post Reviews and Spread the Word ##
ReduxFramework has just released to the WordPress Plugins directory. Please spread the word, tweet, and (most importantly) post reviews on http://wordpress.org/plugins/redux-framework/.
## Donate to the Framework ##
If you can, please donate to help support the ongoing development of Redux Framework!
[![Donate to the framework](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif "Donate to the framework")](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=MMFMHWUPKHKPW)
## Features ##
* Uses the [WordPress Settings API](http://codex.wordpress.org/Settings_API "WordPress Settings API")
* Multiple built in field types
* Multple layout field types
* Fields can be overloaded with a callback function, for custom field types
* Easily extendable by creating Field Classes
* Built in Validation Classes
* Easily extendable by creating Validation Classes
* Custom Validation error handling, including error counts for each section, and custom styling for error fields
* Custom Validation warning handling, including warning counts for each section, and custom styling for warning fields
* Multiple Hook Points for customisation
* Import / Export Functionality - including cross site importing of settings
* Easily add page help through the class
* Fully responsive options panel
* Much more
## Stay In The Loop! ##
[![Follow us on Twitter](http://iod.unh.edu/Images/Twitter_follow_us.png "Follow us on Twitter")](https://www.twitter.com/ReduxFramework)
## FAQs ##
1. Why should we use ```require_once``` instead of ```get_template_part```?
* First, because ```get_template_part``` is for... you guessed it, themes! Redux is designed to work with both themes *and* plugins.
* Second, read [this](http://kovshenin.com/2013/get_template_part/).
2. Why shouldn't we edit ```sample-config.php``` in the plugin directory?
* Because ```sample-config.php``` will be replaced at each update of the plugin. You will lose all your effort
## Are you using Redux? ##
Send us an email at info@reduxframework.com so we can add you to our showcase!
## Changelog ##
See [Changelog.md](https://github.com/ReduxFramework/redux-framework/blob/master/CHANGELOG.md)

View File

@ -1 +0,0 @@
.redux-main input.redux-color{float:left;width:70px;margin-left:5px}.redux-main input.color-transparency{margin-left:10px;margin-right:3px}.redux-main input.wp-color-picker{width:80px !important}.redux-main .section-color .controls{width:345px}.redux-main .section-color .explain{width:225px}.redux-main .iris-picker .iris-strip .ui-slider-handle{position:absolute;background:none !important;right:-3px;left:-3px;border:4px solid #aaa !important;border-width:4px 3px;width:auto;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,0.2);opacity:.9;z-index:5;cursor:ns-resize}.redux-main .iris-picker .iris-slider-offset{position:absolute;top:2px;left:0;right:0;bottom:4px;width:28px;background:none !important;border:0 !important;height:auto}.redux-main .wp-picker-container input{margin-bottom:inherit;margin-top:inherit;padding:3px 5px}.redux-main .wp-picker-container .wp-color-result{outline:0;margin:0}.redux-main .wp-picker-container .wp-picker-default{padding:0 10px 1px}.redux-main .redux-color-gradient{line-height:24px}.redux-main .color-transparency-check{line-height:1;margin-top:0px !important}.redux-main .wp-picker-clear{margin-top:0 !important}

View File

@ -1,87 +0,0 @@
.redux-main {
input{
&.redux-color {
float: left;
width: 70px;
margin-left: 5px;
}
&.color-transparency {
margin-left: 10px;
margin-right: 3px;
}
&.wp-color-picker {
width: 80px !important;
}
}
.section-color {
.controls {
width: 345px;
}
.explain {
width: 225px;
}
}
.iris-picker {
.iris-strip .ui-slider-handle {
position: absolute;
background: none !important;
right: -3px;
left: -3px;
border: 4px solid #aaa !important;
border-width: 4px 3px;
width: auto;
border-radius: 4px;
box-shadow: 0 1px 2px rgba(0, 0, 0, .2);
opacity: .9;
z-index: 5;
cursor: ns-resize;
}
.iris-slider-offset {
position: absolute;
top: 2px;
left: 0;
right: 0;
bottom: 4px;
width: 28px;
background: none !important;
border: 0 !important;
height: auto;
}
}
.wp-picker-container {
input {
margin-bottom: inherit;
margin-top: inherit;
padding: 3px 5px;
}
.wp-color-result {
outline: 0;
margin: 0;
}
.wp-picker-default {
padding: 0 10px 1px;
}
}
.redux-color-gradient {
line-height: 24px;
}
.color-transparency-check {
line-height: 1;
margin-top: 0px !important;
}
.wp-picker-clear {
margin-top: 0 !important;
}
}

View File

@ -1 +0,0 @@
#redux-import-link-wrapper,#redux-import-code-wrapper{display:none}#redux-export-code,#redux-export-link-value{display:none}#redux-import-action span{color:#B94A48}

View File

@ -1 +0,0 @@
.redux-main .button.remove-image,.redux-main .removeCSS{margin-left:10px;color:#ef521d}.redux-main .button.remove-image:hover,.redux-main .removeCSS:hover{color:red}.redux-main .upload_button_div{margin-bottom:5px}.redux-main .upload-error{float:left;color:#666;font-size:10px;font-weight:bold;text-decoration:none;text-shadow:1px 1px 0 #FFFFFF;margin:0 10px 0 0;padding:3px 10px;background:#FFDFEC;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.redux-main .reset-button{font-family:Arial, Verdana, sans-serif;float:left;margin:0;color:#ef521d;border-color:#bbb}.redux-main .redux-option-image{max-height:340px;max-width:340px;padding:5px;margin-bottom:0;margin-top:10px;margin-right:15px;border:1px solid #e3e3e3;background:#f7f7f7;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.redux-main .redux-main .upload{width:80% !important}.redux-main .button{margin-top:2px}

View File

@ -1,61 +0,0 @@
.redux-main {
.button.remove-image,
.removeCSS {
margin-left: 10px;
color: #ef521d;
&:hover {
color: red;
}
}
.upload_button_div {
margin-bottom: 5px;
}
.upload-error {
float: left;
color: #666;
font-size: 10px;
font-weight: bold;
text-decoration: none;
text-shadow: 1px 1px 0 #FFFFFF;
margin: 0 10px 0 0;
padding: 3px 10px;
background: #FFDFEC;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
.reset-button {
font-family: Arial, Verdana, sans-serif;
float: left;
margin: 0;
color: #ef521d;
border-color: #bbb;
}
.redux-option-image {
max-height: 340px;
max-width: 340px;
padding: 5px;
margin-bottom: 0;
margin-top: 10px;
margin-right: 15px;
border: 1px solid #e3e3e3;
background: #f7f7f7;
-moz-border-radius: 3px;
-khtml-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
}
.redux-main .upload {
width: 80% !important;
}
.button {
margin-top: 2px;
}
}

View File

@ -1 +0,0 @@
.redux-container .redux-action_bar{float:left}.redux-container #expand_options,.redux-sidebar,.cb-enable,.cb-disable,.cb-enable span,.cb-disable span,#redux-footer #redux-share{float:right}.redux-main{border-left:0px;margin-left:0px;border-right:1px solid #d8d8d8;margin-right:201px}.redux-group-tab-link-a{padding-left:0px;padding-right:30px}.redux-group-tab-link-a i{padding-left:10px;padding-right:5px}.redux-group-tab-link-a span.group_title{padding-left:0px;padding-right:30px}.redux-container .expand_options,.redux-sidebar,.cb-enable,.cb-disable,.cb-enable span,.cb-disable span,#redux-footer #redux-share{float:right}.redux_slider{margin-left:0px;margin-right:15px}.redux-action_bar{float:left !important}.expand_options{float:right !important;border:1px solid #f00}.redux_field_th{padding:20px 0 20px 10px !important}.field-desc{text-align:right}.redux-container-ace_editor,.redux-container-border,.redux-container-spacing,.redux-container-dimensions{direction:ltr !important}.redux-container-border .field-border-input,.redux-container-border .redux-color-init,.redux-container-border .redux-border-style,.redux-container-sorter,.redux-container-border,.redux-container-spacing,.redux-container-spacing .field-spacing-input,.redux-container-dimensions .redux-dimensions-container,.redux-container-text label,.redux-container-checkbox input,.typography-font-bar,.typography-style-bar,.redux-color.redux-typography-color,.redux-typography-subsets{float:right !important}.input-append{margin-right:10px;direction:ltr !important}.redux-container-slider,.redux-container-spinner,.redux-container-switch{direction:ltr !important;float:right;margin:0}.redux-main .redux-typography-container .typography-preview{text-align:center !important;direction:ltr !important}.redux-info-field .redux-info-icon{margin-left:15px}#redux-share{float:right !important}

View File

@ -1,118 +0,0 @@
.redux-container {
.redux-action_bar {
float: left;
}
}
.redux-container #expand_options,
.redux-sidebar,
.cb-enable,
.cb-disable,
.cb-enable span,
.cb-disable span,
#redux-footer #redux-share {
float: right;
}
.redux-main {
border-left: 0px;
margin-left: 0px;
border-right: 1px solid #d8d8d8;
margin-right: 201px;
}
.redux-group-tab-link-a {
padding-left: 0px;
padding-right: 30px;
i {
padding-left: 10px;
padding-right: 5px;
}
span.group_title {
padding-left: 0px;
padding-right: 30px;
}
}
.redux-container .expand_options,
.redux-sidebar,
.cb-enable,
.cb-disable,
.cb-enable span,
.cb-disable span,
#redux-footer #redux-share{
float:right;
}
.redux_slider {
margin-left: 0px;
margin-right: 15px;
}
.redux-action_bar {
float: left !important;
}
.expand_options {
float: right !important;
border:1px solid #f00;
}
.redux_field_th{
padding:20px 0 20px 10px !important;
}
.field-desc {
text-align: right;
}
.redux-container-ace_editor,
.redux-container-border,
.redux-container-spacing,
.redux-container-dimensions {
direction: ltr !important;
}
.redux-container-border .field-border-input,
.redux-container-border .redux-color-init,
.redux-container-border .redux-border-style,
.redux-container-sorter,
.redux-container-border,
.redux-container-spacing,
.redux-container-spacing .field-spacing-input,
.redux-container-dimensions .redux-dimensions-container,
.redux-container-text label,
.redux-container-checkbox input,
.typography-font-bar,
.typography-style-bar,
.redux-color.redux-typography-color,
.redux-typography-subsets {
float:right !important;
}
.input-append{
margin-right:10px; direction:ltr !important;
}
.redux-container-slider,
.redux-container-spinner,
.redux-container-switch {
direction:ltr !important;
float:right;
margin:0;
}
.redux-main .redux-typography-container .typography-preview {
text-align: center !important;
direction: ltr !important;
}
.redux-info-field .redux-info-icon {
margin-left: 15px;
}
#redux-share {
float:right !important;
}

View File

@ -1,934 +0,0 @@
<?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>
Created by FontForge 20120731 at Tue Feb 24 11:41:15 2015
By Dovy
</metadata>
<defs>
<font id="elusiveicons" horiz-adv-x="1200" >
<font-face
font-family="elusiveicons"
font-weight="500"
font-stretch="normal"
units-per-em="1200"
panose-1="2 0 6 9 0 0 0 0 0 0"
ascent="1075"
descent="-125"
bbox="-2 -125.75 1202 1075.75"
underline-thickness="60"
underline-position="-120"
unicode-range="U+F101-F232"
/>
<missing-glyph
d="M40 0v800h320v-800h-320zM80 40h240v720h-240v-720z" />
<glyph glyph-name=".notdef"
d="M40 0v800h320v-800h-320zM80 40h240v720h-240v-720z" />
<glyph glyph-name=".null" horiz-adv-x="0"
/>
<glyph glyph-name="nonmarkingreturn"
/>
<glyph glyph-name="uniF101" unicode="&#xf101;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM264 811v-672h524h75h73v119h-73v65h73v119h-73v66h73v119h-73v65h73v119h-73h-75h-524zM563 694
q27 0 49.5 -13t35.5 -35.5t13 -48.5q0 -29 -15 -52t-39 -35l124 -75h2v-1v-104h-173h-166v104v1h1l125 75q-24 12 -39 35t-15 52q0 40 28.5 68.5t68.5 28.5z" />
<glyph glyph-name="uniF102" unicode="&#xf102;"
d="M0 1075h935h134h131v-212h-131v-117h131v-213h-131v-116h131v-213h-131v-117h131v-212h-131h-134h-935v1200zM535 865q-47 0 -87 -23t-63.5 -63t-23.5 -87q0 -50 26.5 -91.5t69.5 -63.5l-222 -133h-3v-1v-187h605v187v1h-3l-222 133q44 22 70 63.5t26 91.5
q0 72 -50.5 122.5t-122.5 50.5z" />
<glyph glyph-name="uniF103" unicode="&#xf103;"
d="M104 1075h159v-700h104v-254h-367v254h104v700zM521 1075h158v-452h105v-254h-368v254h105v452zM937 1075h159v-202h104v-254h-367v254h104v202zM886 823v-50h261v50h-261zM937 577h159v-702h-159v702zM470 573v-51h260v51h-260zM521 329h158v-454h-158v454zM53 325v-51
h261v51h-261zM104 79h159v-204h-159v204z" />
<glyph glyph-name="uniF104" unicode="&#xf104;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 900q-115 0 -213 -57t-155 -155t-57 -213t57 -213t155 -155t213 -57v850z" />
<glyph glyph-name="uniF105" unicode="&#xf105;"
d="M605 595q-101 2 -170 72t-70 168q2 100 72.5 169.5t167.5 70.5q50 -2 94.5 -21.5t76.5 -51.5t50.5 -75.5t18.5 -91.5q-1 -66 -34 -121t-88 -87t-118 -32zM799 545q62 -1 112 -26.5t81 -68.5t48 -96t17 -110v-369h-167v324q-3 16 -12.5 23t-20.5 5q-7 -1 -12.5 -4.5
t-9.5 -9.5t-4 -14v-324h-465v324q-5 31 -30 29q-11 -1 -19.5 -9t-8.5 -20v-324h-165v369q-1 80 30.5 148t91.5 110.5t137 42.5h397z" />
<glyph glyph-name="uniF106" unicode="&#xf106;"
d="M291 976h618v-178h-618v178zM127 701h946v-178h-946v178zM234 427h732v-178h-732v178zM0 152h1200v-178h-1200v178z" />
<glyph glyph-name="uniF107" unicode="&#xf107;"
d="M0 976h1200v-178h-1200v178zM0 701h1200v-178h-1200v178zM0 427h1200v-178h-1200v178zM0 152h1200v-178h-1200v178z" />
<glyph glyph-name="uniF108" unicode="&#xf108;"
d="M619 976v-178h-619v178h619zM947 701v-178h-947v178h947zM731 427v-178h-731v178h731zM1200 152v-178h-1200v178h1200z" />
<glyph glyph-name="uniF109" unicode="&#xf109;"
d="M581 976h619v-178h-619v178zM253 701h947v-178h-947v178zM469 427h731v-178h-731v178zM0 152h1200v-178h-1200v178z" />
<glyph glyph-name="uniF10A" unicode="&#xf10a;"
d="M600 -125l-469 703h253v497h432v-497h253z" />
<glyph glyph-name="uniF10B" unicode="&#xf10b;"
d="M0 475l703 469v-253h497v-432h-497v-253z" />
<glyph glyph-name="uniF10C" unicode="&#xf10c;"
d="M1200 475l-703 -469v253h-497v432h497v253z" />
<glyph glyph-name="uniF10D" unicode="&#xf10d;"
d="M600 1075l469 -703h-253v-497h-432v497h-253z" />
<glyph glyph-name="uniF10E" unicode="&#xf10e;"
d="M710 1075h1q27 0 47 -25t22 -69l35 -654q10 35 34.5 70.5t56 64.5t69.5 51.5t74 33.5t69 8t54 -22q26 -19 28 -53.5t-15 -67t-43 -47.5q-52 -23 -91.5 -60t-62.5 -77.5t-45.5 -88t-40 -89.5t-47 -84t-67.5 -70q-28 -21 -82 -21h-434q-55 3 -87 44.5t-42 99.5l-142 793
q-4 34 10 54t35 21t42 -12.5t30 -37.5l65 -226q-20 -37 -15 -80q6 -39 41 -252q4 -40 27.5 -74t55 -50t68 -9t63.5 42q19 -20 45.5 -28.5t53.5 -3t50.5 20.5t39.5 43.5t17 64.5l8 698q3 29 14 50t25.5 31t31.5 11h2zM490 687q32 0 57.5 -19t29.5 -52l10 -304q0 -35 -9 -58.5
t-22.5 -33t-30.5 -9.5q-30 -1 -54.5 25t-26.5 64l-27 310q0 34 18.5 53.5t47.5 22.5q4 1 7 1zM292 618q26 1 47.5 -16.5t26.5 -48.5l26 -257q2 -26 -5.5 -47t-20.5 -32.5t-29 -15.5q-10 -2 -20.5 0.5t-19.5 8.5t-16.5 18t-12.5 28l-44 266q-5 40 11 64.5t43 30.5q7 1 14 1z
" />
<glyph glyph-name="uniF10F" unicode="&#xf10f;"
d="M490 1046h220v-444l422 137l68 -209l-422 -137l261 -359l-178 -130l-261 359l-261 -359l-178 130l261 359l-422 137l68 209l422 -137v444z" />
<glyph glyph-name="uniF110" unicode="&#xf110;"
d="M627 1075v-545l546 545v-1200l-546 545v-545l-600 600z" />
<glyph glyph-name="uniF111" unicode="&#xf111;"
d="M1024.5 899.5q115.5 -115.5 156 -270t0 -309t-156 -270t-270 -156t-309 0t-270 156t-156 270t0 309t156 270t270 156t309 0t270 -156zM861 842v0q-87 62 -192 78t-207.5 -16.5t-180 -110t-110 -180t-16.5 -207.5t78 -192zM967 736l-628 -628q87 -62 192 -78t207.5 16.5
t180 110t110 180t16.5 207.5t-78 192z" />
<glyph glyph-name="uniF112" unicode="&#xf112;"
d="M0 975h100v-1000h-100v1000zM186 975h24v-1000h-24v1000zM244 975h76v-1000h-76v1000zM398 975h32v-1000h-32v1000zM516 975h24v-1000h-24v1000zM551 975h99v-1000h-99v1000zM710 975h50v-1000h-50v1000zM859 975h11v-1000h-11v1000zM947 975h33v-1000h-33v1000z
M1066 975h24v-1000h-24v1000zM1100 975h100v-1000h-100v1000z" />
<glyph glyph-name="uniF113" unicode="&#xf113;"
d="M0 1075h1200v-1200h-1200v1200zM186 579v-514h310q57 2 94 38q38 40 39 99q-1 58 -26 91q-23 28 -61 38v2q35 12 53 37q23 32 23 83q-1 55 -37 91q-38 35 -89 35h-306zM721 578v-84h227v84h-227zM830 469q-45 0 -82 -13q-36 -13 -62 -39q-26 -25 -40 -64t-14 -90
q0 -53 15 -92q14 -39 40.5 -64.5t64.5 -38.5q39 -12 86 -12q95 2 143 41q47 42 48 112h-129q0 -12 -4 -23q-11 -34 -61 -34q-37 0 -54 22q-16 22 -16 63h264q0 76 -14 118q-13 39 -38 64q-26 25 -63 37q-36 13 -84 13zM334 466h101q15 0 24 -11q10 -13 10 -28v-8
q0 -17 -10 -28q-10 -12 -24 -12h-101v87zM835 374q29 0 44 -18q16 -17 16 -48h-130q4 30 20 48q17 18 50 18zM334 273h112q15 -1 24 -12q10 -12 10 -28v-8q-1 -17 -10 -29q-11 -11 -24 -11h-112v88z" />
<glyph glyph-name="uniF114" unicode="&#xf114;"
d="M521 1075h158v-74q123 -27 204.5 -126.5t82.5 -229.5v-319l236 -205v-55h-236h-732h-236v55l236 205v319q1 130 82.5 229.5t204.5 126.5v74zM600 50q36 0 62 -25.5t26 -62t-26 -62t-62 -25.5t-62 25.5t-26 62t26 62t62 25.5z" />
<glyph glyph-name="uniF115" unicode="&#xf115;"
d="M385 1075q33 0 60.5 -16t43 -43.5t15.5 -59.5q0 -50 -34.5 -84.5t-84 -34.5t-84.5 34.5t-35 84t35 84.5t84 35zM286 775q23 37 69 42.5t80 -26.5l139 -176l136 -27q17 -3 29.5 -19.5t8.5 -35.5t-28 -27l438 -601q7 -12 -4.5 -18.5t-18.5 2.5l-470 619l-126 24
q-18 5 -27 17l-54 67v-57v-137l138 -158q7 -5 10 -21l66 -299q4 -21 -5.5 -38t-26 -24t-35 -7t-34 12t-20.5 34l-61 287l-113 127l-50 -177q-6 -17 -10 -22l-166 -214q-14 -16 -33.5 -21.5t-36 0.5t-29 18.5t-13 31.5t12.5 41l160 203l63 226l-2 185l-33 -45l-13 -131
q-5 -32 -29 -42t-45 5.5t-18 44.5l16 143q0 11 7 21z" />
<glyph glyph-name="uniF116" unicode="&#xf116;"
d="M0 1075h1200v-1200h-1200v1200zM642 855l-229 -1q-50 -7 -90 -28.5t-66.5 -59.5t-30.5 -87l-2 -352q0 -118 67.5 -175.5t197.5 -54.5l280 1q49 7 85.5 24.5t58.5 39t36 51.5t19.5 55.5t8.5 56.5v105q-2 37 -16 65t-36 42.5t-45.5 21.5t-50.5 8q12 42 3 111
q-6 73 -56 121.5t-134 55.5zM451 713h186q36 -5 56 -25.5t19.5 -44t-20.5 -44.5t-55 -27h-186q-37 5 -57 25.5t-19.5 44t20.5 44.5t56 27zM408 406l342 -1q25 -4 43 -15.5t26.5 -27.5t8.5 -34t-7.5 -34t-25 -28t-41.5 -16l-342 1q-38 5 -59 27.5t-21 49t20 49.5t56 29z" />
<glyph glyph-name="uniF117" unicode="&#xf117;"
d="M0 1075h698q215 0 323 -74t108 -223q0 -106 -75 -169q-74 -63 -221 -79q178 -17 272.5 -96.5t94.5 -211.5q0 -178 -132 -263q-132 -84 -414 -84h-654v97h151v1006h-151v97zM454 978v-404h103q136 0 202 50q65 51 65 154q0 105 -64 152q-63 48 -203 48h-103zM454 478v-506
h113q151 0 223.5 61t72.5 189q0 129 -73.5 192.5t-222.5 63.5h-113z" />
<glyph glyph-name="uniF118" unicode="&#xf118;"
d="M455 1064l578 -299v-724l-107 -58v724l-515 276q-36 13 -81 -10.5t-72 -57.5l579 -332v-650l-106 -58l-564 350v668q0 37 18 65q22 35 72.5 67t103.5 44.5t94 -5.5z" />
<glyph glyph-name="uniF119" unicode="&#xf119;"
d="M234 1075h732v-1087v-113l-366 366l-366 -366v113v1087zM309 1000v-938l291 291l291 -291v938h-582z" />
<glyph glyph-name="uniF11A" unicode="&#xf11a;"
d="M234 1075h732v-1087v-113l-366 366l-366 -366v113v1087z" />
<glyph glyph-name="uniF11B" unicode="&#xf11b;"
d="M50 1021h320v-91h-320v91zM50 30h320v-91h-320v91zM50 30v900h91v-900h-91zM830 1011h320v-91h-320v91zM830 20h320v-91h-320v91zM1150 921v-901h-91v901h91z" />
<glyph glyph-name="uniF11C" unicode="&#xf11c;"
d="M510 24q0 -62 -43.5 -105.5t-105.5 -43.5t-105.5 43.5t-43.5 105.5q0 40 20 74.5t54.5 54.5t74.5 20q62 0 105.5 -43.5t43.5 -105.5zM510 475q0 -30 -11.5 -58t-31.5 -47.5t-47.5 -31.5t-58.5 -12q-62 0 -105.5 43.5t-43.5 105.5t43.5 105.5t105.5 43.5q41 0 75 -20
t54 -54.5t20 -74.5zM510 926q0 -62 -43.5 -105.5t-105.5 -43.5t-105.5 43.5t-43.5 105.5t43.5 105.5t105.5 43.5t105.5 -43.5t43.5 -105.5zM988 24q0 -62 -43.5 -105.5t-105.5 -43.5t-105.5 43.5t-43.5 105.5t43.5 105.5t105.5 43.5t105.5 -43.5t43.5 -105.5zM988 475
q0 -62 -43.5 -105.5t-105.5 -43.5t-105.5 43.5t-43.5 105.5t43.5 105.5t105.5 43.5t105.5 -43.5t43.5 -105.5zM988 926q0 -62 -43.5 -105.5t-105.5 -43.5t-105.5 43.5t-43.5 105.5t43.5 105.5t105.5 43.5q40 0 74.5 -20t54.5 -54.5t20 -74.5z" />
<glyph glyph-name="uniF11D" unicode="&#xf11d;"
d="M318 1001h564v-167h318v-487h-541v100h-118v-100h-541v487h318v167zM405 915v-81h390v81h-390zM0 253h541v-97h118v97h541v-304h-1200v304z" />
<glyph glyph-name="uniF11E" unicode="&#xf11e;"
d="M1094 1075l106 -106l-410 -410q13 -22 10 -48t-22 -45q-33 -33 -78 -19q49 -101 6 -191q-80 -107 -133 -200.5t-74 -180.5q-52 26 -115 68q-10 61 6.5 115t57.5 92q-54 -20 -90.5 -58.5t-50.5 -90.5q-43 31 -108 98q19 25 26.5 35.5t13.5 20t4.5 10t-7.5 -0.5t-15 -6
t-25 -11.5t-31 -11.5q-35 40 -63 77q36 13 64 33t48.5 47.5t31.5 60.5q-84 -85 -196 -67q-31 48 -50 88q58 5 113.5 30.5t92.5 55t86.5 66t88.5 55.5q98 42 191 -6q-14 45 19 78q19 19 45 22t48 -10z" />
<glyph glyph-name="uniF11F" unicode="&#xf11f;"
d="M1158 1075l42 -1q-46 -64 -99.5 -149t-94.5 -155t-97 -156t-112 -160t-134.5 -157.5t-167.5 -157.5l-131 137q16 59 99.5 162t192 209.5t218 204t189.5 160t95 63.5zM323 234l131 -137q-18 -41 -39.5 -73.5t-50 -62t-64 -48t-79.5 -29.5t-100 -9t-121 17q48 17 79.5 40.5
t46.5 49t25 53l20 55t25.5 53.5t47 50t79.5 41z" />
<glyph glyph-name="uniF120" unicode="&#xf120;"
d="M600 955q119 0 203 -63t84 -152l-163 -495h-248l-163 495q0 89 84 152t203 63zM600 908q-56 0 -104 -19t-76.5 -46.5t-44 -55t-15.5 -47.5l116 -345h248l116 345q0 17 -15.5 43.5t-44 55.5t-76.5 49t-104 20zM472 209v0h256v-86h-256v86zM472 81h256v-86h-256v86z" />
<glyph glyph-name="uniF121" unicode="&#xf121;"
d="M1030 978v0q28 -1 51 -15.5t36 -37t14 -48.5v-240q24 -8 41 -26.5t23.5 -42t3.5 -47t-21 -44t-47 -31.5v-241q-2 -42 -32 -70.5t-69 -29.5q-75 68 -161.5 121t-184 88.5t-194.5 46.5q-41 -18 -57 -61.5t-8.5 -92.5t32.5 -97t60 -76q-21 -36 -68 -52t-96 -8t-78 36
q-19 54 -29.5 90.5t-20 85t-8 93.5t14.5 87h-131q-43 2 -71.5 32.5t-29.5 69.5v147q2 43 32 72.5t69 29.5h326q167 10 327.5 78.5t275.5 182.5zM1033 848q-245 -182 -505 -221v-171q289 -54 505 -221v613z" />
<glyph glyph-name="uniF122" unicode="&#xf122;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM389 853v-118h63v118h-63zM748 853v-118h63v118h-63zM262 796v-166h676v166h-83v-106h-151v106h-208v-106
h-151v106h-83zM262 587v-490h676v490h-676zM528 474q26 -1 48 -13.5t31 -34.5q12 -34 2 -55q-11 -24 -47 -37q58 -15 59 -67q-1 -38 -30 -62q-29 -23 -63 -23q-94 0 -94 85h55q2 -42 35 -42q41 2 42 45q0 28 -19 36q-15 6 -51 6v43q63 -1 63 36q-2 40 -33 40q-37 -2 -38 -37
h-54q1 39 28 59t66 21zM717 468h49v-281h-53v226q-30 -26 -66 -36v48q42 16 70 43z" />
<glyph glyph-name="uniF123" unicode="&#xf123;"
d="M266 1075h99v-188h-99v188zM835 1075h99v-188h-99v188zM64 985h132v-169h239v169h330v-169h239v169h132v-264h-1072v264zM64 652h1072v-777h-1072v777zM485 473q-61 -1 -104 -33t-44 -93h86q0 26 15.5 41.5t43.5 17.5q50 -1 53 -64q-1 -59 -100 -57v-68q58 0 81 -10
q29 -12 29 -56q0 -69 -65 -73q-26 0 -40 18.5t-16 48.5h-87q0 -134 148 -134q55 0 100 37q46 37 48 97q-1 41 -25.5 68t-68.5 39q57 20 76 58q15 34 -3 87q-15 36 -49.5 55.5t-77.5 20.5zM786 464q-44 -43 -112 -69v-76q58 17 106 58v-358h83v445h-77z" />
<glyph glyph-name="uniF124" unicode="&#xf124;"
d="M391 927h435l37 -152h337v-752h-1200v752h353zM603 775q-92 0 -169.5 -45t-122.5 -122.5t-45 -169.5t45 -169.5t122.5 -123t169.5 -45.5t169.5 45.5t123 123t45.5 169.5t-45.5 169.5t-123 122.5t-169.5 45zM999 702v-99h170v99h-170zM603.5 676q98.5 0 168 -70
t69.5 -168.5t-69.5 -168t-168 -69.5t-168.5 69.5t-70 168t70 168.5t168.5 70z" />
<glyph glyph-name="uniF125" unicode="&#xf125;"
d="M215 974h770l76 -316h21h118v-92h-48v-590h-136v96h-832v-96h-136v590h-48v92h118h21zM255 913l-61 -255h812l-61 255h-690zM87 489v-91l191 -71v92zM1113 489l-191 -70v-92l191 71v91zM416 250v-91h368v91h-368z" />
<glyph glyph-name="uniF126" unicode="&#xf126;"
d="M0 950h1200l-600 -950z" />
<glyph glyph-name="uniF127" unicode="&#xf127;"
d="M1100 -125l-1000 600l1000 600v-1200z" />
<glyph glyph-name="uniF128" unicode="&#xf128;"
d="M100 1075l1000 -600l-1000 -600v1200z" />
<glyph glyph-name="uniF129" unicode="&#xf129;"
d="M0 -25l600 1000l600 -1000h-1200z" />
<glyph glyph-name="uniF12A" unicode="&#xf12a;"
d="M600 975l600 -117v-766l-600 -117l-600 117v766zM382 709q-97 0 -165.5 -68.5t-68.5 -165.5t68.5 -165.5t165.5 -68.5q69 0 125.5 36.5t85.5 96.5h-114q-40 -39 -97 -39q-58 0 -99 41t-41 99t41 99t99 41q57 0 97 -39h114q-29 60 -85.5 96.5t-125.5 36.5zM841 709
q-64 0 -117.5 -31.5t-85 -85t-31.5 -117.5t31.5 -117.5t85 -85t117.5 -31.5q69 0 125.5 36.5t85.5 96.5h-114q-40 -39 -97 -39q-58 0 -99 41t-41 99t41 99t99 41q57 0 97 -39h114q-19 39 -50.5 69t-73 47t-87.5 17z" />
<glyph glyph-name="uniF12B" unicode="&#xf12b;"
d="M978 8l-260 128l-137 -256l-117 265l-269 -108l80 279l-275 90l240 162l-152 246l288 -31l41 287l201 -209l216 193l19 -289l290 10l-171 -235l228 -179l-281 -69z" />
<glyph glyph-name="uniF12C" unicode="&#xf12c;"
d="M0 1075h1200v-1200h-1200v1200zM197 878v-806h806v806h-806z" />
<glyph glyph-name="uniF12D" unicode="&#xf12d;"
d="M0 1075h776l-197 -197h-382v-382v-424h424h382v382l197 197v-329v-447h-776h-424v424v776zM1030 1060l159 -159l-434 -434l-159 -160l-314 315l159 159l155 -155z" />
<glyph glyph-name="uniF12E" unicode="&#xf12e;"
d="M600 86l-179 178l-421 422l179 178l421 -421l421 421l179 -178l-421 -422z" />
<glyph glyph-name="uniF12F" unicode="&#xf12f;"
d="M211 475l178 179l422 421l178 -179l-421 -421l421 -421l-178 -179l-422 421z" />
<glyph glyph-name="uniF130" unicode="&#xf130;"
d="M989 475v0l-178 -179l-422 -421l-178 179l421 421l-421 421l178 179l422 -421z" />
<glyph glyph-name="uniF131" unicode="&#xf131;"
d="M600 864l179 -178l421 -422l-179 -178l-421 421l-421 -421l-179 178l421 422z" />
<glyph glyph-name="uniF132" unicode="&#xf132;"
d="M604.5 1075q101.5 0 173.5 -72t72 -174.5t-72 -174.5t-173.5 -72t-173 72t-71.5 174.5t71.5 174.5t173 72zM464 788q0 -58 41 -99t99 -41t99 41t41 99h-280zM412 543h377q57 1 98 -19t64 -54.5t33.5 -74.5t10.5 -87v-433h-142v389q-3 21 -17 27.5t-27 -2.5t-13 -25v-389
h-386v389q-3 16 -12 23.5t-19 6.5t-18.5 -9.5t-8.5 -20.5v-389h-147v433q-3 110 53 171.5t154 63.5z" />
<glyph glyph-name="uniF133" unicode="&#xf133;"
d="M1200 475q0 -163 -80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5t301 -80.5t218.5 -218.5t80.5 -301zM903 542h-163v321h-280v-321h-163l303 -455z" />
<glyph glyph-name="uniF134" unicode="&#xf134;"
d="M600 -125q-163 0 -301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5t301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5zM667 172v163h321v280h-321v163l-455 -303z" />
<glyph glyph-name="uniF135" unicode="&#xf135;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM533 778v-163h-321v-280h321v-163l455 303z" />
<glyph glyph-name="uniF136" unicode="&#xf136;"
d="M1200 475q0 -163 -80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5t301 -80.5t218.5 -218.5t80.5 -301zM903 408l-303 455l-303 -455h163v-321h280v321h163z" />
<glyph glyph-name="uniF137" unicode="&#xf137;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM605 763q-114 -2 -187 -121q-49 12 -94.5 -3t-75 -50.5t-46 -81t-11 -99.5t33.5 -100h738q36 31 43.5 76
t-8.5 83.5t-53 64t-83 20.5q-24 91 -98 152t-159 59z" />
<glyph glyph-name="uniF138" unicode="&#xf138;"
d="M984 500q45 4 86 -12t68.5 -45t44 -68.5t17.5 -80t-16 -81.5t-51 -72h-1083q-26 43 -38.5 91.5t-11.5 94t12 90t33 81.5t51.5 68t67 48t80 23.5t90.5 -5.5q32 53 72 91t82 57t86.5 26t88 -1t85 -25.5t79 -46.5t68 -64.5t53.5 -79t36 -89.5z" />
<glyph glyph-name="uniF139" unicode="&#xf139;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM543 841l-11 -111q-34 -9 -64 -26l-86 70l-81 -81l70 -86q-17 -30 -26 -64l-111 -11v-114l111 -11
q9 -34 26 -64l-70 -86l81 -81l86 70q30 -17 64 -26l11 -111h114l11 111q34 9 64 26l86 -70l81 81l-70 86q17 30 26 64l111 11v114l-111 11q-9 34 -26 64l70 86l-81 81l-86 -70q-30 17 -64 26l-11 111h-114zM600 581q44 0 75 -31t31 -75t-31 -75t-75 -31t-75 31t-31 75t31 75
t75 31z" />
<glyph glyph-name="uniF13A" unicode="&#xf13a;"
d="M506 1075h188l18 -181q55 -15 105 -44l141 116l133 -133l-116 -141q29 -50 44 -105l181 -18v-188l-181 -18q-15 -56 -44 -105l116 -141l-133 -133l-141 116q-50 -29 -105 -44l-18 -181h-188l-18 181q-56 15 -105 44l-141 -116l-133 133l116 141q-29 49 -44 105l-181 18
v188l181 18q15 55 44 105l-116 141l133 133l141 -116q49 29 105 44zM600 648q-72 0 -122.5 -50.5t-50.5 -122.5t50.5 -122.5t122.5 -50.5t122.5 50.5t50.5 122.5t-50.5 122.5t-122.5 50.5z" />
<glyph glyph-name="uniF13B" unicode="&#xf13b;"
d="M910 984l85 -9v-83q24 -9 45 -24l69 45l54 -66l-59 -59q11 -23 15 -49l81 -17l-9 -85h-83q-9 -24 -24 -45l45 -70l-66 -53l-59 59q-23 -11 -49 -15l-17 -81l-85 9v83q-24 9 -45 24l-69 -45l-54 66l59 58q-11 24 -15 50l-81 17l9 85l83 -1q9 25 24 46l-45 69l66 54l59 -59
q23 11 49 15zM924 787q-30 0 -52.5 -20.5t-26.5 -50.5q-3 -32 17.5 -57.5t53 -29t58 17t28.5 53.5q3 21 -5.5 40t-25.5 31.5t-39 14.5q-3 1 -8 1zM315 780h117l11 -113q35 -9 66 -27l88 72l82 -83l-72 -88q18 -30 27 -65l113 -11v-117l-113 -12q-9 -34 -27 -65l72 -88
l-82 -82l-88 71q-31 -17 -66 -27l-11 -112h-117l-11 112q-35 9 -66 27l-87 -71l-83 82l72 88q-18 31 -27 65l-113 12v117l113 11q9 35 27 65l-72 88l83 83l87 -72q31 18 66 27zM373.5 514q-44.5 0 -76 -31.5t-31.5 -76.5t31.5 -76.5t76 -31.5t76.5 31.5t32 76.5t-32 76.5
t-76.5 31.5zM869 370l60 -7v-60q17 -7 32 -18l48 33l38 -48l-41 -43q7 -17 10 -36l57 -13l-6 -62h-58q-7 -18 -18 -33l32 -51l-46 -39l-41 43q-17 -8 -35 -11l-12 -59l-60 7v60q-17 7 -32 18l-48 -33l-38 49l41 42q-7 18 -10 37l-57 12l6 62h58q7 18 18 33l-32 51l46 39
l42 -43q16 8 34 11zM879 226q-21 0 -37 -15t-18 -37q-3 -24 11.5 -42.5t37.5 -21t41 12.5t20.5 39t-12 42.5t-37.5 21.5h-6z" />
<glyph glyph-name="uniF13C" unicode="&#xf13c;"
d="M0 1014h1024v-729h-484l-329 -211v211h-211v729zM1072 854h82h46v-46v-612v-45h-46h-131v-132v-83l-71 45l-264 170h-271l143 91h141h14l11 -7l205 -132v93v46h46h131v520h-36v92z" />
<glyph glyph-name="uniF13D" unicode="&#xf13d;"
d="M0 1026h1200v-855h-567l-386 -247v247h-247v855z" />
<glyph glyph-name="uniF13E" unicode="&#xf13e;"
d="M175.5 50.5q-115.5 115.5 -156 270t0 309t156 270t270 156t309 0t270 -156t156 -270t0 -309t-156 -270t-270 -156t-309 0t-270 156zM271 116l427 261l261 427l-30 30l-426 -262l-262 -426z" />
<glyph glyph-name="uniF13F" unicode="&#xf13f;"
d="M175.5 50.5q-115.5 115.5 -156 270t0 309t156 270t270 156t309 0t270 -156t156 -270t0 -309t-156 -270t-270 -156t-309 0t-270 156zM234.5 109.5q74.5 -74.5 171 -113.5t194.5 -39t194.5 39t171.5 113q99 100 134.5 233t0 266t-135 232.5t-232.5 135t-266 0t-233 -134.5
q-74 -75 -113 -171.5t-39 -194.5t39 -194.5t113.5 -171zM293 141l-27 27l243 398l398 243l27 -27l-243 -398z" />
<glyph glyph-name="uniF140" unicode="&#xf140;"
d="M-2 872h1204v-249h-1204v249zM-2 509h1204v-431h-1204v431zM130 319v-137h453v137h-453z" />
<glyph glyph-name="uniF141" unicode="&#xf141;"
d="M0 1051h1200v-927l-600 -225l-600 225v927zM287 683q-67 0 -112 -41.5t-45 -114.5q1 -68 42 -113t115 -44q32 0 57.5 7t45.5 22t31 40t12 59h-90q0 -53 -57 -56q-27 1 -42 21t-14 49q0 4 -0.5 14.5t0 14t1 12.5t2 14t4 11.5t6.5 12.5q11 14 30.5 18t36.5 -2
q30 -13 30 -54h93q0 63 -39.5 96t-106.5 34zM612 683q-25 0 -47 -4.5t-42.5 -14.5t-32.5 -30t-14 -48q1 -69 90 -91q3 -1 20.5 -4t30.5 -6.5t25 -10t13 -14.5q0 -21 -43 -21q-22 0 -35.5 8.5t-12.5 30.5h-92q0 -32 11.5 -54t33.5 -33.5t47 -16t57 -4.5q27 0 49.5 5.5t42 17
t30.5 33t12 50.5q-1 34 -26.5 55.5t-64.5 30.5q-4 0 -16 2.5t-23 4.5t-22.5 5.5t-18.5 9.5t-8 13q0 19 40 20q16 0 27.5 -7.5t11.5 -23.5v-1h91v5q-1 47 -41 70.5t-93 22.5zM930 683q-20 0 -38 -2.5t-35.5 -9t-30.5 -17.5t-21.5 -28t-9.5 -40q0 -69 89 -91q3 -1 21 -4
t30.5 -6t24.5 -10t13 -15q0 -25 -63 -19q-29 5 -28 37h-92q0 -32 11.5 -54t33.5 -33.5t47 -16t57 -4.5q57 0 95 25t39 81q-1 21 -9 35q-19 35 -82 50q-3 1 -21 4.5t-30 6.5t-24 9.5t-13 15.5q0 19 40 20q16 0 28 -8t11 -24h91q0 50 -38.5 74t-95.5 24z" />
<glyph glyph-name="uniF142" unicode="&#xf142;"
d="M600 880q122 0 233 -47.5t191.5 -128t128 -191.5t47.5 -233q0 -109 -38 -210h-164q52 98 52 210q0 91 -35.5 174.5t-96 143.5t-143.5 96t-175 36t-175 -36t-143.5 -96t-96 -143.5t-35.5 -174.5q0 -112 52 -210h-164q-38 101 -38 210q0 122 47.5 233t128 191.5t191.5 128
t233 47.5zM600 644q31 0 53 -22t22 -53t-22 -53t-53 -22t-53 22t-22 53t22 53t53 22zM375 571q31 0 53 -22t22 -53.5t-22 -53t-53 -21.5q-20 0 -37.5 10t-27.5 27t-10 38q0 31 22 53t53 22zM825 571q31 0 53 -22t22 -53.5t-22 -53t-53 -21.5t-53 21.5t-22 53t22 53.5t53 22z
M600 423l59 -294v-59h-118v59z" />
<glyph glyph-name="uniF143" unicode="&#xf143;"
d="M0 1075h600v-600h-600v600zM600 475h600v-600h-600v600z" />
<glyph glyph-name="uniF144" unicode="&#xf144;"
d="M436 549l3 -230h-242q12 46 28 81t43 67t69 52.5t99 29.5zM435 608q-102 -13 -180.5 -44.5t-124.5 -69.5t-76 -86.5t-41 -91.5t-13 -89v-3h575v502h-142zM569 720v-490h-563q2 45 13 87t40.5 89.5t75 84.5t122.5 67t176 44l2 -47q-59 -10 -102 -31.5t-70.5 -54.5t-44 -69
t-27.5 -84l-1 -3h255l-6 407h130zM636 231l2 270q70 4 121 -10v-174l260 -2l-1 3q-14 60 -41.5 105.5t-62 71.5t-76.5 44t-86 23t-90 8.5t-88 -0.5v50q95 1 176.5 -8t150.5 -29t123 -51.5t91.5 -73.5t57.5 -96.5t21 -119.5v-11h-558zM630 225h570v3v15q-2 131 -81 219
t-217 127.5t-331 36.5h-3v-62h3q42 4 88 1t89 -8t85 -22t76 -42.5t61 -69.5t41 -102l-246 2v172l-2 1q-54 16 -128 11l-3 -1zM636 231l2 270q70 4 121 -10v-174l260 -2l-1 3q-14 60 -41.5 105.5t-62 71.5t-76.5 44t-86 23t-90 8.5t-88 -0.5v50q95 1 176.5 -8t150.5 -29
t123 -51.5t91.5 -73.5t57.5 -96.5t21 -119.5v-11h-558zM630 225h570v3v15q-2 131 -81 219t-217 127.5t-331 36.5h-3v-62h3q42 4 88 1t89 -8t85 -22t76 -42.5t61 -69.5t41 -102l-246 2v172l-2 1q-54 16 -128 11l-3 -1z" />
<glyph glyph-name="uniF145" unicode="&#xf145;"
d="M1123 700h-75v-150h-77h-294h-76v150h-77v-229h77v-442h223v220h77v-220h145v442h2h75v229zM677 919v-293h294v293h-294zM1200 771v-377h-77v-440h-599v440h-224v-145h72v-76h76v-219h-373v219h77v-144h220v144h-220v76h72v145h-149v77h372v300h1h153v225h447v-225h152z
M372 771v72h75v-72h-75zM75 771v-300h-75v300h75zM152 771h-77v72h77v-72zM372 843h-220v76h220v-76z" />
<glyph glyph-name="uniF146" unicode="&#xf146;"
d="M0 37h1200v-162h-1200v162zM821 1075v-497h276l-497 -462l-497 462h276v497h442z" />
<glyph glyph-name="uniF147" unicode="&#xf147;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 5q77 0 148.5 24t129 67.5t101 101t67.5 129t24 148.5q0 96 -37.5 182.5t-100.5 149.5t-149.5 100.5
t-182.5 37.5t-182.5 -37.5t-149.5 -100.5t-100.5 -149.5t-37.5 -182.5t37.5 -182.5t100.5 -149.5t149.5 -100.5t182.5 -37.5zM717 726v-267h147l-264 -248l-264 248h147v267h234z" />
<glyph glyph-name="uniF148" unicode="&#xf148;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 988q-62 0 -121 -14q106 -144 193 -301q182 71 269 186q-70 61 -157.5 95t-183.5 34zM382 939
q-109 -51 -184.5 -146t-100.5 -214q237 1 476 63q-17 30 -35 59.5t-40.5 63.5t-35.5 54.5t-41.5 63t-38.5 56.5zM998 799q-53 -64 -129 -117t-158 -86q5 -12 14.5 -32t17 -36.5t13.5 -31.5q178 18 357 -18q-1 181 -115 321zM614 562q-250 -71 -527 -72v-15
q0 -97 34.5 -185.5t97.5 -157.5q33 61 82 114.5t110 95.5t117.5 72.5t127.5 61.5q-6 13 -13.5 28.5l-15 31t-13.5 26.5zM1111 432v-6v6zM885 422q-52 0 -99 -7q22 -56 41.5 -124.5t30 -113t28.5 -128.5q88 59 146 149t75 196q-110 29 -222 28zM1109 413q0 -6 -1 -9q1 3 1 9z
M691 392q-127 -43 -231.5 -126t-174.5 -196q139 -108 315 -108q105 0 200 41q-39 208 -109 389z" />
<glyph glyph-name="uniF149" unicode="&#xf149;"
d="M0 1075h776l-197 -197h-382v-382v-424h424h382v382l197 197v-776h-776h-424v424v776zM1050 1075l150 -150l-77 -77l-150 150zM937 962l150 -150l-440 -440l-150 150zM442 453q49 0 88 -37q47 -45 47 -106h-142v142q5 1 7 1z" />
<glyph glyph-name="uniF14A" unicode="&#xf14a;"
d="M600 1010l600 -647h-1200zM0 249h1200v-309h-1200v309z" />
<glyph glyph-name="uniF14B" unicode="&#xf14b;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM293 707v-86l307 -175l307 175v86h-614zM293 566v-254l156 164zM907 566l-156 -90l156 -164v254zM492 452
l-199 -209h614l-199 209l-108 -62z" />
<glyph glyph-name="uniF14C" unicode="&#xf14c;"
d="M0 929h1200v-169l-600 -342l-600 342v169zM0 652l306 -174l-306 -321v495zM1200 652v-495l-306 321zM390 430l210 -120l210 120l390 -409h-1200z" />
<glyph glyph-name="uniF14D" unicode="&#xf14d;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM197 636v-322h806v322h-806z" />
<glyph glyph-name="uniF14E" unicode="&#xf14e;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 911q-71 0 -137.5 -22t-120 -62.5t-94 -94t-62.5 -120t-22 -137.5t22 -137.5t62.5 -120t94 -94t120 -62.5
t137.5 -22q89 0 169.5 34.5t139 93t93 139t34.5 169.5t-34.5 169.5t-93 139t-139 93t-169.5 34.5zM281 593h638v-236h-638v236z" />
<glyph glyph-name="uniF14F" unicode="&#xf14f;"
d="M755 876q-98 0 -162 -57q-63 -57 -82 -164h324v-142h-336l-1 -28v-38l1 -26h285v-143h-271q41 -196 258 -196q115 0 221 46v-206q-93 -47 -236 -47q-197 0 -324 107t-160 296h-110v143h95q-3 18 -3 50l2 42h-94v142h107q30 194 160 307t326 113q151 0 283 -66l-79 -186
q-56 25 -104 38q-48 15 -100 15v0z" />
<glyph glyph-name="uniF150" unicode="&#xf150;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM382 957l94 -661h248l94 661h-436zM602.5 251q-53.5 0 -91.5 -37.5t-38 -91.5q0 -35 17.5 -64.5t47 -47
t64.5 -17.5q54 0 91.5 38t37.5 91.5t-37.5 91t-91 37.5z" />
<glyph glyph-name="uniF151" unicode="&#xf151;"
d="M670 801l108 184l98 -60l-552 -960l-102 60l75 131l-8 4q-125 64 -212 154q-76 87 -77 132q7 58 77 132q95 96 212 154q153 73 311 74q35 -1 70 -5zM903 736q1 -1 2.5 -1.5l3 -1t2.5 -1.5q125 -63 212 -154q76 -87 77 -132q-7 -57 -77 -132q-95 -96 -212 -154
q-154 -73 -311 -73q-31 0 -70 4l50 86q17 -1 20 -1q117 0 200 79t83 191q0 89 -55 160zM600 717q-117 0 -200 -79.5t-83 -191.5q0 -89 55 -160l58 101q-10 29 -10 59q0 62 40.5 109.5t101.5 59.5l58 101q-10 1 -20 1zM769 504q11 -29 11 -58q0 -61 -40.5 -108.5
t-101.5 -59.5z" />
<glyph glyph-name="uniF152" unicode="&#xf152;"
d="M780 475.5q0 -71.5 -53 -122.5t-127.5 -51t-127 51t-52.5 122.5t52.5 122t127 50.5t127.5 -50.5t53 -122zM600 834q164 -2 311 -73q125 -64 212 -154q76 -87 77 -132q-7 -58 -77 -132q-95 -96 -212 -154q-154 -73 -311 -73q-164 2 -311 73q-125 64 -212 154
q-76 87 -77 132q7 58 77 132q95 96 212 154q153 73 311 73zM600 745q-117 0 -200 -79t-83 -191t83 -191t200 -79t200 79t83 191t-83 191t-200 79z" />
<glyph glyph-name="uniF153" unicode="&#xf153;"
d="M0 1075h1200v-1200h-1200v1200zM863 918q-39 0 -69 -12q-118 -46 -118 -185v-131h-111v-152h111v-423h158v423h156l7 152h-163v112q1 26 7 40.5t19.5 21t36.5 5.5h96l4 142q-71 7 -107 7q-14 1 -27 0z" />
<glyph glyph-name="uniF154" unicode="&#xf154;"
d="M0 940h930v-391l270 391v-930l-270 391v-391h-930v930z" />
<glyph glyph-name="uniF155" unicode="&#xf155;"
d="M0 -125v1200h200v-550l500 500v-500l500 500v-1100l-500 500v-500l-500 500v-550h-200z" />
<glyph glyph-name="uniF156" unicode="&#xf156;"
d="M1200 1075v-1200h-200v550l-500 -500v500l-500 -500v1100l500 -500v500l500 -500v550h200z" />
<glyph glyph-name="uniF157" unicode="&#xf157;"
d="M600 1075q105 0 193.5 -51.5t140 -140.5t51.5 -193q0 -93 -40.5 -173.5t-111.5 -134.5t-160 -71v-124h166v-147h-166v-165h-146v165h-166v147h166v124q-135 26 -223.5 132.5t-88.5 246.5q0 104 51.5 193t140 140.5t193.5 51.5zM600 922q-96 0 -164 -68t-68 -164
q0 -64 31 -117.5t84.5 -84.5t116.5 -31t116.5 31t84.5 84.5t31 117.5q0 96 -68 164t-164 68z" />
<glyph glyph-name="uniF158" unicode="&#xf158;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM497 786l-118 -113v-38h157v151h-39zM590 786v-203h-211v-419h442v622h-231z" />
<glyph glyph-name="uniF159" unicode="&#xf159;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM457 854l-143 -138v-620h537v242l-66 -67v-109h-405v507h125v119h280v-172l-198 -198l-59 -182l181 59
l289 289l-122 123l-25 -25v172h-394zM618 387l61 -61l-91 -30z" />
<glyph glyph-name="uniF15A" unicode="&#xf15a;"
d="M285 1075h624v-272l39 39l194 -194l-458 -457l-287 -94l93 287l314 314v273h-443v-188h-198v-804h641v173l105 105v-382h-851v982zM539 336l-47 -144l144 47z" />
<glyph glyph-name="uniF15B" unicode="&#xf15b;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM449 853l-132 -128v-575h354v61h-293v471h116v110h259v-183h62v244h-366zM726 555v-146h-146v-113h146v-146
h113v146h146v113h-146v146h-113z" />
<glyph glyph-name="uniF15C" unicode="&#xf15c;"
d="M256 1075h624v-417h-105v313h-443v-188h-197v-804h500v-104h-605v982zM728 566h193v-249h249v-193h-249v-249h-193v249h-249v193h249v249z" />
<glyph glyph-name="uniF15D" unicode="&#xf15d;"
d="M401 1075h76v-292h-302v74zM580 1075h445v-1200h-850v809h405v391z" />
<glyph glyph-name="uniF15E" unicode="&#xf15e;"
d="M71 1075h1058v-1200h-1058v1200zM125 1003v-99h130v99h-130zM945 1003v-99h130v99h-130zM311 996v-524h578v524h-578zM125 781v-99h130v99h-130zM945 781v-99h130v99h-130zM125 560v-99h130v99h-130zM945 560v-99h130v99h-130zM311 435v-523h578v523h-578zM125 338v-99
h130v99h-130zM945 338v-99h130v99h-130zM125 117v-99h130v99h-130zM945 117v-99h130v99h-130z" />
<glyph glyph-name="uniF15F" unicode="&#xf15f;"
d="M0 1075h1200l-416 -416v-483l-368 -301v784z" />
<glyph glyph-name="uniF160" unicode="&#xf160;"
d="M382 -125q-180 101 -241 206t-33 243q11 53 41.5 120.5t55.5 131t28 120.5q29 -53 42.5 -96t16.5 -97q93 114 148 263.5t58 308.5q13 -8 34.5 -22t77.5 -61.5t99.5 -98t82 -128.5t44.5 -157q22 47 27 104t-13 106q15 -12 39.5 -37t56.5 -66t62.5 -89.5t53.5 -109
t34.5 -122.5t1 -130.5t-42.5 -133.5t-101 -131.5t-169 -123.5q43 84 50.5 182.5t-17 190t-78.5 173.5t-129 134q3 -21 3.5 -54.5t-7 -80.5t-18.5 -92t-32 -90t-47 -73q11 83 5.5 136t-17.5 78l-11 25q-1 -4 -2.5 -11t-8 -28.5t-14.5 -42.5t-23.5 -51t-33.5 -56
q-26 -38 -40 -69t-22.5 -72.5t1.5 -91t38 -107.5z" />
<glyph glyph-name="uniF161" unicode="&#xf161;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM410 814q-75 0 -149 -43v-635h90v310q55 16 102.5 11t94 -18.5t86.5 -33t80.5 -33.5t76.5 -20t74.5 7.5
t73.5 48.5v363q-60 -39 -118.5 -49t-109.5 3.5t-97 33t-101 37t-103 18.5z" />
<glyph glyph-name="uniF162" unicode="&#xf162;"
d="M0 999q76 44 150 62t138 13.5t127.5 -22t123.5 -42t120.5 -48t124 -39t127.5 -17t138.5 21t150.5 71.5v-643q-49 -49 -101 -74t-102.5 -27t-102.5 9.5t-107 33.5t-110 47t-117 47.5t-123.5 37t-134 14t-143.5 -19.5v-549h-159v1124z" />
<glyph glyph-name="uniF163" unicode="&#xf163;"
d="M0 1075h1200v-1200h-1200v1200zM355 701q-94 0 -160 -66t-66 -160q0 -61 30 -113.5t82 -82.5t113.5 -30t114 30t82.5 82.5t30 113.5q0 94 -66 160t-160 66zM845 701q-94 0 -160 -66t-66 -160t66 -160t160 -66t160 66t66 160t-66 160t-160 66z" />
<glyph glyph-name="uniF164" unicode="&#xf164;"
d="M249 957h259l84 -108h608v-144h-1200v144h165zM0 664h1200v-671h-1200v671z" />
<glyph glyph-name="uniF165" unicode="&#xf165;"
d="M249 957h259l84 -108h402v-144h-870l-124 -466v610h165zM0 58l175 606h1025l-206 -671h-994v65z" />
<glyph glyph-name="uniF166" unicode="&#xf166;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM391 763l-50 -64h-99v-512h716v512h-363l-50 64h-154z" />
<glyph glyph-name="uniF167" unicode="&#xf167;"
d="M249 957h259l84 -108h608v-856h-1200v856h165z" />
<glyph glyph-name="uniF168" unicode="&#xf168;"
d="M335 312l218 564l217 -564h-435zM0 -118v84h104l423 1102h133l423 -1102h117v-84h-431v84h132l-100 261h-498l-100 -261h131v-84h-334v0z" />
<glyph glyph-name="uniF169" unicode="&#xf169;"
d="M1041 282q-18 29 -45 37q-68 22 -103 -16q-21 -27 -21.5 -63.5t21.5 -60.5q34 -29 80 -21t68 41v83zM1140 613q60 -55 60 -156v-389q0 -8 -6 -13.5t-13 -5.5h-121q-7 0 -13 6t-6 13v11q-58 -44 -133 -44q-79 2 -134 53q-61 61 -62 154q3 101 62 156q58 48 134 49
q80 0 133 -42v37q0 88 -92 88q-72 0 -130 -60q-8 -7 -17.5 -5t-13.5 10l-48 82q-6 13 4 23q44 43 101 66q49 17 102.5 20.5t105.5 -9.5t87 -44zM353 677l-85 -302h170zM705 82q2 -8 2 -10q0 -9 -5.5 -14t-13.5 -5h-1h-150q-14 0 -18 14l-42 148h-247l-42 -148
q-4 -14 -20 -14h-148q-24 2 -19 24l251 824q5 14 19 14h165q14 0 19 -14z" />
<glyph glyph-name="uniF16A" unicode="&#xf16a;"
d="M42 139h186v172q0 88 78 165q57 56 249 191q37 26 83 57.5t69.5 48t46.5 33t35 27.5q25 22 28 29t3 40v171v2h148v-2v-171q0 -50 -21 -97t-60 -82q-23 -21 -53.5 -43t-93 -64.5t-100.5 -69.5q-182 -127 -230 -175q-26 -25 -30 -33t-4 -27v-172h194l-264 -264zM630 139
h190v172q0 11 -0.5 14.5t-3.5 10.5t-9.5 14t-20.5 21q-33 32 -125 100q3 1 10 6.5t12 8.5q30 21 108 73q63 -48 99 -83q78 -77 78 -165v-172h190l-264 -264z" />
<glyph glyph-name="uniF16B" unicode="&#xf16b;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM300 700v-450l300 225zM675 700v-450l300 225z" />
<glyph glyph-name="uniF16C" unicode="&#xf16c;"
d="M573 -125v545l-546 -545v1200l546 -545v545l600 -600z" />
<glyph glyph-name="uniF16D" unicode="&#xf16d;"
d="M0 1075h1010l-274 -376l-82 82q-20 17 -41.5 17t-39.5 -17l-20 -21q-5 8 -11 16q-5 8 -12 16q-77 84 -184 85q-90 -2 -157 -58q-75 -70 -84 -166q-5 -103 57 -175q72 -78 166 -84l245 -245q21 -17 42.5 -17t38.5 17l276 276q17 19 17 41t-16 38l269 227v-856h-1200v1200z
M1068 1075h132v-282l-580 -488q-4 -4 -10 -4h-4q-3 0 -7 4l-184 148h-2h-1q-32 -12 -67 -12q-80 0 -136.5 57t-56.5 137t56.5 137t137 57t137 -57t56.5 -137q0 -39 -15 -74v-2v-2q31 -42 49 -66q21 -26 23 -27q4 -7 13 -7t15 8z" />
<glyph glyph-name="uniF16E" unicode="&#xf16e;"
d="M0 1075h1200v-1200h-1200v1200zM809 910q-72 0 -132 -32q-96 35 -180 29q-122 -12 -179.5 -69.5t-65.5 -155.5q-13 -1 -21.5 -3t-18.5 -9t-16.5 -18t-11 -31t-4.5 -47q-1 -38 3.5 -64.5t15.5 -40.5t21 -20t27 -12l2 -314q1 -4 2 -16t2 -16.5t4 -14.5t8.5 -15t14 -11
t21.5 -9.5t31 -5.5l126 -3q70 -9 96 91q9 -84 74 -86h147q3 1 13 3.5t13 3.5t11.5 4t11.5 6t9 8.5t8.5 11.5t5 15.5t3.5 20.5l3 327l39 -2q15 2 24 4.5t21.5 8.5t22 18t17.5 31v98q-2 14 -6 22.5t-6.5 11t-8 5.5t-8.5 5h5q14 4 21.5 6.5t18 10.5t17.5 24t11 41l-3 80
q1 38 -22 60.5t-75 36.5q-81 12 -112 12zM516 833q38 1 107 -21l2 -95q-6 2 -18 6.5t-16.5 6t-16 4.5t-15 2.5t-13.5 0.5q-19 1 -32.5 -2.5t-21.5 -9t-12.5 -15.5t-6.5 -18t-3 -21v-67l169 -2q1 12 1 34v36t2.5 34t7 33.5t13.5 29.5t22.5 26t34.5 18t48 12q95 13 169 -19
l-2 -100q-27 21 -88 29q-26 4 -42 -2.5t-22 -20t-8.5 -31.5t-1 -37.5t-0.5 -38.5h122v-89h-122l1 -405l-135 4v401l-175 -4v-397h-135l4 397h-66l-2 101l72 -4l-2 27v14q1 20 2 31t4 31t8 32.5t15.5 29.5t24 27t35 19t48.5 12q10 -1 25 0t19 1z" />
<glyph glyph-name="uniF16F" unicode="&#xf16f;"
d="M886 1075q42 0 152 -16q72 -19 103 -50t30 -83l3 -109q-5 -34 -14 -56t-23.5 -33t-25 -14.5t-29.5 -8.5q-4 0 -6 -1q3 -2 8.5 -5t9 -5.5t8 -8t7.5 -15.5t6 -26v-134q-11 -25 -24.5 -41.5t-30.5 -25t-29 -11.5t-33 -6l-53 3l-3 -447q-1 -15 -5 -27.5t-7.5 -21t-11.5 -16
t-12.5 -11.5t-16 -8.5t-15.5 -5.5t-17.5 -4.5t-16.5 -4.5h-201q-90 2 -102 116q-35 -135 -131 -123l-172 4q-21 2 -38 6.5t-28 9.5t-19 13.5t-12.5 15t-7.5 18t-4 18t-2 20t-2 18.5l-4 430q-17 6 -28.5 12t-25 19t-21 31.5t-12.5 50.5t-4 74q0 27 3.5 48.5t8.5 36.5t13 26
t15 17.5t18 10.5t19.5 6t20.5 3q11 133 90 212t245 94q70 6 127 -5t120 -33q81 43 180 43zM486 970q-6 0 -26.5 -1.5t-33.5 -0.5q-29 -3 -53.5 -11.5t-42 -18t-32 -24.5t-23.5 -28t-16 -33t-10.5 -33t-5.5 -35l-3 -33t-1 -32q-1 -13 -1 -19l2 -37l-97 5l3 -137h89l-5 -543
h185v543l239 5v-548l184 -5l-2 553h167v122h-167q0 21 0.5 43t0.5 43.5t5.5 39.5t15 31t30 18.5t50.5 1.5q83 -11 119 -40l3 137q-101 43 -231 26q-37 -5 -65.5 -16.5t-46.5 -25.5t-30.5 -35t-18.5 -39.5t-9.5 -46t-3.5 -47v-49t-1 -46.5l-232 2v92q3 23 6.5 36t14 28
t31 21.5t53.5 4.5q4 2 15 0.5t16.5 -2.5t17 -4.5t18.5 -6t19.5 -7.5t20.5 -7l-3 129q-94 31 -145 30z" />
<glyph glyph-name="uniF170" unicode="&#xf170;"
d="M0 1075h410l-142 -144l332 -332l332 332l-146 144h414v-410l-144 142l-332 -332l332 -332l144 146v-414h-410l142 144l-332 332l-332 -332l146 -144h-414v410l144 -142l332 332l-332 332l-144 -146v414z" />
<glyph glyph-name="uniF171" unicode="&#xf171;"
d="M83 732v268h261v-268h-261zM469 732v268h262v-268h-262zM856 732v268h261v-268h-261zM83 341v268h261v-268h-261zM469 341v268h262v-268h-262zM856 341v268h261v-268h-261zM83 -50v268h261v-268h-261zM469 -50v268h262v-268h-262zM856 -50v268h261v-268h-261z" />
<glyph glyph-name="uniF172" unicode="&#xf172;"
d="M676 1075q158 0 316 -66l-76 -186q-127 51 -220 51q-63 0 -97 -36t-34 -103v-156h304v-177h-304v-116q0 -138 -122 -201h581v-210h-848v201q83 35 114 81q32 47 32 127v118h-144v177h144v158q0 162 92 250q93 88 262 88v0z" />
<glyph glyph-name="uniF173" unicode="&#xf173;"
d="M751 703h390v-301h-75v-527h-932v527h-75v301h428l-188 151l226 150l84 -254l146 325l226 -226zM774 976l-123 -271l242 153zM495 916l-101 -66l167 -134zM525 -50v476h-316v-476h316zM525 477v151h-391v-151h391zM991 -50v476h-316v-476h316zM1066 477v151h-391v-151
h391z" />
<glyph glyph-name="uniF174" unicode="&#xf174;"
d="M1024 777h114v-127q-7 0 -24.5 1.5t-33.5 1.5h-56v-245q0 -88 57 -88q41 0 74 23v-132q-49 -26 -117 -26q-96 0 -133 68q-27 51 -27 162v235h1v3l-20 1q-17 0 -44 -4v127h64v52q0 36 -4 59h152q-3 -25 -3 -57v-54zM603 194q3 26 3 89v409q0 62 -3 85h149q-3 -25 -3 -82
v-404q0 -67 3 -97h-149zM274 784q64 0 119 -32q63 0 146 32v-135q-18 -7 -53 -15q11 -30 11 -56q0 -84 -50.5 -146.5t-130.5 -74.5q-53 -8 -53 -56q0 -18 17 -35q23 -25 66 -31q188 -29 188 -156q0 -204 -243 -204q-100 0 -164 35q-82 45 -82 141q0 110 122 151v3
q-44 27 -44 84q0 73 42 92v2q-42 15 -75 66q-37 55 -37 118q0 95 67 158q64 59 154 59zM279 663q-83 0 -83 -97q0 -91 83 -91q80 0 80 92q0 38 -18 66q-23 30 -62 30zM288 128q-106 0 -106 -69q0 -68 115 -68q101 0 101 70q0 67 -110 67zM769 977q0 -26 -12 -49t-33 -36
t-46 -13t-46 13t-33 36t-12 49q0 41 26.5 69.5t64.5 28.5t64.5 -28.5t26.5 -69.5z" />
<glyph glyph-name="uniF175" unicode="&#xf175;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 1010q-109 0 -208 -42.5t-170.5 -114t-114 -170.5t-42.5 -208t42.5 -208t114 -170.5t170.5 -114
t208 -42.5t208 42.5t170.5 114t114 170.5t42.5 208t-42.5 208t-114 170.5t-170.5 114t-208 42.5zM335 853q76 -4 135 -53q117 32 246 2q15 13 49 30.5t85 20.5q11 -27 14.5 -61.5t-4.5 -65.5q55 -56 58 -151q-1 -74 -27 -124t-91 -81q-46 -21 -117 -27q32 -16 47 -34t19 -55
q2 -22 2 -72.5t2 -72.5q5 -11 15.5 -19t17.5 -12t4 -10.5t-19 -7.5q-40 0 -63 29q-7 11 -7 27v112q0 20 -9 28t-19 11v-148q0 -40 10 -52q9 -12 12 -22q0 -4 -5.5 -5t-20.5 3q-29 7 -41 32t-12 52v145h-30v-145q0 -27 -12 -52q-7 -14 -25 -24t-37 -11q-5 1 -5 5t2.5 7.5
t5.5 8t5 6.5q2 5 5.5 19t3.5 33v148q-9 -3 -17.5 -11t-8.5 -28v-112q0 -16 -7 -27q-21 -28 -63 -29q-16 1 -19 7q-2 5 2 9t11 8t8 6q11 8 16 19q6 10 3 49.5t-1 52.5q-33 -11 -65 -4.5t-60 25.5q-19 17 -37 54q-14 26 -56 60q-5 4 0 8q8 10 22.5 8.5t16.5 -3.5
q16 -7 36.5 -32.5t30.5 -33.5q26 -21 57 -24t60 16q3 12 8 21t16 16.5t17.5 10.5t24.5 12q-76 5 -124 25t-76 51q-38 43 -46.5 111t11.5 124q14 35 39 63q-19 59 7 134z" />
<glyph glyph-name="uniF176" unicode="&#xf176;"
d="M0 1027h1200l-504 -503v-494h185v-107h-562v107h185v494z" />
<glyph glyph-name="uniF177" unicode="&#xf177;"
d="M1119 482h-387l50 -228h313zM466 482h-386l24 -228h312zM1189 549q13 -14 11 -31l-34 -307q-3 -16 -13.5 -26t-24.5 -10h-376q-32 2 -37 32l-61 267q-47 30 -110 3l-60 -270q-8 -32 -37 -32h-376q-16 1 -26 11t-11 25l-34 307q-2 18 9 31l433 222q16 7 29.5 1.5
t20.5 -19.5q6 -15 1.5 -31t-18.5 -22l-274 -124h793l-274 124q-15 8 -20 23.5t2 29.5q8 15 22.5 20t28.5 -2z" />
<glyph glyph-name="uniF178" unicode="&#xf178;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM595 921q-73 0 -139 -21q32 -17 73.5 -31t82.5 -14q29 -1 61 20q33 22 91 10q10 -2 16 -3q-42 19 -88 29
t-97 10zM336 830q-7 0 -14 -1q-68 -52 -113 -125t-58 -161q24 -34 55 -52.5t79 -34.5t68 -25q6 -8 19 -18t17 -14q0 -6 -3 -18q-2 -25 2 -46.5t10 -33.5t19 -33.5t19 -33.5q3 -7 1 -16q-2 -20 -10.5 -78.5t-10.5 -90.5q49 -29 92 -31q5 9 9 21q5 10 11.5 25t16.5 33
q0 18 5.5 31t11.5 22q7 9 16 17q24 16 43 35.5t22 30.5q10 37 10 84q0 12 -9.5 21.5t-24.5 18.5q-21 9 -55 41.5t-52 39.5q-19 8 -39 9.5t-37 -1.5t-39 -1q-5 7 -9 8q-12 5 -4 12q5 11 -2.5 14t-17.5 1q-9 27 -11 44q17 -14 29.5 -20.5t20.5 -9.5q10 -3 16 -2q13 3 15 21.5
t-2 52.5q4 5 5 10q5 20 12.5 26.5t7.5 8.5q4 0 4 2q5 4 20 6l12 2q5 2 11 4q10 5 5 13q-1 0 -1 0.5t-2 0.5q21 11 44 48q-16 24 -45 39q-8 12 -23 7q-7 0 -17 7t-14 9q-6 2 -15 4q-17 11 -32 25.5t-24 31.5q-6 13 -22 17q-11 3 -22 3zM884 817q-43 -5 -90 -19t-62 -35
q-14 -23 -20 -38q-2 -10 -4.5 -22t-3.5 -16.5t-3.5 -12t-7 -14t-11.5 -16.5q-4 -5 -4 -13t7 -23q6 -11 6 -21q36 2 46 12l84 -8q16 18 33.5 17.5t32.5 -17.5q10 -9 21 -30l-34 -24q-23 14 -39 21t-34 8.5t-28 1t-36.5 -3.5t-42.5 -5q-2 -5 -5 -10q-3 -3 -7 -6.5t-10 -5.5
q-1 -3 -1 -12q0 -3 -1 -7q-24 -35 -17 -78q6 -31 24 -48q11 -9 23 -13t22 -3t24 1t25 -3q10 -3 11 -5q-6 -15 -4 -24q1 -6 8 -24t7 -28q-1 -6 -2 -15t-1.5 -15.5t-0.5 -14.5t1 -15t3 -14q6 -13 16 -39.5t16 -38.5q5 -12 16 -14q24 -4 57 30q24 28 28 60q2 12 10 26
q7 15 11 30q2 8 0 16q15 28 15 47q0 12 2 18q2 3 11.5 11.5t13.5 13.5q7 27 3 37q-1 3 -6 5l-20 7q6 12 17.5 19t23.5 4l38 12v8q0 106 -43 195t-118 151z" />
<glyph glyph-name="uniF179" unicode="&#xf179;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM451 912q-75 -25 -140 -77q22 3 44 1q20 -8 45 -37.5t40 -38.5q5 -3 15 -4q4 -11 28 -15t27 -9q29 -15 45 -39
q-1 -1 -5.5 -7.5t-5.5 -8.5t-5 -7t-6.5 -7.5t-6 -6.5t-7 -6.5t-7.5 -4.5q0 -1 0.5 -1t0.5 -1q5 -8 -4 -13q-9 -3 -23.5 -6.5t-21 -6t-13.5 -11.5t-10 -25q-1 -5 -5 -10q4 -33 2 -58t-16 -28q-6 -1 -15 3q-9 2 -21.5 9t-30.5 21q1 -7 6 -18t6 -16h7q7 3 12.5 -2.5t0.5 -11.5
l-3 -6l-1 -3l8 -4q12 -10 22 -10.5t28 2.5q15 5 31.5 2.5t27 -6t24 -12.5t22.5 -16t22 -17.5t23 -17.5q4 -3 25 -15.5t32 -23.5t11 -24q-1 -32 -2 -45.5t-8 -34.5t-21 -36l-27.5 -22t-28 -25.5t-17.5 -27.5q-5 -13 -5 -32q-7 -11 -13.5 -24.5t-13 -28t-11.5 -23.5
q119 -23 232 15t194 126q60 64 91 144t34 166l-46 -28q-28 5 -29 -7l19 -8q5 -2 6 -5q4 -11 -5 -26q-7 -14 -35 -42q-2 -30 -6 -39q-4 -12 -10 -25v-16q-2 -10 -11 -28.5t-11 -28.5q-3 -33 -29 -61q-34 -34 -56 -30q-12 3 -17 14q-6 15 -18 43.5t-15 35.5q-4 11 -4 23
t2.5 28t2.5 23q1 12 -7 30t-9 24q-2 8 4 24q0 1 -10.5 3.5t-37.5 2.5h-10h-4q-54 0 -68 65q-7 42 17 80q1 3 1 9.5t1 9.5q11 2 20 21q9 1 25 3.5t30 4.5t29.5 3.5t29 0t22.5 -6.5q9 -6 18 -11q18 -11 30 -15l36 24q-12 20 -22 30q-34 39 -68 0l-83 8q-17 -13 -47 -13
q-2 13 -6 21q-8 16 -8.5 24t3.5 13t9 9q7 5 11 15t5.5 19t3.5 20.5t4 17.5q6 16 20 39q9 15 28 25t41.5 16.5t46.5 9.5t45 4q-44 38 -91 63q-13 1 -38 6t-35 6q-25 3 -58 -17q-25 -19 -61 -19q-44 0 -89 16t-78 33zM145 557q-10 -64 -3 -129t32 -128q35 -87 100 -152.5
t151 -101.5q2 22 6.5 81t9.5 92q-4 19 -27 61t-25 68q-1 25 1 36.5t2 17.5q-4 3 -11.5 9.5t-11.5 9.5q-9 9 -14 12q-12 5 -40 14.5t-40.5 14.5t-33 14t-36.5 20.5t-32.5 26.5t-27.5 34z" />
<glyph glyph-name="uniF17A" unicode="&#xf17a;"
d="M0 1075h1200v-326h-221v222h-96v-222h-222v-92h222v-224h96v224h221v-782h-532q23 88 -7 157q-31 69 -100 128q-33 29 -123 99q-46 33 -47 75q1 15 4.5 26.5t12 23t14 17.5t18.5 19q68 53 99 99q43 63 43 150q-1 79 -38 142q-23 40 -68 81h106l99 79h-370
q-89 0 -173 -27.5t-138 -79.5v211zM219 910q56 1 98 -31q81 -69 110 -187q22 -93 3 -154q-13 -35 -36 -61t-53 -35q-40 -12 -85 -7t-76 27q-76 59 -103 167q-19 83 -6 163q16 70 84 103q30 14 64 15zM0 429q107 -80 244 -63q-34 -81 1 -137q18 -27 35 -51q-25 -1 -61 -1
q-47 -2 -78.5 -5t-72 -15t-68.5 -33v305zM297 130q22 0 42 -3q16 -12 75.5 -53t88.5 -65q64 -56 65 -115q0 -11 -2 -19h-566v151q61 69 172 90q98 14 125 14z" />
<glyph glyph-name="uniF17B" unicode="&#xf17b;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM251 739v-528h698v528h-698zM337 654h526v-358h-526v358zM785 626l-90 -156l-42 88l-27 55l-33 -51l-73 -115
l-31 32l-22 23l-24 -21l-87 -72l44 -52l62 52l38 -40l30 -32l24 37l64 100l43 -92l28 -58l33 56l122 212z" />
<glyph glyph-name="uniF17C" unicode="&#xf17c;"
d="M0 929h1200v-908h-1200v908zM148 783v-616h904v616h-904zM917 734l102 -58l-210 -364l-55 -96l-48 100l-75 156l-111 -171l-40 -63l-51 54l-66 69l-107 -89l-75 90l149 124l42 35l38 -40l52 -54l127 197l56 89l46 -95l72 -151z" />
<glyph glyph-name="uniF17D" unicode="&#xf17d;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM599 741q-43 -2 -74 -30.5t-41 -68.5q-16 -55 9 -111q18 -36 49 -56l-45 -22l-118 -54q-18 -8 -18 -30v-110
q0 -14 1 -23.5t7.5 -18t19.5 -8.5h420q10 2 16 6.5t8 13.5t2 13v17v110q0 22 -17 29l-114 55l-48 23q44 28 60 90q8 36 -1 72q-6 22 -17 40.5t-26 32.5t-34 22t-39 8zM403 691q-44 -3 -70.5 -37.5t-26.5 -76.5q3 -71 53 -102l-133 -61q-14 -6 -14 -24v-105q1 -10 7 -18
t15 -8h88v110q0 22 10.5 39.5t28.5 26.5l89 41q12 7 19 17q-15 23 -23.5 50.5t-8.5 57.5q0 20 4 39t10 35q-21 16 -48 16zM797 691q-26 0 -51 -17q14 -36 14 -73q0 -59 -32 -107q10 -10 24.5 -19t25.5 -14t30 -13t28 -13q18 -9 29 -26.5t11 -39.5v-110h90q10 1 15.5 8.5
t6.5 17.5v105q0 17 -14 24l-130 62q49 36 50 101q-2 45 -29.5 79t-67.5 35z" />
<glyph glyph-name="uniF17E" unicode="&#xf17e;"
d="M597 887q77 0 132 -64t55 -155q0 -40 -12 -77t-33.5 -65.5t-49.5 -47.5l73 -35l176 -84q26 -14 26 -45v-202q0 -12 -4.5 -22.5t-14 -17.5t-23.5 -9h-649q-18 1 -29 15.5t-12 33.5v202q0 31 26 45l183 84l68 32q-29 18 -51.5 47.5t-35 67t-12.5 78.5q0 59 25 109.5t68 80
t94 29.5zM295 810q37 -1 75 -24q-27 -68 -20 -143t48 -139q-14 -16 -30 -25l-136 -65q-59 -27 -63 -100v-171h-136q-10 0 -17.5 5.5t-11 14.5t-4.5 20v161q0 29 21 37l205 95q-38 24 -59 66t-23 92q1 69 45 124q42 49 106 52zM904 810q60 -1 107 -52q43 -50 45 -124
q-1 -46 -21 -87t-59 -69l203 -97q21 -11 21 -37v-161q0 -16 -8.5 -27.5t-24.5 -12.5h-140v171q-1 67 -61 100l-131 62q-19 11 -36 31q39 60 46 133.5t-19 142.5q37 26 78 27z" />
<glyph glyph-name="uniF17F" unicode="&#xf17f;"
d="M624 689l-136 213q-6 12 -3.5 24t12.5 19q11 6 23 3.5t18 -12.5l136 -215q6 -11 3.5 -23.5t-12.5 -18.5q-11 -5 -23.5 -2t-17.5 12zM1195 649q23 -42 -58 -85q-33 2 -63 6.5t-54 8.5q-27 5 -50 10q-2 -13 -6.5 -27t-11.5 -29q-45 10 -89.5 29t-85 50.5t-63.5 69.5
l164 168l30 106l62 -77q10 -2 34.5 -7.5t37.5 -9.5t28.5 -14.5t21.5 -26.5q8 -12 15.5 -52.5t16.5 -52.5q14 -14 31 -25.5t40 -41.5zM579 293q-19 0 -59 7t-59 7q-33 4 -24 -30l54 -216q-1 -27 -14 -45t-34 -21q-19 -2 -37 11.5t-23 28.5l-70 272q-2 14 -15.5 13.5
t-17.5 -13.5l-64 -271q-6 -19 -20.5 -30.5t-33.5 -11.5q-27 0 -43.5 21t-11.5 46l78 320l7 194q-57 14 -110.5 48.5t-77.5 79.5q-7 16 -2.5 30t18.5 22q16 6 31.5 1.5t22.5 -15.5q23 -38 69.5 -62t86.5 -24h382q-38 -192 -33 -362zM673 633q95 -124 258 -158
q-5 -14 -15.5 -41t-15.5 -39q-5 -18 4 -51q36 -139 75 -282q5 -34 -19 -49t-52.5 -7.5t-35.5 29.5l-56 210q-12 21 -33 22t-28 -22l-50 -209q-12 -30 -41 -32.5t-50.5 16t-16.5 41.5l48 195q1 10 -2 20q2 226 30 357z" />
<glyph glyph-name="uniF180" unicode="&#xf180;"
d="M228 1075h415q33 -2 54.5 -24.5t22.5 -52.5v-186q17 -22 43 -47t52 -49.5t43 -45.5q22 -27 48 -42q25 -13 63 -18.5t70.5 -13t54.5 -27.5q18 -48 10 -94.5t-39 -85t-74 -53.5q-92 -32 -204 22q1 -66 -1 -329q-5 -68 -47 -111t-105 -43t-106.5 46.5t-44.5 107.5v129
q-38 7 -69 25q-81 -11 -143 42q-55 3 -93 23.5t-56 51.5t-25 73.5t-3 86t12 93.5t18.5 91.5t18 83.5t8.5 67v203q2 33 24.5 55t52.5 22zM228 798q-1 -18 -7 -50t-14.5 -66t-18 -74t-15.5 -78t-9 -75t3.5 -66.5t21 -50.5t44 -30t71.5 -3q18 -32 57 -42.5t69 9.5
q31 -32 65 -36.5t65 23.5q0 -58 0.5 -115t0.5 -115q1 -33 22 -54t51 -22q33 1 54 23t21 53q0 63 0.5 143t1 158.5t0.5 136.5q25 -3 63 -17.5t70 -26.5t66 -19t64.5 5.5t53.5 47.5q14 30 10 56q-3 5 -5.5 5.5t-8.5 2.5q-41 6 -61.5 10.5t-53 14t-56 25t-42.5 37.5
q-20 26 -57 58.5t-66.5 63t-44.5 65.5v3h-415z" />
<glyph glyph-name="uniF181" unicode="&#xf181;"
d="M1200 103q0 -20 -10 -37t-27.5 -28t-39.5 -12h-203q-23 -1 -59 -7.5t-72.5 -14.5t-79.5 -17t-83.5 -13.5t-80.5 -5t-73.5 9.5t-60 29t-43 54.5t-18.5 84.5q-53 62 -42 143q-19 31 -25 69h-129q-61 1 -107.5 44.5t-46.5 106.5t43 105t111 47q263 2 329 1q-54 112 -22 204
q12 32 37 58.5t57 40.5t68.5 16.5t70.5 -12.5q20 -22 27.5 -54.5t13 -70.5t18.5 -63q15 -26 42 -48q24 -19 69 -68t73 -70h186q20 -1 37 -10.5t28 -27t12 -39.5v-415zM923 103v415h-3q-35 15 -65.5 44.5t-63 66.5t-58.5 57q-22 19 -37.5 42.5t-25 56t-14 53t-10.5 61.5
q-2 6 -2.5 8.5t-5.5 5.5q-26 4 -56 -10q-35 -23 -47.5 -53.5t-5.5 -64.5t19 -66t26.5 -70t17.5 -63q-58 0 -136.5 -0.5t-158.5 -1t-143 -0.5q-15 0 -28.5 -5.5t-24 -15t-16.5 -24t-7 -30.5q1 -30 22 -51t54 -22q58 0 115 -0.5t115 -0.5q-28 -31 -23.5 -65t36.5 -65
q-20 -30 -9.5 -69t42.5 -57q-6 -42 3 -71.5t30 -44t50.5 -21t66.5 -3.5t75 9t78 15.5t74 18t66 14.5t50 7z" />
<glyph glyph-name="uniF182" unicode="&#xf182;"
d="M0 103v415q1 22 12 39.5t28 27t37 10.5h186q28 21 73 70t69 68q27 22 42 48q13 25 18.5 63t13 70.5t27.5 54.5q67 29 138 -3.5t95 -99.5q32 -92 -22 -204q66 1 329 -1q68 -5 111 -47t43 -105t-46.5 -106.5t-107.5 -44.5h-129q-7 -38 -25 -69q11 -81 -42 -143
q-3 -55 -23.5 -93t-51.5 -56t-73.5 -25t-86 -3t-93.5 12t-91.5 18.5t-83.5 18t-67 8.5h-203q-33 2 -55 24.5t-22 52.5zM277 103q18 -1 50 -7t66 -14.5t74 -18t78 -15.5t75 -9t66.5 3.5t50.5 21t30 44t3 71.5q32 18 42.5 57t-9.5 69q32 31 36.5 65t-23.5 65q58 0 115 0.5
t115 0.5q33 1 54 22t22 51q-1 33 -23 54t-53 21q-63 0 -143 0.5t-158.5 1t-136.5 0.5q3 25 17.5 63t26.5 70t19 66t-5.5 64.5t-47.5 53.5q-30 14 -56 10q-5 -3 -5.5 -5.5t-2.5 -8.5q-6 -41 -10.5 -61.5t-14 -53t-25 -56t-37.5 -42.5q-26 -20 -58.5 -57t-63 -66.5
t-65.5 -44.5h-3v-415z" />
<glyph glyph-name="uniF183" unicode="&#xf183;"
d="M228 -125q-30 0 -52.5 22t-24.5 55v203q-1 25 -8.5 67t-18 83.5t-18.5 91.5t-12 93.5t3 86t25 73.5t56 51.5t93 23.5q62 53 143 42q31 19 69 25v129q1 30 12.5 57.5t31 49t47.5 34.5t60 13q63 0 105 -43t47 -111q2 -263 1 -329q112 54 204 22q67 -24 99.5 -95t3.5 -138
q-22 -20 -54.5 -27.5t-70.5 -13t-63 -18.5q-26 -15 -48 -42q-19 -24 -68 -69t-70 -73v-186q-1 -10 -3.5 -19.5t-7 -17.5t-11.5 -15.5t-15.5 -12.5t-18.5 -8t-21 -4h-415zM228 152h415v3q12 27 33.5 53t43 44t48.5 43t43 47q19 22 42.5 37.5t56 25t53 14t61.5 10.5
q6 2 8.5 2.5t5.5 5.5q4 26 -10 56q-23 35 -53.5 47.5t-64.5 5.5t-66 -19t-70 -26.5t-63 -17.5q0 68 -1 214.5t-1 223.5q0 31 -21 53t-54 23q-30 -1 -51 -22t-22 -54q0 -58 -0.5 -115t-0.5 -115q-31 28 -65 23.5t-65 -36.5q-30 20 -69 9.5t-57 -42.5q-42 6 -71.5 -3t-44 -30
t-21 -50.5t-3.5 -66.5t9 -75t15.5 -78t18 -74t14.5 -66t7 -50z" />
<glyph glyph-name="uniF184" unicode="&#xf184;"
d="M240 985h720l240 -645l-96 -375h-1008l-96 375zM94 281l65 -257h882l65 257h-1012zM928 201q20 0 34 -14.5t14 -34t-14 -33.5t-34 -14t-34 14t-14 33.5t14 34t34 14.5z" />
<glyph glyph-name="uniF185" unicode="&#xf185;"
d="M1050 138v300q0 91 -35.5 174.5t-96 143.5t-143.5 96t-175 36t-175 -36t-143.5 -96t-96 -143.5t-35.5 -174.5v-300q-4 -38 -28 -56t-50.5 -15t-48.5 22.5t-23 48.5v300q0 122 47.5 233t128 191t191.5 128t233 48t233 -48t191.5 -128t128 -191t47.5 -233v-300
q-4 -38 -28 -56t-50.5 -15t-48.5 22.5t-23 48.5zM262 362h76q10 0 18.5 -5t13.5 -13.5t5 -18.5v-375q0 -16 -11 -27t-26 -11h-76q-15 0 -26 11t-11 27v375q0 16 11 26.5t26 10.5zM862 362h76q15 0 26 -10.5t11 -26.5v-375q0 -16 -11 -27t-26 -11h-76q-15 0 -26 11t-11 27
v375q0 16 11 26.5t26 10.5z" />
<glyph glyph-name="uniF186" unicode="&#xf186;"
d="M1160 1057q19 -23 19 -49.5t-19 -45.5l-164 -166q-23 -20 -49 -19.5t-46 19.5q-19 22 -19 49.5t19 45.5l165 166q21 18 48 18t46 -18zM340 326q21 18 48 18t46 -18q19 -22 19 -50t-19 -46l-300 -302q-23 -20 -48.5 -19.5t-45.5 19.5q-19 22 -19 49.5t19 45.5zM628 545
q-1 36 -26 60.5t-58 24.5q-36 -2 -60.5 -27t-24.5 -58q-1 -15 -7.5 -26.5t-17.5 -18t-25 -6.5q-23 1 -37 15.5t-14 35.5q3 81 55 133q57 54 131 54q78 -2 131 -54q54 -58 54 -133q-1 -23 -15 -37t-35 -14q-23 1 -36.5 15.5t-14.5 35.5zM544 928q75 -1 143.5 -30t118.5 -79
q52 -55 80 -124t29 -140q-2 -62 -14 -101t-43 -90q-10 -22 -28.5 -46t-39 -48.5t-31.5 -42.5q-7 -22 -8 -47t1 -57.5t1 -50.5q-1 -47 -18.5 -91.5t-47.5 -68.5q-63 -37 -137 -37q-26 2 -42 18.5t-17 41.5q-2 24 16 42q12 12 25 16.5t31 5.5t29 3q29 9 33 21q7 22 7 71
q1 18 0 45.5t-1 51t5 44.5q11 49 36 81q5 6 12 14t13.5 15.5t10.5 13.5q11 14 38 56q7 11 18.5 30.5t16.5 27.5q13 37 13 82q-4 107 -73 178q-78 73 -177 73q-106 -3 -177 -73q-73 -78 -74 -178q-2 -27 -18.5 -44t-40.5 -17q-27 2 -44 19t-17 42q1 76 29.5 144.5t78.5 119.5
q54 52 123 80.5t140 28.5z" />
<glyph glyph-name="uniF187" unicode="&#xf187;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM733 731q-37 0 -73 -14q-36 -19 -60 -51q-47 58 -124 64.5t-138 -46.5q-44 -47 -48.5 -119t26.5 -134
q56 -103 227 -233q3 -2 16 -12.5t22.5 -16.5t18.5 -8q14 2 60.5 37t80.5 68q69 58 113 119q39 52 52 113.5t-7 129.5q-23 49 -67.5 76.5t-98.5 26.5z" />
<glyph glyph-name="uniF188" unicode="&#xf188;"
d="M832 1029q73 1 139 -24t119 -73.5t84 -115.5l1 -3l1 -3q28 -84 23.5 -170t-33 -162t-77.5 -142v-1v0q-80 -110 -204 -216q-1 0 -1.5 -0.5l-0.5 -0.5q-63 -59 -136 -115q-42 -32 -73 -52q-3 -2 -8.5 -5.5t-9 -5.5t-8.5 -5t-9 -5t-9.5 -3.5t-12 -3t-13.5 -1.5l-7 -1l-7 2
q-34 6 -75 37q-8 6 -17.5 14t-17 14t-11.5 9h-1q-66 50 -118.5 94t-110.5 99t-105 114.5t-79 119.5l-1 1v2q-40 83 -51 172t13 177.5t86 152.5l1 1l2 2q112 96 251 96t242 -89q38 35 84 58l2 2l2 1q72 28 146 29zM834 923q-52 -1 -106 -22q-51 -26 -86 -72l-41 -53l-43 52
q-43 54 -110 78t-140 11.5t-130 -63.5q-43 -45 -59.5 -110t-8 -135t39.5 -136q92 -170 382 -390l1 -1q9 -6 24.5 -19t21.5 -18q10 -7 20 -13q11 5 18 10q26 16 65 46q71 54 130 109l1 1l1 1q116 99 189 199v1q61 82 81.5 176.5t-8.5 198.5q-34 72 -98.5 111.5t-143.5 37.5z
" />
<glyph glyph-name="uniF189" unicode="&#xf189;"
d="M1177 825q20 -62 22.5 -126t-10.5 -124t-38 -115t-62 -104q-84 -116 -216 -229q-40 -37 -93 -81t-107 -81.5t-74 -39.5q-16 4 -34.5 15.5t-44 32t-30.5 24.5q-70 53 -127.5 101t-118 106t-109.5 120t-82 122q-39 83 -50 170t12 171.5t80 144.5q75 68 171.5 85.5
t185.5 -14.5t147 -104q48 62 117 97q69 27 140 28t131.5 -22t110.5 -68.5t79 -108.5z" />
<glyph glyph-name="uniF18A" unicode="&#xf18a;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 799l-293 -228v-420h202v254h182v-254h202v420z" />
<glyph glyph-name="uniF18B" unicode="&#xf18b;"
d="M600 1075l543 -422v-778h-373v469h-340v-469h-373v778z" />
<glyph glyph-name="uniF18C" unicode="&#xf18c;"
d="M109 1075h53h876h53v-53q0 -72 3 -170q2 -37 2.5 -52.5t-1.5 -40t-2.5 -32.5t-9 -27t-13.5 -25t-22.5 -26t-30 -31.5t-41.5 -38.5q-65 -61 -109 -104q49 -49 118 -113q27 -25 38.5 -35.5t28 -29.5t21 -25t12.5 -25.5t8.5 -27.5t2.5 -33.5t1 -42t-2 -54.5q-4 -94 -4 -161
v-53h-53h-876h-53v53q0 51 -1 104t-3.5 78.5t-0.5 57.5t1.5 43.5t9 34t16.5 30.5t28.5 32.5t40.5 40.5t58 53.5t75 72.5q-49 49 -118 114q-27 25 -38.5 35.5t-28 29.5t-21 25t-12.5 25t-8.5 27t-2.5 34t-1 42t2 55q4 94 4 160v53zM214 970v-23v-73.5t2.5 -55.5t3.5 -44
t9 -33t13 -29.5t21.5 -26.5t28.5 -30.5t39 -35.5q21 -18 33.5 -30t35.5 -34t45 -43l37 -37l-37 -37q-31 -31 -64 -62t-52.5 -47.5t-40.5 -37.5t-31.5 -33.5t-21.5 -34t-15 -40t-6.5 -50t-2 -66.5t2.5 -87h772v23v74t-2.5 55.5t-3.5 43.5t-9 33t-13 29.5t-21.5 26.5t-28.5 30
t-39 35q-67 61 -114 108l-37 37l37 37q31 31 64 62t52.5 47.5t40.5 37.5t31.5 34t21.5 34t15 39.5t6.5 50t2 66.5t-2.5 87h-772zM321 754q76 -11 139.5 -16t101.5 -7t104.5 3t92 7.5t119.5 12.5q-24 -17 -67.5 -43t-72.5 -45t-60 -45.5t-46.5 -59.5t-14.5 -73h-51
q-8 44 -26.5 78.5t-46 60t-54 44t-61.5 41.5t-57 42zM597.5 314.5q72.5 -0.5 135 -24t104.5 -74.5t42 -119h-557q-2 70 39 121t102.5 74t134 22.5z" />
<glyph glyph-name="uniF18D" unicode="&#xf18d;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM580 853v-120h40v120h-40zM413 817l-33 -23l69 -99l33 24zM787 817l-69 -98l33 -24l69 99zM600 700
q-75 0 -128 -39.5t-53 -95.5l103 -311h156l103 311q0 56 -53 95.5t-128 39.5zM276 664l-14 -38l112 -41l14 38zM924 664l-112 -41l14 -38l112 41zM383 489l-116 -31l11 -39l116 31zM817 489l-11 -39l116 -31l11 39zM520 232v-54h160v54h-160zM520 151v-54h160v54h-160z" />
<glyph glyph-name="uniF18E" unicode="&#xf18e;"
d="M568 1075h64v-190h-64v190zM304 1018l109 -156l-53 -37l-109 156zM896 1018l53 -37l-109 -156l-53 37zM600 832q119 0 202.5 -62.5t83.5 -151.5l-162 -493h-248l-163 493q0 89 84 151.5t203 62.5zM85 775l179 -65l-22 -61l-179 66zM1115 775l22 -60l-179 -66l-22 61z
M256 497l16 -62l-183 -49l-17 62zM944 497l184 -49l-17 -62l-183 49zM473 89h254v-86h-254v86zM473 -39h254v-86h-254v86z" />
<glyph glyph-name="uniF18F" unicode="&#xf18f;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM527 859v-168h-86l159 -238l159 238h-86v168h-146zM240 485v-347h720v347h-236q0 -51 -36.5 -87t-87.5 -36
t-87.5 36t-36.5 87h-236z" />
<glyph glyph-name="uniF190" unicode="&#xf190;"
d="M94 438h206l150 -150h300l150 150h206l-278 374h-456zM329 888h542l329 -450v-376h-1200v376z" />
<glyph glyph-name="uniF191" unicode="&#xf191;"
d="M478 1075h244v-280h142l-264 -396l-264 396h142v280zM0 453h394q0 -56 27.5 -103t75 -75t103.5 -28q85 0 145.5 60.5t60.5 145.5h394v-578h-1200v578z" />
<glyph glyph-name="uniF192" unicode="&#xf192;"
d="M1200 975v-176h-1200v176h1200zM0 700l338 -225l-338 -225v450zM1200 699v-176h-694v176h694zM1200 425v-175h-694v175h694zM0 151h1200v-176h-1200v176z" />
<glyph glyph-name="uniF193" unicode="&#xf193;"
d="M0 975h1200v-176h-1200v176zM1200 700v-450l-338 225zM0 699h694v-176h-694v176zM0 425h694v-175h-694v175zM1200 151v-176h-1200v176h1200z" />
<glyph glyph-name="uniF194" unicode="&#xf194;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM581 869q-41 0 -67 -22q-25 -23 -25 -59.5t25 -58.5q26 -22 67 -22t67 22t26 58.5t-26 59t-67 22.5zM667 606
q-38 0 -107 -16.5t-112 -33.5l9 -47l42 8q31 0 31 -41v-295q0 -24 -17 -34q-20 -14 -63 -24l10 -42q99 10 141 10t143 -10l8 42q-41 12 -62 25q-12 6 -16 12q-2 6 -2 21v289q0 60 19 109z" />
<glyph glyph-name="uniF195" unicode="&#xf195;"
d="M0 1075h1200v-342h-372q-41 53 -103 84t-133 31q-29 0 -56.5 -5t-53 -15t-48.5 -24.5t-42.5 -32t-36.5 -38.5h-355v342zM960 1024q-30 0 -51 -21t-21 -51v-94q0 -30 21 -51t51 -21h112q30 0 51.5 21t21.5 51v94q0 30 -21.5 51t-51.5 21h-112zM132 1023v-237h41v237h-41z
M202 1023v-237h42v237h-42zM274 1023v-237h41v70v96v71h-41zM101 1017q-18 -8 -30 -25.5t-12 -39.5v-166h42v231zM591 814q109 0 186.5 -77t77.5 -185.5t-77.5 -185.5t-186.5 -77t-186 77t-77 185.5t77 185.5t186 77zM591 761q-57 0 -105.5 -28t-76.5 -76.5t-28 -104.5
q0 -87 61.5 -148t148.5 -61t148.5 61t61.5 147.5t-61.5 148t-148.5 61.5zM0 684h324q-31 -62 -31 -132q0 -41 10.5 -79t30 -70.5t47 -60t60.5 -46.5t71.5 -29.5t79.5 -10.5q123 0 211 86.5t88 209.5q0 70 -32 132h341v-809h-1200v809z" />
<glyph glyph-name="uniF196" unicode="&#xf196;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM392 732q-19 0 -33.5 -14t-15.5 -34v-417q0 -20 14 -34t35 -15h416q20 0 34 14t15 35v417q0 19 -14 33t-35 15
h-416zM462 638h276q6 -1 11.5 -4t9 -8.5t4.5 -12.5v-274q-1 -7 -4 -12.5t-8.5 -9t-12.5 -3.5h-276q-5 0 -9 1.5t-7.5 5t-5.5 8t-3 10.5v274q1 4 2 7.5t3 6.5t5 5.5t7 3.5z" />
<glyph glyph-name="uniF197" unicode="&#xf197;"
d="M578 -40h153l-17 -85h-468l16 85h153l206 1029h-153l18 86h468l-17 -86h-153l-206 -1029v0z" />
<glyph glyph-name="uniF198" unicode="&#xf198;"
d="M328 803q75 0 141.5 -32t112.5 -88t64 -126h1h553v-139h-76v-264h-140v264h-66v-183h-139v183h-127h-1q-20 -117 -111 -194t-212 -77q-89 0 -164.5 44t-119.5 119.5t-44 164.5t44 164.5t119.5 119.5t164.5 44zM328 651q-73 0 -124.5 -51.5t-51.5 -124.5t51.5 -124.5
t124.5 -51.5t125 51.5t52 124.5t-52 124.5t-125 51.5z" />
<glyph glyph-name="uniF199" unicode="&#xf199;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM290 751v-406h620v406h-620zM367 677h466v-258h-466v258zM212 308v-68l40 -41h696l40 41v68h-776zM528 286
h144v-62h-144v62z" />
<glyph glyph-name="uniF19A" unicode="&#xf19a;"
d="M120 902h960v-628h-960v628zM239 788v-399h722v399h-722zM0 217h1200v-106l-61 -63h-1078l-61 63v106zM489 182v-96h222v96h-222z" />
<glyph glyph-name="uniF19B" unicode="&#xf19b;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM390 753h-8q-42 -1 -69 -8q-52 -12 -98 -44t-77.5 -80t-42.5 -108.5t5 -129.5q23 -82 86 -140.5t145 -73.5
q52 -10 106 0q43 8 93 37t80 64q0 4 -16 38.5t-18 34.5q-24 -34 -60.5 -59.5t-82.5 -39t-100 -0.5t-102 56q-43 42 -58 102t1 122q22 62 81.5 108t129.5 46q60 0 108.5 -27t80.5 -77q27 -45 69 -149.5t63 -144.5q42 -84 123 -106q65 -15 124.5 3t95.5 64.5t33 109.5
q-2 35 -14 60.5t-37 43.5t-49.5 29.5t-65.5 24.5q-49 17 -67.5 25.5t-29.5 19.5q-15 18 -16.5 42t8 44t29.5 32.5t45 8.5q44 0 86 -44l53 29q-28 46 -67.5 65.5t-68.5 15.5q-40 1 -74 -13.5t-55 -42t-26.5 -66.5t11.5 -86q30 -62 144 -98q19 -6 38 -14.5t43 -25t36 -34.5
t8.5 -45t-29.5 -56q-20 -22 -57 -29.5t-78 6.5t-66 48q-15 31 -40.5 91.5t-52.5 120.5t-52 107q-56 94 -151 127q-45 16 -97 16z" />
<glyph glyph-name="uniF19C" unicode="&#xf19c;"
d="M132 235q-18 43 -20 56q-10 72 5.5 143t50 129.5t83.5 109.5t103.5 87.5t111.5 60.5q50 20 112.5 25t117 1t108 -5.5t102.5 13.5t85 52q19 22 32.5 34.5t35 23.5t43.5 11q33 -1 46 -27q76 -165 43 -332t-134 -304t-232 -207q-252 -125 -486 -44q-19 5 -59 30.5t-65 26.5
q-14 -8 -27.5 -26t-29.5 -45.5t-21 -34.5q-19 -33 -50.5 -38.5t-58.5 21.5q-24 24 -27 49.5t10 47t33 43.5t41 39t34.5 33.5t12.5 26.5zM269 277q17 -13 37.5 -11t33.5 16q100 120 233 177.5t286 53.5q22 -1 37 13.5t16 34.5q1 22 -13.5 36.5t-35.5 15.5q-176 10 -330 -60.5
t-269 -204.5q-14 -17 -12 -37.5t17 -33.5z" />
<glyph glyph-name="uniF19D" unicode="&#xf19d;"
d="M0 1075h1200v-240h-1200v240zM0 595h1200v-240h-1200v240zM0 115h1200v-240h-1200v240z" />
<glyph glyph-name="uniF19E" unicode="&#xf19e;"
d="M321 -125l-321 321l401 401l121 -122l78 78l-122 121l401 401l321 -321l-401 -401l-121 122l-78 -78l122 -121zM321 32l244 244l-43 43l-79 -79l-78 78l79 79l-43 43l-244 -244zM799 510l244 244l-164 164l-244 -244l43 -43l79 79l78 -78l-79 -79z" />
<glyph glyph-name="uniF19F" unicode="&#xf19f;"
d="M0 1075h1200v-1200h-1200v1200zM294 839q-41 -1 -69 -27t-28 -63q1 -40 29.5 -65t65.5 -25h1q41 1 69.5 27t28.5 63q-1 27 -15.5 48t-35.5 31.5t-46 10.5zM804 601q-63 -1 -103 -30q-27 -20 -53 -57v74h-172q1 -21 1 -84q0 -109 -1 -437h172v291q1 28 7 42q31 63 88 64
q33 -1 53.5 -20.5t27.5 -44t7 -53.5v-279h172v299q-2 117 -57 177q-55 57 -142 58zM207 588v-521h172v521h-172z" />
<glyph glyph-name="uniF1A0" unicode="&#xf1a0;"
d="M600 1075q48 0 82.5 -36t34.5 -84l-1 -117h116h6h32v-38v-75h-540v75v38h32h6h116q1 55 1 118q0 32 15 59.5t41.5 43.5t58.5 16zM175 961h269v-79h-191v-928h694v928h-191v79h269v-1086h-850v1086zM600 959q-11 0 -19.5 -5t-14 -14t-5.5 -19q0 -16 11.5 -27.5t27.5 -11.5
t27.5 11.5t11.5 27.5t-11.5 27t-27.5 11zM330 649h38v-39h-38v39zM446 648h424v-39h-424v39zM330 503h38v-38h-38v38zM446 503h424v-39h-424v39zM330 358h38v-38h-38v38zM446 357h424v-38h-424v38zM330 213h38v-39h-38v39zM446 212h424v-39h-424v39zM330 67h38v-38h-38v38z
M446 67h424v-39h-424v39z" />
<glyph glyph-name="uniF1A1" unicode="&#xf1a1;"
d="M0 91h216v-216h-216v216zM0 91v-216h216v216h-216zM0 419h216v-216h-216v216zM0 747h216v-216h-216v216zM0 1075h216v-216h-216v216zM318 91v-216h882v216h-882zM318 91h882v-216h-882v216zM318 419h882v-216h-882v216zM318 747h882v-216h-882v216zM318 1075h882v-216
h-882v216z" />
<glyph glyph-name="uniF1A2" unicode="&#xf1a2;"
d="M310 -115q-77 20 -130.5 84t-62.5 145q-30 210 135 445q-31 71 -73 8q-89 -122 -136 -280q-6 41 1 83.5t29.5 87.5t38.5 72.5t47 72.5l18 27q-3 11 -8.5 23.5t-12 24t-14 23t-14.5 20.5t-12.5 16.5t-9 11t-2.5 3.5q-11 13 -20.5 29.5t-17 36.5t-11 39t-0.5 38t13 33
q39 65 102.5 107t134.5 40q21 -5 40.5 -20t31 -29t29.5 -38.5t26 -34.5l13.5 -18t14.5 -19.5t13 -17.5q121 65 229.5 96t215.5 11q57 -9 106.5 -41t82.5 -81.5t43 -105.5q28 -137 -18.5 -277t-140.5 -267q-209 -277 -469 -345q-122 -25 -212 -3zM582 -37q52 17 102 46
t96 69.5t81 77t79 86.5q87 111 128.5 240t16.5 255q-19 85 -89.5 143t-157.5 61q-152 10 -324 -79q-2 -16 15 -37t33 -3q84 43 171.5 55t177.5 -14q56 -20 92.5 -69.5t37.5 -109.5q7 -80 -22 -162t-75.5 -146t-110.5 -123q-31 -36 -64 -45t-81 12q-24 11 -119.5 52
t-145.5 67q-25 23 -49 53.5t-52 70t-44 59.5q-7 -10 -15 -23t-18.5 -33t-13.5 -26q-32 -64 -49.5 -124.5t-14 -130.5t36.5 -126q44 -76 132 -104t179 -9q34 6 67 17zM740 226q-12 65 -45 329q-25 40 -81 116.5t-80 116.5q-8 11 -37 50t-43 57t-37 46.5t-42 49.5
q-23 39 -62 54t-80 -4q-39 -16 -71 -39t-57 -57.5t-32 -72.5q8 -28 24 -56t42 -63t36 -51q30 -39 116.5 -161t136.5 -181q265 -116 314 -140zM448 400q-20 10 -37 31t-34 48.5t-30 41.5q-12 18 -45.5 62.5t-56 77.5t-40.5 65q5 18 12 32t10.5 19.5t17 20.5t18.5 20
q3 3 19.5 15t25.5 18t25.5 15.5t29 12t27 3t27.5 -8t24 -24.5q136 -173 199 -275l56 -234l-50 -40q-22 13 -71.5 38t-87.5 44zM400 623q-11 15 -30 41.5t-31.5 43.5t-30 39.5t-34.5 40.5q-50 -34 -17 -96q7 -13 23 -38l4 -6q13 -17 68.5 -93.5t88.5 -114.5q23 21 28 43.5
t-4 43t-21 38t-26.5 34.5t-17.5 24zM609 568q-7 22 -21 45t-35 50t-31 42q-107 144 -121 162q-7 -3 -37 -14t-43 -25q56 -86 134 -193q35 -44 75 -63.5t79 -3.5zM155 776q-43 51 41 129q6 6 18 16l4 4q65 54 126 45q23 -4 39.5 -24.5t0.5 -33.5q-16 -10 -46.5 -27.5t-50 -29
t-42.5 -32.5t-37 -45q-14 -27 -25.5 -27t-27.5 25zM204 815q15 24 38.5 42t61 38t49.5 29q-3 21 -17 26.5t-33.5 -2t-35.5 -17.5t-29 -20q-4 -4 -15 -14t-18.5 -17t-17.5 -18t-15 -20t-7.5 -18.5t2 -18.5t15.5 -16q5 3 8 7t8 10.5t6 8.5zM106 854q-5 29 8.5 57.5t34.5 48.5
t47 37q37 23 79 25q38 3 34 -26v-2q-55 -17 -101 -53t-75 -84q-6 -10 -14 -12.5t-13 9.5zM880 362q140 186 94 336q-12 39 -41.5 67t-65.5 41.5t-77.5 18t-78.5 -4.5q-9 -3 -24 -6.5t-29 -6t-29 -7t-25.5 -9.5t-16.5 -14t-5 -21q15 -22 133 -180q5 -39 13.5 -106t16 -123
t15.5 -105q49 35 120 120z" />
<glyph glyph-name="uniF1A3" unicode="&#xf1a3;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM596 800q-61 1 -111 -33t-76 -91q-17 -42 -16 -150h-90v-376h594v376h-98v71q0 41 -17 79q-15 36 -43.5 64
t-65.5 44t-77 16zM591 681h5q35 -1 58.5 -24.5t25.5 -58.5v-1v-71h-168v71q4 37 25 60t54 24z" />
<glyph glyph-name="uniF1A4" unicode="&#xf1a4;"
d="M592 1075q111 -1 205.5 -64.5t138.5 -164.5q31 -71 31 -145v-132h181v-694h-1096v694h167q0 50 -0.5 96t7 95.5t22.5 85.5q48 106 140.5 168t203.5 61zM592 854q-64 2 -105.5 -40.5t-47.5 -112.5v-132h308v132v1q-2 42 -22 76t-55 54.5t-78 21.5z" />
<glyph glyph-name="uniF1A5" unicode="&#xf1a5;"
d="M339 1075l66 -277l280 -59l-278 -66l-59 -279l-67 277l-280 59l278 66zM1073 1062l119 -118l-219 -218l-119 119zM775 765v0l119 -118l-775 -772l-119 119zM1015 627l36 -148l149 -31l-149 -36l-31 -149l-36 148l-149 32l148 35zM771 357l39 -163l165 -35l-164 -39
l-34 -164l-40 163l-164 35l163 39z" />
<glyph glyph-name="uniF1A6" unicode="&#xf1a6;"
d="M600 1075q113 0 216 -41.5t177.5 -111.5t118.5 -167t44 -203q0 -23 -2 -46l-11 -230l-351 29l11 230q1 8 1 17q0 79 -60 135t-144 56q-41 0 -79 -15t-65 -41t-43.5 -61t-16.5 -74q0 -8 1 -17l11 -230l-352 -29l-10 230q-2 23 -2 46q0 85 28 164.5t79.5 144t120 113
t153 75t175.5 26.5zM420 169l23 -262l-352 -31l-23 262zM780 168l351 -31l-23 -262l-351 31z" />
<glyph glyph-name="uniF1A7" unicode="&#xf1a7;"
d="M727 1075h469q0 -74 -0.5 -235t-0.5 -234h-167v181l-237 -236q76 -110 76 -244q0 -71 -22 -136.5t-62 -119t-93 -93t-118.5 -61.5t-136.5 -22q-117 0 -216.5 58t-157 157t-57.5 216.5t57.5 217t157 157t216.5 57.5q128 0 234 -69l241 239h-183v167zM435 564
q-70 0 -129.5 -34.5t-94 -93.5t-34.5 -129q0 -107 76 -182.5t182.5 -75.5t182 75.5t75.5 182t-75.5 182t-182.5 75.5z" />
<glyph glyph-name="uniF1A8" unicode="&#xf1a8;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 872q-124 0 -211.5 -87.5t-87.5 -211.5q0 -98 42 -154l257 -341l257 341q14 18 23.5 45t14 55t4.5 54
q0 124 -87.5 211.5t-211.5 87.5zM600 698q52 0 89 -36.5t37 -88.5t-37 -89t-89 -37t-89 37t-37 89t37 88.5t89 36.5z" />
<glyph glyph-name="uniF1A9" unicode="&#xf1a9;"
d="M600 1075q92 0 176 -36t144.5 -96.5t96 -144t35.5 -175.5q0 -62 -16.5 -127t-46.5 -105l-389 -516l-389 516q-63 83 -63 232q0 73 22.5 142t64.5 125t97.5 97.5t124.5 64.5t143 23zM600 813q-79 0 -134.5 -56t-55.5 -134.5t55.5 -134.5t134.5 -56t134.5 56t55.5 134.5
t-55.5 134.5t-134.5 56z" />
<glyph glyph-name="uniF1AA" unicode="&#xf1aa;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM579 865q-29 -2 -58 -11v-104h-43v87q-30 -14 -54 -34v-428q76 -63 176 -63q99 0 176 63v428q-24 19 -53 34
v-87h-43v104q-29 9 -58 11v-115h-43v115zM340 524v-219q23 -22 50 -40q64 -41 139 -55v-72h-85v-53h85h142h85v53h-85v72q75 14 139 55q27 18 50 40v219h-50v-194q-92 -75 -210 -75t-210 75v194h-50zM529 210v25h142v-25q-35 -7 -71 -7t-71 7z" />
<glyph glyph-name="uniF1AB" unicode="&#xf1ab;"
d="M568 1075v-178h66v178q44 -4 89 -18v-160h66v134q45 -22 81 -52h1v-658h-1q-118 -97 -270 -97q-153 0 -270 97h-1v658h1q36 30 82 53v-135h66v161q45 13 90 17zM200 550h78v-298q140 -115 322 -115t322 115v298h78v-337q-36 -33 -78 -60q-98 -64 -212 -86v39h-220v-39
q-114 22 -212 86q-42 27 -78 60v337zM710 67v-110h130v-82h-130h-220h-130v82h130v110q54 -10 110 -10t110 10z" />
<glyph glyph-name="uniF1AC" unicode="&#xf1ac;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM255 573v-196h690v196h-690z" />
<glyph glyph-name="uniF1AD" unicode="&#xf1ad;"
d="M0 645h1200v-340h-1200v340z" />
<glyph glyph-name="uniF1AE" unicode="&#xf1ae;"
d="M0 475l205 205l1 -143h332v332l-145 -1l207 207l205 -205l-143 -1v-332h332l-1 145l207 -207l-205 -205l-1 143h-332v-332l145 1l-207 -207l-205 205l143 1v332h-332l1 -145z" />
<glyph glyph-name="uniF1AF" unicode="&#xf1af;"
d="M365 995l835 63q-1 -24 -3.5 -77t-7 -163.5t-9.5 -216.5t-9.5 -210t-7.5 -172t-3 -77q-3 -62 -56.5 -110.5t-131.5 -59.5q-87 -13 -155.5 27t-78.5 109q-7 45 16 87t68.5 71.5t102.5 37.5q84 12 152 -26l29 564l-652 -68q-26 -626 -31 -708v-6v-1v1q-3 -30 -18 -58
t-39.5 -49.5t-58.5 -37t-72 -21.5q-87 -12 -155.5 28t-78 108.5t45 126t141.5 69.5q80 12 146 -22z" />
<glyph glyph-name="uniF1B0" unicode="&#xf1b0;"
d="M331 181l-1 -75h-330v75q0 67 49.5 115t117.5 48t116.5 -48t47.5 -115zM317 520.5q0 -62.5 -44 -106.5t-106 -44q-41 0 -75.5 20.5t-55 55t-20.5 75.5q0 62 44.5 106t106.5 44t106 -44t44 -106.5zM740 192l-1 -86h-380v86q0 78 56.5 133t135 55t134.5 -55t55 -133z
M724 584q0 -72 -50.5 -122.5t-122.5 -50.5t-123 50.5t-51 122.5t51 122.5t123 50.5t122.5 -50.5t50.5 -122.5zM1200 204l-1 -98h-431v98q0 88 64 150.5t153.5 62.5t152.5 -62.5t62 -150.5zM1181 647.5q0 -81.5 -57 -139t-138.5 -57.5t-139 57.5t-57.5 139.5q0 53 26.5 98
t71.5 71.5t99 26.5q81 0 138 -57.5t57 -139z" />
<glyph glyph-name="uniF1B1" unicode="&#xf1b1;"
d="M1 445q-1 7 -1 28v3q300 26 474 150q55 -25 111 3q59 -60 117.5 -98.5t129.5 -61.5q15 -38 48 -59q-40 -99 -111 -174q-54 36 -112.5 16.5t-82.5 -75.5q-168 1 -322 72t-251 196zM573 90q-179 -92 -352 -82q-69 58 -119 132t-76 155q113 -97 257 -151t290 -54zM821 107
q202 42 341 156q-46 -119 -136.5 -208.5t-200 -134t-235 -44.5t-238.5 51q144 20 274 94q42 -21 82 -16.5t72 33t41 69.5zM1057 442q97 7 143 15q0 -6 -0.5 -18t-0.5 -18q-63 -79 -153 -135.5t-191 -84.5q69 83 109 189q59 7 93 52zM1079 530q-8 62 -57 95q15 142 4 272
q71 -74 114.5 -165t55.5 -187q-52 -11 -117 -15zM411 688q-168 -106 -404 -125q26 163 130 290.5t254 183.5q9 -109 48 -199q-31 -32 -38.5 -71.5t10.5 -78.5zM647 790q108 134 145 252q77 -26 139 -67q22 -172 5 -331q-37 -6 -65 -28t-40 -55q-90 33 -187 130q19 50 3 99z
M519 871q-42 104 -43 191q114 26 232 2q-38 -107 -118 -208q-54 23 -71 15z" />
<glyph glyph-name="uniF1B2" unicode="&#xf1b2;"
d="M514 1075h172v-694h-172v694zM176 899l121 -121q-60 -59 -93 -137.5t-33 -165.5q0 -117 57.5 -215.5t156 -156t215.5 -57.5t215.5 57.5t156 156t57.5 215.5q0 58 -15.5 113.5t-43 103t-67.5 86.5l121 121q83 -83 129.5 -192.5t46.5 -231.5q0 -163 -80.5 -301
t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301q0 82 21.5 159.5t60.5 144t94 120.5z" />
<glyph glyph-name="uniF1B3" unicode="&#xf1b3;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 945q-77 0 -148.5 -24t-129 -67.5t-101 -101t-67.5 -129t-24 -148.5q0 -96 37.5 -182.5t100.5 -149.5
t149.5 -100.5t182.5 -37.5t182.5 37.5t149.5 100.5t100.5 149.5t37.5 182.5t-37.5 182.5t-100.5 149.5t-149.5 100.5t-182.5 37.5zM830 760l111 -111l-348 -348l-110 -111l-112 111l-112 113l110 111l113 -113z" />
<glyph glyph-name="uniF1B4" unicode="&#xf1b4;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM857 794l-389 -389l-126 126l-124 -124l126 -126l125 -125l124 124l389 389z" />
<glyph glyph-name="uniF1B5" unicode="&#xf1b5;"
d="M1004 976l196 -196l-611 -611l-195 -195l-196 196l-198 198l194 195l199 -199z" />
<glyph glyph-name="uniF1B6" unicode="&#xf1b6;"
d="M600 1058q122 0 233 -47.5t191.5 -128t128 -191.5t47.5 -233q0 -193 -111 -348t-287 -218l-148 392q56 17 92 65t36 109q0 37 -14.5 70.5t-38.5 58t-58 39t-71 14.5q-75 0 -128.5 -53.5t-53.5 -128.5q0 -61 36 -109t92 -65l-148 -391q-176 63 -287 217.5t-111 347.5
q0 122 47.5 233t128 191.5t191.5 128t233 47.5z" />
<glyph glyph-name="uniF1B7" unicode="&#xf1b7;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM744 851h-10q-76 -4 -150 -77l-315 -316l52 -51l315 315q63 60 115 56q50 -7 86.5 -56.5t24.5 -93.5l-8 -18
t-7.5 -15.5t-10 -15t-9 -12t-11.5 -13t-11 -11.5l-13.5 -13.5t-12.5 -13.5q-45 -45 -147.5 -146.5t-163.5 -162.5q-22 -20 -38 -28t-33 -5t-36 20q-29 30 -25 58q3 26 29 52l288 288q41 41 56 28q1 -4 1.5 -7.5t0 -7.5t-1.5 -7t-3.5 -7t-4.5 -6.5t-5 -6t-5 -5t-5.5 -5
t-3.5 -4.5l-265 -265l51 -51l265 264q91 93 28 158q-72 61 -160 -26l-288 -288q-44 -44 -50 -96q-5 -64 48 -118q43 -42 95 -43q21 1 44 10t39.5 21t30.5 25l156.5 156.5t185.5 184.5q56 58 70 114q24 96 -55 178q-63 62 -133 63z" />
<glyph glyph-name="uniF1B8" unicode="&#xf1b8;"
d="M472 -36q-22 -22 -49 -40.5t-63 -33t-70 -15.5q-83 1 -152 69q-84 85 -77 188q10 82 81 153l460 460q28 28 56.5 46.5t61.5 29t68.5 2.5t67.5 -36q101 -105 -43 -253l-424 -422l-81 83l422 422q1 0 8 7.5t9.5 10t9 9.5t8.5 11.5t6 11.5t5 12.5t0.5 12.5t-2.5 14
q-14 12 -40 -4.5t-49 -39.5l-460 -459q-42 -43 -47 -83q-6 -46 41 -93q30 -28 57 -33t52.5 7.5t60.5 45.5q97 97 260.5 259.5t235.5 234.5l19 19l18.5 18.5t16 16.5t16.5 18t14 17.5t14 20t12 20t12.5 23.5t10.5 26q12 45 -10.5 98.5t-68.5 93t-98 46.5q-82 8 -184 -89
l-503 -503l-83 81l503 505q119 117 240 123t228 -101q127 -130 89 -284q-24 -89 -113 -182q-104 -101 -295.5 -293.5t-250.5 -250.5z" />
<glyph glyph-name="uniF1B9" unicode="&#xf1b9;"
d="M1157 614q-1 -63 -19 -122.5t-51 -109t-78 -86.5q-154 -118 -398 -122v-72q-2 -68 -39 -124.5t-95 -83.5q-40 -19 -88 -19q-55 1 -112 29v208q50 -35 90 -23q41 15 41 58v578h203v-360q71 1 135 15q96 23 149 70q71 67 71 164q0 67 -31 121.5t-85 88.5q-105 60 -250 61
q-153 -4 -252 -65q-54 -35 -84 -90t-30 -116q10 -127 57 -171l-129 -139q-57 57 -88 145q-31 93 -31 165q1 66 20.5 128t53.5 114t81 91q163 127 402 128q250 -4 403 -127q75 -64 114 -152t40 -182z" />
<glyph glyph-name="uniF1BA" unicode="&#xf1ba;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM331 786v-622h182v622h-182zM687 786v-622h182v622h-182z" />
<glyph glyph-name="uniF1BB" unicode="&#xf1bb;"
d="M0 1075h500v-1200h-500v1200zM700 1075h500v-1200h-500v1200z" />
<glyph glyph-name="uniF1BC" unicode="&#xf1bc;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM802 888q-33 0 -57 -24q-22 -23 -23 -53.5t19 -50.5l100 -100q21 -21 51.5 -19.5t53 24t23.5 53t-20 50.5
l-100 100q-19 19 -47 20zM637 756l-324 -325l200 -199l324 324zM261 394l-53 -264l264 53z" />
<glyph glyph-name="uniF1BD" unicode="&#xf1bd;"
d="M1169 884q33 -32 31 -80t-37.5 -83.5t-83.5 -37.5t-80 30l-158 158q-33 33 -31 81t37.5 83.5t83.5 37t81 -30.5zM165 353l512 511l315 -315l-512 -511zM0 -123l83 416l333 -332z" />
<glyph glyph-name="uniF1BE" unicode="&#xf1be;"
d="M720 803q27 0 51 -11q17 -8 30.5 -20.5t23 -27.5t14.5 -32.5t5 -35.5v-339q-4 -25 -21.5 -32.5t-33.5 3t-17 29.5v320q-4 13 -22 11t-19 -11v-734q-3 -21 -14.5 -33.5t-27 -14t-30.5 3.5t-25.5 17.5t-10.5 27.5v450q-3 13 -15 16t-22.5 -3t-10.5 -14q1 -109 1 -449
q-3 -26 -20.5 -38.5t-36.5 -10.5t-34.5 15.5t-16.5 32.5l-1 734q-5 12 -22 10.5t-17 -10.5v-320q-3 -19 -15 -28t-24 -7t-22.5 11.5t-10.5 23.5v339q1 38 15.5 69t43.5 47q20 11 49 11h256zM718 957q0 -49 -34.5 -84t-83.5 -35t-83.5 35t-34.5 84q0 32 15.5 59t43 43
t59.5 16q49 0 83.5 -34.5t34.5 -83.5z" />
<glyph glyph-name="uniF1BF" unicode="&#xf1bf;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM384 837q-11 -1 -23 -11l-102 -102q-20 -18 -21 -55q-2 -60 50 -170q85 -161 273 -298q131 -85 234 -88
q35 0 55 21l102 101q12 12 9.5 29t-18.5 27l-148 87h-1q-24 15 -52 -7l-44 -45q-6 -5 -20 -2q-10 3 -19.5 6.5t-18 8.5t-18 11.5t-17 12.5t-16 14t-15 14t-15.5 14.5t-15 13.5q-78 72 -96 143q0 5 4 10l37 38q23 23 9 51l-82 156q-13 21 -32 20z" />
<glyph glyph-name="uniF1C0" unicode="&#xf1c0;"
d="M1183 77l-169 -168q-33 -34 -90 -34q-171 5 -388 146q-312 227 -453 494q-25 52 -41 91t-30 93.5t-12 97.5q1 61 35 91l169 169q27 22 50.5 17t40.5 -32l137 -258q10 -23 5.5 -45.5t-21.5 -39.5l-62 -62q-6 -9 -6 -18q30 -117 160 -237q10 -9 38 -36t43.5 -40.5t41 -33
t49.5 -30.5t50 -17q22 -6 32 3l73 74q20 15 43 19.5t45 -6.5h1l245 -145q27 -17 30.5 -45t-16.5 -48z" />
<glyph glyph-name="uniF1C1" unicode="&#xf1c1;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM278 780v-610h644v610h-644zM357 703h486v-335h-486v335z" />
<glyph glyph-name="uniF1C2" unicode="&#xf1c2;"
d="M0 1044h1200v-1138h-1200v1138zM148 900v-624h904v624h-904z" />
<glyph glyph-name="uniF1C3" unicode="&#xf1c3;"
d="M911 980q133 -83 210.5 -218.5t78.5 -287.5q0 -102 -34 -195h-255v701zM1139 217q-70 -141 -200 -229.5t-284 -104.5q-77 -5 -157 8.5t-144 41.5v284h785zM0 474q2 169 91 310.5t235 217.5l228 -204l-532 -478q-22 79 -22 154zM290 -33q-84 53 -147.5 127.5t-99.5 160.5
l247 223v-511zM847 618l-457 412q112 38 210 38q130 0 247 -54v-396z" />
<glyph glyph-name="uniF1C4" unicode="&#xf1c4;"
d="M0 976h1200v-1002h-1200v1002zM92 882v-814h1016v814h-1016zM301 765q41 0 70.5 -29.5t29.5 -72.5q0 -41 -29.5 -70.5t-70.5 -29.5q-43 0 -72 29.5t-29 70.5q0 43 29 72.5t72 29.5zM733 715l267 -276v-275h-800v69l180 234l123 -102z" />
<glyph glyph-name="uniF1C5" unicode="&#xf1c5;"
d="M321 -89l149 480h-215l-135 -120h-120l96 204l-96 204h120l135 -120h215l-149 480h120l269 -480h310q7 0 19.5 -0.5t43.5 -5t54.5 -12.5t43 -25t19.5 -41t-18.5 -41t-45 -25t-53 -12.5t-44.5 -4.5l-19 -1h-310l-269 -480h-120z" />
<glyph glyph-name="uniF1C6" unicode="&#xf1c6;"
d="M600 -125q-163 0 -301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5t301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5zM450 775v-600l450 300z" />
<glyph glyph-name="uniF1C7" unicode="&#xf1c7;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 936q-94 0 -179 -36.5t-147 -98.5t-98.5 -147t-36.5 -179t36.5 -179t98.5 -147t147 -98.5t179 -36.5
t179 36.5t147 98.5t98.5 147t36.5 179t-36.5 179t-98.5 147t-147 98.5t-179 36.5zM450 775l450 -300l-450 -300v600z" />
<glyph glyph-name="uniF1C8" unicode="&#xf1c8;"
d="M100 1075l1000 -600l-1000 -600v1200z" />
<glyph glyph-name="uniF1C9" unicode="&#xf1c9;"
d="M0 715q1 1 4.5 5.5t7.5 9.5v-46q-4 5 -7.5 9.5t-4.5 5.5v16zM1165 479q-38 -11 -88 12q-43 20 -76 27q-11 4 -17 1.5t-8 -7.5t-3 -18q-10 -87 -17 -113q-19 -68 -82 -90q-10 -3 -12.5 -9.5t0.5 -16.5q21 -89 25 -126q3 -24 -2 -30t-30 -10q-31 -5 -90 -7q-20 -1 -21 24
q-2 75 -11 141q-3 21 -9.5 24.5t-30.5 0.5q32 -157 34 -166q-18 -7 -26.5 -9.5t-24.5 -7.5t-27 -6t-25.5 -1t-28.5 3q-20 5 -22 24q-6 67 -11 123q0 1 -1 22h-40q14 -80 16 -91q1 -4 1.5 -9.5t1 -12t1.5 -9.5q3 -28 -1 -34t-30 -11q-34 -7 -65 -2q-38 6 -40 50q-2 65 -4 112
l-4 18q-3 0 -5 -1q0 -40 -1 -42q0 -10 -1 -44.5t-1 -53.5q0 -15 -16 -19q-59 -17 -139 5q-23 6 -20 31q4 29 13 79q0 2 8 35q16 62 -13 111q-48 79 -41 146q3 32 9 51q5 16 -11 24q-67 35 -86 91q-16 48 5 95t71 75q-16 -45 -17 -48q-12 -40 10.5 -78t64.5 -47q7 -1 15 2
q10 3 15 9q43 44 97 66t134 40q13 3 33 8.5t33.5 9t32 7t33.5 5.5q109 10 178.5 -22.5t120.5 -119.5q3 -4 45 -85q19 4 29.5 7.5t25.5 10.5t25.5 17.5t18.5 25.5q19 35 51 40.5t57 -20.5q32 -31 8 -68q-2 -3 -32 -44q26 -23 29 -26q6 -5 12 -15q16 -25 10.5 -37t-34.5 -17
q21 17 2 37q-3 3 -41 45q24 32 26 34q2 3 25 33q-7 13 -8 13q-20 32 -44 32t-45 -31l-3 -6t-4 -6.5t-4 -4.5l-7.5 -7.5l-7.5 -7.5t-7 -6.5t-8 -6.5t-9 -5q-64 -32 -141 -25q-20 1 -72 -5q-4 0 -8.5 -4.5t-5.5 -7.5q0 -4 3 -33q104 9 110 9q36 2 67 2t65.5 -9t62.5 -28
q6 -4 15 -6t21.5 -3.5t18.5 -2.5zM920 521q4 -66 4 -69q-2 -47 -32 -71t-76 -17q-90 14 -113 99q-24 91 3 183q7 24 26 49q20 26 47 29.5t53 -16.5q18 -14 36 -42q6 -10 14.5 -29t11.5 -25q6 -11 13 -12q4 -1 42 -1q-9 23 -9 24q-32 70 -88 128q-38 39 -79.5 35.5
t-73.5 -48.5q-38 -54 -49 -138q-18 -125 38 -207q47 -69 131 -79q80 -10 118 63q22 40 21 105q0 15 -0.5 20t-5 10t-10.5 6t-22 3zM857 103q2 4 6 10t5 8.5t1 4.5q-2 3 -4.5 6.5t-6.5 7t-5 5.5q-1 -2 -4.5 -5.5t-5 -6t-1.5 -4.5q1 -4 3 -7l6 -9t6 -10zM56 707q8 -39 14 -65
q-27 28 -19 64q3 0 5 1zM220 854q-5 -18 -15 -55q-9 38 15 55z" />
<glyph glyph-name="uniF1CA" unicode="&#xf1ca;"
d="M0 1075h1200v-1200h-783v263h549v652h-735v-915h-231v1200zM426 333v282h354v-282h-354z" />
<glyph glyph-name="uniF1CB" unicode="&#xf1cb;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM504 813v-242h-242v-192h242v-242h192v242h242v192h-242v242h-192z" />
<glyph glyph-name="uniF1CC" unicode="&#xf1cc;"
d="M430 1075h340v-430h430v-340h-430v-430h-340v430h-430v340h430v430z" />
<glyph glyph-name="uniF1CD" unicode="&#xf1cd;"
d="M600 1057q122 0 233 -47.5t191.5 -127.5t128 -191.5t47.5 -233.5q0 -188 -106 -340t-276 -218v53q74 31 135 82.5t105 116.5t68.5 144t24.5 162q0 112 -43.5 214.5t-117.5 176t-176 117.5t-214 44q-90 0 -174 -28t-151.5 -79t-118.5 -119t-79 -152t-28 -174
q0 -167 92 -304t241 -201v-53q-170 66 -276 218t-106 340q0 122 47.5 233.5t128 191.5t191.5 127.5t233 47.5zM600 938q111 0 205.5 -54.5t149 -149t54.5 -205.5q0 -75 -26 -144t-73 -123t-109 -89v44q78 50 124.5 132.5t46.5 179.5q0 101 -50 186.5t-135.5 135.5t-186.5 50
t-186.5 -50t-135.5 -135.5t-50 -186.5q0 -97 46 -179.5t124 -132.5v-44q-94 54 -150.5 148.5t-56.5 207.5q0 111 54.5 205.5t149 149t205.5 54.5zM600 806q101 0 173 -71.5t72 -173.5q0 -103 -75 -175v57q37 53 37 118q0 86 -60.5 146.5t-146.5 60.5q-56 0 -104 -27.5
t-75.5 -75.5t-27.5 -104q0 -65 37 -118v-57q-75 72 -75 175q0 102 72 173.5t173 71.5zM600 678q48 0 82.5 -34t34.5 -83q0 -32 -15.5 -58.5t-42.5 -42.5t-59 -16t-59 16t-42.5 42.5t-15.5 58.5q0 49 34.5 83t82.5 34zM600 414q29 0 52 -3t37.5 -7.5t25 -10t15.5 -11t8 -10
t4 -7.5v-2q1 -151 -12 -229q-6 -35 -22 -95.5t-30 -103.5l-13 -42h-130q-52 161 -65 240q-6 35 -9 92.5t-3 97.5v40q0 2 1 5.5t9 12t21.5 15.5t42.5 12.5t68 5.5z" />
<glyph glyph-name="uniF1CE" unicode="&#xf1ce;"
d="M367 1001h466v-181h47l280 -119h-1120l280 119h47v181zM0 632h1200v-365h-186l66 -318h-960l66 318h-186v365zM291 494l-93 -458h804l-94 458h-617z" />
<glyph glyph-name="uniF1CF" unicode="&#xf1cf;"
d="M472 1075q70 0 120 -50t50 -120t-49 -120h316v-313q50 50 120.5 50t120.5 -50t50 -120.5t-50 -120.5t-120.5 -50t-120.5 50v-356h-328q64 51 64 133q0 46 -23 85.5t-62 62t-86 22.5q-70 0 -120 -49.5t-50 -120.5q0 -82 64 -133h-368v403q51 -59 129 -59q70 0 120 50
t50 121q0 46 -22.5 85t-62 62t-85.5 23q-78 0 -129 -59v284h350q-49 50 -49 120q0 34 13.5 65.5t36.5 54.5t54.5 36.5t66.5 13.5z" />
<glyph glyph-name="uniF1D0" unicode="&#xf1d0;"
d="M0 1075h545v-545h-545v545zM655 1075h545v-545h-545v545zM109 966v-328h328v328h-328zM763 966v-328h328v328h-328zM218 855h110v-108h-110v108zM872 855h108v-108h-108v108zM0 420h545v-545h-545v545zM655 420h325v-108h111v108h109v-327h-328v109h-109v-327h-108v545z
M109 312v-328h328v328h-328zM218 203h110v-110h-110v110zM872 -16h108v-109h-108v109zM1091 -16h109v-109h-109v109z" />
<glyph glyph-name="uniF1D1" unicode="&#xf1d1;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM589 925q-36 0 -84.5 -20t-85.5 -51.5t-39 -61.5q-2 -28 1 -44.5t5.5 -19t7.5 -5.5h68q13 29 31.5 42.5
t53.5 12.5q39 0 68.5 -39t12.5 -79q-12 -29 -35.5 -67.5t-36.5 -66.5q-23 -49 -25 -107t24 -118l84 -2q-6 31 1.5 62.5t25 60.5t35 53t40 51t32.5 42q21 33 31.5 56t13.5 41t3 49q0 84 -60 145q-63 65 -172 66zM593.5 229q-42.5 0 -72.5 -29.5t-30 -72t30 -72.5t72.5 -30
t72 30t29.5 72.5t-29.5 72t-72 29.5z" />
<glyph glyph-name="uniF1D2" unicode="&#xf1d2;"
d="M586 1075q145 0 229 -87q79 -82 80 -195q0 -58 -11.5 -94.5t-53.5 -99.5q-9 -15 -25 -35t-31 -38t-33 -41.5t-32 -44t-28 -46.5t-21 -49.5t-10.5 -51.5t2.5 -52l-112 2q-24 48 -30 104t2.5 105t28.5 91q17 37 49 88.5t48 90.5q13 39 0 74t-44.5 59.5t-64.5 24.5
q-47 0 -71.5 -18t-41.5 -56h-91q-7 4 -10.5 7.5t-7.5 25.5t-1 60q3 39 52.5 81.5t114 68.5t113.5 26zM591.5 147q56.5 0 96 -39.5t39.5 -96.5q0 -37 -18 -68t-49.5 -49.5t-68.5 -18.5q-56 0 -96 40t-40 96.5t40 96t96.5 39.5z" />
<glyph glyph-name="uniF1D3" unicode="&#xf1d3;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM554 793q-32 -3 -54 -5.5t-55.5 -9.5t-56 -18t-48.5 -30.5t-41.5 -45.5t-26 -65.5t-10.5 -88.5v-295h267v316
h-89q-1 24 6 43.5t19 31.5t32.5 21.5t38 15t44.5 11.5zM912 793q-32 -3 -54 -5.5t-55.5 -9.5t-56 -18t-48.5 -30.5t-41.5 -45.5t-26 -65.5t-10.5 -88.5v-295h268v316h-89q-2 30 8 52t32 35.5t43.5 20.5t55.5 15z" />
<glyph glyph-name="uniF1D4" unicode="&#xf1d4;"
d="M600 -125q-163 0 -301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5t301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5zM646 157q32 3 54 5.5t55.5 9.5t56 18t48.5 30.5t41.5 45.5t26 65.5t10.5 88.5v295h-267v-316h89
q2 -30 -8 -52t-32.5 -35.5t-44 -20.5t-55.5 -15zM288 157q32 3 54 5.5t55.5 9.5t56 18t48.5 30.5t41.5 45.5t26 65.5t10.5 88.5v295h-268v-316h89q2 -30 -8 -52t-32 -35.5t-43.5 -20.5t-55.5 -15z" />
<glyph glyph-name="uniF1D5" unicode="&#xf1d5;"
d="M682 -20l-46 211q33 7 56.5 13.5t52 16.5t48 21t39 27.5t30.5 36t17 46t4 57.5h-158v561h475v-524q0 -87 -18.5 -156.5t-46 -115.5t-73.5 -81t-86.5 -54t-99.5 -32.5t-98 -18t-96 -8.5zM46 -20l-46 211q47 11 79 20t68 26.5t57 39t33.5 55.5t9.5 77h-157v561h474v-524
q0 -87 -18.5 -156.5t-46 -115.5t-73.5 -81t-86 -54t-99.5 -32.5t-98.5 -18t-96 -8.5z" />
<glyph glyph-name="uniF1D6" unicode="&#xf1d6;"
d="M518 970l46 -211q-47 -11 -78.5 -20t-68 -26.5t-57 -39t-33.5 -55.5t-10 -77h158v-561h-475v524q0 87 18.5 156.5t46 115.5t73.5 81t86.5 54t99.5 32.5t98 18t96 8.5zM1154 970l46 -211q-47 -11 -79 -20t-68 -26.5t-57 -39t-33.5 -55.5t-9.5 -77h157v-561h-474v524
q0 68 11 125.5t29 100t47.5 77t58 58t69.5 42t74 28.5t78.5 17.5t76 11t74.5 6.5z" />
<glyph glyph-name="uniF1D7" unicode="&#xf1d7;"
d="M936 1033l264 -264l-264 -264v194h-172q-19 0 -27 -4t-33 -30q-48 -48 -175 -230q-25 -36 -56 -81.5t-48 -70t-36.5 -51t-36.5 -44.5q-35 -39 -82 -60t-97 -21h-171h-2v148h2h171q33 0 40 3t29 28q14 16 33 42t62 89.5t71 102.5q135 192 191 249q77 78 165 78h172v186z
M0 847h2h171q50 0 97 -21t82 -59q28 -31 73 -96q-3 -3 -8.5 -11t-9.5 -13q-25 -36 -60 -85q-3 -5 -7 -11t-7 -9q-70 103 -91 126q-22 25 -29 28t-40 3h-171h-2v148zM936 445l264 -264l-264 -264v190h-172q-88 0 -165 78q-35 36 -83 99q52 78 73 108q3 5 8.5 12t6.5 10
q68 -92 100 -125q25 -25 33 -29.5t27 -4.5h172v190z" />
<glyph glyph-name="uniF1D8" unicode="&#xf1d8;"
d="M600 -125q-163 0 -301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5t301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5zM600 775q-124 0 -212 -88t-88 -212t88 -212t212 -88t212 88t88 212t-88 212t-212 88z" />
<glyph glyph-name="uniF1D9" unicode="&#xf1d9;"
d="M799 195q5 -7 6 -13t-3.5 -12.5t-6 -7.5t-9.5 -8q-72 -54 -189 -54q-31 0 -63 5t-66 17.5t-54 31.5q-12 9 -15.5 20.5t6.5 22.5q5 4 10 5t11 -2.5t8.5 -5.5t9.5 -8q8 -5 15.5 -9.5t14 -7.5t15 -6t14 -5t15 -4t14.5 -3t16 -2t15.5 -1.5t17 -2t16.5 -1.5q50 2 85.5 11.5
t75.5 31.5q26 23 41 8zM1018 981q31 0 57 -15t41 -41t15 -56q0 -47 -33 -80t-80 -33q-30 0 -56 15t-41.5 41t-15.5 57l-197 46l-79 -223q100 -4 187 -30.5t155 -68.5q40 34 90 34q29 0 54.5 -11t44.5 -30t29.5 -44t10.5 -53q0 -36 -17.5 -67t-48.5 -50q4 -22 4 -42
q0 -74 -42 -140t-116 -115.5t-172 -77.5t-209 -28q-113 0 -210.5 28t-171 77.5t-116 115.5t-42.5 140q0 12 1 22q2 13 3 21q-29 19 -46 49.5t-17 66.5q0 28 10.5 53t29.5 44t43.5 30t53.5 11q53 0 91 -34q71 44 161.5 70.5t194.5 28.5l97 275l232 -57q13 32 41.5 51.5
t63.5 19.5zM599 649q-102 0 -193 -25t-157.5 -68t-106 -101.5t-39.5 -124t39.5 -123.5t106 -101t157.5 -68t193 -25t192.5 25t158 68t106.5 101t39 123.5t-39 124t-106.5 101.5t-158 68t-192.5 25zM781.5 480q35.5 0 60.5 -24.5t25 -59.5t-25 -60t-60 -25q-23 0 -43 11.5
t-31 31t-11 42.5q0 35 24.5 59.5t60 24.5zM428 479q23 0 43 -11.5t31 -31t11 -42.5q0 -35 -24.5 -59.5t-60.5 -24.5q-23 0 -42.5 11t-31 30.5t-11.5 42.5q0 35 25 60t60 25zM1132 370q-1 0 -1 -1q0 1 1 1z" />
<glyph glyph-name="uniF1DA" unicode="&#xf1da;"
d="M364 67l-104 -116h-260l259 294zM687 -49h-223l-66 113l134 150zM383 89l-362 616h222l169 -287l514 581h274z" />
<glyph glyph-name="uniF1DB" unicode="&#xf1db;"
d="M600 1075q122 0 231.5 -46.5t192.5 -129.5l176 176v-483h-178h-305l193 193q-61 60 -141 94t-169 34q-149 0 -266 -90t-156 -231h-167q28 137 111.5 247t209 173t268.5 63zM0 358h483l-193 -193q61 -60 141 -94t169 -34q149 0 266 90t156 231h167q-28 -137 -111.5 -247
t-209 -173t-268.5 -63q-122 0 -231.5 46.5t-192.5 129.5l-176 -176v483z" />
<glyph glyph-name="uniF1DC" unicode="&#xf1dc;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 945q-77 0 -148.5 -24t-129 -67.5t-101 -101t-67.5 -129t-24 -148.5q0 -96 37.5 -182.5t100.5 -149.5
t149.5 -100.5t182.5 -37.5t182.5 37.5t149.5 100.5t100.5 149.5t37.5 182.5t-37.5 182.5t-100.5 149.5t-149.5 100.5t-182.5 37.5zM435 770l165 -165l165 165l130 -130l-165 -165l165 -165l-130 -130l-165 165l-165 -165l-130 130l165 165l-165 165z" />
<glyph glyph-name="uniF1DD" unicode="&#xf1dd;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM411 812l-149 -148l189 -189l-189 -189l149 -148l189 188l189 -188l149 148l-189 189l189 189l-149 148
l-189 -188z" />
<glyph glyph-name="uniF1DE" unicode="&#xf1de;"
d="M0 810l265 265l335 -335l335 335l265 -265l-335 -335l335 -335l-265 -265l-335 335l-335 -335l-265 265l335 335z" />
<glyph glyph-name="uniF1DF" unicode="&#xf1df;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 823q-71 0 -135 -28t-110.5 -74.5t-74.5 -110.5t-28 -135q0 -94 46.5 -174.5t127 -127t174.5 -46.5
q95 0 175 47.5t126 127.5l-122 70q-27 -47 -75 -75t-104 -28q-86 0 -146 60t-60 146t60 146t146 60q72 0 129 -45l-91 -65l310 -103v323l-101 -71q-32 32 -70.5 54.5t-84 35.5t-92.5 13z" />
<glyph glyph-name="uniF1E0" unicode="&#xf1e0;"
d="M600 1075q123 0 233 -47t193 -131l174 124v-559l-535 179l158 112q-98 78 -223 78q-97 0 -179 -47.5t-129.5 -129.5t-47.5 -179t47.5 -179t129.5 -129.5t179 -47.5q65 0 124.5 22.5t106.5 62.5t78 93l211 -121q-52 -90 -130.5 -157.5t-179.5 -105.5t-210 -38
q-163 0 -301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5z" />
<glyph glyph-name="uniF1E1" unicode="&#xf1e1;"
d="M670 1075h530v-530l-177 178l-242 -242l-175 175l242 242zM419 469l175 -175l-242 -242l178 -177h-530v530l177 -178z" />
<glyph glyph-name="uniF1E2" unicode="&#xf1e2;"
d="M304 779v-203h592v203l304 -304l-304 -304v203h-592v-203l-304 304z" />
<glyph glyph-name="uniF1E3" unicode="&#xf1e3;"
d="M1025 1075l175 -175l-241 -241l177 -178h-530v530l178 -177zM64 469h530v-530l-178 177l-241 -241l-175 175l241 241z" />
<glyph glyph-name="uniF1E4" unicode="&#xf1e4;"
d="M904 771h-203v-315v-37v-240h203l-304 -304l-304 304h203v240v37v315h-203l304 304z" />
<glyph glyph-name="uniF1E5" unicode="&#xf1e5;"
d="M809 941h134h257v-257v-268v-257h-257h-525v-150l-418 279l418 278v-150h525v268h-134v257z" />
<glyph glyph-name="uniF1E6" unicode="&#xf1e6;"
d="M300 850l300 -300h-225v-225h150l150 -150h-450v375h-225zM525 775h450v-375h225l-300 -300l-300 300h225v225h-150z" />
<glyph glyph-name="uniF1E7" unicode="&#xf1e7;"
d="M600 -125q-163 0 -301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5t301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5zM525 700l-300 -225l300 -225v450zM900 700l-300 -225l300 -225v450z" />
<glyph glyph-name="uniF1E8" unicode="&#xf1e8;"
d="M1200 -125h-502l-11 345h-174l-11 -345h-502l242 1200h299l-9 -277h136l-9 277h299zM684 324h-168l14 407h140l14 -407v0z" />
<glyph glyph-name="uniF1E9" unicode="&#xf1e9;"
d="M1200 -125h-240q0 131 -34.5 255t-96.5 229.5t-150.5 194t-194 150.5t-229.5 96.5t-255 34.5v240q196 0 379 -60.5t330.5 -171.5t258.5 -258.5t171.5 -330.5t60.5 -379zM720 -125h-240q0 98 -38 186.5t-102.5 153t-153 102.5t-186.5 38v240q146 0 279.5 -57t230 -153.5
t153.5 -230t57 -279.5zM240 -125h-240v240q99 0 169.5 -70.5t70.5 -169.5z" />
<glyph glyph-name="uniF1EA" unicode="&#xf1ea;"
d="M517 997q33 0 63 -13t51.5 -35t34.5 -52t13 -63q0 -71 -54 -120h1q32 -23 50.5 -59t34 -92t23.5 -76q25 -2 67.5 -4t75 -4t74 -6.5t75.5 -14t67.5 -25t60.5 -41t46 -59.5h-734q-51 7 -86 27q-20 -43 -60 -69.5t-89 -26.5q-38 0 -72 17t-57 46l-13 18l-24 -2q-27 0 -46 19
t-19 46t19 46t46 19q8 0 10.5 2t5.5 10q18 46 59 74.5t91 28.5q58 0 103 -37l92 -65q18 -15 48 -17.5t51 1.5t58 13q-2 13 -5.5 37t-5.5 35t-8.5 27t-17.5 28t-28 23q-14 10 -39.5 28t-38 27.5t-31 26.5t-28 32.5t-17 38t-9.5 48.5q0 68 47.5 115.5t114.5 47.5zM517 916
q-22 0 -41 -11t-29.5 -30t-10.5 -41q0 -33 23.5 -57t57 -24t57.5 24t24 57.5t-24 57.5t-57 24zM231.5 507q-33.5 0 -57.5 -24t-24 -57.5t24 -57t57 -23.5q22 0 41 10.5t29.5 29.5t10.5 41q0 33 -23.5 57t-57 24zM664 473q-19 0 -32.5 -13.5t-13.5 -32.5t13.5 -32.5
t32.5 -13.5t32.5 13.5t13.5 32.5t-13.5 32.5t-32.5 13.5zM668 251h152l111 -298q-29 3 -54.5 13t-44.5 22.5t-37.5 33t-31 39t-27 45.5t-23.5 47t-22.5 49.5t-22.5 48.5zM180 161h158v-72h-158v72zM464 161h141l33 -72h-174v72zM960 161h179v-72h-158z" />
<glyph glyph-name="uniF1EB" unicode="&#xf1eb;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM250 765v-462h254v-67h-62v-51h316v51h-62v67h254v462h-700zM336 677h528v-287h-528v287z" />
<glyph glyph-name="uniF1EC" unicode="&#xf1ec;"
d="M0 971h1200v-792h-436v-114h106v-86h-540v86h106v114h-436v792zM148 822v-493h904v493h-904z" />
<glyph glyph-name="uniF1ED" unicode="&#xf1ed;"
d="M510 1075h180v-156q134 -27 230.5 -123.5t123.5 -230.5h156v-180h-156q-27 -134 -123.5 -230.5t-230.5 -123.5v-156h-180v156q-134 27 -230.5 123.5t-123.5 230.5h-156v180h156q27 134 123.5 230.5t230.5 123.5v156zM510 798q-85 -23 -147.5 -85.5t-85.5 -147.5h175v-180
h-175q23 -85 85.5 -147.5t147.5 -85.5v175h180v-175q85 23 147.5 85.5t85.5 147.5h-175v180h175q-23 85 -85.5 147.5t-147.5 85.5v-175h-180v175z" />
<glyph glyph-name="uniF1EE" unicode="&#xf1ee;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM641.5 815q-120.5 0 -206 -85t-85.5 -206q0 -84 45 -155v0l-127 -127l108 -107l131 131v1q62 -33 134 -33
q121 0 206 85t85 205.5t-85 205.5t-205.5 85zM641 686q44 0 81 -21.5t59 -59t22 -81.5q0 -67 -47.5 -114t-114.5 -47t-114 47t-47 114t47 114.5t114 47.5z" />
<glyph glyph-name="uniF1EF" unicode="&#xf1ef;"
d="M672.5 1075q104.5 0 199.5 -40.5t163.5 -109.5t109.5 -164t41 -199t-41 -199t-109.5 -164t-163.5 -109.5t-199 -40.5q-127 0 -238 58v-1l-231 -231l-190 190l224 223h1q-79 125 -79 274q0 104 40.5 199t109 164t163.5 109.5t199.5 40.5zM673 847q-78 0 -143.5 -38
t-103.5 -104t-38 -143q0 -118 83.5 -201.5t201.5 -83.5t201.5 83.5t83.5 201.5t-83.5 201.5t-201.5 83.5z" />
<glyph glyph-name="uniF1F0" unicode="&#xf1f0;"
d="M755 1040l445 -445l-445 -446v321q-255 0 -358 -17q-178 -29 -267 -139q-102 -126 -130 -404q0 135 18 248t45.5 194t74 145t88.5 104.5t105 69.5t108 43t113.5 22t104.5 9t98 1v294z" />
<glyph glyph-name="uniF1F1" unicode="&#xf1f1;"
d="M0 1075h594v-197h-397v-806h806v221l197 209v-627h-1200v1200zM858 1075l342 -342l-342 -342v247q-73 0 -110 -1t-95.5 -4.5t-88.5 -11.5t-73.5 -22.5t-66.5 -36t-51.5 -53.5t-44 -75t-29.5 -99.5t-21 -127.5q0 104 14 190.5t35 148.5t56.5 111.5t68 80.5t81 53.5
t83 33.5t87 16.5t80.5 6.5t75 1v226z" />
<glyph glyph-name="uniF1F2" unicode="&#xf1f2;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM298 822q-15 4 -28 -3t-17.5 -21t1.5 -28q8 -13 22 -18l83 -26l30 -296l-19 -105q-3 -17 7.5 -29t28.5 -13
h451q14 0 25 10t12 26q0 14 -10.5 24.5t-26.5 11.5h-408l8 48h430q8 0 15 3.5t12.5 10.5t7.5 16l30 169q2 14 -7.5 26.5t-25.5 15.5l-483 54l-6 59q-3 24 -26 31zM460 262q-23 0 -39.5 -16.5t-16.5 -40t16.5 -39.5t39.5 -16t39.5 16t16.5 39.5t-16.5 40t-39.5 16.5z
M790.5 262q-23.5 0 -40 -16.5t-16.5 -40t16.5 -39.5t40 -16t40 16t16.5 39.5t-16.5 40t-40 16.5z" />
<glyph glyph-name="uniF1F3" unicode="&#xf1f3;"
d="M1199 671l-50 -288q-4 -24 -21 -38t-40 -14h-734l-14 -82h699q18 -1 32.5 -9.5t22 -22.5t7.5 -30q-1 -18 -9.5 -32.5t-22 -22t-30.5 -7.5h-773q-31 2 -48.5 23.5t-13.5 50.5l33 180l-51 506l-143 45q-25 10 -36 31.5t-5 46.5q10 25 32 36t46 5l183 -58q37 -14 43 -53
l10 -101l829 -93q28 -6 43 -26t11 -47zM455 -6.5q0 -39.5 -27.5 -67t-67 -27.5t-67.5 27.5t-28 67t28 67.5t67.5 28t67 -28t27.5 -67.5zM1023 -6q0 -19 -8 -37t-20.5 -30.5t-30 -20t-36.5 -7.5q-40 0 -68 27.5t-28 67t28 67.5t67.5 28t67.5 -28t28 -67z" />
<glyph glyph-name="uniF1F4" unicode="&#xf1f4;"
d="M541 852h118l11 -114q35 -9 66 -27l89 72l83 -83l-72 -89q18 -31 27 -66l114 -11v-118l-114 -11q-9 -35 -27 -66l72 -89l-83 -83l-89 72q-31 -18 -66 -27l-11 -114h-118l-11 114q-35 9 -66 27l-89 -72l-83 83l72 89q-18 31 -27 66l-114 11v118l114 11q9 35 27 66l-72 89
l83 83l89 -72q31 18 66 27zM600 584q-45 0 -77 -32t-32 -77q0 -30 14.5 -55t39.5 -39.5t55 -14.5q45 0 77 32t32 77t-32 77t-77 32zM50 1021h320v-91h-320v91zM50 30h320v-91h-320v91zM50 30v900h91v-900h-91zM830 1011h320v-91h-320v91zM830 20h320v-91h-320v91zM1150 921
v-901h-91v901h91z" />
<glyph glyph-name="uniF1F5" unicode="&#xf1f5;"
d="M960 -125v1200h240v-1200h-240zM640 775h240v-900h-240v900zM320 475h240v-600h-240v600zM0 175h240v-300h-240v300z" />
<glyph glyph-name="uniF1F6" unicode="&#xf1f6;"
d="M934 326q1 67 -34.5 114.5t-95.5 75.5q-57 25 -112 38q-18 5 -67 16t-77 19q-33 8 -61 29t-29 47q3 22 17.5 38.5t35.5 24.5t40.5 11.5t40.5 3.5q93 3 145 -85q12 -21 22 -32.5t25 -19.5t35 -8q33 2 56.5 25t24.5 54q-5 64 -52 107t-114 65q-164 42 -298 -9
q-66 -24 -106.5 -75t-40.5 -115q1 -45 20 -81.5t45.5 -59t67.5 -41t72.5 -28t75.5 -18.5q66 -13 104 -26q81 -29 82 -87q0 -42 -43 -71q-114 -56 -195 -14q-29 14 -47.5 37t-33.5 57q-14 32 -33 48.5t-49 16.5q-33 -1 -58 -22.5t-25 -51.5q5 -59 41.5 -108t88.5 -77
q95 -39 190.5 -43t187.5 32q70 30 112 87t42 126zM1158 349q33 -70 33 -147q-1 -66 -26.5 -126.5t-69.5 -104.5q-101 -95 -231 -96q-85 1 -154 39q-82 -14 -168 -4.5t-156 39.5q-102 46 -180 125t-121 176q-65 173 -33 334q-55 100 -40.5 209.5t91.5 187.5q84 80 197.5 92
t208.5 -46q91 14 182.5 -1t171.5 -55.5t142 -101.5q32 -33 58 -71t46 -77.5t33.5 -81.5t20.5 -84.5t8 -85.5q-1 -62 -13 -120z" />
<glyph glyph-name="uniF1F7" unicode="&#xf1f7;"
d="M62 1075h1073v-578q18 13 38 14q6 0 10 -1.5t7 -5.5t3 -9q-6 -20 -18 -39t-31.5 -36.5t-37.5 -31t-46 -28.5t-44.5 -24t-45.5 -23t-39 -19q29 -97 20 -194q-11 -91 -65.5 -154.5t-144.5 -66.5q-32 0 -60.5 15.5t-46.5 42.5q-12 18 -12 44v235q-9 2 -25 7t-19 6v-252
q0 -43 -37 -72t-83 -30q-85 1 -142 66.5t-68 155.5q-10 99 21 193q-143 62 -245 165q-1 2 -5 8.5t-6 10.5t-4.5 9.5t-1.5 10.5t4 9q11 6 25 3t26 -11v580zM125 1011v-555q8 -4 19 -10t22 -11.5t20 -9.5l838 9q35 17 47 24v553h-946zM437.5 718q58.5 0 100 -41.5t41.5 -100
t-41.5 -100t-100 -41.5t-100 41.5t-41.5 100t41.5 100t100 41.5zM773 718q38 0 70.5 -19t51.5 -51.5t19 -71.5q0 -58 -41.5 -99.5t-100 -41.5t-100 41.5t-41.5 100t41.5 100t100.5 41.5z" />
<glyph glyph-name="uniF1F8" unicode="&#xf1f8;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM286 789v-628h628v628h-628zM491 669q28 0 48 -19.5t20 -47.5t-20 -48t-48 -20t-47.5 20t-19.5 48t19.5 47.5
t47.5 19.5zM702.5 669q28.5 0 48 -19.5t19.5 -47.5t-19.5 -48t-48 -20t-48 20t-19.5 48t19.5 47.5t48 19.5zM382 456h436q0 -90 -64 -154t-154 -64q-59 0 -109.5 29t-79.5 79.5t-29 109.5z" />
<glyph glyph-name="uniF1F9" unicode="&#xf1f9;"
d="M0 1075h1200v-1200h-1200v1200zM392.5 847q-53.5 0 -91.5 -38t-38 -91.5t38 -91.5t91.5 -38t91.5 38t38 91.5t-38 91.5t-91.5 38zM796 847q-26 0 -50 -10.5t-41.5 -27.5t-27.5 -41t-10 -51q0 -53 37.5 -91t91.5 -38t92 38t38 91q0 27 -10.5 51t-28 41t-41.5 27.5
t-50 10.5zM183 439q0 -113 56 -209.5t152 -152t209 -55.5t209 55.5t152 152t56 209.5h-834z" />
<glyph glyph-name="uniF1FA" unicode="&#xf1fa;"
d="M729 734q57 1 111 -22.5t91 -63.5q55 -68 64 -143l1 -6q39 15 78 9q62 -9 96.5 -55t28.5 -106q-7 -56 -44 -94t-89 -37h-426q-8 2 -11 10l-1 480q3 8 18 14q39 14 83 14zM596.5 699q15.5 0 19.5 -347q-14 -133 -17 -135t-6 17q-2 14 -14 118q2 347 17.5 347zM545 671.5
q15 0.5 20 -319.5q-14 -133 -17 -135t-6 17q-2 14 -14 118q2 319 17 319.5zM395 639v0q14 -1 20 -287q-1 -9 -2 -24q-12 -111 -16 -111.5t-15 101.5l-4 34q3 284 17 287zM445.5 629.5q14.5 -0.5 19.5 -277.5q-14 -133 -18 -135q-2 -2 -5 17q-2 14 -14 118q3 278 17.5 277.5z
M346 626q16 0 21 -274q-14 -133 -18 -135q-2 -2 -5 17q-2 14 -14 118q0 274 16 274zM495 620v0q15 0 20 -268q-14 -133 -17 -135t-6 17q-2 14 -13 118q1 266 16 268zM297.5 608.5q12.5 -0.5 19.5 -256.5q-14 -133 -18 -135q-2 -2 -5 17q-2 14 -14 118q5 257 17.5 256.5z
M250 560.5q11 -0.5 18 -208.5q-14 -133 -18 -135q-2 -2 -5 17q-2 14 -14 118q8 209 19 208.5zM153 491q3 1 7 -40q2 -16 7 -61q2 -21 4 -32q-13 -131 -17 -134q-2 -1 -5 16q-2 15 -13 118q13 133 17 133zM105 488v0q3 -1 17 -131q-12 -128 -16 -131q-2 -2 -5 16
q-2 14 -13 115q13 130 17 131zM200 486q4 -1 19 -134q-14 -131 -17 -133q-2 -1 -4 5q-2 12 -16 128q14 133 18 134zM58 464q3 0 18 -110q-13 -108 -17 -110q-1 -1 -3 6q-3 10 -15 104q13 109 17 110zM14 424.5q3 0.5 11 -53.5l3 -18q-11 -71 -13.5 -70.5t-14.5 70.5
q11 71 14 71.5z" />
<glyph glyph-name="uniF1FB" unicode="&#xf1fb;"
d="M0 725h283l425 346v-1192l-425 346h-283v500zM868 781q125 -125 128 -305q0 -172 -128 -295l-86 89q88 88 88 209q0 123 -88 214zM1016 926q184 -184 184 -445t-184 -447l-91 91q147 145 147 355t-147 358z" />
<glyph glyph-name="uniF1FC" unicode="&#xf1fc;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301q0 -146 -65 -272t-178 -210q-28 67 -84.5 120t-127.5 84.5t-154 42.5t-163 0.5t-157 -48t-135 -98.5q-65 79 -100.5 176.5t-35.5 204.5q0 163 80.5 301t218.5 218.5t301 80.5zM961 763q-110 40 -222.5 59.5t-219.5 19.5
t-228 -10q-20 1 -32.5 -22t-6.5 -50.5t32 -36.5q97 15 182 17t167.5 -9.5t153.5 -29t166 -47.5q20 -2 32.5 21.5t6.5 51t-31 36.5zM882 586q-93 34 -188 50.5t-185.5 16.5t-193.5 -8q-10 1 -18.5 -7t-12 -20t-3.5 -25t7 -24.5t21 -15.5q82 12 154 14t142 -8t130.5 -25
t140.5 -40q7 -1 13.5 3t11 11t7.5 16t2.5 18.5t-3 18t-9 15.5t-16.5 10zM818 411q-78 30 -158.5 43.5t-156.5 13.5t-162 -7q-15 1 -24 -15.5t-4.5 -36.5t22.5 -26q69 11 130 12.5t120 -7t109.5 -21t118.5 -33.5q14 -1 23 15.5t5 36t-23 25.5zM532 73q72 0 141.5 -49.5
t103.5 -121.5q-86 -27 -177 -27q-151 0 -282 71q29 58 87 92.5t127 34.5z" />
<glyph glyph-name="uniF1FD" unicode="&#xf1fd;"
d="M284 131h473v-98h-473v98zM292 307l471 -32l-6 -98l-472 32zM147 348h78v-394h591v394h78v-473h-50h-619h-78v473zM328 515l459 -113l-24 -95l-459 114zM429 752l408 -239l-50 -84l-407 239zM678 977l263 -393l-81 -54l-263 392zM996 1075l57 -469l-97 -12l-57 469z" />
<glyph glyph-name="uniF1FE" unicode="&#xf1fe;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM604 865l-102 -293l-310 2l246 -188l-97 -294l255 176l250 -183l-89 297l251 181l-309 7z" />
<glyph glyph-name="uniF1FF" unicode="&#xf1ff;"
d="M606 1048l34 -108l105 -326l342 -7l113 -3l-92 -66l-278 -200l99 -327l32 -109l-91 67l-276 202l-281 -195l-93 -64l35 108l107 324l-272 208l-90 68h113l342 -2l113 323zM603 809l-85 -241l-9 -26h-27l-255 1l203 -155l21 -16l-8 -26l-80 -243l210 146l22 15l22 -16
l206 -151l-73 245l-8 26l22 16l208 149l-256 6l-27 1l-8 25z" />
<glyph glyph-name="uniF200" unicode="&#xf200;"
d="M961 -98l-367 269l-374 -259l142 432l-362 276l455 -2l151 430l139 -434l455 -10l-370 -266z" />
<glyph glyph-name="uniF201" unicode="&#xf201;"
d="M250 -125v1200h200v-550l500 500v-1100l-500 500v-550h-200z" />
<glyph glyph-name="uniF202" unicode="&#xf202;"
d="M950 1075v-1200h-200v550l-500 -500v1100l500 -500v550h200z" />
<glyph glyph-name="uniF203" unicode="&#xf203;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM300 775v-600h600v600h-600z" />
<glyph glyph-name="uniF204" unicode="&#xf204;"
d="M0 1075h1200v-1200h-1200v1200z" />
<glyph glyph-name="uniF205" unicode="&#xf205;"
d="M1075 843q99 -131 120 -293.5t-40 -307.5q-50 -111 -136 -194t-194 -127.5t-224 -45.5q-171 2 -314.5 91t-220.5 236h262q56 0 104 22t77 62t30 91q0 45 -17 81.5t-51 57.5q-10 5 -21 9.5t-19.5 7.5t-22 6t-20 4.5t-22.5 4t-21 3.5q-2 0 -9.5 1.5t-10 2.5t-9.5 2.5t-10 3
t-8.5 4t-8.5 5t-6 6t-4.5 7.5t-1.5 9q3 53 88 53h182q49 -1 74 -12q36 -16 37 -51v-182q2 -95 63 -148q61 -49 145 -50q90 2 146 50q63 59 63 148v443zM601 1075q183 -2 338 -104v-576q-3 -31 -23 -51.5t-50 -20.5q-31 2 -52 22.5t-21 49.5v173q-3 149 -97 184
q-29 11 -63 11h-295q-84 -2 -138 -47q-58 -53 -58 -129q1 -55 25 -91q37 -51 110 -65q14 -3 47.5 -7.5t50.5 -10.5q30 -11 30 -42q-2 -32 -36 -42q-24 -6 -88 -6h-262q-19 80 -19 152q2 123 51.5 234.5t130.5 191t190.5 126.5t228.5 48z" />
<glyph glyph-name="uniF206" unicode="&#xf206;"
d="M31 634v348q2 39 29 66t63 27h348q45 -3 89 -20t70 -46l515 -573q24 -31 24 -68.5t-24 -63.5l-403 -403q-30 -26 -68.5 -26t-63.5 26l-513 575q-30 34 -48 76t-18 82zM182 835q1 -38 27 -63.5t62 -25.5q38 1 63.5 27.5t25.5 61.5q-2 38 -28 63.5t-61 25.5
q-38 -2 -63.5 -28t-25.5 -61z" />
<glyph glyph-name="uniF207" unicode="&#xf207;"
d="M0 608v290q3 34 24.5 55.5t52.5 22.5h291q52 -1 106 -34l456 -500q20 -27 20.5 -57t-20.5 -52l-337 -336q-26 -22 -57 -22.5t-52 22.5l-429 478q-54 67 -55 133zM147 723q25 -22 55 -21.5t51 21.5q22 24 21.5 54.5t-21.5 51.5q-24 21 -54.5 20.5t-51.5 -20.5
q-22 -26 -21.5 -55t21.5 -51zM506 974h112q37 -2 73.5 -16.5t58.5 -38.5l429 -479q21 -25 21 -56.5t-21 -53.5l-336 -335q-74 -42 -118 9l329 329q22 25 21.5 56t-21.5 53l-383 429q-30 38 -86.5 69.5t-78.5 33.5z" />
<glyph glyph-name="uniF208" unicode="&#xf208;"
d="M0 944h1200v-235h-1200v235zM753 886v-119h385v119h-385zM0 592h1200v-234h-1200v234zM488 534v-118h650v118h-650zM0 241h1200v-235h-1200v235zM895 183v-119h243v119h-243z" />
<glyph glyph-name="uniF209" unicode="&#xf209;"
d="M992 1075l208 -209h-139v-782h139l-208 -209l-209 209h140v782h-140zM6 867h685l5 -213h-73q0 110 -23.5 128t-164.5 18v-588q0 -53 13 -62t90 -9v-58h-380v58h1q75 -1 88.5 7.5t13.5 49.5v14v588h-1q-139 0 -162.5 -18t-23.5 -128h-74z" />
<glyph glyph-name="uniF20A" unicode="&#xf20a;"
d="M258 1075h685l5 -213h-73q0 109 -24 127.5t-164 18.5v-588q0 -53 13 -62t90 -9v-59h-380v59h1q75 -2 88 6.5t14 50.5v14v588h-1q-139 0 -162.5 -18.5t-23.5 -127.5h-74zM209 292v-140h782v140l209 -209l-209 -208v139h-782v-139l-209 208z" />
<glyph glyph-name="uniF20B" unicode="&#xf20b;"
d="M0 1075h525v-525h-525v525zM675 1075h525v-525h-525v525zM0 400h525v-525h-525v525zM675 400h525v-525h-525v525z" />
<glyph glyph-name="uniF20C" unicode="&#xf20c;"
d="M0 1075h300v-300h-300v300zM469 1075h731v-300h-731v300zM0 625h300v-300h-300v300zM469 625h731v-300h-731v300zM0 175h300v-300h-300v300zM469 175h731v-300h-731v300z" />
<glyph glyph-name="uniF20D" unicode="&#xf20d;"
d="M0 1075h300v-300h-300v300zM450 1075h300v-300h-300v300zM900 1075h300v-300h-300v300zM0 625h300v-300h-300v300zM450 625h300v-300h-300v300zM900 625h300v-300h-300v300zM0 175h300v-300h-300v300zM450 175h300v-300h-300v300zM900 175h300v-300h-300v300z" />
<glyph glyph-name="uniF20E" unicode="&#xf20e;"
d="M1141 278h-298q9 -71 25 -142q8 -109 -113 -191q-24 -15 -51 -7q-25 9 -37 35l-136 305h-137q-18 1 -31.5 9t-21 21t-7.5 30v602q1 18 9 31.5t21.5 21t29.5 7.5h552q42 -3 84 -27q65 -40 86 -104l83 -520q4 -29 -13.5 -50t-44.5 -21zM218 266h-175q-9 1 -17 4.5
t-13.5 8.5t-9 12.5t-3.5 16.5v665q1 19 13.5 30.5t29.5 11.5h175q19 -2 31 -13.5t12 -28.5v-665q-1 -19 -13.5 -30.5t-29.5 -11.5z" />
<glyph glyph-name="uniF20F" unicode="&#xf20f;"
d="M718 1014q19 1 41.5 -13t36 -27t32.5 -34q19 -23 28.5 -48t9 -54.5t-2.5 -50.5t-9.5 -58.5t-10.5 -55.5h299q29 -1 44.5 -20.5t13.5 -51.5l-84 -518q-9 -32 -34.5 -61t-61.5 -48t-74 -24h-552q-25 1 -41.5 17t-18.5 43v603q0 12 4.5 22.5t12 18.5t19 13t24.5 6h137
l136 304q6 14 20 25.5t31 11.5zM218 685q11 -1 20.5 -6t15.5 -14.5t7 -21.5v-666q0 -17 -12.5 -28.5t-30.5 -12.5h-175q-17 0 -29 11.5t-14 29.5v666q0 11 5.5 20.5t15.5 15t22 6.5h175z" />
<glyph glyph-name="uniF210" unicode="&#xf210;"
d="M1024 899q83 -83 129.5 -192.5t46.5 -231.5q0 -163 -80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5q122 0 231.5 -46.5t192.5 -129.5zM902 813l-297 -298l-176 176l-13 -12l-84 -84l-11 -12l284 -284v0l406 406z
" />
<glyph glyph-name="uniF211" unicode="&#xf211;"
d="M600 1075q117 0 227.5 -44.5t196.5 -131.5q116 -115 156.5 -269.5t0 -309t-156 -270t-270 -156t-309 0t-270 156t-156 270t0 309t156.5 269.5q86 87 196.5 131.5t227.5 44.5zM600 918q-87 0 -168.5 -33t-144.5 -97q-86 -85 -116 -199t0 -228t115.5 -199.5t199.5 -115.5
t228 0t199 116q52 51 84 114.5t41.5 131t0 135t-41.5 131t-84 114.5q-42 43 -94 72.5t-107 43.5t-112 14zM539 818h153v-281v-153h-153h-156v153h156v281z" />
<glyph glyph-name="uniF212" unicode="&#xf212;"
d="M176 300q2 125 67 227q23 33 68.5 97t65.5 94q107 166 152 308q9 26 28 38.5t43 9.5q27 2 45 -11t26 -37q44 -143 153 -308q21 -35 66.5 -96t66.5 -95q66 -106 67 -227q-2 -87 -34.5 -165t-88.5 -136q-62 -60 -141 -91.5t-160 -32.5q-86 2 -164 34.5t-136 89.5
q-60 62 -92 141t-32 160zM362 206q2 -45 33 -75.5t73 -31.5q45 2 75 33.5t31 73.5q0 32 -17 56q-21 28 -34 48q-30 49 -38 77q-3 15 -17 13q-14 3 -18 -13q-10 -34 -37 -77q-5 -8 -11 -16t-12.5 -16.5t-10.5 -15.5q-18 -24 -17 -56z" />
<glyph glyph-name="uniF213" unicode="&#xf213;"
d="M1130 304v-429h-1060v429l405 172q-72 46 -109.5 122t-37.5 160q0 80 33.5 151.5t97 118t141.5 47.5q62 -2 114 -30.5t86 -73.5t53 -100.5t19 -112.5q-2 -88 -39.5 -163t-103.5 -117z" />
<glyph glyph-name="uniF214" unicode="&#xf214;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM507 851v-58h-217v-105h620v105h-217v58h-186zM323 607v-508h554v508h-554z" />
<glyph glyph-name="uniF215" unicode="&#xf215;"
d="M451 1075h298v-92h346v-169h-990v169h346v92zM158 686h884v-811h-884v811z" />
<glyph glyph-name="uniF216" unicode="&#xf216;"
d="M1200 1075v-1200h-1200v1200h1200zM699 200q-39 11 -57 25q-9 8 -9 14v307h194v134h-194v203h-112q-6 -85 -50.5 -144t-121.5 -59v-134h92v-332q1 -40 18.5 -72t48.5 -49q50 -26 124 -26q102 0 123 1q53 2 96 24v143v2v-2q-25 -16 -56 -28q-53 -17 -96 -7z" />
<glyph glyph-name="uniF217" unicode="&#xf217;"
d="M1200 858q-12 -25 -45 -64t-81 -68q2 -11 2 -21q5 -132 -51 -278q-97 -242 -293 -364q-190 -109 -457 -83q-170 19 -275 106q99 -12 192.5 17t174.5 89q-80 -2 -141 47t-92 125q20 -5 52 -2q39 3 59 8q-121 39 -167 129q-28 59 -28 124q66 -36 111 -34q-98 83 -109 177
q-7 74 30 160q136 -150 285 -214q113 -46 224 -47q-14 113 30 190q53 84 155 113q65 16 126 -4t103 -67q73 8 159 59q-15 -47 -43.5 -85t-66.5 -57q75 14 146 44z" />
<glyph glyph-name="uniF218" unicode="&#xf218;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM600 995q-106 0 -202 -41.5t-166 -111t-111 -165.5t-41 -202t41 -202t111 -166t166 -111t202 -41t202 41
t165.5 111t111 166t41.5 202t-41.5 202t-111 166t-165.5 111t-202 41zM922 534q13 -12 13.5 -28t-9.5 -28q-11 -13 -28 -14t-28 10q-23 21 -74.5 64t-77.5 67l-3.5 2t-8.5 4.5t-8 2.5q-7 0 -7 -17q1 -17 1 -69.5t3 -80.5q3 -26 3 -30l58 -327q3 -22 -8.5 -38t-31.5 -20
q-12 -3 -25 2t-21.5 15.5t-10.5 22.5q-47 264 -47 269q-1 0 -1.5 4t-1 7.5t-1.5 7.5t-3 6.5t-5 2.5q-4 -1 -6.5 -5.5t-3 -8.5t-1 -8.5t-1.5 -5.5l-47 -269q-6 -21 -22 -32t-35 -8q-22 6 -32.5 22t-7.5 36l57 329q7 45 7 176q0 18 -7 18.5t-19 -9.5l-152 -130
q-13 -10 -29.5 -9t-26.5 13q-23 32 4 56l199 176q14 9 26.5 12.5t29.5 3.5h134q17 0 29.5 -3.5t26.5 -13.5q11 -10 85 -75t114 -100zM688 836.5q0 -36.5 -25.5 -62t-62 -25.5t-62 25.5t-25.5 62t25.5 62t62 25.5t62 -25.5t25.5 -62z" />
<glyph glyph-name="uniF219" unicode="&#xf219;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM608 863q-55 -3 -98.5 -28.5t-69.5 -70t-30 -100.5v-92h-101v-367h582v367h-364v92q0 22 11 40t29.5 29
t40.5 12q17 1 31.5 -4.5t25 -16t17 -25.5t8.5 -32h116q-3 80 -59.5 139.5t-138.5 56.5z" />
<glyph glyph-name="uniF21A" unicode="&#xf21a;"
d="M1131 544v-669h-1062v669h184v168q1 49 14 96t36.5 87.5t55.5 73.5q49 48 115 77t141 29q73 -1 138.5 -29t115.5 -75q50 -52 78 -118t30 -134h-213q-2 56 -43 98q-46 43 -106 44q-63 -2 -105 -44q-43 -46 -43 -105v-168h664z" />
<glyph glyph-name="uniF21B" unicode="&#xf21b;"
d="M600 -125q-163 0 -301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5t301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5zM600 945q-96 0 -182.5 -37.5t-149.5 -100.5t-100.5 -149.5t-37.5 -182.5t37.5 -182.5t100.5 -149.5
t149.5 -100.5t182.5 -37.5t182.5 37.5t149.5 100.5t100.5 149.5t37.5 182.5t-37.5 182.5t-100.5 149.5t-149.5 100.5t-182.5 37.5zM717 224h-234v267h-147l264 248l264 -248h-147v-267z" />
<glyph glyph-name="uniF21C" unicode="&#xf21c;"
d="M960 288q0 -114 -82 -183q-44 -37 -91 -56.5t-118 -26.5v-147h-143v144q-85 2 -150.5 16.5t-134.5 45.5v189q63 -31 150 -54q6 -2 23 -6.5t22 -6t18 -4.5t19 -4t16 -3t18.5 -3t18.5 -1v222l-26 19q-142 56 -201 121q-59 66 -59 163q0 104 81 170q44 37 90 56t115 26v110
h143v-107q79 -3 142 -19t133 -47l-68 -168q-62 26 -107 39t-100 17v-211q43 -17 80.5 -36t51 -28t44.5 -30q60 -39 87 -86q28 -48 28 -111zM744 277q0 31 -24 51q-6 5 -12.5 13.5t-15 16t-23.5 13.5v-178q46 7 60.5 27t14.5 57zM456 713q0 -32 21 -53q5 -3 9.5 -9.5t8.5 -11
t12 -10t19 -10.5v168q-43 -6 -56.5 -23t-13.5 -51v0z" />
<glyph glyph-name="uniF21D" unicode="&#xf21d;"
d="M940 217q80 -30 137.5 -57t90 -52.5t32.5 -45.5v-187h-1200v187q0 30 69.5 70t190.5 85q119 43 163.5 87.5t44.5 121.5q0 27 -13 53.5t-31.5 54.5t-24.5 48q-14 42 -36 162q-12 65 -17 112q-2 21 3 46.5t21.5 57t43.5 56.5t75.5 42t110.5 17t110.5 -17t75.5 -42
t43.5 -56.5t21.5 -57t3 -46.5q-5 -47 -17 -112q-22 -119 -36 -162q-7 -20 -25 -48t-31 -54.5t-13 -53.5q0 -53 19.5 -88.5t63.5 -63.5t125 -57z" />
<glyph glyph-name="uniF21E" unicode="&#xf21e;"
d="M551 1075q43 -24 82 -92t60 -138.5t20 -115.5zM1058 1051q2 0 4 -3q55 -74 57 -224q-1 -45 -14.5 -90t-39 -87t-68 -68t-95.5 -26q-54 5 -107 51q-8 7 -6.5 10.5t19.5 14.5q81 48 141 101t80 94q10 22 9 25q-2 2 -9 -9l-6 -8q-62 -99 -173 -153q-52 -25 -94 -31
q-15 30 -21 54.5t-4.5 54t14.5 59.5q11 22 34.5 43t52 36t59.5 24q48 13 90.5 44.5t68.5 78.5q4 8 8 9zM513 740q88 0 169 -34l-39 -91q-62 27 -130 27q-91 0 -168 -45t-121.5 -121.5t-44.5 -167.5q0 -64 23 -122t62 -101.5t93.5 -72.5t116.5 -36q50 29 91 77t66 103
t44.5 118.5t27.5 124.5t13.5 120.5t3.5 106.5t-2 83q40 -85 45 -192.5t-21 -209t-82 -192t-131 -141.5q134 6 226 102.5t92 231.5q0 68 -26 130l91 38q34 -80 34 -168t-34.5 -168t-92.5 -138t-138 -92.5t-168 -34.5t-168 34.5t-138 92.5t-92 138t-34 167.5t34 167.5t92 138
t138 92.5t168 34.5z" />
<glyph glyph-name="uniF21F" unicode="&#xf21f;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM242 746v-542h716v542h-716zM330 658h540v-366h-540v366zM520 594v-244l210 123z" />
<glyph glyph-name="uniF220" unicode="&#xf220;"
d="M0 1026h1200v-855h-567l-386 -247v247h-247v855zM263 811v-398h483v149l191 -149v398l-191 -149v149h-483z" />
<glyph glyph-name="uniF221" unicode="&#xf221;"
d="M0 929h1200v-908h-1200v908zM147 782v-614h906v614h-906zM465 675l354 -204l-354 -205v409z" />
<glyph glyph-name="uniF222" unicode="&#xf222;"
d="M1111 1075l89 -89l-1111 -1111l-89 88zM0 1073h281v-281h-281v281zM331 1073h282v-281h-282v281zM0 737h281v-282h-281v282zM331 737h282l-282 -282v282zM826 439h374v-158h-548zM615 237h585v-158h-585v158zM615 35h585v-158h-585v158z" />
<glyph glyph-name="uniF223" unicode="&#xf223;"
d="M953 757q-64 49 -131.5 31.5t-121.5 -70t-75 -111.5h15h15t15 -0.5t14 -2t13 -3.5q35 -18 30 -78q-8 -35 -23 -73t-40 -72t-51 -38q-18 -2 -37 20q-17 21 -27.5 50t-14 51.5t-7 57t-6.5 51.5q-1 8 -4 27t-5.5 33t-7 33.5t-10.5 34t-14 29t-19.5 25t-25.5 15.5
q-26 3 -52.5 -3.5t-52 -22.5t-43 -30t-39.5 -34q-44 -41 -89 -78v-5q4 -5 10.5 -14t8.5 -12q14 -14 44 -4q5 1 12.5 3t11.5 3t9.5 2.5t9 1.5h8t7.5 -1t6.5 -3.5t6.5 -6t6.5 -8t7.5 -11.5q34 -91 88 -304q9 -27 15 -43t17.5 -39.5t26.5 -38.5t34 -23q29 -9 61.5 -1.5
t55.5 21.5q144 91 255 287q5 11 26 50.5t32.5 63t27 64t21 68t3 57.5t-16.5 51zM1200 1075v-1200h-1200v1200h1200z" />
<glyph glyph-name="uniF224" unicode="&#xf224;"
d="M0 1075h1200v-1200h-1200v1200zM533 754q-86 -1 -100 -38q20 -6 33 -16.5t18.5 -24t7 -24.5t1.5 -27q-1 -113 -5 -113q-7 -27 -20.5 -28t-28.5 15q-56 74 -117 204q-12 28 -35 27q-11 0 -59.5 1t-74.5 -1.5t-37 -11.5q3 -33 25 -80q55 -120 172 -285q23 -26 35 -39
t34 -33.5t37 -30t38.5 -22.5t47 -18t54.5 -8t66 -1h4q12 0 19 1t16.5 5t14.5 13t7 23l6 59q2 19 16.5 23t28.5 -2.5t20 -15.5q17 -27 63.5 -69t79.5 -41l154 6q23 1 28 21t-12 46q-34 51 -122 133q-1 0 -2 1q-43 39 18 105q12 13 28 33t35.5 47t33 51.5t20.5 46t-1 30.5v1
q-8 9 -12.5 10.5t-24.5 1.5h-7h-144q-29 0 -36 -9q-3 -4 -10 -19l-4 -8q-1 -3 -13 -29.5t-16.5 -35.5t-16.5 -32.5t-20.5 -35.5t-20.5 -28.5t-24.5 -27t-25.5 -18.5q-12 5 -18.5 23.5t-7 46.5t0.5 52.5t3.5 51.5t2.5 33q2 55 -70 57q-1 0 -32 2t-51 2z" />
<glyph glyph-name="uniF225" unicode="&#xf225;"
d="M171 690h243l367 299v-1028l-367 299h-243v430zM919 739q108 -108 110 -263q0 -148 -110 -254l-74 76q76 76 76 180q0 106 -76 185z" />
<glyph glyph-name="uniF226" unicode="&#xf226;"
d="M1089 394q3 -3 3 -6.5t-3 -6.5l-57 -57q-3 -2 -6 -2t-6 2l-82 82l-81 -82q-2 -2 -6 -2q-3 0 -6 2l-57 57q-2 3 -2 7q0 3 2 6l81 81l-81 81q-2 3 -2 6q0 4 2 7l57 57q3 2 6.5 2t5.5 -2l81 -82l82 82q2 2 5.5 2t6.5 -2l57 -57q3 -3 3 -6.5t-3 -6.5l-81 -81zM108 690h244
l367 299v-1028l-367 299h-244v430z" />
<glyph glyph-name="uniF227" unicode="&#xf227;"
d="M0 690h244l367 299v-1028l-367 299h-244v430zM748 739q109 -108 111 -263q0 -148 -111 -254l-74 76q77 76 77 180q0 106 -77 185zM876 864q159 -159 159 -383.5t-159 -386.5l-79 79q127 125 127 306.5t-127 308.5zM992 981q98 -98 153 -227.5t55 -273.5t-55 -274.5
t-153 -227.5l-76 76q176 176 176 425t-176 425z" />
<glyph glyph-name="uniF228" unicode="&#xf228;"
d="M1074 446q5 21 -11 27l-45 21q-9 3 -17.5 -1t-10.5 -12q-16 -34 -41 -34q-26 0 -42.5 28t-16.5 73.5t16.5 74t42.5 28.5q25 -2 41 -33q7 -17 28 -11l45 21q8 4 11 12.5t-2 16.5q-39 85 -123 85q-70 0 -113 -53.5t-43 -140t43 -139.5t113 -53q84 0 125 90zM638 356
q54 1 91 34.5t38 82.5q-2 50 -40 82q34 32 34 76q-1 52 -37.5 80.5t-85.5 28.5q-78 0 -121 -61q-10 -14 3 -28l33 -30q15 -14 31 1q21 29 50 29q23 0 27 -11q7 -15 0 -32q-5 -5 -12.5 -7.5t-12 -3t-16 0t-14.5 0.5q-6 0 -11.5 -2.5t-8.5 -7.5t-3 -11v-49q1 -11 7.5 -17
t15.5 -4q54 0 60 -11q5 -11 5 -18q0 -31 -35 -31q-33 0 -55 30q-6 8 -15.5 8.5t-15.5 -5.5l-34 -34q-13 -13 -3 -27q44 -62 125 -63zM502 710q2 10 -4 18t-15 8h-61q-16 0 -19 -16l-29 -147l-30 147q-4 16 -20 16h-44q-18 0 -21 -16l-30 -147l-29 147q-3 16 -20 16h-59
q-8 0 -13 -4t-7 -9.5t-1 -12.5l76 -332q4 -16 20 -16h58q16 0 20 16l28 137l27 -137q3 -16 21 -16h57q17 0 21 16zM1200 1075v-919l-600 -281l-600 281v919h1200z" />
<glyph glyph-name="uniF229" unicode="&#xf229;"
d="M600 1075l600 -1200h-1200zM554 659v-159l22 -223h48l22 223v159h-92zM554 190v-100h92v100h-92z" />
<glyph glyph-name="uniF22A" unicode="&#xf22a;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM281 773v-596h638v596h-638zM360 695h480v-440h-480v440zM412 639v-195h375v195h-375zM412 410v-106h106v106
h-106zM546 410v-106h106v106h-106zM680 410v-106h107v106h-107z" />
<glyph glyph-name="uniF22B" unicode="&#xf22b;"
d="M699 153h-200v199h200v-199zM951 153h-199v199h199v-199zM446 153h-200v199h200v-199zM951 784v-368h-705v368h705zM1052 890h-904v-830h904v830zM0 -87v1124h1200v-1124h-1200z" />
<glyph glyph-name="uniF22C" unicode="&#xf22c;"
d="M477 1075q51 -2 84.5 -36t34.5 -83q-2 -51 -37 -85.5t-82 -34.5q-34 1 -61.5 17t-43 43t-16.5 60q2 33 18 60.5t43 43t60 15.5zM510 809q33 0 58 -20q12 -10 19.5 -19.5t12 -23t6.5 -20.5t5.5 -26.5t4.5 -27.5h200q8 -1 16 -4t14.5 -8t11 -11.5t6.5 -14.5
q4 -18 -2.5 -33.5t-20.5 -23.5t-33 -7h-170l26 -125h217q56 -3 77 -47l196 -341q9 -19 5 -38.5t-17 -32.5q-26 -22 -57.5 -16t-45.5 36l-169 294q-65 1 -102 0.5t-102.5 -1t-100.5 -0.5q-32 2 -54 20t-28 47l-70 339h1q-4 19 5 41t22 35q28 28 69 28zM326 663q39 1 52 -31
q7 -22 -2 -40t-29 -24q-93 -38 -147 -114q-56 -82 -56 -173q1 -63 25.5 -119t67.5 -97q99 -89 223 -90q103 2 183 56q83 60 115 146q8 18 12 37q7 22 24 32.5t37 6.5q23 -7 34 -23t6 -37q-6 -27 -15 -49q-48 -124 -154 -195q-114 -73 -242 -74q-85 2 -162 33t-134 86
q-59 59 -91 134.5t-33 152.5q3 130 74 231q78 104 196 149q8 2 16 2z" />
<glyph glyph-name="uniF22D" unicode="&#xf22d;"
d="M599 -125q-123 2 -234 51.5t-190.5 131t-126.5 191t-48 227.5q2 123 51.5 234t130.5 190.5t190 126.5t227 48q123 -2 234.5 -51.5t191.5 -130.5t127 -190t48 -227q-2 -99 -34 -191t-88.5 -165t-130 -128.5t-163.5 -85.5t-185 -31zM599 1032q-114 -2 -217.5 -47.5
t-177.5 -121t-118 -177t-45 -210.5q2 -115 48 -218.5t121.5 -177.5t177.5 -118t211 -44q115 2 218.5 48t177.5 121.5t118 177t44 211.5q-2 114 -48 217.5t-121.5 177t-177 117.5t-211.5 44zM455 -15l154 441l160 -432q-158 -53 -314 -9zM337 765q-84 -11 -164 -8
q75 107 189 167.5t237 61.5q98 -2 187.5 -37t158.5 -98q-56 5 -85 -46q-6 -20 -6.5 -39.5t3.5 -35t12 -34t15.5 -31.5t18.5 -31.5t17 -30.5q40 -75 11 -173l-77 -262l-185 550q53 5 56 6q16 3 19 15t-8 21q-6 5 -15 5l-111 -8h-84q-6 -1 -32.5 3.5t-44 2.5t-20.5 -16
q-2 -8 3 -15t14 -8q38 -5 56 -7l81 -217l-113 -332l-186 550q52 5 57 6q22 3 20 22q-2 8 -9 13.5t-15 5.5zM132 680l245 -664q-130 64 -208 185q-68 107 -77 238t40 241zM1091 339q-30 -99 -91 -178t-146 -128q9 22 26 74l143 414q21 60 29 134q3 34 -1 59q90 -195 40 -375z
" />
<glyph glyph-name="uniF22E" unicode="&#xf22e;"
d="M600 1075q163 0 301 -80.5t218.5 -218.5t80.5 -301t-80.5 -301t-218.5 -218.5t-301 -80.5t-301 80.5t-218.5 218.5t-80.5 301t80.5 301t218.5 218.5t301 80.5zM763 835q-81 0 -138 -57q-41 -41 -53 -97.5t7 -108.5l-339 -339l118 -118l339 339q52 -19 108.5 -7t97.5 53
t53 97.5t-7 108.5l-120 -120l-85 33l-33 85l120 120q-33 11 -68 11zM333 257q9 9 23 9t26 -9q10 -11 10 -25t-10.5 -24.5t-24.5 -10.5t-24.5 10.5t-10.5 24.5t11 25z" />
<glyph glyph-name="uniF22F" unicode="&#xf22f;"
d="M984 1056l-199 -199l55 -142l142 -55l199 199q32 -85 12 -179.5t-88.5 -162.5t-162.5 -88t-180 12l-565 -566l-197 197l566 565q-32 86 -12 180t88 162.5t162.5 88.5t179.5 -12zM236 111q-17 17 -41 17t-40.5 -17t-16.5 -41t16.5 -40.5t40.5 -16.5t41 16.5t17 40.5
t-17 41z" />
<glyph glyph-name="uniF230" unicode="&#xf230;"
d="M1200 20h-1200v910h1200v-910zM427 209l420 263l-420 264v-527z" />
<glyph glyph-name="uniF231" unicode="&#xf231;"
d="M614 768v-154h154v-153h-154v-154h-153v154h-154v153h154v154h153zM1200 9l-134 -134l-221 222q-139 -97 -308 -97q-109 0 -208.5 42.5t-171.5 114.5t-114.5 171.5t-42.5 209t42.5 209t114.5 171.5t171.5 114.5t208.5 42.5q74 0 143.5 -19.5t128.5 -54t108.5 -84
t84 -108.5t54 -128.5t19.5 -142.5q0 -169 -97 -308zM537.5 154q104.5 0 193 51t139.5 139.5t51 193t-51 193t-139.5 139.5t-193 51t-193 -51t-140 -139.5t-51.5 -193t51.5 -193t140 -139.5t193 -51z" />
<glyph glyph-name="uniF232" unicode="&#xf232;"
d="M1200 9l-134 -134l-221 222q-139 -97 -308 -97q-109 0 -208.5 42.5t-171.5 114.5t-114.5 171.5t-42.5 209t42.5 209t114.5 171.5t171.5 114.5t209 42.5t209 -42.5t171.5 -114.5t114.5 -171.5t42.5 -208.5q0 -169 -97 -308zM537.5 154q104.5 0 193 51t139.5 139.5t51 193
t-51 193t-139.5 139.5t-193.5 51q-78 0 -149 -30t-122.5 -81.5t-82 -122.5t-30.5 -150q0 -104 51.5 -192.5t140 -139.5t193 -51zM307 461v153h461v-153h-461z" />
</font>
</defs></svg>

Before

Width:  |  Height:  |  Size: 124 KiB

View File

@ -1,34 +0,0 @@
// Spinning Icons
// --------------------------
.#{$el-css-prefix}-spin {
-webkit-animation: el-spin 2s infinite linear;
animation: el-spin 2s infinite linear;
}
.#{$el-css-prefix}-pulse {
-webkit-animation: el-spin 1s infinite steps(8);
animation: el-spin 1s infinite steps(8);
}
@-webkit-keyframes el-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
@keyframes el-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}

View File

@ -1,16 +0,0 @@
// Bordered & Pulled
// -------------------------
.#{$el-css-prefix}-border {
padding: .2em .25em .15em;
border: solid .08em $el-border-color;
border-radius: .1em;
}
.pull-right { float: right; }
.pull-left { float: left; }
.#{$el-css-prefix} {
&.pull-left { margin-right: .3em; }
&.pull-right { margin-left: .3em; }
}

View File

@ -1,13 +0,0 @@
// Base Class Definition
// -------------------------
.#{$el-css-prefix} {
display: inline-block;
font: normal normal normal #{$el-font-size-base}/1 'Elusive-Icons'; // shortening font declaration
font-size: inherit; // can't have font-size inherit on line above, so need to override
text-rendering: auto; // optimizelegibility throws things off #1094
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
transform: translate(0, 0); // ensures no half-pixel rendering in firefox
}

View File

@ -1,6 +0,0 @@
// Fixed Width Icons
// -------------------------
.#{$el-css-prefix}-fw {
width: (18em / 14);
text-align: center;
}

View File

@ -1,615 +0,0 @@
/* Elusive Icons uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.#{$el-css-prefix}-icon-address-book-alt:before,
.#{$el-css-prefix}-address-book-alt:before { content: $el-var-address-book-alt; }
.#{$el-css-prefix}-icon-address-book:before,
.#{$el-css-prefix}-address-book:before { content: $el-var-address-book; }
.#{$el-css-prefix}-icon-adjust-alt:before,
.#{$el-css-prefix}-adjust-alt:before { content: $el-var-adjust-alt; }
.#{$el-css-prefix}-icon-adjust:before,
.#{$el-css-prefix}-adjust:before { content: $el-var-adjust; }
.#{$el-css-prefix}-icon-adult:before,
.#{$el-css-prefix}-adult:before { content: $el-var-adult; }
.#{$el-css-prefix}-icon-align-center:before,
.#{$el-css-prefix}-align-center:before { content: $el-var-align-center; }
.#{$el-css-prefix}-icon-align-justify:before,
.#{$el-css-prefix}-align-justify:before { content: $el-var-align-justify; }
.#{$el-css-prefix}-icon-align-left:before,
.#{$el-css-prefix}-align-left:before { content: $el-var-align-left; }
.#{$el-css-prefix}-icon-align-right:before,
.#{$el-css-prefix}-align-right:before { content: $el-var-align-right; }
.#{$el-css-prefix}-icon-arrow-down:before,
.#{$el-css-prefix}-arrow-down:before { content: $el-var-arrow-down; }
.#{$el-css-prefix}-icon-arrow-left:before,
.#{$el-css-prefix}-arrow-left:before { content: $el-var-arrow-left; }
.#{$el-css-prefix}-icon-arrow-right:before,
.#{$el-css-prefix}-arrow-right:before { content: $el-var-arrow-right; }
.#{$el-css-prefix}-icon-arrow-up:before,
.#{$el-css-prefix}-arrow-up:before { content: $el-var-arrow-up; }
.#{$el-css-prefix}-icon-asl:before,
.#{$el-css-prefix}-asl:before { content: $el-var-asl; }
.#{$el-css-prefix}-icon-asterisk:before,
.#{$el-css-prefix}-asterisk:before { content: $el-var-asterisk; }
.#{$el-css-prefix}-icon-backward:before,
.#{$el-css-prefix}-backward:before { content: $el-var-backward; }
.#{$el-css-prefix}-icon-ban-circle:before,
.#{$el-css-prefix}-ban-circle:before { content: $el-var-ban-circle; }
.#{$el-css-prefix}-icon-barcode:before,
.#{$el-css-prefix}-barcode:before { content: $el-var-barcode; }
.#{$el-css-prefix}-icon-behance:before,
.#{$el-css-prefix}-behance:before { content: $el-var-behance; }
.#{$el-css-prefix}-icon-bell:before,
.#{$el-css-prefix}-bell:before { content: $el-var-bell; }
.#{$el-css-prefix}-icon-blind:before,
.#{$el-css-prefix}-blind:before { content: $el-var-blind; }
.#{$el-css-prefix}-icon-blogger:before,
.#{$el-css-prefix}-blogger:before { content: $el-var-blogger; }
.#{$el-css-prefix}-icon-bold:before,
.#{$el-css-prefix}-bold:before { content: $el-var-bold; }
.#{$el-css-prefix}-icon-book:before,
.#{$el-css-prefix}-book:before { content: $el-var-book; }
.#{$el-css-prefix}-icon-bookmark-empty:before,
.#{$el-css-prefix}-bookmark-empty:before { content: $el-var-bookmark-empty; }
.#{$el-css-prefix}-icon-bookmark:before,
.#{$el-css-prefix}-bookmark:before { content: $el-var-bookmark; }
.#{$el-css-prefix}-icon-brackets:before,
.#{$el-css-prefix}-brackets:before { content: $el-var-brackets; }
.#{$el-css-prefix}-icon-braille:before,
.#{$el-css-prefix}-braille:before { content: $el-var-braille; }
.#{$el-css-prefix}-icon-briefcase:before,
.#{$el-css-prefix}-briefcase:before { content: $el-var-briefcase; }
.#{$el-css-prefix}-icon-broom:before,
.#{$el-css-prefix}-broom:before { content: $el-var-broom; }
.#{$el-css-prefix}-icon-brush:before,
.#{$el-css-prefix}-brush:before { content: $el-var-brush; }
.#{$el-css-prefix}-icon-bulb:before,
.#{$el-css-prefix}-bulb:before { content: $el-var-bulb; }
.#{$el-css-prefix}-icon-bullhorn:before,
.#{$el-css-prefix}-bullhorn:before { content: $el-var-bullhorn; }
.#{$el-css-prefix}-icon-calendar-sign:before,
.#{$el-css-prefix}-calendar-sign:before { content: $el-var-calendar-sign; }
.#{$el-css-prefix}-icon-calendar:before,
.#{$el-css-prefix}-calendar:before { content: $el-var-calendar; }
.#{$el-css-prefix}-icon-camera:before,
.#{$el-css-prefix}-camera:before { content: $el-var-camera; }
.#{$el-css-prefix}-icon-car:before,
.#{$el-css-prefix}-car:before { content: $el-var-car; }
.#{$el-css-prefix}-icon-caret-down:before,
.#{$el-css-prefix}-caret-down:before { content: $el-var-caret-down; }
.#{$el-css-prefix}-icon-caret-left:before,
.#{$el-css-prefix}-caret-left:before { content: $el-var-caret-left; }
.#{$el-css-prefix}-icon-caret-right:before,
.#{$el-css-prefix}-caret-right:before { content: $el-var-caret-right; }
.#{$el-css-prefix}-icon-caret-up:before,
.#{$el-css-prefix}-caret-up:before { content: $el-var-caret-up; }
.#{$el-css-prefix}-icon-cc:before,
.#{$el-css-prefix}-cc:before { content: $el-var-cc; }
.#{$el-css-prefix}-icon-certificate:before,
.#{$el-css-prefix}-certificate:before { content: $el-var-certificate; }
.#{$el-css-prefix}-icon-check-empty:before,
.#{$el-css-prefix}-check-empty:before { content: $el-var-check-empty; }
.#{$el-css-prefix}-icon-check:before,
.#{$el-css-prefix}-check:before { content: $el-var-check; }
.#{$el-css-prefix}-icon-chevron-down:before,
.#{$el-css-prefix}-chevron-down:before { content: $el-var-chevron-down; }
.#{$el-css-prefix}-icon-chevron-left:before,
.#{$el-css-prefix}-chevron-left:before { content: $el-var-chevron-left; }
.#{$el-css-prefix}-icon-chevron-right:before,
.#{$el-css-prefix}-chevron-right:before { content: $el-var-chevron-right; }
.#{$el-css-prefix}-icon-chevron-up:before,
.#{$el-css-prefix}-chevron-up:before { content: $el-var-chevron-up; }
.#{$el-css-prefix}-icon-child:before,
.#{$el-css-prefix}-child:before { content: $el-var-child; }
.#{$el-css-prefix}-icon-circle-arrow-down:before,
.#{$el-css-prefix}-circle-arrow-down:before { content: $el-var-circle-arrow-down; }
.#{$el-css-prefix}-icon-circle-arrow-left:before,
.#{$el-css-prefix}-circle-arrow-left:before { content: $el-var-circle-arrow-left; }
.#{$el-css-prefix}-icon-circle-arrow-right:before,
.#{$el-css-prefix}-circle-arrow-right:before { content: $el-var-circle-arrow-right; }
.#{$el-css-prefix}-icon-circle-arrow-up:before,
.#{$el-css-prefix}-circle-arrow-up:before { content: $el-var-circle-arrow-up; }
.#{$el-css-prefix}-icon-cloud-alt:before,
.#{$el-css-prefix}-cloud-alt:before { content: $el-var-cloud-alt; }
.#{$el-css-prefix}-icon-cloud:before,
.#{$el-css-prefix}-cloud:before { content: $el-var-cloud; }
.#{$el-css-prefix}-icon-cog-alt:before,
.#{$el-css-prefix}-cog-alt:before { content: $el-var-cog-alt; }
.#{$el-css-prefix}-icon-cog:before,
.#{$el-css-prefix}-cog:before { content: $el-var-cog; }
.#{$el-css-prefix}-icon-cogs:before,
.#{$el-css-prefix}-cogs:before { content: $el-var-cogs; }
.#{$el-css-prefix}-icon-comment-alt:before,
.#{$el-css-prefix}-comment-alt:before { content: $el-var-comment-alt; }
.#{$el-css-prefix}-icon-comment:before,
.#{$el-css-prefix}-comment:before { content: $el-var-comment; }
.#{$el-css-prefix}-icon-compass-alt:before,
.#{$el-css-prefix}-compass-alt:before { content: $el-var-compass-alt; }
.#{$el-css-prefix}-icon-compass:before,
.#{$el-css-prefix}-compass:before { content: $el-var-compass; }
.#{$el-css-prefix}-icon-credit-card:before,
.#{$el-css-prefix}-credit-card:before { content: $el-var-credit-card; }
.#{$el-css-prefix}-icon-css:before,
.#{$el-css-prefix}-css:before { content: $el-var-css; }
.#{$el-css-prefix}-icon-dashboard:before,
.#{$el-css-prefix}-dashboard:before { content: $el-var-dashboard; }
.#{$el-css-prefix}-icon-delicious:before,
.#{$el-css-prefix}-delicious:before { content: $el-var-delicious; }
.#{$el-css-prefix}-icon-deviantart:before,
.#{$el-css-prefix}-deviantart:before { content: $el-var-deviantart; }
.#{$el-css-prefix}-icon-digg:before,
.#{$el-css-prefix}-digg:before { content: $el-var-digg; }
.#{$el-css-prefix}-icon-download-alt:before,
.#{$el-css-prefix}-download-alt:before { content: $el-var-download-alt; }
.#{$el-css-prefix}-icon-download:before,
.#{$el-css-prefix}-download:before { content: $el-var-download; }
.#{$el-css-prefix}-icon-dribbble:before,
.#{$el-css-prefix}-dribbble:before { content: $el-var-dribbble; }
.#{$el-css-prefix}-icon-edit:before,
.#{$el-css-prefix}-edit:before { content: $el-var-edit; }
.#{$el-css-prefix}-icon-eject:before,
.#{$el-css-prefix}-eject:before { content: $el-var-eject; }
.#{$el-css-prefix}-icon-envelope-alt:before,
.#{$el-css-prefix}-envelope-alt:before { content: $el-var-envelope-alt; }
.#{$el-css-prefix}-icon-envelope:before,
.#{$el-css-prefix}-envelope:before { content: $el-var-envelope; }
.#{$el-css-prefix}-icon-error-alt:before,
.#{$el-css-prefix}-error-alt:before { content: $el-var-error-alt; }
.#{$el-css-prefix}-icon-error:before,
.#{$el-css-prefix}-error:before { content: $el-var-error; }
.#{$el-css-prefix}-icon-eur:before,
.#{$el-css-prefix}-eur:before { content: $el-var-eur; }
.#{$el-css-prefix}-icon-exclamation-sign:before,
.#{$el-css-prefix}-exclamation-sign:before { content: $el-var-exclamation-sign; }
.#{$el-css-prefix}-icon-eye-close:before,
.#{$el-css-prefix}-eye-close:before { content: $el-var-eye-close; }
.#{$el-css-prefix}-icon-eye-open:before,
.#{$el-css-prefix}-eye-open:before { content: $el-var-eye-open; }
.#{$el-css-prefix}-icon-facebook:before,
.#{$el-css-prefix}-facebook:before { content: $el-var-facebook; }
.#{$el-css-prefix}-icon-facetime-video:before,
.#{$el-css-prefix}-facetime-video:before { content: $el-var-facetime-video; }
.#{$el-css-prefix}-icon-fast-backward:before,
.#{$el-css-prefix}-fast-backward:before { content: $el-var-fast-backward; }
.#{$el-css-prefix}-icon-fast-forward:before,
.#{$el-css-prefix}-fast-forward:before { content: $el-var-fast-forward; }
.#{$el-css-prefix}-icon-female:before,
.#{$el-css-prefix}-female:before { content: $el-var-female; }
.#{$el-css-prefix}-icon-file-alt:before,
.#{$el-css-prefix}-file-alt:before { content: $el-var-file-alt; }
.#{$el-css-prefix}-icon-file-edit-alt:before,
.#{$el-css-prefix}-file-edit-alt:before { content: $el-var-file-edit-alt; }
.#{$el-css-prefix}-icon-file-edit:before,
.#{$el-css-prefix}-file-edit:before { content: $el-var-file-edit; }
.#{$el-css-prefix}-icon-file-new-alt:before,
.#{$el-css-prefix}-file-new-alt:before { content: $el-var-file-new-alt; }
.#{$el-css-prefix}-icon-file-new:before,
.#{$el-css-prefix}-file-new:before { content: $el-var-file-new; }
.#{$el-css-prefix}-icon-file:before,
.#{$el-css-prefix}-file:before { content: $el-var-file; }
.#{$el-css-prefix}-icon-film:before,
.#{$el-css-prefix}-film:before { content: $el-var-film; }
.#{$el-css-prefix}-icon-filter:before,
.#{$el-css-prefix}-filter:before { content: $el-var-filter; }
.#{$el-css-prefix}-icon-fire:before,
.#{$el-css-prefix}-fire:before { content: $el-var-fire; }
.#{$el-css-prefix}-icon-flag-alt:before,
.#{$el-css-prefix}-flag-alt:before { content: $el-var-flag-alt; }
.#{$el-css-prefix}-icon-flag:before,
.#{$el-css-prefix}-flag:before { content: $el-var-flag; }
.#{$el-css-prefix}-icon-flickr:before,
.#{$el-css-prefix}-flickr:before { content: $el-var-flickr; }
.#{$el-css-prefix}-icon-folder-close:before,
.#{$el-css-prefix}-folder-close:before { content: $el-var-folder-close; }
.#{$el-css-prefix}-icon-folder-open:before,
.#{$el-css-prefix}-folder-open:before { content: $el-var-folder-open; }
.#{$el-css-prefix}-icon-folder-sign:before,
.#{$el-css-prefix}-folder-sign:before { content: $el-var-folder-sign; }
.#{$el-css-prefix}-icon-folder:before,
.#{$el-css-prefix}-folder:before { content: $el-var-folder; }
.#{$el-css-prefix}-icon-font:before,
.#{$el-css-prefix}-font:before { content: $el-var-font; }
.#{$el-css-prefix}-icon-fontsize:before,
.#{$el-css-prefix}-fontsize:before { content: $el-var-fontsize; }
.#{$el-css-prefix}-icon-fork:before,
.#{$el-css-prefix}-fork:before { content: $el-var-fork; }
.#{$el-css-prefix}-icon-forward-alt:before,
.#{$el-css-prefix}-forward-alt:before { content: $el-var-forward-alt; }
.#{$el-css-prefix}-icon-forward:before,
.#{$el-css-prefix}-forward:before { content: $el-var-forward; }
.#{$el-css-prefix}-icon-foursquare:before,
.#{$el-css-prefix}-foursquare:before { content: $el-var-foursquare; }
.#{$el-css-prefix}-icon-friendfeed-rect:before,
.#{$el-css-prefix}-friendfeed-rect:before { content: $el-var-friendfeed-rect; }
.#{$el-css-prefix}-icon-friendfeed:before,
.#{$el-css-prefix}-friendfeed:before { content: $el-var-friendfeed; }
.#{$el-css-prefix}-icon-fullscreen:before,
.#{$el-css-prefix}-fullscreen:before { content: $el-var-fullscreen; }
.#{$el-css-prefix}-icon-gallery:before,
.#{$el-css-prefix}-gallery:before { content: $el-var-gallery; }
.#{$el-css-prefix}-icon-gbp:before,
.#{$el-css-prefix}-gbp:before { content: $el-var-gbp; }
.#{$el-css-prefix}-icon-gift:before,
.#{$el-css-prefix}-gift:before { content: $el-var-gift; }
.#{$el-css-prefix}-icon-github-text:before,
.#{$el-css-prefix}-github-text:before { content: $el-var-github-text; }
.#{$el-css-prefix}-icon-github:before,
.#{$el-css-prefix}-github:before { content: $el-var-github; }
.#{$el-css-prefix}-icon-glass:before,
.#{$el-css-prefix}-glass:before { content: $el-var-glass; }
.#{$el-css-prefix}-icon-glasses:before,
.#{$el-css-prefix}-glasses:before { content: $el-var-glasses; }
.#{$el-css-prefix}-icon-globe-alt:before,
.#{$el-css-prefix}-globe-alt:before { content: $el-var-globe-alt; }
.#{$el-css-prefix}-icon-globe:before,
.#{$el-css-prefix}-globe:before { content: $el-var-globe; }
.#{$el-css-prefix}-icon-googleplus:before,
.#{$el-css-prefix}-googleplus:before { content: $el-var-googleplus; }
.#{$el-css-prefix}-icon-graph-alt:before,
.#{$el-css-prefix}-graph-alt:before { content: $el-var-graph-alt; }
.#{$el-css-prefix}-icon-graph:before,
.#{$el-css-prefix}-graph:before { content: $el-var-graph; }
.#{$el-css-prefix}-icon-group-alt:before,
.#{$el-css-prefix}-group-alt:before { content: $el-var-group-alt; }
.#{$el-css-prefix}-icon-group:before,
.#{$el-css-prefix}-group:before { content: $el-var-group; }
.#{$el-css-prefix}-icon-guidedog:before,
.#{$el-css-prefix}-guidedog:before { content: $el-var-guidedog; }
.#{$el-css-prefix}-icon-hand-down:before,
.#{$el-css-prefix}-hand-down:before { content: $el-var-hand-down; }
.#{$el-css-prefix}-icon-hand-left:before,
.#{$el-css-prefix}-hand-left:before { content: $el-var-hand-left; }
.#{$el-css-prefix}-icon-hand-right:before,
.#{$el-css-prefix}-hand-right:before { content: $el-var-hand-right; }
.#{$el-css-prefix}-icon-hand-up:before,
.#{$el-css-prefix}-hand-up:before { content: $el-var-hand-up; }
.#{$el-css-prefix}-icon-hdd:before,
.#{$el-css-prefix}-hdd:before { content: $el-var-hdd; }
.#{$el-css-prefix}-icon-headphones:before,
.#{$el-css-prefix}-headphones:before { content: $el-var-headphones; }
.#{$el-css-prefix}-icon-hearing-impaired:before,
.#{$el-css-prefix}-hearing-impaired:before { content: $el-var-hearing-impaired; }
.#{$el-css-prefix}-icon-heart-alt:before,
.#{$el-css-prefix}-heart-alt:before { content: $el-var-heart-alt; }
.#{$el-css-prefix}-icon-heart-empty:before,
.#{$el-css-prefix}-heart-empty:before { content: $el-var-heart-empty; }
.#{$el-css-prefix}-icon-heart:before,
.#{$el-css-prefix}-heart:before { content: $el-var-heart; }
.#{$el-css-prefix}-icon-home-alt:before,
.#{$el-css-prefix}-home-alt:before { content: $el-var-home-alt; }
.#{$el-css-prefix}-icon-home:before,
.#{$el-css-prefix}-home:before { content: $el-var-home; }
.#{$el-css-prefix}-icon-hourglass:before,
.#{$el-css-prefix}-hourglass:before { content: $el-var-hourglass; }
.#{$el-css-prefix}-icon-idea-alt:before,
.#{$el-css-prefix}-idea-alt:before { content: $el-var-idea-alt; }
.#{$el-css-prefix}-icon-idea:before,
.#{$el-css-prefix}-idea:before { content: $el-var-idea; }
.#{$el-css-prefix}-icon-inbox-alt:before,
.#{$el-css-prefix}-inbox-alt:before { content: $el-var-inbox-alt; }
.#{$el-css-prefix}-icon-inbox-box:before,
.#{$el-css-prefix}-inbox-box:before { content: $el-var-inbox-box; }
.#{$el-css-prefix}-icon-inbox:before,
.#{$el-css-prefix}-inbox:before { content: $el-var-inbox; }
.#{$el-css-prefix}-icon-indent-left:before,
.#{$el-css-prefix}-indent-left:before { content: $el-var-indent-left; }
.#{$el-css-prefix}-icon-indent-right:before,
.#{$el-css-prefix}-indent-right:before { content: $el-var-indent-right; }
.#{$el-css-prefix}-icon-info-circle:before,
.#{$el-css-prefix}-info-circle:before { content: $el-var-info-circle; }
.#{$el-css-prefix}-icon-instagram:before,
.#{$el-css-prefix}-instagram:before { content: $el-var-instagram; }
.#{$el-css-prefix}-icon-iphone-home:before,
.#{$el-css-prefix}-iphone-home:before { content: $el-var-iphone-home; }
.#{$el-css-prefix}-icon-italic:before,
.#{$el-css-prefix}-italic:before { content: $el-var-italic; }
.#{$el-css-prefix}-icon-key:before,
.#{$el-css-prefix}-key:before { content: $el-var-key; }
.#{$el-css-prefix}-icon-laptop-alt:before,
.#{$el-css-prefix}-laptop-alt:before { content: $el-var-laptop-alt; }
.#{$el-css-prefix}-icon-laptop:before,
.#{$el-css-prefix}-laptop:before { content: $el-var-laptop; }
.#{$el-css-prefix}-icon-lastfm:before,
.#{$el-css-prefix}-lastfm:before { content: $el-var-lastfm; }
.#{$el-css-prefix}-icon-leaf:before,
.#{$el-css-prefix}-leaf:before { content: $el-var-leaf; }
.#{$el-css-prefix}-icon-lines:before,
.#{$el-css-prefix}-lines:before { content: $el-var-lines; }
.#{$el-css-prefix}-icon-link:before,
.#{$el-css-prefix}-link:before { content: $el-var-link; }
.#{$el-css-prefix}-icon-linkedin:before,
.#{$el-css-prefix}-linkedin:before { content: $el-var-linkedin; }
.#{$el-css-prefix}-icon-list-alt:before,
.#{$el-css-prefix}-list-alt:before { content: $el-var-list-alt; }
.#{$el-css-prefix}-icon-list:before,
.#{$el-css-prefix}-list:before { content: $el-var-list; }
.#{$el-css-prefix}-icon-livejournal:before,
.#{$el-css-prefix}-livejournal:before { content: $el-var-livejournal; }
.#{$el-css-prefix}-icon-lock-alt:before,
.#{$el-css-prefix}-lock-alt:before { content: $el-var-lock-alt; }
.#{$el-css-prefix}-icon-lock:before,
.#{$el-css-prefix}-lock:before { content: $el-var-lock; }
.#{$el-css-prefix}-icon-magic:before,
.#{$el-css-prefix}-magic:before { content: $el-var-magic; }
.#{$el-css-prefix}-icon-magnet:before,
.#{$el-css-prefix}-magnet:before { content: $el-var-magnet; }
.#{$el-css-prefix}-icon-male:before,
.#{$el-css-prefix}-male:before { content: $el-var-male; }
.#{$el-css-prefix}-icon-map-marker-alt:before,
.#{$el-css-prefix}-map-marker-alt:before { content: $el-var-map-marker-alt; }
.#{$el-css-prefix}-icon-map-marker:before,
.#{$el-css-prefix}-map-marker:before { content: $el-var-map-marker; }
.#{$el-css-prefix}-icon-mic-alt:before,
.#{$el-css-prefix}-mic-alt:before { content: $el-var-mic-alt; }
.#{$el-css-prefix}-icon-mic:before,
.#{$el-css-prefix}-mic:before { content: $el-var-mic; }
.#{$el-css-prefix}-icon-minus-sign:before,
.#{$el-css-prefix}-minus-sign:before { content: $el-var-minus-sign; }
.#{$el-css-prefix}-icon-minus:before,
.#{$el-css-prefix}-minus:before { content: $el-var-minus; }
.#{$el-css-prefix}-icon-move:before,
.#{$el-css-prefix}-move:before { content: $el-var-move; }
.#{$el-css-prefix}-icon-music:before,
.#{$el-css-prefix}-music:before { content: $el-var-music; }
.#{$el-css-prefix}-icon-myspace:before,
.#{$el-css-prefix}-myspace:before { content: $el-var-myspace; }
.#{$el-css-prefix}-icon-network:before,
.#{$el-css-prefix}-network:before { content: $el-var-network; }
.#{$el-css-prefix}-icon-off:before,
.#{$el-css-prefix}-off:before { content: $el-var-off; }
.#{$el-css-prefix}-icon-ok-circle:before,
.#{$el-css-prefix}-ok-circle:before { content: $el-var-ok-circle; }
.#{$el-css-prefix}-icon-ok-sign:before,
.#{$el-css-prefix}-ok-sign:before { content: $el-var-ok-sign; }
.#{$el-css-prefix}-icon-ok:before,
.#{$el-css-prefix}-ok:before { content: $el-var-ok; }
.#{$el-css-prefix}-icon-opensource:before,
.#{$el-css-prefix}-opensource:before { content: $el-var-opensource; }
.#{$el-css-prefix}-icon-paper-clip-alt:before,
.#{$el-css-prefix}-paper-clip-alt:before { content: $el-var-paper-clip-alt; }
.#{$el-css-prefix}-icon-paper-clip:before,
.#{$el-css-prefix}-paper-clip:before { content: $el-var-paper-clip; }
.#{$el-css-prefix}-icon-path:before,
.#{$el-css-prefix}-path:before { content: $el-var-path; }
.#{$el-css-prefix}-icon-pause-alt:before,
.#{$el-css-prefix}-pause-alt:before { content: $el-var-pause-alt; }
.#{$el-css-prefix}-icon-pause:before,
.#{$el-css-prefix}-pause:before { content: $el-var-pause; }
.#{$el-css-prefix}-icon-pencil-alt:before,
.#{$el-css-prefix}-pencil-alt:before { content: $el-var-pencil-alt; }
.#{$el-css-prefix}-icon-pencil:before,
.#{$el-css-prefix}-pencil:before { content: $el-var-pencil; }
.#{$el-css-prefix}-icon-person:before,
.#{$el-css-prefix}-person:before { content: $el-var-person; }
.#{$el-css-prefix}-icon-phone-alt:before,
.#{$el-css-prefix}-phone-alt:before { content: $el-var-phone-alt; }
.#{$el-css-prefix}-icon-phone:before,
.#{$el-css-prefix}-phone:before { content: $el-var-phone; }
.#{$el-css-prefix}-icon-photo-alt:before,
.#{$el-css-prefix}-photo-alt:before { content: $el-var-photo-alt; }
.#{$el-css-prefix}-icon-photo:before,
.#{$el-css-prefix}-photo:before { content: $el-var-photo; }
.#{$el-css-prefix}-icon-picasa:before,
.#{$el-css-prefix}-picasa:before { content: $el-var-picasa; }
.#{$el-css-prefix}-icon-picture:before,
.#{$el-css-prefix}-picture:before { content: $el-var-picture; }
.#{$el-css-prefix}-icon-plane:before,
.#{$el-css-prefix}-plane:before { content: $el-var-plane; }
.#{$el-css-prefix}-icon-play-alt:before,
.#{$el-css-prefix}-play-alt:before { content: $el-var-play-alt; }
.#{$el-css-prefix}-icon-play-circle:before,
.#{$el-css-prefix}-play-circle:before { content: $el-var-play-circle; }
.#{$el-css-prefix}-icon-play:before,
.#{$el-css-prefix}-play:before { content: $el-var-play; }
.#{$el-css-prefix}-icon-plurk-alt:before,
.#{$el-css-prefix}-plurk-alt:before { content: $el-var-plurk-alt; }
.#{$el-css-prefix}-icon-plurk:before,
.#{$el-css-prefix}-plurk:before { content: $el-var-plurk; }
.#{$el-css-prefix}-icon-plus-sign:before,
.#{$el-css-prefix}-plus-sign:before { content: $el-var-plus-sign; }
.#{$el-css-prefix}-icon-plus:before,
.#{$el-css-prefix}-plus:before { content: $el-var-plus; }
.#{$el-css-prefix}-icon-podcast:before,
.#{$el-css-prefix}-podcast:before { content: $el-var-podcast; }
.#{$el-css-prefix}-icon-print:before,
.#{$el-css-prefix}-print:before { content: $el-var-print; }
.#{$el-css-prefix}-icon-puzzle:before,
.#{$el-css-prefix}-puzzle:before { content: $el-var-puzzle; }
.#{$el-css-prefix}-icon-qrcode:before,
.#{$el-css-prefix}-qrcode:before { content: $el-var-qrcode; }
.#{$el-css-prefix}-icon-question-sign:before,
.#{$el-css-prefix}-question-sign:before { content: $el-var-question-sign; }
.#{$el-css-prefix}-icon-question:before,
.#{$el-css-prefix}-question:before { content: $el-var-question; }
.#{$el-css-prefix}-icon-quote-alt:before,
.#{$el-css-prefix}-quote-alt:before { content: $el-var-quote-alt; }
.#{$el-css-prefix}-icon-quote-right-alt:before,
.#{$el-css-prefix}-quote-right-alt:before { content: $el-var-quote-right-alt; }
.#{$el-css-prefix}-icon-quote-right:before,
.#{$el-css-prefix}-quote-right:before { content: $el-var-quote-right; }
.#{$el-css-prefix}-icon-quotes:before,
.#{$el-css-prefix}-quotes:before { content: $el-var-quotes; }
.#{$el-css-prefix}-icon-random:before,
.#{$el-css-prefix}-random:before { content: $el-var-random; }
.#{$el-css-prefix}-icon-record:before,
.#{$el-css-prefix}-record:before { content: $el-var-record; }
.#{$el-css-prefix}-icon-reddit:before,
.#{$el-css-prefix}-reddit:before { content: $el-var-reddit; }
.#{$el-css-prefix}-icon-redux:before,
.#{$el-css-prefix}-redux:before { content: $el-var-redux; }
.#{$el-css-prefix}-icon-refresh:before,
.#{$el-css-prefix}-refresh:before { content: $el-var-refresh; }
.#{$el-css-prefix}-icon-remove-circle:before,
.#{$el-css-prefix}-remove-circle:before { content: $el-var-remove-circle; }
.#{$el-css-prefix}-icon-remove-sign:before,
.#{$el-css-prefix}-remove-sign:before { content: $el-var-remove-sign; }
.#{$el-css-prefix}-icon-remove:before,
.#{$el-css-prefix}-remove:before { content: $el-var-remove; }
.#{$el-css-prefix}-icon-repeat-alt:before,
.#{$el-css-prefix}-repeat-alt:before { content: $el-var-repeat-alt; }
.#{$el-css-prefix}-icon-repeat:before,
.#{$el-css-prefix}-repeat:before { content: $el-var-repeat; }
.#{$el-css-prefix}-icon-resize-full:before,
.#{$el-css-prefix}-resize-full:before { content: $el-var-resize-full; }
.#{$el-css-prefix}-icon-resize-horizontal:before,
.#{$el-css-prefix}-resize-horizontal:before { content: $el-var-resize-horizontal; }
.#{$el-css-prefix}-icon-resize-small:before,
.#{$el-css-prefix}-resize-small:before { content: $el-var-resize-small; }
.#{$el-css-prefix}-icon-resize-vertical:before,
.#{$el-css-prefix}-resize-vertical:before { content: $el-var-resize-vertical; }
.#{$el-css-prefix}-icon-return-key:before,
.#{$el-css-prefix}-return-key:before { content: $el-var-return-key; }
.#{$el-css-prefix}-icon-retweet:before,
.#{$el-css-prefix}-retweet:before { content: $el-var-retweet; }
.#{$el-css-prefix}-icon-reverse-alt:before,
.#{$el-css-prefix}-reverse-alt:before { content: $el-var-reverse-alt; }
.#{$el-css-prefix}-icon-road:before,
.#{$el-css-prefix}-road:before { content: $el-var-road; }
.#{$el-css-prefix}-icon-rss:before,
.#{$el-css-prefix}-rss:before { content: $el-var-rss; }
.#{$el-css-prefix}-icon-scissors:before,
.#{$el-css-prefix}-scissors:before { content: $el-var-scissors; }
.#{$el-css-prefix}-icon-screen-alt:before,
.#{$el-css-prefix}-screen-alt:before { content: $el-var-screen-alt; }
.#{$el-css-prefix}-icon-screen:before,
.#{$el-css-prefix}-screen:before { content: $el-var-screen; }
.#{$el-css-prefix}-icon-screenshot:before,
.#{$el-css-prefix}-screenshot:before { content: $el-var-screenshot; }
.#{$el-css-prefix}-icon-search-alt:before,
.#{$el-css-prefix}-search-alt:before { content: $el-var-search-alt; }
.#{$el-css-prefix}-icon-search:before,
.#{$el-css-prefix}-search:before { content: $el-var-search; }
.#{$el-css-prefix}-icon-share-alt:before,
.#{$el-css-prefix}-share-alt:before { content: $el-var-share-alt; }
.#{$el-css-prefix}-icon-share:before,
.#{$el-css-prefix}-share:before { content: $el-var-share; }
.#{$el-css-prefix}-icon-shopping-cart-sign:before,
.#{$el-css-prefix}-shopping-cart-sign:before { content: $el-var-shopping-cart-sign; }
.#{$el-css-prefix}-icon-shopping-cart:before,
.#{$el-css-prefix}-shopping-cart:before { content: $el-var-shopping-cart; }
.#{$el-css-prefix}-icon-shortcode:before,
.#{$el-css-prefix}-shortcode:before { content: $el-var-shortcode; }
.#{$el-css-prefix}-icon-signal:before,
.#{$el-css-prefix}-signal:before { content: $el-var-signal; }
.#{$el-css-prefix}-icon-skype:before,
.#{$el-css-prefix}-skype:before { content: $el-var-skype; }
.#{$el-css-prefix}-icon-slideshare:before,
.#{$el-css-prefix}-slideshare:before { content: $el-var-slideshare; }
.#{$el-css-prefix}-icon-smiley-alt:before,
.#{$el-css-prefix}-smiley-alt:before { content: $el-var-smiley-alt; }
.#{$el-css-prefix}-icon-smiley:before,
.#{$el-css-prefix}-smiley:before { content: $el-var-smiley; }
.#{$el-css-prefix}-icon-soundcloud:before,
.#{$el-css-prefix}-soundcloud:before { content: $el-var-soundcloud; }
.#{$el-css-prefix}-icon-speaker:before,
.#{$el-css-prefix}-speaker:before { content: $el-var-speaker; }
.#{$el-css-prefix}-icon-spotify:before,
.#{$el-css-prefix}-spotify:before { content: $el-var-spotify; }
.#{$el-css-prefix}-icon-stackoverflow:before,
.#{$el-css-prefix}-stackoverflow:before { content: $el-var-stackoverflow; }
.#{$el-css-prefix}-icon-star-alt:before,
.#{$el-css-prefix}-star-alt:before { content: $el-var-star-alt; }
.#{$el-css-prefix}-icon-star-empty:before,
.#{$el-css-prefix}-star-empty:before { content: $el-var-star-empty; }
.#{$el-css-prefix}-icon-star:before,
.#{$el-css-prefix}-star:before { content: $el-var-star; }
.#{$el-css-prefix}-icon-step-backward:before,
.#{$el-css-prefix}-step-backward:before { content: $el-var-step-backward; }
.#{$el-css-prefix}-icon-step-forward:before,
.#{$el-css-prefix}-step-forward:before { content: $el-var-step-forward; }
.#{$el-css-prefix}-icon-stop-alt:before,
.#{$el-css-prefix}-stop-alt:before { content: $el-var-stop-alt; }
.#{$el-css-prefix}-icon-stop:before,
.#{$el-css-prefix}-stop:before { content: $el-var-stop; }
.#{$el-css-prefix}-icon-stumbleupon:before,
.#{$el-css-prefix}-stumbleupon:before { content: $el-var-stumbleupon; }
.#{$el-css-prefix}-icon-tag:before,
.#{$el-css-prefix}-tag:before { content: $el-var-tag; }
.#{$el-css-prefix}-icon-tags:before,
.#{$el-css-prefix}-tags:before { content: $el-var-tags; }
.#{$el-css-prefix}-icon-tasks:before,
.#{$el-css-prefix}-tasks:before { content: $el-var-tasks; }
.#{$el-css-prefix}-icon-text-height:before,
.#{$el-css-prefix}-text-height:before { content: $el-var-text-height; }
.#{$el-css-prefix}-icon-text-width:before,
.#{$el-css-prefix}-text-width:before { content: $el-var-text-width; }
.#{$el-css-prefix}-icon-th-large:before,
.#{$el-css-prefix}-th-large:before { content: $el-var-th-large; }
.#{$el-css-prefix}-icon-th-list:before,
.#{$el-css-prefix}-th-list:before { content: $el-var-th-list; }
.#{$el-css-prefix}-icon-th:before,
.#{$el-css-prefix}-th:before { content: $el-var-th; }
.#{$el-css-prefix}-icon-thumbs-down:before,
.#{$el-css-prefix}-thumbs-down:before { content: $el-var-thumbs-down; }
.#{$el-css-prefix}-icon-thumbs-up:before,
.#{$el-css-prefix}-thumbs-up:before { content: $el-var-thumbs-up; }
.#{$el-css-prefix}-icon-time-alt:before,
.#{$el-css-prefix}-time-alt:before { content: $el-var-time-alt; }
.#{$el-css-prefix}-icon-time:before,
.#{$el-css-prefix}-time:before { content: $el-var-time; }
.#{$el-css-prefix}-icon-tint:before,
.#{$el-css-prefix}-tint:before { content: $el-var-tint; }
.#{$el-css-prefix}-icon-torso:before,
.#{$el-css-prefix}-torso:before { content: $el-var-torso; }
.#{$el-css-prefix}-icon-trash-alt:before,
.#{$el-css-prefix}-trash-alt:before { content: $el-var-trash-alt; }
.#{$el-css-prefix}-icon-trash:before,
.#{$el-css-prefix}-trash:before { content: $el-var-trash; }
.#{$el-css-prefix}-icon-tumblr:before,
.#{$el-css-prefix}-tumblr:before { content: $el-var-tumblr; }
.#{$el-css-prefix}-icon-twitter:before,
.#{$el-css-prefix}-twitter:before { content: $el-var-twitter; }
.#{$el-css-prefix}-icon-universal-access:before,
.#{$el-css-prefix}-universal-access:before { content: $el-var-universal-access; }
.#{$el-css-prefix}-icon-unlock-alt:before,
.#{$el-css-prefix}-unlock-alt:before { content: $el-var-unlock-alt; }
.#{$el-css-prefix}-icon-unlock:before,
.#{$el-css-prefix}-unlock:before { content: $el-var-unlock; }
.#{$el-css-prefix}-icon-upload:before,
.#{$el-css-prefix}-upload:before { content: $el-var-upload; }
.#{$el-css-prefix}-icon-usd:before,
.#{$el-css-prefix}-usd:before { content: $el-var-usd; }
.#{$el-css-prefix}-icon-user:before,
.#{$el-css-prefix}-user:before { content: $el-var-user; }
.#{$el-css-prefix}-icon-viadeo:before,
.#{$el-css-prefix}-viadeo:before { content: $el-var-viadeo; }
.#{$el-css-prefix}-icon-video-alt:before,
.#{$el-css-prefix}-video-alt:before { content: $el-var-video-alt; }
.#{$el-css-prefix}-icon-video-chat:before,
.#{$el-css-prefix}-video-chat:before { content: $el-var-video-chat; }
.#{$el-css-prefix}-icon-video:before,
.#{$el-css-prefix}-video:before { content: $el-var-video; }
.#{$el-css-prefix}-icon-view-mode:before,
.#{$el-css-prefix}-view-mode:before { content: $el-var-view-mode; }
.#{$el-css-prefix}-icon-vimeo:before,
.#{$el-css-prefix}-vimeo:before { content: $el-var-vimeo; }
.#{$el-css-prefix}-icon-vkontakte:before,
.#{$el-css-prefix}-vkontakte:before { content: $el-var-vkontakte; }
.#{$el-css-prefix}-icon-volume-down:before,
.#{$el-css-prefix}-volume-down:before { content: $el-var-volume-down; }
.#{$el-css-prefix}-icon-volume-off:before,
.#{$el-css-prefix}-volume-off:before { content: $el-var-volume-off; }
.#{$el-css-prefix}-icon-volume-up:before,
.#{$el-css-prefix}-volume-up:before { content: $el-var-volume-up; }
.#{$el-css-prefix}-icon-w3c:before,
.#{$el-css-prefix}-w3c:before { content: $el-var-w3c; }
.#{$el-css-prefix}-icon-warning-sign:before,
.#{$el-css-prefix}-warning-sign:before { content: $el-var-warning-sign; }
.#{$el-css-prefix}-icon-website-alt:before,
.#{$el-css-prefix}-website-alt:before { content: $el-var-website-alt; }
.#{$el-css-prefix}-icon-website:before,
.#{$el-css-prefix}-website:before { content: $el-var-website; }
.#{$el-css-prefix}-icon-wheelchair:before,
.#{$el-css-prefix}-wheelchair:before { content: $el-var-wheelchair; }
.#{$el-css-prefix}-icon-wordpress:before,
.#{$el-css-prefix}-wordpress:before { content: $el-var-wordpress; }
.#{$el-css-prefix}-icon-wrench-alt:before,
.#{$el-css-prefix}-wrench-alt:before { content: $el-var-wrench-alt; }
.#{$el-css-prefix}-icon-wrench:before,
.#{$el-css-prefix}-wrench:before { content: $el-var-wrench; }
.#{$el-css-prefix}-icon-youtube:before,
.#{$el-css-prefix}-youtube:before { content: $el-var-youtube; }
.#{$el-css-prefix}-icon-zoom-in:before,
.#{$el-css-prefix}-zoom-in:before { content: $el-var-zoom-in; }
.#{$el-css-prefix}-icon-zoom-out:before,
.#{$el-css-prefix}-zoom-out:before { content: $el-var-zoom-out; }

View File

@ -1,13 +0,0 @@
// Icon Sizes
// -------------------------
/* makes the font 33% larger relative to the icon container */
.#{$el-css-prefix}-lg {
font-size: (4em / 3);
line-height: (3em / 4);
vertical-align: -15%;
}
.#{$el-css-prefix}-2x { font-size: 2em; }
.#{$el-css-prefix}-3x { font-size: 3em; }
.#{$el-css-prefix}-4x { font-size: 4em; }
.#{$el-css-prefix}-5x { font-size: 5em; }

View File

@ -1,19 +0,0 @@
// List Icons
// -------------------------
.#{$el-css-prefix}-ul {
padding-left: 0;
margin-left: $el-li-width;
list-style-type: none;
> li { position: relative; }
}
.#{$el-css-prefix}-li {
position: absolute;
left: -$el-li-width;
width: $el-li-width;
top: (2em / 14);
text-align: center;
&.#{$el-css-prefix}-lg {
left: -$el-li-width + (4em / 14);
}
}

View File

@ -1,27 +0,0 @@
// Mixins
// --------------------------
@mixin el-icon() {
display: inline-block;
font: normal normal normal #{$el-font-size-base}/1 'Elusive-Icons'; // shortening font declaration
font-size: inherit; // can't have font-size inherit on line above, so need to override
text-rendering: auto; // optimizelegibility throws things off #1094
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
transform: translate(0, 0); // ensures no half-pixel rendering in firefox
}
@mixin el-icon-rotate($degrees, $rotation) {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation});
-webkit-transform: rotate($degrees);
-ms-transform: rotate($degrees);
transform: rotate($degrees);
}
@mixin el-icon-flip($horiz, $vert, $rotation) {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation});
-webkit-transform: scale($horiz, $vert);
-ms-transform: scale($horiz, $vert);
transform: scale($horiz, $vert);
}

View File

@ -1,14 +0,0 @@
/* FONT PATH
* -------------------------- */
@font-face {
font-family: 'Elusive-Icons';
src: url('#{$el-font-path}/elusiveicons-webfont.eot?v=#{$el-version}');
src: url('#{$el-font-path}/elusiveicons-webfont.eot?#iefix&v=#{$el-version}') format('embedded-opentype'),
//url('#{$el-font-path}/elusiveicons-webfont.woff2?v=#{$el-version}') format('woff2'),
url('#{$el-font-path}/elusiveicons-webfont.woff?v=#{$el-version}') format('woff'),
url('#{$el-font-path}/elusiveicons-webfont.ttf?v=#{$el-version}') format('truetype'),
url('#{$el-font-path}/elusiveicons-webfont.svg?v=#{$el-version}#elusiveiconsregular') format('svg');
font-weight: normal;
font-style: normal;
}

View File

@ -1,20 +0,0 @@
// Rotated & Flipped Icons
// -------------------------
.#{$el-css-prefix}-rotate-90 { @include el-icon-rotate(90deg, 1); }
.#{$el-css-prefix}-rotate-180 { @include el-icon-rotate(180deg, 2); }
.#{$el-css-prefix}-rotate-270 { @include el-icon-rotate(270deg, 3); }
.#{$el-css-prefix}-flip-horizontal { @include el-icon-flip(-1, 1, 0); }
.#{$el-css-prefix}-flip-vertical { @include el-icon-flip(1, -1, 2); }
// Hook for IE8-9
// -------------------------
:root .#{$el-css-prefix}-rotate-90,
:root .#{$el-css-prefix}-rotate-180,
:root .#{$el-css-prefix}-rotate-270,
:root .#{$el-css-prefix}-flip-horizontal,
:root .#{$el-css-prefix}-flip-vertical {
filter: none;
}

View File

@ -1,20 +0,0 @@
// Stacked Icons
// -------------------------
.#{$el-css-prefix}-stack {
position: relative;
display: inline-block;
width: 2em;
height: 2em;
line-height: 2em;
vertical-align: middle;
}
.#{$el-css-prefix}-stack-1x, .#{$el-css-prefix}-stack-2x {
position: absolute;
left: 0;
width: 100%;
text-align: center;
}
.#{$el-css-prefix}-stack-1x { line-height: inherit; }
.#{$el-css-prefix}-stack-2x { font-size: 2em; }
.#{$el-css-prefix}-inverse { color: $el-inverse; }

View File

@ -1,318 +0,0 @@
// Variables
// --------------------------
$el-font-path: "fonts" !default;
$el-font-size-base: 14px !default;
$el-css-prefix: el !default;
$el-version: "2.0.0" !default;
$el-border-color: #eee !default;
$el-inverse: #fff !default;
$el-li-width: (30em / 14) !default;
$el-var-address-book: "\f102";
$el-var-address-book-alt: "\f101";
$el-var-adjust: "\f104";
$el-var-adjust-alt: "\f103";
$el-var-adult: "\f105";
$el-var-align-center: "\f106";
$el-var-align-justify: "\f107";
$el-var-align-left: "\f108";
$el-var-align-right: "\f109";
$el-var-arrow-down: "\f10a";
$el-var-arrow-left: "\f10b";
$el-var-arrow-right: "\f10c";
$el-var-arrow-up: "\f10d";
$el-var-asl: "\f10e";
$el-var-asterisk: "\f10f";
$el-var-backward: "\f110";
$el-var-ban-circle: "\f111";
$el-var-barcode: "\f112";
$el-var-behance: "\f113";
$el-var-bell: "\f114";
$el-var-blind: "\f115";
$el-var-blogger: "\f116";
$el-var-bold: "\f117";
$el-var-book: "\f118";
$el-var-bookmark: "\f11a";
$el-var-bookmark-empty: "\f119";
$el-var-brackets: "\f11b";
$el-var-braille: "\f11c";
$el-var-briefcase: "\f11d";
$el-var-broom: "\f11e";
$el-var-brush: "\f11f";
$el-var-bulb: "\f120";
$el-var-bullhorn: "\f121";
$el-var-calendar: "\f123";
$el-var-calendar-sign: "\f122";
$el-var-camera: "\f124";
$el-var-car: "\f125";
$el-var-caret-down: "\f126";
$el-var-caret-left: "\f127";
$el-var-caret-right: "\f128";
$el-var-caret-up: "\f129";
$el-var-cc: "\f12a";
$el-var-certificate: "\f12b";
$el-var-check: "\f12d";
$el-var-check-empty: "\f12c";
$el-var-chevron-down: "\f12e";
$el-var-chevron-left: "\f12f";
$el-var-chevron-right: "\f130";
$el-var-chevron-up: "\f131";
$el-var-child: "\f132";
$el-var-circle-arrow-down: "\f133";
$el-var-circle-arrow-left: "\f134";
$el-var-circle-arrow-right: "\f135";
$el-var-circle-arrow-up: "\f136";
$el-var-cloud: "\f138";
$el-var-cloud-alt: "\f137";
$el-var-cog: "\f13a";
$el-var-cog-alt: "\f139";
$el-var-cogs: "\f13b";
$el-var-comment: "\f13d";
$el-var-comment-alt: "\f13c";
$el-var-compass: "\f13f";
$el-var-compass-alt: "\f13e";
$el-var-credit-card: "\f140";
$el-var-css: "\f141";
$el-var-dashboard: "\f142";
$el-var-delicious: "\f143";
$el-var-deviantart: "\f144";
$el-var-digg: "\f145";
$el-var-download: "\f147";
$el-var-download-alt: "\f146";
$el-var-dribbble: "\f148";
$el-var-edit: "\f149";
$el-var-eject: "\f14a";
$el-var-envelope: "\f14c";
$el-var-envelope-alt: "\f14b";
$el-var-error: "\f14e";
$el-var-error-alt: "\f14d";
$el-var-eur: "\f14f";
$el-var-exclamation-sign: "\f150";
$el-var-eye-close: "\f151";
$el-var-eye-open: "\f152";
$el-var-facebook: "\f153";
$el-var-facetime-video: "\f154";
$el-var-fast-backward: "\f155";
$el-var-fast-forward: "\f156";
$el-var-female: "\f157";
$el-var-file: "\f15d";
$el-var-file-alt: "\f158";
$el-var-file-edit: "\f15a";
$el-var-file-edit-alt: "\f159";
$el-var-file-new: "\f15c";
$el-var-file-new-alt: "\f15b";
$el-var-film: "\f15e";
$el-var-filter: "\f15f";
$el-var-fire: "\f160";
$el-var-flag: "\f162";
$el-var-flag-alt: "\f161";
$el-var-flickr: "\f163";
$el-var-folder: "\f167";
$el-var-folder-close: "\f164";
$el-var-folder-open: "\f165";
$el-var-folder-sign: "\f166";
$el-var-font: "\f168";
$el-var-fontsize: "\f169";
$el-var-fork: "\f16a";
$el-var-forward: "\f16c";
$el-var-forward-alt: "\f16b";
$el-var-foursquare: "\f16d";
$el-var-friendfeed: "\f16f";
$el-var-friendfeed-rect: "\f16e";
$el-var-fullscreen: "\f170";
$el-var-gallery: "\f171";
$el-var-gbp: "\f172";
$el-var-gift: "\f173";
$el-var-github: "\f175";
$el-var-github-text: "\f174";
$el-var-glass: "\f176";
$el-var-glasses: "\f177";
$el-var-globe: "\f179";
$el-var-globe-alt: "\f178";
$el-var-googleplus: "\f17a";
$el-var-graph: "\f17c";
$el-var-graph-alt: "\f17b";
$el-var-group: "\f17e";
$el-var-group-alt: "\f17d";
$el-var-guidedog: "\f17f";
$el-var-hand-down: "\f180";
$el-var-hand-left: "\f181";
$el-var-hand-right: "\f182";
$el-var-hand-up: "\f183";
$el-var-hdd: "\f184";
$el-var-headphones: "\f185";
$el-var-hearing-impaired: "\f186";
$el-var-heart: "\f189";
$el-var-heart-alt: "\f187";
$el-var-heart-empty: "\f188";
$el-var-home: "\f18b";
$el-var-home-alt: "\f18a";
$el-var-hourglass: "\f18c";
$el-var-idea: "\f18e";
$el-var-idea-alt: "\f18d";
$el-var-inbox: "\f191";
$el-var-inbox-alt: "\f18f";
$el-var-inbox-box: "\f190";
$el-var-indent-left: "\f192";
$el-var-indent-right: "\f193";
$el-var-info-circle: "\f194";
$el-var-instagram: "\f195";
$el-var-iphone-home: "\f196";
$el-var-italic: "\f197";
$el-var-key: "\f198";
$el-var-laptop: "\f19a";
$el-var-laptop-alt: "\f199";
$el-var-lastfm: "\f19b";
$el-var-leaf: "\f19c";
$el-var-lines: "\f19d";
$el-var-link: "\f19e";
$el-var-linkedin: "\f19f";
$el-var-list: "\f1a1";
$el-var-list-alt: "\f1a0";
$el-var-livejournal: "\f1a2";
$el-var-lock: "\f1a4";
$el-var-lock-alt: "\f1a3";
$el-var-magic: "\f1a5";
$el-var-magnet: "\f1a6";
$el-var-male: "\f1a7";
$el-var-map-marker: "\f1a9";
$el-var-map-marker-alt: "\f1a8";
$el-var-mic: "\f1ab";
$el-var-mic-alt: "\f1aa";
$el-var-minus: "\f1ad";
$el-var-minus-sign: "\f1ac";
$el-var-move: "\f1ae";
$el-var-music: "\f1af";
$el-var-myspace: "\f1b0";
$el-var-network: "\f1b1";
$el-var-off: "\f1b2";
$el-var-ok: "\f1b5";
$el-var-ok-circle: "\f1b3";
$el-var-ok-sign: "\f1b4";
$el-var-opensource: "\f1b6";
$el-var-paper-clip: "\f1b8";
$el-var-paper-clip-alt: "\f1b7";
$el-var-path: "\f1b9";
$el-var-pause: "\f1bb";
$el-var-pause-alt: "\f1ba";
$el-var-pencil: "\f1bd";
$el-var-pencil-alt: "\f1bc";
$el-var-person: "\f1be";
$el-var-phone: "\f1c0";
$el-var-phone-alt: "\f1bf";
$el-var-photo: "\f1c2";
$el-var-photo-alt: "\f1c1";
$el-var-picasa: "\f1c3";
$el-var-picture: "\f1c4";
$el-var-plane: "\f1c5";
$el-var-play: "\f1c8";
$el-var-play-alt: "\f1c6";
$el-var-play-circle: "\f1c7";
$el-var-plurk: "\f1ca";
$el-var-plurk-alt: "\f1c9";
$el-var-plus: "\f1cc";
$el-var-plus-sign: "\f1cb";
$el-var-podcast: "\f1cd";
$el-var-print: "\f1ce";
$el-var-puzzle: "\f1cf";
$el-var-qrcode: "\f1d0";
$el-var-question: "\f1d2";
$el-var-question-sign: "\f1d1";
$el-var-quote-alt: "\f1d3";
$el-var-quote-right: "\f1d5";
$el-var-quote-right-alt: "\f1d4";
$el-var-quotes: "\f1d6";
$el-var-random: "\f1d7";
$el-var-record: "\f1d8";
$el-var-reddit: "\f1d9";
$el-var-redux: "\f1da";
$el-var-refresh: "\f1db";
$el-var-remove: "\f1de";
$el-var-remove-circle: "\f1dc";
$el-var-remove-sign: "\f1dd";
$el-var-repeat: "\f1e0";
$el-var-repeat-alt: "\f1df";
$el-var-resize-full: "\f1e1";
$el-var-resize-horizontal: "\f1e2";
$el-var-resize-small: "\f1e3";
$el-var-resize-vertical: "\f1e4";
$el-var-return-key: "\f1e5";
$el-var-retweet: "\f1e6";
$el-var-reverse-alt: "\f1e7";
$el-var-road: "\f1e8";
$el-var-rss: "\f1e9";
$el-var-scissors: "\f1ea";
$el-var-screen: "\f1ec";
$el-var-screen-alt: "\f1eb";
$el-var-screenshot: "\f1ed";
$el-var-search: "\f1ef";
$el-var-search-alt: "\f1ee";
$el-var-share: "\f1f1";
$el-var-share-alt: "\f1f0";
$el-var-shopping-cart: "\f1f3";
$el-var-shopping-cart-sign: "\f1f2";
$el-var-shortcode: "\f1f4";
$el-var-signal: "\f1f5";
$el-var-skype: "\f1f6";
$el-var-slideshare: "\f1f7";
$el-var-smiley: "\f1f9";
$el-var-smiley-alt: "\f1f8";
$el-var-soundcloud: "\f1fa";
$el-var-speaker: "\f1fb";
$el-var-spotify: "\f1fc";
$el-var-stackoverflow: "\f1fd";
$el-var-star: "\f200";
$el-var-star-alt: "\f1fe";
$el-var-star-empty: "\f1ff";
$el-var-step-backward: "\f201";
$el-var-step-forward: "\f202";
$el-var-stop: "\f204";
$el-var-stop-alt: "\f203";
$el-var-stumbleupon: "\f205";
$el-var-tag: "\f206";
$el-var-tags: "\f207";
$el-var-tasks: "\f208";
$el-var-text-height: "\f209";
$el-var-text-width: "\f20a";
$el-var-th: "\f20d";
$el-var-th-large: "\f20b";
$el-var-th-list: "\f20c";
$el-var-thumbs-down: "\f20e";
$el-var-thumbs-up: "\f20f";
$el-var-time: "\f211";
$el-var-time-alt: "\f210";
$el-var-tint: "\f212";
$el-var-torso: "\f213";
$el-var-trash: "\f215";
$el-var-trash-alt: "\f214";
$el-var-tumblr: "\f216";
$el-var-twitter: "\f217";
$el-var-universal-access: "\f218";
$el-var-unlock: "\f21a";
$el-var-unlock-alt: "\f219";
$el-var-upload: "\f21b";
$el-var-usd: "\f21c";
$el-var-user: "\f21d";
$el-var-viadeo: "\f21e";
$el-var-video: "\f221";
$el-var-video-alt: "\f21f";
$el-var-video-chat: "\f220";
$el-var-view-mode: "\f222";
$el-var-vimeo: "\f223";
$el-var-vkontakte: "\f224";
$el-var-volume-down: "\f225";
$el-var-volume-off: "\f226";
$el-var-volume-up: "\f227";
$el-var-w3c: "\f228";
$el-var-warning-sign: "\f229";
$el-var-website: "\f22b";
$el-var-website-alt: "\f22a";
$el-var-wheelchair: "\f22c";
$el-var-wordpress: "\f22d";
$el-var-wrench: "\f22f";
$el-var-wrench-alt: "\f22e";
$el-var-youtube: "\f230";
$el-var-zoom-in: "\f231";
$el-var-zoom-out: "\f232";

View File

@ -1,17 +0,0 @@
/*!
* Elusive Icons 2.0.0 by @ReduxFramework - http://elusiveicons.com - @reduxframework
* License - http://elusiveicons.com/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
@import "variables";
@import "mixins";
@import "path";
@import "core";
@import "larger";
@import "fixed-width";
@import "list";
@import "bordered-pulled";
@import "animated";
@import "rotated-flipped";
@import "stacked";
@import "icons";

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