Initial Commit

This commit is contained in:
2026-02-13 12:26:33 -05:00
parent 7b9c52900c
commit 82f2d877ff
7662 changed files with 1356583 additions and 1 deletions

View File

@@ -0,0 +1,148 @@
# AP Top 25 Dynamic Teams Implementation Summary
## 🎯 Feature Overview
Successfully implemented dynamic team resolution for AP Top 25 rankings in the LEDMatrix project. Users can now add `"AP_TOP_25"` to their `favorite_teams` list and it will automatically resolve to the current AP Top 25 teams, updating weekly as rankings change.
## 🚀 What Was Implemented
### 1. Dynamic Team Resolver (`src/dynamic_team_resolver.py`)
- **Core Functionality**: Resolves dynamic team names like `"AP_TOP_25"` into actual team abbreviations
- **API Integration**: Fetches current AP Top 25 rankings from ESPN API
- **Caching**: 1-hour cache to reduce API calls and improve performance
- **Error Handling**: Graceful fallback when rankings unavailable
- **Multiple Patterns**: Supports `AP_TOP_25`, `AP_TOP_10`, `AP_TOP_5`
### 2. Sports Core Integration (`src/base_classes/sports.py`)
- **Automatic Resolution**: Favorite teams are automatically resolved at initialization
- **Seamless Integration**: Works with existing favorite teams system
- **Logging**: Clear logging of dynamic team resolution
- **Backward Compatibility**: Regular team names work exactly as before
### 3. Configuration Updates (`config/config.template.json`)
- **Example Usage**: Added `"AP_TOP_25"` to NCAA FB configuration example
- **Documentation**: Clear examples of how to use dynamic teams
### 4. Comprehensive Testing
- **Unit Tests**: `test/test_dynamic_team_resolver.py` - Core functionality
- **Integration Tests**: `test/test_dynamic_teams_simple.py` - Configuration integration
- **Edge Cases**: Unknown dynamic teams, empty lists, mixed teams
- **Performance**: Caching verification and performance testing
### 5. Documentation (`LEDMatrix.wiki/AP_TOP_25_DYNAMIC_TEAMS.md`)
- **Complete Guide**: How to use the feature
- **Configuration Examples**: Multiple usage scenarios
- **Technical Details**: API integration, caching, performance
- **Troubleshooting**: Common issues and solutions
- **Best Practices**: Recommendations for optimal usage
## 🔧 Technical Implementation
### Dynamic Team Resolution Process
1. **Detection**: Check if team name is in `DYNAMIC_PATTERNS`
2. **API Fetch**: Retrieve current rankings from ESPN API
3. **Resolution**: Convert dynamic name to actual team abbreviations
4. **Caching**: Store results for 1 hour to reduce API calls
5. **Integration**: Seamlessly work with existing favorite teams logic
### Supported Dynamic Teams
| Dynamic Team | Description | Teams Returned |
|-------------|-------------|----------------|
| `"AP_TOP_25"` | Current AP Top 25 | All 25 ranked teams |
| `"AP_TOP_10"` | Current AP Top 10 | Top 10 ranked teams |
| `"AP_TOP_5"` | Current AP Top 5 | Top 5 ranked teams |
### Configuration Examples
#### Basic AP Top 25 Usage
```json
{
"ncaa_fb_scoreboard": {
"enabled": true,
"show_favorite_teams_only": true,
"favorite_teams": ["AP_TOP_25"]
}
}
```
#### Mixed Regular and Dynamic Teams
```json
{
"ncaa_fb_scoreboard": {
"enabled": true,
"show_favorite_teams_only": true,
"favorite_teams": [
"UGA",
"AUB",
"AP_TOP_25"
]
}
}
```
## ✅ Testing Results
### All Tests Passing
- **Core Functionality**: ✅ Dynamic team resolution works correctly
- **API Integration**: ✅ Successfully fetches AP Top 25 from ESPN
- **Caching**: ✅ 1-hour cache reduces API calls significantly
- **Edge Cases**: ✅ Unknown dynamic teams, empty lists handled properly
- **Performance**: ✅ Second call uses cache (0.000s vs 0.062s)
- **Integration**: ✅ Works seamlessly with existing sports managers
### Test Coverage
- **Unit Tests**: 6 test categories, all passing
- **Integration Tests**: Configuration integration verified
- **Edge Cases**: 4 edge case scenarios tested
- **Performance**: Caching and API call optimization verified
## 🎉 Benefits for Users
### Automatic Updates
- **Weekly Updates**: Rankings automatically update when ESPN releases new rankings
- **No Manual Work**: Users don't need to manually update team lists
- **Always Current**: Always shows games for the current top-ranked teams
### Flexible Options
- **Multiple Ranges**: Choose from AP_TOP_5, AP_TOP_10, or AP_TOP_25
- **Mixed Usage**: Combine with regular favorite teams
- **Easy Configuration**: Simple addition to existing config
### Performance Optimized
- **Efficient Caching**: 1-hour cache reduces API calls
- **Background Updates**: Rankings fetched in background
- **Minimal Overhead**: Only fetches when dynamic teams are used
## 🔮 Future Enhancements
The system is designed to be extensible for future dynamic team types:
- `"PLAYOFF_TEAMS"`: Teams in playoff contention
- `"CONFERENCE_LEADERS"`: Conference leaders
- `"HEISMAN_CANDIDATES"`: Teams with Heisman candidates
- `"RIVALRY_GAMES"`: Traditional rivalry matchups
## 📋 Usage Instructions
### For Users
1. **Add to Config**: Add `"AP_TOP_25"` to your `favorite_teams` list
2. **Enable Filtering**: Set `"show_favorite_teams_only": true`
3. **Enjoy**: System automatically shows games for current top 25 teams
### For Developers
1. **Import**: `from src.dynamic_team_resolver import DynamicTeamResolver`
2. **Resolve**: `resolver.resolve_teams(["AP_TOP_25"], 'ncaa_fb')`
3. **Integrate**: Works automatically with existing SportsCore classes
## 🎯 Success Metrics
- **✅ Feature Complete**: All planned functionality implemented
- **✅ Fully Tested**: Comprehensive test suite with 100% pass rate
- **✅ Well Documented**: Complete documentation and examples
- **✅ Performance Optimized**: Efficient caching and API usage
- **✅ User Friendly**: Simple configuration, automatic updates
- **✅ Backward Compatible**: Existing configurations continue to work
## 🚀 Ready for Production
The AP Top 25 Dynamic Teams feature is fully implemented, tested, and ready for production use. Users can now enjoy automatically updating favorite teams that follow the current AP Top 25 rankings without any manual intervention.

View File

@@ -0,0 +1,208 @@
# Background Data Service for LEDMatrix
## Overview
The Background Data Service is a new feature that implements background threading for season data fetching to prevent blocking the main display loop. This significantly improves responsiveness and user experience during data fetching operations.
## Key Benefits
- **Non-blocking**: Season data fetching no longer blocks the main display loop
- **Immediate Response**: Returns cached or partial data immediately while fetching complete data in background
- **Configurable**: Can be enabled/disabled per sport with customizable settings
- **Thread-safe**: Uses proper synchronization for concurrent access
- **Retry Logic**: Automatic retry with exponential backoff for failed requests
- **Progress Tracking**: Comprehensive logging and statistics
## Architecture
### Core Components
1. **BackgroundDataService**: Main service class managing background threads
2. **FetchRequest**: Represents individual fetch operations
3. **FetchResult**: Contains results of fetch operations
4. **Sport Managers**: Updated to use background service
### How It Works
1. **Cache Check**: First checks for cached data and returns immediately if available
2. **Background Fetch**: If no cache, starts background thread to fetch complete season data
3. **Partial Data**: Returns immediate partial data (current/recent games) for quick display
4. **Completion**: Background fetch completes and caches full dataset
5. **Future Requests**: Subsequent requests use cached data for instant response
## Configuration
### NFL Configuration Example
```json
{
"nfl_scoreboard": {
"enabled": true,
"background_service": {
"enabled": true,
"max_workers": 3,
"request_timeout": 30,
"max_retries": 3,
"priority": 2
}
}
}
```
### Configuration Options
- **enabled**: Enable/disable background service (default: true)
- **max_workers**: Maximum number of background threads (default: 3)
- **request_timeout**: HTTP request timeout in seconds (default: 30)
- **max_retries**: Maximum retry attempts for failed requests (default: 3)
- **priority**: Request priority (higher = more important, default: 2)
## Implementation Status
### Phase 1: Background Season Data Fetching ✅ COMPLETED
- [x] Created BackgroundDataService class
- [x] Implemented thread-safe data caching
- [x] Added retry logic with exponential backoff
- [x] Modified NFL manager to use background service
- [x] Added configuration support
- [x] Created test script
### Phase 2: Rollout to Other Sports (Next Steps)
- [ ] Apply to NCAAFB manager
- [ ] Apply to NBA manager
- [ ] Apply to NHL manager
- [ ] Apply to MLB manager
- [ ] Apply to other sport managers
## Testing
### Test Script
Run the test script to verify background service functionality:
```bash
python test_background_service.py
```
### Test Scenarios
1. **Cache Hit**: Verify immediate return of cached data
2. **Background Fetch**: Verify non-blocking background data fetching
3. **Partial Data**: Verify immediate return of partial data during background fetch
4. **Completion**: Verify background fetch completion and caching
5. **Subsequent Requests**: Verify cache usage for subsequent requests
6. **Service Disabled**: Verify fallback to synchronous fetching
### Expected Results
- Initial fetch should return partial data immediately (< 1 second)
- Background fetch should complete within 10-30 seconds
- Subsequent fetches should use cache (< 0.1 seconds)
- No blocking of main display loop
## Performance Impact
### Before Background Service
- Season data fetch: 10-30 seconds (blocking)
- Display loop: Frozen during fetch
- User experience: Poor responsiveness
### After Background Service
- Initial response: < 1 second (partial data)
- Background fetch: 10-30 seconds (non-blocking)
- Display loop: Continues normally
- User experience: Excellent responsiveness
## Monitoring
### Logs
The service provides comprehensive logging:
```
[NFL] Background service enabled with 3 workers
[NFL] Starting background fetch for 2024 season schedule...
[NFL] Using 15 immediate events while background fetch completes
[NFL] Background fetch completed for 2024: 256 events
```
### Statistics
Access service statistics:
```python
stats = background_service.get_statistics()
print(f"Total requests: {stats['total_requests']}")
print(f"Cache hits: {stats['cached_hits']}")
print(f"Average fetch time: {stats['average_fetch_time']:.2f}s")
```
## Error Handling
### Automatic Retry
- Failed requests are automatically retried with exponential backoff
- Maximum retry attempts are configurable
- Failed requests are logged with error details
### Fallback Behavior
- If background service is disabled, falls back to synchronous fetching
- If background fetch fails, returns partial data if available
- Graceful degradation ensures system continues to function
## Future Enhancements
### Phase 2 Features
- Apply to all sport managers
- Priority-based request queuing
- Dynamic worker scaling
- Request batching for efficiency
### Phase 3 Features
- Real-time data streaming
- WebSocket support for live updates
- Advanced caching strategies
- Performance analytics dashboard
## Troubleshooting
### Common Issues
1. **Background service not starting**
- Check configuration: `background_service.enabled = true`
- Verify cache manager is properly initialized
- Check logs for initialization errors
2. **Slow background fetches**
- Increase `request_timeout` in configuration
- Check network connectivity
- Monitor API rate limits
3. **Memory usage**
- Background service automatically cleans up old requests
- Adjust `max_workers` if needed
- Monitor cache size
### Debug Mode
Enable debug logging for detailed information:
```python
logging.getLogger('src.background_data_service').setLevel(logging.DEBUG)
```
## Contributing
When adding background service support to new sport managers:
1. Import the background service
2. Initialize in `__init__` method
3. Update data fetching method to use background service
4. Add configuration options
5. Test thoroughly
6. Update documentation
## License
This feature is part of the LEDMatrix project and follows the same license terms.

341
README.md
View File

@@ -1,2 +1,341 @@
# ProSports-LED-Scoreboard
# ProSport LED Scoreboard
### This is my personal testing fork.
- Any details you need about hardware or setting up the RPI can be found on the main ChuckBuilds github page.
- This fork will be for professional sports only. Besides the clock, I have or will be removing all other modules that are not sports related.
### Connect with ChuckBuilds
- Git Address: https://github.com/ChuckBuilds/LEDMatrix
-----------------------------------------------------------------------------------
### Matrix Details
<details>
<summary>About</summary>
The system supports live, recent, and upcoming game information for multiple sports leagues:
- NHL (Hockey) (2x 64x32 Displays 4mm Pixel Pitch)
![DSC01356](https://github.com/user-attachments/assets/64c359b6-4b99-4dee-aca0-b74debda30e0)
![DSC01339](https://github.com/user-attachments/assets/2ccc52af-b4ed-4c06-a341-581506c02153)
![DSC01337](https://github.com/user-attachments/assets/f4faf678-9f43-4d37-be56-89ecbd09acf6)
- NBA (Basketball)
- MLB (Baseball) (2x 64x32 Displays 4mm Pixel Pitch)
![DSC01359](https://github.com/user-attachments/assets/71e985f1-d2c9-4f0e-8ea1-13eaefeec01c)
- NFL (Football) (2x 96x48 Displays 2.5mm Pixel Pitch)
<img width="2109" height="541" alt="image" src="https://github.com/user-attachments/assets/d10212c9-0d45-4f87-b61d-0a33afb9f160" />
- NCAA Football (2x 96x48 Displays 2.5mm Pixel Pitch)
<img width="2417" height="610" alt="image" src="https://github.com/user-attachments/assets/9be92869-ee29-4809-9337-69977f228e23" />
- NCAA Men's Basketball
- NCAA Men's Baseball
- Soccer (Premier League, La Liga, Bundesliga, Serie A, Ligue 1, Liga Portugal, Champions League, Europa League, MLS)
- (Note, some of these sports seasons were not active during development and might need fine tuning when games are active)
### Custom Display Features
- Custom Text display (2x 64x32 Displays 4mm Pixel Pitch)
![DSC01379](https://github.com/user-attachments/assets/338b7578-9d4b-4465-851c-7e6a1d999e07)
- Font testing Display (not in rotation)
</details>
-----------------------------------------------------------------------------------
## Installation Steps
<details>
<summary>System Setup & Installation</summary>
# System Setup & Installation
1. Open PowerShell and ssh into your Raspberry Pi with ledpi@ledpi (or Username@Hostname)
```bash
ssh ledpi@ledpi
```
2. Update repositories, upgrade raspberry pi OS, install git
```bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y git python3-pip cython3 build-essential python3-dev python3-pillow scons
```
3. Clone this repository:
```bash
git clone https://github.com/rampar20/LEDMatrix.git
cd LEDMatrix
```
4. First-time installation (recommended)
```bash
chmod +x first_time_install.sh
sudo ./first_time_install.sh
```
This single script installs services, dependencies, configures permissions and sudoers, and validates the setup.
</details>
<details>
<summary>Sports Configuration (Football Example)</summary>
## Football Game-Based Configuration (NFL & NCAA FB)
For NFL and NCAA Football, the system now uses a game-based fetch approach instead of time-based windows. This is more practical for football since games are weekly and you want to show specific numbers of games rather than arbitrary time periods.
### Configuration Options
Instead of using `past_fetch_days` and `future_fetch_days`, the system now uses:
- **`fetch_past_games`**: Number of recent games to fetch (default: 1)
- **`fetch_future_games`**: Number of upcoming games to fetch (default: 1)
### Example Configuration
```json
{
"nfl_scoreboard": {
"enabled": true,
"fetch_past_games": 1,
"fetch_future_games": 1,
"favorite_teams": ["TB", "DAL"]
},
"ncaa_fb_scoreboard": {
"enabled": true,
"fetch_past_games": 1,
"fetch_future_games": 1,
"favorite_teams": ["UGA", "AUB"]
}
}
```
### How It Works
- **`fetch_past_games: 1`**: Shows the most recent game for your favorite teams
- **`fetch_future_games: 1`**: Shows the next upcoming game for your favorite teams
- **`fetch_future_games: 2`**: Shows the next two upcoming games (e.g., Week 1 and Week 2 matchups)
### Benefits
1. **Predictable Results**: Always shows exactly the number of games you specify
2. **Season Flexibility**: Works well both during the season and in the off-season
3. **Future Planning**: Can show games far in the future (e.g., Week 1 when it's 40 days away)
4. **Efficient**: Only fetches the games you actually want to see
### Use Cases
- **During Season**: `fetch_future_games: 1` shows next week's game
- **Off-Season**: `fetch_future_games: 1` shows the first scheduled game (even if it's months away)
- **Planning**: `fetch_future_games: 2` shows the next two matchups for planning purposes
</details>
-----------------------------------------------------------------------------------
### Managing the Service
<details>
<summary>Service Commands</summary>
The following commands are available to manage the service:
```bash
# Stop the display
sudo systemctl stop ledmatrix.service
# Start the display
sudo systemctl start ledmatrix.service
# Check service status
sudo systemctl status ledmatrix.service
# View logs
journalctl -u ledmatrix.service
# Disable autostart
sudo systemctl disable ledmatrix.service
# Enable autostart
sudo systemctl enable ledmatrix.service
```
</details>
<details>
<summary>Convenience Scripts</summary>
### Convenience Scripts
Two convenience scripts are provided for easy service management:
- `start_display.sh` - Starts the LED matrix display service
- `stop_display.sh` - Stops the LED matrix display service
Make them executable with:
```bash
chmod +x start_display.sh stop_display.sh
```
Then use them to control the service:
```bash
sudo ./start_display.sh
sudo ./stop_display.sh
```
</details>
-----------------------------------------------------------------------------------
## Information
<details>
<summary>Display Settings from RGBLEDMatrix Library</summary>
## Display Settings
If you are copying my setup, you can likely leave this alone.
- hardware: Configures how the matrix is driven.
- rows, cols, chain_length: Physical panel configuration.
- brightness: Display brightness (0100).
- hardware_mapping: Use "adafruit-hat-pwm" for Adafruit bonnet WITH the jumper mod. Remove -pwm if you did not solder the jumper.
- pwm_bits, pwm_dither_bits, pwm_lsb_nanoseconds: Affect color fidelity.
- limit_refresh_rate_hz: Cap refresh rate for better stability.
- runtime:
- gpio_slowdown: Tweak this depending on your Pi model. Match it to the generation (e.g., Pi 3 → 3, Pi 4 -> 4).
- display_durations:
- Control how long each display module stays visible in seconds. For example, if you want more focus on stocks, increase that value.
### Modules
- Each module (weather, stocks, crypto, calendar, etc.) has enabled, update_interval, and often display_format settings.
- Sports modules also support test_mode, live_update_interval, and favorite_teams.
- Logos are loaded from the logo_dir path under assets/sports/...
</details>
<details>
<summary>Cache Information</summary>
### Persistent Caching Setup
The LEDMatrix system uses persistent caching to improve performance and reduce API calls. When running with `sudo`, the system needs a persistent cache directory that survives restarts.
**First-Time Setup:**
Run the setup script to create a persistent cache directory:
```bash
chmod +x setup_cache.sh
./setup_cache.sh
```
This will:
- Create `/var/cache/ledmatrix/` directory
- Set proper ownership to your user account
- Set permissions to allow the daemon user (which the system runs as) to write
- Test writability for both your user and the daemon user
**If You Still See Cache Warnings:**
If you see warnings about using temporary cache directory, run the permissions fix:
```bash
chmod +x fix_cache_permissions.sh
./fix_cache_permissions.sh
```
**Manual Setup:**
If you prefer to set up manually:
```bash
sudo mkdir -p /var/cache/ledmatrix
sudo chown $USER:$USER /var/cache/ledmatrix
sudo chmod 777 /var/cache/ledmatrix
```
**Cache Locations (in order of preference):**
1. `~/.ledmatrix_cache/` (user's home directory) - **Most persistent**
2. `/var/cache/ledmatrix/` (system cache directory) - **Persistent across restarts**
3. `/opt/ledmatrix/cache/` (alternative persistent location)
4. `/tmp/ledmatrix_cache/` (temporary directory) - **NOT persistent**
**Note:** If the system falls back to `/tmp/ledmatrix_cache/`, you'll see a warning message and the cache will not persist across restarts.
## Caching System
The LEDMatrix system includes a robust caching mechanism to optimize API calls and reduce network traffic:
### Cache Location
- Default cache directory: `/tmp/ledmatrix_cache`
- Cache files are stored with proper permissions (755 for directories, 644 for files)
- When running as root/sudo, cache ownership is automatically adjusted to the real user
### Cached Data Types
- Weather data (current conditions and forecasts)
- Stock prices and market data
- Stock news headlines
- ESPN game information
### Cache Behavior
- Data is cached based on update intervals defined in `config.json`
- Cache is automatically invalidated when:
- Update interval has elapsed
- Market is closed (for stock data)
- Data has changed significantly
- Failed API calls fall back to cached data when available
- Cache files use atomic operations to prevent corruption
### Cache Management
- Cache files are automatically created and managed
- No manual intervention required
- Cache directory is created with proper permissions on first run
- Temporary files are used for safe updates
- JSON serialization handles all data types including timestamps
</details>
<details>
<summary>Date Format Configuration </summary>
## Date Format Configuration
You can customize the date format for upcoming games across all sports displays. The `use_short_date_format` setting in `config/config.json` under the `display` section controls this behavior.
- **`"use_short_date_format": true`**: Displays dates in a short, numerical format (e.g., "8/30").
- **`"use_short_date_format": false`** (Default): Displays dates in a more descriptive format with an ordinal suffix (e.g., "Aug 30th").
### Example `config.json`
```json
"display": {
"hardware": {
...
},
"runtime": {
...
},
"display_durations": {
...
},
"use_short_date_format": false // Set to true for "8/30" format
},
```
</details>
## Final Notes
- Most configuration is done via config/config.json
- A caching system reduces API strain and helps ensure the display doesn't hammer external services (and ruin it for everyone)
- I purposely did not include the same detailed information as the main project readme, if you need those details please visit the main project GIT.
### If you've read this far — thanks!

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -0,0 +1,4 @@
{
"last_updated": 0,
"map": {}
}

BIN
assets/fonts/4x6-font.ttf Normal file

Binary file not shown.

11981
assets/fonts/4x6.bdf Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

25905
assets/fonts/5x7.bdf Normal file

File diff suppressed because it is too large Load Diff

21422
assets/fonts/5x8.bdf Normal file

File diff suppressed because it is too large Load Diff

20768
assets/fonts/6x9.bdf Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

10184
assets/fonts/MatrixLight8X.bdf Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,70 @@
""" Pasted from cursor chat to be able to use bdf fonts easier in the future """
""" Font Loading """
import freetype
face = freetype.Face("path/to/font.bdf")
""" rendering the character """
# Load the character
face.load_char(char)
# Get the bitmap data
bitmap = face.glyph.bitmap
# The bitmap data is stored in a packed format where:
# - Each byte represents 8 pixels
# - bitmap.pitch is the number of bytes per row
# - bitmap.width is the width in pixels
# - bitmap.rows is the height in pixels
" Drawing the character "
#For each row in the bitmap
for i in range(bitmap.rows):
# For each pixel in the row
for j in range(bitmap.width):
# Calculate which byte contains this pixel
byte_index = i * bitmap.pitch + (j // 8)
# Get the byte
byte = bitmap.buffer[byte_index]
# Check if the specific bit is set (1 = draw pixel)
if byte & (1 << (7 - (j % 8))):
# Draw the pixel at (x + j, y + i)
draw.point((x + j, y + i), fill=(255, 255, 255))
" Character Spacing "
# Move to next character position using the font's advance
x += face.glyph.advance.x >> 6 # Advance is in 1/64th of pixels
""" Key Points:
BDF fonts are bitmap fonts, so they have a fixed size
The bitmap data is stored in a packed format (8 pixels per byte)
Each bit in a byte represents whether a pixel should be drawn (1) or not (0)
The pitch value tells you how many bytes are in each row
The advance value tells you how far to move for the next character
Example Usage: """
def draw_bdf_text(draw, text, x, y, font_path):
face = freetype.Face(font_path)
for char in text:
face.load_char(char)
bitmap = face.glyph.bitmap
# Draw the character
for i in range(bitmap.rows):
for j in range(bitmap.width):
byte_index = i * bitmap.pitch + (j // 8)
if byte_index < len(bitmap.buffer):
byte = bitmap.buffer[byte_index]
if byte & (1 << (7 - (j % 8))):
draw.point((x + j, y + i), fill=(255, 255, 255))
# Move to next character
x += face.glyph.advance.x >> 6

9993
assets/fonts/ic8x8u.bdf Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,972 @@
NCAAF
AMH => Amherst Mammoths
ANN => Anna Maria College Amcats
ARIZ => Arizona Wildcats
ARK => Arkansas Razorbacks
ASU => Arizona State Sun Devils
AUB => Auburn Tigers
BOIS => Boise State Broncos
BRST => Bridgewater State Bears
BUENA => Buena Vista Beavers
CAL => California Golden Bears
CAR => Carroll University (WI) Pioneers
CLA => Claremont-Mudd-Scripps College Stags
COLBY => Colby College White Mules
COLO => Colorado Buffaloes
CONN => UConn Huskies
CP => Cal Poly Mustangs
CSU => Colorado State Rams
CUR => Curry College Colonels
DEL => Delaware Blue Hens
DUB => Dubuque Spartans
ELM => Elmhurst Bluejays
FAMU => Florida A&M Rattlers
FLA => Florida Gators
FSU => Florida State Seminoles
GRI => Grinnell Pioneers
GT => Georgia Tech Yellow Jackets
GTWN => Georgetown Hoyas
HAW => Hawai'i Rainbow Warriors
HOW => Howard Bison
IDHO => Idaho Vandals
ISU => Iowa State Cyclones
JXST => Jacksonville State Gamecocks
LUT => Luther Norse
MESA => Colorado Mesa Mavericks
MIL => Millikin Big Blue
MOR => Morehouse College Maroon Tigers
NOR => North Park Vikings
RED => Redlands Bulldogs
SAC => Sacramento State Hornets
SDSU => San Diego State Aztecs
SJSU => San José State Spartans
STAN => Stanford Cardinal
STET => Stetson Hatters
UAB => UAB Blazers
UCLA => UCLA Bruins
UGA => Georgia Bulldogs
USA => South Alabama Jaguars
USC => USC Trojans
USF => South Florida Bulls
YALE => Yale Bulldogs
NBA
ATL => Atlanta Hawks
BKN => Brooklyn Nets
BOS => Boston Celtics
CHA => Charlotte Hornets
CHI => Chicago Bulls
CLE => Cleveland Cavaliers
DAL => Dallas Mavericks
DEN => Denver Nuggets
DET => Detroit Pistons
GS => Golden State Warriors
HOU => Houston Rockets
IND => Indiana Pacers
LAC => LA Clippers
LAL => Los Angeles Lakers
MEM => Memphis Grizzlies
MIA => Miami Heat
MIL => Milwaukee Bucks
MIN => Minnesota Timberwolves
NO => New Orleans Pelicans
NY => New York Knicks
OKC => Oklahoma City Thunder
ORL => Orlando Magic
PHI => Philadelphia 76ers
PHX => Phoenix Suns
POR => Portland Trail Blazers
SA => San Antonio Spurs
SAC => Sacramento Kings
TOR => Toronto Raptors
UTAH => Utah Jazz
WSH => Washington Wizards
NFL
ARI => Arizona Cardinals
ATL => Atlanta Falcons
BAL => Baltimore Ravens
BUF => Buffalo Bills
CAR => Carolina Panthers
CHI => Chicago Bears
CIN => Cincinnati Bengals
CLE => Cleveland Browns
DAL => Dallas Cowboys
DEN => Denver Broncos
DET => Detroit Lions
GB => Green Bay Packers
HOU => Houston Texans
IND => Indianapolis Colts
JAX => Jacksonville Jaguars
KC => Kansas City Chiefs
LAC => Los Angeles Chargers
LAR => Los Angeles Rams
LV => Las Vegas Raiders
MIA => Miami Dolphins
MIN => Minnesota Vikings
NE => New England Patriots
NO => New Orleans Saints
NYG => New York Giants
NYJ => New York Jets
PHI => Philadelphia Eagles
PIT => Pittsburgh Steelers
SEA => Seattle Seahawks
SF => San Francisco 49ers
TB => Tampa Bay Buccaneers
TEN => Tennessee Titans
WSH => Washington
NCAA BASKETBALL
AAMU => Alabama A&M Bulldogs
ACU => Abilene Christian Wildcats
AFA => Air Force Falcons
AKR => Akron Zips
ALA => Alabama Crimson Tide
ALB => Albany Great Danes
ALCN => Alcorn State Braves
ALST => Alabama State Hornets
AMCC => Texas A&M-CC Islanders
AMER => American Eagles
APP => Appalachian State Mountaineers
APSU => Austin Peay Governors
ARIZ => Arizona Wildcats
ARK => Arkansas Razorbacks
ARMY => Army Black Knights
ARST => Arkansas State Red Wolves
ASU => Arizona State Sun Devils
AUB => Auburn Tigers
BALL => Ball State Cardinals
BAY => Baylor Bears
BC => Boston College Eagles
BEL => Belmont Bruins
BELL => Bellarmine Knights
BGSU => Bowling Green Falcons
BING => Binghamton Bearcats
BRAD => Bradley Braves
BRWN => Brown Bears
BRY => Bryant Bulldogs
BSU => Boise State Broncos
BU => Boston University Terriers
BUCK => Bucknell Bison
BUFF => Buffalo Bulls
BUT => Butler Bulldogs
BYU => BYU Cougars
CAL => California Golden Bears
CAM => Campbell Fighting Camels
CAN => Canisius Golden Griffins
CCAR => Coastal Carolina Chanticleers
CCSU => Central Connecticut Blue Devils
CHAR => Charlotte 49ers
CHIC => Chicago State Cougars
CHSO => Charleston Southern Buccaneers
CIN => Cincinnati Bearcats
CLEM => Clemson Tigers
CLEV => Cleveland State Vikings
CLMB => Columbia Lions
CMU => Central Michigan Chippewas
COFC => Charleston Cougars
COLG => Colgate Raiders
COLO => Colorado Buffaloes
CONN => UConn Huskies
COPP => Coppin State Eagles
COR => Cornell Big Red
CP => Cal Poly Mustangs
CREI => Creighton Bluejays
CSU => Colorado State Rams
CSUB => CSU Bakersfield Roadrunners
CSUF => CSU Fullerton Titans
CSUN => CSU Northridge Matadors
DART => Dartmouth Big Green
DAV => Davidson Wildcats
DAY => Dayton Flyers
DEL => Delaware Blue Hens
DEN => Denver Pioneers
DEP => DePaul Blue Demons
DET => Detroit Mercy Titans
DREX => Drexel Dragons
DRKE => Drake Bulldogs
DSU => Delaware State Hornets
DUKE => Duke Blue Devils
DUQ => Duquesne Dukes
ECU => East Carolina Pirates
EIU => Eastern Illinois Panthers
EKU => Eastern Kentucky Colonels
ELON => Elon Phoenix
EMU => Eastern Michigan Eagles
ETSU => East Tennessee State Buccaneers
EVAN => Evansville Purple Aces
EWU => Eastern Washington Eagles
FAIR => Fairfield Stags
FAMU => Florida A&M Rattlers
FAU => Florida Atlantic Owls
FDU => Fairleigh Dickinson Knights
FGCU => Florida Gulf Coast Eagles
FIU => Florida International Panthers
FLA => Florida Gators
FOR => Fordham Rams
FRES => Fresno State Bulldogs
FSU => Florida State Seminoles
FUR => Furman Paladins
GASO => Georgia Southern Eagles
GAST => Georgia State Panthers
GB => Green Bay Phoenix
GCU => Grand Canyon Antelopes
GMU => George Mason Patriots
GONZ => Gonzaga Bulldogs
GT => Georgia Tech Yellow Jackets
GTWN => Georgetown Hoyas
GW => George Washington Colonials
GWEB => Gardner-Webb Bulldogs
HALL => Seton Hall Pirates
HAMP => Hampton Pirates
HART => Hartford Hawks
HARV => Harvard Crimson
HAW => Hawai'i Rainbow Warriors
HBU => Houston Baptist Huskies
HC => Holy Cross Crusaders
HOF => Hofstra Pride
HOU => Houston Cougars
HOW => Howard Bison
HP => High Point Panthers
IDHO => Idaho Vandals
IDST => Idaho State Bengals
ILL => Illinois Fighting Illini
ILST => Illinois State Redbirds
INST => Indiana State Sycamores
IONA => Iona Gaels
IOWA => Iowa Hawkeyes
ISU => Iowa State Cyclones
IU => Indiana Hoosiers
IUPU => IUPUI Jaguars
JAX => Jacksonville Dolphins
JKST => Jackson State Tigers
JMU => James Madison Dukes
JOES => Saint Joseph's Hawks
JVST => Jacksonville State Gamecocks
KENN => Kennesaw State Owls
KENT => Kent State Golden Flashes
KSU => Kansas State Wildcats
KU => Kansas Jayhawks
L-MD => Loyola (MD) Greyhounds
LAF => Lafayette Leopards
LAM => Lamar Cardinals
LAS => La Salle Explorers
LBSU => Long Beach State Beach
LEH => Lehigh Mountain Hawks
LIB => Liberty Flames
LIP => Lipscomb Bisons
LIU => Long Island University Sharks
LMU => Loyola Marymount Lions
LONG => Longwood Lancers
LOU => Louisville Cardinals
LSU => LSU Tigers
LT => Louisiana Tech Bulldogs
LUC => Loyola Chicago Ramblers
M-OH => Miami (OH) Redhawks
MAN => Manhattan Jaspers
MARQ => Marquette Golden Eagles
MASS => UMass Minutemen
MD => Maryland Terrapins
ME => Maine Black Bears
MEM => Memphis Tigers
MIA => Miami Hurricanes
MICH => Michigan Wolverines
MILW => Milwaukee Panthers
MINN => Minnesota Golden Gophers
MISS => Ole Miss Rebels
MIZ => Missouri Tigers
MONM => Monmouth Hawks
MONT => Montana Grizzlies
MORE => Morehead State Eagles
MORG => Morgan St Bears
MOST => Missouri State Bears
MRMK => Merrimack Warriors
MRSH => Marshall Thundering Herd
MRST => Marist Red Foxes
MSM => Mount St. Mary's Mountaineers
MSST => Mississippi State Bulldogs
MSU => Michigan State Spartans
MTST => Montana State Bobcats
MTU => Middle Tennessee Blue Raiders
MUR => Murray State Racers
NAU => Northern Arizona Lumberjacks
NAVY => Navy Midshipmen
NCAT => North Carolina A&T Aggies
NCCU => North Carolina Central Eagles
NCST => NC State Wolfpack
ND => Notre Dame Fighting Irish
NE => Northeastern Huskies
NEB => Nebraska Cornhuskers
NEV => Nevada Wolf Pack
NIAG => Niagara Purple Eagles
NIU => Northern Illinois Huskies
NJIT => NJIT Highlanders
NKU => Northern Kentucky Norse
NMSU => New Mexico State Aggies
NORF => Norfolk St Spartans
NW => Northwestern Wildcats
OAK => Oakland Golden Grizzlies
ODU => Old Dominion Monarchs
OHIO => Ohio Bobcats
OKST => Oklahoma State Cowboys
ORE => Oregon Ducks
ORST => Oregon State Beavers
ORU => Oral Roberts Golden Eagles
OSU => Ohio State Buckeyes
OU => Oklahoma Sooners
PAC => Pacific Tigers
PENN => Pennsylvania Quakers
PFW => Purdue Fort Wayne Mastodons
PITT => Pittsburgh Panthers
PRES => Presbyterian Blue Hose
PRIN => Princeton Tigers
PROV => Providence Friars
PRST => Portland State Vikings
PSU => Penn State Nittany Lions
PUR => Purdue Boilermakers
QUIN => Quinnipiac Bobcats
RAD => Radford Highlanders
RICE => Rice Owls
RICH => Richmond Spiders
RID => Rider Broncs
RMU => Robert Morris Colonials
RUTG => Rutgers Scarlet Knights
SAC => Sacramento State Hornets
SBU => St. Bonaventure Bonnies
SC => South Carolina Gamecocks
SCST => South Carolina State Bulldogs
SCUP => South Carolina Upstate Spartans
SDAK => South Dakota Coyotes
SDSU => San Diego State Aztecs
SEMO => Southeast Missouri State Redhawks
SFBK => St. Francis (BKN) Terriers
SFPA => St. Francis (PA) Red Flash
SHU => Sacred Heart Pioneers
SIE => Siena Saints
SIU => Southern Illinois Salukis
SIUE => SIU Edwardsville Cougars
SJSU => San José St Spartans
SJU => St. John's Red Storm
SLU => Saint Louis Billikens
SMU => SMU Mustangs
SPU => Saint Peter's Peacocks
STAN => Stanford Cardinal
STBK => Stony Brook Seawolves
STET => Stetson Hatters
SUU => Southern Utah Thunderbirds
SYR => Syracuse Orange
TA&M => Texas A&M Aggies
TCU => TCU Horned Frogs
TEM => Temple Owls
TENN => Tennessee Volunteers
TEX => Texas Longhorns
TLSA => Tulsa Golden Hurricane
TNST => Tennessee State Tigers
TNTC => Tennessee Tech Golden Eagles
TOL => Toledo Rockets
TOW => Towson Tigers
TTU => Texas Tech Red Raiders
TULN => Tulane Green Wave
TXST => Texas State Bobcats
UAB => UAB Blazers
UALR => Little Rock Trojans
UAPB => Arkansas-Pine Bluff Golden Lions
UCA => Central Arkansas Bears
UCD => UC Davis Aggies
UCF => UCF Knights
UCI => UC Irvine Anteaters
UCLA => UCLA Bruins
UCR => UC Riverside Highlanders
UCSB => UC Santa Barbara Gauchos
UCSD => UC San Diego Tritons
UGA => Georgia Bulldogs
UIC => UIC Flames
UK => Kentucky Wildcats
ULL => Louisiana Ragin' Cajuns
UMBC => UMBC Retrievers
UMKC => UM Kansas City Roos
UML => UMass Lowell River Hawks
UNA => North Alabama Lions
UNC => North Carolina Tar Heels
UNCA => UNC Asheville Bulldogs
UNCO => Northern Colorado Bears
UNCW => UNC Wilmington Seahawks
UND => North Dakota Fighting Hawks
UNF => North Florida Ospreys
UNH => New Hampshire Wildcats
UNI => Northern Iowa Panthers
UNLV => UNLV Rebels
UNM => New Mexico Lobos
UNT => North Texas Mean Green
URI => Rhode Island Rams
USA => South Alabama Jaguars
USC => USC Trojans
USD => San Diego Toreros
USF => South Florida Bulls
USM => Southern Miss Golden Eagles
USU => Utah State Aggies
UTA => UT Arlington Mavericks
UTAH => Utah Utes
UTC => Chattanooga Mocs
UTEP => UTEP Miners
UTM => UT Martin Skyhawks
UTRGV => UT Rio Grande Valley Vaqueros
UTSA => UTSA Roadrunners
UVA => Virginia Cavaliers
UVM => Vermont Catamounts
VALP => Valparaiso
VAN => Vanderbilt Commodores
VCU => VCU Rams
VILL => Villanova Wildcats
VT => Virginia Tech Hokies
W&M => William & Mary Tribe
WAG => Wagner Seahawks
WAKE => Wake Forest Demon Deacons
WASH => Washington Huskies
WEB => Weber State Wildcats
WICH => Wichita State Shockers
WIN => Winthrop Eagles
WISC => Wisconsin Badgers
WKU => Western Kentucky Hilltoppers
WMU => Western Michigan Broncos
WRST => Wright State Raiders
WSU => Washington State Cougars
WVU => West Virginia Mountaineers
WYO => Wyoming Cowboys
XAV => Xavier Musketeers
YALE => Yale Bulldogs
YSU => Youngstown State Penguins
MLB
ARI => Arizona Diamondbacks
ATL => Atlanta Braves
BAL => Baltimore Orioles
BOS => Boston Red Sox
CHC => Chicago Cubs
CHW => Chicago White Sox
CIN => Cincinnati Reds
CLE => Cleveland Indians
COL => Colorado Rockies
DET => Detroit Tigers
HOU => Houston Astros
KC => Kansas City Royals
LAA => Los Angeles Angels
LAD => Los Angeles Dodgers
MIA => Miami Marlins
MIL => Milwaukee Brewers
MIN => Minnesota Twins
NYM => New York Mets
NYY => New York Yankees
OAK => Oakland Athletics
PHI => Philadelphia Phillies
PIT => Pittsburgh Pirates
SD => San Diego Padres
SEA => Seattle Mariners
SF => San Francisco Giants
STL => St. Louis Cardinals
TB => Tampa Bay Rays
TEX => Texas Rangers
TOR => Toronto Blue Jays
WSH => Washington Nationals
MLS
ATL => Atlanta United FC
ATX => Austin FC
CHI => Chicago Fire FC
CIN => FC Cincinnati
CLB => Columbus Crew
COL => Colorado Rapids
DAL => FC Dallas
DC => DC United
HOU => Houston Dynamo FC
LA => LA Galaxy
LAFC => LAFC
MIA => Inter Miami CF
MIN => Minnesota United FC
MTL => CF Montréal
NE => New England Revolution
NSH => Nashville SC
NY => New York Red Bulls
NYC => New York City FC
ORL => Orlando City SC
PHI => Philadelphia Union
POR => Portland Timbers
RSL => Real Salt Lake
SEA => Seattle Sounders FC
SJ => San Jose Earthquakes
SKC => Sporting Kansas City
TOR => Toronto FC
VAN => Vancouver Whitecaps
NHL
ANA => Anaheim Ducks
ARI => Arizona Coyotes
BOS => Boston Bruins
BUF => Buffalo Sabres
CAR => Carolina Hurricanes
CBJ => Columbus Blue Jackets
CGY => Calgary Flames
CHI => Chicago Blackhawks
COL => Colorado Avalanche
DAL => Dallas Stars
DET => Detroit Red Wings
EDM => Edmonton Oilers
FLA => Florida Panthers
LA => Los Angeles Kings
MIN => Minnesota Wild
MTL => Montreal Canadiens
NJ => New Jersey Devils
NSH => Nashville Predators
NYI => New York Islanders
NYR => New York Rangers
OTT => Ottawa Senators
PHI => Philadelphia Flyers
PIT => Pittsburgh Penguins
SEA => Seattle Kraken
SJ => San Jose Sharks
STL => St. Louis Blues
TB => Tampa Bay Lightning
TOR => Toronto Maple Leafs
VAN => Vancouver Canucks
VGS => Vegas Golden Knights
WPG => Winnipeg Jets
WSH => Washington Capitals
NCAAF Conferences/Divisions
Conferences currently unsupported
NBA Conferences/Divisions
East_SE
ATL => Atlanta Hawks
CHA => Charlotte Hornets
MIA => Miami Heat
ORL => Orlando Magic
WSH => Washington Wizards
East_AT
BKN => Brooklyn Nets
BOS => Boston Celtics
NY => New York Knicks
PHI => Philadelphia 76ers
TOR => Toronto Raptors
East_CE
CHI => Chicago Bulls
CLE => Cleveland Cavaliers
DET => Detroit Pistons
IND => Indiana Pacers
MIL => Milwaukee Bucks
West_SW
DAL => Dallas Mavericks
HOU => Houston Rockets
MEM => Memphis Grizzlies
NO => New Orleans Pelicans
SA => San Antonio Spurs
West_NW
DEN => Denver Nuggets
MIN => Minnesota Timberwolves
OKC => Oklahoma City Thunder
POR => Portland Trail Blazers
UTAH => Utah Jazz
West_PA
GS => Golden State Warriors
LAC => LA Clippers
LAL => Los Angeles Lakers
PHX => Phoenix Suns
SAC => Sacramento Kings
NFL Conferences/Divisions
AFC_SOUTH
HOU => Houston Texans
IND => Indianapolis Colts
JAX => Jacksonville Jaguars
TEN => Tennessee Titans
NFC_WEST
ARI => Arizona Cardinals
LAR => Los Angeles Rams
SEA => Seattle Seahawks
SF => San Francisco 49ers
NFC_SOUTH
ATL => Atlanta Falcons
CAR => Carolina Panthers
NO => New Orleans Saints
TB => Tampa Bay Buccaneers
AFC_NORTH
BAL => Baltimore Ravens
CIN => Cincinnati Bengals
CLE => Cleveland Browns
PIT => Pittsburgh Steelers
AFC_EAST
BUF => Buffalo Bills
MIA => Miami Dolphins
NE => New England Patriots
NYJ => New York Jets
NFC_NORTH
CHI => Chicago Bears
DET => Detroit Lions
GB => Green Bay Packers
MIN => Minnesota Vikings
NFC_EAST
DAL => Dallas Cowboys
NYG => New York Giants
PHI => Philadelphia Eagles
WSH => Washington
AFC_WEST
DEN => Denver Broncos
KC => Kansas City Chiefs
LAC => Los Angeles Chargers
LV => Las Vegas Raiders
NCAA BASKETBALL Conferences/Divisions
NCAA_pat
NAVY => Navy Midshipmen
NCAA_aac
SMU => SMU Mustangs
TULN => Tulane Green Wave
WICH => Wichita State Shockers
NCAA_atl10
JOES => Saint Joseph's Hawks
VCU => VCU Rams
NCAA_meac
MORG => Morgan St Bears
NCAT => North Carolina A&T Aggies
NCCU => North Carolina Central Eagles
NORF => Norfolk St Spartans
SCST => South Carolina State Bulldogs
NCAA_mvc
MOST => Missouri State Bears
UNI => Northern Iowa Panthers
VALP => Valparaiso
NCAA_midam
NIU => Northern Illinois Huskies
TOL => Toledo Rockets
WMU => Western Michigan Broncos
NCAA_big12
TCU => TCU Horned Frogs
TTU => Texas Tech Red Raiders
NCAA_neast
BRY => Bryant Bulldogs
LIU => Long Island University Sharks
MRMK => Merrimack Warriors
SFBK => St. Francis (BKN) Terriers
SFPA => St. Francis (PA) Red Flash
SHU => Sacred Heart Pioneers
WAG => Wagner Seahawks
NCAA_bige
HALL => Seton Hall Pirates
PROV => Providence Friars
SJU => St. John's Red Storm
XAV => Xavier Musketeers
NCAA_bsky
NAU => Northern Arizona Lumberjacks
PRST => Portland State Vikings
UNCO => Northern Colorado Bears
WEB => Weber State Wildcats
NCAA_mwest
NEV => Nevada Wolf Pack
UNLV => UNLV Rebels
WYO => Wyoming Cowboys
NCAA_aeast
NJIT => NJIT Highlanders
STBK => Stony Brook Seawolves
UMBC => UMBC Retrievers
NCAA_pac12
ORE => Oregon Ducks
NCAA_bsou
PRES => Presbyterian Blue Hose
RAD => Radford Highlanders
SCUP => South Carolina Upstate Spartans
UNCA => UNC Asheville Bulldogs
WIN => Winthrop Eagles
NCAA_big10
PUR => Purdue Boilermakers
NCAA_maac
MAN => Manhattan Jaspers
MONM => Monmouth Hawks
MRST => Marist Red Foxes
QUIN => Quinnipiac Bobcats
RID => Rider Broncs
SIE => Siena Saints
SPU => Saint Peter's Peacocks
NCAA_acc
MIA => Miami Hurricanes
NCAA_a-sun
UNA => North Alabama Lions
UNF => North Florida Ospreys
NCAA_hor
GB => Green Bay Phoenix
OAK => Oakland Golden Grizzlies
PFW => Purdue Fort Wayne Mastodons
RMU => Robert Morris Colonials
WRST => Wright State Raiders
YSU => Youngstown State Penguins
NCAA_ovc
MORE => Morehead State Eagles
SEMO => Southeast Missouri State Redhawks
SIUE => SIU Edwardsville Cougars
TNST => Tennessee State Tigers
TNTC => Tennessee Tech Golden Eagles
UTM => UT Martin Skyhawks
NCAA_sec
SC => South Carolina Gamecocks
TENN => Tennessee Volunteers
NCAA_col
W&M => William & Mary Tribe
NCAA_usa
CHAR => Charlotte 49ers
MTU => Middle Tennessee Blue Raiders
USM => Southern Miss Golden Eagles
UTEP => UTEP Miners
UTSA => UTSA Roadrunners
NCAA_bigw
CSUB => CSU Bakersfield Roadrunners
CSUN => CSU Northridge Matadors
UCSB => UC Santa Barbara Gauchos
MLB Conferences/Divisions
NL_NLW
ARI => Arizona Diamondbacks
COL => Colorado Rockies
LAD => Los Angeles Dodgers
SD => San Diego Padres
SF => San Francisco Giants
NL_NLE
ATL => Atlanta Braves
MIA => Miami Marlins
NYM => New York Mets
PHI => Philadelphia Phillies
WSH => Washington Nationals
AL_ALE
BAL => Baltimore Orioles
BOS => Boston Red Sox
NYY => New York Yankees
TB => Tampa Bay Rays
TOR => Toronto Blue Jays
NL_NLC
CHC => Chicago Cubs
CIN => Cincinnati Reds
MIL => Milwaukee Brewers
PIT => Pittsburgh Pirates
STL => St. Louis Cardinals
AL_ALC
CHW => Chicago White Sox
CLE => Cleveland Indians
DET => Detroit Tigers
KC => Kansas City Royals
MIN => Minnesota Twins
AL_ALW
HOU => Houston Astros
LAA => Los Angeles Angels
OAK => Oakland Athletics
SEA => Seattle Mariners
TEX => Texas Rangers
Soccer Leagues:
LEAGUE_SLUGS = {
"eng.1": "Premier League",
"esp.1": "La Liga",
"ger.1": "Bundesliga",
"ita.1": "Serie A",
"fra.1": "Ligue 1",
"uefa.champions": "Champions League",
"uefa.europa": "Europa League",
"usa.1": "MLS",
"por.1": "Liga Portugal", # Add this line
}
Soccer - Premier League (England)
ARS => Arsenal
AVL => Aston Villa
BHA => Brighton & Hove Albion
BOU => AFC Bournemouth
BRE => Brentford
BUR => Burnley
CHE => Chelsea
CRY => Crystal Palace
EVE => Everton
FUL => Fulham
LIV => Liverpool
LUT => Luton Town
MCI => Manchester City
MUN => Manchester United
NEW => Newcastle United
NFO => Nottingham Forest
SHU => Sheffield United
TOT => Tottenham Hotspur
WHU => West Ham United
WOL => Wolverhampton Wanderers
Soccer - La Liga (Spain)
ALA => Alavés
ATH => Athletic Bilbao
ATM => Atlético Madrid
BAR => Barcelona
BET => Real Betis
CAG => Cagliari
CEL => Celta Vigo
ESP => Espanyol
GET => Getafe
GIR => Girona
LAZ => Lazio
LEG => Leganés
RAY => Rayo Vallecano
RMA => Real Madrid
SEV => Sevilla
VAL => Valencia
VLD => Valladolid
Soccer - Bundesliga (Germany)
BOC => VfL Bochum
BOL => VfL Bochum
DOR => Borussia Dortmund
FCA => FC Augsburg
FCB => Bayern Munich
FCU => FC Union Berlin
HAC => Hannover 96
HDH => Hertha BSC
KOL => 1. FC Köln
LEV => Bayer Leverkusen
M05 => Mainz 05
RBL => RB Leipzig
SCF => SC Freiburg
SGE => Eintracht Frankfurt
STU => VfB Stuttgart
SVW => Werder Bremen
TSG => TSG Hoffenheim
WOB => VfL Wolfsburg
Soccer - Serie A (Italy)
ATA => Atalanta
CAG => Cagliari
EMP => Empoli
FIO => Fiorentina
INT => Inter Milan
JUV => Juventus
LAZ => Lazio
MIL => AC Milan
MON => Monza
NAP => Napoli
ROM => Roma
TOR => Torino
UDI => Udinese
VER => Hellas Verona
Soccer - Ligue 1 (France)
LIL => Lille
LPM => Lille
LYON => Lyon
MAR => Marseille
MON => Monaco
NAN => Nantes
NICE => Nice
OL => Olympique Lyonnais
OM => Olympique de Marseille
PAR => Paris Saint-Germain
PSG => Paris Saint-Germain
REN => Rennes
STR => Strasbourg
Soccer - Champions League
AJA => Ajax
ASM => AS Monaco
ASS => AS Saint-Étienne
BOC => VfL Bochum
CEL => Celtic
COM => Club Brugge
FCA => FC Augsburg
FCB => Bayern Munich
FCU => FC Union Berlin
FIO => Fiorentina
GEN => Genoa
HAC => Hannover 96
IPS => Ipswich Town
KSV => Kaiserslautern
LEC => Lecce
LIL => Lille
LIV => Liverpool
M05 => Mainz 05
MCI => Manchester City
MUN => Manchester United
NAN => Nantes
OSA => Osasuna
RBL => RB Leipzig
RCL => RC Lens
RMA => Real Madrid
SCF => SC Freiburg
SGE => Eintracht Frankfurt
SR => Sporting CP
STP => St. Pauli
SVW => Werder Bremen
TFC => Toulouse FC
TOT => Tottenham Hotspur
TSG => TSG Hoffenheim
UDI => Udinese
VEN => Venezia
VFB => VfB Stuttgart
VIL => Villarreal
Soccer - Liga Portugal (Portugal)
ARO => Arouca
BEN => SL Benfica
BRA => SC Braga
CHA => Chaves
EST => Estoril Praia
FAM => Famalicão
GIL => Gil Vicente
MOR => Moreirense
POR => FC Porto
PTM => Portimonense
RIO => Rio Ave
SR => Sporting CP
VGU => Vitória de Guimarães
VSC => Vitória de Setúbal
Soccer - Other Teams
austin => Austin FC
cf_montral => CF Montréal
charlotte => Charlotte FC
dortmund => Borussia Dortmund
gladbach => Borussia Mönchengladbach
lafc => Los Angeles FC
leverkusen => Bayer Leverkusen
nycfc => New York City FC
paris_sg => Paris Saint-Germain
st_louis => St. Louis City SC
MLS Conferences/Divisions
Conferences currently unsupported
NHL Conferences/Divisions
West_PAC
ANA => Anaheim Ducks
CGY => Calgary Flames
EDM => Edmonton Oilers
LA => Los Angeles Kings
SEA => Seattle Kraken
SJ => San Jose Sharks
VAN => Vancouver Canucks
VGS => Vegas Golden Knights
West_CEN
ARI => Arizona Coyotes
CHI => Chicago Blackhawks
COL => Colorado Avalanche
DAL => Dallas Stars
MIN => Minnesota Wild
NSH => Nashville Predators
STL => St. Louis Blues
WPG => Winnipeg Jets
East_ATL
BOS => Boston Bruins
BUF => Buffalo Sabres
DET => Detroit Red Wings
FLA => Florida Panthers
MTL => Montreal Canadiens
OTT => Ottawa Senators
TB => Tampa Bay Lightning
TOR => Toronto Maple Leafs
East_MET
CAR => Carolina Hurricanes
CBJ => Columbus Blue Jackets
NJ => New Jersey Devils
NYI => New York Islanders
NYR => New York Rangers
PHI => Philadelphia Flyers
PIT => Pittsburgh Penguins
WSH => Washington Capitals

Binary file not shown.

After

Width:  |  Height:  |  Size: 352 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 386 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 402 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 306 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

View File

@@ -0,0 +1,409 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 25.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="Layer_1" x="0px" y="0px" width="154.45552389996837" height="145.0" viewBox="0 0 673 631.8" style="enable-background:new 0 0 673 631.8;" xml:space="preserve" preserveAspectRatio="xMidYMid meet">
<style type="text/css">
.st0{fill:#FFFFFF;}
.st1{fill:#231F20;}
.st2{fill:#D31245;}
.st3{fill:#6A737B;}
.st4{fill:#B0B7BC;}
.st5{fill:#A68462;}
.st6{fill:#F6A2B6;}
.st7{fill:#C4CED4;}
</style>
<path class="st0" d="M671.6,122.8c-1.5-3.9-3.9-7.1-6.5-9.8c-5.3-5.4-13.1-10.4-22.4-15.1c-18.4-9.3-45.1-18.6-75.1-26.5
c-52.7-13.9-116.4-23.9-163.8-22.9l-0.2-1.2c0.1-12.8-8.4-27.7-18.3-31.9c-1.2-0.5-2.5-0.9-4.1-1.3l-2.1-1.5c-0.9-1.2-2-2.2-3.1-3.1
c-0.9-0.7-1.9-1.4-4.1-3.2c-4.8-7-12.7-7.9-21.2-3.8l-2.3,1l-1.8-0.2c-2.5-0.2-6.2-0.3-10.8,1.1l-1.6,0.5l-4.8,2
c-9.1-0.1-19.8,0.3-31.7,1.7c-14.9,2.5-31.9,8.3-45,15.9c-4.2,2.4-8.1,5.8-11,9.4c-2.2,2.1-4.5,4.9-6,7.9c-1.9,3.9-3.4,8.2-4.6,12.5
l-0.7,2.6l-2.6,0.8c-2.2,0.7-4.5,1.2-7,1.6c-27.6,4-51.8,10.3-53.9,10.8c-12.5,3.1-15.6,16.3-10,24.8c-6,2-12.2,4.2-18.5,6.4
l-17.8,6.4l-4.2,101.7l39.4-4.9l-8.7,18.5l-5,4.4l1.8,1.4l-4,7.7l-4.6-1.4c-0.4,1.1-0.6,2.3-0.8,3.7c-0.1,1-0.1,1.9-0.1,3.2
l-0.8,2.3c-1.6,2.6-3,5-4.7,7.4c-1.5,2.2-2.8,3.6-4.1,4.7l-4,3.2l-0.9,5c-0.9,5.1-1.2,9.9-0.4,15.5l-0.6,2.6
c-3.9,7-7.9,14.9-12,24.7c-3.6,4.9-7.2,11.7-8.5,19.1l-40.2,85.4l-21.6,22.4L0,495.8l27.6,15.9L10,631.8l86.9-48.2l40.3-95.3
c20.3-6.7,46.4-13.7,74.9-20.5l-22.7-11.4c-5.9,1.5-11.6,3-17.1,4.4c-0.3,0.1-0.7,0.2-1,0.3c-2.4,0.6-4.8,1.3-7.1,1.9
c-0.3,0.1-0.6,0.2-0.9,0.3c-5.1,1.4-10,2.9-14.6,4.2c-0.5,0.1-0.9,0.3-1.4,0.4c-1.7,0.5-3.4,1.1-5,1.6c-0.6,0.2-1.3,0.4-1.9,0.6
c-1.5,0.5-2.9,0.9-4.4,1.4c-0.6,0.2-1.1,0.4-1.7,0.6c-1.9,0.6-3.8,1.3-5.5,1.9L87.3,572l-42.6,23.6l-15.5,8.6l15.6-107L22,484.1
l24.5-41.3l22.8-23.6l21.2-44.9l21.6-46c1-4.6,3.4-9.1,6-12.8l16-34.1c-1.5-4.5-1.6-8.9-0.6-14.2c5.5-4.5,8.5-10.4,12.4-16.5
c0.4-0.7,1.6-0.4,2.7-0.2l1.6-3.5c-0.8-2.2-2.4-4.1-2.1-6.8c0.2-1.8,1.5-2.8,1.7-4.6c2.2,0.1,4.2-0.2,6.1-0.7l24.2-51.5l-47.3,5.9
l2.9-70c25.3-9,48.2-16.3,69.9-22.3c-1-0.4-2-0.7-3-1.1c-11.7-3.9-31.2-7.4-32.3-7.6c-0.1,0-0.1,0-0.1,0c0,0-0.1,0-0.1,0
c-0.3,0-0.6-0.1-0.9-0.3c-0.1,0-0.1-0.1-0.2-0.1c-0.2-0.1-0.4-0.2-0.6-0.4c-0.1-0.1-0.1-0.1-0.2-0.2c-0.1-0.1-0.2-0.3-0.3-0.4
c0-0.1-0.1-0.2-0.1-0.3c0-0.1-0.1-0.3-0.1-0.4c0-0.1,0-0.2,0-0.3c0-0.1,0-0.3,0.1-0.4c0-0.1,0.1-0.2,0.1-0.3
c0.1-0.2,0.3-0.5,0.5-0.7c0.1-0.1,0.2-0.2,0.4-0.3c0.1-0.1,0.2-0.2,0.4-0.2c0.1,0,0.2-0.1,0.3-0.1c0.1,0,0.1-0.1,0.1-0.1
c0.1-0.1,0.3-0.1,0.4-0.1c0,0,0,0,0,0c0,0,0.1,0,0.2,0c0.3-0.1,1-0.3,2.3-0.6c0,0,0.1,0,0.1,0c0.5-0.1,1-0.3,1.6-0.4
c0.1,0,0.2-0.1,0.3-0.1c0.5-0.1,1.1-0.3,1.7-0.4c0.2-0.1,0.5-0.1,0.8-0.2c0.6-0.1,1.2-0.3,1.8-0.4c0.3-0.1,0.6-0.1,0.9-0.2
c0.7-0.2,1.3-0.3,2.1-0.5c0.3-0.1,0.7-0.2,1-0.2c0.7-0.2,1.5-0.3,2.2-0.5c0.4-0.1,0.8-0.2,1.2-0.3c0.8-0.2,1.6-0.3,2.4-0.5
c0.5-0.1,0.9-0.2,1.4-0.3c0.8-0.2,1.7-0.4,2.6-0.5c0.5-0.1,1-0.2,1.4-0.3c0.9-0.2,1.8-0.4,2.8-0.6c0.5-0.1,1-0.2,1.5-0.3
c1-0.2,1.9-0.4,2.9-0.6c0.5-0.1,1-0.2,1.6-0.3c1-0.2,2.1-0.4,3.2-0.6c0.5-0.1,1-0.2,1.5-0.3c1.1-0.2,2.2-0.4,3.4-0.6
c0.5-0.1,1-0.2,1.5-0.3c1.2-0.2,2.4-0.4,3.7-0.6c0.4-0.1,0.9-0.2,1.3-0.2c1.7-0.3,3.4-0.5,5.1-0.8c7.8-1.1,14-3.6,19.7-6.3
c1.2-6.9,2.9-13.6,5.5-18.7c0.9-1.7,2.2-3.3,3.9-4.7c1.8-2.6,4.4-4.9,7.6-6.8c10-5.8,22.5-10.5,34.3-13.1c0-0.1,0.1-0.1,0.1-0.2
c1.6-2.3,4.8-3.6,9.3-3.8c5.5-0.3,8.7,0.3,10.6,1.6c7.5-0.4,14.3-0.4,20.2-0.2l5.7-3.3c4.4-1.4,7.1,0.1,11.6-0.4
c3.6-0.4,8.2-5.4,9.7-2c1.6,3.7,6.2,3.4,7.9,7.1c2,4.4,6.4,3.9,10.8,5.8c8,3.4,10.7,14.7,9,21.2c2.8,5.6,5.1,11.8,6.9,18
c82-2,219.9,30.9,253.6,59.9c2.3,2,4.1,3.9,5.4,5.8c0,0,0,0,0,0c0.4,0.6,0.7,1.2,1,1.8c0.1,0.1,0.1,0.3,0.2,0.4
c0.2,0.5,0.4,0.9,0.5,1.4c0.1,0.2,0.1,0.3,0.2,0.5c0.1,0.4,0.2,0.8,0.2,1.2c0,0.2,0.1,0.4,0.1,0.6c0,0.4,0,0.8,0,1.2
c0,0.2,0,0.4,0,0.5c-0.1,0.6-0.2,1.1-0.4,1.7c0,0-4.9,73.8-34,91.6l-5.8,3.4c3.3,3.6,6.1,7.5,8.4,11.8c13.4-8.8,22.7-22.8,28.4-34.6
c5.9-12.3,9.8-25.5,12.5-36.7c4.2-18.1,5.9-34.6,6.5-40.5C673.8,130.8,672.7,125.9,671.6,122.8z"/>
<path class="st0" d="M471.4,322.2c0.1,5.1-0.7,11.5-2.1,18.5c2.1,0.1,4.3,0.1,6.4,0.3c16.9-3.7,34.8-7.9,43.7-8.2
c28.1,0.4,74.1,3,74.1,3s3.6,3.2,8.1,8.5h0c1.4,1.7,3,3.7,4.5,5.8c0.2,0.2,0.3,0.5,0.5,0.8c0.6,0.8,1.1,1.6,1.7,2.4
c0.3,0.4,0.5,0.8,0.8,1.2c0.5,0.7,0.9,1.5,1.4,2.2c0.3,0.5,0.5,0.9,0.8,1.4c0.4,0.7,0.8,1.5,1.2,2.3c0.3,0.5,0.5,1,0.8,1.6
c0.4,0.8,0.7,1.6,1.1,2.4c0.2,0.5,0.4,1,0.7,1.6c0.4,0.9,0.7,1.8,1,2.7c0.2,0.5,0.3,0.9,0.5,1.4c0.4,1.4,0.8,2.8,1.1,4.2v0
c1.4,7.1,1.2,14.6-2,22.1c-0.5,1.2-1.1,2.3-1.9,3.5c-0.2,0.4-0.5,0.8-0.8,1.2c-0.5,0.8-1.1,1.6-1.6,2.4c-0.4,0.5-0.8,1-1.1,1.4
c-0.6,0.7-1.1,1.5-1.8,2.2c-0.4,0.5-0.9,1-1.4,1.5c-0.6,0.7-1.3,1.4-2,2.1c-0.5,0.6-1.1,1.1-1.7,1.6c-0.7,0.7-1.5,1.4-2.3,2.1
c-0.6,0.6-1.2,1.1-1.9,1.7c-0.8,0.7-1.6,1.4-2.5,2.1c-0.7,0.6-1.4,1.1-2.1,1.7c-0.9,0.7-1.8,1.5-2.8,2.2c-0.7,0.6-1.5,1.1-2.3,1.7
c-1,0.7-2,1.5-3,2.2c-0.8,0.6-1.6,1.1-2.4,1.7c-1.1,0.8-2.2,1.5-3.3,2.2c-0.9,0.6-1.7,1.2-2.6,1.7c-1.2,0.8-2.4,1.5-3.6,2.3
c-0.9,0.6-1.8,1.1-2.7,1.7c-1.3,0.8-2.5,1.6-3.9,2.4c-0.9,0.6-1.8,1.1-2.8,1.7c-1.4,0.8-2.8,1.6-4.2,2.4c-0.9,0.5-1.8,1.1-2.8,1.6
c-1.5,0.9-3.1,1.7-4.6,2.6c-0.9,0.5-1.8,1-2.7,1.5c-1.7,0.9-3.4,1.9-5.2,2.8c-0.8,0.4-1.6,0.9-2.4,1.3c-2,1.1-4.1,2.1-6.1,3.2
c-0.6,0.3-1.2,0.6-1.8,0.9c-5.5,2.8-11.1,5.6-17,8.4c-0.3,0.1-0.6,0.3-0.9,0.4c-2.6,1.3-5.2,2.5-7.9,3.7c-0.8,0.4-1.5,0.7-2.3,1.1
c-2.2,1-4.5,2.1-6.7,3.1c-1,0.4-1.9,0.9-2.9,1.3c-2.1,0.9-4.2,1.9-6.4,2.9c-1.1,0.5-2.1,0.9-3.2,1.4c-2.1,0.9-4.1,1.8-6.2,2.7
l-3.5,1.5c-2.1,0.9-4.1,1.8-6.2,2.7c-1.2,0.5-2.4,1-3.6,1.5c-2.1,0.9-4.1,1.7-6.2,2.6c-1.3,0.5-2.5,1-3.8,1.6
c-2.1,0.9-4.2,1.7-6.2,2.6c-1.3,0.5-2.6,1-3.8,1.6c-2.1,0.8-4.2,1.7-6.3,2.5c-1.3,0.5-2.6,1-3.8,1.5c-2.1,0.8-4.3,1.7-6.4,2.5
c-1.3,0.5-2.6,1-3.8,1.5c-2.2,0.9-4.4,1.7-6.6,2.6c-1.2,0.5-2.5,0.9-3.7,1.4c-2.3,0.9-4.6,1.7-6.8,2.6c-1.2,0.5-2.4,0.9-3.6,1.4
c-2.4,0.9-4.7,1.8-7.1,2.7c-1.1,0.4-2.2,0.8-3.4,1.3c-2.6,0.9-5.1,1.9-7.7,2.8c-0.9,0.4-1.9,0.7-2.9,1.1c-2.8,1-5.7,2.1-8.5,3.1
c-0.7,0.3-1.4,0.5-2.1,0.7c-7.1,2.6-14.2,5.1-21.3,7.6c-0.2,0.1-0.5,0.2-0.7,0.2c-3.3,1.1-6.5,2.3-9.8,3.4c-0.9,0.3-1.9,0.6-2.8,1
c-2.5,0.9-5.1,1.7-7.6,2.6c-1.3,0.4-2.5,0.9-3.8,1.3c-2.2,0.8-4.4,1.5-6.6,2.2c-1.4,0.5-2.8,0.9-4.2,1.4c-2,0.7-4,1.4-6,2
c-1.5,0.5-3,1-4.5,1.5c-1.9,0.6-3.7,1.2-5.6,1.9c-1.6,0.5-3.1,1-4.7,1.6c-1.8,0.6-3.5,1.2-5.3,1.7c-1.6,0.5-3.2,1-4.8,1.6
c-1.7,0.6-3.4,1.1-5.1,1.6c-1.6,0.5-3.3,1.1-4.9,1.6c-1.6,0.5-3.1,1-4.7,1.5c-1.7,0.5-3.3,1.1-5,1.6c-1.5,0.5-3.1,1-4.6,1.4
c-1.7,0.5-3.3,1.1-5,1.6c-1.4,0.4-2.9,0.9-4.3,1.3c-1.7,0.5-3.4,1.1-5.1,1.6c-1.3,0.4-2.6,0.8-3.9,1.2c-1.8,0.6-3.5,1.1-5.3,1.6
c-1.1,0.3-2.2,0.7-3.3,1c-1.9,0.6-3.8,1.1-5.6,1.7c-0.9,0.3-1.8,0.6-2.7,0.8c-2,0.6-4,1.2-5.9,1.8c-0.6,0.2-1.3,0.4-1.9,0.6
c-2.2,0.6-4.3,1.3-6.4,1.9c0,0,0,0,0,0c-13.2,3.9-25.3,7.2-36,10.1c-0.1,0-0.2,0-0.3,0.1c-1.9,0.5-3.8,1-5.6,1.5
c-0.3,0.1-0.6,0.1-0.8,0.2c-1.7,0.5-3.4,0.9-5.1,1.3c-0.3,0.1-0.6,0.1-0.9,0.2c-1.6,0.4-3.2,0.8-4.7,1.2c-0.3,0.1-0.6,0.2-0.9,0.2
c-1.5,0.4-3,0.7-4.4,1.1c-0.3,0.1-0.5,0.1-0.8,0.2c-1.4,0.3-2.7,0.7-4,0.9c-0.2,0.1-0.5,0.1-0.7,0.2c-1.3,0.3-2.5,0.6-3.7,0.8
c-0.2,0-0.4,0.1-0.6,0.1c-1.2,0.3-2.3,0.5-3.4,0.7c-0.2,0-0.3,0.1-0.5,0.1c-1.1,0.2-2.1,0.4-3.1,0.6c-0.1,0-0.2,0-0.3,0.1
c-1,0.2-1.9,0.3-2.7,0.5h0c-3.6,0.6-6,0.7-6.9,0.4c-32-11.5,63.8-64.5,113.1-96.5c0.5,5.4-4.4,13.2,2.5,15.4c0.1,0,0.1,0.1,0.2,0.1
c0.3,0.1,0.8,0.2,1.3,0.2c0.1,0,0.2,0,0.3,0c0.6,0,1.2,0,1.9,0h0.1c0.7-0.1,1.6-0.1,2.5-0.2c0.1,0,0.1,0,0.2,0c1-0.1,2-0.3,3.2-0.5
c43.7-7.2,212.1-63.5,255.1-96.4c1.2-0.9,2.1-1.7,2.8-2.5c1.4-1.5,1.9-2.8,1.7-3.9c-17.5,4.2-31.5,6.7-31.5,6.7
c-13.2,7.2-30.1,14.8-48.7,22.3c0.1,0.3,0.1,0.6,0.1,0.6c0,0-0.1,0-0.1,0.1c0-0.2-0.1-0.4-0.1-0.6c-12.5,5.1-25.8,10.1-39.2,14.9
c0,0-0.1,0-0.1,0c-30.2,10.9-60.9,20.7-84.9,27.8c-0.6,0.2-1.2,0.4-1.8,0.5c-1.2,0.4-2.4,0.7-3.6,1c-0.8,0.2-1.7,0.5-2.5,0.7
c-1,0.3-2,0.6-3.1,0.9c-0.9,0.3-1.9,0.5-2.8,0.8c-0.9,0.2-1.7,0.5-2.5,0.7c-1,0.3-2,0.6-3,0.8c-0.7,0.2-1.4,0.4-2,0.6
c0,0-0.1,0-0.1,0c-0.7,0.2-1.4,0.4-2.1,0.6c-1.7,0.5-3.3,0.9-4.8,1.3c-0.1,0-0.1,0-0.2,0.1c-6.7,1.7-11.7,2.8-14.4,3.2l-0.5-0.3
c0,0.1,0,0.1,0,0.1c0,0.1,0,0.2-0.1,0.3c-3.5,0.8-6.2,1.3-7.9,1.6c0.2-1.7,0.3-3.8,0.2-5.9l-16-8.1l-2.1,1.4
c-25,16.2-61.6,37.7-88.1,56.6c-12.6,9-27.1,20.3-35.9,32.2c-16.8,22.7-9.4,37.5,2.5,41.8c12.5,4.2,132.2-29.9,244.3-70
c58.4-20.9,117.5-44.3,164.1-67.4c23.4-11.6,44.6-23.5,61.5-35.3c15.4-10.8,32.8-25.9,41.2-44.3c6-14,5.8-26.4,4-35.1
c-1.8-8.9-5.7-16.7-9.5-22.9c-3.9-6.2-8.2-11.4-11.5-15c-3.4-3.7-7.9-7.6-7.9-7.6s-49.7-2.8-78-3.2c-3.7,0.2-9.1,0.9-15.2,2
l26.2-15.3c-4.4-1.2-11.2-3.2-19.3-5.6L471.4,322.2L471.4,322.2z M522.2,167c-0.1-0.5-0.3-1-0.5-1.4v0c-0.3-0.5-0.6-1-1-1.4
c0-0.1-0.1-0.1-0.2-0.2c-0.3-0.4-0.8-0.8-1.2-1.1c-0.1-0.1-0.3-0.2-0.4-0.3c-0.6-0.4-1.2-0.8-2-1.2c-16.3-8.1-38.2-11.5-77.3-12
c-0.1,0.6-0.2,1.1-0.3,1.6c-0.1,0.5-0.1,0.9-0.3,1.4c-0.4,1.3-0.8,2.6-1.3,3.9c-0.3,0.6-0.5,1.1-0.7,1.6c0,0.1-0.1,0.1-0.1,0.2
c0.3,0.1,0.5,0.2,0.7,0.4c0.4,0.2,0.7,0.4,1.1,0.6c0.3,0.2,0.6,0.4,1,0.6c0.3,0.2,0.6,0.4,0.9,0.6c0.3,0.2,0.6,0.4,0.8,0.6
c0.3,0.2,0.6,0.4,0.8,0.6c0.2,0.2,0.5,0.3,0.7,0.5c0.4,0.4,0.8,0.7,1.2,1c0.2,0.2,0.4,0.4,0.6,0.6c0.2,0.2,0.3,0.3,0.5,0.5
c0.2,0.2,0.4,0.4,0.6,0.6c0.1,0.1,0.2,0.3,0.3,0.4c0.2,0.2,0.4,0.5,0.5,0.7c0,0.1,0.1,0.1,0.1,0.2c0.4,0.6,0.7,1.1,1,1.6
c5.4-1.7,11.3-2.4,17.1-1.5c11.7,1.9,18.5,14,17.4,27.7l38.2-20.1C520.3,173.6,523,170.6,522.2,167z"/>
<path class="st1" d="M244.2,515.2c-6.9-2.2-2-10-2.5-15.4c-49.3,32-145.1,85-113.1,96.5c0.9,0.3,3.3,0.1,6.9-0.4
C140.4,577.8,202.4,541.6,244.2,515.2z M257.4,524c15.3,4.8,217-60.4,264.6-96.9c9.1-6.9,4.3-10.4-10.2-11.2
c-0.7,0.8-1.6,1.6-2.8,2.5c-43,33-211.3,89.3-255.1,96.4C253.2,518.8,252.7,522.6,257.4,524z M44.7,498.4l0.2-1.1l-15.6,107
l15.5-8.6l13.1-89.7L44.7,498.4z M148.9,128.2c25.8-9.2,49.1-16.6,71.1-22.6c-3.8-2.2-7.3-4.5-9.7-6.2c-0.9-0.6-2.1-1.3-3.7-1.9
c-0.2-0.1-0.5-0.2-0.7-0.3c-21.7,6-44.6,13.3-69.9,22.3l-2.9,70l47.3-5.9l-33.9,4.3L148.9,128.2z M398.1,76.5c0.6,0,1.1-0.1,1.7-0.1
c2.8-1.3,4.6-2.1,4.7-2.1c0.7-0.4,2.3-0.1,2.9,0.6c0.4,0.4,0.8,0.8,1.2,1.2c73.9-1.9,193.2,24.7,240.8,51.2
c-33.7-29-171.6-61.9-253.6-59.9c0.8,2.6,1.5,5.2,2.1,7.8C397.8,75.4,397.9,75.9,398.1,76.5z M59.6,451.5l22.8-23.6l22.7-48.2
l-4.4-16.3c-0.3-4.2,1.3-7.7,4.5-10.5l14.3-3.9l1.2-2.5c-0.6-0.4-1.2-0.8-1.8-1.2c-6.8-4.4-8.1-10.8-6.7-17l-21.6,46l-21.2,44.9
l-22.8,23.6L22,484.1l22.8,13.1l-9.3-5.3L59.6,451.5z M134.8,283.1c-0.2-0.6-0.4-1.1-0.5-1.7l-16,34.1c0.4-0.6,0.8-1.1,1.2-1.6
C123.7,303.2,128.8,292.9,134.8,283.1z M150.8,250c0.1-1.1-0.1-2.1-0.4-3l-1.6,3.5C149.8,250.7,150.8,250.8,150.8,250z M184.3,211.2
l9-19l-18.2,2.3L156.1,235c2.9-0.6,5.6-1.7,8.2-2.7C169.2,224.3,176.1,217.4,184.3,211.2z M532.4,341.5c22.6,0.3,56.7,2.1,69.2,2.7
c-4.5-5.3-8.1-8.5-8.1-8.5s-46-2.6-74.1-3c-8.9,0.4-26.7,4.5-43.7,8.2c11.5,0.6,22.9,2,34.2,4.1
C519.1,343.2,527.3,341.7,532.4,341.5z M529.8,170c-2.4-1.1-5-2.1-7.7-3c0.8,3.5-1.9,6.6-1.9,6.6l-38.2,20.1c-0.1,1-0.2,2-0.3,3
c0,0.3-0.2,0.6-0.3,1c0.1,0.3,0.1,0.6,0.2,0.9c0.1,0.4,0.1,0.8,0.2,1.3c0.1,0.9,0.2,1.7,0.2,2.6c0,0.4,0,0.8,0,1.2
c0,0.9-0.1,1.9-0.1,2.8c0,0.3,0,0.7-0.1,1c-0.1,0.8-0.2,1.6-0.3,2.4l51.8-27.4C533.3,182.3,539.7,175.1,529.8,170z"/>
<path class="st2" d="M433.4,441c18.6-7.5,35.5-15.1,48.7-22.3c0,0,14-2.4,31.5-6.7c0.2,1.1-0.3,2.4-1.7,3.9
c14.4,0.9,19.3,4.4,10.2,11.2c-47.6,36.5-249.3,101.8-264.6,96.9c-4.7-1.4-4.2-5.2-3.4-9.2c-1.2,0.2-2.2,0.3-3.2,0.5
c-0.1,0-0.1,0-0.2,0c-0.9,0.1-1.8,0.2-2.5,0.2h-0.1c-0.7,0-1.3,0-1.9,0c-0.1,0-0.2,0-0.3,0c-0.5,0-1-0.1-1.3-0.2
c-0.1,0-0.1-0.1-0.2-0.1c-41.8,26.4-103.8,62.5-108.7,80.7h0c0.8-0.1,1.8-0.3,2.7-0.5c0.1,0,0.2,0,0.3-0.1c0.9-0.2,2-0.4,3.1-0.6
c0.1,0,0.3-0.1,0.5-0.1c1.1-0.2,2.2-0.5,3.4-0.7c0.2,0,0.4-0.1,0.6-0.1c1.2-0.2,2.4-0.5,3.7-0.8c0.2-0.1,0.5-0.1,0.7-0.2
c1.3-0.3,2.6-0.6,4-0.9c0.3-0.1,0.5-0.1,0.8-0.2c1.4-0.3,2.9-0.7,4.4-1.1c0.3-0.1,0.6-0.1,0.9-0.2c1.5-0.4,3.1-0.8,4.7-1.2
c0.3-0.1,0.6-0.1,0.9-0.2c1.7-0.4,3.4-0.9,5.1-1.3c0.3-0.1,0.6-0.1,0.8-0.2c1.8-0.5,3.7-1,5.6-1.5c0.1,0,0.2-0.1,0.3-0.1
c10.7-2.9,22.8-6.3,36-10.1c0,0,0,0,0,0c2.1-0.6,4.3-1.3,6.4-1.9c0.6-0.2,1.3-0.4,1.9-0.6c1.9-0.6,3.9-1.2,5.9-1.8
c0.9-0.3,1.8-0.5,2.7-0.8c1.9-0.6,3.7-1.1,5.6-1.7c1.1-0.3,2.2-0.7,3.3-1c1.7-0.5,3.5-1.1,5.3-1.6c1.3-0.4,2.6-0.8,3.9-1.2
c1.7-0.5,3.4-1,5.1-1.6c1.4-0.4,2.9-0.9,4.3-1.3c1.6-0.5,3.3-1,5-1.6c1.5-0.5,3.1-1,4.6-1.4c1.7-0.5,3.3-1.1,5-1.6
c1.6-0.5,3.1-1,4.7-1.5c1.6-0.5,3.3-1.1,4.9-1.6c1.7-0.6,3.4-1.1,5.1-1.6c1.6-0.5,3.2-1,4.8-1.6c1.8-0.6,3.5-1.1,5.3-1.7
c1.6-0.5,3.1-1,4.7-1.6c1.9-0.6,3.7-1.2,5.6-1.9c1.5-0.5,3-1,4.5-1.5c2-0.7,4-1.3,6-2c1.4-0.5,2.8-0.9,4.2-1.4
c2.2-0.7,4.4-1.5,6.6-2.2c1.3-0.4,2.5-0.9,3.8-1.3c2.5-0.9,5.1-1.7,7.6-2.6c0.9-0.3,1.9-0.6,2.8-1c3.3-1.1,6.5-2.3,9.8-3.4
c0.2-0.1,0.5-0.2,0.7-0.2c7.1-2.5,14.2-5,21.3-7.6c0.7-0.2,1.4-0.5,2.1-0.7c2.8-1,5.7-2.1,8.5-3.1c0.9-0.4,1.9-0.7,2.9-1.1
c2.6-0.9,5.1-1.9,7.7-2.8c1.1-0.4,2.2-0.8,3.4-1.3c2.4-0.9,4.7-1.8,7.1-2.7c1.2-0.5,2.4-0.9,3.6-1.4c2.3-0.9,4.6-1.7,6.8-2.6
c1.2-0.5,2.5-0.9,3.7-1.4c2.2-0.9,4.4-1.7,6.6-2.6c1.3-0.5,2.6-1,3.8-1.5c2.2-0.9,4.3-1.7,6.4-2.5c1.3-0.5,2.6-1,3.8-1.5
c2.1-0.9,4.2-1.7,6.3-2.5c1.3-0.5,2.6-1,3.8-1.6c2.1-0.9,4.2-1.7,6.2-2.6c1.3-0.5,2.5-1,3.8-1.6c2.1-0.9,4.2-1.7,6.2-2.6
c1.2-0.5,2.4-1,3.6-1.5c2.1-0.9,4.2-1.8,6.2-2.7c1.2-0.5,2.4-1,3.5-1.5c2.1-0.9,4.2-1.8,6.2-2.7c1.1-0.5,2.1-0.9,3.2-1.4
c2.1-0.9,4.3-1.9,6.4-2.9c1-0.4,1.9-0.9,2.9-1.3c2.3-1,4.5-2.1,6.7-3.1c0.8-0.4,1.5-0.7,2.3-1.1c2.7-1.2,5.3-2.5,7.9-3.7
c0.3-0.1,0.6-0.3,0.9-0.4c5.8-2.8,11.5-5.6,17-8.4c0.6-0.3,1.2-0.6,1.8-0.9c2.1-1.1,4.1-2.1,6.1-3.2c0.8-0.4,1.6-0.9,2.4-1.3
c1.7-0.9,3.5-1.9,5.2-2.8c0.9-0.5,1.8-1,2.7-1.5c1.6-0.9,3.1-1.7,4.6-2.6c0.9-0.5,1.8-1.1,2.8-1.6c1.4-0.8,2.8-1.6,4.2-2.4
c0.9-0.6,1.8-1.1,2.8-1.7c1.3-0.8,2.6-1.6,3.9-2.4c0.9-0.6,1.8-1.1,2.7-1.7c1.2-0.8,2.4-1.5,3.6-2.3c0.9-0.6,1.7-1.1,2.6-1.7
c1.1-0.7,2.2-1.5,3.3-2.2c0.8-0.6,1.6-1.1,2.4-1.7c1-0.7,2-1.5,3-2.2c0.8-0.6,1.5-1.1,2.3-1.7c0.9-0.7,1.9-1.5,2.8-2.2
c0.7-0.6,1.4-1.1,2.1-1.7c0.9-0.7,1.7-1.4,2.5-2.1c0.6-0.6,1.3-1.1,1.9-1.7c0.8-0.7,1.5-1.4,2.3-2.1c0.6-0.6,1.1-1.1,1.7-1.6
c0.7-0.7,1.4-1.4,2-2.1c0.5-0.5,1-1,1.4-1.5c0.6-0.7,1.2-1.5,1.8-2.2c0.4-0.5,0.8-0.9,1.1-1.4c0.6-0.8,1.1-1.6,1.6-2.4
c0.3-0.4,0.6-0.8,0.8-1.2c0.7-1.2,1.3-2.3,1.9-3.5c3.2-7.5,3.4-15,2-22.1v0c-0.3-1.4-0.7-2.8-1.1-4.2c-0.1-0.5-0.3-0.9-0.5-1.4
c-0.3-0.9-0.6-1.8-1-2.7c-0.2-0.5-0.4-1.1-0.7-1.6c-0.3-0.8-0.7-1.6-1.1-2.4c-0.3-0.5-0.5-1-0.8-1.6c-0.4-0.8-0.8-1.5-1.2-2.3
c-0.3-0.5-0.5-0.9-0.8-1.4c-0.4-0.8-0.9-1.5-1.4-2.2c-0.3-0.4-0.5-0.8-0.8-1.2c-0.5-0.8-1.1-1.6-1.7-2.4c-0.2-0.3-0.4-0.5-0.5-0.8
c-1.5-2.1-3.1-4.1-4.5-5.8h0c-12.6-0.7-46.7-2.4-69.2-2.7c-5.1,0.2-13.2,1.7-22.5,3.6c-11.3-2.1-22.7-3.5-34.2-4.1
c-2.1-0.1-4.3-0.2-6.4-0.3c-1.2,5.9-2.9,12.1-5,18.2c0.5,2.2,1.5,4.3,2.8,6.4c0.3,0.6,0,1.5-0.8,2l-6.9,4.6
c-0.1,0.1-0.2,0.1-0.4,0.1c-4.8,10.6-10.6,19.4-16.6,23c-1.9,2-3.7,3.7-5.4,3.7c-1.5,0-2.9-0.2-4.3-0.5c-0.5-0.1-1-0.2-1.5-0.3
c-0.4,0-0.9,0-1.3,0c-4.8,12.6-9,23.8-11.8,32.5c1,2.5,0.6,6.5,0.8,8.1c0.3,3,0.7,5.4,1,7.5C420.1,446.2,420.7,446.1,433.4,441
C433.3,441,433.4,441,433.4,441L433.4,441z"/>
<path class="st2" d="M265.6,494.7l0.5,0.3c2.7-0.4,7.7-1.5,14.4-3.2c1.2-4.7,2.9-9,6.2-11.2c0-18.3-27.5-16.5-80-56.1
c-0.7,0.9-1.5,1.9-2.2,2.9c-0.9,1.1-1.7,2.3-2.6,3.4c-0.9,1.1-1.9,2.1-3.1,3.1c-2.3,1.9-5.2,3.1-9,3.1c-4.3-0.1-7-0.8-11.3-1.1
c-0.7,0-1.4-0.6-1.5-1.2c-0.4-2.8-0.7-4.6-0.9-6.9c-1-0.4-2-0.8-3-1.4c-1,1.6-1.9,3.2-2.7,4.9c-0.2,0.4-0.9,0.8-1.5,0.8l-7.5-0.1
c-0.9,0-1.6-0.6-1.6-1.4c0-6.9-1.3-12.1-6.9-16.4c-0.3-0.2-0.6-0.7-0.6-1l0-3.6c-4.1-3.7-7.6-8.3-10.6-13.5l-1.4,3.3l-15.9,4.4
l-9.6-4.6l-9.1-17.1l-0.6-2.2l-22.7,48.2l-22.8,23.6l-24,40.4l9.3,5.3l-0.2,1.1l13.2,7.6l-13.1,89.7L87.3,572l41.5-97.9
c1.8-0.6,3.6-1.3,5.5-1.9c0.6-0.2,1.1-0.4,1.7-0.6c1.4-0.5,2.9-0.9,4.4-1.4c0.6-0.2,1.3-0.4,1.9-0.6c1.6-0.5,3.3-1,5-1.6
c0.5-0.1,0.9-0.3,1.4-0.4c4.6-1.4,9.5-2.8,14.6-4.2c0.3-0.1,0.6-0.2,0.9-0.3c2.3-0.6,4.7-1.3,7.1-1.9c0.4-0.1,0.7-0.2,1-0.3
c5.5-1.5,11.2-3,17.1-4.4l22.7,11.4l29.6,14.9l16,8.1L265.6,494.7z M193.3,192.2l-9,19c10.7-7.9,23.7-14.4,37.9-19.8l4.6-7.9
c-5.3-4.3-10.2-8.9-10.1-16.3c0.1-3.8,0.8-6.9,2-9.7c0.1-0.3,0.1-0.5,0.3-0.8c0.5-1.1,1.1-2.2,1.7-3.2c-5.8,2.5-15.5,6.5-15.2-1.7
c0-1,1.6-3.8,3.5-6.9c0-0.1,0-0.1-0.1-0.1c-0.2-0.5-0.2-1.2,0.1-1.7c0.1-0.1,0.2-0.2,0.3-0.3c0-0.1,0-0.3,0.1-0.4l-0.2-0.2
c-0.2-0.2-0.4-0.8-0.3-1.3c0-0.2,0.1-0.4,0.2-0.6c0-0.1,0.1-0.3,0.1-0.4c0.1-0.2,0.1-0.3,0.1-0.4c0-0.2,0-0.5-0.1-0.7
c-0.1-0.2-0.1-0.3-0.2-0.5c-0.1-0.2-0.2-0.5-0.3-0.7c-0.1-0.4-0.1-1.1,0.1-1.5c0.2-0.3,0.3-0.6,0.3-1.4c0-0.6,0.4-1.1,0.7-1.2
l1.7-0.2c0.4-1,1-1.4,1.5-1.6c0.4-0.1,0.7-0.2,1.1-0.3l0-0.5c0-0.5,0.4-1.1,0.7-1.3c0.1-0.1,0.2-0.1,0.3-0.2
c0.1-0.1,0.3-0.3,0.4-0.4c0.3-0.3,0.7-0.7,1.7-0.8c0.7,0,1.2,0.4,1.3,0.8c0.1,0.1,0.1,0.2,0.1,0.3c0.2,0.1,0.5,0.2,0.7,0.4
c4.5-6.5,9.6-13.5,13.6-17.8c-3.8-1.4-8.5-3.8-12.9-6.4c-22,6.1-45.3,13.5-71.1,22.6l-2.5,59.5l33.9-4.3l-5.2,11L193.3,192.2z
M408.4,76c5.5,5.5,15.2,12.1,24.8,18c2.8,1.7,1.4,5.2-1.8,4.5c-10.9-2.4-23.7-4.4-33.6,0.6c-0.6,0.6-1.1,1.3-1.7,1.9l29.6-2.7
c0.6-0.1,2,0.6,2.3,1.2l8.8,15.1c1.6,2.8-1,5.1-3.6,3.2c-2.5-1.8-6.1-3.4-9.2-3.9c-0.6-0.1-1.3-0.2-1.9-0.2c-0.2,0-0.4,0-0.6,0
c-0.5,0-1,0-1.5,0.1c0,0-0.1,0-0.1,0c0,0,0,0-0.1,0c0.2,0.1,0.4,0.2,0.6,0.3c0.3,0.1,0.6,0.3,0.8,0.4c0.4,0.2,0.8,0.5,1.1,0.7
c0.3,0.2,0.6,0.4,0.9,0.6c0.4,0.3,0.9,0.6,1.3,0.9c0.3,0.2,0.5,0.4,0.8,0.6c0.5,0.4,1,0.9,1.6,1.4c0.2,0.2,0.4,0.3,0.6,0.5
c0.7,0.7,1.4,1.4,2.1,2.2c0.1,0.2,0.3,0.3,0.4,0.5c0.6,0.6,1.1,1.3,1.6,2c0.2,0.3,0.5,0.6,0.7,1c0.4,0.6,0.8,1.1,1.2,1.7
c0.3,0.4,0.5,0.8,0.7,1.2c0.4,0.6,0.7,1.1,1,1.7c0.2,0.4,0.5,0.9,0.7,1.3c0.3,0.6,0.6,1.2,0.8,1.8c0.2,0.5,0.4,1,0.6,1.5
c0.2,0.6,0.4,1.2,0.6,1.9c0.2,0.5,0.3,1,0.4,1.5c0.2,0.6,0.3,1.3,0.4,1.9c0.1,0.5,0.2,1.1,0.3,1.6c0.1,0.7,0.2,1.3,0.2,2
c0,0.6,0.1,1.1,0.1,1.6c0,0.7,0,1.5-0.1,2.2c0,0.5,0,1.1-0.1,1.6c0,0.3-0.1,0.6-0.1,0.8c39.1,0.6,61,4,77.3,12
c0.8,0.4,1.4,0.8,2,1.2c0.2,0.1,0.3,0.2,0.4,0.3c0.5,0.4,0.9,0.8,1.2,1.1c0.1,0.1,0.1,0.1,0.2,0.2c0.4,0.5,0.7,1,1,1.4v0
c0.2,0.5,0.4,1,0.5,1.4c2.6,0.9,5.2,1.8,7.7,3c9.9,5.1,3.4,12.3,3.4,12.3l-51.8,27.4c-0.1,0.5-0.1,0.9-0.2,1.4
c-0.5,3.3-1.5,8-2.8,13.3c0.6,1.3,1.3,2.6,1.8,4c8.9,4.4,17.5,8.2,21,9.8l-5.3-8c0,0,12.7-0.5,18.3-0.4l-9.9-10.3l-7.4-7.7l-2.4-2.6
l-0.7-0.7c-0.4-0.6,0.3-0.6,0.3-0.6c10.6,0.1,68.4,11.1,83.1,14.4c7.3,1.6,21.1,5.2,28.4,6.3l0.9,0.3c3.7,2.6,6.9,5.4,9.8,8.6
l5.8-3.4c29-17.8,34-91.6,34-91.6c0.2-0.5,0.3-1.1,0.4-1.7c0-0.2,0-0.4,0-0.5c0-0.4,0-0.8,0-1.2c0-0.2,0-0.4-0.1-0.6
c0-0.4-0.1-0.8-0.2-1.2c0-0.2-0.1-0.3-0.2-0.5c-0.1-0.5-0.3-0.9-0.5-1.4c-0.1-0.1-0.1-0.3-0.2-0.4c-0.3-0.6-0.6-1.2-1-1.8
c0,0,0,0,0,0c-1.3-1.9-3.1-3.9-5.4-5.8C601.6,100.7,482.3,74.2,408.4,76z M121,348.5l7,3.1c0-0.3-0.1-0.6-0.1-0.9
c-0.6-0.2-1.1-0.5-1.7-0.8c-1.9-1-3.8-2.3-5.6-3.4l-1.2,2.5L121,348.5z M398.2,77.1c0.6-0.2,1-0.4,1.5-0.7c-0.6,0-1.1,0.1-1.7,0.1
C398.1,76.7,398.1,76.9,398.2,77.1z M486.7,285.4c-3.3,13.1-9.5,28.4-15.3,34.9c0,0.6,0,1.3,0,2l46.6-27.3
C508.7,292.2,497.7,288.8,486.7,285.4z"/>
<path class="st1" d="M627.1,253.2c-4.7-10-11.2-18.1-20.3-24.5l-0.9-0.3c-7.4-1.1-21.1-4.7-28.4-6.3c-14.8-3.3-72.6-14.3-83.1-14.4
c0,0-0.7,0-0.3,0.6l0.7,0.7l2.4,2.6l7.4,7.7l9.9,10.3c-5.6-0.1-18.3,0.4-18.3,0.4l5.3,8c-3.6-1.6-12.1-5.4-21-9.8
c-0.6-1.3-1.2-2.7-1.8-4c1.3-5.2,2.3-10,2.8-13.3c0.2-1.3,0.4-2.5,0.5-3.8c0-0.3,0-0.6,0.1-1c0.1-0.9,0.1-1.9,0.1-2.8
c0-0.4,0-0.8,0-1.2c0-0.9-0.1-1.7-0.2-2.6c0-0.4-0.1-0.9-0.2-1.3c0-0.3-0.1-0.6-0.2-0.9c0.1-0.4,0.3-0.7,0.3-1
c2.4-14.9-4.5-28.7-17-30.7c-5.8-0.9-11.7-0.2-17.1,1.5c-0.3-0.5-0.7-1.1-1-1.6c-0.1-0.1-0.1-0.1-0.1-0.2c-0.2-0.2-0.4-0.5-0.5-0.7
c-0.1-0.1-0.2-0.3-0.3-0.4c-0.2-0.2-0.4-0.4-0.6-0.6c-0.1-0.1-0.3-0.3-0.5-0.5c-0.2-0.2-0.4-0.4-0.6-0.6c-0.4-0.4-0.8-0.7-1.2-1
c-0.2-0.2-0.4-0.3-0.7-0.5c-0.3-0.2-0.5-0.4-0.8-0.6c-0.3-0.2-0.5-0.4-0.8-0.6c-0.3-0.2-0.6-0.4-0.9-0.6c-0.3-0.2-0.6-0.4-1-0.6
c-0.3-0.2-0.7-0.4-1.1-0.6c-0.2-0.1-0.5-0.3-0.7-0.4c0-0.1,0.1-0.1,0.1-0.2c0.3-0.5,0.5-1.1,0.7-1.6c0.6-1.3,1-2.6,1.3-3.9
c0.1-0.5,0.2-0.9,0.3-1.4c0.2-0.8,0.3-1.6,0.4-2.5c0.1-0.5,0.1-1.1,0.1-1.6c0-0.7,0.1-1.5,0.1-2.2c0-0.6-0.1-1.1-0.1-1.6
c0-0.7-0.1-1.4-0.2-2c-0.1-0.5-0.2-1.1-0.3-1.6c-0.1-0.7-0.3-1.3-0.4-1.9c-0.1-0.5-0.3-1-0.4-1.5c-0.2-0.6-0.4-1.2-0.6-1.9
c-0.2-0.5-0.4-1-0.6-1.5c-0.3-0.6-0.6-1.2-0.8-1.8c-0.2-0.4-0.4-0.9-0.7-1.3c-0.3-0.6-0.7-1.2-1-1.7c-0.2-0.4-0.5-0.8-0.7-1.2
c-0.4-0.6-0.8-1.2-1.2-1.7c-0.2-0.3-0.5-0.6-0.7-1c-0.5-0.7-1.1-1.3-1.6-2c-0.1-0.2-0.3-0.3-0.4-0.5c-0.7-0.8-1.4-1.5-2.1-2.2
c-0.2-0.2-0.4-0.3-0.6-0.5c-0.5-0.5-1.1-1-1.6-1.4c-0.3-0.2-0.5-0.4-0.8-0.6c-0.4-0.3-0.9-0.7-1.3-0.9c-0.3-0.2-0.6-0.4-0.9-0.6
c-0.4-0.2-0.8-0.5-1.1-0.7c-0.3-0.2-0.6-0.3-0.8-0.4c-0.2-0.1-0.4-0.2-0.6-0.3c0,0,0,0,0.1,0c0,0,0.1,0,0.1,0c0.5-0.1,1-0.1,1.5-0.1
c0.2,0,0.4,0,0.6,0c0.7,0,1.3,0.1,1.9,0.2c3,0.5,6.7,2,9.2,3.9c2.6,1.9,5.2-0.4,3.6-3.2L428,99.4c-0.3-0.5-1.7-1.3-2.3-1.2
l-29.6,2.7c0.6-0.6,1.2-1.3,1.7-1.9c9.9-4.9,22.7-3,33.6-0.6c3.2,0.7,4.6-2.7,1.8-4.5c-10.3-6.4-20.8-13.5-26-19.2
c-0.6-0.6-2.1-0.9-2.9-0.6c-0.1,0-2.4,1.2-6.2,2.8c-0.2-0.9-0.4-1.6-0.5-2c-2.1-8.7-5.1-17.8-9-25.8c1.8-6.5-0.9-17.8-9-21.2
c-4.4-1.9-8.8-1.4-10.8-5.8c-1.6-3.7-6.2-3.4-7.9-7.1c-1.5-3.4-6.1,1.5-9.7,2c-4.5,0.5-7.2-0.9-11.6,0.4l-5.7,3.3
c-5.9-0.3-12.7-0.3-20.2,0.2c-1.9-1.3-5.1-1.9-10.6-1.6c-4.5,0.3-7.7,1.5-9.3,3.8c0,0.1-0.1,0.1-0.1,0.2
c-11.8,2.6-24.3,7.3-34.3,13.1c-3.2,1.9-5.8,4.2-7.6,6.8c-1.7,1.5-3.1,3.1-3.9,4.7c-2.5,5-4.3,11.7-5.5,18.7
c-5.7,2.7-11.9,5.2-19.7,6.3c-1.7,0.2-3.4,0.5-5.1,0.8c-0.4,0.1-0.9,0.1-1.3,0.2c-1.2,0.2-2.5,0.4-3.7,0.6c-0.5,0.1-1,0.2-1.5,0.3
c-1.1,0.2-2.3,0.4-3.4,0.6c-0.5,0.1-1,0.2-1.5,0.3c-1.1,0.2-2.1,0.4-3.2,0.6c-0.5,0.1-1.1,0.2-1.6,0.3c-1,0.2-2,0.4-2.9,0.6
c-0.5,0.1-1,0.2-1.5,0.3c-0.9,0.2-1.9,0.4-2.8,0.6c-0.5,0.1-1,0.2-1.4,0.3c-0.9,0.2-1.7,0.4-2.6,0.5c-0.5,0.1-0.9,0.2-1.4,0.3
c-0.8,0.2-1.6,0.4-2.4,0.5c-0.4,0.1-0.8,0.2-1.2,0.3c-0.8,0.2-1.5,0.3-2.2,0.5c-0.4,0.1-0.7,0.2-1,0.2c-0.7,0.2-1.4,0.3-2.1,0.5
c-0.3,0.1-0.6,0.1-0.9,0.2c-0.6,0.1-1.2,0.3-1.8,0.4c-0.3,0.1-0.5,0.1-0.8,0.2c-0.6,0.1-1.2,0.3-1.7,0.4c-0.1,0-0.2,0.1-0.3,0.1
c-0.6,0.1-1.2,0.3-1.6,0.4c0,0-0.1,0-0.1,0c-1.3,0.3-2,0.5-2.3,0.6c-0.1,0-0.2,0-0.2,0c0,0,0,0,0,0c-0.1,0-0.3,0.1-0.4,0.1
c0,0-0.1,0.1-0.1,0.1c-0.1,0-0.2,0.1-0.3,0.1c-0.1,0.1-0.3,0.2-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.3c-0.2,0.2-0.4,0.4-0.5,0.7
c0,0.1-0.1,0.2-0.1,0.3c0,0.1-0.1,0.3-0.1,0.4c0,0.1,0,0.2,0,0.3c0,0.2,0.1,0.3,0.1,0.4c0,0.1,0.1,0.2,0.1,0.3
c0.1,0.2,0.2,0.3,0.3,0.4c0.1,0.1,0.1,0.2,0.2,0.2c0.2,0.2,0.4,0.3,0.6,0.4c0.1,0,0.1,0.1,0.2,0.1c0.3,0.1,0.6,0.2,0.9,0.3
c0,0,0.1,0,0.1,0c0,0,0.1,0,0.1,0c1.1,0.2,20.6,3.7,32.3,7.6c1.3,0.4,2.6,0.9,3.7,1.3c1.6,0.6,2.8,1.3,3.7,1.9
c5.3,3.8,15.7,10.1,22.6,12.6c-4,4.3-9.1,11.3-13.6,17.8c-0.2-0.1-0.5-0.3-0.7-0.4c0-0.1,0-0.2-0.1-0.3c-0.2-0.4-0.6-0.9-1.3-0.8
c-0.9,0.1-1.4,0.5-1.7,0.8c-0.1,0.1-0.3,0.3-0.4,0.4c-0.1,0.1-0.2,0.2-0.3,0.2c-0.3,0.2-0.6,0.8-0.7,1.3l0,0.5
c-0.4,0.1-0.8,0.1-1.1,0.3c-0.5,0.2-1.1,0.6-1.5,1.6l-1.7,0.2c-0.3,0-0.6,0.6-0.7,1.2c-0.1,0.8-0.1,1.1-0.3,1.4
c-0.2,0.4-0.3,1.1-0.1,1.5c0.1,0.3,0.2,0.5,0.3,0.7c0.1,0.2,0.1,0.3,0.2,0.5c0.1,0.3,0.1,0.4,0.1,0.7c0,0.1,0,0.1-0.1,0.4
c-0.1,0.1-0.1,0.3-0.1,0.4c-0.1,0.2-0.1,0.4-0.2,0.6c-0.1,0.5,0,1.1,0.3,1.3l0.2,0.2c0,0.1-0.1,0.3-0.1,0.4
c-0.1,0.1-0.2,0.2-0.3,0.3c-0.3,0.4-0.3,1.2-0.1,1.7c0,0.1,0,0.1,0.1,0.1c-1.9,3.1-3.4,5.8-3.5,6.9c-0.4,8.3,9.4,4.2,15.2,1.7
c-0.6,1.1-1.2,2.1-1.7,3.2c-0.1,0.2-0.2,0.5-0.3,0.8c-1.2,2.8-2,5.9-2,9.7c-0.1,7.4,4.8,12,10.1,16.3l-4.6,7.9
c-25.3,9.5-46.6,22.6-58,40.8c-4.3,1.7-8.6,3.5-14.2,3.4c-0.2,1.8-1.5,2.8-1.7,4.6c-0.4,3.8,2.9,5.9,2.5,9.8
c-0.2,1.8-4.1-0.7-4.8,0.7c-3.9,6.1-6.9,12-12.4,16.5c-1.1,6-0.9,10.7,1.2,15.9c-6,9.8-11.1,20.1-15.3,30.7
c-6.8,8.5-13.1,23.2-0.5,31.4c2,1.3,4.8,3.2,7.4,4.6c0.6,0.3,1.1,0.6,1.7,0.8c0,0.3,0.1,0.6,0.1,0.9l-7-3.1l-15.8,4.3
c-3.2,2.8-4.8,6.3-4.5,10.5l4.9,18.5l9.1,17.1l9.6,4.6l15.9-4.4l1.4-3.3c3,5.2,6.5,9.8,10.6,13.5l0,3.6c0,0.3,0.3,0.8,0.6,1
c5.6,4.3,6.9,9.5,6.9,16.4c0,0.8,0.7,1.4,1.6,1.4l7.5,0.1c0.6,0,1.3-0.4,1.5-0.8c0.9-1.8,1.7-3.3,2.7-4.9c1,0.6,2,1,3,1.4
c0.2,2.3,0.5,4.1,0.9,6.9c0.1,0.6,0.8,1.2,1.5,1.2c4.3,0.3,7,1,11.3,1.1c3.8,0.1,6.7-1.2,9-3.1c1.1-0.9,2.2-2,3.1-3.1
c0.9-1.1,1.8-2.2,2.6-3.4c0.8-1,1.5-2,2.2-2.9c52.5,39.6,80,37.8,80,56.1c-3.3,2.3-5,6.6-6.2,11.2c2.2-0.6,4.5-1.2,7.1-1.9
c0-1.4,0.1-2.5,0.9-3c3.4-2.3,3.5-15.4,3-19.9c24.4-10.6,60.8-28.4,90.5-32.9c0.3,6.8,3.2,16,4.6,24.6v0c0.4-0.1,0.7-0.3,1.1-0.4
c0.1,0,0.2-0.1,0.4-0.1c2-0.7,4-1.4,6-2.1v0c-1.5-9.2-3.9-18.3-4.2-22.8c1.5-0.1,3.1-0.2,4.5-0.2c8.5-0.1,14.6,0.9,17.7,1.6
c0.1,3.7,0.7,8.9,1.9,14c2.1-0.8,4.1-1.6,6.1-2.3c-0.4-2.1-0.7-4.5-1-7.5c-0.2-1.6,0.2-5.6-0.8-8.1c2.8-8.7,6.9-19.9,11.8-32.5
c0.4,0,0.9,0,1.3,0c0.7,0.1,1.3,0.2,1.5,0.3c1.4,0.3,2.8,0.5,4.3,0.5c1.8,0,3.5-1.7,5.4-3.7c6-3.5,11.7-12.3,16.6-23
c0.1-0.1,0.3-0.1,0.4-0.1l6.9-4.6c0.8-0.5,1.2-1.5,0.8-2c-1.4-2.2-2.3-4.3-2.8-6.4c4.9-14.3,7.7-29.3,7.1-38.7
c5.8-6.5,12.1-21.8,15.3-34.9c26,8.1,52.3,15.9,55.7,16.4c10.7,1.7,21.8,4.2,32.9,5.4c11.1,1.3,22.3,1.3,33.2-1.9
c1.7-0.5,6.1-6.5,10.1-12.4c4.1-6,8.1-12.3,9.2-13.7c0.1-0.1,0.1-0.2,0.3-0.8l0.2-1.2c0.2-0.9,0.4-2.1,0.5-3.2
c0.3-2.4,0.6-4.8,0.8-5.5C629.6,268.5,627.1,253.2,627.1,253.2z"/>
<path class="st3" d="M269,415.1c-0.6-0.3-1.2-0.5-1.8-0.8c-0.7,0.2-1.4,0.5-2,0.7c-0.1,0.3-0.3,0.6-0.4,0.8
c-0.6,1.1-1.1,2.1-1.7,3.1c-1.3,2.1-3,3.9-6.3,4.9c-2.3,0.7-4.5,0.6-6.5,0.1c-1-0.3-1.9-0.6-2.8-1c-0.9-0.4-1.7-0.8-2.6-1.2
c-0.4-0.2-0.7-0.3-1.1-0.5c-3.6,0.7-6.4,1.1-8.9,1.2c0,2.1,0.2,4.8-0.7,5c-0.8,0.2-1.6,0.5-2.4,0.6c-0.9,0.2-1.9,0.3-3,0.3
c-0.5,0-1-0.1-1.4-0.2c40.7,22.9,61.1,29.4,61.9,29.1c0,0,34.8-11.3,48.1-17.4c12-5.4,29.2-10.9,46.1-13c1.4-1.8,3.8-1.7,5.4-0.6
c8.1-0.6,16-0.4,23,1.1c2.6-4,4.7-8.6,6.9-13.8c2.3-5.3,4.5-10.6,6.8-15.9c-2.6-0.3-5.2-0.9-7.6-1.7c-1-0.4-3-0.9-5.8-1.5
c-1.7,1.3-3.4,2.5-5.3,3.8c0,0.2,0,0.4-0.1,0.6c-0.1,0.7-0.3,1.5-0.6,2.2c-0.6,1.5-1.6,3.1-3.5,4.4c-0.9,0.6-1.9,1.1-2.9,1.6
c-0.9,0.4-1.7,0.7-2.5,1c-0.8,0.3-1.6-1-2.4-2.4c-3.3,1.9-7,3.7-10.9,5.4c-0.4,0.5-0.7,1-1.1,1.6c-0.6,0.8-1.4,1.7-2.1,2.5
c-1.6,1.6-3.5,3.1-6,3.9c-3.5,1.2-6,0.8-8.1,0c-0.4-0.2-0.9-0.4-1.3-0.6c-3.9,0.8-7.6,1.6-11,2.4c-1.5,0.8-3.2,1.7-5.2,2.9
c-1.2,0.7-6.2,3.1-7.3,3.3l-9.5,0.7c-3.6,1.4-6.8,2.8-9.7,4.1c-5.3,4.9-13.2,12.8-14.4,12.8c-2.1,0.1-2.8-2.2-4.8-2.1
c-2.1,0.1-2.5,2.5-4.6,2.6c-5.4,0.3-7.9-4.2-10.2-9c-2.5-2.7-4.3-6.2-6-9.7c-1.4-1.3-3.1-2-5.3-2.1c-0.1-1.8-1.3-2.9-1.4-4.7
c0-0.7-0.2-1.3-0.5-1.8c-0.7-0.2-1.3-0.5-1.9-0.8C271.9,416.6,270.5,415.9,269,415.1L269,415.1z M221.2,423
c-0.1-0.1-0.1-0.2-0.2-0.3c-0.9,0-1.9,0.1-3,0.2c1.9,1.1,3.8,2.2,5.7,3.2c-0.4-0.4-0.9-0.9-1.2-1.4C222,424.2,221.6,423.6,221.2,423
z M388,458.1c-0.1,0.1-0.3,0.1-0.4,0.1C387.8,458.2,387.9,458.1,388,458.1z M412.1,434.6c-3.1-0.7-9.2-1.7-17.7-1.6
c-1.5,0-3,0.1-4.5,0.2c0.3,4.5,2.7,13.6,4.2,22.8c6.7-2.4,13.4-4.9,19.9-7.4C412.9,443.5,412.2,438.3,412.1,434.6z"/>
<path class="st3" d="M381.9,434c-29.7,4.5-66.1,22.3-90.5,32.9c0.4,4.5,0.4,17.6-3,19.9c-0.8,0.5-0.9,1.6-0.9,3
c23.5-6.4,61.2-17.9,99-31.3C385.2,450,382.3,440.8,381.9,434z"/>
<path class="st4" d="M213.3,308.1c1.2-0.9,3.7-2.6,7.4-4.4c-1.8-0.3-3.5-0.8-5.2-1.4c-28.6-10-66.5-5.6-91.9,17.4
c-1.4,1.3-3.2,3-4.8,4.7c0,0.1,0,0,0,0c-2.5,5.1-3,10.6,3.3,14.7c2,1.3,3.6,2.5,4.8,3.4c-0.7-5.7-1-10.6-0.1-11.6
c0,0,0.1-0.1,0.2-0.1c0.1-0.2,0.1-0.5,0.3-0.7C127.3,330.1,159.7,296.1,213.3,308.1z"/>
<path class="st4" d="M220.7,294.1c5.9,2.2,9.3,3.8,10.8,5c0.1,0.1,0.1,0.2,0.2,0.2c5.6-1.7,12.5-3.1,20.4-3.5c0.8,0,1.6,0,2.4-0.1
c3.8-1.9,7.7-3.7,11.5-5.6c0.2-3.7,0.6-7.2,1.3-10.1c-0.5-4.2-1.1-8.3-1.9-12.4l-12.3,6.1l-1.9-47.6c-1.5,1-3.3,1.8-5.3,2.1
c-0.5-1.9,1.1-3.2,1.2-5.4c0.1-5.9-9.6-6.1-9.5-12c0-0.7,0.2-1.3,0.3-1.9l-25.3-0.8l3.8-6.6c-15.7,7.3-29.4,16.3-39.5,27.6
c0.7,0,1.4-0.1,2.2,0c2.1,0.2,2.4,2.6,4.4,2.8c2.1,0.2,2.9-2.1,4.9-1.9c1.8,0.2,2.8,1.5,4.6,1.7l-0.1,11.9c-1.1,4.9-4,6.7-5.9,11.3
c-1.6,3.7,0.6,10.8-3.5,10.3c-4.4-0.5-6.7,4-11.1,3.6c-5.3-0.6-7.3,4-11.5,7.1c-10,7.6-20.4,8.4-26.5,18.8c1.6-1,3.2-1.9,4.7-2.7
C157.2,283,184.6,280.4,220.7,294.1z M381.3,308.1c-2.6-0.6-4.6-0.9-5.8-1c1,1.1,1.6,2,2,2.7c2.7,0.9,11.6,4.3,22,11.1
c12.4,8.1,27.1,21.1,35.8,40.9l0.3,1c0.1-0.1,0.2-0.2,0.4-0.3c1.4-1.1,2.8-2,4.1-2.9c0.6-0.5,1.3-0.9,1.9-1.4
C430.8,333.9,407.3,314.1,381.3,308.1z M387.7,294.4c6.8,1.1,16,3.2,25.8,7.7c14.4,6.6,29.9,18.4,40.5,38.7c0.1-0.1,0.1-0.2,0.2-0.3
c0.3-0.8,0.6-1.6,0.8-2.6c0.2-1,0.4-2,0.6-3c0.3-1.6,2.5-2.4,3.1-1.1l1.6,3.6c3.9-15.4,4.5-25.5,4.6-25.6c0,0,6.2-6.7,12.3-15.2
c2.5-3.4,3.8-8,4.4-12.8c-13.3-4.2-26.1-8.3-35.3-11.3c-21,7.3-41.4,14.4-61.7,21.4C385.5,294.1,386.5,294.2,387.7,294.4z"/>
<path class="st2" d="M123.5,319.8c25.4-23.1,63.4-27.5,91.9-17.4c1.9,0.7,3.7,1.1,5.2,1.4c2.9-1.5,6.6-3,11.1-4.4
c-0.1-0.1-0.1-0.2-0.2-0.2c-1.5-1.2-4.9-2.8-10.8-5c-36.1-13.7-63.5-11.1-81.3-1.9c-1.5,0.8-3,1.7-4.7,2.7c-0.2,0.3-0.4,0.6-0.6,1
l-0.3-0.3c-1.5,2.8-2.9,5.5-4.3,8.3c-0.6,1.1-1.1,2.2-1.6,3.4c-0.4,0.9-0.8,1.8-1.2,2.7c-0.9,2.1-1.9,4.2-2.7,6.3l-0.4,0.6
c0,0-0.9,1.1-2.1,2.8c-1,1.6-2,3.2-2.9,4.9C120.4,322.8,122.2,321,123.5,319.8z M413.4,302.1c-9.8-4.5-19-6.7-25.8-7.7
c-1.1-0.2-2.1-0.3-3.1-0.4c-1.6,0.6-3.2,1.1-4.8,1.7c-2.3,2.8-6.1,5.2-9.4,6.9c2.3,1.6,4,3.2,5.2,4.6c1.2,0.1,3.2,0.4,5.8,1
c26,6,49.4,25.8,60.6,50c1.8-1.4,3.4-2.8,4.8-4.9c0.3-0.4,0.5-0.9,0.6-1.5c0.1-0.7,0.2-1.4,0.3-2c0.2-1.4,0.5-3.5,3-5.2
c1.6-1.1,2.6-2.3,3.2-3.7C443.3,320.5,427.8,308.7,413.4,302.1z"/>
<path class="st5" d="M276.7,269.6c0.7-0.1,1.5-0.1,2.2-0.1c0-1,0.1-2,0-3c0-1.9-0.3-3.5-0.9-5l-2.9,1.4
C275.7,265.1,276.2,267.3,276.7,269.6z"/>
<path class="st2" d="M273.3,270.5c1.1-0.5,2.3-0.8,3.4-0.9c-0.5-2.2-1-4.5-1.5-6.7l-9.8,4.8c0.8,4.1,1.4,8.2,1.9,12.4
C268.4,275.3,270.3,271.8,273.3,270.5z"/>
<g>
<path class="st5" d="M375.2,276.1c17.8-8.3,34.4-16.6,43.9-21.8c-2.9-0.9-5.4-1.8-6.9-2.6c-0.7-0.4-1.6-1-2.7-1.8l-1.2,0.5
c-0.2,0.3-0.4,0.6-0.6,1c-0.4,0.7-0.8,1.4-1.3,2c-0.4,0.7-1,1.3-1.5,1.9c-1.2,1.2-2.8,2.1-4.9,2.1c-1,0-2-0.2-3-0.4
c-0.8-0.2-1.6-0.5-2.4-0.8c-0.1,0-0.2-0.1-0.4-0.1l-12.7,5.1c-0.4,0.5-0.9,1-1.3,1.4c-0.7,0.7-1.5,1.4-2.3,2
c-1.7,1.2-3.7,2.1-6.2,2.1c-1.1,0-2-0.2-2.9-0.5l-0.5,0.2C370.6,269.3,373,272.5,375.2,276.1z M427,261.2c-0.9-1.3-1.7-2.7-2.6-4.1
c-0.3-0.5-0.6-1.1-1-1.6c0,0-0.1,0-0.1,0c-0.4,0.2-0.9,0.4-1.3,0.6c-9.2,5.1-26.5,13.8-45.3,22.6c1.4,2.5,2.8,5.2,4.1,8
c17.6-6.1,35.3-12.2,53.3-18.5c-0.9-0.4-1.4-0.6-1.5-0.8l-0.1-0.5c-0.9-0.6-1.8-1.2-2.5-2C428.9,263.8,427.9,262.5,427,261.2z
M121.7,379.8c-6.1-7.4-3.4-22.3-2.8-25.2c-0.4,0.1-0.8,0.2-1.1,0.4c-4.1,1.7-12.2,6.9-10.4,11.4L118,390
c1.7,4.5,12.4,6.3,16.4,4.6c2.5-1,3.9-2.5,4.3-4.5c-1-2.1-1.9-4.2-2.7-6.3C131.7,384.1,125.1,383.9,121.7,379.8z"/>
<path class="st5" d="M120.3,354.4l1.7,0.4c0,0.2-3.6,16.2,2.1,23.1c2.2,2.7,6.9,3.1,10.7,2.9c-1.7-4.8-3.1-9.8-4.2-14.8l-2.4-6.2
C126.8,356.2,123.6,354.2,120.3,354.4z M231.4,356.9c-5.5-14.9-21.4-23.8-18.6-41.7c0.1-0.6,0.3-1.1,0.4-1.6c-0.6,0-1.4,0-2.4,0.1
c-14.1,1.2-26.4,8.6-34,20.9c-1.6,2.6-4.7,1.2-3.1-1.4c6.1-9.8,16.2-18.5,27.6-22.3c-22.8-2-44.4,5.6-63.1,20.1
c-3.4,2.7-5.3,4.5-5.5,4.8c0.9,10.5,5.7,40.9,20.5,58.5c0.4,0.1,0.7,0.3,1,0.6c0.7,0.9,1.3,1.7,1.9,2.4c0.3,0.3,0.6,0.6,0.9,0.9
c0.4,0.4,0.9,0.8,1.4,1.2c1.1,0.8,2.4,1.4,4.2,1.4c2.7,0.1,4,1.8,4.8,3c0.4,0.6,0.7,1.2,1.2,1.7c0.4,0.5,0.8,0.8,1.2,1
c2.7,1.4,5.2,1.6,8.1,1.8c1.5,0.1,3,0.1,4.6,0.2c1.1,0.1,2.2,0.2,3.4,0.5c0.2-2,0.5-3.6,0.9-5.8c0.2-1,1.3-1.4,2.4-0.9
c2.7,1.3,4.7,2.4,7.2,3.6l0-6.9c0-1.1,1.3-1.7,2.4-1.1c3.1,1.7,5.2,2.8,7.8,5c1.1-0.7,2-1.3,3-2c1.2-0.9,2.2-1.8,3-3.1
c0.4-0.6,1.4-0.9,2.1-0.5l6.8,3c1.7-4.1,4.7-7.4,9.6-8.8c-0.8-2-1.5-3.7-2.6-5.9c-0.5-1,0.3-1.9,1.5-1.9l5.3,0.1l0.5,0.1
c3,1.5,5,2.4,7.5,3.3c0.8-0.8,1.7-1.6,2.6-2.3c-0.2-1-0.4-2.1-0.5-3.1c-1.7-2.2-3.3-4.3-4.6-6.3c-3.6-2-15.9-10.1-9.8-10.5l2.8-2.4
C232.8,360.6,232.1,358.7,231.4,356.9z"/>
<path class="st5" d="M397.3,327c-1.9-1.4-3.8-2.7-5.6-3.9c-10.4-6.8-19.3-10.1-22-11.1c-0.8-1.3-2.7-3.8-6-6.4
c-3.3,1.4-6.5,2.6-8.8,3.4c4.4,11.7-30.4,20.5-46,15.1c-2,2.4-7.6,6.4-14.1,9.5c0,0.5,0,0.9-0.1,1.4c-0.5-0.2-0.9-0.5-1.3-0.8
c-9,3.9-19.2,5.5-22.7-2.7c-1.2-2.6-3.5-14.8-4.4-27.6c-11.3-1.7-24.1-1.4-34.7,1.1c-4,1.6-7.9,3.5-11.5,5.8c-0.8,1.1-1.5,2-2,3.1
c-0.3,0.6-0.6,1.3-0.7,2c-2.4,14.9,17.2,25.1,22.2,38.8c1.4,3.7,2.3,6.9,5,11.3l2.3,0.8c-1-7.1,12.3,1.5,19.1,4.3
c5.8,2.3,7.2,11.8,13,14.2c2.7,1.1,7.8,2.9,10.6,4c3.8,1.6-0.7,10,7.1,10.1c4.2,0.7,11.4,0,15.3,1.5c1.9,0.8,6.3-6.9,8.2-6.2
l9.2-1.9c0.4,4.6,8.5,10,12.9,11.8c1.2,0.5,2.3-0.1,3.4-0.5l2.2-1.1c1.9-2.3,2.1-3.2,4.1-6.2l6.2-0.4l14.4-12.7
c1.1-0.7,2.2-0.5,2.2,0.5c0.1,2.4,0.2,4.1,0.4,6.1c5.3-1.9,17.4-12.7,20.9-10.6l4.9-6.5c0.6-0.7,1.6-1.1,2.2-0.9
c1.4,0.5,2.7,0.6,4.2,0.6c1.2,0,2.4-0.2,3.7-0.3c1.4-3.2,2.8-5.4,4.9-8.5c0.8-1.2,2.2-1.5,2.8-0.6l3.2,5.2c1.6-2.3,3-4.3,4.7-6.7
C419.2,346.2,407.9,334.8,397.3,327z M598.1,235c0.1,0,0.1,0,0.2,0c-7.3-0.6-63.7-13.3-85.8-18.6c-5.4,0.4,29,22,23.8,22.3
c-10.5,0.5-17.1-1.8-26.2-0.9c-1.4,0.1,0.2,1.7,2.5,3.7C553.1,241.8,585,237.2,598.1,235z M598.3,235c1.3,0.1,2.5,0.3,3.6,0.6
C600.7,235.4,599.5,235.1,598.3,235z M503.1,263.9c-11.9,1.2-23-0.5-33.6-3.2c0,0.6-0.1,1.1-0.1,1.7c0,0.9-0.8,1.6-1.7,1.6
l-7.5-0.1c-0.6,0-1.3-0.5-1.5-1c-0.6-1.6-1.2-2.9-1.8-4.2c-1.2,0.2-2.5,0.4-3.9,0.5c-0.2,1.9-0.4,3.6-0.7,5.7
c31.4,10.3,94,28.7,137.8,35.7c3,0.5,5.9,0.1,8.6-0.8C581.1,289.2,531.3,261.2,503.1,263.9z M616.5,278.4c-0.3,1-0.7,1.9-1.1,2.9
c4.6-11.3,5.4-25.1,0.5-34.7c-18.3,4-42.9,10.2-47.9,14.3C568.3,264.1,590.3,272,616.5,278.4z"/>
<path class="st5" d="M477,243c-0.1,0.1-0.1,0.2-0.2,0.3c-4.6,3.8-6.4,8.5-7,14.3c10.5,2.8,21.4,4.4,33.1,3.3
c30.5-3,83.4,27.5,99.3,37.2c-1.1,0.6-2.2,1.1-3.4,1.6c7.3-2.5,13.1-9.7,16.6-18.3c-13.8-3.4-48.8-12.6-50.4-19.7
c-0.2-0.7-0.2-2.1,1.2-3.3c5.5-4.6,30.9-10.8,48-14.5c0.6,0.9,1.2,1.8,1.7,2.8c-2.7-5.3-7.2-9.3-13.8-10.9c1.1,0.3,2.1,0.6,3.1,1
l0,0.1c-0.5,0.1-37.4,7.8-88.9,7.8c2.8,2.2,4.9,4.2,3.2,4.2c-6,0.1-13.7-2-21.6-4.5C491.2,244,484.1,243.6,477,243L477,243z
M487.4,240.7c0.1,0,0.3,0.1,0.4,0.1c-3.7-1.2-7.2-2.4-10.4-3.3l0,2.4C480.7,240.2,484.1,240.5,487.4,240.7z"/>
</g>
<path class="st4" d="M282.2,57.5c0.4,0.1,0.8,0.2,1.2,0.2c0.8-9.4,4.4-16.9,13.6-21.6C274.6,40,257.5,47.8,255.3,52
c-1.2,2.4-2.1,6-2.9,10c7.3-3.3,14.8-5.9,25.3-5.1l1.5-2C280.4,55.8,281.3,56.6,282.2,57.5z M301.8,56.5c4.5,4.7,10.1,6.9,16,10
c1.3,0.6-0.6,4.3,1,4.3c3.5,0.1,5.2-3.2,8.7-3.1c1.6,0,2.7,1.1,4.3,1.1c0.6,9.4,6.8,14.5,8,22.9c15,0.1,32.2-4.8,45.1-9.5
c0.9-0.3,1.9-0.7,2.8-1c0.4-0.2,0.8-0.3,1.2-0.4c0.7-0.3,1.3-0.5,1.9-0.7c-2.2-13.7-6.8-33.7-15.7-40.6
c-14.5-11.2-35.5-5.7-51.7-5.6c-0.4,0.2-1,0.4-2,0.5c-17.8,1.4-25.2,12.3-28,17.5c-0.8,1.4-1.2,3.2-1.4,5.1
C295,56.3,298.2,56.1,301.8,56.5z"/>
<path class="st2" d="M315.9,27.4c-0.5-4.8-1.7-7.7-12.6-7.1c-4.3,0.2-7.2,1.4-8.7,3.5c-0.9,1.2-1.1,2.5-1.1,3.4c0,0.7,0.1,1,0.1,1.1
C297.2,29.4,307,30.5,315.9,27.4z M251.8,126.9c0.4-0.6,0.9-1.3,1.3-1.9c0,0,0,0,0-0.1c1.4-2.1,2.9-4.3,4.2-6.3
c0.1-0.1,0.2-0.2,0.2-0.4c0.3-0.4,0.5-0.8,0.8-1.2c0.5-0.8,1-1.5,1.4-2.2c-0.7,0-1.4,0-2,0c-0.9,0-1.9,0-2.8,0
c-1.5,0-2.9-0.1-4.3-0.1c-0.9,0-1.8-0.1-2.6-0.1c-1.5-0.1-3-0.3-4.6-0.5c-0.7-0.1-1.4-0.2-2.1-0.3c-0.7,0.6-1.4,1.2-2.2,1.9
c-3.7,3.5-9.4,11.5-13.7,17.7c0.5,0.7,0.8,1.4,0.7,2.5c0,0.2-0.1,0.5-0.2,0.7c0,0.1-0.1,0.2-0.1,0.3c-0.1,0.1-0.1,0.2-0.2,0.2l-1,1
c-0.1,0-0.3,0.2-0.4,0.2c-1.2,0-2,0.3-3,1c0,0,0,0.1-0.1,0.1c0.7,0.7,1.2,1.3,1.9,2.1c0.5,0.7,0.3,1.6-0.5,2
c-0.4,0.2-0.7,0.4-1.1,0.7c1.9-0.3,5.2-1.7,9.3-3.3c5.9-7.2,11.3-14.2,20.4-13c0.1-0.2,0.2-0.3,0.4-0.5
C251.6,127.2,251.7,127.1,251.8,126.9z"/>
<path class="st5" d="M231.6,187.5l-10.1,15.9l18.1,0.6c0.1-0.6,0.3-1.1,0.3-1.7C240,195.7,236.2,191.4,231.6,187.5z M259.8,241.5
l-1.9,25.1l17.3-8.6c-0.9-0.6-2-0.8-3.3-0.9c-2.2-0.1-4.6,0.2-7.1,0.1c-0.9,0-1.6-0.8-1.6-1.6c0.1-4,0.5-7.6,0.3-10.9
c-0.1-1.1-0.2-2.3-0.5-3.4c-0.4,0-0.8,0-1.2,0L259.8,241.5z M390.6,163.5L390.6,163.5l-2.5-1.3h0L390.6,163.5z"/>
<path class="st5" d="M361.6,177.3c-5.2-0.8-13.2-5-19.3-11.4l-1.4,1.1c0.1,0.1,0.2,0.3,0.3,0.4c4.9,6.4,7.9,11.3,9.3,19.3l0.5-0.3
c0.8-0.4,1.5-0.9,2.2-1.4c1.6-0.9,3.4-1.8,5.9-1.8c0.8,0,1.5,0.3,2,0.6c0.2,0.1,0.5,0.3,0.7,0.5l0.5,0.4c0.3,0.3,0.5,0.5,0.7,0.6
c0.1,0.1,0.3,0.1,0.4,0.1c0.8,0,1.5,0.7,1.6,1.5c0.2,2.8,0.3,4.8,0.6,7.2l1-0.7c1.1-0.7,2.4-1.4,4.3-1.4c0.7,0,1.3,0.1,1.8,0.2
c0.5,0.1,0.9,0.3,1.4,0.4c0.8,0.3,1.4,0.5,2.2,0.5c0.9,0,1.6,0.8,1.6,1.6c-0.1,3,1.1,5.1,2.8,7.2c0.9,1.1,2,2.2,3,3.3
c0.8,0.9,1.7,1.8,2.5,2.9c2.6-1.1,4.6-2,7.7-3.7l0.5-0.1l5.4,0.1c1.2,0,1.9,1.1,1.5,2.3c-1.1,2.6-1.9,4.5-2.8,6.9
c5,1.8,7.9,5.9,9.5,10.8l7-3.3c0.8-0.4,1.7,0,2.1,0.7c0.8,1.6,1.8,2.7,3,3.8c0.9,0.9,1.9,1.6,3,2.5c2.7-2.4,4.8-3.7,8-5.6
c1.2-0.7,2.5,0.1,2.4,1.4l-0.1,8.1c2.6-1.4,4.7-2.6,7.4-4c1-0.5,2.2,0.1,2.4,1.2c0.4,2.6,0.6,4.5,0.8,6.9c1.2-0.2,2.3-0.4,3.4-0.4
c1.6-0.1,3.1-0.1,4.6-0.1c2.9-0.1,5.4-0.3,8.2-1.8c0.4-0.2,0.9-0.6,1.2-1.2c0.5-0.6,0.8-1.3,1.2-2c0.8-1.4,2.2-3.4,4.9-3.4
c2,0,3.4-0.6,4.6-1.7c0.2-0.2,0.4-0.4,0.5-0.6c2-5.8,3.5-11.2,4-14.6c0.2-1.5,0.2-3.3,0-5.2c-6.7,8-17.8,17.7-21.9,17
c-2.6-0.4-4.1-2.3-5.1-4.2c-2.1-4-2.6-8.7-4.1-12.9c-2.8-7.7-13.4-11-16.1-17.5c-6.1,1.7-10,2.6-13.7,4.8c-3.9,2.3-6.1,4.2-6.1,4.2
c-2.5,2.1-5.6-1.6-3.1-3.7c5.8-4.9,16-10.7,23.7-13.5c2.3-3.7,7-7.4,12.9-10c-2.4-3.3-8-8.6-20.8-10.6c-11.4-1.8-33.7,9.8-35.7,22.2
c-0.5,3.2-8.3,2-7.8-1.2c0.2-1.3,0.7-2.7,1.5-4.2C375.2,177.7,369.3,178.5,361.6,177.3z M425.4,210.5c0.1,0.6-0.3,1.3-0.9,1.4
c-0.2,0-4.7,0.9-7.5-1.5c-0.5-0.4-0.5-1.2-0.1-1.7c0.4-0.5,1.2-0.5,1.7-0.1c0,0,0,0,0,0c1.9,1.7,5.4,1,5.4,1
C424.7,209.4,425.3,209.8,425.4,210.5z"/>
<path class="st5" d="M406.2,116.8c-0.7-0.2-1.4-0.3-2-0.5c-0.8-0.1-1.6-0.3-2.5-0.5c-3.4-0.6-5.7-0.8-5.7-0.8
c-3.2-0.2-2.9-5,0.3-4.9c0,0,3.6,0.4,8,1c7.5-1.3,17-2.8,20.6-2.2c1.3,0.2,2.5,0.5,3.6,0.9l-3.9-6.6l-43.1,4
c-3.2,0.3-3.7-4.5-0.4-4.9c0,0,5.8-4.8,6.7-5.7c7.2-7.2,18.7-8.3,28.8-7.3c-5.4-3.9-8-6.3-11.6-10c-18.5,8.6-44.8,22.9-66.3,21.6
c0.6,0.7,1.3,1.4,1.3,2.5c0,0.5-0.1,1-0.3,1.5c0.9,0.4,1.9,0.7,2.9,0.9c3.2,0.5,2.4,5.3-0.8,4.8c-2.4-0.4-4.6-1.3-6.6-2.6l-7.2,0.6
c-4.6-0.6-6.4-3.1-10.7-4.5c-3.5-1.1-9.7,1.5-9.7-2.3c0.1-4.1-4.2-5.7-4.2-9.8c0.1-4.9-4.2-6.3-7.4-9.8c-5.3-5.8-7.7-12.1-11.9-16.9
c-1-0.2-2-0.5-3-0.7c-13-2.1-16.5,0.7-23,3.9c-10.3,5.2-16.6,8.5-28.5,10.3c-14.7,2.1-31.7,4.4-42.6,6.4c8.1,0.6,18.5,0.9,28.9,0
c19.3-1.6,26.7-10.4,48.4-7c24.1,3.8,23.8,14.9,23.5,16.5c-0.5,3.2-5.3,2.4-4.8-0.8c0-7.2-16.1-10.4-19.5-10.9
c-20.2-3.2-28.4,5.5-47.3,7c-3.4,0.3-6.9,0.4-10.2,0.5c3.7,1.1,6.9,2.4,8.8,3.8c5.1,3.6,15.5,11.9,21.3,13.5
c13.5,3.6,26.9,2.5,37.1,0.5c10-2,16.7-4.9,16.7-4.9c3-1.3,4.9,3.1,2,4.5c-7.6,3.4-16.7,5.5-26,6.5c-1.1,4-2.7,8.2-4.7,12.3
c3.2-0.9,6.4-1.5,9.4-1.9c3.2-0.5,3.9,4.4,0.7,4.8c-4.4,0.6-9.5,2.3-14.7,4.7c0.4,0.3,0.7,0.7,0.6,1.3c0,1.9-2.2,2.4-2.2,4.3
c-0.1,4.3,4.8,4.7,8.5,6.6l-2.3,8.6c0,1.9,2.1,2.5,2.1,4.4c-0.1,3.8-0.6,3.1-1.5,6.9c6.5-3.7,7.5-0.3,7.5,1.9c0,1.9,4.2,5.7,2.3,7.6
c1.8,3.2,5.1,4.9,5.2,8.4c1.4-0.3,2.4-0.7,3-1.6c0.5-0.7,0.7-1.5,0.9-2.4c0.2-1,0.3-2.1,0.4-3.1c0.3-2.1,0.9-4.7,4-5.9
c2.2-0.7,4.3-0.9,6.3-0.8c0.8,0,1.5,0.1,2.3,0.2c5.8-4.7,12.1-8.1,18.4-9.7c1-1,2.1-1.9,3.2-2.7c3.8-2.9,8.2-4.8,13.9-4.7
c4.2,0.1,6.3,2.8,7.7,5.6c0.7,1.4,1.3,2.9,2,4.3c0.3,0.6,0.6,1.2,0.9,1.7l1.1-0.8c-4.6-5.5-7.6-12.4-6.4-20.3
c1.2-7.8,5.4-14.1,12.2-16.9l2.5,1.2l-2.5-1.2c-3.6-1.5-7.4-2.5-11.3-3.1c-5.7-0.9-21-3.8-27.3,0.8c-2.6,1.9-5.8-0.7-3.7-3.2
c5.5-6.7,24-5.2,30.1-4.3c32.4,5.1,49.6,34.9,63.4,40.8c6.7-4,14.3-6.4,21-5.4c4.2,0.7,7.7,1.5,10.7,2.4c0.3-0.4,0.7-1.2,1.3-2.3
C440.2,134.1,423,120.9,406.2,116.8z"/>
<path class="st6" d="M300.6,184.9c1.7-1.3,3.6-2.2,5.5-2.6l-1.5-5l1.8-0.6l1.7,5.4c2.5-0.1,4.9,0.7,7,2.3l14.7-11.3
c-7-7.1-22-5.7-33.5,4C298.2,178.8,299.8,181.4,300.6,184.9z M362,239.6c4.4-0.4,8.7-0.9,12.9-1.5
C370.7,238.7,366.4,239.2,362,239.6z M335.5,241.4c-0.1-0.5-0.1-1-0.2-1.5c-0.5,0.6-1.1,1.1-1.6,1.6L335.5,241.4z M289.3,184.7
c-3.2,4.4-5.6,9.8-7,16C283.7,194.5,286.1,189.1,289.3,184.7z M336.5,195.2c0.9-0.9,1.9-1.8,3-2.4c-2.7-4.4-4.9-8.8-6.6-14.3
c-0.4-1.5-1.1-2.7-2-3.9l-14.4,11.2c0.7,0.8,1.3,1.7,1.8,2.8l12.8-1.3l0.2,1.9l-12.4,1.2c0.2,0.5,0.4,0.9,0.5,1.4
C325.2,188.3,332.6,190,336.5,195.2z M314.6,231.5c-9.1,6.4-18.3,0.8-19.1-8.2c-5,2.9-9.9,2.1-13.3-0.8c2.3,8.7,7.9,15.5,18,17
c7.6,1.2,12.8,1.4,16.3,1.6C314.6,238.6,313.8,235.2,314.6,231.5z M389.6,235.9c-0.6-0.4-1.2-0.8-1.8-1.2c-0.8,0.6-1.7,1.3-2.6,1.9
C383.4,236.9,384.9,236.7,389.6,235.9z M383.6,232c0,0-0.1,0-0.1-0.1c0,0,0,0,0,0C383.6,232,383.6,232,383.6,232z"/>
<path class="st0" d="M358,218c0.1,1.1,0.2,2.2,0.4,3.4c1.3,2.7,2.6,5.8,3.5,8.9c1.2-1.1,2.5-2.1,3.6-2.9c1.6-1.1,3.6-2.2,5.1-3
c-0.1-0.4-0.1-0.9-0.2-1.4c-3.5-2.4-6.7-4.8-9.7-7.1c0,0,0,0,0,0c-0.4-0.3-0.8-0.6-1.1-0.9C359.1,216.2,358.6,217.2,358,218z
M377.3,230.9c0.2,0.4,0.3,0.7,0.5,1.1c0.4,1,0.9,1.9,1.4,2.8c1.7-1,3.1-2,4.4-2.9c0,0,0,0,0,0c-2.5-1.6-5-3.3-7.5-5
C376.4,228.3,376.8,229.6,377.3,230.9z M371.3,229.4c-3.2,1.8-6.2,4.1-8.7,6.9c0,1.2-0.2,2.3-0.6,3.3c4.4-0.4,8.7-0.9,12.9-1.5
C374.2,235.7,373.1,232.8,371.3,229.4z M290.2,193.4c0.1-0.1,0.2-0.1,0.3-0.2l-2.4,0.2l-0.2-1.9l7.1-0.7c0.5-0.2,0.9-0.4,1.3-0.6
v-0.1c0-1.2,0-2.5-0.2-3.7l-4.9-1.9l0.7-1.8l3.7,1.4c-0.6-1.5-1.4-2.8-2.8-3.6c-1.2,1.3-2.3,2.6-3.3,4.1c0,0,0,0.1-0.1,0.1
c-3.2,4.4-5.6,9.8-7,16v0C284.7,197.5,287.7,195.1,290.2,193.4z M315,193.5l-3.9-1.4l2.4,7.7c0.5-1.4,1.1-2.6,1.7-3.6
C315.2,195.2,315.1,194.3,315,193.5z M313.7,191l0.6,0.2c0-0.1-0.1-0.2-0.1-0.3L313.7,191z M309.6,187.1l0.4,1.3l1.1-0.9
c-0.4-0.2-0.9-0.3-1.4-0.4C309.7,187.1,309.7,187.1,309.6,187.1z M308.8,202.6c0.9-0.5,2-1,3.1-1.5l-2.9-9.5l-9.7,7.5
c0.2,3.3,0.7,6.5,1.9,9.6C303.6,206,306.4,204,308.8,202.6z M301.8,190.2l3.5-0.3L303,189C302.6,189.3,302.2,189.7,301.8,190.2z
M304.9,187.7l3.2,1.2l-0.6-1.8C306.6,187.1,305.7,187.3,304.9,187.7z M312.1,189.2l1.1-0.1c-0.1-0.2-0.3-0.3-0.4-0.4L312.1,189.2z
M299.3,196.6l6.3-4.9l-5,0.5C299.9,193.7,299.5,195.3,299.3,196.6L299.3,196.6z M357.3,238.5c1.1-1.9,0.9-7-3.8-16.2
c-0.5,0.3-1,0.7-1.5,1c-1.4,0.9-2.5,1.6-3.6,2.4c-2.5,2.1-4.8,4.4-6.4,7.2c-1.3,2.3-2.4,5.5-1.7,8.3c2.4-0.1,4.9-0.2,7.3-0.4
c2.8-0.2,5.5-0.4,8.3-0.6c0.1,0,0.2,0,0.3,0C356.8,239.4,357.2,238.7,357.3,238.5z M330.6,218.2c-0.8,0.6-1.7,1.3-2.5,1.8
c-8.3,6-7.7,5.5-9.3,16c0.8,1.7,2,3.2,4.1,4.2c5.5,2.6,10.7-5.9,11.3-6.8c0.4-0.7,0.5-2.4,0-4.8c-0.8-2.3-1.5-4.6-2.1-7
C331.7,220.5,331.2,219.4,330.6,218.2z M318.1,200.8c-0.7,6.9-1.2,13.5,1.6,19.8c3.3-3,7.7-5.5,10.9-8.6c0-0.5-0.1-0.9-0.1-1.4
c0-4.4,1.1-8.2,2.8-11.3c-1-2.2-2.7-3.9-5.1-4.2c-1.4-0.2-2.6-0.2-3.8,0l3.1,1.2l-0.7,1.8l-5.2-1.9
C320.1,197.1,318.9,198.8,318.1,200.8z M304,228.7c4.7,3,9.8-2.4,11.8-5c-2.5-4.6-3.4-10.7-3-17.8c-3.5,1.8-6.7,4.3-9.2,7.4
c0.1,0.2-2.6,5-3,5.5C299.6,222.1,299.8,226,304,228.7z M284.6,205.8c-0.6,1-1.1,2.1-1.5,3.4l11.5-8.9c-0.1-1.3-0.2-2.5-0.2-3.9
C290.5,198.7,286.9,201.8,284.6,205.8z M286.7,219.7c4.8,2.8,9.7-2.9,11.5-5.6c-1.9-3.1-3-7-3.5-11.5l-12.2,9.4
C282.3,214.8,283.3,217.7,286.7,219.7z M335.3,210.5c0,5.3,1.9,12,3.6,17.1c1.3-1.6,2.7-2.9,4-4c4.3-3.6,11.1-5.8,12.3-11.8
c-3.6-2.9-6.3-5.5-7.7-7.4c-2.1-2.9-4.2-5.5-5.6-7.6C338.3,199.2,335.3,204.1,335.3,210.5z"/>
<path class="st7" d="M341,164.5l-1.1,0.8l-3.7,2.8l-6.5,5L315,184.5l-3.9,3l-1.1,0.9l-0.4-1.3l-1.5-4.9l-1.7-5.4l-1.8,0.6l1.5,5
l1.4,4.7l0.6,1.8l-3.2-1.2l-5.2-1.9l-4.3-1.6l-3.7-1.4l-0.7,1.8l4.9,1.9l2.2,0.8l4.7,1.8l2.3,0.9l-3.5,0.3l-2.4,0.2l-4.5,0.4
l-7.1,0.7l0.2,1.9l2.4-0.2l8.9-0.9l1.3-0.1l5-0.5l-6.3,4.9l-0.1,0.1l-4.7,3.6l-11.5,8.9l-2.1,1.6l0,0l-7,5.4l-2,1.6l1.2,1.5l1.1-0.9
l6.7-5.2l0,0l1.6-1.3l12.2-9.4l4.5-3.5l9.7-7.5l2.9,9.5l0.3,1.1l1.8-0.6l-0.4-1.2l-0.2-0.6l-2.4-7.7l3.9,1.4l1.8,0.7l5,1.9l5.2,1.9
l0.7-1.8l-3.1-1.2l-6.1-2.3l-4-1.5l-0.6-0.2l0.5-0.1l4.7-0.5l12.4-1.2l-0.2-1.9l-12.8,1.3l-5.1,0.5l-1.1,0.1l0.7-0.5l3.7-2.9
l14.4-11.2l6.3-4.9l3.6-2.8l1.4-1.1C341.8,165.4,341.4,165,341,164.5L341,164.5z"/>
<path class="st5" d="M275.6,276c-6.2,7.4-7.1,34.3,1.1,52.9c0.9,2,5.3,2,10.3,0.9c-5.7-5-8.6-10.8-8.9-15c2.5-6.3,7.3-5.7,15.2-4.4
c0.7,5.6,1.6,10.4,1.6,17c4.6-1.8,8.3-4.2,8.7-6.4c-0.6-0.6-1.1-1.4-1.5-2.2c-2.1-4.7-8.7-21.7-11.8-37.7
C286.6,278,280.2,274,275.6,276z M328.9,263.4c2.7,3.1,5.1,6.4,7.3,9.6c7.4,10.9,13.1,23.1,16.4,30.5c2.7-0.9,6.6-2.4,10.5-4.1
c-4.8-4.5-7.7-8.5-11.5-12.8c4.5-6.4,7.4-10.1,13.9-7.5c2.9,3.1,5.2,9.2,5,16.6c3.3-1.9,5.4-3.8,4.8-5.4
C373.3,286,341.6,231.7,328.9,263.4z M308.7,317c1.5,3.4,10.4,3.2,16.8,2.7c-6.1-4.2-10.4-9.9-12.8-17.2c7.8-10.9,19.2-4.3,19.2-4.3
c3.8,4.2,3.4,11.2,1.6,20.1c5.2-1.3,16.3-4.6,14.8-7.9c-2.2-5.1-8.9-21-18.2-34.8c-9.8-14.6-20.4-23.4-30-20.7
C287.1,258.7,306.1,311.2,308.7,317z"/>
<path class="st0" d="M334.6,144.2c-1.2,7.9,1.8,14.8,6.4,20.3c0.4,0.5,0.9,0.9,1.3,1.4c6,6.4,14.1,10.6,19.3,11.4
c7.7,1.2,13.7,0.3,18.7-1.8c2-3.8,5.7-8.1,10.3-12l-2.5-1.3h0c-3.5-2.5-6.9-6-10.5-10c0.2,0.9,0.3,1.8,0.2,2.7
c-0.5,3.5-3.8,5.8-7.2,5.3c-3.5-0.6-5.8-3.8-5.3-7.2c0.5-3.5,3.8-5.8,7.2-5.3c0.4,0.1,0.9,0.2,1.3,0.3c-5.6-6.1-11.9-12.6-20.1-17.4
h0l-4.4-2.2l-2.5-1.2C339.9,130.1,335.8,136.4,334.6,144.2z"/>
<path class="st1" d="M335,40.4c0.3-0.1,4.3-0.6,8.7,1.4c-0.5,0-1,0.1-1.5,0.1l-4.9,0.3c-0.5,0-0.9,0.5-0.9,1c0,0.5,0.5,0.9,1,0.9
l4.9-0.3c1.5-0.1,2.8-0.2,4.2-0.2c3.6,2.7,7,7.7,8.6,16.6c0.1,0.5,0.6,0.9,1.1,0.8c0.5-0.1,0.9-0.6,0.8-1.1
c-1.4-8.1-4.4-13.2-7.7-16.3c3.5,0,7,0.4,10.8,1.7c1.4,1.4,2.8,3.2,3.9,5.5c-0.2,0-0.5-0.1-0.7-0.1c-0.9-0.2-1.9-0.5-2.8-0.6
c-1.5-0.1-1.9,1.1-0.7,1.8c0.1,0.1,0.2,0.1,0.3,0.1c0.9,0.3,1.9,0.4,2.8,0.6c0.7,0.1,1.4,0.3,2.1,0.4c0.9,2.1,1.6,4.6,2.1,7.5
c0.1,0.5,0.6,0.9,1.1,0.8c0.5-0.1,0.9-0.6,0.8-1.1c-0.4-2.3-1-4.5-1.8-6.7c0.3,0.1,0.6,0.1,0.9,0.2c2.8,0.5,3.5,0.6,6.9,2.6
c0.5,1.5,0.9,3.1,1.2,4.9c0.1,0.5,0.6,0.9,1.1,0.8c0.5-0.1,0.9-0.6,0.8-1.1c-0.2-1.1-0.5-2.2-0.7-3.2c0.4,0.2,0.7,0.4,1.1,0.7
l2.6,1.5c0.5,0.3,1,0.1,1.3-0.3c0.3-0.5,0.1-1-0.3-1.3c0,0,0,0,0,0l-2.6-1.5c-1.2-0.7-2.1-1.2-2.9-1.7
c-5.9-17.8-20.7-15.5-20.9-15.5c-0.3,0-0.5,0.2-0.6,0.5c-4.6-1.7-8.4-1.1-8.5-1.1c-0.5,0.1-0.9,0.6-0.8,1.1c0.1,0.5,0.6,0.9,1.1,0.8
c0.3-0.1,4.5-0.7,9,1.6c-3-0.5-5.9-0.6-8.9-0.5c-6-4.1-12.3-3.2-12.4-3.2c-0.5,0.1-0.9,0.6-0.8,1.1C334,40.2,334.5,40.5,335,40.4z
M357.9,41.1c3.6,0,11.8,1.3,16.3,12.3c-2.1-1.1-3.1-1.3-5.6-1.8c-0.7-0.2-1.4-0.3-2.1-0.5c-0.8-1.7-1.6-3.3-2.5-4.6
c1.7,0.8,3.5,1.6,5.4,2.8c0.5,0.3,1.1,0.1,1.3-0.3c0.3-0.5,0.1-1-0.3-1.3c0,0,0,0,0,0c-3.5-2-6.5-3.3-9.2-4.3
C360,42.5,359,41.8,357.9,41.1z"/>
<path class="st0" d="M549.6,488.6h-5.9v16.2h-4v-16.2h-5.9v-3.5h15.9V488.6z M576.5,504.8h-4v-15.7h-0.1l-5.7,15.7h-3.9l-5.5-15.7
h-0.1v15.7h-4v-19.7h7l4.6,12.9h0.1l4.8-12.9h6.9V504.8z"/>
</svg>

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 306 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 438 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 395 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 367 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 276 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 376 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 323 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 220 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 334 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 325 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 396 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 349 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 323 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 387 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 267 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 491 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 454 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 392 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 463 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 259 KiB

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