├── README.md
├── Thumbs.db
├── archive
├── README - hotfix.md
├── README - master.md
├── README - persistence.md
├── speechcommands - Copy.html
├── speechcommands from github 3-14-17.html
├── speechcommands from hotfix branch.html
├── speechcommands from persistence branch .html
└── speechcommands-Stage.html
├── fiducials.pdf
├── find.html
├── font-awesome
└── font-awesome-4.4.0
│ ├── HELP-US-OUT.txt
│ ├── css
│ ├── font-awesome.css
│ └── font-awesome.min.css
│ ├── fonts
│ ├── FontAwesome.otf
│ ├── fontawesome-webfont.eot
│ ├── fontawesome-webfont.svg
│ ├── fontawesome-webfont.ttf
│ ├── fontawesome-webfont.woff
│ └── fontawesome-webfont.woff2
│ ├── less
│ ├── animated.less
│ ├── bordered-pulled.less
│ ├── core.less
│ ├── fixed-width.less
│ ├── font-awesome.less
│ ├── icons.less
│ ├── larger.less
│ ├── list.less
│ ├── mixins.less
│ ├── path.less
│ ├── rotated-flipped.less
│ ├── stacked.less
│ └── variables.less
│ └── scss
│ ├── _animated.scss
│ ├── _bordered-pulled.scss
│ ├── _core.scss
│ ├── _fixed-width.scss
│ ├── _icons.scss
│ ├── _larger.scss
│ ├── _list.scss
│ ├── _mixins.scss
│ ├── _path.scss
│ ├── _rotated-flipped.scss
│ ├── _stacked.scss
│ ├── _variables.scss
│ └── font-awesome.scss
├── fonts
├── FontAwesome.otf
├── fontawesome-webfont.eot
├── fontawesome-webfont.svg
├── fontawesome-webfont.ttf
├── fontawesome-webfont.woff
└── fontawesome-webfont.woff2
├── mic-animate.gif
├── mic-slash.gif
├── mic.gif
├── navigation extract.txt
├── scripts
├── bootbox.min.js
├── bootstrap.min.css
├── bootstrap.min.js
├── eventemitter2.js
├── eventemitter2.min.js
├── font-awesome.min.css
├── fontawesome-webfont.woff2
├── jquery-ui.css
├── jquery-ui.min.js
├── jquery.min.js
├── roslib.js
└── roslib.min.js
└── speechcommands.html
/README.md:
--------------------------------------------------------------------------------
1 | # Speech Commands
2 |
3 | Speech Commands runs in a Chrome browser under Android, Windows,
4 | or Linux on whatever computer or phone you are using to control the robot.
5 | IOS is not supported, as it does not support the Web Speech API. Speech Commands uses rosbridge to communicate with the robot.
6 |
7 | If you use an Android phone, the vocabulary can be downloaded, so speech recognition can take place locally.
8 |
9 | The program is contained in a single web page, at present called speechcommands.html, which is loaded from a web server.
10 | The web server (usually) runs on the robot. Thus the program can be loaded whenever the robot is present.
11 | Because of the use of the microphone, HTTPS must be used, which in turn requires WSS for the web socket to communicate with the robot. Because of this, both the server and rosbridge must be set up to accomodate SSL, hence the extra steps in the installation below.
12 |
13 | ##Usage
14 | Follow these instructions to install and run speech commands.
15 |
16 | ### Installation:
17 |
18 | * Note the robot's IP address for later use as a url.
19 | * Install Rosbridge:
20 |
21 | sudo apt-get install ros-kinetic-rosbridge-suite
22 | * Install the apache2 web server. This also installs the ssl-certs package, which sets up the snakeoil certificate and key.
23 |
24 | sudo apt-get install apache2
25 | * Enable the apache2 ssl module
26 |
27 | sudo a2enmod ssl
28 | * Configure apache2 for HTTPS
29 |
30 | sudo make-ssl-cert generate-default-snakeoil --force-overwrite
31 | sudo a2ensite default-ssl
32 | * Restart the service. You should not need to enter a passphrase.
33 |
34 | sudo service apache2 restart
35 | * Test the server by addressing it from a browser, for instance http://10.0.0.25/index.html. You should get the apache2 default page.
36 | * (TODO The default page should be replaced by one that has been customized.)
37 | * Test again using HTTPS. The result should be a security warning, since you are not using a certified ssl key.
38 | * Copy speechcommands.html from wherever it is to /var/www/html on the robot.
39 | * Copy the /scripts and the /fonts folders as subfolders to /var/www/html on the robot.
40 |
41 | Set up a self-signed certificate ("snakeoil") to allow ssl communications between the browser and the robot.
42 |
43 | * Copy /etc/ssl/private/ssl-cert-snakeoil.key to /etc/ssl/certs/ (may need sudo)
44 | * chmod /etc/ssl/certs/ssl-cert-snakeoil.key so it is readable. /etc/ssl/certs/ssl-cert-snakeoil.pem should already be readable.
45 |
46 | sudo chmod 644 /etc/ssl/certs/ssl-cert-snakeoil.key
47 | * Modify these 3 lines of the rosbridge launch file, to tell rosbridge where to find the certificate and key:
48 | (The rosbridge launch file is at /opt/ros/kinetic/share/rosbridge_server/launch/rosbridge_websocket.launch)
49 |
50 |
51 |
52 |
53 |
54 |
55 | * Install tf2_web_republisher
56 |
57 | sudo apt-get install ros-kinetic-tf2-web-republisher
58 |
59 |
60 | ### Startup
61 |
62 | Each time you wish to start using speech commands:
63 |
64 | * Bring up your robot. On Loki, you would run loki_base.
65 |
66 | * Launch the rosbridge_server on the robot: (Refer to http://wiki.ros.org/rosbridge_suite/Tutorials/RunningRosbridge)
67 |
68 | roslaunch rosbridge_server rosbridge_websocket.launch
69 | * Run the tf2_web_republisher on the robot:
70 |
71 | rosrun tf2_web_republisher tf2_web_republisher
72 | * In the Chrome browser on your laptop or Android phone, load the speechcommands.html page, using https with the robot's url. The first time, the browser will respond with an error message, which essentially asks you to OK trusting the self-signed certificate.
73 | * in the speechcommands.html page, enter the url with port number (usually 9090)
74 |
75 | :9090
76 | into the Robot URL box and click the Connect button. The button should now say Disconnect, and you should hear "Connected".
77 | If you intend using speech, use "wss" or "https" for the robot's websocket address;
78 | otherwise you can still click the arrows if you use "ws" or "http".
79 |
80 | ### Running
81 | * Click any arrow to move the robot.
82 | * Click the Microphone to use speech. You will be requested to allow the use of the mike. Do it.
83 | * Say, "forward", or other commands. Check the Help for valid commands.
84 | * In environments where there is a lot of competing speech, you can turn on the "Wakeup Word" feature, in Settings. When it is on, all commands must be prefaced by the wakeup word, "robot".
85 |
86 | #To Do / Issues
87 | Though you can set waypoints, they are not persistent across shutdown/restart.
88 |
89 | #Dependencies
90 |
91 | In the robot: rosbridge_server and tf2_web_republisher.
92 | In the browser: See the *link* and *script* statements in the code.
93 |
94 | # Build
95 |
96 | # License
97 |
98 | # Authors
99 | Joe Landau
100 | jrlandau@gmail.com
101 | 7/5/16
102 |
--------------------------------------------------------------------------------
/Thumbs.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/Thumbs.db
--------------------------------------------------------------------------------
/archive/README - hotfix.md:
--------------------------------------------------------------------------------
1 | # Speech Commands
2 |
3 | Speech Commands runs in a Chrome browser under Android, Windows,
4 | or Linux on whatever computer or phone you are using to control the robot.
5 | IOS is not supported, as it does not support the Web Speech API. Speech Commands uses rosbridge to communicate with the robot.
6 |
7 | If you use an Android phone, the vocabulary can be downloaded, so speech recognition can take place locally.
8 |
9 | The program is contained in a single web page, at present called speechcommands.html, which is loaded from a web server.
10 | The web server (usually) runs on the robot. Thus the program can be loaded whenever the robot is present.
11 | Because of the use of the microphone, HTTPS must be used, which in turn requires WSS for the web socket to communicate with the robot. Because of this, both the server and rosbridge must be set up to accomodate SSL, hence the extra steps in the installation below.
12 |
13 | ##Usage
14 | Follow these instructions to install and run speech commands.
15 |
16 | ### Installation:
17 |
18 | * Note the robot's IP address for later use as a url.
19 | * Install Rosbridge:
20 |
21 | sudo apt-get install ros-indigo-rosbridge-suite.
22 | * Install the apache2 web server. This also installs the ssl-certs package, which sets up the snakeoil certificate and key.
23 |
24 | sudo apt-get install apache2.
25 | * Enable the apache2 ssl module
26 |
27 | sudo a2enmod ssl
28 | * Configure apache2 for HTTPS
29 |
30 | sudo a2ensite default-ssl
31 | * Restart the service. You should not need to enter a passphrase.
32 |
33 | sudo service apache2 restart
34 | * Test the server by addressing it from a browser, for instance http://10.0.0.25/index.html. You should get the apache2 default page.
35 | * (TODO The default page should be replaced by one that has been customized.)
36 | * Test again using HTTPS. The result should be a security warning, since you are not using a certified ssl key.
37 | * Copy speechcommands.html from wherever it is to /var/www/html on the robot.
38 | * Copy the /scripts and the /fonts folders as subfolders to /var/www/html on the robot.
39 |
40 | * Copy /etc/ssl/private/ssl-cert-snakeoil.key to /etc/ssl/certs/ (may need sudo)
41 | * chmod /etc/ssl/certs/ssl-cert-snakeoil.key so it is readable. /etc/ssl/certs/ssl-cert-snakeoil.pem should already be readable.
42 |
43 | sudo chmod 644 /etc/ssl/certs/ssl-cert-snakeoil.key
44 | * Modify these 3 lines of the rosbridge launch file:
45 | (The rosbridge launch file is at /opt/ros/indigo/share/rosbridge_server/launch/rosbridge_websocket.launch)
46 |
47 |
48 |
49 |
50 |
51 |
52 | * Install tf2_web_republisher
53 |
54 | sudo apt-get install ros-indigo-tf2-web-republisher
55 |
56 |
57 | ### Startup
58 |
59 | Each time you wish to start using speech commands:
60 |
61 | * Bring up your robot. On Loki, you would run loki_base.
62 |
63 | * Launch the rosbridge_server on the robot: (Refer to http://wiki.ros.org/rosbridge_suite/Tutorials/RunningRosbridge)
64 |
65 | roslaunch rosbridge_server rosbridge_websocket.launch.
66 | * Run the tf2_web_republisher on the robot:
67 |
68 | rosrun tf2_web_republisher tf2_web_republisher
69 | * In the Chrome browser on your laptop or Android phone, load the speechcommands.html page, using https with the robot's url.
70 | * in the speechcommands.html page, enter the url with port number (usually 9090)
71 |
72 | :9090
73 | into the Robot URL box and click the Connect button. The button should now say Disconnect, and you should hear "Connected".
74 | If you intend using speech, use "wss" or "https" for the robot's websocket address;
75 | otherwise you can still click the arrows if you use "ws" or "http".
76 |
77 | ### Running
78 | * Click any arrow to move the robot.
79 | * Click the Microphone to use speech. You will be requested to allow the use of the mike. Do it.
80 | * Say, "forward", or other commands. Check the Help for valid commands.
81 | * In environments where there is a lot of competing speech, you can turn on the "Wakeup Word" feature, in Settings. When it is on, all commands must be prefaced by the wakeup word, "robot".
82 |
83 | #To Do / Issues
84 | Though you can set waypoints, they are not persistent across shutdown/restart.
85 |
86 | #Dependencies
87 |
88 | In the robot: rosbridge_server and tf2_web_republisher.
89 | In the browser: See the *link* and *script* statements in the code.
90 |
91 | # Build
92 |
93 | # License
94 |
95 | # Authors
96 | Joe Landau
97 | jrlandau@gmail.com
98 | 7/5/16
99 |
--------------------------------------------------------------------------------
/archive/README - master.md:
--------------------------------------------------------------------------------
1 | # Speech Commands
2 |
3 | Speech Commands runs in a Chrome browser under Android, Windows,
4 | or Linux on whatever computer or phone you are using to control the robot.
5 | IOS is not supported, as it does not support the Web Speech API. Speech Commands uses rosbridge to communicate with the robot.
6 |
7 | If you use an Android phone, the vocabulary can be downloaded, so speech recognition can take place locally.
8 |
9 | The program is contained in a single web page, at present called speechcommands.html, which is loaded from a web server.
10 | The web server (usually) runs on the robot. Thus the program can be loaded whenever the robot is present.
11 | Because of the use of the microphone, HTTPS must be used, which in turn requires WSS for the web socket to communicate with the robot. Because of this, both the server and rosbridge must be set up to accomodate SSL, hence the extra steps in the installation below.
12 |
13 | ##Usage
14 | Follow these instructions to install and run speech commands.
15 |
16 | ### Installation:
17 |
18 | * Note the robot's IP address for later use as a url.
19 | * Install Rosbridge:
20 |
21 | sudo apt-get install ros-indigo-rosbridge-suite.
22 | * Install the apache2 web server. This also installs the ssl-certs package, which sets up the snakeoil certificate and key.
23 |
24 | sudo apt-get install apache2.
25 | * Enable the apache2 ssl module
26 |
27 | sudo a2enmod ssl
28 | * Configure apache2 for HTTPS
29 |
30 | sudo a2ensite default-ssl
31 | * Restart the service. You should not need to enter a passphrase.
32 |
33 | sudo service apache2 restart
34 | * Test the server by addressing it from a browser, for instance http://10.0.0.25/index.html. You should get the apache2 default page.
35 | * (TODO The default page should be replaced by one that has been customized.)
36 | * Test again using HTTPS. The result should be a security warning, since you are not using a certified ssl key.
37 | * Copy speechcommands.html from wherever it is to /var/www/html on the robot.
38 | * Copy the /scripts and the /fonts folders as subfolders to /var/www/html on the robot.
39 |
40 | Set up a self-signed certificate ("snakeoil") to allow ssl communications between the browser and the robot.
41 |
42 | * Copy /etc/ssl/private/ssl-cert-snakeoil.key to /etc/ssl/certs/ (may need sudo)
43 | * chmod /etc/ssl/certs/ssl-cert-snakeoil.key so it is readable. /etc/ssl/certs/ssl-cert-snakeoil.pem should already be readable.
44 |
45 | sudo chmod 644 /etc/ssl/certs/ssl-cert-snakeoil.key
46 | * Modify these 3 lines of the rosbridge launch file, to tell rosbridge where to find the certificate and key:
47 | (The rosbridge launch file is at /opt/ros/indigo/share/rosbridge_server/launch/rosbridge_websocket.launch)
48 |
49 |
50 |
51 |
52 |
53 |
54 | * Install tf2_web_republisher
55 |
56 | sudo apt-get install ros-indigo-tf2-web-republisher
57 |
58 |
59 | ### Startup
60 |
61 | Each time you wish to start using speech commands:
62 |
63 | * Bring up your robot. On Loki, you would run loki_base.
64 |
65 | * Launch the rosbridge_server on the robot: (Refer to http://wiki.ros.org/rosbridge_suite/Tutorials/RunningRosbridge)
66 |
67 | roslaunch rosbridge_server rosbridge_websocket.launch.
68 | * Run the tf2_web_republisher on the robot:
69 |
70 | rosrun tf2_web_republisher tf2_web_republisher
71 | * In the Chrome browser on your laptop or Android phone, load the speechcommands.html page, using https with the robot's url. The first time, the browser will respond with an error message, which essentially asks you to OK trusting the self-signed certificate.
72 | * in the speechcommands.html page, enter the url with port number (usually 9090)
73 |
74 | :9090
75 | into the Robot URL box and click the Connect button. The button should now say Disconnect, and you should hear "Connected".
76 | If you intend using speech, use "wss" or "https" for the robot's websocket address;
77 | otherwise you can still click the arrows if you use "ws" or "http".
78 |
79 | ### Running
80 | * Click any arrow to move the robot.
81 | * Click the Microphone to use speech. You will be requested to allow the use of the mike. Do it.
82 | * Say, "forward", or other commands. Check the Help for valid commands.
83 | * In environments where there is a lot of competing speech, you can turn on the "Wakeup Word" feature, in Settings. When it is on, all commands must be prefaced by the wakeup word, "robot".
84 |
85 | #To Do / Issues
86 | Though you can set waypoints, they are not persistent across shutdown/restart.
87 |
88 | #Dependencies
89 |
90 | In the robot: rosbridge_server and tf2_web_republisher.
91 | In the browser: See the *link* and *script* statements in the code.
92 |
93 | # Build
94 |
95 | # License
96 |
97 | # Authors
98 | Joe Landau
99 | jrlandau@gmail.com
100 | 7/5/16
101 |
--------------------------------------------------------------------------------
/archive/README - persistence.md:
--------------------------------------------------------------------------------
1 | # Speech Commands
2 |
3 | Speech Commands runs in a Chrome browser under Android, Windows,
4 | or Linux on whatever computer or phone you are using to control the robot.
5 | IOS is not supported, as it does not support the Web Speech API. Speech Commands uses rosbridge to communicate with the robot.
6 |
7 | If you use an Android phone, the vocabulary can be downloaded, so speech recognition can take place locally.
8 |
9 | The program is contained in a single web page, at present called speechcommands.html, which is loaded from a web server.
10 | The web server (usually) runs on the robot. Thus the program can be loaded whenever the robot is present.
11 | Because of the use of the microphone, HTTPS must be used, which in turn requires WSS for the web socket to communicate with the robot. Because of this, both the server and rosbridge must be set up to accomodate SSL, hence the extra steps in the installation below.
12 |
13 | ##Usage
14 | Follow these instructions to install and run speech commands.
15 |
16 | ### Installation:
17 |
18 | * Note the robot's IP address for later use as a url.
19 | * Install Rosbridge:
20 |
21 | sudo apt-get install ros-indigo-rosbridge-suite.
22 | * Install the apache2 web server. This also installs the ssl-certs package, which sets up the snakeoil certificate and key.
23 |
24 | sudo apt-get install apache2.
25 | * Enable the apache2 ssl module
26 |
27 | sudo a2enmod ssl
28 | * Configure apache2 for HTTPS
29 |
30 | sudo a2ensite default-ssl
31 | * Restart the service. You should not need to enter a passphrase.
32 |
33 | sudo service apache2 restart
34 | * Test the server by addressing it from a browser, for instance http://10.0.0.25/index.html. You should get the apache2 default page.
35 | * (TODO The default page should be replaced by one that has been customized.)
36 | * Test again using HTTPS. The result should be a security warning, since you are not using a certified ssl key.
37 | * Copy speechcommands.html from wherever it is to /var/www/html on the robot.
38 | * Copy the /scripts and the /fonts folders as subfolders to /var/www/html on the robot.
39 |
40 | * Copy /etc/ssl/private/ssl-cert-snakeoil.key to /etc/ssl/certs/ (may need sudo)
41 | * chmod /etc/ssl/certs/ssl-cert-snakeoil.key so it is readable. /etc/ssl/certs/ssl-cert-snakeoil.pem should already be readable.
42 |
43 | sudo chmod 644 /etc/ssl/certs/ssl-cert-snakeoil.key
44 | * Modify these 3 lines of the rosbridge launch file:
45 | (The rosbridge launch file is at /opt/ros/indigo/share/rosbridge_server/launch/rosbridge_websocket.launch)
46 |
47 |
48 |
49 |
50 |
51 |
52 | * Install tf2_web_republisher
53 |
54 | sudo apt-get install ros-indigo-tf2-web-republisher
55 |
56 |
57 | ### Startup
58 |
59 | Each time you wish to start using speech commands:
60 |
61 | * Bring up your robot. On Loki, you would run loki_base.
62 |
63 | * Launch the rosbridge_server on the robot: (Refer to http://wiki.ros.org/rosbridge_suite/Tutorials/RunningRosbridge)
64 |
65 | roslaunch rosbridge_server rosbridge_websocket.launch.
66 | * Run the tf2_web_republisher on the robot:
67 |
68 | rosrun tf2_web_republisher tf2_web_republisher
69 | * In the Chrome browser on your laptop or Android phone, load the speechcommands.html page, using https with the robot's url.
70 | * in the speechcommands.html page, enter the url with port number (usually 9090)
71 |
72 | :9090
73 | into the Robot URL box and click the Connect button. The button should now say Disconnect, and you should hear "Connected".
74 | If you intend using speech, use "wss" or "https" for the robot's websocket address;
75 | otherwise you can still click the arrows if you use "ws" or "http".
76 |
77 | ### Running
78 | * Click any arrow to move the robot.
79 | * Click the Microphone to use speech. You will be requested to allow the use of the mike. Do it.
80 | * Say, "forward", or other commands. Check the Help for valid commands.
81 | * In environments where there is a lot of competing speech, you can turn on the "Wakeup Word" feature, in Settings. When it is on, all commands must be prefaced by the wakeup word, "robot".
82 |
83 | #To Do / Issues
84 | Though you can set waypoints, they are not persistent across shutdown/restart.
85 |
86 | #Dependencies
87 |
88 | In the robot: rosbridge_server and tf2_web_republisher.
89 | In the browser: See the *link* and *script* statements in the code.
90 |
91 | # Build
92 |
93 | # License
94 |
95 | # Authors
96 | Joe Landau
97 | jrlandau@gmail.com
98 | 7/5/16
99 |
--------------------------------------------------------------------------------
/fiducials.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/fiducials.pdf
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/HELP-US-OUT.txt:
--------------------------------------------------------------------------------
1 | I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project,
2 | Fonticons (https://fonticons.com). It makes it easy to put the perfect icons on your website. Choose from our awesome,
3 | comprehensive icon sets or copy and paste your own.
4 |
5 | Please. Check it out.
6 |
7 | -Dave Gandy
8 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/css/font-awesome.min.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome
3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
4 | */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.4.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.4.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.4.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.4.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.4.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.4.0#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{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{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{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"}
5 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/font-awesome/font-awesome-4.4.0/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/font-awesome/font-awesome-4.4.0/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/font-awesome/font-awesome-4.4.0/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/font-awesome/font-awesome-4.4.0/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/font-awesome/font-awesome-4.4.0/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/animated.less:
--------------------------------------------------------------------------------
1 | // Animated Icons
2 | // --------------------------
3 |
4 | .@{fa-css-prefix}-spin {
5 | -webkit-animation: fa-spin 2s infinite linear;
6 | animation: fa-spin 2s infinite linear;
7 | }
8 |
9 | .@{fa-css-prefix}-pulse {
10 | -webkit-animation: fa-spin 1s infinite steps(8);
11 | animation: fa-spin 1s infinite steps(8);
12 | }
13 |
14 | @-webkit-keyframes fa-spin {
15 | 0% {
16 | -webkit-transform: rotate(0deg);
17 | transform: rotate(0deg);
18 | }
19 | 100% {
20 | -webkit-transform: rotate(359deg);
21 | transform: rotate(359deg);
22 | }
23 | }
24 |
25 | @keyframes fa-spin {
26 | 0% {
27 | -webkit-transform: rotate(0deg);
28 | transform: rotate(0deg);
29 | }
30 | 100% {
31 | -webkit-transform: rotate(359deg);
32 | transform: rotate(359deg);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/bordered-pulled.less:
--------------------------------------------------------------------------------
1 | // Bordered & Pulled
2 | // -------------------------
3 |
4 | .@{fa-css-prefix}-border {
5 | padding: .2em .25em .15em;
6 | border: solid .08em @fa-border-color;
7 | border-radius: .1em;
8 | }
9 |
10 | .@{fa-css-prefix}-pull-left { float: left; }
11 | .@{fa-css-prefix}-pull-right { float: right; }
12 |
13 | .@{fa-css-prefix} {
14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; }
15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; }
16 | }
17 |
18 | /* Deprecated as of 4.4.0 */
19 | .pull-right { float: right; }
20 | .pull-left { float: left; }
21 |
22 | .@{fa-css-prefix} {
23 | &.pull-left { margin-right: .3em; }
24 | &.pull-right { margin-left: .3em; }
25 | }
26 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/core.less:
--------------------------------------------------------------------------------
1 | // Base Class Definition
2 | // -------------------------
3 |
4 | .@{fa-css-prefix} {
5 | display: inline-block;
6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration
7 | font-size: inherit; // can't have font-size inherit on line above, so need to override
8 | text-rendering: auto; // optimizelegibility throws things off #1094
9 | -webkit-font-smoothing: antialiased;
10 | -moz-osx-font-smoothing: grayscale;
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/fixed-width.less:
--------------------------------------------------------------------------------
1 | // Fixed Width Icons
2 | // -------------------------
3 | .@{fa-css-prefix}-fw {
4 | width: (18em / 14);
5 | text-align: center;
6 | }
7 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/font-awesome.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome
3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
4 | */
5 |
6 | @import "variables.less";
7 | @import "mixins.less";
8 | @import "path.less";
9 | @import "core.less";
10 | @import "larger.less";
11 | @import "fixed-width.less";
12 | @import "list.less";
13 | @import "bordered-pulled.less";
14 | @import "animated.less";
15 | @import "rotated-flipped.less";
16 | @import "stacked.less";
17 | @import "icons.less";
18 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/larger.less:
--------------------------------------------------------------------------------
1 | // Icon Sizes
2 | // -------------------------
3 |
4 | /* makes the font 33% larger relative to the icon container */
5 | .@{fa-css-prefix}-lg {
6 | font-size: (4em / 3);
7 | line-height: (3em / 4);
8 | vertical-align: -15%;
9 | }
10 | .@{fa-css-prefix}-2x { font-size: 2em; }
11 | .@{fa-css-prefix}-3x { font-size: 3em; }
12 | .@{fa-css-prefix}-4x { font-size: 4em; }
13 | .@{fa-css-prefix}-5x { font-size: 5em; }
14 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/list.less:
--------------------------------------------------------------------------------
1 | // List Icons
2 | // -------------------------
3 |
4 | .@{fa-css-prefix}-ul {
5 | padding-left: 0;
6 | margin-left: @fa-li-width;
7 | list-style-type: none;
8 | > li { position: relative; }
9 | }
10 | .@{fa-css-prefix}-li {
11 | position: absolute;
12 | left: -@fa-li-width;
13 | width: @fa-li-width;
14 | top: (2em / 14);
15 | text-align: center;
16 | &.@{fa-css-prefix}-lg {
17 | left: (-@fa-li-width + (4em / 14));
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/mixins.less:
--------------------------------------------------------------------------------
1 | // Mixins
2 | // --------------------------
3 |
4 | .fa-icon() {
5 | display: inline-block;
6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration
7 | font-size: inherit; // can't have font-size inherit on line above, so need to override
8 | text-rendering: auto; // optimizelegibility throws things off #1094
9 | -webkit-font-smoothing: antialiased;
10 | -moz-osx-font-smoothing: grayscale;
11 |
12 | }
13 |
14 | .fa-icon-rotate(@degrees, @rotation) {
15 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation);
16 | -webkit-transform: rotate(@degrees);
17 | -ms-transform: rotate(@degrees);
18 | transform: rotate(@degrees);
19 | }
20 |
21 | .fa-icon-flip(@horiz, @vert, @rotation) {
22 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1);
23 | -webkit-transform: scale(@horiz, @vert);
24 | -ms-transform: scale(@horiz, @vert);
25 | transform: scale(@horiz, @vert);
26 | }
27 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/path.less:
--------------------------------------------------------------------------------
1 | /* FONT PATH
2 | * -------------------------- */
3 |
4 | @font-face {
5 | font-family: 'FontAwesome';
6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}');
7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'),
8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'),
9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'),
10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'),
11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg');
12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts
13 | font-weight: normal;
14 | font-style: normal;
15 | }
16 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/rotated-flipped.less:
--------------------------------------------------------------------------------
1 | // Rotated & Flipped Icons
2 | // -------------------------
3 |
4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); }
5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); }
6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); }
7 |
8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); }
9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); }
10 |
11 | // Hook for IE8-9
12 | // -------------------------
13 |
14 | :root .@{fa-css-prefix}-rotate-90,
15 | :root .@{fa-css-prefix}-rotate-180,
16 | :root .@{fa-css-prefix}-rotate-270,
17 | :root .@{fa-css-prefix}-flip-horizontal,
18 | :root .@{fa-css-prefix}-flip-vertical {
19 | filter: none;
20 | }
21 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/stacked.less:
--------------------------------------------------------------------------------
1 | // Stacked Icons
2 | // -------------------------
3 |
4 | .@{fa-css-prefix}-stack {
5 | position: relative;
6 | display: inline-block;
7 | width: 2em;
8 | height: 2em;
9 | line-height: 2em;
10 | vertical-align: middle;
11 | }
12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x {
13 | position: absolute;
14 | left: 0;
15 | width: 100%;
16 | text-align: center;
17 | }
18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; }
19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; }
20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; }
21 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/less/variables.less:
--------------------------------------------------------------------------------
1 | // Variables
2 | // --------------------------
3 |
4 | @fa-font-path: "../fonts";
5 | @fa-font-size-base: 14px;
6 | @fa-line-height-base: 1;
7 | //@fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.4.0/fonts"; // for referencing Bootstrap CDN font files directly
8 | @fa-css-prefix: fa;
9 | @fa-version: "4.4.0";
10 | @fa-border-color: #eee;
11 | @fa-inverse: #fff;
12 | @fa-li-width: (30em / 14);
13 |
14 | @fa-var-500px: "\f26e";
15 | @fa-var-adjust: "\f042";
16 | @fa-var-adn: "\f170";
17 | @fa-var-align-center: "\f037";
18 | @fa-var-align-justify: "\f039";
19 | @fa-var-align-left: "\f036";
20 | @fa-var-align-right: "\f038";
21 | @fa-var-amazon: "\f270";
22 | @fa-var-ambulance: "\f0f9";
23 | @fa-var-anchor: "\f13d";
24 | @fa-var-android: "\f17b";
25 | @fa-var-angellist: "\f209";
26 | @fa-var-angle-double-down: "\f103";
27 | @fa-var-angle-double-left: "\f100";
28 | @fa-var-angle-double-right: "\f101";
29 | @fa-var-angle-double-up: "\f102";
30 | @fa-var-angle-down: "\f107";
31 | @fa-var-angle-left: "\f104";
32 | @fa-var-angle-right: "\f105";
33 | @fa-var-angle-up: "\f106";
34 | @fa-var-apple: "\f179";
35 | @fa-var-archive: "\f187";
36 | @fa-var-area-chart: "\f1fe";
37 | @fa-var-arrow-circle-down: "\f0ab";
38 | @fa-var-arrow-circle-left: "\f0a8";
39 | @fa-var-arrow-circle-o-down: "\f01a";
40 | @fa-var-arrow-circle-o-left: "\f190";
41 | @fa-var-arrow-circle-o-right: "\f18e";
42 | @fa-var-arrow-circle-o-up: "\f01b";
43 | @fa-var-arrow-circle-right: "\f0a9";
44 | @fa-var-arrow-circle-up: "\f0aa";
45 | @fa-var-arrow-down: "\f063";
46 | @fa-var-arrow-left: "\f060";
47 | @fa-var-arrow-right: "\f061";
48 | @fa-var-arrow-up: "\f062";
49 | @fa-var-arrows: "\f047";
50 | @fa-var-arrows-alt: "\f0b2";
51 | @fa-var-arrows-h: "\f07e";
52 | @fa-var-arrows-v: "\f07d";
53 | @fa-var-asterisk: "\f069";
54 | @fa-var-at: "\f1fa";
55 | @fa-var-automobile: "\f1b9";
56 | @fa-var-backward: "\f04a";
57 | @fa-var-balance-scale: "\f24e";
58 | @fa-var-ban: "\f05e";
59 | @fa-var-bank: "\f19c";
60 | @fa-var-bar-chart: "\f080";
61 | @fa-var-bar-chart-o: "\f080";
62 | @fa-var-barcode: "\f02a";
63 | @fa-var-bars: "\f0c9";
64 | @fa-var-battery-0: "\f244";
65 | @fa-var-battery-1: "\f243";
66 | @fa-var-battery-2: "\f242";
67 | @fa-var-battery-3: "\f241";
68 | @fa-var-battery-4: "\f240";
69 | @fa-var-battery-empty: "\f244";
70 | @fa-var-battery-full: "\f240";
71 | @fa-var-battery-half: "\f242";
72 | @fa-var-battery-quarter: "\f243";
73 | @fa-var-battery-three-quarters: "\f241";
74 | @fa-var-bed: "\f236";
75 | @fa-var-beer: "\f0fc";
76 | @fa-var-behance: "\f1b4";
77 | @fa-var-behance-square: "\f1b5";
78 | @fa-var-bell: "\f0f3";
79 | @fa-var-bell-o: "\f0a2";
80 | @fa-var-bell-slash: "\f1f6";
81 | @fa-var-bell-slash-o: "\f1f7";
82 | @fa-var-bicycle: "\f206";
83 | @fa-var-binoculars: "\f1e5";
84 | @fa-var-birthday-cake: "\f1fd";
85 | @fa-var-bitbucket: "\f171";
86 | @fa-var-bitbucket-square: "\f172";
87 | @fa-var-bitcoin: "\f15a";
88 | @fa-var-black-tie: "\f27e";
89 | @fa-var-bold: "\f032";
90 | @fa-var-bolt: "\f0e7";
91 | @fa-var-bomb: "\f1e2";
92 | @fa-var-book: "\f02d";
93 | @fa-var-bookmark: "\f02e";
94 | @fa-var-bookmark-o: "\f097";
95 | @fa-var-briefcase: "\f0b1";
96 | @fa-var-btc: "\f15a";
97 | @fa-var-bug: "\f188";
98 | @fa-var-building: "\f1ad";
99 | @fa-var-building-o: "\f0f7";
100 | @fa-var-bullhorn: "\f0a1";
101 | @fa-var-bullseye: "\f140";
102 | @fa-var-bus: "\f207";
103 | @fa-var-buysellads: "\f20d";
104 | @fa-var-cab: "\f1ba";
105 | @fa-var-calculator: "\f1ec";
106 | @fa-var-calendar: "\f073";
107 | @fa-var-calendar-check-o: "\f274";
108 | @fa-var-calendar-minus-o: "\f272";
109 | @fa-var-calendar-o: "\f133";
110 | @fa-var-calendar-plus-o: "\f271";
111 | @fa-var-calendar-times-o: "\f273";
112 | @fa-var-camera: "\f030";
113 | @fa-var-camera-retro: "\f083";
114 | @fa-var-car: "\f1b9";
115 | @fa-var-caret-down: "\f0d7";
116 | @fa-var-caret-left: "\f0d9";
117 | @fa-var-caret-right: "\f0da";
118 | @fa-var-caret-square-o-down: "\f150";
119 | @fa-var-caret-square-o-left: "\f191";
120 | @fa-var-caret-square-o-right: "\f152";
121 | @fa-var-caret-square-o-up: "\f151";
122 | @fa-var-caret-up: "\f0d8";
123 | @fa-var-cart-arrow-down: "\f218";
124 | @fa-var-cart-plus: "\f217";
125 | @fa-var-cc: "\f20a";
126 | @fa-var-cc-amex: "\f1f3";
127 | @fa-var-cc-diners-club: "\f24c";
128 | @fa-var-cc-discover: "\f1f2";
129 | @fa-var-cc-jcb: "\f24b";
130 | @fa-var-cc-mastercard: "\f1f1";
131 | @fa-var-cc-paypal: "\f1f4";
132 | @fa-var-cc-stripe: "\f1f5";
133 | @fa-var-cc-visa: "\f1f0";
134 | @fa-var-certificate: "\f0a3";
135 | @fa-var-chain: "\f0c1";
136 | @fa-var-chain-broken: "\f127";
137 | @fa-var-check: "\f00c";
138 | @fa-var-check-circle: "\f058";
139 | @fa-var-check-circle-o: "\f05d";
140 | @fa-var-check-square: "\f14a";
141 | @fa-var-check-square-o: "\f046";
142 | @fa-var-chevron-circle-down: "\f13a";
143 | @fa-var-chevron-circle-left: "\f137";
144 | @fa-var-chevron-circle-right: "\f138";
145 | @fa-var-chevron-circle-up: "\f139";
146 | @fa-var-chevron-down: "\f078";
147 | @fa-var-chevron-left: "\f053";
148 | @fa-var-chevron-right: "\f054";
149 | @fa-var-chevron-up: "\f077";
150 | @fa-var-child: "\f1ae";
151 | @fa-var-chrome: "\f268";
152 | @fa-var-circle: "\f111";
153 | @fa-var-circle-o: "\f10c";
154 | @fa-var-circle-o-notch: "\f1ce";
155 | @fa-var-circle-thin: "\f1db";
156 | @fa-var-clipboard: "\f0ea";
157 | @fa-var-clock-o: "\f017";
158 | @fa-var-clone: "\f24d";
159 | @fa-var-close: "\f00d";
160 | @fa-var-cloud: "\f0c2";
161 | @fa-var-cloud-download: "\f0ed";
162 | @fa-var-cloud-upload: "\f0ee";
163 | @fa-var-cny: "\f157";
164 | @fa-var-code: "\f121";
165 | @fa-var-code-fork: "\f126";
166 | @fa-var-codepen: "\f1cb";
167 | @fa-var-coffee: "\f0f4";
168 | @fa-var-cog: "\f013";
169 | @fa-var-cogs: "\f085";
170 | @fa-var-columns: "\f0db";
171 | @fa-var-comment: "\f075";
172 | @fa-var-comment-o: "\f0e5";
173 | @fa-var-commenting: "\f27a";
174 | @fa-var-commenting-o: "\f27b";
175 | @fa-var-comments: "\f086";
176 | @fa-var-comments-o: "\f0e6";
177 | @fa-var-compass: "\f14e";
178 | @fa-var-compress: "\f066";
179 | @fa-var-connectdevelop: "\f20e";
180 | @fa-var-contao: "\f26d";
181 | @fa-var-copy: "\f0c5";
182 | @fa-var-copyright: "\f1f9";
183 | @fa-var-creative-commons: "\f25e";
184 | @fa-var-credit-card: "\f09d";
185 | @fa-var-crop: "\f125";
186 | @fa-var-crosshairs: "\f05b";
187 | @fa-var-css3: "\f13c";
188 | @fa-var-cube: "\f1b2";
189 | @fa-var-cubes: "\f1b3";
190 | @fa-var-cut: "\f0c4";
191 | @fa-var-cutlery: "\f0f5";
192 | @fa-var-dashboard: "\f0e4";
193 | @fa-var-dashcube: "\f210";
194 | @fa-var-database: "\f1c0";
195 | @fa-var-dedent: "\f03b";
196 | @fa-var-delicious: "\f1a5";
197 | @fa-var-desktop: "\f108";
198 | @fa-var-deviantart: "\f1bd";
199 | @fa-var-diamond: "\f219";
200 | @fa-var-digg: "\f1a6";
201 | @fa-var-dollar: "\f155";
202 | @fa-var-dot-circle-o: "\f192";
203 | @fa-var-download: "\f019";
204 | @fa-var-dribbble: "\f17d";
205 | @fa-var-dropbox: "\f16b";
206 | @fa-var-drupal: "\f1a9";
207 | @fa-var-edit: "\f044";
208 | @fa-var-eject: "\f052";
209 | @fa-var-ellipsis-h: "\f141";
210 | @fa-var-ellipsis-v: "\f142";
211 | @fa-var-empire: "\f1d1";
212 | @fa-var-envelope: "\f0e0";
213 | @fa-var-envelope-o: "\f003";
214 | @fa-var-envelope-square: "\f199";
215 | @fa-var-eraser: "\f12d";
216 | @fa-var-eur: "\f153";
217 | @fa-var-euro: "\f153";
218 | @fa-var-exchange: "\f0ec";
219 | @fa-var-exclamation: "\f12a";
220 | @fa-var-exclamation-circle: "\f06a";
221 | @fa-var-exclamation-triangle: "\f071";
222 | @fa-var-expand: "\f065";
223 | @fa-var-expeditedssl: "\f23e";
224 | @fa-var-external-link: "\f08e";
225 | @fa-var-external-link-square: "\f14c";
226 | @fa-var-eye: "\f06e";
227 | @fa-var-eye-slash: "\f070";
228 | @fa-var-eyedropper: "\f1fb";
229 | @fa-var-facebook: "\f09a";
230 | @fa-var-facebook-f: "\f09a";
231 | @fa-var-facebook-official: "\f230";
232 | @fa-var-facebook-square: "\f082";
233 | @fa-var-fast-backward: "\f049";
234 | @fa-var-fast-forward: "\f050";
235 | @fa-var-fax: "\f1ac";
236 | @fa-var-feed: "\f09e";
237 | @fa-var-female: "\f182";
238 | @fa-var-fighter-jet: "\f0fb";
239 | @fa-var-file: "\f15b";
240 | @fa-var-file-archive-o: "\f1c6";
241 | @fa-var-file-audio-o: "\f1c7";
242 | @fa-var-file-code-o: "\f1c9";
243 | @fa-var-file-excel-o: "\f1c3";
244 | @fa-var-file-image-o: "\f1c5";
245 | @fa-var-file-movie-o: "\f1c8";
246 | @fa-var-file-o: "\f016";
247 | @fa-var-file-pdf-o: "\f1c1";
248 | @fa-var-file-photo-o: "\f1c5";
249 | @fa-var-file-picture-o: "\f1c5";
250 | @fa-var-file-powerpoint-o: "\f1c4";
251 | @fa-var-file-sound-o: "\f1c7";
252 | @fa-var-file-text: "\f15c";
253 | @fa-var-file-text-o: "\f0f6";
254 | @fa-var-file-video-o: "\f1c8";
255 | @fa-var-file-word-o: "\f1c2";
256 | @fa-var-file-zip-o: "\f1c6";
257 | @fa-var-files-o: "\f0c5";
258 | @fa-var-film: "\f008";
259 | @fa-var-filter: "\f0b0";
260 | @fa-var-fire: "\f06d";
261 | @fa-var-fire-extinguisher: "\f134";
262 | @fa-var-firefox: "\f269";
263 | @fa-var-flag: "\f024";
264 | @fa-var-flag-checkered: "\f11e";
265 | @fa-var-flag-o: "\f11d";
266 | @fa-var-flash: "\f0e7";
267 | @fa-var-flask: "\f0c3";
268 | @fa-var-flickr: "\f16e";
269 | @fa-var-floppy-o: "\f0c7";
270 | @fa-var-folder: "\f07b";
271 | @fa-var-folder-o: "\f114";
272 | @fa-var-folder-open: "\f07c";
273 | @fa-var-folder-open-o: "\f115";
274 | @fa-var-font: "\f031";
275 | @fa-var-fonticons: "\f280";
276 | @fa-var-forumbee: "\f211";
277 | @fa-var-forward: "\f04e";
278 | @fa-var-foursquare: "\f180";
279 | @fa-var-frown-o: "\f119";
280 | @fa-var-futbol-o: "\f1e3";
281 | @fa-var-gamepad: "\f11b";
282 | @fa-var-gavel: "\f0e3";
283 | @fa-var-gbp: "\f154";
284 | @fa-var-ge: "\f1d1";
285 | @fa-var-gear: "\f013";
286 | @fa-var-gears: "\f085";
287 | @fa-var-genderless: "\f22d";
288 | @fa-var-get-pocket: "\f265";
289 | @fa-var-gg: "\f260";
290 | @fa-var-gg-circle: "\f261";
291 | @fa-var-gift: "\f06b";
292 | @fa-var-git: "\f1d3";
293 | @fa-var-git-square: "\f1d2";
294 | @fa-var-github: "\f09b";
295 | @fa-var-github-alt: "\f113";
296 | @fa-var-github-square: "\f092";
297 | @fa-var-gittip: "\f184";
298 | @fa-var-glass: "\f000";
299 | @fa-var-globe: "\f0ac";
300 | @fa-var-google: "\f1a0";
301 | @fa-var-google-plus: "\f0d5";
302 | @fa-var-google-plus-square: "\f0d4";
303 | @fa-var-google-wallet: "\f1ee";
304 | @fa-var-graduation-cap: "\f19d";
305 | @fa-var-gratipay: "\f184";
306 | @fa-var-group: "\f0c0";
307 | @fa-var-h-square: "\f0fd";
308 | @fa-var-hacker-news: "\f1d4";
309 | @fa-var-hand-grab-o: "\f255";
310 | @fa-var-hand-lizard-o: "\f258";
311 | @fa-var-hand-o-down: "\f0a7";
312 | @fa-var-hand-o-left: "\f0a5";
313 | @fa-var-hand-o-right: "\f0a4";
314 | @fa-var-hand-o-up: "\f0a6";
315 | @fa-var-hand-paper-o: "\f256";
316 | @fa-var-hand-peace-o: "\f25b";
317 | @fa-var-hand-pointer-o: "\f25a";
318 | @fa-var-hand-rock-o: "\f255";
319 | @fa-var-hand-scissors-o: "\f257";
320 | @fa-var-hand-spock-o: "\f259";
321 | @fa-var-hand-stop-o: "\f256";
322 | @fa-var-hdd-o: "\f0a0";
323 | @fa-var-header: "\f1dc";
324 | @fa-var-headphones: "\f025";
325 | @fa-var-heart: "\f004";
326 | @fa-var-heart-o: "\f08a";
327 | @fa-var-heartbeat: "\f21e";
328 | @fa-var-history: "\f1da";
329 | @fa-var-home: "\f015";
330 | @fa-var-hospital-o: "\f0f8";
331 | @fa-var-hotel: "\f236";
332 | @fa-var-hourglass: "\f254";
333 | @fa-var-hourglass-1: "\f251";
334 | @fa-var-hourglass-2: "\f252";
335 | @fa-var-hourglass-3: "\f253";
336 | @fa-var-hourglass-end: "\f253";
337 | @fa-var-hourglass-half: "\f252";
338 | @fa-var-hourglass-o: "\f250";
339 | @fa-var-hourglass-start: "\f251";
340 | @fa-var-houzz: "\f27c";
341 | @fa-var-html5: "\f13b";
342 | @fa-var-i-cursor: "\f246";
343 | @fa-var-ils: "\f20b";
344 | @fa-var-image: "\f03e";
345 | @fa-var-inbox: "\f01c";
346 | @fa-var-indent: "\f03c";
347 | @fa-var-industry: "\f275";
348 | @fa-var-info: "\f129";
349 | @fa-var-info-circle: "\f05a";
350 | @fa-var-inr: "\f156";
351 | @fa-var-instagram: "\f16d";
352 | @fa-var-institution: "\f19c";
353 | @fa-var-internet-explorer: "\f26b";
354 | @fa-var-intersex: "\f224";
355 | @fa-var-ioxhost: "\f208";
356 | @fa-var-italic: "\f033";
357 | @fa-var-joomla: "\f1aa";
358 | @fa-var-jpy: "\f157";
359 | @fa-var-jsfiddle: "\f1cc";
360 | @fa-var-key: "\f084";
361 | @fa-var-keyboard-o: "\f11c";
362 | @fa-var-krw: "\f159";
363 | @fa-var-language: "\f1ab";
364 | @fa-var-laptop: "\f109";
365 | @fa-var-lastfm: "\f202";
366 | @fa-var-lastfm-square: "\f203";
367 | @fa-var-leaf: "\f06c";
368 | @fa-var-leanpub: "\f212";
369 | @fa-var-legal: "\f0e3";
370 | @fa-var-lemon-o: "\f094";
371 | @fa-var-level-down: "\f149";
372 | @fa-var-level-up: "\f148";
373 | @fa-var-life-bouy: "\f1cd";
374 | @fa-var-life-buoy: "\f1cd";
375 | @fa-var-life-ring: "\f1cd";
376 | @fa-var-life-saver: "\f1cd";
377 | @fa-var-lightbulb-o: "\f0eb";
378 | @fa-var-line-chart: "\f201";
379 | @fa-var-link: "\f0c1";
380 | @fa-var-linkedin: "\f0e1";
381 | @fa-var-linkedin-square: "\f08c";
382 | @fa-var-linux: "\f17c";
383 | @fa-var-list: "\f03a";
384 | @fa-var-list-alt: "\f022";
385 | @fa-var-list-ol: "\f0cb";
386 | @fa-var-list-ul: "\f0ca";
387 | @fa-var-location-arrow: "\f124";
388 | @fa-var-lock: "\f023";
389 | @fa-var-long-arrow-down: "\f175";
390 | @fa-var-long-arrow-left: "\f177";
391 | @fa-var-long-arrow-right: "\f178";
392 | @fa-var-long-arrow-up: "\f176";
393 | @fa-var-magic: "\f0d0";
394 | @fa-var-magnet: "\f076";
395 | @fa-var-mail-forward: "\f064";
396 | @fa-var-mail-reply: "\f112";
397 | @fa-var-mail-reply-all: "\f122";
398 | @fa-var-male: "\f183";
399 | @fa-var-map: "\f279";
400 | @fa-var-map-marker: "\f041";
401 | @fa-var-map-o: "\f278";
402 | @fa-var-map-pin: "\f276";
403 | @fa-var-map-signs: "\f277";
404 | @fa-var-mars: "\f222";
405 | @fa-var-mars-double: "\f227";
406 | @fa-var-mars-stroke: "\f229";
407 | @fa-var-mars-stroke-h: "\f22b";
408 | @fa-var-mars-stroke-v: "\f22a";
409 | @fa-var-maxcdn: "\f136";
410 | @fa-var-meanpath: "\f20c";
411 | @fa-var-medium: "\f23a";
412 | @fa-var-medkit: "\f0fa";
413 | @fa-var-meh-o: "\f11a";
414 | @fa-var-mercury: "\f223";
415 | @fa-var-microphone: "\f130";
416 | @fa-var-microphone-slash: "\f131";
417 | @fa-var-minus: "\f068";
418 | @fa-var-minus-circle: "\f056";
419 | @fa-var-minus-square: "\f146";
420 | @fa-var-minus-square-o: "\f147";
421 | @fa-var-mobile: "\f10b";
422 | @fa-var-mobile-phone: "\f10b";
423 | @fa-var-money: "\f0d6";
424 | @fa-var-moon-o: "\f186";
425 | @fa-var-mortar-board: "\f19d";
426 | @fa-var-motorcycle: "\f21c";
427 | @fa-var-mouse-pointer: "\f245";
428 | @fa-var-music: "\f001";
429 | @fa-var-navicon: "\f0c9";
430 | @fa-var-neuter: "\f22c";
431 | @fa-var-newspaper-o: "\f1ea";
432 | @fa-var-object-group: "\f247";
433 | @fa-var-object-ungroup: "\f248";
434 | @fa-var-odnoklassniki: "\f263";
435 | @fa-var-odnoklassniki-square: "\f264";
436 | @fa-var-opencart: "\f23d";
437 | @fa-var-openid: "\f19b";
438 | @fa-var-opera: "\f26a";
439 | @fa-var-optin-monster: "\f23c";
440 | @fa-var-outdent: "\f03b";
441 | @fa-var-pagelines: "\f18c";
442 | @fa-var-paint-brush: "\f1fc";
443 | @fa-var-paper-plane: "\f1d8";
444 | @fa-var-paper-plane-o: "\f1d9";
445 | @fa-var-paperclip: "\f0c6";
446 | @fa-var-paragraph: "\f1dd";
447 | @fa-var-paste: "\f0ea";
448 | @fa-var-pause: "\f04c";
449 | @fa-var-paw: "\f1b0";
450 | @fa-var-paypal: "\f1ed";
451 | @fa-var-pencil: "\f040";
452 | @fa-var-pencil-square: "\f14b";
453 | @fa-var-pencil-square-o: "\f044";
454 | @fa-var-phone: "\f095";
455 | @fa-var-phone-square: "\f098";
456 | @fa-var-photo: "\f03e";
457 | @fa-var-picture-o: "\f03e";
458 | @fa-var-pie-chart: "\f200";
459 | @fa-var-pied-piper: "\f1a7";
460 | @fa-var-pied-piper-alt: "\f1a8";
461 | @fa-var-pinterest: "\f0d2";
462 | @fa-var-pinterest-p: "\f231";
463 | @fa-var-pinterest-square: "\f0d3";
464 | @fa-var-plane: "\f072";
465 | @fa-var-play: "\f04b";
466 | @fa-var-play-circle: "\f144";
467 | @fa-var-play-circle-o: "\f01d";
468 | @fa-var-plug: "\f1e6";
469 | @fa-var-plus: "\f067";
470 | @fa-var-plus-circle: "\f055";
471 | @fa-var-plus-square: "\f0fe";
472 | @fa-var-plus-square-o: "\f196";
473 | @fa-var-power-off: "\f011";
474 | @fa-var-print: "\f02f";
475 | @fa-var-puzzle-piece: "\f12e";
476 | @fa-var-qq: "\f1d6";
477 | @fa-var-qrcode: "\f029";
478 | @fa-var-question: "\f128";
479 | @fa-var-question-circle: "\f059";
480 | @fa-var-quote-left: "\f10d";
481 | @fa-var-quote-right: "\f10e";
482 | @fa-var-ra: "\f1d0";
483 | @fa-var-random: "\f074";
484 | @fa-var-rebel: "\f1d0";
485 | @fa-var-recycle: "\f1b8";
486 | @fa-var-reddit: "\f1a1";
487 | @fa-var-reddit-square: "\f1a2";
488 | @fa-var-refresh: "\f021";
489 | @fa-var-registered: "\f25d";
490 | @fa-var-remove: "\f00d";
491 | @fa-var-renren: "\f18b";
492 | @fa-var-reorder: "\f0c9";
493 | @fa-var-repeat: "\f01e";
494 | @fa-var-reply: "\f112";
495 | @fa-var-reply-all: "\f122";
496 | @fa-var-retweet: "\f079";
497 | @fa-var-rmb: "\f157";
498 | @fa-var-road: "\f018";
499 | @fa-var-rocket: "\f135";
500 | @fa-var-rotate-left: "\f0e2";
501 | @fa-var-rotate-right: "\f01e";
502 | @fa-var-rouble: "\f158";
503 | @fa-var-rss: "\f09e";
504 | @fa-var-rss-square: "\f143";
505 | @fa-var-rub: "\f158";
506 | @fa-var-ruble: "\f158";
507 | @fa-var-rupee: "\f156";
508 | @fa-var-safari: "\f267";
509 | @fa-var-save: "\f0c7";
510 | @fa-var-scissors: "\f0c4";
511 | @fa-var-search: "\f002";
512 | @fa-var-search-minus: "\f010";
513 | @fa-var-search-plus: "\f00e";
514 | @fa-var-sellsy: "\f213";
515 | @fa-var-send: "\f1d8";
516 | @fa-var-send-o: "\f1d9";
517 | @fa-var-server: "\f233";
518 | @fa-var-share: "\f064";
519 | @fa-var-share-alt: "\f1e0";
520 | @fa-var-share-alt-square: "\f1e1";
521 | @fa-var-share-square: "\f14d";
522 | @fa-var-share-square-o: "\f045";
523 | @fa-var-shekel: "\f20b";
524 | @fa-var-sheqel: "\f20b";
525 | @fa-var-shield: "\f132";
526 | @fa-var-ship: "\f21a";
527 | @fa-var-shirtsinbulk: "\f214";
528 | @fa-var-shopping-cart: "\f07a";
529 | @fa-var-sign-in: "\f090";
530 | @fa-var-sign-out: "\f08b";
531 | @fa-var-signal: "\f012";
532 | @fa-var-simplybuilt: "\f215";
533 | @fa-var-sitemap: "\f0e8";
534 | @fa-var-skyatlas: "\f216";
535 | @fa-var-skype: "\f17e";
536 | @fa-var-slack: "\f198";
537 | @fa-var-sliders: "\f1de";
538 | @fa-var-slideshare: "\f1e7";
539 | @fa-var-smile-o: "\f118";
540 | @fa-var-soccer-ball-o: "\f1e3";
541 | @fa-var-sort: "\f0dc";
542 | @fa-var-sort-alpha-asc: "\f15d";
543 | @fa-var-sort-alpha-desc: "\f15e";
544 | @fa-var-sort-amount-asc: "\f160";
545 | @fa-var-sort-amount-desc: "\f161";
546 | @fa-var-sort-asc: "\f0de";
547 | @fa-var-sort-desc: "\f0dd";
548 | @fa-var-sort-down: "\f0dd";
549 | @fa-var-sort-numeric-asc: "\f162";
550 | @fa-var-sort-numeric-desc: "\f163";
551 | @fa-var-sort-up: "\f0de";
552 | @fa-var-soundcloud: "\f1be";
553 | @fa-var-space-shuttle: "\f197";
554 | @fa-var-spinner: "\f110";
555 | @fa-var-spoon: "\f1b1";
556 | @fa-var-spotify: "\f1bc";
557 | @fa-var-square: "\f0c8";
558 | @fa-var-square-o: "\f096";
559 | @fa-var-stack-exchange: "\f18d";
560 | @fa-var-stack-overflow: "\f16c";
561 | @fa-var-star: "\f005";
562 | @fa-var-star-half: "\f089";
563 | @fa-var-star-half-empty: "\f123";
564 | @fa-var-star-half-full: "\f123";
565 | @fa-var-star-half-o: "\f123";
566 | @fa-var-star-o: "\f006";
567 | @fa-var-steam: "\f1b6";
568 | @fa-var-steam-square: "\f1b7";
569 | @fa-var-step-backward: "\f048";
570 | @fa-var-step-forward: "\f051";
571 | @fa-var-stethoscope: "\f0f1";
572 | @fa-var-sticky-note: "\f249";
573 | @fa-var-sticky-note-o: "\f24a";
574 | @fa-var-stop: "\f04d";
575 | @fa-var-street-view: "\f21d";
576 | @fa-var-strikethrough: "\f0cc";
577 | @fa-var-stumbleupon: "\f1a4";
578 | @fa-var-stumbleupon-circle: "\f1a3";
579 | @fa-var-subscript: "\f12c";
580 | @fa-var-subway: "\f239";
581 | @fa-var-suitcase: "\f0f2";
582 | @fa-var-sun-o: "\f185";
583 | @fa-var-superscript: "\f12b";
584 | @fa-var-support: "\f1cd";
585 | @fa-var-table: "\f0ce";
586 | @fa-var-tablet: "\f10a";
587 | @fa-var-tachometer: "\f0e4";
588 | @fa-var-tag: "\f02b";
589 | @fa-var-tags: "\f02c";
590 | @fa-var-tasks: "\f0ae";
591 | @fa-var-taxi: "\f1ba";
592 | @fa-var-television: "\f26c";
593 | @fa-var-tencent-weibo: "\f1d5";
594 | @fa-var-terminal: "\f120";
595 | @fa-var-text-height: "\f034";
596 | @fa-var-text-width: "\f035";
597 | @fa-var-th: "\f00a";
598 | @fa-var-th-large: "\f009";
599 | @fa-var-th-list: "\f00b";
600 | @fa-var-thumb-tack: "\f08d";
601 | @fa-var-thumbs-down: "\f165";
602 | @fa-var-thumbs-o-down: "\f088";
603 | @fa-var-thumbs-o-up: "\f087";
604 | @fa-var-thumbs-up: "\f164";
605 | @fa-var-ticket: "\f145";
606 | @fa-var-times: "\f00d";
607 | @fa-var-times-circle: "\f057";
608 | @fa-var-times-circle-o: "\f05c";
609 | @fa-var-tint: "\f043";
610 | @fa-var-toggle-down: "\f150";
611 | @fa-var-toggle-left: "\f191";
612 | @fa-var-toggle-off: "\f204";
613 | @fa-var-toggle-on: "\f205";
614 | @fa-var-toggle-right: "\f152";
615 | @fa-var-toggle-up: "\f151";
616 | @fa-var-trademark: "\f25c";
617 | @fa-var-train: "\f238";
618 | @fa-var-transgender: "\f224";
619 | @fa-var-transgender-alt: "\f225";
620 | @fa-var-trash: "\f1f8";
621 | @fa-var-trash-o: "\f014";
622 | @fa-var-tree: "\f1bb";
623 | @fa-var-trello: "\f181";
624 | @fa-var-tripadvisor: "\f262";
625 | @fa-var-trophy: "\f091";
626 | @fa-var-truck: "\f0d1";
627 | @fa-var-try: "\f195";
628 | @fa-var-tty: "\f1e4";
629 | @fa-var-tumblr: "\f173";
630 | @fa-var-tumblr-square: "\f174";
631 | @fa-var-turkish-lira: "\f195";
632 | @fa-var-tv: "\f26c";
633 | @fa-var-twitch: "\f1e8";
634 | @fa-var-twitter: "\f099";
635 | @fa-var-twitter-square: "\f081";
636 | @fa-var-umbrella: "\f0e9";
637 | @fa-var-underline: "\f0cd";
638 | @fa-var-undo: "\f0e2";
639 | @fa-var-university: "\f19c";
640 | @fa-var-unlink: "\f127";
641 | @fa-var-unlock: "\f09c";
642 | @fa-var-unlock-alt: "\f13e";
643 | @fa-var-unsorted: "\f0dc";
644 | @fa-var-upload: "\f093";
645 | @fa-var-usd: "\f155";
646 | @fa-var-user: "\f007";
647 | @fa-var-user-md: "\f0f0";
648 | @fa-var-user-plus: "\f234";
649 | @fa-var-user-secret: "\f21b";
650 | @fa-var-user-times: "\f235";
651 | @fa-var-users: "\f0c0";
652 | @fa-var-venus: "\f221";
653 | @fa-var-venus-double: "\f226";
654 | @fa-var-venus-mars: "\f228";
655 | @fa-var-viacoin: "\f237";
656 | @fa-var-video-camera: "\f03d";
657 | @fa-var-vimeo: "\f27d";
658 | @fa-var-vimeo-square: "\f194";
659 | @fa-var-vine: "\f1ca";
660 | @fa-var-vk: "\f189";
661 | @fa-var-volume-down: "\f027";
662 | @fa-var-volume-off: "\f026";
663 | @fa-var-volume-up: "\f028";
664 | @fa-var-warning: "\f071";
665 | @fa-var-wechat: "\f1d7";
666 | @fa-var-weibo: "\f18a";
667 | @fa-var-weixin: "\f1d7";
668 | @fa-var-whatsapp: "\f232";
669 | @fa-var-wheelchair: "\f193";
670 | @fa-var-wifi: "\f1eb";
671 | @fa-var-wikipedia-w: "\f266";
672 | @fa-var-windows: "\f17a";
673 | @fa-var-won: "\f159";
674 | @fa-var-wordpress: "\f19a";
675 | @fa-var-wrench: "\f0ad";
676 | @fa-var-xing: "\f168";
677 | @fa-var-xing-square: "\f169";
678 | @fa-var-y-combinator: "\f23b";
679 | @fa-var-y-combinator-square: "\f1d4";
680 | @fa-var-yahoo: "\f19e";
681 | @fa-var-yc: "\f23b";
682 | @fa-var-yc-square: "\f1d4";
683 | @fa-var-yelp: "\f1e9";
684 | @fa-var-yen: "\f157";
685 | @fa-var-youtube: "\f167";
686 | @fa-var-youtube-play: "\f16a";
687 | @fa-var-youtube-square: "\f166";
688 |
689 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_animated.scss:
--------------------------------------------------------------------------------
1 | // Spinning Icons
2 | // --------------------------
3 |
4 | .#{$fa-css-prefix}-spin {
5 | -webkit-animation: fa-spin 2s infinite linear;
6 | animation: fa-spin 2s infinite linear;
7 | }
8 |
9 | .#{$fa-css-prefix}-pulse {
10 | -webkit-animation: fa-spin 1s infinite steps(8);
11 | animation: fa-spin 1s infinite steps(8);
12 | }
13 |
14 | @-webkit-keyframes fa-spin {
15 | 0% {
16 | -webkit-transform: rotate(0deg);
17 | transform: rotate(0deg);
18 | }
19 | 100% {
20 | -webkit-transform: rotate(359deg);
21 | transform: rotate(359deg);
22 | }
23 | }
24 |
25 | @keyframes fa-spin {
26 | 0% {
27 | -webkit-transform: rotate(0deg);
28 | transform: rotate(0deg);
29 | }
30 | 100% {
31 | -webkit-transform: rotate(359deg);
32 | transform: rotate(359deg);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_bordered-pulled.scss:
--------------------------------------------------------------------------------
1 | // Bordered & Pulled
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-border {
5 | padding: .2em .25em .15em;
6 | border: solid .08em $fa-border-color;
7 | border-radius: .1em;
8 | }
9 |
10 | .#{$fa-css-prefix}-pull-left { float: left; }
11 | .#{$fa-css-prefix}-pull-right { float: right; }
12 |
13 | .#{$fa-css-prefix} {
14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; }
15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; }
16 | }
17 |
18 | /* Deprecated as of 4.4.0 */
19 | .pull-right { float: right; }
20 | .pull-left { float: left; }
21 |
22 | .#{$fa-css-prefix} {
23 | &.pull-left { margin-right: .3em; }
24 | &.pull-right { margin-left: .3em; }
25 | }
26 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_core.scss:
--------------------------------------------------------------------------------
1 | // Base Class Definition
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix} {
5 | display: inline-block;
6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration
7 | font-size: inherit; // can't have font-size inherit on line above, so need to override
8 | text-rendering: auto; // optimizelegibility throws things off #1094
9 | -webkit-font-smoothing: antialiased;
10 | -moz-osx-font-smoothing: grayscale;
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_fixed-width.scss:
--------------------------------------------------------------------------------
1 | // Fixed Width Icons
2 | // -------------------------
3 | .#{$fa-css-prefix}-fw {
4 | width: (18em / 14);
5 | text-align: center;
6 | }
7 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_larger.scss:
--------------------------------------------------------------------------------
1 | // Icon Sizes
2 | // -------------------------
3 |
4 | /* makes the font 33% larger relative to the icon container */
5 | .#{$fa-css-prefix}-lg {
6 | font-size: (4em / 3);
7 | line-height: (3em / 4);
8 | vertical-align: -15%;
9 | }
10 | .#{$fa-css-prefix}-2x { font-size: 2em; }
11 | .#{$fa-css-prefix}-3x { font-size: 3em; }
12 | .#{$fa-css-prefix}-4x { font-size: 4em; }
13 | .#{$fa-css-prefix}-5x { font-size: 5em; }
14 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_list.scss:
--------------------------------------------------------------------------------
1 | // List Icons
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-ul {
5 | padding-left: 0;
6 | margin-left: $fa-li-width;
7 | list-style-type: none;
8 | > li { position: relative; }
9 | }
10 | .#{$fa-css-prefix}-li {
11 | position: absolute;
12 | left: -$fa-li-width;
13 | width: $fa-li-width;
14 | top: (2em / 14);
15 | text-align: center;
16 | &.#{$fa-css-prefix}-lg {
17 | left: -$fa-li-width + (4em / 14);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_mixins.scss:
--------------------------------------------------------------------------------
1 | // Mixins
2 | // --------------------------
3 |
4 | @mixin fa-icon() {
5 | display: inline-block;
6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration
7 | font-size: inherit; // can't have font-size inherit on line above, so need to override
8 | text-rendering: auto; // optimizelegibility throws things off #1094
9 | -webkit-font-smoothing: antialiased;
10 | -moz-osx-font-smoothing: grayscale;
11 |
12 | }
13 |
14 | @mixin fa-icon-rotate($degrees, $rotation) {
15 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation});
16 | -webkit-transform: rotate($degrees);
17 | -ms-transform: rotate($degrees);
18 | transform: rotate($degrees);
19 | }
20 |
21 | @mixin fa-icon-flip($horiz, $vert, $rotation) {
22 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation});
23 | -webkit-transform: scale($horiz, $vert);
24 | -ms-transform: scale($horiz, $vert);
25 | transform: scale($horiz, $vert);
26 | }
27 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_path.scss:
--------------------------------------------------------------------------------
1 | /* FONT PATH
2 | * -------------------------- */
3 |
4 | @font-face {
5 | font-family: 'FontAwesome';
6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}');
7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'),
8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'),
9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'),
10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'),
11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg');
12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts
13 | font-weight: normal;
14 | font-style: normal;
15 | }
16 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_rotated-flipped.scss:
--------------------------------------------------------------------------------
1 | // Rotated & Flipped Icons
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); }
5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); }
6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); }
7 |
8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); }
9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); }
10 |
11 | // Hook for IE8-9
12 | // -------------------------
13 |
14 | :root .#{$fa-css-prefix}-rotate-90,
15 | :root .#{$fa-css-prefix}-rotate-180,
16 | :root .#{$fa-css-prefix}-rotate-270,
17 | :root .#{$fa-css-prefix}-flip-horizontal,
18 | :root .#{$fa-css-prefix}-flip-vertical {
19 | filter: none;
20 | }
21 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_stacked.scss:
--------------------------------------------------------------------------------
1 | // Stacked Icons
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-stack {
5 | position: relative;
6 | display: inline-block;
7 | width: 2em;
8 | height: 2em;
9 | line-height: 2em;
10 | vertical-align: middle;
11 | }
12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x {
13 | position: absolute;
14 | left: 0;
15 | width: 100%;
16 | text-align: center;
17 | }
18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; }
19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; }
20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; }
21 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/_variables.scss:
--------------------------------------------------------------------------------
1 | // Variables
2 | // --------------------------
3 |
4 | $fa-font-path: "../fonts" !default;
5 | $fa-font-size-base: 14px !default;
6 | $fa-line-height-base: 1 !default;
7 | //$fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.4.0/fonts" !default; // for referencing Bootstrap CDN font files directly
8 | $fa-css-prefix: fa !default;
9 | $fa-version: "4.4.0" !default;
10 | $fa-border-color: #eee !default;
11 | $fa-inverse: #fff !default;
12 | $fa-li-width: (30em / 14) !default;
13 |
14 | $fa-var-500px: "\f26e";
15 | $fa-var-adjust: "\f042";
16 | $fa-var-adn: "\f170";
17 | $fa-var-align-center: "\f037";
18 | $fa-var-align-justify: "\f039";
19 | $fa-var-align-left: "\f036";
20 | $fa-var-align-right: "\f038";
21 | $fa-var-amazon: "\f270";
22 | $fa-var-ambulance: "\f0f9";
23 | $fa-var-anchor: "\f13d";
24 | $fa-var-android: "\f17b";
25 | $fa-var-angellist: "\f209";
26 | $fa-var-angle-double-down: "\f103";
27 | $fa-var-angle-double-left: "\f100";
28 | $fa-var-angle-double-right: "\f101";
29 | $fa-var-angle-double-up: "\f102";
30 | $fa-var-angle-down: "\f107";
31 | $fa-var-angle-left: "\f104";
32 | $fa-var-angle-right: "\f105";
33 | $fa-var-angle-up: "\f106";
34 | $fa-var-apple: "\f179";
35 | $fa-var-archive: "\f187";
36 | $fa-var-area-chart: "\f1fe";
37 | $fa-var-arrow-circle-down: "\f0ab";
38 | $fa-var-arrow-circle-left: "\f0a8";
39 | $fa-var-arrow-circle-o-down: "\f01a";
40 | $fa-var-arrow-circle-o-left: "\f190";
41 | $fa-var-arrow-circle-o-right: "\f18e";
42 | $fa-var-arrow-circle-o-up: "\f01b";
43 | $fa-var-arrow-circle-right: "\f0a9";
44 | $fa-var-arrow-circle-up: "\f0aa";
45 | $fa-var-arrow-down: "\f063";
46 | $fa-var-arrow-left: "\f060";
47 | $fa-var-arrow-right: "\f061";
48 | $fa-var-arrow-up: "\f062";
49 | $fa-var-arrows: "\f047";
50 | $fa-var-arrows-alt: "\f0b2";
51 | $fa-var-arrows-h: "\f07e";
52 | $fa-var-arrows-v: "\f07d";
53 | $fa-var-asterisk: "\f069";
54 | $fa-var-at: "\f1fa";
55 | $fa-var-automobile: "\f1b9";
56 | $fa-var-backward: "\f04a";
57 | $fa-var-balance-scale: "\f24e";
58 | $fa-var-ban: "\f05e";
59 | $fa-var-bank: "\f19c";
60 | $fa-var-bar-chart: "\f080";
61 | $fa-var-bar-chart-o: "\f080";
62 | $fa-var-barcode: "\f02a";
63 | $fa-var-bars: "\f0c9";
64 | $fa-var-battery-0: "\f244";
65 | $fa-var-battery-1: "\f243";
66 | $fa-var-battery-2: "\f242";
67 | $fa-var-battery-3: "\f241";
68 | $fa-var-battery-4: "\f240";
69 | $fa-var-battery-empty: "\f244";
70 | $fa-var-battery-full: "\f240";
71 | $fa-var-battery-half: "\f242";
72 | $fa-var-battery-quarter: "\f243";
73 | $fa-var-battery-three-quarters: "\f241";
74 | $fa-var-bed: "\f236";
75 | $fa-var-beer: "\f0fc";
76 | $fa-var-behance: "\f1b4";
77 | $fa-var-behance-square: "\f1b5";
78 | $fa-var-bell: "\f0f3";
79 | $fa-var-bell-o: "\f0a2";
80 | $fa-var-bell-slash: "\f1f6";
81 | $fa-var-bell-slash-o: "\f1f7";
82 | $fa-var-bicycle: "\f206";
83 | $fa-var-binoculars: "\f1e5";
84 | $fa-var-birthday-cake: "\f1fd";
85 | $fa-var-bitbucket: "\f171";
86 | $fa-var-bitbucket-square: "\f172";
87 | $fa-var-bitcoin: "\f15a";
88 | $fa-var-black-tie: "\f27e";
89 | $fa-var-bold: "\f032";
90 | $fa-var-bolt: "\f0e7";
91 | $fa-var-bomb: "\f1e2";
92 | $fa-var-book: "\f02d";
93 | $fa-var-bookmark: "\f02e";
94 | $fa-var-bookmark-o: "\f097";
95 | $fa-var-briefcase: "\f0b1";
96 | $fa-var-btc: "\f15a";
97 | $fa-var-bug: "\f188";
98 | $fa-var-building: "\f1ad";
99 | $fa-var-building-o: "\f0f7";
100 | $fa-var-bullhorn: "\f0a1";
101 | $fa-var-bullseye: "\f140";
102 | $fa-var-bus: "\f207";
103 | $fa-var-buysellads: "\f20d";
104 | $fa-var-cab: "\f1ba";
105 | $fa-var-calculator: "\f1ec";
106 | $fa-var-calendar: "\f073";
107 | $fa-var-calendar-check-o: "\f274";
108 | $fa-var-calendar-minus-o: "\f272";
109 | $fa-var-calendar-o: "\f133";
110 | $fa-var-calendar-plus-o: "\f271";
111 | $fa-var-calendar-times-o: "\f273";
112 | $fa-var-camera: "\f030";
113 | $fa-var-camera-retro: "\f083";
114 | $fa-var-car: "\f1b9";
115 | $fa-var-caret-down: "\f0d7";
116 | $fa-var-caret-left: "\f0d9";
117 | $fa-var-caret-right: "\f0da";
118 | $fa-var-caret-square-o-down: "\f150";
119 | $fa-var-caret-square-o-left: "\f191";
120 | $fa-var-caret-square-o-right: "\f152";
121 | $fa-var-caret-square-o-up: "\f151";
122 | $fa-var-caret-up: "\f0d8";
123 | $fa-var-cart-arrow-down: "\f218";
124 | $fa-var-cart-plus: "\f217";
125 | $fa-var-cc: "\f20a";
126 | $fa-var-cc-amex: "\f1f3";
127 | $fa-var-cc-diners-club: "\f24c";
128 | $fa-var-cc-discover: "\f1f2";
129 | $fa-var-cc-jcb: "\f24b";
130 | $fa-var-cc-mastercard: "\f1f1";
131 | $fa-var-cc-paypal: "\f1f4";
132 | $fa-var-cc-stripe: "\f1f5";
133 | $fa-var-cc-visa: "\f1f0";
134 | $fa-var-certificate: "\f0a3";
135 | $fa-var-chain: "\f0c1";
136 | $fa-var-chain-broken: "\f127";
137 | $fa-var-check: "\f00c";
138 | $fa-var-check-circle: "\f058";
139 | $fa-var-check-circle-o: "\f05d";
140 | $fa-var-check-square: "\f14a";
141 | $fa-var-check-square-o: "\f046";
142 | $fa-var-chevron-circle-down: "\f13a";
143 | $fa-var-chevron-circle-left: "\f137";
144 | $fa-var-chevron-circle-right: "\f138";
145 | $fa-var-chevron-circle-up: "\f139";
146 | $fa-var-chevron-down: "\f078";
147 | $fa-var-chevron-left: "\f053";
148 | $fa-var-chevron-right: "\f054";
149 | $fa-var-chevron-up: "\f077";
150 | $fa-var-child: "\f1ae";
151 | $fa-var-chrome: "\f268";
152 | $fa-var-circle: "\f111";
153 | $fa-var-circle-o: "\f10c";
154 | $fa-var-circle-o-notch: "\f1ce";
155 | $fa-var-circle-thin: "\f1db";
156 | $fa-var-clipboard: "\f0ea";
157 | $fa-var-clock-o: "\f017";
158 | $fa-var-clone: "\f24d";
159 | $fa-var-close: "\f00d";
160 | $fa-var-cloud: "\f0c2";
161 | $fa-var-cloud-download: "\f0ed";
162 | $fa-var-cloud-upload: "\f0ee";
163 | $fa-var-cny: "\f157";
164 | $fa-var-code: "\f121";
165 | $fa-var-code-fork: "\f126";
166 | $fa-var-codepen: "\f1cb";
167 | $fa-var-coffee: "\f0f4";
168 | $fa-var-cog: "\f013";
169 | $fa-var-cogs: "\f085";
170 | $fa-var-columns: "\f0db";
171 | $fa-var-comment: "\f075";
172 | $fa-var-comment-o: "\f0e5";
173 | $fa-var-commenting: "\f27a";
174 | $fa-var-commenting-o: "\f27b";
175 | $fa-var-comments: "\f086";
176 | $fa-var-comments-o: "\f0e6";
177 | $fa-var-compass: "\f14e";
178 | $fa-var-compress: "\f066";
179 | $fa-var-connectdevelop: "\f20e";
180 | $fa-var-contao: "\f26d";
181 | $fa-var-copy: "\f0c5";
182 | $fa-var-copyright: "\f1f9";
183 | $fa-var-creative-commons: "\f25e";
184 | $fa-var-credit-card: "\f09d";
185 | $fa-var-crop: "\f125";
186 | $fa-var-crosshairs: "\f05b";
187 | $fa-var-css3: "\f13c";
188 | $fa-var-cube: "\f1b2";
189 | $fa-var-cubes: "\f1b3";
190 | $fa-var-cut: "\f0c4";
191 | $fa-var-cutlery: "\f0f5";
192 | $fa-var-dashboard: "\f0e4";
193 | $fa-var-dashcube: "\f210";
194 | $fa-var-database: "\f1c0";
195 | $fa-var-dedent: "\f03b";
196 | $fa-var-delicious: "\f1a5";
197 | $fa-var-desktop: "\f108";
198 | $fa-var-deviantart: "\f1bd";
199 | $fa-var-diamond: "\f219";
200 | $fa-var-digg: "\f1a6";
201 | $fa-var-dollar: "\f155";
202 | $fa-var-dot-circle-o: "\f192";
203 | $fa-var-download: "\f019";
204 | $fa-var-dribbble: "\f17d";
205 | $fa-var-dropbox: "\f16b";
206 | $fa-var-drupal: "\f1a9";
207 | $fa-var-edit: "\f044";
208 | $fa-var-eject: "\f052";
209 | $fa-var-ellipsis-h: "\f141";
210 | $fa-var-ellipsis-v: "\f142";
211 | $fa-var-empire: "\f1d1";
212 | $fa-var-envelope: "\f0e0";
213 | $fa-var-envelope-o: "\f003";
214 | $fa-var-envelope-square: "\f199";
215 | $fa-var-eraser: "\f12d";
216 | $fa-var-eur: "\f153";
217 | $fa-var-euro: "\f153";
218 | $fa-var-exchange: "\f0ec";
219 | $fa-var-exclamation: "\f12a";
220 | $fa-var-exclamation-circle: "\f06a";
221 | $fa-var-exclamation-triangle: "\f071";
222 | $fa-var-expand: "\f065";
223 | $fa-var-expeditedssl: "\f23e";
224 | $fa-var-external-link: "\f08e";
225 | $fa-var-external-link-square: "\f14c";
226 | $fa-var-eye: "\f06e";
227 | $fa-var-eye-slash: "\f070";
228 | $fa-var-eyedropper: "\f1fb";
229 | $fa-var-facebook: "\f09a";
230 | $fa-var-facebook-f: "\f09a";
231 | $fa-var-facebook-official: "\f230";
232 | $fa-var-facebook-square: "\f082";
233 | $fa-var-fast-backward: "\f049";
234 | $fa-var-fast-forward: "\f050";
235 | $fa-var-fax: "\f1ac";
236 | $fa-var-feed: "\f09e";
237 | $fa-var-female: "\f182";
238 | $fa-var-fighter-jet: "\f0fb";
239 | $fa-var-file: "\f15b";
240 | $fa-var-file-archive-o: "\f1c6";
241 | $fa-var-file-audio-o: "\f1c7";
242 | $fa-var-file-code-o: "\f1c9";
243 | $fa-var-file-excel-o: "\f1c3";
244 | $fa-var-file-image-o: "\f1c5";
245 | $fa-var-file-movie-o: "\f1c8";
246 | $fa-var-file-o: "\f016";
247 | $fa-var-file-pdf-o: "\f1c1";
248 | $fa-var-file-photo-o: "\f1c5";
249 | $fa-var-file-picture-o: "\f1c5";
250 | $fa-var-file-powerpoint-o: "\f1c4";
251 | $fa-var-file-sound-o: "\f1c7";
252 | $fa-var-file-text: "\f15c";
253 | $fa-var-file-text-o: "\f0f6";
254 | $fa-var-file-video-o: "\f1c8";
255 | $fa-var-file-word-o: "\f1c2";
256 | $fa-var-file-zip-o: "\f1c6";
257 | $fa-var-files-o: "\f0c5";
258 | $fa-var-film: "\f008";
259 | $fa-var-filter: "\f0b0";
260 | $fa-var-fire: "\f06d";
261 | $fa-var-fire-extinguisher: "\f134";
262 | $fa-var-firefox: "\f269";
263 | $fa-var-flag: "\f024";
264 | $fa-var-flag-checkered: "\f11e";
265 | $fa-var-flag-o: "\f11d";
266 | $fa-var-flash: "\f0e7";
267 | $fa-var-flask: "\f0c3";
268 | $fa-var-flickr: "\f16e";
269 | $fa-var-floppy-o: "\f0c7";
270 | $fa-var-folder: "\f07b";
271 | $fa-var-folder-o: "\f114";
272 | $fa-var-folder-open: "\f07c";
273 | $fa-var-folder-open-o: "\f115";
274 | $fa-var-font: "\f031";
275 | $fa-var-fonticons: "\f280";
276 | $fa-var-forumbee: "\f211";
277 | $fa-var-forward: "\f04e";
278 | $fa-var-foursquare: "\f180";
279 | $fa-var-frown-o: "\f119";
280 | $fa-var-futbol-o: "\f1e3";
281 | $fa-var-gamepad: "\f11b";
282 | $fa-var-gavel: "\f0e3";
283 | $fa-var-gbp: "\f154";
284 | $fa-var-ge: "\f1d1";
285 | $fa-var-gear: "\f013";
286 | $fa-var-gears: "\f085";
287 | $fa-var-genderless: "\f22d";
288 | $fa-var-get-pocket: "\f265";
289 | $fa-var-gg: "\f260";
290 | $fa-var-gg-circle: "\f261";
291 | $fa-var-gift: "\f06b";
292 | $fa-var-git: "\f1d3";
293 | $fa-var-git-square: "\f1d2";
294 | $fa-var-github: "\f09b";
295 | $fa-var-github-alt: "\f113";
296 | $fa-var-github-square: "\f092";
297 | $fa-var-gittip: "\f184";
298 | $fa-var-glass: "\f000";
299 | $fa-var-globe: "\f0ac";
300 | $fa-var-google: "\f1a0";
301 | $fa-var-google-plus: "\f0d5";
302 | $fa-var-google-plus-square: "\f0d4";
303 | $fa-var-google-wallet: "\f1ee";
304 | $fa-var-graduation-cap: "\f19d";
305 | $fa-var-gratipay: "\f184";
306 | $fa-var-group: "\f0c0";
307 | $fa-var-h-square: "\f0fd";
308 | $fa-var-hacker-news: "\f1d4";
309 | $fa-var-hand-grab-o: "\f255";
310 | $fa-var-hand-lizard-o: "\f258";
311 | $fa-var-hand-o-down: "\f0a7";
312 | $fa-var-hand-o-left: "\f0a5";
313 | $fa-var-hand-o-right: "\f0a4";
314 | $fa-var-hand-o-up: "\f0a6";
315 | $fa-var-hand-paper-o: "\f256";
316 | $fa-var-hand-peace-o: "\f25b";
317 | $fa-var-hand-pointer-o: "\f25a";
318 | $fa-var-hand-rock-o: "\f255";
319 | $fa-var-hand-scissors-o: "\f257";
320 | $fa-var-hand-spock-o: "\f259";
321 | $fa-var-hand-stop-o: "\f256";
322 | $fa-var-hdd-o: "\f0a0";
323 | $fa-var-header: "\f1dc";
324 | $fa-var-headphones: "\f025";
325 | $fa-var-heart: "\f004";
326 | $fa-var-heart-o: "\f08a";
327 | $fa-var-heartbeat: "\f21e";
328 | $fa-var-history: "\f1da";
329 | $fa-var-home: "\f015";
330 | $fa-var-hospital-o: "\f0f8";
331 | $fa-var-hotel: "\f236";
332 | $fa-var-hourglass: "\f254";
333 | $fa-var-hourglass-1: "\f251";
334 | $fa-var-hourglass-2: "\f252";
335 | $fa-var-hourglass-3: "\f253";
336 | $fa-var-hourglass-end: "\f253";
337 | $fa-var-hourglass-half: "\f252";
338 | $fa-var-hourglass-o: "\f250";
339 | $fa-var-hourglass-start: "\f251";
340 | $fa-var-houzz: "\f27c";
341 | $fa-var-html5: "\f13b";
342 | $fa-var-i-cursor: "\f246";
343 | $fa-var-ils: "\f20b";
344 | $fa-var-image: "\f03e";
345 | $fa-var-inbox: "\f01c";
346 | $fa-var-indent: "\f03c";
347 | $fa-var-industry: "\f275";
348 | $fa-var-info: "\f129";
349 | $fa-var-info-circle: "\f05a";
350 | $fa-var-inr: "\f156";
351 | $fa-var-instagram: "\f16d";
352 | $fa-var-institution: "\f19c";
353 | $fa-var-internet-explorer: "\f26b";
354 | $fa-var-intersex: "\f224";
355 | $fa-var-ioxhost: "\f208";
356 | $fa-var-italic: "\f033";
357 | $fa-var-joomla: "\f1aa";
358 | $fa-var-jpy: "\f157";
359 | $fa-var-jsfiddle: "\f1cc";
360 | $fa-var-key: "\f084";
361 | $fa-var-keyboard-o: "\f11c";
362 | $fa-var-krw: "\f159";
363 | $fa-var-language: "\f1ab";
364 | $fa-var-laptop: "\f109";
365 | $fa-var-lastfm: "\f202";
366 | $fa-var-lastfm-square: "\f203";
367 | $fa-var-leaf: "\f06c";
368 | $fa-var-leanpub: "\f212";
369 | $fa-var-legal: "\f0e3";
370 | $fa-var-lemon-o: "\f094";
371 | $fa-var-level-down: "\f149";
372 | $fa-var-level-up: "\f148";
373 | $fa-var-life-bouy: "\f1cd";
374 | $fa-var-life-buoy: "\f1cd";
375 | $fa-var-life-ring: "\f1cd";
376 | $fa-var-life-saver: "\f1cd";
377 | $fa-var-lightbulb-o: "\f0eb";
378 | $fa-var-line-chart: "\f201";
379 | $fa-var-link: "\f0c1";
380 | $fa-var-linkedin: "\f0e1";
381 | $fa-var-linkedin-square: "\f08c";
382 | $fa-var-linux: "\f17c";
383 | $fa-var-list: "\f03a";
384 | $fa-var-list-alt: "\f022";
385 | $fa-var-list-ol: "\f0cb";
386 | $fa-var-list-ul: "\f0ca";
387 | $fa-var-location-arrow: "\f124";
388 | $fa-var-lock: "\f023";
389 | $fa-var-long-arrow-down: "\f175";
390 | $fa-var-long-arrow-left: "\f177";
391 | $fa-var-long-arrow-right: "\f178";
392 | $fa-var-long-arrow-up: "\f176";
393 | $fa-var-magic: "\f0d0";
394 | $fa-var-magnet: "\f076";
395 | $fa-var-mail-forward: "\f064";
396 | $fa-var-mail-reply: "\f112";
397 | $fa-var-mail-reply-all: "\f122";
398 | $fa-var-male: "\f183";
399 | $fa-var-map: "\f279";
400 | $fa-var-map-marker: "\f041";
401 | $fa-var-map-o: "\f278";
402 | $fa-var-map-pin: "\f276";
403 | $fa-var-map-signs: "\f277";
404 | $fa-var-mars: "\f222";
405 | $fa-var-mars-double: "\f227";
406 | $fa-var-mars-stroke: "\f229";
407 | $fa-var-mars-stroke-h: "\f22b";
408 | $fa-var-mars-stroke-v: "\f22a";
409 | $fa-var-maxcdn: "\f136";
410 | $fa-var-meanpath: "\f20c";
411 | $fa-var-medium: "\f23a";
412 | $fa-var-medkit: "\f0fa";
413 | $fa-var-meh-o: "\f11a";
414 | $fa-var-mercury: "\f223";
415 | $fa-var-microphone: "\f130";
416 | $fa-var-microphone-slash: "\f131";
417 | $fa-var-minus: "\f068";
418 | $fa-var-minus-circle: "\f056";
419 | $fa-var-minus-square: "\f146";
420 | $fa-var-minus-square-o: "\f147";
421 | $fa-var-mobile: "\f10b";
422 | $fa-var-mobile-phone: "\f10b";
423 | $fa-var-money: "\f0d6";
424 | $fa-var-moon-o: "\f186";
425 | $fa-var-mortar-board: "\f19d";
426 | $fa-var-motorcycle: "\f21c";
427 | $fa-var-mouse-pointer: "\f245";
428 | $fa-var-music: "\f001";
429 | $fa-var-navicon: "\f0c9";
430 | $fa-var-neuter: "\f22c";
431 | $fa-var-newspaper-o: "\f1ea";
432 | $fa-var-object-group: "\f247";
433 | $fa-var-object-ungroup: "\f248";
434 | $fa-var-odnoklassniki: "\f263";
435 | $fa-var-odnoklassniki-square: "\f264";
436 | $fa-var-opencart: "\f23d";
437 | $fa-var-openid: "\f19b";
438 | $fa-var-opera: "\f26a";
439 | $fa-var-optin-monster: "\f23c";
440 | $fa-var-outdent: "\f03b";
441 | $fa-var-pagelines: "\f18c";
442 | $fa-var-paint-brush: "\f1fc";
443 | $fa-var-paper-plane: "\f1d8";
444 | $fa-var-paper-plane-o: "\f1d9";
445 | $fa-var-paperclip: "\f0c6";
446 | $fa-var-paragraph: "\f1dd";
447 | $fa-var-paste: "\f0ea";
448 | $fa-var-pause: "\f04c";
449 | $fa-var-paw: "\f1b0";
450 | $fa-var-paypal: "\f1ed";
451 | $fa-var-pencil: "\f040";
452 | $fa-var-pencil-square: "\f14b";
453 | $fa-var-pencil-square-o: "\f044";
454 | $fa-var-phone: "\f095";
455 | $fa-var-phone-square: "\f098";
456 | $fa-var-photo: "\f03e";
457 | $fa-var-picture-o: "\f03e";
458 | $fa-var-pie-chart: "\f200";
459 | $fa-var-pied-piper: "\f1a7";
460 | $fa-var-pied-piper-alt: "\f1a8";
461 | $fa-var-pinterest: "\f0d2";
462 | $fa-var-pinterest-p: "\f231";
463 | $fa-var-pinterest-square: "\f0d3";
464 | $fa-var-plane: "\f072";
465 | $fa-var-play: "\f04b";
466 | $fa-var-play-circle: "\f144";
467 | $fa-var-play-circle-o: "\f01d";
468 | $fa-var-plug: "\f1e6";
469 | $fa-var-plus: "\f067";
470 | $fa-var-plus-circle: "\f055";
471 | $fa-var-plus-square: "\f0fe";
472 | $fa-var-plus-square-o: "\f196";
473 | $fa-var-power-off: "\f011";
474 | $fa-var-print: "\f02f";
475 | $fa-var-puzzle-piece: "\f12e";
476 | $fa-var-qq: "\f1d6";
477 | $fa-var-qrcode: "\f029";
478 | $fa-var-question: "\f128";
479 | $fa-var-question-circle: "\f059";
480 | $fa-var-quote-left: "\f10d";
481 | $fa-var-quote-right: "\f10e";
482 | $fa-var-ra: "\f1d0";
483 | $fa-var-random: "\f074";
484 | $fa-var-rebel: "\f1d0";
485 | $fa-var-recycle: "\f1b8";
486 | $fa-var-reddit: "\f1a1";
487 | $fa-var-reddit-square: "\f1a2";
488 | $fa-var-refresh: "\f021";
489 | $fa-var-registered: "\f25d";
490 | $fa-var-remove: "\f00d";
491 | $fa-var-renren: "\f18b";
492 | $fa-var-reorder: "\f0c9";
493 | $fa-var-repeat: "\f01e";
494 | $fa-var-reply: "\f112";
495 | $fa-var-reply-all: "\f122";
496 | $fa-var-retweet: "\f079";
497 | $fa-var-rmb: "\f157";
498 | $fa-var-road: "\f018";
499 | $fa-var-rocket: "\f135";
500 | $fa-var-rotate-left: "\f0e2";
501 | $fa-var-rotate-right: "\f01e";
502 | $fa-var-rouble: "\f158";
503 | $fa-var-rss: "\f09e";
504 | $fa-var-rss-square: "\f143";
505 | $fa-var-rub: "\f158";
506 | $fa-var-ruble: "\f158";
507 | $fa-var-rupee: "\f156";
508 | $fa-var-safari: "\f267";
509 | $fa-var-save: "\f0c7";
510 | $fa-var-scissors: "\f0c4";
511 | $fa-var-search: "\f002";
512 | $fa-var-search-minus: "\f010";
513 | $fa-var-search-plus: "\f00e";
514 | $fa-var-sellsy: "\f213";
515 | $fa-var-send: "\f1d8";
516 | $fa-var-send-o: "\f1d9";
517 | $fa-var-server: "\f233";
518 | $fa-var-share: "\f064";
519 | $fa-var-share-alt: "\f1e0";
520 | $fa-var-share-alt-square: "\f1e1";
521 | $fa-var-share-square: "\f14d";
522 | $fa-var-share-square-o: "\f045";
523 | $fa-var-shekel: "\f20b";
524 | $fa-var-sheqel: "\f20b";
525 | $fa-var-shield: "\f132";
526 | $fa-var-ship: "\f21a";
527 | $fa-var-shirtsinbulk: "\f214";
528 | $fa-var-shopping-cart: "\f07a";
529 | $fa-var-sign-in: "\f090";
530 | $fa-var-sign-out: "\f08b";
531 | $fa-var-signal: "\f012";
532 | $fa-var-simplybuilt: "\f215";
533 | $fa-var-sitemap: "\f0e8";
534 | $fa-var-skyatlas: "\f216";
535 | $fa-var-skype: "\f17e";
536 | $fa-var-slack: "\f198";
537 | $fa-var-sliders: "\f1de";
538 | $fa-var-slideshare: "\f1e7";
539 | $fa-var-smile-o: "\f118";
540 | $fa-var-soccer-ball-o: "\f1e3";
541 | $fa-var-sort: "\f0dc";
542 | $fa-var-sort-alpha-asc: "\f15d";
543 | $fa-var-sort-alpha-desc: "\f15e";
544 | $fa-var-sort-amount-asc: "\f160";
545 | $fa-var-sort-amount-desc: "\f161";
546 | $fa-var-sort-asc: "\f0de";
547 | $fa-var-sort-desc: "\f0dd";
548 | $fa-var-sort-down: "\f0dd";
549 | $fa-var-sort-numeric-asc: "\f162";
550 | $fa-var-sort-numeric-desc: "\f163";
551 | $fa-var-sort-up: "\f0de";
552 | $fa-var-soundcloud: "\f1be";
553 | $fa-var-space-shuttle: "\f197";
554 | $fa-var-spinner: "\f110";
555 | $fa-var-spoon: "\f1b1";
556 | $fa-var-spotify: "\f1bc";
557 | $fa-var-square: "\f0c8";
558 | $fa-var-square-o: "\f096";
559 | $fa-var-stack-exchange: "\f18d";
560 | $fa-var-stack-overflow: "\f16c";
561 | $fa-var-star: "\f005";
562 | $fa-var-star-half: "\f089";
563 | $fa-var-star-half-empty: "\f123";
564 | $fa-var-star-half-full: "\f123";
565 | $fa-var-star-half-o: "\f123";
566 | $fa-var-star-o: "\f006";
567 | $fa-var-steam: "\f1b6";
568 | $fa-var-steam-square: "\f1b7";
569 | $fa-var-step-backward: "\f048";
570 | $fa-var-step-forward: "\f051";
571 | $fa-var-stethoscope: "\f0f1";
572 | $fa-var-sticky-note: "\f249";
573 | $fa-var-sticky-note-o: "\f24a";
574 | $fa-var-stop: "\f04d";
575 | $fa-var-street-view: "\f21d";
576 | $fa-var-strikethrough: "\f0cc";
577 | $fa-var-stumbleupon: "\f1a4";
578 | $fa-var-stumbleupon-circle: "\f1a3";
579 | $fa-var-subscript: "\f12c";
580 | $fa-var-subway: "\f239";
581 | $fa-var-suitcase: "\f0f2";
582 | $fa-var-sun-o: "\f185";
583 | $fa-var-superscript: "\f12b";
584 | $fa-var-support: "\f1cd";
585 | $fa-var-table: "\f0ce";
586 | $fa-var-tablet: "\f10a";
587 | $fa-var-tachometer: "\f0e4";
588 | $fa-var-tag: "\f02b";
589 | $fa-var-tags: "\f02c";
590 | $fa-var-tasks: "\f0ae";
591 | $fa-var-taxi: "\f1ba";
592 | $fa-var-television: "\f26c";
593 | $fa-var-tencent-weibo: "\f1d5";
594 | $fa-var-terminal: "\f120";
595 | $fa-var-text-height: "\f034";
596 | $fa-var-text-width: "\f035";
597 | $fa-var-th: "\f00a";
598 | $fa-var-th-large: "\f009";
599 | $fa-var-th-list: "\f00b";
600 | $fa-var-thumb-tack: "\f08d";
601 | $fa-var-thumbs-down: "\f165";
602 | $fa-var-thumbs-o-down: "\f088";
603 | $fa-var-thumbs-o-up: "\f087";
604 | $fa-var-thumbs-up: "\f164";
605 | $fa-var-ticket: "\f145";
606 | $fa-var-times: "\f00d";
607 | $fa-var-times-circle: "\f057";
608 | $fa-var-times-circle-o: "\f05c";
609 | $fa-var-tint: "\f043";
610 | $fa-var-toggle-down: "\f150";
611 | $fa-var-toggle-left: "\f191";
612 | $fa-var-toggle-off: "\f204";
613 | $fa-var-toggle-on: "\f205";
614 | $fa-var-toggle-right: "\f152";
615 | $fa-var-toggle-up: "\f151";
616 | $fa-var-trademark: "\f25c";
617 | $fa-var-train: "\f238";
618 | $fa-var-transgender: "\f224";
619 | $fa-var-transgender-alt: "\f225";
620 | $fa-var-trash: "\f1f8";
621 | $fa-var-trash-o: "\f014";
622 | $fa-var-tree: "\f1bb";
623 | $fa-var-trello: "\f181";
624 | $fa-var-tripadvisor: "\f262";
625 | $fa-var-trophy: "\f091";
626 | $fa-var-truck: "\f0d1";
627 | $fa-var-try: "\f195";
628 | $fa-var-tty: "\f1e4";
629 | $fa-var-tumblr: "\f173";
630 | $fa-var-tumblr-square: "\f174";
631 | $fa-var-turkish-lira: "\f195";
632 | $fa-var-tv: "\f26c";
633 | $fa-var-twitch: "\f1e8";
634 | $fa-var-twitter: "\f099";
635 | $fa-var-twitter-square: "\f081";
636 | $fa-var-umbrella: "\f0e9";
637 | $fa-var-underline: "\f0cd";
638 | $fa-var-undo: "\f0e2";
639 | $fa-var-university: "\f19c";
640 | $fa-var-unlink: "\f127";
641 | $fa-var-unlock: "\f09c";
642 | $fa-var-unlock-alt: "\f13e";
643 | $fa-var-unsorted: "\f0dc";
644 | $fa-var-upload: "\f093";
645 | $fa-var-usd: "\f155";
646 | $fa-var-user: "\f007";
647 | $fa-var-user-md: "\f0f0";
648 | $fa-var-user-plus: "\f234";
649 | $fa-var-user-secret: "\f21b";
650 | $fa-var-user-times: "\f235";
651 | $fa-var-users: "\f0c0";
652 | $fa-var-venus: "\f221";
653 | $fa-var-venus-double: "\f226";
654 | $fa-var-venus-mars: "\f228";
655 | $fa-var-viacoin: "\f237";
656 | $fa-var-video-camera: "\f03d";
657 | $fa-var-vimeo: "\f27d";
658 | $fa-var-vimeo-square: "\f194";
659 | $fa-var-vine: "\f1ca";
660 | $fa-var-vk: "\f189";
661 | $fa-var-volume-down: "\f027";
662 | $fa-var-volume-off: "\f026";
663 | $fa-var-volume-up: "\f028";
664 | $fa-var-warning: "\f071";
665 | $fa-var-wechat: "\f1d7";
666 | $fa-var-weibo: "\f18a";
667 | $fa-var-weixin: "\f1d7";
668 | $fa-var-whatsapp: "\f232";
669 | $fa-var-wheelchair: "\f193";
670 | $fa-var-wifi: "\f1eb";
671 | $fa-var-wikipedia-w: "\f266";
672 | $fa-var-windows: "\f17a";
673 | $fa-var-won: "\f159";
674 | $fa-var-wordpress: "\f19a";
675 | $fa-var-wrench: "\f0ad";
676 | $fa-var-xing: "\f168";
677 | $fa-var-xing-square: "\f169";
678 | $fa-var-y-combinator: "\f23b";
679 | $fa-var-y-combinator-square: "\f1d4";
680 | $fa-var-yahoo: "\f19e";
681 | $fa-var-yc: "\f23b";
682 | $fa-var-yc-square: "\f1d4";
683 | $fa-var-yelp: "\f1e9";
684 | $fa-var-yen: "\f157";
685 | $fa-var-youtube: "\f167";
686 | $fa-var-youtube-play: "\f16a";
687 | $fa-var-youtube-square: "\f166";
688 |
689 |
--------------------------------------------------------------------------------
/font-awesome/font-awesome-4.4.0/scss/font-awesome.scss:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome
3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
4 | */
5 |
6 | @import "variables";
7 | @import "mixins";
8 | @import "path";
9 | @import "core";
10 | @import "larger";
11 | @import "fixed-width";
12 | @import "list";
13 | @import "bordered-pulled";
14 | @import "animated";
15 | @import "rotated-flipped";
16 | @import "stacked";
17 | @import "icons";
18 |
--------------------------------------------------------------------------------
/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/mic-animate.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/mic-animate.gif
--------------------------------------------------------------------------------
/mic-slash.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/mic-slash.gif
--------------------------------------------------------------------------------
/mic.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/mic.gif
--------------------------------------------------------------------------------
/navigation extract.txt:
--------------------------------------------------------------------------------
1 | function getPose(callbackPosition) {
2 | // ----------------------------------------------------------------------
3 | // Subscribing to the robot's Pose-- this method uses tfClient
4 | // Calls the callback with the stringified pose
5 | // ----------------------------------------------------------------------
6 | // A ROSLIB.TFClient object is used to subscribe to TFs from ROS. The fixedFrame
7 | // is the frame all requested transforms will be relative to.
8 | // The thresholds are the amount a TF must change in order to be republished.
9 | if (connected) {
10 | var tfClient = new ROSLIB.TFClient({
11 | ros : ros,
12 | fixedFrame : 'map',
13 | angularThres : 0.01, // threshold--smaller movements won't be reported
14 | transThres : 0.01
15 | });
16 | var msgString;
17 |
18 | // We subscribe to the TF between the fixed frame ('map') and the 'base_link' frame.
19 | // Any transforms between these two frames greater than the specified threshold will
20 | // trigger the callback. The message returned is a ROS TF message.
21 |
22 | tfClient.subscribe('base_link', function(message) {
23 | tfClient.unsubscribe('base_link'); // we only need this once
24 | msgString = JSON.stringify(message);
25 | console.log ("tfClient pose in " + tfClient.fixedFrame + ": " + msgString);
26 | callbackPosition (msgString);
27 | });
28 | }
29 | }
30 |
31 | function moveRobotToPose (movePose) {
32 | var prevStatus = "";
33 | var moveToPoseClient = new ROSLIB.ActionClient({
34 | // object with following keys: * ros - the ROSLIB.Ros connection handle * serverName - the action server name * actionName - the action message name * timeout - the timeout length when connecting to the action server
35 | ros : ros,
36 | serverName : 'move_base',
37 | actionName : 'move_base_msgs/MoveBaseAction'
38 | });
39 |
40 | var goal = new ROSLIB.Goal({
41 | actionClient : moveToPoseClient,
42 | goalMessage : {
43 | target_pose : {
44 | header : {
45 | frame_id : '/map'
46 | },
47 | pose : movePose // move_base_msg
48 | }
49 | }
50 | });
51 |
52 | goal.on('status', function(status) {
53 | statusString = 'Move to pose status: ' + JSON.stringify(status);
54 | if (statusString !== prevStatus) {
55 | prevStatus = statusString;
56 | if (status.status == 4) {
57 | say (status.text);
58 | }
59 | console.log (statusString);
60 | }
61 | // moveClient.cancel (); this does not stop the damn messages anyhow
62 | });
63 | goal.send();
64 | console.log ('moveRobotToPose goal sent');
65 | }
66 |
67 | function moveRobotFromPose (distance, angle) {
68 | if (connected) {
69 | var statusCount = 0;
70 | var prevStatus = "";
71 | var moveClient = new ROSLIB.ActionClient({
72 | ros : ros,
73 | serverName : 'move_base',
74 | actionName : 'move_base_msgs/MoveBaseAction'
75 | });
76 | function yawToQuaternion(yaw) {
77 | return { x : 0,
78 | y : 0,
79 | z : Math.sin (yaw/2),
80 | w : Math.cos (yaw/2)
81 | };
82 | }
83 | var goal = new ROSLIB.Goal({
84 | actionClient : moveClient,
85 | goalMessage : {
86 | target_pose : {
87 | header : {
88 | frame_id : '/base_link', // '/base_footprint', doesn't seem to work on Loki, tho it does on Stage
89 | },
90 | pose : {
91 | position : {
92 | x : distance,
93 | y : 0,
94 | z : 0
95 | },
96 | orientation : yawToQuaternion (angle)
97 | }
98 | }
99 | }
100 | });
101 |
102 | goal.on('status', function(status) {
103 | statusCount++;
104 | statusString = 'Move robot status: ' + JSON.stringify(status);
105 | if (statusString !== prevStatus) {
106 | prevStatus = statusString;
107 | if (status.status == 4) {
108 | say (status.text);
109 | }
110 | console.log (statusCount + ": " + statusString);
111 | }
112 | // moveClient.cancel (); this does not stop the damn messages
113 | });
114 |
115 | goal.send();
116 | }
117 | }
118 |
--------------------------------------------------------------------------------
/scripts/bootbox.min.js:
--------------------------------------------------------------------------------
1 | /**
2 | * bootbox.js v4.4.0
3 | *
4 | * http://bootboxjs.com/license.txt
5 | */
6 | !function(a,b){"use strict";"function"==typeof define&&define.amd?define(["jquery"],b):"object"==typeof exports?module.exports=b(require("jquery")):a.bootbox=b(a.jQuery)}(this,function a(b,c){"use strict";function d(a){var b=q[o.locale];return b?b[a]:q.en[a]}function e(a,c,d){a.stopPropagation(),a.preventDefault();var e=b.isFunction(d)&&d.call(c,a)===!1;e||c.modal("hide")}function f(a){var b,c=0;for(b in a)c++;return c}function g(a,c){var d=0;b.each(a,function(a,b){c(a,b,d++)})}function h(a){var c,d;if("object"!=typeof a)throw new Error("Please supply an object of options");if(!a.message)throw new Error("Please specify a message");return a=b.extend({},o,a),a.buttons||(a.buttons={}),c=a.buttons,d=f(c),g(c,function(a,e,f){if(b.isFunction(e)&&(e=c[a]={callback:e}),"object"!==b.type(e))throw new Error("button with key "+a+" must be an object");e.label||(e.label=a),e.className||(e.className=2>=d&&f===d-1?"btn-primary":"btn-default")}),a}function i(a,b){var c=a.length,d={};if(1>c||c>2)throw new Error("Invalid argument length");return 2===c||"string"==typeof a[0]?(d[b[0]]=a[0],d[b[1]]=a[1]):d=a[0],d}function j(a,c,d){return b.extend(!0,{},a,i(c,d))}function k(a,b,c,d){var e={className:"bootbox-"+a,buttons:l.apply(null,b)};return m(j(e,d,c),b)}function l(){for(var a={},b=0,c=arguments.length;c>b;b++){var e=arguments[b],f=e.toLowerCase(),g=e.toUpperCase();a[f]={label:d(g)}}return a}function m(a,b){var d={};return g(b,function(a,b){d[b]=!0}),g(a.buttons,function(a){if(d[a]===c)throw new Error("button key "+a+" is not allowed (options are "+b.join("\n")+")")}),a}var n={dialog:"",header:"",footer:"",closeButton:"",form:"",inputs:{text:"",textarea:"",email:"",select:"",checkbox:"",date:"",time:"",number:"",password:""}},o={locale:"en",backdrop:"static",animate:!0,className:null,closeButton:!0,show:!0,container:"body"},p={};p.alert=function(){var a;if(a=k("alert",["ok"],["message","callback"],arguments),a.callback&&!b.isFunction(a.callback))throw new Error("alert requires callback property to be a function when provided");return a.buttons.ok.callback=a.onEscape=function(){return b.isFunction(a.callback)?a.callback.call(this):!0},p.dialog(a)},p.confirm=function(){var a;if(a=k("confirm",["cancel","confirm"],["message","callback"],arguments),a.buttons.cancel.callback=a.onEscape=function(){return a.callback.call(this,!1)},a.buttons.confirm.callback=function(){return a.callback.call(this,!0)},!b.isFunction(a.callback))throw new Error("confirm requires a callback");return p.dialog(a)},p.prompt=function(){var a,d,e,f,h,i,k;if(f=b(n.form),d={className:"bootbox-prompt",buttons:l("cancel","confirm"),value:"",inputType:"text"},a=m(j(d,arguments,["title","callback"]),["cancel","confirm"]),i=a.show===c?!0:a.show,a.message=f,a.buttons.cancel.callback=a.onEscape=function(){return a.callback.call(this,null)},a.buttons.confirm.callback=function(){var c;switch(a.inputType){case"text":case"textarea":case"email":case"select":case"date":case"time":case"number":case"password":c=h.val();break;case"checkbox":var d=h.find("input:checked");c=[],g(d,function(a,d){c.push(b(d).val())})}return a.callback.call(this,c)},a.show=!1,!a.title)throw new Error("prompt requires a title");if(!b.isFunction(a.callback))throw new Error("prompt requires a callback");if(!n.inputs[a.inputType])throw new Error("invalid prompt type");switch(h=b(n.inputs[a.inputType]),a.inputType){case"text":case"textarea":case"email":case"date":case"time":case"number":case"password":h.val(a.value);break;case"select":var o={};if(k=a.inputOptions||[],!b.isArray(k))throw new Error("Please pass an array of input options");if(!k.length)throw new Error("prompt with select requires options");g(k,function(a,d){var e=h;if(d.value===c||d.text===c)throw new Error("given options in wrong format");d.group&&(o[d.group]||(o[d.group]=b("").attr("label",d.group)),e=o[d.group]),e.append("")}),g(o,function(a,b){h.append(b)}),h.val(a.value);break;case"checkbox":var q=b.isArray(a.value)?a.value:[a.value];if(k=a.inputOptions||[],!k.length)throw new Error("prompt with checkbox requires options");if(!k[0].value||!k[0].text)throw new Error("given options in wrong format");h=b(""),g(k,function(c,d){var e=b(n.inputs[a.inputType]);e.find("input").attr("value",d.value),e.find("label").append(d.text),g(q,function(a,b){b===d.value&&e.find("input").prop("checked",!0)}),h.append(e)})}return a.placeholder&&h.attr("placeholder",a.placeholder),a.pattern&&h.attr("pattern",a.pattern),a.maxlength&&h.attr("maxlength",a.maxlength),f.append(h),f.on("submit",function(a){a.preventDefault(),a.stopPropagation(),e.find(".btn-primary").click()}),e=p.dialog(a),e.off("shown.bs.modal"),e.on("shown.bs.modal",function(){h.focus()}),i===!0&&e.modal("show"),e},p.dialog=function(a){a=h(a);var d=b(n.dialog),f=d.find(".modal-dialog"),i=d.find(".modal-body"),j=a.buttons,k="",l={onEscape:a.onEscape};if(b.fn.modal===c)throw new Error("$.fn.modal is not defined; please double check you have included the Bootstrap JavaScript library. See http://getbootstrap.com/javascript/ for more details.");if(g(j,function(a,b){k+="",l[a]=b.callback}),i.find(".bootbox-body").html(a.message),a.animate===!0&&d.addClass("fade"),a.className&&d.addClass(a.className),"large"===a.size?f.addClass("modal-lg"):"small"===a.size&&f.addClass("modal-sm"),a.title&&i.before(n.header),a.closeButton){var m=b(n.closeButton);a.title?d.find(".modal-header").prepend(m):m.css("margin-top","-10px").prependTo(i)}return a.title&&d.find(".modal-title").html(a.title),k.length&&(i.after(n.footer),d.find(".modal-footer").html(k)),d.on("hidden.bs.modal",function(a){a.target===this&&d.remove()}),d.on("shown.bs.modal",function(){d.find(".btn-primary:first").focus()}),"static"!==a.backdrop&&d.on("click.dismiss.bs.modal",function(a){d.children(".modal-backdrop").length&&(a.currentTarget=d.children(".modal-backdrop").get(0)),a.target===a.currentTarget&&d.trigger("escape.close.bb")}),d.on("escape.close.bb",function(a){l.onEscape&&e(a,d,l.onEscape)}),d.on("click",".modal-footer button",function(a){var c=b(this).data("bb-handler");e(a,d,l[c])}),d.on("click",".bootbox-close-button",function(a){e(a,d,l.onEscape)}),d.on("keyup",function(a){27===a.which&&d.trigger("escape.close.bb")}),b(a.container).append(d),d.modal({backdrop:a.backdrop?"static":!1,keyboard:!1,show:!1}),a.show&&d.modal("show"),d},p.setDefaults=function(){var a={};2===arguments.length?a[arguments[0]]=arguments[1]:a=arguments[0],b.extend(o,a)},p.hideAll=function(){return b(".bootbox").modal("hide"),p};var q={bg_BG:{OK:"Ок",CANCEL:"Отказ",CONFIRM:"Потвърждавам"},br:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Sim"},cs:{OK:"OK",CANCEL:"Zrušit",CONFIRM:"Potvrdit"},da:{OK:"OK",CANCEL:"Annuller",CONFIRM:"Accepter"},de:{OK:"OK",CANCEL:"Abbrechen",CONFIRM:"Akzeptieren"},el:{OK:"Εντάξει",CANCEL:"Ακύρωση",CONFIRM:"Επιβεβαίωση"},en:{OK:"OK",CANCEL:"Cancel",CONFIRM:"OK"},es:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Aceptar"},et:{OK:"OK",CANCEL:"Katkesta",CONFIRM:"OK"},fa:{OK:"قبول",CANCEL:"لغو",CONFIRM:"تایید"},fi:{OK:"OK",CANCEL:"Peruuta",CONFIRM:"OK"},fr:{OK:"OK",CANCEL:"Annuler",CONFIRM:"D'accord"},he:{OK:"אישור",CANCEL:"ביטול",CONFIRM:"אישור"},hu:{OK:"OK",CANCEL:"Mégsem",CONFIRM:"Megerősít"},hr:{OK:"OK",CANCEL:"Odustani",CONFIRM:"Potvrdi"},id:{OK:"OK",CANCEL:"Batal",CONFIRM:"OK"},it:{OK:"OK",CANCEL:"Annulla",CONFIRM:"Conferma"},ja:{OK:"OK",CANCEL:"キャンセル",CONFIRM:"確認"},lt:{OK:"Gerai",CANCEL:"Atšaukti",CONFIRM:"Patvirtinti"},lv:{OK:"Labi",CANCEL:"Atcelt",CONFIRM:"Apstiprināt"},nl:{OK:"OK",CANCEL:"Annuleren",CONFIRM:"Accepteren"},no:{OK:"OK",CANCEL:"Avbryt",CONFIRM:"OK"},pl:{OK:"OK",CANCEL:"Anuluj",CONFIRM:"Potwierdź"},pt:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Confirmar"},ru:{OK:"OK",CANCEL:"Отмена",CONFIRM:"Применить"},sq:{OK:"OK",CANCEL:"Anulo",CONFIRM:"Prano"},sv:{OK:"OK",CANCEL:"Avbryt",CONFIRM:"OK"},th:{OK:"ตกลง",CANCEL:"ยกเลิก",CONFIRM:"ยืนยัน"},tr:{OK:"Tamam",CANCEL:"İptal",CONFIRM:"Onayla"},zh_CN:{OK:"OK",CANCEL:"取消",CONFIRM:"确认"},zh_TW:{OK:"OK",CANCEL:"取消",CONFIRM:"確認"}};return p.addLocale=function(a,c){return b.each(["OK","CANCEL","CONFIRM"],function(a,b){if(!c[b])throw new Error("Please supply a translation for '"+b+"'")}),q[a]={OK:c.OK,CANCEL:c.CANCEL,CONFIRM:c.CONFIRM},p},p.removeLocale=function(a){return delete q[a],p},p.setLocale=function(a){return p.setDefaults("locale",a)},p.init=function(c){return a(c||b)},p});
--------------------------------------------------------------------------------
/scripts/eventemitter2.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * EventEmitter2
3 | * https://github.com/hij1nx/EventEmitter2
4 | *
5 | * Copyright (c) 2013 hij1nx
6 | * Licensed under the MIT license.
7 | */
8 | ;!function(undefined) {
9 |
10 | var isArray = Array.isArray ? Array.isArray : function _isArray(obj) {
11 | return Object.prototype.toString.call(obj) === "[object Array]";
12 | };
13 | var defaultMaxListeners = 10;
14 |
15 | function init() {
16 | this._events = {};
17 | if (this._conf) {
18 | configure.call(this, this._conf);
19 | }
20 | }
21 |
22 | function configure(conf) {
23 | if (conf) {
24 |
25 | this._conf = conf;
26 |
27 | conf.delimiter && (this.delimiter = conf.delimiter);
28 | conf.maxListeners && (this._events.maxListeners = conf.maxListeners);
29 | conf.wildcard && (this.wildcard = conf.wildcard);
30 | conf.newListener && (this.newListener = conf.newListener);
31 |
32 | if (this.wildcard) {
33 | this.listenerTree = {};
34 | }
35 | }
36 | }
37 |
38 | function EventEmitter(conf) {
39 | this._events = {};
40 | this.newListener = false;
41 | configure.call(this, conf);
42 | }
43 |
44 | //
45 | // Attention, function return type now is array, always !
46 | // It has zero elements if no any matches found and one or more
47 | // elements (leafs) if there are matches
48 | //
49 | function searchListenerTree(handlers, type, tree, i) {
50 | if (!tree) {
51 | return [];
52 | }
53 | var listeners=[], leaf, len, branch, xTree, xxTree, isolatedBranch, endReached,
54 | typeLength = type.length, currentType = type[i], nextType = type[i+1];
55 | if (i === typeLength && tree._listeners) {
56 | //
57 | // If at the end of the event(s) list and the tree has listeners
58 | // invoke those listeners.
59 | //
60 | if (typeof tree._listeners === 'function') {
61 | handlers && handlers.push(tree._listeners);
62 | return [tree];
63 | } else {
64 | for (leaf = 0, len = tree._listeners.length; leaf < len; leaf++) {
65 | handlers && handlers.push(tree._listeners[leaf]);
66 | }
67 | return [tree];
68 | }
69 | }
70 |
71 | if ((currentType === '*' || currentType === '**') || tree[currentType]) {
72 | //
73 | // If the event emitted is '*' at this part
74 | // or there is a concrete match at this patch
75 | //
76 | if (currentType === '*') {
77 | for (branch in tree) {
78 | if (branch !== '_listeners' && tree.hasOwnProperty(branch)) {
79 | listeners = listeners.concat(searchListenerTree(handlers, type, tree[branch], i+1));
80 | }
81 | }
82 | return listeners;
83 | } else if(currentType === '**') {
84 | endReached = (i+1 === typeLength || (i+2 === typeLength && nextType === '*'));
85 | if(endReached && tree._listeners) {
86 | // The next element has a _listeners, add it to the handlers.
87 | listeners = listeners.concat(searchListenerTree(handlers, type, tree, typeLength));
88 | }
89 |
90 | for (branch in tree) {
91 | if (branch !== '_listeners' && tree.hasOwnProperty(branch)) {
92 | if(branch === '*' || branch === '**') {
93 | if(tree[branch]._listeners && !endReached) {
94 | listeners = listeners.concat(searchListenerTree(handlers, type, tree[branch], typeLength));
95 | }
96 | listeners = listeners.concat(searchListenerTree(handlers, type, tree[branch], i));
97 | } else if(branch === nextType) {
98 | listeners = listeners.concat(searchListenerTree(handlers, type, tree[branch], i+2));
99 | } else {
100 | // No match on this one, shift into the tree but not in the type array.
101 | listeners = listeners.concat(searchListenerTree(handlers, type, tree[branch], i));
102 | }
103 | }
104 | }
105 | return listeners;
106 | }
107 |
108 | listeners = listeners.concat(searchListenerTree(handlers, type, tree[currentType], i+1));
109 | }
110 |
111 | xTree = tree['*'];
112 | if (xTree) {
113 | //
114 | // If the listener tree will allow any match for this part,
115 | // then recursively explore all branches of the tree
116 | //
117 | searchListenerTree(handlers, type, xTree, i+1);
118 | }
119 |
120 | xxTree = tree['**'];
121 | if(xxTree) {
122 | if(i < typeLength) {
123 | if(xxTree._listeners) {
124 | // If we have a listener on a '**', it will catch all, so add its handler.
125 | searchListenerTree(handlers, type, xxTree, typeLength);
126 | }
127 |
128 | // Build arrays of matching next branches and others.
129 | for(branch in xxTree) {
130 | if(branch !== '_listeners' && xxTree.hasOwnProperty(branch)) {
131 | if(branch === nextType) {
132 | // We know the next element will match, so jump twice.
133 | searchListenerTree(handlers, type, xxTree[branch], i+2);
134 | } else if(branch === currentType) {
135 | // Current node matches, move into the tree.
136 | searchListenerTree(handlers, type, xxTree[branch], i+1);
137 | } else {
138 | isolatedBranch = {};
139 | isolatedBranch[branch] = xxTree[branch];
140 | searchListenerTree(handlers, type, { '**': isolatedBranch }, i+1);
141 | }
142 | }
143 | }
144 | } else if(xxTree._listeners) {
145 | // We have reached the end and still on a '**'
146 | searchListenerTree(handlers, type, xxTree, typeLength);
147 | } else if(xxTree['*'] && xxTree['*']._listeners) {
148 | searchListenerTree(handlers, type, xxTree['*'], typeLength);
149 | }
150 | }
151 |
152 | return listeners;
153 | }
154 |
155 | function growListenerTree(type, listener) {
156 |
157 | type = typeof type === 'string' ? type.split(this.delimiter) : type.slice();
158 |
159 | //
160 | // Looks for two consecutive '**', if so, don't add the event at all.
161 | //
162 | for(var i = 0, len = type.length; i+1 < len; i++) {
163 | if(type[i] === '**' && type[i+1] === '**') {
164 | return;
165 | }
166 | }
167 |
168 | var tree = this.listenerTree;
169 | var name = type.shift();
170 |
171 | while (name) {
172 |
173 | if (!tree[name]) {
174 | tree[name] = {};
175 | }
176 |
177 | tree = tree[name];
178 |
179 | if (type.length === 0) {
180 |
181 | if (!tree._listeners) {
182 | tree._listeners = listener;
183 | }
184 | else if(typeof tree._listeners === 'function') {
185 | tree._listeners = [tree._listeners, listener];
186 | }
187 | else if (isArray(tree._listeners)) {
188 |
189 | tree._listeners.push(listener);
190 |
191 | if (!tree._listeners.warned) {
192 |
193 | var m = defaultMaxListeners;
194 |
195 | if (typeof this._events.maxListeners !== 'undefined') {
196 | m = this._events.maxListeners;
197 | }
198 |
199 | if (m > 0 && tree._listeners.length > m) {
200 |
201 | tree._listeners.warned = true;
202 | console.error('(node) warning: possible EventEmitter memory ' +
203 | 'leak detected. %d listeners added. ' +
204 | 'Use emitter.setMaxListeners() to increase limit.',
205 | tree._listeners.length);
206 | console.trace();
207 | }
208 | }
209 | }
210 | return true;
211 | }
212 | name = type.shift();
213 | }
214 | return true;
215 | }
216 |
217 | // By default EventEmitters will print a warning if more than
218 | // 10 listeners are added to it. This is a useful default which
219 | // helps finding memory leaks.
220 | //
221 | // Obviously not all Emitters should be limited to 10. This function allows
222 | // that to be increased. Set to zero for unlimited.
223 |
224 | EventEmitter.prototype.delimiter = '.';
225 |
226 | EventEmitter.prototype.setMaxListeners = function(n) {
227 | this._events || init.call(this);
228 | this._events.maxListeners = n;
229 | if (!this._conf) this._conf = {};
230 | this._conf.maxListeners = n;
231 | };
232 |
233 | EventEmitter.prototype.event = '';
234 |
235 | EventEmitter.prototype.once = function(event, fn) {
236 | this.many(event, 1, fn);
237 | return this;
238 | };
239 |
240 | EventEmitter.prototype.many = function(event, ttl, fn) {
241 | var self = this;
242 |
243 | if (typeof fn !== 'function') {
244 | throw new Error('many only accepts instances of Function');
245 | }
246 |
247 | function listener() {
248 | if (--ttl === 0) {
249 | self.off(event, listener);
250 | }
251 | fn.apply(this, arguments);
252 | }
253 |
254 | listener._origin = fn;
255 |
256 | this.on(event, listener);
257 |
258 | return self;
259 | };
260 |
261 | EventEmitter.prototype.emit = function() {
262 |
263 | this._events || init.call(this);
264 |
265 | var type = arguments[0];
266 |
267 | if (type === 'newListener' && !this.newListener) {
268 | if (!this._events.newListener) { return false; }
269 | }
270 |
271 | // Loop through the *_all* functions and invoke them.
272 | if (this._all) {
273 | var l = arguments.length;
274 | var args = new Array(l - 1);
275 | for (var i = 1; i < l; i++) args[i - 1] = arguments[i];
276 | for (i = 0, l = this._all.length; i < l; i++) {
277 | this.event = type;
278 | this._all[i].apply(this, args);
279 | }
280 | }
281 |
282 | // If there is no 'error' event listener then throw.
283 | if (type === 'error') {
284 |
285 | if (!this._all &&
286 | !this._events.error &&
287 | !(this.wildcard && this.listenerTree.error)) {
288 |
289 | if (arguments[1] instanceof Error) {
290 | throw arguments[1]; // Unhandled 'error' event
291 | } else {
292 | throw new Error("Uncaught, unspecified 'error' event.");
293 | }
294 | return false;
295 | }
296 | }
297 |
298 | var handler;
299 |
300 | if(this.wildcard) {
301 | handler = [];
302 | var ns = typeof type === 'string' ? type.split(this.delimiter) : type.slice();
303 | searchListenerTree.call(this, handler, ns, this.listenerTree, 0);
304 | }
305 | else {
306 | handler = this._events[type];
307 | }
308 |
309 | if (typeof handler === 'function') {
310 | this.event = type;
311 | if (arguments.length === 1) {
312 | handler.call(this);
313 | }
314 | else if (arguments.length > 1)
315 | switch (arguments.length) {
316 | case 2:
317 | handler.call(this, arguments[1]);
318 | break;
319 | case 3:
320 | handler.call(this, arguments[1], arguments[2]);
321 | break;
322 | // slower
323 | default:
324 | var l = arguments.length;
325 | var args = new Array(l - 1);
326 | for (var i = 1; i < l; i++) args[i - 1] = arguments[i];
327 | handler.apply(this, args);
328 | }
329 | return true;
330 | }
331 | else if (handler) {
332 | var l = arguments.length;
333 | var args = new Array(l - 1);
334 | for (var i = 1; i < l; i++) args[i - 1] = arguments[i];
335 |
336 | var listeners = handler.slice();
337 | for (var i = 0, l = listeners.length; i < l; i++) {
338 | this.event = type;
339 | listeners[i].apply(this, args);
340 | }
341 | return (listeners.length > 0) || !!this._all;
342 | }
343 | else {
344 | return !!this._all;
345 | }
346 |
347 | };
348 |
349 | EventEmitter.prototype.on = function(type, listener) {
350 |
351 | if (typeof type === 'function') {
352 | this.onAny(type);
353 | return this;
354 | }
355 |
356 | if (typeof listener !== 'function') {
357 | throw new Error('on only accepts instances of Function');
358 | }
359 | this._events || init.call(this);
360 |
361 | // To avoid recursion in the case that type == "newListeners"! Before
362 | // adding it to the listeners, first emit "newListeners".
363 | this.emit('newListener', type, listener);
364 |
365 | if(this.wildcard) {
366 | growListenerTree.call(this, type, listener);
367 | return this;
368 | }
369 |
370 | if (!this._events[type]) {
371 | // Optimize the case of one listener. Don't need the extra array object.
372 | this._events[type] = listener;
373 | }
374 | else if(typeof this._events[type] === 'function') {
375 | // Adding the second element, need to change to array.
376 | this._events[type] = [this._events[type], listener];
377 | }
378 | else if (isArray(this._events[type])) {
379 | // If we've already got an array, just append.
380 | this._events[type].push(listener);
381 |
382 | // Check for listener leak
383 | if (!this._events[type].warned) {
384 |
385 | var m = defaultMaxListeners;
386 |
387 | if (typeof this._events.maxListeners !== 'undefined') {
388 | m = this._events.maxListeners;
389 | }
390 |
391 | if (m > 0 && this._events[type].length > m) {
392 |
393 | this._events[type].warned = true;
394 | console.error('(node) warning: possible EventEmitter memory ' +
395 | 'leak detected. %d listeners added. ' +
396 | 'Use emitter.setMaxListeners() to increase limit.',
397 | this._events[type].length);
398 | console.trace();
399 | }
400 | }
401 | }
402 | return this;
403 | };
404 |
405 | EventEmitter.prototype.onAny = function(fn) {
406 |
407 | if (typeof fn !== 'function') {
408 | throw new Error('onAny only accepts instances of Function');
409 | }
410 |
411 | if(!this._all) {
412 | this._all = [];
413 | }
414 |
415 | // Add the function to the event listener collection.
416 | this._all.push(fn);
417 | return this;
418 | };
419 |
420 | EventEmitter.prototype.addListener = EventEmitter.prototype.on;
421 |
422 | EventEmitter.prototype.off = function(type, listener) {
423 | if (typeof listener !== 'function') {
424 | throw new Error('removeListener only takes instances of Function');
425 | }
426 |
427 | var handlers,leafs=[];
428 |
429 | if(this.wildcard) {
430 | var ns = typeof type === 'string' ? type.split(this.delimiter) : type.slice();
431 | leafs = searchListenerTree.call(this, null, ns, this.listenerTree, 0);
432 | }
433 | else {
434 | // does not use listeners(), so no side effect of creating _events[type]
435 | if (!this._events[type]) return this;
436 | handlers = this._events[type];
437 | leafs.push({_listeners:handlers});
438 | }
439 |
440 | for (var iLeaf=0; iLeaf 0) {
495 | fns = this._all;
496 | for(i = 0, l = fns.length; i < l; i++) {
497 | if(fn === fns[i]) {
498 | fns.splice(i, 1);
499 | return this;
500 | }
501 | }
502 | } else {
503 | this._all = [];
504 | }
505 | return this;
506 | };
507 |
508 | EventEmitter.prototype.removeListener = EventEmitter.prototype.off;
509 |
510 | EventEmitter.prototype.removeAllListeners = function(type) {
511 | if (arguments.length === 0) {
512 | !this._events || init.call(this);
513 | return this;
514 | }
515 |
516 | if(this.wildcard) {
517 | var ns = typeof type === 'string' ? type.split(this.delimiter) : type.slice();
518 | var leafs = searchListenerTree.call(this, null, ns, this.listenerTree, 0);
519 |
520 | for (var iLeaf=0; iLeaf0&&o._listeners.length>a){o._listeners.warned=true;console.error("(node) warning: possible EventEmitter memory "+"leak detected. %d listeners added. "+"Use emitter.setMaxListeners() to increase limit.",o._listeners.length);console.trace()}}}return true}u=e.shift()}return true}var t=Array.isArray?Array.isArray:function(t){return Object.prototype.toString.call(t)==="[object Array]"};var n=10;s.prototype.delimiter=".";s.prototype.setMaxListeners=function(e){this._events||r.call(this);this._events.maxListeners=e;if(!this._conf)this._conf={};this._conf.maxListeners=e};s.prototype.event="";s.prototype.once=function(e,t){this.many(e,1,t);return this};s.prototype.many=function(e,t,n){function i(){if(--t===0){r.off(e,i)}n.apply(this,arguments)}var r=this;if(typeof n!=="function"){throw new Error("many only accepts instances of Function")}i._origin=n;this.on(e,i);return r};s.prototype.emit=function(){this._events||r.call(this);var e=arguments[0];if(e==="newListener"&&!this.newListener){if(!this._events.newListener){return false}}if(this._all){var t=arguments.length;var n=new Array(t-1);for(var i=1;i1)switch(arguments.length){case 2:s.call(this,arguments[1]);break;case 3:s.call(this,arguments[1],arguments[2]);break;default:var t=arguments.length;var n=new Array(t-1);for(var i=1;i0||!!this._all}else{return!!this._all}};s.prototype.on=function(e,i){if(typeof e==="function"){this.onAny(e);return this}if(typeof i!=="function"){throw new Error("on only accepts instances of Function")}this._events||r.call(this);this.emit("newListener",e,i);if(this.wildcard){u.call(this,e,i);return this}if(!this._events[e]){this._events[e]=i}else if(typeof this._events[e]==="function"){this._events[e]=[this._events[e],i]}else if(t(this._events[e])){this._events[e].push(i);if(!this._events[e].warned){var s=n;if(typeof this._events.maxListeners!=="undefined"){s=this._events.maxListeners}if(s>0&&this._events[e].length>s){this._events[e].warned=true;console.error("(node) warning: possible EventEmitter memory "+"leak detected. %d listeners added. "+"Use emitter.setMaxListeners() to increase limit.",this._events[e].length);console.trace()}}}return this};s.prototype.onAny=function(e){if(typeof e!=="function"){throw new Error("onAny only accepts instances of Function")}if(!this._all){this._all=[]}this._all.push(e);return this};s.prototype.addListener=s.prototype.on;s.prototype.off=function(e,n){if(typeof n!=="function"){throw new Error("removeListener only takes instances of Function")}var r,i=[];if(this.wildcard){var s=typeof e==="string"?e.split(this.delimiter):e.slice();i=o.call(this,null,s,this.listenerTree,0)}else{if(!this._events[e])return this;r=this._events[e];i.push({_listeners:r})}for(var u=0;u0){r=this._all;for(t=0,n=r.length;tli{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}.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{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{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{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-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-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-genderless:before,.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-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-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"}
--------------------------------------------------------------------------------
/scripts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/UbiquityRobotics/speech_commands/f141ddfe09365f1f556de14ed0e38dd501d16fea/scripts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/scripts/jquery-ui.css:
--------------------------------------------------------------------------------
1 | /*! jQuery UI - v1.8.24 - 2012-09-28
2 | * https://github.com/jquery/jquery-ui
3 | * Includes: jquery.ui.core.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.progressbar.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.slider.css, jquery.ui.tabs.css, jquery.ui.theme.css
4 | * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
5 |
6 | /* Layout helpers
7 | ----------------------------------*/
8 | .ui-helper-hidden { display: none; }
9 | .ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); }
10 | .ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
11 | .ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; }
12 | .ui-helper-clearfix:after { clear: both; }
13 | .ui-helper-clearfix { zoom: 1; }
14 | .ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
15 |
16 |
17 | /* Interaction Cues
18 | ----------------------------------*/
19 | .ui-state-disabled { cursor: default !important; }
20 |
21 |
22 | /* Icons
23 | ----------------------------------*/
24 |
25 | /* states and images */
26 | .ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
27 |
28 |
29 | /* Misc visuals
30 | ----------------------------------*/
31 |
32 | /* Overlays */
33 | .ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
34 |
35 | /* IE/Win - Fix animation bug - #4615 */
36 | .ui-accordion { width: 100%; }
37 | .ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
38 | .ui-accordion .ui-accordion-li-fix { display: inline; }
39 | .ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
40 | .ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; }
41 | .ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; }
42 | .ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
43 | .ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; }
44 | .ui-accordion .ui-accordion-content-active { display: block; }
45 |
46 | .ui-autocomplete { position: absolute; cursor: default; }
47 |
48 | /* workarounds */
49 | * html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
50 |
51 | /*
52 | * jQuery UI Menu 1.8.24
53 | *
54 | * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
55 | * Dual licensed under the MIT or GPL Version 2 licenses.
56 | * http://jquery.org/license
57 | *
58 | * http://docs.jquery.com/UI/Menu#theming
59 | */
60 | .ui-menu {
61 | list-style:none;
62 | padding: 2px;
63 | margin: 0;
64 | display:block;
65 | float: left;
66 | }
67 | .ui-menu .ui-menu {
68 | margin-top: -3px;
69 | }
70 | .ui-menu .ui-menu-item {
71 | margin:0;
72 | padding: 0;
73 | zoom: 1;
74 | float: left;
75 | clear: left;
76 | width: 100%;
77 | }
78 | .ui-menu .ui-menu-item a {
79 | text-decoration:none;
80 | display:block;
81 | padding:.2em .4em;
82 | line-height:1.5;
83 | zoom:1;
84 | }
85 | .ui-menu .ui-menu-item a.ui-state-hover,
86 | .ui-menu .ui-menu-item a.ui-state-active {
87 | font-weight: normal;
88 | margin: -1px;
89 | }
90 |
91 | .ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */
92 | .ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */
93 | button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
94 | .ui-button-icons-only { width: 3.4em; }
95 | button.ui-button-icons-only { width: 3.7em; }
96 |
97 | /*button text element */
98 | .ui-button .ui-button-text { display: block; line-height: 1.4; }
99 | .ui-button-text-only .ui-button-text { padding: .4em 1em; }
100 | .ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; }
101 | .ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; }
102 | .ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; }
103 | .ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; }
104 | /* no icon support for input elements, provide padding by default */
105 | input.ui-button { padding: .4em 1em; }
106 |
107 | /*button icon element(s) */
108 | .ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; }
109 | .ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; }
110 | .ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; }
111 | .ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
112 | .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
113 |
114 | /*button sets*/
115 | .ui-buttonset { margin-right: 7px; }
116 | .ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; }
117 |
118 | /* workarounds */
119 | button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */
120 |
121 | .ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
122 | .ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
123 | .ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
124 | .ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
125 | .ui-datepicker .ui-datepicker-prev { left:2px; }
126 | .ui-datepicker .ui-datepicker-next { right:2px; }
127 | .ui-datepicker .ui-datepicker-prev-hover { left:1px; }
128 | .ui-datepicker .ui-datepicker-next-hover { right:1px; }
129 | .ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
130 | .ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
131 | .ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
132 | .ui-datepicker select.ui-datepicker-month-year {width: 100%;}
133 | .ui-datepicker select.ui-datepicker-month,
134 | .ui-datepicker select.ui-datepicker-year { width: 49%;}
135 | .ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
136 | .ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; }
137 | .ui-datepicker td { border: 0; padding: 1px; }
138 | .ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
139 | .ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
140 | .ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
141 | .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
142 |
143 | /* with multiple calendars */
144 | .ui-datepicker.ui-datepicker-multi { width:auto; }
145 | .ui-datepicker-multi .ui-datepicker-group { float:left; }
146 | .ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
147 | .ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
148 | .ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
149 | .ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
150 | .ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
151 | .ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
152 | .ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
153 | .ui-datepicker-row-break { clear:both; width:100%; font-size:0em; }
154 |
155 | /* RTL support */
156 | .ui-datepicker-rtl { direction: rtl; }
157 | .ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
158 | .ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
159 | .ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
160 | .ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
161 | .ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
162 | .ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
163 | .ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
164 | .ui-datepicker-rtl .ui-datepicker-group { float:right; }
165 | .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
166 | .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
167 |
168 | /* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
169 | .ui-datepicker-cover {
170 | position: absolute; /*must have*/
171 | z-index: -1; /*must have*/
172 | filter: mask(); /*must have*/
173 | top: -4px; /*must have*/
174 | left: -4px; /*must have*/
175 | width: 200px; /*must have*/
176 | height: 200px; /*must have*/
177 | }
178 | .ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; }
179 | .ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; }
180 | .ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }
181 | .ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
182 | .ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
183 | .ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
184 | .ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
185 | .ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
186 | .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
187 | .ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
188 | .ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
189 | .ui-draggable .ui-dialog-titlebar { cursor: move; }
190 |
191 | .ui-progressbar { height:2em; text-align: left; overflow: hidden; }
192 | .ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }
193 | .ui-resizable { position: relative;}
194 | .ui-resizable-handle { position: absolute;font-size: 0.1px; display: block; }
195 | .ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
196 | .ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; }
197 | .ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; }
198 | .ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
199 | .ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; }
200 | .ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
201 | .ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
202 | .ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
203 | .ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}
204 | .ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; }
205 |
206 | .ui-slider { position: relative; text-align: left; }
207 | .ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
208 | .ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }
209 |
210 | .ui-slider-horizontal { height: .8em; }
211 | .ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
212 | .ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
213 | .ui-slider-horizontal .ui-slider-range-min { left: 0; }
214 | .ui-slider-horizontal .ui-slider-range-max { right: 0; }
215 |
216 | .ui-slider-vertical { width: .8em; height: 100px; }
217 | .ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
218 | .ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
219 | .ui-slider-vertical .ui-slider-range-min { bottom: 0; }
220 | .ui-slider-vertical .ui-slider-range-max { top: 0; }
221 | .ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
222 | .ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
223 | .ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
224 | .ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
225 | .ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
226 | .ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
227 | .ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
228 | .ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
229 | .ui-tabs .ui-tabs-hide { display: none !important; }
230 |
231 | /* Component containers
232 | ----------------------------------*/
233 | .ui-widget { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1.1em/*{fsDefault}*/; }
234 | .ui-widget .ui-widget { font-size: 1em; }
235 | .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1em; }
236 | .ui-widget-content { border: 1px solid #aaaaaa/*{borderColorContent}*/; background: #ffffff/*{bgColorContent}*/ url(images/ui-bg_flat_75_ffffff_40x100.png)/*{bgImgUrlContent}*/ 50%/*{bgContentXPos}*/ 50%/*{bgContentYPos}*/ repeat-x/*{bgContentRepeat}*/; color: #222222/*{fcContent}*/; }
237 | .ui-widget-content a { color: #222222/*{fcContent}*/; }
238 | .ui-widget-header { border: 1px solid #aaaaaa/*{borderColorHeader}*/; background: #cccccc/*{bgColorHeader}*/ url(images/ui-bg_highlight-soft_75_cccccc_1x100.png)/*{bgImgUrlHeader}*/ 50%/*{bgHeaderXPos}*/ 50%/*{bgHeaderYPos}*/ repeat-x/*{bgHeaderRepeat}*/; color: #222222/*{fcHeader}*/; font-weight: bold; }
239 | .ui-widget-header a { color: #222222/*{fcHeader}*/; }
240 |
241 | /* Interaction states
242 | ----------------------------------*/
243 | .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3/*{borderColorDefault}*/; background: #e6e6e6/*{bgColorDefault}*/ url(images/ui-bg_glass_75_e6e6e6_1x400.png)/*{bgImgUrlDefault}*/ 50%/*{bgDefaultXPos}*/ 50%/*{bgDefaultYPos}*/ repeat-x/*{bgDefaultRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #555555/*{fcDefault}*/; }
244 | .ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555/*{fcDefault}*/; text-decoration: none; }
245 | .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999/*{borderColorHover}*/; background: #dadada/*{bgColorHover}*/ url(images/ui-bg_glass_75_dadada_1x400.png)/*{bgImgUrlHover}*/ 50%/*{bgHoverXPos}*/ 50%/*{bgHoverYPos}*/ repeat-x/*{bgHoverRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcHover}*/; }
246 | .ui-state-hover a, .ui-state-hover a:hover { color: #212121/*{fcHover}*/; text-decoration: none; }
247 | .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa/*{borderColorActive}*/; background: #ffffff/*{bgColorActive}*/ url(images/ui-bg_glass_65_ffffff_1x400.png)/*{bgImgUrlActive}*/ 50%/*{bgActiveXPos}*/ 50%/*{bgActiveYPos}*/ repeat-x/*{bgActiveRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcActive}*/; }
248 | .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121/*{fcActive}*/; text-decoration: none; }
249 | .ui-widget :active { outline: none; }
250 |
251 | /* Interaction Cues
252 | ----------------------------------*/
253 | .ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1/*{borderColorHighlight}*/; background: #fbf9ee/*{bgColorHighlight}*/ url(images/ui-bg_glass_55_fbf9ee_1x400.png)/*{bgImgUrlHighlight}*/ 50%/*{bgHighlightXPos}*/ 50%/*{bgHighlightYPos}*/ repeat-x/*{bgHighlightRepeat}*/; color: #363636/*{fcHighlight}*/; }
254 | .ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636/*{fcHighlight}*/; }
255 | .ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a/*{borderColorError}*/; background: #fef1ec/*{bgColorError}*/ url(images/ui-bg_glass_95_fef1ec_1x400.png)/*{bgImgUrlError}*/ 50%/*{bgErrorXPos}*/ 50%/*{bgErrorYPos}*/ repeat-x/*{bgErrorRepeat}*/; color: #cd0a0a/*{fcError}*/; }
256 | .ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a/*{fcError}*/; }
257 | .ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a/*{fcError}*/; }
258 | .ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
259 | .ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
260 | .ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
261 |
262 | /* Icons
263 | ----------------------------------*/
264 |
265 | /* states and images */
266 | .ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; }
267 | .ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; }
268 | .ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsHeader}*/; }
269 | .ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png)/*{iconsDefault}*/; }
270 | .ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsHover}*/; }
271 | .ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsActive}*/; }
272 | .ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png)/*{iconsHighlight}*/; }
273 | .ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png)/*{iconsError}*/; }
274 |
275 | /* positioning */
276 | .ui-icon-carat-1-n { background-position: 0 0; }
277 | .ui-icon-carat-1-ne { background-position: -16px 0; }
278 | .ui-icon-carat-1-e { background-position: -32px 0; }
279 | .ui-icon-carat-1-se { background-position: -48px 0; }
280 | .ui-icon-carat-1-s { background-position: -64px 0; }
281 | .ui-icon-carat-1-sw { background-position: -80px 0; }
282 | .ui-icon-carat-1-w { background-position: -96px 0; }
283 | .ui-icon-carat-1-nw { background-position: -112px 0; }
284 | .ui-icon-carat-2-n-s { background-position: -128px 0; }
285 | .ui-icon-carat-2-e-w { background-position: -144px 0; }
286 | .ui-icon-triangle-1-n { background-position: 0 -16px; }
287 | .ui-icon-triangle-1-ne { background-position: -16px -16px; }
288 | .ui-icon-triangle-1-e { background-position: -32px -16px; }
289 | .ui-icon-triangle-1-se { background-position: -48px -16px; }
290 | .ui-icon-triangle-1-s { background-position: -64px -16px; }
291 | .ui-icon-triangle-1-sw { background-position: -80px -16px; }
292 | .ui-icon-triangle-1-w { background-position: -96px -16px; }
293 | .ui-icon-triangle-1-nw { background-position: -112px -16px; }
294 | .ui-icon-triangle-2-n-s { background-position: -128px -16px; }
295 | .ui-icon-triangle-2-e-w { background-position: -144px -16px; }
296 | .ui-icon-arrow-1-n { background-position: 0 -32px; }
297 | .ui-icon-arrow-1-ne { background-position: -16px -32px; }
298 | .ui-icon-arrow-1-e { background-position: -32px -32px; }
299 | .ui-icon-arrow-1-se { background-position: -48px -32px; }
300 | .ui-icon-arrow-1-s { background-position: -64px -32px; }
301 | .ui-icon-arrow-1-sw { background-position: -80px -32px; }
302 | .ui-icon-arrow-1-w { background-position: -96px -32px; }
303 | .ui-icon-arrow-1-nw { background-position: -112px -32px; }
304 | .ui-icon-arrow-2-n-s { background-position: -128px -32px; }
305 | .ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
306 | .ui-icon-arrow-2-e-w { background-position: -160px -32px; }
307 | .ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
308 | .ui-icon-arrowstop-1-n { background-position: -192px -32px; }
309 | .ui-icon-arrowstop-1-e { background-position: -208px -32px; }
310 | .ui-icon-arrowstop-1-s { background-position: -224px -32px; }
311 | .ui-icon-arrowstop-1-w { background-position: -240px -32px; }
312 | .ui-icon-arrowthick-1-n { background-position: 0 -48px; }
313 | .ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
314 | .ui-icon-arrowthick-1-e { background-position: -32px -48px; }
315 | .ui-icon-arrowthick-1-se { background-position: -48px -48px; }
316 | .ui-icon-arrowthick-1-s { background-position: -64px -48px; }
317 | .ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
318 | .ui-icon-arrowthick-1-w { background-position: -96px -48px; }
319 | .ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
320 | .ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
321 | .ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
322 | .ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
323 | .ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
324 | .ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
325 | .ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
326 | .ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
327 | .ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
328 | .ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
329 | .ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
330 | .ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
331 | .ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
332 | .ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
333 | .ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
334 | .ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
335 | .ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
336 | .ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
337 | .ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
338 | .ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
339 | .ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
340 | .ui-icon-arrow-4 { background-position: 0 -80px; }
341 | .ui-icon-arrow-4-diag { background-position: -16px -80px; }
342 | .ui-icon-extlink { background-position: -32px -80px; }
343 | .ui-icon-newwin { background-position: -48px -80px; }
344 | .ui-icon-refresh { background-position: -64px -80px; }
345 | .ui-icon-shuffle { background-position: -80px -80px; }
346 | .ui-icon-transfer-e-w { background-position: -96px -80px; }
347 | .ui-icon-transferthick-e-w { background-position: -112px -80px; }
348 | .ui-icon-folder-collapsed { background-position: 0 -96px; }
349 | .ui-icon-folder-open { background-position: -16px -96px; }
350 | .ui-icon-document { background-position: -32px -96px; }
351 | .ui-icon-document-b { background-position: -48px -96px; }
352 | .ui-icon-note { background-position: -64px -96px; }
353 | .ui-icon-mail-closed { background-position: -80px -96px; }
354 | .ui-icon-mail-open { background-position: -96px -96px; }
355 | .ui-icon-suitcase { background-position: -112px -96px; }
356 | .ui-icon-comment { background-position: -128px -96px; }
357 | .ui-icon-person { background-position: -144px -96px; }
358 | .ui-icon-print { background-position: -160px -96px; }
359 | .ui-icon-trash { background-position: -176px -96px; }
360 | .ui-icon-locked { background-position: -192px -96px; }
361 | .ui-icon-unlocked { background-position: -208px -96px; }
362 | .ui-icon-bookmark { background-position: -224px -96px; }
363 | .ui-icon-tag { background-position: -240px -96px; }
364 | .ui-icon-home { background-position: 0 -112px; }
365 | .ui-icon-flag { background-position: -16px -112px; }
366 | .ui-icon-calendar { background-position: -32px -112px; }
367 | .ui-icon-cart { background-position: -48px -112px; }
368 | .ui-icon-pencil { background-position: -64px -112px; }
369 | .ui-icon-clock { background-position: -80px -112px; }
370 | .ui-icon-disk { background-position: -96px -112px; }
371 | .ui-icon-calculator { background-position: -112px -112px; }
372 | .ui-icon-zoomin { background-position: -128px -112px; }
373 | .ui-icon-zoomout { background-position: -144px -112px; }
374 | .ui-icon-search { background-position: -160px -112px; }
375 | .ui-icon-wrench { background-position: -176px -112px; }
376 | .ui-icon-gear { background-position: -192px -112px; }
377 | .ui-icon-heart { background-position: -208px -112px; }
378 | .ui-icon-star { background-position: -224px -112px; }
379 | .ui-icon-link { background-position: -240px -112px; }
380 | .ui-icon-cancel { background-position: 0 -128px; }
381 | .ui-icon-plus { background-position: -16px -128px; }
382 | .ui-icon-plusthick { background-position: -32px -128px; }
383 | .ui-icon-minus { background-position: -48px -128px; }
384 | .ui-icon-minusthick { background-position: -64px -128px; }
385 | .ui-icon-close { background-position: -80px -128px; }
386 | .ui-icon-closethick { background-position: -96px -128px; }
387 | .ui-icon-key { background-position: -112px -128px; }
388 | .ui-icon-lightbulb { background-position: -128px -128px; }
389 | .ui-icon-scissors { background-position: -144px -128px; }
390 | .ui-icon-clipboard { background-position: -160px -128px; }
391 | .ui-icon-copy { background-position: -176px -128px; }
392 | .ui-icon-contact { background-position: -192px -128px; }
393 | .ui-icon-image { background-position: -208px -128px; }
394 | .ui-icon-video { background-position: -224px -128px; }
395 | .ui-icon-script { background-position: -240px -128px; }
396 | .ui-icon-alert { background-position: 0 -144px; }
397 | .ui-icon-info { background-position: -16px -144px; }
398 | .ui-icon-notice { background-position: -32px -144px; }
399 | .ui-icon-help { background-position: -48px -144px; }
400 | .ui-icon-check { background-position: -64px -144px; }
401 | .ui-icon-bullet { background-position: -80px -144px; }
402 | .ui-icon-radio-off { background-position: -96px -144px; }
403 | .ui-icon-radio-on { background-position: -112px -144px; }
404 | .ui-icon-pin-w { background-position: -128px -144px; }
405 | .ui-icon-pin-s { background-position: -144px -144px; }
406 | .ui-icon-play { background-position: 0 -160px; }
407 | .ui-icon-pause { background-position: -16px -160px; }
408 | .ui-icon-seek-next { background-position: -32px -160px; }
409 | .ui-icon-seek-prev { background-position: -48px -160px; }
410 | .ui-icon-seek-end { background-position: -64px -160px; }
411 | .ui-icon-seek-start { background-position: -80px -160px; }
412 | /* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
413 | .ui-icon-seek-first { background-position: -80px -160px; }
414 | .ui-icon-stop { background-position: -96px -160px; }
415 | .ui-icon-eject { background-position: -112px -160px; }
416 | .ui-icon-volume-off { background-position: -128px -160px; }
417 | .ui-icon-volume-on { background-position: -144px -160px; }
418 | .ui-icon-power { background-position: 0 -176px; }
419 | .ui-icon-signal-diag { background-position: -16px -176px; }
420 | .ui-icon-signal { background-position: -32px -176px; }
421 | .ui-icon-battery-0 { background-position: -48px -176px; }
422 | .ui-icon-battery-1 { background-position: -64px -176px; }
423 | .ui-icon-battery-2 { background-position: -80px -176px; }
424 | .ui-icon-battery-3 { background-position: -96px -176px; }
425 | .ui-icon-circle-plus { background-position: 0 -192px; }
426 | .ui-icon-circle-minus { background-position: -16px -192px; }
427 | .ui-icon-circle-close { background-position: -32px -192px; }
428 | .ui-icon-circle-triangle-e { background-position: -48px -192px; }
429 | .ui-icon-circle-triangle-s { background-position: -64px -192px; }
430 | .ui-icon-circle-triangle-w { background-position: -80px -192px; }
431 | .ui-icon-circle-triangle-n { background-position: -96px -192px; }
432 | .ui-icon-circle-arrow-e { background-position: -112px -192px; }
433 | .ui-icon-circle-arrow-s { background-position: -128px -192px; }
434 | .ui-icon-circle-arrow-w { background-position: -144px -192px; }
435 | .ui-icon-circle-arrow-n { background-position: -160px -192px; }
436 | .ui-icon-circle-zoomin { background-position: -176px -192px; }
437 | .ui-icon-circle-zoomout { background-position: -192px -192px; }
438 | .ui-icon-circle-check { background-position: -208px -192px; }
439 | .ui-icon-circlesmall-plus { background-position: 0 -208px; }
440 | .ui-icon-circlesmall-minus { background-position: -16px -208px; }
441 | .ui-icon-circlesmall-close { background-position: -32px -208px; }
442 | .ui-icon-squaresmall-plus { background-position: -48px -208px; }
443 | .ui-icon-squaresmall-minus { background-position: -64px -208px; }
444 | .ui-icon-squaresmall-close { background-position: -80px -208px; }
445 | .ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
446 | .ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
447 | .ui-icon-grip-solid-vertical { background-position: -32px -224px; }
448 | .ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
449 | .ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
450 | .ui-icon-grip-diagonal-se { background-position: -80px -224px; }
451 |
452 |
453 | /* Misc visuals
454 | ----------------------------------*/
455 |
456 | /* Corner radius */
457 | .ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -khtml-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; }
458 | .ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; -khtml-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; }
459 | .ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; -khtml-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; }
460 | .ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; -khtml-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; }
461 |
462 | /* Overlays */
463 | .ui-widget-overlay { background: #aaaaaa/*{bgColorOverlay}*/ url(images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlOverlay}*/ 50%/*{bgOverlayXPos}*/ 50%/*{bgOverlayYPos}*/ repeat-x/*{bgOverlayRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityOverlay}*/; }
464 | .ui-widget-shadow { margin: -8px/*{offsetTopShadow}*/ 0 0 -8px/*{offsetLeftShadow}*/; padding: 8px/*{thicknessShadow}*/; background: #aaaaaa/*{bgColorShadow}*/ url(images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlShadow}*/ 50%/*{bgShadowXPos}*/ 50%/*{bgShadowYPos}*/ repeat-x/*{bgShadowRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityShadow}*/; -moz-border-radius: 8px/*{cornerRadiusShadow}*/; -khtml-border-radius: 8px/*{cornerRadiusShadow}*/; -webkit-border-radius: 8px/*{cornerRadiusShadow}*/; border-radius: 8px/*{cornerRadiusShadow}*/; }
--------------------------------------------------------------------------------
/scripts/roslib.min.js:
--------------------------------------------------------------------------------
1 | !function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;gb.secs?!1:a.secs0&&(this.minval=parseFloat(b[0].getAttribute("lower")),this.maxval=parseFloat(b[0].getAttribute("upper")))}b.exports=d},{}],30:[function(a,b,c){function d(a){this.name=a.xml.getAttribute("name"),this.visuals=[];for(var b=a.xml.getElementsByTagName("visual"),c=0;c0&&(this.textureFilename=b[0].getAttribute("filename"));var c=a.xml.getElementsByTagName("color");c.length>0&&(this.color=new e({xml:c[0]}))}var e=a("./UrdfColor");d.prototype.isLink=function(){return null===this.color&&null===this.textureFilename};var f=a("object-assign");d.prototype.assign=function(a){return f(this,a)},b.exports=d},{"./UrdfColor":27,"object-assign":1}],32:[function(a,b,c){function d(a){this.scale=null,this.type=f.URDF_MESH,this.filename=a.xml.getAttribute("filename");var b=a.xml.getAttribute("scale");if(b){var c=b.split(" ");this.scale=new e({x:parseFloat(c[0]),y:parseFloat(c[1]),z:parseFloat(c[2])})}}var e=a("../math/Vector3"),f=a("./UrdfTypes");b.exports=d},{"../math/Vector3":21,"./UrdfTypes":35}],33:[function(a,b,c){function d(a){a=a||{};var b=a.xml,c=a.string;if(this.materials={},this.links={},this.joints={},c){var d=new h;b=d.parseFromString(c,"text/xml")}var j=b.evaluate("//robot",b,null,i,null).singleNodeValue;this.name=j.getAttribute("name");for(var k=j.childNodes,l=0;l0){for(var A=z[0],B=null,C=0;C0&&(this.material=new j({xml:F[0]}))}var e=a("../math/Pose"),f=a("../math/Vector3"),g=a("../math/Quaternion"),h=a("./UrdfCylinder"),i=a("./UrdfBox"),j=a("./UrdfMaterial"),k=a("./UrdfMesh"),l=a("./UrdfSphere");b.exports=d},{"../math/Pose":18,"../math/Quaternion":19,"../math/Vector3":21,"./UrdfBox":26,"./UrdfCylinder":28,"./UrdfMaterial":31,"./UrdfMesh":32,"./UrdfSphere":34}],37:[function(a,b,c){b.exports=a("object-assign")({UrdfBox:a("./UrdfBox"),UrdfColor:a("./UrdfColor"),UrdfCylinder:a("./UrdfCylinder"),UrdfLink:a("./UrdfLink"),UrdfMaterial:a("./UrdfMaterial"),UrdfMesh:a("./UrdfMesh"),UrdfModel:a("./UrdfModel"),UrdfSphere:a("./UrdfSphere"),UrdfVisual:a("./UrdfVisual")},a("./UrdfTypes"))},{"./UrdfBox":26,"./UrdfColor":27,"./UrdfCylinder":28,"./UrdfLink":30,"./UrdfMaterial":31,"./UrdfMesh":32,"./UrdfModel":33,"./UrdfSphere":34,"./UrdfTypes":35,"./UrdfVisual":36,"object-assign":1}],38:[function(a,b,c){(function(a){b.exports={EventEmitter2:a.EventEmitter2}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],39:[function(a,b,c){(function(a){b.exports=a.WebSocket}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],40:[function(a,b,c){b.exports=function(){return document.createElement("canvas")}},{}]},{},[4]);
--------------------------------------------------------------------------------