From 7e30c1dd823686eb8e59e6e1c171a751e8af2d49 Mon Sep 17 00:00:00 2001
From: Mario Vavti
Date: Sat, 23 Apr 2016 21:24:22 +0200
Subject: update smarty to version 3.1.29
---
library/Smarty/NEW_FEATURES.txt | 8 +-
library/Smarty/change_log.txt | 42 +-
library/Smarty/libs/Smarty.class.php | 25 +-
.../libs/sysplugins/smarty_cacheresource.php | 9 +-
.../sysplugins/smarty_internal_compile_block.php | 2 +-
.../sysplugins/smarty_internal_compile_capture.php | 9 +-
.../sysplugins/smarty_internal_compile_foreach.php | 12 +-
...rty_internal_compile_private_foreachsection.php | 11 +-
...y_internal_compile_private_special_variable.php | 37 +-
.../sysplugins/smarty_internal_compile_section.php | 4 +-
.../libs/sysplugins/smarty_internal_data.php | 15 +
.../sysplugins/smarty_internal_extension_clear.php | 8 -
.../smarty_internal_method_clearallcache.php | 5 +-
.../smarty_internal_method_clearcache.php | 5 +-
...marty_internal_method_clearcompiledtemplate.php | 16 +-
.../smarty_internal_method_configload.php | 2 +-
.../smarty_internal_resource_extends.php | 13 +-
.../smarty_internal_runtime_codeframe.php | 2 +-
.../sysplugins/smarty_internal_runtime_foreach.php | 3 +
.../smarty_internal_runtime_inheritance.php | 70 +-
.../smarty_internal_runtime_tplfunction.php | 2 +-
.../smarty_internal_runtime_updatecache.php | 16 +-
.../smarty_internal_runtime_updatescope.php | 2 +-
.../smarty_internal_runtime_validatecompiled.php | 9 +-
.../sysplugins/smarty_internal_runtime_var.php | 2 +-
.../smarty_internal_templatecompilerbase.php | 252 +--
.../sysplugins/smarty_internal_templateparser.php | 2110 ++++++++++----------
library/Smarty/libs/sysplugins/smarty_resource.php | 10 +
.../sysplugins/smarty_template_resource_base.php | 7 -
29 files changed, 1371 insertions(+), 1337 deletions(-)
(limited to 'library')
diff --git a/library/Smarty/NEW_FEATURES.txt b/library/Smarty/NEW_FEATURES.txt
index 595dc4d3c..1a51c71d9 100644
--- a/library/Smarty/NEW_FEATURES.txt
+++ b/library/Smarty/NEW_FEATURES.txt
@@ -21,17 +21,17 @@ Smarty 3.1.28
fetch() and display()
=====================
The fetch() and display() methods of the template object accept now optionally the same parameter
- as the corresponding Smarty methods to get tne content of another template.
+ as the corresponding Smarty methods to get the content of another template.
Example:
$template->display(); Does display template of template object
- $template->dispaly('foo.tpl'); Does display template 'foo.bar'
+ $template->display('foo.tpl'); Does display template 'foo.bar'
File: resource
==============
Multiple template_dir entries can now be selected by a comma separated list of indices.
The template_dir array is searched in the order of the indices. (Could be used to change the default search order)
Example:
- $smarty->display([1],[0]foo.bar');
+ $smarty->display('[1],[0]foo.bar');
Filter support
==============
@@ -130,4 +130,4 @@ Smarty 3.1.22
Smarty::DEBUG_INDIVIDUAL will create for each display() and fetch() call an individual debug window.
.
-
\ No newline at end of file
+
diff --git a/library/Smarty/change_log.txt b/library/Smarty/change_log.txt
index cecda63d1..dadc5d17d 100644
--- a/library/Smarty/change_log.txt
+++ b/library/Smarty/change_log.txt
@@ -1,14 +1,50 @@
- ===== 3.1.28 ===== (13.12.2015)
+ ===== 3.1.29 ===== (21.12.2015)
+ 21.12.2015
+ - optimization improve speed of filetime checks on extends and extendsall resource
+
+ 20.12.2015
+ - bugfix failure when the default resource type was set to 'extendsall' https://github.com/smarty-php/smarty/issues/123
+ - update compilation of Smarty special variables
+ - bugfix add addition check for OS type on normalizaition of file path https://github.com/smarty-php/smarty/issues/134
+ - bugfix the source uid of the extendsall resource must contain $template_dir settings https://github.com/smarty-php/smarty/issues/123
+
+ 19.12.2015
+ - bugfix using $smarty.capture.foo in expressions could fail https://github.com/smarty-php/smarty/pull/138
+ - bugfix broken PHP 5.2 compatibility https://github.com/smarty-php/smarty/issues/139
+ - remove no longer used code
+ - improvement make sure that compiled and cache templates never can contain a trailing '?>?
+
+ 18.12.2015
+ - bugfix regression when modifier parameter was follow by math https://github.com/smarty-php/smarty/issues/132
+
+ 17.12.2015
+ - bugfix {$smarty.capture.nameFail} did lowercase capture name https://github.com/smarty-php/smarty/issues/135
+ - bugfix using {block append/prepend} on same block in multiple levels of inheritance templates could fail (forum topic 25827)
+ - bugfix text content consisting of just a single '0' like in {if true}0{/if} was suppressed (forum topic 25834)
+
+ 16.12.2015
+ - bugfix {foreach} did fail if from atrribute is a Generator class https://github.com/smarty-php/smarty/issues/128
+ - bugfix direct access $smarty->template_dir = 'foo'; should call Smarty::setTemplateDir() https://github.com/smarty-php/smarty/issues/121
+
+ 15.12.2015
+ - bugfix {$smarty.cookies.foo} did return the $_COOKIE array not the 'foo' value https://github.com/smarty-php/smarty/issues/122
+ - bugfix a call to clearAllCache() and other should clear all internal template object caches (forum topic 25828)
+
+ 14.12.2015
+ - bugfix {$smarty.config.foo} broken in 3.1.28 https://github.com/smarty-php/smarty/issues/120
+ - bugfix multiple calls of {section} with same name droped E_NOTICE error https://github.com/smarty-php/smarty/issues/118
+
+ ===== 3.1.28 ===== (13.12.2015)
13.12.2015
- bugfix {foreach} and {section} with uppercase characters in name attribute did not work (forum topic 25819)
- bugfix $smarty->debugging_ctrl = 'URL' did not work (forum topic 25811)
- bugfix Debug Console could display incorrect data when using subtemplates
09.12.2015
- - bugix Smarty did fail under PHP 7.0.0 with use_include_path = true;
+ - bugfix Smarty did fail under PHP 7.0.0 with use_include_path = true;
09.12.2015
- -bugfix {strip} should exclude some html tags from stripping, related to fix for https://github.com/smarty-php/smarty/issues/111
+ - bugfix {strip} should exclude some html tags from stripping, related to fix for https://github.com/smarty-php/smarty/issues/111
08.12.2015
- bugfix internal template function data got stored in wrong compiled file https://github.com/smarty-php/smarty/issues/114
diff --git a/library/Smarty/libs/Smarty.class.php b/library/Smarty/libs/Smarty.class.php
index 17457131c..a029f942e 100644
--- a/library/Smarty/libs/Smarty.class.php
+++ b/library/Smarty/libs/Smarty.class.php
@@ -27,7 +27,7 @@
* @author Uwe Tews
* @author Rodney Rehm
* @package Smarty
- * @version 3.1.28
+ * @version 3.1.29
*/
/**
@@ -118,7 +118,7 @@ class Smarty extends Smarty_Internal_TemplateBase
/**
* smarty version
*/
- const SMARTY_VERSION = '3.1.28';
+ const SMARTY_VERSION = '3.1.29';
/**
* define variable scopes
@@ -677,15 +677,20 @@ class Smarty extends Smarty_Internal_TemplateBase
/**
* removed properties
*
- * @var array
+ * @var string[]
*/
private static $obsoleteProperties = array('resource_caching', 'template_resource_caching',
'direct_access_security', '_dir_perms', '_file_perms',
'plugin_search_order', 'inheritance_merge_compiled_includes');
- private static $accessMap = array('template_dir' => 'getTemplateDir', 'config_dir' => 'getConfigDir',
- 'plugins_dir' => 'getPluginsDir', 'compile_dir' => 'getCompileDir',
- 'cache_dir' => 'getCacheDir',);
+ /**
+ * List of private properties which will call getter/setter ona direct access
+ *
+ * @var array
+ */
+ private static $accessMap = array('template_dir' => 'TemplateDir', 'config_dir' => 'ConfigDir',
+ 'plugins_dir' => 'PluginsDir', 'compile_dir' => 'CompileDir',
+ 'cache_dir' => 'CacheDir',);
/**#@-*/
@@ -1173,7 +1178,7 @@ class Smarty extends Smarty_Internal_TemplateBase
$path = str_replace($nds, DS, $path);
}
- if ($realpath === true && $path[0] !== '/' && $path[1] !== ':') {
+ if ($realpath === true && (($path[0] !== '/' && DS == '/') || ($path[1] !== ':' && DS != '/'))) {
$path = getcwd() . DS . $path;
}
while ((strpos($path, '.' . DS) !== false) || (strpos($path, DS . DS) !== false)) {
@@ -1344,7 +1349,8 @@ class Smarty extends Smarty_Internal_TemplateBase
{
if (isset(self::$accessMap[$name])) {
- return $this->{self::$accessMap[$name]}();
+ $method = 'get' . self::$accessMap[$name];
+ return $this->{$method}();
} elseif (in_array($name, self::$obsoleteProperties)) {
return null;
} else {
@@ -1363,7 +1369,8 @@ class Smarty extends Smarty_Internal_TemplateBase
public function __set($name, $value)
{
if (isset(self::$accessMap[$name])) {
- $this->{self::$accessMap[$name]}($value);
+ $method = 'set' . self::$accessMap[$name];
+ $this->{$method}($value);
} elseif (in_array($name, self::$obsoleteProperties)) {
return;
} else {
diff --git a/library/Smarty/libs/sysplugins/smarty_cacheresource.php b/library/Smarty/libs/sysplugins/smarty_cacheresource.php
index 8cd2805a5..14ab62fd9 100644
--- a/library/Smarty/libs/sysplugins/smarty_cacheresource.php
+++ b/library/Smarty/libs/sysplugins/smarty_cacheresource.php
@@ -215,12 +215,9 @@ abstract class Smarty_CacheResource
*/
public function invalidLoadedCache(Smarty $smarty)
{
- if (isset($smarty->_cache['template_objects'])) {
- foreach ($smarty->_cache['template_objects'] as $key => $tpl) {
- if (isset($tpl->cached)) {
- unset ($smarty->_cache['template_objects'][$key]);
- }
- }
+ $smarty->_cache['isCached'] = array();
+ if (isset($smarty->ext->_subtemplate)) {
+ $smarty->ext->_subtemplate->tplObjects = array();
}
}
}
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_compile_block.php b/library/Smarty/libs/sysplugins/smarty_internal_compile_block.php
index 52a541ebd..ab1fc6e00 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_compile_block.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_compile_block.php
@@ -142,7 +142,7 @@ class Smarty_Internal_Compile_Block extends Smarty_Internal_Compile_Shared_Inher
}
$compiler->suppressNocacheProcessing = true;
$compiler->has_code = true;
- $output = "ext->_inheritance->processBlock(\$_smarty_tpl, 3, {$compiler->_cache['blockName'][$compiler->_cache['blockNesting']]}, null, \$_blockParentStack);\n?>\n";
+ $output = "ext->_inheritance->processBlock(\$_smarty_tpl, 4, {$compiler->_cache['blockName'][$compiler->_cache['blockNesting']]}, null, \$_blockParentStack);\n?>\n";
return $output;
}
}
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_compile_capture.php b/library/Smarty/libs/sysplugins/smarty_internal_compile_capture.php
index 95c75a4b1..be45f3e94 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_compile_capture.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_compile_capture.php
@@ -69,13 +69,12 @@ class Smarty_Internal_Compile_Capture extends Smarty_Internal_CompileBase
*/
public static function compileSpecialVariable($args, Smarty_Internal_TemplateCompilerBase $compiler, $parameter)
{
- // make all lower case
- $parameter = array_map('strtolower', $parameter);
- $tag = trim($parameter[0], '"\'');
- if (!isset($parameter[1]) || false === $name = $compiler->getId($parameter[1])) {
+ $tag = strtolower(trim($parameter[ 0 ], '"\''));
+ $name = isset($parameter[ 1 ]) ? $compiler->getId($parameter[ 1 ]) : false;
+ if (!$name) {
$compiler->trigger_template_error("missing or illegal \$smarty.{$tag} name attribute", null, true);
}
- return "isset(\$_smarty_tpl->_cache['__smarty_capture']['{$name}']) ? \$_smarty_tpl->_cache['__smarty_capture']['{$name}'] : null";
+ return "(isset(\$_smarty_tpl->_cache['__smarty_capture']['{$name}']) ? \$_smarty_tpl->_cache['__smarty_capture']['{$name}'] : null)";
}
}
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_compile_foreach.php b/library/Smarty/libs/sysplugins/smarty_internal_compile_foreach.php
index 876ed026a..178a0a52c 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_compile_foreach.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_compile_foreach.php
@@ -59,7 +59,7 @@ class Smarty_Internal_Compile_Foreach extends Smarty_Internal_Compile_Private_Fo
*
* @var array
*/
- public static $nameProperties = array('first', 'last', 'index', 'iteration', 'show', 'total');
+ public $nameProperties = array('first', 'last', 'index', 'iteration', 'show', 'total');
/**
* Valid properties of $item@xxx variable
@@ -183,8 +183,10 @@ class Smarty_Internal_Compile_Foreach extends Smarty_Internal_Compile_Private_Fo
foreach ($saveVars as $k => $code) {
$output .= "{$local}{$k} = {$code}\n";
}
+ if (isset($itemAttr['show']) || isset($itemAttr['total']) || isset($namedAttr['total']) || isset($namedAttr['show']) || isset($itemAttr['last']) || isset($namedAttr['last'])) {
+ $output .= "{$local}total = \$_smarty_tpl->smarty->ext->_foreach->count(\$_from);\n";
+ }
$output .= "{$itemVar} = new Smarty_Variable();\n";
- $output .= "{$local}total = \$_smarty_tpl->smarty->ext->_foreach->count(\$_from);\n";
if (isset($itemAttr['show'])) {
$output .= "{$itemVar}->show = ({$local}total > 0);\n";
}
@@ -210,7 +212,6 @@ class Smarty_Internal_Compile_Foreach extends Smarty_Internal_Compile_Private_Fo
$output .= "{$foreachVar} = new Smarty_Variable({$_vars});\n";
}
}
- $output .= "if ({$local}total) {\n";
if (isset($attributes['key'])) {
$output .= "\$_smarty_tpl->tpl_vars['{$key}'] = new Smarty_Variable();\n";
}
@@ -226,7 +227,9 @@ class Smarty_Internal_Compile_Foreach extends Smarty_Internal_Compile_Private_Fo
if ($needIteration) {
$output .= "{$local}iteration=0;\n";
}
+ $output .= "{$itemVar}->_loop = false;\n";
$output .= "foreach (\$_from as {$keyTerm}{$itemVar}->value) {\n";
+ $output .= "{$itemVar}->_loop = true;\n";
if (isset($attributes['key']) && isset($itemAttr['key'])) {
$output .= "\$_smarty_tpl->tpl_vars['{$key}']->value = {$itemVar}->key;\n";
}
@@ -296,7 +299,7 @@ class Smarty_Internal_Compile_Foreachelse extends Smarty_Internal_CompileBase
$output = "";
+ $output .= "if (!{$itemVar}->_loop) {\n?>";
return $output;
}
}
@@ -332,7 +335,6 @@ class Smarty_Internal_Compile_Foreachclose extends Smarty_Internal_CompileBase
if ($restore) {
$output .= "{$itemVar} = {$local}saved_local_item;\n";
- $output .= "}\n";
}
$output .= "}\n";
foreach ($restoreVars as $restore) {
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_compile_private_foreachsection.php b/library/Smarty/libs/sysplugins/smarty_internal_compile_private_foreachsection.php
index 50c25bdb6..16f233359 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_compile_private_foreachsection.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_compile_private_foreachsection.php
@@ -50,7 +50,7 @@ class Smarty_Internal_Compile_Private_ForeachSection extends Smarty_Internal_Com
*
* @var array
*/
- public static $nameProperties = array();
+ public $nameProperties = array();
/**
* {section} tag has no item properties
@@ -112,8 +112,7 @@ class Smarty_Internal_Compile_Private_ForeachSection extends Smarty_Internal_Com
if ($named) {
$this->resultOffsets['named'] = $this->startOffset + 3;
$this->propertyPreg .= "([\$]smarty[.]{$this->tagName}[.]{$attributes['name']}[.](";
- $className = get_class($this);
- $properties = $className::$nameProperties;
+ $properties = $this->nameProperties;
} else {
$this->resultOffsets['item'] = $this->startOffset + 3;
$this->propertyPreg .= "([\$]{$attributes['item']}[@](";
@@ -204,17 +203,15 @@ class Smarty_Internal_Compile_Private_ForeachSection extends Smarty_Internal_Com
* @return string compiled code
* @throws \SmartyCompilerException
*/
- public static function compileSpecialVariable($args, Smarty_Internal_TemplateCompilerBase $compiler, $parameter)
+ public function compileSpecialVariable($args, Smarty_Internal_TemplateCompilerBase $compiler, $parameter)
{
$tag = strtolower(trim($parameter[ 0 ], '"\''));
$name = isset($parameter[ 1 ]) ? $compiler->getId($parameter[ 1 ]) : false;
if (!$name) {
$compiler->trigger_template_error("missing or illegal \$smarty.{$tag} name attribute", null, true);
}
- /* @var Smarty_Internal_Compile_Foreach|Smarty_Internal_Compile_Section $className */
- $className = 'Smarty_Internal_Compile_' . ucfirst($tag);
$property = isset($parameter[ 2 ]) ? strtolower($compiler->getId($parameter[ 2 ])) : false;
- if (!$property || !in_array($property, $className::$nameProperties)) {
+ if (!$property || !in_array($property, $this->nameProperties)) {
$compiler->trigger_template_error("missing or illegal \$smarty.{$tag} property attribute", null, true);
}
$tagVar = "'__smarty_{$tag}_{$name}'";
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_compile_private_special_variable.php b/library/Smarty/libs/sysplugins/smarty_internal_compile_private_special_variable.php
index 5a8c54faa..b83e824af 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_compile_private_special_variable.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_compile_private_special_variable.php
@@ -29,7 +29,7 @@ class Smarty_Internal_Compile_Private_Special_Variable extends Smarty_Internal_C
public function compile($args, Smarty_Internal_TemplateCompilerBase $compiler, $parameter)
{
$_index = preg_split("/\]\[/", substr($parameter, 1, strlen($parameter) - 2));
- $variable = strtolower($compiler->getId($_index[0]));
+ $variable = strtolower($compiler->getId($_index[ 0 ]));
if ($variable === false) {
$compiler->trigger_template_error("special \$Smarty variable name index can not be variable", null, true);
}
@@ -39,7 +39,11 @@ class Smarty_Internal_Compile_Private_Special_Variable extends Smarty_Internal_C
switch ($variable) {
case 'foreach':
case 'section':
- return Smarty_Internal_Compile_Private_ForeachSection::compileSpecialVariable(array(), $compiler, $_index);
+ if (!isset($compiler->_tag_objects[ $variable ])) {
+ $class = 'Smarty_Internal_Compile_' . ucfirst($variable);
+ $compiler->_tag_objects[ $variable ] = new $class;
+ }
+ return $compiler->_tag_objects[ $variable ]->compileSpecialVariable(array(), $compiler, $_index);
case 'capture':
if (class_exists('Smarty_Internal_Compile_Capture')) {
return Smarty_Internal_Compile_Capture::compileSpecialVariable(array(), $compiler, $_index);
@@ -54,7 +58,8 @@ class Smarty_Internal_Compile_Private_Special_Variable extends Smarty_Internal_C
$compiler->trigger_template_error("(secure mode) super globals not permitted");
break;
}
- return '$_COOKIE';
+ $compiled_ref = '$_COOKIE';
+ break;
case 'get':
case 'post':
case 'env':
@@ -80,9 +85,7 @@ class Smarty_Internal_Compile_Private_Special_Variable extends Smarty_Internal_C
return 'dirname($_smarty_tpl->source->filepath)';
case 'version':
- $_version = Smarty::SMARTY_VERSION;
-
- return "'$_version'";
+ return "Smarty::SMARTY_VERSION";
case 'const':
if (isset($compiler->smarty->security_policy) &&
@@ -91,33 +94,27 @@ class Smarty_Internal_Compile_Private_Special_Variable extends Smarty_Internal_C
$compiler->trigger_template_error("(secure mode) constants not permitted");
break;
}
- if (strpos($_index[1], '$') === false && strpos($_index[1], '\'') === false) {
+ if (strpos($_index[ 1 ], '$') === false && strpos($_index[ 1 ], '\'') === false) {
return "@constant('{$_index[1]}')";
} else {
return "@constant({$_index[1]})";
}
case 'config':
- if (isset($_index[2])) {
- return "(is_array(\$tmp = \$_smarty_tpl->smarty->ext->_config->_getConfigVariable(\$_smarty_tpl, $_index[1])) ? \$tmp[$_index[2]] : null)";
+ if (isset($_index[ 2 ])) {
+ return "(is_array(\$tmp = \$_smarty_tpl->smarty->ext->configload->_getConfigVariable(\$_smarty_tpl, $_index[1])) ? \$tmp[$_index[2]] : null)";
} else {
- return "\$_smarty_tpl->smarty->ext->_config->_getConfigVariable(\$_smarty_tpl, $_index[1])";
+ return "\$_smarty_tpl->smarty->ext->configload->_getConfigVariable(\$_smarty_tpl, $_index[1])";
}
case 'ldelim':
- $_ldelim = $compiler->smarty->left_delimiter;
-
- return "'$_ldelim'";
-
+ return "\$_smarty_tpl->smarty->left_delimiter";
case 'rdelim':
- $_rdelim = $compiler->smarty->right_delimiter;
-
- return "'$_rdelim'";
-
+ return "\$_smarty_tpl->smarty->right_delimiter";
default:
- $compiler->trigger_template_error('$smarty.' . trim($_index[0], "'") . ' is invalid');
+ $compiler->trigger_template_error('$smarty.' . trim($_index[ 0 ], "'") . ' is not defined');
break;
}
- if (isset($_index[1])) {
+ if (isset($_index[ 1 ])) {
array_shift($_index);
foreach ($_index as $_ind) {
$compiled_ref = $compiled_ref . "[$_ind]";
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_compile_section.php b/library/Smarty/libs/sysplugins/smarty_internal_compile_section.php
index 079903c2b..40b297a64 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_compile_section.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_compile_section.php
@@ -59,7 +59,7 @@ class Smarty_Internal_Compile_Section extends Smarty_Internal_Compile_Private_Fo
*
* @var array
*/
- public static $nameProperties = array('first', 'last', 'index', 'iteration', 'show', 'total', 'rownum',
+ public $nameProperties = array('first', 'last', 'index', 'iteration', 'show', 'total', 'rownum',
'index_prev', 'index_next');
/**
@@ -103,7 +103,7 @@ class Smarty_Internal_Compile_Section extends Smarty_Internal_Compile_Private_Fo
// maybe nocache because of nocache variables
$compiler->nocache = $compiler->nocache | $compiler->tag_nocache;
- $initLocal = array('saved' => "isset(\$_smarty_tpl->tpl_vars['__smarty_section_{$attributes['name']}']) ? \$_smarty_tpl->tpl_vars['__section_{$attributes['name']}'] : false",);
+ $initLocal = array('saved' => "isset(\$_smarty_tpl->tpl_vars['__smarty_section_{$attributes['name']}']) ? \$_smarty_tpl->tpl_vars['__smarty_section_{$attributes['name']}'] : false",);
$initNamedProperty = array();
$initFor = array();
$incFor = array();
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_data.php b/library/Smarty/libs/sysplugins/smarty_internal_data.php
index 53f351b41..bba95d303 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_data.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_data.php
@@ -187,6 +187,21 @@ class Smarty_Internal_Data
return $this->ext->getTemplateVars->getTemplateVars($this, $varName, $_ptr, $searchParents);
}
+ /**
+ * gets the object of a Smarty variable
+ *
+ * @param string $variable the name of the Smarty variable
+ * @param Smarty_Internal_Data $_ptr optional pointer to data object
+ * @param boolean $searchParents search also in parent data
+ * @param bool $error_enable
+ *
+ * @return Smarty_Variable|Smarty_Undefined_Variable the object of the variable
+ * @deprecated since 3.1.28 please use Smarty_Internal_Data::getTemplateVars() instead.
+ */
+ public function getVariable($variable = null, Smarty_Internal_Data $_ptr = null, $searchParents = true, $error_enable = true){
+ return $this->ext->getTemplateVars->_getVariable($this, $variable, $_ptr, $searchParents, $error_enable);
+ }
+
/**
* Follow the parent chain an merge template and config variables
*
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_extension_clear.php b/library/Smarty/libs/sysplugins/smarty_internal_extension_clear.php
index c595214d8..00edc5abf 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_extension_clear.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_extension_clear.php
@@ -114,14 +114,6 @@ class Smarty_Internal_Extension_Clear
}
}
}
- // remove from template cache
- if (isset($smarty->_cache['template_objects'])) {
- foreach ($smarty->_cache['template_objects'] as $key => $tpl) {
- if (isset($tpl->cached) && $tpl->cached->filepath == (string) $_file) {
- unset($smarty->_cache['template_objects'][$key]);
- }
- }
- }
$_count += @unlink((string) $_file) ? 1 : 0;
if (function_exists('opcache_invalidate')) {
opcache_invalidate((string) $_file);
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_method_clearallcache.php b/library/Smarty/libs/sysplugins/smarty_internal_method_clearallcache.php
index 1fe37892e..6ae0af15f 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_method_clearallcache.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_method_clearallcache.php
@@ -34,10 +34,7 @@ class Smarty_Internal_Method_ClearAllCache
{
// load cache resource and call clearAll
$_cache_resource = Smarty_CacheResource::load($smarty, $type);
- if ($smarty->caching_type != 'file') {
- $_cache_resource->invalidLoadedCache($smarty);
- }
-
+ $_cache_resource->invalidLoadedCache($smarty);
return $_cache_resource->clearAll($smarty, $exp_time);
}
}
\ No newline at end of file
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_method_clearcache.php b/library/Smarty/libs/sysplugins/smarty_internal_method_clearcache.php
index a923b3ae1..063c57cde 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_method_clearcache.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_method_clearcache.php
@@ -37,10 +37,7 @@ class Smarty_Internal_Method_ClearCache
{
// load cache resource and call clear
$_cache_resource = Smarty_CacheResource::load($smarty, $type);
- if ($smarty->caching_type != 'file' && !isset($template_name)) {
- $_cache_resource->invalidLoadedCache($smarty);
- }
-
+ $_cache_resource->invalidLoadedCache($smarty);
return $_cache_resource->clear($smarty, $template_name, $cache_id, $compile_id, $exp_time);
}
}
\ No newline at end of file
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_method_clearcompiledtemplate.php b/library/Smarty/libs/sysplugins/smarty_internal_method_clearcompiledtemplate.php
index ae1003238..cce8553f5 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_method_clearcompiledtemplate.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_method_clearcompiledtemplate.php
@@ -107,13 +107,6 @@ class Smarty_Internal_Method_ClearCompiledTemplate
}
if ($unlink && @unlink($_filepath)) {
- if (isset($smarty->_cache['template_objects'])) {
- foreach ($smarty->_cache['template_objects'] as $key => $tpl) {
- if (isset($tpl->compiled) && $tpl->compiled->filepath == $_filepath) {
- unset($smarty->_cache['template_objects'][$key]);
- }
- }
- }
$_count ++;
if (function_exists('opcache_invalidate')) {
opcache_invalidate($_filepath);
@@ -121,11 +114,10 @@ class Smarty_Internal_Method_ClearCompiledTemplate
}
}
}
- // clear compiled cache
- if (!isset($resource_name) && isset($smarty->_cache['source_objects'])) {
- foreach ($smarty->_cache['source_objects'] as $source) {
- $source->compileds = array();
- }
+ // clear template objects cache
+ $smarty->_cache['isCached'] = array();
+ if (isset($smarty->ext->_subtemplate)) {
+ $smarty->ext->_subtemplate->tplObjects = array();
}
return $_count;
}
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_method_configload.php b/library/Smarty/libs/sysplugins/smarty_internal_method_configload.php
index ec023ec8f..7b99e35c6 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_method_configload.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_method_configload.php
@@ -162,7 +162,7 @@ class Smarty_Internal_Method_ConfigLoad
*
* @return mixed the value of the config variable
*/
- public function _getConfigVariable(\Smarty_Internal_Template $tpl, $varName, $errorEnable = true)
+ public function _getConfigVariable(Smarty_Internal_Template $tpl, $varName, $errorEnable = true)
{
$_ptr = $tpl;
while ($_ptr !== null) {
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php b/library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php
index 0c0802d62..3d687dca8 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php
@@ -44,7 +44,7 @@ class Smarty_Internal_Resource_Extends extends Smarty_Resource
if ($_s->type == 'php') {
throw new SmartyException("Resource type {$_s->type} cannot be used with the extends resource type");
}
- $sources[$_s->uid] = $_s;
+ $sources[ $_s->uid ] = $_s;
$uid .= $_s->filepath;
if ($_template) {
$exists = $exists && $_s->exists;
@@ -110,4 +110,15 @@ class Smarty_Internal_Resource_Extends extends Smarty_Resource
{
return str_replace(':', '.', basename($source->filepath));
}
+
+ /*
+ * Disable timestamp checks for extends resource.
+ * The individual source components will be checked.
+ *
+ * @return bool
+ */
+ public function checkTimestamps()
+ {
+ return false;
+ }
}
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_runtime_codeframe.php b/library/Smarty/libs/sysplugins/smarty_internal_runtime_codeframe.php
index 21e6e5221..ce6749770 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_runtime_codeframe.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_runtime_codeframe.php
@@ -89,6 +89,6 @@ class Smarty_Internal_Runtime_CodeFrame
$output .= $functions;
$output .= "[\n]?<\?php\s*/', "\n", $output);
+ return preg_replace(array('/\s*\?>[\n]?<\?php\s*/', '/\?>\s*$/'), array("\n", ''), $output);
}
}
\ No newline at end of file
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_runtime_foreach.php b/library/Smarty/libs/sysplugins/smarty_internal_runtime_foreach.php
index 87bb0cf4a..689636adb 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_runtime_foreach.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_runtime_foreach.php
@@ -27,6 +27,9 @@ class Smarty_Internal_Runtime_Foreach
// thus rewind() and valid() methods may not be present
return iterator_count($value->getIterator());
} elseif ($value instanceof Iterator) {
+ if ($value instanceof Generator) {
+ return 1;
+ }
return iterator_count($value);
} elseif ($value instanceof PDOStatement) {
return $value->rowCount();
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_runtime_inheritance.php b/library/Smarty/libs/sysplugins/smarty_internal_runtime_inheritance.php
index ed21281d0..08a560606 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_runtime_inheritance.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_runtime_inheritance.php
@@ -127,8 +127,11 @@ class Smarty_Internal_Runtime_Inheritance
* - search in inheritance template hierarchy for child blocks
* if found call it, otherwise ignore
*
- * $type 3 = {$smarty.block.parent}:
- * - get block id from parent stack and call parent block
+ * $type 3 = {block append} {block prepend}:
+ * - call parent block
+ *
+ * $type 4 = {$smarty.block.parent}:
+ * - call parent block
*
* @param \Smarty_Internal_Template $tpl template object of caller
* @param int $type call type see above
@@ -140,16 +143,22 @@ class Smarty_Internal_Runtime_Inheritance
*/
public function processBlock(Smarty_Internal_Template $tpl, $type = 0, $name, $block, $callStack = array())
{
- if (!isset($this->blockParameter[$name])) {
- $this->blockParameter[$name] = array();
+ if (!isset($this->blockParameter[ $name ])) {
+ $this->blockParameter[ $name ] = array();
}
if ($this->state == 1) {
- $block[2] = count($this->blockParameter[$name]);
- $block[3] = $this->tplIndex;
- $this->blockParameter[$name][] = $block;
+ $block[ 2 ] = count($this->blockParameter[ $name ]);
+ $block[ 3 ] = $this->tplIndex;
+ $this->blockParameter[ $name ][] = $block;
return;
}
if ($type == 3) {
+ if (!empty($callStack)) {
+ $block = array_shift($callStack);
+ } else {
+ return;
+ }
+ } elseif ($type == 4) {
if (!empty($callStack)) {
array_shift($callStack);
if (empty($callStack)) {
@@ -160,23 +169,23 @@ class Smarty_Internal_Runtime_Inheritance
return;
}
} else {
- $blockParameter = &$this->blockParameter[$name];
+ $index = 0;
+ $blockParameter = &$this->blockParameter[ $name ];
if ($type == 0) {
- $index = $block[2] = count($blockParameter);
- $block[3] = $this->tplIndex;
+ $index = $block[ 2 ] = count($blockParameter);
+ $block[ 3 ] = $this->tplIndex;
$callStack = array(&$block);
} elseif ($type == 1) {
- $block[3] = $callStack[0][3];
- $index = 0;
+ $block[ 3 ] = $callStack[ 0 ][ 3 ];
for ($i = 0; $i < count($blockParameter); $i ++) {
- if ($blockParameter[$i][3] <= $block[3]) {
- $index = $blockParameter[$i][2];
+ if ($blockParameter[ $i ][ 3 ] <= $block[ 3 ]) {
+ $index = $blockParameter[ $i ][ 2 ];
}
}
- $block[2] = $index;
+ $block[ 2 ] = $index;
$callStack = array(&$block);
- } else {
- $index = $callStack[0][2];
+ } elseif ($type == 2) {
+ $index = $callStack[ 0 ][ 2 ];
if ($index == 0) {
return;
}
@@ -184,29 +193,40 @@ class Smarty_Internal_Runtime_Inheritance
}
$index --;
// find lowest level child block
- while ($index >= 0 && ($type || !$block[1])) {
- $block = &$blockParameter[$index];
+ while ($index >= 0 && ($type || !$block[ 1 ])) {
+ $block = &$blockParameter[ $index ];
array_unshift($callStack, $block);
- if ($block[1]) {
+ if ($block[ 1 ]) {
break;
}
$index --;
}
- if (isset($block['hide']) && $index <= 0) {
+ if (isset($block[ 'hide' ]) && $index <= 0) {
return;
}
}
$this->blockNesting ++;
- if (isset($block['append'])) {
- $this->processBlock($tpl, 3, $name, null, $callStack);
+ // {block append} ?
+ if (isset($block[ 'append' ])) {
+ $appendStack = $callStack;
+ if ($type == 0) {
+ array_shift($appendStack);
+ }
+ $this->processBlock($tpl, 3, $name, null, $appendStack);
}
+ // call block of current stack level
if (isset($block[6])) {
$block[6]($tpl, $callStack);
} else {
$block[0]($tpl, $callStack);
}
- if (isset($block['prepend'])) {
- $this->processBlock($tpl, 3, $name, null, $callStack);
+ // {block prepend} ?
+ if (isset($block[ 'prepend' ])) {
+ $prependStack = $callStack;
+ if ($type == 0) {
+ array_shift($prependStack);
+ }
+ $this->processBlock($tpl, 3, $name, null, $prependStack);
}
$this->blockNesting --;
}
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_runtime_tplfunction.php b/library/Smarty/libs/sysplugins/smarty_internal_runtime_tplfunction.php
index cc529c633..634ed5dc6 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_runtime_tplfunction.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_runtime_tplfunction.php
@@ -20,7 +20,7 @@ class Smarty_Internal_Runtime_TplFunction
*
* @throws \SmartyException
*/
- public function callTemplateFunction(\Smarty_Internal_Template $tpl, $name, $params, $nocache)
+ public function callTemplateFunction(Smarty_Internal_Template $tpl, $name, $params, $nocache)
{
if (isset($tpl->tpl_function[$name])) {
if (!$tpl->caching || ($tpl->caching && $nocache)) {
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_runtime_updatecache.php b/library/Smarty/libs/sysplugins/smarty_internal_runtime_updatecache.php
index 73de954f3..a895a3070 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_runtime_updatecache.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_runtime_updatecache.php
@@ -73,7 +73,7 @@ class Smarty_Internal_Runtime_UpdateCache
/**
* Cache was invalid , so render from compiled and write to cache
- *
+ *
* @param \Smarty_Template_Cached $cached
* @param \Smarty_Internal_Template $_template
* @param $no_output_filter
@@ -129,20 +129,6 @@ class Smarty_Internal_Runtime_UpdateCache
return false;
}
$content = $_template->smarty->ext->_codeFrame->create($_template, $content, '', true);
- if (!empty($_template->cached->tpl_function)) {
- foreach ($_template->cached->tpl_function as $funcParam) {
- if (is_file($funcParam['compiled_filepath'])) {
- // read compiled file
- $code = file_get_contents($funcParam['compiled_filepath']);
- // grab template function
- if (preg_match("/\/\* {$funcParam['call_name']} \*\/([\S\s]*?)\/\*\/ {$funcParam['call_name']} \*\//",
- $code, $match)) {
- unset($code);
- $content .= "\n";
- }
- }
- }
- }
return $this->write($cached, $_template, $content);
}
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_runtime_updatescope.php b/library/Smarty/libs/sysplugins/smarty_internal_runtime_updatescope.php
index 3d80c859a..5a125a4a7 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_runtime_updatescope.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_runtime_updatescope.php
@@ -17,7 +17,7 @@ class Smarty_Internal_Runtime_UpdateScope
* @param string $varName variable name
* @param int $scope scope to which bubble up variable value
*/
- public function updateScope(\Smarty_Internal_Template $tpl, $varName, $scope = Smarty::SCOPE_LOCAL)
+ public function updateScope(Smarty_Internal_Template $tpl, $varName, $scope = Smarty::SCOPE_LOCAL)
{
if (!$scope && !$tpl->scope) {
return;
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_runtime_validatecompiled.php b/library/Smarty/libs/sysplugins/smarty_internal_runtime_validatecompiled.php
index 6624eb0bf..7defd6c92 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_runtime_validatecompiled.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_runtime_validatecompiled.php
@@ -43,8 +43,13 @@ class Smarty_Internal_Runtime_ValidateCompiled
} elseif ($_file_to_check[2] == 'string') {
continue;
} else {
- $source = Smarty_Template_Source::load(null, $tpl->smarty, $_file_to_check[0]);
- $mtime = $source->getTimeStamp();
+ $handler = Smarty_Resource::load($tpl->smarty, $_file_to_check[2]);
+ if ($handler->checkTimestamps()) {
+ $source = Smarty_Template_Source::load($tpl, $tpl->smarty, $_file_to_check[ 0 ]);
+ $mtime = $source->getTimeStamp();
+ } else {
+ continue;
+ }
}
if (!$mtime || $mtime > $_file_to_check[1]) {
$is_valid = false;
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_runtime_var.php b/library/Smarty/libs/sysplugins/smarty_internal_runtime_var.php
index fe4f94d91..8e09108fe 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_runtime_var.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_runtime_var.php
@@ -17,7 +17,7 @@ class Smarty_Internal_Runtime_Var
* @param string $varName template variable name
* @param bool $nocache cache mode of variable
*/
- public function createLocalArrayVariable(\Smarty_Internal_Template $tpl, $varName, $nocache = false)
+ public function createLocalArrayVariable(Smarty_Internal_Template $tpl, $varName, $nocache = false)
{
if (!isset($tpl->tpl_vars[$varName])) {
$tpl->tpl_vars[$varName] = new Smarty_Variable(array(), $nocache);
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php b/library/Smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php
index 04584a40f..6c3ea5f5d 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php
@@ -328,7 +328,8 @@ abstract class Smarty_Internal_TemplateCompilerBase
$this->compileTemplateSource($template, $nocache,
$parent_compiler),
$this->postFilter($this->blockOrFunctionCode) .
- join('', $this->mergedSubTemplatesCode), false, $this);
+ join('', $this->mergedSubTemplatesCode), false,
+ $this);
return $_compiled_code;
}
@@ -374,7 +375,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
$this->has_variable_string = false;
$this->prefix_code = array();
// add file dependency
- $this->parent_compiler->template->compiled->file_dependency[$this->template->source->uid] =
+ $this->parent_compiler->template->compiled->file_dependency[ $this->template->source->uid ] =
array($this->template->source->filepath, $this->template->source->getTimeStamp(),
$this->template->source->type);
$this->smarty->_current_file = $this->template->source->filepath;
@@ -423,7 +424,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
{
// run post filter if on code
if (!empty($code) &&
- (isset($this->smarty->autoload_filters['post']) || isset($this->smarty->registered_filters['post']))
+ (isset($this->smarty->autoload_filters[ 'post' ]) || isset($this->smarty->registered_filters[ 'post' ]))
) {
return $this->smarty->ext->_filterHandler->runFilter('post', $code, $this->template);
} else {
@@ -443,7 +444,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
{
// run pre filter if required
if ($_content != '' &&
- ((isset($this->smarty->autoload_filters['pre']) || isset($this->smarty->registered_filters['pre'])))
+ ((isset($this->smarty->autoload_filters[ 'pre' ]) || isset($this->smarty->registered_filters[ 'pre' ])))
) {
return $this->smarty->ext->_filterHandler->runFilter('pre', $_content, $this->template);
} else {
@@ -496,8 +497,8 @@ abstract class Smarty_Internal_TemplateCompilerBase
$this->has_code = true;
$this->has_output = false;
// log tag/attributes
- if (isset($this->smarty->_cache['get_used_tags'])) {
- $this->template->_cache['used_tags'][] = array($tag, $args);
+ if (isset($this->smarty->_cache[ 'get_used_tags' ])) {
+ $this->template->_cache[ 'used_tags' ][] = array($tag, $args);
}
// check nocache option flag
if (in_array("'nocache'", $args) || in_array(array('nocache' => 'true'), $args) ||
@@ -507,9 +508,9 @@ abstract class Smarty_Internal_TemplateCompilerBase
}
// compile the smarty tag (required compile classes to compile the tag are auto loaded)
if (($_output = $this->callTagCompiler($tag, $args, $parameter)) === false) {
- if (isset($this->parent_compiler->template->tpl_function[$tag])) {
+ if (isset($this->parent_compiler->template->tpl_function[ $tag ])) {
// template defined by {template} tag
- $args['_attr']['name'] = "'" . $tag . "'";
+ $args[ '_attr' ][ 'name' ] = "'" . $tag . "'";
$_output = $this->callTagCompiler('call', $args, $parameter);
}
}
@@ -529,8 +530,8 @@ abstract class Smarty_Internal_TemplateCompilerBase
return null;
} else {
// map_named attributes
- if (isset($args['_attr'])) {
- foreach ($args['_attr'] as $key => $attribute) {
+ if (isset($args[ '_attr' ])) {
+ foreach ($args[ '_attr' ] as $key => $attribute) {
if (is_array($attribute)) {
$args = array_merge($args, $attribute);
}
@@ -539,14 +540,14 @@ abstract class Smarty_Internal_TemplateCompilerBase
// not an internal compiler tag
if (strlen($tag) < 6 || substr($tag, - 5) != 'close') {
// check if tag is a registered object
- if (isset($this->smarty->registered_objects[$tag]) && isset($parameter['object_method'])) {
- $method = $parameter['object_method'];
- if (!in_array($method, $this->smarty->registered_objects[$tag][3]) &&
- (empty($this->smarty->registered_objects[$tag][1]) ||
- in_array($method, $this->smarty->registered_objects[$tag][1]))
+ if (isset($this->smarty->registered_objects[ $tag ]) && isset($parameter[ 'object_method' ])) {
+ $method = $parameter[ 'object_method' ];
+ if (!in_array($method, $this->smarty->registered_objects[ $tag ][ 3 ]) &&
+ (empty($this->smarty->registered_objects[ $tag ][ 1 ]) ||
+ in_array($method, $this->smarty->registered_objects[ $tag ][ 1 ]))
) {
return $this->callTagCompiler('private_object_function', $args, $parameter, $tag, $method);
- } elseif (in_array($method, $this->smarty->registered_objects[$tag][3])) {
+ } elseif (in_array($method, $this->smarty->registered_objects[ $tag ][ 3 ])) {
return $this->callTagCompiler('private_object_block_function', $args, $parameter, $tag,
$method);
} else {
@@ -558,7 +559,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
// check if tag is registered
foreach (array(Smarty::PLUGIN_COMPILER, Smarty::PLUGIN_FUNCTION, Smarty::PLUGIN_BLOCK) as $plugin_type)
{
- if (isset($this->smarty->registered_plugins[$plugin_type][$tag])) {
+ if (isset($this->smarty->registered_plugins[ $plugin_type ][ $tag ])) {
// if compiler function plugin call it now
if ($plugin_type == Smarty::PLUGIN_COMPILER) {
$new_args = array();
@@ -566,18 +567,18 @@ abstract class Smarty_Internal_TemplateCompilerBase
if (is_array($mixed)) {
$new_args = array_merge($new_args, $mixed);
} else {
- $new_args[$key] = $mixed;
+ $new_args[ $key ] = $mixed;
}
}
- if (!$this->smarty->registered_plugins[$plugin_type][$tag][1]) {
+ if (!$this->smarty->registered_plugins[ $plugin_type ][ $tag ][ 1 ]) {
$this->tag_nocache = true;
}
- $function = $this->smarty->registered_plugins[$plugin_type][$tag][0];
+ $function = $this->smarty->registered_plugins[ $plugin_type ][ $tag ][ 0 ];
if (!is_array($function)) {
return $function($new_args, $this);
- } elseif (is_object($function[0])) {
- return $this->smarty->registered_plugins[$plugin_type][$tag][0][0]->{$function[1]}($new_args,
- $this);
+ } elseif (is_object($function[ 0 ])) {
+ return $this->smarty->registered_plugins[ $plugin_type ][ $tag ][ 0 ][ 0 ]->{$function[ 1 ]}($new_args,
+ $this);
} else {
return call_user_func_array($function, array($new_args, $this));
}
@@ -604,7 +605,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
if (is_array($mixed)) {
$new_args = array_merge($new_args, $mixed);
} else {
- $new_args[$key] = $mixed;
+ $new_args[ $key ] = $mixed;
}
}
@@ -632,7 +633,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
$found = false;
// look for already resolved tags
foreach ($this->plugin_search_order as $plugin_type) {
- if (isset($this->default_handler_plugins[$plugin_type][$tag])) {
+ if (isset($this->default_handler_plugins[ $plugin_type ][ $tag ])) {
$found = true;
break;
}
@@ -653,12 +654,12 @@ abstract class Smarty_Internal_TemplateCompilerBase
foreach ($args as $mixed) {
$new_args = array_merge($new_args, $mixed);
}
- $function = $this->default_handler_plugins[$plugin_type][$tag][0];
+ $function = $this->default_handler_plugins[ $plugin_type ][ $tag ][ 0 ];
if (!is_array($function)) {
return $function($new_args, $this);
- } elseif (is_object($function[0])) {
- return $this->default_handler_plugins[$plugin_type][$tag][0][0]->$function[1]($new_args,
- $this);
+ } elseif (is_object($function[ 0 ])) {
+ return $this->default_handler_plugins[ $plugin_type ][ $tag ][ 0 ][ 0 ]->$function[ 1 ]($new_args,
+ $this);
} else {
return call_user_func_array($function, array($new_args, $this));
}
@@ -672,9 +673,9 @@ abstract class Smarty_Internal_TemplateCompilerBase
// compile closing tag of block function
$base_tag = substr($tag, 0, - 5);
// check if closing tag is a registered object
- if (isset($this->smarty->registered_objects[$base_tag]) && isset($parameter['object_method'])) {
- $method = $parameter['object_method'];
- if (in_array($method, $this->smarty->registered_objects[$base_tag][3])) {
+ if (isset($this->smarty->registered_objects[ $base_tag ]) && isset($parameter[ 'object_method' ])) {
+ $method = $parameter[ 'object_method' ];
+ if (in_array($method, $this->smarty->registered_objects[ $base_tag ][ 3 ])) {
return $this->callTagCompiler('private_object_block_function', $args, $parameter, $tag,
$method);
} else {
@@ -684,13 +685,13 @@ abstract class Smarty_Internal_TemplateCompilerBase
}
}
// registered block tag ?
- if (isset($this->smarty->registered_plugins[Smarty::PLUGIN_BLOCK][$base_tag]) ||
- isset($this->default_handler_plugins[Smarty::PLUGIN_BLOCK][$base_tag])
+ if (isset($this->smarty->registered_plugins[ Smarty::PLUGIN_BLOCK ][ $base_tag ]) ||
+ isset($this->default_handler_plugins[ Smarty::PLUGIN_BLOCK ][ $base_tag ])
) {
return $this->callTagCompiler('private_registered_block', $args, $parameter, $tag);
}
// registered function tag ?
- if (isset($this->smarty->registered_plugins[Smarty::PLUGIN_FUNCTION][$tag])) {
+ if (isset($this->smarty->registered_plugins[ Smarty::PLUGIN_FUNCTION ][ $tag ])) {
return $this->callTagCompiler('private_registered_function', $args, $parameter, $tag);
}
// block plugin?
@@ -706,18 +707,18 @@ abstract class Smarty_Internal_TemplateCompilerBase
}
}
// registered compiler plugin ?
- if (isset($this->smarty->registered_plugins[Smarty::PLUGIN_COMPILER][$tag])) {
+ if (isset($this->smarty->registered_plugins[ Smarty::PLUGIN_COMPILER ][ $tag ])) {
// if compiler function plugin call it now
$args = array();
- if (!$this->smarty->registered_plugins[Smarty::PLUGIN_COMPILER][$tag][1]) {
+ if (!$this->smarty->registered_plugins[ Smarty::PLUGIN_COMPILER ][ $tag ][ 1 ]) {
$this->tag_nocache = true;
}
- $function = $this->smarty->registered_plugins[Smarty::PLUGIN_COMPILER][$tag][0];
+ $function = $this->smarty->registered_plugins[ Smarty::PLUGIN_COMPILER ][ $tag ][ 0 ];
if (!is_array($function)) {
return $function($args, $this);
- } elseif (is_object($function[0])) {
- return $this->smarty->registered_plugins[Smarty::PLUGIN_COMPILER][$tag][0][0]->$function[1]($args,
- $this);
+ } elseif (is_object($function[ 0 ])) {
+ return $this->smarty->registered_plugins[ Smarty::PLUGIN_COMPILER ][ $tag ][ 0 ][ 0 ]->$function[ 1 ]($args,
+ $this);
} else {
return call_user_func_array($function, array($args, $this));
}
@@ -783,58 +784,57 @@ abstract class Smarty_Internal_TemplateCompilerBase
*/
public function processText($text)
{
- $store = array();
- $_store = 0;
- $_offset = 0;
- if ($this->parser->strip) {
- if (strpos($text, '<') !== false) {
- // capture html elements not to be messed with
- $_offset = 0;
- if (preg_match_all('#(]*>)|(]*>)|(]*>.*? ]*>)#is',
- $text, $matches, PREG_OFFSET_CAPTURE | PREG_SET_ORDER)) {
- foreach ($matches as $match) {
- $store[] = $match[ 0 ][ 0 ];
- $_length = strlen($match[ 0 ][ 0 ]);
- $replace = '@!@SMARTY:' . $_store . ':SMARTY@!@';
- $text = substr_replace($text, $replace, $match[ 0 ][ 1 ] - $_offset, $_length);
-
- $_offset += $_length - strlen($replace);
- $_store ++;
+ if ((string) $text != '') {
+ $store = array();
+ $_store = 0;
+ $_offset = 0;
+ if ($this->parser->strip) {
+ if (strpos($text, '<') !== false) {
+ // capture html elements not to be messed with
+ $_offset = 0;
+ if (preg_match_all('#(]*>)|(]*>)|(]*>.*? ]*>)#is',
+ $text, $matches, PREG_OFFSET_CAPTURE | PREG_SET_ORDER)) {
+ foreach ($matches as $match) {
+ $store[] = $match[ 0 ][ 0 ];
+ $_length = strlen($match[ 0 ][ 0 ]);
+ $replace = '@!@SMARTY:' . $_store . ':SMARTY@!@';
+ $text = substr_replace($text, $replace, $match[ 0 ][ 1 ] - $_offset, $_length);
+
+ $_offset += $_length - strlen($replace);
+ $_store ++;
+ }
}
- }
- $expressions = array(// replace multiple spaces between tags by a single space
- // can't remove them entirely, becaue that might break poorly implemented CSS display:inline-block elements
- '#(:SMARTY@!@|>)\s+(?=@!@SMARTY:|<)#s' => '\1 \2',
- // remove spaces between attributes (but not in attribute values!)
- '#(([a-z0-9]\s*=\s*("[^"]*?")|(\'[^\']*?\'))|<[a-z0-9_]+)\s+([a-z/>])#is' => '\1 \5',
- '#^\s+<#Ss' => '<',
- '#>\s+$#Ss' => '>',
- $this->stripRegEx => ''
- );
-
- $text = preg_replace(array_keys($expressions), array_values($expressions), $text);
- $_offset = 0;
- if (preg_match_all('#@!@SMARTY:([0-9]+):SMARTY@!@#is', $text, $matches,
- PREG_OFFSET_CAPTURE | PREG_SET_ORDER)) {
- foreach ($matches as $match) {
- $_length = strlen($match[ 0 ][ 0 ]);
- $replace = $store[ $match[ 1 ][ 0 ] ];
- $text = substr_replace($text, $replace, $match[ 0 ][ 1 ] + $_offset, $_length);
-
- $_offset += strlen($replace) - $_length;
- $_store ++;
+ $expressions = array(// replace multiple spaces between tags by a single space
+ // can't remove them entirely, becaue that might break poorly implemented CSS display:inline-block elements
+ '#(:SMARTY@!@|>)\s+(?=@!@SMARTY:|<)#s' => '\1 \2',
+ // remove spaces between attributes (but not in attribute values!)
+ '#(([a-z0-9]\s*=\s*("[^"]*?")|(\'[^\']*?\'))|<[a-z0-9_]+)\s+([a-z/>])#is' => '\1 \5',
+ '#^\s+<#Ss' => '<',
+ '#>\s+$#Ss' => '>',
+ $this->stripRegEx => '');
+
+ $text = preg_replace(array_keys($expressions), array_values($expressions), $text);
+ $_offset = 0;
+ if (preg_match_all('#@!@SMARTY:([0-9]+):SMARTY@!@#is', $text, $matches,
+ PREG_OFFSET_CAPTURE | PREG_SET_ORDER)) {
+ foreach ($matches as $match) {
+ $_length = strlen($match[ 0 ][ 0 ]);
+ $replace = $store[ $match[ 1 ][ 0 ] ];
+ $text = substr_replace($text, $replace, $match[ 0 ][ 1 ] + $_offset, $_length);
+
+ $_offset += strlen($replace) - $_length;
+ $_store ++;
+ }
}
+ } else {
+ $text = preg_replace($this->stripRegEx, '', $text);
}
- } else {
- $text = preg_replace($this->stripRegEx, '', $text);
}
- }
- if ($text) {
return new Smarty_Internal_ParseTree_Text($text);
}
return null;
- }
+ }
/**
* lazy loads internal compile plugin for tag and calls the compile method
@@ -853,7 +853,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
public function callTagCompiler($tag, $args, $param1 = null, $param2 = null, $param3 = null)
{
// re-use object if already exists
- if (!isset($this->_tag_objects[$tag])) {
+ if (!isset($this->_tag_objects[ $tag ])) {
// lazy load internal compiler plugin
$_tag = explode('_', $tag);
$_tag = array_map('ucfirst', $_tag);
@@ -861,15 +861,15 @@ abstract class Smarty_Internal_TemplateCompilerBase
if (class_exists($class_name) &&
(!isset($this->smarty->security_policy) || $this->smarty->security_policy->isTrustedTag($tag, $this))
) {
- $this->_tag_objects[$tag] = new $class_name;
+ $this->_tag_objects[ $tag ] = new $class_name;
} else {
- $this->_tag_objects[$tag] = false;
+ $this->_tag_objects[ $tag ] = false;
return false;
}
}
// compile this tag
- return $this->_tag_objects[$tag] === false ? false :
- $this->_tag_objects[$tag]->compile($args, $this, $param1, $param2, $param3);
+ return $this->_tag_objects[ $tag ] === false ? false :
+ $this->_tag_objects[ $tag ]->compile($args, $this, $param1, $param2, $param3);
}
/**
@@ -884,29 +884,29 @@ abstract class Smarty_Internal_TemplateCompilerBase
{
$function = null;
if ($this->template->caching && ($this->nocache || $this->tag_nocache)) {
- if (isset($this->parent_compiler->template->compiled->required_plugins['nocache'][$plugin_name][$plugin_type])) {
+ if (isset($this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $plugin_name ][ $plugin_type ])) {
$function =
- $this->parent_compiler->template->compiled->required_plugins['nocache'][$plugin_name][$plugin_type]['function'];
- } elseif (isset($this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name][$plugin_type])) {
- $this->parent_compiler->template->compiled->required_plugins['nocache'][$plugin_name][$plugin_type] =
- $this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name][$plugin_type];
+ $this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $plugin_name ][ $plugin_type ][ 'function' ];
+ } elseif (isset($this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ $plugin_type ])) {
+ $this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $plugin_name ][ $plugin_type ] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ $plugin_type ];
$function =
- $this->parent_compiler->template->compiled->required_plugins['nocache'][$plugin_name][$plugin_type]['function'];
+ $this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $plugin_name ][ $plugin_type ][ 'function' ];
}
} else {
- if (isset($this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name][$plugin_type])) {
+ if (isset($this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ $plugin_type ])) {
$function =
- $this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name][$plugin_type]['function'];
- } elseif (isset($this->parent_compiler->template->compiled->required_plugins['nocache'][$plugin_name][$plugin_type])) {
- $this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name][$plugin_type] =
- $this->parent_compiler->template->compiled->required_plugins['nocache'][$plugin_name][$plugin_type];
+ $this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ $plugin_type ][ 'function' ];
+ } elseif (isset($this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $plugin_name ][ $plugin_type ])) {
+ $this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ $plugin_type ] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $plugin_name ][ $plugin_type ];
$function =
- $this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name][$plugin_type]['function'];
+ $this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ $plugin_type ][ 'function' ];
}
}
if (isset($function)) {
if ($plugin_type == 'modifier') {
- $this->modifier_plugins[$plugin_name] = true;
+ $this->modifier_plugins[ $plugin_name ] = true;
}
return $function;
@@ -917,18 +917,18 @@ abstract class Smarty_Internal_TemplateCompilerBase
if (is_string($file)) {
if ($this->template->caching && ($this->nocache || $this->tag_nocache)) {
- $this->parent_compiler->template->compiled->required_plugins['nocache'][$plugin_name][$plugin_type]['file'] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $plugin_name ][ $plugin_type ][ 'file' ] =
$file;
- $this->parent_compiler->template->compiled->required_plugins['nocache'][$plugin_name][$plugin_type]['function'] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $plugin_name ][ $plugin_type ][ 'function' ] =
$function;
} else {
- $this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name][$plugin_type]['file'] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ $plugin_type ][ 'file' ] =
$file;
- $this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name][$plugin_type]['function'] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ $plugin_type ][ 'function' ] =
$function;
}
if ($plugin_type == 'modifier') {
- $this->modifier_plugins[$plugin_name] = true;
+ $this->modifier_plugins[ $plugin_name ] = true;
}
return $function;
@@ -961,14 +961,14 @@ abstract class Smarty_Internal_TemplateCompilerBase
if ($script !== null) {
if (is_file($script)) {
if ($this->template->caching && ($this->nocache || $this->tag_nocache)) {
- $this->parent_compiler->template->compiled->required_plugins['nocache'][$tag][$plugin_type]['file'] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $tag ][ $plugin_type ][ 'file' ] =
$script;
- $this->parent_compiler->template->compiled->required_plugins['nocache'][$tag][$plugin_type]['function'] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $tag ][ $plugin_type ][ 'function' ] =
$callback;
} else {
- $this->parent_compiler->template->compiled->required_plugins['compiled'][$tag][$plugin_type]['file'] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $tag ][ $plugin_type ][ 'file' ] =
$script;
- $this->parent_compiler->template->compiled->required_plugins['compiled'][$tag][$plugin_type]['function'] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $tag ][ $plugin_type ][ 'function' ] =
$callback;
}
require_once $script;
@@ -976,11 +976,13 @@ abstract class Smarty_Internal_TemplateCompilerBase
$this->trigger_template_error("Default plugin handler: Returned script file \"{$script}\" for \"{$tag}\" not found");
}
}
- if (!is_string($callback) && !(is_array($callback) && is_string($callback[0]) && is_string($callback[1]))) {
+ if (!is_string($callback) &&
+ !(is_array($callback) && is_string($callback[ 0 ]) && is_string($callback[ 1 ]))
+ ) {
$this->trigger_template_error("Default plugin handler: Returned callback for \"{$tag}\" must be a static function name or array of class and function name");
}
if (is_callable($callback)) {
- $this->default_handler_plugins[$plugin_type][$tag] = array($callback, true, array());
+ $this->default_handler_plugins[ $plugin_type ][ $tag ] = array($callback, true, array());
return true;
} else {
@@ -1036,9 +1038,9 @@ abstract class Smarty_Internal_TemplateCompilerBase
"/*/%%SmartyNocache:{$this->nocache_hash}%%*/';?>\n";
// make sure we include modifier plugins for nocache code
foreach ($this->modifier_plugins as $plugin_name => $dummy) {
- if (isset($this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name]['modifier'])) {
- $this->parent_compiler->template->compiled->required_plugins['nocache'][$plugin_name]['modifier'] =
- $this->parent_compiler->template->compiled->required_plugins['compiled'][$plugin_name]['modifier'];
+ if (isset($this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ 'modifier' ])) {
+ $this->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ $plugin_name ][ 'modifier' ] =
+ $this->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ $plugin_name ][ 'modifier' ];
}
}
} else {
@@ -1064,7 +1066,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
public function getId($input)
{
if (preg_match('~^[\'"]*([0-9]*[a-zA-Z_]\w*)[\'"]*$~', $input, $match)) {
- return $match[1];
+ return $match[ 1 ];
}
return false;
}
@@ -1079,7 +1081,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
public function getVariableName($input)
{
if (preg_match('~^[$]_smarty_tpl->tpl_vars\[[\'"]*([0-9]*[a-zA-Z_]\w*)[\'"]*\]->value$~', $input, $match)) {
- return $match[1];
+ return $match[ 1 ];
}
return false;
}
@@ -1136,7 +1138,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
$error_text =
'Syntax error in template "' . (empty($this->trace_filepath) ? $templateName : $this->trace_filepath) .
'" on line ' . ($line + $this->trace_line_offset) . ' "' .
- trim(preg_replace('![\t\r\n]+!', ' ', $match[$line - 1])) . '" ';
+ trim(preg_replace('![\t\r\n]+!', ' ', $match[ $line - 1 ])) . '" ';
if (isset($args)) {
// individual error message
$error_text .= $args;
@@ -1146,13 +1148,13 @@ abstract class Smarty_Internal_TemplateCompilerBase
$error_text .= ' - Unexpected "' . $lex->value . '"';
if (count($this->parser->yy_get_expected_tokens($this->parser->yymajor)) <= 4) {
foreach ($this->parser->yy_get_expected_tokens($this->parser->yymajor) as $token) {
- $exp_token = $this->parser->yyTokenName[$token];
- if (isset($lex->smarty_token_names[$exp_token])) {
+ $exp_token = $this->parser->yyTokenName[ $token ];
+ if (isset($lex->smarty_token_names[ $exp_token ])) {
// token type from lexer
- $expect[] = '"' . $lex->smarty_token_names[$exp_token] . '"';
+ $expect[] = '"' . $lex->smarty_token_names[ $exp_token ] . '"';
} else {
// otherwise internal token name
- $expect[] = $this->parser->yyTokenName[$token];
+ $expect[] = $this->parser->yyTokenName[ $token ];
}
}
$error_text .= ', expected one of: ' . implode(' , ', $expect);
@@ -1160,7 +1162,7 @@ abstract class Smarty_Internal_TemplateCompilerBase
}
$e = new SmartyCompilerException($error_text);
$e->line = $line;
- $e->source = trim(preg_replace('![\t\r\n]+!', ' ', $match[$line - 1]));
+ $e->source = trim(preg_replace('![\t\r\n]+!', ' ', $match[ $line - 1 ]));
$e->desc = $args;
$e->template = $this->template->source->filepath;
throw $e;
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_templateparser.php b/library/Smarty/libs/sysplugins/smarty_internal_templateparser.php
index 57dbf61a3..a745d1dc2 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_templateparser.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_templateparser.php
@@ -28,18 +28,18 @@ class TP_yyToken implements ArrayAccess
public function offsetExists($offset)
{
- return isset($this->metadata[$offset]);
+ return isset($this->metadata[ $offset ]);
}
public function offsetGet($offset)
{
- return $this->metadata[$offset];
+ return $this->metadata[ $offset ];
}
public function offsetSet($offset, $value)
{
if ($offset === null) {
- if (isset($value[0])) {
+ if (isset($value[ 0 ])) {
$x = ($value instanceof TP_yyToken) ? $value->metadata : $value;
$this->metadata = array_merge($this->metadata, $x);
@@ -52,16 +52,16 @@ class TP_yyToken implements ArrayAccess
}
if ($value instanceof TP_yyToken) {
if ($value->metadata) {
- $this->metadata[$offset] = $value->metadata;
+ $this->metadata[ $offset ] = $value->metadata;
}
} elseif ($value) {
- $this->metadata[$offset] = $value;
+ $this->metadata[ $offset ] = $value;
}
}
public function offsetUnset($offset)
{
- unset($this->metadata[$offset]);
+ unset($this->metadata[ $offset ]);
}
}
@@ -382,291 +382,282 @@ class Smarty_Internal_Templateparser
const TP_BACKTICK = 59;
- const YY_NO_ACTION = 535;
-
- const YY_ACCEPT_ACTION = 534;
-
- const YY_ERROR_ACTION = 533;
-
- const YY_SZ_ACTTAB = 2082;
-
- static public $yy_action = array(278, 8, 134, 451, 281, 68, 207, 7, 85, 248, 29, 98, 168, 114, 252, 451, 367, 230,
- 315, 245, 235, 249, 233, 36, 28, 145, 38, 42, 140, 36, 27, 39, 41, 322, 222, 300,
- 27, 213, 195, 82, 1, 31, 265, 92, 164, 181, 53, 278, 8, 133, 97, 281, 201, 249, 7,
- 85, 35, 307, 35, 307, 114, 226, 227, 215, 230, 108, 245, 235, 265, 208, 195, 28,
- 195, 5, 42, 184, 268, 277, 39, 41, 322, 222, 218, 258, 213, 120, 82, 1, 333, 265,
- 181, 175, 3, 53, 278, 8, 135, 105, 281, 206, 249, 7, 85, 35, 307, 207, 24, 114, 16,
- 103, 305, 230, 17, 245, 235, 404, 233, 195, 28, 288, 15, 42, 96, 265, 20, 39, 41,
- 322, 222, 300, 404, 213, 450, 82, 1, 6, 265, 404, 52, 113, 53, 278, 8, 135, 450,
- 281, 206, 289, 7, 85, 261, 463, 228, 244, 114, 122, 296, 463, 230, 102, 245, 235,
- 236, 198, 182, 28, 262, 122, 42, 143, 274, 102, 39, 41, 322, 222, 300, 33, 213,
- 314, 82, 1, 274, 265, 207, 86, 311, 53, 278, 8, 136, 195, 281, 206, 362, 7, 85,
- 283, 285, 287, 229, 114, 33, 228, 309, 230, 326, 245, 235, 36, 233, 291, 28, 479,
- 479, 42, 27, 147, 479, 39, 41, 322, 222, 300, 159, 213, 249, 82, 1, 193, 265, 94,
- 169, 249, 53, 278, 8, 135, 251, 281, 197, 249, 7, 85, 248, 29, 91, 150, 114, 252,
- 193, 479, 230, 207, 245, 235, 249, 233, 195, 28, 288, 191, 42, 407, 450, 207, 39,
- 41, 322, 222, 300, 179, 213, 195, 82, 1, 450, 265, 407, 52, 249, 53, 278, 8, 135,
- 407, 281, 204, 195, 7, 85, 313, 251, 93, 155, 114, 226, 225, 12, 230, 108, 245,
- 235, 249, 233, 247, 28, 479, 479, 42, 282, 189, 479, 39, 41, 322, 222, 300, 161,
- 213, 195, 82, 1, 25, 265, 103, 177, 249, 53, 278, 8, 132, 142, 281, 206, 249, 7,
- 85, 195, 244, 34, 249, 114, 103, 193, 103, 230, 251, 245, 235, 207, 233, 289, 4,
- 237, 113, 42, 228, 146, 138, 39, 41, 322, 222, 300, 10, 213, 249, 82, 1, 148, 265,
- 251, 113, 99, 53, 278, 8, 137, 251, 281, 206, 288, 7, 85, 294, 103, 186, 246, 114,
- 237, 335, 33, 230, 319, 245, 235, 329, 233, 255, 23, 52, 331, 42, 188, 246, 264,
- 39, 41, 322, 222, 300, 167, 213, 138, 82, 1, 34, 265, 288, 10, 249, 53, 278, 8,
- 135, 153, 281, 199, 207, 7, 85, 234, 226, 250, 249, 114, 108, 193, 190, 230, 308,
- 245, 235, 337, 209, 232, 28, 128, 160, 42, 128, 193, 207, 39, 41, 322, 222, 300,
- 11, 213, 463, 82, 1, 158, 265, 27, 463, 108, 53, 278, 8, 137, 176, 281, 206, 180,
- 7, 85, 220, 14, 276, 249, 114, 269, 207, 172, 230, 251, 245, 235, 106, 233, 286,
- 23, 407, 115, 42, 259, 193, 141, 39, 41, 322, 222, 300, 267, 213, 312, 82, 407,
- 144, 265, 207, 207, 38, 53, 407, 187, 246, 272, 273, 271, 270, 266, 184, 318, 207,
- 13, 278, 8, 22, 242, 281, 2, 173, 7, 85, 36, 84, 265, 19, 114, 6, 156, 27, 230,
- 137, 245, 235, 223, 217, 304, 249, 237, 248, 29, 228, 214, 163, 252, 119, 66, 112,
- 40, 43, 37, 102, 249, 126, 298, 260, 265, 192, 212, 297, 301, 284, 274, 295, 170,
- 324, 257, 256, 82, 304, 185, 265, 211, 302, 228, 214, 336, 221, 123, 73, 112, 166,
- 334, 183, 102, 248, 29, 298, 260, 253, 252, 212, 297, 301, 275, 274, 279, 195, 304,
- 36, 294, 165, 205, 228, 214, 171, 27, 123, 58, 109, 225, 117, 251, 102, 139, 149,
- 298, 260, 89, 151, 212, 297, 301, 304, 274, 301, 181, 157, 228, 214, 248, 29, 123,
- 73, 112, 252, 249, 87, 102, 35, 307, 298, 260, 88, 36, 212, 297, 301, 174, 274, 90,
- 27, 304, 195, 95, 301, 216, 228, 214, 301, 301, 123, 46, 109, 110, 301, 301, 102,
- 301, 207, 298, 260, 450, 405, 212, 297, 301, 231, 274, 401, 301, 304, 238, 301,
- 450, 301, 228, 214, 405, 327, 119, 66, 112, 301, 36, 405, 102, 301, 450, 298, 260,
- 27, 301, 212, 297, 301, 304, 274, 301, 301, 450, 228, 214, 301, 301, 123, 73, 112,
- 303, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 137, 274, 301,
- 254, 304, 301, 301, 301, 210, 228, 214, 248, 29, 123, 75, 112, 252, 301, 301, 102,
- 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 301, 301, 304, 301, 243,
- 301, 82, 228, 214, 265, 301, 123, 60, 112, 301, 301, 301, 102, 241, 301, 298, 260,
- 301, 301, 212, 297, 301, 304, 274, 301, 301, 301, 228, 214, 301, 301, 104, 71, 112,
- 301, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 301,
- 301, 304, 301, 301, 301, 301, 228, 81, 301, 301, 83, 47, 107, 301, 301, 301, 102,
- 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 301, 301, 304, 301, 301,
- 301, 301, 228, 214, 301, 301, 123, 76, 112, 301, 301, 301, 102, 301, 301, 298, 260,
- 301, 301, 212, 297, 301, 304, 274, 301, 301, 301, 228, 214, 301, 301, 123, 67, 112,
- 301, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 301,
- 301, 304, 301, 301, 301, 301, 228, 214, 301, 301, 123, 64, 112, 301, 301, 301, 102,
- 301, 301, 298, 260, 301, 310, 212, 297, 301, 301, 274, 301, 278, 9, 299, 301, 281,
- 301, 301, 7, 85, 301, 301, 301, 301, 114, 310, 301, 301, 230, 301, 245, 235, 278,
- 9, 299, 301, 281, 301, 301, 7, 85, 301, 301, 301, 301, 114, 301, 301, 301, 230,
- 301, 245, 235, 301, 301, 181, 154, 316, 21, 301, 181, 152, 301, 301, 301, 249, 304,
- 301, 35, 307, 249, 228, 203, 35, 307, 123, 61, 112, 325, 21, 301, 102, 195, 301,
- 298, 260, 301, 195, 212, 297, 301, 301, 274, 304, 301, 301, 181, 162, 228, 214,
- 301, 301, 123, 62, 112, 301, 249, 301, 102, 35, 307, 298, 260, 301, 301, 212, 297,
- 301, 301, 274, 301, 301, 304, 195, 207, 301, 301, 228, 214, 301, 301, 123, 65, 112,
- 196, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 304,
- 301, 301, 301, 301, 228, 214, 301, 301, 123, 48, 112, 40, 43, 37, 102, 301, 301,
- 298, 260, 301, 301, 212, 297, 301, 301, 274, 304, 301, 324, 257, 256, 228, 214,
- 301, 301, 123, 63, 112, 301, 301, 301, 102, 18, 200, 298, 260, 292, 301, 212, 297,
- 301, 301, 274, 301, 301, 304, 301, 207, 301, 301, 228, 202, 301, 293, 116, 59, 112,
- 320, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 304,
- 265, 301, 301, 301, 228, 79, 301, 301, 83, 45, 107, 40, 43, 37, 102, 301, 301, 298,
- 260, 301, 301, 212, 297, 301, 301, 274, 304, 301, 324, 257, 256, 228, 214, 301,
- 301, 123, 58, 112, 301, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301,
- 301, 274, 301, 301, 304, 301, 207, 301, 301, 228, 214, 301, 301, 123, 72, 112, 40,
- 43, 37, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 304, 178, 324,
- 257, 256, 228, 214, 301, 301, 123, 55, 112, 40, 43, 37, 102, 301, 301, 298, 260,
- 301, 301, 212, 297, 301, 301, 274, 304, 301, 324, 257, 256, 228, 214, 301, 301,
- 123, 54, 112, 301, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301,
- 274, 301, 301, 304, 301, 207, 301, 301, 228, 214, 301, 301, 101, 77, 112, 280, 301,
- 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 304, 301, 301,
- 301, 301, 228, 214, 301, 301, 123, 80, 112, 40, 43, 37, 102, 301, 301, 298, 260,
- 301, 301, 212, 297, 301, 301, 274, 304, 301, 324, 257, 256, 228, 214, 301, 301,
- 123, 56, 112, 301, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301,
- 274, 301, 301, 304, 301, 207, 301, 301, 228, 214, 301, 301, 123, 70, 112, 194, 301,
- 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 304, 301, 301,
- 301, 301, 228, 214, 301, 301, 123, 74, 112, 40, 43, 37, 102, 301, 301, 298, 260,
- 301, 301, 212, 297, 301, 301, 274, 304, 301, 324, 257, 256, 228, 214, 301, 301,
- 123, 49, 112, 301, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301,
- 274, 301, 301, 304, 301, 207, 301, 301, 228, 214, 301, 301, 100, 57, 112, 301, 301,
- 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 304, 301, 301,
- 301, 301, 228, 214, 301, 301, 123, 44, 112, 40, 43, 37, 102, 301, 301, 298, 260,
- 301, 301, 212, 297, 301, 301, 274, 304, 301, 324, 257, 256, 228, 214, 301, 301,
- 123, 69, 112, 301, 301, 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301,
- 274, 301, 301, 304, 301, 301, 301, 301, 228, 214, 301, 301, 118, 50, 112, 301, 301,
- 301, 102, 301, 301, 298, 260, 301, 301, 212, 297, 301, 301, 274, 304, 301, 301,
- 301, 301, 228, 214, 301, 301, 123, 78, 112, 301, 301, 301, 102, 301, 301, 298, 260,
- 207, 301, 212, 297, 301, 301, 274, 304, 301, 301, 359, 301, 228, 224, 301, 301,
- 121, 301, 112, 301, 301, 288, 102, 301, 301, 36, 306, 301, 301, 212, 297, 301, 27,
- 274, 301, 301, 304, 301, 301, 301, 52, 228, 224, 301, 301, 131, 301, 112, 301, 301,
- 301, 102, 301, 301, 219, 321, 301, 301, 212, 297, 301, 301, 274, 219, 479, 479,
- 301, 301, 301, 479, 463, 301, 301, 479, 479, 301, 30, 301, 479, 463, 417, 417, 301,
- 301, 301, 301, 479, 479, 301, 207, 301, 479, 463, 301, 301, 301, 301, 301, 463,
- 328, 463, 301, 479, 301, 463, 332, 207, 463, 301, 463, 288, 479, 301, 463, 36, 450,
- 290, 417, 417, 417, 463, 27, 463, 301, 479, 301, 463, 450, 301, 52, 301, 36, 301,
- 301, 417, 417, 417, 301, 27, 301, 301, 304, 301, 40, 43, 37, 228, 224, 301, 301,
- 127, 301, 112, 301, 301, 301, 102, 301, 301, 301, 324, 257, 256, 212, 297, 301,
- 301, 274, 301, 301, 304, 301, 301, 219, 301, 228, 224, 301, 301, 125, 301, 112,
- 301, 479, 479, 102, 15, 301, 479, 463, 301, 301, 212, 297, 301, 301, 274, 534, 51,
- 263, 285, 287, 229, 304, 301, 228, 301, 301, 228, 224, 207, 301, 124, 301, 112,
- 301, 301, 463, 102, 463, 207, 479, 301, 463, 301, 212, 297, 301, 304, 274, 207,
- 301, 301, 228, 224, 36, 301, 130, 301, 112, 301, 301, 27, 102, 301, 301, 301, 40,
- 43, 37, 212, 297, 301, 32, 274, 36, 239, 40, 43, 37, 301, 301, 27, 301, 324, 257,
- 256, 40, 43, 37, 301, 301, 301, 301, 324, 257, 256, 301, 301, 301, 301, 301, 304,
- 301, 324, 257, 256, 228, 224, 301, 301, 129, 301, 112, 301, 301, 301, 102, 301,
- 301, 26, 301, 301, 219, 212, 297, 301, 301, 274, 301, 479, 479, 301, 479, 479, 479,
- 463, 207, 479, 463, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
- 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 463, 301, 463, 463,
- 479, 463, 463, 479, 207, 463, 40, 43, 37, 301, 301, 301, 301, 301, 301, 301, 301,
- 301, 301, 301, 301, 301, 301, 324, 257, 256, 301, 330, 301, 301, 301, 301, 301,
- 301, 301, 301, 301, 301, 301, 411, 301, 40, 43, 37, 207, 301, 301, 301, 301, 411,
- 301, 411, 301, 207, 411, 301, 317, 301, 324, 257, 256, 411, 301, 411, 301, 411,
- 301, 301, 301, 301, 301, 301, 301, 111, 237, 301, 301, 301, 301, 301, 323, 40, 43,
- 37, 301, 207, 301, 301, 301, 301, 40, 43, 37, 301, 301, 373, 301, 301, 324, 257,
- 256, 301, 240, 301, 301, 301, 301, 324, 257, 256, 36, 301, 301, 301, 301, 301, 301,
- 27, 301, 301, 450, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 450,);
-
- static public $yy_lookahead = array(12, 13, 14, 36, 16, 17, 1, 19, 20, 12, 13, 71, 72, 25, 17, 48, 11, 29, 30, 31,
- 32, 81, 34, 26, 36, 28, 2, 39, 14, 26, 33, 43, 44, 45, 46, 47, 33, 49, 98, 51,
- 52, 23, 54, 71, 72, 71, 58, 12, 13, 14, 36, 16, 17, 81, 19, 20, 84, 85, 84, 85,
- 25, 75, 76, 77, 29, 79, 31, 32, 54, 34, 98, 36, 98, 36, 39, 8, 9, 10, 43, 44,
- 45, 46, 47, 14, 49, 48, 51, 52, 53, 54, 71, 72, 35, 58, 12, 13, 14, 67, 16, 17,
- 81, 19, 20, 84, 85, 1, 15, 25, 21, 18, 53, 29, 13, 31, 32, 11, 34, 98, 36, 22,
- 15, 39, 35, 54, 28, 43, 44, 45, 46, 47, 26, 49, 36, 51, 52, 36, 54, 33, 41, 48,
- 58, 12, 13, 14, 48, 16, 17, 64, 19, 20, 70, 46, 69, 99, 25, 75, 59, 52, 29, 79,
- 31, 32, 70, 34, 71, 36, 86, 75, 39, 51, 90, 79, 43, 44, 45, 46, 47, 35, 49, 37,
- 51, 52, 90, 54, 1, 102, 103, 58, 12, 13, 14, 98, 16, 17, 11, 19, 20, 63, 64, 65,
- 66, 25, 35, 69, 37, 29, 34, 31, 32, 26, 34, 17, 36, 12, 13, 39, 33, 72, 17, 43,
- 44, 45, 46, 47, 72, 49, 81, 51, 52, 98, 54, 71, 72, 81, 58, 12, 13, 14, 93, 16,
- 17, 81, 19, 20, 12, 13, 71, 72, 25, 17, 98, 50, 29, 1, 31, 32, 81, 34, 98, 36,
- 22, 71, 39, 11, 36, 1, 43, 44, 45, 46, 47, 72, 49, 98, 51, 52, 48, 54, 26, 41,
- 81, 58, 12, 13, 14, 33, 16, 17, 98, 19, 20, 53, 93, 71, 72, 25, 75, 76, 15, 29,
- 79, 31, 32, 81, 34, 22, 36, 12, 13, 39, 11, 71, 17, 43, 44, 45, 46, 47, 72, 49,
- 98, 51, 52, 15, 54, 18, 72, 81, 58, 12, 13, 14, 72, 16, 17, 81, 19, 20, 98, 99,
- 15, 81, 25, 18, 98, 18, 29, 93, 31, 32, 1, 34, 64, 36, 46, 48, 39, 69, 72, 46,
- 43, 44, 45, 46, 47, 52, 49, 81, 51, 52, 91, 54, 93, 48, 80, 58, 12, 13, 14, 93,
- 16, 17, 22, 19, 20, 92, 18, 94, 95, 25, 46, 103, 35, 29, 37, 31, 32, 53, 34, 17,
- 36, 41, 53, 39, 94, 95, 95, 43, 44, 45, 46, 47, 72, 49, 46, 51, 52, 15, 54, 22,
- 52, 81, 58, 12, 13, 14, 72, 16, 17, 1, 19, 20, 50, 75, 76, 81, 25, 79, 98, 80,
- 29, 89, 31, 32, 89, 34, 18, 36, 96, 51, 39, 96, 98, 1, 43, 44, 45, 46, 47, 26,
- 49, 46, 51, 52, 75, 54, 33, 52, 79, 58, 12, 13, 14, 72, 16, 17, 14, 19, 20, 17,
- 28, 65, 81, 25, 68, 1, 91, 29, 93, 31, 32, 79, 34, 37, 36, 11, 17, 39, 17, 98,
- 14, 43, 44, 45, 46, 47, 9, 49, 96, 51, 26, 27, 54, 1, 1, 2, 58, 33, 94, 95, 3,
- 4, 5, 6, 7, 8, 34, 1, 2, 12, 13, 13, 14, 16, 36, 17, 19, 20, 26, 17, 54, 42, 25,
- 36, 72, 33, 29, 14, 31, 32, 17, 17, 64, 81, 46, 12, 13, 69, 70, 72, 17, 73, 74,
- 75, 38, 39, 40, 79, 81, 17, 82, 83, 54, 17, 86, 87, 88, 17, 90, 17, 91, 55, 56,
- 57, 51, 64, 71, 54, 100, 101, 69, 70, 53, 50, 73, 74, 75, 91, 53, 80, 79, 12,
- 13, 82, 83, 17, 17, 86, 87, 88, 5, 90, 81, 98, 64, 26, 92, 28, 97, 69, 70, 91,
- 33, 73, 74, 75, 76, 78, 93, 79, 79, 91, 82, 83, 79, 91, 86, 87, 88, 64, 90, 104,
- 71, 72, 69, 70, 12, 13, 73, 74, 75, 17, 81, 79, 79, 84, 85, 82, 83, 79, 26, 86,
- 87, 88, 91, 90, 79, 33, 64, 98, 91, 104, 97, 69, 70, 104, 104, 73, 74, 75, 76,
- 104, 104, 79, 104, 1, 82, 83, 36, 11, 86, 87, 88, 15, 90, 11, 104, 64, 46, 104,
- 48, 104, 69, 70, 26, 53, 73, 74, 75, 104, 26, 33, 79, 104, 36, 82, 83, 33, 104,
- 86, 87, 88, 64, 90, 104, 104, 48, 69, 70, 104, 104, 73, 74, 75, 101, 104, 104,
- 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 14, 90, 104, 17, 64, 104, 104, 104,
- 97, 69, 70, 12, 13, 73, 74, 75, 17, 104, 104, 79, 104, 104, 82, 83, 104, 104,
- 86, 87, 88, 104, 90, 104, 104, 64, 104, 49, 104, 51, 69, 70, 54, 104, 73, 74,
- 75, 104, 104, 104, 79, 50, 104, 82, 83, 104, 104, 86, 87, 88, 64, 90, 104, 104,
- 104, 69, 70, 104, 104, 73, 74, 75, 104, 104, 104, 79, 104, 104, 82, 83, 104,
- 104, 86, 87, 88, 104, 90, 104, 104, 64, 104, 104, 104, 104, 69, 70, 104, 104,
- 73, 74, 75, 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90,
- 104, 104, 64, 104, 104, 104, 104, 69, 70, 104, 104, 73, 74, 75, 104, 104, 104,
- 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 64, 90, 104, 104, 104, 69, 70, 104,
- 104, 73, 74, 75, 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104,
- 90, 104, 104, 64, 104, 104, 104, 104, 69, 70, 104, 104, 73, 74, 75, 104, 104,
- 104, 79, 104, 104, 82, 83, 104, 5, 86, 87, 88, 104, 90, 104, 12, 13, 14, 104,
- 16, 104, 104, 19, 20, 104, 104, 104, 104, 25, 5, 104, 104, 29, 104, 31, 32, 12,
- 13, 14, 104, 16, 104, 104, 19, 20, 104, 104, 104, 104, 25, 104, 104, 104, 29,
- 104, 31, 32, 104, 104, 71, 72, 58, 59, 104, 71, 72, 104, 104, 104, 81, 64, 104,
- 84, 85, 81, 69, 70, 84, 85, 73, 74, 75, 58, 59, 104, 79, 98, 104, 82, 83, 104,
- 98, 86, 87, 88, 104, 90, 64, 104, 104, 71, 72, 69, 70, 104, 104, 73, 74, 75,
- 104, 81, 104, 79, 84, 85, 82, 83, 104, 104, 86, 87, 88, 104, 90, 104, 104, 64,
- 98, 1, 104, 104, 69, 70, 104, 104, 73, 74, 75, 11, 104, 104, 79, 104, 104, 82,
- 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 104, 104, 104, 69, 70, 104, 104, 73,
- 74, 75, 38, 39, 40, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64,
- 104, 55, 56, 57, 69, 70, 104, 104, 73, 74, 75, 104, 104, 104, 79, 13, 14, 82,
- 83, 17, 104, 86, 87, 88, 104, 90, 104, 104, 64, 104, 1, 104, 104, 69, 70, 104,
- 34, 73, 74, 75, 11, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104,
- 90, 64, 54, 104, 104, 104, 69, 70, 104, 104, 73, 74, 75, 38, 39, 40, 79, 104,
- 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 55, 56, 57, 69, 70, 104,
- 104, 73, 74, 75, 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104,
- 90, 104, 104, 64, 104, 1, 104, 104, 69, 70, 104, 104, 73, 74, 75, 38, 39, 40,
- 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 27, 55, 56, 57, 69, 70,
- 104, 104, 73, 74, 75, 38, 39, 40, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88,
- 104, 90, 64, 104, 55, 56, 57, 69, 70, 104, 104, 73, 74, 75, 104, 104, 104, 79,
- 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 104, 104, 64, 104, 1, 104, 104,
- 69, 70, 104, 104, 73, 74, 75, 11, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86,
- 87, 88, 104, 90, 64, 104, 104, 104, 104, 69, 70, 104, 104, 73, 74, 75, 38, 39,
+ const YY_NO_ACTION = 527;
+
+ const YY_ACCEPT_ACTION = 526;
+
+ const YY_ERROR_ACTION = 525;
+
+ const YY_SZ_ACTTAB = 2021;
+
+ static public $yy_action = array(242, 10, 131, 178, 255, 76, 157, 5, 83, 293, 12, 149, 152, 116, 292, 93, 331, 217,
+ 284, 295, 221, 331, 226, 36, 21, 169, 35, 43, 308, 99, 26, 42, 39, 294, 235, 244,
+ 30, 200, 187, 80, 1, 251, 320, 206, 442, 123, 53, 242, 10, 130, 98, 255, 194, 399,
+ 5, 83, 442, 240, 298, 107, 116, 310, 174, 220, 217, 36, 295, 221, 399, 208, 135,
+ 21, 26, 161, 43, 399, 8, 174, 42, 39, 294, 235, 218, 331, 200, 187, 80, 1, 312,
+ 320, 11, 290, 313, 53, 242, 10, 133, 306, 255, 205, 187, 5, 83, 264, 266, 267, 211,
+ 116, 353, 220, 52, 217, 298, 295, 221, 206, 226, 220, 21, 290, 290, 43, 321, 36,
+ 249, 42, 39, 294, 235, 244, 26, 200, 206, 80, 1, 11, 320, 283, 52, 52, 53, 242, 10,
+ 132, 248, 255, 205, 455, 5, 83, 84, 301, 151, 455, 116, 323, 92, 36, 217, 2, 295,
+ 221, 331, 226, 26, 21, 290, 304, 43, 137, 36, 111, 42, 39, 294, 235, 244, 26, 200,
+ 187, 80, 1, 225, 320, 320, 52, 123, 53, 242, 10, 133, 98, 255, 193, 175, 5, 83,
+ 177, 280, 273, 234, 116, 310, 23, 278, 217, 13, 295, 221, 320, 203, 223, 21, 290,
+ 442, 43, 138, 187, 326, 42, 39, 294, 235, 244, 216, 200, 442, 80, 1, 4, 320, 329,
+ 52, 15, 53, 242, 10, 134, 91, 255, 205, 176, 5, 83, 293, 12, 16, 90, 116, 292, 300,
+ 99, 217, 241, 295, 221, 320, 226, 215, 28, 213, 201, 43, 105, 187, 286, 42, 39,
+ 294, 235, 244, 215, 200, 214, 80, 1, 105, 320, 11, 135, 285, 53, 242, 10, 133, 8,
+ 255, 205, 164, 5, 83, 442, 215, 19, 239, 116, 99, 105, 331, 217, 6, 295, 221, 442,
+ 192, 311, 21, 182, 289, 43, 308, 443, 32, 42, 39, 294, 235, 244, 296, 200, 17, 80,
+ 1, 443, 320, 262, 107, 26, 53, 242, 10, 133, 122, 255, 191, 172, 5, 83, 183, 188,
+ 148, 231, 116, 223, 168, 331, 217, 181, 295, 221, 331, 226, 206, 21, 331, 141, 43,
+ 308, 206, 38, 42, 39, 294, 235, 244, 331, 200, 188, 80, 1, 187, 320, 155, 206, 308,
+ 53, 242, 10, 133, 25, 255, 198, 188, 5, 83, 206, 145, 160, 308, 116, 228, 146, 206,
+ 217, 180, 295, 221, 331, 226, 286, 21, 331, 359, 43, 179, 289, 38, 42, 39, 294,
+ 235, 244, 250, 200, 271, 80, 1, 272, 320, 122, 94, 103, 53, 242, 10, 129, 3, 255,
+ 205, 144, 5, 83, 185, 289, 170, 99, 116, 270, 322, 331, 217, 184, 295, 221, 331,
+ 226, 99, 7, 171, 35, 43, 308, 89, 105, 42, 39, 294, 235, 244, 120, 200, 328, 80, 1,
+ 187, 320, 82, 223, 4, 53, 242, 10, 134, 142, 255, 205, 107, 5, 83, 309, 324, 302,
+ 20, 116, 316, 206, 291, 217, 290, 295, 221, 33, 226, 277, 28, 399, 243, 43, 257,
+ 219, 189, 42, 39, 294, 235, 244, 110, 200, 140, 80, 399, 147, 320, 253, 327, 258,
+ 53, 399, 14, 236, 220, 207, 154, 113, 65, 108, 319, 159, 238, 311, 98, 471, 471,
+ 330, 237, 279, 471, 210, 325, 245, 299, 310, 86, 308, 143, 268, 263, 259, 260, 269,
+ 177, 204, 287, 136, 242, 10, 150, 87, 255, 320, 139, 5, 83, 293, 12, 22, 195, 116,
+ 292, 247, 258, 217, 153, 295, 221, 220, 207, 36, 126, 50, 104, 109, 112, 88, 26,
+ 98, 246, 397, 330, 237, 85, 212, 210, 325, 245, 258, 310, 102, 299, 299, 220, 207,
+ 397, 113, 65, 108, 320, 299, 134, 397, 98, 222, 442, 330, 237, 299, 299, 210, 325,
+ 245, 258, 310, 299, 299, 442, 220, 207, 299, 126, 69, 108, 299, 288, 31, 299, 98,
+ 299, 299, 330, 237, 299, 299, 210, 325, 245, 80, 310, 299, 320, 299, 258, 299, 299,
+ 209, 299, 220, 207, 299, 126, 69, 108, 206, 299, 299, 455, 98, 299, 206, 330, 237,
+ 455, 365, 210, 325, 245, 299, 310, 355, 227, 258, 299, 299, 299, 199, 220, 207, 36,
+ 126, 64, 104, 299, 214, 36, 26, 98, 299, 442, 330, 237, 26, 299, 210, 325, 245,
+ 258, 310, 471, 471, 442, 220, 207, 471, 126, 69, 108, 293, 12, 299, 299, 98, 292,
+ 299, 330, 237, 299, 299, 210, 325, 245, 36, 310, 163, 299, 258, 299, 299, 26, 202,
+ 220, 207, 299, 126, 44, 108, 471, 299, 299, 299, 98, 299, 299, 330, 237, 299, 299,
+ 210, 325, 245, 299, 310, 299, 299, 258, 134, 299, 299, 252, 220, 207, 206, 126, 72,
+ 108, 299, 299, 299, 299, 98, 299, 396, 330, 237, 299, 299, 210, 325, 245, 258, 310,
+ 299, 299, 299, 220, 207, 396, 126, 74, 108, 254, 299, 80, 396, 98, 320, 299, 330,
+ 237, 299, 297, 210, 325, 245, 299, 310, 299, 242, 9, 299, 299, 255, 299, 258, 5,
+ 83, 299, 299, 220, 207, 116, 126, 68, 108, 217, 299, 295, 221, 98, 299, 299, 330,
+ 237, 299, 299, 210, 325, 245, 299, 310, 299, 258, 299, 299, 299, 299, 220, 207,
+ 299, 100, 70, 108, 299, 303, 29, 299, 98, 299, 299, 330, 237, 299, 297, 210, 325,
+ 245, 299, 310, 299, 242, 9, 299, 299, 255, 299, 299, 5, 83, 299, 299, 299, 299,
+ 116, 299, 299, 258, 217, 299, 295, 221, 220, 207, 299, 126, 66, 108, 299, 299, 299,
+ 299, 98, 293, 12, 330, 237, 299, 292, 210, 325, 245, 299, 310, 258, 299, 299, 305,
+ 29, 220, 207, 299, 126, 60, 108, 299, 293, 12, 299, 98, 299, 292, 330, 237, 299,
+ 299, 210, 325, 245, 299, 310, 232, 299, 258, 299, 206, 299, 299, 220, 207, 299,
+ 126, 49, 108, 299, 299, 299, 299, 98, 299, 299, 330, 237, 299, 230, 210, 325, 245,
+ 299, 310, 258, 167, 299, 299, 299, 220, 207, 299, 126, 58, 108, 299, 41, 40, 37,
+ 98, 299, 299, 330, 237, 299, 299, 210, 325, 245, 299, 310, 258, 299, 256, 275, 282,
+ 220, 97, 299, 81, 45, 106, 299, 299, 299, 299, 98, 299, 299, 330, 237, 299, 299,
+ 210, 325, 245, 299, 310, 299, 299, 258, 299, 206, 299, 299, 220, 207, 299, 126, 63,
+ 108, 299, 186, 299, 299, 98, 299, 299, 330, 237, 299, 299, 210, 325, 245, 299, 310,
+ 258, 299, 299, 299, 299, 220, 197, 299, 114, 59, 108, 299, 41, 40, 37, 98, 299,
+ 299, 330, 237, 299, 299, 210, 325, 245, 299, 310, 258, 299, 256, 275, 282, 220,
+ 207, 299, 126, 55, 108, 299, 299, 299, 299, 98, 299, 299, 330, 237, 299, 299, 210,
+ 325, 245, 299, 310, 299, 299, 258, 299, 206, 299, 299, 220, 207, 299, 126, 57, 108,
+ 299, 41, 40, 37, 98, 299, 299, 330, 237, 299, 299, 210, 325, 245, 299, 310, 258,
+ 299, 256, 275, 282, 220, 95, 299, 81, 48, 106, 233, 41, 40, 37, 98, 299, 299, 330,
+ 237, 299, 299, 210, 325, 245, 299, 310, 258, 299, 256, 275, 282, 220, 207, 299,
+ 126, 78, 108, 299, 299, 299, 299, 98, 299, 299, 330, 237, 299, 299, 210, 325, 245,
+ 299, 310, 299, 299, 258, 299, 206, 18, 299, 220, 207, 299, 96, 61, 108, 299, 299,
+ 299, 299, 98, 299, 299, 330, 237, 299, 299, 210, 325, 245, 299, 310, 258, 299, 299,
+ 299, 299, 220, 207, 299, 126, 47, 108, 299, 41, 40, 37, 98, 299, 299, 330, 237,
+ 299, 299, 210, 325, 245, 299, 310, 258, 299, 256, 275, 282, 220, 207, 299, 126, 75,
+ 108, 299, 299, 299, 299, 98, 299, 299, 330, 237, 299, 299, 210, 325, 245, 299, 310,
+ 299, 299, 258, 299, 206, 299, 299, 220, 207, 299, 126, 64, 108, 299, 299, 299, 299,
+ 98, 299, 299, 330, 237, 299, 299, 210, 325, 245, 299, 310, 258, 299, 299, 299, 299,
+ 220, 207, 299, 126, 56, 108, 317, 41, 40, 37, 98, 299, 299, 330, 237, 299, 299,
+ 210, 325, 245, 299, 310, 258, 299, 256, 275, 282, 220, 207, 299, 115, 46, 108, 299,
+ 299, 299, 299, 98, 299, 299, 330, 237, 299, 299, 210, 325, 245, 299, 310, 299, 299,
+ 258, 299, 206, 299, 299, 220, 207, 299, 126, 79, 108, 299, 190, 299, 299, 98, 299,
+ 299, 330, 237, 299, 299, 210, 325, 245, 299, 310, 258, 299, 299, 299, 299, 220,
+ 207, 299, 126, 62, 108, 299, 41, 40, 37, 98, 299, 299, 330, 237, 299, 299, 210,
+ 325, 245, 299, 310, 258, 299, 256, 275, 282, 220, 207, 299, 126, 71, 108, 299, 299,
+ 299, 299, 98, 299, 299, 330, 237, 299, 299, 210, 325, 245, 299, 310, 299, 299, 258,
+ 299, 206, 299, 299, 220, 207, 299, 101, 67, 108, 299, 318, 299, 299, 98, 299, 299,
+ 330, 237, 299, 299, 210, 325, 245, 299, 310, 258, 299, 299, 299, 299, 220, 207,
+ 299, 126, 77, 108, 299, 41, 40, 37, 98, 299, 299, 330, 237, 299, 299, 210, 325,
+ 245, 299, 310, 258, 299, 256, 275, 282, 220, 196, 299, 126, 54, 108, 299, 299, 299,
+ 299, 98, 299, 299, 330, 237, 299, 299, 210, 325, 245, 299, 310, 299, 299, 258, 299,
+ 206, 299, 299, 220, 207, 299, 126, 73, 108, 299, 274, 299, 299, 98, 299, 299, 330,
+ 237, 299, 299, 210, 325, 245, 299, 310, 258, 299, 299, 299, 299, 220, 224, 299,
+ 118, 299, 108, 299, 41, 40, 37, 98, 299, 299, 299, 261, 299, 299, 210, 325, 245,
+ 299, 310, 258, 299, 256, 275, 282, 220, 224, 299, 128, 299, 108, 299, 299, 299,
+ 299, 98, 299, 299, 229, 315, 206, 299, 210, 325, 245, 299, 310, 299, 471, 471, 307,
+ 27, 299, 471, 455, 526, 51, 265, 266, 267, 211, 299, 299, 220, 299, 36, 299, 409,
+ 409, 299, 299, 299, 26, 299, 299, 299, 299, 41, 40, 37, 206, 299, 455, 299, 455,
+ 299, 471, 299, 455, 299, 299, 299, 299, 299, 256, 275, 282, 229, 299, 299, 117,
+ 299, 442, 299, 409, 409, 409, 471, 471, 299, 299, 299, 471, 455, 442, 299, 299, 41,
+ 40, 37, 299, 409, 409, 409, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 256,
+ 275, 282, 299, 299, 299, 299, 455, 299, 455, 258, 471, 299, 455, 281, 220, 224,
+ 299, 127, 299, 108, 299, 299, 299, 299, 98, 299, 299, 299, 299, 299, 299, 210, 325,
+ 245, 258, 310, 206, 156, 299, 220, 224, 175, 121, 299, 108, 299, 299, 331, 299, 98,
+ 23, 278, 299, 299, 299, 299, 210, 325, 245, 34, 310, 36, 299, 299, 187, 299, 299,
+ 299, 26, 299, 299, 258, 299, 41, 40, 37, 220, 224, 299, 125, 299, 108, 299, 299,
+ 299, 299, 98, 299, 299, 229, 256, 275, 282, 210, 325, 245, 299, 310, 299, 471, 471,
+ 258, 31, 299, 471, 455, 220, 224, 299, 124, 299, 108, 299, 299, 299, 299, 98, 299,
+ 299, 299, 299, 299, 299, 210, 325, 245, 258, 310, 206, 299, 299, 220, 224, 455,
+ 119, 455, 108, 471, 299, 455, 299, 98, 299, 299, 229, 299, 299, 24, 210, 325, 245,
+ 299, 310, 299, 471, 471, 299, 471, 471, 471, 455, 299, 471, 455, 206, 41, 40, 37,
+ 299, 299, 299, 471, 471, 299, 299, 299, 471, 455, 299, 299, 276, 299, 256, 275,
+ 282, 299, 299, 299, 455, 36, 455, 455, 471, 455, 455, 471, 26, 455, 299, 206, 403,
+ 41, 40, 37, 206, 455, 299, 455, 299, 471, 403, 455, 403, 299, 299, 403, 299, 299,
+ 256, 275, 282, 299, 403, 299, 403, 299, 403, 299, 299, 299, 299, 299, 299, 299,
+ 299, 223, 41, 40, 37, 299, 299, 41, 40, 37, 299, 299, 299, 299, 299, 299, 299, 299,
+ 173, 256, 275, 282, 175, 314, 256, 275, 282, 299, 331, 166, 299, 23, 278, 175, 162,
+ 299, 299, 299, 175, 331, 299, 299, 23, 278, 331, 187, 299, 23, 278, 158, 299, 299,
+ 299, 175, 299, 299, 187, 299, 299, 331, 165, 187, 23, 278, 175, 299, 299, 299, 299,
+ 299, 331, 299, 299, 23, 278, 299, 187, 299, 299, 299, 299, 299, 299, 299, 299, 299,
+ 299, 187,);
+
+ static public $yy_lookahead = array(12, 13, 14, 80, 16, 17, 71, 19, 20, 12, 13, 71, 91, 25, 17, 75, 81, 29, 30, 31,
+ 32, 81, 34, 26, 36, 28, 15, 39, 93, 18, 33, 43, 44, 45, 46, 47, 28, 49, 98, 51,
+ 52, 70, 54, 1, 36, 74, 58, 12, 13, 14, 79, 16, 17, 11, 19, 20, 48, 86, 64, 48,
+ 25, 90, 75, 69, 29, 26, 31, 32, 26, 34, 46, 36, 33, 71, 39, 33, 52, 75, 43, 44,
+ 45, 46, 47, 81, 49, 98, 51, 52, 53, 54, 35, 22, 37, 58, 12, 13, 14, 103, 16, 17,
+ 98, 19, 20, 63, 64, 65, 66, 25, 11, 69, 41, 29, 64, 31, 32, 1, 34, 69, 36, 22,
+ 22, 39, 53, 26, 95, 43, 44, 45, 46, 47, 33, 49, 1, 51, 52, 35, 54, 37, 41, 41,
+ 58, 12, 13, 14, 14, 16, 17, 46, 19, 20, 102, 103, 71, 52, 25, 11, 75, 26, 29,
+ 36, 31, 32, 81, 34, 33, 36, 22, 17, 39, 14, 26, 48, 43, 44, 45, 46, 47, 33, 49,
+ 98, 51, 52, 70, 54, 54, 41, 74, 58, 12, 13, 14, 79, 16, 17, 75, 19, 20, 8, 9,
+ 10, 50, 25, 90, 84, 85, 29, 13, 31, 32, 54, 34, 46, 36, 22, 36, 39, 14, 98, 53,
+ 43, 44, 45, 46, 47, 46, 49, 48, 51, 52, 36, 54, 53, 41, 21, 58, 12, 13, 14, 36,
+ 16, 17, 75, 19, 20, 12, 13, 15, 35, 25, 17, 59, 18, 29, 22, 31, 32, 54, 34, 74,
+ 36, 76, 77, 39, 79, 98, 99, 43, 44, 45, 46, 47, 74, 49, 76, 51, 52, 79, 54, 35,
+ 46, 37, 58, 12, 13, 14, 52, 16, 17, 71, 19, 20, 36, 74, 15, 76, 25, 18, 79, 81,
+ 29, 35, 31, 32, 48, 34, 92, 36, 94, 95, 39, 93, 36, 15, 43, 44, 45, 46, 47, 53,
+ 49, 26, 51, 52, 48, 54, 89, 48, 33, 58, 12, 13, 14, 96, 16, 17, 71, 19, 20, 14,
+ 98, 71, 17, 25, 46, 71, 81, 29, 75, 31, 32, 81, 34, 1, 36, 81, 71, 39, 93, 1, 2,
+ 43, 44, 45, 46, 47, 81, 49, 98, 51, 52, 98, 54, 91, 1, 93, 58, 12, 13, 14, 28,
+ 16, 17, 98, 19, 20, 1, 91, 71, 93, 25, 18, 71, 1, 29, 80, 31, 32, 81, 34, 99,
+ 36, 81, 11, 39, 94, 95, 2, 43, 44, 45, 46, 47, 89, 49, 65, 51, 52, 68, 54, 96,
+ 80, 79, 58, 12, 13, 14, 36, 16, 17, 71, 19, 20, 94, 95, 71, 18, 25, 53, 96, 81,
+ 29, 75, 31, 32, 81, 34, 18, 36, 74, 15, 39, 93, 91, 79, 43, 44, 45, 46, 47, 17,
+ 49, 17, 51, 52, 98, 54, 17, 46, 36, 58, 12, 13, 14, 51, 16, 17, 48, 19, 20, 17,
+ 34, 17, 42, 25, 17, 1, 34, 29, 22, 31, 32, 23, 34, 37, 36, 11, 17, 39, 5, 17,
+ 17, 43, 44, 45, 46, 47, 17, 49, 51, 51, 26, 27, 54, 11, 53, 64, 58, 33, 13, 14,
+ 69, 70, 17, 72, 73, 74, 53, 91, 81, 92, 79, 12, 13, 82, 83, 9, 17, 86, 87, 88,
+ 104, 90, 79, 93, 91, 3, 4, 5, 6, 7, 8, 100, 101, 79, 12, 13, 91, 79, 16, 54, 91,
+ 19, 20, 12, 13, 13, 14, 25, 17, 17, 64, 29, 91, 31, 32, 69, 70, 26, 72, 73, 74,
+ 78, 76, 79, 33, 79, 34, 11, 82, 83, 79, 15, 86, 87, 88, 64, 90, 67, 104, 104,
+ 69, 70, 26, 72, 73, 74, 54, 104, 14, 33, 79, 17, 36, 82, 83, 104, 104, 86, 87,
+ 88, 64, 90, 104, 104, 48, 69, 70, 104, 72, 73, 74, 104, 101, 15, 104, 79, 104,
+ 104, 82, 83, 104, 104, 86, 87, 88, 51, 90, 104, 54, 104, 64, 104, 104, 97, 104,
+ 69, 70, 104, 72, 73, 74, 1, 104, 104, 46, 79, 104, 1, 82, 83, 52, 11, 86, 87,
+ 88, 104, 90, 11, 18, 64, 104, 104, 104, 97, 69, 70, 26, 72, 73, 74, 104, 76, 26,
+ 33, 79, 104, 36, 82, 83, 33, 104, 86, 87, 88, 64, 90, 12, 13, 48, 69, 70, 17,
+ 72, 73, 74, 12, 13, 104, 104, 79, 17, 104, 82, 83, 104, 104, 86, 87, 88, 26, 90,
+ 28, 104, 64, 104, 104, 33, 97, 69, 70, 104, 72, 73, 74, 50, 104, 104, 104, 79,
+ 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 104, 104, 64, 14, 104, 104, 17,
+ 69, 70, 1, 72, 73, 74, 104, 104, 104, 104, 79, 104, 11, 82, 83, 104, 104, 86,
+ 87, 88, 64, 90, 104, 104, 104, 69, 70, 26, 72, 73, 74, 49, 104, 51, 33, 79, 54,
+ 104, 82, 83, 104, 5, 86, 87, 88, 104, 90, 104, 12, 13, 14, 104, 16, 104, 64, 19,
+ 20, 104, 104, 69, 70, 25, 72, 73, 74, 29, 104, 31, 32, 79, 104, 104, 82, 83,
+ 104, 104, 86, 87, 88, 104, 90, 104, 64, 104, 104, 104, 104, 69, 70, 104, 72, 73,
+ 74, 104, 58, 59, 104, 79, 104, 104, 82, 83, 104, 5, 86, 87, 88, 104, 90, 104,
+ 12, 13, 14, 104, 16, 104, 104, 19, 20, 104, 104, 104, 104, 25, 104, 104, 64, 29,
+ 104, 31, 32, 69, 70, 104, 72, 73, 74, 104, 104, 104, 104, 79, 12, 13, 82, 83,
+ 104, 17, 86, 87, 88, 104, 90, 64, 104, 104, 58, 59, 69, 70, 104, 72, 73, 74,
+ 104, 12, 13, 104, 79, 104, 17, 82, 83, 104, 104, 86, 87, 88, 104, 90, 50, 104,
+ 64, 104, 1, 104, 104, 69, 70, 104, 72, 73, 74, 104, 104, 104, 104, 79, 104, 104,
+ 82, 83, 104, 50, 86, 87, 88, 104, 90, 64, 27, 104, 104, 104, 69, 70, 104, 72,
+ 73, 74, 104, 38, 39, 40, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90,
+ 64, 104, 55, 56, 57, 69, 70, 104, 72, 73, 74, 104, 104, 104, 104, 79, 104, 104,
+ 82, 83, 104, 104, 86, 87, 88, 104, 90, 104, 104, 64, 104, 1, 104, 104, 69, 70,
+ 104, 72, 73, 74, 104, 11, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88,
+ 104, 90, 64, 104, 104, 104, 104, 69, 70, 104, 72, 73, 74, 104, 38, 39, 40, 79,
+ 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 55, 56, 57, 69, 70,
+ 104, 72, 73, 74, 104, 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88,
+ 104, 90, 104, 104, 64, 104, 1, 104, 104, 69, 70, 104, 72, 73, 74, 104, 38, 39,
40, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 55, 56, 57,
- 69, 70, 104, 104, 73, 74, 75, 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86,
- 87, 88, 104, 90, 104, 104, 64, 104, 1, 104, 104, 69, 70, 104, 104, 73, 74, 75,
- 11, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 104,
- 104, 104, 69, 70, 104, 104, 73, 74, 75, 38, 39, 40, 79, 104, 104, 82, 83, 104,
- 104, 86, 87, 88, 104, 90, 64, 104, 55, 56, 57, 69, 70, 104, 104, 73, 74, 75,
- 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 104, 104,
- 64, 104, 1, 104, 104, 69, 70, 104, 104, 73, 74, 75, 104, 104, 104, 79, 104, 104,
- 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 104, 104, 104, 69, 70, 104, 104,
- 73, 74, 75, 38, 39, 40, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64,
- 104, 55, 56, 57, 69, 70, 104, 104, 73, 74, 75, 104, 104, 104, 79, 104, 104, 82,
- 83, 104, 104, 86, 87, 88, 104, 90, 104, 104, 64, 104, 104, 104, 104, 69, 70,
- 104, 104, 73, 74, 75, 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88,
- 104, 90, 64, 104, 104, 104, 104, 69, 70, 104, 104, 73, 74, 75, 104, 104, 104,
- 79, 104, 104, 82, 83, 1, 104, 86, 87, 88, 104, 90, 64, 104, 104, 11, 104, 69,
- 70, 104, 104, 73, 104, 75, 104, 104, 22, 79, 104, 104, 26, 83, 104, 104, 86, 87,
- 88, 33, 90, 104, 104, 64, 104, 104, 104, 41, 69, 70, 104, 104, 73, 104, 75, 104,
- 104, 104, 79, 104, 104, 2, 83, 104, 104, 86, 87, 88, 104, 90, 2, 12, 13, 104,
- 104, 104, 17, 18, 104, 104, 12, 13, 104, 15, 104, 17, 18, 1, 2, 104, 104, 104,
- 104, 12, 13, 104, 1, 104, 17, 18, 104, 104, 104, 104, 104, 46, 11, 48, 104, 50,
- 104, 52, 53, 1, 46, 104, 48, 22, 50, 104, 52, 26, 36, 11, 38, 39, 40, 46, 33,
- 48, 104, 50, 104, 52, 48, 104, 41, 104, 26, 104, 104, 55, 56, 57, 104, 33, 104,
- 104, 64, 104, 38, 39, 40, 69, 70, 104, 104, 73, 104, 75, 104, 104, 104, 79, 104,
- 104, 104, 55, 56, 57, 86, 87, 88, 104, 90, 104, 104, 64, 104, 104, 2, 104, 69,
- 70, 104, 104, 73, 104, 75, 104, 12, 13, 79, 15, 104, 17, 18, 104, 104, 86, 87,
- 88, 104, 90, 61, 62, 63, 64, 65, 66, 64, 104, 69, 104, 104, 69, 70, 1, 104, 73,
- 104, 75, 104, 104, 46, 79, 48, 1, 50, 104, 52, 104, 86, 87, 88, 64, 90, 1, 104,
- 104, 69, 70, 26, 104, 73, 104, 75, 104, 104, 33, 79, 104, 104, 104, 38, 39, 40,
- 86, 87, 88, 24, 90, 26, 37, 38, 39, 40, 104, 104, 33, 104, 55, 56, 57, 38, 39,
- 40, 104, 104, 104, 104, 55, 56, 57, 104, 104, 104, 104, 104, 64, 104, 55, 56,
- 57, 69, 70, 104, 104, 73, 104, 75, 104, 104, 104, 79, 104, 104, 2, 104, 104, 2,
- 86, 87, 88, 104, 90, 104, 12, 13, 104, 12, 13, 17, 18, 1, 17, 18, 104, 104, 104,
- 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
- 104, 104, 104, 104, 104, 46, 104, 48, 46, 50, 48, 52, 50, 1, 52, 38, 39, 40,
- 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 55, 56,
- 57, 104, 59, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 11, 104, 38,
- 39, 40, 1, 104, 104, 104, 104, 21, 104, 23, 104, 1, 26, 104, 53, 104, 55, 56,
- 57, 33, 104, 35, 104, 37, 104, 104, 104, 104, 104, 104, 104, 21, 46, 104, 104,
- 104, 104, 104, 37, 38, 39, 40, 104, 1, 104, 104, 104, 104, 38, 39, 40, 104, 104,
- 11, 104, 104, 55, 56, 57, 104, 18, 104, 104, 104, 104, 55, 56, 57, 26, 104, 104,
- 104, 104, 104, 104, 33, 104, 104, 36, 104, 104, 104, 104, 104, 104, 104, 104,
- 104, 104, 104, 48,);
-
- const YY_SHIFT_USE_DFLT = - 34;
-
- const YY_SHIFT_MAX = 242;
-
- static public $yy_shift_ofst = array(517, 270, 82, 270, 317, 82, 82, 317, - 12, - 12, 35, 411, 82, 82, 82, 129, 82,
- 82, 82, 176, 82, 82, 82, 82, 82, 82, 223, 82, 82, 82, 82, 82, 82, 82, 82, 82,
- 411, 364, 364, 458, 458, 458, 458, 458, 1830, 1706, 1810, 1810, 1810, 1810,
- 1810, 517, 733, 933, 2001, 1306, 1389, 1223, 1820, 1952, 526, 1917, 1992, 1140,
- 1057, 1472, 1472, 1472, 2033, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472,
- 1472, 1196, 1689, 1196, 1600, 533, 183, 512, 14, 954, - 3, 589, 634, 634, 684,
- 684, 512, 512, 368, 14, 14, 512, 513, 484, 104, 746, 518, 252, 67, 232, 91,
- 232, 325, 3, 486, 307, 462, 433, 428, 349, 3, 5, 452, 462, 264, 327, 264, 264,
- 264, 264, 264, 327, 264, 264, - 34, 1772, 1653, 1662, 1902, 1899, 1675, 1113,
- 543, 105, 295, 3, 415, 69, 69, 3, 3, 313, 313, 3, 313, 3, 3, 3, 3, 3, 3, 283,
- 3, 415, 3, 3, 3, 3, 69, 313, 3, 3, 3, 313, 313, 313, 99, 313, 3, 3, 3, 69, 3,
- 498, 264, 264, 24, 497, 264, 327, 327, 327, 264, 24, 264, - 34, - 34, - 34,
- - 34, - 34, 1680, 1977, 678, 201, 652, 238, 97, 96, 357, 228, 382, 344, 308,
- 142, 57, 37, - 33, 360, 87, 167, 539, 545, 562, 507, 194, 172, 118, 397, 456,
- 402, 18, 299, 605, 556, 588, 552, 508, 481, 479, 398, 492, 534, 499, 522, 560,
- 498,);
-
- const YY_REDUCE_USE_DFLT = - 61;
-
- const YY_REDUCE_MAX = 196;
-
- static public $yy_reduce_ofst = array(1737, 488, 575, 633, 550, 658, 521, 604, 770, 1102, 1075, 1407, 1461, 1517,
- 1351, 1158, 1212, 1295, 1046, 716, 992, 936, 853, 963, 1019, 687, 1268, 1241,
- 1129, 1185, 1490, 1434, 1378, 1324, 799, 824, 741, 1544, 1573, 1819, 1678,
- 1740, 1707, 1765, 923, - 28, 571, - 28, 19, 918, 959, 134, 80, 83, - 26, - 26,
- - 26, - 26, - 26, - 26, - 26, - 26, - 26, - 26, - 26, - 26, - 26, - 26, 160,
- - 26, - 26, - 26, - 26, - 26, - 26, - 26, - 26, - 26, - 26, 222, - 26, 222,
- 92, 175, - 60, - 14, 288, 145, 199, 286, 254, 152, 246, 354, 401, 293, 358,
- 221, 340, 240, 190, 190, 279, 412, 190, 416, 395, 310, 279, 310, 472, 389,
- 310, 352, 260, 93, 190, 487, 190, 190, 355, 190, 310, 190, 190, 190, 515, 190,
- 424, 190, 190, 190, 530, 530, 530, 530, 530, 530, 551, 535, 530, 530, 531,
- 540, 574, 555, 531, 531, 524, 524, 531, 524, 531, 531, 531, 531, 531, 531,
- 549, 531, 544, 531, 531, 531, 531, 587, 524, 531, 531, 531, 524, 524, 524,
- 573, 524, 531, 531, 531, 580, 531, 579, 131, 131, 54, 30, 131, 311, 311, 311,
- 131, 54, 131, 294, 519, 489, 359, 506,);
+ 69, 70, 104, 72, 73, 74, 37, 38, 39, 40, 79, 104, 104, 82, 83, 104, 104, 86, 87,
+ 88, 104, 90, 64, 104, 55, 56, 57, 69, 70, 104, 72, 73, 74, 104, 104, 104, 104,
+ 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 104, 104, 64, 104, 1, 2,
+ 104, 69, 70, 104, 72, 73, 74, 104, 104, 104, 104, 79, 104, 104, 82, 83, 104,
+ 104, 86, 87, 88, 104, 90, 64, 104, 104, 104, 104, 69, 70, 104, 72, 73, 74, 104,
+ 38, 39, 40, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 55,
+ 56, 57, 69, 70, 104, 72, 73, 74, 104, 104, 104, 104, 79, 104, 104, 82, 83, 104,
+ 104, 86, 87, 88, 104, 90, 104, 104, 64, 104, 1, 104, 104, 69, 70, 104, 72, 73,
+ 74, 104, 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64,
+ 104, 104, 104, 104, 69, 70, 104, 72, 73, 74, 37, 38, 39, 40, 79, 104, 104, 82,
+ 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 55, 56, 57, 69, 70, 104, 72, 73, 74,
+ 104, 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 104,
+ 104, 64, 104, 1, 104, 104, 69, 70, 104, 72, 73, 74, 104, 11, 104, 104, 79, 104,
+ 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 104, 104, 104, 69, 70, 104,
+ 72, 73, 74, 104, 38, 39, 40, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104,
+ 90, 64, 104, 55, 56, 57, 69, 70, 104, 72, 73, 74, 104, 104, 104, 104, 79, 104,
+ 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 104, 104, 64, 104, 1, 104, 104, 69,
+ 70, 104, 72, 73, 74, 104, 11, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87,
+ 88, 104, 90, 64, 104, 104, 104, 104, 69, 70, 104, 72, 73, 74, 104, 38, 39, 40,
+ 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 55, 56, 57, 69,
+ 70, 104, 72, 73, 74, 104, 104, 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87,
+ 88, 104, 90, 104, 104, 64, 104, 1, 104, 104, 69, 70, 104, 72, 73, 74, 104, 11,
+ 104, 104, 79, 104, 104, 82, 83, 104, 104, 86, 87, 88, 104, 90, 64, 104, 104,
+ 104, 104, 69, 70, 104, 72, 104, 74, 104, 38, 39, 40, 79, 104, 104, 104, 83, 104,
+ 104, 86, 87, 88, 104, 90, 64, 104, 55, 56, 57, 69, 70, 104, 72, 104, 74, 104,
+ 104, 104, 104, 79, 104, 104, 2, 83, 1, 104, 86, 87, 88, 104, 90, 104, 12, 13,
+ 11, 15, 104, 17, 18, 61, 62, 63, 64, 65, 66, 104, 104, 69, 104, 26, 104, 1, 2,
+ 104, 104, 104, 33, 104, 104, 104, 104, 38, 39, 40, 1, 104, 46, 104, 48, 104, 50,
+ 104, 52, 104, 104, 104, 104, 104, 55, 56, 57, 2, 104, 104, 21, 104, 36, 104, 38,
+ 39, 40, 12, 13, 104, 104, 104, 17, 18, 48, 104, 104, 38, 39, 40, 104, 55, 56,
+ 57, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 55, 56, 57, 104, 104, 104,
+ 104, 46, 104, 48, 64, 50, 104, 52, 53, 69, 70, 104, 72, 104, 74, 104, 104, 104,
+ 104, 79, 104, 104, 104, 104, 104, 104, 86, 87, 88, 64, 90, 1, 71, 104, 69, 70,
+ 75, 72, 104, 74, 104, 104, 81, 104, 79, 84, 85, 104, 104, 104, 104, 86, 87, 88,
+ 24, 90, 26, 104, 104, 98, 104, 104, 104, 33, 104, 104, 64, 104, 38, 39, 40, 69,
+ 70, 104, 72, 104, 74, 104, 104, 104, 104, 79, 104, 104, 2, 55, 56, 57, 86, 87,
+ 88, 104, 90, 104, 12, 13, 64, 15, 104, 17, 18, 69, 70, 104, 72, 104, 74, 104,
+ 104, 104, 104, 79, 104, 104, 104, 104, 104, 104, 86, 87, 88, 64, 90, 1, 104,
+ 104, 69, 70, 46, 72, 48, 74, 50, 104, 52, 104, 79, 104, 104, 2, 104, 104, 2, 86,
+ 87, 88, 104, 90, 104, 12, 13, 104, 12, 13, 17, 18, 104, 17, 18, 1, 38, 39, 40,
+ 104, 104, 104, 12, 13, 104, 104, 104, 17, 18, 104, 104, 53, 104, 55, 56, 57,
+ 104, 104, 104, 46, 26, 48, 46, 50, 48, 52, 50, 33, 52, 104, 1, 11, 38, 39, 40,
+ 1, 46, 104, 48, 104, 50, 21, 52, 23, 104, 104, 26, 104, 104, 55, 56, 57, 104,
+ 33, 104, 35, 104, 37, 104, 104, 104, 104, 104, 104, 104, 104, 46, 38, 39, 40,
+ 104, 104, 38, 39, 40, 104, 104, 104, 104, 104, 104, 104, 104, 71, 55, 56, 57,
+ 75, 59, 55, 56, 57, 104, 81, 71, 104, 84, 85, 75, 71, 104, 104, 104, 75, 81,
+ 104, 104, 84, 85, 81, 98, 104, 84, 85, 71, 104, 104, 104, 75, 104, 104, 98, 104,
+ 104, 81, 71, 98, 84, 85, 75, 104, 104, 104, 104, 104, 81, 104, 104, 84, 85, 104,
+ 98, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 98,);
+
+ const YY_SHIFT_USE_DFLT = - 13;
+
+ const YY_SHIFT_MAX = 236;
+
+ static public $yy_shift_ofst = array(542, 364, 82, 82, 82, 411, 364, 411, 35, - 12, - 12, 82, 82, 82, 82, 82, 82,
+ 176, 82, 82, 129, 82, 82, 82, 317, 82, 82, 82, 82, 82, 82, 270, 82, 82, 82, 82,
+ 176, 223, 223, 458, 458, 458, 458, 458, 1734, 1603, 1862, 1862, 1862, 1862,
+ 1862, 542, 749, 803, 1897, 1448, 1531, 1199, 1643, 1826, 1365, 950, 1282, 1033,
+ 1116, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 660,
+ 1902, 1089, 1089, 594, 666, 131, 202, 865, - 3, 703, 551, 551, 233, 202, 202,
+ 131, 131, 357, 97, 484, 144, 920, 505, 42, 768, 189, 232, 11, 232, 278, 324,
+ 428, 39, 372, 324, 39, 351, 384, 391, 294, 155, 114, 114, 114, 114, 417, 417,
+ 114, 114, 114, 114, - 13, 1786, 1659, 1600, 1844, 1841, 1858, 552, 897, 519,
+ 618, 24, 101, 39, 101, 24, 39, 24, 39, 130, 39, 39, 24, 39, 24, 24, 193, 24,
+ 39, 39, 39, 24, 39, 39, 39, 130, 39, 39, 39, 130, 39, 130, 39, 231, 39, 39,
+ 114, 114, 114, 526, 404, 417, 404, 114, 417, 390, 114, 417, - 13, - 13, - 13,
+ - 13, - 13, 1630, 1888, 576, 178, 694, 191, 69, 8, 100, 275, 212, 243, 297,
+ 265, 255, 150, 98, 165, 55, 123, 493, 479, 468, 456, 434, 482, 483, 473, 461,
+ 502, 489, 457, 452, 466, 422, 421, 449, 442, 444, 462, 432, 467, 440, 464, 446,
+ 390,);
+
+ const YY_REDUCE_USE_DFLT = - 80;
+
+ const YY_REDUCE_MAX = 190;
+
+ static public $yy_reduce_ofst = array(1558, 451, 556, 640, 586, 506, 531, 615, 995, 939, 1078, 723, 1244, 968, 856,
+ 912, 1354, 1134, 1105, 1161, 1051, 1217, 1022, 1188, 1300, 1466, 1383, 1271,
+ 1327, 1437, 1410, 757, 698, 669, 885, 829, 785, 1493, 1520, 1761, 1706, 1669,
+ 1644, 1736, 1880, 1665, 1896, 1911, 1665, 1891, 1922, 40, - 29, 48, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 81, 119, 119, 119, 112, 2, - 60, 184, - 6, 264, 358,
+ - 65, 217, 213, 218, 197, 284, 269, 166, 363, - 13, 363, 295, 342, - 13, - 13,
+ 349, 281, 310, 295, 310, 323, 310, 316, 272, 236, 273, - 13, - 13, - 13, 320,
+ 374, - 13, - 13, 366, - 13, 338, 310, - 13, - 13, - 13, - 13, - 13, 465, 465,
+ 465, 465, 465, 465, 474, 450, 465, 465, 437, 469, 447, 453, 437, 447, 437,
+ 447, 463, 447, 447, 437, 447, 437, 437, 481, 437, 447, 447, 447, 437, 447,
+ 447, 447, 478, 447, 447, 447, 511, 447, 504, 447, 503, 447, 447, 241, 241,
+ 241, 530, 300, 29, 300, 241, 29, 361, 241, 29, - 79, - 77, 314, 340, 436,);
static public $yyExpectedTokens = array(array(3, 4, 5, 6, 7, 8, 12, 13, 16, 19, 20, 25, 29, 31, 32,),
array(12, 13, 14, 16, 17, 19, 20, 25, 29, 31, 32, 34, 36, 39, 43, 44, 45,
@@ -683,12 +674,12 @@ class Smarty_Internal_Templateparser
46, 47, 49, 51, 52, 54, 58,),
array(12, 13, 14, 16, 17, 19, 20, 25, 29, 31, 32, 34, 36, 39, 43, 44, 45,
46, 47, 49, 51, 52, 54, 58,),
+ array(12, 13, 14, 16, 17, 19, 20, 25, 29, 31, 32, 34, 36, 39, 43, 44, 45,
+ 46, 47, 49, 51, 52, 53, 54, 58,),
array(12, 13, 14, 16, 17, 19, 20, 25, 29, 30, 31, 32, 34, 36, 39, 43, 44,
45, 46, 47, 49, 51, 52, 54, 58,),
array(12, 13, 14, 16, 17, 19, 20, 25, 29, 30, 31, 32, 34, 36, 39, 43, 44,
45, 46, 47, 49, 51, 52, 54, 58,),
- array(12, 13, 14, 16, 17, 19, 20, 25, 29, 31, 32, 34, 36, 39, 43, 44, 45,
- 46, 47, 49, 51, 52, 53, 54, 58,),
array(12, 13, 14, 16, 17, 19, 20, 25, 29, 31, 32, 34, 36, 39, 43, 44, 45,
46, 47, 49, 51, 52, 54, 58,),
array(12, 13, 14, 16, 17, 19, 20, 25, 29, 31, 32, 34, 36, 39, 43, 44, 45,
@@ -765,70 +756,67 @@ class Smarty_Internal_Templateparser
array(3, 4, 5, 6, 7, 8, 12, 13, 16, 19, 20, 25, 29, 31, 32,),
array(14, 17, 49, 51, 54,),
array(5, 12, 13, 14, 16, 19, 20, 25, 29, 31, 32, 58, 59,),
- array(1, 21, 38, 39, 40, 55, 56, 57,),
+ array(1, 38, 39, 40, 55, 56, 57, 59,),
array(1, 11, 38, 39, 40, 55, 56, 57,),
+ array(1, 11, 38, 39, 40, 55, 56, 57,), array(1, 2, 38, 39, 40, 55, 56, 57,),
+ array(1, 21, 38, 39, 40, 55, 56, 57,),
+ array(1, 38, 39, 40, 53, 55, 56, 57,),
array(1, 11, 38, 39, 40, 55, 56, 57,),
array(1, 27, 38, 39, 40, 55, 56, 57,),
array(1, 37, 38, 39, 40, 55, 56, 57,),
- array(1, 38, 39, 40, 53, 55, 56, 57,), array(1, 2, 38, 39, 40, 55, 56, 57,),
- array(1, 38, 39, 40, 55, 56, 57, 59,),
- array(1, 37, 38, 39, 40, 55, 56, 57,),
array(1, 11, 38, 39, 40, 55, 56, 57,),
- array(1, 11, 38, 39, 40, 55, 56, 57,), array(1, 38, 39, 40, 55, 56, 57,),
+ array(1, 37, 38, 39, 40, 55, 56, 57,), array(1, 38, 39, 40, 55, 56, 57,),
array(1, 38, 39, 40, 55, 56, 57,), array(1, 38, 39, 40, 55, 56, 57,),
- array(1, 11, 18, 26, 33, 36, 48,), array(1, 38, 39, 40, 55, 56, 57,),
array(1, 38, 39, 40, 55, 56, 57,), array(1, 38, 39, 40, 55, 56, 57,),
array(1, 38, 39, 40, 55, 56, 57,), array(1, 38, 39, 40, 55, 56, 57,),
array(1, 38, 39, 40, 55, 56, 57,), array(1, 38, 39, 40, 55, 56, 57,),
array(1, 38, 39, 40, 55, 56, 57,), array(1, 38, 39, 40, 55, 56, 57,),
- array(38, 39, 40, 55, 56, 57,), array(1, 11, 22, 26, 33, 41,),
- array(38, 39, 40, 55, 56, 57,), array(1, 11, 22, 26, 33, 41,),
+ array(1, 11, 18, 26, 33, 36, 48,), array(1, 38, 39, 40, 55, 56, 57,),
+ array(38, 39, 40, 55, 56, 57,), array(38, 39, 40, 55, 56, 57,),
array(14, 17, 51, 54,), array(1, 11, 26, 33,), array(1, 26, 33,),
array(14, 36, 54,),
array(5, 12, 13, 14, 16, 19, 20, 25, 29, 31, 32, 58, 59,),
array(12, 13, 17, 26, 28, 33,), array(12, 13, 17, 26, 28, 33,),
- array(12, 13, 17, 26, 33,), array(12, 13, 17, 26, 33,),
- array(1, 11, 26, 33,), array(1, 11, 26, 33,), array(1, 26, 33,),
- array(1, 26, 33,), array(18, 46, 52,), array(14, 36, 54,),
- array(14, 36, 54,), array(1, 26, 33,), array(1, 2,),
- array(1, 11, 26, 27, 33,), array(1, 11, 26, 33,), array(12, 13, 17, 50,),
- array(13, 14, 17, 54,), array(1, 11, 26, 33,), array(8, 9, 10,),
- array(12, 13, 17,), array(15, 18, 48,), array(12, 13, 17,),
- array(15, 18, 48,), array(26, 33,), array(14, 54,), array(18, 48,),
- array(14, 17,), array(26, 33,), array(1, 18,), array(1, 53,),
- array(26, 33,), array(1, 11,), array(1, 28,), array(14, 17,), array(1,),
- array(18,), array(1,), array(1,), array(1,), array(1,), array(1,),
- array(18,), array(1,), array(1,), array(),
+ array(12, 13, 17, 26, 33,), array(12, 13, 17, 26, 33,), array(18, 46, 52,),
+ array(14, 36, 54,), array(14, 36, 54,), array(1, 26, 33,),
+ array(1, 26, 33,), array(1, 2,), array(11, 22, 26, 33, 41,),
+ array(1, 11, 26, 27, 33,), array(11, 22, 26, 33, 41,),
+ array(12, 13, 17, 50,), array(13, 14, 17, 54,), array(1, 11, 26, 33,),
+ array(1, 11, 26, 33,), array(8, 9, 10,), array(12, 13, 17,),
+ array(15, 18, 48,), array(12, 13, 17,), array(15, 18, 48,), array(14, 17,),
+ array(18, 48,), array(26, 33,), array(1, 18,), array(14, 17,),
+ array(26, 33,), array(1, 28,), array(1, 53,), array(1, 11,), array(26, 33,),
+ array(14, 54,), array(1,), array(1,), array(1,), array(1,), array(18,),
+ array(18,), array(1,), array(1,), array(1,), array(1,), array(),
array(2, 12, 13, 15, 17, 18, 46, 48, 50, 52,),
array(2, 12, 13, 17, 18, 46, 48, 50, 52, 53,),
array(2, 12, 13, 15, 17, 18, 46, 48, 50, 52,),
array(2, 12, 13, 17, 18, 46, 48, 50, 52,),
array(2, 12, 13, 17, 18, 46, 48, 50, 52,),
array(12, 13, 17, 18, 46, 48, 50, 52,), array(13, 14, 17, 34, 54,),
- array(12, 13, 17, 50,), array(15, 46, 52,), array(12, 13, 17,),
- array(26, 33,), array(46, 52,), array(14, 54,), array(14, 54,),
- array(26, 33,), array(26, 33,), array(46, 52,), array(46, 52,),
- array(26, 33,), array(46, 52,), array(26, 33,), array(26, 33,),
- array(26, 33,), array(26, 33,), array(26, 33,), array(26, 33,),
- array(15, 22,), array(26, 33,), array(46, 52,), array(26, 33,),
- array(26, 33,), array(26, 33,), array(26, 33,), array(14, 54,),
+ array(12, 13, 17, 50,), array(12, 13, 17,), array(15, 46, 52,),
+ array(46, 52,), array(46, 52,), array(26, 33,), array(46, 52,),
+ array(46, 52,), array(26, 33,), array(46, 52,), array(26, 33,),
+ array(14, 54,), array(26, 33,), array(26, 33,), array(46, 52,),
+ array(26, 33,), array(46, 52,), array(46, 52,), array(13, 36,),
array(46, 52,), array(26, 33,), array(26, 33,), array(26, 33,),
- array(46, 52,), array(46, 52,), array(46, 52,), array(13, 36,),
array(46, 52,), array(26, 33,), array(26, 33,), array(26, 33,),
- array(14, 54,), array(26, 33,), array(36,), array(1,), array(1,), array(2,),
- array(9,), array(1,), array(18,), array(18,), array(18,), array(1,),
- array(2,), array(1,), array(), array(), array(), array(), array(),
- array(1, 2, 36, 38, 39, 40, 48, 55, 56, 57,),
+ array(14, 54,), array(26, 33,), array(26, 33,), array(26, 33,),
+ array(14, 54,), array(26, 33,), array(14, 54,), array(26, 33,),
+ array(15, 22,), array(26, 33,), array(26, 33,), array(1,), array(1,),
+ array(1,), array(9,), array(2,), array(18,), array(2,), array(1,),
+ array(18,), array(36,), array(1,), array(18,), array(), array(), array(),
+ array(), array(), array(1, 2, 36, 38, 39, 40, 48, 55, 56, 57,),
array(11, 21, 23, 26, 33, 35, 37, 46,), array(11, 15, 26, 33, 36, 48,),
- array(12, 13, 17, 50,), array(36, 46, 48, 53,), array(22, 41, 53,),
- array(22, 41, 59,), array(28, 36, 48,), array(35, 37,), array(36, 48,),
- array(17, 50,), array(46, 53,), array(15, 46,), array(35, 37,),
- array(35, 53,), array(36, 48,), array(36, 48,), array(22, 41,),
- array(21, 35,), array(35, 37,), array(53,), array(53,), array(17,),
- array(36,), array(17,), array(34,), array(51,), array(22,), array(37,),
- array(15,), array(23,), array(11,), array(5,), array(17,), array(17,),
- array(17,), array(46,), array(17,), array(17,), array(51,), array(34,),
- array(17,), array(42,), array(17,), array(17,), array(36,), array(),
+ array(36, 46, 48, 53,), array(12, 13, 17, 50,), array(22, 41, 59,),
+ array(22, 41, 53,), array(28, 36, 48,), array(35, 37,), array(36, 48,),
+ array(21, 35,), array(35, 37,), array(15, 46,), array(35, 53,),
+ array(36, 48,), array(17, 50,), array(22, 41,), array(46, 53,),
+ array(35, 37,), array(36, 48,), array(5,), array(17,), array(23,),
+ array(37,), array(15,), array(17,), array(17,), array(53,), array(53,),
+ array(11,), array(17,), array(51,), array(34,), array(22,), array(51,),
+ array(46,), array(17,), array(17,), array(17,), array(17,), array(36,),
+ array(17,), array(42,), array(17,), array(34,), array(36,), array(),
array(), array(), array(), array(), array(), array(), array(), array(),
array(), array(), array(), array(), array(), array(), array(), array(),
array(), array(), array(), array(), array(), array(), array(), array(),
@@ -842,36 +830,35 @@ class Smarty_Internal_Templateparser
array(), array(), array(), array(), array(), array(), array(), array(),
array(), array(), array(), array(), array(), array(),);
- static public $yy_default = array(341, 518, 498, 533, 533, 498, 498, 533, 533, 533, 533, 533, 533, 533, 533, 533,
- 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, 533,
- 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, 533, 401, 533, 377, 401,
- 401, 401, 368, 338, 533, 533, 533, 533, 533, 406, 533, 533, 533, 533, 533, 533,
- 533, 520, 521, 422, 440, 382, 496, 406, 412, 497, 519, 408, 413, 403, 429, 430,
- 428, 430, 533, 415, 401, 533, 533, 401, 401, 401, 401, 447, 421, 401, 401, 510,
- 533, 533, 401, 391, 415, 415, 463, 533, 415, 533, 463, 453, 463, 453, 379, 533,
- 453, 533, 401, 395, 415, 401, 415, 415, 533, 425, 453, 415, 433, 431, 397, 418,
- 507, 432, 419, 505, 452, 452, 452, 452, 452, 452, 533, 465, 479, 463, 386, 456,
- 533, 533, 388, 387, 461, 457, 364, 459, 384, 360, 385, 361, 380, 378, 533, 363,
- 458, 365, 369, 381, 366, 533, 490, 376, 375, 372, 491, 460, 489, 463, 488, 370,
- 374, 390, 533, 389, 463, 421, 396, 499, 354, 398, 511, 508, 485, 392, 500, 447,
- 504, 504, 463, 504, 463, 440, 436, 440, 464, 440, 430, 430, 440, 533, 440, 533,
- 436, 436, 533, 533, 533, 448, 430, 533, 533, 533, 443, 533, 509, 533, 533, 533,
- 430, 533, 533, 409, 533, 346, 533, 533, 533, 436, 533, 533, 533, 438, 533, 442,
- 533, 533, 479, 451, 503, 394, 486, 383, 483, 400, 410, 481, 482, 402, 450, 502,
- 514, 513, 479, 501, 420, 427, 426, 339, 487, 480, 350, 351, 352, 353, 349, 347,
- 344, 345, 455, 348, 355, 356, 358, 399, 484, 371, 357, 340, 454, 342, 414, 343,
- 434, 531, 530, 466, 467, 468, 462, 417, 526, 441, 416, 528, 443, 444, 516, 517,
- 446, 515, 424, 423, 445, 495, 532, 525, 492, 475, 493, 393, 522, 477, 437, 494,
- 469, 506, 435, 442, 512, 523, 439, 470, 529, 473, 527, 476, 474, 478, 472, 524,
- 471, 449,);
+ static public $yy_default = array(335, 510, 490, 490, 490, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525,
+ 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525,
+ 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, 393, 525, 360, 393,
+ 357, 393, 369, 332, 525, 525, 525, 525, 525, 525, 525, 525, 525, 398, 525, 525,
+ 525, 513, 405, 395, 404, 489, 398, 374, 400, 511, 488, 414, 432, 512, 421, 420,
+ 525, 407, 393, 525, 525, 393, 393, 393, 393, 502, 525, 525, 393, 393, 383, 422,
+ 407, 422, 455, 525, 407, 407, 525, 455, 445, 455, 445, 525, 445, 393, 387, 525,
+ 371, 407, 407, 407, 393, 525, 417, 425, 389, 410, 499, 445, 423, 411, 407, 424,
+ 497, 444, 444, 444, 444, 444, 444, 525, 457, 455, 471, 449, 448, 366, 450, 451,
+ 379, 453, 378, 525, 368, 367, 452, 364, 483, 480, 455, 481, 358, 380, 362, 482,
+ 373, 356, 361, 525, 382, 370, 377, 525, 372, 525, 354, 525, 381, 376, 439, 413,
+ 384, 348, 492, 477, 491, 388, 503, 455, 390, 500, 455, 496, 496, 496, 455, 432,
+ 428, 432, 432, 456, 422, 422, 432, 525, 440, 525, 525, 428, 525, 432, 525, 422,
+ 428, 525, 525, 340, 525, 401, 525, 525, 525, 525, 435, 525, 525, 525, 525, 430,
+ 422, 525, 428, 525, 525, 525, 525, 501, 525, 434, 525, 525, 471, 412, 391, 402,
+ 418, 375, 352, 394, 435, 436, 460, 459, 471, 479, 437, 419, 442, 351, 443, 363,
+ 504, 342, 438, 341, 343, 416, 441, 339, 334, 333, 336, 337, 338, 344, 468, 349,
+ 347, 350, 476, 505, 469, 406, 415, 345, 346, 466, 506, 486, 385, 487, 495, 508,
+ 509, 478, 426, 429, 474, 475, 427, 386, 507, 524, 523, 520, 518, 517, 493, 514,
+ 494, 515, 516, 522, 473, 446, 447, 454, 470, 485, 519, 498, 458, 434, 461, 464,
+ 472, 467, 484, 521, 431, 433, 465, 463, 409, 462, 408, 392,);
const YYNOCODE = 105;
const YYSTACKDEPTH = 500;
- const YYNSTATE = 338;
+ const YYNSTATE = 332;
- const YYNRULE = 195;
+ const YYNRULE = 193;
const YYERRORSYMBOL = 60;
@@ -915,8 +902,8 @@ class Smarty_Internal_Templateparser
'SINGLEQUOTESTRING', 'DOUBLECOLON', 'NAMESPACE', 'AT', 'HATCH', 'OPENB', 'CLOSEB',
'DOLLAR', 'LOGOP', 'TLOGOP', 'SINGLECOND', 'QUOTE', 'BACKTICK', 'error', 'start',
'template', 'template_element', 'smartytag', 'literal', 'text_content',
- 'literal_elements', 'literal_element', 'tag', 'variable', 'modifierlist', 'attributes',
- 'value', 'expr', 'varindexed', 'statement', 'statements', 'foraction', 'varvar',
+ 'literal_elements', 'literal_element', 'tag', 'variable', 'attributes', 'value', 'expr',
+ 'varindexed', 'modifierlist', 'statement', 'statements', 'foraction', 'varvar',
'modparameters', 'attribute', 'ternary', 'array', 'lop', 'scond', 'ns1', 'function',
'doublequoted_with_quotes', 'static_class_access', 'object', 'arrayindex', 'indexdef',
'varvarele', 'objectchain', 'objectelement', 'method', 'params', 'modifier',
@@ -934,12 +921,10 @@ class Smarty_Internal_Templateparser
'literal_elements ::= literal_elements literal_element', 'literal_elements ::=',
'literal_element ::= literal', 'literal_element ::= LITERAL',
'smartytag ::= tag RDEL', 'smartytag ::= SIMPELOUTPUT', 'tag ::= LDEL variable',
- 'tag ::= LDEL variable modifierlist attributes',
'tag ::= LDEL variable attributes', 'tag ::= LDEL value',
- 'tag ::= LDEL value modifierlist attributes', 'tag ::= LDEL value attributes',
- 'tag ::= LDEL expr modifierlist attributes', 'tag ::= LDEL expr attributes',
- 'tag ::= LDEL DOLLARID EQUAL value', 'tag ::= LDEL DOLLARID EQUAL expr',
- 'tag ::= LDEL DOLLARID EQUAL expr attributes',
+ 'tag ::= LDEL value attributes', 'tag ::= LDEL expr',
+ 'tag ::= LDEL expr attributes', 'tag ::= LDEL DOLLARID EQUAL value',
+ 'tag ::= LDEL DOLLARID EQUAL expr', 'tag ::= LDEL DOLLARID EQUAL expr attributes',
'tag ::= LDEL varindexed EQUAL expr attributes', 'smartytag ::= SIMPLETAG',
'tag ::= LDEL ID attributes', 'tag ::= LDEL ID',
'tag ::= LDEL ID modifierlist attributes', 'tag ::= LDEL ID PTR ID attributes',
@@ -1034,7 +1019,7 @@ class Smarty_Internal_Templateparser
return 'End of Input';
}
if ($tokenType > 0 && $tokenType < count($this->yyTokenName)) {
- return $this->yyTokenName[$tokenType];
+ return $this->yyTokenName[ $tokenType ];
} else {
return "Unknown";
}
@@ -1055,7 +1040,7 @@ class Smarty_Internal_Templateparser
}
$yytos = array_pop($this->yystack);
if ($this->yyTraceFILE && $this->yyidx >= 0) {
- fwrite($this->yyTraceFILE, $this->yyTracePrompt . 'Popping ' . $this->yyTokenName[$yytos->major] . "\n");
+ fwrite($this->yyTraceFILE, $this->yyTracePrompt . 'Popping ' . $this->yyTokenName[ $yytos->major ] . "\n");
}
$yymajor = $yytos->major;
self::yy_destructor($yymajor, $yytos->minor);
@@ -1078,14 +1063,14 @@ class Smarty_Internal_Templateparser
{
static $res3 = array();
static $res4 = array();
- $state = $this->yystack[$this->yyidx]->stateno;
- $expected = self::$yyExpectedTokens[$state];
- if (isset($res3[$state][$token])) {
- if ($res3[$state][$token]) {
+ $state = $this->yystack[ $this->yyidx ]->stateno;
+ $expected = self::$yyExpectedTokens[ $state ];
+ if (isset($res3[ $state ][ $token ])) {
+ if ($res3[ $state ][ $token ]) {
return $expected;
}
} else {
- if ($res3[$state][$token] = in_array($token, self::$yyExpectedTokens[$state], true)) {
+ if ($res3[ $state ][ $token ] = in_array($token, self::$yyExpectedTokens[ $state ], true)) {
return $expected;
}
}
@@ -1105,20 +1090,20 @@ class Smarty_Internal_Templateparser
return array_unique($expected);
}
$yyruleno = $yyact - self::YYNSTATE;
- $this->yyidx -= self::$yyRuleInfo[$yyruleno][1];
- $nextstate = $this->yy_find_reduce_action($this->yystack[$this->yyidx]->stateno,
- self::$yyRuleInfo[$yyruleno][0]);
- if (isset(self::$yyExpectedTokens[$nextstate])) {
- $expected = array_merge($expected, self::$yyExpectedTokens[$nextstate]);
- if (isset($res4[$nextstate][$token])) {
- if ($res4[$nextstate][$token]) {
+ $this->yyidx -= self::$yyRuleInfo[ $yyruleno ][ 1 ];
+ $nextstate = $this->yy_find_reduce_action($this->yystack[ $this->yyidx ]->stateno,
+ self::$yyRuleInfo[ $yyruleno ][ 0 ]);
+ if (isset(self::$yyExpectedTokens[ $nextstate ])) {
+ $expected = array_merge($expected, self::$yyExpectedTokens[ $nextstate ]);
+ if (isset($res4[ $nextstate ][ $token ])) {
+ if ($res4[ $nextstate ][ $token ]) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
return array_unique($expected);
}
} else {
- if ($res4[$nextstate][$token] =
- in_array($token, self::$yyExpectedTokens[$nextstate], true)
+ if ($res4[ $nextstate ][ $token ] =
+ in_array($token, self::$yyExpectedTokens[ $nextstate ], true)
) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
@@ -1131,8 +1116,8 @@ class Smarty_Internal_Templateparser
$this->yyidx ++;
$x = new TP_yyStackEntry;
$x->stateno = $nextstate;
- $x->major = self::$yyRuleInfo[$yyruleno][0];
- $this->yystack[$this->yyidx] = $x;
+ $x->major = self::$yyRuleInfo[ $yyruleno ][ 0 ];
+ $this->yystack[ $this->yyidx ] = $x;
continue 2;
} elseif ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
$this->yyidx = $yyidx;
@@ -1166,13 +1151,13 @@ class Smarty_Internal_Templateparser
if ($token === 0) {
return true; // 0 is not part of this
}
- $state = $this->yystack[$this->yyidx]->stateno;
- if (isset($res[$state][$token])) {
- if ($res[$state][$token]) {
+ $state = $this->yystack[ $this->yyidx ]->stateno;
+ if (isset($res[ $state ][ $token ])) {
+ if ($res[ $state ][ $token ]) {
return true;
}
} else {
- if ($res[$state][$token] = in_array($token, self::$yyExpectedTokens[$state], true)) {
+ if ($res[ $state ][ $token ] = in_array($token, self::$yyExpectedTokens[ $state ], true)) {
return true;
}
}
@@ -1192,18 +1177,18 @@ class Smarty_Internal_Templateparser
return true;
}
$yyruleno = $yyact - self::YYNSTATE;
- $this->yyidx -= self::$yyRuleInfo[$yyruleno][1];
- $nextstate = $this->yy_find_reduce_action($this->yystack[$this->yyidx]->stateno,
- self::$yyRuleInfo[$yyruleno][0]);
- if (isset($res2[$nextstate][$token])) {
- if ($res2[$nextstate][$token]) {
+ $this->yyidx -= self::$yyRuleInfo[ $yyruleno ][ 1 ];
+ $nextstate = $this->yy_find_reduce_action($this->yystack[ $this->yyidx ]->stateno,
+ self::$yyRuleInfo[ $yyruleno ][ 0 ]);
+ if (isset($res2[ $nextstate ][ $token ])) {
+ if ($res2[ $nextstate ][ $token ]) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
return true;
}
} else {
- if ($res2[$nextstate][$token] = (isset(self::$yyExpectedTokens[$nextstate]) &&
- in_array($token, self::$yyExpectedTokens[$nextstate], true))
+ if ($res2[ $nextstate ][ $token ] = (isset(self::$yyExpectedTokens[ $nextstate ]) &&
+ in_array($token, self::$yyExpectedTokens[ $nextstate ], true))
) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
@@ -1215,8 +1200,8 @@ class Smarty_Internal_Templateparser
$this->yyidx ++;
$x = new TP_yyStackEntry;
$x->stateno = $nextstate;
- $x->major = self::$yyRuleInfo[$yyruleno][0];
- $this->yystack[$this->yyidx] = $x;
+ $x->major = self::$yyRuleInfo[ $yyruleno ][ 0 ];
+ $this->yystack[ $this->yyidx ] = $x;
continue 2;
} elseif ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
$this->yyidx = $yyidx;
@@ -1249,37 +1234,37 @@ class Smarty_Internal_Templateparser
public function yy_find_shift_action($iLookAhead)
{
- $stateno = $this->yystack[$this->yyidx]->stateno;
+ $stateno = $this->yystack[ $this->yyidx ]->stateno;
/* if ($this->yyidx < 0) return self::YY_NO_ACTION; */
- if (!isset(self::$yy_shift_ofst[$stateno])) {
+ if (!isset(self::$yy_shift_ofst[ $stateno ])) {
// no shift actions
- return self::$yy_default[$stateno];
+ return self::$yy_default[ $stateno ];
}
- $i = self::$yy_shift_ofst[$stateno];
+ $i = self::$yy_shift_ofst[ $stateno ];
if ($i === self::YY_SHIFT_USE_DFLT) {
- return self::$yy_default[$stateno];
+ return self::$yy_default[ $stateno ];
}
if ($iLookAhead == self::YYNOCODE) {
return self::YY_NO_ACTION;
}
$i += $iLookAhead;
- if ($i < 0 || $i >= self::YY_SZ_ACTTAB || self::$yy_lookahead[$i] != $iLookAhead) {
+ if ($i < 0 || $i >= self::YY_SZ_ACTTAB || self::$yy_lookahead[ $i ] != $iLookAhead) {
if (count(self::$yyFallback) && $iLookAhead < count(self::$yyFallback) &&
- ($iFallback = self::$yyFallback[$iLookAhead]) != 0
+ ($iFallback = self::$yyFallback[ $iLookAhead ]) != 0
) {
if ($this->yyTraceFILE) {
fwrite($this->yyTraceFILE,
- $this->yyTracePrompt . "FALLBACK " . $this->yyTokenName[$iLookAhead] . " => " .
- $this->yyTokenName[$iFallback] . "\n");
+ $this->yyTracePrompt . "FALLBACK " . $this->yyTokenName[ $iLookAhead ] . " => " .
+ $this->yyTokenName[ $iFallback ] . "\n");
}
return $this->yy_find_shift_action($iFallback);
}
- return self::$yy_default[$stateno];
+ return self::$yy_default[ $stateno ];
} else {
- return self::$yy_action[$i];
+ return self::$yy_action[ $i ];
}
}
@@ -1287,21 +1272,21 @@ class Smarty_Internal_Templateparser
{
/* $stateno = $this->yystack[$this->yyidx]->stateno; */
- if (!isset(self::$yy_reduce_ofst[$stateno])) {
- return self::$yy_default[$stateno];
+ if (!isset(self::$yy_reduce_ofst[ $stateno ])) {
+ return self::$yy_default[ $stateno ];
}
- $i = self::$yy_reduce_ofst[$stateno];
+ $i = self::$yy_reduce_ofst[ $stateno ];
if ($i == self::YY_REDUCE_USE_DFLT) {
- return self::$yy_default[$stateno];
+ return self::$yy_default[ $stateno ];
}
if ($iLookAhead == self::YYNOCODE) {
return self::YY_NO_ACTION;
}
$i += $iLookAhead;
- if ($i < 0 || $i >= self::YY_SZ_ACTTAB || self::$yy_lookahead[$i] != $iLookAhead) {
- return self::$yy_default[$stateno];
+ if ($i < 0 || $i >= self::YY_SZ_ACTTAB || self::$yy_lookahead[ $i ] != $iLookAhead) {
+ return self::$yy_default[ $stateno ];
} else {
- return self::$yy_action[$i];
+ return self::$yy_action[ $i ];
}
}
@@ -1332,7 +1317,7 @@ class Smarty_Internal_Templateparser
fprintf($this->yyTraceFILE, "%sShift %d\n", $this->yyTracePrompt, $yyNewState);
fprintf($this->yyTraceFILE, "%sStack:", $this->yyTracePrompt);
for ($i = 1; $i <= $this->yyidx; $i ++) {
- fprintf($this->yyTraceFILE, " %s", $this->yyTokenName[$this->yystack[$i]->major]);
+ fprintf($this->yyTraceFILE, " %s", $this->yyTokenName[ $this->yystack[ $i ]->major ]);
}
fwrite($this->yyTraceFILE, "\n");
}
@@ -1345,93 +1330,92 @@ class Smarty_Internal_Templateparser
array(0 => 63, 1 => 1), array(0 => 65, 1 => 2), array(0 => 65, 1 => 3),
array(0 => 67, 1 => 2), array(0 => 67, 1 => 0), array(0 => 68, 1 => 1),
array(0 => 68, 1 => 1), array(0 => 64, 1 => 2), array(0 => 64, 1 => 1),
- array(0 => 69, 1 => 2), array(0 => 69, 1 => 4), array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 2), array(0 => 69, 1 => 4), array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 4), array(0 => 69, 1 => 3), array(0 => 69, 1 => 4),
- array(0 => 69, 1 => 4), array(0 => 69, 1 => 5), array(0 => 69, 1 => 5),
- array(0 => 64, 1 => 1), array(0 => 69, 1 => 3), array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 4), array(0 => 69, 1 => 5), array(0 => 69, 1 => 6),
array(0 => 69, 1 => 2), array(0 => 69, 1 => 3), array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 3), array(0 => 69, 1 => 8), array(0 => 78, 1 => 2),
- array(0 => 78, 1 => 1), array(0 => 69, 1 => 5), array(0 => 69, 1 => 7),
- array(0 => 69, 1 => 2), array(0 => 69, 1 => 6), array(0 => 69, 1 => 8),
- array(0 => 69, 1 => 6), array(0 => 69, 1 => 8), array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 4), array(0 => 69, 1 => 2), array(0 => 64, 1 => 1),
- array(0 => 69, 1 => 2), array(0 => 69, 1 => 3), array(0 => 69, 1 => 4),
- array(0 => 69, 1 => 5), array(0 => 72, 1 => 2), array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 0), array(0 => 81, 1 => 4), array(0 => 81, 1 => 2),
+ array(0 => 69, 1 => 3), array(0 => 69, 1 => 2), array(0 => 69, 1 => 3),
+ array(0 => 69, 1 => 4), array(0 => 69, 1 => 4), array(0 => 69, 1 => 5),
+ array(0 => 69, 1 => 5), array(0 => 64, 1 => 1), array(0 => 69, 1 => 3),
+ array(0 => 69, 1 => 2), array(0 => 69, 1 => 4), array(0 => 69, 1 => 5),
+ array(0 => 69, 1 => 6), array(0 => 69, 1 => 2), array(0 => 69, 1 => 3),
+ array(0 => 69, 1 => 2), array(0 => 69, 1 => 3), array(0 => 69, 1 => 8),
+ array(0 => 78, 1 => 2), array(0 => 78, 1 => 1), array(0 => 69, 1 => 5),
+ array(0 => 69, 1 => 7), array(0 => 69, 1 => 2), array(0 => 69, 1 => 6),
+ array(0 => 69, 1 => 8), array(0 => 69, 1 => 6), array(0 => 69, 1 => 8),
+ array(0 => 69, 1 => 3), array(0 => 69, 1 => 4), array(0 => 69, 1 => 2),
+ array(0 => 64, 1 => 1), array(0 => 69, 1 => 2), array(0 => 69, 1 => 3),
+ array(0 => 69, 1 => 4), array(0 => 69, 1 => 5), array(0 => 71, 1 => 2),
+ array(0 => 71, 1 => 1), array(0 => 71, 1 => 0), array(0 => 81, 1 => 4),
array(0 => 81, 1 => 2), array(0 => 81, 1 => 2), array(0 => 81, 1 => 2),
- array(0 => 81, 1 => 2), array(0 => 81, 1 => 4), array(0 => 77, 1 => 1),
- array(0 => 77, 1 => 3), array(0 => 76, 1 => 3), array(0 => 76, 1 => 3),
- array(0 => 76, 1 => 3), array(0 => 76, 1 => 3), array(0 => 74, 1 => 1),
- array(0 => 74, 1 => 1), array(0 => 74, 1 => 3), array(0 => 74, 1 => 3),
- array(0 => 74, 1 => 3), array(0 => 74, 1 => 1), array(0 => 74, 1 => 2),
- array(0 => 74, 1 => 3), array(0 => 74, 1 => 2), array(0 => 74, 1 => 3),
- array(0 => 74, 1 => 3), array(0 => 74, 1 => 3), array(0 => 74, 1 => 3),
- array(0 => 82, 1 => 7), array(0 => 82, 1 => 7), array(0 => 73, 1 => 1),
- array(0 => 73, 1 => 2), array(0 => 73, 1 => 2), array(0 => 73, 1 => 2),
- array(0 => 73, 1 => 2), array(0 => 73, 1 => 1), array(0 => 73, 1 => 1),
- array(0 => 73, 1 => 3), array(0 => 73, 1 => 2), array(0 => 73, 1 => 2),
- array(0 => 73, 1 => 1), array(0 => 73, 1 => 1), array(0 => 73, 1 => 3),
+ array(0 => 81, 1 => 2), array(0 => 81, 1 => 2), array(0 => 81, 1 => 4),
+ array(0 => 77, 1 => 1), array(0 => 77, 1 => 3), array(0 => 76, 1 => 3),
+ array(0 => 76, 1 => 3), array(0 => 76, 1 => 3), array(0 => 76, 1 => 3),
array(0 => 73, 1 => 1), array(0 => 73, 1 => 1), array(0 => 73, 1 => 3),
- array(0 => 73, 1 => 1), array(0 => 73, 1 => 2), array(0 => 73, 1 => 1),
- array(0 => 73, 1 => 3), array(0 => 86, 1 => 1), array(0 => 86, 1 => 1),
- array(0 => 70, 1 => 1), array(0 => 70, 1 => 1), array(0 => 70, 1 => 3),
- array(0 => 70, 1 => 1), array(0 => 70, 1 => 3), array(0 => 70, 1 => 4),
- array(0 => 70, 1 => 3), array(0 => 70, 1 => 4), array(0 => 75, 1 => 2),
- array(0 => 75, 1 => 2), array(0 => 91, 1 => 2), array(0 => 91, 1 => 0),
- array(0 => 92, 1 => 2), array(0 => 92, 1 => 2), array(0 => 92, 1 => 4),
- array(0 => 92, 1 => 2), array(0 => 92, 1 => 2), array(0 => 92, 1 => 4),
- array(0 => 92, 1 => 3), array(0 => 92, 1 => 5), array(0 => 92, 1 => 3),
+ array(0 => 73, 1 => 3), array(0 => 73, 1 => 3), array(0 => 73, 1 => 1),
+ array(0 => 73, 1 => 2), array(0 => 73, 1 => 3), array(0 => 73, 1 => 2),
+ array(0 => 73, 1 => 3), array(0 => 73, 1 => 3), array(0 => 73, 1 => 3),
+ array(0 => 73, 1 => 3), array(0 => 82, 1 => 7), array(0 => 82, 1 => 7),
+ array(0 => 72, 1 => 1), array(0 => 72, 1 => 2), array(0 => 72, 1 => 2),
+ array(0 => 72, 1 => 2), array(0 => 72, 1 => 2), array(0 => 72, 1 => 1),
+ array(0 => 72, 1 => 1), array(0 => 72, 1 => 3), array(0 => 72, 1 => 2),
+ array(0 => 72, 1 => 2), array(0 => 72, 1 => 1), array(0 => 72, 1 => 1),
+ array(0 => 72, 1 => 3), array(0 => 72, 1 => 1), array(0 => 72, 1 => 1),
+ array(0 => 72, 1 => 3), array(0 => 72, 1 => 1), array(0 => 72, 1 => 2),
+ array(0 => 72, 1 => 1), array(0 => 72, 1 => 3), array(0 => 86, 1 => 1),
+ array(0 => 86, 1 => 1), array(0 => 70, 1 => 1), array(0 => 70, 1 => 1),
+ array(0 => 70, 1 => 3), array(0 => 70, 1 => 1), array(0 => 70, 1 => 3),
+ array(0 => 70, 1 => 4), array(0 => 70, 1 => 3), array(0 => 70, 1 => 4),
+ array(0 => 74, 1 => 2), array(0 => 74, 1 => 2), array(0 => 91, 1 => 2),
+ array(0 => 91, 1 => 0), array(0 => 92, 1 => 2), array(0 => 92, 1 => 2),
+ array(0 => 92, 1 => 4), array(0 => 92, 1 => 2), array(0 => 92, 1 => 2),
+ array(0 => 92, 1 => 4), array(0 => 92, 1 => 3), array(0 => 92, 1 => 5),
array(0 => 92, 1 => 3), array(0 => 92, 1 => 3), array(0 => 92, 1 => 3),
- array(0 => 92, 1 => 3), array(0 => 92, 1 => 3), array(0 => 92, 1 => 2),
- array(0 => 79, 1 => 1), array(0 => 79, 1 => 1), array(0 => 79, 1 => 2),
- array(0 => 93, 1 => 1), array(0 => 93, 1 => 1), array(0 => 93, 1 => 3),
- array(0 => 90, 1 => 2), array(0 => 94, 1 => 1), array(0 => 94, 1 => 2),
- array(0 => 95, 1 => 3), array(0 => 95, 1 => 3), array(0 => 95, 1 => 5),
- array(0 => 95, 1 => 6), array(0 => 95, 1 => 2), array(0 => 87, 1 => 4),
- array(0 => 96, 1 => 4), array(0 => 96, 1 => 4), array(0 => 97, 1 => 3),
- array(0 => 97, 1 => 1), array(0 => 97, 1 => 0), array(0 => 71, 1 => 3),
- array(0 => 71, 1 => 2), array(0 => 98, 1 => 3), array(0 => 98, 1 => 2),
- array(0 => 80, 1 => 2), array(0 => 80, 1 => 0), array(0 => 99, 1 => 2),
- array(0 => 99, 1 => 2), array(0 => 89, 1 => 1), array(0 => 89, 1 => 2),
- array(0 => 89, 1 => 1), array(0 => 89, 1 => 2), array(0 => 89, 1 => 3),
- array(0 => 84, 1 => 1), array(0 => 84, 1 => 1), array(0 => 85, 1 => 1),
- array(0 => 83, 1 => 3), array(0 => 100, 1 => 1), array(0 => 100, 1 => 3),
- array(0 => 100, 1 => 0), array(0 => 101, 1 => 3), array(0 => 101, 1 => 3),
- array(0 => 101, 1 => 1), array(0 => 88, 1 => 2), array(0 => 88, 1 => 3),
- array(0 => 102, 1 => 2), array(0 => 102, 1 => 1), array(0 => 103, 1 => 3),
- array(0 => 103, 1 => 3), array(0 => 103, 1 => 1), array(0 => 103, 1 => 3),
- array(0 => 103, 1 => 3), array(0 => 103, 1 => 1), array(0 => 103, 1 => 1),);
+ array(0 => 92, 1 => 3), array(0 => 92, 1 => 3), array(0 => 92, 1 => 3),
+ array(0 => 92, 1 => 2), array(0 => 79, 1 => 1), array(0 => 79, 1 => 1),
+ array(0 => 79, 1 => 2), array(0 => 93, 1 => 1), array(0 => 93, 1 => 1),
+ array(0 => 93, 1 => 3), array(0 => 90, 1 => 2), array(0 => 94, 1 => 1),
+ array(0 => 94, 1 => 2), array(0 => 95, 1 => 3), array(0 => 95, 1 => 3),
+ array(0 => 95, 1 => 5), array(0 => 95, 1 => 6), array(0 => 95, 1 => 2),
+ array(0 => 87, 1 => 4), array(0 => 96, 1 => 4), array(0 => 96, 1 => 4),
+ array(0 => 97, 1 => 3), array(0 => 97, 1 => 1), array(0 => 97, 1 => 0),
+ array(0 => 75, 1 => 3), array(0 => 75, 1 => 2), array(0 => 98, 1 => 3),
+ array(0 => 98, 1 => 2), array(0 => 80, 1 => 2), array(0 => 80, 1 => 0),
+ array(0 => 99, 1 => 2), array(0 => 99, 1 => 2), array(0 => 89, 1 => 1),
+ array(0 => 89, 1 => 2), array(0 => 89, 1 => 1), array(0 => 89, 1 => 2),
+ array(0 => 89, 1 => 3), array(0 => 84, 1 => 1), array(0 => 84, 1 => 1),
+ array(0 => 85, 1 => 1), array(0 => 83, 1 => 3), array(0 => 100, 1 => 1),
+ array(0 => 100, 1 => 3), array(0 => 100, 1 => 0), array(0 => 101, 1 => 3),
+ array(0 => 101, 1 => 3), array(0 => 101, 1 => 1), array(0 => 88, 1 => 2),
+ array(0 => 88, 1 => 3), array(0 => 102, 1 => 2), array(0 => 102, 1 => 1),
+ array(0 => 103, 1 => 3), array(0 => 103, 1 => 3), array(0 => 103, 1 => 1),
+ array(0 => 103, 1 => 3), array(0 => 103, 1 => 3), array(0 => 103, 1 => 1),
+ array(0 => 103, 1 => 1),);
public static $yyReduceMap = array(0 => 0, 1 => 1, 2 => 2, 4 => 4, 5 => 5, 6 => 6, 7 => 7, 8 => 8, 9 => 9,
- 17 => 9, 18 => 9, 45 => 9, 68 => 9, 69 => 9, 77 => 9, 78 => 9, 82 => 9, 92 => 9,
- 97 => 9, 98 => 9, 103 => 9, 105 => 9, 106 => 9, 110 => 9, 112 => 9, 117 => 9,
- 178 => 9, 183 => 9, 10 => 10, 11 => 11, 12 => 12, 13 => 13, 16 => 13, 14 => 14,
- 76 => 14, 15 => 15, 93 => 15, 95 => 15, 96 => 15, 124 => 15, 19 => 19, 20 => 20,
- 21 => 21, 24 => 21, 22 => 22, 25 => 22, 23 => 23, 26 => 23, 28 => 23, 27 => 27,
- 29 => 29, 30 => 29, 31 => 31, 32 => 32, 33 => 33, 34 => 34, 35 => 35, 36 => 36,
- 37 => 37, 38 => 38, 39 => 39, 40 => 40, 42 => 40, 41 => 41, 43 => 43, 44 => 44,
- 46 => 46, 47 => 47, 48 => 48, 49 => 49, 51 => 49, 50 => 50, 52 => 50, 53 => 53,
- 54 => 54, 55 => 55, 56 => 56, 57 => 57, 58 => 58, 59 => 59, 60 => 60, 61 => 61,
- 62 => 62, 71 => 62, 159 => 62, 163 => 62, 167 => 62, 168 => 62, 63 => 63,
- 160 => 63, 166 => 63, 64 => 64, 65 => 65, 66 => 65, 67 => 67, 144 => 67,
- 70 => 70, 72 => 72, 73 => 73, 74 => 73, 75 => 75, 79 => 79, 80 => 80, 81 => 80,
- 83 => 83, 109 => 83, 84 => 84, 85 => 85, 86 => 86, 87 => 87, 88 => 88, 89 => 88,
- 90 => 90, 91 => 91, 94 => 94, 99 => 99, 100 => 100, 101 => 101, 102 => 102,
- 104 => 104, 107 => 107, 108 => 108, 111 => 111, 113 => 113, 114 => 114,
- 115 => 115, 116 => 116, 118 => 118, 119 => 119, 120 => 120, 121 => 121,
- 122 => 122, 123 => 123, 125 => 125, 180 => 125, 126 => 126, 127 => 127,
- 128 => 128, 129 => 129, 130 => 130, 131 => 131, 139 => 131, 132 => 132,
- 133 => 133, 134 => 134, 135 => 134, 137 => 134, 138 => 134, 136 => 136,
- 140 => 140, 141 => 141, 142 => 142, 184 => 142, 143 => 143, 145 => 145,
- 146 => 146, 147 => 147, 148 => 148, 149 => 149, 150 => 150, 151 => 151,
- 152 => 152, 153 => 153, 154 => 154, 155 => 155, 156 => 156, 157 => 157,
- 158 => 158, 161 => 161, 162 => 162, 164 => 164, 165 => 165, 169 => 169,
- 170 => 170, 171 => 171, 172 => 172, 173 => 173, 174 => 174, 175 => 175,
- 176 => 176, 177 => 177, 179 => 179, 181 => 181, 182 => 182, 185 => 185,
- 186 => 186, 187 => 187, 188 => 188, 189 => 188, 191 => 188, 190 => 190,
- 192 => 192, 193 => 193, 194 => 194,);
+ 17 => 9, 18 => 9, 43 => 9, 66 => 9, 67 => 9, 75 => 9, 76 => 9, 80 => 9, 90 => 9,
+ 95 => 9, 96 => 9, 101 => 9, 103 => 9, 104 => 9, 108 => 9, 110 => 9, 115 => 9,
+ 176 => 9, 181 => 9, 10 => 10, 11 => 11, 12 => 12, 13 => 13, 16 => 13, 14 => 14,
+ 74 => 14, 15 => 15, 91 => 15, 93 => 15, 94 => 15, 122 => 15, 19 => 19, 20 => 20,
+ 21 => 21, 23 => 21, 25 => 21, 22 => 22, 24 => 22, 26 => 22, 27 => 27, 28 => 27,
+ 29 => 29, 30 => 30, 31 => 31, 32 => 32, 33 => 33, 34 => 34, 35 => 35, 36 => 36,
+ 37 => 37, 38 => 38, 40 => 38, 39 => 39, 41 => 41, 42 => 42, 44 => 44, 45 => 45,
+ 46 => 46, 47 => 47, 49 => 47, 48 => 48, 50 => 48, 51 => 51, 52 => 52, 53 => 53,
+ 54 => 54, 55 => 55, 56 => 56, 57 => 57, 58 => 58, 59 => 59, 60 => 60, 69 => 60,
+ 157 => 60, 161 => 60, 165 => 60, 166 => 60, 61 => 61, 158 => 61, 164 => 61,
+ 62 => 62, 63 => 63, 64 => 63, 65 => 65, 142 => 65, 68 => 68, 70 => 70, 71 => 71,
+ 72 => 71, 73 => 73, 77 => 77, 78 => 78, 79 => 78, 81 => 81, 107 => 81, 82 => 82,
+ 83 => 83, 84 => 84, 85 => 85, 86 => 86, 87 => 86, 88 => 88, 89 => 89, 92 => 92,
+ 97 => 97, 98 => 98, 99 => 99, 100 => 100, 102 => 102, 105 => 105, 106 => 106,
+ 109 => 109, 111 => 111, 112 => 112, 113 => 113, 114 => 114, 116 => 116,
+ 117 => 117, 118 => 118, 119 => 119, 120 => 120, 121 => 121, 123 => 123,
+ 178 => 123, 124 => 124, 125 => 125, 126 => 126, 127 => 127, 128 => 128,
+ 129 => 129, 137 => 129, 130 => 130, 131 => 131, 132 => 132, 133 => 132,
+ 135 => 132, 136 => 132, 134 => 134, 138 => 138, 139 => 139, 140 => 140,
+ 182 => 140, 141 => 141, 143 => 143, 144 => 144, 145 => 145, 146 => 146,
+ 147 => 147, 148 => 148, 149 => 149, 150 => 150, 151 => 151, 152 => 152,
+ 153 => 153, 154 => 154, 155 => 155, 156 => 156, 159 => 159, 160 => 160,
+ 162 => 162, 163 => 163, 167 => 167, 168 => 168, 169 => 169, 170 => 170,
+ 171 => 171, 172 => 172, 173 => 173, 174 => 174, 175 => 175, 177 => 177,
+ 179 => 179, 180 => 180, 183 => 183, 184 => 184, 185 => 185, 186 => 186,
+ 187 => 186, 189 => 186, 188 => 188, 190 => 190, 191 => 191, 192 => 192,);
#line 225 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r0()
@@ -1444,17 +1428,17 @@ class Smarty_Internal_Templateparser
#line 235 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r1()
{
- if ($this->yystack[$this->yyidx + 0]->minor != null) {
- $this->current_buffer->append_subtree($this, $this->yystack[$this->yyidx + 0]->minor);
+ if ($this->yystack[ $this->yyidx + 0 ]->minor != null) {
+ $this->current_buffer->append_subtree($this, $this->yystack[ $this->yyidx + 0 ]->minor);
}
}
#line 242 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r2()
{
- if ($this->yystack[$this->yyidx + 0]->minor != null) {
+ if ($this->yystack[ $this->yyidx + 0 ]->minor != null) {
// because of possible code injection
- $this->current_buffer->append_subtree($this, $this->yystack[$this->yyidx + 0]->minor);
+ $this->current_buffer->append_subtree($this, $this->yystack[ $this->yyidx + 0 ]->minor);
}
}
@@ -1462,7 +1446,7 @@ class Smarty_Internal_Templateparser
function yy_r4()
{
if ($this->compiler->has_code) {
- $this->_retvalue = $this->mergePrefixCode($this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = $this->mergePrefixCode($this->yystack[ $this->yyidx + 0 ]->minor);
} else {
$this->_retvalue = null;
}
@@ -1473,14 +1457,14 @@ class Smarty_Internal_Templateparser
#line 267 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r5()
{
- $this->_retvalue = new Smarty_Internal_ParseTree_Text($this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = new Smarty_Internal_ParseTree_Text($this->yystack[ $this->yyidx + 0 ]->minor);
}
#line 271 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r6()
{
$code = $this->compiler->compileTag('private_php',
- array(array('code' => $this->yystack[$this->yyidx + 0]->minor),
+ array(array('code' => $this->yystack[ $this->yyidx + 0 ]->minor),
array('type' => $this->lex->phpType)), array());
if ($this->compiler->has_code && !empty($code)) {
$tmp = '';
@@ -1510,19 +1494,19 @@ class Smarty_Internal_Templateparser
#line 289 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r8()
{
- $this->_retvalue = $this->compiler->processText($this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = $this->compiler->processText($this->yystack[ $this->yyidx + 0 ]->minor);
}
#line 293 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r9()
{
- $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
}
#line 297 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r10()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
}
#line 302 "../smarty/lexer/smarty_internal_templateparser.y"
@@ -1546,30 +1530,31 @@ class Smarty_Internal_Templateparser
#line 315 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r14()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 1 ]->minor;
}
#line 319 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r15()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
}
#line 335 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r19()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 1 ]->minor;
}
#line 341 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r20()
{
- $var = trim(substr($this->yystack[$this->yyidx + 0]->minor, $this->lex->ldel_length, - $this->lex->rdel_length),
- ' $');
+ $var =
+ trim(substr($this->yystack[ $this->yyidx + 0 ]->minor, $this->lex->ldel_length, - $this->lex->rdel_length),
+ ' $');
if (preg_match('/^(.*)(\s+nocache)$/', $var, $match)) {
$this->_retvalue = $this->compiler->compileTag('private_print_expression', array('nocache'),
array('value' => $this->compiler->compileVariable('\'' .
- $match[1] .
+ $match[ 1 ] .
'\'')));
} else {
$this->_retvalue = $this->compiler->compileTag('private_print_expression', array(),
@@ -1583,71 +1568,51 @@ class Smarty_Internal_Templateparser
function yy_r21()
{
$this->_retvalue = $this->compiler->compileTag('private_print_expression', array(),
- array('value' => $this->yystack[$this->yyidx + 0]->minor));
+ array('value' => $this->yystack[ $this->yyidx + 0 ]->minor));
}
#line 355 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r22()
{
$this->_retvalue =
- $this->compiler->compileTag('private_print_expression', $this->yystack[$this->yyidx + 0]->minor,
- array('value' => $this->yystack[$this->yyidx + - 2]->minor,
- 'modifierlist' => $this->yystack[$this->yyidx + - 1]->minor));
- }
-
- #line 359 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r23()
- {
- $this->_retvalue =
- $this->compiler->compileTag('private_print_expression', $this->yystack[$this->yyidx + 0]->minor,
- array('value' => $this->yystack[$this->yyidx + - 1]->minor));
+ $this->compiler->compileTag('private_print_expression', $this->yystack[ $this->yyidx + 0 ]->minor,
+ array('value' => $this->yystack[ $this->yyidx + - 1 ]->minor));
}
- #line 373 "../smarty/lexer/smarty_internal_templateparser.y"
+ #line 378 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r27()
{
- $this->_retvalue =
- $this->compiler->compileTag('private_print_expression', $this->yystack[$this->yyidx + 0]->minor,
- array('value' => $this->yystack[$this->yyidx + - 2]->minor,
- 'modifierlist' => $this->yystack[$this->yyidx + - 1]->minor));
+ $this->_retvalue = $this->compiler->compileTag('assign', array(array('value' => $this->yystack[ $this->yyidx +
+ 0 ]->minor), array('var' => '\'' . substr($this->yystack[ $this->yyidx + - 2 ]->minor, 1) . '\'')));
}
#line 386 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r29()
{
$this->_retvalue = $this->compiler->compileTag('assign',
- array(array('value' => $this->yystack[$this->yyidx + 0]->minor),
- array('var' => '\'' .
- substr($this->yystack[$this->yyidx + - 2]->minor, 1) .
- '\'')));
+ array_merge(array(array('value' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor), array('var' => '\'' .
+ substr($this->yystack[ $this->yyidx + - 3 ]->minor, 1) .
+ '\'')), $this->yystack[ $this->yyidx + 0 ]->minor));
}
- #line 394 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r31()
+ #line 390 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r30()
{
$this->_retvalue = $this->compiler->compileTag('assign',
- array_merge(array(array('value' => $this->yystack[$this->yyidx +
- - 1]->minor), array('var' => '\'' .
- substr($this->yystack[$this->yyidx + - 3]->minor, 1) .
- '\'')), $this->yystack[$this->yyidx + 0]->minor));
+ array_merge(array(array('value' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor), array('var' => $this->yystack[ $this->yyidx +
+ - 3 ]->minor[ 'var' ])),
+ $this->yystack[ $this->yyidx + 0 ]->minor),
+ array('smarty_internal_index' => $this->yystack[ $this->yyidx +
+ - 3 ]->minor[ 'smarty_internal_index' ]));
}
- #line 398 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r32()
- {
- $this->_retvalue = $this->compiler->compileTag('assign',
- array_merge(array(array('value' => $this->yystack[$this->yyidx +
- - 1]->minor), array('var' => $this->yystack[$this->yyidx +
- - 3]->minor['var'])), $this->yystack[$this->yyidx + 0]->minor),
- array('smarty_internal_index' => $this->yystack[$this->yyidx +
- - 3]->minor['smarty_internal_index']));
- }
-
- #line 403 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r33()
+ #line 395 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r31()
{
$tag =
- trim(substr($this->yystack[$this->yyidx + 0]->minor, $this->lex->ldel_length, - $this->lex->rdel_length));
+ trim(substr($this->yystack[ $this->yyidx + 0 ]->minor, $this->lex->ldel_length, - $this->lex->rdel_length));
if ($tag == 'strip') {
$this->strip = true;
$this->_retvalue = null;;
@@ -1660,7 +1625,7 @@ class Smarty_Internal_Templateparser
$this->compiler->compileTag('private_print_expression', array(), array('value' => $tag));
} else {
if (preg_match('/^(.*)(\s+nocache)$/', $tag, $match)) {
- $this->_retvalue = $this->compiler->compileTag($match[1], array("'nocache'"));
+ $this->_retvalue = $this->compiler->compileTag($match[ 1 ], array("'nocache'"));
} else {
$this->_retvalue = $this->compiler->compileTag($tag, array());
}
@@ -1668,199 +1633,200 @@ class Smarty_Internal_Templateparser
}
}
- #line 425 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r34()
+ #line 417 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r32()
{
- if (defined($this->yystack[$this->yyidx + - 1]->minor)) {
+ if (defined($this->yystack[ $this->yyidx + - 1 ]->minor)) {
if ($this->security) {
- $this->security->isTrustedConstant($this->yystack[$this->yyidx + - 1]->minor, $this->compiler);
+ $this->security->isTrustedConstant($this->yystack[ $this->yyidx + - 1 ]->minor, $this->compiler);
}
$this->_retvalue =
- $this->compiler->compileTag('private_print_expression', $this->yystack[$this->yyidx + 0]->minor,
- array('value' => $this->yystack[$this->yyidx + - 1]->minor));
+ $this->compiler->compileTag('private_print_expression', $this->yystack[ $this->yyidx + 0 ]->minor,
+ array('value' => $this->yystack[ $this->yyidx + - 1 ]->minor));
} else {
- $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + - 1]->minor,
- $this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + - 1 ]->minor,
+ $this->yystack[ $this->yyidx + 0 ]->minor);
}
}
- #line 435 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r35()
+ #line 427 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r33()
{
- if (defined($this->yystack[$this->yyidx + 0]->minor)) {
+ if (defined($this->yystack[ $this->yyidx + 0 ]->minor)) {
if ($this->security) {
- $this->security->isTrustedConstant($this->yystack[$this->yyidx + 0]->minor, $this->compiler);
+ $this->security->isTrustedConstant($this->yystack[ $this->yyidx + 0 ]->minor, $this->compiler);
}
$this->_retvalue = $this->compiler->compileTag('private_print_expression', array(),
- array('value' => $this->yystack[$this->yyidx + 0]->minor));
+ array('value' => $this->yystack[ $this->yyidx + 0 ]->minor));
} else {
- $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + 0]->minor, array());
+ $this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + 0 ]->minor, array());
}
}
- #line 448 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r36()
+ #line 440 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r34()
{
- if (defined($this->yystack[$this->yyidx + - 2]->minor)) {
+ if (defined($this->yystack[ $this->yyidx + - 2 ]->minor)) {
if ($this->security) {
- $this->security->isTrustedConstant($this->yystack[$this->yyidx + - 2]->minor, $this->compiler);
+ $this->security->isTrustedConstant($this->yystack[ $this->yyidx + - 2 ]->minor, $this->compiler);
}
$this->_retvalue =
- $this->compiler->compileTag('private_print_expression', $this->yystack[$this->yyidx + 0]->minor,
- array('value' => $this->yystack[$this->yyidx + - 2]->minor,
- 'modifierlist' => $this->yystack[$this->yyidx + - 1]->minor));
+ $this->compiler->compileTag('private_print_expression', $this->yystack[ $this->yyidx + 0 ]->minor,
+ array('value' => $this->yystack[ $this->yyidx + - 2 ]->minor,
+ 'modifierlist' => $this->yystack[ $this->yyidx + - 1 ]->minor));
} else {
$this->_retvalue = '' .
- $this->compiler->compileTag($this->yystack[$this->yyidx + - 2]->minor,
- $this->yystack[$this->yyidx + 0]->minor) . 'compiler->compileTag($this->yystack[ $this->yyidx + - 2 ]->minor,
+ $this->yystack[ $this->yyidx + 0 ]->minor) . '_retvalue .= $this->compiler->compileTag('private_modifier', array(),
- array('modifierlist' => $this->yystack[$this->yyidx +
- - 1]->minor, 'value' => 'ob_get_clean()')) . ';?>';
+ array('modifierlist' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor, 'value' => 'ob_get_clean()')) . ';?>';
}
}
- #line 461 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r37()
+ #line 453 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r35()
{
- $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + - 3]->minor,
- $this->yystack[$this->yyidx + 0]->minor,
- array('object_method' => $this->yystack[$this->yyidx +
- - 1]->minor));
+ $this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + - 3 ]->minor,
+ $this->yystack[ $this->yyidx + 0 ]->minor,
+ array('object_method' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor));
}
- #line 466 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r38()
+ #line 458 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r36()
{
$this->_retvalue = '' .
- $this->compiler->compileTag($this->yystack[$this->yyidx + - 4]->minor,
- $this->yystack[$this->yyidx + 0]->minor,
- array('object_method' => $this->yystack[$this->yyidx + - 2]->minor)) .
+ $this->compiler->compileTag($this->yystack[ $this->yyidx + - 4 ]->minor,
+ $this->yystack[ $this->yyidx + 0 ]->minor,
+ array('object_method' => $this->yystack[ $this->yyidx + - 2 ]->minor)) .
'_retvalue .= $this->compiler->compileTag('private_modifier', array(),
- array('modifierlist' => $this->yystack[$this->yyidx +
- - 1]->minor, 'value' => 'ob_get_clean()')) . ';?>';
+ array('modifierlist' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor, 'value' => 'ob_get_clean()')) . ';?>';
}
- #line 472 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r39()
+ #line 464 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r37()
{
- $tag = trim(substr($this->yystack[$this->yyidx + - 1]->minor, $this->lex->ldel_length));
+ $tag = trim(substr($this->yystack[ $this->yyidx + - 1 ]->minor, $this->lex->ldel_length));
$this->_retvalue = $this->compiler->compileTag(($tag == 'else if') ? 'elseif' : $tag, array(),
- array('if condition' => $this->yystack[$this->yyidx +
- 0]->minor));
+ array('if condition' => $this->yystack[ $this->yyidx +
+ 0 ]->minor));
}
- #line 477 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r40()
+ #line 469 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r38()
{
- $tag = trim(substr($this->yystack[$this->yyidx + - 2]->minor, $this->lex->ldel_length));
- $this->_retvalue =
- $this->compiler->compileTag(($tag == 'else if') ? 'elseif' : $tag, $this->yystack[$this->yyidx + 0]->minor,
- array('if condition' => $this->yystack[$this->yyidx + - 1]->minor));
+ $tag = trim(substr($this->yystack[ $this->yyidx + - 2 ]->minor, $this->lex->ldel_length));
+ $this->_retvalue = $this->compiler->compileTag(($tag == 'else if') ? 'elseif' : $tag,
+ $this->yystack[ $this->yyidx + 0 ]->minor,
+ array('if condition' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor));
}
- #line 482 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r41()
+ #line 474 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r39()
{
- $tag = trim(substr($this->yystack[$this->yyidx + - 1]->minor, $this->lex->ldel_length));
+ $tag = trim(substr($this->yystack[ $this->yyidx + - 1 ]->minor, $this->lex->ldel_length));
$this->_retvalue = $this->compiler->compileTag(($tag == 'else if') ? 'elseif' : $tag, array(),
- array('if condition' => $this->yystack[$this->yyidx +
- 0]->minor));
+ array('if condition' => $this->yystack[ $this->yyidx +
+ 0 ]->minor));
}
- #line 493 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r43()
+ #line 485 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r41()
{
- $this->_retvalue = $this->compiler->compileTag('for', array_merge($this->yystack[$this->yyidx + 0]->minor,
- array(array('start' => $this->yystack[$this->yyidx +
- - 6]->minor),
- array('ifexp' => $this->yystack[$this->yyidx +
- - 4]->minor),
- array('var' => $this->yystack[$this->yyidx +
- - 2]->minor),
- array('step' => $this->yystack[$this->yyidx +
- - 1]->minor))), 1);
+ $this->_retvalue = $this->compiler->compileTag('for', array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
+ array(array('start' => $this->yystack[ $this->yyidx +
+ - 6 ]->minor),
+ array('ifexp' => $this->yystack[ $this->yyidx +
+ - 4 ]->minor),
+ array('var' => $this->yystack[ $this->yyidx +
+ - 2 ]->minor),
+ array('step' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor))), 1);
}
- #line 497 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r44()
+ #line 489 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r42()
{
- $this->_retvalue = '=' . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = '=' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 505 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r46()
+ #line 497 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r44()
{
- $this->_retvalue = $this->compiler->compileTag('for', array_merge($this->yystack[$this->yyidx + 0]->minor,
- array(array('start' => $this->yystack[$this->yyidx +
- - 3]->minor),
- array('to' => $this->yystack[$this->yyidx +
- - 1]->minor))), 0);
+ $this->_retvalue = $this->compiler->compileTag('for', array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
+ array(array('start' => $this->yystack[ $this->yyidx +
+ - 3 ]->minor),
+ array('to' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor))), 0);
}
- #line 509 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r47()
+ #line 501 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r45()
{
- $this->_retvalue = $this->compiler->compileTag('for', array_merge($this->yystack[$this->yyidx + 0]->minor,
- array(array('start' => $this->yystack[$this->yyidx +
- - 5]->minor),
- array('to' => $this->yystack[$this->yyidx +
- - 3]->minor),
- array('step' => $this->yystack[$this->yyidx +
- - 1]->minor))), 0);
+ $this->_retvalue = $this->compiler->compileTag('for', array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
+ array(array('start' => $this->yystack[ $this->yyidx +
+ - 5 ]->minor),
+ array('to' => $this->yystack[ $this->yyidx +
+ - 3 ]->minor),
+ array('step' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor))), 0);
}
- #line 514 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r48()
+ #line 506 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r46()
{
- $this->_retvalue = $this->compiler->compileTag('foreach', $this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = $this->compiler->compileTag('foreach', $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 519 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r49()
+ #line 511 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r47()
{
- $this->_retvalue = $this->compiler->compileTag('foreach', array_merge($this->yystack[$this->yyidx + 0]->minor,
- array(array('from' => $this->yystack[$this->yyidx +
- - 3]->minor),
- array('item' => $this->yystack[$this->yyidx +
- - 1]->minor))));
+ $this->_retvalue = $this->compiler->compileTag('foreach', array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
+ array(array('from' => $this->yystack[ $this->yyidx +
+ - 3 ]->minor),
+ array('item' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor))));
}
- #line 523 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r50()
+ #line 515 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r48()
{
- $this->_retvalue = $this->compiler->compileTag('foreach', array_merge($this->yystack[$this->yyidx + 0]->minor,
- array(array('from' => $this->yystack[$this->yyidx +
- - 5]->minor),
- array('item' => $this->yystack[$this->yyidx +
- - 1]->minor),
- array('key' => $this->yystack[$this->yyidx +
- - 3]->minor))));
+ $this->_retvalue = $this->compiler->compileTag('foreach', array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
+ array(array('from' => $this->yystack[ $this->yyidx +
+ - 5 ]->minor),
+ array('item' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor),
+ array('key' => $this->yystack[ $this->yyidx +
+ - 3 ]->minor))));
}
- #line 536 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r53()
+ #line 528 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r51()
{
$this->_retvalue = $this->compiler->compileTag('setfilter', array(),
- array('modifier_list' => array(array_merge(array($this->yystack[$this->yyidx +
- - 1]->minor), $this->yystack[$this->yyidx + 0]->minor))));
+ array('modifier_list' => array(array_merge(array($this->yystack[ $this->yyidx +
+ - 1 ]->minor), $this->yystack[ $this->yyidx + 0 ]->minor))));
}
- #line 540 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r54()
+ #line 532 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r52()
{
$this->_retvalue = $this->compiler->compileTag('setfilter', array(),
- array('modifier_list' => array_merge(array(array_merge(array($this->yystack[$this->yyidx +
- - 2]->minor), $this->yystack[$this->yyidx + - 1]->minor)),
- $this->yystack[$this->yyidx +
- 0]->minor)));
+ array('modifier_list' => array_merge(array(array_merge(array($this->yystack[ $this->yyidx +
+ - 2 ]->minor), $this->yystack[ $this->yyidx + - 1 ]->minor)),
+ $this->yystack[ $this->yyidx +
+ 0 ]->minor)));
}
- #line 545 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r55()
+ #line 537 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r53()
{
- $j = strrpos($this->yystack[$this->yyidx + 0]->minor, '.');
- if ($this->yystack[$this->yyidx + 0]->minor[$j + 1] == 'c') {
+ $j = strrpos($this->yystack[ $this->yyidx + 0 ]->minor, '.');
+ if ($this->yystack[ $this->yyidx + 0 ]->minor[ $j + 1 ] == 'c') {
// {$smarty.block.child}
$this->_retvalue = SMARTY_INTERNAL_COMPILE_BLOCK::compileChildBlock($this->compiler);
} else {
@@ -1869,11 +1835,12 @@ class Smarty_Internal_Templateparser
}
}
- #line 558 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r56()
+ #line 550 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r54()
{
- $tag = trim(substr($this->yystack[$this->yyidx + 0]->minor, $this->lex->ldel_length, - $this->lex->rdel_length),
- ' /');
+ $tag =
+ trim(substr($this->yystack[ $this->yyidx + 0 ]->minor, $this->lex->ldel_length, - $this->lex->rdel_length),
+ ' /');
if ($tag == 'strip') {
$this->strip = false;
$this->_retvalue = null;
@@ -1882,574 +1849,582 @@ class Smarty_Internal_Templateparser
}
}
- #line 567 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r57()
+ #line 559 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r55()
{
- $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + 0]->minor . 'close', array());
+ $this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + 0 ]->minor . 'close', array());
}
- #line 571 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r58()
+ #line 563 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r56()
{
- $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + - 1]->minor . 'close', array(),
- array('modifier_list' => $this->yystack[$this->yyidx +
- 0]->minor));
+ $this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + - 1 ]->minor . 'close', array(),
+ array('modifier_list' => $this->yystack[ $this->yyidx +
+ 0 ]->minor));
}
- #line 576 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r59()
+ #line 568 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r57()
{
- $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + - 2]->minor . 'close', array(),
- array('object_method' => $this->yystack[$this->yyidx +
- 0]->minor));
+ $this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + - 2 ]->minor . 'close', array(),
+ array('object_method' => $this->yystack[ $this->yyidx +
+ 0 ]->minor));
}
- #line 580 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r60()
+ #line 572 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r58()
{
- $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + - 3]->minor . 'close', array(),
- array('object_method' => $this->yystack[$this->yyidx +
- - 1]->minor, 'modifier_list' => $this->yystack[$this->yyidx +
- 0]->minor));
+ $this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + - 3 ]->minor . 'close', array(),
+ array('object_method' => $this->yystack[ $this->yyidx +
+ - 1 ]->minor, 'modifier_list' => $this->yystack[ $this->yyidx +
+ 0 ]->minor));
}
- #line 588 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r61()
+ #line 580 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r59()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor;
- $this->_retvalue[] = $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 1 ]->minor;
+ $this->_retvalue[] = $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 594 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r62()
+ #line 586 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r60()
{
- $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = array($this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 599 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r63()
+ #line 591 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r61()
{
$this->_retvalue = array();
}
- #line 604 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r64()
+ #line 596 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r62()
{
- if (defined($this->yystack[$this->yyidx + 0]->minor)) {
+ if (defined($this->yystack[ $this->yyidx + 0 ]->minor)) {
if ($this->security) {
- $this->security->isTrustedConstant($this->yystack[$this->yyidx + 0]->minor, $this->compiler);
+ $this->security->isTrustedConstant($this->yystack[ $this->yyidx + 0 ]->minor, $this->compiler);
}
$this->_retvalue =
- array($this->yystack[$this->yyidx + - 2]->minor => $this->yystack[$this->yyidx + 0]->minor);
+ array($this->yystack[ $this->yyidx + - 2 ]->minor => $this->yystack[ $this->yyidx + 0 ]->minor);
} else {
$this->_retvalue =
- array($this->yystack[$this->yyidx + - 2]->minor => '\'' . $this->yystack[$this->yyidx + 0]->minor .
+ array($this->yystack[ $this->yyidx + - 2 ]->minor => '\'' . $this->yystack[ $this->yyidx + 0 ]->minor .
'\'');
}
}
+ #line 607 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r63()
+ {
+ $this->_retvalue =
+ array(trim($this->yystack[ $this->yyidx + - 1 ]->minor, " =\n\r\t") => $this->yystack[ $this->yyidx +
+ 0 ]->minor);
+ }
+
#line 615 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r65()
{
- $this->_retvalue =
- array(trim($this->yystack[$this->yyidx + - 1]->minor, " =\n\r\t") => $this->yystack[$this->yyidx +
- 0]->minor);
+ $this->_retvalue = '\'' . $this->yystack[ $this->yyidx + 0 ]->minor . '\'';
}
- #line 623 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r67()
+ #line 627 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r68()
{
- $this->_retvalue = '\'' . $this->yystack[$this->yyidx + 0]->minor . '\'';
+ $this->_retvalue =
+ array($this->yystack[ $this->yyidx + - 2 ]->minor => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 635 "../smarty/lexer/smarty_internal_templateparser.y"
+ #line 640 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r70()
{
- $this->_retvalue = array($this->yystack[$this->yyidx + - 2]->minor => $this->yystack[$this->yyidx + 0]->minor);
+ $this->yystack[ $this->yyidx + - 2 ]->minor[] = $this->yystack[ $this->yyidx + 0 ]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 2 ]->minor;
}
- #line 648 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r72()
+ #line 645 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r71()
{
- $this->yystack[$this->yyidx + - 2]->minor[] = $this->yystack[$this->yyidx + 0]->minor;
- $this->_retvalue = $this->yystack[$this->yyidx + - 2]->minor;
+ $this->_retvalue = array('var' => '\'' . substr($this->yystack[ $this->yyidx + - 2 ]->minor, 1) . '\'',
+ 'value' => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 653 "../smarty/lexer/smarty_internal_templateparser.y"
+ #line 652 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r73()
{
- $this->_retvalue = array('var' => '\'' . substr($this->yystack[$this->yyidx + - 2]->minor, 1) . '\'',
- 'value' => $this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = array('var' => $this->yystack[ $this->yyidx + - 2 ]->minor,
+ 'value' => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 660 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r75()
+ #line 676 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r77()
{
- $this->_retvalue = array('var' => $this->yystack[$this->yyidx + - 2]->minor,
- 'value' => $this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue =
+ '$_smarty_tpl->getStreamVariable(\'' . substr($this->yystack[ $this->yyidx + - 2 ]->minor, 1) . '://' .
+ $this->yystack[ $this->yyidx + 0 ]->minor . '\')';
}
- #line 684 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r79()
+ #line 681 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r78()
{
$this->_retvalue =
- '$_smarty_tpl->getStreamVariable(\'' . substr($this->yystack[$this->yyidx + - 2]->minor, 1) . '://' .
- $this->yystack[$this->yyidx + 0]->minor . '\')';
+ $this->yystack[ $this->yyidx + - 2 ]->minor . trim($this->yystack[ $this->yyidx + - 1 ]->minor) .
+ $this->yystack[ $this->yyidx + 0 ]->minor;
+ }
+
+ #line 695 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r81()
+ {
+ $this->_retvalue = $this->compiler->compileTag('private_modifier', array(),
+ array('value' => $this->yystack[ $this->yyidx + - 1 ]->minor,
+ 'modifierlist' => $this->yystack[ $this->yyidx +
+ 0 ]->minor));
}
- #line 689 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r80()
+ #line 701 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r82()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 2]->minor . trim($this->yystack[$this->yyidx + - 1]->minor) .
- $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = (isset($this->yystack[ $this->yyidx + - 1 ]->minor[ 'pre' ]) ?
+ $this->yystack[ $this->yyidx + - 1 ]->minor[ 'pre' ] : '') .
+ $this->yystack[ $this->yyidx + - 2 ]->minor . $this->yystack[ $this->yyidx + - 1 ]->minor[ 'op' ] .
+ $this->yystack[ $this->yyidx + 0 ]->minor .
+ (isset($this->yystack[ $this->yyidx + - 1 ]->minor[ 'pre' ]) ? ')' : '');
}
- #line 703 "../smarty/lexer/smarty_internal_templateparser.y"
+ #line 704 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r83()
{
- $this->_retvalue = $this->compiler->compileTag('private_modifier', array(),
- array('value' => $this->yystack[$this->yyidx + - 1]->minor,
- 'modifierlist' => $this->yystack[$this->yyidx +
- 0]->minor));
+ $this->_retvalue =
+ $this->yystack[ $this->yyidx + 0 ]->minor . $this->yystack[ $this->yyidx + - 1 ]->minor . ')';
}
- #line 709 "../smarty/lexer/smarty_internal_templateparser.y"
+ #line 708 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r84()
{
- $this->_retvalue = (isset($this->yystack[$this->yyidx + - 1]->minor['pre']) ?
- $this->yystack[$this->yyidx + - 1]->minor['pre'] : '') . $this->yystack[$this->yyidx + - 2]->minor .
- $this->yystack[$this->yyidx + - 1]->minor['op'] . $this->yystack[$this->yyidx + 0]->minor .
- (isset($this->yystack[$this->yyidx + - 1]->minor['pre']) ? ')' : '');
+ $this->_retvalue = 'in_array(' . $this->yystack[ $this->yyidx + - 2 ]->minor . ',' .
+ $this->yystack[ $this->yyidx + 0 ]->minor . ')';
}
#line 712 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r85()
{
- $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor . $this->yystack[$this->yyidx + - 1]->minor . ')';
+ $this->_retvalue = 'in_array(' . $this->yystack[ $this->yyidx + - 2 ]->minor . ',(array)' .
+ $this->yystack[ $this->yyidx + 0 ]->minor . ')';
}
#line 716 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r86()
{
- $this->_retvalue =
- 'in_array(' . $this->yystack[$this->yyidx + - 2]->minor . ',' . $this->yystack[$this->yyidx + 0]->minor .
- ')';
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 2 ]->minor . $this->yystack[ $this->yyidx + - 1 ]->minor .
+ $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 720 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r87()
+ #line 728 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r88()
{
- $this->_retvalue = 'in_array(' . $this->yystack[$this->yyidx + - 2]->minor . ',(array)' .
- $this->yystack[$this->yyidx + 0]->minor . ')';
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 5 ]->minor . ' ? ' .
+ $this->compiler->compileVariable('\'' . substr($this->yystack[ $this->yyidx + - 2 ]->minor, 1) . '\'') .
+ ' : ' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 724 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r88()
+ #line 732 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r89()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 2]->minor . $this->yystack[$this->yyidx + - 1]->minor .
- $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue =
+ $this->yystack[ $this->yyidx + - 5 ]->minor . ' ? ' . $this->yystack[ $this->yyidx + - 2 ]->minor . ' : ' .
+ $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 736 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r90()
+ #line 747 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r92()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 5]->minor . ' ? ' .
- $this->compiler->compileVariable('\'' . substr($this->yystack[$this->yyidx + - 2]->minor, 1) . '\'') .
- ' : ' . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = '!' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 740 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r91()
+ #line 768 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r97()
{
$this->_retvalue =
- $this->yystack[$this->yyidx + - 5]->minor . ' ? ' . $this->yystack[$this->yyidx + - 2]->minor . ' : ' .
- $this->yystack[$this->yyidx + 0]->minor;
+ $this->yystack[ $this->yyidx + - 2 ]->minor . '.' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 755 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r94()
+ #line 772 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r98()
{
- $this->_retvalue = '!' . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 1 ]->minor . '.';
}
#line 776 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r99()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 2]->minor . '.' . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = '.' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 780 "../smarty/lexer/smarty_internal_templateparser.y"
+ #line 781 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r100()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor . '.';
- }
-
- #line 784 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r101()
- {
- $this->_retvalue = '.' . $this->yystack[$this->yyidx + 0]->minor;
- }
-
- #line 789 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r102()
- {
- if (defined($this->yystack[$this->yyidx + 0]->minor)) {
+ if (defined($this->yystack[ $this->yyidx + 0 ]->minor)) {
if ($this->security) {
- $this->security->isTrustedConstant($this->yystack[$this->yyidx + 0]->minor, $this->compiler);
+ $this->security->isTrustedConstant($this->yystack[ $this->yyidx + 0 ]->minor, $this->compiler);
}
- $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
} else {
- $this->_retvalue = '\'' . $this->yystack[$this->yyidx + 0]->minor . '\'';
+ $this->_retvalue = '\'' . $this->yystack[ $this->yyidx + 0 ]->minor . '\'';
}
}
- #line 806 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r104()
+ #line 798 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r102()
{
- $this->_retvalue = "(" . $this->yystack[$this->yyidx + - 1]->minor . ")";
+ $this->_retvalue = "(" . $this->yystack[ $this->yyidx + - 1 ]->minor . ")";
}
- #line 821 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r107()
+ #line 813 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r105()
{
self::$prefix_number ++;
- if ($this->yystack[$this->yyidx + - 2]->minor['var'] == '\'smarty\'') {
+ if ($this->yystack[ $this->yyidx + - 2 ]->minor[ 'var' ] == '\'smarty\'') {
$this->compiler->prefix_code[] = 'compiler->compileTag('private_special_variable', array(),
- $this->yystack[$this->yyidx + - 2]->minor['smarty_internal_index']) . ';?>';
+ $this->yystack[ $this->yyidx + - 2 ]->minor[ 'smarty_internal_index' ]) .
+ ';?>';
} else {
$this->compiler->prefix_code[] = 'compiler->compileVariable($this->yystack[$this->yyidx + - 2]->minor['var']) .
- $this->yystack[$this->yyidx + - 2]->minor['smarty_internal_index'] . ';?>';
+ $this->compiler->compileVariable($this->yystack[ $this->yyidx + - 2 ]->minor[ 'var' ]) .
+ $this->yystack[ $this->yyidx + - 2 ]->minor[ 'smarty_internal_index' ] . ';?>';
}
- $this->_retvalue = '$_tmp' . self::$prefix_number . '::' . $this->yystack[$this->yyidx + 0]->minor[0] .
- $this->yystack[$this->yyidx + 0]->minor[1];
+ $this->_retvalue = '$_tmp' . self::$prefix_number . '::' . $this->yystack[ $this->yyidx + 0 ]->minor[ 0 ] .
+ $this->yystack[ $this->yyidx + 0 ]->minor[ 1 ];
}
- #line 832 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r108()
+ #line 824 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r106()
{
self::$prefix_number ++;
- $tmp = $this->compiler->appendCode('', $this->yystack[$this->yyidx + 0]->minor);
+ $tmp = $this->compiler->appendCode('', $this->yystack[ $this->yyidx + 0 ]->minor);
$this->compiler->prefix_code[] =
$this->compiler->appendCode($tmp, '');
$this->_retvalue = '$_tmp' . self::$prefix_number;
}
- #line 849 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r111()
+ #line 841 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r109()
{
- if (!in_array(strtolower($this->yystack[$this->yyidx + - 2]->minor), array('self', 'parent')) &&
- (!$this->security || $this->security->isTrustedStaticClassAccess($this->yystack[$this->yyidx + - 2]->minor,
- $this->yystack[$this->yyidx + 0]->minor,
- $this->compiler))
+ if (!in_array(strtolower($this->yystack[ $this->yyidx + - 2 ]->minor), array('self', 'parent')) &&
+ (!$this->security ||
+ $this->security->isTrustedStaticClassAccess($this->yystack[ $this->yyidx + - 2 ]->minor,
+ $this->yystack[ $this->yyidx + 0 ]->minor, $this->compiler))
) {
- if (isset($this->smarty->registered_classes[$this->yystack[$this->yyidx + - 2]->minor])) {
- $this->_retvalue = $this->smarty->registered_classes[$this->yystack[$this->yyidx + - 2]->minor] . '::' .
- $this->yystack[$this->yyidx + 0]->minor[0] . $this->yystack[$this->yyidx + 0]->minor[1];
- } else {
+ if (isset($this->smarty->registered_classes[ $this->yystack[ $this->yyidx + - 2 ]->minor ])) {
$this->_retvalue =
- $this->yystack[$this->yyidx + - 2]->minor . '::' . $this->yystack[$this->yyidx + 0]->minor[0] .
- $this->yystack[$this->yyidx + 0]->minor[1];
+ $this->smarty->registered_classes[ $this->yystack[ $this->yyidx + - 2 ]->minor ] . '::' .
+ $this->yystack[ $this->yyidx + 0 ]->minor[ 0 ] . $this->yystack[ $this->yyidx + 0 ]->minor[ 1 ];
+ } else {
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 2 ]->minor . '::' .
+ $this->yystack[ $this->yyidx + 0 ]->minor[ 0 ] . $this->yystack[ $this->yyidx + 0 ]->minor[ 1 ];
}
} else {
- $this->compiler->trigger_template_error("static class '" . $this->yystack[$this->yyidx + - 2]->minor .
+ $this->compiler->trigger_template_error("static class '" . $this->yystack[ $this->yyidx + - 2 ]->minor .
"' is undefined or not allowed by security setting");
}
}
- #line 868 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r113()
+ #line 860 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r111()
{
- $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 879 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r114()
+ #line 871 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r112()
{
$this->_retvalue =
- $this->compiler->compileVariable('\'' . substr($this->yystack[$this->yyidx + 0]->minor, 1) . '\'');
+ $this->compiler->compileVariable('\'' . substr($this->yystack[ $this->yyidx + 0 ]->minor, 1) . '\'');
}
- #line 882 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r115()
+ #line 874 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r113()
{
- if ($this->yystack[$this->yyidx + 0]->minor['var'] == '\'smarty\'') {
+ if ($this->yystack[ $this->yyidx + 0 ]->minor[ 'var' ] == '\'smarty\'') {
$smarty_var = $this->compiler->compileTag('private_special_variable', array(),
- $this->yystack[$this->yyidx + 0]->minor['smarty_internal_index']);
+ $this->yystack[ $this->yyidx +
+ 0 ]->minor[ 'smarty_internal_index' ]);
$this->_retvalue = $smarty_var;
} else {
// used for array reset,next,prev,end,current
- $this->last_variable = $this->yystack[$this->yyidx + 0]->minor['var'];
- $this->last_index = $this->yystack[$this->yyidx + 0]->minor['smarty_internal_index'];
- $this->_retvalue = $this->compiler->compileVariable($this->yystack[$this->yyidx + 0]->minor['var']) .
- $this->yystack[$this->yyidx + 0]->minor['smarty_internal_index'];
+ $this->last_variable = $this->yystack[ $this->yyidx + 0 ]->minor[ 'var' ];
+ $this->last_index = $this->yystack[ $this->yyidx + 0 ]->minor[ 'smarty_internal_index' ];
+ $this->_retvalue = $this->compiler->compileVariable($this->yystack[ $this->yyidx + 0 ]->minor[ 'var' ]) .
+ $this->yystack[ $this->yyidx + 0 ]->minor[ 'smarty_internal_index' ];
}
}
- #line 895 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r116()
+ #line 887 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r114()
{
- $this->_retvalue = '$_smarty_tpl->tpl_vars[' . $this->yystack[$this->yyidx + - 2]->minor . ']->' .
- $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = '$_smarty_tpl->tpl_vars[' . $this->yystack[ $this->yyidx + - 2 ]->minor . ']->' .
+ $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 905 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r118()
+ #line 897 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r116()
{
$this->_retvalue =
- $this->compiler->compileConfigVariable("'" . $this->yystack[$this->yyidx + - 1]->minor . "'");
+ $this->compiler->compileConfigVariable("'" . $this->yystack[ $this->yyidx + - 1 ]->minor . "'");
}
- #line 909 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r119()
+ #line 901 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r117()
{
$this->_retvalue = '(is_array($tmp = ' .
- $this->compiler->compileConfigVariable("'" . $this->yystack[$this->yyidx + - 2]->minor . "'") . ') ? $tmp' .
- $this->yystack[$this->yyidx + 0]->minor . ' :null)';
+ $this->compiler->compileConfigVariable("'" . $this->yystack[ $this->yyidx + - 2 ]->minor . "'") .
+ ') ? $tmp' . $this->yystack[ $this->yyidx + 0 ]->minor . ' :null)';
}
- #line 913 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r120()
+ #line 905 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r118()
{
- $this->_retvalue = $this->compiler->compileConfigVariable($this->yystack[$this->yyidx + - 1]->minor);
+ $this->_retvalue = $this->compiler->compileConfigVariable($this->yystack[ $this->yyidx + - 1 ]->minor);
}
- #line 917 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r121()
+ #line 909 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r119()
{
$this->_retvalue =
- '(is_array($tmp = ' . $this->compiler->compileConfigVariable($this->yystack[$this->yyidx + - 2]->minor) .
- ') ? $tmp' . $this->yystack[$this->yyidx + 0]->minor . ' : null)';
+ '(is_array($tmp = ' . $this->compiler->compileConfigVariable($this->yystack[ $this->yyidx + - 2 ]->minor) .
+ ') ? $tmp' . $this->yystack[ $this->yyidx + 0 ]->minor . ' : null)';
}
- #line 921 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r122()
+ #line 913 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r120()
{
- $this->_retvalue = array('var' => '\'' . substr($this->yystack[$this->yyidx + - 1]->minor, 1) . '\'',
- 'smarty_internal_index' => $this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = array('var' => '\'' . substr($this->yystack[ $this->yyidx + - 1 ]->minor, 1) . '\'',
+ 'smarty_internal_index' => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 924 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r123()
+ #line 916 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r121()
{
- $this->_retvalue = array('var' => $this->yystack[$this->yyidx + - 1]->minor,
- 'smarty_internal_index' => $this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = array('var' => $this->yystack[ $this->yyidx + - 1 ]->minor,
+ 'smarty_internal_index' => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 937 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r125()
+ #line 929 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r123()
{
return;
}
- #line 943 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r126()
+ #line 935 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r124()
{
$this->_retvalue =
- '[' . $this->compiler->compileVariable('\'' . substr($this->yystack[$this->yyidx + 0]->minor, 1) . '\'') .
+ '[' . $this->compiler->compileVariable('\'' . substr($this->yystack[ $this->yyidx + 0 ]->minor, 1) . '\'') .
']';
}
- #line 946 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r127()
+ #line 938 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r125()
{
- $this->_retvalue = '[' . $this->compiler->compileVariable($this->yystack[$this->yyidx + 0]->minor) . ']';
+ $this->_retvalue = '[' . $this->compiler->compileVariable($this->yystack[ $this->yyidx + 0 ]->minor) . ']';
}
- #line 950 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r128()
+ #line 942 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r126()
{
- $this->_retvalue = '[' . $this->compiler->compileVariable($this->yystack[$this->yyidx + - 2]->minor) . '->' .
- $this->yystack[$this->yyidx + 0]->minor . ']';
+ $this->_retvalue = '[' . $this->compiler->compileVariable($this->yystack[ $this->yyidx + - 2 ]->minor) . '->' .
+ $this->yystack[ $this->yyidx + 0 ]->minor . ']';
}
- #line 954 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r129()
+ #line 946 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r127()
{
- if (defined($this->yystack[$this->yyidx + 0]->minor)) {
+ if (defined($this->yystack[ $this->yyidx + 0 ]->minor)) {
if ($this->security) {
- $this->security->isTrustedConstant($this->yystack[$this->yyidx + 0]->minor, $this->compiler);
+ $this->security->isTrustedConstant($this->yystack[ $this->yyidx + 0 ]->minor, $this->compiler);
}
- $this->_retvalue = '[' . $this->yystack[$this->yyidx + 0]->minor . ']';
+ $this->_retvalue = '[' . $this->yystack[ $this->yyidx + 0 ]->minor . ']';
} else {
- $this->_retvalue = "['" . $this->yystack[$this->yyidx + 0]->minor . "']";
+ $this->_retvalue = "['" . $this->yystack[ $this->yyidx + 0 ]->minor . "']";
}
}
- #line 965 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r130()
+ #line 957 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r128()
{
- $this->_retvalue = '[' . $this->yystack[$this->yyidx + 0]->minor . ']';
+ $this->_retvalue = '[' . $this->yystack[ $this->yyidx + 0 ]->minor . ']';
}
- #line 970 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r131()
+ #line 962 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r129()
{
- $this->_retvalue = '[' . $this->yystack[$this->yyidx + - 1]->minor . ']';
+ $this->_retvalue = '[' . $this->yystack[ $this->yyidx + - 1 ]->minor . ']';
}
- #line 975 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r132()
+ #line 967 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r130()
{
$this->_retvalue = '[' . $this->compiler->compileTag('private_special_variable', array(), '[\'section\'][\'' .
- $this->yystack[$this->yyidx +
- - 1]->minor . '\'][\'index\']') .
- ']';
+ $this->yystack[ $this->yyidx +
+ - 1 ]->minor .
+ '\'][\'index\']') . ']';
}
- #line 979 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r133()
+ #line 971 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r131()
{
$this->_retvalue = '[' . $this->compiler->compileTag('private_special_variable', array(), '[\'section\'][\'' .
- $this->yystack[$this->yyidx +
- - 3]->minor . '\'][\'' .
- $this->yystack[$this->yyidx +
- - 1]->minor . '\']') . ']';
+ $this->yystack[ $this->yyidx +
+ - 3 ]->minor . '\'][\'' .
+ $this->yystack[ $this->yyidx +
+ - 1 ]->minor . '\']') . ']';
}
- #line 982 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r134()
+ #line 974 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r132()
{
- $this->_retvalue = '[' . $this->yystack[$this->yyidx + - 1]->minor . ']';
+ $this->_retvalue = '[' . $this->yystack[ $this->yyidx + - 1 ]->minor . ']';
}
- #line 988 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r136()
+ #line 980 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r134()
{
- $this->_retvalue =
- '[' . $this->compiler->compileVariable('\'' . substr($this->yystack[$this->yyidx + - 1]->minor, 1) . '\'') .
+ $this->_retvalue = '[' .
+ $this->compiler->compileVariable('\'' . substr($this->yystack[ $this->yyidx + - 1 ]->minor, 1) . '\'') .
']';;
}
- #line 1004 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r140()
+ #line 996 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r138()
{
$this->_retvalue = '[]';
}
- #line 1014 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r141()
+ #line 1006 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r139()
{
- $this->_retvalue = '\'' . substr($this->yystack[$this->yyidx + 0]->minor, 1) . '\'';
+ $this->_retvalue = '\'' . substr($this->yystack[ $this->yyidx + 0 ]->minor, 1) . '\'';
}
- #line 1018 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r142()
+ #line 1010 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r140()
{
$this->_retvalue = "''";
}
- #line 1023 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r143()
+ #line 1015 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r141()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor . '.' . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue =
+ $this->yystack[ $this->yyidx + - 1 ]->minor . '.' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1031 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r145()
+ #line 1023 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r143()
{
- $var = trim(substr($this->yystack[$this->yyidx + 0]->minor, $this->lex->ldel_length, - $this->lex->rdel_length),
- ' $');
+ $var =
+ trim(substr($this->yystack[ $this->yyidx + 0 ]->minor, $this->lex->ldel_length, - $this->lex->rdel_length),
+ ' $');
$this->_retvalue = $this->compiler->compileVariable('\'' . $var . '\'');
}
- #line 1037 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r146()
+ #line 1029 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r144()
{
- $this->_retvalue = '(' . $this->yystack[$this->yyidx + - 1]->minor . ')';
+ $this->_retvalue = '(' . $this->yystack[ $this->yyidx + - 1 ]->minor . ')';
}
- #line 1044 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r147()
+ #line 1036 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r145()
{
- if ($this->yystack[$this->yyidx + - 1]->minor['var'] == '\'smarty\'') {
+ if ($this->yystack[ $this->yyidx + - 1 ]->minor[ 'var' ] == '\'smarty\'') {
$this->_retvalue = $this->compiler->compileTag('private_special_variable', array(),
- $this->yystack[$this->yyidx +
- - 1]->minor['smarty_internal_index']) .
- $this->yystack[$this->yyidx + 0]->minor;
+ $this->yystack[ $this->yyidx +
+ - 1 ]->minor[ 'smarty_internal_index' ]) .
+ $this->yystack[ $this->yyidx + 0 ]->minor;
} else {
- $this->_retvalue = $this->compiler->compileVariable($this->yystack[$this->yyidx + - 1]->minor['var']) .
- $this->yystack[$this->yyidx + - 1]->minor['smarty_internal_index'] .
- $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->compiler->compileVariable($this->yystack[ $this->yyidx + - 1 ]->minor[ 'var' ]) .
+ $this->yystack[ $this->yyidx + - 1 ]->minor[ 'smarty_internal_index' ] .
+ $this->yystack[ $this->yyidx + 0 ]->minor;
}
}
- #line 1053 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r148()
+ #line 1045 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r146()
{
- $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1058 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r149()
+ #line 1050 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r147()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1063 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r150()
+ #line 1055 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r148()
{
- if ($this->security && substr($this->yystack[$this->yyidx + - 1]->minor, 0, 1) == '_') {
+ if ($this->security && substr($this->yystack[ $this->yyidx + - 1 ]->minor, 0, 1) == '_') {
$this->compiler->trigger_template_error(self::Err1);
}
- $this->_retvalue = '->' . $this->yystack[$this->yyidx + - 1]->minor . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue =
+ '->' . $this->yystack[ $this->yyidx + - 1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1070 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r151()
+ #line 1062 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r149()
{
if ($this->security) {
$this->compiler->trigger_template_error(self::Err2);
}
- $this->_retvalue = '->{' . $this->compiler->compileVariable($this->yystack[$this->yyidx + - 1]->minor) .
- $this->yystack[$this->yyidx + 0]->minor . '}';
+ $this->_retvalue = '->{' . $this->compiler->compileVariable($this->yystack[ $this->yyidx + - 1 ]->minor) .
+ $this->yystack[ $this->yyidx + 0 ]->minor . '}';
}
- #line 1077 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r152()
+ #line 1069 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r150()
{
if ($this->security) {
$this->compiler->trigger_template_error(self::Err2);
}
$this->_retvalue =
- '->{' . $this->yystack[$this->yyidx + - 2]->minor . $this->yystack[$this->yyidx + 0]->minor . '}';
+ '->{' . $this->yystack[ $this->yyidx + - 2 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor . '}';
}
- #line 1084 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r153()
+ #line 1076 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r151()
{
if ($this->security) {
$this->compiler->trigger_template_error(self::Err2);
}
- $this->_retvalue =
- '->{\'' . $this->yystack[$this->yyidx + - 4]->minor . '\'.' . $this->yystack[$this->yyidx + - 2]->minor .
- $this->yystack[$this->yyidx + 0]->minor . '}';
+ $this->_retvalue = '->{\'' . $this->yystack[ $this->yyidx + - 4 ]->minor . '\'.' .
+ $this->yystack[ $this->yyidx + - 2 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor . '}';
}
- #line 1092 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r154()
+ #line 1084 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r152()
{
- $this->_retvalue = '->' . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = '->' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1100 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r155()
+ #line 1092 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r153()
{
if (!$this->security ||
- $this->security->isTrustedPhpFunction($this->yystack[$this->yyidx + - 3]->minor, $this->compiler)
+ $this->security->isTrustedPhpFunction($this->yystack[ $this->yyidx + - 3 ]->minor, $this->compiler)
) {
- if (strcasecmp($this->yystack[$this->yyidx + - 3]->minor, 'isset') === 0 ||
- strcasecmp($this->yystack[$this->yyidx + - 3]->minor, 'empty') === 0 ||
- strcasecmp($this->yystack[$this->yyidx + - 3]->minor, 'array') === 0 ||
- is_callable($this->yystack[$this->yyidx + - 3]->minor)
+ if (strcasecmp($this->yystack[ $this->yyidx + - 3 ]->minor, 'isset') === 0 ||
+ strcasecmp($this->yystack[ $this->yyidx + - 3 ]->minor, 'empty') === 0 ||
+ strcasecmp($this->yystack[ $this->yyidx + - 3 ]->minor, 'array') === 0 ||
+ is_callable($this->yystack[ $this->yyidx + - 3 ]->minor)
) {
- $func_name = strtolower($this->yystack[$this->yyidx + - 3]->minor);
+ $func_name = strtolower($this->yystack[ $this->yyidx + - 3 ]->minor);
if ($func_name == 'isset') {
- if (count($this->yystack[$this->yyidx + - 1]->minor) == 0) {
+ if (count($this->yystack[ $this->yyidx + - 1 ]->minor) == 0) {
$this->compiler->trigger_template_error('Illegal number of paramer in "isset()"');
}
- $par = implode(',', $this->yystack[$this->yyidx + - 1]->minor);
+ $par = implode(',', $this->yystack[ $this->yyidx + - 1 ]->minor);
if (strncasecmp($par, '$_smarty_tpl->smarty->ext->_config->_getConfigVariable',
strlen('$_smarty_tpl->smarty->ext->_config->_getConfigVariable')) === 0
) {
@@ -2460,131 +2435,130 @@ class Smarty_Internal_Templateparser
} else {
$isset_par = str_replace("')->value", "',null,true,false)->value", $par);
}
- $this->_retvalue = $this->yystack[$this->yyidx + - 3]->minor . "(" . $isset_par . ")";
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 3 ]->minor . "(" . $isset_par . ")";
} elseif (in_array($func_name, array('empty', 'reset', 'current', 'end', 'prev', 'next'))) {
- if (count($this->yystack[$this->yyidx + - 1]->minor) != 1) {
+ if (count($this->yystack[ $this->yyidx + - 1 ]->minor) != 1) {
$this->compiler->trigger_template_error('Illegal number of paramer in "empty()"');
}
if ($func_name == 'empty') {
$this->_retvalue = $func_name . '(' . str_replace("')->value", "',null,true,false)->value",
- $this->yystack[$this->yyidx +
- - 1]->minor[0]) . ')';
+ $this->yystack[ $this->yyidx +
+ - 1 ]->minor[ 0 ]) . ')';
} else {
- $this->_retvalue = $func_name . '(' . $this->yystack[$this->yyidx + - 1]->minor[0] . ')';
+ $this->_retvalue = $func_name . '(' . $this->yystack[ $this->yyidx + - 1 ]->minor[ 0 ] . ')';
}
} else {
- $this->_retvalue = $this->yystack[$this->yyidx + - 3]->minor . "(" .
- implode(',', $this->yystack[$this->yyidx + - 1]->minor) . ")";
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 3 ]->minor . "(" .
+ implode(',', $this->yystack[ $this->yyidx + - 1 ]->minor) . ")";
}
} else {
$this->compiler->trigger_template_error("unknown function \"" .
- $this->yystack[$this->yyidx + - 3]->minor . "\"");
+ $this->yystack[ $this->yyidx + - 3 ]->minor . "\"");
}
}
}
- #line 1139 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r156()
+ #line 1131 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r154()
{
- if ($this->security && substr($this->yystack[$this->yyidx + - 3]->minor, 0, 1) == '_') {
+ if ($this->security && substr($this->yystack[ $this->yyidx + - 3 ]->minor, 0, 1) == '_') {
$this->compiler->trigger_template_error(self::Err1);
}
- $this->_retvalue =
- $this->yystack[$this->yyidx + - 3]->minor . "(" . implode(',', $this->yystack[$this->yyidx + - 1]->minor) .
- ")";
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 3 ]->minor . "(" .
+ implode(',', $this->yystack[ $this->yyidx + - 1 ]->minor) . ")";
}
- #line 1146 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r157()
+ #line 1138 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r155()
{
if ($this->security) {
$this->compiler->trigger_template_error(self::Err2);
}
self::$prefix_number ++;
$this->compiler->prefix_code[] = 'compiler->compileVariable('\'' . substr($this->yystack[$this->yyidx + - 3]->minor, 1) . '\'') .
+ $this->compiler->compileVariable('\'' . substr($this->yystack[ $this->yyidx + - 3 ]->minor, 1) . '\'') .
';?>';
$this->_retvalue =
- '$_tmp' . self::$prefix_number . '(' . implode(',', $this->yystack[$this->yyidx + - 1]->minor) . ')';
+ '$_tmp' . self::$prefix_number . '(' . implode(',', $this->yystack[ $this->yyidx + - 1 ]->minor) . ')';
}
- #line 1157 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r158()
+ #line 1149 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r156()
{
$this->_retvalue =
- array_merge($this->yystack[$this->yyidx + - 2]->minor, array($this->yystack[$this->yyidx + 0]->minor));
+ array_merge($this->yystack[ $this->yyidx + - 2 ]->minor, array($this->yystack[ $this->yyidx + 0 ]->minor));
}
- #line 1174 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r161()
+ #line 1166 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r159()
{
- $this->_retvalue = array_merge($this->yystack[$this->yyidx + - 2]->minor,
- array(array_merge($this->yystack[$this->yyidx + - 1]->minor,
- $this->yystack[$this->yyidx + 0]->minor)));
+ $this->_retvalue = array_merge($this->yystack[ $this->yyidx + - 2 ]->minor,
+ array(array_merge($this->yystack[ $this->yyidx + - 1 ]->minor,
+ $this->yystack[ $this->yyidx + 0 ]->minor)));
}
- #line 1178 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r162()
+ #line 1170 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r160()
{
$this->_retvalue =
- array(array_merge($this->yystack[$this->yyidx + - 1]->minor, $this->yystack[$this->yyidx + 0]->minor));
+ array(array_merge($this->yystack[ $this->yyidx + - 1 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor));
}
- #line 1186 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r164()
+ #line 1178 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r162()
{
- $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = array($this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 1194 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r165()
+ #line 1186 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r163()
{
$this->_retvalue =
- array_merge($this->yystack[$this->yyidx + - 1]->minor, $this->yystack[$this->yyidx + 0]->minor);
+ array_merge($this->yystack[ $this->yyidx + - 1 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 1213 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r169()
+ #line 1205 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r167()
{
- $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor, '', 'method');
+ $this->_retvalue = array($this->yystack[ $this->yyidx + 0 ]->minor, '', 'method');
}
- #line 1218 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r170()
+ #line 1210 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r168()
{
$this->_retvalue =
- array($this->yystack[$this->yyidx + - 1]->minor, $this->yystack[$this->yyidx + 0]->minor, 'method');
+ array($this->yystack[ $this->yyidx + - 1 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor, 'method');
}
- #line 1223 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r171()
+ #line 1215 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r169()
{
- $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor, '');
+ $this->_retvalue = array($this->yystack[ $this->yyidx + 0 ]->minor, '');
}
- #line 1228 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r172()
+ #line 1220 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r170()
{
$this->_retvalue =
- array($this->yystack[$this->yyidx + - 1]->minor, $this->yystack[$this->yyidx + 0]->minor, 'property');
+ array($this->yystack[ $this->yyidx + - 1 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor, 'property');
}
- #line 1233 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r173()
+ #line 1225 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r171()
{
- $this->_retvalue = array($this->yystack[$this->yyidx + - 2]->minor,
- $this->yystack[$this->yyidx + - 1]->minor . $this->yystack[$this->yyidx + 0]->minor,
- 'property');
+ $this->_retvalue = array($this->yystack[ $this->yyidx + - 2 ]->minor,
+ $this->yystack[ $this->yyidx + - 1 ]->minor .
+ $this->yystack[ $this->yyidx + 0 ]->minor, 'property');
}
- #line 1239 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r174()
+ #line 1231 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r172()
{
- $this->_retvalue['op'] = ' ' . trim($this->yystack[$this->yyidx + 0]->minor) . ' ';
+ $this->_retvalue[ 'op' ] = ' ' . trim($this->yystack[ $this->yyidx + 0 ]->minor) . ' ';
}
- #line 1243 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r175()
+ #line 1235 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r173()
{
static $lops = array('eq' => array('op' => ' == ', 'pre' => null),
'ne' => array('op' => ' != ', 'pre' => null),
@@ -2605,94 +2579,96 @@ class Smarty_Internal_Templateparser
'isnotevenby' => array('op' => ' / ', 'pre' => '(1 & '),
'isoddby' => array('op' => ' / ', 'pre' => '(1 & '),
'isnotoddby' => array('op' => ' / ', 'pre' => '!(1 & '),);
- $op = strtolower(preg_replace('/\s*/', '', $this->yystack[$this->yyidx + 0]->minor));
- $this->_retvalue = $lops[$op];
+ $op = strtolower(preg_replace('/\s*/', '', $this->yystack[ $this->yyidx + 0 ]->minor));
+ $this->_retvalue = $lops[ $op ];
}
- #line 1269 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r176()
+ #line 1261 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r174()
{
- static $scond = array('iseven' => '!(1 & ', 'isnoteven' => '(1 & ', 'isodd' => '(1 & ',
- 'isnotodd' => '!(1 & ',);
- $op = strtolower(str_replace(' ', '', $this->yystack[$this->yyidx + 0]->minor));
- $this->_retvalue = $scond[$op];
+ static $scond =
+ array('iseven' => '!(1 & ', 'isnoteven' => '(1 & ', 'isodd' => '(1 & ', 'isnotodd' => '!(1 & ',);
+ $op = strtolower(str_replace(' ', '', $this->yystack[ $this->yyidx + 0 ]->minor));
+ $this->_retvalue = $scond[ $op ];
+ }
+
+ #line 1275 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r175()
+ {
+ $this->_retvalue = 'array(' . $this->yystack[ $this->yyidx + - 1 ]->minor . ')';
}
#line 1283 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r177()
{
- $this->_retvalue = 'array(' . $this->yystack[$this->yyidx + - 1]->minor . ')';
+ $this->_retvalue =
+ $this->yystack[ $this->yyidx + - 2 ]->minor . ',' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
#line 1291 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r179()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 2]->minor . ',' . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue =
+ $this->yystack[ $this->yyidx + - 2 ]->minor . '=>' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1299 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r181()
+ #line 1295 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r180()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 2]->minor . '=>' . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue =
+ '\'' . $this->yystack[ $this->yyidx + - 2 ]->minor . '\'=>' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1303 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r182()
+ #line 1311 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r183()
{
- $this->_retvalue =
- '\'' . $this->yystack[$this->yyidx + - 2]->minor . '\'=>' . $this->yystack[$this->yyidx + 0]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 1 ]->minor->to_smarty_php($this);
}
- #line 1319 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r185()
+ #line 1316 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r184()
{
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor->to_smarty_php($this);
+ $this->yystack[ $this->yyidx + - 1 ]->minor->append_subtree($this, $this->yystack[ $this->yyidx + 0 ]->minor);
+ $this->_retvalue = $this->yystack[ $this->yyidx + - 1 ]->minor;
}
- #line 1324 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r186()
+ #line 1321 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r185()
{
- $this->yystack[$this->yyidx + - 1]->minor->append_subtree($this, $this->yystack[$this->yyidx + 0]->minor);
- $this->_retvalue = $this->yystack[$this->yyidx + - 1]->minor;
+ $this->_retvalue = new Smarty_Internal_ParseTree_Dq($this, $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 1329 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r187()
+ #line 1325 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r186()
{
- $this->_retvalue = new Smarty_Internal_ParseTree_Dq($this, $this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = new Smarty_Internal_ParseTree_Code('(string)' . $this->yystack[ $this->yyidx + - 1 ]->minor);
}
#line 1333 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r188()
- {
- $this->_retvalue = new Smarty_Internal_ParseTree_Code('(string)' . $this->yystack[$this->yyidx + - 1]->minor);
- }
-
- #line 1341 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r190()
{
$this->_retvalue = new Smarty_Internal_ParseTree_Code('(string)$_smarty_tpl->tpl_vars[\'' .
- substr($this->yystack[$this->yyidx + 0]->minor, 1) .
+ substr($this->yystack[ $this->yyidx + 0 ]->minor, 1) .
'\']->value');
}
- #line 1349 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r192()
+ #line 1341 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r190()
{
$this->_retvalue =
- new Smarty_Internal_ParseTree_Code('(string)(' . $this->yystack[$this->yyidx + - 1]->minor . ')');
+ new Smarty_Internal_ParseTree_Code('(string)(' . $this->yystack[ $this->yyidx + - 1 ]->minor . ')');
}
- #line 1353 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r193()
+ #line 1345 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r191()
{
- $this->_retvalue = new Smarty_Internal_ParseTree_Tag($this, $this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = new Smarty_Internal_ParseTree_Tag($this, $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 1357 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r194()
+ #line 1349 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r192()
{
- $this->_retvalue = new Smarty_Internal_ParseTree_DqContent($this->yystack[$this->yyidx + 0]->minor);
+ $this->_retvalue = new Smarty_Internal_ParseTree_DqContent($this->yystack[ $this->yyidx + 0 ]->minor);
}
private $_retvalue;
@@ -2701,24 +2677,24 @@ class Smarty_Internal_Templateparser
{
if ($this->yyTraceFILE && $yyruleno >= 0 && $yyruleno < count(self::$yyRuleName)) {
fprintf($this->yyTraceFILE, "%sReduce (%d) [%s].\n", $this->yyTracePrompt, $yyruleno,
- self::$yyRuleName[$yyruleno]);
+ self::$yyRuleName[ $yyruleno ]);
}
$this->_retvalue = $yy_lefthand_side = null;
- if (isset(self::$yyReduceMap[$yyruleno])) {
+ if (isset(self::$yyReduceMap[ $yyruleno ])) {
// call the action
$this->_retvalue = null;
- $this->{'yy_r' . self::$yyReduceMap[$yyruleno]}();
+ $this->{'yy_r' . self::$yyReduceMap[ $yyruleno ]}();
$yy_lefthand_side = $this->_retvalue;
}
- $yygoto = self::$yyRuleInfo[$yyruleno][0];
- $yysize = self::$yyRuleInfo[$yyruleno][1];
+ $yygoto = self::$yyRuleInfo[ $yyruleno ][ 0 ];
+ $yysize = self::$yyRuleInfo[ $yyruleno ][ 1 ];
$this->yyidx -= $yysize;
for ($i = $yysize; $i; $i --) {
// pop all of the right-hand side parameters
array_pop($this->yystack);
}
- $yyact = $this->yy_find_reduce_action($this->yystack[$this->yyidx]->stateno, $yygoto);
+ $yyact = $this->yy_find_reduce_action($this->yystack[ $this->yyidx ]->stateno, $yygoto);
if ($yyact < self::YYNSTATE) {
if (!$this->yyTraceFILE && $yysize) {
$this->yyidx ++;
@@ -2726,7 +2702,7 @@ class Smarty_Internal_Templateparser
$x->stateno = $yyact;
$x->major = $yygoto;
$x->minor = $yy_lefthand_side;
- $this->yystack[$this->yyidx] = $x;
+ $this->yystack[ $this->yyidx ] = $x;
} else {
$this->yy_shift($yyact, $yygoto, $yy_lefthand_side);
}
@@ -2785,7 +2761,7 @@ class Smarty_Internal_Templateparser
$yyendofinput = ($yymajor == 0);
if ($this->yyTraceFILE) {
- fprintf($this->yyTraceFILE, "%sInput %s\n", $this->yyTracePrompt, $this->yyTokenName[$yymajor]);
+ fprintf($this->yyTraceFILE, "%sInput %s\n", $this->yyTracePrompt, $this->yyTokenName[ $yymajor ]);
}
do {
@@ -2812,11 +2788,11 @@ class Smarty_Internal_Templateparser
if ($this->yyerrcnt < 0) {
$this->yy_syntax_error($yymajor, $yytokenvalue);
}
- $yymx = $this->yystack[$this->yyidx]->major;
+ $yymx = $this->yystack[ $this->yyidx ]->major;
if ($yymx == self::YYERRORSYMBOL || $yyerrorhit) {
if ($this->yyTraceFILE) {
fprintf($this->yyTraceFILE, "%sDiscard input token %s\n", $this->yyTracePrompt,
- $this->yyTokenName[$yymajor]);
+ $this->yyTokenName[ $yymajor ]);
}
$this->yy_destructor($yymajor, $yytokenvalue);
$yymajor = self::YYNOCODE;
diff --git a/library/Smarty/libs/sysplugins/smarty_resource.php b/library/Smarty/libs/sysplugins/smarty_resource.php
index 72611255e..93d9fa7a3 100644
--- a/library/Smarty/libs/sysplugins/smarty_resource.php
+++ b/library/Smarty/libs/sysplugins/smarty_resource.php
@@ -240,6 +240,16 @@ abstract class Smarty_Resource
return $resource->buildUniqueResourceName($smarty, $name);
}
+ /*
+ * Check if resource must check time stamps when when loading complied or cached templates.
+ * Resources like 'extends' which use source components my disable timestamp checks on own resource.
+ *
+ * @return bool
+ */
+ public function checkTimestamps() {
+ return true;
+ }
+
/**
* initialize Source Object for given resource
* wrapper for backward compatibility to versions < 3.1.22
diff --git a/library/Smarty/libs/sysplugins/smarty_template_resource_base.php b/library/Smarty/libs/sysplugins/smarty_template_resource_base.php
index b9e2e2830..0911feb8d 100644
--- a/library/Smarty/libs/sysplugins/smarty_template_resource_base.php
+++ b/library/Smarty/libs/sysplugins/smarty_template_resource_base.php
@@ -79,13 +79,6 @@ abstract class Smarty_Template_Resource_Base
*/
public $required_plugins = array();
- /**
- * Known template functions
- *
- * @var array
- */
- public $tpl_function = array();
-
/**
* Included subtemplates
*
--
cgit v1.2.3
From 1e27038b737d47f90286d60a22e7a21bac0f3d04 Mon Sep 17 00:00:00 2001
From: Mario Vavti
Date: Sat, 23 Apr 2016 21:42:10 +0200
Subject: update jquery.textcomplete to version 1.3.4 and add minified version
---
library/jquery-textcomplete/jquery.textcomplete.js | 583 ++++++++++++++++-----
.../jquery-textcomplete/jquery.textcomplete.min.js | 3 +
2 files changed, 443 insertions(+), 143 deletions(-)
create mode 100644 library/jquery-textcomplete/jquery.textcomplete.min.js
(limited to 'library')
diff --git a/library/jquery-textcomplete/jquery.textcomplete.js b/library/jquery-textcomplete/jquery.textcomplete.js
index 3df84f3b4..95e75149c 100644
--- a/library/jquery-textcomplete/jquery.textcomplete.js
+++ b/library/jquery-textcomplete/jquery.textcomplete.js
@@ -1,3 +1,16 @@
+(function (factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD. Register as an anonymous module.
+ define(['jquery'], factory);
+ } else if (typeof module === "object" && module.exports) {
+ var $ = require('jquery');
+ module.exports = factory($);
+ } else {
+ // Browser globals
+ factory(jQuery);
+ }
+}(function (jQuery) {
+
/*!
* jQuery.textcomplete
*
@@ -17,13 +30,18 @@ if (typeof jQuery === 'undefined') {
if (console.warn) { console.warn(message); }
};
+ var id = 1;
+
$.fn.textcomplete = function (strategies, option) {
var args = Array.prototype.slice.call(arguments);
return this.each(function () {
+ var self = this;
var $this = $(this);
var completer = $this.data('textComplete');
if (!completer) {
- completer = new $.fn.textcomplete.Completer(this, option || {});
+ option || (option = {});
+ option._oid = id++; // unique object id
+ completer = new $.fn.textcomplete.Completer(this, option);
$this.data('textComplete', completer);
}
if (typeof strategies === 'string') {
@@ -45,7 +63,10 @@ if (typeof jQuery === 'undefined') {
}
});
});
- completer.register($.fn.textcomplete.Strategy.parse(strategies));
+ completer.register($.fn.textcomplete.Strategy.parse(strategies, {
+ el: self,
+ $el: $this
+ }));
}
});
};
@@ -115,6 +136,10 @@ if (typeof jQuery === 'undefined') {
return Object.prototype.toString.call(obj) === '[object String]';
};
+ var isFunction = function (obj) {
+ return Object.prototype.toString.call(obj) === '[object Function]';
+ };
+
var uniqueId = 0;
function Completer(element, option) {
@@ -124,7 +149,7 @@ if (typeof jQuery === 'undefined') {
this.views = [];
this.option = $.extend({}, Completer._getDefaults(), option);
- if (!this.$el.is('input[type=text]') && !this.$el.is('textarea') && !element.isContentEditable && element.contentEditable != 'true') {
+ if (!this.$el.is('input[type=text]') && !this.$el.is('input[type=search]') && !this.$el.is('textarea') && !element.isContentEditable && element.contentEditable != 'true') {
throw new Error('textcomplete must be called on a Textarea or a ContentEditable.');
}
@@ -171,7 +196,7 @@ if (typeof jQuery === 'undefined') {
if (this.option.adapter) {
Adapter = this.option.adapter;
} else {
- if (this.$el.is('textarea') || this.$el.is('input[type=text]')) {
+ if (this.$el.is('textarea') || this.$el.is('input[type=text]') || this.$el.is('input[type=search]')) {
viewName = typeof element.selectionEnd === 'number' ? 'Textarea' : 'IETextarea';
} else {
viewName = 'ContentEditable';
@@ -192,6 +217,12 @@ if (typeof jQuery === 'undefined') {
this.$el = this.adapter = this.dropdown = null;
},
+ deactivate: function () {
+ if (this.dropdown) {
+ this.dropdown.deactivate();
+ }
+ },
+
// Invoke textcomplete.
trigger: function (text, skipUnchangedTerm) {
if (!this.dropdown) { this.initialize(); }
@@ -200,7 +231,7 @@ if (typeof jQuery === 'undefined') {
if (searchQuery.length) {
var term = searchQuery[1];
// Ignore shift-key, ctrl-key and so on.
- if (skipUnchangedTerm && this._term === term) { return; }
+ if (skipUnchangedTerm && this._term === term && term !== "") { return; }
this._term = term;
this._search.apply(this, searchQuery);
} else {
@@ -224,8 +255,10 @@ if (typeof jQuery === 'undefined') {
//
// value - The selected element of the array callbacked from search func.
// strategy - The Strategy object.
- select: function (value, strategy) {
- this.adapter.select(value, strategy);
+ // e - Click or keydown event object.
+ select: function (value, strategy, e) {
+ this._term = null;
+ this.adapter.select(value, strategy, e);
this.fire('change').fire('textComplete:select', value, strategy);
this.adapter.focus();
},
@@ -248,8 +281,9 @@ if (typeof jQuery === 'undefined') {
var strategy = this.strategies[i];
var context = strategy.context(text);
if (context || context === '') {
+ var matchRegexp = isFunction(strategy.match) ? strategy.match(text) : strategy.match;
if (isString(context)) { text = context; }
- var match = text.match(strategy.match);
+ var match = text.match(matchRegexp);
if (match) { return [strategy, match[strategy.index], match]; }
}
}
@@ -262,14 +296,14 @@ if (typeof jQuery === 'undefined') {
strategy.search(term, function (data, stillSearching) {
if (!self.dropdown.shown) {
self.dropdown.activate();
- self.dropdown.setPosition(self.adapter.getCaretPosition());
}
if (self._clearAtNext) {
// The first callback in the current lock.
self.dropdown.clear();
self._clearAtNext = false;
}
- self.dropdown.render(self._zip(data, strategy));
+ self.dropdown.setPosition(self.adapter.getCaretPosition());
+ self.dropdown.render(self._zip(data, strategy, term));
if (!stillSearching) {
// The last callback in the current lock.
free();
@@ -284,9 +318,9 @@ if (typeof jQuery === 'undefined') {
//
// this._zip(['a', 'b'], 's');
// //=> [{ value: 'a', strategy: 's' }, { value: 'b', strategy: 's' }]
- _zip: function (data, strategy) {
+ _zip: function (data, strategy, term) {
return $.map(data, function (value) {
- return { value: value, strategy: strategy };
+ return { value: value, strategy: strategy, term: term };
});
}
});
@@ -297,6 +331,8 @@ if (typeof jQuery === 'undefined') {
+function ($) {
'use strict';
+ var $window = $(window);
+
var include = function (zippedData, datum) {
var i, elem;
var idProperty = datum.strategy.idProperty
@@ -320,6 +356,16 @@ if (typeof jQuery === 'undefined') {
});
});
+ var commands = {
+ SKIP_DEFAULT: 0,
+ KEY_UP: 1,
+ KEY_DOWN: 2,
+ KEY_ENTER: 3,
+ KEY_PAGEUP: 4,
+ KEY_PAGEDOWN: 5,
+ KEY_ESCAPE: 6
+ };
+
// Dropdown view
// =============
@@ -327,7 +373,7 @@ if (typeof jQuery === 'undefined') {
//
// element - Textarea or contenteditable element.
function Dropdown(element, completer, option) {
- this.$el = Dropdown.findOrCreateElement(option);
+ this.$el = Dropdown.createElement(option);
this.completer = completer;
this.id = completer.id + 'dropdown';
this._data = []; // zipped data.
@@ -338,7 +384,7 @@ if (typeof jQuery === 'undefined') {
if (option.listPosition) { this.setPosition = option.listPosition; }
if (option.height) { this.$el.height(option.height); }
var self = this;
- $.each(['maxCount', 'placement', 'footer', 'header', 'className'], function (_i, name) {
+ $.each(['maxCount', 'placement', 'footer', 'header', 'noResultsMessage', 'className'], function (_i, name) {
if (option[name] != null) { self[name] = option[name]; }
});
this._bindEvents(element);
@@ -349,18 +395,19 @@ if (typeof jQuery === 'undefined') {
// Class methods
// -------------
- findOrCreateElement: function (option) {
+ createElement: function (option) {
var $parent = option.appendTo;
if (!($parent instanceof $)) { $parent = $($parent); }
- var $el = $parent.children('.dropdown-menu')
- if (!$el.length) {
- $el = $('').css({
+ var $el = $('')
+ .addClass('dropdown-menu textcomplete-dropdown')
+ .attr('id', 'textcomplete-dropdown-' + option._oid)
+ .css({
display: 'none',
left: 0,
position: 'absolute',
zIndex: option.zIndex
- }).appendTo($parent);
- }
+ })
+ .appendTo($parent);
return $el;
}
});
@@ -391,6 +438,7 @@ if (typeof jQuery === 'undefined') {
this.$el.off('.' + this.id);
this.$inputEl.off('.' + this.id);
this.clear();
+ this.$el.remove();
this.$el = this.$inputEl = this.completer = null;
delete dropdownViews[this.id]
},
@@ -399,34 +447,45 @@ if (typeof jQuery === 'undefined') {
var contentsHtml = this._buildContents(zippedData);
var unzippedData = $.map(this.data, function (d) { return d.value; });
if (this.data.length) {
+ var strategy = zippedData[0].strategy;
+ if (strategy.id) {
+ this.$el.attr('data-strategy', strategy.id);
+ } else {
+ this.$el.removeAttr('data-strategy');
+ }
this._renderHeader(unzippedData);
this._renderFooter(unzippedData);
if (contentsHtml) {
this._renderContents(contentsHtml);
+ this._fitToBottom();
+ this._fitToRight();
this._activateIndexedItem();
}
this._setScroll();
+ } else if (this.noResultsMessage) {
+ this._renderNoResultsMessage(unzippedData);
} else if (this.shown) {
this.deactivate();
}
},
- setPosition: function (position) {
- this.$el.css(this._applyPlacement(position));
-
+ setPosition: function (pos) {
// Make the dropdown fixed if the input is also fixed
// This can't be done during init, as textcomplete may be used on multiple elements on the same page
// Because the same dropdown is reused behind the scenes, we need to recheck every time the dropdown is showed
var position = 'absolute';
// Check if input or one of its parents has positioning we need to care about
- this.$inputEl.add(this.$inputEl.parents()).each(function() {
+ this.$inputEl.add(this.$inputEl.parents()).each(function() {
if($(this).css('position') === 'absolute') // The element has absolute positioning, so it's all OK
return false;
if($(this).css('position') === 'fixed') {
+ pos.top -= $window.scrollTop();
+ pos.left -= $window.scrollLeft();
position = 'fixed';
return false;
}
});
+ this.$el.css(this._applyPlacement(pos));
this.$el.css({ position: position }); // Update positioning
return this;
@@ -436,7 +495,7 @@ if (typeof jQuery === 'undefined') {
this.$el.html('');
this.data = [];
this._index = 0;
- this._$header = this._$footer = null;
+ this._$header = this._$footer = this._$noResultsMessage = null;
},
activate: function () {
@@ -481,19 +540,25 @@ if (typeof jQuery === 'undefined') {
return e.keyCode === 34; // PAGEDOWN
},
+ isEscape: function (e) {
+ return e.keyCode === 27; // ESCAPE
+ },
+
// Private properties
// ------------------
_data: null, // Currently shown zipped data.
_index: null,
_$header: null,
+ _$noResultsMessage: null,
_$footer: null,
// Private methods
// ---------------
_bindEvents: function () {
- this.$el.on('mousedown.' + this.id, '.textcomplete-item', $.proxy(this._onClick, this))
+ this.$el.on('mousedown.' + this.id, '.textcomplete-item', $.proxy(this._onClick, this));
+ this.$el.on('touchstart.' + this.id, '.textcomplete-item', $.proxy(this._onClick, this));
this.$el.on('mouseover.' + this.id, '.textcomplete-item', $.proxy(this._onMouseover, this));
this.$inputEl.on('keydown.' + this.id, $.proxy(this._onKeydown, this));
},
@@ -506,11 +571,16 @@ if (typeof jQuery === 'undefined') {
$el = $el.closest('.textcomplete-item');
}
var datum = this.data[parseInt($el.data('index'), 10)];
- this.completer.select(datum.value, datum.strategy);
+ this.completer.select(datum.value, datum.strategy, e);
var self = this;
// Deactive at next tick to allow other event handlers to know whether
// the dropdown has been shown or not.
- setTimeout(function () { self.deactivate(); }, 0);
+ setTimeout(function () {
+ self.deactivate();
+ if (e.type === 'touchstart') {
+ self.$inputEl.focus();
+ }
+ }, 0);
},
// Activate hovered item.
@@ -526,21 +596,58 @@ if (typeof jQuery === 'undefined') {
_onKeydown: function (e) {
if (!this.shown) { return; }
+
+ var command;
+
+ if ($.isFunction(this.option.onKeydown)) {
+ command = this.option.onKeydown(e, commands);
+ }
+
+ if (command == null) {
+ command = this._defaultKeydown(e);
+ }
+
+ switch (command) {
+ case commands.KEY_UP:
+ e.preventDefault();
+ this._up();
+ break;
+ case commands.KEY_DOWN:
+ e.preventDefault();
+ this._down();
+ break;
+ case commands.KEY_ENTER:
+ e.preventDefault();
+ this._enter(e);
+ break;
+ case commands.KEY_PAGEUP:
+ e.preventDefault();
+ this._pageup();
+ break;
+ case commands.KEY_PAGEDOWN:
+ e.preventDefault();
+ this._pagedown();
+ break;
+ case commands.KEY_ESCAPE:
+ e.preventDefault();
+ this.deactivate();
+ break;
+ }
+ },
+
+ _defaultKeydown: function (e) {
if (this.isUp(e)) {
- e.preventDefault();
- this._up();
+ return commands.KEY_UP;
} else if (this.isDown(e)) {
- e.preventDefault();
- this._down();
+ return commands.KEY_DOWN;
} else if (this.isEnter(e)) {
- e.preventDefault();
- this._enter();
+ return commands.KEY_ENTER;
} else if (this.isPageup(e)) {
- e.preventDefault();
- this._pageup();
+ return commands.KEY_PAGEUP;
} else if (this.isPagedown(e)) {
- e.preventDefault();
- this._pagedown();
+ return commands.KEY_PAGEDOWN;
+ } else if (this.isEscape(e)) {
+ return commands.KEY_ESCAPE;
}
},
@@ -564,10 +671,10 @@ if (typeof jQuery === 'undefined') {
this._setScroll();
},
- _enter: function () {
+ _enter: function (e) {
var datum = this.data[parseInt(this._getActiveElement().data('index'), 10)];
- this.completer.select(datum.value, datum.strategy);
- this._setScroll();
+ this.completer.select(datum.value, datum.strategy, e);
+ this.deactivate();
},
_pageup: function () {
@@ -630,7 +737,7 @@ if (typeof jQuery === 'undefined') {
index = this.data.length;
this.data.push(datum);
html += '';
- html += datum.strategy.template(datum.value);
+ html += datum.strategy.template(datum.value, datum.term);
html += ' ';
}
return html;
@@ -656,6 +763,16 @@ if (typeof jQuery === 'undefined') {
}
},
+ _renderNoResultsMessage: function (unzippedData) {
+ if (this.noResultsMessage) {
+ if (!this._$noResultsMessage) {
+ this._$noResultsMessage = $(' ').appendTo(this.$el);
+ }
+ var html = $.isFunction(this.noResultsMessage) ? this.noResultsMessage(unzippedData) : this.noResultsMessage;
+ this._$noResultsMessage.html(html);
+ }
+ },
+
_renderContents: function (html) {
if (this._$footer) {
this._$footer.before(html);
@@ -664,7 +781,32 @@ if (typeof jQuery === 'undefined') {
}
},
- _applyPlacement: function (position) {
+ _fitToBottom: function() {
+ var windowScrollBottom = $window.scrollTop() + $window.height();
+ var height = this.$el.height();
+ if ((this.$el.position().top + height) > windowScrollBottom) {
+ this.$el.offset({top: windowScrollBottom - height});
+ }
+ },
+
+ _fitToRight: function() {
+ // We don't know how wide our content is until the browser positions us, and at that point it clips us
+ // to the document width so we don't know if we would have overrun it. As a heuristic to avoid that clipping
+ // (which makes our elements wrap onto the next line and corrupt the next item), if we're close to the right
+ // edge, move left. We don't know how far to move left, so just keep nudging a bit.
+ var tolerance = 30; // pixels. Make wider than vertical scrollbar because we might not be able to use that space.
+ var lastOffset = this.$el.offset().left, offset;
+ var width = this.$el.width();
+ var maxLeft = $window.width() - tolerance;
+ while (lastOffset + width > maxLeft) {
+ this.$el.offset({left: lastOffset - tolerance});
+ offset = this.$el.offset().left;
+ if (offset >= lastOffset) { break; }
+ lastOffset = offset;
+ }
+ },
+
+ _applyPlacement: function (position) {
// If the 'placement' option set to 'top', move the position above the element.
if (this.placement.indexOf('top') !== -1) {
// Overwrite the position object to set the 'bottom' property instead of the top.
@@ -688,6 +830,7 @@ if (typeof jQuery === 'undefined') {
});
$.fn.textcomplete.Dropdown = Dropdown;
+ $.extend($.fn.textcomplete, commands);
}(jQuery);
+function ($) {
@@ -713,9 +856,12 @@ if (typeof jQuery === 'undefined') {
if (this.cache) { this.search = memoize(this.search); }
}
- Strategy.parse = function (optionsArray) {
- return $.map(optionsArray, function (options) {
- return new Strategy(options);
+ Strategy.parse = function (strategiesArray, params) {
+ return $.map(strategiesArray, function (strategy) {
+ var strategyObj = new Strategy(strategy);
+ strategyObj.el = params.el;
+ strategyObj.$el = params.$el;
+ return strategyObj;
});
};
@@ -729,6 +875,7 @@ if (typeof jQuery === 'undefined') {
search: null,
// Optional
+ id: null,
cache: false,
context: function () { return true; },
index: 2,
@@ -818,11 +965,19 @@ if (typeof jQuery === 'undefined') {
},
// Returns the caret's relative coordinates from body's left top corner.
- //
- // FIXME: Calculate the left top corner of `this.option.appendTo` element.
getCaretPosition: function () {
var position = this._getCaretRelativePosition();
var offset = this.$el.offset();
+
+ // Calculate the left top corner of `this.option.appendTo` element.
+ var $parent = this.option.appendTo;
+ if ($parent) {
+ if (!($parent instanceof $)) { $parent = $($parent); }
+ var parentOffset = $parent.offsetParent().offset();
+ offset.top -= parentOffset.top;
+ offset.left -= parentOffset.left;
+ }
+
position.top += offset.top;
position.left += offset.left;
return position;
@@ -848,6 +1003,8 @@ if (typeof jQuery === 'undefined') {
// Suppress searching if it returns true.
_skipSearch: function (clickEvent) {
switch (clickEvent.keyCode) {
+ case 9: // TAB
+ case 13: // ENTER
case 40: // DOWN
case 38: // UP
return true;
@@ -874,89 +1031,58 @@ if (typeof jQuery === 'undefined') {
this.initialize(element, completer, option);
}
- Textarea.DIV_PROPERTIES = {
- left: -9999,
- position: 'absolute',
- top: 0,
- whiteSpace: 'pre-wrap'
- }
-
- Textarea.COPY_PROPERTIES = [
- 'border-width', 'font-family', 'font-size', 'font-style', 'font-variant',
- 'font-weight', 'height', 'letter-spacing', 'word-spacing', 'line-height',
- 'text-decoration', 'text-align', 'width', 'padding-top', 'padding-right',
- 'padding-bottom', 'padding-left', 'margin-top', 'margin-right',
- 'margin-bottom', 'margin-left', 'border-style', 'box-sizing', 'tab-size'
- ];
-
$.extend(Textarea.prototype, $.fn.textcomplete.Adapter.prototype, {
// Public methods
// --------------
// Update the textarea with the given value and strategy.
- select: function (value, strategy) {
+ select: function (value, strategy, e) {
var pre = this.getTextFromHeadToCaret();
var post = this.el.value.substring(this.el.selectionEnd);
- var newSubstr = strategy.replace(value);
- if ($.isArray(newSubstr)) {
- post = newSubstr[1] + post;
- newSubstr = newSubstr[0];
+ var newSubstr = strategy.replace(value, e);
+ if (typeof newSubstr !== 'undefined') {
+ if ($.isArray(newSubstr)) {
+ post = newSubstr[1] + post;
+ newSubstr = newSubstr[0];
+ }
+ pre = pre.replace(strategy.match, newSubstr);
+ this.$el.val(pre + post);
+ this.el.selectionStart = this.el.selectionEnd = pre.length;
}
- pre = pre.replace(strategy.match, newSubstr);
- this.$el.val(pre + post);
- this.el.selectionStart = this.el.selectionEnd = pre.length;
+ },
+
+ getTextFromHeadToCaret: function () {
+ return this.el.value.substring(0, this.el.selectionEnd);
},
// Private methods
// ---------------
- // Returns the caret's relative coordinates from textarea's left top corner.
- //
- // Browser native API does not provide the way to know the position of
- // caret in pixels, so that here we use a kind of hack to accomplish
- // the aim. First of all it puts a dummy div element and completely copies
- // the textarea's style to the element, then it inserts the text and a
- // span element into the textarea.
- // Consequently, the span element's position is the thing what we want.
_getCaretRelativePosition: function () {
- var dummyDiv = $('
').css(this._copyCss())
- .text(this.getTextFromHeadToCaret());
- var span = $(' ').text('.').appendTo(dummyDiv);
- this.$el.before(dummyDiv);
- var position = span.position();
- position.top += span.height() - this.$el.scrollTop();
- position.lineHeight = span.height();
- dummyDiv.remove();
- return position;
- },
-
- _copyCss: function () {
- return $.extend({
- // Set 'scroll' if a scrollbar is being shown; otherwise 'auto'.
- overflow: this.el.scrollHeight > this.el.offsetHeight ? 'scroll' : 'auto'
- }, Textarea.DIV_PROPERTIES, this._getStyles());
+ var p = $.fn.textcomplete.getCaretCoordinates(this.el, this.el.selectionStart);
+ return {
+ top: p.top + this._calculateLineHeight() - this.$el.scrollTop(),
+ left: p.left - this.$el.scrollLeft()
+ };
},
- _getStyles: (function ($) {
- var color = $('
').css(['color']).color;
- if (typeof color !== 'undefined') {
- return function () {
- return this.$el.css(Textarea.COPY_PROPERTIES);
- };
- } else { // jQuery < 1.8
- return function () {
- var $el = this.$el;
- var styles = {};
- $.each(Textarea.COPY_PROPERTIES, function (i, property) {
- styles[property] = $el.css(property);
- });
- return styles;
- };
+ _calculateLineHeight: function () {
+ var lineHeight = parseInt(this.$el.css('line-height'), 10);
+ if (isNaN(lineHeight)) {
+ // http://stackoverflow.com/a/4515470/1297336
+ var parentNode = this.el.parentNode;
+ var temp = document.createElement(this.el.nodeName);
+ var style = this.el.style;
+ temp.setAttribute(
+ 'style',
+ 'margin:0px;padding:0px;font-family:' + style.fontFamily + ';font-size:' + style.fontSize
+ );
+ temp.innerHTML = 'test';
+ parentNode.appendChild(temp);
+ lineHeight = temp.clientHeight;
+ parentNode.removeChild(temp);
}
- })($),
-
- getTextFromHeadToCaret: function () {
- return this.el.value.substring(0, this.el.selectionEnd);
+ return lineHeight;
}
});
@@ -981,22 +1107,24 @@ if (typeof jQuery === 'undefined') {
// Public methods
// --------------
- select: function (value, strategy) {
+ select: function (value, strategy, e) {
var pre = this.getTextFromHeadToCaret();
var post = this.el.value.substring(pre.length);
- var newSubstr = strategy.replace(value);
- if ($.isArray(newSubstr)) {
- post = newSubstr[1] + post;
- newSubstr = newSubstr[0];
+ var newSubstr = strategy.replace(value, e);
+ if (typeof newSubstr !== 'undefined') {
+ if ($.isArray(newSubstr)) {
+ post = newSubstr[1] + post;
+ newSubstr = newSubstr[0];
+ }
+ pre = pre.replace(strategy.match, newSubstr);
+ this.$el.val(pre + post);
+ this.el.focus();
+ var range = this.el.createTextRange();
+ range.collapse(true);
+ range.moveEnd('character', pre.length);
+ range.moveStart('character', pre.length);
+ range.select();
}
- pre = pre.replace(strategy.match, newSubstr);
- this.$el.val(pre + post);
- this.el.focus();
- var range = this.el.createTextRange();
- range.collapse(true);
- range.moveEnd('character', pre.length);
- range.moveStart('character', pre.length);
- range.select();
},
getTextFromHeadToCaret: function () {
@@ -1032,7 +1160,7 @@ if (typeof jQuery === 'undefined') {
// Update the content with the given value and strategy.
// When an dropdown item is selected, it is executed.
- select: function (value, strategy) {
+ select: function (value, strategy, e) {
var pre = this.getTextFromHeadToCaret();
var sel = window.getSelection()
var range = sel.getRangeAt(0);
@@ -1040,20 +1168,41 @@ if (typeof jQuery === 'undefined') {
selection.selectNodeContents(range.startContainer);
var content = selection.toString();
var post = content.substring(range.startOffset);
- var newSubstr = strategy.replace(value);
- if ($.isArray(newSubstr)) {
- post = newSubstr[1] + post;
- newSubstr = newSubstr[0];
+ var newSubstr = strategy.replace(value, e);
+ if (typeof newSubstr !== 'undefined') {
+ if ($.isArray(newSubstr)) {
+ post = newSubstr[1] + post;
+ newSubstr = newSubstr[0];
+ }
+ pre = pre.replace(strategy.match, newSubstr);
+ range.selectNodeContents(range.startContainer);
+ range.deleteContents();
+
+ // create temporary elements
+ var preWrapper = document.createElement("div");
+ preWrapper.innerHTML = pre;
+ var postWrapper = document.createElement("div");
+ postWrapper.innerHTML = post;
+
+ // create the fragment thats inserted
+ var fragment = document.createDocumentFragment();
+ var childNode;
+ var lastOfPre;
+ while (childNode = preWrapper.firstChild) {
+ lastOfPre = fragment.appendChild(childNode);
+ }
+ while (childNode = postWrapper.firstChild) {
+ fragment.appendChild(childNode);
+ }
+
+ // insert the fragment & jump behind the last node in "pre"
+ range.insertNode(fragment);
+ range.setStartAfter(lastOfPre);
+
+ range.collapse(true);
+ sel.removeAllRanges();
+ sel.addRange(range);
}
- pre = pre.replace(strategy.match, newSubstr);
- range.selectNodeContents(range.startContainer);
- range.deleteContents();
- var node = document.createTextNode(pre + post);
- range.insertNode(node);
- range.setStart(node, pre.length);
- range.collapse(true);
- sel.removeAllRanges();
- sel.addRange(range);
},
// Private methods
@@ -1079,8 +1228,7 @@ if (typeof jQuery === 'undefined') {
position.left -= this.$el.offset().left;
position.top += $node.height() - this.$el.offset().top;
position.lineHeight = $node.height();
- var dir = this.$el.attr('dir') || this.$el.css('direction');
- if (dir === 'rtl') { position.left -= this.listView.$el.width(); }
+ $node.remove();
return position;
},
@@ -1102,3 +1250,152 @@ if (typeof jQuery === 'undefined') {
$.fn.textcomplete.ContentEditable = ContentEditable;
}(jQuery);
+
+// The MIT License (MIT)
+//
+// Copyright (c) 2015 Jonathan Ong me@jongleberry.com
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
+// associated documentation files (the "Software"), to deal in the Software without restriction,
+// including without limitation the rights to use, copy, modify, merge, publish, distribute,
+// sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in all copies or
+// substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
+// NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+// https://github.com/component/textarea-caret-position
+
+(function ($) {
+
+// The properties that we copy into a mirrored div.
+// Note that some browsers, such as Firefox,
+// do not concatenate properties, i.e. padding-top, bottom etc. -> padding,
+// so we have to do every single property specifically.
+var properties = [
+ 'direction', // RTL support
+ 'boxSizing',
+ 'width', // on Chrome and IE, exclude the scrollbar, so the mirror div wraps exactly as the textarea does
+ 'height',
+ 'overflowX',
+ 'overflowY', // copy the scrollbar for IE
+
+ 'borderTopWidth',
+ 'borderRightWidth',
+ 'borderBottomWidth',
+ 'borderLeftWidth',
+ 'borderStyle',
+
+ 'paddingTop',
+ 'paddingRight',
+ 'paddingBottom',
+ 'paddingLeft',
+
+ // https://developer.mozilla.org/en-US/docs/Web/CSS/font
+ 'fontStyle',
+ 'fontVariant',
+ 'fontWeight',
+ 'fontStretch',
+ 'fontSize',
+ 'fontSizeAdjust',
+ 'lineHeight',
+ 'fontFamily',
+
+ 'textAlign',
+ 'textTransform',
+ 'textIndent',
+ 'textDecoration', // might not make a difference, but better be safe
+
+ 'letterSpacing',
+ 'wordSpacing',
+
+ 'tabSize',
+ 'MozTabSize'
+
+];
+
+var isBrowser = (typeof window !== 'undefined');
+var isFirefox = (isBrowser && window.mozInnerScreenX != null);
+
+function getCaretCoordinates(element, position, options) {
+ if(!isBrowser) {
+ throw new Error('textarea-caret-position#getCaretCoordinates should only be called in a browser');
+ }
+
+ var debug = options && options.debug || false;
+ if (debug) {
+ var el = document.querySelector('#input-textarea-caret-position-mirror-div');
+ if ( el ) { el.parentNode.removeChild(el); }
+ }
+
+ // mirrored div
+ var div = document.createElement('div');
+ div.id = 'input-textarea-caret-position-mirror-div';
+ document.body.appendChild(div);
+
+ var style = div.style;
+ var computed = window.getComputedStyle? getComputedStyle(element) : element.currentStyle; // currentStyle for IE < 9
+
+ // default textarea styles
+ style.whiteSpace = 'pre-wrap';
+ if (element.nodeName !== 'INPUT')
+ style.wordWrap = 'break-word'; // only for textarea-s
+
+ // position off-screen
+ style.position = 'absolute'; // required to return coordinates properly
+ if (!debug)
+ style.visibility = 'hidden'; // not 'display: none' because we want rendering
+
+ // transfer the element's properties to the div
+ properties.forEach(function (prop) {
+ style[prop] = computed[prop];
+ });
+
+ if (isFirefox) {
+ // Firefox lies about the overflow property for textareas: https://bugzilla.mozilla.org/show_bug.cgi?id=984275
+ if (element.scrollHeight > parseInt(computed.height))
+ style.overflowY = 'scroll';
+ } else {
+ style.overflow = 'hidden'; // for Chrome to not render a scrollbar; IE keeps overflowY = 'scroll'
+ }
+
+ div.textContent = element.value.substring(0, position);
+ // the second special handling for input type="text" vs textarea: spaces need to be replaced with non-breaking spaces - http://stackoverflow.com/a/13402035/1269037
+ if (element.nodeName === 'INPUT')
+ div.textContent = div.textContent.replace(/\s/g, '\u00a0');
+
+ var span = document.createElement('span');
+ // Wrapping must be replicated *exactly*, including when a long word gets
+ // onto the next line, with whitespace at the end of the line before (#7).
+ // The *only* reliable way to do that is to copy the *entire* rest of the
+ // textarea's content into the created at the caret position.
+ // for inputs, just '.' would be enough, but why bother?
+ span.textContent = element.value.substring(position) || '.'; // || because a completely empty faux span doesn't render at all
+ div.appendChild(span);
+
+ var coordinates = {
+ top: span.offsetTop + parseInt(computed['borderTopWidth']),
+ left: span.offsetLeft + parseInt(computed['borderLeftWidth'])
+ };
+
+ if (debug) {
+ span.style.backgroundColor = '#aaa';
+ } else {
+ document.body.removeChild(div);
+ }
+
+ return coordinates;
+}
+
+$.fn.textcomplete.getCaretCoordinates = getCaretCoordinates;
+
+}(jQuery));
+
+return jQuery;
+}));
diff --git a/library/jquery-textcomplete/jquery.textcomplete.min.js b/library/jquery-textcomplete/jquery.textcomplete.min.js
new file mode 100644
index 000000000..d3a427f27
--- /dev/null
+++ b/library/jquery-textcomplete/jquery.textcomplete.min.js
@@ -0,0 +1,3 @@
+/*! jquery-textcomplete - v1.3.4 - 2016-04-19 */
+!function(a){if("function"==typeof define&&define.amd)define(["jquery"],a);else if("object"==typeof module&&module.exports){var b=require("jquery");module.exports=a(b)}else a(jQuery)}(function(a){if("undefined"==typeof a)throw new Error("jQuery.textcomplete requires jQuery");return+function(a){"use strict";var b=function(a){console.warn&&console.warn(a)},c=1;a.fn.textcomplete=function(d,e){var f=Array.prototype.slice.call(arguments);return this.each(function(){var g=this,h=a(this),i=h.data("textComplete");if(i||(e||(e={}),e._oid=c++,i=new a.fn.textcomplete.Completer(this,e),h.data("textComplete",i)),"string"==typeof d){if(!i)return;f.shift(),i[d].apply(i,f),"destroy"===d&&h.removeData("textComplete")}else a.each(d,function(c){a.each(["header","footer","placement","maxCount"],function(a){c[a]&&(i.option[a]=c[a],b(a+"as a strategy param is deprecated. Use option."),delete c[a])})}),i.register(a.fn.textcomplete.Strategy.parse(d,{el:g,$el:h}))})}}(a),+function(a){"use strict";function b(c,d){if(this.$el=a(c),this.id="textcomplete"+f++,this.strategies=[],this.views=[],this.option=a.extend({},b._getDefaults(),d),!(this.$el.is("input[type=text]")||this.$el.is("input[type=search]")||this.$el.is("textarea")||c.isContentEditable||"true"==c.contentEditable))throw new Error("textcomplete must be called on a Textarea or a ContentEditable.");if(c===document.activeElement)this.initialize();else{var e=this;this.$el.one("focus."+this.id,function(){e.initialize()})}}var c=function(a){var b,c;return function(){var d=Array.prototype.slice.call(arguments);if(b)return void(c=d);b=!0;var e=this;d.unshift(function f(){if(c){var d=c;c=void 0,d.unshift(f),a.apply(e,d)}else b=!1}),a.apply(this,d)}},d=function(a){return"[object String]"===Object.prototype.toString.call(a)},e=function(a){return"[object Function]"===Object.prototype.toString.call(a)},f=0;b._getDefaults=function(){return b.DEFAULTS||(b.DEFAULTS={appendTo:a("body"),zIndex:"100"}),b.DEFAULTS},a.extend(b.prototype,{id:null,option:null,strategies:null,adapter:null,dropdown:null,$el:null,initialize:function(){var b=this.$el.get(0);this.dropdown=new a.fn.textcomplete.Dropdown(b,this,this.option);var c,d;this.option.adapter?c=this.option.adapter:(d=this.$el.is("textarea")||this.$el.is("input[type=text]")||this.$el.is("input[type=search]")?"number"==typeof b.selectionEnd?"Textarea":"IETextarea":"ContentEditable",c=a.fn.textcomplete[d]),this.adapter=new c(b,this,this.option)},destroy:function(){this.$el.off("."+this.id),this.adapter&&this.adapter.destroy(),this.dropdown&&this.dropdown.destroy(),this.$el=this.adapter=this.dropdown=null},deactivate:function(){this.dropdown&&this.dropdown.deactivate()},trigger:function(a,b){this.dropdown||this.initialize(),null!=a||(a=this.adapter.getTextFromHeadToCaret());var c=this._extractSearchQuery(a);if(c.length){var d=c[1];if(b&&this._term===d&&""!==d)return;this._term=d,this._search.apply(this,c)}else this._term=null,this.dropdown.deactivate()},fire:function(a){var b=Array.prototype.slice.call(arguments,1);return this.$el.trigger(a,b),this},register:function(a){Array.prototype.push.apply(this.strategies,a)},select:function(a,b,c){this._term=null,this.adapter.select(a,b,c),this.fire("change").fire("textComplete:select",a,b),this.adapter.focus()},_clearAtNext:!0,_term:null,_extractSearchQuery:function(a){for(var b=0;b").addClass("dropdown-menu textcomplete-dropdown").attr("id","textcomplete-dropdown-"+b._oid).css({display:"none",left:0,position:"absolute",zIndex:b.zIndex}).appendTo(c);return d}}),a.extend(b.prototype,{$el:null,$inputEl:null,completer:null,footer:null,header:null,id:null,maxCount:10,placement:"",shown:!1,data:[],className:"",destroy:function(){this.deactivate(),this.$el.off("."+this.id),this.$inputEl.off("."+this.id),this.clear(),this.$el.remove(),this.$el=this.$inputEl=this.completer=null,delete e[this.id]},render:function(b){var c=this._buildContents(b),d=a.map(this.data,function(a){return a.value});if(this.data.length){var e=b[0].strategy;e.id?this.$el.attr("data-strategy",e.id):this.$el.removeAttr("data-strategy"),this._renderHeader(d),this._renderFooter(d),c&&(this._renderContents(c),this._fitToBottom(),this._fitToRight(),this._activateIndexedItem()),this._setScroll()}else this.noResultsMessage?this._renderNoResultsMessage(d):this.shown&&this.deactivate()},setPosition:function(b){var d="absolute";return this.$inputEl.add(this.$inputEl.parents()).each(function(){return"absolute"===a(this).css("position")?!1:"fixed"===a(this).css("position")?(b.top-=c.scrollTop(),b.left-=c.scrollLeft(),d="fixed",!1):void 0}),this.$el.css(this._applyPlacement(b)),this.$el.css({position:d}),this},clear:function(){this.$el.html(""),this.data=[],this._index=0,this._$header=this._$footer=this._$noResultsMessage=null},activate:function(){return this.shown||(this.clear(),this.$el.show(),this.className&&this.$el.addClass(this.className),this.completer.fire("textComplete:show"),this.shown=!0),this},deactivate:function(){return this.shown&&(this.$el.hide(),this.className&&this.$el.removeClass(this.className),this.completer.fire("textComplete:hide"),this.shown=!1),this},isUp:function(a){return 38===a.keyCode||a.ctrlKey&&80===a.keyCode},isDown:function(a){return 40===a.keyCode||a.ctrlKey&&78===a.keyCode},isEnter:function(a){var b=a.ctrlKey||a.altKey||a.metaKey||a.shiftKey;return!b&&(13===a.keyCode||9===a.keyCode||this.option.completeOnSpace===!0&&32===a.keyCode)},isPageup:function(a){return 33===a.keyCode},isPagedown:function(a){return 34===a.keyCode},isEscape:function(a){return 27===a.keyCode},_data:null,_index:null,_$header:null,_$noResultsMessage:null,_$footer:null,_bindEvents:function(){this.$el.on("mousedown."+this.id,".textcomplete-item",a.proxy(this._onClick,this)),this.$el.on("touchstart."+this.id,".textcomplete-item",a.proxy(this._onClick,this)),this.$el.on("mouseover."+this.id,".textcomplete-item",a.proxy(this._onMouseover,this)),this.$inputEl.on("keydown."+this.id,a.proxy(this._onKeydown,this))},_onClick:function(b){var c=a(b.target);b.preventDefault(),b.originalEvent.keepTextCompleteDropdown=this.id,c.hasClass("textcomplete-item")||(c=c.closest(".textcomplete-item"));var d=this.data[parseInt(c.data("index"),10)];this.completer.select(d.value,d.strategy,b);var e=this;setTimeout(function(){e.deactivate(),"touchstart"===b.type&&e.$inputEl.focus()},0)},_onMouseover:function(b){var c=a(b.target);b.preventDefault(),c.hasClass("textcomplete-item")||(c=c.closest(".textcomplete-item")),this._index=parseInt(c.data("index"),10),this._activateIndexedItem()},_onKeydown:function(b){if(this.shown){var c;switch(a.isFunction(this.option.onKeydown)&&(c=this.option.onKeydown(b,f)),null==c&&(c=this._defaultKeydown(b)),c){case f.KEY_UP:b.preventDefault(),this._up();break;case f.KEY_DOWN:b.preventDefault(),this._down();break;case f.KEY_ENTER:b.preventDefault(),this._enter(b);break;case f.KEY_PAGEUP:b.preventDefault(),this._pageup();break;case f.KEY_PAGEDOWN:b.preventDefault(),this._pagedown();break;case f.KEY_ESCAPE:b.preventDefault(),this.deactivate()}}},_defaultKeydown:function(a){return this.isUp(a)?f.KEY_UP:this.isDown(a)?f.KEY_DOWN:this.isEnter(a)?f.KEY_ENTER:this.isPageup(a)?f.KEY_PAGEUP:this.isPagedown(a)?f.KEY_PAGEDOWN:this.isEscape(a)?f.KEY_ESCAPE:void 0},_up:function(){0===this._index?this._index=this.data.length-1:this._index-=1,this._activateIndexedItem(),this._setScroll()},_down:function(){this._index===this.data.length-1?this._index=0:this._index+=1,this._activateIndexedItem(),this._setScroll()},_enter:function(a){var b=this.data[parseInt(this._getActiveElement().data("index"),10)];this.completer.select(b.value,b.strategy,a),this.deactivate()},_pageup:function(){var b=0,c=this._getActiveElement().position().top-this.$el.innerHeight();this.$el.children().each(function(d){return a(this).position().top+a(this).outerHeight()>c?(b=d,!1):void 0}),this._index=b,this._activateIndexedItem(),this._setScroll()},_pagedown:function(){var b=this.data.length-1,c=this._getActiveElement().position().top+this.$el.innerHeight();this.$el.children().each(function(d){return a(this).position().top>c?(b=d,!1):void 0}),this._index=b,this._activateIndexedItem(),this._setScroll()},_activateIndexedItem:function(){this.$el.find(".textcomplete-item.active").removeClass("active"),this._getActiveElement().addClass("active")},_getActiveElement:function(){return this.$el.children(".textcomplete-item:nth("+this._index+")")},_setScroll:function(){var a=this._getActiveElement(),b=a.position().top,c=a.outerHeight(),d=this.$el.innerHeight(),e=this.$el.scrollTop();0===this._index||this._index==this.data.length-1||0>b?this.$el.scrollTop(b+e):b+c>d&&this.$el.scrollTop(b+c+e-d)},_buildContents:function(a){var b,c,e,f="";for(c=0;c',f+=b.strategy.template(b.value,b.term),f+=" ");return f},_renderHeader:function(b){if(this.header){this._$header||(this._$header=a('').prependTo(this.$el));var c=a.isFunction(this.header)?this.header(b):this.header;this._$header.html(c)}},_renderFooter:function(b){if(this.footer){this._$footer||(this._$footer=a('').appendTo(this.$el));var c=a.isFunction(this.footer)?this.footer(b):this.footer;this._$footer.html(c)}},_renderNoResultsMessage:function(b){if(this.noResultsMessage){this._$noResultsMessage||(this._$noResultsMessage=a(' ').appendTo(this.$el));var c=a.isFunction(this.noResultsMessage)?this.noResultsMessage(b):this.noResultsMessage;this._$noResultsMessage.html(c)}},_renderContents:function(a){this._$footer?this._$footer.before(a):this.$el.append(a)},_fitToBottom:function(){var a=c.scrollTop()+c.height(),b=this.$el.height();this.$el.position().top+b>a&&this.$el.offset({top:a-b})},_fitToRight:function(){for(var a,b=30,d=this.$el.offset().left,e=this.$el.width(),f=c.width()-b;d+e>f&&(this.$el.offset({left:d-b}),a=this.$el.offset().left,!(a>=d));)d=a},_applyPlacement:function(a){return-1!==this.placement.indexOf("top")?a={top:"auto",bottom:this.$el.parent().height()-a.top+a.lineHeight,left:a.left}:(a.bottom="auto",delete a.lineHeight),-1!==this.placement.indexOf("absleft")?a.left=0:-1!==this.placement.indexOf("absright")&&(a.right=0,a.left="auto"),a}}),a.fn.textcomplete.Dropdown=b,a.extend(a.fn.textcomplete,f)}(a),+function(a){"use strict";function b(b){a.extend(this,b),this.cache&&(this.search=c(this.search))}var c=function(a){var b={};return function(c,d){b[c]?d(b[c]):a.call(this,c,function(a){b[c]=(b[c]||[]).concat(a),d.apply(null,arguments)})}};b.parse=function(c,d){return a.map(c,function(a){var c=new b(a);return c.el=d.el,c.$el=d.$el,c})},a.extend(b.prototype,{match:null,replace:null,search:null,id:null,cache:!1,context:function(){return!0},index:2,template:function(a){return a},idProperty:null}),a.fn.textcomplete.Strategy=b}(a),+function(a){"use strict";function b(){}var c=Date.now||function(){return(new Date).getTime()},d=function(a,b){var d,e,f,g,h,i=function(){var j=c()-g;b>j?d=setTimeout(i,b-j):(d=null,h=a.apply(f,e),f=e=null)};return function(){return f=this,e=arguments,g=c(),d||(d=setTimeout(i,b)),h}};a.extend(b.prototype,{id:null,completer:null,el:null,$el:null,option:null,initialize:function(b,c,e){this.el=b,this.$el=a(b),this.id=c.id+this.constructor.name,this.completer=c,this.option=e,this.option.debounce&&(this._onKeyup=d(this._onKeyup,this.option.debounce)),this._bindEvents()},destroy:function(){this.$el.off("."+this.id),this.$el=this.el=this.completer=null},select:function(){throw new Error("Not implemented")},getCaretPosition:function(){var b=this._getCaretRelativePosition(),c=this.$el.offset(),d=this.option.appendTo;if(d){d instanceof a||(d=a(d));var e=d.offsetParent().offset();c.top-=e.top,c.left-=e.left}return b.top+=c.top,b.left+=c.left,b},focus:function(){this.$el.focus()},_bindEvents:function(){this.$el.on("keyup."+this.id,a.proxy(this._onKeyup,this))},_onKeyup:function(a){this._skipSearch(a)||this.completer.trigger(this.getTextFromHeadToCaret(),!0)},_skipSearch:function(a){switch(a.keyCode){case 9:case 13:case 40:case 38:return!0}if(a.ctrlKey)switch(a.keyCode){case 78:case 80:return!0}}}),a.fn.textcomplete.Adapter=b}(a),+function(a){"use strict";function b(a,b,c){this.initialize(a,b,c)}a.extend(b.prototype,a.fn.textcomplete.Adapter.prototype,{select:function(b,c,d){var e=this.getTextFromHeadToCaret(),f=this.el.value.substring(this.el.selectionEnd),g=c.replace(b,d);"undefined"!=typeof g&&(a.isArray(g)&&(f=g[1]+f,g=g[0]),e=e.replace(c.match,g),this.$el.val(e+f),this.el.selectionStart=this.el.selectionEnd=e.length)},getTextFromHeadToCaret:function(){return this.el.value.substring(0,this.el.selectionEnd)},_getCaretRelativePosition:function(){var b=a.fn.textcomplete.getCaretCoordinates(this.el,this.el.selectionStart);return{top:b.top+this._calculateLineHeight()-this.$el.scrollTop(),left:b.left-this.$el.scrollLeft()}},_calculateLineHeight:function(){var a=parseInt(this.$el.css("line-height"),10);if(isNaN(a)){var b=this.el.parentNode,c=document.createElement(this.el.nodeName),d=this.el.style;c.setAttribute("style","margin:0px;padding:0px;font-family:"+d.fontFamily+";font-size:"+d.fontSize),c.innerHTML="test",b.appendChild(c),a=c.clientHeight,b.removeChild(c)}return a}}),a.fn.textcomplete.Textarea=b}(a),+function(a){"use strict";function b(b,d,e){this.initialize(b,d,e),a(""+c+" ").css({position:"absolute",top:-9999,left:-9999}).insertBefore(b)}var c="吶";a.extend(b.prototype,a.fn.textcomplete.Textarea.prototype,{select:function(b,c,d){var e=this.getTextFromHeadToCaret(),f=this.el.value.substring(e.length),g=c.replace(b,d);if("undefined"!=typeof g){a.isArray(g)&&(f=g[1]+f,g=g[0]),e=e.replace(c.match,g),this.$el.val(e+f),this.el.focus();var h=this.el.createTextRange();h.collapse(!0),h.moveEnd("character",e.length),h.moveStart("character",e.length),h.select()}},getTextFromHeadToCaret:function(){this.el.focus();var a=document.selection.createRange();a.moveStart("character",-this.el.value.length);var b=a.text.split(c);return 1===b.length?b[0]:b[1]}}),a.fn.textcomplete.IETextarea=b}(a),+function(a){"use strict";function b(a,b,c){this.initialize(a,b,c)}a.extend(b.prototype,a.fn.textcomplete.Adapter.prototype,{select:function(b,c,d){var e=this.getTextFromHeadToCaret(),f=window.getSelection(),g=f.getRangeAt(0),h=g.cloneRange();h.selectNodeContents(g.startContainer);var i=h.toString(),j=i.substring(g.startOffset),k=c.replace(b,d);if("undefined"!=typeof k){a.isArray(k)&&(j=k[1]+j,k=k[0]),e=e.replace(c.match,k),g.selectNodeContents(g.startContainer),g.deleteContents();var l=document.createElement("div");l.innerHTML=e;var m=document.createElement("div");m.innerHTML=j;for(var n,o,p=document.createDocumentFragment();n=l.firstChild;)o=p.appendChild(n);for(;n=m.firstChild;)p.appendChild(n);g.insertNode(p),g.setStartAfter(o),g.collapse(!0),f.removeAllRanges(),f.addRange(g)}},_getCaretRelativePosition:function(){var b=window.getSelection().getRangeAt(0).cloneRange(),c=document.createElement("span");b.insertNode(c),b.selectNodeContents(c),b.deleteContents();var d=a(c),e=d.offset();return e.left-=this.$el.offset().left,e.top+=d.height()-this.$el.offset().top,e.lineHeight=d.height(),d.remove(),e},getTextFromHeadToCaret:function(){var a=window.getSelection().getRangeAt(0),b=a.cloneRange();return b.selectNodeContents(a.startContainer),b.toString().substring(0,a.startOffset)}}),a.fn.textcomplete.ContentEditable=b}(a),function(a){function b(a,b,f){if(!d)throw new Error("textarea-caret-position#getCaretCoordinates should only be called in a browser");var g=f&&f.debug||!1;if(g){var h=document.querySelector("#input-textarea-caret-position-mirror-div");h&&h.parentNode.removeChild(h)}var i=document.createElement("div");i.id="input-textarea-caret-position-mirror-div",document.body.appendChild(i);var j=i.style,k=window.getComputedStyle?getComputedStyle(a):a.currentStyle;j.whiteSpace="pre-wrap","INPUT"!==a.nodeName&&(j.wordWrap="break-word"),j.position="absolute",g||(j.visibility="hidden"),c.forEach(function(a){j[a]=k[a]}),e?a.scrollHeight>parseInt(k.height)&&(j.overflowY="scroll"):j.overflow="hidden",i.textContent=a.value.substring(0,b),"INPUT"===a.nodeName&&(i.textContent=i.textContent.replace(/\s/g," "));var l=document.createElement("span");l.textContent=a.value.substring(b)||".",i.appendChild(l);var m={top:l.offsetTop+parseInt(k.borderTopWidth),left:l.offsetLeft+parseInt(k.borderLeftWidth)};return g?l.style.backgroundColor="#aaa":document.body.removeChild(i),m}var c=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize","MozTabSize"],d="undefined"!=typeof window,e=d&&null!=window.mozInnerScreenX;a.fn.textcomplete.getCaretCoordinates=b}(a),a});
+//# sourceMappingURL=dist/jquery.textcomplete.min.map
\ No newline at end of file
--
cgit v1.2.3
From 45654ffc5cc4532c2189c88d46a0374038b53c9f Mon Sep 17 00:00:00 2001
From: Treer
Date: Sat, 30 Apr 2016 21:36:19 +1000
Subject: update font-awesome library to 4.6.1 Perhaps this should be done as a
submodule instead?
---
library/font_awesome/.gitignore | 3 +
library/font_awesome/.npmignore | 42 +
library/font_awesome/.ruby-version | 1 -
library/font_awesome/CONTRIBUTING.md | 37 +-
library/font_awesome/Gemfile | 5 +-
library/font_awesome/Gemfile.lock | 74 +-
library/font_awesome/HELP-US-OUT.txt | 7 +
library/font_awesome/README.md | 82 +-
library/font_awesome/_config.yml | 26 +-
library/font_awesome/bower.json | 22 +
library/font_awesome/component.json | 21 +
library/font_awesome/composer.json | 6 +-
library/font_awesome/css/font-awesome-ie7.css | 1203 ------
library/font_awesome/css/font-awesome-ie7.min.css | 384 --
library/font_awesome/css/font-awesome.css | 2073 ++++++----
library/font_awesome/css/font-awesome.css.map | 7 +
library/font_awesome/css/font-awesome.min.css | 407 +-
library/font_awesome/font/FontAwesome.otf | Bin 61896 -> 0 bytes
library/font_awesome/font/fontawesome-webfont.eot | Bin 37405 -> 0 bytes
library/font_awesome/font/fontawesome-webfont.svg | 399 --
library/font_awesome/font/fontawesome-webfont.ttf | Bin 79076 -> 0 bytes
library/font_awesome/font/fontawesome-webfont.woff | Bin 43572 -> 0 bytes
library/font_awesome/fonts/FontAwesome.otf | Bin 0 -> 123112 bytes
library/font_awesome/fonts/fontawesome-webfont.eot | Bin 0 -> 75220 bytes
library/font_awesome/fonts/fontawesome-webfont.svg | 685 ++++
library/font_awesome/fonts/fontawesome-webfont.ttf | Bin 0 -> 150920 bytes
.../font_awesome/fonts/fontawesome-webfont.woff | Bin 0 -> 89076 bytes
.../font_awesome/fonts/fontawesome-webfont.woff2 | Bin 0 -> 70728 bytes
library/font_awesome/less/animated.less | 34 +
library/font_awesome/less/bootstrap.less | 84 -
library/font_awesome/less/bordered-pulled.less | 25 +
library/font_awesome/less/core.less | 133 +-
library/font_awesome/less/extras.less | 93 -
library/font_awesome/less/fixed-width.less | 6 +
library/font_awesome/less/font-awesome-ie7.less | 1953 ---------
library/font_awesome/less/font-awesome.less | 35 +-
library/font_awesome/less/icons.less | 1099 +++--
library/font_awesome/less/larger.less | 13 +
library/font_awesome/less/list.less | 19 +
library/font_awesome/less/mixins.less | 86 +-
library/font_awesome/less/path.less | 13 +-
library/font_awesome/less/rotated-flipped.less | 20 +
library/font_awesome/less/screen-reader.less | 5 +
library/font_awesome/less/stacked.less | 20 +
library/font_awesome/less/variables.less | 1462 +++----
library/font_awesome/package.json | 34 +-
library/font_awesome/scss/_animated.scss | 34 +
library/font_awesome/scss/_bootstrap.scss | 84 -
library/font_awesome/scss/_bordered-pulled.scss | 25 +
library/font_awesome/scss/_core.scss | 133 +-
library/font_awesome/scss/_extras.scss | 93 -
library/font_awesome/scss/_fixed-width.scss | 6 +
library/font_awesome/scss/_icons.scss | 1101 +++--
library/font_awesome/scss/_larger.scss | 13 +
library/font_awesome/scss/_list.scss | 19 +
library/font_awesome/scss/_mixins.scss | 86 +-
library/font_awesome/scss/_path.scss | 13 +-
library/font_awesome/scss/_rotated-flipped.scss | 20 +
library/font_awesome/scss/_screen-reader.scss | 5 +
library/font_awesome/scss/_stacked.scss | 20 +
library/font_awesome/scss/_variables.scss | 1461 +++----
library/font_awesome/scss/font-awesome-ie7.scss | 1953 ---------
library/font_awesome/scss/font-awesome.scss | 35 +-
library/font_awesome/src/Makefile | 24 +-
library/font_awesome/src/README.md-nobuild | 104 +
.../src/_includes/accessibility/background.html | 15 +
.../src/_includes/accessibility/other.html | 17 +
.../accessibility/using-with-accessibility.html | 127 +
.../src/_includes/ads/carbon-dark-vertical.html | 1 -
.../src/_includes/ads/carbon-light-horizontal.html | 1 -
.../src/_includes/ads/carbon-light-vertical.html | 1 -
library/font_awesome/src/_includes/ads/fusion.html | 1 +
.../src/_includes/brand-adblock-warning.html | 5 +
.../font_awesome/src/_includes/brand-license.html | 3 +-
library/font_awesome/src/_includes/cheatsheet.html | 19 -
library/font_awesome/src/_includes/code/core.less | 6 +
library/font_awesome/src/_includes/code/core.scss | 6 +
.../font_awesome/src/_includes/code/license.css | 4 +
library/font_awesome/src/_includes/community.html | 20 -
.../_includes/community/project-milestones.html | 2 +-
.../src/_includes/community/reporting-bugs.html | 2 +-
.../_includes/community/requesting-new-icons.html | 12 +-
.../community/submitting-pull-requests.html | 3 +-
library/font_awesome/src/_includes/examples.html | 24 -
.../src/_includes/examples/accessible.html | 109 +
.../src/_includes/examples/animated-spinner.html | 20 -
.../src/_includes/examples/animated.html | 60 +
.../font_awesome/src/_includes/examples/basic.html | 39 +
.../src/_includes/examples/bootstrap.html | 111 +
.../src/_includes/examples/bordered-pulled.html | 43 +-
.../src/_includes/examples/bulleted-lists.html | 31 -
.../src/_includes/examples/button-dropdowns.html | 36 -
.../src/_includes/examples/button-groups.html | 25 -
.../src/_includes/examples/buttons.html | 57 -
.../src/_includes/examples/custom.html | 4 +-
.../src/_includes/examples/fixed-width.html | 33 +
.../src/_includes/examples/form-inputs.html | 31 -
.../src/_includes/examples/inline-icons.html | 19 -
.../src/_includes/examples/larger-icons.html | 35 -
.../src/_includes/examples/larger.html | 40 +
.../font_awesome/src/_includes/examples/list.html | 30 +
.../src/_includes/examples/navigation.html | 26 -
.../font_awesome/src/_includes/examples/new.html | 47 -
.../src/_includes/examples/rotated-flipped.html | 47 +-
.../src/_includes/examples/stacked.html | 88 +-
library/font_awesome/src/_includes/footer.html | 34 +-
.../font_awesome/src/_includes/get-started.html | 105 -
library/font_awesome/src/_includes/icons.html | 18 -
.../src/_includes/icons/accessibility.html | 12 +
.../font_awesome/src/_includes/icons/brand.html | 12 +-
.../font_awesome/src/_includes/icons/chart.html | 12 +
.../font_awesome/src/_includes/icons/currency.html | 4 +-
.../src/_includes/icons/directional.html | 4 +-
.../src/_includes/icons/file-type.html | 12 +
.../src/_includes/icons/form-control.html | 11 +
.../font_awesome/src/_includes/icons/gender.html | 12 +
library/font_awesome/src/_includes/icons/hand.html | 12 +
.../font_awesome/src/_includes/icons/medical.html | 4 +-
library/font_awesome/src/_includes/icons/new.html | 12 +-
.../font_awesome/src/_includes/icons/payment.html | 12 +
.../font_awesome/src/_includes/icons/spinner.html | 22 +
.../src/_includes/icons/text-editor.html | 4 +-
.../src/_includes/icons/transportation.html | 12 +
.../src/_includes/icons/video-player.html | 4 +-
.../src/_includes/icons/web-application.html | 4 +-
.../src/_includes/jumbotron-carousel.html | 57 +
.../src/_includes/jumbotron-slider.html | 53 -
library/font_awesome/src/_includes/jumbotron.html | 13 +
.../font_awesome/src/_includes/license-code.less | 25 -
library/font_awesome/src/_includes/license.html | 57 -
.../src/_includes/modals/download.html | 58 +
library/font_awesome/src/_includes/navbar.html | 181 +-
.../font_awesome/src/_includes/new-features.html | 29 +
library/font_awesome/src/_includes/new-naming.html | 157 +
.../font_awesome/src/_includes/new-upgrading.html | 10 +
.../src/_includes/products/camera-retro-tee.html | 31 +
.../src/_includes/products/classics-tee.html | 31 +
.../src/_includes/products/cta-suggestions.html | 20 +
.../src/_includes/products/fa-ther-tee.html | 29 +
.../src/_includes/products/green-logo-tee.html | 31 +
.../src/_includes/products/old-skool-tee.html | 31 +
.../rock-paper-scissors-lizard-spock-tee.html | 27 +
.../src/_includes/products/space-shuttle-tee.html | 31 +
.../src/_includes/products/white-logo-tee.html | 35 +
library/font_awesome/src/_includes/stripe-ad.html | 10 +-
.../font_awesome/src/_includes/stripe-social.html | 25 +-
.../font_awesome/src/_includes/tell-me-thanks.html | 6 +-
.../tests/rotated-flipped-inside-anchor.html | 12 +-
.../tests/rotated-flipped-inside-btn.html | 12 +-
.../src/_includes/tests/rotated-flipped.html | 12 +-
.../src/_includes/tests/stacked-inside-anchor.html | 56 +-
.../src/_includes/tests/stacked-with-text.html | 4 +
.../font_awesome/src/_includes/tests/stacked.html | 63 +-
library/font_awesome/src/_includes/thanks-to.html | 16 +-
library/font_awesome/src/_includes/whats-new.html | 38 -
library/font_awesome/src/_includes/why.html | 49 +-
library/font_awesome/src/_layouts/base.html | 80 +-
library/font_awesome/src/_layouts/icon.html | 57 +-
library/font_awesome/src/_layouts/survey.html | 47 +
.../src/_plugins/flatten_icon_filters.rb | 38 +
.../src/_plugins/icon_page_generator.rb | 3 +-
library/font_awesome/src/accessibility.html | 28 +
.../src/assets/font-awesome/HELP-US-OUT.txt | 7 +
.../src/assets/font-awesome/font/FontAwesome.otf | Bin 61896 -> 0 bytes
.../font-awesome/font/fontawesome-webfont.eot | Bin 37405 -> 0 bytes
.../font-awesome/font/fontawesome-webfont.svg | 399 --
.../font-awesome/font/fontawesome-webfont.ttf | Bin 79076 -> 0 bytes
.../font-awesome/font/fontawesome-webfont.woff | Bin 43572 -> 0 bytes
.../src/assets/font-awesome/fonts/FontAwesome.otf | Bin 0 -> 123112 bytes
.../font-awesome/fonts/fontawesome-webfont.eot | Bin 0 -> 75220 bytes
.../font-awesome/fonts/fontawesome-webfont.svg | 685 ++++
.../font-awesome/fonts/fontawesome-webfont.ttf | Bin 0 -> 150920 bytes
.../font-awesome/fonts/fontawesome-webfont.woff | Bin 0 -> 89076 bytes
.../font-awesome/fonts/fontawesome-webfont.woff2 | Bin 0 -> 70728 bytes
.../src/assets/font-awesome/less/animated.less | 37 +
.../src/assets/font-awesome/less/bootstrap.less | 84 -
.../assets/font-awesome/less/bordered-pulled.less | 28 +
.../src/assets/font-awesome/less/core.less | 130 +-
.../src/assets/font-awesome/less/extras.less | 93 -
.../src/assets/font-awesome/less/fixed-width.less | 9 +
.../assets/font-awesome/less/font-awesome-ie7.less | 67 -
.../src/assets/font-awesome/less/font-awesome.less | 12 +-
.../src/assets/font-awesome/less/icons.less | 4 +-
.../src/assets/font-awesome/less/larger.less | 16 +
.../src/assets/font-awesome/less/list.less | 22 +
.../src/assets/font-awesome/less/mixins.less | 82 +-
.../src/assets/font-awesome/less/path.less | 13 +-
.../assets/font-awesome/less/rotated-flipped.less | 23 +
.../assets/font-awesome/less/screen-reader.less | 5 +
.../src/assets/font-awesome/less/stacked.less | 23 +
.../src/assets/font-awesome/less/variables.less | 20 +-
.../src/assets/font-awesome/scss/_animated.scss | 37 +
.../src/assets/font-awesome/scss/_bootstrap.scss | 84 -
.../assets/font-awesome/scss/_bordered-pulled.scss | 28 +
.../src/assets/font-awesome/scss/_core.scss | 130 +-
.../src/assets/font-awesome/scss/_extras.scss | 93 -
.../src/assets/font-awesome/scss/_fixed-width.scss | 9 +
.../src/assets/font-awesome/scss/_icons.scss | 6 +-
.../src/assets/font-awesome/scss/_larger.scss | 16 +
.../src/assets/font-awesome/scss/_list.scss | 22 +
.../src/assets/font-awesome/scss/_mixins.scss | 82 +-
.../src/assets/font-awesome/scss/_path.scss | 13 +-
.../assets/font-awesome/scss/_rotated-flipped.scss | 23 +
.../assets/font-awesome/scss/_screen-reader.scss | 5 +
.../src/assets/font-awesome/scss/_stacked.scss | 23 +
.../src/assets/font-awesome/scss/_variables.scss | 19 +-
.../assets/font-awesome/scss/font-awesome-ie7.scss | 67 -
.../src/assets/font-awesome/scss/font-awesome.scss | 12 +-
library/font_awesome/src/assets/img/algolia.png | Bin 0 -> 72993 bytes
.../src/assets/img/contribution-sample.png | Bin 2441 -> 0 bytes
.../font_awesome/src/assets/img/fort_awesome.jpg | Bin 114822 -> 0 bytes
.../src/assets/img/glyphicons-halflings-white.png | Bin 8777 -> 0 bytes
.../src/assets/img/glyphicons-halflings.png | Bin 12799 -> 0 bytes
library/font_awesome/src/assets/img/icon-flag.pdf | 1355 -------
.../font_awesome/src/assets/img/logo-approveme.png | Bin 0 -> 35128 bytes
.../font_awesome/src/assets/img/logo-themeisle.png | Bin 0 -> 5547 bytes
.../src/assets/img/logo-wpbeginner.png | Bin 0 -> 7461 bytes
.../src/assets/js/ZeroClipboard-1.1.7.min.js | 0
library/font_awesome/src/assets/js/backbone.min.js | 37 -
.../src/assets/js/bootstrap-2.3.1.min.js | 6 -
.../src/assets/js/bootstrap-222.min.js | 6 -
library/font_awesome/src/assets/js/html5shiv.js | 8 +
.../font_awesome/src/assets/js/jquery-1.7.1.min.js | 4 -
library/font_awesome/src/assets/js/respond.min.js | 6 +
library/font_awesome/src/assets/js/search.js | 92 +
library/font_awesome/src/assets/js/site.js | 101 +-
.../font_awesome/src/assets/js/underscore.min.js | 31 -
.../src/assets/less/bootstrap-2.3.2/accordion.less | 34 -
.../src/assets/less/bootstrap-2.3.2/alerts.less | 79 -
.../src/assets/less/bootstrap-2.3.2/bootstrap.less | 63 -
.../assets/less/bootstrap-2.3.2/breadcrumbs.less | 24 -
.../assets/less/bootstrap-2.3.2/button-groups.less | 229 --
.../src/assets/less/bootstrap-2.3.2/buttons.less | 228 --
.../src/assets/less/bootstrap-2.3.2/carousel.less | 158 -
.../src/assets/less/bootstrap-2.3.2/close.less | 32 -
.../src/assets/less/bootstrap-2.3.2/code.less | 61 -
.../less/bootstrap-2.3.2/component-animations.less | 22 -
.../src/assets/less/bootstrap-2.3.2/dropdowns.less | 248 --
.../src/assets/less/bootstrap-2.3.2/forms.less | 690 ----
.../src/assets/less/bootstrap-2.3.2/grid.less | 21 -
.../src/assets/less/bootstrap-2.3.2/hero-unit.less | 25 -
.../assets/less/bootstrap-2.3.2/labels-badges.less | 84 -
.../src/assets/less/bootstrap-2.3.2/layouts.less | 16 -
.../src/assets/less/bootstrap-2.3.2/media.less | 55 -
.../src/assets/less/bootstrap-2.3.2/mixins.less | 702 ----
.../src/assets/less/bootstrap-2.3.2/modals.less | 95 -
.../src/assets/less/bootstrap-2.3.2/navbar.less | 497 ---
.../src/assets/less/bootstrap-2.3.2/navs.less | 409 --
.../src/assets/less/bootstrap-2.3.2/pager.less | 43 -
.../assets/less/bootstrap-2.3.2/pagination.less | 123 -
.../src/assets/less/bootstrap-2.3.2/popovers.less | 133 -
.../assets/less/bootstrap-2.3.2/progress-bars.less | 122 -
.../src/assets/less/bootstrap-2.3.2/reset.less | 216 -
.../bootstrap-2.3.2/responsive-1200px-min.less | 28 -
.../less/bootstrap-2.3.2/responsive-767px-max.less | 193 -
.../bootstrap-2.3.2/responsive-768px-979px.less | 19 -
.../less/bootstrap-2.3.2/responsive-navbar.less | 189 -
.../less/bootstrap-2.3.2/responsive-utilities.less | 59 -
.../assets/less/bootstrap-2.3.2/responsive.less | 48 -
.../assets/less/bootstrap-2.3.2/scaffolding.less | 53 -
.../src/assets/less/bootstrap-2.3.2/sprites.less | 197 -
.../src/assets/less/bootstrap-2.3.2/tables.less | 244 --
.../assets/less/bootstrap-2.3.2/thumbnails.less | 53 -
.../src/assets/less/bootstrap-2.3.2/tooltip.less | 70 -
.../src/assets/less/bootstrap-2.3.2/type.less | 247 --
.../src/assets/less/bootstrap-2.3.2/utilities.less | 30 -
.../src/assets/less/bootstrap-2.3.2/variables.less | 301 --
.../src/assets/less/bootstrap-2.3.2/wells.less | 29 -
.../src/assets/less/bootstrap-3.3.5/.csscomb.json | 304 ++
.../src/assets/less/bootstrap-3.3.5/.csslintrc | 19 +
.../src/assets/less/bootstrap-3.3.5/alerts.less | 73 +
.../src/assets/less/bootstrap-3.3.5/badges.less | 66 +
.../src/assets/less/bootstrap-3.3.5/bootstrap.less | 56 +
.../assets/less/bootstrap-3.3.5/breadcrumbs.less | 26 +
.../assets/less/bootstrap-3.3.5/button-groups.less | 244 ++
.../src/assets/less/bootstrap-3.3.5/buttons.less | 166 +
.../src/assets/less/bootstrap-3.3.5/carousel.less | 269 ++
.../src/assets/less/bootstrap-3.3.5/close.less | 34 +
.../src/assets/less/bootstrap-3.3.5/code.less | 69 +
.../less/bootstrap-3.3.5/component-animations.less | 33 +
.../src/assets/less/bootstrap-3.3.5/dropdowns.less | 216 +
.../src/assets/less/bootstrap-3.3.5/forms.less | 613 +++
.../assets/less/bootstrap-3.3.5/glyphicons.less | 305 ++
.../src/assets/less/bootstrap-3.3.5/grid.less | 84 +
.../assets/less/bootstrap-3.3.5/input-groups.less | 167 +
.../src/assets/less/bootstrap-3.3.5/jumbotron.less | 52 +
.../src/assets/less/bootstrap-3.3.5/labels.less | 64 +
.../assets/less/bootstrap-3.3.5/list-group.less | 130 +
.../src/assets/less/bootstrap-3.3.5/media.less | 66 +
.../src/assets/less/bootstrap-3.3.5/mixins.less | 40 +
.../assets/less/bootstrap-3.3.5/mixins/alerts.less | 14 +
.../bootstrap-3.3.5/mixins/background-variant.less | 9 +
.../less/bootstrap-3.3.5/mixins/border-radius.less | 18 +
.../less/bootstrap-3.3.5/mixins/buttons.less | 68 +
.../less/bootstrap-3.3.5/mixins/center-block.less | 7 +
.../less/bootstrap-3.3.5/mixins/clearfix.less | 22 +
.../assets/less/bootstrap-3.3.5/mixins/forms.less | 85 +
.../less/bootstrap-3.3.5/mixins/gradients.less | 59 +
.../bootstrap-3.3.5/mixins/grid-framework.less | 91 +
.../assets/less/bootstrap-3.3.5/mixins/grid.less | 122 +
.../less/bootstrap-3.3.5/mixins/hide-text.less | 21 +
.../assets/less/bootstrap-3.3.5/mixins/image.less | 33 +
.../assets/less/bootstrap-3.3.5/mixins/labels.less | 12 +
.../less/bootstrap-3.3.5/mixins/list-group.less | 30 +
.../less/bootstrap-3.3.5/mixins/nav-divider.less | 10 +
.../bootstrap-3.3.5/mixins/nav-vertical-align.less | 9 +
.../less/bootstrap-3.3.5/mixins/opacity.less | 8 +
.../less/bootstrap-3.3.5/mixins/pagination.less | 24 +
.../assets/less/bootstrap-3.3.5/mixins/panels.less | 24 +
.../less/bootstrap-3.3.5/mixins/progress-bar.less | 10 +
.../less/bootstrap-3.3.5/mixins/reset-filter.less | 8 +
.../less/bootstrap-3.3.5/mixins/reset-text.less | 18 +
.../assets/less/bootstrap-3.3.5/mixins/resize.less | 6 +
.../mixins/responsive-visibility.less | 15 +
.../assets/less/bootstrap-3.3.5/mixins/size.less | 10 +
.../less/bootstrap-3.3.5/mixins/tab-focus.less | 9 +
.../less/bootstrap-3.3.5/mixins/table-row.less | 28 +
.../less/bootstrap-3.3.5/mixins/text-emphasis.less | 9 +
.../less/bootstrap-3.3.5/mixins/text-overflow.less | 8 +
.../bootstrap-3.3.5/mixins/vendor-prefixes.less | 227 ++
.../src/assets/less/bootstrap-3.3.5/modals.less | 150 +
.../src/assets/less/bootstrap-3.3.5/navbar.less | 660 +++
.../src/assets/less/bootstrap-3.3.5/navs.less | 242 ++
.../src/assets/less/bootstrap-3.3.5/normalize.less | 424 ++
.../src/assets/less/bootstrap-3.3.5/pager.less | 54 +
.../assets/less/bootstrap-3.3.5/pagination.less | 89 +
.../src/assets/less/bootstrap-3.3.5/panels.less | 271 ++
.../src/assets/less/bootstrap-3.3.5/popovers.less | 131 +
.../src/assets/less/bootstrap-3.3.5/print.less | 101 +
.../assets/less/bootstrap-3.3.5/progress-bars.less | 87 +
.../less/bootstrap-3.3.5/responsive-embed.less | 35 +
.../less/bootstrap-3.3.5/responsive-utilities.less | 194 +
.../assets/less/bootstrap-3.3.5/scaffolding.less | 161 +
.../src/assets/less/bootstrap-3.3.5/tables.less | 234 ++
.../src/assets/less/bootstrap-3.3.5/theme.less | 291 ++
.../assets/less/bootstrap-3.3.5/thumbnails.less | 36 +
.../src/assets/less/bootstrap-3.3.5/tooltip.less | 101 +
.../src/assets/less/bootstrap-3.3.5/type.less | 302 ++
.../src/assets/less/bootstrap-3.3.5/utilities.less | 55 +
.../src/assets/less/bootstrap-3.3.5/variables.less | 869 ++++
.../src/assets/less/bootstrap-3.3.5/wells.less | 29 +
.../src/assets/less/gandy-grid/grid.less | 43 +
.../src/assets/less/gandy-grid/mixins.less | 18 +
library/font_awesome/src/assets/less/lazy.less | 85 -
library/font_awesome/src/assets/less/mixins.less | 58 -
.../src/assets/less/responsive-1200px-min.less | 56 -
.../src/assets/less/responsive-767px-max.less | 83 -
.../src/assets/less/responsive-768px-979px.less | 67 -
.../src/assets/less/responsive-navbar.less | 11 -
.../font_awesome/src/assets/less/responsive.less | 55 -
library/font_awesome/src/assets/less/site.less | 394 +-
.../font_awesome/src/assets/less/site/algolia.less | 12 +
.../src/assets/less/site/banner-ad.less | 162 +
.../src/assets/less/site/bootstrap/alerts.less | 5 +
.../src/assets/less/site/bootstrap/buttons.less | 3 +
.../src/assets/less/site/bootstrap/jumbotron.less | 98 +
.../src/assets/less/site/bootstrap/labels.less | 21 +
.../src/assets/less/site/bootstrap/modals.less | 6 +
.../src/assets/less/site/bootstrap/navbar.less | 178 +
.../src/assets/less/site/bootstrap/panels.less | 15 +
.../src/assets/less/site/bootstrap/tooltip.less | 8 +
.../src/assets/less/site/bootstrap/type.less | 26 +
.../src/assets/less/site/bootstrap/variables.less | 171 +
.../src/assets/less/site/bootstrap/wells.less | 10 +
.../font_awesome/src/assets/less/site/bsap-ad.less | 15 +
.../src/assets/less/site/example-rating.less | 25 +
.../src/assets/less/site/feature-list.less | 19 +
.../assets/less/site/fontawesome-icon-list.less | 33 +
.../font_awesome/src/assets/less/site/footer.less | 43 +
.../src/assets/less/site/fusion-ad.less | 27 +
.../src/assets/less/site/jumbotron-carousel.less | 61 +
.../font_awesome/src/assets/less/site/layout.less | 1 +
.../font_awesome/src/assets/less/site/lazy.less | 112 +
.../src/assets/less/site/responsive/screen-lg.less | 58 +
.../src/assets/less/site/responsive/screen-md.less | 3 +
.../assets/less/site/responsive/screen-sm-up.less | 18 +
.../src/assets/less/site/responsive/screen-sm.less | 49 +
.../src/assets/less/site/responsive/screen-xs.less | 101 +
.../font_awesome/src/assets/less/site/search.less | 40 +
.../src/assets/less/site/social-buttons.less | 19 +
.../font_awesome/src/assets/less/site/store.less | 115 +
.../src/assets/less/site/stripe-ad.less | 4 +
.../font_awesome/src/assets/less/site/sumome.less | 4 +
.../src/assets/less/site/textured-bg.less | 20 +
.../font_awesome/src/assets/less/site/views.less | 26 +
.../src/assets/less/sticky-footer.less | 17 -
.../font_awesome/src/assets/less/variables.less | 347 --
library/font_awesome/src/cdn/error.html | 24 +
library/font_awesome/src/cdn/new.html | 265 ++
library/font_awesome/src/cdn/success.html | 24 +
library/font_awesome/src/cheatsheet.html | 25 +-
library/font_awesome/src/community.html | 23 +-
library/font_awesome/src/examples.html | 23 +-
library/font_awesome/src/get-started.html | 171 +-
library/font_awesome/src/icons.html | 89 +-
library/font_awesome/src/icons.yml | 4279 ++++++++++++++++++--
library/font_awesome/src/index.html | 6 +-
library/font_awesome/src/license.html | 61 +-
library/font_awesome/src/store.html | 63 +
library/font_awesome/src/survey.html | 7 +
library/font_awesome/src/test.html | 714 ----
library/font_awesome/src/test/2.3.2.html | 824 ++++
library/font_awesome/src/test/all.html | 46 +
library/font_awesome/src/test/glyphicons.html | 795 ++++
library/font_awesome/src/test/height/4.4.0.html | 62 +
library/font_awesome/src/test/height/4.5.0.html | 62 +
library/font_awesome/src/test/height/current.html | 62 +
library/font_awesome/src/test/index.html | 800 ++++
library/font_awesome/src/thanks.html | 29 +
library/font_awesome/src/whats-new.html | 32 +-
410 files changed, 26714 insertions(+), 22214 deletions(-)
create mode 100644 library/font_awesome/.npmignore
delete mode 100644 library/font_awesome/.ruby-version
create mode 100644 library/font_awesome/HELP-US-OUT.txt
create mode 100644 library/font_awesome/bower.json
create mode 100644 library/font_awesome/component.json
delete mode 100644 library/font_awesome/css/font-awesome-ie7.css
delete mode 100644 library/font_awesome/css/font-awesome-ie7.min.css
create mode 100644 library/font_awesome/css/font-awesome.css.map
delete mode 100644 library/font_awesome/font/FontAwesome.otf
delete mode 100755 library/font_awesome/font/fontawesome-webfont.eot
delete mode 100755 library/font_awesome/font/fontawesome-webfont.svg
delete mode 100755 library/font_awesome/font/fontawesome-webfont.ttf
delete mode 100755 library/font_awesome/font/fontawesome-webfont.woff
create mode 100644 library/font_awesome/fonts/FontAwesome.otf
create mode 100644 library/font_awesome/fonts/fontawesome-webfont.eot
create mode 100644 library/font_awesome/fonts/fontawesome-webfont.svg
create mode 100644 library/font_awesome/fonts/fontawesome-webfont.ttf
create mode 100644 library/font_awesome/fonts/fontawesome-webfont.woff
create mode 100644 library/font_awesome/fonts/fontawesome-webfont.woff2
create mode 100644 library/font_awesome/less/animated.less
delete mode 100644 library/font_awesome/less/bootstrap.less
create mode 100644 library/font_awesome/less/bordered-pulled.less
delete mode 100644 library/font_awesome/less/extras.less
create mode 100644 library/font_awesome/less/fixed-width.less
delete mode 100644 library/font_awesome/less/font-awesome-ie7.less
create mode 100644 library/font_awesome/less/larger.less
create mode 100644 library/font_awesome/less/list.less
create mode 100644 library/font_awesome/less/rotated-flipped.less
create mode 100644 library/font_awesome/less/screen-reader.less
create mode 100644 library/font_awesome/less/stacked.less
create mode 100644 library/font_awesome/scss/_animated.scss
delete mode 100644 library/font_awesome/scss/_bootstrap.scss
create mode 100644 library/font_awesome/scss/_bordered-pulled.scss
delete mode 100644 library/font_awesome/scss/_extras.scss
create mode 100644 library/font_awesome/scss/_fixed-width.scss
create mode 100644 library/font_awesome/scss/_larger.scss
create mode 100644 library/font_awesome/scss/_list.scss
create mode 100644 library/font_awesome/scss/_rotated-flipped.scss
create mode 100644 library/font_awesome/scss/_screen-reader.scss
create mode 100644 library/font_awesome/scss/_stacked.scss
delete mode 100644 library/font_awesome/scss/font-awesome-ie7.scss
create mode 100644 library/font_awesome/src/README.md-nobuild
create mode 100644 library/font_awesome/src/_includes/accessibility/background.html
create mode 100644 library/font_awesome/src/_includes/accessibility/other.html
create mode 100644 library/font_awesome/src/_includes/accessibility/using-with-accessibility.html
delete mode 100644 library/font_awesome/src/_includes/ads/carbon-dark-vertical.html
delete mode 100644 library/font_awesome/src/_includes/ads/carbon-light-horizontal.html
delete mode 100644 library/font_awesome/src/_includes/ads/carbon-light-vertical.html
create mode 100644 library/font_awesome/src/_includes/ads/fusion.html
create mode 100644 library/font_awesome/src/_includes/brand-adblock-warning.html
delete mode 100644 library/font_awesome/src/_includes/cheatsheet.html
create mode 100644 library/font_awesome/src/_includes/code/core.less
create mode 100644 library/font_awesome/src/_includes/code/core.scss
create mode 100644 library/font_awesome/src/_includes/code/license.css
delete mode 100644 library/font_awesome/src/_includes/community.html
delete mode 100644 library/font_awesome/src/_includes/examples.html
create mode 100644 library/font_awesome/src/_includes/examples/accessible.html
delete mode 100644 library/font_awesome/src/_includes/examples/animated-spinner.html
create mode 100644 library/font_awesome/src/_includes/examples/animated.html
create mode 100644 library/font_awesome/src/_includes/examples/basic.html
create mode 100644 library/font_awesome/src/_includes/examples/bootstrap.html
delete mode 100644 library/font_awesome/src/_includes/examples/bulleted-lists.html
delete mode 100644 library/font_awesome/src/_includes/examples/button-dropdowns.html
delete mode 100644 library/font_awesome/src/_includes/examples/button-groups.html
delete mode 100644 library/font_awesome/src/_includes/examples/buttons.html
create mode 100644 library/font_awesome/src/_includes/examples/fixed-width.html
delete mode 100644 library/font_awesome/src/_includes/examples/form-inputs.html
delete mode 100644 library/font_awesome/src/_includes/examples/inline-icons.html
delete mode 100644 library/font_awesome/src/_includes/examples/larger-icons.html
create mode 100644 library/font_awesome/src/_includes/examples/larger.html
create mode 100644 library/font_awesome/src/_includes/examples/list.html
delete mode 100644 library/font_awesome/src/_includes/examples/navigation.html
delete mode 100644 library/font_awesome/src/_includes/examples/new.html
delete mode 100644 library/font_awesome/src/_includes/get-started.html
delete mode 100644 library/font_awesome/src/_includes/icons.html
create mode 100644 library/font_awesome/src/_includes/icons/accessibility.html
create mode 100644 library/font_awesome/src/_includes/icons/chart.html
create mode 100644 library/font_awesome/src/_includes/icons/file-type.html
create mode 100644 library/font_awesome/src/_includes/icons/form-control.html
create mode 100644 library/font_awesome/src/_includes/icons/gender.html
create mode 100644 library/font_awesome/src/_includes/icons/hand.html
create mode 100644 library/font_awesome/src/_includes/icons/payment.html
create mode 100644 library/font_awesome/src/_includes/icons/spinner.html
create mode 100644 library/font_awesome/src/_includes/icons/transportation.html
create mode 100644 library/font_awesome/src/_includes/jumbotron-carousel.html
delete mode 100644 library/font_awesome/src/_includes/jumbotron-slider.html
delete mode 100644 library/font_awesome/src/_includes/license-code.less
delete mode 100644 library/font_awesome/src/_includes/license.html
create mode 100644 library/font_awesome/src/_includes/modals/download.html
create mode 100644 library/font_awesome/src/_includes/new-features.html
create mode 100644 library/font_awesome/src/_includes/new-naming.html
create mode 100644 library/font_awesome/src/_includes/new-upgrading.html
create mode 100644 library/font_awesome/src/_includes/products/camera-retro-tee.html
create mode 100644 library/font_awesome/src/_includes/products/classics-tee.html
create mode 100644 library/font_awesome/src/_includes/products/cta-suggestions.html
create mode 100644 library/font_awesome/src/_includes/products/fa-ther-tee.html
create mode 100644 library/font_awesome/src/_includes/products/green-logo-tee.html
create mode 100644 library/font_awesome/src/_includes/products/old-skool-tee.html
create mode 100644 library/font_awesome/src/_includes/products/rock-paper-scissors-lizard-spock-tee.html
create mode 100644 library/font_awesome/src/_includes/products/space-shuttle-tee.html
create mode 100644 library/font_awesome/src/_includes/products/white-logo-tee.html
create mode 100644 library/font_awesome/src/_includes/tests/stacked-with-text.html
delete mode 100644 library/font_awesome/src/_includes/whats-new.html
create mode 100644 library/font_awesome/src/_layouts/survey.html
create mode 100644 library/font_awesome/src/_plugins/flatten_icon_filters.rb
create mode 100644 library/font_awesome/src/accessibility.html
create mode 100644 library/font_awesome/src/assets/font-awesome/HELP-US-OUT.txt
delete mode 100644 library/font_awesome/src/assets/font-awesome/font/FontAwesome.otf
delete mode 100755 library/font_awesome/src/assets/font-awesome/font/fontawesome-webfont.eot
delete mode 100755 library/font_awesome/src/assets/font-awesome/font/fontawesome-webfont.svg
delete mode 100755 library/font_awesome/src/assets/font-awesome/font/fontawesome-webfont.ttf
delete mode 100755 library/font_awesome/src/assets/font-awesome/font/fontawesome-webfont.woff
create mode 100644 library/font_awesome/src/assets/font-awesome/fonts/FontAwesome.otf
create mode 100644 library/font_awesome/src/assets/font-awesome/fonts/fontawesome-webfont.eot
create mode 100644 library/font_awesome/src/assets/font-awesome/fonts/fontawesome-webfont.svg
create mode 100644 library/font_awesome/src/assets/font-awesome/fonts/fontawesome-webfont.ttf
create mode 100644 library/font_awesome/src/assets/font-awesome/fonts/fontawesome-webfont.woff
create mode 100644 library/font_awesome/src/assets/font-awesome/fonts/fontawesome-webfont.woff2
create mode 100644 library/font_awesome/src/assets/font-awesome/less/animated.less
delete mode 100644 library/font_awesome/src/assets/font-awesome/less/bootstrap.less
create mode 100644 library/font_awesome/src/assets/font-awesome/less/bordered-pulled.less
delete mode 100644 library/font_awesome/src/assets/font-awesome/less/extras.less
create mode 100644 library/font_awesome/src/assets/font-awesome/less/fixed-width.less
delete mode 100644 library/font_awesome/src/assets/font-awesome/less/font-awesome-ie7.less
create mode 100644 library/font_awesome/src/assets/font-awesome/less/larger.less
create mode 100644 library/font_awesome/src/assets/font-awesome/less/list.less
create mode 100644 library/font_awesome/src/assets/font-awesome/less/rotated-flipped.less
create mode 100644 library/font_awesome/src/assets/font-awesome/less/screen-reader.less
create mode 100644 library/font_awesome/src/assets/font-awesome/less/stacked.less
create mode 100644 library/font_awesome/src/assets/font-awesome/scss/_animated.scss
delete mode 100644 library/font_awesome/src/assets/font-awesome/scss/_bootstrap.scss
create mode 100644 library/font_awesome/src/assets/font-awesome/scss/_bordered-pulled.scss
delete mode 100644 library/font_awesome/src/assets/font-awesome/scss/_extras.scss
create mode 100644 library/font_awesome/src/assets/font-awesome/scss/_fixed-width.scss
create mode 100644 library/font_awesome/src/assets/font-awesome/scss/_larger.scss
create mode 100644 library/font_awesome/src/assets/font-awesome/scss/_list.scss
create mode 100644 library/font_awesome/src/assets/font-awesome/scss/_rotated-flipped.scss
create mode 100644 library/font_awesome/src/assets/font-awesome/scss/_screen-reader.scss
create mode 100644 library/font_awesome/src/assets/font-awesome/scss/_stacked.scss
delete mode 100644 library/font_awesome/src/assets/font-awesome/scss/font-awesome-ie7.scss
create mode 100644 library/font_awesome/src/assets/img/algolia.png
delete mode 100644 library/font_awesome/src/assets/img/contribution-sample.png
delete mode 100644 library/font_awesome/src/assets/img/fort_awesome.jpg
delete mode 100644 library/font_awesome/src/assets/img/glyphicons-halflings-white.png
delete mode 100644 library/font_awesome/src/assets/img/glyphicons-halflings.png
delete mode 100644 library/font_awesome/src/assets/img/icon-flag.pdf
create mode 100644 library/font_awesome/src/assets/img/logo-approveme.png
create mode 100644 library/font_awesome/src/assets/img/logo-themeisle.png
create mode 100644 library/font_awesome/src/assets/img/logo-wpbeginner.png
mode change 100755 => 100644 library/font_awesome/src/assets/js/ZeroClipboard-1.1.7.min.js
delete mode 100644 library/font_awesome/src/assets/js/backbone.min.js
delete mode 100644 library/font_awesome/src/assets/js/bootstrap-2.3.1.min.js
delete mode 100644 library/font_awesome/src/assets/js/bootstrap-222.min.js
create mode 100644 library/font_awesome/src/assets/js/html5shiv.js
delete mode 100644 library/font_awesome/src/assets/js/jquery-1.7.1.min.js
create mode 100644 library/font_awesome/src/assets/js/respond.min.js
create mode 100644 library/font_awesome/src/assets/js/search.js
delete mode 100644 library/font_awesome/src/assets/js/underscore.min.js
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/accordion.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/alerts.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/bootstrap.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/breadcrumbs.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/button-groups.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/buttons.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/carousel.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/close.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/code.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/component-animations.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/dropdowns.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/forms.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/grid.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/hero-unit.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/labels-badges.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/layouts.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/media.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/mixins.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/modals.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/navbar.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/navs.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/pager.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/pagination.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/popovers.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/progress-bars.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/reset.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/responsive-1200px-min.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/responsive-767px-max.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/responsive-768px-979px.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/responsive-navbar.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/responsive-utilities.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/responsive.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/scaffolding.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/sprites.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/tables.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/thumbnails.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/tooltip.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/type.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/utilities.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/variables.less
delete mode 100755 library/font_awesome/src/assets/less/bootstrap-2.3.2/wells.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/.csscomb.json
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/.csslintrc
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/alerts.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/badges.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/bootstrap.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/breadcrumbs.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/button-groups.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/buttons.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/carousel.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/close.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/code.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/component-animations.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/dropdowns.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/forms.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/glyphicons.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/grid.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/input-groups.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/jumbotron.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/labels.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/list-group.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/media.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/alerts.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/background-variant.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/border-radius.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/buttons.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/center-block.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/clearfix.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/forms.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/gradients.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/grid-framework.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/grid.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/hide-text.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/image.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/labels.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/list-group.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/nav-divider.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/nav-vertical-align.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/opacity.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/pagination.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/panels.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/progress-bar.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/reset-filter.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/reset-text.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/resize.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/responsive-visibility.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/size.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/tab-focus.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/table-row.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/text-emphasis.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/text-overflow.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/mixins/vendor-prefixes.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/modals.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/navbar.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/navs.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/normalize.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/pager.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/pagination.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/panels.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/popovers.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/print.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/progress-bars.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/responsive-embed.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/responsive-utilities.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/scaffolding.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/tables.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/theme.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/thumbnails.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/tooltip.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/type.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/utilities.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/variables.less
create mode 100644 library/font_awesome/src/assets/less/bootstrap-3.3.5/wells.less
create mode 100644 library/font_awesome/src/assets/less/gandy-grid/grid.less
create mode 100644 library/font_awesome/src/assets/less/gandy-grid/mixins.less
delete mode 100644 library/font_awesome/src/assets/less/lazy.less
delete mode 100644 library/font_awesome/src/assets/less/mixins.less
delete mode 100755 library/font_awesome/src/assets/less/responsive-1200px-min.less
delete mode 100755 library/font_awesome/src/assets/less/responsive-767px-max.less
delete mode 100755 library/font_awesome/src/assets/less/responsive-768px-979px.less
delete mode 100755 library/font_awesome/src/assets/less/responsive-navbar.less
delete mode 100755 library/font_awesome/src/assets/less/responsive.less
create mode 100644 library/font_awesome/src/assets/less/site/algolia.less
create mode 100644 library/font_awesome/src/assets/less/site/banner-ad.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/alerts.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/buttons.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/jumbotron.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/labels.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/modals.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/navbar.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/panels.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/tooltip.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/type.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/variables.less
create mode 100644 library/font_awesome/src/assets/less/site/bootstrap/wells.less
create mode 100644 library/font_awesome/src/assets/less/site/bsap-ad.less
create mode 100644 library/font_awesome/src/assets/less/site/example-rating.less
create mode 100644 library/font_awesome/src/assets/less/site/feature-list.less
create mode 100644 library/font_awesome/src/assets/less/site/fontawesome-icon-list.less
create mode 100644 library/font_awesome/src/assets/less/site/footer.less
create mode 100644 library/font_awesome/src/assets/less/site/fusion-ad.less
create mode 100644 library/font_awesome/src/assets/less/site/jumbotron-carousel.less
create mode 100644 library/font_awesome/src/assets/less/site/layout.less
create mode 100644 library/font_awesome/src/assets/less/site/lazy.less
create mode 100644 library/font_awesome/src/assets/less/site/responsive/screen-lg.less
create mode 100644 library/font_awesome/src/assets/less/site/responsive/screen-md.less
create mode 100644 library/font_awesome/src/assets/less/site/responsive/screen-sm-up.less
create mode 100644 library/font_awesome/src/assets/less/site/responsive/screen-sm.less
create mode 100644 library/font_awesome/src/assets/less/site/responsive/screen-xs.less
create mode 100644 library/font_awesome/src/assets/less/site/search.less
create mode 100644 library/font_awesome/src/assets/less/site/social-buttons.less
create mode 100644 library/font_awesome/src/assets/less/site/store.less
create mode 100644 library/font_awesome/src/assets/less/site/stripe-ad.less
create mode 100644 library/font_awesome/src/assets/less/site/sumome.less
create mode 100644 library/font_awesome/src/assets/less/site/textured-bg.less
create mode 100644 library/font_awesome/src/assets/less/site/views.less
delete mode 100755 library/font_awesome/src/assets/less/sticky-footer.less
delete mode 100755 library/font_awesome/src/assets/less/variables.less
create mode 100644 library/font_awesome/src/cdn/error.html
create mode 100644 library/font_awesome/src/cdn/new.html
create mode 100644 library/font_awesome/src/cdn/success.html
create mode 100644 library/font_awesome/src/store.html
create mode 100644 library/font_awesome/src/survey.html
delete mode 100644 library/font_awesome/src/test.html
create mode 100644 library/font_awesome/src/test/2.3.2.html
create mode 100644 library/font_awesome/src/test/all.html
create mode 100644 library/font_awesome/src/test/glyphicons.html
create mode 100644 library/font_awesome/src/test/height/4.4.0.html
create mode 100644 library/font_awesome/src/test/height/4.5.0.html
create mode 100644 library/font_awesome/src/test/height/current.html
create mode 100644 library/font_awesome/src/test/index.html
create mode 100644 library/font_awesome/src/thanks.html
(limited to 'library')
diff --git a/library/font_awesome/.gitignore b/library/font_awesome/.gitignore
index 49c2a72c8..39c4f20b7 100644
--- a/library/font_awesome/.gitignore
+++ b/library/font_awesome/.gitignore
@@ -28,3 +28,6 @@ node_modules
src/website/settingslocal.py
stunnel.log
+
+.ruby-version
+.bundle
diff --git a/library/font_awesome/.npmignore b/library/font_awesome/.npmignore
new file mode 100644
index 000000000..54a691f81
--- /dev/null
+++ b/library/font_awesome/.npmignore
@@ -0,0 +1,42 @@
+*.pyc
+*.egg-info
+*.db
+*.db.old
+*.swp
+*.db-journal
+
+.coverage
+.DS_Store
+.installed.cfg
+_gh_pages/*
+
+.idea/*
+.svn/*
+src/website/static/*
+src/website/media/*
+
+bin
+cfcache
+develop-eggs
+dist
+downloads
+eggs
+parts
+tmp
+.sass-cache
+node_modules
+
+src/website/settingslocal.py
+stunnel.log
+
+.ruby-version
+
+# don't need these in the npm package.
+src/
+_config.yml
+bower.json
+component.json
+composer.json
+CONTRIBUTING.md
+Gemfile
+Gemfile.lock
diff --git a/library/font_awesome/.ruby-version b/library/font_awesome/.ruby-version
deleted file mode 100644
index ae6d5b9cb..000000000
--- a/library/font_awesome/.ruby-version
+++ /dev/null
@@ -1 +0,0 @@
-1.9.3-p392
diff --git a/library/font_awesome/CONTRIBUTING.md b/library/font_awesome/CONTRIBUTING.md
index cc2530cd8..b3d4f878d 100644
--- a/library/font_awesome/CONTRIBUTING.md
+++ b/library/font_awesome/CONTRIBUTING.md
@@ -4,6 +4,35 @@ Looking to contribute something to Font Awesome? **Here's how you can help.**
+## Requesting new icons
+
+New icons mostly start as requests by the [Font Awesome community on GitHub](../../issues). Want to request a new icon? Here are some things to keep in mind:
+
+1. Please be nice. Font Awesome is a happy place.
+2. Please do not request comprehensive sets of icons related to a very specific field.
+3. Please [search](../../search?type=Issues) to see if your icon request already exists. If a request is found, please +1 that one.
+4. Please make requests for single icons, unless you are requesting a couple of strictly related icons (e.g., thumbs-up/thumbs-down).
+5. Please and thank you if you include the following:
+ - Title your [new issue](../../issues/new?title=Icon%20Request:%20icon-) `Icon request: icon-name` (e.g., `Icon request: icon-car`).
+ - Include a few use cases for your requested icon. How do you plan on using it?
+ - Attach a single color image or two that represent the idea you're going for.
+ - Request concrete objects: it's harder to make an icon to represent happiness, it's easier to make a smiley face. ☺
+
+
+
+## Suggesting icon keyword addition/removal
+
+Icon filters are maintained by the [Font Awesome community on GitHub](../../pulls?q=is%3Apr+label%3Adoc).
+
+If you feel that an icon
+
+* is missing keyword(s)
+* contains invalid keyword(s)
+
+please send a [PR](https://help.github.com/articles/using-pull-requests/) to the `master` branch.
+
+
+
## Reporting issues
We only accept issues that are icon requests, bug reports, or feature requests. Bugs must be isolated and reproducible problems that we can fix within the Font Awesome core. Please read the following guidelines to ensure you are the paragon of bug reporting.
@@ -17,7 +46,7 @@ We only accept issues that are icon requests, bug reports, or feature requests.
## Key branches
-- `master` is the latest, deployed version (not to be used for pull requests)
+- `master` is the latest, deployed version (use for pull request if they only affect the docs)
- `gh-pages` is the hosted docs (not to be used for pull requests)
- `*-wip` branches are the official work in progress branches for the next releases. All pull requests should be submitted against the appropriate branch
@@ -34,9 +63,11 @@ As of v3.2.0, Font Awesome's CSS, LESS, SCSS, and documentation are all powered
## Pull requests
+- At the moment we are not accepting pull requests containing icons
- Submit all pull requests against the appropriate `*-wip` branch for easier merging
+- If your PR only affect the docs, feel free to push against the `master` branch
- Any changes to the docs must be made to the Liquid templates in the `src` directory
-- CSS changes must be done in .less and .scss files first, never the compiled files
+- Any changes to the styles must be made to the .less and .scss files in the `src` directory
- If modifying the .less and .scss files, always recompile and commit the compiled files
- Try not to pollute your pull request with unintended changes--keep them simple and small
- Try to share which browsers your code has been tested in before submitting a pull request
@@ -58,7 +89,7 @@ As of v3.2.0, Font Awesome's CSS, LESS, SCSS, and documentation are all powered
- Multiple-line approach (one property and value per line)
- Always a space after a property's colon (.e.g, `display: block;` and not `display:block;`)
- End all lines with a semi-colon
-- For multiple, comma-separated selectors, place each selector on it's own line
+- For multiple, comma-separated selectors, place each selector on its own line
- Attribute selectors, like `input[type="text"]` should always wrap the attribute's value in double quotes, for consistency and safety (see this [blog post on unquoted attribute values](http://mathiasbynens.be/notes/unquoted-attribute-values) that can lead to XSS attacks)
diff --git a/library/font_awesome/Gemfile b/library/font_awesome/Gemfile
index 499bcea70..0ca1cbfd5 100644
--- a/library/font_awesome/Gemfile
+++ b/library/font_awesome/Gemfile
@@ -1,4 +1,7 @@
source 'https://rubygems.org'
gem 'jekyll', '~> 1.0'
-gem 'debugger'
+gem 'safe_yaml', '~> 1.0.4'
+gem 'sass', '~> 3.0'
+gem 'less', '~> 2.5.0'
+gem 'therubyracer'
diff --git a/library/font_awesome/Gemfile.lock b/library/font_awesome/Gemfile.lock
index a00e13f1e..e0f3de44d 100644
--- a/library/font_awesome/Gemfile.lock
+++ b/library/font_awesome/Gemfile.lock
@@ -1,46 +1,64 @@
GEM
remote: https://rubygems.org/
specs:
- classifier (1.3.3)
+ blankslate (2.1.2.4)
+ classifier (1.3.4)
fast-stemmer (>= 1.0.0)
colorator (0.1)
- columnize (0.3.6)
- commander (4.1.3)
+ commander (4.1.6)
highline (~> 1.6.11)
- debugger (1.6.0)
- columnize (>= 0.3.1)
- debugger-linecache (~> 1.2.0)
- debugger-ruby_core_source (~> 1.2.1)
- debugger-linecache (1.2.0)
- debugger-ruby_core_source (1.2.2)
- directory_watcher (1.4.1)
+ commonjs (0.2.7)
fast-stemmer (1.0.2)
- highline (1.6.19)
- jekyll (1.0.0)
+ ffi (1.9.10)
+ highline (1.6.21)
+ jekyll (1.5.1)
classifier (~> 1.3)
colorator (~> 0.1)
commander (~> 4.1.3)
- directory_watcher (~> 1.4.1)
- kramdown (~> 0.14)
- liquid (~> 2.3)
- maruku (~> 0.5)
- pygments.rb (~> 0.4.2)
- safe_yaml (~> 0.7.0)
- kramdown (0.14.2)
- liquid (2.5.0)
- maruku (0.6.1)
- syntax (>= 1.0.0)
- posix-spawn (0.3.6)
- pygments.rb (0.4.2)
+ liquid (~> 2.5.5)
+ listen (~> 1.3)
+ maruku (= 0.7.0)
+ pygments.rb (~> 0.5.0)
+ redcarpet (~> 2.3.0)
+ safe_yaml (~> 1.0)
+ toml (~> 0.1.0)
+ less (2.5.1)
+ commonjs (~> 0.2.7)
+ libv8 (3.16.14.13)
+ liquid (2.5.5)
+ listen (1.3.1)
+ rb-fsevent (>= 0.9.3)
+ rb-inotify (>= 0.9)
+ rb-kqueue (>= 0.2)
+ maruku (0.7.0)
+ parslet (1.5.0)
+ blankslate (~> 2.0)
+ posix-spawn (0.3.11)
+ pygments.rb (0.5.4)
posix-spawn (~> 0.3.6)
yajl-ruby (~> 1.1.0)
- safe_yaml (0.7.1)
- syntax (1.0.0)
+ rb-fsevent (0.9.6)
+ rb-inotify (0.9.5)
+ ffi (>= 0.5.0)
+ rb-kqueue (0.2.4)
+ ffi (>= 0.5.0)
+ redcarpet (2.3.0)
+ ref (2.0.0)
+ safe_yaml (1.0.4)
+ sass (3.4.19)
+ therubyracer (0.12.2)
+ libv8 (~> 3.16.14.0)
+ ref
+ toml (0.1.2)
+ parslet (~> 1.5.0)
yajl-ruby (1.1.0)
PLATFORMS
ruby
DEPENDENCIES
- debugger
- jekyll (= 1.0)
+ jekyll (~> 1.0)
+ less (~> 2.5.0)
+ safe_yaml (~> 1.0.4)
+ sass (~> 3.0)
+ therubyracer
diff --git a/library/font_awesome/HELP-US-OUT.txt b/library/font_awesome/HELP-US-OUT.txt
new file mode 100644
index 000000000..83d083dd7
--- /dev/null
+++ b/library/font_awesome/HELP-US-OUT.txt
@@ -0,0 +1,7 @@
+I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project,
+Fort Awesome (https://fortawesome.com). It makes it easy to put the perfect icons on your website. Choose from our awesome,
+comprehensive icon sets or copy and paste your own.
+
+Please. Check it out.
+
+-Dave Gandy
diff --git a/library/font_awesome/README.md b/library/font_awesome/README.md
index 6a1dc7f92..bb01dd0d6 100644
--- a/library/font_awesome/README.md
+++ b/library/font_awesome/README.md
@@ -1,34 +1,53 @@
-#[Font Awesome v3.2.1](http://fontawesome.io)
-###the iconic font designed for Bootstrap
+# [Font Awesome v4.6.1](http://fontawesome.io)
+### The iconic font and CSS framework
-Font Awesome is a full suite of 361 pictographic icons for easy scalable vector graphics on websites, created and
-maintained by [Dave Gandy](http://twitter.com/davegandy). Stay up to date [@fontawesome](http://twitter.com/fontawesome).
+Font Awesome is a full suite of 628 pictographic icons for easy scalable vector graphics on websites,
+created and maintained by [Dave Gandy](https://twitter.com/davegandy).
+Stay up to date with the latest release and announcements on Twitter:
+[@fontawesome](http://twitter.com/fontawesome).
Get started at http://fontawesome.io!
-##License
+## License
- The Font Awesome font is licensed under the SIL OFL 1.1:
- http://scripts.sil.org/OFL
-- Font Awesome CSS, LESS, and SASS files are licensed under the MIT License:
- - http://opensource.org/licenses/mit-license.html
+- Font Awesome CSS, LESS, and Sass files are licensed under the MIT License:
+ - https://opensource.org/licenses/mit-license.html
- The Font Awesome documentation is licensed under the CC BY 3.0 License:
- http://creativecommons.org/licenses/by/3.0/
- Attribution is no longer required as of Font Awesome 3.0, but much appreciated:
- `Font Awesome by Dave Gandy - http://fontawesome.io`
-- Full details: http://fontawesome.io/license
-
-##Changelog
-- v3.0.0 - all icons redesigned from scratch, optimized for Bootstrap's 14px default
-- v3.0.1 - much improved rendering in webkit, various bug fixes
-- v3.0.2 - much improved rendering and alignment in IE7
-- v3.1.0 - Added 54 icons, icon stacking styles, flipping and rotating icons, removed SASS support
-- [v3.1.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=4&page=1&state=closed)
-- [v3.2.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=3&page=1&state=closed)
+- Full details: http://fontawesome.io/license/
+
+## Changelog
+- [v4.6.1 GitHub pull request](https://github.com/FortAwesome/Font-Awesome/pull/8962)
+- [v4.6.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.6.0+is%3Aclosed)
+- [v4.5.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.5.0+is%3Aclosed)
+- [v4.4.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.4.0+is%3Aclosed)
+- [v4.3.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.3.0+is%3Aclosed)
+- [v4.2.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=12&page=1&state=closed)
+- [v4.1.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=6&page=1&state=closed)
+- [v4.0.3 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=9&page=1&state=closed)
+- [v4.0.2 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=8&page=1&state=closed)
+- [v4.0.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=7&page=1&state=closed)
+- [v4.0.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=2&page=1&state=closed)
- [v3.2.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=5&page=1&state=closed)
+- [v3.2.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=3&page=1&state=closed)
+- [v3.1.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=4&page=1&state=closed)
+- v3.1.0 - Added 54 icons, icon stacking styles, flipping and rotating icons, removed Sass support
+- v3.0.2 - much improved rendering and alignment in IE7
+- v3.0.1 - much improved rendering in webkit, various bug fixes
+- v3.0.0 - all icons redesigned from scratch, optimized for Bootstrap's 14px default
+
+## Contributing
+
+Please read through our [contributing guidelines](https://github.com/FortAwesome/Font-Awesome/blob/master/CONTRIBUTING.md).
+Included are directions for opening issues, coding standards, and notes on development.
-##Versioning
+## Versioning
-Font Awesome will be maintained under the Semantic Versioning guidelines as much as possible. Releases will be numbered with the following format:
+Font Awesome will be maintained under the Semantic Versioning guidelines as much as possible. Releases will be numbered
+with the following format:
`..`
@@ -40,14 +59,35 @@ And constructed with the following guidelines:
For more information on SemVer, please visit http://semver.org.
-##Author
+## Author
- Email: dave@fontawesome.io
- Twitter: http://twitter.com/davegandy
- GitHub: https://github.com/davegandy
-- Work: Lead Product Designer @ http://kyru.us
+
+## Component
+To include as a [component](https://github.com/componentjs/component), just run
+
+ $ component install FortAwesome/Font-Awesome
+
+Or add
+
+ "FortAwesome/Font-Awesome": "*"
+
+to the `dependencies` in your `component.json`.
## Hacking on Font Awesome
+**Before you can build the project**, you must first have the following installed:
+
+- [Ruby](https://www.ruby-lang.org/en/)
+- Ruby Development Headers
+ - **Ubuntu:** `sudo apt-get install ruby-dev` *(Only if you're __NOT__ using `rbenv` or `rvm`)*
+ - **Windows:** [DevKit](http://rubyinstaller.org/)
+- [Bundler](http://bundler.io/) (Run `gem install bundler` to install).
+- [Node Package Manager (AKA NPM)](https://docs.npmjs.com/getting-started/installing-node)
+- [Less](http://lesscss.org/) (Run `npm install -g less` to install).
+- [Less Plugin: Clean CSS](https://github.com/less/less-plugin-clean-css) (Run `npm install -g less-plugin-clean-css` to install).
+
From the root of the repository, install the tools used to develop.
$ bundle install
@@ -59,4 +99,4 @@ Build the project and documentation:
Or serve it on a local server on http://localhost:7998/Font-Awesome/:
- $ bundle exec jekyll serve
+ $ bundle exec jekyll -w serve
diff --git a/library/font_awesome/_config.yml b/library/font_awesome/_config.yml
index a51b5581f..081c1bf1e 100644
--- a/library/font_awesome/_config.yml
+++ b/library/font_awesome/_config.yml
@@ -11,7 +11,7 @@ pygments: true
permalink: pretty
# ensures SCSS files are compiled
-include: [_bootstrap.scss, _core.scss, _extras.scss, _icons.scss, _mixins.scss, _path.scss, _variables.scss]
+include: [_*.scss]
# used in building icon pages
icon_meta: src/icons.yml
@@ -19,21 +19,21 @@ icon_layout: icon.html # Relative to _layouts directory
icon_destination: icon # Relative to destination
fontawesome:
- version: 3.2.1
- minor_version: 3.2
+ version: 4.6.1
+ minor_version: 4.6
+ major_version: 4
+ doc_blob: v4.6.1
url: http://fontawesome.io
legacy_url: http://fortawesome.github.com/Font-Awesome/
- blog_url: http://blog.fontawesome.io
+ blog_url: http://articles.fortawesome.com
twitter: fontawesome
- tagline: The iconic font designed for Bootstrap
+ tagline: The iconic font and CSS toolkit
+ css_prefix: fa
author:
name: Dave Gandy
email: dave@fontawesome.io
twitter: davegandy
- work:
- name: Kyruus
- url: http://kyruus.com
- title: Lead Product Designer
+ github: davegandy
github:
url: https://github.com/FortAwesome/Font-Awesome
project: Font-Awesome
@@ -50,5 +50,11 @@ fontawesome:
url: http://creativecommons.org/licenses/by/3.0/
bootstrap:
- version: 2.3.2
+ version: 3.3.5
url: http://getbootstrap.com
+
+jquery:
+ version: 1.11.3
+
+jquery_validate:
+ version: 1.13.1
diff --git a/library/font_awesome/bower.json b/library/font_awesome/bower.json
new file mode 100644
index 000000000..9e2112659
--- /dev/null
+++ b/library/font_awesome/bower.json
@@ -0,0 +1,22 @@
+{
+ "name": "font-awesome",
+ "description": "Font Awesome",
+ "keywords": [],
+ "homepage": "http://fontawesome.io",
+ "dependencies": {},
+ "devDependencies": {},
+ "license": ["OFL-1.1", "MIT", "CC-BY-3.0"],
+ "main": [
+ "less/font-awesome.less",
+ "scss/font-awesome.scss"
+ ],
+ "ignore": [
+ "*/.*",
+ "*.json",
+ "src",
+ "*.yml",
+ "Gemfile",
+ "Gemfile.lock",
+ "*.md"
+ ]
+}
diff --git a/library/font_awesome/component.json b/library/font_awesome/component.json
new file mode 100644
index 000000000..6aa7a1c51
--- /dev/null
+++ b/library/font_awesome/component.json
@@ -0,0 +1,21 @@
+{
+ "name": "font-awesome",
+ "repo": "FortAwesome/Font-Awesome",
+ "description": "Font Awesome",
+ "version": "4.6.1",
+ "keywords": [],
+ "dependencies": {},
+ "development": {},
+ "license": "SIL, MIT, CC BY 3.0",
+ "styles": [
+ "css/font-awesome.css"
+ ],
+ "fonts": [
+ "fonts/fontawesome-webfont.eot",
+ "fonts/fontawesome-webfont.svg",
+ "fonts/fontawesome-webfont.ttf",
+ "fonts/fontawesome-webfont.woff",
+ "fonts/fontawesome-webfont.woff2",
+ "fonts/FontAwesome.otf"
+ ]
+}
diff --git a/library/font_awesome/composer.json b/library/font_awesome/composer.json
index eb86b9710..f1b9f3707 100644
--- a/library/font_awesome/composer.json
+++ b/library/font_awesome/composer.json
@@ -1,6 +1,6 @@
{
"name": "fortawesome/font-awesome",
- "description": "The iconic font designed for Bootstrap",
+ "description": "The iconic font and CSS framework",
"keywords": ["font", "awesome", "fontawesome", "icon", "font", "bootstrap"],
"homepage": "http://fontawesome.io/",
"authors": [
@@ -13,7 +13,7 @@
],
"extra": {
"branch-alias": {
- "dev-master": "3.2.x-dev"
+ "dev-master": "4.0.x-dev"
}
},
"license": [
@@ -22,6 +22,6 @@
],
"require-dev": {
"jekyll": "1.0.2",
- "lessc": "1.3.3"
+ "lessc": "1.4.2"
}
}
diff --git a/library/font_awesome/css/font-awesome-ie7.css b/library/font_awesome/css/font-awesome-ie7.css
deleted file mode 100644
index 17f07766c..000000000
--- a/library/font_awesome/css/font-awesome-ie7.css
+++ /dev/null
@@ -1,1203 +0,0 @@
-/*!
- * Font Awesome 3.2.1
- * the iconic font designed for Bootstrap
- * ------------------------------------------------------------------------------
- * The full suite of pictographic icons, examples, and documentation can be
- * found at http://fontawesome.io. Stay up to date on Twitter at
- * http://twitter.com/fontawesome.
- *
- * License
- * ------------------------------------------------------------------------------
- * - The Font Awesome font is licensed under SIL OFL 1.1 -
- * http://scripts.sil.org/OFL
- * - Font Awesome CSS, LESS, and SASS files are licensed under MIT License -
- * http://opensource.org/licenses/mit-license.html
- * - Font Awesome documentation licensed under CC BY 3.0 -
- * http://creativecommons.org/licenses/by/3.0/
- * - Attribution is no longer required in Font Awesome 3.0, but much appreciated:
- * "Font Awesome by Dave Gandy - http://fontawesome.io"
- *
- * Author - Dave Gandy
- * ------------------------------------------------------------------------------
- * Email: dave@fontawesome.io
- * Twitter: http://twitter.com/davegandy
- * Work: Lead Product Designer @ Kyruus - http://kyruus.com
- */
-.icon-large {
- font-size: 1.3333333333333333em;
- margin-top: -4px;
- padding-top: 3px;
- margin-bottom: -4px;
- padding-bottom: 3px;
- vertical-align: middle;
-}
-.nav [class^="icon-"],
-.nav [class*=" icon-"] {
- vertical-align: inherit;
- margin-top: -4px;
- padding-top: 3px;
- margin-bottom: -4px;
- padding-bottom: 3px;
-}
-.nav [class^="icon-"].icon-large,
-.nav [class*=" icon-"].icon-large {
- vertical-align: -25%;
-}
-.nav-pills [class^="icon-"].icon-large,
-.nav-tabs [class^="icon-"].icon-large,
-.nav-pills [class*=" icon-"].icon-large,
-.nav-tabs [class*=" icon-"].icon-large {
- line-height: .75em;
- margin-top: -7px;
- padding-top: 5px;
- margin-bottom: -5px;
- padding-bottom: 4px;
-}
-.btn [class^="icon-"].pull-left,
-.btn [class*=" icon-"].pull-left,
-.btn [class^="icon-"].pull-right,
-.btn [class*=" icon-"].pull-right {
- vertical-align: inherit;
-}
-.btn [class^="icon-"].icon-large,
-.btn [class*=" icon-"].icon-large {
- margin-top: -0.5em;
-}
-a [class^="icon-"],
-a [class*=" icon-"] {
- cursor: pointer;
-}
-.icon-glass {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-music {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-search {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-envelope-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-heart {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-star {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-star-empty {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-user {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-film {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-th-large {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-th {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-th-list {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-ok {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-remove {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-zoom-in {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-zoom-out {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-off {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-power-off {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-signal {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-cog {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-gear {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-trash {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-home {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-file-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-time {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-road {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-download-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-download {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-upload {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-inbox {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-play-circle {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-repeat {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-rotate-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-refresh {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-list-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-lock {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-flag {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-headphones {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-volume-off {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-volume-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-volume-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-qrcode {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-barcode {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-tag {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-tags {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-book {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bookmark {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-print {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-camera {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-font {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bold {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-italic {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-text-height {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-text-width {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-align-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-align-center {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-align-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-align-justify {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-list {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-indent-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-indent-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-facetime-video {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-picture {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-pencil {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-map-marker {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-adjust {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-tint {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-edit {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-share {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-check {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-move {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-step-backward {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-fast-backward {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-backward {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-play {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-pause {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-stop {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-forward {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-fast-forward {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-step-forward {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-eject {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-chevron-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-chevron-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-plus-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-minus-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-remove-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-ok-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-question-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-info-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-screenshot {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-remove-circle {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-ok-circle {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-ban-circle {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-arrow-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-arrow-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-arrow-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-arrow-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-share-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-mail-forward {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-resize-full {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-resize-small {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-plus {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-minus {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-asterisk {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-exclamation-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-gift {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-leaf {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-fire {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-eye-open {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-eye-close {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-warning-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-plane {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-calendar {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-random {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-comment {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-magnet {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-chevron-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-chevron-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-retweet {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-shopping-cart {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-folder-close {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-folder-open {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-resize-vertical {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-resize-horizontal {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bar-chart {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-twitter-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-facebook-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-camera-retro {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-key {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-cogs {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-gears {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-comments {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-thumbs-up-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-thumbs-down-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-star-half {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-heart-empty {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-signout {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-linkedin-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-pushpin {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-external-link {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-signin {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-trophy {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-github-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-upload-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-lemon {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-phone {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-check-empty {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-unchecked {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bookmark-empty {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-phone-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-twitter {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-facebook {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-github {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-unlock {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-credit-card {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-rss {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-hdd {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bullhorn {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bell {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-certificate {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-hand-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-hand-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-hand-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-hand-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-circle-arrow-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-circle-arrow-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-circle-arrow-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-circle-arrow-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-globe {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-wrench {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-tasks {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-filter {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-briefcase {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-fullscreen {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-group {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-link {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-cloud {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-beaker {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-cut {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-copy {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-paper-clip {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-paperclip {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-save {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sign-blank {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-reorder {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-list-ul {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-list-ol {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-strikethrough {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-underline {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-table {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-magic {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-truck {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-pinterest {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-pinterest-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-google-plus-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-google-plus {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-money {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-caret-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-caret-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-caret-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-caret-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-columns {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sort {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sort-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sort-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-envelope {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-linkedin {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-undo {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-rotate-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-legal {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-dashboard {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-comment-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-comments-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bolt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sitemap {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-umbrella {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-paste {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-lightbulb {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-exchange {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-cloud-download {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-cloud-upload {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-user-md {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-stethoscope {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-suitcase {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bell-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-coffee {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-food {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-file-text-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-building {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-hospital {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-ambulance {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-medkit {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-fighter-jet {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-beer {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-h-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-plus-sign-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-double-angle-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-double-angle-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-double-angle-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-double-angle-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-angle-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-angle-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-angle-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-angle-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-desktop {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-laptop {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-tablet {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-mobile-phone {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-circle-blank {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-quote-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-quote-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-spinner {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-circle {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-reply {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-mail-reply {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-github-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-folder-close-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-folder-open-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-expand-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-collapse-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-smile {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-frown {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-meh {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-gamepad {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-keyboard {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-flag-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-flag-checkered {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-terminal {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-code {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-reply-all {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-mail-reply-all {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-star-half-empty {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-star-half-full {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-location-arrow {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-crop {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-code-fork {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-unlink {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-question {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-info {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-exclamation {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-superscript {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-subscript {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-eraser {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-puzzle-piece {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-microphone {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-microphone-off {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-shield {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-calendar-empty {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-fire-extinguisher {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-rocket {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-maxcdn {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-chevron-sign-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-chevron-sign-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-chevron-sign-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-chevron-sign-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-html5 {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-css3 {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-anchor {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-unlock-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bullseye {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-ellipsis-horizontal {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-ellipsis-vertical {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-rss-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-play-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-ticket {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-minus-sign-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-check-minus {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-level-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-level-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-check-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-edit-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-external-link-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-share-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-compass {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-collapse {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-collapse-top {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-expand {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-eur {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-euro {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-gbp {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-usd {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-dollar {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-inr {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-rupee {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-jpy {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-yen {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-cny {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-renminbi {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-krw {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-won {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-btc {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bitcoin {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-file {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-file-text {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sort-by-alphabet {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sort-by-alphabet-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sort-by-attributes {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sort-by-attributes-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sort-by-order {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sort-by-order-alt {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-thumbs-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-thumbs-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-youtube-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-youtube {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-xing {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-xing-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-youtube-play {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-dropbox {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-stackexchange {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-instagram {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-flickr {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-adn {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bitbucket {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bitbucket-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-tumblr {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-tumblr-sign {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-long-arrow-down {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-long-arrow-up {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-long-arrow-left {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-long-arrow-right {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-apple {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-windows {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-android {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-linux {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-dribbble {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-skype {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-foursquare {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-trello {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-female {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-male {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-gittip {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-sun {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-moon {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-archive {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-bug {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-vk {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-weibo {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
-.icon-renren {
- *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');
-}
diff --git a/library/font_awesome/css/font-awesome-ie7.min.css b/library/font_awesome/css/font-awesome-ie7.min.css
deleted file mode 100644
index d3dae63bd..000000000
--- a/library/font_awesome/css/font-awesome-ie7.min.css
+++ /dev/null
@@ -1,384 +0,0 @@
-.icon-large{font-size:1.3333333333333333em;margin-top:-4px;padding-top:3px;margin-bottom:-4px;padding-bottom:3px;vertical-align:middle;}
-.nav [class^="icon-"],.nav [class*=" icon-"]{vertical-align:inherit;margin-top:-4px;padding-top:3px;margin-bottom:-4px;padding-bottom:3px;}.nav [class^="icon-"].icon-large,.nav [class*=" icon-"].icon-large{vertical-align:-25%;}
-.nav-pills [class^="icon-"].icon-large,.nav-tabs [class^="icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large,.nav-tabs [class*=" icon-"].icon-large{line-height:.75em;margin-top:-7px;padding-top:5px;margin-bottom:-5px;padding-bottom:4px;}
-.btn [class^="icon-"].pull-left,.btn [class*=" icon-"].pull-left,.btn [class^="icon-"].pull-right,.btn [class*=" icon-"].pull-right{vertical-align:inherit;}
-.btn [class^="icon-"].icon-large,.btn [class*=" icon-"].icon-large{margin-top:-0.5em;}
-a [class^="icon-"],a [class*=" icon-"]{cursor:pointer;}
-.icon-glass{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-music{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-search{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-envelope-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-heart{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-star{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-star-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-user{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-film{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-th-large{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-th{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-th-list{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-ok{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-remove{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-zoom-in{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-zoom-out{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-off{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-power-off{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-signal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-cog{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-gear{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-trash{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-home{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-file-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-time{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-road{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-download-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-download{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-upload{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-inbox{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-play-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-repeat{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-rotate-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-refresh{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-list-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-lock{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-flag{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-headphones{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-volume-off{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-volume-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-volume-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-qrcode{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-barcode{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-tag{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-tags{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-book{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bookmark{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-print{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-camera{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-font{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bold{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-italic{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-text-height{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-text-width{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-align-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-align-center{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-align-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-align-justify{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-list{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-indent-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-indent-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-facetime-video{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-picture{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-pencil{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-map-marker{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-adjust{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-tint{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-edit{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-share{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-check{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-move{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-step-backward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-fast-backward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-backward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-play{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-pause{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-stop{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-forward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-fast-forward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-step-forward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-eject{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-chevron-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-chevron-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-plus-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-minus-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-remove-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-ok-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-question-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-info-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-screenshot{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-remove-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-ok-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-ban-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-arrow-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-arrow-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-arrow-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-arrow-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-share-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-mail-forward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-resize-full{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-resize-small{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-plus{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-minus{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-asterisk{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-exclamation-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-gift{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-leaf{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-fire{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-eye-open{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-eye-close{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-warning-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-plane{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-calendar{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-random{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-comment{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-magnet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-chevron-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-chevron-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-retweet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-shopping-cart{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-folder-close{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-folder-open{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-resize-vertical{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-resize-horizontal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bar-chart{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-twitter-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-facebook-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-camera-retro{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-key{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-cogs{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-gears{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-comments{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-thumbs-up-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-thumbs-down-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-star-half{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-heart-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-signout{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-linkedin-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-pushpin{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-external-link{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-signin{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-trophy{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-github-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-upload-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-lemon{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-phone{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-check-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-unchecked{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bookmark-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-phone-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-twitter{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-facebook{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-github{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-unlock{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-credit-card{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-rss{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-hdd{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bullhorn{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bell{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-certificate{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-hand-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-hand-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-hand-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-hand-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-circle-arrow-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-circle-arrow-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-circle-arrow-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-circle-arrow-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-globe{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-wrench{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-tasks{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-filter{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-briefcase{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-fullscreen{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-group{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-link{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-cloud{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-beaker{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-cut{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-copy{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-paper-clip{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-paperclip{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-save{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sign-blank{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-reorder{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-list-ul{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-list-ol{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-strikethrough{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-underline{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-table{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-magic{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-truck{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-pinterest{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-pinterest-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-google-plus-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-google-plus{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-money{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-caret-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-caret-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-caret-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-caret-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-columns{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sort{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sort-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sort-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-envelope{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-linkedin{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-undo{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-rotate-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-legal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-dashboard{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-comment-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-comments-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bolt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sitemap{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-umbrella{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-paste{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-lightbulb{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-exchange{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-cloud-download{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-cloud-upload{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-user-md{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-stethoscope{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-suitcase{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bell-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-coffee{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-food{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-file-text-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-building{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-hospital{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-ambulance{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-medkit{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-fighter-jet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-beer{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-h-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-plus-sign-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-double-angle-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-double-angle-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-double-angle-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-double-angle-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-angle-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-angle-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-angle-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-angle-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-desktop{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-laptop{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-tablet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-mobile-phone{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-circle-blank{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-quote-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-quote-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-spinner{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-reply{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-mail-reply{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-github-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-folder-close-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-folder-open-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-expand-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-collapse-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-smile{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-frown{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-meh{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-gamepad{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-keyboard{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-flag-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-flag-checkered{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-terminal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-code{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-reply-all{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-mail-reply-all{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-star-half-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-star-half-full{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-location-arrow{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-crop{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-code-fork{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-unlink{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-question{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-info{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-exclamation{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-superscript{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-subscript{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-eraser{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-puzzle-piece{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-microphone{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-microphone-off{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-shield{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-calendar-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-fire-extinguisher{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-rocket{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-maxcdn{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-chevron-sign-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-chevron-sign-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-chevron-sign-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-chevron-sign-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-html5{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-css3{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-anchor{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-unlock-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bullseye{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-ellipsis-horizontal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-ellipsis-vertical{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-rss-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-play-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-ticket{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-minus-sign-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-check-minus{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-level-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-level-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-check-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-edit-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-external-link-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-share-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-compass{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-collapse{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-collapse-top{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-expand{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-eur{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-euro{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-gbp{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-usd{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-dollar{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-inr{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-rupee{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-jpy{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-yen{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-cny{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-renminbi{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-krw{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-won{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-btc{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bitcoin{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-file{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-file-text{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sort-by-alphabet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sort-by-alphabet-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sort-by-attributes{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sort-by-attributes-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sort-by-order{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sort-by-order-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-thumbs-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-thumbs-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-youtube-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-youtube{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-xing{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-xing-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-youtube-play{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-dropbox{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-stackexchange{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-instagram{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-flickr{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-adn{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bitbucket{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bitbucket-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-tumblr{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-tumblr-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-long-arrow-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-long-arrow-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-long-arrow-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-long-arrow-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-apple{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-windows{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-android{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-linux{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-dribbble{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-skype{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-foursquare{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-trello{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-female{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-male{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-gittip{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-sun{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-moon{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-archive{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-bug{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-vk{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-weibo{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
-.icon-renren{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '');}
diff --git a/library/font_awesome/css/font-awesome.css b/library/font_awesome/css/font-awesome.css
index 7ede1828a..bb0fe51ad 100644
--- a/library/font_awesome/css/font-awesome.css
+++ b/library/font_awesome/css/font-awesome.css
@@ -1,1479 +1,2178 @@
/*!
- * Font Awesome 3.2.1
- * the iconic font designed for Bootstrap
- * ------------------------------------------------------------------------------
- * The full suite of pictographic icons, examples, and documentation can be
- * found at http://fontawesome.io. Stay up to date on Twitter at
- * http://twitter.com/fontawesome.
- *
- * License
- * ------------------------------------------------------------------------------
- * - The Font Awesome font is licensed under SIL OFL 1.1 -
- * http://scripts.sil.org/OFL
- * - Font Awesome CSS, LESS, and SASS files are licensed under MIT License -
- * http://opensource.org/licenses/mit-license.html
- * - Font Awesome documentation licensed under CC BY 3.0 -
- * http://creativecommons.org/licenses/by/3.0/
- * - Attribution is no longer required in Font Awesome 3.0, but much appreciated:
- * "Font Awesome by Dave Gandy - http://fontawesome.io"
- *
- * Author - Dave Gandy
- * ------------------------------------------------------------------------------
- * Email: dave@fontawesome.io
- * Twitter: http://twitter.com/davegandy
- * Work: Lead Product Designer @ Kyruus - http://kyruus.com
+ * Font Awesome 4.6.1 by @davegandy - http://fontawesome.io - @fontawesome
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
/* FONT PATH
* -------------------------- */
@font-face {
font-family: 'FontAwesome';
- src: url('../font/fontawesome-webfont.eot?v=3.2.1');
- src: url('../font/fontawesome-webfont.eot?#iefix&v=3.2.1') format('embedded-opentype'), url('../font/fontawesome-webfont.woff?v=3.2.1') format('woff'), url('../font/fontawesome-webfont.ttf?v=3.2.1') format('truetype'), url('../font/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1') format('svg');
+ src: url('../fonts/fontawesome-webfont.eot?v=4.6.1');
+ src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.6.1') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.6.1') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.6.1') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.6.1') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.6.1#fontawesomeregular') format('svg');
font-weight: normal;
font-style: normal;
}
-/* FONT AWESOME CORE
- * -------------------------- */
-[class^="icon-"],
-[class*=" icon-"] {
- font-family: FontAwesome;
- font-weight: normal;
- font-style: normal;
- text-decoration: inherit;
- -webkit-font-smoothing: antialiased;
- *margin-right: .3em;
-}
-[class^="icon-"]:before,
-[class*=" icon-"]:before {
- text-decoration: inherit;
+.fa {
display: inline-block;
- speak: none;
+ font: normal normal normal 14px/1 FontAwesome;
+ font-size: inherit;
+ text-rendering: auto;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
-.icon-large:before {
- vertical-align: -10%;
- font-size: 1.3333333333333333em;
-}
-/* makes sure icons active on rollover in links */
-a [class^="icon-"],
-a [class*=" icon-"] {
- display: inline;
-}
-/* increased font size for icon-large */
-[class^="icon-"].icon-fixed-width,
-[class*=" icon-"].icon-fixed-width {
- display: inline-block;
- width: 1.1428571428571428em;
- text-align: right;
- padding-right: 0.2857142857142857em;
+.fa-lg {
+ font-size: 1.33333333em;
+ line-height: 0.75em;
+ vertical-align: -15%;
}
-[class^="icon-"].icon-fixed-width.icon-large,
-[class*=" icon-"].icon-fixed-width.icon-large {
- width: 1.4285714285714286em;
+.fa-2x {
+ font-size: 2em;
}
-.icons-ul {
- margin-left: 2.142857142857143em;
- list-style-type: none;
+.fa-3x {
+ font-size: 3em;
}
-.icons-ul > li {
- position: relative;
+.fa-4x {
+ font-size: 4em;
}
-.icons-ul .icon-li {
- position: absolute;
- left: -2.142857142857143em;
- width: 2.142857142857143em;
+.fa-5x {
+ font-size: 5em;
+}
+.fa-fw {
+ width: 1.28571429em;
text-align: center;
- line-height: inherit;
}
-[class^="icon-"].hide,
-[class*=" icon-"].hide {
- display: none;
+.fa-ul {
+ padding-left: 0;
+ margin-left: 2.14285714em;
+ list-style-type: none;
}
-.icon-muted {
- color: #eeeeee;
+.fa-ul > li {
+ position: relative;
}
-.icon-light {
- color: #ffffff;
+.fa-li {
+ position: absolute;
+ left: -2.14285714em;
+ width: 2.14285714em;
+ top: 0.14285714em;
+ text-align: center;
}
-.icon-dark {
- color: #333333;
+.fa-li.fa-lg {
+ left: -1.85714286em;
}
-.icon-border {
- border: solid 1px #eeeeee;
+.fa-border {
padding: .2em .25em .15em;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
-}
-.icon-2x {
- font-size: 2em;
-}
-.icon-2x.icon-border {
- border-width: 2px;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
+ border: solid 0.08em #eeeeee;
+ border-radius: .1em;
}
-.icon-3x {
- font-size: 3em;
-}
-.icon-3x.icon-border {
- border-width: 3px;
- -webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px;
-}
-.icon-4x {
- font-size: 4em;
+.fa-pull-left {
+ float: left;
}
-.icon-4x.icon-border {
- border-width: 4px;
- -webkit-border-radius: 6px;
- -moz-border-radius: 6px;
- border-radius: 6px;
+.fa-pull-right {
+ float: right;
}
-.icon-5x {
- font-size: 5em;
+.fa.fa-pull-left {
+ margin-right: .3em;
}
-.icon-5x.icon-border {
- border-width: 5px;
- -webkit-border-radius: 7px;
- -moz-border-radius: 7px;
- border-radius: 7px;
+.fa.fa-pull-right {
+ margin-left: .3em;
}
+/* Deprecated as of 4.4.0 */
.pull-right {
float: right;
}
.pull-left {
float: left;
}
-[class^="icon-"].pull-left,
-[class*=" icon-"].pull-left {
+.fa.pull-left {
margin-right: .3em;
}
-[class^="icon-"].pull-right,
-[class*=" icon-"].pull-right {
+.fa.pull-right {
margin-left: .3em;
}
-/* BOOTSTRAP SPECIFIC CLASSES
- * -------------------------- */
-/* Bootstrap 2.0 sprites.less reset */
-[class^="icon-"],
-[class*=" icon-"] {
- display: inline;
- width: auto;
- height: auto;
- line-height: normal;
- vertical-align: baseline;
- background-image: none;
- background-position: 0% 0%;
- background-repeat: repeat;
- margin-top: 0;
-}
-/* more sprites.less reset */
-.icon-white,
-.nav-pills > .active > a > [class^="icon-"],
-.nav-pills > .active > a > [class*=" icon-"],
-.nav-list > .active > a > [class^="icon-"],
-.nav-list > .active > a > [class*=" icon-"],
-.navbar-inverse .nav > .active > a > [class^="icon-"],
-.navbar-inverse .nav > .active > a > [class*=" icon-"],
-.dropdown-menu > li > a:hover > [class^="icon-"],
-.dropdown-menu > li > a:hover > [class*=" icon-"],
-.dropdown-menu > .active > a > [class^="icon-"],
-.dropdown-menu > .active > a > [class*=" icon-"],
-.dropdown-submenu:hover > a > [class^="icon-"],
-.dropdown-submenu:hover > a > [class*=" icon-"] {
- background-image: none;
-}
-/* keeps Bootstrap styles with and without icons the same */
-.btn [class^="icon-"].icon-large,
-.nav [class^="icon-"].icon-large,
-.btn [class*=" icon-"].icon-large,
-.nav [class*=" icon-"].icon-large {
- line-height: .9em;
-}
-.btn [class^="icon-"].icon-spin,
-.nav [class^="icon-"].icon-spin,
-.btn [class*=" icon-"].icon-spin,
-.nav [class*=" icon-"].icon-spin {
- display: inline-block;
+.fa-spin {
+ -webkit-animation: fa-spin 2s infinite linear;
+ animation: fa-spin 2s infinite linear;
}
-.nav-tabs [class^="icon-"],
-.nav-pills [class^="icon-"],
-.nav-tabs [class*=" icon-"],
-.nav-pills [class*=" icon-"],
-.nav-tabs [class^="icon-"].icon-large,
-.nav-pills [class^="icon-"].icon-large,
-.nav-tabs [class*=" icon-"].icon-large,
-.nav-pills [class*=" icon-"].icon-large {
- line-height: .9em;
-}
-.btn [class^="icon-"].pull-left.icon-2x,
-.btn [class*=" icon-"].pull-left.icon-2x,
-.btn [class^="icon-"].pull-right.icon-2x,
-.btn [class*=" icon-"].pull-right.icon-2x {
- margin-top: .18em;
-}
-.btn [class^="icon-"].icon-spin.icon-large,
-.btn [class*=" icon-"].icon-spin.icon-large {
- line-height: .8em;
-}
-.btn.btn-small [class^="icon-"].pull-left.icon-2x,
-.btn.btn-small [class*=" icon-"].pull-left.icon-2x,
-.btn.btn-small [class^="icon-"].pull-right.icon-2x,
-.btn.btn-small [class*=" icon-"].pull-right.icon-2x {
- margin-top: .25em;
-}
-.btn.btn-large [class^="icon-"],
-.btn.btn-large [class*=" icon-"] {
- margin-top: 0;
-}
-.btn.btn-large [class^="icon-"].pull-left.icon-2x,
-.btn.btn-large [class*=" icon-"].pull-left.icon-2x,
-.btn.btn-large [class^="icon-"].pull-right.icon-2x,
-.btn.btn-large [class*=" icon-"].pull-right.icon-2x {
- margin-top: .05em;
-}
-.btn.btn-large [class^="icon-"].pull-left.icon-2x,
-.btn.btn-large [class*=" icon-"].pull-left.icon-2x {
- margin-right: .2em;
-}
-.btn.btn-large [class^="icon-"].pull-right.icon-2x,
-.btn.btn-large [class*=" icon-"].pull-right.icon-2x {
- margin-left: .2em;
-}
-/* Fixes alignment in nav lists */
-.nav-list [class^="icon-"],
-.nav-list [class*=" icon-"] {
- line-height: inherit;
+.fa-pulse {
+ -webkit-animation: fa-spin 1s infinite steps(8);
+ animation: fa-spin 1s infinite steps(8);
}
-/* EXTRAS
- * -------------------------- */
-/* Stacked and layered icon */
-.icon-stack {
- position: relative;
- display: inline-block;
- width: 2em;
- height: 2em;
- line-height: 2em;
- vertical-align: -35%;
-}
-.icon-stack [class^="icon-"],
-.icon-stack [class*=" icon-"] {
- display: block;
- text-align: center;
- position: absolute;
- width: 100%;
- height: 100%;
- font-size: 1em;
- line-height: inherit;
- *line-height: 2em;
-}
-.icon-stack .icon-stack-base {
- font-size: 2em;
- *line-height: 1em;
-}
-/* Animated rotating icon */
-.icon-spin {
- display: inline-block;
- -moz-animation: spin 2s infinite linear;
- -o-animation: spin 2s infinite linear;
- -webkit-animation: spin 2s infinite linear;
- animation: spin 2s infinite linear;
-}
-/* Prevent stack and spinners from being taken inline when inside a link */
-a .icon-stack,
-a .icon-spin {
- display: inline-block;
- text-decoration: none;
-}
-@-moz-keyframes spin {
- 0% {
- -moz-transform: rotate(0deg);
- }
- 100% {
- -moz-transform: rotate(359deg);
- }
-}
-@-webkit-keyframes spin {
+@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
}
}
-@-o-keyframes spin {
- 0% {
- -o-transform: rotate(0deg);
- }
- 100% {
- -o-transform: rotate(359deg);
- }
-}
-@-ms-keyframes spin {
- 0% {
- -ms-transform: rotate(0deg);
- }
- 100% {
- -ms-transform: rotate(359deg);
- }
-}
-@keyframes spin {
+@keyframes fa-spin {
0% {
+ -webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
+ -webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
-/* Icon rotations and mirroring */
-.icon-rotate-90:before {
+.fa-rotate-90 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
-webkit-transform: rotate(90deg);
- -moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
- -o-transform: rotate(90deg);
transform: rotate(90deg);
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
}
-.icon-rotate-180:before {
+.fa-rotate-180 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
-webkit-transform: rotate(180deg);
- -moz-transform: rotate(180deg);
-ms-transform: rotate(180deg);
- -o-transform: rotate(180deg);
transform: rotate(180deg);
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
}
-.icon-rotate-270:before {
+.fa-rotate-270 {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
-webkit-transform: rotate(270deg);
- -moz-transform: rotate(270deg);
-ms-transform: rotate(270deg);
- -o-transform: rotate(270deg);
transform: rotate(270deg);
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}
-.icon-flip-horizontal:before {
+.fa-flip-horizontal {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
-webkit-transform: scale(-1, 1);
- -moz-transform: scale(-1, 1);
-ms-transform: scale(-1, 1);
- -o-transform: scale(-1, 1);
transform: scale(-1, 1);
}
-.icon-flip-vertical:before {
+.fa-flip-vertical {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(1, -1);
- -moz-transform: scale(1, -1);
-ms-transform: scale(1, -1);
- -o-transform: scale(1, -1);
transform: scale(1, -1);
}
-/* ensure rotation occurs inside anchor tags */
-a .icon-rotate-90:before,
-a .icon-rotate-180:before,
-a .icon-rotate-270:before,
-a .icon-flip-horizontal:before,
-a .icon-flip-vertical:before {
+:root .fa-rotate-90,
+:root .fa-rotate-180,
+:root .fa-rotate-270,
+:root .fa-flip-horizontal,
+:root .fa-flip-vertical {
+ filter: none;
+}
+.fa-stack {
+ position: relative;
display: inline-block;
+ width: 2em;
+ height: 2em;
+ line-height: 2em;
+ vertical-align: middle;
+}
+.fa-stack-1x,
+.fa-stack-2x {
+ position: absolute;
+ left: 0;
+ width: 100%;
+ text-align: center;
+}
+.fa-stack-1x {
+ line-height: inherit;
+}
+.fa-stack-2x {
+ font-size: 2em;
+}
+.fa-inverse {
+ color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
-.icon-glass:before {
+.fa-glass:before {
content: "\f000";
}
-.icon-music:before {
+.fa-music:before {
content: "\f001";
}
-.icon-search:before {
+.fa-search:before {
content: "\f002";
}
-.icon-envelope-alt:before {
+.fa-envelope-o:before {
content: "\f003";
}
-.icon-heart:before {
+.fa-heart:before {
content: "\f004";
}
-.icon-star:before {
+.fa-star:before {
content: "\f005";
}
-.icon-star-empty:before {
+.fa-star-o:before {
content: "\f006";
}
-.icon-user:before {
+.fa-user:before {
content: "\f007";
}
-.icon-film:before {
+.fa-film:before {
content: "\f008";
}
-.icon-th-large:before {
+.fa-th-large:before {
content: "\f009";
}
-.icon-th:before {
+.fa-th:before {
content: "\f00a";
}
-.icon-th-list:before {
+.fa-th-list:before {
content: "\f00b";
}
-.icon-ok:before {
+.fa-check:before {
content: "\f00c";
}
-.icon-remove:before {
+.fa-remove:before,
+.fa-close:before,
+.fa-times:before {
content: "\f00d";
}
-.icon-zoom-in:before {
+.fa-search-plus:before {
content: "\f00e";
}
-.icon-zoom-out:before {
+.fa-search-minus:before {
content: "\f010";
}
-.icon-power-off:before,
-.icon-off:before {
+.fa-power-off:before {
content: "\f011";
}
-.icon-signal:before {
+.fa-signal:before {
content: "\f012";
}
-.icon-gear:before,
-.icon-cog:before {
+.fa-gear:before,
+.fa-cog:before {
content: "\f013";
}
-.icon-trash:before {
+.fa-trash-o:before {
content: "\f014";
}
-.icon-home:before {
+.fa-home:before {
content: "\f015";
}
-.icon-file-alt:before {
+.fa-file-o:before {
content: "\f016";
}
-.icon-time:before {
+.fa-clock-o:before {
content: "\f017";
}
-.icon-road:before {
+.fa-road:before {
content: "\f018";
}
-.icon-download-alt:before {
+.fa-download:before {
content: "\f019";
}
-.icon-download:before {
+.fa-arrow-circle-o-down:before {
content: "\f01a";
}
-.icon-upload:before {
+.fa-arrow-circle-o-up:before {
content: "\f01b";
}
-.icon-inbox:before {
+.fa-inbox:before {
content: "\f01c";
}
-.icon-play-circle:before {
+.fa-play-circle-o:before {
content: "\f01d";
}
-.icon-rotate-right:before,
-.icon-repeat:before {
+.fa-rotate-right:before,
+.fa-repeat:before {
content: "\f01e";
}
-.icon-refresh:before {
+.fa-refresh:before {
content: "\f021";
}
-.icon-list-alt:before {
+.fa-list-alt:before {
content: "\f022";
}
-.icon-lock:before {
+.fa-lock:before {
content: "\f023";
}
-.icon-flag:before {
+.fa-flag:before {
content: "\f024";
}
-.icon-headphones:before {
+.fa-headphones:before {
content: "\f025";
}
-.icon-volume-off:before {
+.fa-volume-off:before {
content: "\f026";
}
-.icon-volume-down:before {
+.fa-volume-down:before {
content: "\f027";
}
-.icon-volume-up:before {
+.fa-volume-up:before {
content: "\f028";
}
-.icon-qrcode:before {
+.fa-qrcode:before {
content: "\f029";
}
-.icon-barcode:before {
+.fa-barcode:before {
content: "\f02a";
}
-.icon-tag:before {
+.fa-tag:before {
content: "\f02b";
}
-.icon-tags:before {
+.fa-tags:before {
content: "\f02c";
}
-.icon-book:before {
+.fa-book:before {
content: "\f02d";
}
-.icon-bookmark:before {
+.fa-bookmark:before {
content: "\f02e";
}
-.icon-print:before {
+.fa-print:before {
content: "\f02f";
}
-.icon-camera:before {
+.fa-camera:before {
content: "\f030";
}
-.icon-font:before {
+.fa-font:before {
content: "\f031";
}
-.icon-bold:before {
+.fa-bold:before {
content: "\f032";
}
-.icon-italic:before {
+.fa-italic:before {
content: "\f033";
}
-.icon-text-height:before {
+.fa-text-height:before {
content: "\f034";
}
-.icon-text-width:before {
+.fa-text-width:before {
content: "\f035";
}
-.icon-align-left:before {
+.fa-align-left:before {
content: "\f036";
}
-.icon-align-center:before {
+.fa-align-center:before {
content: "\f037";
}
-.icon-align-right:before {
+.fa-align-right:before {
content: "\f038";
}
-.icon-align-justify:before {
+.fa-align-justify:before {
content: "\f039";
}
-.icon-list:before {
+.fa-list:before {
content: "\f03a";
}
-.icon-indent-left:before {
+.fa-dedent:before,
+.fa-outdent:before {
content: "\f03b";
}
-.icon-indent-right:before {
+.fa-indent:before {
content: "\f03c";
}
-.icon-facetime-video:before {
+.fa-video-camera:before {
content: "\f03d";
}
-.icon-picture:before {
+.fa-photo:before,
+.fa-image:before,
+.fa-picture-o:before {
content: "\f03e";
}
-.icon-pencil:before {
+.fa-pencil:before {
content: "\f040";
}
-.icon-map-marker:before {
+.fa-map-marker:before {
content: "\f041";
}
-.icon-adjust:before {
+.fa-adjust:before {
content: "\f042";
}
-.icon-tint:before {
+.fa-tint:before {
content: "\f043";
}
-.icon-edit:before {
+.fa-edit:before,
+.fa-pencil-square-o:before {
content: "\f044";
}
-.icon-share:before {
+.fa-share-square-o:before {
content: "\f045";
}
-.icon-check:before {
+.fa-check-square-o:before {
content: "\f046";
}
-.icon-move:before {
+.fa-arrows:before {
content: "\f047";
}
-.icon-step-backward:before {
+.fa-step-backward:before {
content: "\f048";
}
-.icon-fast-backward:before {
+.fa-fast-backward:before {
content: "\f049";
}
-.icon-backward:before {
+.fa-backward:before {
content: "\f04a";
}
-.icon-play:before {
+.fa-play:before {
content: "\f04b";
}
-.icon-pause:before {
+.fa-pause:before {
content: "\f04c";
}
-.icon-stop:before {
+.fa-stop:before {
content: "\f04d";
}
-.icon-forward:before {
+.fa-forward:before {
content: "\f04e";
}
-.icon-fast-forward:before {
+.fa-fast-forward:before {
content: "\f050";
}
-.icon-step-forward:before {
+.fa-step-forward:before {
content: "\f051";
}
-.icon-eject:before {
+.fa-eject:before {
content: "\f052";
}
-.icon-chevron-left:before {
+.fa-chevron-left:before {
content: "\f053";
}
-.icon-chevron-right:before {
+.fa-chevron-right:before {
content: "\f054";
}
-.icon-plus-sign:before {
+.fa-plus-circle:before {
content: "\f055";
}
-.icon-minus-sign:before {
+.fa-minus-circle:before {
content: "\f056";
}
-.icon-remove-sign:before {
+.fa-times-circle:before {
content: "\f057";
}
-.icon-ok-sign:before {
+.fa-check-circle:before {
content: "\f058";
}
-.icon-question-sign:before {
+.fa-question-circle:before {
content: "\f059";
}
-.icon-info-sign:before {
+.fa-info-circle:before {
content: "\f05a";
}
-.icon-screenshot:before {
+.fa-crosshairs:before {
content: "\f05b";
}
-.icon-remove-circle:before {
+.fa-times-circle-o:before {
content: "\f05c";
}
-.icon-ok-circle:before {
+.fa-check-circle-o:before {
content: "\f05d";
}
-.icon-ban-circle:before {
+.fa-ban:before {
content: "\f05e";
}
-.icon-arrow-left:before {
+.fa-arrow-left:before {
content: "\f060";
}
-.icon-arrow-right:before {
+.fa-arrow-right:before {
content: "\f061";
}
-.icon-arrow-up:before {
+.fa-arrow-up:before {
content: "\f062";
}
-.icon-arrow-down:before {
+.fa-arrow-down:before {
content: "\f063";
}
-.icon-mail-forward:before,
-.icon-share-alt:before {
+.fa-mail-forward:before,
+.fa-share:before {
content: "\f064";
}
-.icon-resize-full:before {
+.fa-expand:before {
content: "\f065";
}
-.icon-resize-small:before {
+.fa-compress:before {
content: "\f066";
}
-.icon-plus:before {
+.fa-plus:before {
content: "\f067";
}
-.icon-minus:before {
+.fa-minus:before {
content: "\f068";
}
-.icon-asterisk:before {
+.fa-asterisk:before {
content: "\f069";
}
-.icon-exclamation-sign:before {
+.fa-exclamation-circle:before {
content: "\f06a";
}
-.icon-gift:before {
+.fa-gift:before {
content: "\f06b";
}
-.icon-leaf:before {
+.fa-leaf:before {
content: "\f06c";
}
-.icon-fire:before {
+.fa-fire:before {
content: "\f06d";
}
-.icon-eye-open:before {
+.fa-eye:before {
content: "\f06e";
}
-.icon-eye-close:before {
+.fa-eye-slash:before {
content: "\f070";
}
-.icon-warning-sign:before {
+.fa-warning:before,
+.fa-exclamation-triangle:before {
content: "\f071";
}
-.icon-plane:before {
+.fa-plane:before {
content: "\f072";
}
-.icon-calendar:before {
+.fa-calendar:before {
content: "\f073";
}
-.icon-random:before {
+.fa-random:before {
content: "\f074";
}
-.icon-comment:before {
+.fa-comment:before {
content: "\f075";
}
-.icon-magnet:before {
+.fa-magnet:before {
content: "\f076";
}
-.icon-chevron-up:before {
+.fa-chevron-up:before {
content: "\f077";
}
-.icon-chevron-down:before {
+.fa-chevron-down:before {
content: "\f078";
}
-.icon-retweet:before {
+.fa-retweet:before {
content: "\f079";
}
-.icon-shopping-cart:before {
+.fa-shopping-cart:before {
content: "\f07a";
}
-.icon-folder-close:before {
+.fa-folder:before {
content: "\f07b";
}
-.icon-folder-open:before {
+.fa-folder-open:before {
content: "\f07c";
}
-.icon-resize-vertical:before {
+.fa-arrows-v:before {
content: "\f07d";
}
-.icon-resize-horizontal:before {
+.fa-arrows-h:before {
content: "\f07e";
}
-.icon-bar-chart:before {
+.fa-bar-chart-o:before,
+.fa-bar-chart:before {
content: "\f080";
}
-.icon-twitter-sign:before {
+.fa-twitter-square:before {
content: "\f081";
}
-.icon-facebook-sign:before {
+.fa-facebook-square:before {
content: "\f082";
}
-.icon-camera-retro:before {
+.fa-camera-retro:before {
content: "\f083";
}
-.icon-key:before {
+.fa-key:before {
content: "\f084";
}
-.icon-gears:before,
-.icon-cogs:before {
+.fa-gears:before,
+.fa-cogs:before {
content: "\f085";
}
-.icon-comments:before {
+.fa-comments:before {
content: "\f086";
}
-.icon-thumbs-up-alt:before {
+.fa-thumbs-o-up:before {
content: "\f087";
}
-.icon-thumbs-down-alt:before {
+.fa-thumbs-o-down:before {
content: "\f088";
}
-.icon-star-half:before {
+.fa-star-half:before {
content: "\f089";
}
-.icon-heart-empty:before {
+.fa-heart-o:before {
content: "\f08a";
}
-.icon-signout:before {
+.fa-sign-out:before {
content: "\f08b";
}
-.icon-linkedin-sign:before {
+.fa-linkedin-square:before {
content: "\f08c";
}
-.icon-pushpin:before {
+.fa-thumb-tack:before {
content: "\f08d";
}
-.icon-external-link:before {
+.fa-external-link:before {
content: "\f08e";
}
-.icon-signin:before {
+.fa-sign-in:before {
content: "\f090";
}
-.icon-trophy:before {
+.fa-trophy:before {
content: "\f091";
}
-.icon-github-sign:before {
+.fa-github-square:before {
content: "\f092";
}
-.icon-upload-alt:before {
+.fa-upload:before {
content: "\f093";
}
-.icon-lemon:before {
+.fa-lemon-o:before {
content: "\f094";
}
-.icon-phone:before {
+.fa-phone:before {
content: "\f095";
}
-.icon-unchecked:before,
-.icon-check-empty:before {
+.fa-square-o:before {
content: "\f096";
}
-.icon-bookmark-empty:before {
+.fa-bookmark-o:before {
content: "\f097";
}
-.icon-phone-sign:before {
+.fa-phone-square:before {
content: "\f098";
}
-.icon-twitter:before {
+.fa-twitter:before {
content: "\f099";
}
-.icon-facebook:before {
+.fa-facebook-f:before,
+.fa-facebook:before {
content: "\f09a";
}
-.icon-github:before {
+.fa-github:before {
content: "\f09b";
}
-.icon-unlock:before {
+.fa-unlock:before {
content: "\f09c";
}
-.icon-credit-card:before {
+.fa-credit-card:before {
content: "\f09d";
}
-.icon-rss:before {
+.fa-feed:before,
+.fa-rss:before {
content: "\f09e";
}
-.icon-hdd:before {
+.fa-hdd-o:before {
content: "\f0a0";
}
-.icon-bullhorn:before {
+.fa-bullhorn:before {
content: "\f0a1";
}
-.icon-bell:before {
- content: "\f0a2";
+.fa-bell:before {
+ content: "\f0f3";
}
-.icon-certificate:before {
+.fa-certificate:before {
content: "\f0a3";
}
-.icon-hand-right:before {
+.fa-hand-o-right:before {
content: "\f0a4";
}
-.icon-hand-left:before {
+.fa-hand-o-left:before {
content: "\f0a5";
}
-.icon-hand-up:before {
+.fa-hand-o-up:before {
content: "\f0a6";
}
-.icon-hand-down:before {
+.fa-hand-o-down:before {
content: "\f0a7";
}
-.icon-circle-arrow-left:before {
+.fa-arrow-circle-left:before {
content: "\f0a8";
}
-.icon-circle-arrow-right:before {
+.fa-arrow-circle-right:before {
content: "\f0a9";
}
-.icon-circle-arrow-up:before {
+.fa-arrow-circle-up:before {
content: "\f0aa";
}
-.icon-circle-arrow-down:before {
+.fa-arrow-circle-down:before {
content: "\f0ab";
}
-.icon-globe:before {
+.fa-globe:before {
content: "\f0ac";
}
-.icon-wrench:before {
+.fa-wrench:before {
content: "\f0ad";
}
-.icon-tasks:before {
+.fa-tasks:before {
content: "\f0ae";
}
-.icon-filter:before {
+.fa-filter:before {
content: "\f0b0";
}
-.icon-briefcase:before {
+.fa-briefcase:before {
content: "\f0b1";
}
-.icon-fullscreen:before {
+.fa-arrows-alt:before {
content: "\f0b2";
}
-.icon-group:before {
+.fa-group:before,
+.fa-users:before {
content: "\f0c0";
}
-.icon-link:before {
+.fa-chain:before,
+.fa-link:before {
content: "\f0c1";
}
-.icon-cloud:before {
+.fa-cloud:before {
content: "\f0c2";
}
-.icon-beaker:before {
+.fa-flask:before {
content: "\f0c3";
}
-.icon-cut:before {
+.fa-cut:before,
+.fa-scissors:before {
content: "\f0c4";
}
-.icon-copy:before {
+.fa-copy:before,
+.fa-files-o:before {
content: "\f0c5";
}
-.icon-paperclip:before,
-.icon-paper-clip:before {
+.fa-paperclip:before {
content: "\f0c6";
}
-.icon-save:before {
+.fa-save:before,
+.fa-floppy-o:before {
content: "\f0c7";
}
-.icon-sign-blank:before {
+.fa-square:before {
content: "\f0c8";
}
-.icon-reorder:before {
+.fa-navicon:before,
+.fa-reorder:before,
+.fa-bars:before {
content: "\f0c9";
}
-.icon-list-ul:before {
+.fa-list-ul:before {
content: "\f0ca";
}
-.icon-list-ol:before {
+.fa-list-ol:before {
content: "\f0cb";
}
-.icon-strikethrough:before {
+.fa-strikethrough:before {
content: "\f0cc";
}
-.icon-underline:before {
+.fa-underline:before {
content: "\f0cd";
}
-.icon-table:before {
+.fa-table:before {
content: "\f0ce";
}
-.icon-magic:before {
+.fa-magic:before {
content: "\f0d0";
}
-.icon-truck:before {
+.fa-truck:before {
content: "\f0d1";
}
-.icon-pinterest:before {
+.fa-pinterest:before {
content: "\f0d2";
}
-.icon-pinterest-sign:before {
+.fa-pinterest-square:before {
content: "\f0d3";
}
-.icon-google-plus-sign:before {
+.fa-google-plus-square:before {
content: "\f0d4";
}
-.icon-google-plus:before {
+.fa-google-plus:before {
content: "\f0d5";
}
-.icon-money:before {
+.fa-money:before {
content: "\f0d6";
}
-.icon-caret-down:before {
+.fa-caret-down:before {
content: "\f0d7";
}
-.icon-caret-up:before {
+.fa-caret-up:before {
content: "\f0d8";
}
-.icon-caret-left:before {
+.fa-caret-left:before {
content: "\f0d9";
}
-.icon-caret-right:before {
+.fa-caret-right:before {
content: "\f0da";
}
-.icon-columns:before {
+.fa-columns:before {
content: "\f0db";
}
-.icon-sort:before {
+.fa-unsorted:before,
+.fa-sort:before {
content: "\f0dc";
}
-.icon-sort-down:before {
+.fa-sort-down:before,
+.fa-sort-desc:before {
content: "\f0dd";
}
-.icon-sort-up:before {
+.fa-sort-up:before,
+.fa-sort-asc:before {
content: "\f0de";
}
-.icon-envelope:before {
+.fa-envelope:before {
content: "\f0e0";
}
-.icon-linkedin:before {
+.fa-linkedin:before {
content: "\f0e1";
}
-.icon-rotate-left:before,
-.icon-undo:before {
+.fa-rotate-left:before,
+.fa-undo:before {
content: "\f0e2";
}
-.icon-legal:before {
+.fa-legal:before,
+.fa-gavel:before {
content: "\f0e3";
}
-.icon-dashboard:before {
+.fa-dashboard:before,
+.fa-tachometer:before {
content: "\f0e4";
}
-.icon-comment-alt:before {
+.fa-comment-o:before {
content: "\f0e5";
}
-.icon-comments-alt:before {
+.fa-comments-o:before {
content: "\f0e6";
}
-.icon-bolt:before {
+.fa-flash:before,
+.fa-bolt:before {
content: "\f0e7";
}
-.icon-sitemap:before {
+.fa-sitemap:before {
content: "\f0e8";
}
-.icon-umbrella:before {
+.fa-umbrella:before {
content: "\f0e9";
}
-.icon-paste:before {
+.fa-paste:before,
+.fa-clipboard:before {
content: "\f0ea";
}
-.icon-lightbulb:before {
+.fa-lightbulb-o:before {
content: "\f0eb";
}
-.icon-exchange:before {
+.fa-exchange:before {
content: "\f0ec";
}
-.icon-cloud-download:before {
+.fa-cloud-download:before {
content: "\f0ed";
}
-.icon-cloud-upload:before {
+.fa-cloud-upload:before {
content: "\f0ee";
}
-.icon-user-md:before {
+.fa-user-md:before {
content: "\f0f0";
}
-.icon-stethoscope:before {
+.fa-stethoscope:before {
content: "\f0f1";
}
-.icon-suitcase:before {
+.fa-suitcase:before {
content: "\f0f2";
}
-.icon-bell-alt:before {
- content: "\f0f3";
+.fa-bell-o:before {
+ content: "\f0a2";
}
-.icon-coffee:before {
+.fa-coffee:before {
content: "\f0f4";
}
-.icon-food:before {
+.fa-cutlery:before {
content: "\f0f5";
}
-.icon-file-text-alt:before {
+.fa-file-text-o:before {
content: "\f0f6";
}
-.icon-building:before {
+.fa-building-o:before {
content: "\f0f7";
}
-.icon-hospital:before {
+.fa-hospital-o:before {
content: "\f0f8";
}
-.icon-ambulance:before {
+.fa-ambulance:before {
content: "\f0f9";
}
-.icon-medkit:before {
+.fa-medkit:before {
content: "\f0fa";
}
-.icon-fighter-jet:before {
+.fa-fighter-jet:before {
content: "\f0fb";
}
-.icon-beer:before {
+.fa-beer:before {
content: "\f0fc";
}
-.icon-h-sign:before {
+.fa-h-square:before {
content: "\f0fd";
}
-.icon-plus-sign-alt:before {
+.fa-plus-square:before {
content: "\f0fe";
}
-.icon-double-angle-left:before {
+.fa-angle-double-left:before {
content: "\f100";
}
-.icon-double-angle-right:before {
+.fa-angle-double-right:before {
content: "\f101";
}
-.icon-double-angle-up:before {
+.fa-angle-double-up:before {
content: "\f102";
}
-.icon-double-angle-down:before {
+.fa-angle-double-down:before {
content: "\f103";
}
-.icon-angle-left:before {
+.fa-angle-left:before {
content: "\f104";
}
-.icon-angle-right:before {
+.fa-angle-right:before {
content: "\f105";
}
-.icon-angle-up:before {
+.fa-angle-up:before {
content: "\f106";
}
-.icon-angle-down:before {
+.fa-angle-down:before {
content: "\f107";
}
-.icon-desktop:before {
+.fa-desktop:before {
content: "\f108";
}
-.icon-laptop:before {
+.fa-laptop:before {
content: "\f109";
}
-.icon-tablet:before {
+.fa-tablet:before {
content: "\f10a";
}
-.icon-mobile-phone:before {
+.fa-mobile-phone:before,
+.fa-mobile:before {
content: "\f10b";
}
-.icon-circle-blank:before {
+.fa-circle-o:before {
content: "\f10c";
}
-.icon-quote-left:before {
+.fa-quote-left:before {
content: "\f10d";
}
-.icon-quote-right:before {
+.fa-quote-right:before {
content: "\f10e";
}
-.icon-spinner:before {
+.fa-spinner:before {
content: "\f110";
}
-.icon-circle:before {
+.fa-circle:before {
content: "\f111";
}
-.icon-mail-reply:before,
-.icon-reply:before {
+.fa-mail-reply:before,
+.fa-reply:before {
content: "\f112";
}
-.icon-github-alt:before {
+.fa-github-alt:before {
content: "\f113";
}
-.icon-folder-close-alt:before {
+.fa-folder-o:before {
content: "\f114";
}
-.icon-folder-open-alt:before {
+.fa-folder-open-o:before {
content: "\f115";
}
-.icon-expand-alt:before {
- content: "\f116";
-}
-.icon-collapse-alt:before {
- content: "\f117";
-}
-.icon-smile:before {
+.fa-smile-o:before {
content: "\f118";
}
-.icon-frown:before {
+.fa-frown-o:before {
content: "\f119";
}
-.icon-meh:before {
+.fa-meh-o:before {
content: "\f11a";
}
-.icon-gamepad:before {
+.fa-gamepad:before {
content: "\f11b";
}
-.icon-keyboard:before {
+.fa-keyboard-o:before {
content: "\f11c";
}
-.icon-flag-alt:before {
+.fa-flag-o:before {
content: "\f11d";
}
-.icon-flag-checkered:before {
+.fa-flag-checkered:before {
content: "\f11e";
}
-.icon-terminal:before {
+.fa-terminal:before {
content: "\f120";
}
-.icon-code:before {
+.fa-code:before {
content: "\f121";
}
-.icon-reply-all:before {
- content: "\f122";
-}
-.icon-mail-reply-all:before {
+.fa-mail-reply-all:before,
+.fa-reply-all:before {
content: "\f122";
}
-.icon-star-half-full:before,
-.icon-star-half-empty:before {
+.fa-star-half-empty:before,
+.fa-star-half-full:before,
+.fa-star-half-o:before {
content: "\f123";
}
-.icon-location-arrow:before {
+.fa-location-arrow:before {
content: "\f124";
}
-.icon-crop:before {
+.fa-crop:before {
content: "\f125";
}
-.icon-code-fork:before {
+.fa-code-fork:before {
content: "\f126";
}
-.icon-unlink:before {
+.fa-unlink:before,
+.fa-chain-broken:before {
content: "\f127";
}
-.icon-question:before {
+.fa-question:before {
content: "\f128";
}
-.icon-info:before {
+.fa-info:before {
content: "\f129";
}
-.icon-exclamation:before {
+.fa-exclamation:before {
content: "\f12a";
}
-.icon-superscript:before {
+.fa-superscript:before {
content: "\f12b";
}
-.icon-subscript:before {
+.fa-subscript:before {
content: "\f12c";
}
-.icon-eraser:before {
+.fa-eraser:before {
content: "\f12d";
}
-.icon-puzzle-piece:before {
+.fa-puzzle-piece:before {
content: "\f12e";
}
-.icon-microphone:before {
+.fa-microphone:before {
content: "\f130";
}
-.icon-microphone-off:before {
+.fa-microphone-slash:before {
content: "\f131";
}
-.icon-shield:before {
+.fa-shield:before {
content: "\f132";
}
-.icon-calendar-empty:before {
+.fa-calendar-o:before {
content: "\f133";
}
-.icon-fire-extinguisher:before {
+.fa-fire-extinguisher:before {
content: "\f134";
}
-.icon-rocket:before {
+.fa-rocket:before {
content: "\f135";
}
-.icon-maxcdn:before {
+.fa-maxcdn:before {
content: "\f136";
}
-.icon-chevron-sign-left:before {
+.fa-chevron-circle-left:before {
content: "\f137";
}
-.icon-chevron-sign-right:before {
+.fa-chevron-circle-right:before {
content: "\f138";
}
-.icon-chevron-sign-up:before {
+.fa-chevron-circle-up:before {
content: "\f139";
}
-.icon-chevron-sign-down:before {
+.fa-chevron-circle-down:before {
content: "\f13a";
}
-.icon-html5:before {
+.fa-html5:before {
content: "\f13b";
}
-.icon-css3:before {
+.fa-css3:before {
content: "\f13c";
}
-.icon-anchor:before {
+.fa-anchor:before {
content: "\f13d";
}
-.icon-unlock-alt:before {
+.fa-unlock-alt:before {
content: "\f13e";
}
-.icon-bullseye:before {
+.fa-bullseye:before {
content: "\f140";
}
-.icon-ellipsis-horizontal:before {
+.fa-ellipsis-h:before {
content: "\f141";
}
-.icon-ellipsis-vertical:before {
+.fa-ellipsis-v:before {
content: "\f142";
}
-.icon-rss-sign:before {
+.fa-rss-square:before {
content: "\f143";
}
-.icon-play-sign:before {
+.fa-play-circle:before {
content: "\f144";
}
-.icon-ticket:before {
+.fa-ticket:before {
content: "\f145";
}
-.icon-minus-sign-alt:before {
+.fa-minus-square:before {
content: "\f146";
}
-.icon-check-minus:before {
+.fa-minus-square-o:before {
content: "\f147";
}
-.icon-level-up:before {
+.fa-level-up:before {
content: "\f148";
}
-.icon-level-down:before {
+.fa-level-down:before {
content: "\f149";
}
-.icon-check-sign:before {
+.fa-check-square:before {
content: "\f14a";
}
-.icon-edit-sign:before {
+.fa-pencil-square:before {
content: "\f14b";
}
-.icon-external-link-sign:before {
+.fa-external-link-square:before {
content: "\f14c";
}
-.icon-share-sign:before {
+.fa-share-square:before {
content: "\f14d";
}
-.icon-compass:before {
+.fa-compass:before {
content: "\f14e";
}
-.icon-collapse:before {
+.fa-toggle-down:before,
+.fa-caret-square-o-down:before {
content: "\f150";
}
-.icon-collapse-top:before {
+.fa-toggle-up:before,
+.fa-caret-square-o-up:before {
content: "\f151";
}
-.icon-expand:before {
+.fa-toggle-right:before,
+.fa-caret-square-o-right:before {
content: "\f152";
}
-.icon-euro:before,
-.icon-eur:before {
+.fa-euro:before,
+.fa-eur:before {
content: "\f153";
}
-.icon-gbp:before {
+.fa-gbp:before {
content: "\f154";
}
-.icon-dollar:before,
-.icon-usd:before {
+.fa-dollar:before,
+.fa-usd:before {
content: "\f155";
}
-.icon-rupee:before,
-.icon-inr:before {
+.fa-rupee:before,
+.fa-inr:before {
content: "\f156";
}
-.icon-yen:before,
-.icon-jpy:before {
+.fa-cny:before,
+.fa-rmb:before,
+.fa-yen:before,
+.fa-jpy:before {
content: "\f157";
}
-.icon-renminbi:before,
-.icon-cny:before {
+.fa-ruble:before,
+.fa-rouble:before,
+.fa-rub:before {
content: "\f158";
}
-.icon-won:before,
-.icon-krw:before {
+.fa-won:before,
+.fa-krw:before {
content: "\f159";
}
-.icon-bitcoin:before,
-.icon-btc:before {
+.fa-bitcoin:before,
+.fa-btc:before {
content: "\f15a";
}
-.icon-file:before {
+.fa-file:before {
content: "\f15b";
}
-.icon-file-text:before {
+.fa-file-text:before {
content: "\f15c";
}
-.icon-sort-by-alphabet:before {
+.fa-sort-alpha-asc:before {
content: "\f15d";
}
-.icon-sort-by-alphabet-alt:before {
+.fa-sort-alpha-desc:before {
content: "\f15e";
}
-.icon-sort-by-attributes:before {
+.fa-sort-amount-asc:before {
content: "\f160";
}
-.icon-sort-by-attributes-alt:before {
+.fa-sort-amount-desc:before {
content: "\f161";
}
-.icon-sort-by-order:before {
+.fa-sort-numeric-asc:before {
content: "\f162";
}
-.icon-sort-by-order-alt:before {
+.fa-sort-numeric-desc:before {
content: "\f163";
}
-.icon-thumbs-up:before {
+.fa-thumbs-up:before {
content: "\f164";
}
-.icon-thumbs-down:before {
+.fa-thumbs-down:before {
content: "\f165";
}
-.icon-youtube-sign:before {
+.fa-youtube-square:before {
content: "\f166";
}
-.icon-youtube:before {
+.fa-youtube:before {
content: "\f167";
}
-.icon-xing:before {
+.fa-xing:before {
content: "\f168";
}
-.icon-xing-sign:before {
+.fa-xing-square:before {
content: "\f169";
}
-.icon-youtube-play:before {
+.fa-youtube-play:before {
content: "\f16a";
}
-.icon-dropbox:before {
+.fa-dropbox:before {
content: "\f16b";
}
-.icon-stackexchange:before {
+.fa-stack-overflow:before {
content: "\f16c";
}
-.icon-instagram:before {
+.fa-instagram:before {
content: "\f16d";
}
-.icon-flickr:before {
+.fa-flickr:before {
content: "\f16e";
}
-.icon-adn:before {
+.fa-adn:before {
content: "\f170";
}
-.icon-bitbucket:before {
+.fa-bitbucket:before {
content: "\f171";
}
-.icon-bitbucket-sign:before {
+.fa-bitbucket-square:before {
content: "\f172";
}
-.icon-tumblr:before {
+.fa-tumblr:before {
content: "\f173";
}
-.icon-tumblr-sign:before {
+.fa-tumblr-square:before {
content: "\f174";
}
-.icon-long-arrow-down:before {
+.fa-long-arrow-down:before {
content: "\f175";
}
-.icon-long-arrow-up:before {
+.fa-long-arrow-up:before {
content: "\f176";
}
-.icon-long-arrow-left:before {
+.fa-long-arrow-left:before {
content: "\f177";
}
-.icon-long-arrow-right:before {
+.fa-long-arrow-right:before {
content: "\f178";
}
-.icon-apple:before {
+.fa-apple:before {
content: "\f179";
}
-.icon-windows:before {
+.fa-windows:before {
content: "\f17a";
}
-.icon-android:before {
+.fa-android:before {
content: "\f17b";
}
-.icon-linux:before {
+.fa-linux:before {
content: "\f17c";
}
-.icon-dribbble:before {
+.fa-dribbble:before {
content: "\f17d";
}
-.icon-skype:before {
+.fa-skype:before {
content: "\f17e";
}
-.icon-foursquare:before {
+.fa-foursquare:before {
content: "\f180";
}
-.icon-trello:before {
+.fa-trello:before {
content: "\f181";
}
-.icon-female:before {
+.fa-female:before {
content: "\f182";
}
-.icon-male:before {
+.fa-male:before {
content: "\f183";
}
-.icon-gittip:before {
+.fa-gittip:before,
+.fa-gratipay:before {
content: "\f184";
}
-.icon-sun:before {
+.fa-sun-o:before {
content: "\f185";
}
-.icon-moon:before {
+.fa-moon-o:before {
content: "\f186";
}
-.icon-archive:before {
+.fa-archive:before {
content: "\f187";
}
-.icon-bug:before {
+.fa-bug:before {
content: "\f188";
}
-.icon-vk:before {
+.fa-vk:before {
content: "\f189";
}
-.icon-weibo:before {
+.fa-weibo:before {
content: "\f18a";
}
-.icon-renren:before {
+.fa-renren:before {
content: "\f18b";
}
+.fa-pagelines:before {
+ content: "\f18c";
+}
+.fa-stack-exchange:before {
+ content: "\f18d";
+}
+.fa-arrow-circle-o-right:before {
+ content: "\f18e";
+}
+.fa-arrow-circle-o-left:before {
+ content: "\f190";
+}
+.fa-toggle-left:before,
+.fa-caret-square-o-left:before {
+ content: "\f191";
+}
+.fa-dot-circle-o:before {
+ content: "\f192";
+}
+.fa-wheelchair:before {
+ content: "\f193";
+}
+.fa-vimeo-square:before {
+ content: "\f194";
+}
+.fa-turkish-lira:before,
+.fa-try:before {
+ content: "\f195";
+}
+.fa-plus-square-o:before {
+ content: "\f196";
+}
+.fa-space-shuttle:before {
+ content: "\f197";
+}
+.fa-slack:before {
+ content: "\f198";
+}
+.fa-envelope-square:before {
+ content: "\f199";
+}
+.fa-wordpress:before {
+ content: "\f19a";
+}
+.fa-openid:before {
+ content: "\f19b";
+}
+.fa-institution:before,
+.fa-bank:before,
+.fa-university:before {
+ content: "\f19c";
+}
+.fa-mortar-board:before,
+.fa-graduation-cap:before {
+ content: "\f19d";
+}
+.fa-yahoo:before {
+ content: "\f19e";
+}
+.fa-google:before {
+ content: "\f1a0";
+}
+.fa-reddit:before {
+ content: "\f1a1";
+}
+.fa-reddit-square:before {
+ content: "\f1a2";
+}
+.fa-stumbleupon-circle:before {
+ content: "\f1a3";
+}
+.fa-stumbleupon:before {
+ content: "\f1a4";
+}
+.fa-delicious:before {
+ content: "\f1a5";
+}
+.fa-digg:before {
+ content: "\f1a6";
+}
+.fa-pied-piper:before {
+ content: "\f1a7";
+}
+.fa-pied-piper-alt:before {
+ content: "\f1a8";
+}
+.fa-drupal:before {
+ content: "\f1a9";
+}
+.fa-joomla:before {
+ content: "\f1aa";
+}
+.fa-language:before {
+ content: "\f1ab";
+}
+.fa-fax:before {
+ content: "\f1ac";
+}
+.fa-building:before {
+ content: "\f1ad";
+}
+.fa-child:before {
+ content: "\f1ae";
+}
+.fa-paw:before {
+ content: "\f1b0";
+}
+.fa-spoon:before {
+ content: "\f1b1";
+}
+.fa-cube:before {
+ content: "\f1b2";
+}
+.fa-cubes:before {
+ content: "\f1b3";
+}
+.fa-behance:before {
+ content: "\f1b4";
+}
+.fa-behance-square:before {
+ content: "\f1b5";
+}
+.fa-steam:before {
+ content: "\f1b6";
+}
+.fa-steam-square:before {
+ content: "\f1b7";
+}
+.fa-recycle:before {
+ content: "\f1b8";
+}
+.fa-automobile:before,
+.fa-car:before {
+ content: "\f1b9";
+}
+.fa-cab:before,
+.fa-taxi:before {
+ content: "\f1ba";
+}
+.fa-tree:before {
+ content: "\f1bb";
+}
+.fa-spotify:before {
+ content: "\f1bc";
+}
+.fa-deviantart:before {
+ content: "\f1bd";
+}
+.fa-soundcloud:before {
+ content: "\f1be";
+}
+.fa-database:before {
+ content: "\f1c0";
+}
+.fa-file-pdf-o:before {
+ content: "\f1c1";
+}
+.fa-file-word-o:before {
+ content: "\f1c2";
+}
+.fa-file-excel-o:before {
+ content: "\f1c3";
+}
+.fa-file-powerpoint-o:before {
+ content: "\f1c4";
+}
+.fa-file-photo-o:before,
+.fa-file-picture-o:before,
+.fa-file-image-o:before {
+ content: "\f1c5";
+}
+.fa-file-zip-o:before,
+.fa-file-archive-o:before {
+ content: "\f1c6";
+}
+.fa-file-sound-o:before,
+.fa-file-audio-o:before {
+ content: "\f1c7";
+}
+.fa-file-movie-o:before,
+.fa-file-video-o:before {
+ content: "\f1c8";
+}
+.fa-file-code-o:before {
+ content: "\f1c9";
+}
+.fa-vine:before {
+ content: "\f1ca";
+}
+.fa-codepen:before {
+ content: "\f1cb";
+}
+.fa-jsfiddle:before {
+ content: "\f1cc";
+}
+.fa-life-bouy:before,
+.fa-life-buoy:before,
+.fa-life-saver:before,
+.fa-support:before,
+.fa-life-ring:before {
+ content: "\f1cd";
+}
+.fa-circle-o-notch:before {
+ content: "\f1ce";
+}
+.fa-ra:before,
+.fa-rebel:before {
+ content: "\f1d0";
+}
+.fa-ge:before,
+.fa-empire:before {
+ content: "\f1d1";
+}
+.fa-git-square:before {
+ content: "\f1d2";
+}
+.fa-git:before {
+ content: "\f1d3";
+}
+.fa-y-combinator-square:before,
+.fa-yc-square:before,
+.fa-hacker-news:before {
+ content: "\f1d4";
+}
+.fa-tencent-weibo:before {
+ content: "\f1d5";
+}
+.fa-qq:before {
+ content: "\f1d6";
+}
+.fa-wechat:before,
+.fa-weixin:before {
+ content: "\f1d7";
+}
+.fa-send:before,
+.fa-paper-plane:before {
+ content: "\f1d8";
+}
+.fa-send-o:before,
+.fa-paper-plane-o:before {
+ content: "\f1d9";
+}
+.fa-history:before {
+ content: "\f1da";
+}
+.fa-circle-thin:before {
+ content: "\f1db";
+}
+.fa-header:before {
+ content: "\f1dc";
+}
+.fa-paragraph:before {
+ content: "\f1dd";
+}
+.fa-sliders:before {
+ content: "\f1de";
+}
+.fa-share-alt:before {
+ content: "\f1e0";
+}
+.fa-share-alt-square:before {
+ content: "\f1e1";
+}
+.fa-bomb:before {
+ content: "\f1e2";
+}
+.fa-soccer-ball-o:before,
+.fa-futbol-o:before {
+ content: "\f1e3";
+}
+.fa-tty:before {
+ content: "\f1e4";
+}
+.fa-binoculars:before {
+ content: "\f1e5";
+}
+.fa-plug:before {
+ content: "\f1e6";
+}
+.fa-slideshare:before {
+ content: "\f1e7";
+}
+.fa-twitch:before {
+ content: "\f1e8";
+}
+.fa-yelp:before {
+ content: "\f1e9";
+}
+.fa-newspaper-o:before {
+ content: "\f1ea";
+}
+.fa-wifi:before {
+ content: "\f1eb";
+}
+.fa-calculator:before {
+ content: "\f1ec";
+}
+.fa-paypal:before {
+ content: "\f1ed";
+}
+.fa-google-wallet:before {
+ content: "\f1ee";
+}
+.fa-cc-visa:before {
+ content: "\f1f0";
+}
+.fa-cc-mastercard:before {
+ content: "\f1f1";
+}
+.fa-cc-discover:before {
+ content: "\f1f2";
+}
+.fa-cc-amex:before {
+ content: "\f1f3";
+}
+.fa-cc-paypal:before {
+ content: "\f1f4";
+}
+.fa-cc-stripe:before {
+ content: "\f1f5";
+}
+.fa-bell-slash:before {
+ content: "\f1f6";
+}
+.fa-bell-slash-o:before {
+ content: "\f1f7";
+}
+.fa-trash:before {
+ content: "\f1f8";
+}
+.fa-copyright:before {
+ content: "\f1f9";
+}
+.fa-at:before {
+ content: "\f1fa";
+}
+.fa-eyedropper:before {
+ content: "\f1fb";
+}
+.fa-paint-brush:before {
+ content: "\f1fc";
+}
+.fa-birthday-cake:before {
+ content: "\f1fd";
+}
+.fa-area-chart:before {
+ content: "\f1fe";
+}
+.fa-pie-chart:before {
+ content: "\f200";
+}
+.fa-line-chart:before {
+ content: "\f201";
+}
+.fa-lastfm:before {
+ content: "\f202";
+}
+.fa-lastfm-square:before {
+ content: "\f203";
+}
+.fa-toggle-off:before {
+ content: "\f204";
+}
+.fa-toggle-on:before {
+ content: "\f205";
+}
+.fa-bicycle:before {
+ content: "\f206";
+}
+.fa-bus:before {
+ content: "\f207";
+}
+.fa-ioxhost:before {
+ content: "\f208";
+}
+.fa-angellist:before {
+ content: "\f209";
+}
+.fa-cc:before {
+ content: "\f20a";
+}
+.fa-shekel:before,
+.fa-sheqel:before,
+.fa-ils:before {
+ content: "\f20b";
+}
+.fa-meanpath:before {
+ content: "\f20c";
+}
+.fa-buysellads:before {
+ content: "\f20d";
+}
+.fa-connectdevelop:before {
+ content: "\f20e";
+}
+.fa-dashcube:before {
+ content: "\f210";
+}
+.fa-forumbee:before {
+ content: "\f211";
+}
+.fa-leanpub:before {
+ content: "\f212";
+}
+.fa-sellsy:before {
+ content: "\f213";
+}
+.fa-shirtsinbulk:before {
+ content: "\f214";
+}
+.fa-simplybuilt:before {
+ content: "\f215";
+}
+.fa-skyatlas:before {
+ content: "\f216";
+}
+.fa-cart-plus:before {
+ content: "\f217";
+}
+.fa-cart-arrow-down:before {
+ content: "\f218";
+}
+.fa-diamond:before {
+ content: "\f219";
+}
+.fa-ship:before {
+ content: "\f21a";
+}
+.fa-user-secret:before {
+ content: "\f21b";
+}
+.fa-motorcycle:before {
+ content: "\f21c";
+}
+.fa-street-view:before {
+ content: "\f21d";
+}
+.fa-heartbeat:before {
+ content: "\f21e";
+}
+.fa-venus:before {
+ content: "\f221";
+}
+.fa-mars:before {
+ content: "\f222";
+}
+.fa-mercury:before {
+ content: "\f223";
+}
+.fa-intersex:before,
+.fa-transgender:before {
+ content: "\f224";
+}
+.fa-transgender-alt:before {
+ content: "\f225";
+}
+.fa-venus-double:before {
+ content: "\f226";
+}
+.fa-mars-double:before {
+ content: "\f227";
+}
+.fa-venus-mars:before {
+ content: "\f228";
+}
+.fa-mars-stroke:before {
+ content: "\f229";
+}
+.fa-mars-stroke-v:before {
+ content: "\f22a";
+}
+.fa-mars-stroke-h:before {
+ content: "\f22b";
+}
+.fa-neuter:before {
+ content: "\f22c";
+}
+.fa-genderless:before {
+ content: "\f22d";
+}
+.fa-facebook-official:before {
+ content: "\f230";
+}
+.fa-pinterest-p:before {
+ content: "\f231";
+}
+.fa-whatsapp:before {
+ content: "\f232";
+}
+.fa-server:before {
+ content: "\f233";
+}
+.fa-user-plus:before {
+ content: "\f234";
+}
+.fa-user-times:before {
+ content: "\f235";
+}
+.fa-hotel:before,
+.fa-bed:before {
+ content: "\f236";
+}
+.fa-viacoin:before {
+ content: "\f237";
+}
+.fa-train:before {
+ content: "\f238";
+}
+.fa-subway:before {
+ content: "\f239";
+}
+.fa-medium:before {
+ content: "\f23a";
+}
+.fa-yc:before,
+.fa-y-combinator:before {
+ content: "\f23b";
+}
+.fa-optin-monster:before {
+ content: "\f23c";
+}
+.fa-opencart:before {
+ content: "\f23d";
+}
+.fa-expeditedssl:before {
+ content: "\f23e";
+}
+.fa-battery-4:before,
+.fa-battery-full:before {
+ content: "\f240";
+}
+.fa-battery-3:before,
+.fa-battery-three-quarters:before {
+ content: "\f241";
+}
+.fa-battery-2:before,
+.fa-battery-half:before {
+ content: "\f242";
+}
+.fa-battery-1:before,
+.fa-battery-quarter:before {
+ content: "\f243";
+}
+.fa-battery-0:before,
+.fa-battery-empty:before {
+ content: "\f244";
+}
+.fa-mouse-pointer:before {
+ content: "\f245";
+}
+.fa-i-cursor:before {
+ content: "\f246";
+}
+.fa-object-group:before {
+ content: "\f247";
+}
+.fa-object-ungroup:before {
+ content: "\f248";
+}
+.fa-sticky-note:before {
+ content: "\f249";
+}
+.fa-sticky-note-o:before {
+ content: "\f24a";
+}
+.fa-cc-jcb:before {
+ content: "\f24b";
+}
+.fa-cc-diners-club:before {
+ content: "\f24c";
+}
+.fa-clone:before {
+ content: "\f24d";
+}
+.fa-balance-scale:before {
+ content: "\f24e";
+}
+.fa-hourglass-o:before {
+ content: "\f250";
+}
+.fa-hourglass-1:before,
+.fa-hourglass-start:before {
+ content: "\f251";
+}
+.fa-hourglass-2:before,
+.fa-hourglass-half:before {
+ content: "\f252";
+}
+.fa-hourglass-3:before,
+.fa-hourglass-end:before {
+ content: "\f253";
+}
+.fa-hourglass:before {
+ content: "\f254";
+}
+.fa-hand-grab-o:before,
+.fa-hand-rock-o:before {
+ content: "\f255";
+}
+.fa-hand-stop-o:before,
+.fa-hand-paper-o:before {
+ content: "\f256";
+}
+.fa-hand-scissors-o:before {
+ content: "\f257";
+}
+.fa-hand-lizard-o:before {
+ content: "\f258";
+}
+.fa-hand-spock-o:before {
+ content: "\f259";
+}
+.fa-hand-pointer-o:before {
+ content: "\f25a";
+}
+.fa-hand-peace-o:before {
+ content: "\f25b";
+}
+.fa-trademark:before {
+ content: "\f25c";
+}
+.fa-registered:before {
+ content: "\f25d";
+}
+.fa-creative-commons:before {
+ content: "\f25e";
+}
+.fa-gg:before {
+ content: "\f260";
+}
+.fa-gg-circle:before {
+ content: "\f261";
+}
+.fa-tripadvisor:before {
+ content: "\f262";
+}
+.fa-odnoklassniki:before {
+ content: "\f263";
+}
+.fa-odnoklassniki-square:before {
+ content: "\f264";
+}
+.fa-get-pocket:before {
+ content: "\f265";
+}
+.fa-wikipedia-w:before {
+ content: "\f266";
+}
+.fa-safari:before {
+ content: "\f267";
+}
+.fa-chrome:before {
+ content: "\f268";
+}
+.fa-firefox:before {
+ content: "\f269";
+}
+.fa-opera:before {
+ content: "\f26a";
+}
+.fa-internet-explorer:before {
+ content: "\f26b";
+}
+.fa-tv:before,
+.fa-television:before {
+ content: "\f26c";
+}
+.fa-contao:before {
+ content: "\f26d";
+}
+.fa-500px:before {
+ content: "\f26e";
+}
+.fa-amazon:before {
+ content: "\f270";
+}
+.fa-calendar-plus-o:before {
+ content: "\f271";
+}
+.fa-calendar-minus-o:before {
+ content: "\f272";
+}
+.fa-calendar-times-o:before {
+ content: "\f273";
+}
+.fa-calendar-check-o:before {
+ content: "\f274";
+}
+.fa-industry:before {
+ content: "\f275";
+}
+.fa-map-pin:before {
+ content: "\f276";
+}
+.fa-map-signs:before {
+ content: "\f277";
+}
+.fa-map-o:before {
+ content: "\f278";
+}
+.fa-map:before {
+ content: "\f279";
+}
+.fa-commenting:before {
+ content: "\f27a";
+}
+.fa-commenting-o:before {
+ content: "\f27b";
+}
+.fa-houzz:before {
+ content: "\f27c";
+}
+.fa-vimeo:before {
+ content: "\f27d";
+}
+.fa-black-tie:before {
+ content: "\f27e";
+}
+.fa-fonticons:before {
+ content: "\f280";
+}
+.fa-reddit-alien:before {
+ content: "\f281";
+}
+.fa-edge:before {
+ content: "\f282";
+}
+.fa-credit-card-alt:before {
+ content: "\f283";
+}
+.fa-codiepie:before {
+ content: "\f284";
+}
+.fa-modx:before {
+ content: "\f285";
+}
+.fa-fort-awesome:before {
+ content: "\f286";
+}
+.fa-usb:before {
+ content: "\f287";
+}
+.fa-product-hunt:before {
+ content: "\f288";
+}
+.fa-mixcloud:before {
+ content: "\f289";
+}
+.fa-scribd:before {
+ content: "\f28a";
+}
+.fa-pause-circle:before {
+ content: "\f28b";
+}
+.fa-pause-circle-o:before {
+ content: "\f28c";
+}
+.fa-stop-circle:before {
+ content: "\f28d";
+}
+.fa-stop-circle-o:before {
+ content: "\f28e";
+}
+.fa-shopping-bag:before {
+ content: "\f290";
+}
+.fa-shopping-basket:before {
+ content: "\f291";
+}
+.fa-hashtag:before {
+ content: "\f292";
+}
+.fa-bluetooth:before {
+ content: "\f293";
+}
+.fa-bluetooth-b:before {
+ content: "\f294";
+}
+.fa-percent:before {
+ content: "\f295";
+}
+.fa-gitlab:before {
+ content: "\f296";
+}
+.fa-wpbeginner:before {
+ content: "\f297";
+}
+.fa-wpforms:before {
+ content: "\f298";
+}
+.fa-envira:before {
+ content: "\f299";
+}
+.fa-universal-access:before {
+ content: "\f29a";
+}
+.fa-wheelchair-alt:before {
+ content: "\f29b";
+}
+.fa-question-circle-o:before {
+ content: "\f29c";
+}
+.fa-blind:before {
+ content: "\f29d";
+}
+.fa-audio-description:before {
+ content: "\f29e";
+}
+.fa-volume-control-phone:before {
+ content: "\f2a0";
+}
+.fa-braille:before {
+ content: "\f2a1";
+}
+.fa-assistive-listening-systems:before {
+ content: "\f2a2";
+}
+.fa-asl-interpreting:before,
+.fa-american-sign-language-interpreting:before {
+ content: "\f2a3";
+}
+.fa-deafness:before,
+.fa-hard-of-hearing:before,
+.fa-deaf:before {
+ content: "\f2a4";
+}
+.fa-glide:before {
+ content: "\f2a5";
+}
+.fa-glide-g:before {
+ content: "\f2a6";
+}
+.fa-signing:before,
+.fa-sign-language:before {
+ content: "\f2a7";
+}
+.fa-low-vision:before {
+ content: "\f2a8";
+}
+.fa-viadeo:before {
+ content: "\f2a9";
+}
+.fa-viadeo-square:before {
+ content: "\f2aa";
+}
+.fa-snapchat:before {
+ content: "\f2ab";
+}
+.fa-snapchat-ghost:before {
+ content: "\f2ac";
+}
+.fa-snapchat-square:before {
+ content: "\f2ad";
+}
+.sr-only {
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ padding: 0;
+ margin: -1px;
+ overflow: hidden;
+ clip: rect(0, 0, 0, 0);
+ border: 0;
+}
+.sr-only-focusable:active,
+.sr-only-focusable:focus {
+ position: static;
+ width: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ clip: auto;
+}
diff --git a/library/font_awesome/css/font-awesome.css.map b/library/font_awesome/css/font-awesome.css.map
new file mode 100644
index 000000000..60763a864
--- /dev/null
+++ b/library/font_awesome/css/font-awesome.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": ";;;;;;;AAGA,UAUC;EATC,WAAW,EAAE,aAAa;EAC1B,GAAG,EAAE,+CAAgE;EACrE,GAAG,EAAE,ySAAmG;EAKxG,WAAW,EAAE,MAAM;EACnB,UAAU,EAAE,MAAM;ACTpB,GAAmB;EACjB,OAAO,EAAE,YAAY;EACrB,IAAI,EAAE,uCAAwD;EAC9D,SAAS,EAAE,OAAO;EAClB,cAAc,EAAE,IAAI;EACpB,sBAAsB,EAAE,WAAW;EACnC,uBAAuB,EAAE,SAAS;EAClC,SAAS,EAAE,eAAe;;;ACN5B,MAAsB;EACpB,SAAS,EAAE,SAAS;EACpB,WAAW,EAAE,MAAS;EACtB,cAAc,EAAE,IAAI;;AAEtB,MAAsB;EAAE,SAAS,EAAE,GAAG;;AACtC,MAAsB;EAAE,SAAS,EAAE,GAAG;;AACtC,MAAsB;EAAE,SAAS,EAAE,GAAG;;AACtC,MAAsB;EAAE,SAAS,EAAE,GAAG;;ACVtC,MAAsB;EACpB,KAAK,EAAE,SAAW;EAClB,UAAU,EAAE,MAAM;;ACDpB,MAAsB;EACpB,YAAY,EAAE,CAAC;EACf,WAAW,ECKU,SAAS;EDJ9B,eAAe,EAAE,IAAI;EACrB,WAAK;IAAE,QAAQ,EAAE,QAAQ;;AAE3B,MAAsB;EACpB,QAAQ,EAAE,QAAQ;EAClB,IAAI,EAAE,UAAa;EACnB,KAAK,ECFgB,SAAS;EDG9B,GAAG,EAAE,SAAU;EACf,UAAU,EAAE,MAAM;EAClB,YAAuB;IACrB,IAAI,EAAE,UAA0B;;AEbpC,UAA0B;EACxB,OAAO,EAAE,gBAAgB;EACzB,MAAM,EAAE,iBAA4B;EACpC,aAAa,EAAE,IAAI;;AAGrB,WAAY;EAAE,KAAK,EAAE,KAAK;;AAC1B,UAAW;EAAE,KAAK,EAAE,IAAI;;AAGtB,aAAY;EAAE,YAAY,EAAE,IAAI;AAChC,cAAa;EAAE,WAAW,EAAE,IAAI;;ACXlC,QAAwB;EACtB,iBAAiB,EAAE,0BAA0B;EACrC,SAAS,EAAE,0BAA0B;;AAG/C,SAAyB;EACvB,iBAAiB,EAAE,4BAA4B;EACvC,SAAS,EAAE,4BAA4B;;AAGjD,0BASC;EARC,EAAG;IACD,iBAAiB,EAAE,YAAY;IACvB,SAAS,EAAE,YAAY;EAEjC,IAAK;IACH,iBAAiB,EAAE,cAAc;IACzB,SAAS,EAAE,cAAc;AAIrC,kBASC;EARC,EAAG;IACD,iBAAiB,EAAE,YAAY;IACvB,SAAS,EAAE,YAAY;EAEjC,IAAK;IACH,iBAAiB,EAAE,cAAc;IACzB,SAAS,EAAE,cAAc;AC5BrC,aAA8B;ECY5B,MAAM,EAAE,wDAAmE;EAC3E,iBAAiB,EAAE,aAAgB;EAC/B,aAAa,EAAE,aAAgB;EAC3B,SAAS,EAAE,aAAgB;;ADdrC,cAA8B;ECW5B,MAAM,EAAE,wDAAmE;EAC3E,iBAAiB,EAAE,cAAgB;EAC/B,aAAa,EAAE,cAAgB;EAC3B,SAAS,EAAE,cAAgB;;ADbrC,cAA8B;ECU5B,MAAM,EAAE,wDAAmE;EAC3E,iBAAiB,EAAE,cAAgB;EAC/B,aAAa,EAAE,cAAgB;EAC3B,SAAS,EAAE,cAAgB;;ADXrC,mBAAmC;ECejC,MAAM,EAAE,wDAAmE;EAC3E,iBAAiB,EAAE,YAAoB;EACnC,aAAa,EAAE,YAAoB;EAC/B,SAAS,EAAE,YAAoB;;ADjBzC,iBAAmC;ECcjC,MAAM,EAAE,wDAAmE;EAC3E,iBAAiB,EAAE,YAAoB;EACnC,aAAa,EAAE,YAAoB;EAC/B,SAAS,EAAE,YAAoB;;ADZzC;;;;uBAIuC;EACrC,MAAM,EAAE,IAAI;;AEfd,SAAyB;EACvB,QAAQ,EAAE,QAAQ;EAClB,OAAO,EAAE,YAAY;EACrB,KAAK,EAAE,GAAG;EACV,MAAM,EAAE,GAAG;EACX,WAAW,EAAE,GAAG;EAChB,cAAc,EAAE,MAAM;;AAExB,0BAAyD;EACvD,QAAQ,EAAE,QAAQ;EAClB,IAAI,EAAE,CAAC;EACP,KAAK,EAAE,IAAI;EACX,UAAU,EAAE,MAAM;;AAEpB,YAA4B;EAAE,WAAW,EAAE,OAAO;;AAClD,YAA4B;EAAE,SAAS,EAAE,GAAG;;AAC5C,WAA2B;EAAE,KAAK,ELVZ,IAAI;;;;AMN1B,gBAAgC;EAAE,OAAO,ENoQ1B,GAAO;;AMnQtB,gBAAgC;EAAE,OAAO,EN0W1B,GAAO;;AMzWtB,iBAAiC;EAAE,OAAO,ENmb1B,GAAO;;AMlbvB,qBAAqC;EAAE,OAAO,ENmL1B,GAAO;;AMlL3B,gBAAgC;EAAE,OAAO,ENkR1B,GAAO;;AMjRtB,eAA+B;EAAE,OAAO,ENke1B,GAAO;;AMjerB,iBAAiC;EAAE,OAAO,ENse1B,GAAO;;AMrevB,eAA+B;EAAE,OAAO,EN+iB1B,GAAO;;AM9iBrB,eAA+B;EAAE,OAAO,ENyN1B,GAAO;;AMxNrB,mBAAmC;EAAE,OAAO,ENggB1B,GAAO;;AM/fzB,aAA6B;EAAE,OAAO,EN8f1B,GAAO;;AM7fnB,kBAAkC;EAAE,OAAO,EN+f1B,GAAO;;AM9fxB,gBAAgC;EAAE,OAAO,ENoG1B,GAAO;;AMnGtB;;gBAEgC;EAAE,OAAO,ENkgB1B,GAAO;;AMjgBtB,sBAAsC;EAAE,OAAO,ENua1B,GAAO;;AMta5B,uBAAuC;EAAE,OAAO,ENqa1B,GAAO;;AMpa7B,oBAAoC;EAAE,OAAO,EN+X1B,GAAO;;AM9X1B,iBAAiC;EAAE,OAAO,ENsb1B,GAAO;;AMrbvB;cAC8B;EAAE,OAAO,ENwH1B,GAAO;;AMvHpB,kBAAkC;EAAE,OAAO,ENygB1B,GAAO;;AMxgBxB,eAA+B;EAAE,OAAO,ENmQ1B,GAAO;;AMlQrB,iBAAiC;EAAE,OAAO,EN6L1B,GAAO;;AM5LvB,kBAAkC;EAAE,OAAO,EN0G1B,GAAO;;AMzGxB,eAA+B;EAAE,OAAO,EN+Y1B,GAAO;;AM9YrB,mBAAmC;EAAE,OAAO,ENiJ1B,GAAO;;AMhJzB,8BAA8C;EAAE,OAAO,ENI1B,GAAO;;AMHpC,4BAA4C;EAAE,OAAO,ENM1B,GAAO;;AMLlC,gBAAgC;EAAE,OAAO,ENkQ1B,GAAO;;AMjQtB,wBAAwC;EAAE,OAAO,EN4W1B,GAAO;;AM3W9B;iBACiC;EAAE,OAAO,ENmY1B,GAAO;;AMlYvB,kBAAkC;EAAE,OAAO,EN8X1B,GAAO;;AM7XxB,mBAAmC;EAAE,OAAO,ENiS1B,GAAO;;AMhSzB,eAA+B;EAAE,OAAO,ENoS1B,GAAO;;AMnSrB,eAA+B;EAAE,OAAO,ENgM1B,GAAO;;AM/LrB,qBAAqC;EAAE,OAAO,EN+O1B,GAAO;;AM9O3B,qBAAqC;EAAE,OAAO,EN8hB1B,GAAO;;AM7hB3B,sBAAsC;EAAE,OAAO,EN4hB1B,GAAO;;AM3hB5B,oBAAoC;EAAE,OAAO,EN6hB1B,GAAO;;AM5hB1B,iBAAiC;EAAE,OAAO,EN2W1B,GAAO;;AM1WvB,kBAAkC;EAAE,OAAO,ENW1B,GAAO;;AMVxB,cAA8B;EAAE,OAAO,ENod1B,GAAO;;AMndpB,eAA+B;EAAE,OAAO,ENod1B,GAAO;;AMndrB,eAA+B;EAAE,OAAO,EN2B1B,GAAO;;AM1BrB,mBAAmC;EAAE,OAAO,EN2B1B,GAAO;;AM1BzB,gBAAgC;EAAE,OAAO,ENkW1B,GAAO;;AMjWtB,iBAAiC;EAAE,OAAO,ENwC1B,GAAO;;AMvCvB,eAA+B;EAAE,OAAO,EN8L1B,GAAO;;AM7LrB,eAA+B;EAAE,OAAO,ENmB1B,GAAO;;AMlBrB,iBAAiC;EAAE,OAAO,ENoP1B,GAAO;;AMnPvB,sBAAsC;EAAE,OAAO,ENid1B,GAAO;;AMhd5B,qBAAqC;EAAE,OAAO,ENid1B,GAAO;;AMhd3B,qBAAqC;EAAE,OAAO,EN1C1B,GAAO;;AM2C3B,uBAAuC;EAAE,OAAO,EN7C1B,GAAO;;AM8C7B,sBAAsC;EAAE,OAAO,EN3C1B,GAAO;;AM4C5B,wBAAwC;EAAE,OAAO,EN9C1B,GAAO;;AM+C9B,eAA+B;EAAE,OAAO,ENwQ1B,GAAO;;AMvQrB;kBACkC;EAAE,OAAO,ENmT1B,GAAO;;AMlTxB,iBAAiC;EAAE,OAAO,ENmO1B,GAAO;;AMlOvB,uBAAuC;EAAE,OAAO,ENigB1B,GAAO;;AMhgB7B;;oBAEoC;EAAE,OAAO,EN+T1B,GAAO;;AM9T1B,iBAAiC;EAAE,OAAO,ENwT1B,GAAO;;AMvTvB,qBAAqC;EAAE,OAAO,EN+Q1B,GAAO;;AM9Q3B,iBAAiC;EAAE,OAAO,EN5D1B,GAAO;;AM6DvB,eAA+B;EAAE,OAAO,EN8c1B,GAAO;;AM7crB;0BAC0C;EAAE,OAAO,ENqT1B,GAAO;;AMpThC,yBAAyC;EAAE,OAAO,ENuX1B,GAAO;;AMtX/B,yBAAyC;EAAE,OAAO,EN0C1B,GAAO;;AMzC/B,iBAAiC;EAAE,OAAO,ENjC1B,GAAO;;AMkCvB,wBAAwC;EAAE,OAAO,ENma1B,GAAO;;AMla9B,wBAAwC;EAAE,OAAO,EN4H1B,GAAO;;AM3H9B,mBAAmC;EAAE,OAAO,EN7B1B,GAAO;;AM8BzB,eAA+B;EAAE,OAAO,EN0T1B,GAAO;;AMzTrB,gBAAgC;EAAE,OAAO,ENwS1B,GAAO;;AMvStB,eAA+B;EAAE,OAAO,ENia1B,GAAO;;AMharB,kBAAkC;EAAE,OAAO,ENgK1B,GAAO;;AM/JxB,uBAAuC;EAAE,OAAO,ENuH1B,GAAO;;AMtH7B,uBAAuC;EAAE,OAAO,EN4Z1B,GAAO;;AM3Z7B,gBAAgC;EAAE,OAAO,EN4F1B,GAAO;;AM3FtB,uBAAuC;EAAE,OAAO,ENoC1B,GAAO;;AMnC7B,wBAAwC;EAAE,OAAO,ENoC1B,GAAO;;AMnC9B,sBAAsC;EAAE,OAAO,ENsT1B,GAAO;;AMrT5B,uBAAuC;EAAE,OAAO,ENyQ1B,GAAO;;AMxQ7B,uBAAuC;EAAE,OAAO,ENwb1B,GAAO;;AMvb7B,uBAAuC;EAAE,OAAO,ENsB1B,GAAO;;AMrB7B,0BAA0C;EAAE,OAAO,EN2T1B,GAAO;;AM1ThC,sBAAsC;EAAE,OAAO,ENsM1B,GAAO;;AMrM5B,qBAAqC;EAAE,OAAO,EN6D1B,GAAO;;AM5D3B,yBAAyC;EAAE,OAAO,ENob1B,GAAO;;AMnb/B,yBAAyC;EAAE,OAAO,ENkB1B,GAAO;;AMjB/B,cAA8B;EAAE,OAAO,EN/C1B,GAAO;;AMgDpB,qBAAqC;EAAE,OAAO,EN3D1B,GAAO;;AM4D3B,sBAAsC;EAAE,OAAO,EN3D1B,GAAO;;AM4D5B,mBAAmC;EAAE,OAAO,EN3D1B,GAAO;;AM4DzB,qBAAqC;EAAE,OAAO,EN/D1B,GAAO;;AMgE3B;gBACgC;EAAE,OAAO,ENqV1B,GAAO;;AMpVtB,iBAAiC;EAAE,OAAO,ENuF1B,GAAO;;AMtFvB,mBAAmC;EAAE,OAAO,EN4C1B,GAAO;;AM3CzB,eAA+B;EAAE,OAAO,ENmS1B,GAAO;;AMlSrB,gBAAgC;EAAE,OAAO,ENsP1B,GAAO;;AMrPtB,mBAAmC;EAAE,OAAO,EN9D1B,GAAO;;AM+DzB,6BAA6C;EAAE,OAAO,ENgF1B,GAAO;;AM/EnC,eAA+B;EAAE,OAAO,EN+I1B,GAAO;;AM9IrB,eAA+B;EAAE,OAAO,ENoM1B,GAAO;;AMnMrB,eAA+B;EAAE,OAAO,ENmH1B,GAAO;;AMlHrB,cAA8B;EAAE,OAAO,ENiF1B,GAAO;;AMhFpB,oBAAoC;EAAE,OAAO,ENiF1B,GAAO;;AMhF1B;+BAC+C;EAAE,OAAO,EN0E1B,GAAO;;AMzErC,gBAAgC;EAAE,OAAO,ENmR1B,GAAO;;AMlRtB,mBAAmC;EAAE,OAAO,EN/B1B,GAAO;;AMgCzB,iBAAiC;EAAE,OAAO,ENoS1B,GAAO;;AMnSvB,kBAAkC;EAAE,OAAO,ENwB1B,GAAO;;AMvBxB,iBAAiC;EAAE,OAAO,ENqN1B,GAAO;;AMpNvB,qBAAqC;EAAE,OAAO,ENE1B,GAAO;;AMD3B,uBAAuC;EAAE,OAAO,ENF1B,GAAO;;AMG7B,kBAAkC;EAAE,OAAO,EN2S1B,GAAO;;AM1SxB,wBAAwC;EAAE,OAAO,ENyU1B,GAAO;;AMxU9B,iBAAiC;EAAE,OAAO,EN8G1B,GAAO;;AM7GvB,sBAAsC;EAAE,OAAO,EN+G1B,GAAO;;AM9G5B,mBAAmC;EAAE,OAAO,ENnF1B,GAAO;;AMoFzB,mBAAmC;EAAE,OAAO,ENrF1B,GAAO;;AMsFzB;oBACoC;EAAE,OAAO,EN/E1B,GAAO;;AMgF1B,yBAAyC;EAAE,OAAO,ENua1B,GAAO;;AMta/B,0BAA0C;EAAE,OAAO,ENmE1B,GAAO;;AMlEhC,uBAAuC;EAAE,OAAO,EN5C1B,GAAO;;AM6C7B,cAA8B;EAAE,OAAO,ENqK1B,GAAO;;AMpKpB;eAC+B;EAAE,OAAO,ENK1B,GAAO;;AMJrB,mBAAmC;EAAE,OAAO,ENQ1B,GAAO;;AMPzB,sBAAsC;EAAE,OAAO,ENmY1B,GAAO;;AMlY5B,wBAAwC;EAAE,OAAO,ENiY1B,GAAO;;AMhY9B,oBAAoC;EAAE,OAAO,EN2V1B,GAAO;;AM1V1B,kBAAkC;EAAE,OAAO,ENyI1B,GAAO;;AMxIxB,mBAAmC;EAAE,OAAO,ENyT1B,GAAO;;AMxTzB,0BAA0C;EAAE,OAAO,ENiL1B,GAAO;;AMhLhC,qBAAqC;EAAE,OAAO,EN0X1B,GAAO;;AMzX3B,wBAAwC;EAAE,OAAO,EN8C1B,GAAO;;AM7C9B,kBAAkC;EAAE,OAAO,ENoT1B,GAAO;;AMnTxB,iBAAiC;EAAE,OAAO,EN8Y1B,GAAO;;AM7YvB,wBAAwC;EAAE,OAAO,EN6G1B,GAAO;;AM5G9B,iBAAiC;EAAE,OAAO,EN8Z1B,GAAO;;AM7ZvB,kBAAkC;EAAE,OAAO,EN+J1B,GAAO;;AM9JxB,gBAAgC;EAAE,OAAO,ENsO1B,GAAO;;AMrOtB,mBAAmC;EAAE,OAAO,EN2U1B,GAAO;;AM1UzB,qBAAqC;EAAE,OAAO,EN/E1B,GAAO;;AMgF3B,uBAAuC;EAAE,OAAO,ENoO1B,GAAO;;AMnO7B,kBAAkC;EAAE,OAAO,EN8Y1B,GAAO;;AM7YxB;mBACmC;EAAE,OAAO,ENuC1B,GAAO;;AMtCzB,iBAAiC;EAAE,OAAO,ENiG1B,GAAO;;AMhGvB,iBAAiC;EAAE,OAAO,ENiZ1B,GAAO;;AMhZvB,sBAAsC;EAAE,OAAO,ENR1B,GAAO;;AMS5B,cAA8B;EAAE,OAAO,EN4Q1B,GAAO;;AM3QpB,gBAAgC;EAAE,OAAO,ENgH1B,GAAO;;AM/GtB,mBAAmC;EAAE,OAAO,ENnF1B,GAAO;;AMoFzB,eAA+B;EAAE,OAAO,ENzG1B,GAAO;;AM0GrB,sBAAsC;EAAE,OAAO,ENzD1B,GAAO;;AM0D5B,uBAAuC;EAAE,OAAO,EN0G1B,GAAO;;AMzG7B,sBAAsC;EAAE,OAAO,ENwG1B,GAAO;;AMvG5B,oBAAoC;EAAE,OAAO,ENyG1B,GAAO;;AMxG1B,sBAAsC;EAAE,OAAO,ENqG1B,GAAO;;AMpG5B,4BAA4C;EAAE,OAAO,EN5I1B,GAAO;;AM6IlC,6BAA6C;EAAE,OAAO,ENxI1B,GAAO;;AMyInC,0BAA0C;EAAE,OAAO,ENxI1B,GAAO;;AMyIhC,4BAA4C;EAAE,OAAO,ENhJ1B,GAAO;;AMiJlC,gBAAgC;EAAE,OAAO,ENsF1B,GAAO;;AMrFtB,iBAAiC;EAAE,OAAO,ENia1B,GAAO;;AMhavB,gBAAgC;EAAE,OAAO,ENiV1B,GAAO;;AMhVtB,iBAAiC;EAAE,OAAO,ENgD1B,GAAO;;AM/CvB,oBAAoC;EAAE,OAAO,ENvG1B,GAAO;;AMwG1B,qBAAqC;EAAE,OAAO,ENzI1B,GAAO;;AM0I3B;gBACgC;EAAE,OAAO,ENqY1B,GAAO;;AMpYtB;eAC+B;EAAE,OAAO,ENuI1B,GAAO;;AMtIrB,gBAAgC;EAAE,OAAO,ENpD1B,GAAO;;AMqDtB,gBAAgC;EAAE,OAAO,EN+C1B,GAAO;;AM9CtB;mBACmC;EAAE,OAAO,ENwP1B,GAAO;;AMvPzB;kBACkC;EAAE,OAAO,ENkC1B,GAAO;;AMjCxB,oBAAoC;EAAE,OAAO,ENsL1B,GAAO;;AMrL1B;mBACmC;EAAE,OAAO,EN0C1B,GAAO;;AMzCzB,iBAAiC;EAAE,OAAO,ENiS1B,GAAO;;AMhSvB;;eAE+B;EAAE,OAAO,EN9I1B,GAAO;;AM+IrB,kBAAkC;EAAE,OAAO,ENgI1B,GAAO;;AM/HxB,kBAAkC;EAAE,OAAO,EN8H1B,GAAO;;AM7HxB,wBAAwC;EAAE,OAAO,EN4S1B,GAAO;;AM3S9B,oBAAoC;EAAE,OAAO,ENoW1B,GAAO;;AMnW1B,gBAAgC;EAAE,OAAO,ENmT1B,GAAO;;AMlTtB,gBAAgC;EAAE,OAAO,ENkI1B,GAAO;;AMjItB,gBAAgC;EAAE,OAAO,ENuV1B,GAAO;;AMtVtB,oBAAoC;EAAE,OAAO,ENwL1B,GAAO;;AMvL1B,2BAA2C;EAAE,OAAO,ENyL1B,GAAO;;AMxLjC,6BAA6C;EAAE,OAAO,ENyD1B,GAAO;;AMxDnC,sBAAsC;EAAE,OAAO,ENuD1B,GAAO;;AMtD5B,gBAAgC;EAAE,OAAO,ENsJ1B,GAAO;;AMrJtB,qBAAqC;EAAE,OAAO,ENtH1B,GAAO;;AMuH3B,mBAAmC;EAAE,OAAO,ENhH1B,GAAO;;AMiHzB,qBAAqC;EAAE,OAAO,ENvH1B,GAAO;;AMwH3B,sBAAsC;EAAE,OAAO,ENvH1B,GAAO;;AMwH5B,kBAAkC;EAAE,OAAO,ENvE1B,GAAO;;AMwExB;eAC+B;EAAE,OAAO,EN2P1B,GAAO;;AM1PrB;oBACoC;EAAE,OAAO,EN+P1B,GAAO;;AM9P1B;mBACmC;EAAE,OAAO,EN4P1B,GAAO;;AM3PzB,mBAAmC;EAAE,OAAO,ENxC1B,GAAO;;AMyCzB,mBAAmC;EAAE,OAAO,ENkG1B,GAAO;;AMjGzB;eAC+B;EAAE,OAAO,EN8U1B,GAAO;;AM7UrB;gBACgC;EAAE,OAAO,ENqB1B,GAAO;;AMpBtB;qBACqC;EAAE,OAAO,EN2R1B,GAAO;;AM1R3B,oBAAoC;EAAE,OAAO,ENpF1B,GAAO;;AMqF1B,qBAAqC;EAAE,OAAO,ENnF1B,GAAO;;AMoF3B;eAC+B;EAAE,OAAO,ENjK1B,GAAO;;AMkKrB,kBAAkC;EAAE,OAAO,ENkO1B,GAAO;;AMjOxB,mBAAmC;EAAE,OAAO,ENkU1B,GAAO;;AMjUzB;oBACoC;EAAE,OAAO,EN1G1B,GAAO;;AM2G1B,sBAAsC;EAAE,OAAO,ENgF1B,GAAO;;AM/E5B,mBAAmC;EAAE,OAAO,ENnD1B,GAAO;;AMoDzB,yBAAyC;EAAE,OAAO,ENzG1B,GAAO;;AM0G/B,uBAAuC;EAAE,OAAO,ENzG1B,GAAO;;AM0G7B,kBAAkC;EAAE,OAAO,ENsU1B,GAAO;;AMrUxB,sBAAsC;EAAE,OAAO,EN+P1B,GAAO;;AM9P5B,mBAAmC;EAAE,OAAO,ENsQ1B,GAAO;;AMrQzB,iBAAiC;EAAE,OAAO,ENvL1B,GAAO;;AMwLvB,iBAAiC;EAAE,OAAO,ENzG1B,GAAO;;AM0GvB,kBAAkC;EAAE,OAAO,ENtF1B,GAAO;;AMuFxB,sBAAsC;EAAE,OAAO,EN3B1B,GAAO;;AM4B5B,qBAAqC;EAAE,OAAO,ENxK1B,GAAO;;AMyK3B,qBAAqC;EAAE,OAAO,ENkC1B,GAAO;;AMjC3B,oBAAoC;EAAE,OAAO,EN3O1B,GAAO;;AM4O1B,iBAAiC;EAAE,OAAO,ENiG1B,GAAO;;AMhGvB,sBAAsC;EAAE,OAAO,EN/C1B,GAAO;;AMgD5B,eAA+B;EAAE,OAAO,ENpM1B,GAAO;;AMqMrB,mBAAmC;EAAE,OAAO,ENe1B,GAAO;;AMdzB,sBAAsC;EAAE,OAAO,ENgJ1B,GAAO;;AM/I5B,4BAA4C;EAAE,OAAO,EN5O1B,GAAO;;AM6OlC,6BAA6C;EAAE,OAAO,EN5O1B,GAAO;;AM6OnC,0BAA0C;EAAE,OAAO,EN5O1B,GAAO;;AM6OhC,4BAA4C;EAAE,OAAO,ENhP1B,GAAO;;AMiPlC,qBAAqC;EAAE,OAAO,EN5O1B,GAAO;;AM6O3B,sBAAsC;EAAE,OAAO,EN5O1B,GAAO;;AM6O5B,mBAAmC;EAAE,OAAO,EN5O1B,GAAO;;AM6OzB,qBAAqC;EAAE,OAAO,ENhP1B,GAAO;;AMiP3B,kBAAkC;EAAE,OAAO,ENlG1B,GAAO;;AMmGxB,iBAAiC;EAAE,OAAO,ENuC1B,GAAO;;AMtCvB,iBAAiC;EAAE,OAAO,ENoP1B,GAAO;;AMnPvB;iBACiC;EAAE,OAAO,ENyF1B,GAAO;;AMxFvB,mBAAmC;EAAE,OAAO,EN9I1B,GAAO;;AM+IzB,qBAAqC;EAAE,OAAO,EN0I1B,GAAO;;AMzI3B,sBAAsC;EAAE,OAAO,EN0I1B,GAAO;;AMzI5B,kBAAkC;EAAE,OAAO,ENgN1B,GAAO;;AM/MxB,iBAAiC;EAAE,OAAO,ENnJ1B,GAAO;;AMoJvB;gBACgC;EAAE,OAAO,ENkJ1B,GAAO;;AMjJtB,qBAAqC;EAAE,OAAO,ENnB1B,GAAO;;AMoB3B,mBAAmC;EAAE,OAAO,ENxC1B,GAAO;;AMyCzB,wBAAwC;EAAE,OAAO,ENvC1B,GAAO;;AMwC9B,kBAAkC;EAAE,OAAO,EN0L1B,GAAO;;AMzLxB,kBAAkC;EAAE,OAAO,ENpC1B,GAAO;;AMqCxB,gBAAgC;EAAE,OAAO,ENoE1B,GAAO;;AMnEtB,kBAAkC;EAAE,OAAO,ENpC1B,GAAO;;AMqCxB,qBAAqC;EAAE,OAAO,ENkB1B,GAAO;;AMjB3B,iBAAiC;EAAE,OAAO,ENrD1B,GAAO;;AMsDvB,yBAAyC;EAAE,OAAO,ENvD1B,GAAO;;AMwD/B,mBAAmC;EAAE,OAAO,ENuO1B,GAAO;;AMtOzB,eAA+B;EAAE,OAAO,ENtJ1B,GAAO;;AMuJrB;oBACoC;EAAE,OAAO,ENqI1B,GAAO;;AMpI1B;;sBAEsC;EAAE,OAAO,ENuM1B,GAAO;;AMtM5B,yBAAyC;EAAE,OAAO,ENkC1B,GAAO;;AMjC/B,eAA+B;EAAE,OAAO,EN5I1B,GAAO;;AM6IrB,oBAAoC;EAAE,OAAO,EN7J1B,GAAO;;AM8J1B;uBACuC;EAAE,OAAO,EN1L1B,GAAO;;AM2L7B,mBAAmC;EAAE,OAAO,EN4G1B,GAAO;;AM3GzB,eAA+B;EAAE,OAAO,ENT1B,GAAO;;AMUrB,sBAAsC;EAAE,OAAO,ENhH1B,GAAO;;AMiH5B,sBAAsC;EAAE,OAAO,EN8M1B,GAAO;;AM7M5B,oBAAoC;EAAE,OAAO,ENyM1B,GAAO;;AMxM1B,iBAAiC;EAAE,OAAO,ENvH1B,GAAO;;AMwHvB,uBAAuC;EAAE,OAAO,ENmG1B,GAAO;;AMlG7B,qBAAqC;EAAE,OAAO,EN8C1B,GAAO;;AM7C3B,2BAA2C;EAAE,OAAO,EN8C1B,GAAO;;AM7CjC,iBAAiC;EAAE,OAAO,ENgJ1B,GAAO;;AM/IvB,qBAAqC;EAAE,OAAO,EN5N1B,GAAO;;AM6N3B,4BAA4C;EAAE,OAAO,ENjF1B,GAAO;;AMkFlC,iBAAiC;EAAE,OAAO,ENoH1B,GAAO;;AMnHvB,iBAAiC;EAAE,OAAO,ENkC1B,GAAO;;AMjCvB,8BAA8C;EAAE,OAAO,ENlM1B,GAAO;;AMmMpC,+BAA+C;EAAE,OAAO,ENlM1B,GAAO;;AMmMrC,4BAA4C;EAAE,OAAO,ENlM1B,GAAO;;AMmMlC,8BAA8C;EAAE,OAAO,ENtM1B,GAAO;;AMuMpC,gBAAgC;EAAE,OAAO,EN/B1B,GAAO;;AMgCtB,eAA+B;EAAE,OAAO,ENjK1B,GAAO;;AMkKrB,iBAAiC;EAAE,OAAO,EN9S1B,GAAO;;AM+SvB,qBAAqC;EAAE,OAAO,ENmP1B,GAAO;;AMlP3B,mBAAmC;EAAE,OAAO,EN9O1B,GAAO;;AM+OzB,qBAAqC;EAAE,OAAO,EN/I1B,GAAO;;AMgJ3B,qBAAqC;EAAE,OAAO,EN/I1B,GAAO;;AMgJ3B,qBAAqC;EAAE,OAAO,EN4G1B,GAAO;;AM3G3B,sBAAsC;EAAE,OAAO,ENsE1B,GAAO;;AMrE5B,iBAAiC;EAAE,OAAO,EN2M1B,GAAO;;AM1MvB,uBAAuC;EAAE,OAAO,EN6B1B,GAAO;;AM5B7B,yBAAyC;EAAE,OAAO,EN6B1B,GAAO;;AM5B/B,mBAAmC;EAAE,OAAO,ENhB1B,GAAO;;AMiBzB,qBAAqC;EAAE,OAAO,ENlB1B,GAAO;;AMmB3B,uBAAuC;EAAE,OAAO,ENvN1B,GAAO;;AMwN7B,wBAAwC;EAAE,OAAO,ENiD1B,GAAO;;AMhD9B,+BAA+C;EAAE,OAAO,EN3I1B,GAAO;;AM4IrC,uBAAuC;EAAE,OAAO,ENkH1B,GAAO;;AMjH7B,kBAAkC;EAAE,OAAO,EN1L1B,GAAO;;AM2LxB;8BAC8C;EAAE,OAAO,ENjP1B,GAAO;;AMkPpC;4BAC4C;EAAE,OAAO,ENhP1B,GAAO;;AMiPlC;+BAC+C;EAAE,OAAO,ENnP1B,GAAO;;AMoPrC;cAC8B;EAAE,OAAO,EN7J1B,GAAO;;AM8JpB,cAA8B;EAAE,OAAO,EN/F1B,GAAO;;AMgGpB;cAC8B;EAAE,OAAO,EN4N1B,GAAO;;AM3NpB;cAC8B;EAAE,OAAO,ENvD1B,GAAO;;AMwDpB;;;cAG8B;EAAE,OAAO,ENrD1B,GAAO;;AMsDpB;;cAE8B;EAAE,OAAO,EN8E1B,GAAO;;AM7EpB;cAC8B;EAAE,OAAO,ENtD1B,GAAO;;AMuDpB;cAC8B;EAAE,OAAO,ENzR1B,GAAO;;AM0RpB,eAA+B;EAAE,OAAO,ENzJ1B,GAAO;;AM0JrB,oBAAoC;EAAE,OAAO,EN7I1B,GAAO;;AM8I1B,yBAAyC;EAAE,OAAO,EN2G1B,GAAO;;AM1G/B,0BAA0C;EAAE,OAAO,EN2G1B,GAAO;;AM1GhC,0BAA0C;EAAE,OAAO,EN2G1B,GAAO;;AM1GhC,2BAA2C;EAAE,OAAO,EN2G1B,GAAO;;AM1GjC,2BAA2C;EAAE,OAAO,EN8G1B,GAAO;;AM7GjC,4BAA4C;EAAE,OAAO,EN8G1B,GAAO;;AM7GlC,oBAAoC;EAAE,OAAO,ENgK1B,GAAO;;AM/J1B,sBAAsC;EAAE,OAAO,EN4J1B,GAAO;;AM3J5B,yBAAyC;EAAE,OAAO,ENwO1B,GAAO;;AMvO/B,kBAAkC;EAAE,OAAO,ENqO1B,GAAO;;AMpOxB,eAA+B;EAAE,OAAO,EN+N1B,GAAO;;AM9NrB,sBAAsC;EAAE,OAAO,EN+N1B,GAAO;;AM9N5B,uBAAuC;EAAE,OAAO,ENmO1B,GAAO;;AMlO7B,kBAAkC;EAAE,OAAO,ENxM1B,GAAO;;AMyMxB,yBAAyC;EAAE,OAAO,EN+G1B,GAAO;;AM9G/B,oBAAoC;EAAE,OAAO,ENnF1B,GAAO;;AMoF1B,iBAAiC;EAAE,OAAO,EN/I1B,GAAO;;AMgJvB,cAA8B;EAAE,OAAO,ENhX1B,GAAO;;AMiXpB,oBAAoC;EAAE,OAAO,ENxT1B,GAAO;;AMyT1B,2BAA2C;EAAE,OAAO,ENxT1B,GAAO;;AMyTjC,iBAAiC;EAAE,OAAO,ENyK1B,GAAO;;AMxKvB,wBAAwC;EAAE,OAAO,ENyK1B,GAAO;;AMxK9B,0BAA0C;EAAE,OAAO,ENtD1B,GAAO;;AMuDhC,wBAAwC;EAAE,OAAO,ENpD1B,GAAO;;AMqD9B,0BAA0C;EAAE,OAAO,ENvD1B,GAAO;;AMwDhC,2BAA2C;EAAE,OAAO,ENvD1B,GAAO;;AMwDjC,gBAAgC;EAAE,OAAO,ENxW1B,GAAO;;AMyWtB,kBAAkC;EAAE,OAAO,EN0M1B,GAAO;;AMzMxB,kBAAkC;EAAE,OAAO,ENpX1B,GAAO;;AMqXxB,gBAAgC;EAAE,OAAO,ENpE1B,GAAO;;AMqEtB,mBAAmC;EAAE,OAAO,EN1N1B,GAAO;;AM2NzB,gBAAgC;EAAE,OAAO,ENqE1B,GAAO;;AMpEtB,qBAAqC;EAAE,OAAO,ENtJ1B,GAAO;;AMuJ3B,iBAAiC;EAAE,OAAO,ENuJ1B,GAAO;;AMtJvB,iBAAiC;EAAE,OAAO,EN/L1B,GAAO;;AMgMvB,eAA+B;EAAE,OAAO,EN1D1B,GAAO;;AM2DrB;mBACmC;EAAE,OAAO,ENnI1B,GAAO;;AMoIzB,gBAAgC;EAAE,OAAO,EN2G1B,GAAO;;AM1GtB,iBAAiC;EAAE,OAAO,ENxC1B,GAAO;;AMyCvB,kBAAkC;EAAE,OAAO,ENrX1B,GAAO;;AMsXxB,cAA8B;EAAE,OAAO,ENpU1B,GAAO;;AMqUpB,aAA6B;EAAE,OAAO,ENgL1B,GAAO;;AM/KnB,gBAAgC;EAAE,OAAO,ENqL1B,GAAO;;AMpLtB,iBAAiC;EAAE,OAAO,ENa1B,GAAO;;AMZvB,oBAAoC;EAAE,OAAO,ENrC1B,GAAO;;AMsC1B,yBAAyC;EAAE,OAAO,EN8E1B,GAAO;;AM7E/B,+BAA+C;EAAE,OAAO,ENtX1B,GAAO;;AMuXrC,8BAA8C;EAAE,OAAO,ENxX1B,GAAO;;AMyXpC;8BAC8C;EAAE,OAAO,EN3T1B,GAAO;;AM4TpC,uBAAuC;EAAE,OAAO,ENjP1B,GAAO;;AMkP7B,qBAAqC;EAAE,OAAO,EN+K1B,GAAO;;AM9K3B,uBAAuC;EAAE,OAAO,ENmK1B,GAAO;;AMlK7B;cAC8B;EAAE,OAAO,ENoI1B,GAAO;;AMnIpB,wBAAwC;EAAE,OAAO,ENjB1B,GAAO;;AMkB9B,wBAAwC;EAAE,OAAO,EN6D1B,GAAO;;AM5D9B,gBAAgC;EAAE,OAAO,EN2C1B,GAAO;;AM1CtB,0BAA0C;EAAE,OAAO,EN7O1B,GAAO;;AM8OhC,oBAAoC;EAAE,OAAO,EN2K1B,GAAO;;AM1K1B,iBAAiC;EAAE,OAAO,ENvD1B,GAAO;;AMwDvB;;qBAEqC;EAAE,OAAO,ENsI1B,GAAO;;AMrI3B;yBACyC;EAAE,OAAO,ENjK1B,GAAO;;AMkK/B,gBAAgC;EAAE,OAAO,ENwK1B,GAAO;;AMvKtB,iBAAiC;EAAE,OAAO,ENvK1B,GAAO;;AMwKvB,iBAAiC;EAAE,OAAO,ENhB1B,GAAO;;AMiBvB,wBAAwC;EAAE,OAAO,ENhB1B,GAAO;;AMiB9B,6BAA6C;EAAE,OAAO,ENsE1B,GAAO;;AMrEnC,sBAAsC;EAAE,OAAO,ENoE1B,GAAO;;AMnE5B,oBAAoC;EAAE,OAAO,EN7Q1B,GAAO;;AM8Q1B,eAA+B;EAAE,OAAO,EN1Q1B,GAAO;;AM2QrB,qBAAqC;EAAE,OAAO,ENjD1B,GAAO;;AMkD3B,yBAAyC;EAAE,OAAO,ENjD1B,GAAO;;AMkD/B,iBAAiC;EAAE,OAAO,ENvQ1B,GAAO;;AMwQvB,iBAAiC;EAAE,OAAO,EN9I1B,GAAO;;AM+IvB,mBAAmC;EAAE,OAAO,ENzI1B,GAAO;;AM0IzB,cAA8B;EAAE,OAAO,EN9O1B,GAAO;;AM+OpB,mBAAmC;EAAE,OAAO,EN3W1B,GAAO;;AM4WzB,gBAAgC;EAAE,OAAO,EN9T1B,GAAO;;AM+TtB,cAA8B;EAAE,OAAO,ENnE1B,GAAO;;AMoEpB,gBAAgC;EAAE,OAAO,ENoC1B,GAAO;;AMnCtB,eAA+B;EAAE,OAAO,ENjS1B,GAAO;;AMkSrB,gBAAgC;EAAE,OAAO,ENjS1B,GAAO;;AMkStB,kBAAkC;EAAE,OAAO,ENtY1B,GAAO;;AMuYxB,yBAAyC;EAAE,OAAO,ENtY1B,GAAO;;AMuY/B,gBAAgC;EAAE,OAAO,EN2C1B,GAAO;;AM1CtB,uBAAuC;EAAE,OAAO,EN2C1B,GAAO;;AM1C7B,kBAAkC;EAAE,OAAO,ENvC1B,GAAO;;AMwCxB;cAC8B;EAAE,OAAO,EN3W1B,GAAO;;AM4WpB;eAC+B;EAAE,OAAO,EN2D1B,GAAO;;AM1DrB,eAA+B;EAAE,OAAO,ENuF1B,GAAO;;AMtFrB,kBAAkC;EAAE,OAAO,ENwB1B,GAAO;;AMvBxB,qBAAqC;EAAE,OAAO,ENpS1B,GAAO;;AMqS3B,qBAAqC;EAAE,OAAO,ENkB1B,GAAO;;AMjB3B,mBAAmC;EAAE,OAAO,EN1S1B,GAAO;;AM2SzB,qBAAqC;EAAE,OAAO,ENxP1B,GAAO;;AMyP3B,sBAAsC;EAAE,OAAO,ENjP1B,GAAO;;AMkP5B,uBAAuC;EAAE,OAAO,EN9P1B,GAAO;;AM+P7B,4BAA4C;EAAE,OAAO,ENxP1B,GAAO;;AMyPlC;;uBAEuC;EAAE,OAAO,ENjQ1B,GAAO;;AMkQ7B;yBACyC;EAAE,OAAO,ENvQ1B,GAAO;;AMwQ/B;uBACuC;EAAE,OAAO,ENxQ1B,GAAO;;AMyQ7B;uBACuC;EAAE,OAAO,EN7P1B,GAAO;;AM8P7B,sBAAsC;EAAE,OAAO,EN1Q1B,GAAO;;AM2Q5B,eAA+B;EAAE,OAAO,ENsG1B,GAAO;;AMrGrB,kBAAkC;EAAE,OAAO,ENlV1B,GAAO;;AMmVxB,mBAAmC;EAAE,OAAO,ENnL1B,GAAO;;AMoLzB;;;;oBAIoC;EAAE,OAAO,ENxK1B,GAAO;;AMyK1B,yBAAyC;EAAE,OAAO,ENpW1B,GAAO;;AMqW/B;gBACgC;EAAE,OAAO,EN1E1B,GAAO;;AM2EtB;iBACiC;EAAE,OAAO,ENpT1B,GAAO;;AMqTvB,qBAAqC;EAAE,OAAO,EN1O1B,GAAO;;AM2O3B,cAA8B;EAAE,OAAO,EN5O1B,GAAO;;AM6OpB,sBAAsC;EAAE,OAAO,EN7N1B,GAAO;;AM8N5B,wBAAwC;EAAE,OAAO,ENwB1B,GAAO;;AMvB9B,aAA6B;EAAE,OAAO,ENzF1B,GAAO;;AM0FnB;iBACiC;EAAE,OAAO,EN2F1B,GAAO;;AM1FvB;sBACsC;EAAE,OAAO,EN9H1B,GAAO;;AM+H5B;wBACwC;EAAE,OAAO,EN/H1B,GAAO;;AMgI9B,kBAAkC;EAAE,OAAO,EN3N1B,GAAO;;AM4NxB;sBACsC;EAAE,OAAO,ENrX1B,GAAO;;AMsX5B,iBAAiC;EAAE,OAAO,ENnO1B,GAAO;;AMoOvB,oBAAoC;EAAE,OAAO,ENlI1B,GAAO;;AMmI1B,kBAAkC;EAAE,OAAO,EN1C1B,GAAO;;AM2CxB,oBAAoC;EAAE,OAAO,EN7D1B,GAAO;;AM8D1B,2BAA2C;EAAE,OAAO,EN7D1B,GAAO;;AM8DjC,eAA+B;EAAE,OAAO,ENpb1B,GAAO;;AMqbrB;mBACmC;EAAE,OAAO,ENzQ1B,GAAO;;AM0QzB,cAA8B;EAAE,OAAO,ENsC1B,GAAO;;AMrCpB,qBAAqC;EAAE,OAAO,EN/b1B,GAAO;;AMgc3B,eAA+B;EAAE,OAAO,ENrH1B,GAAO;;AMsHrB,qBAAqC;EAAE,OAAO,ENlD1B,GAAO;;AMmD3B,iBAAiC;EAAE,OAAO,ENsC1B,GAAO;;AMrCvB,eAA+B;EAAE,OAAO,ENiF1B,GAAO;;AMhFrB,sBAAsC;EAAE,OAAO,ENvJ1B,GAAO;;AMwJ5B,eAA+B;EAAE,OAAO,ENuE1B,GAAO;;AMtErB,qBAAqC;EAAE,OAAO,ENjb1B,GAAO;;AMkb3B,iBAAiC;EAAE,OAAO,EN9I1B,GAAO;;AM+IvB,wBAAwC;EAAE,OAAO,ENhQ1B,GAAO;;AMiQ9B,kBAAkC;EAAE,OAAO,EN9Z1B,GAAO;;AM+ZxB,wBAAwC;EAAE,OAAO,ENla1B,GAAO;;AMma9B,sBAAsC;EAAE,OAAO,ENpa1B,GAAO;;AMqa5B,kBAAkC;EAAE,OAAO,ENta1B,GAAO;;AMuaxB,oBAAoC;EAAE,OAAO,ENpa1B,GAAO;;AMqa1B,oBAAoC;EAAE,OAAO,ENpa1B,GAAO;;AMqa1B,qBAAqC;EAAE,OAAO,ENld1B,GAAO;;AMmd3B,uBAAuC;EAAE,OAAO,ENld1B,GAAO;;AMmd7B,gBAAgC;EAAE,OAAO,ENY1B,GAAO;;AMXtB,oBAAoC;EAAE,OAAO,EN3X1B,GAAO;;AM4X1B,aAA6B;EAAE,OAAO,ENre1B,GAAO;;AMsenB,qBAAqC;EAAE,OAAO,ENjV1B,GAAO;;AMkV3B,sBAAsC;EAAE,OAAO,ENpK1B,GAAO;;AMqK5B,wBAAwC;EAAE,OAAO,ENrd1B,GAAO;;AMsd9B,qBAAqC;EAAE,OAAO,EN3f1B,GAAO;;AM4f3B,oBAAoC;EAAE,OAAO,ENvJ1B,GAAO;;AMwJ1B,qBAAqC;EAAE,OAAO,EN5N1B,GAAO;;AM6N3B,iBAAiC;EAAE,OAAO,EN1O1B,GAAO;;AM2OvB,wBAAwC;EAAE,OAAO,EN1O1B,GAAO;;AM2O9B,qBAAqC;EAAE,OAAO,ENN1B,GAAO;;AMO3B,oBAAoC;EAAE,OAAO,ENN1B,GAAO;;AMO1B,kBAAkC;EAAE,OAAO,EN/d1B,GAAO;;AMgexB,cAA8B;EAAE,OAAO,EN7c1B,GAAO;;AM8cpB,kBAAkC;EAAE,OAAO,EN1P1B,GAAO;;AM2PxB,oBAAoC;EAAE,OAAO,ENhhB1B,GAAO;;AMihB1B,aAA6B;EAAE,OAAO,EN7b1B,GAAO;;AM8bnB;;cAE8B;EAAE,OAAO,ENxQ1B,GAAO;;AMyQpB,mBAAmC;EAAE,OAAO,EN7M1B,GAAO;;AM8MzB,qBAAqC;EAAE,OAAO,ENpd1B,GAAO;;AMqd3B,yBAAyC;EAAE,OAAO,ENnZ1B,GAAO;;AMoZ/B,mBAAmC;EAAE,OAAO,ENxY1B,GAAO;;AMyYzB,mBAAmC;EAAE,OAAO,EN1T1B,GAAO;;AM2TzB,kBAAkC;EAAE,OAAO,ENxP1B,GAAO;;AMyPxB,iBAAiC;EAAE,OAAO,ENrH1B,GAAO;;AMsHvB,uBAAuC;EAAE,OAAO,ENzG1B,GAAO;;AM0G7B,sBAAsC;EAAE,OAAO,ENrG1B,GAAO;;AMsG5B,mBAAmC;EAAE,OAAO,ENpG1B,GAAO;;AMqGzB,oBAAoC;EAAE,OAAO,EN5c1B,GAAO;;AM6c1B,0BAA0C;EAAE,OAAO,EN9c1B,GAAO;;AM+chC,kBAAkC;EAAE,OAAO,EN3Y1B,GAAO;;AM4YxB,eAA+B;EAAE,OAAO,ENhH1B,GAAO;;AMiHrB,sBAAsC;EAAE,OAAO,ENI1B,GAAO;;AMH5B,qBAAqC;EAAE,OAAO,EN5M1B,GAAO;;AM6M3B,sBAAsC;EAAE,OAAO,ENpE1B,GAAO;;AMqE5B,oBAAoC;EAAE,OAAO,ENhS1B,GAAO;;AMiS1B,gBAAgC;EAAE,OAAO,ENG1B,GAAO;;AMFtB,eAA+B;EAAE,OAAO,ENtO1B,GAAO;;AMuOrB,kBAAkC;EAAE,OAAO,EN7N1B,GAAO;;AM8NxB,sBAAsC;EAAE,OAAO,ENhC1B,GAAO;;AMiC5B,0BAA0C;EAAE,OAAO,ENhC1B,GAAO;;AMiChC,uBAAuC;EAAE,OAAO,END1B,GAAO;;AME7B,sBAAsC;EAAE,OAAO,EN1O1B,GAAO;;AM2O5B,qBAAqC;EAAE,OAAO,ENF1B,GAAO;;AMG3B,sBAAsC;EAAE,OAAO,EN3O1B,GAAO;;AM4O5B,wBAAwC;EAAE,OAAO,EN1O1B,GAAO;;AM2O9B,wBAAwC;EAAE,OAAO,EN5O1B,GAAO;;AM6O9B,iBAAiC;EAAE,OAAO,ENvN1B,GAAO;;AMwNvB,4BAA4C;EAAE,OAAO,EN9X1B,GAAO;;AM+XlC,sBAAsC;EAAE,OAAO,ENhM1B,GAAO;;AMiM5B,mBAAmC;EAAE,OAAO,ENI1B,GAAO;;AMHzB,iBAAiC;EAAE,OAAO,EN7I1B,GAAO;;AM8IvB,oBAAoC;EAAE,OAAO,ENjB1B,GAAO;;AMkB1B,qBAAqC;EAAE,OAAO,ENhB1B,GAAO;;AMiB3B;cAC8B;EAAE,OAAO,ENphB1B,GAAO;;AMqhBpB,kBAAkC;EAAE,OAAO,ENd1B,GAAO;;AMexB,gBAAgC;EAAE,OAAO,ENnD1B,GAAO;;AMoDtB,iBAAiC;EAAE,OAAO,ENvF1B,GAAO;;AMwFvB,iBAAiC;EAAE,OAAO,ENrP1B,GAAO",
+"sources": ["../scss/_path.scss","../scss/_core.scss","../scss/_larger.scss","../scss/_fixed-width.scss","../scss/_list.scss","../scss/_variables.scss","../scss/_bordered-pulled.scss","../scss/_animated.scss","../scss/_rotated-flipped.scss","../scss/_mixins.scss","../scss/_stacked.scss","../scss/_icons.scss"],
+"names": [],
+"file": "font-awesome.css"
+}
diff --git a/library/font_awesome/css/font-awesome.min.css b/library/font_awesome/css/font-awesome.min.css
index 866437fa4..885b38403 100644
--- a/library/font_awesome/css/font-awesome.min.css
+++ b/library/font_awesome/css/font-awesome.min.css
@@ -1,403 +1,4 @@
-@font-face{font-family:'FontAwesome';src:url('../font/fontawesome-webfont.eot?v=3.2.1');src:url('../font/fontawesome-webfont.eot?#iefix&v=3.2.1') format('embedded-opentype'),url('../font/fontawesome-webfont.woff?v=3.2.1') format('woff'),url('../font/fontawesome-webfont.ttf?v=3.2.1') format('truetype'),url('../font/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1') format('svg');font-weight:normal;font-style:normal;}[class^="icon-"],[class*=" icon-"]{font-family:FontAwesome;font-weight:normal;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased;*margin-right:.3em;}
-[class^="icon-"]:before,[class*=" icon-"]:before{text-decoration:inherit;display:inline-block;speak:none;}
-.icon-large:before{vertical-align:-10%;font-size:1.3333333333333333em;}
-a [class^="icon-"],a [class*=" icon-"]{display:inline;}
-[class^="icon-"].icon-fixed-width,[class*=" icon-"].icon-fixed-width{display:inline-block;width:1.1428571428571428em;text-align:right;padding-right:0.2857142857142857em;}[class^="icon-"].icon-fixed-width.icon-large,[class*=" icon-"].icon-fixed-width.icon-large{width:1.4285714285714286em;}
-.icons-ul{margin-left:2.142857142857143em;list-style-type:none;}.icons-ul>li{position:relative;}
-.icons-ul .icon-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;text-align:center;line-height:inherit;}
-[class^="icon-"].hide,[class*=" icon-"].hide{display:none;}
-.icon-muted{color:#eeeeee;}
-.icon-light{color:#ffffff;}
-.icon-dark{color:#333333;}
-.icon-border{border:solid 1px #eeeeee;padding:.2em .25em .15em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
-.icon-2x{font-size:2em;}.icon-2x.icon-border{border-width:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}
-.icon-3x{font-size:3em;}.icon-3x.icon-border{border-width:3px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;}
-.icon-4x{font-size:4em;}.icon-4x.icon-border{border-width:4px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}
-.icon-5x{font-size:5em;}.icon-5x.icon-border{border-width:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;}
-.pull-right{float:right;}
-.pull-left{float:left;}
-[class^="icon-"].pull-left,[class*=" icon-"].pull-left{margin-right:.3em;}
-[class^="icon-"].pull-right,[class*=" icon-"].pull-right{margin-left:.3em;}
-[class^="icon-"],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:normal;vertical-align:baseline;background-image:none;background-position:0% 0%;background-repeat:repeat;margin-top:0;}
-.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:none;}
-.btn [class^="icon-"].icon-large,.nav [class^="icon-"].icon-large,.btn [class*=" icon-"].icon-large,.nav [class*=" icon-"].icon-large{line-height:.9em;}
-.btn [class^="icon-"].icon-spin,.nav [class^="icon-"].icon-spin,.btn [class*=" icon-"].icon-spin,.nav [class*=" icon-"].icon-spin{display:inline-block;}
-.nav-tabs [class^="icon-"],.nav-pills [class^="icon-"],.nav-tabs [class*=" icon-"],.nav-pills [class*=" icon-"],.nav-tabs [class^="icon-"].icon-large,.nav-pills [class^="icon-"].icon-large,.nav-tabs [class*=" icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large{line-height:.9em;}
-.btn [class^="icon-"].pull-left.icon-2x,.btn [class*=" icon-"].pull-left.icon-2x,.btn [class^="icon-"].pull-right.icon-2x,.btn [class*=" icon-"].pull-right.icon-2x{margin-top:.18em;}
-.btn [class^="icon-"].icon-spin.icon-large,.btn [class*=" icon-"].icon-spin.icon-large{line-height:.8em;}
-.btn.btn-small [class^="icon-"].pull-left.icon-2x,.btn.btn-small [class*=" icon-"].pull-left.icon-2x,.btn.btn-small [class^="icon-"].pull-right.icon-2x,.btn.btn-small [class*=" icon-"].pull-right.icon-2x{margin-top:.25em;}
-.btn.btn-large [class^="icon-"],.btn.btn-large [class*=" icon-"]{margin-top:0;}.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x,.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-top:.05em;}
-.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x{margin-right:.2em;}
-.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-left:.2em;}
-.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{line-height:inherit;}
-.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:-35%;}.icon-stack [class^="icon-"],.icon-stack [class*=" icon-"]{display:block;text-align:center;position:absolute;width:100%;height:100%;font-size:1em;line-height:inherit;*line-height:2em;}
-.icon-stack .icon-stack-base{font-size:2em;*line-height:1em;}
-.icon-spin{display:inline-block;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;-webkit-animation:spin 2s infinite linear;animation:spin 2s infinite linear;}
-a .icon-stack,a .icon-spin{display:inline-block;text-decoration:none;}
-@-moz-keyframes spin{0%{-moz-transform:rotate(0deg);} 100%{-moz-transform:rotate(359deg);}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);} 100%{-webkit-transform:rotate(359deg);}}@-o-keyframes spin{0%{-o-transform:rotate(0deg);} 100%{-o-transform:rotate(359deg);}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg);} 100%{-ms-transform:rotate(359deg);}}@keyframes spin{0%{transform:rotate(0deg);} 100%{transform:rotate(359deg);}}.icon-rotate-90:before{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);}
-.icon-rotate-180:before{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);}
-.icon-rotate-270:before{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);}
-.icon-flip-horizontal:before{-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1);}
-.icon-flip-vertical:before{-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1);}
-a .icon-rotate-90:before,a .icon-rotate-180:before,a .icon-rotate-270:before,a .icon-flip-horizontal:before,a .icon-flip-vertical:before{display:inline-block;}
-.icon-glass:before{content:"\f000";}
-.icon-music:before{content:"\f001";}
-.icon-search:before{content:"\f002";}
-.icon-envelope-alt:before{content:"\f003";}
-.icon-heart:before{content:"\f004";}
-.icon-star:before{content:"\f005";}
-.icon-star-empty:before{content:"\f006";}
-.icon-user:before{content:"\f007";}
-.icon-film:before{content:"\f008";}
-.icon-th-large:before{content:"\f009";}
-.icon-th:before{content:"\f00a";}
-.icon-th-list:before{content:"\f00b";}
-.icon-ok:before{content:"\f00c";}
-.icon-remove:before{content:"\f00d";}
-.icon-zoom-in:before{content:"\f00e";}
-.icon-zoom-out:before{content:"\f010";}
-.icon-power-off:before,.icon-off:before{content:"\f011";}
-.icon-signal:before{content:"\f012";}
-.icon-gear:before,.icon-cog:before{content:"\f013";}
-.icon-trash:before{content:"\f014";}
-.icon-home:before{content:"\f015";}
-.icon-file-alt:before{content:"\f016";}
-.icon-time:before{content:"\f017";}
-.icon-road:before{content:"\f018";}
-.icon-download-alt:before{content:"\f019";}
-.icon-download:before{content:"\f01a";}
-.icon-upload:before{content:"\f01b";}
-.icon-inbox:before{content:"\f01c";}
-.icon-play-circle:before{content:"\f01d";}
-.icon-rotate-right:before,.icon-repeat:before{content:"\f01e";}
-.icon-refresh:before{content:"\f021";}
-.icon-list-alt:before{content:"\f022";}
-.icon-lock:before{content:"\f023";}
-.icon-flag:before{content:"\f024";}
-.icon-headphones:before{content:"\f025";}
-.icon-volume-off:before{content:"\f026";}
-.icon-volume-down:before{content:"\f027";}
-.icon-volume-up:before{content:"\f028";}
-.icon-qrcode:before{content:"\f029";}
-.icon-barcode:before{content:"\f02a";}
-.icon-tag:before{content:"\f02b";}
-.icon-tags:before{content:"\f02c";}
-.icon-book:before{content:"\f02d";}
-.icon-bookmark:before{content:"\f02e";}
-.icon-print:before{content:"\f02f";}
-.icon-camera:before{content:"\f030";}
-.icon-font:before{content:"\f031";}
-.icon-bold:before{content:"\f032";}
-.icon-italic:before{content:"\f033";}
-.icon-text-height:before{content:"\f034";}
-.icon-text-width:before{content:"\f035";}
-.icon-align-left:before{content:"\f036";}
-.icon-align-center:before{content:"\f037";}
-.icon-align-right:before{content:"\f038";}
-.icon-align-justify:before{content:"\f039";}
-.icon-list:before{content:"\f03a";}
-.icon-indent-left:before{content:"\f03b";}
-.icon-indent-right:before{content:"\f03c";}
-.icon-facetime-video:before{content:"\f03d";}
-.icon-picture:before{content:"\f03e";}
-.icon-pencil:before{content:"\f040";}
-.icon-map-marker:before{content:"\f041";}
-.icon-adjust:before{content:"\f042";}
-.icon-tint:before{content:"\f043";}
-.icon-edit:before{content:"\f044";}
-.icon-share:before{content:"\f045";}
-.icon-check:before{content:"\f046";}
-.icon-move:before{content:"\f047";}
-.icon-step-backward:before{content:"\f048";}
-.icon-fast-backward:before{content:"\f049";}
-.icon-backward:before{content:"\f04a";}
-.icon-play:before{content:"\f04b";}
-.icon-pause:before{content:"\f04c";}
-.icon-stop:before{content:"\f04d";}
-.icon-forward:before{content:"\f04e";}
-.icon-fast-forward:before{content:"\f050";}
-.icon-step-forward:before{content:"\f051";}
-.icon-eject:before{content:"\f052";}
-.icon-chevron-left:before{content:"\f053";}
-.icon-chevron-right:before{content:"\f054";}
-.icon-plus-sign:before{content:"\f055";}
-.icon-minus-sign:before{content:"\f056";}
-.icon-remove-sign:before{content:"\f057";}
-.icon-ok-sign:before{content:"\f058";}
-.icon-question-sign:before{content:"\f059";}
-.icon-info-sign:before{content:"\f05a";}
-.icon-screenshot:before{content:"\f05b";}
-.icon-remove-circle:before{content:"\f05c";}
-.icon-ok-circle:before{content:"\f05d";}
-.icon-ban-circle:before{content:"\f05e";}
-.icon-arrow-left:before{content:"\f060";}
-.icon-arrow-right:before{content:"\f061";}
-.icon-arrow-up:before{content:"\f062";}
-.icon-arrow-down:before{content:"\f063";}
-.icon-mail-forward:before,.icon-share-alt:before{content:"\f064";}
-.icon-resize-full:before{content:"\f065";}
-.icon-resize-small:before{content:"\f066";}
-.icon-plus:before{content:"\f067";}
-.icon-minus:before{content:"\f068";}
-.icon-asterisk:before{content:"\f069";}
-.icon-exclamation-sign:before{content:"\f06a";}
-.icon-gift:before{content:"\f06b";}
-.icon-leaf:before{content:"\f06c";}
-.icon-fire:before{content:"\f06d";}
-.icon-eye-open:before{content:"\f06e";}
-.icon-eye-close:before{content:"\f070";}
-.icon-warning-sign:before{content:"\f071";}
-.icon-plane:before{content:"\f072";}
-.icon-calendar:before{content:"\f073";}
-.icon-random:before{content:"\f074";}
-.icon-comment:before{content:"\f075";}
-.icon-magnet:before{content:"\f076";}
-.icon-chevron-up:before{content:"\f077";}
-.icon-chevron-down:before{content:"\f078";}
-.icon-retweet:before{content:"\f079";}
-.icon-shopping-cart:before{content:"\f07a";}
-.icon-folder-close:before{content:"\f07b";}
-.icon-folder-open:before{content:"\f07c";}
-.icon-resize-vertical:before{content:"\f07d";}
-.icon-resize-horizontal:before{content:"\f07e";}
-.icon-bar-chart:before{content:"\f080";}
-.icon-twitter-sign:before{content:"\f081";}
-.icon-facebook-sign:before{content:"\f082";}
-.icon-camera-retro:before{content:"\f083";}
-.icon-key:before{content:"\f084";}
-.icon-gears:before,.icon-cogs:before{content:"\f085";}
-.icon-comments:before{content:"\f086";}
-.icon-thumbs-up-alt:before{content:"\f087";}
-.icon-thumbs-down-alt:before{content:"\f088";}
-.icon-star-half:before{content:"\f089";}
-.icon-heart-empty:before{content:"\f08a";}
-.icon-signout:before{content:"\f08b";}
-.icon-linkedin-sign:before{content:"\f08c";}
-.icon-pushpin:before{content:"\f08d";}
-.icon-external-link:before{content:"\f08e";}
-.icon-signin:before{content:"\f090";}
-.icon-trophy:before{content:"\f091";}
-.icon-github-sign:before{content:"\f092";}
-.icon-upload-alt:before{content:"\f093";}
-.icon-lemon:before{content:"\f094";}
-.icon-phone:before{content:"\f095";}
-.icon-unchecked:before,.icon-check-empty:before{content:"\f096";}
-.icon-bookmark-empty:before{content:"\f097";}
-.icon-phone-sign:before{content:"\f098";}
-.icon-twitter:before{content:"\f099";}
-.icon-facebook:before{content:"\f09a";}
-.icon-github:before{content:"\f09b";}
-.icon-unlock:before{content:"\f09c";}
-.icon-credit-card:before{content:"\f09d";}
-.icon-rss:before{content:"\f09e";}
-.icon-hdd:before{content:"\f0a0";}
-.icon-bullhorn:before{content:"\f0a1";}
-.icon-bell:before{content:"\f0a2";}
-.icon-certificate:before{content:"\f0a3";}
-.icon-hand-right:before{content:"\f0a4";}
-.icon-hand-left:before{content:"\f0a5";}
-.icon-hand-up:before{content:"\f0a6";}
-.icon-hand-down:before{content:"\f0a7";}
-.icon-circle-arrow-left:before{content:"\f0a8";}
-.icon-circle-arrow-right:before{content:"\f0a9";}
-.icon-circle-arrow-up:before{content:"\f0aa";}
-.icon-circle-arrow-down:before{content:"\f0ab";}
-.icon-globe:before{content:"\f0ac";}
-.icon-wrench:before{content:"\f0ad";}
-.icon-tasks:before{content:"\f0ae";}
-.icon-filter:before{content:"\f0b0";}
-.icon-briefcase:before{content:"\f0b1";}
-.icon-fullscreen:before{content:"\f0b2";}
-.icon-group:before{content:"\f0c0";}
-.icon-link:before{content:"\f0c1";}
-.icon-cloud:before{content:"\f0c2";}
-.icon-beaker:before{content:"\f0c3";}
-.icon-cut:before{content:"\f0c4";}
-.icon-copy:before{content:"\f0c5";}
-.icon-paperclip:before,.icon-paper-clip:before{content:"\f0c6";}
-.icon-save:before{content:"\f0c7";}
-.icon-sign-blank:before{content:"\f0c8";}
-.icon-reorder:before{content:"\f0c9";}
-.icon-list-ul:before{content:"\f0ca";}
-.icon-list-ol:before{content:"\f0cb";}
-.icon-strikethrough:before{content:"\f0cc";}
-.icon-underline:before{content:"\f0cd";}
-.icon-table:before{content:"\f0ce";}
-.icon-magic:before{content:"\f0d0";}
-.icon-truck:before{content:"\f0d1";}
-.icon-pinterest:before{content:"\f0d2";}
-.icon-pinterest-sign:before{content:"\f0d3";}
-.icon-google-plus-sign:before{content:"\f0d4";}
-.icon-google-plus:before{content:"\f0d5";}
-.icon-money:before{content:"\f0d6";}
-.icon-caret-down:before{content:"\f0d7";}
-.icon-caret-up:before{content:"\f0d8";}
-.icon-caret-left:before{content:"\f0d9";}
-.icon-caret-right:before{content:"\f0da";}
-.icon-columns:before{content:"\f0db";}
-.icon-sort:before{content:"\f0dc";}
-.icon-sort-down:before{content:"\f0dd";}
-.icon-sort-up:before{content:"\f0de";}
-.icon-envelope:before{content:"\f0e0";}
-.icon-linkedin:before{content:"\f0e1";}
-.icon-rotate-left:before,.icon-undo:before{content:"\f0e2";}
-.icon-legal:before{content:"\f0e3";}
-.icon-dashboard:before{content:"\f0e4";}
-.icon-comment-alt:before{content:"\f0e5";}
-.icon-comments-alt:before{content:"\f0e6";}
-.icon-bolt:before{content:"\f0e7";}
-.icon-sitemap:before{content:"\f0e8";}
-.icon-umbrella:before{content:"\f0e9";}
-.icon-paste:before{content:"\f0ea";}
-.icon-lightbulb:before{content:"\f0eb";}
-.icon-exchange:before{content:"\f0ec";}
-.icon-cloud-download:before{content:"\f0ed";}
-.icon-cloud-upload:before{content:"\f0ee";}
-.icon-user-md:before{content:"\f0f0";}
-.icon-stethoscope:before{content:"\f0f1";}
-.icon-suitcase:before{content:"\f0f2";}
-.icon-bell-alt:before{content:"\f0f3";}
-.icon-coffee:before{content:"\f0f4";}
-.icon-food:before{content:"\f0f5";}
-.icon-file-text-alt:before{content:"\f0f6";}
-.icon-building:before{content:"\f0f7";}
-.icon-hospital:before{content:"\f0f8";}
-.icon-ambulance:before{content:"\f0f9";}
-.icon-medkit:before{content:"\f0fa";}
-.icon-fighter-jet:before{content:"\f0fb";}
-.icon-beer:before{content:"\f0fc";}
-.icon-h-sign:before{content:"\f0fd";}
-.icon-plus-sign-alt:before{content:"\f0fe";}
-.icon-double-angle-left:before{content:"\f100";}
-.icon-double-angle-right:before{content:"\f101";}
-.icon-double-angle-up:before{content:"\f102";}
-.icon-double-angle-down:before{content:"\f103";}
-.icon-angle-left:before{content:"\f104";}
-.icon-angle-right:before{content:"\f105";}
-.icon-angle-up:before{content:"\f106";}
-.icon-angle-down:before{content:"\f107";}
-.icon-desktop:before{content:"\f108";}
-.icon-laptop:before{content:"\f109";}
-.icon-tablet:before{content:"\f10a";}
-.icon-mobile-phone:before{content:"\f10b";}
-.icon-circle-blank:before{content:"\f10c";}
-.icon-quote-left:before{content:"\f10d";}
-.icon-quote-right:before{content:"\f10e";}
-.icon-spinner:before{content:"\f110";}
-.icon-circle:before{content:"\f111";}
-.icon-mail-reply:before,.icon-reply:before{content:"\f112";}
-.icon-github-alt:before{content:"\f113";}
-.icon-folder-close-alt:before{content:"\f114";}
-.icon-folder-open-alt:before{content:"\f115";}
-.icon-expand-alt:before{content:"\f116";}
-.icon-collapse-alt:before{content:"\f117";}
-.icon-smile:before{content:"\f118";}
-.icon-frown:before{content:"\f119";}
-.icon-meh:before{content:"\f11a";}
-.icon-gamepad:before{content:"\f11b";}
-.icon-keyboard:before{content:"\f11c";}
-.icon-flag-alt:before{content:"\f11d";}
-.icon-flag-checkered:before{content:"\f11e";}
-.icon-terminal:before{content:"\f120";}
-.icon-code:before{content:"\f121";}
-.icon-reply-all:before{content:"\f122";}
-.icon-mail-reply-all:before{content:"\f122";}
-.icon-star-half-full:before,.icon-star-half-empty:before{content:"\f123";}
-.icon-location-arrow:before{content:"\f124";}
-.icon-crop:before{content:"\f125";}
-.icon-code-fork:before{content:"\f126";}
-.icon-unlink:before{content:"\f127";}
-.icon-question:before{content:"\f128";}
-.icon-info:before{content:"\f129";}
-.icon-exclamation:before{content:"\f12a";}
-.icon-superscript:before{content:"\f12b";}
-.icon-subscript:before{content:"\f12c";}
-.icon-eraser:before{content:"\f12d";}
-.icon-puzzle-piece:before{content:"\f12e";}
-.icon-microphone:before{content:"\f130";}
-.icon-microphone-off:before{content:"\f131";}
-.icon-shield:before{content:"\f132";}
-.icon-calendar-empty:before{content:"\f133";}
-.icon-fire-extinguisher:before{content:"\f134";}
-.icon-rocket:before{content:"\f135";}
-.icon-maxcdn:before{content:"\f136";}
-.icon-chevron-sign-left:before{content:"\f137";}
-.icon-chevron-sign-right:before{content:"\f138";}
-.icon-chevron-sign-up:before{content:"\f139";}
-.icon-chevron-sign-down:before{content:"\f13a";}
-.icon-html5:before{content:"\f13b";}
-.icon-css3:before{content:"\f13c";}
-.icon-anchor:before{content:"\f13d";}
-.icon-unlock-alt:before{content:"\f13e";}
-.icon-bullseye:before{content:"\f140";}
-.icon-ellipsis-horizontal:before{content:"\f141";}
-.icon-ellipsis-vertical:before{content:"\f142";}
-.icon-rss-sign:before{content:"\f143";}
-.icon-play-sign:before{content:"\f144";}
-.icon-ticket:before{content:"\f145";}
-.icon-minus-sign-alt:before{content:"\f146";}
-.icon-check-minus:before{content:"\f147";}
-.icon-level-up:before{content:"\f148";}
-.icon-level-down:before{content:"\f149";}
-.icon-check-sign:before{content:"\f14a";}
-.icon-edit-sign:before{content:"\f14b";}
-.icon-external-link-sign:before{content:"\f14c";}
-.icon-share-sign:before{content:"\f14d";}
-.icon-compass:before{content:"\f14e";}
-.icon-collapse:before{content:"\f150";}
-.icon-collapse-top:before{content:"\f151";}
-.icon-expand:before{content:"\f152";}
-.icon-euro:before,.icon-eur:before{content:"\f153";}
-.icon-gbp:before{content:"\f154";}
-.icon-dollar:before,.icon-usd:before{content:"\f155";}
-.icon-rupee:before,.icon-inr:before{content:"\f156";}
-.icon-yen:before,.icon-jpy:before{content:"\f157";}
-.icon-renminbi:before,.icon-cny:before{content:"\f158";}
-.icon-won:before,.icon-krw:before{content:"\f159";}
-.icon-bitcoin:before,.icon-btc:before{content:"\f15a";}
-.icon-file:before{content:"\f15b";}
-.icon-file-text:before{content:"\f15c";}
-.icon-sort-by-alphabet:before{content:"\f15d";}
-.icon-sort-by-alphabet-alt:before{content:"\f15e";}
-.icon-sort-by-attributes:before{content:"\f160";}
-.icon-sort-by-attributes-alt:before{content:"\f161";}
-.icon-sort-by-order:before{content:"\f162";}
-.icon-sort-by-order-alt:before{content:"\f163";}
-.icon-thumbs-up:before{content:"\f164";}
-.icon-thumbs-down:before{content:"\f165";}
-.icon-youtube-sign:before{content:"\f166";}
-.icon-youtube:before{content:"\f167";}
-.icon-xing:before{content:"\f168";}
-.icon-xing-sign:before{content:"\f169";}
-.icon-youtube-play:before{content:"\f16a";}
-.icon-dropbox:before{content:"\f16b";}
-.icon-stackexchange:before{content:"\f16c";}
-.icon-instagram:before{content:"\f16d";}
-.icon-flickr:before{content:"\f16e";}
-.icon-adn:before{content:"\f170";}
-.icon-bitbucket:before{content:"\f171";}
-.icon-bitbucket-sign:before{content:"\f172";}
-.icon-tumblr:before{content:"\f173";}
-.icon-tumblr-sign:before{content:"\f174";}
-.icon-long-arrow-down:before{content:"\f175";}
-.icon-long-arrow-up:before{content:"\f176";}
-.icon-long-arrow-left:before{content:"\f177";}
-.icon-long-arrow-right:before{content:"\f178";}
-.icon-apple:before{content:"\f179";}
-.icon-windows:before{content:"\f17a";}
-.icon-android:before{content:"\f17b";}
-.icon-linux:before{content:"\f17c";}
-.icon-dribbble:before{content:"\f17d";}
-.icon-skype:before{content:"\f17e";}
-.icon-foursquare:before{content:"\f180";}
-.icon-trello:before{content:"\f181";}
-.icon-female:before{content:"\f182";}
-.icon-male:before{content:"\f183";}
-.icon-gittip:before{content:"\f184";}
-.icon-sun:before{content:"\f185";}
-.icon-moon:before{content:"\f186";}
-.icon-archive:before{content:"\f187";}
-.icon-bug:before{content:"\f188";}
-.icon-vk:before{content:"\f189";}
-.icon-weibo:before{content:"\f18a";}
-.icon-renren:before{content:"\f18b";}
+/*!
+ * Font Awesome 4.6.1 by @davegandy - http://fontawesome.io - @fontawesome
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
+ */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.6.1');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.6.1') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.6.1') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.6.1') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.6.1') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.6.1#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}
diff --git a/library/font_awesome/font/FontAwesome.otf b/library/font_awesome/font/FontAwesome.otf
deleted file mode 100644
index 70125459f..000000000
Binary files a/library/font_awesome/font/FontAwesome.otf and /dev/null differ
diff --git a/library/font_awesome/font/fontawesome-webfont.eot b/library/font_awesome/font/fontawesome-webfont.eot
deleted file mode 100755
index 0662cb96b..000000000
Binary files a/library/font_awesome/font/fontawesome-webfont.eot and /dev/null differ
diff --git a/library/font_awesome/font/fontawesome-webfont.svg b/library/font_awesome/font/fontawesome-webfont.svg
deleted file mode 100755
index 2edb4ec34..000000000
--- a/library/font_awesome/font/fontawesome-webfont.svg
+++ /dev/null
@@ -1,399 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/library/font_awesome/font/fontawesome-webfont.ttf b/library/font_awesome/font/fontawesome-webfont.ttf
deleted file mode 100755
index d36592469..000000000
Binary files a/library/font_awesome/font/fontawesome-webfont.ttf and /dev/null differ
diff --git a/library/font_awesome/font/fontawesome-webfont.woff b/library/font_awesome/font/fontawesome-webfont.woff
deleted file mode 100755
index b9bd17e15..000000000
Binary files a/library/font_awesome/font/fontawesome-webfont.woff and /dev/null differ
diff --git a/library/font_awesome/fonts/FontAwesome.otf b/library/font_awesome/fonts/FontAwesome.otf
new file mode 100644
index 000000000..59853bcda
Binary files /dev/null and b/library/font_awesome/fonts/FontAwesome.otf differ
diff --git a/library/font_awesome/fonts/fontawesome-webfont.eot b/library/font_awesome/fonts/fontawesome-webfont.eot
new file mode 100644
index 000000000..96f92f9b8
Binary files /dev/null and b/library/font_awesome/fonts/fontawesome-webfont.eot differ
diff --git a/library/font_awesome/fonts/fontawesome-webfont.svg b/library/font_awesome/fonts/fontawesome-webfont.svg
new file mode 100644
index 000000000..5a5f0ecd4
--- /dev/null
+++ b/library/font_awesome/fonts/fontawesome-webfont.svg
@@ -0,0 +1,685 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/library/font_awesome/fonts/fontawesome-webfont.ttf b/library/font_awesome/fonts/fontawesome-webfont.ttf
new file mode 100644
index 000000000..86784df96
Binary files /dev/null and b/library/font_awesome/fonts/fontawesome-webfont.ttf differ
diff --git a/library/font_awesome/fonts/fontawesome-webfont.woff b/library/font_awesome/fonts/fontawesome-webfont.woff
new file mode 100644
index 000000000..c7faa19c4
Binary files /dev/null and b/library/font_awesome/fonts/fontawesome-webfont.woff differ
diff --git a/library/font_awesome/fonts/fontawesome-webfont.woff2 b/library/font_awesome/fonts/fontawesome-webfont.woff2
new file mode 100644
index 000000000..cab8571d5
Binary files /dev/null and b/library/font_awesome/fonts/fontawesome-webfont.woff2 differ
diff --git a/library/font_awesome/less/animated.less b/library/font_awesome/less/animated.less
new file mode 100644
index 000000000..66ad52a5b
--- /dev/null
+++ b/library/font_awesome/less/animated.less
@@ -0,0 +1,34 @@
+// Animated Icons
+// --------------------------
+
+.@{fa-css-prefix}-spin {
+ -webkit-animation: fa-spin 2s infinite linear;
+ animation: fa-spin 2s infinite linear;
+}
+
+.@{fa-css-prefix}-pulse {
+ -webkit-animation: fa-spin 1s infinite steps(8);
+ animation: fa-spin 1s infinite steps(8);
+}
+
+@-webkit-keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+
+@keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
diff --git a/library/font_awesome/less/bootstrap.less b/library/font_awesome/less/bootstrap.less
deleted file mode 100644
index a2c96046b..000000000
--- a/library/font_awesome/less/bootstrap.less
+++ /dev/null
@@ -1,84 +0,0 @@
-/* BOOTSTRAP SPECIFIC CLASSES
- * -------------------------- */
-
-/* Bootstrap 2.0 sprites.less reset */
-[class^="icon-"],
-[class*=" icon-"] {
- display: inline;
- width: auto;
- height: auto;
- line-height: normal;
- vertical-align: baseline;
- background-image: none;
- background-position: 0% 0%;
- background-repeat: repeat;
- margin-top: 0;
-}
-
-/* more sprites.less reset */
-.icon-white,
-.nav-pills > .active > a > [class^="icon-"],
-.nav-pills > .active > a > [class*=" icon-"],
-.nav-list > .active > a > [class^="icon-"],
-.nav-list > .active > a > [class*=" icon-"],
-.navbar-inverse .nav > .active > a > [class^="icon-"],
-.navbar-inverse .nav > .active > a > [class*=" icon-"],
-.dropdown-menu > li > a:hover > [class^="icon-"],
-.dropdown-menu > li > a:hover > [class*=" icon-"],
-.dropdown-menu > .active > a > [class^="icon-"],
-.dropdown-menu > .active > a > [class*=" icon-"],
-.dropdown-submenu:hover > a > [class^="icon-"],
-.dropdown-submenu:hover > a > [class*=" icon-"] {
- background-image: none;
-}
-
-
-/* keeps Bootstrap styles with and without icons the same */
-.btn, .nav {
- [class^="icon-"],
- [class*=" icon-"] {
-// display: inline;
- &.icon-large { line-height: .9em; }
- &.icon-spin { display: inline-block; }
- }
-}
-.nav-tabs, .nav-pills {
- [class^="icon-"],
- [class*=" icon-"] {
- &, &.icon-large { line-height: .9em; }
- }
-}
-.btn {
- [class^="icon-"],
- [class*=" icon-"] {
- &.pull-left, &.pull-right {
- &.icon-2x { margin-top: .18em; }
- }
- &.icon-spin.icon-large { line-height: .8em; }
- }
-}
-.btn.btn-small {
- [class^="icon-"],
- [class*=" icon-"] {
- &.pull-left, &.pull-right {
- &.icon-2x { margin-top: .25em; }
- }
- }
-}
-.btn.btn-large {
- [class^="icon-"],
- [class*=" icon-"] {
- margin-top: 0; // overrides bootstrap default
- &.pull-left, &.pull-right {
- &.icon-2x { margin-top: .05em; }
- }
- &.pull-left.icon-2x { margin-right: .2em; }
- &.pull-right.icon-2x { margin-left: .2em; }
- }
-}
-
-/* Fixes alignment in nav lists */
-.nav-list [class^="icon-"],
-.nav-list [class*=" icon-"] {
- line-height: inherit;
-}
diff --git a/library/font_awesome/less/bordered-pulled.less b/library/font_awesome/less/bordered-pulled.less
new file mode 100644
index 000000000..f1c8ad75f
--- /dev/null
+++ b/library/font_awesome/less/bordered-pulled.less
@@ -0,0 +1,25 @@
+// Bordered & Pulled
+// -------------------------
+
+.@{fa-css-prefix}-border {
+ padding: .2em .25em .15em;
+ border: solid .08em @fa-border-color;
+ border-radius: .1em;
+}
+
+.@{fa-css-prefix}-pull-left { float: left; }
+.@{fa-css-prefix}-pull-right { float: right; }
+
+.@{fa-css-prefix} {
+ &.@{fa-css-prefix}-pull-left { margin-right: .3em; }
+ &.@{fa-css-prefix}-pull-right { margin-left: .3em; }
+}
+
+/* Deprecated as of 4.4.0 */
+.pull-right { float: right; }
+.pull-left { float: left; }
+
+.@{fa-css-prefix} {
+ &.pull-left { margin-right: .3em; }
+ &.pull-right { margin-left: .3em; }
+}
diff --git a/library/font_awesome/less/core.less b/library/font_awesome/less/core.less
index 1ef7e2235..c577ac84a 100644
--- a/library/font_awesome/less/core.less
+++ b/library/font_awesome/less/core.less
@@ -1,129 +1,12 @@
-/* FONT AWESOME CORE
- * -------------------------- */
-
-[class^="icon-"],
-[class*=" icon-"] {
- .icon-FontAwesome();
-}
-
-[class^="icon-"]:before,
-[class*=" icon-"]:before {
- text-decoration: inherit;
- display: inline-block;
- speak: none;
-}
-
-/* makes the font 33% larger relative to the icon container */
-.icon-large:before {
- vertical-align: -10%;
- font-size: 4/3em;
-}
-
-/* makes sure icons active on rollover in links */
-a {
- [class^="icon-"],
- [class*=" icon-"] {
- display: inline;
- }
-}
-
-/* increased font size for icon-large */
-[class^="icon-"],
-[class*=" icon-"] {
- &.icon-fixed-width {
- display: inline-block;
- width: 16/14em;
- text-align: right;
- padding-right: 4/14em;
- &.icon-large {
- width: 20/14em;
- }
- }
-}
-
-.icons-ul {
- margin-left: @icons-li-width;
- list-style-type: none;
-
- > li { position: relative; }
-
- .icon-li {
- position: absolute;
- left: -@icons-li-width;
- width: @icons-li-width;
- text-align: center;
- line-height: inherit;
- }
-}
-
-// allows usage of the hide class directly on font awesome icons
-[class^="icon-"],
-[class*=" icon-"] {
- &.hide {
- display: none;
- }
-}
-
-.icon-muted { color: @iconMuted; }
-.icon-light { color: @iconLight; }
-.icon-dark { color: @iconDark; }
-
-// Icon Borders
-// -------------------------
-
-.icon-border {
- border: solid 1px @borderColor;
- padding: .2em .25em .15em;
- .border-radius(3px);
-}
-
-// Icon Sizes
-// -------------------------
-
-.icon-2x {
- font-size: 2em;
- &.icon-border {
- border-width: 2px;
- .border-radius(4px);
- }
-}
-.icon-3x {
- font-size: 3em;
- &.icon-border {
- border-width: 3px;
- .border-radius(5px);
- }
-}
-.icon-4x {
- font-size: 4em;
- &.icon-border {
- border-width: 4px;
- .border-radius(6px);
- }
-}
-
-.icon-5x {
- font-size: 5em;
- &.icon-border {
- border-width: 5px;
- .border-radius(7px);
- }
-}
-
-
-// Floats & Margins
+// Base Class Definition
// -------------------------
-// Quick floats
-.pull-right { float: right; }
-.pull-left { float: left; }
+.@{fa-css-prefix} {
+ display: inline-block;
+ font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // 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;
-[class^="icon-"],
-[class*=" icon-"] {
- &.pull-left {
- margin-right: .3em;
- }
- &.pull-right {
- margin-left: .3em;
- }
}
diff --git a/library/font_awesome/less/extras.less b/library/font_awesome/less/extras.less
deleted file mode 100644
index c93c260c8..000000000
--- a/library/font_awesome/less/extras.less
+++ /dev/null
@@ -1,93 +0,0 @@
-/* EXTRAS
- * -------------------------- */
-
-/* Stacked and layered icon */
-.icon-stack();
-
-/* Animated rotating icon */
-.icon-spin {
- display: inline-block;
- -moz-animation: spin 2s infinite linear;
- -o-animation: spin 2s infinite linear;
- -webkit-animation: spin 2s infinite linear;
- animation: spin 2s infinite linear;
-}
-
-/* Prevent stack and spinners from being taken inline when inside a link */
-a .icon-stack,
-a .icon-spin {
- display: inline-block;
- text-decoration: none;
-}
-
-@-moz-keyframes spin {
- 0% { -moz-transform: rotate(0deg); }
- 100% { -moz-transform: rotate(359deg); }
-}
-@-webkit-keyframes spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@-o-keyframes spin {
- 0% { -o-transform: rotate(0deg); }
- 100% { -o-transform: rotate(359deg); }
-}
-@-ms-keyframes spin {
- 0% { -ms-transform: rotate(0deg); }
- 100% { -ms-transform: rotate(359deg); }
-}
-@keyframes spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
-
-/* Icon rotations and mirroring */
-.icon-rotate-90:before {
- -webkit-transform: rotate(90deg);
- -moz-transform: rotate(90deg);
- -ms-transform: rotate(90deg);
- -o-transform: rotate(90deg);
- transform: rotate(90deg);
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
-}
-
-.icon-rotate-180:before {
- -webkit-transform: rotate(180deg);
- -moz-transform: rotate(180deg);
- -ms-transform: rotate(180deg);
- -o-transform: rotate(180deg);
- transform: rotate(180deg);
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
-}
-
-.icon-rotate-270:before {
- -webkit-transform: rotate(270deg);
- -moz-transform: rotate(270deg);
- -ms-transform: rotate(270deg);
- -o-transform: rotate(270deg);
- transform: rotate(270deg);
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
-}
-
-.icon-flip-horizontal:before {
- -webkit-transform: scale(-1, 1);
- -moz-transform: scale(-1, 1);
- -ms-transform: scale(-1, 1);
- -o-transform: scale(-1, 1);
- transform: scale(-1, 1);
-}
-
-.icon-flip-vertical:before {
- -webkit-transform: scale(1, -1);
- -moz-transform: scale(1, -1);
- -ms-transform: scale(1, -1);
- -o-transform: scale(1, -1);
- transform: scale(1, -1);
-}
-
-/* ensure rotation occurs inside anchor tags */
-a {
- .icon-rotate-90, .icon-rotate-180, .icon-rotate-270, .icon-flip-horizontal, .icon-flip-vertical {
- &:before { display: inline-block; }
- }
-}
diff --git a/library/font_awesome/less/fixed-width.less b/library/font_awesome/less/fixed-width.less
new file mode 100644
index 000000000..110289f2f
--- /dev/null
+++ b/library/font_awesome/less/fixed-width.less
@@ -0,0 +1,6 @@
+// Fixed Width Icons
+// -------------------------
+.@{fa-css-prefix}-fw {
+ width: (18em / 14);
+ text-align: center;
+}
diff --git a/library/font_awesome/less/font-awesome-ie7.less b/library/font_awesome/less/font-awesome-ie7.less
deleted file mode 100644
index 6675c4989..000000000
--- a/library/font_awesome/less/font-awesome-ie7.less
+++ /dev/null
@@ -1,1953 +0,0 @@
-/*!
- * Font Awesome 3.2.1
- * the iconic font designed for Bootstrap
- * ------------------------------------------------------------------------------
- * The full suite of pictographic icons, examples, and documentation can be
- * found at http://fontawesome.io. Stay up to date on Twitter at
- * http://twitter.com/fontawesome.
- *
- * License
- * ------------------------------------------------------------------------------
- * - The Font Awesome font is licensed under SIL OFL 1.1 -
- * http://scripts.sil.org/OFL
- * - Font Awesome CSS, LESS, and SASS files are licensed under MIT License -
- * http://opensource.org/licenses/mit-license.html
- * - Font Awesome documentation licensed under CC BY 3.0 -
- * http://creativecommons.org/licenses/by/3.0/
- * - Attribution is no longer required in Font Awesome 3.0, but much appreciated:
- * "Font Awesome by Dave Gandy - http://fontawesome.io"
- *
- * Author - Dave Gandy
- * ------------------------------------------------------------------------------
- * Email: dave@fontawesome.io
- * Twitter: http://twitter.com/davegandy
- * Work: Lead Product Designer @ Kyruus - http://kyruus.com
- */
-
-.icon-large {
- font-size: 4/3em;
- margin-top: -4px;
- padding-top: 3px;
- margin-bottom: -4px;
- padding-bottom: 3px;
- vertical-align: middle;
-}
-
-.nav {
- [class^="icon-"],
- [class*=" icon-"] {
- vertical-align: inherit;
- margin-top: -4px;
- padding-top: 3px;
- margin-bottom: -4px;
- padding-bottom: 3px;
- &.icon-large {
- vertical-align: -25%;
- }
- }
-}
-
-.nav-pills, .nav-tabs {
- [class^="icon-"],
- [class*=" icon-"] {
- &.icon-large {
- line-height: .75em;
- margin-top: -7px;
- padding-top: 5px;
- margin-bottom: -5px;
- padding-bottom: 4px;
- }
- }
-}
-
-.btn {
- [class^="icon-"],
- [class*=" icon-"] {
- &.pull-left, &.pull-right { vertical-align: inherit; }
- &.icon-large {
- margin-top: -.5em;
- }
- }
-}
-
-a [class^="icon-"],
-a [class*=" icon-"] {
- cursor: pointer;
-}
-
-.ie7icon(@inner) { *zoom: ~"expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '@{inner}')"; }
-
-
-.icon-glass {
- .ie7icon('');
-}
-
-
-.icon-music {
- .ie7icon('');
-}
-
-
-.icon-search {
- .ie7icon('');
-}
-
-
-.icon-envelope-alt {
- .ie7icon('');
-}
-
-
-.icon-heart {
- .ie7icon('');
-}
-
-
-.icon-star {
- .ie7icon('');
-}
-
-
-.icon-star-empty {
- .ie7icon('');
-}
-
-
-.icon-user {
- .ie7icon('');
-}
-
-
-.icon-film {
- .ie7icon('');
-}
-
-
-.icon-th-large {
- .ie7icon('');
-}
-
-
-.icon-th {
- .ie7icon('');
-}
-
-
-.icon-th-list {
- .ie7icon('');
-}
-
-
-.icon-ok {
- .ie7icon('');
-}
-
-
-.icon-remove {
- .ie7icon('');
-}
-
-
-.icon-zoom-in {
- .ie7icon('');
-}
-
-
-.icon-zoom-out {
- .ie7icon('');
-}
-
-
-.icon-off {
- .ie7icon('');
-}
-
-.icon-power-off {
- .ie7icon('');
-}
-
-
-.icon-signal {
- .ie7icon('');
-}
-
-
-.icon-cog {
- .ie7icon('');
-}
-
-.icon-gear {
- .ie7icon('');
-}
-
-
-.icon-trash {
- .ie7icon('');
-}
-
-
-.icon-home {
- .ie7icon('');
-}
-
-
-.icon-file-alt {
- .ie7icon('');
-}
-
-
-.icon-time {
- .ie7icon('');
-}
-
-
-.icon-road {
- .ie7icon('');
-}
-
-
-.icon-download-alt {
- .ie7icon('');
-}
-
-
-.icon-download {
- .ie7icon('');
-}
-
-
-.icon-upload {
- .ie7icon('');
-}
-
-
-.icon-inbox {
- .ie7icon('');
-}
-
-
-.icon-play-circle {
- .ie7icon('');
-}
-
-
-.icon-repeat {
- .ie7icon('');
-}
-
-.icon-rotate-right {
- .ie7icon('');
-}
-
-
-.icon-refresh {
- .ie7icon('');
-}
-
-
-.icon-list-alt {
- .ie7icon('');
-}
-
-
-.icon-lock {
- .ie7icon('');
-}
-
-
-.icon-flag {
- .ie7icon('');
-}
-
-
-.icon-headphones {
- .ie7icon('');
-}
-
-
-.icon-volume-off {
- .ie7icon('');
-}
-
-
-.icon-volume-down {
- .ie7icon('');
-}
-
-
-.icon-volume-up {
- .ie7icon('');
-}
-
-
-.icon-qrcode {
- .ie7icon('');
-}
-
-
-.icon-barcode {
- .ie7icon('');
-}
-
-
-.icon-tag {
- .ie7icon('');
-}
-
-
-.icon-tags {
- .ie7icon('');
-}
-
-
-.icon-book {
- .ie7icon('');
-}
-
-
-.icon-bookmark {
- .ie7icon('');
-}
-
-
-.icon-print {
- .ie7icon('');
-}
-
-
-.icon-camera {
- .ie7icon('');
-}
-
-
-.icon-font {
- .ie7icon('');
-}
-
-
-.icon-bold {
- .ie7icon('');
-}
-
-
-.icon-italic {
- .ie7icon('');
-}
-
-
-.icon-text-height {
- .ie7icon('');
-}
-
-
-.icon-text-width {
- .ie7icon('');
-}
-
-
-.icon-align-left {
- .ie7icon('');
-}
-
-
-.icon-align-center {
- .ie7icon('');
-}
-
-
-.icon-align-right {
- .ie7icon('');
-}
-
-
-.icon-align-justify {
- .ie7icon('');
-}
-
-
-.icon-list {
- .ie7icon('');
-}
-
-
-.icon-indent-left {
- .ie7icon('');
-}
-
-
-.icon-indent-right {
- .ie7icon('');
-}
-
-
-.icon-facetime-video {
- .ie7icon('');
-}
-
-
-.icon-picture {
- .ie7icon('');
-}
-
-
-.icon-pencil {
- .ie7icon('');
-}
-
-
-.icon-map-marker {
- .ie7icon('');
-}
-
-
-.icon-adjust {
- .ie7icon('');
-}
-
-
-.icon-tint {
- .ie7icon('');
-}
-
-
-.icon-edit {
- .ie7icon('');
-}
-
-
-.icon-share {
- .ie7icon('');
-}
-
-
-.icon-check {
- .ie7icon('');
-}
-
-
-.icon-move {
- .ie7icon('');
-}
-
-
-.icon-step-backward {
- .ie7icon('');
-}
-
-
-.icon-fast-backward {
- .ie7icon('');
-}
-
-
-.icon-backward {
- .ie7icon('');
-}
-
-
-.icon-play {
- .ie7icon('');
-}
-
-
-.icon-pause {
- .ie7icon('');
-}
-
-
-.icon-stop {
- .ie7icon('');
-}
-
-
-.icon-forward {
- .ie7icon('');
-}
-
-
-.icon-fast-forward {
- .ie7icon('');
-}
-
-
-.icon-step-forward {
- .ie7icon('');
-}
-
-
-.icon-eject {
- .ie7icon('');
-}
-
-
-.icon-chevron-left {
- .ie7icon('');
-}
-
-
-.icon-chevron-right {
- .ie7icon('');
-}
-
-
-.icon-plus-sign {
- .ie7icon('');
-}
-
-
-.icon-minus-sign {
- .ie7icon('');
-}
-
-
-.icon-remove-sign {
- .ie7icon('');
-}
-
-
-.icon-ok-sign {
- .ie7icon('');
-}
-
-
-.icon-question-sign {
- .ie7icon('');
-}
-
-
-.icon-info-sign {
- .ie7icon('');
-}
-
-
-.icon-screenshot {
- .ie7icon('');
-}
-
-
-.icon-remove-circle {
- .ie7icon('');
-}
-
-
-.icon-ok-circle {
- .ie7icon('');
-}
-
-
-.icon-ban-circle {
- .ie7icon('');
-}
-
-
-.icon-arrow-left {
- .ie7icon('');
-}
-
-
-.icon-arrow-right {
- .ie7icon('');
-}
-
-
-.icon-arrow-up {
- .ie7icon('');
-}
-
-
-.icon-arrow-down {
- .ie7icon('');
-}
-
-
-.icon-share-alt {
- .ie7icon('');
-}
-
-.icon-mail-forward {
- .ie7icon('');
-}
-
-
-.icon-resize-full {
- .ie7icon('');
-}
-
-
-.icon-resize-small {
- .ie7icon('');
-}
-
-
-.icon-plus {
- .ie7icon('');
-}
-
-
-.icon-minus {
- .ie7icon('');
-}
-
-
-.icon-asterisk {
- .ie7icon('');
-}
-
-
-.icon-exclamation-sign {
- .ie7icon('');
-}
-
-
-.icon-gift {
- .ie7icon('');
-}
-
-
-.icon-leaf {
- .ie7icon('');
-}
-
-
-.icon-fire {
- .ie7icon('');
-}
-
-
-.icon-eye-open {
- .ie7icon('');
-}
-
-
-.icon-eye-close {
- .ie7icon('');
-}
-
-
-.icon-warning-sign {
- .ie7icon('');
-}
-
-
-.icon-plane {
- .ie7icon('');
-}
-
-
-.icon-calendar {
- .ie7icon('');
-}
-
-
-.icon-random {
- .ie7icon('');
-}
-
-
-.icon-comment {
- .ie7icon('');
-}
-
-
-.icon-magnet {
- .ie7icon('');
-}
-
-
-.icon-chevron-up {
- .ie7icon('');
-}
-
-
-.icon-chevron-down {
- .ie7icon('');
-}
-
-
-.icon-retweet {
- .ie7icon('');
-}
-
-
-.icon-shopping-cart {
- .ie7icon('');
-}
-
-
-.icon-folder-close {
- .ie7icon('');
-}
-
-
-.icon-folder-open {
- .ie7icon('');
-}
-
-
-.icon-resize-vertical {
- .ie7icon('');
-}
-
-
-.icon-resize-horizontal {
- .ie7icon('');
-}
-
-
-.icon-bar-chart {
- .ie7icon('');
-}
-
-
-.icon-twitter-sign {
- .ie7icon('');
-}
-
-
-.icon-facebook-sign {
- .ie7icon('');
-}
-
-
-.icon-camera-retro {
- .ie7icon('');
-}
-
-
-.icon-key {
- .ie7icon('');
-}
-
-
-.icon-cogs {
- .ie7icon('');
-}
-
-.icon-gears {
- .ie7icon('');
-}
-
-
-.icon-comments {
- .ie7icon('');
-}
-
-
-.icon-thumbs-up-alt {
- .ie7icon('');
-}
-
-
-.icon-thumbs-down-alt {
- .ie7icon('');
-}
-
-
-.icon-star-half {
- .ie7icon('');
-}
-
-
-.icon-heart-empty {
- .ie7icon('');
-}
-
-
-.icon-signout {
- .ie7icon('');
-}
-
-
-.icon-linkedin-sign {
- .ie7icon('');
-}
-
-
-.icon-pushpin {
- .ie7icon('');
-}
-
-
-.icon-external-link {
- .ie7icon('');
-}
-
-
-.icon-signin {
- .ie7icon('');
-}
-
-
-.icon-trophy {
- .ie7icon('');
-}
-
-
-.icon-github-sign {
- .ie7icon('');
-}
-
-
-.icon-upload-alt {
- .ie7icon('');
-}
-
-
-.icon-lemon {
- .ie7icon('');
-}
-
-
-.icon-phone {
- .ie7icon('');
-}
-
-
-.icon-check-empty {
- .ie7icon('');
-}
-
-.icon-unchecked {
- .ie7icon('');
-}
-
-
-.icon-bookmark-empty {
- .ie7icon('');
-}
-
-
-.icon-phone-sign {
- .ie7icon('');
-}
-
-
-.icon-twitter {
- .ie7icon('');
-}
-
-
-.icon-facebook {
- .ie7icon('');
-}
-
-
-.icon-github {
- .ie7icon('');
-}
-
-
-.icon-unlock {
- .ie7icon('');
-}
-
-
-.icon-credit-card {
- .ie7icon('');
-}
-
-
-.icon-rss {
- .ie7icon('');
-}
-
-
-.icon-hdd {
- .ie7icon('');
-}
-
-
-.icon-bullhorn {
- .ie7icon('');
-}
-
-
-.icon-bell {
- .ie7icon('');
-}
-
-
-.icon-certificate {
- .ie7icon('');
-}
-
-
-.icon-hand-right {
- .ie7icon('');
-}
-
-
-.icon-hand-left {
- .ie7icon('');
-}
-
-
-.icon-hand-up {
- .ie7icon('');
-}
-
-
-.icon-hand-down {
- .ie7icon('');
-}
-
-
-.icon-circle-arrow-left {
- .ie7icon('');
-}
-
-
-.icon-circle-arrow-right {
- .ie7icon('');
-}
-
-
-.icon-circle-arrow-up {
- .ie7icon('');
-}
-
-
-.icon-circle-arrow-down {
- .ie7icon('');
-}
-
-
-.icon-globe {
- .ie7icon('');
-}
-
-
-.icon-wrench {
- .ie7icon('');
-}
-
-
-.icon-tasks {
- .ie7icon('');
-}
-
-
-.icon-filter {
- .ie7icon('');
-}
-
-
-.icon-briefcase {
- .ie7icon('');
-}
-
-
-.icon-fullscreen {
- .ie7icon('');
-}
-
-
-.icon-group {
- .ie7icon('');
-}
-
-
-.icon-link {
- .ie7icon('');
-}
-
-
-.icon-cloud {
- .ie7icon('');
-}
-
-
-.icon-beaker {
- .ie7icon('');
-}
-
-
-.icon-cut {
- .ie7icon('');
-}
-
-
-.icon-copy {
- .ie7icon('');
-}
-
-
-.icon-paper-clip {
- .ie7icon('');
-}
-
-.icon-paperclip {
- .ie7icon('');
-}
-
-
-.icon-save {
- .ie7icon('');
-}
-
-
-.icon-sign-blank {
- .ie7icon('');
-}
-
-
-.icon-reorder {
- .ie7icon('');
-}
-
-
-.icon-list-ul {
- .ie7icon('');
-}
-
-
-.icon-list-ol {
- .ie7icon('');
-}
-
-
-.icon-strikethrough {
- .ie7icon('');
-}
-
-
-.icon-underline {
- .ie7icon('');
-}
-
-
-.icon-table {
- .ie7icon('');
-}
-
-
-.icon-magic {
- .ie7icon('');
-}
-
-
-.icon-truck {
- .ie7icon('');
-}
-
-
-.icon-pinterest {
- .ie7icon('');
-}
-
-
-.icon-pinterest-sign {
- .ie7icon('');
-}
-
-
-.icon-google-plus-sign {
- .ie7icon('');
-}
-
-
-.icon-google-plus {
- .ie7icon('');
-}
-
-
-.icon-money {
- .ie7icon('');
-}
-
-
-.icon-caret-down {
- .ie7icon('');
-}
-
-
-.icon-caret-up {
- .ie7icon('');
-}
-
-
-.icon-caret-left {
- .ie7icon('');
-}
-
-
-.icon-caret-right {
- .ie7icon('');
-}
-
-
-.icon-columns {
- .ie7icon('');
-}
-
-
-.icon-sort {
- .ie7icon('');
-}
-
-
-.icon-sort-down {
- .ie7icon('');
-}
-
-
-.icon-sort-up {
- .ie7icon('');
-}
-
-
-.icon-envelope {
- .ie7icon('');
-}
-
-
-.icon-linkedin {
- .ie7icon('');
-}
-
-
-.icon-undo {
- .ie7icon('');
-}
-
-.icon-rotate-left {
- .ie7icon('');
-}
-
-
-.icon-legal {
- .ie7icon('');
-}
-
-
-.icon-dashboard {
- .ie7icon('');
-}
-
-
-.icon-comment-alt {
- .ie7icon('');
-}
-
-
-.icon-comments-alt {
- .ie7icon('');
-}
-
-
-.icon-bolt {
- .ie7icon('');
-}
-
-
-.icon-sitemap {
- .ie7icon('');
-}
-
-
-.icon-umbrella {
- .ie7icon('');
-}
-
-
-.icon-paste {
- .ie7icon('');
-}
-
-
-.icon-lightbulb {
- .ie7icon('');
-}
-
-
-.icon-exchange {
- .ie7icon('');
-}
-
-
-.icon-cloud-download {
- .ie7icon('');
-}
-
-
-.icon-cloud-upload {
- .ie7icon('');
-}
-
-
-.icon-user-md {
- .ie7icon('');
-}
-
-
-.icon-stethoscope {
- .ie7icon('');
-}
-
-
-.icon-suitcase {
- .ie7icon('');
-}
-
-
-.icon-bell-alt {
- .ie7icon('');
-}
-
-
-.icon-coffee {
- .ie7icon('');
-}
-
-
-.icon-food {
- .ie7icon('');
-}
-
-
-.icon-file-text-alt {
- .ie7icon('');
-}
-
-
-.icon-building {
- .ie7icon('');
-}
-
-
-.icon-hospital {
- .ie7icon('');
-}
-
-
-.icon-ambulance {
- .ie7icon('');
-}
-
-
-.icon-medkit {
- .ie7icon('');
-}
-
-
-.icon-fighter-jet {
- .ie7icon('');
-}
-
-
-.icon-beer {
- .ie7icon('');
-}
-
-
-.icon-h-sign {
- .ie7icon('');
-}
-
-
-.icon-plus-sign-alt {
- .ie7icon('');
-}
-
-
-.icon-double-angle-left {
- .ie7icon('');
-}
-
-
-.icon-double-angle-right {
- .ie7icon('');
-}
-
-
-.icon-double-angle-up {
- .ie7icon('');
-}
-
-
-.icon-double-angle-down {
- .ie7icon('');
-}
-
-
-.icon-angle-left {
- .ie7icon('');
-}
-
-
-.icon-angle-right {
- .ie7icon('');
-}
-
-
-.icon-angle-up {
- .ie7icon('');
-}
-
-
-.icon-angle-down {
- .ie7icon('');
-}
-
-
-.icon-desktop {
- .ie7icon('');
-}
-
-
-.icon-laptop {
- .ie7icon('');
-}
-
-
-.icon-tablet {
- .ie7icon('');
-}
-
-
-.icon-mobile-phone {
- .ie7icon('');
-}
-
-
-.icon-circle-blank {
- .ie7icon('');
-}
-
-
-.icon-quote-left {
- .ie7icon('');
-}
-
-
-.icon-quote-right {
- .ie7icon('');
-}
-
-
-.icon-spinner {
- .ie7icon('');
-}
-
-
-.icon-circle {
- .ie7icon('');
-}
-
-
-.icon-reply {
- .ie7icon('');
-}
-
-.icon-mail-reply {
- .ie7icon('');
-}
-
-
-.icon-github-alt {
- .ie7icon('');
-}
-
-
-.icon-folder-close-alt {
- .ie7icon('');
-}
-
-
-.icon-folder-open-alt {
- .ie7icon('');
-}
-
-
-.icon-expand-alt {
- .ie7icon('');
-}
-
-
-.icon-collapse-alt {
- .ie7icon('');
-}
-
-
-.icon-smile {
- .ie7icon('');
-}
-
-
-.icon-frown {
- .ie7icon('');
-}
-
-
-.icon-meh {
- .ie7icon('');
-}
-
-
-.icon-gamepad {
- .ie7icon('');
-}
-
-
-.icon-keyboard {
- .ie7icon('');
-}
-
-
-.icon-flag-alt {
- .ie7icon('');
-}
-
-
-.icon-flag-checkered {
- .ie7icon('');
-}
-
-
-.icon-terminal {
- .ie7icon('');
-}
-
-
-.icon-code {
- .ie7icon('');
-}
-
-
-.icon-reply-all {
- .ie7icon('');
-}
-
-
-.icon-mail-reply-all {
- .ie7icon('');
-}
-
-
-.icon-star-half-empty {
- .ie7icon('');
-}
-
-.icon-star-half-full {
- .ie7icon('');
-}
-
-
-.icon-location-arrow {
- .ie7icon('');
-}
-
-
-.icon-crop {
- .ie7icon('');
-}
-
-
-.icon-code-fork {
- .ie7icon('');
-}
-
-
-.icon-unlink {
- .ie7icon('');
-}
-
-
-.icon-question {
- .ie7icon('');
-}
-
-
-.icon-info {
- .ie7icon('');
-}
-
-
-.icon-exclamation {
- .ie7icon('');
-}
-
-
-.icon-superscript {
- .ie7icon('');
-}
-
-
-.icon-subscript {
- .ie7icon('');
-}
-
-
-.icon-eraser {
- .ie7icon('');
-}
-
-
-.icon-puzzle-piece {
- .ie7icon('');
-}
-
-
-.icon-microphone {
- .ie7icon('');
-}
-
-
-.icon-microphone-off {
- .ie7icon('');
-}
-
-
-.icon-shield {
- .ie7icon('');
-}
-
-
-.icon-calendar-empty {
- .ie7icon('');
-}
-
-
-.icon-fire-extinguisher {
- .ie7icon('');
-}
-
-
-.icon-rocket {
- .ie7icon('');
-}
-
-
-.icon-maxcdn {
- .ie7icon('');
-}
-
-
-.icon-chevron-sign-left {
- .ie7icon('');
-}
-
-
-.icon-chevron-sign-right {
- .ie7icon('');
-}
-
-
-.icon-chevron-sign-up {
- .ie7icon('');
-}
-
-
-.icon-chevron-sign-down {
- .ie7icon('');
-}
-
-
-.icon-html5 {
- .ie7icon('');
-}
-
-
-.icon-css3 {
- .ie7icon('');
-}
-
-
-.icon-anchor {
- .ie7icon('');
-}
-
-
-.icon-unlock-alt {
- .ie7icon('');
-}
-
-
-.icon-bullseye {
- .ie7icon('');
-}
-
-
-.icon-ellipsis-horizontal {
- .ie7icon('');
-}
-
-
-.icon-ellipsis-vertical {
- .ie7icon('');
-}
-
-
-.icon-rss-sign {
- .ie7icon('');
-}
-
-
-.icon-play-sign {
- .ie7icon('');
-}
-
-
-.icon-ticket {
- .ie7icon('');
-}
-
-
-.icon-minus-sign-alt {
- .ie7icon('');
-}
-
-
-.icon-check-minus {
- .ie7icon('');
-}
-
-
-.icon-level-up {
- .ie7icon('');
-}
-
-
-.icon-level-down {
- .ie7icon('');
-}
-
-
-.icon-check-sign {
- .ie7icon('');
-}
-
-
-.icon-edit-sign {
- .ie7icon('');
-}
-
-
-.icon-external-link-sign {
- .ie7icon('');
-}
-
-
-.icon-share-sign {
- .ie7icon('');
-}
-
-
-.icon-compass {
- .ie7icon('');
-}
-
-
-.icon-collapse {
- .ie7icon('');
-}
-
-
-.icon-collapse-top {
- .ie7icon('');
-}
-
-
-.icon-expand {
- .ie7icon('');
-}
-
-
-.icon-eur {
- .ie7icon('');
-}
-
-.icon-euro {
- .ie7icon('');
-}
-
-
-.icon-gbp {
- .ie7icon('');
-}
-
-
-.icon-usd {
- .ie7icon('');
-}
-
-.icon-dollar {
- .ie7icon('');
-}
-
-
-.icon-inr {
- .ie7icon('');
-}
-
-.icon-rupee {
- .ie7icon('');
-}
-
-
-.icon-jpy {
- .ie7icon('');
-}
-
-.icon-yen {
- .ie7icon('');
-}
-
-
-.icon-cny {
- .ie7icon('');
-}
-
-.icon-renminbi {
- .ie7icon('');
-}
-
-
-.icon-krw {
- .ie7icon('');
-}
-
-.icon-won {
- .ie7icon('');
-}
-
-
-.icon-btc {
- .ie7icon('');
-}
-
-.icon-bitcoin {
- .ie7icon('');
-}
-
-
-.icon-file {
- .ie7icon('');
-}
-
-
-.icon-file-text {
- .ie7icon('');
-}
-
-
-.icon-sort-by-alphabet {
- .ie7icon('');
-}
-
-
-.icon-sort-by-alphabet-alt {
- .ie7icon('');
-}
-
-
-.icon-sort-by-attributes {
- .ie7icon('');
-}
-
-
-.icon-sort-by-attributes-alt {
- .ie7icon('');
-}
-
-
-.icon-sort-by-order {
- .ie7icon('');
-}
-
-
-.icon-sort-by-order-alt {
- .ie7icon('');
-}
-
-
-.icon-thumbs-up {
- .ie7icon('');
-}
-
-
-.icon-thumbs-down {
- .ie7icon('');
-}
-
-
-.icon-youtube-sign {
- .ie7icon('');
-}
-
-
-.icon-youtube {
- .ie7icon('');
-}
-
-
-.icon-xing {
- .ie7icon('');
-}
-
-
-.icon-xing-sign {
- .ie7icon('');
-}
-
-
-.icon-youtube-play {
- .ie7icon('');
-}
-
-
-.icon-dropbox {
- .ie7icon('');
-}
-
-
-.icon-stackexchange {
- .ie7icon('');
-}
-
-
-.icon-instagram {
- .ie7icon('');
-}
-
-
-.icon-flickr {
- .ie7icon('');
-}
-
-
-.icon-adn {
- .ie7icon('');
-}
-
-
-.icon-bitbucket {
- .ie7icon('');
-}
-
-
-.icon-bitbucket-sign {
- .ie7icon('');
-}
-
-
-.icon-tumblr {
- .ie7icon('');
-}
-
-
-.icon-tumblr-sign {
- .ie7icon('');
-}
-
-
-.icon-long-arrow-down {
- .ie7icon('');
-}
-
-
-.icon-long-arrow-up {
- .ie7icon('');
-}
-
-
-.icon-long-arrow-left {
- .ie7icon('');
-}
-
-
-.icon-long-arrow-right {
- .ie7icon('');
-}
-
-
-.icon-apple {
- .ie7icon('');
-}
-
-
-.icon-windows {
- .ie7icon('');
-}
-
-
-.icon-android {
- .ie7icon('');
-}
-
-
-.icon-linux {
- .ie7icon('');
-}
-
-
-.icon-dribbble {
- .ie7icon('');
-}
-
-
-.icon-skype {
- .ie7icon('');
-}
-
-
-.icon-foursquare {
- .ie7icon('');
-}
-
-
-.icon-trello {
- .ie7icon('');
-}
-
-
-.icon-female {
- .ie7icon('');
-}
-
-
-.icon-male {
- .ie7icon('');
-}
-
-
-.icon-gittip {
- .ie7icon('');
-}
-
-
-.icon-sun {
- .ie7icon('');
-}
-
-
-.icon-moon {
- .ie7icon('');
-}
-
-
-.icon-archive {
- .ie7icon('');
-}
-
-
-.icon-bug {
- .ie7icon('');
-}
-
-
-.icon-vk {
- .ie7icon('');
-}
-
-
-.icon-weibo {
- .ie7icon('');
-}
-
-
-.icon-renren {
- .ie7icon('');
-}
-
-
diff --git a/library/font_awesome/less/font-awesome.less b/library/font_awesome/less/font-awesome.less
index 0f454612b..767096008 100644
--- a/library/font_awesome/less/font-awesome.less
+++ b/library/font_awesome/less/font-awesome.less
@@ -1,33 +1,18 @@
/*!
- * Font Awesome 3.2.1
- * the iconic font designed for Bootstrap
- * ------------------------------------------------------------------------------
- * The full suite of pictographic icons, examples, and documentation can be
- * found at http://fontawesome.io. Stay up to date on Twitter at
- * http://twitter.com/fontawesome.
- *
- * License
- * ------------------------------------------------------------------------------
- * - The Font Awesome font is licensed under SIL OFL 1.1 -
- * http://scripts.sil.org/OFL
- * - Font Awesome CSS, LESS, and SASS files are licensed under MIT License -
- * http://opensource.org/licenses/mit-license.html
- * - Font Awesome documentation licensed under CC BY 3.0 -
- * http://creativecommons.org/licenses/by/3.0/
- * - Attribution is no longer required in Font Awesome 3.0, but much appreciated:
- * "Font Awesome by Dave Gandy - http://fontawesome.io"
- *
- * Author - Dave Gandy
- * ------------------------------------------------------------------------------
- * Email: dave@fontawesome.io
- * Twitter: http://twitter.com/davegandy
- * Work: Lead Product Designer @ Kyruus - http://kyruus.com
+ * Font Awesome 4.6.1 by @davegandy - http://fontawesome.io - @fontawesome
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
@import "variables.less";
@import "mixins.less";
@import "path.less";
@import "core.less";
-@import "bootstrap.less";
-@import "extras.less";
+@import "larger.less";
+@import "fixed-width.less";
+@import "list.less";
+@import "bordered-pulled.less";
+@import "animated.less";
+@import "rotated-flipped.less";
+@import "stacked.less";
@import "icons.less";
+@import "screen-reader.less";
diff --git a/library/font_awesome/less/icons.less b/library/font_awesome/less/icons.less
index 476d201ec..c5e643091 100644
--- a/library/font_awesome/less/icons.less
+++ b/library/font_awesome/less/icons.less
@@ -1,381 +1,724 @@
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
-.icon-glass:before { content: @glass; }
-.icon-music:before { content: @music; }
-.icon-search:before { content: @search; }
-.icon-envelope-alt:before { content: @envelope-alt; }
-.icon-heart:before { content: @heart; }
-.icon-star:before { content: @star; }
-.icon-star-empty:before { content: @star-empty; }
-.icon-user:before { content: @user; }
-.icon-film:before { content: @film; }
-.icon-th-large:before { content: @th-large; }
-.icon-th:before { content: @th; }
-.icon-th-list:before { content: @th-list; }
-.icon-ok:before { content: @ok; }
-.icon-remove:before { content: @remove; }
-.icon-zoom-in:before { content: @zoom-in; }
-.icon-zoom-out:before { content: @zoom-out; }
-.icon-power-off:before,
-.icon-off:before { content: @off; }
-.icon-signal:before { content: @signal; }
-.icon-gear:before,
-.icon-cog:before { content: @cog; }
-.icon-trash:before { content: @trash; }
-.icon-home:before { content: @home; }
-.icon-file-alt:before { content: @file-alt; }
-.icon-time:before { content: @time; }
-.icon-road:before { content: @road; }
-.icon-download-alt:before { content: @download-alt; }
-.icon-download:before { content: @download; }
-.icon-upload:before { content: @upload; }
-.icon-inbox:before { content: @inbox; }
-.icon-play-circle:before { content: @play-circle; }
-.icon-rotate-right:before,
-.icon-repeat:before { content: @repeat; }
-.icon-refresh:before { content: @refresh; }
-.icon-list-alt:before { content: @list-alt; }
-.icon-lock:before { content: @lock; }
-.icon-flag:before { content: @flag; }
-.icon-headphones:before { content: @headphones; }
-.icon-volume-off:before { content: @volume-off; }
-.icon-volume-down:before { content: @volume-down; }
-.icon-volume-up:before { content: @volume-up; }
-.icon-qrcode:before { content: @qrcode; }
-.icon-barcode:before { content: @barcode; }
-.icon-tag:before { content: @tag; }
-.icon-tags:before { content: @tags; }
-.icon-book:before { content: @book; }
-.icon-bookmark:before { content: @bookmark; }
-.icon-print:before { content: @print; }
-.icon-camera:before { content: @camera; }
-.icon-font:before { content: @font; }
-.icon-bold:before { content: @bold; }
-.icon-italic:before { content: @italic; }
-.icon-text-height:before { content: @text-height; }
-.icon-text-width:before { content: @text-width; }
-.icon-align-left:before { content: @align-left; }
-.icon-align-center:before { content: @align-center; }
-.icon-align-right:before { content: @align-right; }
-.icon-align-justify:before { content: @align-justify; }
-.icon-list:before { content: @list; }
-.icon-indent-left:before { content: @indent-left; }
-.icon-indent-right:before { content: @indent-right; }
-.icon-facetime-video:before { content: @facetime-video; }
-.icon-picture:before { content: @picture; }
-.icon-pencil:before { content: @pencil; }
-.icon-map-marker:before { content: @map-marker; }
-.icon-adjust:before { content: @adjust; }
-.icon-tint:before { content: @tint; }
-.icon-edit:before { content: @edit; }
-.icon-share:before { content: @share; }
-.icon-check:before { content: @check; }
-.icon-move:before { content: @move; }
-.icon-step-backward:before { content: @step-backward; }
-.icon-fast-backward:before { content: @fast-backward; }
-.icon-backward:before { content: @backward; }
-.icon-play:before { content: @play; }
-.icon-pause:before { content: @pause; }
-.icon-stop:before { content: @stop; }
-.icon-forward:before { content: @forward; }
-.icon-fast-forward:before { content: @fast-forward; }
-.icon-step-forward:before { content: @step-forward; }
-.icon-eject:before { content: @eject; }
-.icon-chevron-left:before { content: @chevron-left; }
-.icon-chevron-right:before { content: @chevron-right; }
-.icon-plus-sign:before { content: @plus-sign; }
-.icon-minus-sign:before { content: @minus-sign; }
-.icon-remove-sign:before { content: @remove-sign; }
-.icon-ok-sign:before { content: @ok-sign; }
-.icon-question-sign:before { content: @question-sign; }
-.icon-info-sign:before { content: @info-sign; }
-.icon-screenshot:before { content: @screenshot; }
-.icon-remove-circle:before { content: @remove-circle; }
-.icon-ok-circle:before { content: @ok-circle; }
-.icon-ban-circle:before { content: @ban-circle; }
-.icon-arrow-left:before { content: @arrow-left; }
-.icon-arrow-right:before { content: @arrow-right; }
-.icon-arrow-up:before { content: @arrow-up; }
-.icon-arrow-down:before { content: @arrow-down; }
-.icon-mail-forward:before,
-.icon-share-alt:before { content: @share-alt; }
-.icon-resize-full:before { content: @resize-full; }
-.icon-resize-small:before { content: @resize-small; }
-.icon-plus:before { content: @plus; }
-.icon-minus:before { content: @minus; }
-.icon-asterisk:before { content: @asterisk; }
-.icon-exclamation-sign:before { content: @exclamation-sign; }
-.icon-gift:before { content: @gift; }
-.icon-leaf:before { content: @leaf; }
-.icon-fire:before { content: @fire; }
-.icon-eye-open:before { content: @eye-open; }
-.icon-eye-close:before { content: @eye-close; }
-.icon-warning-sign:before { content: @warning-sign; }
-.icon-plane:before { content: @plane; }
-.icon-calendar:before { content: @calendar; }
-.icon-random:before { content: @random; }
-.icon-comment:before { content: @comment; }
-.icon-magnet:before { content: @magnet; }
-.icon-chevron-up:before { content: @chevron-up; }
-.icon-chevron-down:before { content: @chevron-down; }
-.icon-retweet:before { content: @retweet; }
-.icon-shopping-cart:before { content: @shopping-cart; }
-.icon-folder-close:before { content: @folder-close; }
-.icon-folder-open:before { content: @folder-open; }
-.icon-resize-vertical:before { content: @resize-vertical; }
-.icon-resize-horizontal:before { content: @resize-horizontal; }
-.icon-bar-chart:before { content: @bar-chart; }
-.icon-twitter-sign:before { content: @twitter-sign; }
-.icon-facebook-sign:before { content: @facebook-sign; }
-.icon-camera-retro:before { content: @camera-retro; }
-.icon-key:before { content: @key; }
-.icon-gears:before,
-.icon-cogs:before { content: @cogs; }
-.icon-comments:before { content: @comments; }
-.icon-thumbs-up-alt:before { content: @thumbs-up-alt; }
-.icon-thumbs-down-alt:before { content: @thumbs-down-alt; }
-.icon-star-half:before { content: @star-half; }
-.icon-heart-empty:before { content: @heart-empty; }
-.icon-signout:before { content: @signout; }
-.icon-linkedin-sign:before { content: @linkedin-sign; }
-.icon-pushpin:before { content: @pushpin; }
-.icon-external-link:before { content: @external-link; }
-.icon-signin:before { content: @signin; }
-.icon-trophy:before { content: @trophy; }
-.icon-github-sign:before { content: @github-sign; }
-.icon-upload-alt:before { content: @upload-alt; }
-.icon-lemon:before { content: @lemon; }
-.icon-phone:before { content: @phone; }
-.icon-unchecked:before,
-.icon-check-empty:before { content: @check-empty; }
-.icon-bookmark-empty:before { content: @bookmark-empty; }
-.icon-phone-sign:before { content: @phone-sign; }
-.icon-twitter:before { content: @twitter; }
-.icon-facebook:before { content: @facebook; }
-.icon-github:before { content: @github; }
-.icon-unlock:before { content: @unlock; }
-.icon-credit-card:before { content: @credit-card; }
-.icon-rss:before { content: @rss; }
-.icon-hdd:before { content: @hdd; }
-.icon-bullhorn:before { content: @bullhorn; }
-.icon-bell:before { content: @bell; }
-.icon-certificate:before { content: @certificate; }
-.icon-hand-right:before { content: @hand-right; }
-.icon-hand-left:before { content: @hand-left; }
-.icon-hand-up:before { content: @hand-up; }
-.icon-hand-down:before { content: @hand-down; }
-.icon-circle-arrow-left:before { content: @circle-arrow-left; }
-.icon-circle-arrow-right:before { content: @circle-arrow-right; }
-.icon-circle-arrow-up:before { content: @circle-arrow-up; }
-.icon-circle-arrow-down:before { content: @circle-arrow-down; }
-.icon-globe:before { content: @globe; }
-.icon-wrench:before { content: @wrench; }
-.icon-tasks:before { content: @tasks; }
-.icon-filter:before { content: @filter; }
-.icon-briefcase:before { content: @briefcase; }
-.icon-fullscreen:before { content: @fullscreen; }
-.icon-group:before { content: @group; }
-.icon-link:before { content: @link; }
-.icon-cloud:before { content: @cloud; }
-.icon-beaker:before { content: @beaker; }
-.icon-cut:before { content: @cut; }
-.icon-copy:before { content: @copy; }
-.icon-paperclip:before,
-.icon-paper-clip:before { content: @paper-clip; }
-.icon-save:before { content: @save; }
-.icon-sign-blank:before { content: @sign-blank; }
-.icon-reorder:before { content: @reorder; }
-.icon-list-ul:before { content: @list-ul; }
-.icon-list-ol:before { content: @list-ol; }
-.icon-strikethrough:before { content: @strikethrough; }
-.icon-underline:before { content: @underline; }
-.icon-table:before { content: @table; }
-.icon-magic:before { content: @magic; }
-.icon-truck:before { content: @truck; }
-.icon-pinterest:before { content: @pinterest; }
-.icon-pinterest-sign:before { content: @pinterest-sign; }
-.icon-google-plus-sign:before { content: @google-plus-sign; }
-.icon-google-plus:before { content: @google-plus; }
-.icon-money:before { content: @money; }
-.icon-caret-down:before { content: @caret-down; }
-.icon-caret-up:before { content: @caret-up; }
-.icon-caret-left:before { content: @caret-left; }
-.icon-caret-right:before { content: @caret-right; }
-.icon-columns:before { content: @columns; }
-.icon-sort:before { content: @sort; }
-.icon-sort-down:before { content: @sort-down; }
-.icon-sort-up:before { content: @sort-up; }
-.icon-envelope:before { content: @envelope; }
-.icon-linkedin:before { content: @linkedin; }
-.icon-rotate-left:before,
-.icon-undo:before { content: @undo; }
-.icon-legal:before { content: @legal; }
-.icon-dashboard:before { content: @dashboard; }
-.icon-comment-alt:before { content: @comment-alt; }
-.icon-comments-alt:before { content: @comments-alt; }
-.icon-bolt:before { content: @bolt; }
-.icon-sitemap:before { content: @sitemap; }
-.icon-umbrella:before { content: @umbrella; }
-.icon-paste:before { content: @paste; }
-.icon-lightbulb:before { content: @lightbulb; }
-.icon-exchange:before { content: @exchange; }
-.icon-cloud-download:before { content: @cloud-download; }
-.icon-cloud-upload:before { content: @cloud-upload; }
-.icon-user-md:before { content: @user-md; }
-.icon-stethoscope:before { content: @stethoscope; }
-.icon-suitcase:before { content: @suitcase; }
-.icon-bell-alt:before { content: @bell-alt; }
-.icon-coffee:before { content: @coffee; }
-.icon-food:before { content: @food; }
-.icon-file-text-alt:before { content: @file-text-alt; }
-.icon-building:before { content: @building; }
-.icon-hospital:before { content: @hospital; }
-.icon-ambulance:before { content: @ambulance; }
-.icon-medkit:before { content: @medkit; }
-.icon-fighter-jet:before { content: @fighter-jet; }
-.icon-beer:before { content: @beer; }
-.icon-h-sign:before { content: @h-sign; }
-.icon-plus-sign-alt:before { content: @plus-sign-alt; }
-.icon-double-angle-left:before { content: @double-angle-left; }
-.icon-double-angle-right:before { content: @double-angle-right; }
-.icon-double-angle-up:before { content: @double-angle-up; }
-.icon-double-angle-down:before { content: @double-angle-down; }
-.icon-angle-left:before { content: @angle-left; }
-.icon-angle-right:before { content: @angle-right; }
-.icon-angle-up:before { content: @angle-up; }
-.icon-angle-down:before { content: @angle-down; }
-.icon-desktop:before { content: @desktop; }
-.icon-laptop:before { content: @laptop; }
-.icon-tablet:before { content: @tablet; }
-.icon-mobile-phone:before { content: @mobile-phone; }
-.icon-circle-blank:before { content: @circle-blank; }
-.icon-quote-left:before { content: @quote-left; }
-.icon-quote-right:before { content: @quote-right; }
-.icon-spinner:before { content: @spinner; }
-.icon-circle:before { content: @circle; }
-.icon-mail-reply:before,
-.icon-reply:before { content: @reply; }
-.icon-github-alt:before { content: @github-alt; }
-.icon-folder-close-alt:before { content: @folder-close-alt; }
-.icon-folder-open-alt:before { content: @folder-open-alt; }
-.icon-expand-alt:before { content: @expand-alt; }
-.icon-collapse-alt:before { content: @collapse-alt; }
-.icon-smile:before { content: @smile; }
-.icon-frown:before { content: @frown; }
-.icon-meh:before { content: @meh; }
-.icon-gamepad:before { content: @gamepad; }
-.icon-keyboard:before { content: @keyboard; }
-.icon-flag-alt:before { content: @flag-alt; }
-.icon-flag-checkered:before { content: @flag-checkered; }
-.icon-terminal:before { content: @terminal; }
-.icon-code:before { content: @code; }
-.icon-reply-all:before { content: @reply-all; }
-.icon-mail-reply-all:before { content: @mail-reply-all; }
-.icon-star-half-full:before,
-.icon-star-half-empty:before { content: @star-half-empty; }
-.icon-location-arrow:before { content: @location-arrow; }
-.icon-crop:before { content: @crop; }
-.icon-code-fork:before { content: @code-fork; }
-.icon-unlink:before { content: @unlink; }
-.icon-question:before { content: @question; }
-.icon-info:before { content: @info; }
-.icon-exclamation:before { content: @exclamation; }
-.icon-superscript:before { content: @superscript; }
-.icon-subscript:before { content: @subscript; }
-.icon-eraser:before { content: @eraser; }
-.icon-puzzle-piece:before { content: @puzzle-piece; }
-.icon-microphone:before { content: @microphone; }
-.icon-microphone-off:before { content: @microphone-off; }
-.icon-shield:before { content: @shield; }
-.icon-calendar-empty:before { content: @calendar-empty; }
-.icon-fire-extinguisher:before { content: @fire-extinguisher; }
-.icon-rocket:before { content: @rocket; }
-.icon-maxcdn:before { content: @maxcdn; }
-.icon-chevron-sign-left:before { content: @chevron-sign-left; }
-.icon-chevron-sign-right:before { content: @chevron-sign-right; }
-.icon-chevron-sign-up:before { content: @chevron-sign-up; }
-.icon-chevron-sign-down:before { content: @chevron-sign-down; }
-.icon-html5:before { content: @html5; }
-.icon-css3:before { content: @css3; }
-.icon-anchor:before { content: @anchor; }
-.icon-unlock-alt:before { content: @unlock-alt; }
-.icon-bullseye:before { content: @bullseye; }
-.icon-ellipsis-horizontal:before { content: @ellipsis-horizontal; }
-.icon-ellipsis-vertical:before { content: @ellipsis-vertical; }
-.icon-rss-sign:before { content: @rss-sign; }
-.icon-play-sign:before { content: @play-sign; }
-.icon-ticket:before { content: @ticket; }
-.icon-minus-sign-alt:before { content: @minus-sign-alt; }
-.icon-check-minus:before { content: @check-minus; }
-.icon-level-up:before { content: @level-up; }
-.icon-level-down:before { content: @level-down; }
-.icon-check-sign:before { content: @check-sign; }
-.icon-edit-sign:before { content: @edit-sign; }
-.icon-external-link-sign:before { content: @external-link-sign; }
-.icon-share-sign:before { content: @share-sign; }
-.icon-compass:before { content: @compass; }
-.icon-collapse:before { content: @collapse; }
-.icon-collapse-top:before { content: @collapse-top; }
-.icon-expand:before { content: @expand; }
-.icon-euro:before,
-.icon-eur:before { content: @eur; }
-.icon-gbp:before { content: @gbp; }
-.icon-dollar:before,
-.icon-usd:before { content: @usd; }
-.icon-rupee:before,
-.icon-inr:before { content: @inr; }
-.icon-yen:before,
-.icon-jpy:before { content: @jpy; }
-.icon-renminbi:before,
-.icon-cny:before { content: @cny; }
-.icon-won:before,
-.icon-krw:before { content: @krw; }
-.icon-bitcoin:before,
-.icon-btc:before { content: @btc; }
-.icon-file:before { content: @file; }
-.icon-file-text:before { content: @file-text; }
-.icon-sort-by-alphabet:before { content: @sort-by-alphabet; }
-.icon-sort-by-alphabet-alt:before { content: @sort-by-alphabet-alt; }
-.icon-sort-by-attributes:before { content: @sort-by-attributes; }
-.icon-sort-by-attributes-alt:before { content: @sort-by-attributes-alt; }
-.icon-sort-by-order:before { content: @sort-by-order; }
-.icon-sort-by-order-alt:before { content: @sort-by-order-alt; }
-.icon-thumbs-up:before { content: @thumbs-up; }
-.icon-thumbs-down:before { content: @thumbs-down; }
-.icon-youtube-sign:before { content: @youtube-sign; }
-.icon-youtube:before { content: @youtube; }
-.icon-xing:before { content: @xing; }
-.icon-xing-sign:before { content: @xing-sign; }
-.icon-youtube-play:before { content: @youtube-play; }
-.icon-dropbox:before { content: @dropbox; }
-.icon-stackexchange:before { content: @stackexchange; }
-.icon-instagram:before { content: @instagram; }
-.icon-flickr:before { content: @flickr; }
-.icon-adn:before { content: @adn; }
-.icon-bitbucket:before { content: @bitbucket; }
-.icon-bitbucket-sign:before { content: @bitbucket-sign; }
-.icon-tumblr:before { content: @tumblr; }
-.icon-tumblr-sign:before { content: @tumblr-sign; }
-.icon-long-arrow-down:before { content: @long-arrow-down; }
-.icon-long-arrow-up:before { content: @long-arrow-up; }
-.icon-long-arrow-left:before { content: @long-arrow-left; }
-.icon-long-arrow-right:before { content: @long-arrow-right; }
-.icon-apple:before { content: @apple; }
-.icon-windows:before { content: @windows; }
-.icon-android:before { content: @android; }
-.icon-linux:before { content: @linux; }
-.icon-dribbble:before { content: @dribbble; }
-.icon-skype:before { content: @skype; }
-.icon-foursquare:before { content: @foursquare; }
-.icon-trello:before { content: @trello; }
-.icon-female:before { content: @female; }
-.icon-male:before { content: @male; }
-.icon-gittip:before { content: @gittip; }
-.icon-sun:before { content: @sun; }
-.icon-moon:before { content: @moon; }
-.icon-archive:before { content: @archive; }
-.icon-bug:before { content: @bug; }
-.icon-vk:before { content: @vk; }
-.icon-weibo:before { content: @weibo; }
-.icon-renren:before { content: @renren; }
+.@{fa-css-prefix}-glass:before { content: @fa-var-glass; }
+.@{fa-css-prefix}-music:before { content: @fa-var-music; }
+.@{fa-css-prefix}-search:before { content: @fa-var-search; }
+.@{fa-css-prefix}-envelope-o:before { content: @fa-var-envelope-o; }
+.@{fa-css-prefix}-heart:before { content: @fa-var-heart; }
+.@{fa-css-prefix}-star:before { content: @fa-var-star; }
+.@{fa-css-prefix}-star-o:before { content: @fa-var-star-o; }
+.@{fa-css-prefix}-user:before { content: @fa-var-user; }
+.@{fa-css-prefix}-film:before { content: @fa-var-film; }
+.@{fa-css-prefix}-th-large:before { content: @fa-var-th-large; }
+.@{fa-css-prefix}-th:before { content: @fa-var-th; }
+.@{fa-css-prefix}-th-list:before { content: @fa-var-th-list; }
+.@{fa-css-prefix}-check:before { content: @fa-var-check; }
+.@{fa-css-prefix}-remove:before,
+.@{fa-css-prefix}-close:before,
+.@{fa-css-prefix}-times:before { content: @fa-var-times; }
+.@{fa-css-prefix}-search-plus:before { content: @fa-var-search-plus; }
+.@{fa-css-prefix}-search-minus:before { content: @fa-var-search-minus; }
+.@{fa-css-prefix}-power-off:before { content: @fa-var-power-off; }
+.@{fa-css-prefix}-signal:before { content: @fa-var-signal; }
+.@{fa-css-prefix}-gear:before,
+.@{fa-css-prefix}-cog:before { content: @fa-var-cog; }
+.@{fa-css-prefix}-trash-o:before { content: @fa-var-trash-o; }
+.@{fa-css-prefix}-home:before { content: @fa-var-home; }
+.@{fa-css-prefix}-file-o:before { content: @fa-var-file-o; }
+.@{fa-css-prefix}-clock-o:before { content: @fa-var-clock-o; }
+.@{fa-css-prefix}-road:before { content: @fa-var-road; }
+.@{fa-css-prefix}-download:before { content: @fa-var-download; }
+.@{fa-css-prefix}-arrow-circle-o-down:before { content: @fa-var-arrow-circle-o-down; }
+.@{fa-css-prefix}-arrow-circle-o-up:before { content: @fa-var-arrow-circle-o-up; }
+.@{fa-css-prefix}-inbox:before { content: @fa-var-inbox; }
+.@{fa-css-prefix}-play-circle-o:before { content: @fa-var-play-circle-o; }
+.@{fa-css-prefix}-rotate-right:before,
+.@{fa-css-prefix}-repeat:before { content: @fa-var-repeat; }
+.@{fa-css-prefix}-refresh:before { content: @fa-var-refresh; }
+.@{fa-css-prefix}-list-alt:before { content: @fa-var-list-alt; }
+.@{fa-css-prefix}-lock:before { content: @fa-var-lock; }
+.@{fa-css-prefix}-flag:before { content: @fa-var-flag; }
+.@{fa-css-prefix}-headphones:before { content: @fa-var-headphones; }
+.@{fa-css-prefix}-volume-off:before { content: @fa-var-volume-off; }
+.@{fa-css-prefix}-volume-down:before { content: @fa-var-volume-down; }
+.@{fa-css-prefix}-volume-up:before { content: @fa-var-volume-up; }
+.@{fa-css-prefix}-qrcode:before { content: @fa-var-qrcode; }
+.@{fa-css-prefix}-barcode:before { content: @fa-var-barcode; }
+.@{fa-css-prefix}-tag:before { content: @fa-var-tag; }
+.@{fa-css-prefix}-tags:before { content: @fa-var-tags; }
+.@{fa-css-prefix}-book:before { content: @fa-var-book; }
+.@{fa-css-prefix}-bookmark:before { content: @fa-var-bookmark; }
+.@{fa-css-prefix}-print:before { content: @fa-var-print; }
+.@{fa-css-prefix}-camera:before { content: @fa-var-camera; }
+.@{fa-css-prefix}-font:before { content: @fa-var-font; }
+.@{fa-css-prefix}-bold:before { content: @fa-var-bold; }
+.@{fa-css-prefix}-italic:before { content: @fa-var-italic; }
+.@{fa-css-prefix}-text-height:before { content: @fa-var-text-height; }
+.@{fa-css-prefix}-text-width:before { content: @fa-var-text-width; }
+.@{fa-css-prefix}-align-left:before { content: @fa-var-align-left; }
+.@{fa-css-prefix}-align-center:before { content: @fa-var-align-center; }
+.@{fa-css-prefix}-align-right:before { content: @fa-var-align-right; }
+.@{fa-css-prefix}-align-justify:before { content: @fa-var-align-justify; }
+.@{fa-css-prefix}-list:before { content: @fa-var-list; }
+.@{fa-css-prefix}-dedent:before,
+.@{fa-css-prefix}-outdent:before { content: @fa-var-outdent; }
+.@{fa-css-prefix}-indent:before { content: @fa-var-indent; }
+.@{fa-css-prefix}-video-camera:before { content: @fa-var-video-camera; }
+.@{fa-css-prefix}-photo:before,
+.@{fa-css-prefix}-image:before,
+.@{fa-css-prefix}-picture-o:before { content: @fa-var-picture-o; }
+.@{fa-css-prefix}-pencil:before { content: @fa-var-pencil; }
+.@{fa-css-prefix}-map-marker:before { content: @fa-var-map-marker; }
+.@{fa-css-prefix}-adjust:before { content: @fa-var-adjust; }
+.@{fa-css-prefix}-tint:before { content: @fa-var-tint; }
+.@{fa-css-prefix}-edit:before,
+.@{fa-css-prefix}-pencil-square-o:before { content: @fa-var-pencil-square-o; }
+.@{fa-css-prefix}-share-square-o:before { content: @fa-var-share-square-o; }
+.@{fa-css-prefix}-check-square-o:before { content: @fa-var-check-square-o; }
+.@{fa-css-prefix}-arrows:before { content: @fa-var-arrows; }
+.@{fa-css-prefix}-step-backward:before { content: @fa-var-step-backward; }
+.@{fa-css-prefix}-fast-backward:before { content: @fa-var-fast-backward; }
+.@{fa-css-prefix}-backward:before { content: @fa-var-backward; }
+.@{fa-css-prefix}-play:before { content: @fa-var-play; }
+.@{fa-css-prefix}-pause:before { content: @fa-var-pause; }
+.@{fa-css-prefix}-stop:before { content: @fa-var-stop; }
+.@{fa-css-prefix}-forward:before { content: @fa-var-forward; }
+.@{fa-css-prefix}-fast-forward:before { content: @fa-var-fast-forward; }
+.@{fa-css-prefix}-step-forward:before { content: @fa-var-step-forward; }
+.@{fa-css-prefix}-eject:before { content: @fa-var-eject; }
+.@{fa-css-prefix}-chevron-left:before { content: @fa-var-chevron-left; }
+.@{fa-css-prefix}-chevron-right:before { content: @fa-var-chevron-right; }
+.@{fa-css-prefix}-plus-circle:before { content: @fa-var-plus-circle; }
+.@{fa-css-prefix}-minus-circle:before { content: @fa-var-minus-circle; }
+.@{fa-css-prefix}-times-circle:before { content: @fa-var-times-circle; }
+.@{fa-css-prefix}-check-circle:before { content: @fa-var-check-circle; }
+.@{fa-css-prefix}-question-circle:before { content: @fa-var-question-circle; }
+.@{fa-css-prefix}-info-circle:before { content: @fa-var-info-circle; }
+.@{fa-css-prefix}-crosshairs:before { content: @fa-var-crosshairs; }
+.@{fa-css-prefix}-times-circle-o:before { content: @fa-var-times-circle-o; }
+.@{fa-css-prefix}-check-circle-o:before { content: @fa-var-check-circle-o; }
+.@{fa-css-prefix}-ban:before { content: @fa-var-ban; }
+.@{fa-css-prefix}-arrow-left:before { content: @fa-var-arrow-left; }
+.@{fa-css-prefix}-arrow-right:before { content: @fa-var-arrow-right; }
+.@{fa-css-prefix}-arrow-up:before { content: @fa-var-arrow-up; }
+.@{fa-css-prefix}-arrow-down:before { content: @fa-var-arrow-down; }
+.@{fa-css-prefix}-mail-forward:before,
+.@{fa-css-prefix}-share:before { content: @fa-var-share; }
+.@{fa-css-prefix}-expand:before { content: @fa-var-expand; }
+.@{fa-css-prefix}-compress:before { content: @fa-var-compress; }
+.@{fa-css-prefix}-plus:before { content: @fa-var-plus; }
+.@{fa-css-prefix}-minus:before { content: @fa-var-minus; }
+.@{fa-css-prefix}-asterisk:before { content: @fa-var-asterisk; }
+.@{fa-css-prefix}-exclamation-circle:before { content: @fa-var-exclamation-circle; }
+.@{fa-css-prefix}-gift:before { content: @fa-var-gift; }
+.@{fa-css-prefix}-leaf:before { content: @fa-var-leaf; }
+.@{fa-css-prefix}-fire:before { content: @fa-var-fire; }
+.@{fa-css-prefix}-eye:before { content: @fa-var-eye; }
+.@{fa-css-prefix}-eye-slash:before { content: @fa-var-eye-slash; }
+.@{fa-css-prefix}-warning:before,
+.@{fa-css-prefix}-exclamation-triangle:before { content: @fa-var-exclamation-triangle; }
+.@{fa-css-prefix}-plane:before { content: @fa-var-plane; }
+.@{fa-css-prefix}-calendar:before { content: @fa-var-calendar; }
+.@{fa-css-prefix}-random:before { content: @fa-var-random; }
+.@{fa-css-prefix}-comment:before { content: @fa-var-comment; }
+.@{fa-css-prefix}-magnet:before { content: @fa-var-magnet; }
+.@{fa-css-prefix}-chevron-up:before { content: @fa-var-chevron-up; }
+.@{fa-css-prefix}-chevron-down:before { content: @fa-var-chevron-down; }
+.@{fa-css-prefix}-retweet:before { content: @fa-var-retweet; }
+.@{fa-css-prefix}-shopping-cart:before { content: @fa-var-shopping-cart; }
+.@{fa-css-prefix}-folder:before { content: @fa-var-folder; }
+.@{fa-css-prefix}-folder-open:before { content: @fa-var-folder-open; }
+.@{fa-css-prefix}-arrows-v:before { content: @fa-var-arrows-v; }
+.@{fa-css-prefix}-arrows-h:before { content: @fa-var-arrows-h; }
+.@{fa-css-prefix}-bar-chart-o:before,
+.@{fa-css-prefix}-bar-chart:before { content: @fa-var-bar-chart; }
+.@{fa-css-prefix}-twitter-square:before { content: @fa-var-twitter-square; }
+.@{fa-css-prefix}-facebook-square:before { content: @fa-var-facebook-square; }
+.@{fa-css-prefix}-camera-retro:before { content: @fa-var-camera-retro; }
+.@{fa-css-prefix}-key:before { content: @fa-var-key; }
+.@{fa-css-prefix}-gears:before,
+.@{fa-css-prefix}-cogs:before { content: @fa-var-cogs; }
+.@{fa-css-prefix}-comments:before { content: @fa-var-comments; }
+.@{fa-css-prefix}-thumbs-o-up:before { content: @fa-var-thumbs-o-up; }
+.@{fa-css-prefix}-thumbs-o-down:before { content: @fa-var-thumbs-o-down; }
+.@{fa-css-prefix}-star-half:before { content: @fa-var-star-half; }
+.@{fa-css-prefix}-heart-o:before { content: @fa-var-heart-o; }
+.@{fa-css-prefix}-sign-out:before { content: @fa-var-sign-out; }
+.@{fa-css-prefix}-linkedin-square:before { content: @fa-var-linkedin-square; }
+.@{fa-css-prefix}-thumb-tack:before { content: @fa-var-thumb-tack; }
+.@{fa-css-prefix}-external-link:before { content: @fa-var-external-link; }
+.@{fa-css-prefix}-sign-in:before { content: @fa-var-sign-in; }
+.@{fa-css-prefix}-trophy:before { content: @fa-var-trophy; }
+.@{fa-css-prefix}-github-square:before { content: @fa-var-github-square; }
+.@{fa-css-prefix}-upload:before { content: @fa-var-upload; }
+.@{fa-css-prefix}-lemon-o:before { content: @fa-var-lemon-o; }
+.@{fa-css-prefix}-phone:before { content: @fa-var-phone; }
+.@{fa-css-prefix}-square-o:before { content: @fa-var-square-o; }
+.@{fa-css-prefix}-bookmark-o:before { content: @fa-var-bookmark-o; }
+.@{fa-css-prefix}-phone-square:before { content: @fa-var-phone-square; }
+.@{fa-css-prefix}-twitter:before { content: @fa-var-twitter; }
+.@{fa-css-prefix}-facebook-f:before,
+.@{fa-css-prefix}-facebook:before { content: @fa-var-facebook; }
+.@{fa-css-prefix}-github:before { content: @fa-var-github; }
+.@{fa-css-prefix}-unlock:before { content: @fa-var-unlock; }
+.@{fa-css-prefix}-credit-card:before { content: @fa-var-credit-card; }
+.@{fa-css-prefix}-feed:before,
+.@{fa-css-prefix}-rss:before { content: @fa-var-rss; }
+.@{fa-css-prefix}-hdd-o:before { content: @fa-var-hdd-o; }
+.@{fa-css-prefix}-bullhorn:before { content: @fa-var-bullhorn; }
+.@{fa-css-prefix}-bell:before { content: @fa-var-bell; }
+.@{fa-css-prefix}-certificate:before { content: @fa-var-certificate; }
+.@{fa-css-prefix}-hand-o-right:before { content: @fa-var-hand-o-right; }
+.@{fa-css-prefix}-hand-o-left:before { content: @fa-var-hand-o-left; }
+.@{fa-css-prefix}-hand-o-up:before { content: @fa-var-hand-o-up; }
+.@{fa-css-prefix}-hand-o-down:before { content: @fa-var-hand-o-down; }
+.@{fa-css-prefix}-arrow-circle-left:before { content: @fa-var-arrow-circle-left; }
+.@{fa-css-prefix}-arrow-circle-right:before { content: @fa-var-arrow-circle-right; }
+.@{fa-css-prefix}-arrow-circle-up:before { content: @fa-var-arrow-circle-up; }
+.@{fa-css-prefix}-arrow-circle-down:before { content: @fa-var-arrow-circle-down; }
+.@{fa-css-prefix}-globe:before { content: @fa-var-globe; }
+.@{fa-css-prefix}-wrench:before { content: @fa-var-wrench; }
+.@{fa-css-prefix}-tasks:before { content: @fa-var-tasks; }
+.@{fa-css-prefix}-filter:before { content: @fa-var-filter; }
+.@{fa-css-prefix}-briefcase:before { content: @fa-var-briefcase; }
+.@{fa-css-prefix}-arrows-alt:before { content: @fa-var-arrows-alt; }
+.@{fa-css-prefix}-group:before,
+.@{fa-css-prefix}-users:before { content: @fa-var-users; }
+.@{fa-css-prefix}-chain:before,
+.@{fa-css-prefix}-link:before { content: @fa-var-link; }
+.@{fa-css-prefix}-cloud:before { content: @fa-var-cloud; }
+.@{fa-css-prefix}-flask:before { content: @fa-var-flask; }
+.@{fa-css-prefix}-cut:before,
+.@{fa-css-prefix}-scissors:before { content: @fa-var-scissors; }
+.@{fa-css-prefix}-copy:before,
+.@{fa-css-prefix}-files-o:before { content: @fa-var-files-o; }
+.@{fa-css-prefix}-paperclip:before { content: @fa-var-paperclip; }
+.@{fa-css-prefix}-save:before,
+.@{fa-css-prefix}-floppy-o:before { content: @fa-var-floppy-o; }
+.@{fa-css-prefix}-square:before { content: @fa-var-square; }
+.@{fa-css-prefix}-navicon:before,
+.@{fa-css-prefix}-reorder:before,
+.@{fa-css-prefix}-bars:before { content: @fa-var-bars; }
+.@{fa-css-prefix}-list-ul:before { content: @fa-var-list-ul; }
+.@{fa-css-prefix}-list-ol:before { content: @fa-var-list-ol; }
+.@{fa-css-prefix}-strikethrough:before { content: @fa-var-strikethrough; }
+.@{fa-css-prefix}-underline:before { content: @fa-var-underline; }
+.@{fa-css-prefix}-table:before { content: @fa-var-table; }
+.@{fa-css-prefix}-magic:before { content: @fa-var-magic; }
+.@{fa-css-prefix}-truck:before { content: @fa-var-truck; }
+.@{fa-css-prefix}-pinterest:before { content: @fa-var-pinterest; }
+.@{fa-css-prefix}-pinterest-square:before { content: @fa-var-pinterest-square; }
+.@{fa-css-prefix}-google-plus-square:before { content: @fa-var-google-plus-square; }
+.@{fa-css-prefix}-google-plus:before { content: @fa-var-google-plus; }
+.@{fa-css-prefix}-money:before { content: @fa-var-money; }
+.@{fa-css-prefix}-caret-down:before { content: @fa-var-caret-down; }
+.@{fa-css-prefix}-caret-up:before { content: @fa-var-caret-up; }
+.@{fa-css-prefix}-caret-left:before { content: @fa-var-caret-left; }
+.@{fa-css-prefix}-caret-right:before { content: @fa-var-caret-right; }
+.@{fa-css-prefix}-columns:before { content: @fa-var-columns; }
+.@{fa-css-prefix}-unsorted:before,
+.@{fa-css-prefix}-sort:before { content: @fa-var-sort; }
+.@{fa-css-prefix}-sort-down:before,
+.@{fa-css-prefix}-sort-desc:before { content: @fa-var-sort-desc; }
+.@{fa-css-prefix}-sort-up:before,
+.@{fa-css-prefix}-sort-asc:before { content: @fa-var-sort-asc; }
+.@{fa-css-prefix}-envelope:before { content: @fa-var-envelope; }
+.@{fa-css-prefix}-linkedin:before { content: @fa-var-linkedin; }
+.@{fa-css-prefix}-rotate-left:before,
+.@{fa-css-prefix}-undo:before { content: @fa-var-undo; }
+.@{fa-css-prefix}-legal:before,
+.@{fa-css-prefix}-gavel:before { content: @fa-var-gavel; }
+.@{fa-css-prefix}-dashboard:before,
+.@{fa-css-prefix}-tachometer:before { content: @fa-var-tachometer; }
+.@{fa-css-prefix}-comment-o:before { content: @fa-var-comment-o; }
+.@{fa-css-prefix}-comments-o:before { content: @fa-var-comments-o; }
+.@{fa-css-prefix}-flash:before,
+.@{fa-css-prefix}-bolt:before { content: @fa-var-bolt; }
+.@{fa-css-prefix}-sitemap:before { content: @fa-var-sitemap; }
+.@{fa-css-prefix}-umbrella:before { content: @fa-var-umbrella; }
+.@{fa-css-prefix}-paste:before,
+.@{fa-css-prefix}-clipboard:before { content: @fa-var-clipboard; }
+.@{fa-css-prefix}-lightbulb-o:before { content: @fa-var-lightbulb-o; }
+.@{fa-css-prefix}-exchange:before { content: @fa-var-exchange; }
+.@{fa-css-prefix}-cloud-download:before { content: @fa-var-cloud-download; }
+.@{fa-css-prefix}-cloud-upload:before { content: @fa-var-cloud-upload; }
+.@{fa-css-prefix}-user-md:before { content: @fa-var-user-md; }
+.@{fa-css-prefix}-stethoscope:before { content: @fa-var-stethoscope; }
+.@{fa-css-prefix}-suitcase:before { content: @fa-var-suitcase; }
+.@{fa-css-prefix}-bell-o:before { content: @fa-var-bell-o; }
+.@{fa-css-prefix}-coffee:before { content: @fa-var-coffee; }
+.@{fa-css-prefix}-cutlery:before { content: @fa-var-cutlery; }
+.@{fa-css-prefix}-file-text-o:before { content: @fa-var-file-text-o; }
+.@{fa-css-prefix}-building-o:before { content: @fa-var-building-o; }
+.@{fa-css-prefix}-hospital-o:before { content: @fa-var-hospital-o; }
+.@{fa-css-prefix}-ambulance:before { content: @fa-var-ambulance; }
+.@{fa-css-prefix}-medkit:before { content: @fa-var-medkit; }
+.@{fa-css-prefix}-fighter-jet:before { content: @fa-var-fighter-jet; }
+.@{fa-css-prefix}-beer:before { content: @fa-var-beer; }
+.@{fa-css-prefix}-h-square:before { content: @fa-var-h-square; }
+.@{fa-css-prefix}-plus-square:before { content: @fa-var-plus-square; }
+.@{fa-css-prefix}-angle-double-left:before { content: @fa-var-angle-double-left; }
+.@{fa-css-prefix}-angle-double-right:before { content: @fa-var-angle-double-right; }
+.@{fa-css-prefix}-angle-double-up:before { content: @fa-var-angle-double-up; }
+.@{fa-css-prefix}-angle-double-down:before { content: @fa-var-angle-double-down; }
+.@{fa-css-prefix}-angle-left:before { content: @fa-var-angle-left; }
+.@{fa-css-prefix}-angle-right:before { content: @fa-var-angle-right; }
+.@{fa-css-prefix}-angle-up:before { content: @fa-var-angle-up; }
+.@{fa-css-prefix}-angle-down:before { content: @fa-var-angle-down; }
+.@{fa-css-prefix}-desktop:before { content: @fa-var-desktop; }
+.@{fa-css-prefix}-laptop:before { content: @fa-var-laptop; }
+.@{fa-css-prefix}-tablet:before { content: @fa-var-tablet; }
+.@{fa-css-prefix}-mobile-phone:before,
+.@{fa-css-prefix}-mobile:before { content: @fa-var-mobile; }
+.@{fa-css-prefix}-circle-o:before { content: @fa-var-circle-o; }
+.@{fa-css-prefix}-quote-left:before { content: @fa-var-quote-left; }
+.@{fa-css-prefix}-quote-right:before { content: @fa-var-quote-right; }
+.@{fa-css-prefix}-spinner:before { content: @fa-var-spinner; }
+.@{fa-css-prefix}-circle:before { content: @fa-var-circle; }
+.@{fa-css-prefix}-mail-reply:before,
+.@{fa-css-prefix}-reply:before { content: @fa-var-reply; }
+.@{fa-css-prefix}-github-alt:before { content: @fa-var-github-alt; }
+.@{fa-css-prefix}-folder-o:before { content: @fa-var-folder-o; }
+.@{fa-css-prefix}-folder-open-o:before { content: @fa-var-folder-open-o; }
+.@{fa-css-prefix}-smile-o:before { content: @fa-var-smile-o; }
+.@{fa-css-prefix}-frown-o:before { content: @fa-var-frown-o; }
+.@{fa-css-prefix}-meh-o:before { content: @fa-var-meh-o; }
+.@{fa-css-prefix}-gamepad:before { content: @fa-var-gamepad; }
+.@{fa-css-prefix}-keyboard-o:before { content: @fa-var-keyboard-o; }
+.@{fa-css-prefix}-flag-o:before { content: @fa-var-flag-o; }
+.@{fa-css-prefix}-flag-checkered:before { content: @fa-var-flag-checkered; }
+.@{fa-css-prefix}-terminal:before { content: @fa-var-terminal; }
+.@{fa-css-prefix}-code:before { content: @fa-var-code; }
+.@{fa-css-prefix}-mail-reply-all:before,
+.@{fa-css-prefix}-reply-all:before { content: @fa-var-reply-all; }
+.@{fa-css-prefix}-star-half-empty:before,
+.@{fa-css-prefix}-star-half-full:before,
+.@{fa-css-prefix}-star-half-o:before { content: @fa-var-star-half-o; }
+.@{fa-css-prefix}-location-arrow:before { content: @fa-var-location-arrow; }
+.@{fa-css-prefix}-crop:before { content: @fa-var-crop; }
+.@{fa-css-prefix}-code-fork:before { content: @fa-var-code-fork; }
+.@{fa-css-prefix}-unlink:before,
+.@{fa-css-prefix}-chain-broken:before { content: @fa-var-chain-broken; }
+.@{fa-css-prefix}-question:before { content: @fa-var-question; }
+.@{fa-css-prefix}-info:before { content: @fa-var-info; }
+.@{fa-css-prefix}-exclamation:before { content: @fa-var-exclamation; }
+.@{fa-css-prefix}-superscript:before { content: @fa-var-superscript; }
+.@{fa-css-prefix}-subscript:before { content: @fa-var-subscript; }
+.@{fa-css-prefix}-eraser:before { content: @fa-var-eraser; }
+.@{fa-css-prefix}-puzzle-piece:before { content: @fa-var-puzzle-piece; }
+.@{fa-css-prefix}-microphone:before { content: @fa-var-microphone; }
+.@{fa-css-prefix}-microphone-slash:before { content: @fa-var-microphone-slash; }
+.@{fa-css-prefix}-shield:before { content: @fa-var-shield; }
+.@{fa-css-prefix}-calendar-o:before { content: @fa-var-calendar-o; }
+.@{fa-css-prefix}-fire-extinguisher:before { content: @fa-var-fire-extinguisher; }
+.@{fa-css-prefix}-rocket:before { content: @fa-var-rocket; }
+.@{fa-css-prefix}-maxcdn:before { content: @fa-var-maxcdn; }
+.@{fa-css-prefix}-chevron-circle-left:before { content: @fa-var-chevron-circle-left; }
+.@{fa-css-prefix}-chevron-circle-right:before { content: @fa-var-chevron-circle-right; }
+.@{fa-css-prefix}-chevron-circle-up:before { content: @fa-var-chevron-circle-up; }
+.@{fa-css-prefix}-chevron-circle-down:before { content: @fa-var-chevron-circle-down; }
+.@{fa-css-prefix}-html5:before { content: @fa-var-html5; }
+.@{fa-css-prefix}-css3:before { content: @fa-var-css3; }
+.@{fa-css-prefix}-anchor:before { content: @fa-var-anchor; }
+.@{fa-css-prefix}-unlock-alt:before { content: @fa-var-unlock-alt; }
+.@{fa-css-prefix}-bullseye:before { content: @fa-var-bullseye; }
+.@{fa-css-prefix}-ellipsis-h:before { content: @fa-var-ellipsis-h; }
+.@{fa-css-prefix}-ellipsis-v:before { content: @fa-var-ellipsis-v; }
+.@{fa-css-prefix}-rss-square:before { content: @fa-var-rss-square; }
+.@{fa-css-prefix}-play-circle:before { content: @fa-var-play-circle; }
+.@{fa-css-prefix}-ticket:before { content: @fa-var-ticket; }
+.@{fa-css-prefix}-minus-square:before { content: @fa-var-minus-square; }
+.@{fa-css-prefix}-minus-square-o:before { content: @fa-var-minus-square-o; }
+.@{fa-css-prefix}-level-up:before { content: @fa-var-level-up; }
+.@{fa-css-prefix}-level-down:before { content: @fa-var-level-down; }
+.@{fa-css-prefix}-check-square:before { content: @fa-var-check-square; }
+.@{fa-css-prefix}-pencil-square:before { content: @fa-var-pencil-square; }
+.@{fa-css-prefix}-external-link-square:before { content: @fa-var-external-link-square; }
+.@{fa-css-prefix}-share-square:before { content: @fa-var-share-square; }
+.@{fa-css-prefix}-compass:before { content: @fa-var-compass; }
+.@{fa-css-prefix}-toggle-down:before,
+.@{fa-css-prefix}-caret-square-o-down:before { content: @fa-var-caret-square-o-down; }
+.@{fa-css-prefix}-toggle-up:before,
+.@{fa-css-prefix}-caret-square-o-up:before { content: @fa-var-caret-square-o-up; }
+.@{fa-css-prefix}-toggle-right:before,
+.@{fa-css-prefix}-caret-square-o-right:before { content: @fa-var-caret-square-o-right; }
+.@{fa-css-prefix}-euro:before,
+.@{fa-css-prefix}-eur:before { content: @fa-var-eur; }
+.@{fa-css-prefix}-gbp:before { content: @fa-var-gbp; }
+.@{fa-css-prefix}-dollar:before,
+.@{fa-css-prefix}-usd:before { content: @fa-var-usd; }
+.@{fa-css-prefix}-rupee:before,
+.@{fa-css-prefix}-inr:before { content: @fa-var-inr; }
+.@{fa-css-prefix}-cny:before,
+.@{fa-css-prefix}-rmb:before,
+.@{fa-css-prefix}-yen:before,
+.@{fa-css-prefix}-jpy:before { content: @fa-var-jpy; }
+.@{fa-css-prefix}-ruble:before,
+.@{fa-css-prefix}-rouble:before,
+.@{fa-css-prefix}-rub:before { content: @fa-var-rub; }
+.@{fa-css-prefix}-won:before,
+.@{fa-css-prefix}-krw:before { content: @fa-var-krw; }
+.@{fa-css-prefix}-bitcoin:before,
+.@{fa-css-prefix}-btc:before { content: @fa-var-btc; }
+.@{fa-css-prefix}-file:before { content: @fa-var-file; }
+.@{fa-css-prefix}-file-text:before { content: @fa-var-file-text; }
+.@{fa-css-prefix}-sort-alpha-asc:before { content: @fa-var-sort-alpha-asc; }
+.@{fa-css-prefix}-sort-alpha-desc:before { content: @fa-var-sort-alpha-desc; }
+.@{fa-css-prefix}-sort-amount-asc:before { content: @fa-var-sort-amount-asc; }
+.@{fa-css-prefix}-sort-amount-desc:before { content: @fa-var-sort-amount-desc; }
+.@{fa-css-prefix}-sort-numeric-asc:before { content: @fa-var-sort-numeric-asc; }
+.@{fa-css-prefix}-sort-numeric-desc:before { content: @fa-var-sort-numeric-desc; }
+.@{fa-css-prefix}-thumbs-up:before { content: @fa-var-thumbs-up; }
+.@{fa-css-prefix}-thumbs-down:before { content: @fa-var-thumbs-down; }
+.@{fa-css-prefix}-youtube-square:before { content: @fa-var-youtube-square; }
+.@{fa-css-prefix}-youtube:before { content: @fa-var-youtube; }
+.@{fa-css-prefix}-xing:before { content: @fa-var-xing; }
+.@{fa-css-prefix}-xing-square:before { content: @fa-var-xing-square; }
+.@{fa-css-prefix}-youtube-play:before { content: @fa-var-youtube-play; }
+.@{fa-css-prefix}-dropbox:before { content: @fa-var-dropbox; }
+.@{fa-css-prefix}-stack-overflow:before { content: @fa-var-stack-overflow; }
+.@{fa-css-prefix}-instagram:before { content: @fa-var-instagram; }
+.@{fa-css-prefix}-flickr:before { content: @fa-var-flickr; }
+.@{fa-css-prefix}-adn:before { content: @fa-var-adn; }
+.@{fa-css-prefix}-bitbucket:before { content: @fa-var-bitbucket; }
+.@{fa-css-prefix}-bitbucket-square:before { content: @fa-var-bitbucket-square; }
+.@{fa-css-prefix}-tumblr:before { content: @fa-var-tumblr; }
+.@{fa-css-prefix}-tumblr-square:before { content: @fa-var-tumblr-square; }
+.@{fa-css-prefix}-long-arrow-down:before { content: @fa-var-long-arrow-down; }
+.@{fa-css-prefix}-long-arrow-up:before { content: @fa-var-long-arrow-up; }
+.@{fa-css-prefix}-long-arrow-left:before { content: @fa-var-long-arrow-left; }
+.@{fa-css-prefix}-long-arrow-right:before { content: @fa-var-long-arrow-right; }
+.@{fa-css-prefix}-apple:before { content: @fa-var-apple; }
+.@{fa-css-prefix}-windows:before { content: @fa-var-windows; }
+.@{fa-css-prefix}-android:before { content: @fa-var-android; }
+.@{fa-css-prefix}-linux:before { content: @fa-var-linux; }
+.@{fa-css-prefix}-dribbble:before { content: @fa-var-dribbble; }
+.@{fa-css-prefix}-skype:before { content: @fa-var-skype; }
+.@{fa-css-prefix}-foursquare:before { content: @fa-var-foursquare; }
+.@{fa-css-prefix}-trello:before { content: @fa-var-trello; }
+.@{fa-css-prefix}-female:before { content: @fa-var-female; }
+.@{fa-css-prefix}-male:before { content: @fa-var-male; }
+.@{fa-css-prefix}-gittip:before,
+.@{fa-css-prefix}-gratipay:before { content: @fa-var-gratipay; }
+.@{fa-css-prefix}-sun-o:before { content: @fa-var-sun-o; }
+.@{fa-css-prefix}-moon-o:before { content: @fa-var-moon-o; }
+.@{fa-css-prefix}-archive:before { content: @fa-var-archive; }
+.@{fa-css-prefix}-bug:before { content: @fa-var-bug; }
+.@{fa-css-prefix}-vk:before { content: @fa-var-vk; }
+.@{fa-css-prefix}-weibo:before { content: @fa-var-weibo; }
+.@{fa-css-prefix}-renren:before { content: @fa-var-renren; }
+.@{fa-css-prefix}-pagelines:before { content: @fa-var-pagelines; }
+.@{fa-css-prefix}-stack-exchange:before { content: @fa-var-stack-exchange; }
+.@{fa-css-prefix}-arrow-circle-o-right:before { content: @fa-var-arrow-circle-o-right; }
+.@{fa-css-prefix}-arrow-circle-o-left:before { content: @fa-var-arrow-circle-o-left; }
+.@{fa-css-prefix}-toggle-left:before,
+.@{fa-css-prefix}-caret-square-o-left:before { content: @fa-var-caret-square-o-left; }
+.@{fa-css-prefix}-dot-circle-o:before { content: @fa-var-dot-circle-o; }
+.@{fa-css-prefix}-wheelchair:before { content: @fa-var-wheelchair; }
+.@{fa-css-prefix}-vimeo-square:before { content: @fa-var-vimeo-square; }
+.@{fa-css-prefix}-turkish-lira:before,
+.@{fa-css-prefix}-try:before { content: @fa-var-try; }
+.@{fa-css-prefix}-plus-square-o:before { content: @fa-var-plus-square-o; }
+.@{fa-css-prefix}-space-shuttle:before { content: @fa-var-space-shuttle; }
+.@{fa-css-prefix}-slack:before { content: @fa-var-slack; }
+.@{fa-css-prefix}-envelope-square:before { content: @fa-var-envelope-square; }
+.@{fa-css-prefix}-wordpress:before { content: @fa-var-wordpress; }
+.@{fa-css-prefix}-openid:before { content: @fa-var-openid; }
+.@{fa-css-prefix}-institution:before,
+.@{fa-css-prefix}-bank:before,
+.@{fa-css-prefix}-university:before { content: @fa-var-university; }
+.@{fa-css-prefix}-mortar-board:before,
+.@{fa-css-prefix}-graduation-cap:before { content: @fa-var-graduation-cap; }
+.@{fa-css-prefix}-yahoo:before { content: @fa-var-yahoo; }
+.@{fa-css-prefix}-google:before { content: @fa-var-google; }
+.@{fa-css-prefix}-reddit:before { content: @fa-var-reddit; }
+.@{fa-css-prefix}-reddit-square:before { content: @fa-var-reddit-square; }
+.@{fa-css-prefix}-stumbleupon-circle:before { content: @fa-var-stumbleupon-circle; }
+.@{fa-css-prefix}-stumbleupon:before { content: @fa-var-stumbleupon; }
+.@{fa-css-prefix}-delicious:before { content: @fa-var-delicious; }
+.@{fa-css-prefix}-digg:before { content: @fa-var-digg; }
+.@{fa-css-prefix}-pied-piper:before { content: @fa-var-pied-piper; }
+.@{fa-css-prefix}-pied-piper-alt:before { content: @fa-var-pied-piper-alt; }
+.@{fa-css-prefix}-drupal:before { content: @fa-var-drupal; }
+.@{fa-css-prefix}-joomla:before { content: @fa-var-joomla; }
+.@{fa-css-prefix}-language:before { content: @fa-var-language; }
+.@{fa-css-prefix}-fax:before { content: @fa-var-fax; }
+.@{fa-css-prefix}-building:before { content: @fa-var-building; }
+.@{fa-css-prefix}-child:before { content: @fa-var-child; }
+.@{fa-css-prefix}-paw:before { content: @fa-var-paw; }
+.@{fa-css-prefix}-spoon:before { content: @fa-var-spoon; }
+.@{fa-css-prefix}-cube:before { content: @fa-var-cube; }
+.@{fa-css-prefix}-cubes:before { content: @fa-var-cubes; }
+.@{fa-css-prefix}-behance:before { content: @fa-var-behance; }
+.@{fa-css-prefix}-behance-square:before { content: @fa-var-behance-square; }
+.@{fa-css-prefix}-steam:before { content: @fa-var-steam; }
+.@{fa-css-prefix}-steam-square:before { content: @fa-var-steam-square; }
+.@{fa-css-prefix}-recycle:before { content: @fa-var-recycle; }
+.@{fa-css-prefix}-automobile:before,
+.@{fa-css-prefix}-car:before { content: @fa-var-car; }
+.@{fa-css-prefix}-cab:before,
+.@{fa-css-prefix}-taxi:before { content: @fa-var-taxi; }
+.@{fa-css-prefix}-tree:before { content: @fa-var-tree; }
+.@{fa-css-prefix}-spotify:before { content: @fa-var-spotify; }
+.@{fa-css-prefix}-deviantart:before { content: @fa-var-deviantart; }
+.@{fa-css-prefix}-soundcloud:before { content: @fa-var-soundcloud; }
+.@{fa-css-prefix}-database:before { content: @fa-var-database; }
+.@{fa-css-prefix}-file-pdf-o:before { content: @fa-var-file-pdf-o; }
+.@{fa-css-prefix}-file-word-o:before { content: @fa-var-file-word-o; }
+.@{fa-css-prefix}-file-excel-o:before { content: @fa-var-file-excel-o; }
+.@{fa-css-prefix}-file-powerpoint-o:before { content: @fa-var-file-powerpoint-o; }
+.@{fa-css-prefix}-file-photo-o:before,
+.@{fa-css-prefix}-file-picture-o:before,
+.@{fa-css-prefix}-file-image-o:before { content: @fa-var-file-image-o; }
+.@{fa-css-prefix}-file-zip-o:before,
+.@{fa-css-prefix}-file-archive-o:before { content: @fa-var-file-archive-o; }
+.@{fa-css-prefix}-file-sound-o:before,
+.@{fa-css-prefix}-file-audio-o:before { content: @fa-var-file-audio-o; }
+.@{fa-css-prefix}-file-movie-o:before,
+.@{fa-css-prefix}-file-video-o:before { content: @fa-var-file-video-o; }
+.@{fa-css-prefix}-file-code-o:before { content: @fa-var-file-code-o; }
+.@{fa-css-prefix}-vine:before { content: @fa-var-vine; }
+.@{fa-css-prefix}-codepen:before { content: @fa-var-codepen; }
+.@{fa-css-prefix}-jsfiddle:before { content: @fa-var-jsfiddle; }
+.@{fa-css-prefix}-life-bouy:before,
+.@{fa-css-prefix}-life-buoy:before,
+.@{fa-css-prefix}-life-saver:before,
+.@{fa-css-prefix}-support:before,
+.@{fa-css-prefix}-life-ring:before { content: @fa-var-life-ring; }
+.@{fa-css-prefix}-circle-o-notch:before { content: @fa-var-circle-o-notch; }
+.@{fa-css-prefix}-ra:before,
+.@{fa-css-prefix}-rebel:before { content: @fa-var-rebel; }
+.@{fa-css-prefix}-ge:before,
+.@{fa-css-prefix}-empire:before { content: @fa-var-empire; }
+.@{fa-css-prefix}-git-square:before { content: @fa-var-git-square; }
+.@{fa-css-prefix}-git:before { content: @fa-var-git; }
+.@{fa-css-prefix}-y-combinator-square:before,
+.@{fa-css-prefix}-yc-square:before,
+.@{fa-css-prefix}-hacker-news:before { content: @fa-var-hacker-news; }
+.@{fa-css-prefix}-tencent-weibo:before { content: @fa-var-tencent-weibo; }
+.@{fa-css-prefix}-qq:before { content: @fa-var-qq; }
+.@{fa-css-prefix}-wechat:before,
+.@{fa-css-prefix}-weixin:before { content: @fa-var-weixin; }
+.@{fa-css-prefix}-send:before,
+.@{fa-css-prefix}-paper-plane:before { content: @fa-var-paper-plane; }
+.@{fa-css-prefix}-send-o:before,
+.@{fa-css-prefix}-paper-plane-o:before { content: @fa-var-paper-plane-o; }
+.@{fa-css-prefix}-history:before { content: @fa-var-history; }
+.@{fa-css-prefix}-circle-thin:before { content: @fa-var-circle-thin; }
+.@{fa-css-prefix}-header:before { content: @fa-var-header; }
+.@{fa-css-prefix}-paragraph:before { content: @fa-var-paragraph; }
+.@{fa-css-prefix}-sliders:before { content: @fa-var-sliders; }
+.@{fa-css-prefix}-share-alt:before { content: @fa-var-share-alt; }
+.@{fa-css-prefix}-share-alt-square:before { content: @fa-var-share-alt-square; }
+.@{fa-css-prefix}-bomb:before { content: @fa-var-bomb; }
+.@{fa-css-prefix}-soccer-ball-o:before,
+.@{fa-css-prefix}-futbol-o:before { content: @fa-var-futbol-o; }
+.@{fa-css-prefix}-tty:before { content: @fa-var-tty; }
+.@{fa-css-prefix}-binoculars:before { content: @fa-var-binoculars; }
+.@{fa-css-prefix}-plug:before { content: @fa-var-plug; }
+.@{fa-css-prefix}-slideshare:before { content: @fa-var-slideshare; }
+.@{fa-css-prefix}-twitch:before { content: @fa-var-twitch; }
+.@{fa-css-prefix}-yelp:before { content: @fa-var-yelp; }
+.@{fa-css-prefix}-newspaper-o:before { content: @fa-var-newspaper-o; }
+.@{fa-css-prefix}-wifi:before { content: @fa-var-wifi; }
+.@{fa-css-prefix}-calculator:before { content: @fa-var-calculator; }
+.@{fa-css-prefix}-paypal:before { content: @fa-var-paypal; }
+.@{fa-css-prefix}-google-wallet:before { content: @fa-var-google-wallet; }
+.@{fa-css-prefix}-cc-visa:before { content: @fa-var-cc-visa; }
+.@{fa-css-prefix}-cc-mastercard:before { content: @fa-var-cc-mastercard; }
+.@{fa-css-prefix}-cc-discover:before { content: @fa-var-cc-discover; }
+.@{fa-css-prefix}-cc-amex:before { content: @fa-var-cc-amex; }
+.@{fa-css-prefix}-cc-paypal:before { content: @fa-var-cc-paypal; }
+.@{fa-css-prefix}-cc-stripe:before { content: @fa-var-cc-stripe; }
+.@{fa-css-prefix}-bell-slash:before { content: @fa-var-bell-slash; }
+.@{fa-css-prefix}-bell-slash-o:before { content: @fa-var-bell-slash-o; }
+.@{fa-css-prefix}-trash:before { content: @fa-var-trash; }
+.@{fa-css-prefix}-copyright:before { content: @fa-var-copyright; }
+.@{fa-css-prefix}-at:before { content: @fa-var-at; }
+.@{fa-css-prefix}-eyedropper:before { content: @fa-var-eyedropper; }
+.@{fa-css-prefix}-paint-brush:before { content: @fa-var-paint-brush; }
+.@{fa-css-prefix}-birthday-cake:before { content: @fa-var-birthday-cake; }
+.@{fa-css-prefix}-area-chart:before { content: @fa-var-area-chart; }
+.@{fa-css-prefix}-pie-chart:before { content: @fa-var-pie-chart; }
+.@{fa-css-prefix}-line-chart:before { content: @fa-var-line-chart; }
+.@{fa-css-prefix}-lastfm:before { content: @fa-var-lastfm; }
+.@{fa-css-prefix}-lastfm-square:before { content: @fa-var-lastfm-square; }
+.@{fa-css-prefix}-toggle-off:before { content: @fa-var-toggle-off; }
+.@{fa-css-prefix}-toggle-on:before { content: @fa-var-toggle-on; }
+.@{fa-css-prefix}-bicycle:before { content: @fa-var-bicycle; }
+.@{fa-css-prefix}-bus:before { content: @fa-var-bus; }
+.@{fa-css-prefix}-ioxhost:before { content: @fa-var-ioxhost; }
+.@{fa-css-prefix}-angellist:before { content: @fa-var-angellist; }
+.@{fa-css-prefix}-cc:before { content: @fa-var-cc; }
+.@{fa-css-prefix}-shekel:before,
+.@{fa-css-prefix}-sheqel:before,
+.@{fa-css-prefix}-ils:before { content: @fa-var-ils; }
+.@{fa-css-prefix}-meanpath:before { content: @fa-var-meanpath; }
+.@{fa-css-prefix}-buysellads:before { content: @fa-var-buysellads; }
+.@{fa-css-prefix}-connectdevelop:before { content: @fa-var-connectdevelop; }
+.@{fa-css-prefix}-dashcube:before { content: @fa-var-dashcube; }
+.@{fa-css-prefix}-forumbee:before { content: @fa-var-forumbee; }
+.@{fa-css-prefix}-leanpub:before { content: @fa-var-leanpub; }
+.@{fa-css-prefix}-sellsy:before { content: @fa-var-sellsy; }
+.@{fa-css-prefix}-shirtsinbulk:before { content: @fa-var-shirtsinbulk; }
+.@{fa-css-prefix}-simplybuilt:before { content: @fa-var-simplybuilt; }
+.@{fa-css-prefix}-skyatlas:before { content: @fa-var-skyatlas; }
+.@{fa-css-prefix}-cart-plus:before { content: @fa-var-cart-plus; }
+.@{fa-css-prefix}-cart-arrow-down:before { content: @fa-var-cart-arrow-down; }
+.@{fa-css-prefix}-diamond:before { content: @fa-var-diamond; }
+.@{fa-css-prefix}-ship:before { content: @fa-var-ship; }
+.@{fa-css-prefix}-user-secret:before { content: @fa-var-user-secret; }
+.@{fa-css-prefix}-motorcycle:before { content: @fa-var-motorcycle; }
+.@{fa-css-prefix}-street-view:before { content: @fa-var-street-view; }
+.@{fa-css-prefix}-heartbeat:before { content: @fa-var-heartbeat; }
+.@{fa-css-prefix}-venus:before { content: @fa-var-venus; }
+.@{fa-css-prefix}-mars:before { content: @fa-var-mars; }
+.@{fa-css-prefix}-mercury:before { content: @fa-var-mercury; }
+.@{fa-css-prefix}-intersex:before,
+.@{fa-css-prefix}-transgender:before { content: @fa-var-transgender; }
+.@{fa-css-prefix}-transgender-alt:before { content: @fa-var-transgender-alt; }
+.@{fa-css-prefix}-venus-double:before { content: @fa-var-venus-double; }
+.@{fa-css-prefix}-mars-double:before { content: @fa-var-mars-double; }
+.@{fa-css-prefix}-venus-mars:before { content: @fa-var-venus-mars; }
+.@{fa-css-prefix}-mars-stroke:before { content: @fa-var-mars-stroke; }
+.@{fa-css-prefix}-mars-stroke-v:before { content: @fa-var-mars-stroke-v; }
+.@{fa-css-prefix}-mars-stroke-h:before { content: @fa-var-mars-stroke-h; }
+.@{fa-css-prefix}-neuter:before { content: @fa-var-neuter; }
+.@{fa-css-prefix}-genderless:before { content: @fa-var-genderless; }
+.@{fa-css-prefix}-facebook-official:before { content: @fa-var-facebook-official; }
+.@{fa-css-prefix}-pinterest-p:before { content: @fa-var-pinterest-p; }
+.@{fa-css-prefix}-whatsapp:before { content: @fa-var-whatsapp; }
+.@{fa-css-prefix}-server:before { content: @fa-var-server; }
+.@{fa-css-prefix}-user-plus:before { content: @fa-var-user-plus; }
+.@{fa-css-prefix}-user-times:before { content: @fa-var-user-times; }
+.@{fa-css-prefix}-hotel:before,
+.@{fa-css-prefix}-bed:before { content: @fa-var-bed; }
+.@{fa-css-prefix}-viacoin:before { content: @fa-var-viacoin; }
+.@{fa-css-prefix}-train:before { content: @fa-var-train; }
+.@{fa-css-prefix}-subway:before { content: @fa-var-subway; }
+.@{fa-css-prefix}-medium:before { content: @fa-var-medium; }
+.@{fa-css-prefix}-yc:before,
+.@{fa-css-prefix}-y-combinator:before { content: @fa-var-y-combinator; }
+.@{fa-css-prefix}-optin-monster:before { content: @fa-var-optin-monster; }
+.@{fa-css-prefix}-opencart:before { content: @fa-var-opencart; }
+.@{fa-css-prefix}-expeditedssl:before { content: @fa-var-expeditedssl; }
+.@{fa-css-prefix}-battery-4:before,
+.@{fa-css-prefix}-battery-full:before { content: @fa-var-battery-full; }
+.@{fa-css-prefix}-battery-3:before,
+.@{fa-css-prefix}-battery-three-quarters:before { content: @fa-var-battery-three-quarters; }
+.@{fa-css-prefix}-battery-2:before,
+.@{fa-css-prefix}-battery-half:before { content: @fa-var-battery-half; }
+.@{fa-css-prefix}-battery-1:before,
+.@{fa-css-prefix}-battery-quarter:before { content: @fa-var-battery-quarter; }
+.@{fa-css-prefix}-battery-0:before,
+.@{fa-css-prefix}-battery-empty:before { content: @fa-var-battery-empty; }
+.@{fa-css-prefix}-mouse-pointer:before { content: @fa-var-mouse-pointer; }
+.@{fa-css-prefix}-i-cursor:before { content: @fa-var-i-cursor; }
+.@{fa-css-prefix}-object-group:before { content: @fa-var-object-group; }
+.@{fa-css-prefix}-object-ungroup:before { content: @fa-var-object-ungroup; }
+.@{fa-css-prefix}-sticky-note:before { content: @fa-var-sticky-note; }
+.@{fa-css-prefix}-sticky-note-o:before { content: @fa-var-sticky-note-o; }
+.@{fa-css-prefix}-cc-jcb:before { content: @fa-var-cc-jcb; }
+.@{fa-css-prefix}-cc-diners-club:before { content: @fa-var-cc-diners-club; }
+.@{fa-css-prefix}-clone:before { content: @fa-var-clone; }
+.@{fa-css-prefix}-balance-scale:before { content: @fa-var-balance-scale; }
+.@{fa-css-prefix}-hourglass-o:before { content: @fa-var-hourglass-o; }
+.@{fa-css-prefix}-hourglass-1:before,
+.@{fa-css-prefix}-hourglass-start:before { content: @fa-var-hourglass-start; }
+.@{fa-css-prefix}-hourglass-2:before,
+.@{fa-css-prefix}-hourglass-half:before { content: @fa-var-hourglass-half; }
+.@{fa-css-prefix}-hourglass-3:before,
+.@{fa-css-prefix}-hourglass-end:before { content: @fa-var-hourglass-end; }
+.@{fa-css-prefix}-hourglass:before { content: @fa-var-hourglass; }
+.@{fa-css-prefix}-hand-grab-o:before,
+.@{fa-css-prefix}-hand-rock-o:before { content: @fa-var-hand-rock-o; }
+.@{fa-css-prefix}-hand-stop-o:before,
+.@{fa-css-prefix}-hand-paper-o:before { content: @fa-var-hand-paper-o; }
+.@{fa-css-prefix}-hand-scissors-o:before { content: @fa-var-hand-scissors-o; }
+.@{fa-css-prefix}-hand-lizard-o:before { content: @fa-var-hand-lizard-o; }
+.@{fa-css-prefix}-hand-spock-o:before { content: @fa-var-hand-spock-o; }
+.@{fa-css-prefix}-hand-pointer-o:before { content: @fa-var-hand-pointer-o; }
+.@{fa-css-prefix}-hand-peace-o:before { content: @fa-var-hand-peace-o; }
+.@{fa-css-prefix}-trademark:before { content: @fa-var-trademark; }
+.@{fa-css-prefix}-registered:before { content: @fa-var-registered; }
+.@{fa-css-prefix}-creative-commons:before { content: @fa-var-creative-commons; }
+.@{fa-css-prefix}-gg:before { content: @fa-var-gg; }
+.@{fa-css-prefix}-gg-circle:before { content: @fa-var-gg-circle; }
+.@{fa-css-prefix}-tripadvisor:before { content: @fa-var-tripadvisor; }
+.@{fa-css-prefix}-odnoklassniki:before { content: @fa-var-odnoklassniki; }
+.@{fa-css-prefix}-odnoklassniki-square:before { content: @fa-var-odnoklassniki-square; }
+.@{fa-css-prefix}-get-pocket:before { content: @fa-var-get-pocket; }
+.@{fa-css-prefix}-wikipedia-w:before { content: @fa-var-wikipedia-w; }
+.@{fa-css-prefix}-safari:before { content: @fa-var-safari; }
+.@{fa-css-prefix}-chrome:before { content: @fa-var-chrome; }
+.@{fa-css-prefix}-firefox:before { content: @fa-var-firefox; }
+.@{fa-css-prefix}-opera:before { content: @fa-var-opera; }
+.@{fa-css-prefix}-internet-explorer:before { content: @fa-var-internet-explorer; }
+.@{fa-css-prefix}-tv:before,
+.@{fa-css-prefix}-television:before { content: @fa-var-television; }
+.@{fa-css-prefix}-contao:before { content: @fa-var-contao; }
+.@{fa-css-prefix}-500px:before { content: @fa-var-500px; }
+.@{fa-css-prefix}-amazon:before { content: @fa-var-amazon; }
+.@{fa-css-prefix}-calendar-plus-o:before { content: @fa-var-calendar-plus-o; }
+.@{fa-css-prefix}-calendar-minus-o:before { content: @fa-var-calendar-minus-o; }
+.@{fa-css-prefix}-calendar-times-o:before { content: @fa-var-calendar-times-o; }
+.@{fa-css-prefix}-calendar-check-o:before { content: @fa-var-calendar-check-o; }
+.@{fa-css-prefix}-industry:before { content: @fa-var-industry; }
+.@{fa-css-prefix}-map-pin:before { content: @fa-var-map-pin; }
+.@{fa-css-prefix}-map-signs:before { content: @fa-var-map-signs; }
+.@{fa-css-prefix}-map-o:before { content: @fa-var-map-o; }
+.@{fa-css-prefix}-map:before { content: @fa-var-map; }
+.@{fa-css-prefix}-commenting:before { content: @fa-var-commenting; }
+.@{fa-css-prefix}-commenting-o:before { content: @fa-var-commenting-o; }
+.@{fa-css-prefix}-houzz:before { content: @fa-var-houzz; }
+.@{fa-css-prefix}-vimeo:before { content: @fa-var-vimeo; }
+.@{fa-css-prefix}-black-tie:before { content: @fa-var-black-tie; }
+.@{fa-css-prefix}-fonticons:before { content: @fa-var-fonticons; }
+.@{fa-css-prefix}-reddit-alien:before { content: @fa-var-reddit-alien; }
+.@{fa-css-prefix}-edge:before { content: @fa-var-edge; }
+.@{fa-css-prefix}-credit-card-alt:before { content: @fa-var-credit-card-alt; }
+.@{fa-css-prefix}-codiepie:before { content: @fa-var-codiepie; }
+.@{fa-css-prefix}-modx:before { content: @fa-var-modx; }
+.@{fa-css-prefix}-fort-awesome:before { content: @fa-var-fort-awesome; }
+.@{fa-css-prefix}-usb:before { content: @fa-var-usb; }
+.@{fa-css-prefix}-product-hunt:before { content: @fa-var-product-hunt; }
+.@{fa-css-prefix}-mixcloud:before { content: @fa-var-mixcloud; }
+.@{fa-css-prefix}-scribd:before { content: @fa-var-scribd; }
+.@{fa-css-prefix}-pause-circle:before { content: @fa-var-pause-circle; }
+.@{fa-css-prefix}-pause-circle-o:before { content: @fa-var-pause-circle-o; }
+.@{fa-css-prefix}-stop-circle:before { content: @fa-var-stop-circle; }
+.@{fa-css-prefix}-stop-circle-o:before { content: @fa-var-stop-circle-o; }
+.@{fa-css-prefix}-shopping-bag:before { content: @fa-var-shopping-bag; }
+.@{fa-css-prefix}-shopping-basket:before { content: @fa-var-shopping-basket; }
+.@{fa-css-prefix}-hashtag:before { content: @fa-var-hashtag; }
+.@{fa-css-prefix}-bluetooth:before { content: @fa-var-bluetooth; }
+.@{fa-css-prefix}-bluetooth-b:before { content: @fa-var-bluetooth-b; }
+.@{fa-css-prefix}-percent:before { content: @fa-var-percent; }
+.@{fa-css-prefix}-gitlab:before { content: @fa-var-gitlab; }
+.@{fa-css-prefix}-wpbeginner:before { content: @fa-var-wpbeginner; }
+.@{fa-css-prefix}-wpforms:before { content: @fa-var-wpforms; }
+.@{fa-css-prefix}-envira:before { content: @fa-var-envira; }
+.@{fa-css-prefix}-universal-access:before { content: @fa-var-universal-access; }
+.@{fa-css-prefix}-wheelchair-alt:before { content: @fa-var-wheelchair-alt; }
+.@{fa-css-prefix}-question-circle-o:before { content: @fa-var-question-circle-o; }
+.@{fa-css-prefix}-blind:before { content: @fa-var-blind; }
+.@{fa-css-prefix}-audio-description:before { content: @fa-var-audio-description; }
+.@{fa-css-prefix}-volume-control-phone:before { content: @fa-var-volume-control-phone; }
+.@{fa-css-prefix}-braille:before { content: @fa-var-braille; }
+.@{fa-css-prefix}-assistive-listening-systems:before { content: @fa-var-assistive-listening-systems; }
+.@{fa-css-prefix}-asl-interpreting:before,
+.@{fa-css-prefix}-american-sign-language-interpreting:before { content: @fa-var-american-sign-language-interpreting; }
+.@{fa-css-prefix}-deafness:before,
+.@{fa-css-prefix}-hard-of-hearing:before,
+.@{fa-css-prefix}-deaf:before { content: @fa-var-deaf; }
+.@{fa-css-prefix}-glide:before { content: @fa-var-glide; }
+.@{fa-css-prefix}-glide-g:before { content: @fa-var-glide-g; }
+.@{fa-css-prefix}-signing:before,
+.@{fa-css-prefix}-sign-language:before { content: @fa-var-sign-language; }
+.@{fa-css-prefix}-low-vision:before { content: @fa-var-low-vision; }
+.@{fa-css-prefix}-viadeo:before { content: @fa-var-viadeo; }
+.@{fa-css-prefix}-viadeo-square:before { content: @fa-var-viadeo-square; }
+.@{fa-css-prefix}-snapchat:before { content: @fa-var-snapchat; }
+.@{fa-css-prefix}-snapchat-ghost:before { content: @fa-var-snapchat-ghost; }
+.@{fa-css-prefix}-snapchat-square:before { content: @fa-var-snapchat-square; }
diff --git a/library/font_awesome/less/larger.less b/library/font_awesome/less/larger.less
new file mode 100644
index 000000000..c9d646770
--- /dev/null
+++ b/library/font_awesome/less/larger.less
@@ -0,0 +1,13 @@
+// Icon Sizes
+// -------------------------
+
+/* makes the font 33% larger relative to the icon container */
+.@{fa-css-prefix}-lg {
+ font-size: (4em / 3);
+ line-height: (3em / 4);
+ vertical-align: -15%;
+}
+.@{fa-css-prefix}-2x { font-size: 2em; }
+.@{fa-css-prefix}-3x { font-size: 3em; }
+.@{fa-css-prefix}-4x { font-size: 4em; }
+.@{fa-css-prefix}-5x { font-size: 5em; }
diff --git a/library/font_awesome/less/list.less b/library/font_awesome/less/list.less
new file mode 100644
index 000000000..0b440382f
--- /dev/null
+++ b/library/font_awesome/less/list.less
@@ -0,0 +1,19 @@
+// List Icons
+// -------------------------
+
+.@{fa-css-prefix}-ul {
+ padding-left: 0;
+ margin-left: @fa-li-width;
+ list-style-type: none;
+ > li { position: relative; }
+}
+.@{fa-css-prefix}-li {
+ position: absolute;
+ left: -@fa-li-width;
+ width: @fa-li-width;
+ top: (2em / 14);
+ text-align: center;
+ &.@{fa-css-prefix}-lg {
+ left: (-@fa-li-width + (4em / 14));
+ }
+}
diff --git a/library/font_awesome/less/mixins.less b/library/font_awesome/less/mixins.less
index f7fdda590..beef231d0 100644
--- a/library/font_awesome/less/mixins.less
+++ b/library/font_awesome/less/mixins.less
@@ -1,48 +1,60 @@
// Mixins
// --------------------------
-.icon(@icon) {
- .icon-FontAwesome();
- content: @icon;
+.fa-icon() {
+ display: inline-block;
+ font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // 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;
+
}
-.icon-FontAwesome() {
- font-family: FontAwesome;
- font-weight: normal;
- font-style: normal;
- text-decoration: inherit;
- -webkit-font-smoothing: antialiased;
- *margin-right: .3em; // fixes ie7 issues
+.fa-icon-rotate(@degrees, @rotation) {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation})";
+ -webkit-transform: rotate(@degrees);
+ -ms-transform: rotate(@degrees);
+ transform: rotate(@degrees);
+}
+
+.fa-icon-flip(@horiz, @vert, @rotation) {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation}, mirror=1)";
+ -webkit-transform: scale(@horiz, @vert);
+ -ms-transform: scale(@horiz, @vert);
+ transform: scale(@horiz, @vert);
}
-.border-radius(@radius) {
- -webkit-border-radius: @radius;
- -moz-border-radius: @radius;
- border-radius: @radius;
+
+// Only display content to screen readers. A la Bootstrap 4.
+//
+// See: http://a11yproject.com/posts/how-to-hide-content/
+
+.sr-only() {
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ padding: 0;
+ margin: -1px;
+ overflow: hidden;
+ clip: rect(0,0,0,0);
+ border: 0;
}
-.icon-stack(@width: 2em, @height: 2em, @top-font-size: 1em, @base-font-size: 2em) {
- .icon-stack {
- position: relative;
- display: inline-block;
- width: @width;
- height: @height;
- line-height: @width;
- vertical-align: -35%;
- [class^="icon-"],
- [class*=" icon-"] {
- display: block;
- text-align: center;
- position: absolute;
- width: 100%;
- height: 100%;
- font-size: @top-font-size;
- line-height: inherit;
- *line-height: @height;
- }
- .icon-stack-base {
- font-size: @base-font-size;
- *line-height: @height / @base-font-size;
- }
+// Use in conjunction with .sr-only to only display content when it's focused.
+//
+// Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
+//
+// Credit: HTML5 Boilerplate
+
+.sr-only-focusable() {
+ &:active,
+ &:focus {
+ position: static;
+ width: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ clip: auto;
}
}
diff --git a/library/font_awesome/less/path.less b/library/font_awesome/less/path.less
index 8ccef8cf0..835be41f8 100644
--- a/library/font_awesome/less/path.less
+++ b/library/font_awesome/less/path.less
@@ -3,12 +3,13 @@
@font-face {
font-family: 'FontAwesome';
- src: url('@{FontAwesomePath}/fontawesome-webfont.eot?v=@{FontAwesomeVersion}');
- src: url('@{FontAwesomePath}/fontawesome-webfont.eot?#iefix&v=@{FontAwesomeVersion}') format('embedded-opentype'),
- url('@{FontAwesomePath}/fontawesome-webfont.woff?v=@{FontAwesomeVersion}') format('woff'),
- url('@{FontAwesomePath}/fontawesome-webfont.ttf?v=@{FontAwesomeVersion}') format('truetype'),
- url('@{FontAwesomePath}/fontawesome-webfont.svg#fontawesomeregular?v=@{FontAwesomeVersion}') format('svg');
-// src: url('@{FontAwesomePath}/FontAwesome.otf') format('opentype'); // used when developing fonts
+ src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}');
+ src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'),
+ url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'),
+ url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'),
+ url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'),
+ url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg');
+ // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts
font-weight: normal;
font-style: normal;
}
diff --git a/library/font_awesome/less/rotated-flipped.less b/library/font_awesome/less/rotated-flipped.less
new file mode 100644
index 000000000..f6ba81475
--- /dev/null
+++ b/library/font_awesome/less/rotated-flipped.less
@@ -0,0 +1,20 @@
+// Rotated & Flipped Icons
+// -------------------------
+
+.@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); }
+.@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); }
+.@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); }
+
+.@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); }
+.@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); }
+
+// Hook for IE8-9
+// -------------------------
+
+:root .@{fa-css-prefix}-rotate-90,
+:root .@{fa-css-prefix}-rotate-180,
+:root .@{fa-css-prefix}-rotate-270,
+:root .@{fa-css-prefix}-flip-horizontal,
+:root .@{fa-css-prefix}-flip-vertical {
+ filter: none;
+}
diff --git a/library/font_awesome/less/screen-reader.less b/library/font_awesome/less/screen-reader.less
new file mode 100644
index 000000000..11c188196
--- /dev/null
+++ b/library/font_awesome/less/screen-reader.less
@@ -0,0 +1,5 @@
+// Screen Readers
+// -------------------------
+
+.sr-only { .sr-only(); }
+.sr-only-focusable { .sr-only-focusable(); }
diff --git a/library/font_awesome/less/stacked.less b/library/font_awesome/less/stacked.less
new file mode 100644
index 000000000..fc53fb0e7
--- /dev/null
+++ b/library/font_awesome/less/stacked.less
@@ -0,0 +1,20 @@
+// Stacked Icons
+// -------------------------
+
+.@{fa-css-prefix}-stack {
+ position: relative;
+ display: inline-block;
+ width: 2em;
+ height: 2em;
+ line-height: 2em;
+ vertical-align: middle;
+}
+.@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x {
+ position: absolute;
+ left: 0;
+ width: 100%;
+ text-align: center;
+}
+.@{fa-css-prefix}-stack-1x { line-height: inherit; }
+.@{fa-css-prefix}-stack-2x { font-size: 2em; }
+.@{fa-css-prefix}-inverse { color: @fa-inverse; }
diff --git a/library/font_awesome/less/variables.less b/library/font_awesome/less/variables.less
index 9d0879b0d..8118e8f70 100644
--- a/library/font_awesome/less/variables.less
+++ b/library/font_awesome/less/variables.less
@@ -1,735 +1,735 @@
// Variables
// --------------------------
-@FontAwesomePath: "../font";
-//@FontAwesomePath: "//netdna.bootstrapcdn.com/font-awesome/3.2.1/font"; // for referencing Bootstrap CDN font files directly
-@FontAwesomeVersion: "3.2.1";
-@borderColor: #eee;
-@iconMuted: #eee;
-@iconLight: #fff;
-@iconDark: #333;
-@icons-li-width: 30/14em;
-
-
- @glass: "\f000";
-
- @music: "\f001";
-
- @search: "\f002";
-
- @envelope-alt: "\f003";
-
- @heart: "\f004";
-
- @star: "\f005";
-
- @star-empty: "\f006";
-
- @user: "\f007";
-
- @film: "\f008";
-
- @th-large: "\f009";
-
- @th: "\f00a";
-
- @th-list: "\f00b";
-
- @ok: "\f00c";
-
- @remove: "\f00d";
-
- @zoom-in: "\f00e";
-
- @zoom-out: "\f010";
-
- @off: "\f011";
-
- @signal: "\f012";
-
- @cog: "\f013";
-
- @trash: "\f014";
-
- @home: "\f015";
-
- @file-alt: "\f016";
-
- @time: "\f017";
-
- @road: "\f018";
-
- @download-alt: "\f019";
-
- @download: "\f01a";
-
- @upload: "\f01b";
-
- @inbox: "\f01c";
-
- @play-circle: "\f01d";
-
- @repeat: "\f01e";
-
- @refresh: "\f021";
-
- @list-alt: "\f022";
-
- @lock: "\f023";
-
- @flag: "\f024";
-
- @headphones: "\f025";
-
- @volume-off: "\f026";
-
- @volume-down: "\f027";
-
- @volume-up: "\f028";
-
- @qrcode: "\f029";
-
- @barcode: "\f02a";
-
- @tag: "\f02b";
-
- @tags: "\f02c";
-
- @book: "\f02d";
-
- @bookmark: "\f02e";
-
- @print: "\f02f";
-
- @camera: "\f030";
-
- @font: "\f031";
-
- @bold: "\f032";
-
- @italic: "\f033";
-
- @text-height: "\f034";
-
- @text-width: "\f035";
-
- @align-left: "\f036";
-
- @align-center: "\f037";
-
- @align-right: "\f038";
-
- @align-justify: "\f039";
-
- @list: "\f03a";
-
- @indent-left: "\f03b";
-
- @indent-right: "\f03c";
-
- @facetime-video: "\f03d";
-
- @picture: "\f03e";
-
- @pencil: "\f040";
-
- @map-marker: "\f041";
-
- @adjust: "\f042";
-
- @tint: "\f043";
-
- @edit: "\f044";
-
- @share: "\f045";
-
- @check: "\f046";
-
- @move: "\f047";
-
- @step-backward: "\f048";
-
- @fast-backward: "\f049";
-
- @backward: "\f04a";
-
- @play: "\f04b";
-
- @pause: "\f04c";
-
- @stop: "\f04d";
-
- @forward: "\f04e";
-
- @fast-forward: "\f050";
-
- @step-forward: "\f051";
-
- @eject: "\f052";
-
- @chevron-left: "\f053";
-
- @chevron-right: "\f054";
-
- @plus-sign: "\f055";
-
- @minus-sign: "\f056";
-
- @remove-sign: "\f057";
-
- @ok-sign: "\f058";
-
- @question-sign: "\f059";
-
- @info-sign: "\f05a";
-
- @screenshot: "\f05b";
-
- @remove-circle: "\f05c";
-
- @ok-circle: "\f05d";
-
- @ban-circle: "\f05e";
-
- @arrow-left: "\f060";
-
- @arrow-right: "\f061";
-
- @arrow-up: "\f062";
-
- @arrow-down: "\f063";
-
- @share-alt: "\f064";
-
- @resize-full: "\f065";
-
- @resize-small: "\f066";
-
- @plus: "\f067";
-
- @minus: "\f068";
-
- @asterisk: "\f069";
-
- @exclamation-sign: "\f06a";
-
- @gift: "\f06b";
-
- @leaf: "\f06c";
-
- @fire: "\f06d";
-
- @eye-open: "\f06e";
-
- @eye-close: "\f070";
-
- @warning-sign: "\f071";
-
- @plane: "\f072";
-
- @calendar: "\f073";
-
- @random: "\f074";
-
- @comment: "\f075";
-
- @magnet: "\f076";
-
- @chevron-up: "\f077";
-
- @chevron-down: "\f078";
-
- @retweet: "\f079";
-
- @shopping-cart: "\f07a";
-
- @folder-close: "\f07b";
-
- @folder-open: "\f07c";
-
- @resize-vertical: "\f07d";
-
- @resize-horizontal: "\f07e";
-
- @bar-chart: "\f080";
-
- @twitter-sign: "\f081";
-
- @facebook-sign: "\f082";
-
- @camera-retro: "\f083";
-
- @key: "\f084";
-
- @cogs: "\f085";
-
- @comments: "\f086";
-
- @thumbs-up-alt: "\f087";
-
- @thumbs-down-alt: "\f088";
-
- @star-half: "\f089";
-
- @heart-empty: "\f08a";
-
- @signout: "\f08b";
-
- @linkedin-sign: "\f08c";
-
- @pushpin: "\f08d";
-
- @external-link: "\f08e";
-
- @signin: "\f090";
-
- @trophy: "\f091";
-
- @github-sign: "\f092";
-
- @upload-alt: "\f093";
-
- @lemon: "\f094";
-
- @phone: "\f095";
-
- @check-empty: "\f096";
-
- @bookmark-empty: "\f097";
-
- @phone-sign: "\f098";
-
- @twitter: "\f099";
-
- @facebook: "\f09a";
-
- @github: "\f09b";
-
- @unlock: "\f09c";
-
- @credit-card: "\f09d";
-
- @rss: "\f09e";
-
- @hdd: "\f0a0";
-
- @bullhorn: "\f0a1";
-
- @bell: "\f0a2";
-
- @certificate: "\f0a3";
-
- @hand-right: "\f0a4";
-
- @hand-left: "\f0a5";
-
- @hand-up: "\f0a6";
-
- @hand-down: "\f0a7";
-
- @circle-arrow-left: "\f0a8";
-
- @circle-arrow-right: "\f0a9";
-
- @circle-arrow-up: "\f0aa";
-
- @circle-arrow-down: "\f0ab";
-
- @globe: "\f0ac";
-
- @wrench: "\f0ad";
-
- @tasks: "\f0ae";
-
- @filter: "\f0b0";
-
- @briefcase: "\f0b1";
-
- @fullscreen: "\f0b2";
-
- @group: "\f0c0";
-
- @link: "\f0c1";
-
- @cloud: "\f0c2";
-
- @beaker: "\f0c3";
-
- @cut: "\f0c4";
-
- @copy: "\f0c5";
-
- @paper-clip: "\f0c6";
-
- @save: "\f0c7";
-
- @sign-blank: "\f0c8";
-
- @reorder: "\f0c9";
-
- @list-ul: "\f0ca";
-
- @list-ol: "\f0cb";
-
- @strikethrough: "\f0cc";
-
- @underline: "\f0cd";
-
- @table: "\f0ce";
-
- @magic: "\f0d0";
-
- @truck: "\f0d1";
-
- @pinterest: "\f0d2";
-
- @pinterest-sign: "\f0d3";
-
- @google-plus-sign: "\f0d4";
-
- @google-plus: "\f0d5";
-
- @money: "\f0d6";
-
- @caret-down: "\f0d7";
-
- @caret-up: "\f0d8";
-
- @caret-left: "\f0d9";
-
- @caret-right: "\f0da";
-
- @columns: "\f0db";
-
- @sort: "\f0dc";
-
- @sort-down: "\f0dd";
-
- @sort-up: "\f0de";
-
- @envelope: "\f0e0";
-
- @linkedin: "\f0e1";
-
- @undo: "\f0e2";
-
- @legal: "\f0e3";
-
- @dashboard: "\f0e4";
-
- @comment-alt: "\f0e5";
-
- @comments-alt: "\f0e6";
-
- @bolt: "\f0e7";
-
- @sitemap: "\f0e8";
-
- @umbrella: "\f0e9";
-
- @paste: "\f0ea";
-
- @lightbulb: "\f0eb";
-
- @exchange: "\f0ec";
-
- @cloud-download: "\f0ed";
-
- @cloud-upload: "\f0ee";
-
- @user-md: "\f0f0";
-
- @stethoscope: "\f0f1";
-
- @suitcase: "\f0f2";
-
- @bell-alt: "\f0f3";
-
- @coffee: "\f0f4";
-
- @food: "\f0f5";
-
- @file-text-alt: "\f0f6";
-
- @building: "\f0f7";
-
- @hospital: "\f0f8";
-
- @ambulance: "\f0f9";
-
- @medkit: "\f0fa";
-
- @fighter-jet: "\f0fb";
-
- @beer: "\f0fc";
-
- @h-sign: "\f0fd";
-
- @plus-sign-alt: "\f0fe";
-
- @double-angle-left: "\f100";
-
- @double-angle-right: "\f101";
-
- @double-angle-up: "\f102";
-
- @double-angle-down: "\f103";
-
- @angle-left: "\f104";
-
- @angle-right: "\f105";
-
- @angle-up: "\f106";
-
- @angle-down: "\f107";
-
- @desktop: "\f108";
-
- @laptop: "\f109";
-
- @tablet: "\f10a";
-
- @mobile-phone: "\f10b";
-
- @circle-blank: "\f10c";
-
- @quote-left: "\f10d";
-
- @quote-right: "\f10e";
-
- @spinner: "\f110";
-
- @circle: "\f111";
-
- @reply: "\f112";
-
- @github-alt: "\f113";
-
- @folder-close-alt: "\f114";
-
- @folder-open-alt: "\f115";
-
- @expand-alt: "\f116";
-
- @collapse-alt: "\f117";
-
- @smile: "\f118";
-
- @frown: "\f119";
-
- @meh: "\f11a";
-
- @gamepad: "\f11b";
-
- @keyboard: "\f11c";
-
- @flag-alt: "\f11d";
-
- @flag-checkered: "\f11e";
-
- @terminal: "\f120";
-
- @code: "\f121";
-
- @reply-all: "\f122";
-
- @mail-reply-all: "\f122";
-
- @star-half-empty: "\f123";
-
- @location-arrow: "\f124";
-
- @crop: "\f125";
-
- @code-fork: "\f126";
-
- @unlink: "\f127";
-
- @question: "\f128";
-
- @info: "\f129";
-
- @exclamation: "\f12a";
-
- @superscript: "\f12b";
-
- @subscript: "\f12c";
-
- @eraser: "\f12d";
-
- @puzzle-piece: "\f12e";
-
- @microphone: "\f130";
-
- @microphone-off: "\f131";
-
- @shield: "\f132";
-
- @calendar-empty: "\f133";
-
- @fire-extinguisher: "\f134";
-
- @rocket: "\f135";
-
- @maxcdn: "\f136";
-
- @chevron-sign-left: "\f137";
-
- @chevron-sign-right: "\f138";
-
- @chevron-sign-up: "\f139";
-
- @chevron-sign-down: "\f13a";
-
- @html5: "\f13b";
-
- @css3: "\f13c";
-
- @anchor: "\f13d";
-
- @unlock-alt: "\f13e";
-
- @bullseye: "\f140";
-
- @ellipsis-horizontal: "\f141";
-
- @ellipsis-vertical: "\f142";
-
- @rss-sign: "\f143";
-
- @play-sign: "\f144";
-
- @ticket: "\f145";
-
- @minus-sign-alt: "\f146";
-
- @check-minus: "\f147";
-
- @level-up: "\f148";
-
- @level-down: "\f149";
-
- @check-sign: "\f14a";
-
- @edit-sign: "\f14b";
-
- @external-link-sign: "\f14c";
-
- @share-sign: "\f14d";
-
- @compass: "\f14e";
-
- @collapse: "\f150";
-
- @collapse-top: "\f151";
-
- @expand: "\f152";
-
- @eur: "\f153";
-
- @gbp: "\f154";
-
- @usd: "\f155";
-
- @inr: "\f156";
-
- @jpy: "\f157";
-
- @cny: "\f158";
-
- @krw: "\f159";
-
- @btc: "\f15a";
-
- @file: "\f15b";
-
- @file-text: "\f15c";
-
- @sort-by-alphabet: "\f15d";
-
- @sort-by-alphabet-alt: "\f15e";
-
- @sort-by-attributes: "\f160";
-
- @sort-by-attributes-alt: "\f161";
-
- @sort-by-order: "\f162";
-
- @sort-by-order-alt: "\f163";
-
- @thumbs-up: "\f164";
-
- @thumbs-down: "\f165";
-
- @youtube-sign: "\f166";
-
- @youtube: "\f167";
-
- @xing: "\f168";
-
- @xing-sign: "\f169";
-
- @youtube-play: "\f16a";
-
- @dropbox: "\f16b";
-
- @stackexchange: "\f16c";
-
- @instagram: "\f16d";
-
- @flickr: "\f16e";
-
- @adn: "\f170";
-
- @bitbucket: "\f171";
-
- @bitbucket-sign: "\f172";
-
- @tumblr: "\f173";
-
- @tumblr-sign: "\f174";
-
- @long-arrow-down: "\f175";
-
- @long-arrow-up: "\f176";
-
- @long-arrow-left: "\f177";
-
- @long-arrow-right: "\f178";
-
- @apple: "\f179";
-
- @windows: "\f17a";
-
- @android: "\f17b";
-
- @linux: "\f17c";
-
- @dribbble: "\f17d";
-
- @skype: "\f17e";
-
- @foursquare: "\f180";
-
- @trello: "\f181";
-
- @female: "\f182";
-
- @male: "\f183";
-
- @gittip: "\f184";
-
- @sun: "\f185";
-
- @moon: "\f186";
-
- @archive: "\f187";
-
- @bug: "\f188";
-
- @vk: "\f189";
-
- @weibo: "\f18a";
-
- @renren: "\f18b";
+@fa-font-path: "../fonts";
+@fa-font-size-base: 14px;
+@fa-line-height-base: 1;
+//@fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.6.1/fonts"; // for referencing Bootstrap CDN font files directly
+@fa-css-prefix: fa;
+@fa-version: "4.6.1";
+@fa-border-color: #eee;
+@fa-inverse: #fff;
+@fa-li-width: (30em / 14);
+
+@fa-var-500px: "\f26e";
+@fa-var-adjust: "\f042";
+@fa-var-adn: "\f170";
+@fa-var-align-center: "\f037";
+@fa-var-align-justify: "\f039";
+@fa-var-align-left: "\f036";
+@fa-var-align-right: "\f038";
+@fa-var-amazon: "\f270";
+@fa-var-ambulance: "\f0f9";
+@fa-var-american-sign-language-interpreting: "\f2a3";
+@fa-var-anchor: "\f13d";
+@fa-var-android: "\f17b";
+@fa-var-angellist: "\f209";
+@fa-var-angle-double-down: "\f103";
+@fa-var-angle-double-left: "\f100";
+@fa-var-angle-double-right: "\f101";
+@fa-var-angle-double-up: "\f102";
+@fa-var-angle-down: "\f107";
+@fa-var-angle-left: "\f104";
+@fa-var-angle-right: "\f105";
+@fa-var-angle-up: "\f106";
+@fa-var-apple: "\f179";
+@fa-var-archive: "\f187";
+@fa-var-area-chart: "\f1fe";
+@fa-var-arrow-circle-down: "\f0ab";
+@fa-var-arrow-circle-left: "\f0a8";
+@fa-var-arrow-circle-o-down: "\f01a";
+@fa-var-arrow-circle-o-left: "\f190";
+@fa-var-arrow-circle-o-right: "\f18e";
+@fa-var-arrow-circle-o-up: "\f01b";
+@fa-var-arrow-circle-right: "\f0a9";
+@fa-var-arrow-circle-up: "\f0aa";
+@fa-var-arrow-down: "\f063";
+@fa-var-arrow-left: "\f060";
+@fa-var-arrow-right: "\f061";
+@fa-var-arrow-up: "\f062";
+@fa-var-arrows: "\f047";
+@fa-var-arrows-alt: "\f0b2";
+@fa-var-arrows-h: "\f07e";
+@fa-var-arrows-v: "\f07d";
+@fa-var-asl-interpreting: "\f2a3";
+@fa-var-assistive-listening-systems: "\f2a2";
+@fa-var-asterisk: "\f069";
+@fa-var-at: "\f1fa";
+@fa-var-audio-description: "\f29e";
+@fa-var-automobile: "\f1b9";
+@fa-var-backward: "\f04a";
+@fa-var-balance-scale: "\f24e";
+@fa-var-ban: "\f05e";
+@fa-var-bank: "\f19c";
+@fa-var-bar-chart: "\f080";
+@fa-var-bar-chart-o: "\f080";
+@fa-var-barcode: "\f02a";
+@fa-var-bars: "\f0c9";
+@fa-var-battery-0: "\f244";
+@fa-var-battery-1: "\f243";
+@fa-var-battery-2: "\f242";
+@fa-var-battery-3: "\f241";
+@fa-var-battery-4: "\f240";
+@fa-var-battery-empty: "\f244";
+@fa-var-battery-full: "\f240";
+@fa-var-battery-half: "\f242";
+@fa-var-battery-quarter: "\f243";
+@fa-var-battery-three-quarters: "\f241";
+@fa-var-bed: "\f236";
+@fa-var-beer: "\f0fc";
+@fa-var-behance: "\f1b4";
+@fa-var-behance-square: "\f1b5";
+@fa-var-bell: "\f0f3";
+@fa-var-bell-o: "\f0a2";
+@fa-var-bell-slash: "\f1f6";
+@fa-var-bell-slash-o: "\f1f7";
+@fa-var-bicycle: "\f206";
+@fa-var-binoculars: "\f1e5";
+@fa-var-birthday-cake: "\f1fd";
+@fa-var-bitbucket: "\f171";
+@fa-var-bitbucket-square: "\f172";
+@fa-var-bitcoin: "\f15a";
+@fa-var-black-tie: "\f27e";
+@fa-var-blind: "\f29d";
+@fa-var-bluetooth: "\f293";
+@fa-var-bluetooth-b: "\f294";
+@fa-var-bold: "\f032";
+@fa-var-bolt: "\f0e7";
+@fa-var-bomb: "\f1e2";
+@fa-var-book: "\f02d";
+@fa-var-bookmark: "\f02e";
+@fa-var-bookmark-o: "\f097";
+@fa-var-braille: "\f2a1";
+@fa-var-briefcase: "\f0b1";
+@fa-var-btc: "\f15a";
+@fa-var-bug: "\f188";
+@fa-var-building: "\f1ad";
+@fa-var-building-o: "\f0f7";
+@fa-var-bullhorn: "\f0a1";
+@fa-var-bullseye: "\f140";
+@fa-var-bus: "\f207";
+@fa-var-buysellads: "\f20d";
+@fa-var-cab: "\f1ba";
+@fa-var-calculator: "\f1ec";
+@fa-var-calendar: "\f073";
+@fa-var-calendar-check-o: "\f274";
+@fa-var-calendar-minus-o: "\f272";
+@fa-var-calendar-o: "\f133";
+@fa-var-calendar-plus-o: "\f271";
+@fa-var-calendar-times-o: "\f273";
+@fa-var-camera: "\f030";
+@fa-var-camera-retro: "\f083";
+@fa-var-car: "\f1b9";
+@fa-var-caret-down: "\f0d7";
+@fa-var-caret-left: "\f0d9";
+@fa-var-caret-right: "\f0da";
+@fa-var-caret-square-o-down: "\f150";
+@fa-var-caret-square-o-left: "\f191";
+@fa-var-caret-square-o-right: "\f152";
+@fa-var-caret-square-o-up: "\f151";
+@fa-var-caret-up: "\f0d8";
+@fa-var-cart-arrow-down: "\f218";
+@fa-var-cart-plus: "\f217";
+@fa-var-cc: "\f20a";
+@fa-var-cc-amex: "\f1f3";
+@fa-var-cc-diners-club: "\f24c";
+@fa-var-cc-discover: "\f1f2";
+@fa-var-cc-jcb: "\f24b";
+@fa-var-cc-mastercard: "\f1f1";
+@fa-var-cc-paypal: "\f1f4";
+@fa-var-cc-stripe: "\f1f5";
+@fa-var-cc-visa: "\f1f0";
+@fa-var-certificate: "\f0a3";
+@fa-var-chain: "\f0c1";
+@fa-var-chain-broken: "\f127";
+@fa-var-check: "\f00c";
+@fa-var-check-circle: "\f058";
+@fa-var-check-circle-o: "\f05d";
+@fa-var-check-square: "\f14a";
+@fa-var-check-square-o: "\f046";
+@fa-var-chevron-circle-down: "\f13a";
+@fa-var-chevron-circle-left: "\f137";
+@fa-var-chevron-circle-right: "\f138";
+@fa-var-chevron-circle-up: "\f139";
+@fa-var-chevron-down: "\f078";
+@fa-var-chevron-left: "\f053";
+@fa-var-chevron-right: "\f054";
+@fa-var-chevron-up: "\f077";
+@fa-var-child: "\f1ae";
+@fa-var-chrome: "\f268";
+@fa-var-circle: "\f111";
+@fa-var-circle-o: "\f10c";
+@fa-var-circle-o-notch: "\f1ce";
+@fa-var-circle-thin: "\f1db";
+@fa-var-clipboard: "\f0ea";
+@fa-var-clock-o: "\f017";
+@fa-var-clone: "\f24d";
+@fa-var-close: "\f00d";
+@fa-var-cloud: "\f0c2";
+@fa-var-cloud-download: "\f0ed";
+@fa-var-cloud-upload: "\f0ee";
+@fa-var-cny: "\f157";
+@fa-var-code: "\f121";
+@fa-var-code-fork: "\f126";
+@fa-var-codepen: "\f1cb";
+@fa-var-codiepie: "\f284";
+@fa-var-coffee: "\f0f4";
+@fa-var-cog: "\f013";
+@fa-var-cogs: "\f085";
+@fa-var-columns: "\f0db";
+@fa-var-comment: "\f075";
+@fa-var-comment-o: "\f0e5";
+@fa-var-commenting: "\f27a";
+@fa-var-commenting-o: "\f27b";
+@fa-var-comments: "\f086";
+@fa-var-comments-o: "\f0e6";
+@fa-var-compass: "\f14e";
+@fa-var-compress: "\f066";
+@fa-var-connectdevelop: "\f20e";
+@fa-var-contao: "\f26d";
+@fa-var-copy: "\f0c5";
+@fa-var-copyright: "\f1f9";
+@fa-var-creative-commons: "\f25e";
+@fa-var-credit-card: "\f09d";
+@fa-var-credit-card-alt: "\f283";
+@fa-var-crop: "\f125";
+@fa-var-crosshairs: "\f05b";
+@fa-var-css3: "\f13c";
+@fa-var-cube: "\f1b2";
+@fa-var-cubes: "\f1b3";
+@fa-var-cut: "\f0c4";
+@fa-var-cutlery: "\f0f5";
+@fa-var-dashboard: "\f0e4";
+@fa-var-dashcube: "\f210";
+@fa-var-database: "\f1c0";
+@fa-var-deaf: "\f2a4";
+@fa-var-deafness: "\f2a4";
+@fa-var-dedent: "\f03b";
+@fa-var-delicious: "\f1a5";
+@fa-var-desktop: "\f108";
+@fa-var-deviantart: "\f1bd";
+@fa-var-diamond: "\f219";
+@fa-var-digg: "\f1a6";
+@fa-var-dollar: "\f155";
+@fa-var-dot-circle-o: "\f192";
+@fa-var-download: "\f019";
+@fa-var-dribbble: "\f17d";
+@fa-var-dropbox: "\f16b";
+@fa-var-drupal: "\f1a9";
+@fa-var-edge: "\f282";
+@fa-var-edit: "\f044";
+@fa-var-eject: "\f052";
+@fa-var-ellipsis-h: "\f141";
+@fa-var-ellipsis-v: "\f142";
+@fa-var-empire: "\f1d1";
+@fa-var-envelope: "\f0e0";
+@fa-var-envelope-o: "\f003";
+@fa-var-envelope-square: "\f199";
+@fa-var-envira: "\f299";
+@fa-var-eraser: "\f12d";
+@fa-var-eur: "\f153";
+@fa-var-euro: "\f153";
+@fa-var-exchange: "\f0ec";
+@fa-var-exclamation: "\f12a";
+@fa-var-exclamation-circle: "\f06a";
+@fa-var-exclamation-triangle: "\f071";
+@fa-var-expand: "\f065";
+@fa-var-expeditedssl: "\f23e";
+@fa-var-external-link: "\f08e";
+@fa-var-external-link-square: "\f14c";
+@fa-var-eye: "\f06e";
+@fa-var-eye-slash: "\f070";
+@fa-var-eyedropper: "\f1fb";
+@fa-var-facebook: "\f09a";
+@fa-var-facebook-f: "\f09a";
+@fa-var-facebook-official: "\f230";
+@fa-var-facebook-square: "\f082";
+@fa-var-fast-backward: "\f049";
+@fa-var-fast-forward: "\f050";
+@fa-var-fax: "\f1ac";
+@fa-var-feed: "\f09e";
+@fa-var-female: "\f182";
+@fa-var-fighter-jet: "\f0fb";
+@fa-var-file: "\f15b";
+@fa-var-file-archive-o: "\f1c6";
+@fa-var-file-audio-o: "\f1c7";
+@fa-var-file-code-o: "\f1c9";
+@fa-var-file-excel-o: "\f1c3";
+@fa-var-file-image-o: "\f1c5";
+@fa-var-file-movie-o: "\f1c8";
+@fa-var-file-o: "\f016";
+@fa-var-file-pdf-o: "\f1c1";
+@fa-var-file-photo-o: "\f1c5";
+@fa-var-file-picture-o: "\f1c5";
+@fa-var-file-powerpoint-o: "\f1c4";
+@fa-var-file-sound-o: "\f1c7";
+@fa-var-file-text: "\f15c";
+@fa-var-file-text-o: "\f0f6";
+@fa-var-file-video-o: "\f1c8";
+@fa-var-file-word-o: "\f1c2";
+@fa-var-file-zip-o: "\f1c6";
+@fa-var-files-o: "\f0c5";
+@fa-var-film: "\f008";
+@fa-var-filter: "\f0b0";
+@fa-var-fire: "\f06d";
+@fa-var-fire-extinguisher: "\f134";
+@fa-var-firefox: "\f269";
+@fa-var-flag: "\f024";
+@fa-var-flag-checkered: "\f11e";
+@fa-var-flag-o: "\f11d";
+@fa-var-flash: "\f0e7";
+@fa-var-flask: "\f0c3";
+@fa-var-flickr: "\f16e";
+@fa-var-floppy-o: "\f0c7";
+@fa-var-folder: "\f07b";
+@fa-var-folder-o: "\f114";
+@fa-var-folder-open: "\f07c";
+@fa-var-folder-open-o: "\f115";
+@fa-var-font: "\f031";
+@fa-var-fonticons: "\f280";
+@fa-var-fort-awesome: "\f286";
+@fa-var-forumbee: "\f211";
+@fa-var-forward: "\f04e";
+@fa-var-foursquare: "\f180";
+@fa-var-frown-o: "\f119";
+@fa-var-futbol-o: "\f1e3";
+@fa-var-gamepad: "\f11b";
+@fa-var-gavel: "\f0e3";
+@fa-var-gbp: "\f154";
+@fa-var-ge: "\f1d1";
+@fa-var-gear: "\f013";
+@fa-var-gears: "\f085";
+@fa-var-genderless: "\f22d";
+@fa-var-get-pocket: "\f265";
+@fa-var-gg: "\f260";
+@fa-var-gg-circle: "\f261";
+@fa-var-gift: "\f06b";
+@fa-var-git: "\f1d3";
+@fa-var-git-square: "\f1d2";
+@fa-var-github: "\f09b";
+@fa-var-github-alt: "\f113";
+@fa-var-github-square: "\f092";
+@fa-var-gitlab: "\f296";
+@fa-var-gittip: "\f184";
+@fa-var-glass: "\f000";
+@fa-var-glide: "\f2a5";
+@fa-var-glide-g: "\f2a6";
+@fa-var-globe: "\f0ac";
+@fa-var-google: "\f1a0";
+@fa-var-google-plus: "\f0d5";
+@fa-var-google-plus-square: "\f0d4";
+@fa-var-google-wallet: "\f1ee";
+@fa-var-graduation-cap: "\f19d";
+@fa-var-gratipay: "\f184";
+@fa-var-group: "\f0c0";
+@fa-var-h-square: "\f0fd";
+@fa-var-hacker-news: "\f1d4";
+@fa-var-hand-grab-o: "\f255";
+@fa-var-hand-lizard-o: "\f258";
+@fa-var-hand-o-down: "\f0a7";
+@fa-var-hand-o-left: "\f0a5";
+@fa-var-hand-o-right: "\f0a4";
+@fa-var-hand-o-up: "\f0a6";
+@fa-var-hand-paper-o: "\f256";
+@fa-var-hand-peace-o: "\f25b";
+@fa-var-hand-pointer-o: "\f25a";
+@fa-var-hand-rock-o: "\f255";
+@fa-var-hand-scissors-o: "\f257";
+@fa-var-hand-spock-o: "\f259";
+@fa-var-hand-stop-o: "\f256";
+@fa-var-hard-of-hearing: "\f2a4";
+@fa-var-hashtag: "\f292";
+@fa-var-hdd-o: "\f0a0";
+@fa-var-header: "\f1dc";
+@fa-var-headphones: "\f025";
+@fa-var-heart: "\f004";
+@fa-var-heart-o: "\f08a";
+@fa-var-heartbeat: "\f21e";
+@fa-var-history: "\f1da";
+@fa-var-home: "\f015";
+@fa-var-hospital-o: "\f0f8";
+@fa-var-hotel: "\f236";
+@fa-var-hourglass: "\f254";
+@fa-var-hourglass-1: "\f251";
+@fa-var-hourglass-2: "\f252";
+@fa-var-hourglass-3: "\f253";
+@fa-var-hourglass-end: "\f253";
+@fa-var-hourglass-half: "\f252";
+@fa-var-hourglass-o: "\f250";
+@fa-var-hourglass-start: "\f251";
+@fa-var-houzz: "\f27c";
+@fa-var-html5: "\f13b";
+@fa-var-i-cursor: "\f246";
+@fa-var-ils: "\f20b";
+@fa-var-image: "\f03e";
+@fa-var-inbox: "\f01c";
+@fa-var-indent: "\f03c";
+@fa-var-industry: "\f275";
+@fa-var-info: "\f129";
+@fa-var-info-circle: "\f05a";
+@fa-var-inr: "\f156";
+@fa-var-instagram: "\f16d";
+@fa-var-institution: "\f19c";
+@fa-var-internet-explorer: "\f26b";
+@fa-var-intersex: "\f224";
+@fa-var-ioxhost: "\f208";
+@fa-var-italic: "\f033";
+@fa-var-joomla: "\f1aa";
+@fa-var-jpy: "\f157";
+@fa-var-jsfiddle: "\f1cc";
+@fa-var-key: "\f084";
+@fa-var-keyboard-o: "\f11c";
+@fa-var-krw: "\f159";
+@fa-var-language: "\f1ab";
+@fa-var-laptop: "\f109";
+@fa-var-lastfm: "\f202";
+@fa-var-lastfm-square: "\f203";
+@fa-var-leaf: "\f06c";
+@fa-var-leanpub: "\f212";
+@fa-var-legal: "\f0e3";
+@fa-var-lemon-o: "\f094";
+@fa-var-level-down: "\f149";
+@fa-var-level-up: "\f148";
+@fa-var-life-bouy: "\f1cd";
+@fa-var-life-buoy: "\f1cd";
+@fa-var-life-ring: "\f1cd";
+@fa-var-life-saver: "\f1cd";
+@fa-var-lightbulb-o: "\f0eb";
+@fa-var-line-chart: "\f201";
+@fa-var-link: "\f0c1";
+@fa-var-linkedin: "\f0e1";
+@fa-var-linkedin-square: "\f08c";
+@fa-var-linux: "\f17c";
+@fa-var-list: "\f03a";
+@fa-var-list-alt: "\f022";
+@fa-var-list-ol: "\f0cb";
+@fa-var-list-ul: "\f0ca";
+@fa-var-location-arrow: "\f124";
+@fa-var-lock: "\f023";
+@fa-var-long-arrow-down: "\f175";
+@fa-var-long-arrow-left: "\f177";
+@fa-var-long-arrow-right: "\f178";
+@fa-var-long-arrow-up: "\f176";
+@fa-var-low-vision: "\f2a8";
+@fa-var-magic: "\f0d0";
+@fa-var-magnet: "\f076";
+@fa-var-mail-forward: "\f064";
+@fa-var-mail-reply: "\f112";
+@fa-var-mail-reply-all: "\f122";
+@fa-var-male: "\f183";
+@fa-var-map: "\f279";
+@fa-var-map-marker: "\f041";
+@fa-var-map-o: "\f278";
+@fa-var-map-pin: "\f276";
+@fa-var-map-signs: "\f277";
+@fa-var-mars: "\f222";
+@fa-var-mars-double: "\f227";
+@fa-var-mars-stroke: "\f229";
+@fa-var-mars-stroke-h: "\f22b";
+@fa-var-mars-stroke-v: "\f22a";
+@fa-var-maxcdn: "\f136";
+@fa-var-meanpath: "\f20c";
+@fa-var-medium: "\f23a";
+@fa-var-medkit: "\f0fa";
+@fa-var-meh-o: "\f11a";
+@fa-var-mercury: "\f223";
+@fa-var-microphone: "\f130";
+@fa-var-microphone-slash: "\f131";
+@fa-var-minus: "\f068";
+@fa-var-minus-circle: "\f056";
+@fa-var-minus-square: "\f146";
+@fa-var-minus-square-o: "\f147";
+@fa-var-mixcloud: "\f289";
+@fa-var-mobile: "\f10b";
+@fa-var-mobile-phone: "\f10b";
+@fa-var-modx: "\f285";
+@fa-var-money: "\f0d6";
+@fa-var-moon-o: "\f186";
+@fa-var-mortar-board: "\f19d";
+@fa-var-motorcycle: "\f21c";
+@fa-var-mouse-pointer: "\f245";
+@fa-var-music: "\f001";
+@fa-var-navicon: "\f0c9";
+@fa-var-neuter: "\f22c";
+@fa-var-newspaper-o: "\f1ea";
+@fa-var-object-group: "\f247";
+@fa-var-object-ungroup: "\f248";
+@fa-var-odnoklassniki: "\f263";
+@fa-var-odnoklassniki-square: "\f264";
+@fa-var-opencart: "\f23d";
+@fa-var-openid: "\f19b";
+@fa-var-opera: "\f26a";
+@fa-var-optin-monster: "\f23c";
+@fa-var-outdent: "\f03b";
+@fa-var-pagelines: "\f18c";
+@fa-var-paint-brush: "\f1fc";
+@fa-var-paper-plane: "\f1d8";
+@fa-var-paper-plane-o: "\f1d9";
+@fa-var-paperclip: "\f0c6";
+@fa-var-paragraph: "\f1dd";
+@fa-var-paste: "\f0ea";
+@fa-var-pause: "\f04c";
+@fa-var-pause-circle: "\f28b";
+@fa-var-pause-circle-o: "\f28c";
+@fa-var-paw: "\f1b0";
+@fa-var-paypal: "\f1ed";
+@fa-var-pencil: "\f040";
+@fa-var-pencil-square: "\f14b";
+@fa-var-pencil-square-o: "\f044";
+@fa-var-percent: "\f295";
+@fa-var-phone: "\f095";
+@fa-var-phone-square: "\f098";
+@fa-var-photo: "\f03e";
+@fa-var-picture-o: "\f03e";
+@fa-var-pie-chart: "\f200";
+@fa-var-pied-piper: "\f1a7";
+@fa-var-pied-piper-alt: "\f1a8";
+@fa-var-pinterest: "\f0d2";
+@fa-var-pinterest-p: "\f231";
+@fa-var-pinterest-square: "\f0d3";
+@fa-var-plane: "\f072";
+@fa-var-play: "\f04b";
+@fa-var-play-circle: "\f144";
+@fa-var-play-circle-o: "\f01d";
+@fa-var-plug: "\f1e6";
+@fa-var-plus: "\f067";
+@fa-var-plus-circle: "\f055";
+@fa-var-plus-square: "\f0fe";
+@fa-var-plus-square-o: "\f196";
+@fa-var-power-off: "\f011";
+@fa-var-print: "\f02f";
+@fa-var-product-hunt: "\f288";
+@fa-var-puzzle-piece: "\f12e";
+@fa-var-qq: "\f1d6";
+@fa-var-qrcode: "\f029";
+@fa-var-question: "\f128";
+@fa-var-question-circle: "\f059";
+@fa-var-question-circle-o: "\f29c";
+@fa-var-quote-left: "\f10d";
+@fa-var-quote-right: "\f10e";
+@fa-var-ra: "\f1d0";
+@fa-var-random: "\f074";
+@fa-var-rebel: "\f1d0";
+@fa-var-recycle: "\f1b8";
+@fa-var-reddit: "\f1a1";
+@fa-var-reddit-alien: "\f281";
+@fa-var-reddit-square: "\f1a2";
+@fa-var-refresh: "\f021";
+@fa-var-registered: "\f25d";
+@fa-var-remove: "\f00d";
+@fa-var-renren: "\f18b";
+@fa-var-reorder: "\f0c9";
+@fa-var-repeat: "\f01e";
+@fa-var-reply: "\f112";
+@fa-var-reply-all: "\f122";
+@fa-var-retweet: "\f079";
+@fa-var-rmb: "\f157";
+@fa-var-road: "\f018";
+@fa-var-rocket: "\f135";
+@fa-var-rotate-left: "\f0e2";
+@fa-var-rotate-right: "\f01e";
+@fa-var-rouble: "\f158";
+@fa-var-rss: "\f09e";
+@fa-var-rss-square: "\f143";
+@fa-var-rub: "\f158";
+@fa-var-ruble: "\f158";
+@fa-var-rupee: "\f156";
+@fa-var-safari: "\f267";
+@fa-var-save: "\f0c7";
+@fa-var-scissors: "\f0c4";
+@fa-var-scribd: "\f28a";
+@fa-var-search: "\f002";
+@fa-var-search-minus: "\f010";
+@fa-var-search-plus: "\f00e";
+@fa-var-sellsy: "\f213";
+@fa-var-send: "\f1d8";
+@fa-var-send-o: "\f1d9";
+@fa-var-server: "\f233";
+@fa-var-share: "\f064";
+@fa-var-share-alt: "\f1e0";
+@fa-var-share-alt-square: "\f1e1";
+@fa-var-share-square: "\f14d";
+@fa-var-share-square-o: "\f045";
+@fa-var-shekel: "\f20b";
+@fa-var-sheqel: "\f20b";
+@fa-var-shield: "\f132";
+@fa-var-ship: "\f21a";
+@fa-var-shirtsinbulk: "\f214";
+@fa-var-shopping-bag: "\f290";
+@fa-var-shopping-basket: "\f291";
+@fa-var-shopping-cart: "\f07a";
+@fa-var-sign-in: "\f090";
+@fa-var-sign-language: "\f2a7";
+@fa-var-sign-out: "\f08b";
+@fa-var-signal: "\f012";
+@fa-var-signing: "\f2a7";
+@fa-var-simplybuilt: "\f215";
+@fa-var-sitemap: "\f0e8";
+@fa-var-skyatlas: "\f216";
+@fa-var-skype: "\f17e";
+@fa-var-slack: "\f198";
+@fa-var-sliders: "\f1de";
+@fa-var-slideshare: "\f1e7";
+@fa-var-smile-o: "\f118";
+@fa-var-snapchat: "\f2ab";
+@fa-var-snapchat-ghost: "\f2ac";
+@fa-var-snapchat-square: "\f2ad";
+@fa-var-soccer-ball-o: "\f1e3";
+@fa-var-sort: "\f0dc";
+@fa-var-sort-alpha-asc: "\f15d";
+@fa-var-sort-alpha-desc: "\f15e";
+@fa-var-sort-amount-asc: "\f160";
+@fa-var-sort-amount-desc: "\f161";
+@fa-var-sort-asc: "\f0de";
+@fa-var-sort-desc: "\f0dd";
+@fa-var-sort-down: "\f0dd";
+@fa-var-sort-numeric-asc: "\f162";
+@fa-var-sort-numeric-desc: "\f163";
+@fa-var-sort-up: "\f0de";
+@fa-var-soundcloud: "\f1be";
+@fa-var-space-shuttle: "\f197";
+@fa-var-spinner: "\f110";
+@fa-var-spoon: "\f1b1";
+@fa-var-spotify: "\f1bc";
+@fa-var-square: "\f0c8";
+@fa-var-square-o: "\f096";
+@fa-var-stack-exchange: "\f18d";
+@fa-var-stack-overflow: "\f16c";
+@fa-var-star: "\f005";
+@fa-var-star-half: "\f089";
+@fa-var-star-half-empty: "\f123";
+@fa-var-star-half-full: "\f123";
+@fa-var-star-half-o: "\f123";
+@fa-var-star-o: "\f006";
+@fa-var-steam: "\f1b6";
+@fa-var-steam-square: "\f1b7";
+@fa-var-step-backward: "\f048";
+@fa-var-step-forward: "\f051";
+@fa-var-stethoscope: "\f0f1";
+@fa-var-sticky-note: "\f249";
+@fa-var-sticky-note-o: "\f24a";
+@fa-var-stop: "\f04d";
+@fa-var-stop-circle: "\f28d";
+@fa-var-stop-circle-o: "\f28e";
+@fa-var-street-view: "\f21d";
+@fa-var-strikethrough: "\f0cc";
+@fa-var-stumbleupon: "\f1a4";
+@fa-var-stumbleupon-circle: "\f1a3";
+@fa-var-subscript: "\f12c";
+@fa-var-subway: "\f239";
+@fa-var-suitcase: "\f0f2";
+@fa-var-sun-o: "\f185";
+@fa-var-superscript: "\f12b";
+@fa-var-support: "\f1cd";
+@fa-var-table: "\f0ce";
+@fa-var-tablet: "\f10a";
+@fa-var-tachometer: "\f0e4";
+@fa-var-tag: "\f02b";
+@fa-var-tags: "\f02c";
+@fa-var-tasks: "\f0ae";
+@fa-var-taxi: "\f1ba";
+@fa-var-television: "\f26c";
+@fa-var-tencent-weibo: "\f1d5";
+@fa-var-terminal: "\f120";
+@fa-var-text-height: "\f034";
+@fa-var-text-width: "\f035";
+@fa-var-th: "\f00a";
+@fa-var-th-large: "\f009";
+@fa-var-th-list: "\f00b";
+@fa-var-thumb-tack: "\f08d";
+@fa-var-thumbs-down: "\f165";
+@fa-var-thumbs-o-down: "\f088";
+@fa-var-thumbs-o-up: "\f087";
+@fa-var-thumbs-up: "\f164";
+@fa-var-ticket: "\f145";
+@fa-var-times: "\f00d";
+@fa-var-times-circle: "\f057";
+@fa-var-times-circle-o: "\f05c";
+@fa-var-tint: "\f043";
+@fa-var-toggle-down: "\f150";
+@fa-var-toggle-left: "\f191";
+@fa-var-toggle-off: "\f204";
+@fa-var-toggle-on: "\f205";
+@fa-var-toggle-right: "\f152";
+@fa-var-toggle-up: "\f151";
+@fa-var-trademark: "\f25c";
+@fa-var-train: "\f238";
+@fa-var-transgender: "\f224";
+@fa-var-transgender-alt: "\f225";
+@fa-var-trash: "\f1f8";
+@fa-var-trash-o: "\f014";
+@fa-var-tree: "\f1bb";
+@fa-var-trello: "\f181";
+@fa-var-tripadvisor: "\f262";
+@fa-var-trophy: "\f091";
+@fa-var-truck: "\f0d1";
+@fa-var-try: "\f195";
+@fa-var-tty: "\f1e4";
+@fa-var-tumblr: "\f173";
+@fa-var-tumblr-square: "\f174";
+@fa-var-turkish-lira: "\f195";
+@fa-var-tv: "\f26c";
+@fa-var-twitch: "\f1e8";
+@fa-var-twitter: "\f099";
+@fa-var-twitter-square: "\f081";
+@fa-var-umbrella: "\f0e9";
+@fa-var-underline: "\f0cd";
+@fa-var-undo: "\f0e2";
+@fa-var-universal-access: "\f29a";
+@fa-var-university: "\f19c";
+@fa-var-unlink: "\f127";
+@fa-var-unlock: "\f09c";
+@fa-var-unlock-alt: "\f13e";
+@fa-var-unsorted: "\f0dc";
+@fa-var-upload: "\f093";
+@fa-var-usb: "\f287";
+@fa-var-usd: "\f155";
+@fa-var-user: "\f007";
+@fa-var-user-md: "\f0f0";
+@fa-var-user-plus: "\f234";
+@fa-var-user-secret: "\f21b";
+@fa-var-user-times: "\f235";
+@fa-var-users: "\f0c0";
+@fa-var-venus: "\f221";
+@fa-var-venus-double: "\f226";
+@fa-var-venus-mars: "\f228";
+@fa-var-viacoin: "\f237";
+@fa-var-viadeo: "\f2a9";
+@fa-var-viadeo-square: "\f2aa";
+@fa-var-video-camera: "\f03d";
+@fa-var-vimeo: "\f27d";
+@fa-var-vimeo-square: "\f194";
+@fa-var-vine: "\f1ca";
+@fa-var-vk: "\f189";
+@fa-var-volume-control-phone: "\f2a0";
+@fa-var-volume-down: "\f027";
+@fa-var-volume-off: "\f026";
+@fa-var-volume-up: "\f028";
+@fa-var-warning: "\f071";
+@fa-var-wechat: "\f1d7";
+@fa-var-weibo: "\f18a";
+@fa-var-weixin: "\f1d7";
+@fa-var-whatsapp: "\f232";
+@fa-var-wheelchair: "\f193";
+@fa-var-wheelchair-alt: "\f29b";
+@fa-var-wifi: "\f1eb";
+@fa-var-wikipedia-w: "\f266";
+@fa-var-windows: "\f17a";
+@fa-var-won: "\f159";
+@fa-var-wordpress: "\f19a";
+@fa-var-wpbeginner: "\f297";
+@fa-var-wpforms: "\f298";
+@fa-var-wrench: "\f0ad";
+@fa-var-xing: "\f168";
+@fa-var-xing-square: "\f169";
+@fa-var-y-combinator: "\f23b";
+@fa-var-y-combinator-square: "\f1d4";
+@fa-var-yahoo: "\f19e";
+@fa-var-yc: "\f23b";
+@fa-var-yc-square: "\f1d4";
+@fa-var-yelp: "\f1e9";
+@fa-var-yen: "\f157";
+@fa-var-youtube: "\f167";
+@fa-var-youtube-play: "\f16a";
+@fa-var-youtube-square: "\f166";
diff --git a/library/font_awesome/package.json b/library/font_awesome/package.json
index c25c3322e..423490f81 100644
--- a/library/font_awesome/package.json
+++ b/library/font_awesome/package.json
@@ -1,9 +1,13 @@
{
"name": "font-awesome",
- "description": "The iconic font designed for Bootstrap",
- "version": "3.2.1",
+ "description": "The iconic font and CSS framework",
+ "version": "4.6.1",
+ "style": "css/font-awesome.css",
"keywords": ["font", "awesome", "fontawesome", "icon", "font", "bootstrap"],
"homepage": "http://fontawesome.io/",
+ "bugs": {
+ "url" : "http://github.com/FortAwesome/Font-Awesome/issues"
+ },
"author": {
"name": "Dave Gandy",
"email": "dave@fontawesome.io",
@@ -15,30 +19,26 @@
},
"contributors": [
{
- "name": "Rob Madole",
- "web": "http://twitter.com/robmadole"
- },
- {
- "name": "Geremia Taglialatela",
- "web": "http://twitter.com/gtagliala"
+ "name": "Brian Talbot",
+ "web": "http://twitter.com/talbs"
},
{
"name": "Travis Chase",
"web": "http://twitter.com/supercodepoet"
- }
- ],
- "licenses": [
+ },
{
- "type": "SIL OFL 1.1",
- "url": "http://scripts.sil.org/OFL"
+ "name": "Rob Madole",
+ "web": "http://twitter.com/robmadole"
},
{
- "type": "MIT License",
- "url": "http://opensource.org/licenses/mit-license.html"
+ "name": "Geremia Taglialatela",
+ "web": "http://twitter.com/gtagliala"
}
],
+ "license": "(OFL-1.1 AND MIT)",
"dependencies": {
- "jekyll": "1.0.2",
- "lessc": "1.3.3"
+ },
+ "engines" : {
+ "node" : ">=0.10.3"
}
}
diff --git a/library/font_awesome/scss/_animated.scss b/library/font_awesome/scss/_animated.scss
new file mode 100644
index 000000000..8a020dbff
--- /dev/null
+++ b/library/font_awesome/scss/_animated.scss
@@ -0,0 +1,34 @@
+// Spinning Icons
+// --------------------------
+
+.#{$fa-css-prefix}-spin {
+ -webkit-animation: fa-spin 2s infinite linear;
+ animation: fa-spin 2s infinite linear;
+}
+
+.#{$fa-css-prefix}-pulse {
+ -webkit-animation: fa-spin 1s infinite steps(8);
+ animation: fa-spin 1s infinite steps(8);
+}
+
+@-webkit-keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+
+@keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
diff --git a/library/font_awesome/scss/_bootstrap.scss b/library/font_awesome/scss/_bootstrap.scss
deleted file mode 100644
index 837d2df65..000000000
--- a/library/font_awesome/scss/_bootstrap.scss
+++ /dev/null
@@ -1,84 +0,0 @@
-/* BOOTSTRAP SPECIFIC CLASSES
- * -------------------------- */
-
-/* Bootstrap 2.0 sprites.less reset */
-[class^="icon-"],
-[class*=" icon-"] {
- display: inline;
- width: auto;
- height: auto;
- line-height: normal;
- vertical-align: baseline;
- background-image: none;
- background-position: 0% 0%;
- background-repeat: repeat;
- margin-top: 0;
-}
-
-/* more sprites.less reset */
-.icon-white,
-.nav-pills > .active > a > [class^="icon-"],
-.nav-pills > .active > a > [class*=" icon-"],
-.nav-list > .active > a > [class^="icon-"],
-.nav-list > .active > a > [class*=" icon-"],
-.navbar-inverse .nav > .active > a > [class^="icon-"],
-.navbar-inverse .nav > .active > a > [class*=" icon-"],
-.dropdown-menu > li > a:hover > [class^="icon-"],
-.dropdown-menu > li > a:hover > [class*=" icon-"],
-.dropdown-menu > .active > a > [class^="icon-"],
-.dropdown-menu > .active > a > [class*=" icon-"],
-.dropdown-submenu:hover > a > [class^="icon-"],
-.dropdown-submenu:hover > a > [class*=" icon-"] {
- background-image: none;
-}
-
-
-/* keeps Bootstrap styles with and without icons the same */
-.btn, .nav {
- [class^="icon-"],
- [class*=" icon-"] {
- // display: inline;
- &.icon-large { line-height: .9em; }
- &.icon-spin { display: inline-block; }
- }
-}
-.nav-tabs, .nav-pills {
- [class^="icon-"],
- [class*=" icon-"] {
- &, &.icon-large { line-height: .9em; }
- }
-}
-.btn {
- [class^="icon-"],
- [class*=" icon-"] {
- &.pull-left, &.pull-right {
- &.icon-2x { margin-top: .18em; }
- }
- &.icon-spin.icon-large { line-height: .8em; }
- }
-}
-.btn.btn-small {
- [class^="icon-"],
- [class*=" icon-"] {
- &.pull-left, &.pull-right {
- &.icon-2x { margin-top: .25em; }
- }
- }
-}
-.btn.btn-large {
- [class^="icon-"],
- [class*=" icon-"] {
- margin-top: 0; // overrides bootstrap default
- &.pull-left, &.pull-right {
- &.icon-2x { margin-top: .05em; }
- }
- &.pull-left.icon-2x { margin-right: .2em; }
- &.pull-right.icon-2x { margin-left: .2em; }
- }
-}
-
-/* Fixes alignment in nav lists */
-.nav-list [class^="icon-"],
-.nav-list [class*=" icon-"] {
- line-height: inherit;
-}
diff --git a/library/font_awesome/scss/_bordered-pulled.scss b/library/font_awesome/scss/_bordered-pulled.scss
new file mode 100644
index 000000000..d4b85a02f
--- /dev/null
+++ b/library/font_awesome/scss/_bordered-pulled.scss
@@ -0,0 +1,25 @@
+// Bordered & Pulled
+// -------------------------
+
+.#{$fa-css-prefix}-border {
+ padding: .2em .25em .15em;
+ border: solid .08em $fa-border-color;
+ border-radius: .1em;
+}
+
+.#{$fa-css-prefix}-pull-left { float: left; }
+.#{$fa-css-prefix}-pull-right { float: right; }
+
+.#{$fa-css-prefix} {
+ &.#{$fa-css-prefix}-pull-left { margin-right: .3em; }
+ &.#{$fa-css-prefix}-pull-right { margin-left: .3em; }
+}
+
+/* Deprecated as of 4.4.0 */
+.pull-right { float: right; }
+.pull-left { float: left; }
+
+.#{$fa-css-prefix} {
+ &.pull-left { margin-right: .3em; }
+ &.pull-right { margin-left: .3em; }
+}
diff --git a/library/font_awesome/scss/_core.scss b/library/font_awesome/scss/_core.scss
index 0189c73df..7425ef85f 100644
--- a/library/font_awesome/scss/_core.scss
+++ b/library/font_awesome/scss/_core.scss
@@ -1,129 +1,12 @@
-/* FONT AWESOME CORE
- * -------------------------- */
-
-[class^="icon-"],
-[class*=" icon-"] {
- @include icon-FontAwesome();
-}
-
-[class^="icon-"]:before,
-[class*=" icon-"]:before {
- text-decoration: inherit;
- display: inline-block;
- speak: none;
-}
-
-/* makes the font 33% larger relative to the icon container */
-.icon-large:before {
- vertical-align: -10%;
- font-size: (4em/3);
-}
-
-/* makes sure icons active on rollover in links */
-a {
- [class^="icon-"],
- [class*=" icon-"] {
- display: inline;
- }
-}
-
-/* increased font size for icon-large */
-[class^="icon-"],
-[class*=" icon-"] {
- &.icon-fixed-width {
- display: inline-block;
- width: (16em/14);
- text-align: right;
- padding-right: (4em/14);
- &.icon-large {
- width: (20em/14);
- }
- }
-}
-
-.icons-ul {
- margin-left: $icons-li-width;
- list-style-type: none;
-
- > li { position: relative; }
-
- .icon-li {
- position: absolute;
- left: -$icons-li-width;
- width: $icons-li-width;
- text-align: center;
- line-height: inherit;
- }
-}
-
-// allows usage of the hide class directly on font awesome icons
-[class^="icon-"],
-[class*=" icon-"] {
- &.hide {
- display: none;
- }
-}
-
-.icon-muted { color: $iconMuted; }
-.icon-light { color: $iconLight; }
-.icon-dark { color: $iconDark; }
-
-// Icon Borders
-// -------------------------
-
-.icon-border {
- border: solid 1px $borderColor;
- padding: .2em .25em .15em;
- @include border-radius(3px);
-}
-
-// Icon Sizes
-// -------------------------
-
-.icon-2x {
- font-size: 2em;
- &.icon-border {
- border-width: 2px;
- @include border-radius(4px);
- }
-}
-.icon-3x {
- font-size: 3em;
- &.icon-border {
- border-width: 3px;
- @include border-radius(5px);
- }
-}
-.icon-4x {
- font-size: 4em;
- &.icon-border {
- border-width: 4px;
- @include border-radius(6px);
- }
-}
-
-.icon-5x {
- font-size: 5em;
- &.icon-border {
- border-width: 5px;
- @include border-radius(7px);
- }
-}
-
-
-// Floats & Margins
+// Base Class Definition
// -------------------------
-// Quick floats
-.pull-right { float: right; }
-.pull-left { float: left; }
+.#{$fa-css-prefix} {
+ display: inline-block;
+ font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // 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;
-[class^="icon-"],
-[class*=" icon-"] {
- &.pull-left {
- margin-right: .3em;
- }
- &.pull-right {
- margin-left: .3em;
- }
}
diff --git a/library/font_awesome/scss/_extras.scss b/library/font_awesome/scss/_extras.scss
deleted file mode 100644
index 9a25845d8..000000000
--- a/library/font_awesome/scss/_extras.scss
+++ /dev/null
@@ -1,93 +0,0 @@
-/* EXTRAS
- * -------------------------- */
-
-/* Stacked and layered icon */
-@include icon-stack();
-
-/* Animated rotating icon */
-.icon-spin {
- display: inline-block;
- -moz-animation: spin 2s infinite linear;
- -o-animation: spin 2s infinite linear;
- -webkit-animation: spin 2s infinite linear;
- animation: spin 2s infinite linear;
-}
-
-/* Prevent stack and spinners from being taken inline when inside a link */
-a .icon-stack,
-a .icon-spin {
- display: inline-block;
- text-decoration: none;
-}
-
-@-moz-keyframes spin {
- 0% { -moz-transform: rotate(0deg); }
- 100% { -moz-transform: rotate(359deg); }
-}
-@-webkit-keyframes spin {
- 0% { -webkit-transform: rotate(0deg); }
- 100% { -webkit-transform: rotate(359deg); }
-}
-@-o-keyframes spin {
- 0% { -o-transform: rotate(0deg); }
- 100% { -o-transform: rotate(359deg); }
-}
-@-ms-keyframes spin {
- 0% { -ms-transform: rotate(0deg); }
- 100% { -ms-transform: rotate(359deg); }
-}
-@keyframes spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(359deg); }
-}
-
-/* Icon rotations and mirroring */
-.icon-rotate-90:before {
- -webkit-transform: rotate(90deg);
- -moz-transform: rotate(90deg);
- -ms-transform: rotate(90deg);
- -o-transform: rotate(90deg);
- transform: rotate(90deg);
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
-}
-
-.icon-rotate-180:before {
- -webkit-transform: rotate(180deg);
- -moz-transform: rotate(180deg);
- -ms-transform: rotate(180deg);
- -o-transform: rotate(180deg);
- transform: rotate(180deg);
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
-}
-
-.icon-rotate-270:before {
- -webkit-transform: rotate(270deg);
- -moz-transform: rotate(270deg);
- -ms-transform: rotate(270deg);
- -o-transform: rotate(270deg);
- transform: rotate(270deg);
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
-}
-
-.icon-flip-horizontal:before {
- -webkit-transform: scale(-1, 1);
- -moz-transform: scale(-1, 1);
- -ms-transform: scale(-1, 1);
- -o-transform: scale(-1, 1);
- transform: scale(-1, 1);
-}
-
-.icon-flip-vertical:before {
- -webkit-transform: scale(1, -1);
- -moz-transform: scale(1, -1);
- -ms-transform: scale(1, -1);
- -o-transform: scale(1, -1);
- transform: scale(1, -1);
-}
-
-/* ensure rotation occurs inside anchor tags */
-a {
- .icon-rotate-90, .icon-rotate-180, .icon-rotate-270, .icon-flip-horizontal, .icon-flip-vertical {
- &:before { display: inline-block; }
- }
-}
diff --git a/library/font_awesome/scss/_fixed-width.scss b/library/font_awesome/scss/_fixed-width.scss
new file mode 100644
index 000000000..b221c9813
--- /dev/null
+++ b/library/font_awesome/scss/_fixed-width.scss
@@ -0,0 +1,6 @@
+// Fixed Width Icons
+// -------------------------
+.#{$fa-css-prefix}-fw {
+ width: (18em / 14);
+ text-align: center;
+}
diff --git a/library/font_awesome/scss/_icons.scss b/library/font_awesome/scss/_icons.scss
index eefda0c9e..b64017aef 100644
--- a/library/font_awesome/scss/_icons.scss
+++ b/library/font_awesome/scss/_icons.scss
@@ -1,381 +1,724 @@
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
- * readers do not read off random characters that represent icons */
+ readers do not read off random characters that represent icons */
-.icon-glass:before { content: $glass; }
-.icon-music:before { content: $music; }
-.icon-search:before { content: $search; }
-.icon-envelope-alt:before { content: $envelope-alt; }
-.icon-heart:before { content: $heart; }
-.icon-star:before { content: $star; }
-.icon-star-empty:before { content: $star-empty; }
-.icon-user:before { content: $user; }
-.icon-film:before { content: $film; }
-.icon-th-large:before { content: $th-large; }
-.icon-th:before { content: $th; }
-.icon-th-list:before { content: $th-list; }
-.icon-ok:before { content: $ok; }
-.icon-remove:before { content: $remove; }
-.icon-zoom-in:before { content: $zoom-in; }
-.icon-zoom-out:before { content: $zoom-out; }
-.icon-power-off:before,
-.icon-off:before { content: $off; }
-.icon-signal:before { content: $signal; }
-.icon-gear:before,
-.icon-cog:before { content: $cog; }
-.icon-trash:before { content: $trash; }
-.icon-home:before { content: $home; }
-.icon-file-alt:before { content: $file-alt; }
-.icon-time:before { content: $time; }
-.icon-road:before { content: $road; }
-.icon-download-alt:before { content: $download-alt; }
-.icon-download:before { content: $download; }
-.icon-upload:before { content: $upload; }
-.icon-inbox:before { content: $inbox; }
-.icon-play-circle:before { content: $play-circle; }
-.icon-rotate-right:before,
-.icon-repeat:before { content: $repeat; }
-.icon-refresh:before { content: $refresh; }
-.icon-list-alt:before { content: $list-alt; }
-.icon-lock:before { content: $lock; }
-.icon-flag:before { content: $flag; }
-.icon-headphones:before { content: $headphones; }
-.icon-volume-off:before { content: $volume-off; }
-.icon-volume-down:before { content: $volume-down; }
-.icon-volume-up:before { content: $volume-up; }
-.icon-qrcode:before { content: $qrcode; }
-.icon-barcode:before { content: $barcode; }
-.icon-tag:before { content: $tag; }
-.icon-tags:before { content: $tags; }
-.icon-book:before { content: $book; }
-.icon-bookmark:before { content: $bookmark; }
-.icon-print:before { content: $print; }
-.icon-camera:before { content: $camera; }
-.icon-font:before { content: $font; }
-.icon-bold:before { content: $bold; }
-.icon-italic:before { content: $italic; }
-.icon-text-height:before { content: $text-height; }
-.icon-text-width:before { content: $text-width; }
-.icon-align-left:before { content: $align-left; }
-.icon-align-center:before { content: $align-center; }
-.icon-align-right:before { content: $align-right; }
-.icon-align-justify:before { content: $align-justify; }
-.icon-list:before { content: $list; }
-.icon-indent-left:before { content: $indent-left; }
-.icon-indent-right:before { content: $indent-right; }
-.icon-facetime-video:before { content: $facetime-video; }
-.icon-picture:before { content: $picture; }
-.icon-pencil:before { content: $pencil; }
-.icon-map-marker:before { content: $map-marker; }
-.icon-adjust:before { content: $adjust; }
-.icon-tint:before { content: $tint; }
-.icon-edit:before { content: $edit; }
-.icon-share:before { content: $share; }
-.icon-check:before { content: $check; }
-.icon-move:before { content: $move; }
-.icon-step-backward:before { content: $step-backward; }
-.icon-fast-backward:before { content: $fast-backward; }
-.icon-backward:before { content: $backward; }
-.icon-play:before { content: $play; }
-.icon-pause:before { content: $pause; }
-.icon-stop:before { content: $stop; }
-.icon-forward:before { content: $forward; }
-.icon-fast-forward:before { content: $fast-forward; }
-.icon-step-forward:before { content: $step-forward; }
-.icon-eject:before { content: $eject; }
-.icon-chevron-left:before { content: $chevron-left; }
-.icon-chevron-right:before { content: $chevron-right; }
-.icon-plus-sign:before { content: $plus-sign; }
-.icon-minus-sign:before { content: $minus-sign; }
-.icon-remove-sign:before { content: $remove-sign; }
-.icon-ok-sign:before { content: $ok-sign; }
-.icon-question-sign:before { content: $question-sign; }
-.icon-info-sign:before { content: $info-sign; }
-.icon-screenshot:before { content: $screenshot; }
-.icon-remove-circle:before { content: $remove-circle; }
-.icon-ok-circle:before { content: $ok-circle; }
-.icon-ban-circle:before { content: $ban-circle; }
-.icon-arrow-left:before { content: $arrow-left; }
-.icon-arrow-right:before { content: $arrow-right; }
-.icon-arrow-up:before { content: $arrow-up; }
-.icon-arrow-down:before { content: $arrow-down; }
-.icon-mail-forward:before,
-.icon-share-alt:before { content: $share-alt; }
-.icon-resize-full:before { content: $resize-full; }
-.icon-resize-small:before { content: $resize-small; }
-.icon-plus:before { content: $plus; }
-.icon-minus:before { content: $minus; }
-.icon-asterisk:before { content: $asterisk; }
-.icon-exclamation-sign:before { content: $exclamation-sign; }
-.icon-gift:before { content: $gift; }
-.icon-leaf:before { content: $leaf; }
-.icon-fire:before { content: $fire; }
-.icon-eye-open:before { content: $eye-open; }
-.icon-eye-close:before { content: $eye-close; }
-.icon-warning-sign:before { content: $warning-sign; }
-.icon-plane:before { content: $plane; }
-.icon-calendar:before { content: $calendar; }
-.icon-random:before { content: $random; }
-.icon-comment:before { content: $comment; }
-.icon-magnet:before { content: $magnet; }
-.icon-chevron-up:before { content: $chevron-up; }
-.icon-chevron-down:before { content: $chevron-down; }
-.icon-retweet:before { content: $retweet; }
-.icon-shopping-cart:before { content: $shopping-cart; }
-.icon-folder-close:before { content: $folder-close; }
-.icon-folder-open:before { content: $folder-open; }
-.icon-resize-vertical:before { content: $resize-vertical; }
-.icon-resize-horizontal:before { content: $resize-horizontal; }
-.icon-bar-chart:before { content: $bar-chart; }
-.icon-twitter-sign:before { content: $twitter-sign; }
-.icon-facebook-sign:before { content: $facebook-sign; }
-.icon-camera-retro:before { content: $camera-retro; }
-.icon-key:before { content: $key; }
-.icon-gears:before,
-.icon-cogs:before { content: $cogs; }
-.icon-comments:before { content: $comments; }
-.icon-thumbs-up-alt:before { content: $thumbs-up-alt; }
-.icon-thumbs-down-alt:before { content: $thumbs-down-alt; }
-.icon-star-half:before { content: $star-half; }
-.icon-heart-empty:before { content: $heart-empty; }
-.icon-signout:before { content: $signout; }
-.icon-linkedin-sign:before { content: $linkedin-sign; }
-.icon-pushpin:before { content: $pushpin; }
-.icon-external-link:before { content: $external-link; }
-.icon-signin:before { content: $signin; }
-.icon-trophy:before { content: $trophy; }
-.icon-github-sign:before { content: $github-sign; }
-.icon-upload-alt:before { content: $upload-alt; }
-.icon-lemon:before { content: $lemon; }
-.icon-phone:before { content: $phone; }
-.icon-unchecked:before,
-.icon-check-empty:before { content: $check-empty; }
-.icon-bookmark-empty:before { content: $bookmark-empty; }
-.icon-phone-sign:before { content: $phone-sign; }
-.icon-twitter:before { content: $twitter; }
-.icon-facebook:before { content: $facebook; }
-.icon-github:before { content: $github; }
-.icon-unlock:before { content: $unlock; }
-.icon-credit-card:before { content: $credit-card; }
-.icon-rss:before { content: $rss; }
-.icon-hdd:before { content: $hdd; }
-.icon-bullhorn:before { content: $bullhorn; }
-.icon-bell:before { content: $bell; }
-.icon-certificate:before { content: $certificate; }
-.icon-hand-right:before { content: $hand-right; }
-.icon-hand-left:before { content: $hand-left; }
-.icon-hand-up:before { content: $hand-up; }
-.icon-hand-down:before { content: $hand-down; }
-.icon-circle-arrow-left:before { content: $circle-arrow-left; }
-.icon-circle-arrow-right:before { content: $circle-arrow-right; }
-.icon-circle-arrow-up:before { content: $circle-arrow-up; }
-.icon-circle-arrow-down:before { content: $circle-arrow-down; }
-.icon-globe:before { content: $globe; }
-.icon-wrench:before { content: $wrench; }
-.icon-tasks:before { content: $tasks; }
-.icon-filter:before { content: $filter; }
-.icon-briefcase:before { content: $briefcase; }
-.icon-fullscreen:before { content: $fullscreen; }
-.icon-group:before { content: $group; }
-.icon-link:before { content: $link; }
-.icon-cloud:before { content: $cloud; }
-.icon-beaker:before { content: $beaker; }
-.icon-cut:before { content: $cut; }
-.icon-copy:before { content: $copy; }
-.icon-paperclip:before,
-.icon-paper-clip:before { content: $paper-clip; }
-.icon-save:before { content: $save; }
-.icon-sign-blank:before { content: $sign-blank; }
-.icon-reorder:before { content: $reorder; }
-.icon-list-ul:before { content: $list-ul; }
-.icon-list-ol:before { content: $list-ol; }
-.icon-strikethrough:before { content: $strikethrough; }
-.icon-underline:before { content: $underline; }
-.icon-table:before { content: $table; }
-.icon-magic:before { content: $magic; }
-.icon-truck:before { content: $truck; }
-.icon-pinterest:before { content: $pinterest; }
-.icon-pinterest-sign:before { content: $pinterest-sign; }
-.icon-google-plus-sign:before { content: $google-plus-sign; }
-.icon-google-plus:before { content: $google-plus; }
-.icon-money:before { content: $money; }
-.icon-caret-down:before { content: $caret-down; }
-.icon-caret-up:before { content: $caret-up; }
-.icon-caret-left:before { content: $caret-left; }
-.icon-caret-right:before { content: $caret-right; }
-.icon-columns:before { content: $columns; }
-.icon-sort:before { content: $sort; }
-.icon-sort-down:before { content: $sort-down; }
-.icon-sort-up:before { content: $sort-up; }
-.icon-envelope:before { content: $envelope; }
-.icon-linkedin:before { content: $linkedin; }
-.icon-rotate-left:before,
-.icon-undo:before { content: $undo; }
-.icon-legal:before { content: $legal; }
-.icon-dashboard:before { content: $dashboard; }
-.icon-comment-alt:before { content: $comment-alt; }
-.icon-comments-alt:before { content: $comments-alt; }
-.icon-bolt:before { content: $bolt; }
-.icon-sitemap:before { content: $sitemap; }
-.icon-umbrella:before { content: $umbrella; }
-.icon-paste:before { content: $paste; }
-.icon-lightbulb:before { content: $lightbulb; }
-.icon-exchange:before { content: $exchange; }
-.icon-cloud-download:before { content: $cloud-download; }
-.icon-cloud-upload:before { content: $cloud-upload; }
-.icon-user-md:before { content: $user-md; }
-.icon-stethoscope:before { content: $stethoscope; }
-.icon-suitcase:before { content: $suitcase; }
-.icon-bell-alt:before { content: $bell-alt; }
-.icon-coffee:before { content: $coffee; }
-.icon-food:before { content: $food; }
-.icon-file-text-alt:before { content: $file-text-alt; }
-.icon-building:before { content: $building; }
-.icon-hospital:before { content: $hospital; }
-.icon-ambulance:before { content: $ambulance; }
-.icon-medkit:before { content: $medkit; }
-.icon-fighter-jet:before { content: $fighter-jet; }
-.icon-beer:before { content: $beer; }
-.icon-h-sign:before { content: $h-sign; }
-.icon-plus-sign-alt:before { content: $plus-sign-alt; }
-.icon-double-angle-left:before { content: $double-angle-left; }
-.icon-double-angle-right:before { content: $double-angle-right; }
-.icon-double-angle-up:before { content: $double-angle-up; }
-.icon-double-angle-down:before { content: $double-angle-down; }
-.icon-angle-left:before { content: $angle-left; }
-.icon-angle-right:before { content: $angle-right; }
-.icon-angle-up:before { content: $angle-up; }
-.icon-angle-down:before { content: $angle-down; }
-.icon-desktop:before { content: $desktop; }
-.icon-laptop:before { content: $laptop; }
-.icon-tablet:before { content: $tablet; }
-.icon-mobile-phone:before { content: $mobile-phone; }
-.icon-circle-blank:before { content: $circle-blank; }
-.icon-quote-left:before { content: $quote-left; }
-.icon-quote-right:before { content: $quote-right; }
-.icon-spinner:before { content: $spinner; }
-.icon-circle:before { content: $circle; }
-.icon-mail-reply:before,
-.icon-reply:before { content: $reply; }
-.icon-github-alt:before { content: $github-alt; }
-.icon-folder-close-alt:before { content: $folder-close-alt; }
-.icon-folder-open-alt:before { content: $folder-open-alt; }
-.icon-expand-alt:before { content: $expand-alt; }
-.icon-collapse-alt:before { content: $collapse-alt; }
-.icon-smile:before { content: $smile; }
-.icon-frown:before { content: $frown; }
-.icon-meh:before { content: $meh; }
-.icon-gamepad:before { content: $gamepad; }
-.icon-keyboard:before { content: $keyboard; }
-.icon-flag-alt:before { content: $flag-alt; }
-.icon-flag-checkered:before { content: $flag-checkered; }
-.icon-terminal:before { content: $terminal; }
-.icon-code:before { content: $code; }
-.icon-reply-all:before { content: $reply-all; }
-.icon-mail-reply-all:before { content: $mail-reply-all; }
-.icon-star-half-full:before,
-.icon-star-half-empty:before { content: $star-half-empty; }
-.icon-location-arrow:before { content: $location-arrow; }
-.icon-crop:before { content: $crop; }
-.icon-code-fork:before { content: $code-fork; }
-.icon-unlink:before { content: $unlink; }
-.icon-question:before { content: $question; }
-.icon-info:before { content: $info; }
-.icon-exclamation:before { content: $exclamation; }
-.icon-superscript:before { content: $superscript; }
-.icon-subscript:before { content: $subscript; }
-.icon-eraser:before { content: $eraser; }
-.icon-puzzle-piece:before { content: $puzzle-piece; }
-.icon-microphone:before { content: $microphone; }
-.icon-microphone-off:before { content: $microphone-off; }
-.icon-shield:before { content: $shield; }
-.icon-calendar-empty:before { content: $calendar-empty; }
-.icon-fire-extinguisher:before { content: $fire-extinguisher; }
-.icon-rocket:before { content: $rocket; }
-.icon-maxcdn:before { content: $maxcdn; }
-.icon-chevron-sign-left:before { content: $chevron-sign-left; }
-.icon-chevron-sign-right:before { content: $chevron-sign-right; }
-.icon-chevron-sign-up:before { content: $chevron-sign-up; }
-.icon-chevron-sign-down:before { content: $chevron-sign-down; }
-.icon-html5:before { content: $html5; }
-.icon-css3:before { content: $css3; }
-.icon-anchor:before { content: $anchor; }
-.icon-unlock-alt:before { content: $unlock-alt; }
-.icon-bullseye:before { content: $bullseye; }
-.icon-ellipsis-horizontal:before { content: $ellipsis-horizontal; }
-.icon-ellipsis-vertical:before { content: $ellipsis-vertical; }
-.icon-rss-sign:before { content: $rss-sign; }
-.icon-play-sign:before { content: $play-sign; }
-.icon-ticket:before { content: $ticket; }
-.icon-minus-sign-alt:before { content: $minus-sign-alt; }
-.icon-check-minus:before { content: $check-minus; }
-.icon-level-up:before { content: $level-up; }
-.icon-level-down:before { content: $level-down; }
-.icon-check-sign:before { content: $check-sign; }
-.icon-edit-sign:before { content: $edit-sign; }
-.icon-external-link-sign:before { content: $external-link-sign; }
-.icon-share-sign:before { content: $share-sign; }
-.icon-compass:before { content: $compass; }
-.icon-collapse:before { content: $collapse; }
-.icon-collapse-top:before { content: $collapse-top; }
-.icon-expand:before { content: $expand; }
-.icon-euro:before,
-.icon-eur:before { content: $eur; }
-.icon-gbp:before { content: $gbp; }
-.icon-dollar:before,
-.icon-usd:before { content: $usd; }
-.icon-rupee:before,
-.icon-inr:before { content: $inr; }
-.icon-yen:before,
-.icon-jpy:before { content: $jpy; }
-.icon-renminbi:before,
-.icon-cny:before { content: $cny; }
-.icon-won:before,
-.icon-krw:before { content: $krw; }
-.icon-bitcoin:before,
-.icon-btc:before { content: $btc; }
-.icon-file:before { content: $file; }
-.icon-file-text:before { content: $file-text; }
-.icon-sort-by-alphabet:before { content: $sort-by-alphabet; }
-.icon-sort-by-alphabet-alt:before { content: $sort-by-alphabet-alt; }
-.icon-sort-by-attributes:before { content: $sort-by-attributes; }
-.icon-sort-by-attributes-alt:before { content: $sort-by-attributes-alt; }
-.icon-sort-by-order:before { content: $sort-by-order; }
-.icon-sort-by-order-alt:before { content: $sort-by-order-alt; }
-.icon-thumbs-up:before { content: $thumbs-up; }
-.icon-thumbs-down:before { content: $thumbs-down; }
-.icon-youtube-sign:before { content: $youtube-sign; }
-.icon-youtube:before { content: $youtube; }
-.icon-xing:before { content: $xing; }
-.icon-xing-sign:before { content: $xing-sign; }
-.icon-youtube-play:before { content: $youtube-play; }
-.icon-dropbox:before { content: $dropbox; }
-.icon-stackexchange:before { content: $stackexchange; }
-.icon-instagram:before { content: $instagram; }
-.icon-flickr:before { content: $flickr; }
-.icon-adn:before { content: $adn; }
-.icon-bitbucket:before { content: $bitbucket; }
-.icon-bitbucket-sign:before { content: $bitbucket-sign; }
-.icon-tumblr:before { content: $tumblr; }
-.icon-tumblr-sign:before { content: $tumblr-sign; }
-.icon-long-arrow-down:before { content: $long-arrow-down; }
-.icon-long-arrow-up:before { content: $long-arrow-up; }
-.icon-long-arrow-left:before { content: $long-arrow-left; }
-.icon-long-arrow-right:before { content: $long-arrow-right; }
-.icon-apple:before { content: $apple; }
-.icon-windows:before { content: $windows; }
-.icon-android:before { content: $android; }
-.icon-linux:before { content: $linux; }
-.icon-dribbble:before { content: $dribbble; }
-.icon-skype:before { content: $skype; }
-.icon-foursquare:before { content: $foursquare; }
-.icon-trello:before { content: $trello; }
-.icon-female:before { content: $female; }
-.icon-male:before { content: $male; }
-.icon-gittip:before { content: $gittip; }
-.icon-sun:before { content: $sun; }
-.icon-moon:before { content: $moon; }
-.icon-archive:before { content: $archive; }
-.icon-bug:before { content: $bug; }
-.icon-vk:before { content: $vk; }
-.icon-weibo:before { content: $weibo; }
-.icon-renren:before { content: $renren; }
+.#{$fa-css-prefix}-glass:before { content: $fa-var-glass; }
+.#{$fa-css-prefix}-music:before { content: $fa-var-music; }
+.#{$fa-css-prefix}-search:before { content: $fa-var-search; }
+.#{$fa-css-prefix}-envelope-o:before { content: $fa-var-envelope-o; }
+.#{$fa-css-prefix}-heart:before { content: $fa-var-heart; }
+.#{$fa-css-prefix}-star:before { content: $fa-var-star; }
+.#{$fa-css-prefix}-star-o:before { content: $fa-var-star-o; }
+.#{$fa-css-prefix}-user:before { content: $fa-var-user; }
+.#{$fa-css-prefix}-film:before { content: $fa-var-film; }
+.#{$fa-css-prefix}-th-large:before { content: $fa-var-th-large; }
+.#{$fa-css-prefix}-th:before { content: $fa-var-th; }
+.#{$fa-css-prefix}-th-list:before { content: $fa-var-th-list; }
+.#{$fa-css-prefix}-check:before { content: $fa-var-check; }
+.#{$fa-css-prefix}-remove:before,
+.#{$fa-css-prefix}-close:before,
+.#{$fa-css-prefix}-times:before { content: $fa-var-times; }
+.#{$fa-css-prefix}-search-plus:before { content: $fa-var-search-plus; }
+.#{$fa-css-prefix}-search-minus:before { content: $fa-var-search-minus; }
+.#{$fa-css-prefix}-power-off:before { content: $fa-var-power-off; }
+.#{$fa-css-prefix}-signal:before { content: $fa-var-signal; }
+.#{$fa-css-prefix}-gear:before,
+.#{$fa-css-prefix}-cog:before { content: $fa-var-cog; }
+.#{$fa-css-prefix}-trash-o:before { content: $fa-var-trash-o; }
+.#{$fa-css-prefix}-home:before { content: $fa-var-home; }
+.#{$fa-css-prefix}-file-o:before { content: $fa-var-file-o; }
+.#{$fa-css-prefix}-clock-o:before { content: $fa-var-clock-o; }
+.#{$fa-css-prefix}-road:before { content: $fa-var-road; }
+.#{$fa-css-prefix}-download:before { content: $fa-var-download; }
+.#{$fa-css-prefix}-arrow-circle-o-down:before { content: $fa-var-arrow-circle-o-down; }
+.#{$fa-css-prefix}-arrow-circle-o-up:before { content: $fa-var-arrow-circle-o-up; }
+.#{$fa-css-prefix}-inbox:before { content: $fa-var-inbox; }
+.#{$fa-css-prefix}-play-circle-o:before { content: $fa-var-play-circle-o; }
+.#{$fa-css-prefix}-rotate-right:before,
+.#{$fa-css-prefix}-repeat:before { content: $fa-var-repeat; }
+.#{$fa-css-prefix}-refresh:before { content: $fa-var-refresh; }
+.#{$fa-css-prefix}-list-alt:before { content: $fa-var-list-alt; }
+.#{$fa-css-prefix}-lock:before { content: $fa-var-lock; }
+.#{$fa-css-prefix}-flag:before { content: $fa-var-flag; }
+.#{$fa-css-prefix}-headphones:before { content: $fa-var-headphones; }
+.#{$fa-css-prefix}-volume-off:before { content: $fa-var-volume-off; }
+.#{$fa-css-prefix}-volume-down:before { content: $fa-var-volume-down; }
+.#{$fa-css-prefix}-volume-up:before { content: $fa-var-volume-up; }
+.#{$fa-css-prefix}-qrcode:before { content: $fa-var-qrcode; }
+.#{$fa-css-prefix}-barcode:before { content: $fa-var-barcode; }
+.#{$fa-css-prefix}-tag:before { content: $fa-var-tag; }
+.#{$fa-css-prefix}-tags:before { content: $fa-var-tags; }
+.#{$fa-css-prefix}-book:before { content: $fa-var-book; }
+.#{$fa-css-prefix}-bookmark:before { content: $fa-var-bookmark; }
+.#{$fa-css-prefix}-print:before { content: $fa-var-print; }
+.#{$fa-css-prefix}-camera:before { content: $fa-var-camera; }
+.#{$fa-css-prefix}-font:before { content: $fa-var-font; }
+.#{$fa-css-prefix}-bold:before { content: $fa-var-bold; }
+.#{$fa-css-prefix}-italic:before { content: $fa-var-italic; }
+.#{$fa-css-prefix}-text-height:before { content: $fa-var-text-height; }
+.#{$fa-css-prefix}-text-width:before { content: $fa-var-text-width; }
+.#{$fa-css-prefix}-align-left:before { content: $fa-var-align-left; }
+.#{$fa-css-prefix}-align-center:before { content: $fa-var-align-center; }
+.#{$fa-css-prefix}-align-right:before { content: $fa-var-align-right; }
+.#{$fa-css-prefix}-align-justify:before { content: $fa-var-align-justify; }
+.#{$fa-css-prefix}-list:before { content: $fa-var-list; }
+.#{$fa-css-prefix}-dedent:before,
+.#{$fa-css-prefix}-outdent:before { content: $fa-var-outdent; }
+.#{$fa-css-prefix}-indent:before { content: $fa-var-indent; }
+.#{$fa-css-prefix}-video-camera:before { content: $fa-var-video-camera; }
+.#{$fa-css-prefix}-photo:before,
+.#{$fa-css-prefix}-image:before,
+.#{$fa-css-prefix}-picture-o:before { content: $fa-var-picture-o; }
+.#{$fa-css-prefix}-pencil:before { content: $fa-var-pencil; }
+.#{$fa-css-prefix}-map-marker:before { content: $fa-var-map-marker; }
+.#{$fa-css-prefix}-adjust:before { content: $fa-var-adjust; }
+.#{$fa-css-prefix}-tint:before { content: $fa-var-tint; }
+.#{$fa-css-prefix}-edit:before,
+.#{$fa-css-prefix}-pencil-square-o:before { content: $fa-var-pencil-square-o; }
+.#{$fa-css-prefix}-share-square-o:before { content: $fa-var-share-square-o; }
+.#{$fa-css-prefix}-check-square-o:before { content: $fa-var-check-square-o; }
+.#{$fa-css-prefix}-arrows:before { content: $fa-var-arrows; }
+.#{$fa-css-prefix}-step-backward:before { content: $fa-var-step-backward; }
+.#{$fa-css-prefix}-fast-backward:before { content: $fa-var-fast-backward; }
+.#{$fa-css-prefix}-backward:before { content: $fa-var-backward; }
+.#{$fa-css-prefix}-play:before { content: $fa-var-play; }
+.#{$fa-css-prefix}-pause:before { content: $fa-var-pause; }
+.#{$fa-css-prefix}-stop:before { content: $fa-var-stop; }
+.#{$fa-css-prefix}-forward:before { content: $fa-var-forward; }
+.#{$fa-css-prefix}-fast-forward:before { content: $fa-var-fast-forward; }
+.#{$fa-css-prefix}-step-forward:before { content: $fa-var-step-forward; }
+.#{$fa-css-prefix}-eject:before { content: $fa-var-eject; }
+.#{$fa-css-prefix}-chevron-left:before { content: $fa-var-chevron-left; }
+.#{$fa-css-prefix}-chevron-right:before { content: $fa-var-chevron-right; }
+.#{$fa-css-prefix}-plus-circle:before { content: $fa-var-plus-circle; }
+.#{$fa-css-prefix}-minus-circle:before { content: $fa-var-minus-circle; }
+.#{$fa-css-prefix}-times-circle:before { content: $fa-var-times-circle; }
+.#{$fa-css-prefix}-check-circle:before { content: $fa-var-check-circle; }
+.#{$fa-css-prefix}-question-circle:before { content: $fa-var-question-circle; }
+.#{$fa-css-prefix}-info-circle:before { content: $fa-var-info-circle; }
+.#{$fa-css-prefix}-crosshairs:before { content: $fa-var-crosshairs; }
+.#{$fa-css-prefix}-times-circle-o:before { content: $fa-var-times-circle-o; }
+.#{$fa-css-prefix}-check-circle-o:before { content: $fa-var-check-circle-o; }
+.#{$fa-css-prefix}-ban:before { content: $fa-var-ban; }
+.#{$fa-css-prefix}-arrow-left:before { content: $fa-var-arrow-left; }
+.#{$fa-css-prefix}-arrow-right:before { content: $fa-var-arrow-right; }
+.#{$fa-css-prefix}-arrow-up:before { content: $fa-var-arrow-up; }
+.#{$fa-css-prefix}-arrow-down:before { content: $fa-var-arrow-down; }
+.#{$fa-css-prefix}-mail-forward:before,
+.#{$fa-css-prefix}-share:before { content: $fa-var-share; }
+.#{$fa-css-prefix}-expand:before { content: $fa-var-expand; }
+.#{$fa-css-prefix}-compress:before { content: $fa-var-compress; }
+.#{$fa-css-prefix}-plus:before { content: $fa-var-plus; }
+.#{$fa-css-prefix}-minus:before { content: $fa-var-minus; }
+.#{$fa-css-prefix}-asterisk:before { content: $fa-var-asterisk; }
+.#{$fa-css-prefix}-exclamation-circle:before { content: $fa-var-exclamation-circle; }
+.#{$fa-css-prefix}-gift:before { content: $fa-var-gift; }
+.#{$fa-css-prefix}-leaf:before { content: $fa-var-leaf; }
+.#{$fa-css-prefix}-fire:before { content: $fa-var-fire; }
+.#{$fa-css-prefix}-eye:before { content: $fa-var-eye; }
+.#{$fa-css-prefix}-eye-slash:before { content: $fa-var-eye-slash; }
+.#{$fa-css-prefix}-warning:before,
+.#{$fa-css-prefix}-exclamation-triangle:before { content: $fa-var-exclamation-triangle; }
+.#{$fa-css-prefix}-plane:before { content: $fa-var-plane; }
+.#{$fa-css-prefix}-calendar:before { content: $fa-var-calendar; }
+.#{$fa-css-prefix}-random:before { content: $fa-var-random; }
+.#{$fa-css-prefix}-comment:before { content: $fa-var-comment; }
+.#{$fa-css-prefix}-magnet:before { content: $fa-var-magnet; }
+.#{$fa-css-prefix}-chevron-up:before { content: $fa-var-chevron-up; }
+.#{$fa-css-prefix}-chevron-down:before { content: $fa-var-chevron-down; }
+.#{$fa-css-prefix}-retweet:before { content: $fa-var-retweet; }
+.#{$fa-css-prefix}-shopping-cart:before { content: $fa-var-shopping-cart; }
+.#{$fa-css-prefix}-folder:before { content: $fa-var-folder; }
+.#{$fa-css-prefix}-folder-open:before { content: $fa-var-folder-open; }
+.#{$fa-css-prefix}-arrows-v:before { content: $fa-var-arrows-v; }
+.#{$fa-css-prefix}-arrows-h:before { content: $fa-var-arrows-h; }
+.#{$fa-css-prefix}-bar-chart-o:before,
+.#{$fa-css-prefix}-bar-chart:before { content: $fa-var-bar-chart; }
+.#{$fa-css-prefix}-twitter-square:before { content: $fa-var-twitter-square; }
+.#{$fa-css-prefix}-facebook-square:before { content: $fa-var-facebook-square; }
+.#{$fa-css-prefix}-camera-retro:before { content: $fa-var-camera-retro; }
+.#{$fa-css-prefix}-key:before { content: $fa-var-key; }
+.#{$fa-css-prefix}-gears:before,
+.#{$fa-css-prefix}-cogs:before { content: $fa-var-cogs; }
+.#{$fa-css-prefix}-comments:before { content: $fa-var-comments; }
+.#{$fa-css-prefix}-thumbs-o-up:before { content: $fa-var-thumbs-o-up; }
+.#{$fa-css-prefix}-thumbs-o-down:before { content: $fa-var-thumbs-o-down; }
+.#{$fa-css-prefix}-star-half:before { content: $fa-var-star-half; }
+.#{$fa-css-prefix}-heart-o:before { content: $fa-var-heart-o; }
+.#{$fa-css-prefix}-sign-out:before { content: $fa-var-sign-out; }
+.#{$fa-css-prefix}-linkedin-square:before { content: $fa-var-linkedin-square; }
+.#{$fa-css-prefix}-thumb-tack:before { content: $fa-var-thumb-tack; }
+.#{$fa-css-prefix}-external-link:before { content: $fa-var-external-link; }
+.#{$fa-css-prefix}-sign-in:before { content: $fa-var-sign-in; }
+.#{$fa-css-prefix}-trophy:before { content: $fa-var-trophy; }
+.#{$fa-css-prefix}-github-square:before { content: $fa-var-github-square; }
+.#{$fa-css-prefix}-upload:before { content: $fa-var-upload; }
+.#{$fa-css-prefix}-lemon-o:before { content: $fa-var-lemon-o; }
+.#{$fa-css-prefix}-phone:before { content: $fa-var-phone; }
+.#{$fa-css-prefix}-square-o:before { content: $fa-var-square-o; }
+.#{$fa-css-prefix}-bookmark-o:before { content: $fa-var-bookmark-o; }
+.#{$fa-css-prefix}-phone-square:before { content: $fa-var-phone-square; }
+.#{$fa-css-prefix}-twitter:before { content: $fa-var-twitter; }
+.#{$fa-css-prefix}-facebook-f:before,
+.#{$fa-css-prefix}-facebook:before { content: $fa-var-facebook; }
+.#{$fa-css-prefix}-github:before { content: $fa-var-github; }
+.#{$fa-css-prefix}-unlock:before { content: $fa-var-unlock; }
+.#{$fa-css-prefix}-credit-card:before { content: $fa-var-credit-card; }
+.#{$fa-css-prefix}-feed:before,
+.#{$fa-css-prefix}-rss:before { content: $fa-var-rss; }
+.#{$fa-css-prefix}-hdd-o:before { content: $fa-var-hdd-o; }
+.#{$fa-css-prefix}-bullhorn:before { content: $fa-var-bullhorn; }
+.#{$fa-css-prefix}-bell:before { content: $fa-var-bell; }
+.#{$fa-css-prefix}-certificate:before { content: $fa-var-certificate; }
+.#{$fa-css-prefix}-hand-o-right:before { content: $fa-var-hand-o-right; }
+.#{$fa-css-prefix}-hand-o-left:before { content: $fa-var-hand-o-left; }
+.#{$fa-css-prefix}-hand-o-up:before { content: $fa-var-hand-o-up; }
+.#{$fa-css-prefix}-hand-o-down:before { content: $fa-var-hand-o-down; }
+.#{$fa-css-prefix}-arrow-circle-left:before { content: $fa-var-arrow-circle-left; }
+.#{$fa-css-prefix}-arrow-circle-right:before { content: $fa-var-arrow-circle-right; }
+.#{$fa-css-prefix}-arrow-circle-up:before { content: $fa-var-arrow-circle-up; }
+.#{$fa-css-prefix}-arrow-circle-down:before { content: $fa-var-arrow-circle-down; }
+.#{$fa-css-prefix}-globe:before { content: $fa-var-globe; }
+.#{$fa-css-prefix}-wrench:before { content: $fa-var-wrench; }
+.#{$fa-css-prefix}-tasks:before { content: $fa-var-tasks; }
+.#{$fa-css-prefix}-filter:before { content: $fa-var-filter; }
+.#{$fa-css-prefix}-briefcase:before { content: $fa-var-briefcase; }
+.#{$fa-css-prefix}-arrows-alt:before { content: $fa-var-arrows-alt; }
+.#{$fa-css-prefix}-group:before,
+.#{$fa-css-prefix}-users:before { content: $fa-var-users; }
+.#{$fa-css-prefix}-chain:before,
+.#{$fa-css-prefix}-link:before { content: $fa-var-link; }
+.#{$fa-css-prefix}-cloud:before { content: $fa-var-cloud; }
+.#{$fa-css-prefix}-flask:before { content: $fa-var-flask; }
+.#{$fa-css-prefix}-cut:before,
+.#{$fa-css-prefix}-scissors:before { content: $fa-var-scissors; }
+.#{$fa-css-prefix}-copy:before,
+.#{$fa-css-prefix}-files-o:before { content: $fa-var-files-o; }
+.#{$fa-css-prefix}-paperclip:before { content: $fa-var-paperclip; }
+.#{$fa-css-prefix}-save:before,
+.#{$fa-css-prefix}-floppy-o:before { content: $fa-var-floppy-o; }
+.#{$fa-css-prefix}-square:before { content: $fa-var-square; }
+.#{$fa-css-prefix}-navicon:before,
+.#{$fa-css-prefix}-reorder:before,
+.#{$fa-css-prefix}-bars:before { content: $fa-var-bars; }
+.#{$fa-css-prefix}-list-ul:before { content: $fa-var-list-ul; }
+.#{$fa-css-prefix}-list-ol:before { content: $fa-var-list-ol; }
+.#{$fa-css-prefix}-strikethrough:before { content: $fa-var-strikethrough; }
+.#{$fa-css-prefix}-underline:before { content: $fa-var-underline; }
+.#{$fa-css-prefix}-table:before { content: $fa-var-table; }
+.#{$fa-css-prefix}-magic:before { content: $fa-var-magic; }
+.#{$fa-css-prefix}-truck:before { content: $fa-var-truck; }
+.#{$fa-css-prefix}-pinterest:before { content: $fa-var-pinterest; }
+.#{$fa-css-prefix}-pinterest-square:before { content: $fa-var-pinterest-square; }
+.#{$fa-css-prefix}-google-plus-square:before { content: $fa-var-google-plus-square; }
+.#{$fa-css-prefix}-google-plus:before { content: $fa-var-google-plus; }
+.#{$fa-css-prefix}-money:before { content: $fa-var-money; }
+.#{$fa-css-prefix}-caret-down:before { content: $fa-var-caret-down; }
+.#{$fa-css-prefix}-caret-up:before { content: $fa-var-caret-up; }
+.#{$fa-css-prefix}-caret-left:before { content: $fa-var-caret-left; }
+.#{$fa-css-prefix}-caret-right:before { content: $fa-var-caret-right; }
+.#{$fa-css-prefix}-columns:before { content: $fa-var-columns; }
+.#{$fa-css-prefix}-unsorted:before,
+.#{$fa-css-prefix}-sort:before { content: $fa-var-sort; }
+.#{$fa-css-prefix}-sort-down:before,
+.#{$fa-css-prefix}-sort-desc:before { content: $fa-var-sort-desc; }
+.#{$fa-css-prefix}-sort-up:before,
+.#{$fa-css-prefix}-sort-asc:before { content: $fa-var-sort-asc; }
+.#{$fa-css-prefix}-envelope:before { content: $fa-var-envelope; }
+.#{$fa-css-prefix}-linkedin:before { content: $fa-var-linkedin; }
+.#{$fa-css-prefix}-rotate-left:before,
+.#{$fa-css-prefix}-undo:before { content: $fa-var-undo; }
+.#{$fa-css-prefix}-legal:before,
+.#{$fa-css-prefix}-gavel:before { content: $fa-var-gavel; }
+.#{$fa-css-prefix}-dashboard:before,
+.#{$fa-css-prefix}-tachometer:before { content: $fa-var-tachometer; }
+.#{$fa-css-prefix}-comment-o:before { content: $fa-var-comment-o; }
+.#{$fa-css-prefix}-comments-o:before { content: $fa-var-comments-o; }
+.#{$fa-css-prefix}-flash:before,
+.#{$fa-css-prefix}-bolt:before { content: $fa-var-bolt; }
+.#{$fa-css-prefix}-sitemap:before { content: $fa-var-sitemap; }
+.#{$fa-css-prefix}-umbrella:before { content: $fa-var-umbrella; }
+.#{$fa-css-prefix}-paste:before,
+.#{$fa-css-prefix}-clipboard:before { content: $fa-var-clipboard; }
+.#{$fa-css-prefix}-lightbulb-o:before { content: $fa-var-lightbulb-o; }
+.#{$fa-css-prefix}-exchange:before { content: $fa-var-exchange; }
+.#{$fa-css-prefix}-cloud-download:before { content: $fa-var-cloud-download; }
+.#{$fa-css-prefix}-cloud-upload:before { content: $fa-var-cloud-upload; }
+.#{$fa-css-prefix}-user-md:before { content: $fa-var-user-md; }
+.#{$fa-css-prefix}-stethoscope:before { content: $fa-var-stethoscope; }
+.#{$fa-css-prefix}-suitcase:before { content: $fa-var-suitcase; }
+.#{$fa-css-prefix}-bell-o:before { content: $fa-var-bell-o; }
+.#{$fa-css-prefix}-coffee:before { content: $fa-var-coffee; }
+.#{$fa-css-prefix}-cutlery:before { content: $fa-var-cutlery; }
+.#{$fa-css-prefix}-file-text-o:before { content: $fa-var-file-text-o; }
+.#{$fa-css-prefix}-building-o:before { content: $fa-var-building-o; }
+.#{$fa-css-prefix}-hospital-o:before { content: $fa-var-hospital-o; }
+.#{$fa-css-prefix}-ambulance:before { content: $fa-var-ambulance; }
+.#{$fa-css-prefix}-medkit:before { content: $fa-var-medkit; }
+.#{$fa-css-prefix}-fighter-jet:before { content: $fa-var-fighter-jet; }
+.#{$fa-css-prefix}-beer:before { content: $fa-var-beer; }
+.#{$fa-css-prefix}-h-square:before { content: $fa-var-h-square; }
+.#{$fa-css-prefix}-plus-square:before { content: $fa-var-plus-square; }
+.#{$fa-css-prefix}-angle-double-left:before { content: $fa-var-angle-double-left; }
+.#{$fa-css-prefix}-angle-double-right:before { content: $fa-var-angle-double-right; }
+.#{$fa-css-prefix}-angle-double-up:before { content: $fa-var-angle-double-up; }
+.#{$fa-css-prefix}-angle-double-down:before { content: $fa-var-angle-double-down; }
+.#{$fa-css-prefix}-angle-left:before { content: $fa-var-angle-left; }
+.#{$fa-css-prefix}-angle-right:before { content: $fa-var-angle-right; }
+.#{$fa-css-prefix}-angle-up:before { content: $fa-var-angle-up; }
+.#{$fa-css-prefix}-angle-down:before { content: $fa-var-angle-down; }
+.#{$fa-css-prefix}-desktop:before { content: $fa-var-desktop; }
+.#{$fa-css-prefix}-laptop:before { content: $fa-var-laptop; }
+.#{$fa-css-prefix}-tablet:before { content: $fa-var-tablet; }
+.#{$fa-css-prefix}-mobile-phone:before,
+.#{$fa-css-prefix}-mobile:before { content: $fa-var-mobile; }
+.#{$fa-css-prefix}-circle-o:before { content: $fa-var-circle-o; }
+.#{$fa-css-prefix}-quote-left:before { content: $fa-var-quote-left; }
+.#{$fa-css-prefix}-quote-right:before { content: $fa-var-quote-right; }
+.#{$fa-css-prefix}-spinner:before { content: $fa-var-spinner; }
+.#{$fa-css-prefix}-circle:before { content: $fa-var-circle; }
+.#{$fa-css-prefix}-mail-reply:before,
+.#{$fa-css-prefix}-reply:before { content: $fa-var-reply; }
+.#{$fa-css-prefix}-github-alt:before { content: $fa-var-github-alt; }
+.#{$fa-css-prefix}-folder-o:before { content: $fa-var-folder-o; }
+.#{$fa-css-prefix}-folder-open-o:before { content: $fa-var-folder-open-o; }
+.#{$fa-css-prefix}-smile-o:before { content: $fa-var-smile-o; }
+.#{$fa-css-prefix}-frown-o:before { content: $fa-var-frown-o; }
+.#{$fa-css-prefix}-meh-o:before { content: $fa-var-meh-o; }
+.#{$fa-css-prefix}-gamepad:before { content: $fa-var-gamepad; }
+.#{$fa-css-prefix}-keyboard-o:before { content: $fa-var-keyboard-o; }
+.#{$fa-css-prefix}-flag-o:before { content: $fa-var-flag-o; }
+.#{$fa-css-prefix}-flag-checkered:before { content: $fa-var-flag-checkered; }
+.#{$fa-css-prefix}-terminal:before { content: $fa-var-terminal; }
+.#{$fa-css-prefix}-code:before { content: $fa-var-code; }
+.#{$fa-css-prefix}-mail-reply-all:before,
+.#{$fa-css-prefix}-reply-all:before { content: $fa-var-reply-all; }
+.#{$fa-css-prefix}-star-half-empty:before,
+.#{$fa-css-prefix}-star-half-full:before,
+.#{$fa-css-prefix}-star-half-o:before { content: $fa-var-star-half-o; }
+.#{$fa-css-prefix}-location-arrow:before { content: $fa-var-location-arrow; }
+.#{$fa-css-prefix}-crop:before { content: $fa-var-crop; }
+.#{$fa-css-prefix}-code-fork:before { content: $fa-var-code-fork; }
+.#{$fa-css-prefix}-unlink:before,
+.#{$fa-css-prefix}-chain-broken:before { content: $fa-var-chain-broken; }
+.#{$fa-css-prefix}-question:before { content: $fa-var-question; }
+.#{$fa-css-prefix}-info:before { content: $fa-var-info; }
+.#{$fa-css-prefix}-exclamation:before { content: $fa-var-exclamation; }
+.#{$fa-css-prefix}-superscript:before { content: $fa-var-superscript; }
+.#{$fa-css-prefix}-subscript:before { content: $fa-var-subscript; }
+.#{$fa-css-prefix}-eraser:before { content: $fa-var-eraser; }
+.#{$fa-css-prefix}-puzzle-piece:before { content: $fa-var-puzzle-piece; }
+.#{$fa-css-prefix}-microphone:before { content: $fa-var-microphone; }
+.#{$fa-css-prefix}-microphone-slash:before { content: $fa-var-microphone-slash; }
+.#{$fa-css-prefix}-shield:before { content: $fa-var-shield; }
+.#{$fa-css-prefix}-calendar-o:before { content: $fa-var-calendar-o; }
+.#{$fa-css-prefix}-fire-extinguisher:before { content: $fa-var-fire-extinguisher; }
+.#{$fa-css-prefix}-rocket:before { content: $fa-var-rocket; }
+.#{$fa-css-prefix}-maxcdn:before { content: $fa-var-maxcdn; }
+.#{$fa-css-prefix}-chevron-circle-left:before { content: $fa-var-chevron-circle-left; }
+.#{$fa-css-prefix}-chevron-circle-right:before { content: $fa-var-chevron-circle-right; }
+.#{$fa-css-prefix}-chevron-circle-up:before { content: $fa-var-chevron-circle-up; }
+.#{$fa-css-prefix}-chevron-circle-down:before { content: $fa-var-chevron-circle-down; }
+.#{$fa-css-prefix}-html5:before { content: $fa-var-html5; }
+.#{$fa-css-prefix}-css3:before { content: $fa-var-css3; }
+.#{$fa-css-prefix}-anchor:before { content: $fa-var-anchor; }
+.#{$fa-css-prefix}-unlock-alt:before { content: $fa-var-unlock-alt; }
+.#{$fa-css-prefix}-bullseye:before { content: $fa-var-bullseye; }
+.#{$fa-css-prefix}-ellipsis-h:before { content: $fa-var-ellipsis-h; }
+.#{$fa-css-prefix}-ellipsis-v:before { content: $fa-var-ellipsis-v; }
+.#{$fa-css-prefix}-rss-square:before { content: $fa-var-rss-square; }
+.#{$fa-css-prefix}-play-circle:before { content: $fa-var-play-circle; }
+.#{$fa-css-prefix}-ticket:before { content: $fa-var-ticket; }
+.#{$fa-css-prefix}-minus-square:before { content: $fa-var-minus-square; }
+.#{$fa-css-prefix}-minus-square-o:before { content: $fa-var-minus-square-o; }
+.#{$fa-css-prefix}-level-up:before { content: $fa-var-level-up; }
+.#{$fa-css-prefix}-level-down:before { content: $fa-var-level-down; }
+.#{$fa-css-prefix}-check-square:before { content: $fa-var-check-square; }
+.#{$fa-css-prefix}-pencil-square:before { content: $fa-var-pencil-square; }
+.#{$fa-css-prefix}-external-link-square:before { content: $fa-var-external-link-square; }
+.#{$fa-css-prefix}-share-square:before { content: $fa-var-share-square; }
+.#{$fa-css-prefix}-compass:before { content: $fa-var-compass; }
+.#{$fa-css-prefix}-toggle-down:before,
+.#{$fa-css-prefix}-caret-square-o-down:before { content: $fa-var-caret-square-o-down; }
+.#{$fa-css-prefix}-toggle-up:before,
+.#{$fa-css-prefix}-caret-square-o-up:before { content: $fa-var-caret-square-o-up; }
+.#{$fa-css-prefix}-toggle-right:before,
+.#{$fa-css-prefix}-caret-square-o-right:before { content: $fa-var-caret-square-o-right; }
+.#{$fa-css-prefix}-euro:before,
+.#{$fa-css-prefix}-eur:before { content: $fa-var-eur; }
+.#{$fa-css-prefix}-gbp:before { content: $fa-var-gbp; }
+.#{$fa-css-prefix}-dollar:before,
+.#{$fa-css-prefix}-usd:before { content: $fa-var-usd; }
+.#{$fa-css-prefix}-rupee:before,
+.#{$fa-css-prefix}-inr:before { content: $fa-var-inr; }
+.#{$fa-css-prefix}-cny:before,
+.#{$fa-css-prefix}-rmb:before,
+.#{$fa-css-prefix}-yen:before,
+.#{$fa-css-prefix}-jpy:before { content: $fa-var-jpy; }
+.#{$fa-css-prefix}-ruble:before,
+.#{$fa-css-prefix}-rouble:before,
+.#{$fa-css-prefix}-rub:before { content: $fa-var-rub; }
+.#{$fa-css-prefix}-won:before,
+.#{$fa-css-prefix}-krw:before { content: $fa-var-krw; }
+.#{$fa-css-prefix}-bitcoin:before,
+.#{$fa-css-prefix}-btc:before { content: $fa-var-btc; }
+.#{$fa-css-prefix}-file:before { content: $fa-var-file; }
+.#{$fa-css-prefix}-file-text:before { content: $fa-var-file-text; }
+.#{$fa-css-prefix}-sort-alpha-asc:before { content: $fa-var-sort-alpha-asc; }
+.#{$fa-css-prefix}-sort-alpha-desc:before { content: $fa-var-sort-alpha-desc; }
+.#{$fa-css-prefix}-sort-amount-asc:before { content: $fa-var-sort-amount-asc; }
+.#{$fa-css-prefix}-sort-amount-desc:before { content: $fa-var-sort-amount-desc; }
+.#{$fa-css-prefix}-sort-numeric-asc:before { content: $fa-var-sort-numeric-asc; }
+.#{$fa-css-prefix}-sort-numeric-desc:before { content: $fa-var-sort-numeric-desc; }
+.#{$fa-css-prefix}-thumbs-up:before { content: $fa-var-thumbs-up; }
+.#{$fa-css-prefix}-thumbs-down:before { content: $fa-var-thumbs-down; }
+.#{$fa-css-prefix}-youtube-square:before { content: $fa-var-youtube-square; }
+.#{$fa-css-prefix}-youtube:before { content: $fa-var-youtube; }
+.#{$fa-css-prefix}-xing:before { content: $fa-var-xing; }
+.#{$fa-css-prefix}-xing-square:before { content: $fa-var-xing-square; }
+.#{$fa-css-prefix}-youtube-play:before { content: $fa-var-youtube-play; }
+.#{$fa-css-prefix}-dropbox:before { content: $fa-var-dropbox; }
+.#{$fa-css-prefix}-stack-overflow:before { content: $fa-var-stack-overflow; }
+.#{$fa-css-prefix}-instagram:before { content: $fa-var-instagram; }
+.#{$fa-css-prefix}-flickr:before { content: $fa-var-flickr; }
+.#{$fa-css-prefix}-adn:before { content: $fa-var-adn; }
+.#{$fa-css-prefix}-bitbucket:before { content: $fa-var-bitbucket; }
+.#{$fa-css-prefix}-bitbucket-square:before { content: $fa-var-bitbucket-square; }
+.#{$fa-css-prefix}-tumblr:before { content: $fa-var-tumblr; }
+.#{$fa-css-prefix}-tumblr-square:before { content: $fa-var-tumblr-square; }
+.#{$fa-css-prefix}-long-arrow-down:before { content: $fa-var-long-arrow-down; }
+.#{$fa-css-prefix}-long-arrow-up:before { content: $fa-var-long-arrow-up; }
+.#{$fa-css-prefix}-long-arrow-left:before { content: $fa-var-long-arrow-left; }
+.#{$fa-css-prefix}-long-arrow-right:before { content: $fa-var-long-arrow-right; }
+.#{$fa-css-prefix}-apple:before { content: $fa-var-apple; }
+.#{$fa-css-prefix}-windows:before { content: $fa-var-windows; }
+.#{$fa-css-prefix}-android:before { content: $fa-var-android; }
+.#{$fa-css-prefix}-linux:before { content: $fa-var-linux; }
+.#{$fa-css-prefix}-dribbble:before { content: $fa-var-dribbble; }
+.#{$fa-css-prefix}-skype:before { content: $fa-var-skype; }
+.#{$fa-css-prefix}-foursquare:before { content: $fa-var-foursquare; }
+.#{$fa-css-prefix}-trello:before { content: $fa-var-trello; }
+.#{$fa-css-prefix}-female:before { content: $fa-var-female; }
+.#{$fa-css-prefix}-male:before { content: $fa-var-male; }
+.#{$fa-css-prefix}-gittip:before,
+.#{$fa-css-prefix}-gratipay:before { content: $fa-var-gratipay; }
+.#{$fa-css-prefix}-sun-o:before { content: $fa-var-sun-o; }
+.#{$fa-css-prefix}-moon-o:before { content: $fa-var-moon-o; }
+.#{$fa-css-prefix}-archive:before { content: $fa-var-archive; }
+.#{$fa-css-prefix}-bug:before { content: $fa-var-bug; }
+.#{$fa-css-prefix}-vk:before { content: $fa-var-vk; }
+.#{$fa-css-prefix}-weibo:before { content: $fa-var-weibo; }
+.#{$fa-css-prefix}-renren:before { content: $fa-var-renren; }
+.#{$fa-css-prefix}-pagelines:before { content: $fa-var-pagelines; }
+.#{$fa-css-prefix}-stack-exchange:before { content: $fa-var-stack-exchange; }
+.#{$fa-css-prefix}-arrow-circle-o-right:before { content: $fa-var-arrow-circle-o-right; }
+.#{$fa-css-prefix}-arrow-circle-o-left:before { content: $fa-var-arrow-circle-o-left; }
+.#{$fa-css-prefix}-toggle-left:before,
+.#{$fa-css-prefix}-caret-square-o-left:before { content: $fa-var-caret-square-o-left; }
+.#{$fa-css-prefix}-dot-circle-o:before { content: $fa-var-dot-circle-o; }
+.#{$fa-css-prefix}-wheelchair:before { content: $fa-var-wheelchair; }
+.#{$fa-css-prefix}-vimeo-square:before { content: $fa-var-vimeo-square; }
+.#{$fa-css-prefix}-turkish-lira:before,
+.#{$fa-css-prefix}-try:before { content: $fa-var-try; }
+.#{$fa-css-prefix}-plus-square-o:before { content: $fa-var-plus-square-o; }
+.#{$fa-css-prefix}-space-shuttle:before { content: $fa-var-space-shuttle; }
+.#{$fa-css-prefix}-slack:before { content: $fa-var-slack; }
+.#{$fa-css-prefix}-envelope-square:before { content: $fa-var-envelope-square; }
+.#{$fa-css-prefix}-wordpress:before { content: $fa-var-wordpress; }
+.#{$fa-css-prefix}-openid:before { content: $fa-var-openid; }
+.#{$fa-css-prefix}-institution:before,
+.#{$fa-css-prefix}-bank:before,
+.#{$fa-css-prefix}-university:before { content: $fa-var-university; }
+.#{$fa-css-prefix}-mortar-board:before,
+.#{$fa-css-prefix}-graduation-cap:before { content: $fa-var-graduation-cap; }
+.#{$fa-css-prefix}-yahoo:before { content: $fa-var-yahoo; }
+.#{$fa-css-prefix}-google:before { content: $fa-var-google; }
+.#{$fa-css-prefix}-reddit:before { content: $fa-var-reddit; }
+.#{$fa-css-prefix}-reddit-square:before { content: $fa-var-reddit-square; }
+.#{$fa-css-prefix}-stumbleupon-circle:before { content: $fa-var-stumbleupon-circle; }
+.#{$fa-css-prefix}-stumbleupon:before { content: $fa-var-stumbleupon; }
+.#{$fa-css-prefix}-delicious:before { content: $fa-var-delicious; }
+.#{$fa-css-prefix}-digg:before { content: $fa-var-digg; }
+.#{$fa-css-prefix}-pied-piper:before { content: $fa-var-pied-piper; }
+.#{$fa-css-prefix}-pied-piper-alt:before { content: $fa-var-pied-piper-alt; }
+.#{$fa-css-prefix}-drupal:before { content: $fa-var-drupal; }
+.#{$fa-css-prefix}-joomla:before { content: $fa-var-joomla; }
+.#{$fa-css-prefix}-language:before { content: $fa-var-language; }
+.#{$fa-css-prefix}-fax:before { content: $fa-var-fax; }
+.#{$fa-css-prefix}-building:before { content: $fa-var-building; }
+.#{$fa-css-prefix}-child:before { content: $fa-var-child; }
+.#{$fa-css-prefix}-paw:before { content: $fa-var-paw; }
+.#{$fa-css-prefix}-spoon:before { content: $fa-var-spoon; }
+.#{$fa-css-prefix}-cube:before { content: $fa-var-cube; }
+.#{$fa-css-prefix}-cubes:before { content: $fa-var-cubes; }
+.#{$fa-css-prefix}-behance:before { content: $fa-var-behance; }
+.#{$fa-css-prefix}-behance-square:before { content: $fa-var-behance-square; }
+.#{$fa-css-prefix}-steam:before { content: $fa-var-steam; }
+.#{$fa-css-prefix}-steam-square:before { content: $fa-var-steam-square; }
+.#{$fa-css-prefix}-recycle:before { content: $fa-var-recycle; }
+.#{$fa-css-prefix}-automobile:before,
+.#{$fa-css-prefix}-car:before { content: $fa-var-car; }
+.#{$fa-css-prefix}-cab:before,
+.#{$fa-css-prefix}-taxi:before { content: $fa-var-taxi; }
+.#{$fa-css-prefix}-tree:before { content: $fa-var-tree; }
+.#{$fa-css-prefix}-spotify:before { content: $fa-var-spotify; }
+.#{$fa-css-prefix}-deviantart:before { content: $fa-var-deviantart; }
+.#{$fa-css-prefix}-soundcloud:before { content: $fa-var-soundcloud; }
+.#{$fa-css-prefix}-database:before { content: $fa-var-database; }
+.#{$fa-css-prefix}-file-pdf-o:before { content: $fa-var-file-pdf-o; }
+.#{$fa-css-prefix}-file-word-o:before { content: $fa-var-file-word-o; }
+.#{$fa-css-prefix}-file-excel-o:before { content: $fa-var-file-excel-o; }
+.#{$fa-css-prefix}-file-powerpoint-o:before { content: $fa-var-file-powerpoint-o; }
+.#{$fa-css-prefix}-file-photo-o:before,
+.#{$fa-css-prefix}-file-picture-o:before,
+.#{$fa-css-prefix}-file-image-o:before { content: $fa-var-file-image-o; }
+.#{$fa-css-prefix}-file-zip-o:before,
+.#{$fa-css-prefix}-file-archive-o:before { content: $fa-var-file-archive-o; }
+.#{$fa-css-prefix}-file-sound-o:before,
+.#{$fa-css-prefix}-file-audio-o:before { content: $fa-var-file-audio-o; }
+.#{$fa-css-prefix}-file-movie-o:before,
+.#{$fa-css-prefix}-file-video-o:before { content: $fa-var-file-video-o; }
+.#{$fa-css-prefix}-file-code-o:before { content: $fa-var-file-code-o; }
+.#{$fa-css-prefix}-vine:before { content: $fa-var-vine; }
+.#{$fa-css-prefix}-codepen:before { content: $fa-var-codepen; }
+.#{$fa-css-prefix}-jsfiddle:before { content: $fa-var-jsfiddle; }
+.#{$fa-css-prefix}-life-bouy:before,
+.#{$fa-css-prefix}-life-buoy:before,
+.#{$fa-css-prefix}-life-saver:before,
+.#{$fa-css-prefix}-support:before,
+.#{$fa-css-prefix}-life-ring:before { content: $fa-var-life-ring; }
+.#{$fa-css-prefix}-circle-o-notch:before { content: $fa-var-circle-o-notch; }
+.#{$fa-css-prefix}-ra:before,
+.#{$fa-css-prefix}-rebel:before { content: $fa-var-rebel; }
+.#{$fa-css-prefix}-ge:before,
+.#{$fa-css-prefix}-empire:before { content: $fa-var-empire; }
+.#{$fa-css-prefix}-git-square:before { content: $fa-var-git-square; }
+.#{$fa-css-prefix}-git:before { content: $fa-var-git; }
+.#{$fa-css-prefix}-y-combinator-square:before,
+.#{$fa-css-prefix}-yc-square:before,
+.#{$fa-css-prefix}-hacker-news:before { content: $fa-var-hacker-news; }
+.#{$fa-css-prefix}-tencent-weibo:before { content: $fa-var-tencent-weibo; }
+.#{$fa-css-prefix}-qq:before { content: $fa-var-qq; }
+.#{$fa-css-prefix}-wechat:before,
+.#{$fa-css-prefix}-weixin:before { content: $fa-var-weixin; }
+.#{$fa-css-prefix}-send:before,
+.#{$fa-css-prefix}-paper-plane:before { content: $fa-var-paper-plane; }
+.#{$fa-css-prefix}-send-o:before,
+.#{$fa-css-prefix}-paper-plane-o:before { content: $fa-var-paper-plane-o; }
+.#{$fa-css-prefix}-history:before { content: $fa-var-history; }
+.#{$fa-css-prefix}-circle-thin:before { content: $fa-var-circle-thin; }
+.#{$fa-css-prefix}-header:before { content: $fa-var-header; }
+.#{$fa-css-prefix}-paragraph:before { content: $fa-var-paragraph; }
+.#{$fa-css-prefix}-sliders:before { content: $fa-var-sliders; }
+.#{$fa-css-prefix}-share-alt:before { content: $fa-var-share-alt; }
+.#{$fa-css-prefix}-share-alt-square:before { content: $fa-var-share-alt-square; }
+.#{$fa-css-prefix}-bomb:before { content: $fa-var-bomb; }
+.#{$fa-css-prefix}-soccer-ball-o:before,
+.#{$fa-css-prefix}-futbol-o:before { content: $fa-var-futbol-o; }
+.#{$fa-css-prefix}-tty:before { content: $fa-var-tty; }
+.#{$fa-css-prefix}-binoculars:before { content: $fa-var-binoculars; }
+.#{$fa-css-prefix}-plug:before { content: $fa-var-plug; }
+.#{$fa-css-prefix}-slideshare:before { content: $fa-var-slideshare; }
+.#{$fa-css-prefix}-twitch:before { content: $fa-var-twitch; }
+.#{$fa-css-prefix}-yelp:before { content: $fa-var-yelp; }
+.#{$fa-css-prefix}-newspaper-o:before { content: $fa-var-newspaper-o; }
+.#{$fa-css-prefix}-wifi:before { content: $fa-var-wifi; }
+.#{$fa-css-prefix}-calculator:before { content: $fa-var-calculator; }
+.#{$fa-css-prefix}-paypal:before { content: $fa-var-paypal; }
+.#{$fa-css-prefix}-google-wallet:before { content: $fa-var-google-wallet; }
+.#{$fa-css-prefix}-cc-visa:before { content: $fa-var-cc-visa; }
+.#{$fa-css-prefix}-cc-mastercard:before { content: $fa-var-cc-mastercard; }
+.#{$fa-css-prefix}-cc-discover:before { content: $fa-var-cc-discover; }
+.#{$fa-css-prefix}-cc-amex:before { content: $fa-var-cc-amex; }
+.#{$fa-css-prefix}-cc-paypal:before { content: $fa-var-cc-paypal; }
+.#{$fa-css-prefix}-cc-stripe:before { content: $fa-var-cc-stripe; }
+.#{$fa-css-prefix}-bell-slash:before { content: $fa-var-bell-slash; }
+.#{$fa-css-prefix}-bell-slash-o:before { content: $fa-var-bell-slash-o; }
+.#{$fa-css-prefix}-trash:before { content: $fa-var-trash; }
+.#{$fa-css-prefix}-copyright:before { content: $fa-var-copyright; }
+.#{$fa-css-prefix}-at:before { content: $fa-var-at; }
+.#{$fa-css-prefix}-eyedropper:before { content: $fa-var-eyedropper; }
+.#{$fa-css-prefix}-paint-brush:before { content: $fa-var-paint-brush; }
+.#{$fa-css-prefix}-birthday-cake:before { content: $fa-var-birthday-cake; }
+.#{$fa-css-prefix}-area-chart:before { content: $fa-var-area-chart; }
+.#{$fa-css-prefix}-pie-chart:before { content: $fa-var-pie-chart; }
+.#{$fa-css-prefix}-line-chart:before { content: $fa-var-line-chart; }
+.#{$fa-css-prefix}-lastfm:before { content: $fa-var-lastfm; }
+.#{$fa-css-prefix}-lastfm-square:before { content: $fa-var-lastfm-square; }
+.#{$fa-css-prefix}-toggle-off:before { content: $fa-var-toggle-off; }
+.#{$fa-css-prefix}-toggle-on:before { content: $fa-var-toggle-on; }
+.#{$fa-css-prefix}-bicycle:before { content: $fa-var-bicycle; }
+.#{$fa-css-prefix}-bus:before { content: $fa-var-bus; }
+.#{$fa-css-prefix}-ioxhost:before { content: $fa-var-ioxhost; }
+.#{$fa-css-prefix}-angellist:before { content: $fa-var-angellist; }
+.#{$fa-css-prefix}-cc:before { content: $fa-var-cc; }
+.#{$fa-css-prefix}-shekel:before,
+.#{$fa-css-prefix}-sheqel:before,
+.#{$fa-css-prefix}-ils:before { content: $fa-var-ils; }
+.#{$fa-css-prefix}-meanpath:before { content: $fa-var-meanpath; }
+.#{$fa-css-prefix}-buysellads:before { content: $fa-var-buysellads; }
+.#{$fa-css-prefix}-connectdevelop:before { content: $fa-var-connectdevelop; }
+.#{$fa-css-prefix}-dashcube:before { content: $fa-var-dashcube; }
+.#{$fa-css-prefix}-forumbee:before { content: $fa-var-forumbee; }
+.#{$fa-css-prefix}-leanpub:before { content: $fa-var-leanpub; }
+.#{$fa-css-prefix}-sellsy:before { content: $fa-var-sellsy; }
+.#{$fa-css-prefix}-shirtsinbulk:before { content: $fa-var-shirtsinbulk; }
+.#{$fa-css-prefix}-simplybuilt:before { content: $fa-var-simplybuilt; }
+.#{$fa-css-prefix}-skyatlas:before { content: $fa-var-skyatlas; }
+.#{$fa-css-prefix}-cart-plus:before { content: $fa-var-cart-plus; }
+.#{$fa-css-prefix}-cart-arrow-down:before { content: $fa-var-cart-arrow-down; }
+.#{$fa-css-prefix}-diamond:before { content: $fa-var-diamond; }
+.#{$fa-css-prefix}-ship:before { content: $fa-var-ship; }
+.#{$fa-css-prefix}-user-secret:before { content: $fa-var-user-secret; }
+.#{$fa-css-prefix}-motorcycle:before { content: $fa-var-motorcycle; }
+.#{$fa-css-prefix}-street-view:before { content: $fa-var-street-view; }
+.#{$fa-css-prefix}-heartbeat:before { content: $fa-var-heartbeat; }
+.#{$fa-css-prefix}-venus:before { content: $fa-var-venus; }
+.#{$fa-css-prefix}-mars:before { content: $fa-var-mars; }
+.#{$fa-css-prefix}-mercury:before { content: $fa-var-mercury; }
+.#{$fa-css-prefix}-intersex:before,
+.#{$fa-css-prefix}-transgender:before { content: $fa-var-transgender; }
+.#{$fa-css-prefix}-transgender-alt:before { content: $fa-var-transgender-alt; }
+.#{$fa-css-prefix}-venus-double:before { content: $fa-var-venus-double; }
+.#{$fa-css-prefix}-mars-double:before { content: $fa-var-mars-double; }
+.#{$fa-css-prefix}-venus-mars:before { content: $fa-var-venus-mars; }
+.#{$fa-css-prefix}-mars-stroke:before { content: $fa-var-mars-stroke; }
+.#{$fa-css-prefix}-mars-stroke-v:before { content: $fa-var-mars-stroke-v; }
+.#{$fa-css-prefix}-mars-stroke-h:before { content: $fa-var-mars-stroke-h; }
+.#{$fa-css-prefix}-neuter:before { content: $fa-var-neuter; }
+.#{$fa-css-prefix}-genderless:before { content: $fa-var-genderless; }
+.#{$fa-css-prefix}-facebook-official:before { content: $fa-var-facebook-official; }
+.#{$fa-css-prefix}-pinterest-p:before { content: $fa-var-pinterest-p; }
+.#{$fa-css-prefix}-whatsapp:before { content: $fa-var-whatsapp; }
+.#{$fa-css-prefix}-server:before { content: $fa-var-server; }
+.#{$fa-css-prefix}-user-plus:before { content: $fa-var-user-plus; }
+.#{$fa-css-prefix}-user-times:before { content: $fa-var-user-times; }
+.#{$fa-css-prefix}-hotel:before,
+.#{$fa-css-prefix}-bed:before { content: $fa-var-bed; }
+.#{$fa-css-prefix}-viacoin:before { content: $fa-var-viacoin; }
+.#{$fa-css-prefix}-train:before { content: $fa-var-train; }
+.#{$fa-css-prefix}-subway:before { content: $fa-var-subway; }
+.#{$fa-css-prefix}-medium:before { content: $fa-var-medium; }
+.#{$fa-css-prefix}-yc:before,
+.#{$fa-css-prefix}-y-combinator:before { content: $fa-var-y-combinator; }
+.#{$fa-css-prefix}-optin-monster:before { content: $fa-var-optin-monster; }
+.#{$fa-css-prefix}-opencart:before { content: $fa-var-opencart; }
+.#{$fa-css-prefix}-expeditedssl:before { content: $fa-var-expeditedssl; }
+.#{$fa-css-prefix}-battery-4:before,
+.#{$fa-css-prefix}-battery-full:before { content: $fa-var-battery-full; }
+.#{$fa-css-prefix}-battery-3:before,
+.#{$fa-css-prefix}-battery-three-quarters:before { content: $fa-var-battery-three-quarters; }
+.#{$fa-css-prefix}-battery-2:before,
+.#{$fa-css-prefix}-battery-half:before { content: $fa-var-battery-half; }
+.#{$fa-css-prefix}-battery-1:before,
+.#{$fa-css-prefix}-battery-quarter:before { content: $fa-var-battery-quarter; }
+.#{$fa-css-prefix}-battery-0:before,
+.#{$fa-css-prefix}-battery-empty:before { content: $fa-var-battery-empty; }
+.#{$fa-css-prefix}-mouse-pointer:before { content: $fa-var-mouse-pointer; }
+.#{$fa-css-prefix}-i-cursor:before { content: $fa-var-i-cursor; }
+.#{$fa-css-prefix}-object-group:before { content: $fa-var-object-group; }
+.#{$fa-css-prefix}-object-ungroup:before { content: $fa-var-object-ungroup; }
+.#{$fa-css-prefix}-sticky-note:before { content: $fa-var-sticky-note; }
+.#{$fa-css-prefix}-sticky-note-o:before { content: $fa-var-sticky-note-o; }
+.#{$fa-css-prefix}-cc-jcb:before { content: $fa-var-cc-jcb; }
+.#{$fa-css-prefix}-cc-diners-club:before { content: $fa-var-cc-diners-club; }
+.#{$fa-css-prefix}-clone:before { content: $fa-var-clone; }
+.#{$fa-css-prefix}-balance-scale:before { content: $fa-var-balance-scale; }
+.#{$fa-css-prefix}-hourglass-o:before { content: $fa-var-hourglass-o; }
+.#{$fa-css-prefix}-hourglass-1:before,
+.#{$fa-css-prefix}-hourglass-start:before { content: $fa-var-hourglass-start; }
+.#{$fa-css-prefix}-hourglass-2:before,
+.#{$fa-css-prefix}-hourglass-half:before { content: $fa-var-hourglass-half; }
+.#{$fa-css-prefix}-hourglass-3:before,
+.#{$fa-css-prefix}-hourglass-end:before { content: $fa-var-hourglass-end; }
+.#{$fa-css-prefix}-hourglass:before { content: $fa-var-hourglass; }
+.#{$fa-css-prefix}-hand-grab-o:before,
+.#{$fa-css-prefix}-hand-rock-o:before { content: $fa-var-hand-rock-o; }
+.#{$fa-css-prefix}-hand-stop-o:before,
+.#{$fa-css-prefix}-hand-paper-o:before { content: $fa-var-hand-paper-o; }
+.#{$fa-css-prefix}-hand-scissors-o:before { content: $fa-var-hand-scissors-o; }
+.#{$fa-css-prefix}-hand-lizard-o:before { content: $fa-var-hand-lizard-o; }
+.#{$fa-css-prefix}-hand-spock-o:before { content: $fa-var-hand-spock-o; }
+.#{$fa-css-prefix}-hand-pointer-o:before { content: $fa-var-hand-pointer-o; }
+.#{$fa-css-prefix}-hand-peace-o:before { content: $fa-var-hand-peace-o; }
+.#{$fa-css-prefix}-trademark:before { content: $fa-var-trademark; }
+.#{$fa-css-prefix}-registered:before { content: $fa-var-registered; }
+.#{$fa-css-prefix}-creative-commons:before { content: $fa-var-creative-commons; }
+.#{$fa-css-prefix}-gg:before { content: $fa-var-gg; }
+.#{$fa-css-prefix}-gg-circle:before { content: $fa-var-gg-circle; }
+.#{$fa-css-prefix}-tripadvisor:before { content: $fa-var-tripadvisor; }
+.#{$fa-css-prefix}-odnoklassniki:before { content: $fa-var-odnoklassniki; }
+.#{$fa-css-prefix}-odnoklassniki-square:before { content: $fa-var-odnoklassniki-square; }
+.#{$fa-css-prefix}-get-pocket:before { content: $fa-var-get-pocket; }
+.#{$fa-css-prefix}-wikipedia-w:before { content: $fa-var-wikipedia-w; }
+.#{$fa-css-prefix}-safari:before { content: $fa-var-safari; }
+.#{$fa-css-prefix}-chrome:before { content: $fa-var-chrome; }
+.#{$fa-css-prefix}-firefox:before { content: $fa-var-firefox; }
+.#{$fa-css-prefix}-opera:before { content: $fa-var-opera; }
+.#{$fa-css-prefix}-internet-explorer:before { content: $fa-var-internet-explorer; }
+.#{$fa-css-prefix}-tv:before,
+.#{$fa-css-prefix}-television:before { content: $fa-var-television; }
+.#{$fa-css-prefix}-contao:before { content: $fa-var-contao; }
+.#{$fa-css-prefix}-500px:before { content: $fa-var-500px; }
+.#{$fa-css-prefix}-amazon:before { content: $fa-var-amazon; }
+.#{$fa-css-prefix}-calendar-plus-o:before { content: $fa-var-calendar-plus-o; }
+.#{$fa-css-prefix}-calendar-minus-o:before { content: $fa-var-calendar-minus-o; }
+.#{$fa-css-prefix}-calendar-times-o:before { content: $fa-var-calendar-times-o; }
+.#{$fa-css-prefix}-calendar-check-o:before { content: $fa-var-calendar-check-o; }
+.#{$fa-css-prefix}-industry:before { content: $fa-var-industry; }
+.#{$fa-css-prefix}-map-pin:before { content: $fa-var-map-pin; }
+.#{$fa-css-prefix}-map-signs:before { content: $fa-var-map-signs; }
+.#{$fa-css-prefix}-map-o:before { content: $fa-var-map-o; }
+.#{$fa-css-prefix}-map:before { content: $fa-var-map; }
+.#{$fa-css-prefix}-commenting:before { content: $fa-var-commenting; }
+.#{$fa-css-prefix}-commenting-o:before { content: $fa-var-commenting-o; }
+.#{$fa-css-prefix}-houzz:before { content: $fa-var-houzz; }
+.#{$fa-css-prefix}-vimeo:before { content: $fa-var-vimeo; }
+.#{$fa-css-prefix}-black-tie:before { content: $fa-var-black-tie; }
+.#{$fa-css-prefix}-fonticons:before { content: $fa-var-fonticons; }
+.#{$fa-css-prefix}-reddit-alien:before { content: $fa-var-reddit-alien; }
+.#{$fa-css-prefix}-edge:before { content: $fa-var-edge; }
+.#{$fa-css-prefix}-credit-card-alt:before { content: $fa-var-credit-card-alt; }
+.#{$fa-css-prefix}-codiepie:before { content: $fa-var-codiepie; }
+.#{$fa-css-prefix}-modx:before { content: $fa-var-modx; }
+.#{$fa-css-prefix}-fort-awesome:before { content: $fa-var-fort-awesome; }
+.#{$fa-css-prefix}-usb:before { content: $fa-var-usb; }
+.#{$fa-css-prefix}-product-hunt:before { content: $fa-var-product-hunt; }
+.#{$fa-css-prefix}-mixcloud:before { content: $fa-var-mixcloud; }
+.#{$fa-css-prefix}-scribd:before { content: $fa-var-scribd; }
+.#{$fa-css-prefix}-pause-circle:before { content: $fa-var-pause-circle; }
+.#{$fa-css-prefix}-pause-circle-o:before { content: $fa-var-pause-circle-o; }
+.#{$fa-css-prefix}-stop-circle:before { content: $fa-var-stop-circle; }
+.#{$fa-css-prefix}-stop-circle-o:before { content: $fa-var-stop-circle-o; }
+.#{$fa-css-prefix}-shopping-bag:before { content: $fa-var-shopping-bag; }
+.#{$fa-css-prefix}-shopping-basket:before { content: $fa-var-shopping-basket; }
+.#{$fa-css-prefix}-hashtag:before { content: $fa-var-hashtag; }
+.#{$fa-css-prefix}-bluetooth:before { content: $fa-var-bluetooth; }
+.#{$fa-css-prefix}-bluetooth-b:before { content: $fa-var-bluetooth-b; }
+.#{$fa-css-prefix}-percent:before { content: $fa-var-percent; }
+.#{$fa-css-prefix}-gitlab:before { content: $fa-var-gitlab; }
+.#{$fa-css-prefix}-wpbeginner:before { content: $fa-var-wpbeginner; }
+.#{$fa-css-prefix}-wpforms:before { content: $fa-var-wpforms; }
+.#{$fa-css-prefix}-envira:before { content: $fa-var-envira; }
+.#{$fa-css-prefix}-universal-access:before { content: $fa-var-universal-access; }
+.#{$fa-css-prefix}-wheelchair-alt:before { content: $fa-var-wheelchair-alt; }
+.#{$fa-css-prefix}-question-circle-o:before { content: $fa-var-question-circle-o; }
+.#{$fa-css-prefix}-blind:before { content: $fa-var-blind; }
+.#{$fa-css-prefix}-audio-description:before { content: $fa-var-audio-description; }
+.#{$fa-css-prefix}-volume-control-phone:before { content: $fa-var-volume-control-phone; }
+.#{$fa-css-prefix}-braille:before { content: $fa-var-braille; }
+.#{$fa-css-prefix}-assistive-listening-systems:before { content: $fa-var-assistive-listening-systems; }
+.#{$fa-css-prefix}-asl-interpreting:before,
+.#{$fa-css-prefix}-american-sign-language-interpreting:before { content: $fa-var-american-sign-language-interpreting; }
+.#{$fa-css-prefix}-deafness:before,
+.#{$fa-css-prefix}-hard-of-hearing:before,
+.#{$fa-css-prefix}-deaf:before { content: $fa-var-deaf; }
+.#{$fa-css-prefix}-glide:before { content: $fa-var-glide; }
+.#{$fa-css-prefix}-glide-g:before { content: $fa-var-glide-g; }
+.#{$fa-css-prefix}-signing:before,
+.#{$fa-css-prefix}-sign-language:before { content: $fa-var-sign-language; }
+.#{$fa-css-prefix}-low-vision:before { content: $fa-var-low-vision; }
+.#{$fa-css-prefix}-viadeo:before { content: $fa-var-viadeo; }
+.#{$fa-css-prefix}-viadeo-square:before { content: $fa-var-viadeo-square; }
+.#{$fa-css-prefix}-snapchat:before { content: $fa-var-snapchat; }
+.#{$fa-css-prefix}-snapchat-ghost:before { content: $fa-var-snapchat-ghost; }
+.#{$fa-css-prefix}-snapchat-square:before { content: $fa-var-snapchat-square; }
diff --git a/library/font_awesome/scss/_larger.scss b/library/font_awesome/scss/_larger.scss
new file mode 100644
index 000000000..41e9a8184
--- /dev/null
+++ b/library/font_awesome/scss/_larger.scss
@@ -0,0 +1,13 @@
+// Icon Sizes
+// -------------------------
+
+/* makes the font 33% larger relative to the icon container */
+.#{$fa-css-prefix}-lg {
+ font-size: (4em / 3);
+ line-height: (3em / 4);
+ vertical-align: -15%;
+}
+.#{$fa-css-prefix}-2x { font-size: 2em; }
+.#{$fa-css-prefix}-3x { font-size: 3em; }
+.#{$fa-css-prefix}-4x { font-size: 4em; }
+.#{$fa-css-prefix}-5x { font-size: 5em; }
diff --git a/library/font_awesome/scss/_list.scss b/library/font_awesome/scss/_list.scss
new file mode 100644
index 000000000..7d1e4d54d
--- /dev/null
+++ b/library/font_awesome/scss/_list.scss
@@ -0,0 +1,19 @@
+// List Icons
+// -------------------------
+
+.#{$fa-css-prefix}-ul {
+ padding-left: 0;
+ margin-left: $fa-li-width;
+ list-style-type: none;
+ > li { position: relative; }
+}
+.#{$fa-css-prefix}-li {
+ position: absolute;
+ left: -$fa-li-width;
+ width: $fa-li-width;
+ top: (2em / 14);
+ text-align: center;
+ &.#{$fa-css-prefix}-lg {
+ left: -$fa-li-width + (4em / 14);
+ }
+}
diff --git a/library/font_awesome/scss/_mixins.scss b/library/font_awesome/scss/_mixins.scss
index ca9c5931b..c3bbd5745 100644
--- a/library/font_awesome/scss/_mixins.scss
+++ b/library/font_awesome/scss/_mixins.scss
@@ -1,48 +1,60 @@
// Mixins
// --------------------------
-@mixin icon($icon) {
- @include icon-FontAwesome();
- content: $icon;
+@mixin fa-icon() {
+ display: inline-block;
+ font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // 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;
+
}
-@mixin icon-FontAwesome() {
- font-family: FontAwesome;
- font-weight: normal;
- font-style: normal;
- text-decoration: inherit;
- -webkit-font-smoothing: antialiased;
- *margin-right: .3em; // fixes ie7 issues
+@mixin fa-icon-rotate($degrees, $rotation) {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})";
+ -webkit-transform: rotate($degrees);
+ -ms-transform: rotate($degrees);
+ transform: rotate($degrees);
+}
+
+@mixin fa-icon-flip($horiz, $vert, $rotation) {
+ -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}, mirror=1)";
+ -webkit-transform: scale($horiz, $vert);
+ -ms-transform: scale($horiz, $vert);
+ transform: scale($horiz, $vert);
}
-@mixin border-radius($radius) {
- -webkit-border-radius: $radius;
- -moz-border-radius: $radius;
- border-radius: $radius;
+
+// Only display content to screen readers. A la Bootstrap 4.
+//
+// See: http://a11yproject.com/posts/how-to-hide-content/
+
+@mixin sr-only {
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ padding: 0;
+ margin: -1px;
+ overflow: hidden;
+ clip: rect(0,0,0,0);
+ border: 0;
}
-@mixin icon-stack($width: 2em, $height: 2em, $top-font-size: 1em, $base-font-size: 2em) {
- .icon-stack {
- position: relative;
- display: inline-block;
- width: $width;
- height: $height;
- line-height: $width;
- vertical-align: -35%;
- [class^="icon-"],
- [class*=" icon-"] {
- display: block;
- text-align: center;
- position: absolute;
- width: 100%;
- height: 100%;
- font-size: $top-font-size;
- line-height: inherit;
- *line-height: $height;
- }
- .icon-stack-base {
- font-size: $base-font-size;
- *line-height: #{$height / $base-font-size}em;
- }
+// Use in conjunction with .sr-only to only display content when it's focused.
+//
+// Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
+//
+// Credit: HTML5 Boilerplate
+
+@mixin sr-only-focusable {
+ &:active,
+ &:focus {
+ position: static;
+ width: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ clip: auto;
}
}
diff --git a/library/font_awesome/scss/_path.scss b/library/font_awesome/scss/_path.scss
index bb3f36b70..bb457c23a 100644
--- a/library/font_awesome/scss/_path.scss
+++ b/library/font_awesome/scss/_path.scss
@@ -3,12 +3,13 @@
@font-face {
font-family: 'FontAwesome';
- src: url('#{$FontAwesomePath}/fontawesome-webfont.eot?v=#{$FontAwesomeVersion}');
- src: url('#{$FontAwesomePath}/fontawesome-webfont.eot?#iefix&v=#{$FontAwesomeVersion}') format('embedded-opentype'),
- url('#{$FontAwesomePath}/fontawesome-webfont.woff?v=#{$FontAwesomeVersion}') format('woff'),
- url('#{$FontAwesomePath}/fontawesome-webfont.ttf?v=#{$FontAwesomeVersion}') format('truetype'),
- url('#{$FontAwesomePath}/fontawesome-webfont.svg#fontawesomeregular?v=#{$FontAwesomeVersion}') format('svg');
-// src: url('#{$FontAwesomePath}/FontAwesome.otf') format('opentype'); // used when developing fonts
+ src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}');
+ src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'),
+ url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'),
+ url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'),
+ url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'),
+ url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg');
+// src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts
font-weight: normal;
font-style: normal;
}
diff --git a/library/font_awesome/scss/_rotated-flipped.scss b/library/font_awesome/scss/_rotated-flipped.scss
new file mode 100644
index 000000000..a3558fd09
--- /dev/null
+++ b/library/font_awesome/scss/_rotated-flipped.scss
@@ -0,0 +1,20 @@
+// Rotated & Flipped Icons
+// -------------------------
+
+.#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); }
+.#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); }
+.#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); }
+
+.#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); }
+.#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); }
+
+// Hook for IE8-9
+// -------------------------
+
+:root .#{$fa-css-prefix}-rotate-90,
+:root .#{$fa-css-prefix}-rotate-180,
+:root .#{$fa-css-prefix}-rotate-270,
+:root .#{$fa-css-prefix}-flip-horizontal,
+:root .#{$fa-css-prefix}-flip-vertical {
+ filter: none;
+}
diff --git a/library/font_awesome/scss/_screen-reader.scss b/library/font_awesome/scss/_screen-reader.scss
new file mode 100644
index 000000000..637426f0d
--- /dev/null
+++ b/library/font_awesome/scss/_screen-reader.scss
@@ -0,0 +1,5 @@
+// Screen Readers
+// -------------------------
+
+.sr-only { @include sr-only(); }
+.sr-only-focusable { @include sr-only-focusable(); }
diff --git a/library/font_awesome/scss/_stacked.scss b/library/font_awesome/scss/_stacked.scss
new file mode 100644
index 000000000..aef740366
--- /dev/null
+++ b/library/font_awesome/scss/_stacked.scss
@@ -0,0 +1,20 @@
+// Stacked Icons
+// -------------------------
+
+.#{$fa-css-prefix}-stack {
+ position: relative;
+ display: inline-block;
+ width: 2em;
+ height: 2em;
+ line-height: 2em;
+ vertical-align: middle;
+}
+.#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x {
+ position: absolute;
+ left: 0;
+ width: 100%;
+ text-align: center;
+}
+.#{$fa-css-prefix}-stack-1x { line-height: inherit; }
+.#{$fa-css-prefix}-stack-2x { font-size: 2em; }
+.#{$fa-css-prefix}-inverse { color: $fa-inverse; }
diff --git a/library/font_awesome/scss/_variables.scss b/library/font_awesome/scss/_variables.scss
index 7d6bbc5b1..1f374d6c9 100644
--- a/library/font_awesome/scss/_variables.scss
+++ b/library/font_awesome/scss/_variables.scss
@@ -1,734 +1,735 @@
// Variables
// --------------------------
-$FontAwesomePath: "../font" !default;
-$FontAwesomeVersion: "3.2.1" !default;
-$borderColor: #eeeeee !default;
-$iconMuted: #eeeeee !default;
-$iconLight: white !default;
-$iconDark: #333333 !default;
-$icons-li-width: (30em/14);
-
-
-$glass: "\f000";
-
-$music: "\f001";
-
-$search: "\f002";
-
-$envelope-alt: "\f003";
-
-$heart: "\f004";
-
-$star: "\f005";
-
-$star-empty: "\f006";
-
-$user: "\f007";
-
-$film: "\f008";
-
-$th-large: "\f009";
-
-$th: "\f00a";
-
-$th-list: "\f00b";
-
-$ok: "\f00c";
-
-$remove: "\f00d";
-
-$zoom-in: "\f00e";
-
-$zoom-out: "\f010";
-
-$off: "\f011";
-
-$signal: "\f012";
-
-$cog: "\f013";
-
-$trash: "\f014";
-
-$home: "\f015";
-
-$file-alt: "\f016";
-
-$time: "\f017";
-
-$road: "\f018";
-
-$download-alt: "\f019";
-
-$download: "\f01a";
-
-$upload: "\f01b";
-
-$inbox: "\f01c";
-
-$play-circle: "\f01d";
-
-$repeat: "\f01e";
-
-$refresh: "\f021";
-
-$list-alt: "\f022";
-
-$lock: "\f023";
-
-$flag: "\f024";
-
-$headphones: "\f025";
-
-$volume-off: "\f026";
-
-$volume-down: "\f027";
-
-$volume-up: "\f028";
-
-$qrcode: "\f029";
-
-$barcode: "\f02a";
-
-$tag: "\f02b";
-
-$tags: "\f02c";
-
-$book: "\f02d";
-
-$bookmark: "\f02e";
-
-$print: "\f02f";
-
-$camera: "\f030";
-
-$font: "\f031";
-
-$bold: "\f032";
-
-$italic: "\f033";
-
-$text-height: "\f034";
-
-$text-width: "\f035";
-
-$align-left: "\f036";
-
-$align-center: "\f037";
-
-$align-right: "\f038";
-
-$align-justify: "\f039";
-
-$list: "\f03a";
-
-$indent-left: "\f03b";
-
-$indent-right: "\f03c";
-
-$facetime-video: "\f03d";
-
-$picture: "\f03e";
-
-$pencil: "\f040";
-
-$map-marker: "\f041";
-
-$adjust: "\f042";
-
-$tint: "\f043";
-
-$edit: "\f044";
-
-$share: "\f045";
-
-$check: "\f046";
-
-$move: "\f047";
-
-$step-backward: "\f048";
-
-$fast-backward: "\f049";
-
-$backward: "\f04a";
-
-$play: "\f04b";
-
-$pause: "\f04c";
-
-$stop: "\f04d";
-
-$forward: "\f04e";
-
-$fast-forward: "\f050";
-
-$step-forward: "\f051";
-
-$eject: "\f052";
-
-$chevron-left: "\f053";
-
-$chevron-right: "\f054";
-
-$plus-sign: "\f055";
-
-$minus-sign: "\f056";
-
-$remove-sign: "\f057";
-
-$ok-sign: "\f058";
-
-$question-sign: "\f059";
-
-$info-sign: "\f05a";
-
-$screenshot: "\f05b";
-
-$remove-circle: "\f05c";
-
-$ok-circle: "\f05d";
-
-$ban-circle: "\f05e";
-
-$arrow-left: "\f060";
-
-$arrow-right: "\f061";
-
-$arrow-up: "\f062";
-
-$arrow-down: "\f063";
-
-$share-alt: "\f064";
-
-$resize-full: "\f065";
-
-$resize-small: "\f066";
-
-$plus: "\f067";
-
-$minus: "\f068";
-
-$asterisk: "\f069";
-
-$exclamation-sign: "\f06a";
-
-$gift: "\f06b";
-
-$leaf: "\f06c";
-
-$fire: "\f06d";
-
-$eye-open: "\f06e";
-
-$eye-close: "\f070";
-
-$warning-sign: "\f071";
-
-$plane: "\f072";
-
-$calendar: "\f073";
-
-$random: "\f074";
-
-$comment: "\f075";
-
-$magnet: "\f076";
-
-$chevron-up: "\f077";
-
-$chevron-down: "\f078";
-
-$retweet: "\f079";
-
-$shopping-cart: "\f07a";
-
-$folder-close: "\f07b";
-
-$folder-open: "\f07c";
-
-$resize-vertical: "\f07d";
-
-$resize-horizontal: "\f07e";
-
-$bar-chart: "\f080";
-
-$twitter-sign: "\f081";
-
-$facebook-sign: "\f082";
-
-$camera-retro: "\f083";
-
-$key: "\f084";
-
-$cogs: "\f085";
-
-$comments: "\f086";
-
-$thumbs-up-alt: "\f087";
-
-$thumbs-down-alt: "\f088";
-
-$star-half: "\f089";
-
-$heart-empty: "\f08a";
-
-$signout: "\f08b";
-
-$linkedin-sign: "\f08c";
-
-$pushpin: "\f08d";
-
-$external-link: "\f08e";
-
-$signin: "\f090";
-
-$trophy: "\f091";
-
-$github-sign: "\f092";
-
-$upload-alt: "\f093";
-
-$lemon: "\f094";
-
-$phone: "\f095";
-
-$check-empty: "\f096";
-
-$bookmark-empty: "\f097";
-
-$phone-sign: "\f098";
-
-$twitter: "\f099";
-
-$facebook: "\f09a";
-
-$github: "\f09b";
-
-$unlock: "\f09c";
-
-$credit-card: "\f09d";
-
-$rss: "\f09e";
-
-$hdd: "\f0a0";
-
-$bullhorn: "\f0a1";
-
-$bell: "\f0a2";
-
-$certificate: "\f0a3";
-
-$hand-right: "\f0a4";
-
-$hand-left: "\f0a5";
-
-$hand-up: "\f0a6";
-
-$hand-down: "\f0a7";
-
-$circle-arrow-left: "\f0a8";
-
-$circle-arrow-right: "\f0a9";
-
-$circle-arrow-up: "\f0aa";
-
-$circle-arrow-down: "\f0ab";
-
-$globe: "\f0ac";
-
-$wrench: "\f0ad";
-
-$tasks: "\f0ae";
-
-$filter: "\f0b0";
-
-$briefcase: "\f0b1";
-
-$fullscreen: "\f0b2";
-
-$group: "\f0c0";
-
-$link: "\f0c1";
-
-$cloud: "\f0c2";
-
-$beaker: "\f0c3";
-
-$cut: "\f0c4";
-
-$copy: "\f0c5";
-
-$paper-clip: "\f0c6";
-
-$save: "\f0c7";
-
-$sign-blank: "\f0c8";
-
-$reorder: "\f0c9";
-
-$list-ul: "\f0ca";
-
-$list-ol: "\f0cb";
-
-$strikethrough: "\f0cc";
-
-$underline: "\f0cd";
-
-$table: "\f0ce";
-
-$magic: "\f0d0";
-
-$truck: "\f0d1";
-
-$pinterest: "\f0d2";
-
-$pinterest-sign: "\f0d3";
-
-$google-plus-sign: "\f0d4";
-
-$google-plus: "\f0d5";
-
-$money: "\f0d6";
-
-$caret-down: "\f0d7";
-
-$caret-up: "\f0d8";
-
-$caret-left: "\f0d9";
-
-$caret-right: "\f0da";
-
-$columns: "\f0db";
-
-$sort: "\f0dc";
-
-$sort-down: "\f0dd";
-
-$sort-up: "\f0de";
-
-$envelope: "\f0e0";
-
-$linkedin: "\f0e1";
-
-$undo: "\f0e2";
-
-$legal: "\f0e3";
-
-$dashboard: "\f0e4";
-
-$comment-alt: "\f0e5";
-
-$comments-alt: "\f0e6";
-
-$bolt: "\f0e7";
-
-$sitemap: "\f0e8";
-
-$umbrella: "\f0e9";
-
-$paste: "\f0ea";
-
-$lightbulb: "\f0eb";
-
-$exchange: "\f0ec";
-
-$cloud-download: "\f0ed";
-
-$cloud-upload: "\f0ee";
-
-$user-md: "\f0f0";
-
-$stethoscope: "\f0f1";
-
-$suitcase: "\f0f2";
-
-$bell-alt: "\f0f3";
-
-$coffee: "\f0f4";
-
-$food: "\f0f5";
-
-$file-text-alt: "\f0f6";
-
-$building: "\f0f7";
-
-$hospital: "\f0f8";
-
-$ambulance: "\f0f9";
-
-$medkit: "\f0fa";
-
-$fighter-jet: "\f0fb";
-
-$beer: "\f0fc";
-
-$h-sign: "\f0fd";
-
-$plus-sign-alt: "\f0fe";
-
-$double-angle-left: "\f100";
-
-$double-angle-right: "\f101";
-
-$double-angle-up: "\f102";
-
-$double-angle-down: "\f103";
-
-$angle-left: "\f104";
-
-$angle-right: "\f105";
-
-$angle-up: "\f106";
-
-$angle-down: "\f107";
-
-$desktop: "\f108";
-
-$laptop: "\f109";
-
-$tablet: "\f10a";
-
-$mobile-phone: "\f10b";
-
-$circle-blank: "\f10c";
-
-$quote-left: "\f10d";
-
-$quote-right: "\f10e";
-
-$spinner: "\f110";
-
-$circle: "\f111";
-
-$reply: "\f112";
-
-$github-alt: "\f113";
-
-$folder-close-alt: "\f114";
-
-$folder-open-alt: "\f115";
-
-$expand-alt: "\f116";
-
-$collapse-alt: "\f117";
-
-$smile: "\f118";
-
-$frown: "\f119";
-
-$meh: "\f11a";
-
-$gamepad: "\f11b";
-
-$keyboard: "\f11c";
-
-$flag-alt: "\f11d";
-
-$flag-checkered: "\f11e";
-
-$terminal: "\f120";
-
-$code: "\f121";
-
-$reply-all: "\f122";
-
-$mail-reply-all: "\f122";
-
-$star-half-empty: "\f123";
-
-$location-arrow: "\f124";
-
-$crop: "\f125";
-
-$code-fork: "\f126";
-
-$unlink: "\f127";
-
-$question: "\f128";
-
-$info: "\f129";
-
-$exclamation: "\f12a";
-
-$superscript: "\f12b";
-
-$subscript: "\f12c";
-
-$eraser: "\f12d";
-
-$puzzle-piece: "\f12e";
-
-$microphone: "\f130";
-
-$microphone-off: "\f131";
-
-$shield: "\f132";
-
-$calendar-empty: "\f133";
-
-$fire-extinguisher: "\f134";
-
-$rocket: "\f135";
-
-$maxcdn: "\f136";
-
-$chevron-sign-left: "\f137";
-
-$chevron-sign-right: "\f138";
-
-$chevron-sign-up: "\f139";
-
-$chevron-sign-down: "\f13a";
-
-$html5: "\f13b";
-
-$css3: "\f13c";
-
-$anchor: "\f13d";
-
-$unlock-alt: "\f13e";
-
-$bullseye: "\f140";
-
-$ellipsis-horizontal: "\f141";
-
-$ellipsis-vertical: "\f142";
-
-$rss-sign: "\f143";
-
-$play-sign: "\f144";
-
-$ticket: "\f145";
-
-$minus-sign-alt: "\f146";
-
-$check-minus: "\f147";
-
-$level-up: "\f148";
-
-$level-down: "\f149";
-
-$check-sign: "\f14a";
-
-$edit-sign: "\f14b";
-
-$external-link-sign: "\f14c";
-
-$share-sign: "\f14d";
-
-$compass: "\f14e";
-
-$collapse: "\f150";
-
-$collapse-top: "\f151";
-
-$expand: "\f152";
-
-$eur: "\f153";
-
-$gbp: "\f154";
-
-$usd: "\f155";
-
-$inr: "\f156";
-
-$jpy: "\f157";
-
-$cny: "\f158";
-
-$krw: "\f159";
-
-$btc: "\f15a";
-
-$file: "\f15b";
-
-$file-text: "\f15c";
-
-$sort-by-alphabet: "\f15d";
-
-$sort-by-alphabet-alt: "\f15e";
-
-$sort-by-attributes: "\f160";
-
-$sort-by-attributes-alt: "\f161";
-
-$sort-by-order: "\f162";
-
-$sort-by-order-alt: "\f163";
-
-$thumbs-up: "\f164";
-
-$thumbs-down: "\f165";
-
-$youtube-sign: "\f166";
-
-$youtube: "\f167";
-
-$xing: "\f168";
-
-$xing-sign: "\f169";
-
-$youtube-play: "\f16a";
-
-$dropbox: "\f16b";
-
-$stackexchange: "\f16c";
-
-$instagram: "\f16d";
-
-$flickr: "\f16e";
-
-$adn: "\f170";
-
-$bitbucket: "\f171";
-
-$bitbucket-sign: "\f172";
-
-$tumblr: "\f173";
-
-$tumblr-sign: "\f174";
-
-$long-arrow-down: "\f175";
-
-$long-arrow-up: "\f176";
-
-$long-arrow-left: "\f177";
-
-$long-arrow-right: "\f178";
-
-$apple: "\f179";
-
-$windows: "\f17a";
-
-$android: "\f17b";
-
-$linux: "\f17c";
-
-$dribbble: "\f17d";
-
-$skype: "\f17e";
-
-$foursquare: "\f180";
-
-$trello: "\f181";
-
-$female: "\f182";
-
-$male: "\f183";
-
-$gittip: "\f184";
-
-$sun: "\f185";
-
-$moon: "\f186";
-
-$archive: "\f187";
-
-$bug: "\f188";
-
-$vk: "\f189";
-
-$weibo: "\f18a";
-
-$renren: "\f18b";
+$fa-font-path: "../fonts" !default;
+$fa-font-size-base: 14px !default;
+$fa-line-height-base: 1 !default;
+//$fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.6.1/fonts" !default; // for referencing Bootstrap CDN font files directly
+$fa-css-prefix: fa !default;
+$fa-version: "4.6.1" !default;
+$fa-border-color: #eee !default;
+$fa-inverse: #fff !default;
+$fa-li-width: (30em / 14) !default;
+
+$fa-var-500px: "\f26e";
+$fa-var-adjust: "\f042";
+$fa-var-adn: "\f170";
+$fa-var-align-center: "\f037";
+$fa-var-align-justify: "\f039";
+$fa-var-align-left: "\f036";
+$fa-var-align-right: "\f038";
+$fa-var-amazon: "\f270";
+$fa-var-ambulance: "\f0f9";
+$fa-var-american-sign-language-interpreting: "\f2a3";
+$fa-var-anchor: "\f13d";
+$fa-var-android: "\f17b";
+$fa-var-angellist: "\f209";
+$fa-var-angle-double-down: "\f103";
+$fa-var-angle-double-left: "\f100";
+$fa-var-angle-double-right: "\f101";
+$fa-var-angle-double-up: "\f102";
+$fa-var-angle-down: "\f107";
+$fa-var-angle-left: "\f104";
+$fa-var-angle-right: "\f105";
+$fa-var-angle-up: "\f106";
+$fa-var-apple: "\f179";
+$fa-var-archive: "\f187";
+$fa-var-area-chart: "\f1fe";
+$fa-var-arrow-circle-down: "\f0ab";
+$fa-var-arrow-circle-left: "\f0a8";
+$fa-var-arrow-circle-o-down: "\f01a";
+$fa-var-arrow-circle-o-left: "\f190";
+$fa-var-arrow-circle-o-right: "\f18e";
+$fa-var-arrow-circle-o-up: "\f01b";
+$fa-var-arrow-circle-right: "\f0a9";
+$fa-var-arrow-circle-up: "\f0aa";
+$fa-var-arrow-down: "\f063";
+$fa-var-arrow-left: "\f060";
+$fa-var-arrow-right: "\f061";
+$fa-var-arrow-up: "\f062";
+$fa-var-arrows: "\f047";
+$fa-var-arrows-alt: "\f0b2";
+$fa-var-arrows-h: "\f07e";
+$fa-var-arrows-v: "\f07d";
+$fa-var-asl-interpreting: "\f2a3";
+$fa-var-assistive-listening-systems: "\f2a2";
+$fa-var-asterisk: "\f069";
+$fa-var-at: "\f1fa";
+$fa-var-audio-description: "\f29e";
+$fa-var-automobile: "\f1b9";
+$fa-var-backward: "\f04a";
+$fa-var-balance-scale: "\f24e";
+$fa-var-ban: "\f05e";
+$fa-var-bank: "\f19c";
+$fa-var-bar-chart: "\f080";
+$fa-var-bar-chart-o: "\f080";
+$fa-var-barcode: "\f02a";
+$fa-var-bars: "\f0c9";
+$fa-var-battery-0: "\f244";
+$fa-var-battery-1: "\f243";
+$fa-var-battery-2: "\f242";
+$fa-var-battery-3: "\f241";
+$fa-var-battery-4: "\f240";
+$fa-var-battery-empty: "\f244";
+$fa-var-battery-full: "\f240";
+$fa-var-battery-half: "\f242";
+$fa-var-battery-quarter: "\f243";
+$fa-var-battery-three-quarters: "\f241";
+$fa-var-bed: "\f236";
+$fa-var-beer: "\f0fc";
+$fa-var-behance: "\f1b4";
+$fa-var-behance-square: "\f1b5";
+$fa-var-bell: "\f0f3";
+$fa-var-bell-o: "\f0a2";
+$fa-var-bell-slash: "\f1f6";
+$fa-var-bell-slash-o: "\f1f7";
+$fa-var-bicycle: "\f206";
+$fa-var-binoculars: "\f1e5";
+$fa-var-birthday-cake: "\f1fd";
+$fa-var-bitbucket: "\f171";
+$fa-var-bitbucket-square: "\f172";
+$fa-var-bitcoin: "\f15a";
+$fa-var-black-tie: "\f27e";
+$fa-var-blind: "\f29d";
+$fa-var-bluetooth: "\f293";
+$fa-var-bluetooth-b: "\f294";
+$fa-var-bold: "\f032";
+$fa-var-bolt: "\f0e7";
+$fa-var-bomb: "\f1e2";
+$fa-var-book: "\f02d";
+$fa-var-bookmark: "\f02e";
+$fa-var-bookmark-o: "\f097";
+$fa-var-braille: "\f2a1";
+$fa-var-briefcase: "\f0b1";
+$fa-var-btc: "\f15a";
+$fa-var-bug: "\f188";
+$fa-var-building: "\f1ad";
+$fa-var-building-o: "\f0f7";
+$fa-var-bullhorn: "\f0a1";
+$fa-var-bullseye: "\f140";
+$fa-var-bus: "\f207";
+$fa-var-buysellads: "\f20d";
+$fa-var-cab: "\f1ba";
+$fa-var-calculator: "\f1ec";
+$fa-var-calendar: "\f073";
+$fa-var-calendar-check-o: "\f274";
+$fa-var-calendar-minus-o: "\f272";
+$fa-var-calendar-o: "\f133";
+$fa-var-calendar-plus-o: "\f271";
+$fa-var-calendar-times-o: "\f273";
+$fa-var-camera: "\f030";
+$fa-var-camera-retro: "\f083";
+$fa-var-car: "\f1b9";
+$fa-var-caret-down: "\f0d7";
+$fa-var-caret-left: "\f0d9";
+$fa-var-caret-right: "\f0da";
+$fa-var-caret-square-o-down: "\f150";
+$fa-var-caret-square-o-left: "\f191";
+$fa-var-caret-square-o-right: "\f152";
+$fa-var-caret-square-o-up: "\f151";
+$fa-var-caret-up: "\f0d8";
+$fa-var-cart-arrow-down: "\f218";
+$fa-var-cart-plus: "\f217";
+$fa-var-cc: "\f20a";
+$fa-var-cc-amex: "\f1f3";
+$fa-var-cc-diners-club: "\f24c";
+$fa-var-cc-discover: "\f1f2";
+$fa-var-cc-jcb: "\f24b";
+$fa-var-cc-mastercard: "\f1f1";
+$fa-var-cc-paypal: "\f1f4";
+$fa-var-cc-stripe: "\f1f5";
+$fa-var-cc-visa: "\f1f0";
+$fa-var-certificate: "\f0a3";
+$fa-var-chain: "\f0c1";
+$fa-var-chain-broken: "\f127";
+$fa-var-check: "\f00c";
+$fa-var-check-circle: "\f058";
+$fa-var-check-circle-o: "\f05d";
+$fa-var-check-square: "\f14a";
+$fa-var-check-square-o: "\f046";
+$fa-var-chevron-circle-down: "\f13a";
+$fa-var-chevron-circle-left: "\f137";
+$fa-var-chevron-circle-right: "\f138";
+$fa-var-chevron-circle-up: "\f139";
+$fa-var-chevron-down: "\f078";
+$fa-var-chevron-left: "\f053";
+$fa-var-chevron-right: "\f054";
+$fa-var-chevron-up: "\f077";
+$fa-var-child: "\f1ae";
+$fa-var-chrome: "\f268";
+$fa-var-circle: "\f111";
+$fa-var-circle-o: "\f10c";
+$fa-var-circle-o-notch: "\f1ce";
+$fa-var-circle-thin: "\f1db";
+$fa-var-clipboard: "\f0ea";
+$fa-var-clock-o: "\f017";
+$fa-var-clone: "\f24d";
+$fa-var-close: "\f00d";
+$fa-var-cloud: "\f0c2";
+$fa-var-cloud-download: "\f0ed";
+$fa-var-cloud-upload: "\f0ee";
+$fa-var-cny: "\f157";
+$fa-var-code: "\f121";
+$fa-var-code-fork: "\f126";
+$fa-var-codepen: "\f1cb";
+$fa-var-codiepie: "\f284";
+$fa-var-coffee: "\f0f4";
+$fa-var-cog: "\f013";
+$fa-var-cogs: "\f085";
+$fa-var-columns: "\f0db";
+$fa-var-comment: "\f075";
+$fa-var-comment-o: "\f0e5";
+$fa-var-commenting: "\f27a";
+$fa-var-commenting-o: "\f27b";
+$fa-var-comments: "\f086";
+$fa-var-comments-o: "\f0e6";
+$fa-var-compass: "\f14e";
+$fa-var-compress: "\f066";
+$fa-var-connectdevelop: "\f20e";
+$fa-var-contao: "\f26d";
+$fa-var-copy: "\f0c5";
+$fa-var-copyright: "\f1f9";
+$fa-var-creative-commons: "\f25e";
+$fa-var-credit-card: "\f09d";
+$fa-var-credit-card-alt: "\f283";
+$fa-var-crop: "\f125";
+$fa-var-crosshairs: "\f05b";
+$fa-var-css3: "\f13c";
+$fa-var-cube: "\f1b2";
+$fa-var-cubes: "\f1b3";
+$fa-var-cut: "\f0c4";
+$fa-var-cutlery: "\f0f5";
+$fa-var-dashboard: "\f0e4";
+$fa-var-dashcube: "\f210";
+$fa-var-database: "\f1c0";
+$fa-var-deaf: "\f2a4";
+$fa-var-deafness: "\f2a4";
+$fa-var-dedent: "\f03b";
+$fa-var-delicious: "\f1a5";
+$fa-var-desktop: "\f108";
+$fa-var-deviantart: "\f1bd";
+$fa-var-diamond: "\f219";
+$fa-var-digg: "\f1a6";
+$fa-var-dollar: "\f155";
+$fa-var-dot-circle-o: "\f192";
+$fa-var-download: "\f019";
+$fa-var-dribbble: "\f17d";
+$fa-var-dropbox: "\f16b";
+$fa-var-drupal: "\f1a9";
+$fa-var-edge: "\f282";
+$fa-var-edit: "\f044";
+$fa-var-eject: "\f052";
+$fa-var-ellipsis-h: "\f141";
+$fa-var-ellipsis-v: "\f142";
+$fa-var-empire: "\f1d1";
+$fa-var-envelope: "\f0e0";
+$fa-var-envelope-o: "\f003";
+$fa-var-envelope-square: "\f199";
+$fa-var-envira: "\f299";
+$fa-var-eraser: "\f12d";
+$fa-var-eur: "\f153";
+$fa-var-euro: "\f153";
+$fa-var-exchange: "\f0ec";
+$fa-var-exclamation: "\f12a";
+$fa-var-exclamation-circle: "\f06a";
+$fa-var-exclamation-triangle: "\f071";
+$fa-var-expand: "\f065";
+$fa-var-expeditedssl: "\f23e";
+$fa-var-external-link: "\f08e";
+$fa-var-external-link-square: "\f14c";
+$fa-var-eye: "\f06e";
+$fa-var-eye-slash: "\f070";
+$fa-var-eyedropper: "\f1fb";
+$fa-var-facebook: "\f09a";
+$fa-var-facebook-f: "\f09a";
+$fa-var-facebook-official: "\f230";
+$fa-var-facebook-square: "\f082";
+$fa-var-fast-backward: "\f049";
+$fa-var-fast-forward: "\f050";
+$fa-var-fax: "\f1ac";
+$fa-var-feed: "\f09e";
+$fa-var-female: "\f182";
+$fa-var-fighter-jet: "\f0fb";
+$fa-var-file: "\f15b";
+$fa-var-file-archive-o: "\f1c6";
+$fa-var-file-audio-o: "\f1c7";
+$fa-var-file-code-o: "\f1c9";
+$fa-var-file-excel-o: "\f1c3";
+$fa-var-file-image-o: "\f1c5";
+$fa-var-file-movie-o: "\f1c8";
+$fa-var-file-o: "\f016";
+$fa-var-file-pdf-o: "\f1c1";
+$fa-var-file-photo-o: "\f1c5";
+$fa-var-file-picture-o: "\f1c5";
+$fa-var-file-powerpoint-o: "\f1c4";
+$fa-var-file-sound-o: "\f1c7";
+$fa-var-file-text: "\f15c";
+$fa-var-file-text-o: "\f0f6";
+$fa-var-file-video-o: "\f1c8";
+$fa-var-file-word-o: "\f1c2";
+$fa-var-file-zip-o: "\f1c6";
+$fa-var-files-o: "\f0c5";
+$fa-var-film: "\f008";
+$fa-var-filter: "\f0b0";
+$fa-var-fire: "\f06d";
+$fa-var-fire-extinguisher: "\f134";
+$fa-var-firefox: "\f269";
+$fa-var-flag: "\f024";
+$fa-var-flag-checkered: "\f11e";
+$fa-var-flag-o: "\f11d";
+$fa-var-flash: "\f0e7";
+$fa-var-flask: "\f0c3";
+$fa-var-flickr: "\f16e";
+$fa-var-floppy-o: "\f0c7";
+$fa-var-folder: "\f07b";
+$fa-var-folder-o: "\f114";
+$fa-var-folder-open: "\f07c";
+$fa-var-folder-open-o: "\f115";
+$fa-var-font: "\f031";
+$fa-var-fonticons: "\f280";
+$fa-var-fort-awesome: "\f286";
+$fa-var-forumbee: "\f211";
+$fa-var-forward: "\f04e";
+$fa-var-foursquare: "\f180";
+$fa-var-frown-o: "\f119";
+$fa-var-futbol-o: "\f1e3";
+$fa-var-gamepad: "\f11b";
+$fa-var-gavel: "\f0e3";
+$fa-var-gbp: "\f154";
+$fa-var-ge: "\f1d1";
+$fa-var-gear: "\f013";
+$fa-var-gears: "\f085";
+$fa-var-genderless: "\f22d";
+$fa-var-get-pocket: "\f265";
+$fa-var-gg: "\f260";
+$fa-var-gg-circle: "\f261";
+$fa-var-gift: "\f06b";
+$fa-var-git: "\f1d3";
+$fa-var-git-square: "\f1d2";
+$fa-var-github: "\f09b";
+$fa-var-github-alt: "\f113";
+$fa-var-github-square: "\f092";
+$fa-var-gitlab: "\f296";
+$fa-var-gittip: "\f184";
+$fa-var-glass: "\f000";
+$fa-var-glide: "\f2a5";
+$fa-var-glide-g: "\f2a6";
+$fa-var-globe: "\f0ac";
+$fa-var-google: "\f1a0";
+$fa-var-google-plus: "\f0d5";
+$fa-var-google-plus-square: "\f0d4";
+$fa-var-google-wallet: "\f1ee";
+$fa-var-graduation-cap: "\f19d";
+$fa-var-gratipay: "\f184";
+$fa-var-group: "\f0c0";
+$fa-var-h-square: "\f0fd";
+$fa-var-hacker-news: "\f1d4";
+$fa-var-hand-grab-o: "\f255";
+$fa-var-hand-lizard-o: "\f258";
+$fa-var-hand-o-down: "\f0a7";
+$fa-var-hand-o-left: "\f0a5";
+$fa-var-hand-o-right: "\f0a4";
+$fa-var-hand-o-up: "\f0a6";
+$fa-var-hand-paper-o: "\f256";
+$fa-var-hand-peace-o: "\f25b";
+$fa-var-hand-pointer-o: "\f25a";
+$fa-var-hand-rock-o: "\f255";
+$fa-var-hand-scissors-o: "\f257";
+$fa-var-hand-spock-o: "\f259";
+$fa-var-hand-stop-o: "\f256";
+$fa-var-hard-of-hearing: "\f2a4";
+$fa-var-hashtag: "\f292";
+$fa-var-hdd-o: "\f0a0";
+$fa-var-header: "\f1dc";
+$fa-var-headphones: "\f025";
+$fa-var-heart: "\f004";
+$fa-var-heart-o: "\f08a";
+$fa-var-heartbeat: "\f21e";
+$fa-var-history: "\f1da";
+$fa-var-home: "\f015";
+$fa-var-hospital-o: "\f0f8";
+$fa-var-hotel: "\f236";
+$fa-var-hourglass: "\f254";
+$fa-var-hourglass-1: "\f251";
+$fa-var-hourglass-2: "\f252";
+$fa-var-hourglass-3: "\f253";
+$fa-var-hourglass-end: "\f253";
+$fa-var-hourglass-half: "\f252";
+$fa-var-hourglass-o: "\f250";
+$fa-var-hourglass-start: "\f251";
+$fa-var-houzz: "\f27c";
+$fa-var-html5: "\f13b";
+$fa-var-i-cursor: "\f246";
+$fa-var-ils: "\f20b";
+$fa-var-image: "\f03e";
+$fa-var-inbox: "\f01c";
+$fa-var-indent: "\f03c";
+$fa-var-industry: "\f275";
+$fa-var-info: "\f129";
+$fa-var-info-circle: "\f05a";
+$fa-var-inr: "\f156";
+$fa-var-instagram: "\f16d";
+$fa-var-institution: "\f19c";
+$fa-var-internet-explorer: "\f26b";
+$fa-var-intersex: "\f224";
+$fa-var-ioxhost: "\f208";
+$fa-var-italic: "\f033";
+$fa-var-joomla: "\f1aa";
+$fa-var-jpy: "\f157";
+$fa-var-jsfiddle: "\f1cc";
+$fa-var-key: "\f084";
+$fa-var-keyboard-o: "\f11c";
+$fa-var-krw: "\f159";
+$fa-var-language: "\f1ab";
+$fa-var-laptop: "\f109";
+$fa-var-lastfm: "\f202";
+$fa-var-lastfm-square: "\f203";
+$fa-var-leaf: "\f06c";
+$fa-var-leanpub: "\f212";
+$fa-var-legal: "\f0e3";
+$fa-var-lemon-o: "\f094";
+$fa-var-level-down: "\f149";
+$fa-var-level-up: "\f148";
+$fa-var-life-bouy: "\f1cd";
+$fa-var-life-buoy: "\f1cd";
+$fa-var-life-ring: "\f1cd";
+$fa-var-life-saver: "\f1cd";
+$fa-var-lightbulb-o: "\f0eb";
+$fa-var-line-chart: "\f201";
+$fa-var-link: "\f0c1";
+$fa-var-linkedin: "\f0e1";
+$fa-var-linkedin-square: "\f08c";
+$fa-var-linux: "\f17c";
+$fa-var-list: "\f03a";
+$fa-var-list-alt: "\f022";
+$fa-var-list-ol: "\f0cb";
+$fa-var-list-ul: "\f0ca";
+$fa-var-location-arrow: "\f124";
+$fa-var-lock: "\f023";
+$fa-var-long-arrow-down: "\f175";
+$fa-var-long-arrow-left: "\f177";
+$fa-var-long-arrow-right: "\f178";
+$fa-var-long-arrow-up: "\f176";
+$fa-var-low-vision: "\f2a8";
+$fa-var-magic: "\f0d0";
+$fa-var-magnet: "\f076";
+$fa-var-mail-forward: "\f064";
+$fa-var-mail-reply: "\f112";
+$fa-var-mail-reply-all: "\f122";
+$fa-var-male: "\f183";
+$fa-var-map: "\f279";
+$fa-var-map-marker: "\f041";
+$fa-var-map-o: "\f278";
+$fa-var-map-pin: "\f276";
+$fa-var-map-signs: "\f277";
+$fa-var-mars: "\f222";
+$fa-var-mars-double: "\f227";
+$fa-var-mars-stroke: "\f229";
+$fa-var-mars-stroke-h: "\f22b";
+$fa-var-mars-stroke-v: "\f22a";
+$fa-var-maxcdn: "\f136";
+$fa-var-meanpath: "\f20c";
+$fa-var-medium: "\f23a";
+$fa-var-medkit: "\f0fa";
+$fa-var-meh-o: "\f11a";
+$fa-var-mercury: "\f223";
+$fa-var-microphone: "\f130";
+$fa-var-microphone-slash: "\f131";
+$fa-var-minus: "\f068";
+$fa-var-minus-circle: "\f056";
+$fa-var-minus-square: "\f146";
+$fa-var-minus-square-o: "\f147";
+$fa-var-mixcloud: "\f289";
+$fa-var-mobile: "\f10b";
+$fa-var-mobile-phone: "\f10b";
+$fa-var-modx: "\f285";
+$fa-var-money: "\f0d6";
+$fa-var-moon-o: "\f186";
+$fa-var-mortar-board: "\f19d";
+$fa-var-motorcycle: "\f21c";
+$fa-var-mouse-pointer: "\f245";
+$fa-var-music: "\f001";
+$fa-var-navicon: "\f0c9";
+$fa-var-neuter: "\f22c";
+$fa-var-newspaper-o: "\f1ea";
+$fa-var-object-group: "\f247";
+$fa-var-object-ungroup: "\f248";
+$fa-var-odnoklassniki: "\f263";
+$fa-var-odnoklassniki-square: "\f264";
+$fa-var-opencart: "\f23d";
+$fa-var-openid: "\f19b";
+$fa-var-opera: "\f26a";
+$fa-var-optin-monster: "\f23c";
+$fa-var-outdent: "\f03b";
+$fa-var-pagelines: "\f18c";
+$fa-var-paint-brush: "\f1fc";
+$fa-var-paper-plane: "\f1d8";
+$fa-var-paper-plane-o: "\f1d9";
+$fa-var-paperclip: "\f0c6";
+$fa-var-paragraph: "\f1dd";
+$fa-var-paste: "\f0ea";
+$fa-var-pause: "\f04c";
+$fa-var-pause-circle: "\f28b";
+$fa-var-pause-circle-o: "\f28c";
+$fa-var-paw: "\f1b0";
+$fa-var-paypal: "\f1ed";
+$fa-var-pencil: "\f040";
+$fa-var-pencil-square: "\f14b";
+$fa-var-pencil-square-o: "\f044";
+$fa-var-percent: "\f295";
+$fa-var-phone: "\f095";
+$fa-var-phone-square: "\f098";
+$fa-var-photo: "\f03e";
+$fa-var-picture-o: "\f03e";
+$fa-var-pie-chart: "\f200";
+$fa-var-pied-piper: "\f1a7";
+$fa-var-pied-piper-alt: "\f1a8";
+$fa-var-pinterest: "\f0d2";
+$fa-var-pinterest-p: "\f231";
+$fa-var-pinterest-square: "\f0d3";
+$fa-var-plane: "\f072";
+$fa-var-play: "\f04b";
+$fa-var-play-circle: "\f144";
+$fa-var-play-circle-o: "\f01d";
+$fa-var-plug: "\f1e6";
+$fa-var-plus: "\f067";
+$fa-var-plus-circle: "\f055";
+$fa-var-plus-square: "\f0fe";
+$fa-var-plus-square-o: "\f196";
+$fa-var-power-off: "\f011";
+$fa-var-print: "\f02f";
+$fa-var-product-hunt: "\f288";
+$fa-var-puzzle-piece: "\f12e";
+$fa-var-qq: "\f1d6";
+$fa-var-qrcode: "\f029";
+$fa-var-question: "\f128";
+$fa-var-question-circle: "\f059";
+$fa-var-question-circle-o: "\f29c";
+$fa-var-quote-left: "\f10d";
+$fa-var-quote-right: "\f10e";
+$fa-var-ra: "\f1d0";
+$fa-var-random: "\f074";
+$fa-var-rebel: "\f1d0";
+$fa-var-recycle: "\f1b8";
+$fa-var-reddit: "\f1a1";
+$fa-var-reddit-alien: "\f281";
+$fa-var-reddit-square: "\f1a2";
+$fa-var-refresh: "\f021";
+$fa-var-registered: "\f25d";
+$fa-var-remove: "\f00d";
+$fa-var-renren: "\f18b";
+$fa-var-reorder: "\f0c9";
+$fa-var-repeat: "\f01e";
+$fa-var-reply: "\f112";
+$fa-var-reply-all: "\f122";
+$fa-var-retweet: "\f079";
+$fa-var-rmb: "\f157";
+$fa-var-road: "\f018";
+$fa-var-rocket: "\f135";
+$fa-var-rotate-left: "\f0e2";
+$fa-var-rotate-right: "\f01e";
+$fa-var-rouble: "\f158";
+$fa-var-rss: "\f09e";
+$fa-var-rss-square: "\f143";
+$fa-var-rub: "\f158";
+$fa-var-ruble: "\f158";
+$fa-var-rupee: "\f156";
+$fa-var-safari: "\f267";
+$fa-var-save: "\f0c7";
+$fa-var-scissors: "\f0c4";
+$fa-var-scribd: "\f28a";
+$fa-var-search: "\f002";
+$fa-var-search-minus: "\f010";
+$fa-var-search-plus: "\f00e";
+$fa-var-sellsy: "\f213";
+$fa-var-send: "\f1d8";
+$fa-var-send-o: "\f1d9";
+$fa-var-server: "\f233";
+$fa-var-share: "\f064";
+$fa-var-share-alt: "\f1e0";
+$fa-var-share-alt-square: "\f1e1";
+$fa-var-share-square: "\f14d";
+$fa-var-share-square-o: "\f045";
+$fa-var-shekel: "\f20b";
+$fa-var-sheqel: "\f20b";
+$fa-var-shield: "\f132";
+$fa-var-ship: "\f21a";
+$fa-var-shirtsinbulk: "\f214";
+$fa-var-shopping-bag: "\f290";
+$fa-var-shopping-basket: "\f291";
+$fa-var-shopping-cart: "\f07a";
+$fa-var-sign-in: "\f090";
+$fa-var-sign-language: "\f2a7";
+$fa-var-sign-out: "\f08b";
+$fa-var-signal: "\f012";
+$fa-var-signing: "\f2a7";
+$fa-var-simplybuilt: "\f215";
+$fa-var-sitemap: "\f0e8";
+$fa-var-skyatlas: "\f216";
+$fa-var-skype: "\f17e";
+$fa-var-slack: "\f198";
+$fa-var-sliders: "\f1de";
+$fa-var-slideshare: "\f1e7";
+$fa-var-smile-o: "\f118";
+$fa-var-snapchat: "\f2ab";
+$fa-var-snapchat-ghost: "\f2ac";
+$fa-var-snapchat-square: "\f2ad";
+$fa-var-soccer-ball-o: "\f1e3";
+$fa-var-sort: "\f0dc";
+$fa-var-sort-alpha-asc: "\f15d";
+$fa-var-sort-alpha-desc: "\f15e";
+$fa-var-sort-amount-asc: "\f160";
+$fa-var-sort-amount-desc: "\f161";
+$fa-var-sort-asc: "\f0de";
+$fa-var-sort-desc: "\f0dd";
+$fa-var-sort-down: "\f0dd";
+$fa-var-sort-numeric-asc: "\f162";
+$fa-var-sort-numeric-desc: "\f163";
+$fa-var-sort-up: "\f0de";
+$fa-var-soundcloud: "\f1be";
+$fa-var-space-shuttle: "\f197";
+$fa-var-spinner: "\f110";
+$fa-var-spoon: "\f1b1";
+$fa-var-spotify: "\f1bc";
+$fa-var-square: "\f0c8";
+$fa-var-square-o: "\f096";
+$fa-var-stack-exchange: "\f18d";
+$fa-var-stack-overflow: "\f16c";
+$fa-var-star: "\f005";
+$fa-var-star-half: "\f089";
+$fa-var-star-half-empty: "\f123";
+$fa-var-star-half-full: "\f123";
+$fa-var-star-half-o: "\f123";
+$fa-var-star-o: "\f006";
+$fa-var-steam: "\f1b6";
+$fa-var-steam-square: "\f1b7";
+$fa-var-step-backward: "\f048";
+$fa-var-step-forward: "\f051";
+$fa-var-stethoscope: "\f0f1";
+$fa-var-sticky-note: "\f249";
+$fa-var-sticky-note-o: "\f24a";
+$fa-var-stop: "\f04d";
+$fa-var-stop-circle: "\f28d";
+$fa-var-stop-circle-o: "\f28e";
+$fa-var-street-view: "\f21d";
+$fa-var-strikethrough: "\f0cc";
+$fa-var-stumbleupon: "\f1a4";
+$fa-var-stumbleupon-circle: "\f1a3";
+$fa-var-subscript: "\f12c";
+$fa-var-subway: "\f239";
+$fa-var-suitcase: "\f0f2";
+$fa-var-sun-o: "\f185";
+$fa-var-superscript: "\f12b";
+$fa-var-support: "\f1cd";
+$fa-var-table: "\f0ce";
+$fa-var-tablet: "\f10a";
+$fa-var-tachometer: "\f0e4";
+$fa-var-tag: "\f02b";
+$fa-var-tags: "\f02c";
+$fa-var-tasks: "\f0ae";
+$fa-var-taxi: "\f1ba";
+$fa-var-television: "\f26c";
+$fa-var-tencent-weibo: "\f1d5";
+$fa-var-terminal: "\f120";
+$fa-var-text-height: "\f034";
+$fa-var-text-width: "\f035";
+$fa-var-th: "\f00a";
+$fa-var-th-large: "\f009";
+$fa-var-th-list: "\f00b";
+$fa-var-thumb-tack: "\f08d";
+$fa-var-thumbs-down: "\f165";
+$fa-var-thumbs-o-down: "\f088";
+$fa-var-thumbs-o-up: "\f087";
+$fa-var-thumbs-up: "\f164";
+$fa-var-ticket: "\f145";
+$fa-var-times: "\f00d";
+$fa-var-times-circle: "\f057";
+$fa-var-times-circle-o: "\f05c";
+$fa-var-tint: "\f043";
+$fa-var-toggle-down: "\f150";
+$fa-var-toggle-left: "\f191";
+$fa-var-toggle-off: "\f204";
+$fa-var-toggle-on: "\f205";
+$fa-var-toggle-right: "\f152";
+$fa-var-toggle-up: "\f151";
+$fa-var-trademark: "\f25c";
+$fa-var-train: "\f238";
+$fa-var-transgender: "\f224";
+$fa-var-transgender-alt: "\f225";
+$fa-var-trash: "\f1f8";
+$fa-var-trash-o: "\f014";
+$fa-var-tree: "\f1bb";
+$fa-var-trello: "\f181";
+$fa-var-tripadvisor: "\f262";
+$fa-var-trophy: "\f091";
+$fa-var-truck: "\f0d1";
+$fa-var-try: "\f195";
+$fa-var-tty: "\f1e4";
+$fa-var-tumblr: "\f173";
+$fa-var-tumblr-square: "\f174";
+$fa-var-turkish-lira: "\f195";
+$fa-var-tv: "\f26c";
+$fa-var-twitch: "\f1e8";
+$fa-var-twitter: "\f099";
+$fa-var-twitter-square: "\f081";
+$fa-var-umbrella: "\f0e9";
+$fa-var-underline: "\f0cd";
+$fa-var-undo: "\f0e2";
+$fa-var-universal-access: "\f29a";
+$fa-var-university: "\f19c";
+$fa-var-unlink: "\f127";
+$fa-var-unlock: "\f09c";
+$fa-var-unlock-alt: "\f13e";
+$fa-var-unsorted: "\f0dc";
+$fa-var-upload: "\f093";
+$fa-var-usb: "\f287";
+$fa-var-usd: "\f155";
+$fa-var-user: "\f007";
+$fa-var-user-md: "\f0f0";
+$fa-var-user-plus: "\f234";
+$fa-var-user-secret: "\f21b";
+$fa-var-user-times: "\f235";
+$fa-var-users: "\f0c0";
+$fa-var-venus: "\f221";
+$fa-var-venus-double: "\f226";
+$fa-var-venus-mars: "\f228";
+$fa-var-viacoin: "\f237";
+$fa-var-viadeo: "\f2a9";
+$fa-var-viadeo-square: "\f2aa";
+$fa-var-video-camera: "\f03d";
+$fa-var-vimeo: "\f27d";
+$fa-var-vimeo-square: "\f194";
+$fa-var-vine: "\f1ca";
+$fa-var-vk: "\f189";
+$fa-var-volume-control-phone: "\f2a0";
+$fa-var-volume-down: "\f027";
+$fa-var-volume-off: "\f026";
+$fa-var-volume-up: "\f028";
+$fa-var-warning: "\f071";
+$fa-var-wechat: "\f1d7";
+$fa-var-weibo: "\f18a";
+$fa-var-weixin: "\f1d7";
+$fa-var-whatsapp: "\f232";
+$fa-var-wheelchair: "\f193";
+$fa-var-wheelchair-alt: "\f29b";
+$fa-var-wifi: "\f1eb";
+$fa-var-wikipedia-w: "\f266";
+$fa-var-windows: "\f17a";
+$fa-var-won: "\f159";
+$fa-var-wordpress: "\f19a";
+$fa-var-wpbeginner: "\f297";
+$fa-var-wpforms: "\f298";
+$fa-var-wrench: "\f0ad";
+$fa-var-xing: "\f168";
+$fa-var-xing-square: "\f169";
+$fa-var-y-combinator: "\f23b";
+$fa-var-y-combinator-square: "\f1d4";
+$fa-var-yahoo: "\f19e";
+$fa-var-yc: "\f23b";
+$fa-var-yc-square: "\f1d4";
+$fa-var-yelp: "\f1e9";
+$fa-var-yen: "\f157";
+$fa-var-youtube: "\f167";
+$fa-var-youtube-play: "\f16a";
+$fa-var-youtube-square: "\f166";
diff --git a/library/font_awesome/scss/font-awesome-ie7.scss b/library/font_awesome/scss/font-awesome-ie7.scss
deleted file mode 100644
index 0e236f61e..000000000
--- a/library/font_awesome/scss/font-awesome-ie7.scss
+++ /dev/null
@@ -1,1953 +0,0 @@
-/*!
- * Font Awesome 3.2.1
- * the iconic font designed for Bootstrap
- * ------------------------------------------------------------------------------
- * The full suite of pictographic icons, examples, and documentation can be
- * found at http://fontawesome.io. Stay up to date on Twitter at
- * http://twitter.com/fontawesome.
- *
- * License
- * ------------------------------------------------------------------------------
- * - The Font Awesome font is licensed under SIL OFL 1.1 -
- * http://scripts.sil.org/OFL
- * - Font Awesome CSS, LESS, and SASS files are licensed under MIT License -
- * http://opensource.org/licenses/mit-license.html
- * - Font Awesome documentation licensed under CC BY 3.0 -
- * http://creativecommons.org/licenses/by/3.0/
- * - Attribution is no longer required in Font Awesome 3.0, but much appreciated:
- * "Font Awesome by Dave Gandy - http://fontawesome.io"
- *
- * Author - Dave Gandy
- * ------------------------------------------------------------------------------
- * Email: dave@fontawesome.io
- * Twitter: http://twitter.com/davegandy
- * Work: Lead Product Designer @ Kyruus - http://kyruus.com
- */
-
-.icon-large {
- font-size: (4em/3);
- margin-top: -4px;
- padding-top: 3px;
- margin-bottom: -4px;
- padding-bottom: 3px;
- vertical-align: middle;
-}
-
-.nav {
- [class^="icon-"],
- [class*=" icon-"] {
- vertical-align: inherit;
- margin-top: -4px;
- padding-top: 3px;
- margin-bottom: -4px;
- padding-bottom: 3px;
- &.icon-large {
- vertical-align: -25%;
- }
- }
-}
-
-.nav-pills, .nav-tabs {
- [class^="icon-"],
- [class*=" icon-"] {
- &.icon-large {
- line-height: .75em;
- margin-top: -7px;
- padding-top: 5px;
- margin-bottom: -5px;
- padding-bottom: 4px;
- }
- }
-}
-
-.btn {
- [class^="icon-"],
- [class*=" icon-"] {
- &.pull-left, &.pull-right { vertical-align: inherit; }
- &.icon-large {
- margin-top: -.5em;
- }
- }
-}
-
-a [class^="icon-"],
-a [class*=" icon-"] {
- cursor: pointer;
-}
-
-@mixin ie7icon($inner) { *zoom: expression(this.runtimeStyle['zoom'] = '1', this.innerHTML = '#{$inner}'); }
-
-
-.icon-glass {
- @include ie7icon('');
-}
-
-
-.icon-music {
- @include ie7icon('');
-}
-
-
-.icon-search {
- @include ie7icon('');
-}
-
-
-.icon-envelope-alt {
- @include ie7icon('');
-}
-
-
-.icon-heart {
- @include ie7icon('');
-}
-
-
-.icon-star {
- @include ie7icon('');
-}
-
-
-.icon-star-empty {
- @include ie7icon('');
-}
-
-
-.icon-user {
- @include ie7icon('');
-}
-
-
-.icon-film {
- @include ie7icon('');
-}
-
-
-.icon-th-large {
- @include ie7icon('');
-}
-
-
-.icon-th {
- @include ie7icon('');
-}
-
-
-.icon-th-list {
- @include ie7icon('');
-}
-
-
-.icon-ok {
- @include ie7icon('');
-}
-
-
-.icon-remove {
- @include ie7icon('');
-}
-
-
-.icon-zoom-in {
- @include ie7icon('');
-}
-
-
-.icon-zoom-out {
- @include ie7icon('');
-}
-
-
-.icon-off {
- @include ie7icon('');
-}
-
-.icon-power-off {
- @include ie7icon('');
-}
-
-
-.icon-signal {
- @include ie7icon('');
-}
-
-
-.icon-cog {
- @include ie7icon('');
-}
-
-.icon-gear {
- @include ie7icon('');
-}
-
-
-.icon-trash {
- @include ie7icon('');
-}
-
-
-.icon-home {
- @include ie7icon('');
-}
-
-
-.icon-file-alt {
- @include ie7icon('');
-}
-
-
-.icon-time {
- @include ie7icon('');
-}
-
-
-.icon-road {
- @include ie7icon('');
-}
-
-
-.icon-download-alt {
- @include ie7icon('');
-}
-
-
-.icon-download {
- @include ie7icon('');
-}
-
-
-.icon-upload {
- @include ie7icon('');
-}
-
-
-.icon-inbox {
- @include ie7icon('');
-}
-
-
-.icon-play-circle {
- @include ie7icon('');
-}
-
-
-.icon-repeat {
- @include ie7icon('');
-}
-
-.icon-rotate-right {
- @include ie7icon('');
-}
-
-
-.icon-refresh {
- @include ie7icon('');
-}
-
-
-.icon-list-alt {
- @include ie7icon('');
-}
-
-
-.icon-lock {
- @include ie7icon('');
-}
-
-
-.icon-flag {
- @include ie7icon('');
-}
-
-
-.icon-headphones {
- @include ie7icon('');
-}
-
-
-.icon-volume-off {
- @include ie7icon('');
-}
-
-
-.icon-volume-down {
- @include ie7icon('');
-}
-
-
-.icon-volume-up {
- @include ie7icon('');
-}
-
-
-.icon-qrcode {
- @include ie7icon('');
-}
-
-
-.icon-barcode {
- @include ie7icon('');
-}
-
-
-.icon-tag {
- @include ie7icon('');
-}
-
-
-.icon-tags {
- @include ie7icon('');
-}
-
-
-.icon-book {
- @include ie7icon('');
-}
-
-
-.icon-bookmark {
- @include ie7icon('');
-}
-
-
-.icon-print {
- @include ie7icon('');
-}
-
-
-.icon-camera {
- @include ie7icon('');
-}
-
-
-.icon-font {
- @include ie7icon('');
-}
-
-
-.icon-bold {
- @include ie7icon('');
-}
-
-
-.icon-italic {
- @include ie7icon('');
-}
-
-
-.icon-text-height {
- @include ie7icon('');
-}
-
-
-.icon-text-width {
- @include ie7icon('');
-}
-
-
-.icon-align-left {
- @include ie7icon('');
-}
-
-
-.icon-align-center {
- @include ie7icon('');
-}
-
-
-.icon-align-right {
- @include ie7icon('');
-}
-
-
-.icon-align-justify {
- @include ie7icon('');
-}
-
-
-.icon-list {
- @include ie7icon('');
-}
-
-
-.icon-indent-left {
- @include ie7icon('');
-}
-
-
-.icon-indent-right {
- @include ie7icon('');
-}
-
-
-.icon-facetime-video {
- @include ie7icon('');
-}
-
-
-.icon-picture {
- @include ie7icon('');
-}
-
-
-.icon-pencil {
- @include ie7icon('');
-}
-
-
-.icon-map-marker {
- @include ie7icon('');
-}
-
-
-.icon-adjust {
- @include ie7icon('');
-}
-
-
-.icon-tint {
- @include ie7icon('');
-}
-
-
-.icon-edit {
- @include ie7icon('');
-}
-
-
-.icon-share {
- @include ie7icon('');
-}
-
-
-.icon-check {
- @include ie7icon('');
-}
-
-
-.icon-move {
- @include ie7icon('');
-}
-
-
-.icon-step-backward {
- @include ie7icon('');
-}
-
-
-.icon-fast-backward {
- @include ie7icon('');
-}
-
-
-.icon-backward {
- @include ie7icon('');
-}
-
-
-.icon-play {
- @include ie7icon('');
-}
-
-
-.icon-pause {
- @include ie7icon('');
-}
-
-
-.icon-stop {
- @include ie7icon('');
-}
-
-
-.icon-forward {
- @include ie7icon('');
-}
-
-
-.icon-fast-forward {
- @include ie7icon('');
-}
-
-
-.icon-step-forward {
- @include ie7icon('');
-}
-
-
-.icon-eject {
- @include ie7icon('');
-}
-
-
-.icon-chevron-left {
- @include ie7icon('');
-}
-
-
-.icon-chevron-right {
- @include ie7icon('');
-}
-
-
-.icon-plus-sign {
- @include ie7icon('');
-}
-
-
-.icon-minus-sign {
- @include ie7icon('');
-}
-
-
-.icon-remove-sign {
- @include ie7icon('');
-}
-
-
-.icon-ok-sign {
- @include ie7icon('');
-}
-
-
-.icon-question-sign {
- @include ie7icon('');
-}
-
-
-.icon-info-sign {
- @include ie7icon('');
-}
-
-
-.icon-screenshot {
- @include ie7icon('');
-}
-
-
-.icon-remove-circle {
- @include ie7icon('');
-}
-
-
-.icon-ok-circle {
- @include ie7icon('');
-}
-
-
-.icon-ban-circle {
- @include ie7icon('');
-}
-
-
-.icon-arrow-left {
- @include ie7icon('');
-}
-
-
-.icon-arrow-right {
- @include ie7icon('');
-}
-
-
-.icon-arrow-up {
- @include ie7icon('');
-}
-
-
-.icon-arrow-down {
- @include ie7icon('');
-}
-
-
-.icon-share-alt {
- @include ie7icon('');
-}
-
-.icon-mail-forward {
- @include ie7icon('');
-}
-
-
-.icon-resize-full {
- @include ie7icon('');
-}
-
-
-.icon-resize-small {
- @include ie7icon('');
-}
-
-
-.icon-plus {
- @include ie7icon('');
-}
-
-
-.icon-minus {
- @include ie7icon('');
-}
-
-
-.icon-asterisk {
- @include ie7icon('');
-}
-
-
-.icon-exclamation-sign {
- @include ie7icon('');
-}
-
-
-.icon-gift {
- @include ie7icon('');
-}
-
-
-.icon-leaf {
- @include ie7icon('');
-}
-
-
-.icon-fire {
- @include ie7icon('');
-}
-
-
-.icon-eye-open {
- @include ie7icon('');
-}
-
-
-.icon-eye-close {
- @include ie7icon('');
-}
-
-
-.icon-warning-sign {
- @include ie7icon('');
-}
-
-
-.icon-plane {
- @include ie7icon('');
-}
-
-
-.icon-calendar {
- @include ie7icon('');
-}
-
-
-.icon-random {
- @include ie7icon('');
-}
-
-
-.icon-comment {
- @include ie7icon('');
-}
-
-
-.icon-magnet {
- @include ie7icon('');
-}
-
-
-.icon-chevron-up {
- @include ie7icon('');
-}
-
-
-.icon-chevron-down {
- @include ie7icon('');
-}
-
-
-.icon-retweet {
- @include ie7icon('');
-}
-
-
-.icon-shopping-cart {
- @include ie7icon('');
-}
-
-
-.icon-folder-close {
- @include ie7icon('');
-}
-
-
-.icon-folder-open {
- @include ie7icon('');
-}
-
-
-.icon-resize-vertical {
- @include ie7icon('');
-}
-
-
-.icon-resize-horizontal {
- @include ie7icon('');
-}
-
-
-.icon-bar-chart {
- @include ie7icon('');
-}
-
-
-.icon-twitter-sign {
- @include ie7icon('');
-}
-
-
-.icon-facebook-sign {
- @include ie7icon('');
-}
-
-
-.icon-camera-retro {
- @include ie7icon('');
-}
-
-
-.icon-key {
- @include ie7icon('');
-}
-
-
-.icon-cogs {
- @include ie7icon('');
-}
-
-.icon-gears {
- @include ie7icon('');
-}
-
-
-.icon-comments {
- @include ie7icon('');
-}
-
-
-.icon-thumbs-up-alt {
- @include ie7icon('');
-}
-
-
-.icon-thumbs-down-alt {
- @include ie7icon('');
-}
-
-
-.icon-star-half {
- @include ie7icon('');
-}
-
-
-.icon-heart-empty {
- @include ie7icon('');
-}
-
-
-.icon-signout {
- @include ie7icon('');
-}
-
-
-.icon-linkedin-sign {
- @include ie7icon('');
-}
-
-
-.icon-pushpin {
- @include ie7icon('');
-}
-
-
-.icon-external-link {
- @include ie7icon('');
-}
-
-
-.icon-signin {
- @include ie7icon('');
-}
-
-
-.icon-trophy {
- @include ie7icon('');
-}
-
-
-.icon-github-sign {
- @include ie7icon('');
-}
-
-
-.icon-upload-alt {
- @include ie7icon('');
-}
-
-
-.icon-lemon {
- @include ie7icon('');
-}
-
-
-.icon-phone {
- @include ie7icon('');
-}
-
-
-.icon-check-empty {
- @include ie7icon('');
-}
-
-.icon-unchecked {
- @include ie7icon('');
-}
-
-
-.icon-bookmark-empty {
- @include ie7icon('');
-}
-
-
-.icon-phone-sign {
- @include ie7icon('');
-}
-
-
-.icon-twitter {
- @include ie7icon('');
-}
-
-
-.icon-facebook {
- @include ie7icon('');
-}
-
-
-.icon-github {
- @include ie7icon('');
-}
-
-
-.icon-unlock {
- @include ie7icon('');
-}
-
-
-.icon-credit-card {
- @include ie7icon('');
-}
-
-
-.icon-rss {
- @include ie7icon('');
-}
-
-
-.icon-hdd {
- @include ie7icon('');
-}
-
-
-.icon-bullhorn {
- @include ie7icon('');
-}
-
-
-.icon-bell {
- @include ie7icon('');
-}
-
-
-.icon-certificate {
- @include ie7icon('');
-}
-
-
-.icon-hand-right {
- @include ie7icon('');
-}
-
-
-.icon-hand-left {
- @include ie7icon('');
-}
-
-
-.icon-hand-up {
- @include ie7icon('');
-}
-
-
-.icon-hand-down {
- @include ie7icon('');
-}
-
-
-.icon-circle-arrow-left {
- @include ie7icon('');
-}
-
-
-.icon-circle-arrow-right {
- @include ie7icon('');
-}
-
-
-.icon-circle-arrow-up {
- @include ie7icon('');
-}
-
-
-.icon-circle-arrow-down {
- @include ie7icon('');
-}
-
-
-.icon-globe {
- @include ie7icon('');
-}
-
-
-.icon-wrench {
- @include ie7icon('');
-}
-
-
-.icon-tasks {
- @include ie7icon('');
-}
-
-
-.icon-filter {
- @include ie7icon('');
-}
-
-
-.icon-briefcase {
- @include ie7icon('');
-}
-
-
-.icon-fullscreen {
- @include ie7icon('');
-}
-
-
-.icon-group {
- @include ie7icon('');
-}
-
-
-.icon-link {
- @include ie7icon('');
-}
-
-
-.icon-cloud {
- @include ie7icon('');
-}
-
-
-.icon-beaker {
- @include ie7icon('');
-}
-
-
-.icon-cut {
- @include ie7icon('');
-}
-
-
-.icon-copy {
- @include ie7icon('');
-}
-
-
-.icon-paper-clip {
- @include ie7icon('');
-}
-
-.icon-paperclip {
- @include ie7icon('');
-}
-
-
-.icon-save {
- @include ie7icon('');
-}
-
-
-.icon-sign-blank {
- @include ie7icon('');
-}
-
-
-.icon-reorder {
- @include ie7icon('');
-}
-
-
-.icon-list-ul {
- @include ie7icon('');
-}
-
-
-.icon-list-ol {
- @include ie7icon('');
-}
-
-
-.icon-strikethrough {
- @include ie7icon('');
-}
-
-
-.icon-underline {
- @include ie7icon('');
-}
-
-
-.icon-table {
- @include ie7icon('');
-}
-
-
-.icon-magic {
- @include ie7icon('');
-}
-
-
-.icon-truck {
- @include ie7icon('');
-}
-
-
-.icon-pinterest {
- @include ie7icon('');
-}
-
-
-.icon-pinterest-sign {
- @include ie7icon('');
-}
-
-
-.icon-google-plus-sign {
- @include ie7icon('');
-}
-
-
-.icon-google-plus {
- @include ie7icon('');
-}
-
-
-.icon-money {
- @include ie7icon('');
-}
-
-
-.icon-caret-down {
- @include ie7icon('');
-}
-
-
-.icon-caret-up {
- @include ie7icon('');
-}
-
-
-.icon-caret-left {
- @include ie7icon('');
-}
-
-
-.icon-caret-right {
- @include ie7icon('');
-}
-
-
-.icon-columns {
- @include ie7icon('');
-}
-
-
-.icon-sort {
- @include ie7icon('');
-}
-
-
-.icon-sort-down {
- @include ie7icon('');
-}
-
-
-.icon-sort-up {
- @include ie7icon('');
-}
-
-
-.icon-envelope {
- @include ie7icon('');
-}
-
-
-.icon-linkedin {
- @include ie7icon('');
-}
-
-
-.icon-undo {
- @include ie7icon('');
-}
-
-.icon-rotate-left {
- @include ie7icon('');
-}
-
-
-.icon-legal {
- @include ie7icon('');
-}
-
-
-.icon-dashboard {
- @include ie7icon('');
-}
-
-
-.icon-comment-alt {
- @include ie7icon('');
-}
-
-
-.icon-comments-alt {
- @include ie7icon('');
-}
-
-
-.icon-bolt {
- @include ie7icon('');
-}
-
-
-.icon-sitemap {
- @include ie7icon('');
-}
-
-
-.icon-umbrella {
- @include ie7icon('');
-}
-
-
-.icon-paste {
- @include ie7icon('');
-}
-
-
-.icon-lightbulb {
- @include ie7icon('');
-}
-
-
-.icon-exchange {
- @include ie7icon('');
-}
-
-
-.icon-cloud-download {
- @include ie7icon('');
-}
-
-
-.icon-cloud-upload {
- @include ie7icon('');
-}
-
-
-.icon-user-md {
- @include ie7icon('');
-}
-
-
-.icon-stethoscope {
- @include ie7icon('');
-}
-
-
-.icon-suitcase {
- @include ie7icon('');
-}
-
-
-.icon-bell-alt {
- @include ie7icon('');
-}
-
-
-.icon-coffee {
- @include ie7icon('');
-}
-
-
-.icon-food {
- @include ie7icon('');
-}
-
-
-.icon-file-text-alt {
- @include ie7icon('');
-}
-
-
-.icon-building {
- @include ie7icon('');
-}
-
-
-.icon-hospital {
- @include ie7icon('');
-}
-
-
-.icon-ambulance {
- @include ie7icon('');
-}
-
-
-.icon-medkit {
- @include ie7icon('');
-}
-
-
-.icon-fighter-jet {
- @include ie7icon('');
-}
-
-
-.icon-beer {
- @include ie7icon('');
-}
-
-
-.icon-h-sign {
- @include ie7icon('');
-}
-
-
-.icon-plus-sign-alt {
- @include ie7icon('');
-}
-
-
-.icon-double-angle-left {
- @include ie7icon('');
-}
-
-
-.icon-double-angle-right {
- @include ie7icon('');
-}
-
-
-.icon-double-angle-up {
- @include ie7icon('');
-}
-
-
-.icon-double-angle-down {
- @include ie7icon('');
-}
-
-
-.icon-angle-left {
- @include ie7icon('');
-}
-
-
-.icon-angle-right {
- @include ie7icon('');
-}
-
-
-.icon-angle-up {
- @include ie7icon('');
-}
-
-
-.icon-angle-down {
- @include ie7icon('');
-}
-
-
-.icon-desktop {
- @include ie7icon('');
-}
-
-
-.icon-laptop {
- @include ie7icon('');
-}
-
-
-.icon-tablet {
- @include ie7icon('');
-}
-
-
-.icon-mobile-phone {
- @include ie7icon('');
-}
-
-
-.icon-circle-blank {
- @include ie7icon('');
-}
-
-
-.icon-quote-left {
- @include ie7icon('');
-}
-
-
-.icon-quote-right {
- @include ie7icon('');
-}
-
-
-.icon-spinner {
- @include ie7icon('');
-}
-
-
-.icon-circle {
- @include ie7icon('');
-}
-
-
-.icon-reply {
- @include ie7icon('');
-}
-
-.icon-mail-reply {
- @include ie7icon('');
-}
-
-
-.icon-github-alt {
- @include ie7icon('');
-}
-
-
-.icon-folder-close-alt {
- @include ie7icon('');
-}
-
-
-.icon-folder-open-alt {
- @include ie7icon('');
-}
-
-
-.icon-expand-alt {
- @include ie7icon('');
-}
-
-
-.icon-collapse-alt {
- @include ie7icon('');
-}
-
-
-.icon-smile {
- @include ie7icon('');
-}
-
-
-.icon-frown {
- @include ie7icon('');
-}
-
-
-.icon-meh {
- @include ie7icon('');
-}
-
-
-.icon-gamepad {
- @include ie7icon('');
-}
-
-
-.icon-keyboard {
- @include ie7icon('');
-}
-
-
-.icon-flag-alt {
- @include ie7icon('');
-}
-
-
-.icon-flag-checkered {
- @include ie7icon('');
-}
-
-
-.icon-terminal {
- @include ie7icon('');
-}
-
-
-.icon-code {
- @include ie7icon('');
-}
-
-
-.icon-reply-all {
- @include ie7icon('');
-}
-
-
-.icon-mail-reply-all {
- @include ie7icon('');
-}
-
-
-.icon-star-half-empty {
- @include ie7icon('');
-}
-
-.icon-star-half-full {
- @include ie7icon('');
-}
-
-
-.icon-location-arrow {
- @include ie7icon('');
-}
-
-
-.icon-crop {
- @include ie7icon('');
-}
-
-
-.icon-code-fork {
- @include ie7icon('');
-}
-
-
-.icon-unlink {
- @include ie7icon('');
-}
-
-
-.icon-question {
- @include ie7icon('');
-}
-
-
-.icon-info {
- @include ie7icon('');
-}
-
-
-.icon-exclamation {
- @include ie7icon('');
-}
-
-
-.icon-superscript {
- @include ie7icon('');
-}
-
-
-.icon-subscript {
- @include ie7icon('');
-}
-
-
-.icon-eraser {
- @include ie7icon('');
-}
-
-
-.icon-puzzle-piece {
- @include ie7icon('');
-}
-
-
-.icon-microphone {
- @include ie7icon('');
-}
-
-
-.icon-microphone-off {
- @include ie7icon('');
-}
-
-
-.icon-shield {
- @include ie7icon('');
-}
-
-
-.icon-calendar-empty {
- @include ie7icon('');
-}
-
-
-.icon-fire-extinguisher {
- @include ie7icon('');
-}
-
-
-.icon-rocket {
- @include ie7icon('');
-}
-
-
-.icon-maxcdn {
- @include ie7icon('');
-}
-
-
-.icon-chevron-sign-left {
- @include ie7icon('');
-}
-
-
-.icon-chevron-sign-right {
- @include ie7icon('');
-}
-
-
-.icon-chevron-sign-up {
- @include ie7icon('');
-}
-
-
-.icon-chevron-sign-down {
- @include ie7icon('');
-}
-
-
-.icon-html5 {
- @include ie7icon('');
-}
-
-
-.icon-css3 {
- @include ie7icon('');
-}
-
-
-.icon-anchor {
- @include ie7icon('');
-}
-
-
-.icon-unlock-alt {
- @include ie7icon('');
-}
-
-
-.icon-bullseye {
- @include ie7icon('');
-}
-
-
-.icon-ellipsis-horizontal {
- @include ie7icon('');
-}
-
-
-.icon-ellipsis-vertical {
- @include ie7icon('');
-}
-
-
-.icon-rss-sign {
- @include ie7icon('');
-}
-
-
-.icon-play-sign {
- @include ie7icon('');
-}
-
-
-.icon-ticket {
- @include ie7icon('');
-}
-
-
-.icon-minus-sign-alt {
- @include ie7icon('');
-}
-
-
-.icon-check-minus {
- @include ie7icon('');
-}
-
-
-.icon-level-up {
- @include ie7icon('');
-}
-
-
-.icon-level-down {
- @include ie7icon('');
-}
-
-
-.icon-check-sign {
- @include ie7icon('');
-}
-
-
-.icon-edit-sign {
- @include ie7icon('');
-}
-
-
-.icon-external-link-sign {
- @include ie7icon('');
-}
-
-
-.icon-share-sign {
- @include ie7icon('');
-}
-
-
-.icon-compass {
- @include ie7icon('');
-}
-
-
-.icon-collapse {
- @include ie7icon('');
-}
-
-
-.icon-collapse-top {
- @include ie7icon('');
-}
-
-
-.icon-expand {
- @include ie7icon('');
-}
-
-
-.icon-eur {
- @include ie7icon('');
-}
-
-.icon-euro {
- @include ie7icon('');
-}
-
-
-.icon-gbp {
- @include ie7icon('');
-}
-
-
-.icon-usd {
- @include ie7icon('');
-}
-
-.icon-dollar {
- @include ie7icon('');
-}
-
-
-.icon-inr {
- @include ie7icon('');
-}
-
-.icon-rupee {
- @include ie7icon('');
-}
-
-
-.icon-jpy {
- @include ie7icon('');
-}
-
-.icon-yen {
- @include ie7icon('');
-}
-
-
-.icon-cny {
- @include ie7icon('');
-}
-
-.icon-renminbi {
- @include ie7icon('');
-}
-
-
-.icon-krw {
- @include ie7icon('');
-}
-
-.icon-won {
- @include ie7icon('');
-}
-
-
-.icon-btc {
- @include ie7icon('');
-}
-
-.icon-bitcoin {
- @include ie7icon('');
-}
-
-
-.icon-file {
- @include ie7icon('');
-}
-
-
-.icon-file-text {
- @include ie7icon('');
-}
-
-
-.icon-sort-by-alphabet {
- @include ie7icon('');
-}
-
-
-.icon-sort-by-alphabet-alt {
- @include ie7icon('');
-}
-
-
-.icon-sort-by-attributes {
- @include ie7icon('');
-}
-
-
-.icon-sort-by-attributes-alt {
- @include ie7icon('');
-}
-
-
-.icon-sort-by-order {
- @include ie7icon('');
-}
-
-
-.icon-sort-by-order-alt {
- @include ie7icon('');
-}
-
-
-.icon-thumbs-up {
- @include ie7icon('');
-}
-
-
-.icon-thumbs-down {
- @include ie7icon('');
-}
-
-
-.icon-youtube-sign {
- @include ie7icon('');
-}
-
-
-.icon-youtube {
- @include ie7icon('');
-}
-
-
-.icon-xing {
- @include ie7icon('');
-}
-
-
-.icon-xing-sign {
- @include ie7icon('');
-}
-
-
-.icon-youtube-play {
- @include ie7icon('');
-}
-
-
-.icon-dropbox {
- @include ie7icon('');
-}
-
-
-.icon-stackexchange {
- @include ie7icon('');
-}
-
-
-.icon-instagram {
- @include ie7icon('');
-}
-
-
-.icon-flickr {
- @include ie7icon('');
-}
-
-
-.icon-adn {
- @include ie7icon('');
-}
-
-
-.icon-bitbucket {
- @include ie7icon('');
-}
-
-
-.icon-bitbucket-sign {
- @include ie7icon('');
-}
-
-
-.icon-tumblr {
- @include ie7icon('');
-}
-
-
-.icon-tumblr-sign {
- @include ie7icon('');
-}
-
-
-.icon-long-arrow-down {
- @include ie7icon('');
-}
-
-
-.icon-long-arrow-up {
- @include ie7icon('');
-}
-
-
-.icon-long-arrow-left {
- @include ie7icon('');
-}
-
-
-.icon-long-arrow-right {
- @include ie7icon('');
-}
-
-
-.icon-apple {
- @include ie7icon('');
-}
-
-
-.icon-windows {
- @include ie7icon('');
-}
-
-
-.icon-android {
- @include ie7icon('');
-}
-
-
-.icon-linux {
- @include ie7icon('');
-}
-
-
-.icon-dribbble {
- @include ie7icon('');
-}
-
-
-.icon-skype {
- @include ie7icon('');
-}
-
-
-.icon-foursquare {
- @include ie7icon('');
-}
-
-
-.icon-trello {
- @include ie7icon('');
-}
-
-
-.icon-female {
- @include ie7icon('');
-}
-
-
-.icon-male {
- @include ie7icon('');
-}
-
-
-.icon-gittip {
- @include ie7icon('');
-}
-
-
-.icon-sun {
- @include ie7icon('');
-}
-
-
-.icon-moon {
- @include ie7icon('');
-}
-
-
-.icon-archive {
- @include ie7icon('');
-}
-
-
-.icon-bug {
- @include ie7icon('');
-}
-
-
-.icon-vk {
- @include ie7icon('');
-}
-
-
-.icon-weibo {
- @include ie7icon('');
-}
-
-
-.icon-renren {
- @include ie7icon('');
-}
-
-
diff --git a/library/font_awesome/scss/font-awesome.scss b/library/font_awesome/scss/font-awesome.scss
index e5903d856..a19d664c3 100644
--- a/library/font_awesome/scss/font-awesome.scss
+++ b/library/font_awesome/scss/font-awesome.scss
@@ -1,33 +1,18 @@
/*!
- * Font Awesome 3.2.1
- * the iconic font designed for Bootstrap
- * ------------------------------------------------------------------------------
- * The full suite of pictographic icons, examples, and documentation can be
- * found at http://fontawesome.io. Stay up to date on Twitter at
- * http://twitter.com/fontawesome.
- *
- * License
- * ------------------------------------------------------------------------------
- * - The Font Awesome font is licensed under SIL OFL 1.1 -
- * http://scripts.sil.org/OFL
- * - Font Awesome CSS, LESS, and SASS files are licensed under MIT License -
- * http://opensource.org/licenses/mit-license.html
- * - Font Awesome documentation licensed under CC BY 3.0 -
- * http://creativecommons.org/licenses/by/3.0/
- * - Attribution is no longer required in Font Awesome 3.0, but much appreciated:
- * "Font Awesome by Dave Gandy - http://fontawesome.io"
- *
- * Author - Dave Gandy
- * ------------------------------------------------------------------------------
- * Email: dave@fontawesome.io
- * Twitter: http://twitter.com/davegandy
- * Work: Lead Product Designer @ Kyruus - http://kyruus.com
+ * Font Awesome 4.6.1 by @davegandy - http://fontawesome.io - @fontawesome
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
@import "variables";
@import "mixins";
@import "path";
@import "core";
-@import "bootstrap";
-@import "extras";
+@import "larger";
+@import "fixed-width";
+@import "list";
+@import "bordered-pulled";
+@import "animated";
+@import "rotated-flipped";
+@import "stacked";
@import "icons";
+@import "screen-reader";
diff --git a/library/font_awesome/src/Makefile b/library/font_awesome/src/Makefile
index 7359665af..80e243f14 100644
--- a/library/font_awesome/src/Makefile
+++ b/library/font_awesome/src/Makefile
@@ -1,34 +1,38 @@
+---
+---
PATH := ../node_modules/.bin:$(PATH)
FA_ROOT_DIRECTORY = assets/font-awesome
FA_LESS_DIRECTORY = assets/font-awesome/less
+FA_SCSS_DIRECTORY = assets/font-awesome/scss
FA_CSS_DIRECTORY = assets/font-awesome/css
FA_LESS_MODERN = ${FA_LESS_DIRECTORY}/font-awesome.less
-FA_LESS_IE7 = ${FA_LESS_DIRECTORY}/font-awesome-ie7.less
+FA_SCSS_MODERN = ${FA_SCSS_DIRECTORY}/font-awesome.scss
FA_CSS_MODERN = ${FA_CSS_DIRECTORY}/font-awesome.css
FA_CSS_MODERN_MIN = ${FA_CSS_DIRECTORY}/font-awesome.min.css
-FA_CSS_IE7 = ${FA_CSS_DIRECTORY}/font-awesome-ie7.css
-FA_CSS_IE7_MIN = ${FA_CSS_DIRECTORY}/font-awesome-ie7.min.css
SITE_LESS_DIRECTORY = assets/less
SITE_CSS_DIRECTORY = assets/css
SITE_LESS = ${SITE_LESS_DIRECTORY}/site.less
-SITE_CSS_MIN = ${SITE_CSS_DIRECTORY}/site.css
+SITE_CSS = ${SITE_CSS_DIRECTORY}/site.css
build:
@echo "Compiling Less files"
@mkdir -p ${FA_CSS_DIRECTORY}
- lessc ${FA_LESS_MODERN} > ${FA_CSS_MODERN}
- lessc --compress ${FA_LESS_MODERN} > ${FA_CSS_MODERN_MIN}
- lessc ${FA_LESS_IE7} > ${FA_CSS_IE7}
- lessc --compress ${FA_LESS_IE7} > ${FA_CSS_IE7_MIN}
- lessc --compress ${SITE_LESS} > ${SITE_CSS_MIN}
+
+ bundle exec lessc ${FA_LESS_MODERN} > ${FA_CSS_MODERN}
+ bundle exec lessc --compress ${FA_LESS_MODERN} > ${FA_CSS_MODERN_MIN}
+# sass ${FA_SCSS_MODERN} ${FA_CSS_MODERN}
+
+ bundle exec lessc --compress ${SITE_LESS} > ${SITE_CSS}
cp -r ${FA_ROOT_DIRECTORY}/* ../
- cd assets && zip -r9 font-awesome.zip font-awesome
+ mv README.md-nobuild ../README.md
+ cd assets && mv font-awesome font-awesome-{{ site.fontawesome.version }} && zip -r9 font-awesome-{{ site.fontawesome.version }}.zip font-awesome-{{ site.fontawesome.version }} && mv font-awesome-{{ site.fontawesome.version }} font-awesome
+ find .. -type f ! -perm 644 -exec chmod 644 {} \;
default: build
diff --git a/library/font_awesome/src/README.md-nobuild b/library/font_awesome/src/README.md-nobuild
new file mode 100644
index 000000000..3071c00f9
--- /dev/null
+++ b/library/font_awesome/src/README.md-nobuild
@@ -0,0 +1,104 @@
+---
+---
+# [Font Awesome v{{ site.fontawesome.version }}]({{ site.fontawesome.url }})
+### The iconic font and CSS framework
+
+Font Awesome is a full suite of {{ icons | size }} pictographic icons for easy scalable vector graphics on websites,
+created and maintained by [{{ site.fontawesome.author.name }}](https://twitter.com/{{ site.fontawesome.author.twitter }}).
+Stay up to date with the latest release and announcements on Twitter:
+[@{{ site.fontawesome.twitter }}](http://twitter.com/{{ site.fontawesome.twitter }}).
+
+Get started at {{ site.fontawesome.url }}!
+
+## License
+- The Font Awesome font is licensed under the SIL OFL 1.1:
+ - http://scripts.sil.org/OFL
+- Font Awesome CSS, LESS, and Sass files are licensed under the MIT License:
+ - https://opensource.org/licenses/mit-license.html
+- The Font Awesome documentation is licensed under the CC BY 3.0 License:
+ - http://creativecommons.org/licenses/by/3.0/
+- Attribution is no longer required as of Font Awesome 3.0, but much appreciated:
+ - `Font Awesome by Dave Gandy - http://fontawesome.io`
+- Full details: http://fontawesome.io/license/
+
+## Changelog
+- [v4.6.1 GitHub pull request](https://github.com/FortAwesome/Font-Awesome/pull/8962)
+- [v4.6.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.6.0+is%3Aclosed)
+- [v4.5.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.5.0+is%3Aclosed)
+- [v4.4.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.4.0+is%3Aclosed)
+- [v4.3.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?q=milestone%3A4.3.0+is%3Aclosed)
+- [v4.2.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=12&page=1&state=closed)
+- [v4.1.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=6&page=1&state=closed)
+- [v4.0.3 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=9&page=1&state=closed)
+- [v4.0.2 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=8&page=1&state=closed)
+- [v4.0.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=7&page=1&state=closed)
+- [v4.0.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=2&page=1&state=closed)
+- [v3.2.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=5&page=1&state=closed)
+- [v3.2.0 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=3&page=1&state=closed)
+- [v3.1.1 GitHub milestones](https://github.com/FortAwesome/Font-Awesome/issues?milestone=4&page=1&state=closed)
+- v3.1.0 - Added 54 icons, icon stacking styles, flipping and rotating icons, removed Sass support
+- v3.0.2 - much improved rendering and alignment in IE7
+- v3.0.1 - much improved rendering in webkit, various bug fixes
+- v3.0.0 - all icons redesigned from scratch, optimized for Bootstrap's 14px default
+
+## Contributing
+
+Please read through our [contributing guidelines](https://github.com/FortAwesome/Font-Awesome/blob/master/CONTRIBUTING.md).
+Included are directions for opening issues, coding standards, and notes on development.
+
+## Versioning
+
+Font Awesome will be maintained under the Semantic Versioning guidelines as much as possible. Releases will be numbered
+with the following format:
+
+`..`
+
+And constructed with the following guidelines:
+
+* Breaking backward compatibility bumps the major (and resets the minor and patch)
+* New additions, including new icons, without breaking backward compatibility bumps the minor (and resets the patch)
+* Bug fixes and misc changes bumps the patch
+
+For more information on SemVer, please visit http://semver.org.
+
+## Author
+- Email: {{ site.fontawesome.author.email }}
+- Twitter: http://twitter.com/{{ site.fontawesome.author.twitter }}
+- GitHub: https://github.com/{{ site.fontawesome.author.github }}
+
+## Component
+To include as a [component](https://github.com/componentjs/component), just run
+
+ $ component install FortAwesome/Font-Awesome
+
+Or add
+
+ "FortAwesome/Font-Awesome": "*"
+
+to the `dependencies` in your `component.json`.
+
+## Hacking on Font Awesome
+
+**Before you can build the project**, you must first have the following installed:
+
+- [Ruby](https://www.ruby-lang.org/en/)
+- Ruby Development Headers
+ - **Ubuntu:** `sudo apt-get install ruby-dev` *(Only if you're __NOT__ using `rbenv` or `rvm`)*
+ - **Windows:** [DevKit](http://rubyinstaller.org/)
+- [Bundler](http://bundler.io/) (Run `gem install bundler` to install).
+- [Node Package Manager (AKA NPM)](https://docs.npmjs.com/getting-started/installing-node)
+- [Less](http://lesscss.org/) (Run `npm install -g less` to install).
+- [Less Plugin: Clean CSS](https://github.com/less/less-plugin-clean-css) (Run `npm install -g less-plugin-clean-css` to install).
+
+From the root of the repository, install the tools used to develop.
+
+ $ bundle install
+ $ npm install
+
+Build the project and documentation:
+
+ $ bundle exec jekyll build
+
+Or serve it on a local server on http://localhost:7998/Font-Awesome/:
+
+ $ bundle exec jekyll -w serve
diff --git a/library/font_awesome/src/_includes/accessibility/background.html b/library/font_awesome/src/_includes/accessibility/background.html
new file mode 100644
index 000000000..5ca864826
--- /dev/null
+++ b/library/font_awesome/src/_includes/accessibility/background.html
@@ -0,0 +1,15 @@
+
+
+
+ Modern versions of assistive technology, like screen readers, will read CSS generated content (how Font Awesome icons are rendered), as well as specific Unicode characters. When trying our default markup for rendering icons, assisistive technology may have the following problems.
+
+
+
+
+ The assistive technology may not find any content to read out to a user
+
+
+ The assistive technology may read the unicode equivalent, which could not match up to what the icon means in context, or worse is just plain confusing
+
+
+
diff --git a/library/font_awesome/src/_includes/accessibility/other.html b/library/font_awesome/src/_includes/accessibility/other.html
new file mode 100644
index 000000000..8a1078383
--- /dev/null
+++ b/library/font_awesome/src/_includes/accessibility/other.html
@@ -0,0 +1,17 @@
+
+
+
+ While the scenarios and techniques above help avoid some serious issues and confusion, they are not exhaustive. There are many complex contexts and use cases when it comes to accessibility, such as users with low vision who need a high color contrast ratio to see UI. There are some great tools and resources to learn from and work on these issues out there. Here are a few reads we recommend.
+
+
+
+
+
+ We'll continue to work on these under the larger topic of accessibility, but in the meantime, let us know if any bugs or issues .
+
+
diff --git a/library/font_awesome/src/_includes/accessibility/using-with-accessibility.html b/library/font_awesome/src/_includes/accessibility/using-with-accessibility.html
new file mode 100644
index 000000000..86e6d609c
--- /dev/null
+++ b/library/font_awesome/src/_includes/accessibility/using-with-accessibility.html
@@ -0,0 +1,127 @@
+
+
+
+ When using icons in your UI, there are ways to help assistive technology either ignore or better understand Font Awesome.
+
+
+
Icons used for pure decoration or visual styling
+
+ If you're using an icon to add some extra decoration or branding, it does not need to be announced to users as they are navigating your site or app aurally. Additionally, if you're using an icon to visually re-emphasize or add styling to content already present in your HTML, it does not need to be repeated to an assistive technology-using user. You can make sure this is not read by adding the aria-hidden="true"
to your Font Awesome markup.
+
+
+
+{% highlight html %}
+
+{% endhighlight %}
+an icon being used as pure decoration
+
+
+
+{% highlight html %}
+
+
+ Pied Piper, A Middle-Out Compression Solution Making Data Storage Problems Smaller
+
+{% endhighlight %}
+an icon being used as a logo
+
+
+
+
+
Icons with semantic or interactive purpose
+
+ If you're using an icon to convey meaning (rather than only as a decorative element), ensure that this meaning is also conveyed to assistive technologies. This goes for content you're abbreviating via icons as well as interactive controls (buttons, form elements, toggles, etc.). There are a few techniques to accomplish this:
+
+
+
If an icon is not an interactive element
+
+ The simplest way to provide a text alternative is to use the aria-hidden="true"
attribute on the icon and to include the text with an additional element, such as a <span>
, with appropriate CSS to visually hide the element while keeping it accessible to assistive technologies. In addition, you can add a title
attribute on the icon to provide a tooltip for sighted mouse users.
+
+
+
+{% highlight html %}
+
+
+
+ Time to destination by car:
+
+ 4 minutes
+
+
+
+ Time to destination by bike:
+
+ 12 minutes
+
+{% endhighlight %}
+
an icon being used to communicate travel methods
+
+
+
+{% highlight html %}
+
+60 minutes remain in your exam
+
+
+30 minutes remain in your exam
+
+
+0 minutes remain in your exam
+{% endhighlight %}
+ an icon being used to denote time remaining
+
+
+
If an icon represents an interactive element
+
+ In the case of focusable interactive elements, there are various options to include an alternative text or label to the element, without the need for any visually hidden <span>
or similar. For instance, simply adding the title
attribute to the interactive element itself will be sufficient to provide an accessible alternative name for the element, as well as providing the mouse tooltip.
+
+
+
+{% highlight html %}
+
+
+
+{% endhighlight %}
+
an icon being used to communicate shopping cart state
+
+
+
+{% highlight html %}
+
+
+
+{% endhighlight %}
+
an icon being used as a link to a navigation menu
+
+{% highlight html %}
+
+
+
+{% endhighlight %}
+
an icon being used as a delete button's symbol
+
+
+
+
+
+
+
diff --git a/library/font_awesome/src/_includes/ads/carbon-dark-vertical.html b/library/font_awesome/src/_includes/ads/carbon-dark-vertical.html
deleted file mode 100644
index 15804e73a..000000000
--- a/library/font_awesome/src/_includes/ads/carbon-dark-vertical.html
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/library/font_awesome/src/_includes/ads/carbon-light-horizontal.html b/library/font_awesome/src/_includes/ads/carbon-light-horizontal.html
deleted file mode 100644
index 8dcfb61b6..000000000
--- a/library/font_awesome/src/_includes/ads/carbon-light-horizontal.html
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/library/font_awesome/src/_includes/ads/carbon-light-vertical.html b/library/font_awesome/src/_includes/ads/carbon-light-vertical.html
deleted file mode 100644
index e6fce26a9..000000000
--- a/library/font_awesome/src/_includes/ads/carbon-light-vertical.html
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/library/font_awesome/src/_includes/ads/fusion.html b/library/font_awesome/src/_includes/ads/fusion.html
new file mode 100644
index 000000000..c49a9f42c
--- /dev/null
+++ b/library/font_awesome/src/_includes/ads/fusion.html
@@ -0,0 +1 @@
+
diff --git a/library/font_awesome/src/_includes/brand-adblock-warning.html b/library/font_awesome/src/_includes/brand-adblock-warning.html
new file mode 100644
index 000000000..9f4ddd8b6
--- /dev/null
+++ b/library/font_awesome/src/_includes/brand-adblock-warning.html
@@ -0,0 +1,5 @@
+ Warning!
+Apparently, Adblock Plus can remove Font Awesome brand icons with their "Remove Social
+Media Buttons" setting. We will not use hacks to force them to display. Please
+report an issue with Adblock Plus if you believe this to be
+an error. To work around this, you'll need to modify the social icon class names.
diff --git a/library/font_awesome/src/_includes/brand-license.html b/library/font_awesome/src/_includes/brand-license.html
index 07dea295a..79696801e 100644
--- a/library/font_awesome/src/_includes/brand-license.html
+++ b/library/font_awesome/src/_includes/brand-license.html
@@ -1,4 +1,5 @@
-
+
All brand icons are trademarks of their respective owners.
The use of these trademarks does not indicate endorsement of the trademark holder by Font Awesome, nor vice versa.
+ Brand icons should only be used to represent the company or product to which they refer.
diff --git a/library/font_awesome/src/_includes/cheatsheet.html b/library/font_awesome/src/_includes/cheatsheet.html
deleted file mode 100644
index 81e508c45..000000000
--- a/library/font_awesome/src/_includes/cheatsheet.html
+++ /dev/null
@@ -1,19 +0,0 @@
-{% capture stripe_ad_content %}
-
- Print this page to PDF for the complete set of vectors. Or to use on the desktop, install FontAwesome.otf and copy
- and paste the icons (not the unicode) directly into your designs.
-
-{% endcapture %}
-{% include stripe-ad.html %}
-
-
-
-
-{% for icon in icons %}
-
- {{ icon.unicode }}
- icon-{{ icon.id }}
- (&#x{{ icon.unicode }};)
-
-{% endfor %}
-
diff --git a/library/font_awesome/src/_includes/code/core.less b/library/font_awesome/src/_includes/code/core.less
new file mode 100644
index 000000000..cbd0d1ae7
--- /dev/null
+++ b/library/font_awesome/src/_includes/code/core.less
@@ -0,0 +1,6 @@
+ display: inline-block;
+ font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // 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;
diff --git a/library/font_awesome/src/_includes/code/core.scss b/library/font_awesome/src/_includes/code/core.scss
new file mode 100644
index 000000000..c7ea6e0e3
--- /dev/null
+++ b/library/font_awesome/src/_includes/code/core.scss
@@ -0,0 +1,6 @@
+ display: inline-block;
+ font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // 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;
diff --git a/library/font_awesome/src/_includes/code/license.css b/library/font_awesome/src/_includes/code/license.css
new file mode 100644
index 000000000..7e503a805
--- /dev/null
+++ b/library/font_awesome/src/_includes/code/license.css
@@ -0,0 +1,4 @@
+/*!
+ * Font Awesome {{ site.fontawesome.version }} by @{{ site.fontawesome.author.twitter }} - {{ site.fontawesome.url }} - @{{ site.fontawesome.twitter }}
+ * License - {{ site.fontawesome.url }}/license (Font: {{ site.fontawesome.license.font.version }}, CSS: {{ site.fontawesome.license.code.version }})
+ */
\ No newline at end of file
diff --git a/library/font_awesome/src/_includes/community.html b/library/font_awesome/src/_includes/community.html
deleted file mode 100644
index f6ba9f060..000000000
--- a/library/font_awesome/src/_includes/community.html
+++ /dev/null
@@ -1,20 +0,0 @@
-{% capture stripe_ad_content %}
-
- Font Awesome has a vibrant community of folks helping each other out. You can
- get support ,
- report bugs ,
- request new icons ,
- submit pull requests , and
- check upcoming milestones .
-
-{% endcapture %}
-{% include stripe-ad.html %}
-
-{% include community/getting-support.html %}
-{% include community/reporting-bugs.html %}
-{% include community/requesting-new-icons.html %}
-{% include community/submitting-pull-requests.html %}
-{% include community/project-milestones.html %}
-
-{% include thanks-to.html %}
-{% include tell-me-thanks.html %}
diff --git a/library/font_awesome/src/_includes/community/project-milestones.html b/library/font_awesome/src/_includes/community/project-milestones.html
index ba2a4e493..598569981 100644
--- a/library/font_awesome/src/_includes/community/project-milestones.html
+++ b/library/font_awesome/src/_includes/community/project-milestones.html
@@ -2,6 +2,6 @@
Want to keep up with what's planned for Font Awesome? Check out our
- milestones on the GitHub project.
+ milestones on the GitHub project.
diff --git a/library/font_awesome/src/_includes/community/reporting-bugs.html b/library/font_awesome/src/_includes/community/reporting-bugs.html
index 3dde63fa5..b8fb61e49 100644
--- a/library/font_awesome/src/_includes/community/reporting-bugs.html
+++ b/library/font_awesome/src/_includes/community/reporting-bugs.html
@@ -5,7 +5,7 @@
Please be nice. Font Awesome is a happy place.
- Please search to see if your icon request already exists.
+ Please search to see if your bug was already reported.
Before opening any issue, please read the generic issue
guidelines , by Nicolas Gallagher .
diff --git a/library/font_awesome/src/_includes/community/requesting-new-icons.html b/library/font_awesome/src/_includes/community/requesting-new-icons.html
index d710e2bb1..e73f41c35 100644
--- a/library/font_awesome/src/_includes/community/requesting-new-icons.html
+++ b/library/font_awesome/src/_includes/community/requesting-new-icons.html
@@ -7,21 +7,23 @@
Please be nice. Font Awesome is a happy place.
- Please search to see if your icon request already exists.
+ Please search to see if your icon request already exists. If a request is found, please +1 that one.
+
+ Please make requests for single icons, unless you are requesting a couple of strictly related icons (e.g., thumbs-up/thumbs-down).
+
Please and thank you if you include the following:
- Title your new issue
- Icon request: icon-name
.
+ Title your new issue
+ Icon request: icon-name
(e.g., Icon request: icon-car
).
Include a few use cases for your requested icon. How do you plan on using it?
Attach a single color image or two that represent the idea you're going for.
- Concrete objects make good icons, since abstract concepts are, well, abstract. It's harder to make an icon
- to represent happiness. It's easier to make a smiley face.
+ Request concrete objects: it's harder to make an icon to represent happiness, it's easier to make a smiley face.
diff --git a/library/font_awesome/src/_includes/community/submitting-pull-requests.html b/library/font_awesome/src/_includes/community/submitting-pull-requests.html
index de79930e6..1a55aba7b 100644
--- a/library/font_awesome/src/_includes/community/submitting-pull-requests.html
+++ b/library/font_awesome/src/_includes/community/submitting-pull-requests.html
@@ -2,8 +2,9 @@
Found a way to solve a bug in Font Awesome? Want to contribute new features? Here are a few things to remember:
+ Please do not submit new icons.
Please submit all pull requests against *-wip branches.
- All pull requests submitted against master will be sumarily closed and this guide referenced.
+ All pull requests submitted against master will be summarily closed and this guide referenced.
After doing everything above, feel free to
submit a pull request .
diff --git a/library/font_awesome/src/_includes/examples.html b/library/font_awesome/src/_includes/examples.html
deleted file mode 100644
index 0598e28be..000000000
--- a/library/font_awesome/src/_includes/examples.html
+++ /dev/null
@@ -1,24 +0,0 @@
-{% capture stripe_ad_content %}
-
- After you get up and running , you can place Font Awesome icons just about
- anywhere with the <i>
tag.
- Many examples appreciatively re-used from the Bootstrap documentation .
-
-{% endcapture %}
-{% include stripe-ad.html %}
-
-{% include examples/new.html %}
-
-{% include examples/inline-icons.html %}
-{% include examples/larger-icons.html %}
-{% include examples/bordered-pulled.html %}
-{% include examples/buttons.html %}
-{% include examples/button-groups.html %}
-{% include examples/button-dropdowns.html %}
-{% include examples/bulleted-lists.html %}
-{% include examples/navigation.html %}
-{% include examples/form-inputs.html %}
-{% include examples/animated-spinner.html %}
-{% include examples/rotated-flipped.html %}
-{% include examples/stacked.html %}
-{% include examples/custom.html %}
diff --git a/library/font_awesome/src/_includes/examples/accessible.html b/library/font_awesome/src/_includes/examples/accessible.html
new file mode 100644
index 000000000..2f51aed9c
--- /dev/null
+++ b/library/font_awesome/src/_includes/examples/accessible.html
@@ -0,0 +1,109 @@
+
+
+
+
+
+
+ With our thoughts on icon accessibility in mind, If an icon only adds some extra decoration or branding, it does not need to be announced to users as they are navigating your site or app aurally. Alternatively, if an icon conveys meaning in your content or interface, ensure that this meaning is also conveyed to assistive technologies through alternative displays or text.
+
+
+{% highlight html %}
+
+
+ Settings
+
+
+
+
+ Delete
+
+
+
+
+ Skip to main navigation
+
+{% endhighlight %}
+
+{% highlight html %}
+
+
Refreshing...
+
+
+
Saving. Hang tight!
+{% endhighlight %}
+
+{% highlight html %}
+
+
+
+
+
+
+
+
+{% endhighlight %}
+
+{% highlight html %}
+
+
+ View 3 items in your shopping cart
+
+{% endhighlight %}
+
+{% highlight html %}
+
+
Battery level: 50%
+{% endhighlight %}
+
+
+
diff --git a/library/font_awesome/src/_includes/examples/animated-spinner.html b/library/font_awesome/src/_includes/examples/animated-spinner.html
deleted file mode 100644
index eee013a11..000000000
--- a/library/font_awesome/src/_includes/examples/animated-spinner.html
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
- Use the icon-spin
class to get any icon to rotate. Works well with icon-spinner
and
- icon-refresh
.
-
-
-
- Spinner icon when loading content...
-
-{% highlight html %}
-
Spinner icon when loading content...
-{% endhighlight %}
-
- CSS3 animations aren't supported in IE7 - IE9.
-
-
-
-
diff --git a/library/font_awesome/src/_includes/examples/animated.html b/library/font_awesome/src/_includes/examples/animated.html
new file mode 100644
index 000000000..960ebd182
--- /dev/null
+++ b/library/font_awesome/src/_includes/examples/animated.html
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+ Loading example (with fa-spinner icon)
+
+
+ Loading (with fa-circle-o-notch icon)
+
+
+ Loading example (with fa-refresh icon)
+
+
+ Loading example (with fa-cog icon)
+
+
+ Loading example (with fa-spinner icon)
+
+
+
+
+ Use the fa-spin
class to get any icon to rotate, and use fa-pulse
to have it rotate
+ with 8 steps. Works well with fa-spinner
, fa-refresh
, and fa-cog
.
+
+{% highlight html %}
+
+
Loading...
+
+
+
Loading...
+
+
+
Loading...
+
+
+
Loading...
+
+
+
Loading...
+{% endhighlight %}
+
+ Note:
+ Some browsers on some platforms have issues with animated icons resulting in a jittery wobbling effect. See
+ issue #671
+ for examples and possible workarounds.
+
+
+ Note: CSS3 animations aren't supported in IE8 - IE9.
+
+
+
+
diff --git a/library/font_awesome/src/_includes/examples/basic.html b/library/font_awesome/src/_includes/examples/basic.html
new file mode 100644
index 000000000..2b691a0b5
--- /dev/null
+++ b/library/font_awesome/src/_includes/examples/basic.html
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+ Example: basic icon
+ fa-camera-retro
+
+
+
+
+ You can place Font Awesome icons just about anywhere using the CSS Prefix fa
and the icon's
+ name. Font Awesome is designed to be used with inline elements (we like the <i>
tag for
+ brevity, but using a <span>
is more semantically correct).
+
+{% highlight html %}
+
fa-camera-retro
+{% endhighlight %}
+
+
+
+
+ Example: basic icon
+ If you change the font-size of the icon's container, the icon gets bigger. Same things goes for color,
+ drop shadow, and anything else that gets inherited using CSS.
+
+
+
+
+
+
diff --git a/library/font_awesome/src/_includes/examples/bootstrap.html b/library/font_awesome/src/_includes/examples/bootstrap.html
new file mode 100644
index 000000000..0d6c03b8f
--- /dev/null
+++ b/library/font_awesome/src/_includes/examples/bootstrap.html
@@ -0,0 +1,111 @@
+
diff --git a/library/font_awesome/src/_includes/examples/bordered-pulled.html b/library/font_awesome/src/_includes/examples/bordered-pulled.html
index b5aa2bf17..33f9922ed 100644
--- a/library/font_awesome/src/_includes/examples/bordered-pulled.html
+++ b/library/font_awesome/src/_includes/examples/bordered-pulled.html
@@ -1,32 +1,29 @@
-
+
-
+
- Use icon-border
and pull-right
or pull-left
for easy pull quotes or
- article graphics.
+
+ …tomorrow we will run faster, stretch out our arms farther… And then one fine morning—
+ So we beat on, boats against the current, borne back ceaselessly into the past.
-
-
-
- Use a few of the new styles together, and you've got easy pull quotes or a great introductory article image.
- Or spinning icons for loading and refreshing content. Or fun big icons in multi-line buttons. You can combine all
- of them in any combination to get lots of new possibilities.
-
-{% highlight html %}
-
-Use a few of the new styles together ... lots of new possibilities.
-{% endhighlight %}
-
-
- Use a few of the new styles together, and you've got easy pull quotes or a great introductory article image.
- Or spinning icons for loading and refreshing content. Or fun big icons in multi-line buttons. You can combine all
- of them in any combination to get lots of new possibilities.
-
+
+
+ Use fa-border
and fa-pull-right
or fa-pull-left
for easy pull quotes or
+ article icons.
+
{% highlight html %}
-
-Use a few of the new styles together ... lots of new possibilities.
+
+...tomorrow we will run faster, stretch out our arms farther...
+And then one fine morning— So we beat on, boats against the
+current, borne back ceaselessly into the past.
{% endhighlight %}
diff --git a/library/font_awesome/src/_includes/examples/bulleted-lists.html b/library/font_awesome/src/_includes/examples/bulleted-lists.html
deleted file mode 100644
index 73db34e47..000000000
--- a/library/font_awesome/src/_includes/examples/bulleted-lists.html
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
-
-
- Bulleted lists (like this one)
- Buttons
- Button groups
- Navigation
- Prepended form inputs
- …and many more with custom CSS
-
-
-
-
Easily replace individual bullets.
-{% highlight html %}
-
- Bulleted lists (like this one)
- Buttons
- Button groups
- Navigation
- Prepended form inputs
- …and many more with custom CSS
-
-{% endhighlight %}
-
Make sure to NOT include any whitespace after the icon declaration.
-
-
-
diff --git a/library/font_awesome/src/_includes/examples/button-dropdowns.html b/library/font_awesome/src/_includes/examples/button-dropdowns.html
deleted file mode 100644
index 201eb1cd4..000000000
--- a/library/font_awesome/src/_includes/examples/button-dropdowns.html
+++ /dev/null
@@ -1,36 +0,0 @@
-
diff --git a/library/font_awesome/src/_includes/examples/button-groups.html b/library/font_awesome/src/_includes/examples/button-groups.html
deleted file mode 100644
index ce4892309..000000000
--- a/library/font_awesome/src/_includes/examples/button-groups.html
+++ /dev/null
@@ -1,25 +0,0 @@
-
diff --git a/library/font_awesome/src/_includes/examples/buttons.html b/library/font_awesome/src/_includes/examples/buttons.html
deleted file mode 100644
index b8d147c07..000000000
--- a/library/font_awesome/src/_includes/examples/buttons.html
+++ /dev/null
@@ -1,57 +0,0 @@
-
diff --git a/library/font_awesome/src/_includes/examples/custom.html b/library/font_awesome/src/_includes/examples/custom.html
index dfad1900c..2de7ad7ab 100644
--- a/library/font_awesome/src/_includes/examples/custom.html
+++ b/library/font_awesome/src/_includes/examples/custom.html
@@ -1,10 +1,10 @@
-
+
Anything you can do with CSS font styles, you can do with Font Awesome.
-
+
Star Ratings (inspired by CSS Tricks )
diff --git a/library/font_awesome/src/_includes/examples/fixed-width.html b/library/font_awesome/src/_includes/examples/fixed-width.html
new file mode 100644
index 000000000..845a79609
--- /dev/null
+++ b/library/font_awesome/src/_includes/examples/fixed-width.html
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+ Use fa-fw
to set icons at a fixed width. Great to use when different icon widths throw off alignment.
+ Especially useful in things like nav lists & list groups.
+
+{% highlight html %}
+
+{% endhighlight %}
+
+
+
diff --git a/library/font_awesome/src/_includes/examples/form-inputs.html b/library/font_awesome/src/_includes/examples/form-inputs.html
deleted file mode 100644
index dcb39a8f2..000000000
--- a/library/font_awesome/src/_includes/examples/form-inputs.html
+++ /dev/null
@@ -1,31 +0,0 @@
-
diff --git a/library/font_awesome/src/_includes/examples/inline-icons.html b/library/font_awesome/src/_includes/examples/inline-icons.html
deleted file mode 100644
index 3965e7c2a..000000000
--- a/library/font_awesome/src/_includes/examples/inline-icons.html
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
Place Font Awesome icons just about anywhere with the <i>
tag.
-
-
-
-
- icon-camera-retro
-
-
-{% highlight html %}
-
icon-camera-retro
-{% endhighlight %}
-
Icon classes are echoed via CSS :before.
-
-
-
diff --git a/library/font_awesome/src/_includes/examples/larger-icons.html b/library/font_awesome/src/_includes/examples/larger-icons.html
deleted file mode 100644
index 95f1ee13b..000000000
--- a/library/font_awesome/src/_includes/examples/larger-icons.html
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
-
- To increase the size of icons relative to its container, use icon-large
, icon-2x
,
- icon-3x
, or icon-4x
.
-
-
-
-
- Increase the icon size by using the icon-large
(33% increase), icon-2x
,
- icon-3x
, or icon-4x
classes.
-
-
-
-
icon-camera-retro
-
icon-camera-retro
-
icon-camera-retro
-
icon-camera-retro
-
-
-{% highlight html %}
-
icon-camera-retro
-
icon-camera-retro
-
icon-camera-retro
-
icon-camera-retro
-{% endhighlight %}
-
- If your icons are getting chopped off on top and bottom, make sure you have
- sufficient line-height.
-
-
-
-
diff --git a/library/font_awesome/src/_includes/examples/larger.html b/library/font_awesome/src/_includes/examples/larger.html
new file mode 100644
index 000000000..f10c7188a
--- /dev/null
+++ b/library/font_awesome/src/_includes/examples/larger.html
@@ -0,0 +1,40 @@
+
+
+
+
+
fa-lg
+
fa-2x
+
fa-3x
+
fa-4x
+
fa-5x
+
+
+
+ To increase icon sizes relative to their container, use the fa-lg
(33% increase), fa-2x
,
+ fa-3x
, fa-4x
, or fa-5x
classes.
+
+{% highlight html %}
+
fa-lg
+
fa-2x
+
fa-3x
+
fa-4x
+
fa-5x
+{% endhighlight %}
+
+
+
+
+ If your icons are getting chopped off on top and bottom, make sure you have
+ sufficient line-height.
+
+
+
+
+
+
diff --git a/library/font_awesome/src/_includes/examples/list.html b/library/font_awesome/src/_includes/examples/list.html
new file mode 100644
index 000000000..a708902be
--- /dev/null
+++ b/library/font_awesome/src/_includes/examples/list.html
@@ -0,0 +1,30 @@
+
+
+
+
+
+ List icons
+ can be used
+ as bullets
+ in lists
+
+
+
+
Use fa-ul
and fa-li
to easily replace default bullets in unordered lists.
+{% highlight html %}
+
+ List icons
+ can be used
+ as bullets
+ in lists
+
+{% endhighlight %}
+
+
+
diff --git a/library/font_awesome/src/_includes/examples/navigation.html b/library/font_awesome/src/_includes/examples/navigation.html
deleted file mode 100644
index 850e64442..000000000
--- a/library/font_awesome/src/_includes/examples/navigation.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
Use Font Awesome icons in navigation to provide helpful visual cues.
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
diff --git a/library/font_awesome/src/_includes/examples/new.html b/library/font_awesome/src/_includes/examples/new.html
deleted file mode 100644
index 8393f7d36..000000000
--- a/library/font_awesome/src/_includes/examples/new.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<{% if page.navbar_active == "examples" %}div{% else %}section{% endif %} id="new-styles">
-
-
-
-
-
- normal
- icon-rotate-90
- icon-rotate-180
- icon-rotate-270
- icon-flip-horizontal
- icon-flip-vertical
-
-
-
-
-
-
-
-
-
- icon-twitter on icon-check-empty
-
-
-
-
- icon-flag on icon-circle
-
-
-
-
- icon-terminal on icon-sign-blank
-
-
-
-
-
-
- New bulleted lists
- Fix some old bugs
- And deal with arbitrary
- Font sizes better
-
-
-
-
-{% if page.navbar_active == "examples" %}div{% else %}section{% endif %}>
diff --git a/library/font_awesome/src/_includes/examples/rotated-flipped.html b/library/font_awesome/src/_includes/examples/rotated-flipped.html
index cf061cd59..4c5b437f1 100644
--- a/library/font_awesome/src/_includes/examples/rotated-flipped.html
+++ b/library/font_awesome/src/_includes/examples/rotated-flipped.html
@@ -1,29 +1,34 @@
-
+
-
- A set of classes that can be used to arbitrarily rotate and flip icons.
+
+
+ normal
+ fa-rotate-90
+ fa-rotate-180
+ fa-rotate-270
+ fa-flip-horizontal
+ fa-flip-vertical
+
-
-
- normal
- icon-rotate-90
- icon-rotate-180
- icon-rotate-270
- icon-flip-horizontal
- icon-flip-vertical
-
+
+
+ To arbitrarily rotate and flip icons, use the fa-rotate-*
and fa-flip-*
classes.
+
{% highlight html %}
-
normal
-
icon-rotate-90
-
icon-rotate-180
-
icon-rotate-270
-
icon-flip-horizontal
-
icon-flip-vertical
+
normal
+
fa-rotate-90
+
fa-rotate-180
+
fa-rotate-270
+
fa-flip-horizontal
+
fa-flip-vertical
{% endhighlight %}
-
- Rotating and flipping icons aren't yet supported in IE7.
-
diff --git a/library/font_awesome/src/_includes/examples/stacked.html b/library/font_awesome/src/_includes/examples/stacked.html
index 3e7240c12..505ed2edf 100644
--- a/library/font_awesome/src/_includes/examples/stacked.html
+++ b/library/font_awesome/src/_includes/examples/stacked.html
@@ -1,54 +1,64 @@
-
-
-
- A method for easily stacking multiple icons. Use the icon-stack
class on the parent and
- icon-stack-base
for the bottom icon.
+