1
0
mirror of https://github.com/konpa/devicon.git synced 2025-04-21 21:31:53 +02:00

Merge branch 'develop' into kotlin

This commit is contained in:
Ezequiel S. Sandoval 2020-10-22 16:08:09 -05:00
commit 07fee189a8
31 changed files with 4926 additions and 2525 deletions

View File

@ -36,26 +36,26 @@ class SeleniumRunner:
"""
ICOMOON_URL = "https://icomoon.io/app/#/select"
def __init__(self, icomoon_json_path: str, download_path: str,
geckodriver_path: str, headless):
def __init__(self, download_path: str,
geckodriver_path: str, headless: bool):
"""
Create a SeleniumRunner object.
:param icomoon_json_path: a path to the iconmoon.json.
:param download_path: the location where you want to download
the icomoon.zip to.
:param geckodriver_path: the path to the firefox executable.
:param headless: whether to run browser in headless (no UI) mode.
"""
self.icomoon_json_path = icomoon_json_path
self.download_path = download_path
self.driver = None
self.set_options(geckodriver_path, headless)
self.set_options(download_path, geckodriver_path, headless)
def set_options(self, geckodriver_path: str, headless: bool):
def set_options(self, download_path: str, geckodriver_path: str,
headless: bool):
"""
Build the WebDriver with Firefox Options allowing downloads and
set download to download_path.
:param download_path: the location where you want to download
:param geckodriver_path: the path to the firefox executable.
the icomoon.zip to.
:param headless: whether to run browser in headless (no UI) mode.
:raises AssertionError: if the page title does not contain
@ -69,25 +69,34 @@ class SeleniumRunner:
# set the default download path to downloadPath
options.set_preference("browser.download.folderList", 2)
options.set_preference("browser.download.dir", self.download_path)
options.set_preference("browser.download.dir", download_path)
options.headless = headless
self.driver = WebDriver(options=options, executable_path=geckodriver_path)
self.driver.get(self.ICOMOON_URL)
assert "IcoMoon App" in self.driver.title
# wait until the whole web page is loaded by testing the hamburger input
hamburger_input = WebDriverWait(self.driver, SeleniumRunner.LONG_WAIT_IN_SEC).until(
ec.element_to_be_clickable((By.CSS_SELECTOR,
"button.btn5.lh-def.transparent i.icon-menu"))
)
hamburger_input.click()
print("Accessed icomoon.io")
def upload_icomoon(self):
def upload_icomoon(self, icomoon_json_path: str):
"""
Upload the icomoon.json to icomoon.io.
:param icomoon_json_path: a path to the iconmoon.json.
:raises TimeoutException: happens when elements are not found.
"""
print("Uploading icomoon.json file...")
try:
# find the file input and enter the file path
import_btn = WebDriverWait(self.driver, SeleniumRunner.LONG_WAIT_IN_SEC).until(
ec.presence_of_element_located((By.CSS_SELECTOR, "div#file input"))
ec.element_to_be_clickable((By.CSS_SELECTOR, "div#file input"))
)
import_btn.send_keys(self.icomoon_json_path)
import_btn.send_keys(icomoon_json_path)
except Exception as e:
self.close()
raise e
@ -130,11 +139,14 @@ class SeleniumRunner:
self.test_for_possible_alert(self.SHORT_WAIT_IN_SEC, "Dismiss")
self.remove_color_from_icon()
# take a screenshot of the icons that were just added
self.driver.save_screenshot("new_icons.png");
self.click_hamburger_input()
select_all_button = WebDriverWait(self.driver, self.LONG_WAIT_IN_SEC).until(
ec.element_to_be_clickable((By.XPATH, "//button[text()='Select All']"))
)
select_all_button.click()
print("Finished uploading the svgs...")
except Exception as e:
self.close()
raise e
@ -152,7 +164,7 @@ class SeleniumRunner:
)
menu_appear_callback = ec.element_to_be_clickable(
(By.CSS_SELECTOR, "h1#setH2 ul")
(By.CSS_SELECTOR, "h1 ul.menuList2")
)
while not menu_appear_callback(self.driver):

View File

@ -9,8 +9,8 @@ import re
def find_new_icons(devicon_json_path: str, icomoon_json_path: str) -> List[dict]:
"""
Find the newly added icons by finding the difference between
the devicon_test.json and the icomoon_test.json.
:param devicon_json_path, the path to the devicon_test.json.
the devicon.json and the icomoon.json.
:param devicon_json_path, the path to the devicon.json.
:param icomoon_json_path: a path to the iconmoon.json.
:return: a list of the new icons as JSON objects.
"""
@ -33,8 +33,8 @@ def is_not_in_icomoon_json(icon, icomoon_json) -> bool:
Checks whether the icon's name is not in the icomoon_json.
:param icon: the icon object we are searching for.
:param icomoon_json: the icomoon json object parsed from
icomoon_test.json.
:return: True if icon's name is not in the icomoon_test.json, else False.
icomoon.json.
:return: True if icon's name is not in the icomoon.json, else False.
"""
pattern = re.compile(f"^{icon['name']}-")
@ -46,7 +46,7 @@ def is_not_in_icomoon_json(icon, icomoon_json) -> bool:
def get_svgs_paths(new_icons: List[dict], icons_folder_path: str) -> List[str]:
"""
Get all the suitable svgs file path listed in the devicon_test.json.
Get all the suitable svgs file path listed in the devicon.json.
:param new_icons, a list containing the info on the new icons.
:param icons_folder_path, the path where the function can find the
listed folders.
@ -66,7 +66,9 @@ def get_svgs_paths(new_icons: List[dict], icons_folder_path: str) -> List[str]:
aliases = [] # create empty list of aliases if not provided in devicon.json
for font_version in icon_info["versions"]["font"]:
# if it's an alias, we don't want to make it into an icon
if is_alias(font_version, aliases):
print(f"Not exist {icon_info['name']}-{font_version}.svg")
continue
file_name = f"{icon_info['name']}-{font_version}.svg"

63
.github/scripts/icomoon_peek.py vendored Normal file
View File

@ -0,0 +1,63 @@
from pathlib import Path
from argparse import ArgumentParser
from selenium.common.exceptions import TimeoutException
# pycharm complains that build_assets is an unresolved ref
# don't worry about it, the script still runs
from build_assets.SeleniumRunner import SeleniumRunner
from build_assets import filehandler
from build_assets.PathResolverAction import PathResolverAction
def main():
parser = ArgumentParser(description="Upload svgs to Icomoon to create icon files.")
parser.add_argument("--headless",
help="Whether to run the browser in headless/no UI mode",
action="store_true")
parser.add_argument("geckodriver_path",
help="The path to the firefox executable file",
action=PathResolverAction)
parser.add_argument("icomoon_json_path",
help="The path to the icomoon.json aka the selection.json created by Icomoon",
action=PathResolverAction)
parser.add_argument("devicon_json_path",
help="The path to the devicon.json",
action=PathResolverAction)
parser.add_argument("icons_folder_path",
help="The path to the icons folder",
action=PathResolverAction)
parser.add_argument("download_path",
help="The path where you'd like to download the Icomoon files to",
action=PathResolverAction)
args = parser.parse_args()
new_icons = filehandler.find_new_icons(args.devicon_json_path, args.icomoon_json_path)
if len(new_icons) == 0:
print("No files need to be peek. Ending script...")
return
# print list of new icons, separated by comma
print("List of new icons:")
print(*new_icons, sep = "\n")
try:
runner = SeleniumRunner(args.download_path,
args.geckodriver_path, args.headless)
svgs = filehandler.get_svgs_paths(new_icons, args.icons_folder_path)
runner.upload_svgs(svgs)
runner.close()
print("Task completed.")
except TimeoutException as e:
print(e)
print(e.stacktrace)
runner.close()
if __name__ == "__main__":
main()

View File

@ -47,9 +47,9 @@ def main():
print("List of new icons:")
print(*new_icons, sep = "\n")
try:
runner = SeleniumRunner(args.icomoon_json_path, args.download_path,
runner = SeleniumRunner(args.download_path,
args.geckodriver_path, args.headless)
runner.upload_icomoon()
runner.upload_icomoon(args.icomoon_json_path)
svgs = filehandler.get_svgs_paths(new_icons, args.icons_folder_path)
runner.upload_svgs(svgs)

View File

@ -1,19 +1,17 @@
name: Build Icons
on:
pull_request:
branches:
- master
push:
branches:
- master
types: [labeled]
jobs:
build:
name: Get Fonts From Icomoon
if: contains(github.event.pull_request.labels.*.name, 'bot:build')
runs-on: windows-2019
steps:
- uses: actions/checkout@v2
with:
ref: ${{ github.head_ref }}
repository: ${{ github.event.pull_request.head.repo.full_name}}
- name: Setup Python v3.8
uses: actions/setup-python@v2
with:
@ -30,13 +28,25 @@ jobs:
./icomoon.json ./devicon.json ./icons ./ --headless
- name: Upload geckodriver.log for debugging purposes
uses: actions/upload-artifact@v2
if: ${{failure()}}
with:
name: geckodriver-log
path: ./geckodriver.log
- name: Running gulp default task for building devicon.min.css
run: |
gulp default
- name: Commit changes
uses: stefanzweifel/git-auto-commit-action@v4
- name: Upload screenshot of the newly made icons
uses: actions/upload-artifact@v2
if: ${{success()}}
with:
commit_message: Build new icons, icomoon.json and devicon.css
name: new_icons
path: ./new_icons.png
- name: Running npm task for building devicon.min.css
if: ${{ success() }}
run: npm run build-css
- name: Create Pull Request
if: ${{ success() }}
uses: peter-evans/create-pull-request@v3
with:
branch: ${{ format('build/{0}', github.head_ref) }}
commit-message: 'Built new icons, icomoon.json and devicon.css'
title: 'bot:build new icons, icomoon.json and devicon.css'
body: 'Automated font-building task ran by GitHub Actions bot'
delete-branch: ${{true}}

53
.github/workflows/peek_icons.yml vendored Normal file
View File

@ -0,0 +1,53 @@
name: Peek Icons
on:
pull_request:
types: [labeled]
jobs:
build:
name: Get Fonts From Icomoon
if: contains(github.event.pull_request.labels.*.name, 'bot:peek')
runs-on: windows-2019
steps:
- uses: actions/checkout@v2
with:
ref: ${{ github.head_ref }}
repository: ${{ github.event.pull_request.head.repo.full_name}}
- name: Setup Python v3.8
uses: actions/setup-python@v2
with:
python-version: 3.8
- name: Install dependencies (python, pip, npm)
run: |
python -m pip install --upgrade pip
pip install -r ./.github/scripts/requirements.txt
npm install
- name: Run icomoon_peek.py
run: >
python ./.github/scripts/icomoon_peek.py
./.github/scripts/build_assets/geckodriver-v0.27.0-win64/geckodriver.exe
./icomoon.json ./devicon.json ./icons ./ --headless
- name: Upload geckodriver.log for debugging purposes
uses: actions/upload-artifact@v2
if: ${{failure()}}
with:
name: geckodriver-log
path: ./geckodriver.log
- name: Upload screenshot of the newly made icons
uses: actions/upload-artifact@v2
if: ${{success()}}
with:
name: new_icons
path: ./new_icons.png
- name: Comment on the PR about the result
uses: github-actions-up-and-running/pr-comment@v1.0.1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
message: >
Hi! I'm Devicons' GitHub Actions Bot!
I just peeked at the icons that you wanted to add and upload them to the
[Actions page](https://github.com/devicons/devicon/actions). The maintainers
will now take a look at it and decide whether to merge your PR.
Cheers :),
Bot

3
.gitignore vendored
View File

@ -3,4 +3,5 @@ node_modules
.idea
geckodriver.log
__pycache__
*.pyc
*.pyc
new_icons.png

View File

@ -2,50 +2,239 @@
<p>
First of all, thanks for taking the time to contribute! This project can only grow and live by your countless contributions. To keep this project maintable we developed some guidelines for contributions.
</p>
<h2>Submitting icon</h2>
<h2>Table of Content</h2>
<ul>
<li>Create a separated pull request for each icon (no matter how many variations)</li>
<li>Include the name of the icon in the pull request f.e. "new icon: html5 (original, plain, line)"</li>
<li>At least the plain or line version of the icon is required (since those are required for the icon font)</li>
<li>Modify <a href="https://github.com/konpa/devicon/blob/master/devicon.json">devicon.json</a> to include the icon (or variations)</li>
<li>Modify <a href="https://github.com/konpa/devicon/blob/master/devicon-colors.css">devicon-colors.css</a> to include the colored version of the icon</li>
<li>optional: Add a image of the new icon(s) to the description of the pull request</li>
<li>optional: Reference the issues regarding the new icon</li>
<li><a href="#overview">Overview on Submitting Icon</a></li>
<li><a href="#versionNaming">Naming Conventions</a></li>
<li><a href="#svgStandards">SVG Standards</a></li>
<li><a href="#orgGuidelines">Organizational Guidelines</a></li>
<li><a href="#updateDevicon">Updating the <code>devicon.json</code></a></li>
<li><a href="#example">Example</a></li>
<li><a href="#requestingIcon">Requesting An Icon</a></li>
<li><a href="#buildScript">Regarding the Build Script</a></li>
</ul>
<h3>Icon formats and naming conventions</h3>
<p>Each icon comes in different variations:</p>
<hr>
<h2 id="overview">Overview on Submitting Icon</h2>
<p>Here is an overview of what you have to do to submit your icons to the repo.</p>
<ol>
<li>Create the svgs for each logo versions that you have </li>
<li>Put the svgs for each logo into its own folders in <code>/icons</code> </li>
<li><a href="#updateDevicon">Update the <code>devicon.json</code> to include the new icon</a> </li>
<li>Create a separated pull request (PR) for each icon (no matter how many versions). </li>
<li>Include the name of the icon in the pull request title. Follow this format: <code>new icon: {{logoName}} ({{versions}})</code> </li>
<li><i>Optional</i>: Add images of the new icon(s) to the description of the pull request. This would help speed up the review process </li>
<li><i>Optional</i>: Reference the issues regarding the new icon. </li>
<li>Wait for a repo maintainer to review your changes. Once they are satisfied, they will <a href="#buildScript">build your repo </a>. This will create a PR into your branch.</li>
<li>Review the PR. It should contain the icon versions of your svgs. Accept the changes if you are satisfied</li>
<li>Once you accept the changes, a maintainer will accept your PR into the repo.</li>
</ol>
<hr>
<h2 id='versionNaming'>Versions and Naming Conventions</h2>
<p>Each icon can come in different versions. So far, we have:</p>
<ul>
<li>original</li>
<li>original-wordmark</li>
<li>plain</li>
<li>plain-wordmark</li>
<li>line</li>
<li>line-wordmark</li>
<li><b>original</b>: the original logo. Can contains multiple colors. <a href="https://github.com/devicons/devicon/blob/master/icons/amazonwebservices/amazonwebservices-original.svg"> Example </a> </li>
<li><b>original-wordmark</b>: similar to the above but must contain the name of the technology.<a href="https://github.com/devicons/devicon/blob/master/icons/amazonwebservices/amazonwebservices-original-wordmark.svg"> Example </a></li>
<li><b>plain</b>: a one-color version of the original logo.<a href="https://github.com/devicons/devicon/blob/master/icons/android/android-plain.svg"> Example </a></li>
<li><b>plain-wordmark</b>: a one-color version of the original logo but with wordmark.<a href="https://github.com/devicons/devicon/blob/master/icons/android/android-plain-wordmark.svg"> Example </a></li>
<li><b>line</b>: a one-color, line version of the original logo.<a href="https://github.com/devicons/devicon/blob/master/icons/apache/apache-line.svg"> Example </a></li>
<li><b>line-wordmark</b>: a one-color, line version of the original logo but with wordmark.<a href="https://github.com/devicons/devicon/blob/master/icons/apache/apache-line-wordmark.svg"> Example </a></li>
</ul>
<p>
This is not mandatory, an icon can only have one or two variations available. Just keep in mind that the minimum is 1 and the maximum 6 (for now).
It is not mandatory to have 6 versions for each icon. An icon can only have one or two versions available. Just keep in mind that the minimum is 1 and the maximum 6 (for now). You must also have at least one version that can be make into an icon.
</p>
<p>
The plain and line variations (with or without wordmark) are designed to be available in the final icon font. So they need to stay as simple as possible (one color and ensure that the paths are united before to export to svg). You can use a service like <a href="https://compressor.io/">compressor</a> or <a href="https://petercollingridge.appspot.com/svg-editor">SVG Editor</a> in order to optimize the svg file.
The <b>plain</b> and <b>line</b> versions (with or without wordmark) are designed to be available in the final icon font.
</p>
<p>
The original versions are only available in svg format, so they do not need to be as simple and they can contain numerous colors.
The <b>original</b> version are only available in svg format, so they do not need to be as simple and can contain numerous colors.
</p>
<p>
Some icons are really simple (like the apple one), so the original version can be used for the icon font. In this case, I'll add an alias so they can be found with the "original" or "plain" naming convention.
Some icons are really simple (like the Apple one), so the original version can be used as the plain version and as the icon font. In this case, you'll only need to make only one of the version (either "original" or "plain"). You can then add an alias in the <code>devicon.json</code> so they can be found with either the "original" or "plain" naming convention.
</p>
<h3>Organizational guidelines</h3>
<hr>
<h2 id='svgStandards'>SVG Standards</h2>
<p>Before you submit your logos/svgs, please ensure that they meet the following standard:</p>
<ul>
<li>Each icon has his own folder located in the "icons" folder</li>
<li>Each icon folder contains one .eps file and as many .svg files as versions available</li>
<li>The .eps file contains all available versions of an icon. Each version is contained in a 128px by 128px artboard</li>
<li>Each .svg file contains one version of an icon in a "0 0 128 128" viewbox</li>
<li>The naming convention for the svg file is the following: (icon name)-(original/plain/line)-(wordmark)</li>
<li>The background must be transparent.</li>
<li>The <b>plain</b> and <b>line</b> versions (with or without wordmark) need to stay as simple as possible. They must have only one color and the paths are united before exporting to svg.
</li>
<li>Optimize/compress your SVGs. You can use a service like <a href="https://compressor.io/">compressor</a> or <a href="https://petercollingridge.appspot.com/svg-editor">SVG Editor</a>.</li>
<li>The icon's strokes and texts must be fills. We use Icomoon to make our icon, which has its<a href="https://icomoon.io/#docs/stroke-to-fill"> requirements</a></li>
</ul>
<h2>Requesting a icon</h2>
<hr>
<h2 id='orgGuidelines'>Organizational Guidelines</h2>
<ul>
<li>Each icon has its own folder located in the <code>icons</code> folder</li>
<li>Each icon folder contains one <code>.eps</code> file and as many <code>.svg</code> files as versions available</li>
<li>The <code>.eps</code> file contains all available versions of an icon. Each version is contained in a 128px by 128px artboard</li>
<li>Each <code>.svg</code> file contains one version of an icon in a <code>0 0 128 128</code> viewbox</li>
<li>The naming convention for the svg file is the following: <code>(icon name)-(original|plain|line)-(wordmark)</code></li>
</ul>
<hr>
<h2 id='updateDevicon'> Updating the <code>devicon.json</code> </h2>
<p>
Before you open a PR into Devicon, you'd have to update the <code>devicon.json</code>. This is essential for our build script to work and to document your work.
</p>
<p>
Here is the object that each of your logo must have:
</p>
<pre>
<code>
{
"name": string, // the official name of the technology. Must be lower case, no space or use the dash '-' character.
"tags": string[], // list of tags relating to the technology for search purpose
"versions": {
"svg": VersionString[], // list the svgs that you have
"font": VersionString[] // list the fonts acceptable versions that you have
},
"color": string, // the main color of the logo. Only track 1 color
"aliases": AliasObj[] // keeps track of the aliases
}
</code>
</pre>
<p>
Here is the AliasObj interface:
</p>
<pre>
<code>
{
"base": VersionString, // the base version
"alias": VersionString // the alias version that's similar to the base version
}
</code>
</pre>
<p>
Here is what VersionString means:
</p>
<ol>
<li> If you have "html5-original", the version string would be "original" </li>
<li> If you have "react-line-wordmark", the version string would be "line-wordmark" </li>
<li> See <a href="#iconFormat">Icon Formats and Naming Conventions</a> for more details </li>
</ol>
<hr>
<h2 id='example'>Example </h2>
<p>
As an example, let's assume you have created the svgs for Amazon Web Services and Redhat logos.
</p>
<p>For the Amazon Web Services svgs, you have the following versions: "original", "original-wordmark", "plain-wordmark". However, the "original" version is simple enough to be a "plain" version as well. Note that we are not using the acronym AWS.</p>
<p>For the Redhat svg, you have the "original", "original-wordmark", "plain", "plain-wordmark" versions. </p>
<ol>
<li>
Put the svgs for each logo that you have into its own folders in <code>/icons</code>
<ul>
<li>This means you would create two folders: one for <code>amazonwebservices</code> and one for <code>redhat</code></li>
<li><b>Note</b>: don't do this in the same commits. We want to have each logo in its own PR so don't create these two folders in the same commit</li>
</ul>
</li>
<li>
<a href="#updateDevicon">Update the <code>devicon.json</code> to include the icon (or variations)</a>
<ul>
<li>For the <code>amazonwebservices</code>, you would do this
<pre>
<code>
{
"name": "amazonwebservices",
"tags": [
"cloud",
"hosting",
"server"
],
"versions": {
"svg": [ // here are the versions that are available in svgs
"original",
"original-wordmark",
"plain-wordmark"
],
"font": [ // here are the versions that will be used to create icons
"original", // original is simple enough to be used as plain
"plain-wordmark",
]
},
"color": "#F7A80D", // note the '#' character
"aliases": [
{
"base": "original", // here is the base version aka the one that we will upload to Icomoon
"alias": "plain" // this is its alias. Our script will create a reference so we can search using "original" or "plain"
}
]
}
</code>
</pre>
</li>
<li>For the <code>redhat</code>, you would do this
<pre>
<code>
{
"name": "redhat",
"tags": [
"server",
"linux"
],
"versions": {
"svg": [
"original",
"original-wordmark",
"plain",
"plain-wordmark"
],
"font": [
"plain",
"plain-wordmark"
]
},
"color": "#e93442",
"aliases": [] // no aliases
},
</code>
</pre>
</li>
<li><b>Note</b>: again, don't do this in the same commits. We want to have each logo in its own PR so don't create two folders in the same commit</li>
</ul>
</li>
<li>Create a separated pull request (PR) for each icon (no matter how many variations).
<ul>
<li>This means you would have to create two PRs</li>
<li>For Amazon Web Services, the branch name would be icons/amazonwebservices. </li>
<li>For Redhat, the branch name would be icons/redhat. </li>
<li> </li>
</ul>
</li>
<li>
Include the name of the icon in the pull request. Follow this format: "new icon: {{logoName}} ({{versions}})"
<ul>
<li>For Amazon Web Services, your PR title should be "new icon: amazonwebservices (original, original-wordmark, plain-wordmark)"</li>
<li>For Redhat, your PR title should be "new icon: redhat (original, original-wordmark, plain, plain-wordmark)"</li>
</ul>
</li>
<li>For the rest of the steps, you can follow <a href="#overview">Overview on Submitting Icon</a></li>
</ol>
<hr>
<h2 id='requestingIcon'>Requesting an Icon</h2>
<p>When you want to request a new icon please feel free to create a issue following some simple guidelines:</p>
<ul>
<li>Search for other issues already requesting the icon</li>
<li>Create an issue naming it "Icon request: <i>name-of-the-icon</i>"; please create separated issues for each icon</li>
<li>If an issue doesn't exist, create an issue naming it "Icon request: <i>name-of-the-icon</i>". </li>
<li>Please create separated issues for each icon</li>
<li>optional: Include links where the icon can be found</li>
</ul>
<hr>
<h2 id='buildScript'>Regarding The Build Script</h2>
<p>To make adding icons easier for repo maintainers, we rely on GitHub Actions, Python, Selenium, and Gulp to automate our tasks.</p>
<p>So far, the tasks that we have automated are:</p>
<ul>
<li>Upload svgs to <a href="https://icomoon.io/app/#/select">icomoon.io</a> and get the icons back. For details, see <a href="https://github.com/devicons/devicon/issues/252"> the original disscussion</a>, <a href="https://github.com/devicons/devicon/pull/268">this PR that introduce the feature</a> and <a href="https://github.com/devicons/devicon/issues/300">the final changes to it.</a></li>
<li>Build, combine, and minify CSS files. For details, see <a href="https://github.com/devicons/devicon/pull/290">this</a></li>
<li>Ensure code quality is up to standard</li>
</ul>

View File

@ -5,7 +5,7 @@
Devicon aims to gather all logos representing development languages and tools.
Each icon comes in several versions: font/svg, original/plain/line, colored/not colored, wordmark/no wordmark.
Devicon it's 80+ icons and 200+ versions. And it's growing!
Devicon has 80+ icons and 200+ versions. And it's growing!
See all available icons on the [new website](https://devicons.github.io/devicon/).
@ -43,13 +43,11 @@ _2 ways of using devicon:_
#### Icons font
- Upload devicon.css and font files to your project
- Upload devicon.min.css and font files to your project
- Note: the `devicon.css` file is not the same as the `devicon.min.css`. It doesn't contain any colors or aliases.
```html
<link rel="stylesheet" href="devicon.css">
<!-- if you want colored versions -->
<link rel="stylesheet" href="devicon-colors.css">
<link rel="stylesheet" href="devicon.min.css">
```
- Add icon using `<i>` tag
@ -104,10 +102,10 @@ if you like to restore the settings stored in the configuration file.
The next step is to click on **Generate font** and download the resulting archive. Extract it
contents and you will find a [fonts](./fonts) directory next to a `style.css`. Replace the content of the `fonts` folder,
merge the `style.css` with [devicon.css](./devicon.css) and follow the next step to build the final stylesheet.
rename the `style.css` to [devicon.css](./devicon.css) and follow the next step to build the final stylesheet.
### Build and minify stylesheet
Run the following command to build the resulting file `devicon.min.css`
```bash
gulp default
npm run build-css
```

View File

@ -1,179 +0,0 @@
.devicon-facebook-original:before {
content: "\e91c";
}
.devicon-typescript-original:before{
content: "\e920";
}
.devicon-babel-original:before {
content: "\e921";
}
.devicon-ssh-plain-wordmark:before {
content: "\e916";
}
.devicon-ssh-plain:before {
content: "\e915";
}
.devicon-sourcetree-plain-wordmark:before {
content: "\e914";
}
.devicon-sourcetree-plain:before {
content: "\e913";
}
.devicon-github-plain-wordmark:before {
content: "\e90a";
}
.devicon-github-plain:before {
content: "\e909";
}
.devicon-confluence-plain-wordmark:before {
content: "\e90e";
}
.devicon-confluence-plain:before {
content: "\e90d";
}
.devicon-bitbucket-plain-wordmark:before {
content: "\e910";
}
.devicon-bitbucket-plain:before {
content: "\e90f";
}
.devicon-jetbrains-line:before,
.devicon-jetbrains-line-wordmark:before,
.devicon-jetbrains-plain-wordmark:before {
content: "\e63d";
}
.devicon-django-line-wordmark:before {
content: "\e63e";
}
.devicon-django-plain-wordmark:before {
content: "\e63f";
}
.devicon-cplusplus-line-wordmark:before {
content: "\e634";
}
.devicon-cplusplus-plain-wordmark:before {
content: "\e635";
}
.devicon-csharp-line-wordmark:before {
content: "\e636";
}
.devicon-csharp-plain-wordmark:before {
content: "\e637";
}
.devicon-c-line-wordmark:before {
content: "\e638";
}
.devicon-c-plain-wordmark:before {
content: "\e639";
}
.devicon-nginx-original-wordmark:before,
.devicon-nginx-plain:before,
.devicon-nginx-plain-wordmark:before {
content: "\e615";
}
.devicon-heroku-original-wordmark:before {
content: "\e60a";
}
.devicon-heroku-original:before {
content: "\e60b";
}
.devicon-amazonwebservices-plain:before {
content: "\e603";
}
.devicon-appcelerator-plain:before {
content: "\e620";
}
.devicon-apple-plain:before {
content: "\e622";
}
.devicon-atom-plain-wordmark:before {
content: "\e623";
}
.devicon-atom-plain:before {
content: "\e624";
}
.devicon-coffeescript-plain-wordmark:before {
content: "\e669";
}
.devicon-coffeescript-plain:before {
content: "\e66a";
}
.devicon-google-original-wordmark:before {
content: "\e91d";
}
.devicon-google-original:before {
content: "\e91e";
}
.devicon-ie10-plain:before {
content: "\e7f8";
}
.devicon-oracle-plain:before {
content: "\eb6b";
}
.devicon-react-plain-wordmark:before {
content: "\e600";
}
.devicon-react-plain:before {
content: "\e601";
}
.devicon-sass-plain:before {
content: "\ebcb";
}
.devicon-sequelize-plain-wordmark:before {
content: "\e922";
}
.devicon-sequelize-plain:before {
content: "\e923";
}
.devicon-symfony-plain-wordmark:before {
content: "\e602";
}
.devicon-symfony-plain:before {
content: "\e605";
}
.devicon-twitter-plain:before {
content: "\e91f";
}
.devicon-windows8-plain-wordmark:before {
content: "\ebf4";
}
.devicon-windows8-plain:before {
content: "\ebf5";
}
.devicon-codepen-plain-wordmark:before {
content: "\e95d";
}
.devicon-codepen-original:before {
content: "\e95e";
}

View File

@ -1,594 +0,0 @@
.devicon-codepen-original-wordmark.colored,
.devicon-codepen-plain-wordmark.colored,
.devicon-codepen-original.colored,
.devicon-codepen-plain.colored {
color: #231F20;
}
.devicon-sketch-line-wordmark.colored,
.devicon-sketch-line.colored {
color: #fdad00;
}
.devicon-npm-original-wordmark.colored {
color: #cb3837;
}
.devicon-ionic-original-wordmark.colored,
.devicon-ionic-original.colored {
color: #4e8ef7;
}
.devicon-ember-original-wordmark.colored {
color: #dd3f24;
}
.devicon-electron-original-wordmark.colored,
.devicon-electron-original.colored {
color: #47848f;
}
.devicon-vagrant-plain-wordmark.colored,
.devicon-vagrant-plain.colored {
color: #127eff;
}
.devicon-yarn-plain-wordmark.colored,
.devicon-yarn-plain.colored {
color: #2c8ebb;
}
.devicon-haskell-plain-wordmark.colored,
.devicon-haskell-plain.colored{
color: #5E5185;
}
.devicon-handlebars-plain-wordmark.colored,
.devicon-handlebars-plain.colored{
color: #000000;
}
.devicon-couchdb-plain-wordmark.colored,
.devicon-couchdb-plain.colored {
color: #e42528;
}
.devicon-behance-plain-wordmark.colored,
.devicon-behance-plain.colored {
color: #0071e0;
}
.devicon-linkedin-plain-wordmark.colored,
.devicon-linkedin-plain.colored {
color: #0076b2;
}
.devicon-ceylon-plain-wordmark.colored,
.devicon-ceylon-plain.colored {
color: #AB710A;
}
.devicon-elm-plain-wordmark.colored,
.devicon-elm-plain.colored {
color: #34495E;
}
.devicon-cakephp-plain-wordmark.colored,
.devicon-cakephp-plain.colored {
color: #D43D44;
}
.devicon-stylus-original.colored {
color: #333333;
}
.devicon-express-original-wordmark.colored,
.devicon-express-original.colored {
color: #444;
}
.devicon-devicon-plain-wordmark.colored,
.devicon-devicon-plain.colored {
color: #60BE86;
}
.devicon-intellij-plain-wordmark.colored,
.devicon-intellij-plain.colored {
color: #136BA2;
}
.devicon-pycharm-plain-wordmark.colored,
.devicon-pycharm-plain.colored {
color: #4D8548;
}
.devicon-rubymine-plain-wordmark.colored,
.devicon-rubymine-plain.colored {
color: #C12C4C;
}
.devicon-webstorm-plain-wordmark.colored,
.devicon-webstorm-plain.colored {
color: #2788B5;
}
.devicon-tomcat-line-wordmark.colored,
.devicon-tomcat-line.colored {
color: #D1A41A;
}
.devicon-vuejs-line-wordmark.colored,
.devicon-vuejs-line.colored,
.devicon-vuejs-plain-wordmark.colored,
.devicon-vuejs-plain.colored {
color: #41B883;
}
.devicon-swift-plain-wordmark.colored,
.devicon-swift-plain.colored {
color: #F05138;
}
.devicon-webpack-plain-wordmark.colored,
.devicon-webpack-plain.colored {
color: #1C78C0;
}
.devicon-visualstudio-plain-wordmark.colored,
.devicon-visualstudio-plain.colored {
color: #68217A;
}
.devicon-slack-plain-wordmark.colored,
.devicon-slack-plain.colored {
color: #2D333A;
}
.devicon-gatling-plain-wordmark.colored {
color: #E77500;
}
.devicon-gatling-plain.colored {
color: #E77500;
}
.devicon-ssh-original-wordmark.colored,
.devicon-ssh-plain-wordmark.colored {
color: #231F20;
}
.devicon-ssh-original.colored,
.devicon-ssh-plain.colored {
color: #231F20;
}
.devicon-sourcetree-original-wordmark.colored,
.devicon-sourcetree-plain-wordmark.colored {
color: #205081;
}
.devicon-sourcetree-original.colored,
.devicon-sourcetree-plain.colored {
color: #205081;
}
.devicon-phpstorm-plain-wordmark.colored {
color: #5058A6;
}
.devicon-phpstorm-plain.colored {
color: #5058A6;
}
.devicon-protractor-plain-wordmark.colored {
color: #b7111d;
}
.devicon-protractor-plain.colored {
color: #b7111d;
}
.devicon-cucumber-plain-wordmark.colored {
color: #00a818;
}
.devicon-cucumber-plain.colored {
color: #00a818;
}
.devicon-gradle-plain-wordmark.colored {
color: #02303a;
}
.devicon-gradle-plain.colored {
color: #02303a;
}
.devicon-jeet-plain-wordmark.colored {
color: #FF664A;
}
.devicon-jeet-plain.colored {
color: #FF664A;
}
.devicon-gitlab-plain-wordmark.colored {
color: #E24329;
}
.devicon-gitlab-plain.colored {
color: #E24329;
}
.devicon-github-original-wordmark.colored,
.devicon-github-plain-wordmark.colored {
color: #181616;
}
.devicon-github-original.colored,
.devicon-github-plain.colored {
color: #181616;
}
.devicon-d3js-plain.colored {
color: #f7974e;
}
.devicon-confluence-original-wordmark.colored,
.devicon-confluence-plain-wordmark.colored {
color: #205081;
}
.devicon-confluence-original.colored,
.devicon-confluence-plain.colored {
color: #205081;
}
.devicon-bitbucket-original-wordmark.colored,
.devicon-bitbucket-plain-wordmark.colored {
color: #205081;
}
.devicon-bitbucket-original.colored,
.devicon-bitbucket-plain.colored {
color: #205081;
}
.devicon-amazonwebservices-plain-wordmark.colored,
.devicon-amazonwebservices-original.colored,
.devicon-amazonwebservices-plain.colored {
color: #F7A80D;
}
.devicon-android-plain-wordmark.colored,
.devicon-android-plain.colored {
color: #A4C439;
}
.devicon-angularjs-plain-wordmark.colored,
.devicon-angularjs-plain.colored {
color: #c4473a;
}
.devicon-apache-line-wordmark.colored,
.devicon-apache-line.colored,
.devicon-apache-plain-wordmark.colored,
.devicon-apache-plain.colored {
color: #303284;
}
.devicon-appcelerator-plain-wordmark.colored,
.devicon-appcelerator-original.colored,
.devicon-appcelerator-plain.colored {
color: #ac162c;
}
.devicon-apple-original.colored,
.devicon-apple-plain.colored {
color: #000000;
}
.devicon-atom-original.colored,
.devicon-atom-original-wordmark.colored,
.devicon-atom-plain.colored,
.devicon-atom-plain-wordmark.colored {
color: #67595D;
}
.devicon-babel-original.colored,
.devicon-babel-plain.colored {
color: #f9dc3e;
}
.devicon-backbonejs-plain.colored,
.devicon-backbonejs-plain-wordmark.colored {
color: #002A41;
}
.devicon-bootstrap-plain-wordmark.colored,
.devicon-bootstrap-plain.colored {
color: #59407f;
}
.devicon-bower-line-wordmark.colored,
.devicon-bower-line.colored,
.devicon-bower-plain-wordmark.colored,
.devicon-bower-plain.colored {
color: #ef5734;
}
.devicon-c-line-wordmark.colored,
.devicon-c-line.colored,
.devicon-c-plain-wordmark.colored,
.devicon-c-plain.colored {
color: #03599c;
}
.devicon-c-line-wordmark.colored,
.devicon-c-line.colored,
.devicon-c-plain-wordmark.colored,
.devicon-c-plain.colored {
color: #03599c;
}
.devicon-chrome-plain-wordmark.colored,
.devicon-chrome-plain.colored {
color: #ce4e4e;
}
.devicon-codeigniter-plain-wordmark.colored,
.devicon-codeigniter-plain.colored {
color: #ee4323;
}
.devicon-coffeescript-original-wordmark.colored,
.devicon-coffeescript-original.colored,
.devicon-coffeescript-plain-wordmark.colored,
.devicon-coffeescript-plain.colored {
color: #28334c;
}
.devicon-cplusplus-line-wordmark.colored,
.devicon-cplusplus-line.colored,
.devicon-cplusplus-plain-wordmark.colored,
.devicon-cplusplus-plain.colored {
color: #9c033a;
}
.devicon-csharp-line-wordmark.colored,
.devicon-csharp-line.colored,
.devicon-csharp-plain-wordmark.colored,
.devicon-csharp-plain.colored {
color: #68217a;
}
.devicon-css3-plain-wordmark.colored,
.devicon-css3-plain.colored {
color: #3d8fc6;
}
.devicon-debian-plain-wordmark.colored,
.devicon-debian-plain.colored {
color: #A80030;
}
.devicon-django-line.colored,
.devicon-django-line-wordmark.colored,
.devicon-django-plain.colored,
.devicon-django-plain-wordmark.colored {
color: #003A2B;
}
.devicon-docker-plain-wordmark.colored,
.devicon-docker-plain.colored {
color: #019bc6;
}
.devicon-doctrine-line-wordmark.colored,
.devicon-doctrine-line.colored,
.devicon-doctrine-plain-wordmark.colored,
.devicon-doctrine-plain.colored {
color: #f56d39;
}
.devicon-dot-net-plain-wordmark.colored,
.devicon-dot-net-plain.colored {
color: #1384c8;
}
.devicon-drupal-plain-wordmark.colored,
.devicon-drupal-plain.colored {
color: #0073BA;
}
.devicon-erlang-plain-wordmark.colored,
.devicon-erlang-plain.colored {
color: #a90533;
}
.devicon-facebook-original.colored,
.devicon-facebook-plain.colored {
color: #3d5a98;
}
.devicon-firefox-plain-wordmark.colored,
.devicon-firefox-plain.colored {
color: #DD732A;
}
.devicon-foundation-plain-wordmark.colored,
.devicon-foundation-plain.colored {
color: #008cba;
}
.devicon-gimp-plain-wordmark.colored,
.devicon-gimp-plain.colored {
color: #716955;
}
.devicon-git-plain-wordmark.colored,
.devicon-git-plain.colored {
color: #f34f29;
}
.devicon-go-line.colored,
.devicon-go-plain.colored {
color: #000000;
}
.devicon-google-original-wordmark.colored,
.devicon-google-plain-wordmark.colored {
color: #587dbd;
}
.devicon-google-original.colored,
.devicon-google-plain.colored {
color: #587dbd;
}
.devicon-grunt-line-wordmark.colored,
.devicon-grunt-line.colored,
.devicon-grunt-plain-wordmark.colored,
.devicon-grunt-plain.colored {
color: #fcaa1a;
}
.devicon-gulp-plain.colored {
color: #eb4a4b;
}
.devicon-heroku-line-wordmark.colored,
.devicon-heroku-line.colored,
.devicon-heroku-plain-wordmark.colored,
.devicon-heroku-plain.colored,
.devicon-heroku-original-wordmark.colored,
.devicon-heroku-original.colored {
color: #6762a6;
}
.devicon-html5-plain-wordmark.colored,
.devicon-html5-plain.colored {
color: #e54d26;
}
.devicon-ie10-original.colored,
.devicon-ie10-plain.colored {
color: #1EBBEE;
}
.devicon-illustrator-line.colored,
.devicon-illustrator-plain.colored {
color: #faa625;
}
.devicon-inkscape-plain-wordmark.colored,
.devicon-inkscape-plain.colored {
color: #000000;
}
.devicon-java-plain-wordmark.colored,
.devicon-java-plain.colored {
color: #EA2D2E;
}
.devicon-jasmine-plain-wordmark.colored,
.devicon-jasmine-plain.colored {
color: #8a4182;
}
.devicon-javascript-plain.colored {
color: #f0db4f;
}
.devicon-jetbrains-plain.colored,
.devicon-jetbrains-line.colored,
.devicon-jetbrains-line-wordmark.colored,
.devicon-jetbrains-plain-wordmark.colored {
color: #F68B1F;
}
.devicon-jquery-plain-wordmark.colored,
.devicon-jquery-plain.colored {
color: #0769ad;
}
.devicon-kotlin-plain.colored,
.devicon-kotlin-plain-wordmark.colored,
.devicon-kotlin-original.colored,
.devicon-kotlin-original-wordmark.colored {
color: #7C6DB2
}
.devicon-krakenjs-plain.colored,
.devicon-krakenjs-plain-wordmark.colored {
color: #0081C2;
}
.devicon-laravel-plain-wordmark.colored,
.devicon-laravel-plain.colored {
color: #fd4f31;
}
.devicon-less-plain-wordmark.colored {
color: #2a4d80;
}
.devicon-linux-plain.colored {
color: #000000;
}
.devicon-meteor-plain.colored,
.devicon-meteor-plain-wordmark.colored {
color: #df5052;
}
.devicon-mocha-plain.colored {
color: #8d6748;
}
.devicon-mongodb-plain.colored,
.devicon-mongodb-plain-wordmark.colored {
color: #4FAA41;
}
.devicon-moodle-plain.colored,
.devicon-moodle-plain-wordmark.colored {
color: #F7931E;
}
.devicon-mysql-plain.colored,
.devicon-mysql-plain-wordmark.colored {
color: #00618a;
}
.devicon-nginx-original.colored,
.devicon-nginx-original-wordmark.colored,
.devicon-nginx-plain.colored,
.devicon-nginx-plain-wordmark.colored {
color: #090;
}
.devicon-nodejs-plain.colored,
.devicon-nodejs-plain-wordmark.colored {
color: #83CD29;
}
.devicon-nodewebkit-line.colored,
.devicon-nodewebkit-line-wordmark.colored,
.devicon-nodewebkit-plain.colored,
.devicon-nodewebkit-plain-wordmark.colored {
color: #3d3b47;
}
.devicon-oracle-original.colored,
.devicon-oracle-plain.colored,
.devicon-oracle-plain-wordmark.colored {
color: #EA1B22;
}
.devicon-photoshop-line.colored,
.devicon-photoshop-plain.colored {
color: #80b5e2;
}
.devicon-php-plain.colored {
color: #6181b6;
}
.devicon-postgresql-plain.colored,
.devicon-postgresql-plain-wordmark.colored {
color: #336791;
}
.devicon-python-plain-wordmark.colored,
.devicon-python-plain.colored {
color: #ffd845;
}
.devicon-rails-plain-wordmark.colored,
.devicon-rails-plain.colored {
color: #a62c46;
}
.devicon-ruby-plain-wordmark.colored,
.devicon-ruby-plain.colored {
color: #d91404;
}
.devicon-safari-line-wordmark.colored,
.devicon-safari-line.colored,
.devicon-safari-plain-wordmark.colored,
.devicon-safari-plain.colored {
color: #1B88CA;
}
.devicon-react-plain-wordmark.colored,
.devicon-react-plain.colored,
.devicon-react-original-wordmark.colored,
.devicon-react-original.colored {
color: #61dafb;
}
.devicon-redhat-plain-wordmark.colored,
.devicon-redhat-plain.colored,
.devicon-redhat-original-wordmark.colored,
.devicon-redhat-original.colored {
color: #e93442;
}
.devicon-redis-plain-wordmark.colored,
.devicon-redis-plain.colored{
color: #d82c20;
}
.devicon-ubuntu-plain-wordmark.colored,
.devicon-ubuntu-plain.colored {
color: #DD4814;
}
.devicon-sass-original.colored,
.devicon-sass-plain.colored,
.devicon-sass-plain-wordmark.colored {
color: #cc6699;
}
.devicon-sequelize-original-wordmark.colored,
.devicon-sequelize-plain-wordmark.colored,
.devicon-sequelize-original.colored,
.devicon-sequelize-plain.colored{
color: #3b4b72;
}
.devicon-symfony-original.colored,
.devicon-symfony-original-wordmark.colored,
.devicon-symfony-plain.colored,
.devicon-symfony-plain-wordmark.colored {
color: #1A171B;
}
.devicon-travis-plain-wordmark.colored,
.devicon-travis-plain.colored {
color: #bb2031;
}
.devicon-trello-plain-wordmark.colored,
.devicon-trello-plain.colored {
color: #23719f;
}
.devicon-twitter-original.colored,
.devicon-twitter-plain.colored {
color: #1da1f2;
}
.devicon-typescript-original.colored,
.devicon-typescript-plain.colored {
color: #007acc;
}
.devicon-ubuntu-plain-wordmark.colored,
.devicon-ubuntu-plain.colored {
color: #dd4814;
}
.devicon-vim-plain.colored {
color: #179a33;
}
.devicon-windows8-original-wordmark.colored,
.devicon-windows8-original.colored,
.devicon-windows8-plain-wordmark.colored,
.devicon-windows8-plain.colored {
color: #00adef;
}
.devicon-wordpress-plain-wordmark.colored,
.devicon-wordpress-plain.colored {
color: #494949;
}
.devicon-yii-plain-wordmark.colored,
.devicon-yii-plain.colored {
color: #0073bb;
}
.devicon-zend-plain-wordmark.colored,
.devicon-zend-plain.colored {
color: #68b604;
}
.devicon-rust-plain.colored {
color: #000000;
}
.devicon-groovy-plain.colored {
color: #619cbc;
}
.devicon-grails-plain.colored {
color: #feb672;
}
.devicon-scala-plain-wordmark.colored,
.devicon-scala-plain.colored {
color: #de3423;
}

View File

@ -1,10 +1,10 @@
@font-face {
font-family: 'devicon';
src: url('fonts/devicon.eot?yl3aib');
src: url('fonts/devicon.eot?yl3aib#iefix') format('embedded-opentype'),
url('fonts/devicon.ttf?yl3aib') format('truetype'),
url('fonts/devicon.woff?yl3aib') format('woff'),
url('fonts/devicon.svg?yl3aib#devicon') format('svg');
src: url('fonts/devicon.eot?6szfnm');
src: url('fonts/devicon.eot?6szfnm#iefix') format('embedded-opentype'),
url('fonts/devicon.ttf?6szfnm') format('truetype'),
url('fonts/devicon.woff?6szfnm') format('woff'),
url('fonts/devicon.svg?6szfnm#devicon') format('svg');
font-weight: normal;
font-style: normal;
font-display: block;
@ -25,6 +25,21 @@
-moz-osx-font-smoothing: grayscale;
}
.devicon-yunohost-plain:before {
content: "\e963";
}
.devicon-redux-original:before {
content: "\e964";
}
.devicon-clojurescript-plain:before {
content: "\e965";
}
.devicon-clojure-line:before {
content: "\e962";
}
.devicon-mocha-plain:before {
content: "\e961";
}
.devicon-haskell-plain:before {
content: "\e95f";
}

File diff suppressed because it is too large Load Diff

2
devicon.min.css vendored

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 825 KiB

After

Width:  |  Height:  |  Size: 879 KiB

Binary file not shown.

Binary file not shown.

View File

@ -1,23 +1,153 @@
var gulp = require('gulp');
var minifyCSS = require('gulp-minify-css');
var concatCss = require('gulp-concat-css');
var plumber = require('gulp-plumber');
const sass = require('gulp-sass');
sass.compiler = require('sass')
const fsPromise = require('fs').promises;
const path = require("path");
// global const
const deviconJSONName = "devicon.json";
const aliasSCSSName = "devicon-alias.scss";
const colorsCSSName = "devicon-colors.css";
const finalMinSCSSName = "devicon.min.scss";
function concat() {
return gulp.src(['./devicon.css', './devicon-alias.css', './devicon-colors.css'])
.pipe(plumber())
.pipe(concatCss('./devicon.min.css'))
/**
* Create the devicon.min.css by creating needed
* css files and compiling them together using Sass.
*/
async function createDeviconMinCSS() {
await createCSSFiles();
let deviconMinPath = path.join(__dirname, finalMinSCSSName);
// recall that devicon-alias.scss imported the devicon.css => don't need
// to reimport that file.
const fileContent = `@use "${aliasSCSSName}";@use "${colorsCSSName}";`;
await fsPromise.writeFile(deviconMinPath, fileContent, "utf8");
return gulp.src(finalMinSCSSName)
.pipe(sass.sync({"outputStyle": "compressed"}).on('error', sass.logError))
.pipe(gulp.dest('./'));
}
function minify() {
return gulp.src('./devicon.min.css')
.pipe(plumber())
.pipe(minifyCSS())
.pipe(gulp.dest('./'))
/**
* Create the devicon-alias.scss and the
* devicon-colors.css from the devicon.json.
*/
async function createCSSFiles() {
const deviconJson = JSON.parse(
await fsPromise.readFile(
path.join(__dirname, deviconJSONName), "utf8"
)
);
await Promise.all([
createAliasSCSS(deviconJson),
createColorsCSS(deviconJson)
])
}
exports.concat = concat;
exports.minify = minify;
exports.default = gulp.series(concat, minify);
/**
* Create an alias scss file in the root dir based on the devicon.json.
* This function will use sass instead of normal css.
* This is due to sass's ability to extend classes => Make it easier
* to create aliases classes.
* @param {Object} deviconJson, the object read from the
* devicon.json file.
* @return a Promise that'll resolve when the devicon-alias.scss is
* created.
*/
function createAliasSCSS(deviconJson) {
let statements = deviconJson.map(createAliasStatement).join(" ");
let sass = `@use "devicon";${statements}`;
let sassPath = path.join(__dirname, aliasSCSSName);
return fsPromise.writeFile(sassPath, sass, "utf8");
}
/**
* Create the aliases statement by searching for the
* techname in the statement and finding its aliases in
* the deviconJson.
* @param {Object} fontObj, a devicon font object.
* @return a string representing a css statement of the
* devicon-alias.scss.
*/
function createAliasStatement(fontObj) {
let {
name,
aliases
} = fontObj;
return aliases.map(aliasObj => {
return `.devicon-${name}-${aliasObj.alias} {
@extend .devicon-${name}-${aliasObj.base};
}`;
}).join(" ");
}
/**
* Create a colors css file in the root dir based on the deviconJson.
* @param {Object} deviconJson, the object read from the
* devicon.json file.
* @return a Promise that'll resolve when the devicon-alias.scss is
* created.
*/
function createColorsCSS(deviconJson) {
// create the color statements for each font object
let statements = deviconJson.map(fontObj => {
let {
name,
versions: {
font: fonts
},
color,
aliases
} = fontObj;
if (fonts.length === 0 || typeof(color) !== "string") {
console.log(`This object doesn't have a font or a color: ${name}`);
return "";
}
// process the icons in the font attr
let cssClasses = fonts.map(font => `.devicon-${name}-${font}.colored`);
// process the icons in the aliases attr
aliases.forEach(aliasObj => {
cssClasses.push(`.devicon-${name}-${aliasObj["alias"]}.colored`);
});
return `${cssClasses.join(",")}{color: ${color}}`;
}).join(" ");
let cssPath = path.join(__dirname, colorsCSSName);
return fsPromise.writeFile(cssPath, statements, "utf8");
}
/**
* Remove the devicon-alias.scss, devicon-colors.css,
* and the devicon.min.scss.
*/
function cleanUp() {
let fileNames = [
aliasSCSSName,
colorsCSSName,
finalMinSCSSName,
];
return Promise.all(
fileNames.map(name => {
try {
let filePath = path.join(__dirname, name);
return fsPromise.unlink(filePath);
} catch(e) {
console.log("err was catch here");
console.log(e);
}
})
);
}
exports.updateCss = createDeviconMinCSS;
exports.clean = cleanUp;

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
<svg viewBox="0 0 128 128" xmlns="http://www.w3.org/2000/svg"><g fill="none"><path d="M64 0C28.712 0 0 28.6 0 63.751c0 35.155 28.712 63.753 64 63.753s64-28.598 64-63.753C128 28.6 99.288 0 64 0" fill="#FFF"/><path d="M61.659 64.898a265.825 265.825 0 0 0-1.867 4.12c-2.322 5.241-4.894 11.62-5.834 15.706-.337 1.455-.546 3.258-.542 5.258 0 .79.043 1.622.11 2.469a30.74 30.74 0 0 0 10.533 1.87 30.796 30.796 0 0 0 9.642-1.566 18.09 18.09 0 0 1-2.011-2.12c-4.11-5.221-6.403-12.872-10.031-25.737M46.485 38.96c-7.85 5.51-12.986 14.6-13.005 24.9.019 10.145 5.001 19.116 12.653 24.65 1.877-7.789 6.582-14.92 13.637-29.214a114.691 114.691 0 0 0-1.43-3.72c-1.955-4.884-4.776-10.556-7.294-13.124-1.283-1.342-2.84-2.502-4.561-3.492" fill="#5881D8"/><path d="M90.697 98.798c-4.05-.506-7.392-1.116-10.317-2.144a36.708 36.708 0 0 1-16.32 3.807c-20.293 0-36.742-16.383-36.745-36.602 0-10.97 4.852-20.805 12.528-27.512-2.053-.495-4.194-.783-6.38-.779-10.782.101-22.162 6.044-26.9 22.095-.443 2.337-.337 4.103-.337 6.197 0 31.818 25.895 57.613 57.835 57.613 19.561 0 36.841-9.682 47.305-24.489-5.66 1.405-11.103 2.077-15.763 2.091-1.747 0-3.387-.093-4.906-.277" fill="#5881D8"/><path d="M79.829 87.634c.357.176 1.167.464 2.293.783 7.579-5.542 12.504-14.469 12.523-24.558h-.003c-.028-16.82-13.693-30.43-30.582-30.462a30.765 30.765 0 0 0-9.602 1.554c6.21 7.05 9.196 17.127 12.084 28.148l.005.013c.005.009.924 3.06 2.501 7.11 1.566 4.042 3.797 9.048 6.23 12.696 1.597 2.444 3.354 4.2 4.551 4.716" fill="#5881D8"/><path d="M64.061 6.246c-19.372 0-36.508 9.5-47.004 24.065 5.463-3.408 11.04-4.637 15.908-4.593 6.722.02 12.008 2.096 14.544 3.516.612.352 1.194.73 1.764 1.12a36.714 36.714 0 0 1 14.786-3.096c20.295.003 36.747 16.386 36.75 36.601h-.003c0 10.192-4.185 19.408-10.931 26.044a45.3 45.3 0 0 0 5.225.29c6.406.004 13.329-1.404 18.52-5.753 3.384-2.84 6.22-6.998 7.792-13.233.307-2.408.484-4.856.484-7.347 0-31.817-25.892-57.614-57.835-57.614" fill="#5881D8"/></g></svg>

Before

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -0,0 +1 @@
<svg id="flutter-original" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128"><style type="text/css">.st0{fill:#3FB6D3;}.st1{fill:#27AACD;}.st2{fill:#19599A;}.st3{fill:url(#SVGID_1_);}.st4{fill:url(#SVGID_2_);}</style><g id="Capa_4"><g><g><path class="st0" d="M 12.3,64.2 76.3,0 115.7,0 32.1,83.6 z"/><path class="st0" d="M 76.3,128 115.7,128 81.6,93.9 115.7,59.1 76.3,59.1 42.2,93.5 z"/></g><path class="st1" d="M 81.6,93.9 61.6,73.9 42.2,93.5 61.6,113.1 z"/><path class="st2" d="M 115.7,128 81.6,93.9 61.6,113.1 76.3,128 z"/><linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="59.3649" y1="116.3598" x2="86.8249" y2="99.3992"><stop offset="0" style="stop-color:#1B4E94"/><stop offset="0.6305" style="stop-color:#1A5497"/><stop offset="1" style="stop-color:#195A9B"/></linearGradient><path class="st3" d="M 61.6,113.1 92.4,104.7 81.6,93.9 z"/></g></g></svg>

After

Width:  |  Height:  |  Size: 889 B

View File

@ -0,0 +1 @@
<svg id="flutter" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128"><style type="text/css">.st1{fill:#3FB6D3;}</style><path class="st1" d="M 12.3 64.2 76.3 0 115.7 0 32.1 83.6z"/><path class="st1" d="M 76.3 128 115.7 128 81.6 93.9 115.7 59.1 76.3 59.1 42.2 93.5z"/></svg>

After

Width:  |  Height:  |  Size: 278 B

BIN
icons/flutter/flutter.eps Normal file

Binary file not shown.

20
icons/jenkins/jenkins-line.svg Executable file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -0,0 +1,85 @@
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" xmlns="http://www.w3.org/2000/svg" width="128px" height="128px" viewBox="0 0 128 128" preserveAspectRatio="xMidYMid meet">
<g id="layer101" fill="#201d1e" stroke="none">
<path d="M63.625 127.825 c-1.475 -0.175 -3.775 -0.6 -5.025 -0.95 l-1.3 -0.375 -0.7 -1.925 c-0.4 -1.075 -1.35 -4.025 -2.1 -6.575 l-1.4 -4.625 -1.975 -0.15 c-3.025 -0.225 -4.75 -0.775 -9.725 -3.075 -2.475 -1.15 -4.875 -2.225 -5.325 -2.375 -0.425 -0.175 -1.025 -0.6 -1.35 -0.925 -0.525 -0.575 -0.6 -0.925 -0.8 -4.725 l-0.2 -4.125 -1.4 -1.3 c-7.7 -7.25 -12.875 -17.275 -14.45 -27.975 -0.5 -3.475 -0.5 -10.225 0 -13.7 1.55 -10.6 6.725 -20.675 14.225 -27.7 l2.1 -1.975 0.3 -2.075 c0.475 -3.55 1.75 -6.125 3.625 -7.325 0.55 -0.375 1 -0.975 1.275 -1.7 1.325 -3.45 3.475 -5.325 10.6 -9.25 4.65 -2.575 9.075 -4.125 13.375 -4.75 2.325 -0.325 7.225 -0.325 9.45 0.025 6.375 0.95 9.95 2.75 14.525 7.3 3.1 3.1 4.875 5.55 5.925 8.275 0.875 2.25 1.825 6.55 2.1 9.375 l0.175 1.85 2.375 2.65 c8.025 8.95 12.325 20.2 12.325 32.15 0 7.6 -1.7 14.875 -5.025 21.425 l-1.275 2.525 0.775 0.6 c1.15 0.9 1.9 2.375 3.15 6.175 0.925 2.775 1.125 3.75 1.125 5.225 0 3.05 -1.1 6.25 -2.7 7.75 -1.325 1.25 -4.825 1.75 -9 1.275 -1.375 -0.15 -1.65 -0.275 -2.125 -0.925 l-0.55 -0.725 -2.125 0.125 c-2.6 0.175 -4 0.6 -4 1.2 0 0.825 -0.325 1.25 -1.275 1.75 -0.925 0.45 -0.975 0.55 -0.975 1.6 0 0.625 0.275 2.425 0.625 4.025 1.225 5.675 0.725 6.725 -3.725 7.725 -0.7 0.15 -0.7 0.15 -0.55 1.625 0.325 2.85 -1.175 4 -5.825 4.475 -2.35 0.25 -11.375 0.325 -13.15 0.1z"/>
</g>
<g id="layer102" fill="#335061" stroke="none">
<path d="M51.375 110.225 c-2.575 -0.35 -6.1 -1.675 -10.475 -3.925 -3.175 -1.625 -4.25 -2.3 -4.3 -2.675 -0.025 -0.275 -0.125 -1.95 -0.2 -3.75 -0.425 -8.95 -2.4 -18.7 -5.3 -26 -0.625 -1.6 -1.1 -2.95 -1.05 -3 0.025 -0.025 1.475 -1.1 3.2 -2.375 3.525 -2.6 8.075 -5.375 10.775 -6.55 l1.8 -0.8 2.15 2.275 c2.3 2.475 3.525 3.3 7.775 5.35 l2.675 1.275 0.45 1.925 c0.25 1.05 0.825 3.1 1.275 4.575 0.675 2.1 1.025 2.8 1.625 3.3 0.825 0.7 1.325 0.8 2.325 0.4 0.85 -0.325 0.825 -0.1 -0.225 1.35 -1.025 1.425 -1.1 2.35 -0.3 3.075 0.55 0.525 7.1 3.85 9.05 4.6 l1 0.4 -2.375 0.15 c-1.3 0.1 -4.15 0.275 -6.35 0.425 -3.525 0.25 -7.875 0.675 -11.2 1.15 -1.125 0.15 -1.175 0.15 -1.375 -0.55 -0.225 -0.825 -0.25 -4.875 -0.075 -8.9 0.125 -2.7 -0.05 -3.4 -0.725 -2.975 -0.575 0.35 -0.725 2.15 -0.45 5.475 0.275 3.45 0.075 6 -0.45 6.2 -0.175 0.075 -0.925 -0.275 -1.675 -0.75 -0.725 -0.5 -1.4 -0.9 -1.5 -0.9 -0.375 0 -0.2 0.95 0.3 1.575 0.275 0.35 0.5 0.8 0.5 1.025 0 0.425 -0.75 0.9 -1.45 0.9 -0.525 0 -1.475 0.9 -1.2 1.175 0.075 0.1 1.3 0.15 2.725 0.125 1.4 -0.025 2.675 0.025 2.85 0.15 0.175 0.1 0.425 1.375 0.575 2.95 0.15 1.525 0.6 5.125 1 8 0.675 4.95 0.7 5.65 0.3 5.575 -0.1 -0.025 -0.85 -0.125 -1.675 -0.25z"/>
<path d="M80.4 105.925 c-0.325 -2.45 -0.7 -12.725 -0.45 -12.975 0.125 -0.125 1 -0.25 1.95 -0.275 l1.7 -0.05 0.3 1.35 c0.175 0.75 0.5 3.55 0.725 6.25 0.225 2.7 0.425 5.125 0.45 5.4 0.05 0.5 -0.475 0.675 -3.6 1.2 -0.925 0.125 -0.925 0.125 -1.075 -0.9z"/>
<path d="M82.175 88.825 c0.375 -0.675 1.4 -2.375 2.3 -3.825 0.9 -1.45 2.45 -4.025 3.45 -5.725 l1.85 -3.1 -0.725 -0.9 c-1.075 -1.35 -1.075 -1.4 -0.625 -2.425 0.3 -0.725 0.425 -1.725 0.425 -3.85 0 -3.4 -0.45 -5.3 -1.65 -6.65 -0.7 -0.775 -0.9 -0.875 -1.75 -0.8 -0.525 0.05 -0.925 0.025 -0.9 -0.075 0.05 -0.1 0.775 -0.75 1.6 -1.45 l1.55 -1.275 2.875 2.675 c1.575 1.5 3.45 3.225 4.15 3.875 1.575 1.45 1.6 1.675 0.425 6.525 -1.25 5.2 -4.325 13.975 -5.65 16.125 -0.65 1.05 -1.1 1.2 -4.2 1.4 -1.425 0.075 -2.8 0.25 -3.05 0.4 -0.775 0.425 -0.8 0.3 -0.075 -0.925z"/>
<path d="M80.875 87.775 c0.475 -1.5 0.925 -4.425 1.275 -8.275 0.475 -4.85 0.525 -5 2.175 -5 1.2 0 2.375 0.525 3.3 1.5 l0.7 0.725 -1.575 2.7 c-2.125 3.65 -5.55 8.825 -5.825 8.825 -0.1 0 -0.15 -0.2 -0.05 -0.475z"/>
</g>
<g id="layer103" fill="#d33833" stroke="none">
<path d="M31.9 92.225 c-14.425 -15.9 -15.6 -40.3 -2.75 -57.375 1.55 -2.05 5.025 -5.85 5.375 -5.85 0.1 0 0.275 0.375 0.35 0.825 0.125 0.65 -0.025 1.175 -0.675 2.425 -0.8 1.575 -0.825 1.65 -0.8 4.725 0 2.825 0.075 3.35 0.7 5.025 1.35 3.6 3.425 5.825 6.25 6.775 l1.25 0.425 0.45 1.825 c0.25 0.975 0.95 2.725 1.575 3.85 1.225 2.25 1.375 3.075 0.7 3.7 -0.25 0.2 -2.425 1.525 -4.825 2.925 -2.4 1.425 -5.3 3.175 -6.45 3.9 -1.125 0.75 -2.625 1.625 -3.275 1.975 -1.625 0.825 -2.525 1.9 -2.525 3.1 0 0.875 2.125 7.35 3.675 11.275 0.425 1.025 1 2.825 1.275 4 0.6 2.5 1.375 7.375 1.25 7.775 -0.05 0.175 -0.75 -0.425 -1.55 -1.3z"/>
<path d="M91.75 88.325 c0 -0.1 0.675 -2.125 1.525 -4.55 2.5 -7.25 5 -15.55 5.15 -17.025 0.15 -1.75 -0.225 -2.35 -3.425 -5.2 -4.6 -4.1 -5.5 -5.05 -5.5 -5.725 0 -0.35 0.525 -1.6 1.15 -2.75 1.25 -2.3 2.05 -4.45 3 -8.1 0.725 -2.825 1.6 -8.525 1.6 -10.5 0 -0.775 0.075 -1.775 0.15 -2.2 l0.175 -0.8 0.625 0.575 c2.65 2.475 6.8 9.425 8.525 14.3 1.925 5.425 2.6 9.55 2.6 15.525 0 4.625 -0.275 7.175 -1.225 10.9 -0.9 3.6 -1.975 6.5 -3.625 9.775 l-1.5 2.9 -1.6 0.275 c-1.6 0.275 -3.575 0.95 -6.175 2.1 -0.8 0.35 -1.45 0.575 -1.45 0.5z"/>
<path d="M62.15 77.95 c-0.175 -0.325 -0.725 -1.65 -1.175 -2.95 -0.775 -2.2 -0.85 -2.6 -0.85 -5.5 0 -3.45 0.35 -4.6 1.475 -4.9 1 -0.25 4.525 0.875 7.6 2.425 1.6 0.825 3.075 1.475 3.25 1.475 0.375 0 0.4 0.65 0.025 0.9 -0.15 0.1 -0.8 0.3 -1.45 0.475 -1.2 0.325 -1.175 0.375 0.8 0.875 1.125 0.3 1.175 0.35 1.175 1.25 0 0.85 -0.15 1.025 -2.05 2.55 -2.775 2.2 -3.5 2.6 -5.775 3.325 -2.4 0.775 -2.575 0.775 -3.025 0.075z"/>
<path d="M81.375 72.85 c-2.725 -0.475 -2.625 -0.4 -2.625 -1.825 0 -1.375 0.375 -1.775 1.625 -1.775 0.375 0 0.6 -0.1 0.5 -0.25 -0.075 -0.125 -0.625 -0.25 -1.2 -0.25 -0.95 0 -1.1 -0.075 -1.35 -0.75 -0.275 -0.725 -0.275 -0.75 1.725 -2 5.4 -3.475 6.475 -3.1 7.2 2.575 0.225 1.875 0.125 3.425 -0.3 4.25 -0.275 0.525 -2.6 0.55 -5.575 0.025z"/>
<path d="M74.625 71.65 c-0.375 -0.275 -0.475 -0.675 -0.5 -1.8 0 -1.425 0.025 -1.45 0.8 -1.675 2.125 -0.625 3.2 2.625 1.175 3.55 -0.8 0.35 -0.9 0.35 -1.475 -0.075z"/>
</g>
<g id="layer104" fill="#6f6c6e" stroke="none">
<path d="M64.625 124.975 c-0.825 -0.125 -2.5 -0.475 -3.75 -0.775 l-2.25 -0.575 -1.025 -3.5 c-2 -6.7 -3.525 -14.25 -4.575 -22.375 -0.25 -2 -0.375 -3.725 -0.275 -3.825 0.3 -0.35 8.2 -1.375 12.8 -1.675 3.225 -0.2 5.325 -0.2 7.75 -0.025 4.275 0.35 4.75 0.5 4.975 1.4 0.125 0.375 0.325 3.25 0.475 6.35 0.175 3.1 0.325 5.725 0.4 5.8 0.05 0.075 0.2 3 0.35 6.5 0.25 5.875 0.575 10.25 0.9 11.275 0.15 0.5 -0.675 0.8 -3.675 1.325 -2.325 0.4 -9.525 0.475 -12.1 0.1z"/>
<path d="M80.9 117.325 c-0.075 -1.075 -0.2 -3.3 -0.3 -4.975 -0.175 -3.4 -0.275 -3.2 1.85 -3.5 l1.2 -0.15 0.675 3.45 c0.375 1.925 0.675 4.1 0.675 4.875 l0 1.4 -1.45 0.425 c-2.475 0.7 -2.475 0.7 -2.65 -1.525z"/>
<path d="M97 105.025 c-0.575 -0.425 -0.025 -0.65 2.575 -1.175 3.4 -0.65 2.275 -0.975 -2.725 -0.75 l-4.075 0.15 -0.125 -1.05 c-0.075 -0.6 -0.275 -2.25 -0.425 -3.7 -0.125 -1.45 -0.425 -3.45 -0.625 -4.475 -0.35 -1.675 -0.35 -1.875 0.025 -2.275 0.55 -0.6 2.225 -1.375 4.75 -2.25 1.1 -0.375 2.475 -0.925 3.05 -1.225 2.55 -1.275 4.5 0 5.675 3.675 1.95 6.175 1.975 9.05 0.15 11.375 -1 1.25 -2.325 1.725 -5.25 1.85 -1.625 0.075 -2.775 0 -3 -0.15z m4.5 -6.3 c-0.9 -0.375 -4.025 -0.575 -5.15 -0.35 l-0.975 0.225 0.875 0.15 c0.475 0.1 2 0.2 3.375 0.2 1.925 0.025 2.35 -0.05 1.875 -0.225z m-1.35 -3.15 c1.15 -0.175 1.175 -0.2 0.475 -0.35 -1.3 -0.3 -3.725 -0.225 -4.5 0.15 -0.725 0.325 -0.675 0.325 1.025 0.35 0.975 0.025 2.325 -0.05 3 -0.15z m-2.4 -2.875 c1.725 -1 1.95 -1.2 1.25 -1.075 -1.85 0.35 -3.225 0.925 -4.15 1.775 l-0.975 0.875 0.875 -0.175 c0.475 -0.075 1.825 -0.7 3 -1.4z"/>
<path d="M87.9 103.975 c-0.05 -0.2 -0.275 -1.75 -0.5 -3.475 -0.225 -1.725 -0.575 -4.25 -0.8 -5.6 -0.225 -1.475 -0.275 -2.575 -0.15 -2.7 0.125 -0.125 0.775 -0.2 1.45 -0.15 l1.225 0.075 0.6 1.5 c0.8 2.025 1.25 4.775 1.275 7.575 0 2.3 0 2.325 -0.675 2.575 -1.25 0.475 -2.3 0.575 -2.425 0.2z"/>
<path d="M73.875 87.15 c-1.775 -0.725 -4.525 -1.95 -6.075 -2.75 -2.525 -1.3 -2.8 -1.5 -2.65 -1.975 0.55 -1.775 2.175 -3.6 4.775 -5.375 0.875 -0.575 1.625 -1.05 1.675 -1.05 0.475 0 3.75 6.275 5.625 10.7 0.65 1.55 0.7 1.8 0.325 1.8 -0.225 0 -1.875 -0.6 -3.675 -1.35z"/>
<path d="M80.875 87.775 c0.475 -1.5 0.925 -4.425 1.275 -8.275 0.325 -3.275 0.525 -4.45 0.8 -4.675 0.95 -0.775 3.475 -0.1 4.75 1.25 l0.575 0.6 -0.625 1.1 c-1.375 2.475 -2.475 4.275 -4.45 7.3 -1.925 2.95 -2.7 3.85 -2.325 2.7z"/>
<path d="M79.325 87.125 c-0.275 -0.55 -1.05 -2.225 -1.7 -3.75 -1.625 -3.775 -2.5 -5.5 -3.675 -7.2 -0.95 -1.4 -0.975 -1.5 -0.55 -1.95 0.25 -0.275 0.775 -0.475 1.2 -0.475 0.425 -0.025 1.05 -0.175 1.4 -0.375 0.925 -0.525 1.525 -0.45 2.825 0.375 0.65 0.4 1.475 0.825 1.825 0.9 l0.675 0.175 -0.175 3.975 c-0.175 3.9 -0.625 7.45 -1.1 8.7 -0.225 0.625 -0.225 0.625 -0.725 -0.375z m0.3 -6 c0 -0.625 -0.1 -0.75 -0.625 -0.75 -0.4 0 -0.65 0.15 -0.7 0.45 -0.15 0.75 0.15 1.225 0.75 1.125 0.45 -0.05 0.575 -0.225 0.575 -0.825z m-0.775 -4 c0.225 -0.625 -0.125 -1.125 -0.75 -1.125 -0.35 0 -0.675 0.175 -0.75 0.375 -0.25 0.625 0.1 1.125 0.75 1.125 0.325 0 0.65 -0.175 0.75 -0.375z"/>
<path d="M56.125 67.275 c-1.775 -0.625 -3.175 -1.375 -3.725 -2 -0.55 -0.625 -0.375 -1.425 0.3 -1.15 0.775 0.325 2.15 0.575 4.125 0.75 2.125 0.175 2.15 0.2 1.65 1.95 -0.275 1.05 -0.5 1.1 -2.35 0.45z"/>
<path d="M73.35 66.525 c-0.85 -0.225 -2.85 -1.275 -2.85 -1.525 0 -0.1 0.825 -0.125 1.825 -0.05 1.35 0.075 2.5 -0.05 4.25 -0.45 1.35 -0.3 2.55 -0.5 2.675 -0.45 0.15 0.05 -0.5 0.675 -1.425 1.4 -1.75 1.375 -2.475 1.55 -4.475 1.075z"/>
<path d="M56.875 63.75 c-2.375 -0.25 -5.05 -1.075 -6.425 -2 -1.3 -0.875 -2.575 -2.625 -3.725 -5.175 -1.125 -2.475 -2.225 -5.75 -2.375 -7.25 -0.15 -1.225 -0.125 -1.35 0.75 -2.425 0.625 -0.725 0.9 -1.325 0.85 -1.7 -0.1 -0.75 -0.675 -0.65 -2.025 0.325 -1.775 1.275 -4.05 0.875 -5.75 -1 -1.775 -1.975 -3.1 -5.45 -2.85 -7.55 0.45 -3.825 4.325 -6.5 7.35 -5.075 0.925 0.45 2.125 2.275 2.575 3.925 0.25 0.875 0.325 0.925 1.275 0.925 0.55 0 1.375 -0.175 1.85 -0.35 1.075 -0.45 1.125 -1.025 0.325 -3.975 -0.7 -2.675 -0.675 -5 0.15 -8.9 0.7 -3.3 0.825 -5.875 0.375 -7.65 -0.275 -1.05 -0.225 -1.2 0.5 -2.325 2.25 -3.5 8.95 -8.4 13.775 -10.075 2.075 -0.7 6.6 -0.775 9.575 -0.125 4.25 0.925 8.875 2.925 11.075 4.8 1.05 0.9 5.1 5.85 5.1 6.25 0 0.05 -0.425 0.05 -0.95 -0.05 -2.025 -0.325 -4.05 0.85 -4.05 2.325 0 0.575 0.025 0.575 0.55 0.225 0.975 -0.7 3.025 -0.525 4.75 0.4 2.6 1.375 3.525 3.2 3.975 7.85 0.425 4.275 0.15 12.8 -0.475 15.9 -1.05 4.95 -2.65 8.975 -5.225 12.95 -2.05 3.15 -2.975 4.2 -4.85 5.425 -3.625 2.325 -7.4 3.575 -10.85 3.575 -2.475 0 -4.05 -0.45 -6.975 -1.95 -2.675 -1.375 -5.85 -4.275 -8.35 -7.6 -0.9 -1.2 -1.675 -2.15 -1.75 -2.1 -0.275 0.3 0.65 2.125 1.95 3.85 1.7 2.275 5.25 5.75 6.725 6.575 0.55 0.325 1.025 0.7 1.025 0.8 0 0.125 -0.6 0.125 -1.325 0.05 -1.575 -0.2 -3.15 0.175 -3.8 0.875 -0.25 0.275 -0.575 0.475 -0.725 0.475 -0.15 -0.025 -1.05 -0.125 -2.025 -0.225z m23.7 -8.75 c0.5 -0.15 1.15 -0.525 1.45 -0.825 l0.5 -0.55 -4.2 -0.15 c-5.8 -0.2 -7.35 -0.7 -9.4 -2.975 -0.65 -0.7 -1.325 -1.25 -1.55 -1.2 -0.25 0.05 0.125 0.7 1.35 2.2 2.275 2.8 2.8 3.25 4.2 3.65 1.4 0.4 6.175 0.3 7.65 -0.15z m0.325 -5.425 c-0.075 -0.525 -0.15 -1.125 -0.15 -1.35 0 -0.35 -0.55 -0.425 -4.05 -0.55 -3.675 -0.1 -5.35 -0.35 -7.325 -1.075 -0.925 -0.325 1.175 1.65 2.4 2.3 1.75 0.875 4.75 1.5 7.7 1.575 l1.6 0.025 -0.175 -0.925z m3.55 0.3 c1.625 -0.5 3.45 -1.95 4.6 -3.65 0.5 -0.75 0.875 -1.375 0.825 -1.425 -0.025 -0.05 -1.075 0.425 -2.325 1.05 -1.225 0.625 -2.775 1.275 -3.45 1.425 -0.675 0.15 -1.375 0.325 -1.525 0.375 -0.2 0.05 -0.325 0.55 -0.325 1.35 0 1.45 0.1 1.475 2.2 0.875z m-3.375 -4.6 c2 -0.525 3.1 -1 5.55 -2.475 1.425 -0.825 1.55 -0.975 1.95 -2.325 0.225 -0.8 0.425 -1.575 0.425 -1.75 0 -0.15 -0.975 -1.3 -2.15 -2.55 -3.625 -3.875 -5.85 -7.075 -7.25 -10.55 -0.175 -0.375 -0.225 -0.225 -0.3 0.65 -0.15 2.25 1.45 5.325 5.025 9.625 2.525 3 2.875 3.75 2.4 4.9 -0.25 0.65 -0.75 0.975 -2.825 1.975 -3 1.4 -4.1 1.725 -5.8 1.725 -1.5 0 -2.275 -0.65 -2.525 -2.125 -0.125 -0.75 -0.2 -0.85 -0.4 -0.5 -0.35 0.65 -0.25 2.225 0.2 3.1 0.375 0.75 0.45 0.775 2.1 0.775 0.925 0 2.55 -0.225 3.6 -0.475z m-40.9 -5.95 c0.075 -2.15 0.5 -3.075 1.425 -3.075 0.675 0 1.125 0.475 1.925 2 0.575 1.125 0.6 1.125 0.675 0.4 0.125 -1.1 -0.625 -2.775 -1.725 -3.75 -0.8 -0.75 -1.175 -0.9 -2.075 -0.9 -0.925 0 -1.2 0.125 -1.75 0.775 -0.8 0.95 -0.825 1.35 -0.05 0.85 0.7 -0.475 1.525 -0.25 1.225 0.35 -0.4 0.775 -0.2 5.275 0.225 5.275 0.05 0 0.1 -0.85 0.125 -1.925z m31.75 -6.975 c0.75 -0.575 0.975 -1.1 0.825 -2.1 -0.025 -0.2 -0.475 -0.825 -1 -1.375 -0.55 -0.55 -1.375 -1.85 -1.875 -2.875 l-0.875 -1.875 0.075 1.125 c0.1 1.15 0.725 2.65 1.7 4.2 0.5 0.775 0.525 0.875 0.125 1.25 -0.325 0.325 -0.775 0.4 -1.975 0.35 -3.75 -0.2 -3.55 -0.2 -3.625 0.35 -0.25 1.725 4.7 2.425 6.625 0.95z m18.7 -1.075 c0.55 -0.25 1.2 -0.675 1.425 -0.95 0.425 -0.45 0.375 -0.6 -1.05 -3.4 -1.325 -2.575 -1.5 -2.825 -1.5 -2.05 0 0.475 0.3 1.6 0.675 2.5 0.5 1.2 0.6 1.7 0.4 1.9 -0.175 0.175 -1.175 0.375 -2.25 0.5 -1.075 0.1 -1.975 0.2 -2 0.2 -0.2 0.05 -0.025 0.75 0.325 1.225 0.3 0.45 0.625 0.55 1.675 0.55 0.725 0 1.75 -0.225 2.3 -0.475z m-31.125 -10.875 c1.5 -2.025 2.975 -2.775 5.325 -2.75 1.675 0 1.7 0 1.625 -0.625 -0.125 -1 -1.575 -1.85 -2.8 -1.65 -2.175 0.325 -4.925 2.525 -5.8 4.6 -0.6 1.4 -0.35 3.475 0.275 2.375 0.125 -0.225 0.75 -1.1 1.375 -1.95z"/>
<path d="M46.925 34.575 c-0.1 -0.075 -0.175 -0.425 -0.175 -0.75 0 -1.575 -1.875 -3.675 -3.925 -4.35 -1.2 -0.4 -4.2 -0.175 -4.8 0.375 -0.225 0.225 -0.525 0.325 -0.6 0.225 -0.1 -0.075 -0.175 -1.65 -0.175 -3.45 0 -4.25 0.35 -5.475 2.075 -7.3 1.75 -1.85 4.8 -3.375 6.85 -3.425 l1.45 -0.025 0.225 1.725 c0.2 1.35 0.125 2.55 -0.3 5.75 -0.675 5.025 -0.675 5.5 0 8.325 0.45 1.9 0.475 2.35 0.225 2.675 -0.375 0.425 -0.6 0.5 -0.85 0.225z"/>
<path d="M41.675 14.2 c0.85 -1.475 3.15 -3.725 5.3 -5.15 3.8 -2.55 8.9 -4.425 8.9 -3.3 0 0.2 -0.225 0.475 -0.5 0.625 -2.025 1.025 -4.15 3.05 -5.25 4.925 -0.375 0.65 -0.975 1.525 -1.375 1.95 -0.65 0.7 -0.825 0.75 -2.3 0.725 -1.025 -0.025 -2.075 0.15 -3.05 0.5 -2.075 0.75 -2.275 0.7 -1.725 -0.275z"/>
</g>
<g id="layer105" fill="#4a738d" stroke="none">
<path d="M37.25 104.425 c-0.35 -0.2 -0.6 -0.45 -0.575 -0.575 0.075 -0.425 -0.4 -7.4 -0.675 -9.725 -0.575 -4.85 -1.75 -10.875 -2.775 -14.25 -0.775 -2.625 -1.525 -4.825 -1.75 -5.375 -0.175 -0.35 -0.375 -0.85 -0.5 -1.125 -0.9 -2.2 -0.975 -2.5 -0.725 -2.575 0.15 -0.05 0.95 -0.625 1.75 -1.275 3.2 -2.525 8.15 -5.725 11 -7.05 0.9 -0.425 1.9 -0.9 2.225 -1.05 0.55 -0.275 0.7 -0.175 2.175 1.45 0.875 0.95 1.6 1.8 1.6 1.875 0 0.175 0.15 0.1 -8.375 3.875 -3.3 1.475 -6.05 2.7 -6.075 2.75 -0.05 0.05 0.2 1.425 0.575 3.05 1.425 6.325 2.525 12.8 3.125 18.275 0.45 4.125 0.3 12.05 -0.225 12.05 -0.075 0 -0.425 -0.15 -0.775 -0.325z"/>
<path d="M79.95 96.6 c-0.25 -0.225 -0.25 -1.75 -0.05 -2.8 0.175 -0.875 0.5 -1.05 2.325 -1.15 1.2 -0.1 1.25 -0.075 1.5 0.675 0.15 0.4 0.275 1.125 0.275 1.6 0 0.75 -0.125 0.9 -0.925 1.25 -1.1 0.45 -2.875 0.7 -3.125 0.425z"/>
<path d="M49 95.75 c-1.75 -0.3 -2.65 -0.6 -3.45 -1.125 -0.725 -0.475 -0.975 -0.775 -0.75 -0.9 0.15 -0.1 0.425 -0.125 0.575 -0.025 0.125 0.1 1.45 0.175 2.925 0.175 1.625 0 2.775 0.1 2.95 0.275 0.15 0.15 0.25 0.675 0.2 1.15 l-0.075 0.85 -2.375 -0.4z"/>
<path d="M52.4 91.1 c-0.2 -0.525 -0.2 -6.675 0 -9.55 l0.175 -2.275 0.95 1.2 0.975 1.225 0 4.775 c0 2.625 -0.075 4.775 -0.175 4.8 -0.125 0 -0.55 0.05 -1 0.1 -0.55 0.075 -0.825 0 -0.925 -0.275z"/>
<path d="M74.525 87.375 c-2.7 -1.075 -8.55 -3.875 -9.2 -4.425 -0.475 -0.4 0.65 -2.375 2.2 -3.825 1.75 -1.65 3.675 -2.95 4.1 -2.8 0.6 0.25 2.825 4.175 4.5 7.95 1.6 3.7 1.8 4.225 1.45 4.225 -0.125 0 -1.475 -0.525 -3.05 -1.125z"/>
<path d="M80.875 87.875 c0.675 -1.95 1.275 -6 1.525 -10.075 0.175 -2.7 0.2 -2.85 0.775 -3.075 1.425 -0.525 3.3 0.025 4.525 1.35 l0.575 0.6 -0.625 1.1 c-3.05 5.475 -7.4 11.925 -6.775 10.1z"/>
<path d="M91.95 66.125 c-2.025 -1.5 -4.075 -3.15 -4.525 -3.6 -0.475 -0.475 -1.2 -1 -1.65 -1.15 l-0.8 -0.25 1.35 -1.175 1.35 -1.175 2.35 2.3 c1.3 1.275 3.1 2.95 4.025 3.75 1.75 1.5 2.225 2.45 1.775 3.55 -0.175 0.45 -0.55 0.25 -3.875 -2.25z"/>
</g>
<g id="layer106" fill="#83b3c7" stroke="none">
<path d="M65 124.9 c-3.225 -0.5 -5.925 -1.15 -6.2 -1.475 -0.35 -0.425 -1.625 -4.925 -2.775 -9.7 -1.6 -6.5 -3.6 -19.275 -3.1 -19.725 0.275 -0.275 6.525 -1.175 10.575 -1.525 4.825 -0.425 14 -0.05 14.625 0.575 0.075 0.05 0.3 3.075 0.5 6.725 0.2 3.625 0.425 7.05 0.5 7.6 0.075 0.55 0.25 3.675 0.375 6.925 0.125 3.25 0.375 6.725 0.525 7.725 0.225 1.425 0.2 1.825 -0.05 2 -1.5 0.925 -11.025 1.475 -14.975 0.875z"/>
<path d="M81.125 119 c-0.05 -0.075 -0.175 -2.3 -0.275 -4.9 l-0.175 -4.75 1.3 -0.3 c1.5 -0.35 1.775 -0.25 1.775 0.55 0 0.325 0.225 1.625 0.5 2.925 0.275 1.3 0.575 3.1 0.65 4.025 0.175 1.675 0.175 1.675 -0.55 1.975 -0.975 0.375 -3.1 0.7 -3.225 0.475z"/>
<path d="M97.625 105.025 c-0.975 -0.175 -0.975 -0.2 -0.375 -0.45 0.35 -0.15 1.025 -0.325 1.5 -0.425 2.725 -0.525 3.275 -0.725 3 -1 -0.2 -0.175 -1.625 -0.25 -4.6 -0.2 l-4.3 0.075 -0.425 -3.95 c-0.25 -2.175 -0.6 -4.625 -0.8 -5.45 l-0.35 -1.5 0.675 -0.55 c0.375 -0.325 1.475 -0.875 2.425 -1.225 0.975 -0.375 2.7 -1.05 3.875 -1.55 2.55 -1.05 3.6 -1.125 4.725 -0.3 1.1 0.775 1.825 2.425 2.775 6.25 0.8 3.35 0.925 5 0.45 6.575 -0.425 1.4 -2.05 3.05 -3.325 3.375 -1.425 0.375 -4.075 0.525 -5.25 0.325z m4.175 -6.3 c-1.325 -0.525 -3.85 -0.75 -5.2 -0.475 -2.325 0.5 -1.525 0.75 2.225 0.725 2.45 0 3.375 -0.075 2.975 -0.25z m-0.475 -3.2 c0.45 -0.175 0.35 -0.25 -0.7 -0.425 -2.525 -0.425 -5.375 -0.05 -5.375 0.725 0 0.275 5.2 0.025 6.075 -0.3z m-3.4 -2.8 c1.3 -0.7 2.325 -1.3 2.275 -1.35 -0.175 -0.175 -2.525 0.4 -3.675 0.875 -0.675 0.3 -1.55 0.875 -1.925 1.3 l-0.725 0.775 0.85 -0.175 c0.45 -0.075 1.9 -0.725 3.2 -1.425z"/>
<path d="M88 104 c0 -0.275 -1.4 -9.9 -1.625 -11.05 -0.1 -0.7 -0.1 -0.7 1.275 -0.7 l1.375 0 0.5 1.125 c0.75 1.675 1.2 4.125 1.4 7.275 l0.15 2.775 -1.2 0.425 c-1.4 0.45 -1.875 0.5 -1.875 0.15z"/>
<path d="M76.875 88.175 c-3.45 -1.125 -11.625 -4.95 -11.625 -5.45 0 -1.3 2.2 -3.9 4.65 -5.5 l1.65 -1.05 0.575 0.725 c1.125 1.35 5.9 11.2 5.575 11.475 -0.05 0.025 -0.4 -0.05 -0.825 -0.2z"/>
<path d="M81.1 87.625 c0.475 -1.275 1.35 -7.85 1.425 -11.075 l0.05 -1.55 0.9 -0.25 c1.275 -0.325 2.675 0.05 3.675 1.025 0.475 0.45 0.85 0.925 0.85 1.05 0 0.325 -3.35 5.95 -5.2 8.75 -1.5 2.275 -2.05 2.925 -1.7 2.05z"/>
<path d="M79.175 86.575 c-0.325 -0.65 -1.3 -2.8 -2.15 -4.725 -0.85 -1.95 -2.05 -4.3 -2.675 -5.25 -1 -1.55 -1.1 -1.775 -0.8 -2.3 0.2 -0.4 0.45 -0.55 0.775 -0.45 0.275 0.075 1.05 -0.1 1.725 -0.375 l1.225 -0.475 1.575 0.875 c0.875 0.475 1.75 0.875 1.975 0.875 0.5 0 0.5 -0.225 0.175 4.9 -0.225 3.575 -0.775 7.725 -1.1 8.025 -0.075 0.075 -0.4 -0.425 -0.725 -1.1z m0.6 -4.975 c0.425 -0.525 0 -1.225 -0.775 -1.225 -0.775 0 -1.2 0.7 -0.775 1.225 0.2 0.225 0.525 0.4 0.775 0.4 0.25 0 0.575 -0.175 0.775 -0.4z m-0.925 -4.4 c0.325 -0.525 -0.05 -1.275 -0.65 -1.4 -0.4 -0.075 -1.2 0.575 -1.2 0.95 0 0.375 0.8 1.025 1.2 0.95 0.2 -0.05 0.5 -0.275 0.65 -0.5z"/>
<path d="M56.125 67.15 c-1.625 -0.525 -3.575 -1.6 -3.875 -2.15 -0.425 -0.775 -0.1 -1 0.85 -0.625 0.45 0.2 1.85 0.425 3.125 0.525 1.25 0.1 2.325 0.25 2.4 0.35 0.05 0.075 -0.025 0.625 -0.175 1.2 -0.3 1.175 -0.575 1.25 -2.325 0.7z"/>
<path d="M73 66.325 c-0.85 -0.3 -2.5 -1.175 -2.5 -1.325 0 -0.1 0.575 -0.05 1.275 0.1 1.075 0.225 1.75 0.15 4.375 -0.375 1.7 -0.375 3.1 -0.625 3.1 -0.575 0 0.025 -0.675 0.575 -1.475 1.2 -1.4 1.075 -1.575 1.15 -2.95 1.125 -0.8 0 -1.625 -0.075 -1.825 -0.15z"/>
<path d="M56.375 63.575 c-1.275 -0.125 -4.225 -1 -5.4 -1.575 -1.275 -0.65 -2.45 -2.075 -3.65 -4.375 -1.125 -2.2 -2.675 -6.6 -2.95 -8.4 -0.15 -1.075 -0.125 -1.2 0.85 -2.325 1.075 -1.225 1.175 -1.525 0.775 -2.15 -0.2 -0.325 -0.375 -0.3 -1.175 0.175 -2.3 1.325 -2.475 1.4 -3.675 1.225 -1.825 -0.275 -3.075 -1.425 -4.375 -3.95 -0.975 -1.875 -1.125 -2.425 -1.225 -4.125 -0.1 -1.7 -0.025 -2.15 0.45 -3.1 1.25 -2.5 2.9 -3.4 5.85 -3.25 1.05 0.05 2.425 1.6 3.025 3.4 0.25 0.825 0.55 1.6 0.65 1.7 0.3 0.375 2.75 -0.125 3.425 -0.7 l0.65 -0.55 -0.675 -2.85 c-0.85 -3.625 -0.85 -4.825 0.075 -9.3 0.85 -4.125 0.9 -5.225 0.4 -7.175 l-0.375 -1.375 0.8 -1.35 c2.1 -3.5 10.05 -9.1 14.425 -10.125 5.975 -1.425 16.025 1.225 20.325 5.325 1.175 1.125 4.425 5.2 4.425 5.575 0 0.025 -0.725 0.075 -1.6 0.075 -1.375 0 -1.7 0.1 -2.275 0.625 -0.725 0.675 -1.2 1.65 -1 2 0.075 0.125 0.525 0.05 1 -0.15 1.675 -0.7 3.85 -0.2 5.6 1.325 2.125 1.825 2.7 4.025 2.925 11.325 0.275 8.775 -0.95 15.15 -4.05 21.325 -0.725 1.4 -3.275 5.325 -4.3 6.55 -2.05 2.475 -7.975 5.175 -12.15 5.525 -2.35 0.2 -4.25 -0.2 -7.025 -1.5 -3.85 -1.825 -6.425 -4.1 -9.7 -8.625 -0.85 -1.15 -1.575 -1.975 -1.625 -1.8 -0.15 0.425 1.125 3.025 2.175 4.4 1.475 1.95 5.025 5.475 6.35 6.325 l1.2 0.75 -2 0.075 c-1.65 0.075 -2.1 0.2 -2.575 0.675 -0.625 0.55 -1.1 0.6 -3.575 0.375z m24.025 -8.45 c1.075 -0.325 2.35 -1.225 2.35 -1.625 0 -0.1 -1.65 -0.175 -3.675 -0.175 -5.875 0.025 -8.525 -0.775 -10.275 -3.075 -0.475 -0.625 -1 -1.15 -1.175 -1.2 -0.725 -0.175 -0.6 0.5 0.225 1.525 0.5 0.575 1.375 1.65 1.95 2.4 1.2 1.5 2.325 2.2 4.125 2.525 1.525 0.275 5 0.075 6.475 -0.375z m0.55 -5.925 l-0.075 -1.325 -3.5 -0.175 c-3.775 -0.175 -6.225 -0.525 -7.6 -1.1 -0.475 -0.2 -0.9 -0.325 -0.925 -0.275 -0.05 0.05 0.25 0.5 0.675 1 1.5 1.8 5.375 3.125 9.425 3.15 l2.075 0.025 -0.075 -1.3z m4.925 0.2 c0.6 -0.35 1.5 -1.075 2 -1.625 1.025 -1.075 2.425 -3.075 2.25 -3.225 -0.05 -0.05 -0.925 0.35 -1.925 0.875 -1.925 1.05 -4.6 2.075 -5.45 2.075 -0.45 0 -0.5 0.175 -0.5 1.4 l0 1.425 1.275 -0.15 c0.7 -0.1 1.75 -0.45 2.35 -0.775z m-4.625 -4.075 c1.675 -0.425 3.55 -1.275 5.525 -2.475 1.325 -0.8 1.5 -1 1.85 -2.15 0.575 -2 0.5 -2.25 -1.075 -3.875 -3.425 -3.45 -7.15 -8.775 -7.65 -10.875 -0.075 -0.4 -0.325 -0.7 -0.525 -0.7 -0.925 0 0.05 3.725 1.625 6.35 0.475 0.775 1.675 2.4 2.625 3.55 3.375 4.125 3.525 4.425 2.85 5.925 -0.55 1.225 -7.2 3.675 -9.05 3.325 -1.075 -0.2 -1.45 -0.65 -1.65 -1.85 -0.175 -1.075 -0.55 -1.175 -0.875 -0.25 -0.325 0.9 0.05 2.4 0.75 3.125 0.6 0.6 0.725 0.625 2.425 0.45 1 -0.1 2.425 -0.35 3.175 -0.55z m-40.4 -8.55 c0.275 -0.3 0.6 -0.525 0.775 -0.525 0.425 0 1.225 0.95 1.9 2.25 l0.6 1.125 0.075 -1.175 c0.1 -1.4 -0.55 -2.825 -1.7 -3.8 -1.525 -1.25 -3.2 -1.125 -4.175 0.325 -0.725 1.075 -0.725 1.425 -0.025 0.925 0.3 -0.225 0.775 -0.4 1.025 -0.4 0.4 0 0.425 0.125 0.25 0.825 -0.3 1.175 -0.2 3.7 0.2 4.55 0.3 0.725 0.325 0.65 0.475 -1.425 0.1 -1.625 0.25 -2.3 0.6 -2.675z m31.3 -4.525 c1.175 -1.175 1.125 -1.875 -0.275 -3.45 -0.625 -0.7 -1.55 -2.15 -2.075 -3.225 -0.8 -1.725 -0.925 -1.875 -1 -1.225 -0.1 0.75 0.775 3.5 1.325 4.15 0.175 0.2 0.5 0.725 0.7 1.15 0.4 0.8 0.4 0.8 -0.325 1.1 -0.525 0.225 -1.3 0.25 -2.675 0.1 -1.075 -0.1 -2.05 -0.2 -2.2 -0.225 -0.45 0 -0.425 1.15 0.025 1.65 0.65 0.725 1.75 0.975 3.8 0.875 1.675 -0.075 1.9 -0.15 2.7 -0.9z m19.025 -1.125 c0.6 -0.375 1.175 -0.825 1.25 -1 0.1 -0.325 -2.85 -6.625 -3.125 -6.625 -0.325 0 0.225 2.8 0.825 4.1 0.775 1.75 0.725 1.8 -1.625 2.025 -0.9 0.1 -1.775 0.2 -1.925 0.25 -0.55 0.175 -0.35 1.075 0.375 1.625 0.55 0.45 0.875 0.525 1.9 0.4 0.65 -0.075 1.7 -0.425 2.325 -0.775z m-32.45 -9.475 c0.9 -1.525 2.425 -3.025 3.675 -3.55 0.45 -0.2 1.55 -0.35 2.45 -0.35 0.9 0 1.7 -0.125 1.775 -0.25 0.5 -0.825 -1.175 -2.25 -2.675 -2.25 -1.15 0 -3.2 1.05 -4.475 2.325 -1.05 1.05 -2.225 3.15 -2.225 4 0 0.45 0.425 1.425 0.625 1.425 0.05 0 0.425 -0.6 0.85 -1.35z"/>
<path d="M37.35 28.6 c-0.2 -1.7 0 -5.375 0.4 -6.65 0.825 -2.8 4.625 -5.475 8.65 -6.1 0.925 -0.125 1.05 -0.1 1.175 0.425 0.25 0.9 0.225 0.975 -0.4 0.975 -0.975 0 -3.725 1 -4.975 1.8 -3 1.9 -4.775 5.8 -4.3 9.425 0.1 0.75 0.05 1.275 -0.1 1.375 -0.175 0.1 -0.325 -0.375 -0.45 -1.25z"/>
<path d="M41.5 14.75 c0 -0.1 0.525 -0.875 1.15 -1.725 1.35 -1.8 4.15 -3.975 7.05 -5.475 2.275 -1.175 5.475 -2.375 5.825 -2.15 0.45 0.25 0.2 0.775 -0.5 1.125 -5.325 2.6 -7.15 3.8 -9.5 6.25 -1.1 1.125 -1.7 1.525 -2.7 1.825 -0.725 0.2 -1.325 0.275 -1.325 0.15z"/>
</g>
<g id="layer107" fill="#f1d8b9" stroke="none">
<path d="M73 66.275 c-0.875 -0.275 -2.2 -0.975 -2.375 -1.275 -0.1 -0.175 0.075 -0.175 0.5 0 1.025 0.375 2.5 0.3 5.45 -0.35 1.475 -0.325 2.675 -0.55 2.675 -0.525 0 0.025 -0.675 0.575 -1.475 1.225 -1.35 1.05 -1.6 1.15 -2.825 1.125 -0.725 0 -1.6 -0.1 -1.95 -0.2z"/>
<path d="M56.075 63.475 c-2.025 -0.25 -4.625 -1.15 -5.8 -1.975 -1.35 -0.975 -2.675 -3.05 -3.975 -6.15 -0.975 -2.375 -2.05 -5.975 -2.05 -6.875 0 -0.25 0.45 -0.975 1.025 -1.625 1.05 -1.2 1.225 -2.15 0.425 -2.3 -0.225 -0.05 -1.05 0.325 -1.8 0.85 -1.2 0.8 -1.525 0.9 -2.425 0.775 -1.7 -0.225 -3.225 -1.35 -4.3 -3.175 -2.525 -4.35 -2.175 -8.375 0.925 -10.425 1.05 -0.725 1.425 -0.825 2.775 -0.825 1.225 0 1.7 0.125 2.25 0.55 0.7 0.55 2.125 3.225 2.125 4.025 0 0.25 0.175 0.5 0.375 0.575 0.7 0.275 2.625 -0.175 3.3 -0.75 l0.65 -0.575 -0.65 -2.9 c-0.85 -3.675 -0.85 -4.725 0.075 -9.15 0.85 -4.025 0.925 -5.625 0.375 -7.425 -0.35 -1.175 -0.325 -1.25 0.25 -2.25 1.525 -2.6 5.125 -5.7 9.625 -8.25 3.35 -1.875 4.875 -2.375 8 -2.525 4.4 -0.225 8.725 0.775 13.65 3.175 2.175 1.05 2.775 1.475 4.25 3.075 0.95 1.025 2.2 2.55 2.8 3.4 l1.075 1.525 -1.425 0 c-1.6 0 -2.575 0.475 -3.2 1.5 -0.55 0.95 -0.525 1.6 0.05 1.375 2 -0.85 3.575 -0.675 5.6 0.6 2.45 1.55 3.075 3.375 3.5 10 0.525 8.5 -0.625 15.825 -3.425 21.95 -1.125 2.45 -4.1 6.975 -5.425 8.225 -1.9 1.825 -5.375 3.6 -8.7 4.475 -2.25 0.6 -5.75 0.6 -7.5 0.025 -4.325 -1.45 -7.875 -4.175 -11.35 -8.725 -1.225 -1.6 -2.275 -2.875 -2.35 -2.825 -0.225 0.225 0.75 2.575 1.525 3.7 1.4 2.025 5.1 5.85 6.725 6.95 l1.55 1.025 -1.325 -0.1 c-1.6 -0.15 -2.65 0.125 -3.4 0.825 -0.575 0.55 -0.975 0.55 -3.8 0.225z m23.65 -8.15 c1.525 -0.325 3.025 -1.25 3.025 -1.875 0 -0.1 -1.65 -0.2 -3.675 -0.2 -4.25 0.025 -5.45 -0.125 -7.275 -0.8 -1.525 -0.575 -2.55 -1.375 -3.3 -2.575 -0.325 -0.5 -0.75 -0.875 -1.025 -0.875 -0.875 0 -0.725 0.225 2.55 4.325 0.425 0.525 1.025 1.125 1.375 1.325 1.6 1.075 5.125 1.35 8.325 0.675z m1.275 -6 c0 -0.85 -0.125 -1.375 -0.3 -1.45 -0.175 -0.05 -1.775 -0.15 -3.575 -0.25 -4.1 -0.175 -6.15 -0.525 -7.975 -1.25 -0.4 -0.175 -0.425 -0.125 -0.175 0.3 1.175 2.25 5.85 3.925 10.975 3.975 l1.05 0 0 -1.325z m4.4 0.3 c0.725 -0.3 1.75 -1.025 2.325 -1.6 0.95 -0.95 2.6 -3.3 2.425 -3.475 -0.05 -0.025 -1.225 0.5 -2.625 1.175 -1.4 0.675 -3.15 1.375 -3.9 1.525 l-1.375 0.275 0 1.525 0 1.5 0.95 -0.175 c0.5 -0.075 1.5 -0.425 2.2 -0.75z m-3.85 -4.275 c1.475 -0.45 3.125 -1.225 5.25 -2.5 1.2 -0.725 1.475 -1.05 1.8 -2.025 0.625 -1.8 0.525 -2.7 -0.35 -3.375 -2.275 -1.775 -7.35 -8.625 -8.125 -10.95 -0.25 -0.775 -0.55 -1.25 -0.8 -1.25 -0.325 0 -0.375 0.225 -0.225 1.45 0.25 2.1 2 5.45 4.275 8.175 2.95 3.525 3.375 4.15 3.375 4.9 0 1.425 -0.4 1.8 -3.225 3.05 -2.9 1.275 -4.35 1.625 -5.875 1.5 -1.25 -0.1 -1.625 -0.425 -1.8 -1.625 -0.2 -1.15 -0.475 -1.4 -0.825 -0.725 -0.55 1.025 -0.275 2.5 0.7 3.625 0.35 0.4 0.65 0.425 2.45 0.3 1.125 -0.1 2.65 -0.35 3.375 -0.55z m-40.6 -8.65 c0.5 -0.5 0.55 -0.5 1.15 -0.1 0.35 0.225 0.95 1 1.325 1.725 l0.7 1.3 0.075 -1.175 c0.2 -3 -3.075 -5.75 -5.15 -4.3 -0.6 0.4 -1.425 1.8 -1.2 2.025 0.075 0.075 0.3 -0.05 0.525 -0.275 0.225 -0.225 0.625 -0.4 0.925 -0.4 0.425 0 0.475 0.1 0.275 0.825 -0.3 1.225 -0.2 3.975 0.2 4.675 0.325 0.575 0.35 0.475 0.5 -1.575 0.125 -1.775 0.25 -2.325 0.675 -2.725z m30.45 -3.85 c1.95 -0.925 2.1 -2.325 0.475 -4.075 -0.6 -0.65 -1.525 -2.075 -2.05 -3.175 -0.825 -1.75 -0.95 -1.9 -1.025 -1.25 -0.125 0.925 0.55 3 1.475 4.425 0.4 0.625 0.725 1.275 0.725 1.425 0 0.8 -2.15 0.975 -4.8 0.4 -0.8 -0.175 -1.1 0.275 -0.85 1.25 0.3 1.25 4.175 1.875 6.05 1z m19.65 -1.65 c1.7 -0.95 1.7 -1 -0.05 -4.525 -0.85 -1.75 -1.6 -3.175 -1.675 -3.175 -0.35 0 0.2 2.825 0.8 4.125 0.725 1.6 0.625 1.85 -0.75 1.9 -0.975 0.025 -2.425 0.2 -2.8 0.35 -0.55 0.2 -0.35 1.075 0.375 1.625 0.55 0.45 0.875 0.525 1.875 0.4 0.675 -0.075 1.675 -0.4 2.225 -0.7z m-32.45 -9.275 c0.275 -0.575 1.075 -1.625 1.75 -2.325 1.475 -1.45 2.925 -1.975 4.9 -1.8 1.05 0.1 1.275 0.05 1.375 -0.325 0.35 -1.05 -1.1 -2.225 -2.675 -2.225 -2.05 0 -5 2.225 -6.1 4.575 -0.65 1.425 -0.725 1.975 -0.35 2.7 0.375 0.7 0.575 0.6 1.1 -0.6z"/>
</g>
<g id="layer108" fill="#f6f5f5" stroke="none">
<path d="M66.75 125.1 c-0.35 -0.05 -1.475 -0.225 -2.5 -0.375 -2.3 -0.325 -5.05 -0.975 -5.35 -1.25 -0.525 -0.475 -2.75 -8.65 -3.875 -14.275 -0.825 -4.025 -1.975 -11.8 -2.075 -13.95 l-0.075 -1.35 1.125 -0.2 c6.525 -1.175 16.075 -1.75 20.875 -1.225 1.525 0.175 2.9 0.45 3.05 0.6 0.3 0.3 0.75 6.225 1.325 17.925 0.275 5.6 0.7 11.25 0.9 12.275 0.15 0.625 0.075 0.675 -1.475 1.05 -3 0.75 -9.25 1.15 -11.925 0.775z"/>
<path d="M80.925 115.85 c-0.1 -1.775 -0.175 -3.95 -0.175 -4.875 l0 -1.625 1.325 -0.275 c0.7 -0.15 1.35 -0.225 1.4 -0.2 0.175 0.175 1.5 7.55 1.525 8.45 0 1.075 -0.475 1.375 -2.65 1.6 l-1.275 0.125 -0.15 -3.2z"/>
<path d="M97.95 105.075 c-0.525 -0.05 -0.95 -0.2 -0.95 -0.35 0 -0.125 0.05 -0.225 0.1 -0.225 0.125 0 3.5 -0.675 4.375 -0.9 0.475 -0.1 0.525 -0.2 0.3 -0.425 -0.225 -0.225 -1.525 -0.275 -4.6 -0.225 l-4.325 0.05 -0.425 -4.05 c-0.25 -2.25 -0.6 -4.7 -0.8 -5.45 l-0.375 -1.375 0.675 -0.55 c0.375 -0.325 2 -1.025 3.575 -1.6 1.575 -0.575 3.425 -1.325 4.075 -1.65 1.85 -0.925 3.7 -0.25 4.675 1.675 0.7 1.35 2.25 7.55 2.25 8.95 0 2.8 -1.525 5.225 -3.625 5.75 -1.25 0.325 -3.725 0.5 -4.925 0.375z m4.5 -6.2 c-0.075 -0.075 -1.025 -0.3 -2.1 -0.525 -2.375 -0.45 -5.1 -0.225 -5.1 0.425 0 0.125 1.65 0.225 3.675 0.225 2 0 3.6 -0.05 3.525 -0.125z m-0.95 -3.375 c0.425 -0.25 -1.525 -0.6 -3.375 -0.625 -1.3 0 -2.875 0.5 -2.875 0.95 0 0.275 5.65 0 6.25 -0.325z m-4.975 -2 c0.75 -0.425 1.95 -1.05 2.675 -1.4 0.725 -0.35 1.275 -0.7 1.225 -0.75 -0.05 -0.075 -0.925 0.05 -1.95 0.25 -1.775 0.375 -4.475 1.825 -4.475 2.4 0 0.475 1.2 0.25 2.525 -0.5z"/>
<path d="M87.875 102.825 c-0.075 -0.8 -0.425 -3.2 -0.775 -5.325 -0.325 -2.125 -0.6 -4.175 -0.6 -4.55 0 -0.675 0.05 -0.7 1.275 -0.7 1.25 0 1.25 0 1.75 1.125 0.725 1.65 1.2 4.1 1.375 7.275 l0.175 2.75 -1.325 0.425 c-0.725 0.225 -1.4 0.425 -1.5 0.425 -0.1 0 -0.275 -0.65 -0.375 -1.425z"/>
<path d="M78.95 86 c-0.5 -1.025 -1.475 -3.2 -2.2 -4.8 -0.7 -1.6 -1.8 -3.675 -2.4 -4.6 -0.6 -0.925 -1.1 -1.725 -1.1 -1.8 0 -0.35 0.825 -1 1.125 -0.9 0.175 0.075 0.725 -0.05 1.25 -0.25 1.35 -0.575 2.1 -0.5 3.375 0.35 0.625 0.4 1.375 0.75 1.7 0.75 0.55 0 0.55 0.025 0.425 2.825 -0.2 3.925 -0.625 7.675 -1 9.1 l-0.325 1.2 -0.85 -1.875z m0.825 -4.4 c0.425 -0.525 0 -1.225 -0.775 -1.225 -0.775 0 -1.2 0.7 -0.775 1.225 0.2 0.225 0.525 0.4 0.775 0.4 0.25 0 0.575 -0.175 0.775 -0.4z m-0.925 -4.4 c0.325 -0.525 -0.05 -1.275 -0.65 -1.4 -0.4 -0.075 -1.2 0.575 -1.2 0.95 0 0.375 0.8 1.025 1.2 0.95 0.2 -0.05 0.5 -0.275 0.65 -0.5z"/>
<path d="M55.8 67 c-2.525 -0.9 -4.1 -2.075 -3.675 -2.75 0.075 -0.125 0.5 -0.075 0.95 0.125 0.425 0.175 1.85 0.425 3.125 0.575 1.275 0.125 2.375 0.275 2.425 0.35 0.05 0.05 -0.025 0.575 -0.175 1.15 -0.3 1.225 -0.6 1.3 -2.65 0.55z"/>
<path d="M50.825 61.75 c-1.15 -0.675 -1.025 -0.85 0.125 -0.2 1.15 0.675 1.2 0.7 0.9 0.7 -0.125 0 -0.6 -0.225 -1.025 -0.5z"/>
<path d="M47.35 57.475 c-0.35 -0.7 -0.6 -1.325 -0.55 -1.375 0.05 -0.05 0.4 0.525 0.775 1.275 0.375 0.75 0.625 1.375 0.55 1.375 -0.075 0 -0.4 -0.575 -0.775 -1.275z"/>
<path d="M44.5 47.975 c0 -0.2 0.325 -0.575 0.7 -0.825 l0.675 -0.475 -0.625 0.725 c-0.35 0.4 -0.65 0.775 -0.675 0.825 -0.05 0.05 -0.075 -0.05 -0.075 -0.25z"/>
<path d="M35.575 37.625 c0 -0.55 0.05 -0.75 0.1 -0.425 0.05 0.3 0.05 0.75 0 1 -0.075 0.225 -0.125 -0.025 -0.1 -0.575z"/>
<path d="M37.25 33.375 c0.475 -0.475 0.9 -0.875 0.975 -0.875 0.075 0 -0.25 0.4 -0.725 0.875 -0.475 0.475 -0.9 0.875 -0.975 0.875 -0.075 0 0.25 -0.4 0.725 -0.875z"/>
<path d="M43.575 33.175 c-0.1 -0.175 -0.475 -0.525 -0.825 -0.75 -0.325 -0.225 -0.525 -0.425 -0.425 -0.425 0.35 0 1.375 0.775 1.525 1.15 0.175 0.45 0 0.45 -0.275 0.025z"/>
<path d="M40.45 31.825 c0.3 -0.05 0.75 -0.05 1 0 0.225 0.075 -0.025 0.125 -0.575 0.1 -0.55 0 -0.75 -0.05 -0.425 -0.1z"/>
<path d="M37.375 28.35 c-0.25 -2.2 0 -5.15 0.525 -6.725 0.825 -2.375 4.025 -4.725 7.575 -5.525 1 -0.225 1.85 -0.35 1.9 -0.3 0.075 0.05 0.15 0.35 0.175 0.675 0.075 0.5 -0.1 0.625 -1.75 1.05 -2.45 0.625 -4.1 1.55 -5.55 3.15 -1.7 1.875 -2.325 3.575 -2.375 6.625 -0.025 1.35 -0.1 2.5 -0.175 2.6 -0.1 0.075 -0.225 -0.625 -0.325 -1.55z"/>
<path d="M58.175 18.625 c0.3 -0.4 0.9 -1.075 1.35 -1.5 0.625 -0.55 0.55 -0.425 -0.25 0.5 -1.475 1.675 -1.7 1.875 -1.1 1z"/>
<path d="M41.5 14.875 c0 -0.375 1.225 -1.975 2.425 -3.2 2.325 -2.35 5.675 -4.4 9.55 -5.775 1.275 -0.475 1.925 -0.6 2.125 -0.4 0.425 0.425 -0.1 0.8 -3.25 2.325 -2.6 1.25 -4.75 2.775 -6.6 4.675 -0.9 0.925 -1.85 1.75 -2.125 1.825 -0.275 0.075 -0.875 0.25 -1.3 0.375 -0.45 0.15 -0.825 0.225 -0.825 0.175z"/>
<path d="M88.25 13.75 c-0.15 -0.275 -0.175 -0.5 -0.075 -0.5 0.125 0 0.35 0.225 0.525 0.5 0.175 0.275 0.2 0.5 0.05 0.5 -0.125 0 -0.35 -0.225 -0.5 -0.5z"/>
<path d="M52.125 11 c0.95 -0.95 1.8 -1.75 1.85 -1.75 0.075 0 -0.65 0.8 -1.6 1.75 -0.95 0.975 -1.8 1.75 -1.85 1.75 -0.075 0 0.65 -0.775 1.6 -1.75z"/>
<path d="M54.35 9.05 c0.2 -0.325 1.65 -1.4 1.65 -1.225 0 0.075 -0.425 0.425 -0.925 0.825 -0.5 0.375 -0.825 0.575 -0.725 0.4z"/>
<path d="M79.5 5.875 c-0.35 -0.2 -0.5 -0.35 -0.375 -0.35 0.15 0 0.525 0.15 0.875 0.35 0.35 0.2 0.525 0.35 0.375 0.35 -0.125 0 -0.525 -0.15 -0.875 -0.35z"/>
<path d="M60 5.375 c0 -0.175 2.025 -1.175 2.15 -1.075 0.05 0.075 -0.425 0.35 -1.025 0.65 -0.625 0.3 -1.125 0.5 -1.125 0.425z"/>
<path d="M67.7 3.075 c0.3 -0.05 0.8 -0.05 1.125 0 0.3 0.05 0.05 0.1 -0.575 0.1 -0.625 0 -0.875 -0.05 -0.55 -0.1z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 33 KiB

View File

@ -0,0 +1,22 @@
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" xmlns="http://www.w3.org/2000/svg" width="128px" height="128px" viewBox="0 0 1280 1280" preserveAspectRatio="xMidYMid meet">
<g id="layer101" fill="#fdfdfd" stroke="none">
<path d="M628 1243 c-35 -4 -38 -7 -53 -56 -17 -59 -49 -236 -43 -242 19 -19 226 -24 237 -6 10 15 26 290 18 298 -8 7 -115 12 -159 6z"/>
<path d="M816 1178 c-11 -34 -12 -69 -4 -75 14 -8 28 16 28 49 0 29 -17 48 -24 26z"/>
<path d="M470 1091 c-36 -11 -88 -39 -95 -51 -4 -6 -9 -41 -12 -78 -3 -37 -14 -101 -25 -142 -11 -41 -22 -84 -25 -95 -6 -30 120 -115 145 -97 9 7 41 26 69 43 44 26 54 37 64 72 6 23 18 48 27 55 9 7 17 22 17 33 0 19 23 36 75 56 20 8 5 11 -73 17 -53 4 -102 4 -108 0 -7 -4 -9 -22 -7 -43 3 -20 2 -45 -3 -56 -5 -14 -8 -2 -8 36 -1 62 -7 75 -29 56 -13 -10 -14 -9 -10 3 3 8 -2 20 -11 27 -14 11 -11 12 16 13 29 0 32 3 37 40 3 22 9 58 12 80 6 43 -1 47 -56 31z"/>
<path d="M801 1000 c-1 -54 2 -70 13 -70 9 0 18 19 25 50 14 67 14 77 -5 84 -29 11 -32 6 -33 -64z"/>
<path d="M1016 1036 c4 -9 -8 -12 -42 -12 l-46 1 -4 -55 -4 -55 47 -17 c56 -20 66 -14 82 47 12 48 3 88 -23 98 -10 4 -13 1 -10 -7z m-16 -52 c0 -2 -12 -4 -27 -4 -21 0 -24 3 -14 9 13 8 41 5 41 -5z m0 -33 c0 -5 -11 -8 -25 -5 -31 5 -33 -4 -3 -15 12 -4 17 -10 12 -13 -13 -9 -47 19 -39 31 8 13 55 15 55 2z"/>
<path d="M876 993 c-3 -21 -6 -47 -6 -58 1 -20 1 -20 15 -1 16 21 21 96 6 96 -4 0 -11 -17 -15 -37z"/>
<path d="M820 894 c0 -1 15 -27 34 -58 32 -53 34 -62 32 -131 -2 -41 -8 -81 -15 -89 -7 -8 -8 -17 -3 -20 4 -2 25 12 45 33 40 41 47 76 25 128 -6 15 -12 35 -14 43 -2 9 -10 32 -18 52 -13 30 -21 36 -51 40 -19 2 -35 3 -35 2z"/>
<path d="M691 846 l-45 -23 27 -27 c14 -14 30 -26 36 -26 8 0 51 77 51 93 0 13 -24 6 -69 -17z"/>
<path d="M767 804 c-21 -42 -25 -59 -16 -65 13 -8 46 8 52 26 3 5 1 30 -2 54 l-6 43 -28 -58z"/>
<path d="M824 815 c3 -22 5 -46 5 -52 1 -15 27 -17 36 -3 3 5 -5 29 -20 52 l-25 43 4 -40z"/>
<path d="M611 749 c-14 -41 -14 -86 0 -94 18 -12 99 24 92 41 -3 8 0 14 6 14 32 0 -18 49 -65 64 -18 5 -24 1 -33 -25z"/>
<path d="M790 713 c0 -6 6 -14 13 -16 9 -4 9 -8 -2 -15 -10 -8 -8 -13 10 -26 32 -22 38 -20 50 10 16 43 4 63 -36 61 -19 -1 -35 -7 -35 -14z"/>
<path d="M545 660 c-3 -5 3 -10 15 -10 12 0 18 5 15 10 -3 6 -10 10 -15 10 -5 0 -12 -4 -15 -10z"/>
<path d="M525 623 c-39 -21 -52 -38 -69 -93 -9 -29 -10 -49 -4 -57 15 -19 0 -35 -22 -23 -25 13 -26 13 -50 -12 -11 -13 -20 -35 -20 -54 0 -54 48 -85 70 -45 13 25 13 42 -1 19 -5 -10 -18 -18 -28 -18 -14 0 -17 6 -13 32 5 32 5 32 14 8 9 -24 10 -24 24 -6 8 11 14 15 14 9 0 -7 12 -13 28 -15 21 -2 26 -8 24 -23 -5 -28 -4 -80 1 -148 3 -47 9 -63 33 -88 70 -74 163 -91 262 -49 64 28 108 80 67 80 -14 0 -18 10 -12 27 1 4 11 6 23 5 42 -6 72 69 66 168 -1 19 -3 47 -3 63 -1 15 -5 27 -10 27 -4 0 -10 13 -14 29 -19 88 -104 161 -185 161 -54 0 -90 -20 -139 -77 -27 -32 -41 -42 -41 -31 0 15 54 86 85 111 6 5 0 6 -12 2 -12 -3 -24 -1 -28 5 -9 14 -25 12 -60 -7z m276 -73 c10 0 19 -3 19 -7 0 -5 -23 -9 -51 -10 -37 -1 -57 -7 -75 -24 -13 -12 -24 -18 -24 -12 0 26 67 66 98 57 8 -2 22 -4 33 -4z m8 -63 c-2 -3 -31 -7 -64 -10 -48 -5 -56 -4 -40 6 28 16 88 25 99 15 5 -4 8 -9 5 -11z m59 -3 c12 -8 22 -19 22 -24 0 -12 -63 15 -68 29 -5 16 20 13 46 -5z m-38 -40 c60 -24 69 -49 32 -88 -17 -17 -39 -47 -51 -66 -11 -19 -21 -28 -21 -19 0 9 11 31 25 50 13 19 32 44 41 57 20 28 13 38 -42 57 -34 12 -41 11 -56 -2 -20 -18 -25 -4 -6 15 16 16 30 15 78 -4z m-112 -126 c7 -9 5 -20 -9 -37 -10 -13 -19 -18 -19 -13 0 6 5 14 10 17 20 12 9 25 -21 25 -17 0 -28 4 -24 10 9 14 51 12 63 -2z m190 -7 c9 -5 11 -17 6 -35 -9 -39 -28 -46 -19 -7 6 27 4 31 -15 31 -12 0 -18 5 -15 10 7 12 25 13 43 1z m-270 -131 c23 0 30 -14 12 -25 -9 -5 -70 20 -70 29 0 3 -3 13 -7 23 -5 15 -2 15 19 -4 13 -13 34 -23 46 -23z"/>
<path d="M445 299 c-4 -6 -21 -9 -38 -7 -28 3 -32 0 -35 -23 -5 -43 15 -79 54 -95 41 -17 47 -15 45 18 -1 13 -2 44 -2 71 0 45 -10 59 -24 36z"/>
<path d="M430 130 c0 -10 17 -23 63 -49 l38 -21 -28 35 c-15 19 -30 35 -33 36 -3 0 -13 2 -22 4 -10 2 -18 0 -18 -5z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.0 KiB

BIN
icons/jenkins/jenkins.eps Executable file

Binary file not shown.

View File

@ -0,0 +1,322 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
width="454.000000pt" height="454.000000pt" viewBox="0 0 454.000000 454.000000"
preserveAspectRatio="xMidYMid meet">
<g transform="translate(0.000000,454.000000) scale(0.100000,-0.100000)"
fill="#000000" stroke="none">
<path d="M2910 4081 c-14 -14 -24 -29 -22 -33 1 -5 -3 -8 -9 -8 -5 0 -7 -5 -4
-10 3 -6 -1 -13 -9 -16 -9 -3 -14 -10 -11 -14 3 -5 1 -11 -5 -15 -6 -4 -8 -11
-5 -16 4 -5 1 -9 -5 -9 -7 0 -10 -6 -7 -14 3 -8 3 -17 -1 -21 -4 -4 -8 -21 -9
-38 -4 -55 -13 -246 -18 -387 -6 -146 -10 -219 -15 -235 -1 -5 -2 -13 -1 -17
2 -13 -8 -9 -28 11 -11 11 -17 22 -14 25 4 3 1 6 -6 6 -7 0 -9 5 -6 10 3 6 2
10 -2 10 -9 0 -37 59 -34 73 0 4 -4 7 -10 7 -5 0 -7 5 -4 10 3 6 1 10 -5 10
-6 0 -8 5 -5 10 3 6 1 10 -5 10 -6 0 -8 5 -5 10 3 6 1 10 -5 10 -6 0 -8 5 -5
10 3 6 1 10 -5 10 -6 0 -8 5 -5 10 3 6 1 10 -5 10 -6 0 -8 5 -5 10 3 6 1 10
-5 10 -6 0 -8 5 -5 10 3 6 1 10 -5 10 -6 0 -8 5 -5 10 3 6 1 10 -5 10 -6 0 -9
4 -6 9 3 5 -1 12 -10 15 -9 4 -14 9 -11 13 4 3 -1 12 -11 20 -11 9 -12 12 -2
8 8 -4 2 5 -15 20 -16 14 -23 23 -15 19 8 -4 -14 21 -50 56 -36 35 -68 63 -72
62 -5 -1 -8 3 -8 9 0 5 -4 7 -10 4 -5 -3 -10 -3 -10 2 0 4 -11 9 -25 9 -14 1
-25 -3 -25 -8 0 -6 -7 -8 -15 -4 -8 3 -15 1 -15 -5 0 -6 -4 -8 -9 -5 -5 3 -12
-1 -15 -10 -3 -8 -10 -13 -14 -10 -28 17 -64 -101 -40 -131 6 -7 7 -24 4 -38
-4 -14 -3 -31 1 -38 4 -7 9 -30 10 -52 4 -77 3 -380 -2 -430 -3 -27 -6 -63 -8
-80 -1 -16 -6 -36 -10 -43 -5 -7 -6 -21 -2 -31 3 -11 1 -22 -5 -26 -6 -4 -8
-15 -5 -25 3 -10 1 -21 -5 -25 -6 -4 -8 -15 -5 -26 4 -11 2 -19 -5 -19 -7 0
-9 -7 -6 -16 3 -9 3 -21 -1 -27 -11 -17 -10 -97 1 -97 5 0 6 -3 3 -7 -4 -3 1
-12 11 -20 10 -9 11 -12 2 -7 -10 5 -9 0 4 -14 21 -24 30 -29 21 -9 -4 6 1 3
10 -8 9 -11 21 -19 26 -18 5 2 9 -2 9 -8 0 -5 5 -7 10 -4 6 3 10 1 10 -5 0 -6
5 -8 10 -5 6 3 10 1 10 -5 0 -6 5 -8 10 -5 6 3 10 1 10 -5 0 -6 5 -8 10 -5 6
3 10 1 10 -5 0 -6 5 -8 10 -5 6 3 10 2 10 -4 0 -6 7 -8 15 -5 8 4 15 1 15 -5
0 -20 38 -12 63 13 14 14 22 27 19 30 -3 3 0 6 7 6 7 0 10 4 6 9 -3 5 -1 12 5
16 6 4 8 11 5 16 -4 5 -2 9 4 9 6 0 8 7 5 15 -4 8 -1 15 6 15 7 0 10 7 6 15
-3 8 -1 15 5 15 6 0 9 7 5 15 -3 8 -1 15 5 15 6 0 9 7 5 15 -3 8 -1 15 5 15 6
0 8 4 4 9 -3 5 -1 12 5 16 6 4 8 11 5 16 -4 5 -1 9 4 9 6 0 10 5 8 12 -3 17
26 16 41 -2 12 -13 13 -13 7 0 -4 8 10 -3 30 -25 20 -22 34 -33 30 -25 -4 8
19 -12 50 -45 31 -33 54 -53 50 -45 -4 8 3 4 15 -10 12 -14 26 -25 31 -25 6 0
14 -7 19 -15 5 -8 10 -10 10 -5 0 6 5 2 11 -8 6 -9 14 -15 20 -12 5 4 9 1 9
-5 0 -6 5 -8 10 -5 6 3 10 2 10 -4 0 -6 7 -8 15 -5 8 4 15 2 15 -3 0 -10 42
-16 86 -11 15 1 71 49 66 56 -1 1 -1 3 -1 5 7 13 10 150 12 681 2 609 2 620
-18 639 -11 10 -20 23 -20 28 0 5 -7 14 -15 19 -8 5 -10 10 -5 10 6 0 -1 10
-15 21 -14 11 -18 18 -10 14 8 -4 6 1 -5 10 -11 9 -20 20 -20 24 0 12 -57 65
-70 66 -5 1 -21 -10 -35 -24z"/>
<path d="M290 4068 c0 -5 -4 -7 -9 -4 -5 3 -12 -1 -15 -10 -3 -8 -10 -13 -15
-10 -11 7 -33 -18 -24 -27 3 -4 1 -7 -5 -7 -7 0 -11 -3 -10 -7 0 -5 -2 -16 -6
-25 -4 -9 -5 -48 -2 -85 3 -37 6 -84 7 -103 0 -19 5 -40 10 -47 6 -6 8 -21 4
-32 -3 -10 -1 -22 5 -26 7 -4 9 -18 6 -30 -3 -13 -1 -27 4 -30 6 -4 8 -15 5
-25 -3 -10 -1 -21 5 -25 6 -4 8 -15 5 -25 -3 -10 -1 -21 5 -25 6 -4 8 -15 5
-25 -3 -10 -1 -21 5 -25 6 -4 8 -15 5 -25 -3 -10 -1 -21 5 -25 6 -4 8 -15 5
-26 -4 -11 -2 -19 5 -19 6 0 10 -6 9 -12 -2 -16 226 -253 243 -253 9 0 12 -58
13 -241 1 -132 5 -246 8 -251 4 -6 4 -18 1 -27 -3 -9 -1 -16 6 -16 6 0 9 -4 5
-9 -3 -5 -1 -12 5 -16 6 -4 8 -11 5 -16 -4 -5 -1 -9 5 -9 6 0 8 -4 5 -10 -3
-5 -1 -10 5 -10 6 0 8 -4 5 -10 -3 -5 -1 -10 5 -10 6 0 9 -4 6 -9 -3 -5 1 -12
9 -15 8 -3 14 -10 13 -15 -2 -5 6 -17 17 -26 11 -9 13 -13 5 -9 -8 4 3 -12 24
-34 22 -23 43 -39 48 -36 4 3 11 -2 14 -10 3 -9 10 -13 15 -10 5 3 9 0 9 -6 0
-6 4 -8 10 -5 6 3 10 1 10 -5 0 -6 4 -8 10 -5 5 3 10 2 10 -3 0 -5 15 -8 33
-7 17 2 31 8 29 14 -1 6 2 11 7 11 5 0 9 17 10 38 0 36 5 100 16 212 8 86 15
170 30 370 10 133 12 150 25 165 7 8 9 15 5 15 -4 0 3 9 16 21 13 11 17 17 9
13 -8 -4 -2 7 14 24 16 17 32 29 36 27 4 -3 16 5 26 18 19 22 19 22 -2 7 -11
-8 -2 2 20 24 23 21 41 42 41 47 0 4 9 15 20 23 11 9 16 16 11 16 -6 0 -1 7
10 16 10 8 12 13 4 9 -10 -4 -9 -2 2 8 10 8 15 17 11 20 -3 4 -1 7 6 7 7 0 9
5 6 10 -3 6 -1 10 4 10 6 0 10 3 10 8 -1 4 0 9 1 12 7 15 6 71 -1 75 -4 3 -6
12 -2 20 3 8 0 15 -7 15 -6 0 -8 5 -5 10 3 6 1 10 -6 10 -7 0 -10 2 -7 5 6 7
-74 90 -84 87 -5 -1 -8 3 -8 9 0 5 -4 8 -9 5 -5 -3 -12 1 -15 10 -3 8 -10 12
-16 9 -5 -3 -10 -1 -10 5 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5 0 6 -5 8 -10 5
-6 -3 -10 -1 -10 4 0 6 -4 11 -10 11 -12 0 -54 -40 -42 -40 4 0 -4 -10 -18
-21 -14 -11 -18 -18 -10 -14 8 4 -1 -7 -20 -24 -19 -18 -28 -29 -20 -25 8 4
-9 -18 -39 -49 -30 -31 -58 -54 -63 -51 -4 3 -11 -2 -14 -10 -3 -9 -10 -13
-15 -10 -5 3 -9 1 -9 -4 0 -11 -60 -10 -78 1 -7 5 -10 13 -7 18 4 5 1 9 -5 9
-6 0 -9 4 -5 9 3 5 1 12 -5 16 -6 4 -8 11 -5 16 4 5 3 15 -2 22 -8 13 -13 51
-14 107 0 19 -5 40 -10 46 -5 7 -7 24 -3 38 4 17 2 26 -6 26 -7 0 -9 8 -5 20
4 12 2 20 -5 20 -6 0 -9 4 -5 9 3 5 1 12 -5 16 -6 4 -8 11 -5 16 4 5 1 9 -5 9
-6 0 -8 5 -5 10 3 6 1 10 -5 10 -6 0 -8 5 -5 10 3 6 -1 13 -9 16 -9 3 -14 10
-11 15 3 4 -4 13 -15 19 -11 6 -18 15 -16 19 3 4 -10 23 -29 41 -19 19 -35 30
-35 24 0 -5 -5 -2 -10 6 -5 8 -14 16 -20 16 -5 1 -11 2 -12 4 -10 7 -108 5
-108 -2z"/>
<path d="M3624 3988 c-3 -4 -11 -5 -19 -1 -8 3 -15 0 -15 -7 0 -6 -4 -8 -10
-5 -5 3 -10 1 -10 -5 0 -6 -4 -9 -9 -5 -5 3 -17 -2 -25 -11 -9 -8 -16 -12 -16
-8 0 4 -7 -1 -15 -12 -8 -10 -15 -15 -15 -10 0 4 -9 -2 -21 -15 -11 -13 -17
-17 -13 -9 4 8 -9 0 -29 -19 -20 -19 -33 -39 -30 -47 3 -8 0 -14 -7 -14 -6 0
-8 -4 -5 -10 3 -5 1 -10 -5 -10 -6 0 -8 -5 -5 -10 3 -6 -1 -13 -9 -16 -9 -3
-14 -10 -11 -15 3 -4 -4 -13 -15 -19 -11 -6 -18 -15 -15 -21 4 -5 1 -9 -5 -9
-6 0 -8 -4 -5 -10 3 -5 1 -10 -5 -10 -6 0 -8 -4 -5 -10 3 -5 1 -10 -5 -10 -6
0 -8 -4 -5 -10 3 -5 2 -10 -4 -10 -6 0 -8 -7 -5 -15 4 -8 1 -15 -5 -15 -6 0
-8 -7 -5 -15 4 -8 1 -15 -6 -15 -6 0 -9 -4 -5 -9 3 -5 1 -12 -4 -16 -6 -3 -8
-12 -4 -20 3 -8 0 -15 -7 -15 -7 0 -9 -8 -5 -20 4 -12 2 -20 -5 -20 -7 0 -9
-8 -5 -20 4 -12 2 -20 -5 -20 -8 0 -10 -9 -6 -25 4 -16 2 -25 -5 -25 -7 0 -9
-9 -5 -25 4 -14 3 -31 -1 -38 -11 -17 -11 -230 0 -244 5 -7 6 -17 2 -23 -4 -6
-1 -17 5 -25 6 -8 9 -19 5 -25 -3 -5 -1 -10 5 -10 7 0 10 -7 6 -15 -3 -8 -1
-15 5 -15 6 0 7 -4 4 -10 -3 -5 -1 -10 5 -10 6 0 8 -4 5 -10 -3 -5 -1 -10 4
-10 6 0 10 -4 8 -9 -1 -5 7 -17 18 -26 11 -9 13 -13 5 -9 -8 4 3 -12 24 -34
22 -23 43 -39 47 -36 4 2 13 -5 19 -16 6 -11 15 -18 21 -15 5 4 12 -1 15 -9 3
-9 10 -14 14 -11 4 3 11 -2 14 -11 3 -8 10 -12 16 -9 5 3 10 1 10 -5 0 -6 5
-8 10 -5 6 3 10 1 10 -5 0 -6 5 -8 10 -5 6 3 10 1 10 -5 0 -7 8 -9 19 -5 11 3
22 1 26 -5 8 -13 142 -13 151 1 3 6 17 8 30 5 14 -4 24 -2 24 4 0 6 5 8 10 5
6 -3 10 -1 10 5 0 6 4 9 10 5 5 -3 17 6 26 20 9 13 20 22 25 19 5 -3 9 0 9 6
0 6 5 8 10 5 6 -3 10 -1 10 6 0 7 2 10 5 7 7 -7 81 63 77 74 -1 5 5 11 13 14
8 3 12 10 9 15 -3 5 2 12 10 15 9 3 13 10 10 15 -3 5 0 9 6 9 6 0 8 5 5 10 -3
6 -1 10 5 10 6 0 8 5 5 10 -3 6 -2 10 4 10 6 0 8 7 5 15 -4 8 -1 15 6 15 7 0
9 8 5 19 -3 11 -2 22 2 24 14 9 4 518 -11 550 -4 9 -5 24 -2 33 4 9 1 23 -5
30 -6 8 -9 20 -6 29 4 8 2 17 -4 21 -6 3 -8 12 -5 20 3 8 1 14 -5 14 -6 0 -9
7 -5 15 3 8 1 15 -5 15 -6 0 -7 5 -4 10 3 6 1 10 -4 10 -6 0 -10 4 -8 9 1 5
-7 17 -18 26 -11 9 -13 13 -5 9 8 -4 2 7 -14 24 -32 34 -41 40 -31 20 4 -7 -5
1 -19 17 -14 17 -26 26 -26 20 0 -5 -5 -2 -11 8 -6 9 -14 15 -20 12 -5 -4 -9
-1 -9 5 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5 0 6 -4 9 -9 5 -5 -3 -12 -1 -16 4
-3 6 -12 8 -20 4 -8 -3 -15 -1 -15 4 0 10 -109 12 -116 1z m86 -471 c0 -5 3
-6 8 -4 4 2 15 -4 25 -15 9 -10 14 -18 10 -18 -4 0 -2 -5 5 -12 15 -15 16 -55
2 -63 -6 -4 -8 -15 -5 -26 4 -10 2 -19 -4 -19 -6 0 -8 -7 -5 -15 4 -8 1 -15
-6 -15 -6 0 -8 -4 -5 -10 3 -5 1 -10 -5 -10 -6 0 -9 -4 -5 -9 3 -5 1 -12 -5
-16 -6 -4 -8 -11 -5 -16 4 -5 -1 -12 -9 -15 -9 -3 -13 -10 -10 -15 3 -5 0 -9
-6 -9 -6 0 -9 -4 -6 -9 3 -5 -1 -12 -9 -15 -8 -3 -14 -9 -13 -13 4 -11 -39
-53 -46 -45 -3 3 -6 0 -6 -6 0 -18 -21 -14 -37 6 -8 9 -11 11 -7 3 5 -9 3 -12
-5 -7 -6 4 -9 11 -6 16 3 4 -2 13 -10 20 -17 14 -20 76 -5 85 6 4 8 15 5 26
-4 10 -2 19 4 19 6 0 8 7 5 15 -4 8 -1 15 6 15 7 0 10 7 6 15 -3 8 -1 15 5 15
6 0 8 4 4 9 -3 5 -1 12 5 16 6 4 8 11 5 16 -4 5 -1 9 5 9 6 0 8 5 5 10 -3 6
-1 10 4 10 6 0 10 3 10 8 -1 4 0 10 1 15 1 4 3 10 4 15 0 4 10 16 21 27 19 19
75 28 75 12z"/>
<path d="M1869 3763 c-1 -2 -2 -8 -3 -13 0 -6 -7 -15 -15 -19 -7 -5 -11 -13
-7 -19 3 -6 2 -14 -4 -17 -6 -4 -8 -16 -5 -26 4 -11 1 -26 -5 -34 -8 -10 -10
-33 -5 -74 4 -40 3 -61 -5 -66 -6 -4 -8 -15 -5 -25 3 -10 1 -21 -5 -25 -6 -4
-8 -15 -5 -25 3 -10 1 -21 -5 -25 -6 -4 -8 -15 -5 -26 4 -11 2 -19 -5 -19 -7
0 -10 -7 -7 -15 4 -8 2 -17 -3 -20 -5 -3 -7 -12 -3 -20 3 -8 0 -15 -7 -15 -7
0 -10 -7 -6 -15 3 -8 1 -15 -5 -15 -6 0 -9 -7 -6 -15 4 -8 2 -17 -3 -20 -5 -3
-7 -12 -3 -20 3 -8 0 -15 -7 -15 -7 0 -10 -7 -7 -15 4 -8 2 -17 -4 -20 -5 -4
-7 -11 -3 -16 3 -5 0 -16 -6 -24 -6 -8 -9 -19 -5 -25 4 -6 1 -17 -5 -25 -6 -8
-9 -19 -5 -25 3 -5 1 -10 -5 -10 -6 0 -9 -4 -6 -9 3 -5 -1 -12 -10 -15 -9 -3
-12 -11 -8 -18 4 -7 4 -10 0 -6 -5 4 -18 3 -30 -2 -24 -9 -60 5 -51 21 4 5 1
9 -5 9 -6 0 -8 5 -5 10 3 6 3 16 -2 23 -4 6 -9 53 -10 102 -3 97 -12 288 -16
345 -1 19 -6 41 -10 48 -5 6 -5 17 -2 22 3 6 1 10 -6 10 -7 0 -10 3 -6 6 3 3
-6 17 -21 31 -15 14 -18 19 -7 12 18 -13 19 -13 6 3 -7 10 -17 15 -22 13 -4
-3 -16 6 -25 20 -9 13 -20 22 -25 20 -4 -3 -13 4 -19 15 -6 11 -15 18 -21 15
-5 -4 -9 -1 -9 5 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5 0 6 -4 8 -10 5 -5 -3 -10
-2 -10 4 0 10 -14 9 -42 -4 -10 -4 -15 -11 -12 -16 3 -5 1 -9 -5 -9 -6 0 -8
-7 -5 -15 4 -8 1 -15 -6 -15 -7 0 -10 -6 -7 -14 3 -8 3 -17 -1 -21 -4 -4 -8
-19 -9 -33 -12 -138 -14 -204 -14 -382 0 -242 3 -311 14 -327 5 -7 5 -18 2
-23 -4 -6 -1 -17 5 -25 7 -8 9 -15 5 -15 -4 0 -2 -6 4 -13 6 -8 8 -17 4 -20
-3 -4 -1 -7 6 -7 7 0 9 -4 6 -10 -3 -5 -1 -10 5 -10 6 0 9 -4 6 -9 -3 -5 1
-12 10 -15 8 -3 12 -10 9 -16 -3 -5 -1 -10 5 -10 6 0 9 -4 5 -9 -3 -6 4 -15
15 -21 11 -6 18 -15 16 -19 -3 -4 8 -18 25 -30 16 -12 27 -26 25 -30 -3 -5 4
-17 17 -27 l22 -19 -19 25 c-11 14 -2 7 20 -15 21 -22 42 -39 47 -37 4 1 10
-5 13 -13 3 -8 10 -12 15 -9 5 3 9 1 9 -5 0 -6 7 -8 15 -5 8 4 15 1 15 -5 0
-6 7 -8 15 -5 8 4 15 2 15 -2 0 -8 120 -11 128 -4 1 1 7 4 12 5 6 1 13 4 18 5
4 1 10 2 15 1 4 0 7 4 7 10 0 5 4 8 9 5 5 -3 12 1 15 10 3 8 10 12 16 9 5 -3
10 -1 10 4 0 6 4 10 9 8 5 -1 17 7 26 18 9 11 13 13 9 5 -4 -8 7 -2 24 14 34
32 40 41 20 31 -7 -4 -3 2 9 13 12 11 19 22 16 26 -4 3 -1 6 6 6 7 0 9 5 6 10
-3 6 -1 10 5 10 6 0 8 5 5 10 -3 6 -1 10 5 10 6 0 8 5 5 10 -3 6 -1 10 5 10 7
0 10 7 6 15 -3 8 -1 15 5 15 6 0 9 7 6 15 -4 8 -2 17 3 20 5 3 7 12 4 19 -3 8
-1 17 5 20 6 4 8 13 5 20 -3 8 0 17 5 21 6 3 9 11 5 16 -3 5 -1 16 5 23 6 7 9
20 5 29 -3 8 0 18 6 22 6 4 8 15 5 26 -4 11 -2 19 5 19 6 0 8 10 4 25 -4 16
-2 25 6 25 8 0 10 9 6 24 -3 14 -1 28 4 31 6 4 8 15 5 26 -4 10 -3 24 2 31 4
7 9 27 10 43 2 17 5 59 8 95 10 108 6 224 -8 247 -4 6 -4 18 -1 27 4 9 1 16
-6 16 -7 0 -10 7 -6 15 3 8 1 15 -5 15 -6 0 -7 5 -4 10 3 6 1 10 -5 10 -6 0
-8 5 -5 10 3 6 1 10 -5 10 -6 0 -10 3 -8 8 2 4 -16 26 -39 48 -24 23 -43 39
-43 35 0 -3 -4 0 -9 7 -7 12 -78 24 -82 15z"/>
<path d="M2005 3710 c10 -11 20 -20 23 -20 3 0 -3 9 -13 20 -10 11 -20 20 -23
20 -3 0 3 -9 13 -20z"/>
<path d="M1140 3636 c0 -2 8 -10 18 -17 15 -13 16 -12 3 4 -13 16 -21 21 -21
13z"/>
<path d="M3590 2347 c0 -6 -3 -7 -7 -4 -9 9 -44 -23 -37 -34 3 -5 0 -9 -6 -9
-6 0 -8 -4 -5 -10 3 -5 1 -10 -5 -10 -6 0 -9 -4 -5 -9 3 -5 1 -12 -4 -16 -6
-3 -8 -12 -4 -20 3 -8 0 -15 -6 -15 -7 0 -9 -9 -5 -24 3 -13 1 -27 -5 -31 -6
-3 -8 -17 -5 -31 3 -13 1 -31 -6 -39 -8 -9 -9 -28 -5 -55 4 -27 3 -46 -5 -55
-8 -9 -10 -28 -5 -51 4 -24 3 -34 -4 -29 -6 3 -11 1 -11 -5 0 -7 -8 -9 -19 -5
-11 3 -22 1 -26 -5 -4 -6 -15 -8 -26 -5 -11 4 -19 2 -19 -5 0 -7 -8 -9 -19 -5
-11 3 -22 1 -26 -5 -4 -6 -15 -8 -25 -5 -10 3 -21 1 -25 -5 -3 -6 -11 -8 -16
-4 -5 3 -16 1 -23 -5 -7 -6 -21 -9 -30 -5 -9 4 -16 1 -16 -6 0 -7 -7 -10 -15
-7 -8 4 -17 2 -20 -4 -4 -5 -10 -7 -15 -4 -5 3 -20 -6 -34 -20 -20 -20 -24
-31 -19 -58 4 -26 1 -36 -11 -40 -9 -4 -16 -2 -16 4 0 6 -4 8 -9 5 -5 -3 -12
1 -15 10 -3 8 -10 13 -15 10 -5 -3 -15 2 -22 11 -12 14 -12 16 1 9 9 -4 8 -2
-2 7 -10 8 -15 17 -11 20 3 4 1 7 -5 7 -19 0 -14 38 7 59 11 11 22 17 25 13 3
-3 6 -1 6 4 0 8 25 12 125 17 27 1 46 9 58 24 19 23 23 53 7 53 -5 0 -10 9
-10 20 0 11 -5 20 -10 20 -6 0 -9 3 -8 8 3 8 -83 97 -94 97 -4 0 -14 9 -23 20
-9 11 -14 13 -10 5 4 -10 2 -9 -8 2 -8 10 -17 15 -20 11 -4 -3 -7 -1 -7 6 0 7
-4 9 -10 6 -5 -3 -10 -1 -10 5 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5 0 6 -4 9 -9
5 -5 -3 -12 -1 -16 4 -3 6 -12 8 -20 4 -8 -3 -15 -1 -15 3 0 5 -20 9 -45 9
-25 0 -45 -3 -45 -7 0 -4 -7 -5 -15 -2 -8 4 -15 1 -15 -6 0 -6 -4 -8 -10 -5
-5 3 -10 1 -10 -5 0 -6 -4 -8 -10 -5 -5 3 -10 1 -10 -5 0 -6 -4 -8 -10 -5 -5
3 -10 1 -10 -5 0 -6 -4 -8 -10 -5 -5 3 -10 1 -10 -5 0 -6 -4 -8 -10 -5 -5 3
-10 1 -10 -5 0 -6 -4 -8 -10 -5 -5 3 -10 1 -10 -5 0 -6 -4 -9 -9 -6 -5 3 -12
-1 -15 -10 -4 -9 -9 -14 -13 -10 -3 3 -13 -3 -20 -14 -8 -11 -19 -17 -25 -14
-6 4 -8 2 -4 -4 3 -6 -3 -17 -14 -25 -11 -7 -17 -17 -13 -20 3 -4 1 -7 -6 -7
-7 0 -9 -4 -6 -10 3 -5 1 -10 -5 -10 -7 0 -10 -6 -7 -14 3 -8 3 -17 0 -20 -5
-5 -7 -161 -2 -176 1 -3 1 -8 0 -12 0 -5 4 -8 9 -8 5 0 9 -4 7 -8 -1 -5 12
-21 28 -36 17 -15 23 -25 15 -21 -8 3 41 -49 110 -116 69 -68 118 -119 110
-115 -8 4 -1 -5 15 -20 17 -15 30 -31 30 -36 0 -5 7 -13 15 -18 8 -5 11 -10 5
-10 -5 0 -1 -7 9 -15 11 -8 16 -15 12 -15 -4 0 0 -7 8 -16 9 -8 14 -20 11 -25
-4 -5 -2 -9 4 -9 6 0 8 -6 5 -14 -3 -8 0 -17 6 -21 8 -5 8 -11 -1 -21 -6 -8
-8 -14 -4 -14 4 0 -5 -10 -20 -22 -25 -20 -92 -31 -98 -16 -1 3 -8 8 -16 10
-18 4 -68 51 -63 61 2 4 -2 7 -8 7 -6 0 -8 5 -5 10 3 5 1 10 -5 10 -7 0 -9 7
-6 15 3 9 -1 18 -10 22 -21 8 -64 -16 -57 -33 3 -8 0 -14 -7 -14 -6 0 -8 -4
-5 -10 3 -5 3 -16 -1 -22 -11 -17 -11 -188 -1 -195 4 -2 5 -13 2 -24 -4 -11
-2 -19 5 -19 6 0 8 -4 5 -10 -3 -5 -1 -10 4 -10 6 0 10 -4 8 -9 -1 -5 7 -17
18 -26 11 -9 13 -14 5 -10 -8 4 1 -8 20 -25 19 -17 28 -28 20 -24 -8 4 10 -18
40 -49 57 -59 66 -66 55 -44 -4 6 0 4 8 -5 8 -10 17 -15 20 -11 4 3 7 1 7 -5
0 -6 7 -9 15 -6 8 4 15 1 15 -5 0 -6 16 -11 35 -11 19 0 35 5 35 11 0 6 7 9
15 6 8 -4 17 -2 20 4 4 5 11 7 16 4 5 -4 9 -1 9 5 0 6 5 8 10 5 6 -3 10 -1 10
5 0 6 5 8 10 5 6 -3 10 -1 10 5 0 6 5 8 10 5 6 -3 13 1 16 9 3 9 10 14 15 11
4 -3 13 4 19 15 6 11 14 19 19 17 5 -1 18 9 30 23 13 14 19 18 15 10 -4 -8 15
8 42 35 27 28 48 53 46 58 -2 4 2 7 8 7 6 0 8 5 5 10 -3 6 -1 10 5 10 6 0 8 5
5 10 -3 6 -3 15 1 22 19 30 20 238 2 238 -6 0 -8 7 -5 15 4 8 2 17 -4 20 -5 4
-7 10 -4 15 3 5 1 11 -5 15 -6 4 -8 10 -5 15 3 5 1 11 -5 15 -6 4 -8 11 -5 16
4 5 1 9 -4 9 -6 0 -11 4 -11 9 0 4 21 8 48 9 26 0 71 4 100 7 33 5 52 3 52 -3
0 -6 9 -14 20 -17 11 -4 18 -10 15 -15 -3 -5 0 -12 6 -15 6 -5 8 -17 3 -34
-10 -35 -11 -251 -1 -251 5 0 5 -9 2 -20 -4 -11 -2 -20 4 -20 6 0 11 -3 10 -7
-2 -17 14 -53 24 -53 6 0 8 -3 4 -6 -3 -4 4 -15 16 -26 12 -11 15 -16 7 -12
-8 4 5 -14 29 -39 25 -26 47 -44 49 -42 3 3 11 0 19 -7 18 -15 61 -19 69 -7 3
5 10 7 15 4 5 -4 9 -1 9 5 0 7 6 10 14 7 8 -3 17 1 20 9 3 9 10 13 15 10 5 -3
14 1 21 9 7 8 9 15 4 15 -5 0 0 7 10 15 11 8 16 15 12 15 -5 0 -3 7 4 15 6 8
9 19 5 25 -4 6 -1 17 5 25 9 10 10 36 6 82 -12 117 -16 167 -19 208 -2 22 -5
45 -7 50 -2 6 -4 30 -6 55 -1 25 -5 59 -9 76 -5 23 -2 37 11 52 10 12 21 19
26 16 4 -3 8 0 8 6 0 6 5 8 10 5 6 -3 10 -1 10 5 0 6 4 9 9 5 5 -3 12 -1 16 5
4 6 11 8 16 5 5 -4 9 -1 9 5 0 7 7 10 15 6 8 -3 15 -1 15 5 0 6 7 9 15 5 8 -3
15 -1 15 5 0 6 7 9 15 5 8 -3 15 -1 15 5 0 6 7 9 15 5 8 -3 15 -1 15 5 0 6 7
9 15 5 8 -3 15 -1 15 5 0 6 7 9 15 5 8 -3 15 -1 15 4 0 5 7 7 15 4 8 -4 15 -1
15 6 0 6 5 8 10 5 6 -3 10 -1 10 5 0 7 7 10 15 6 8 -3 15 -1 15 5 0 6 4 8 9 4
5 -3 12 -1 16 5 4 6 11 8 16 5 5 -4 9 -1 9 5 0 6 5 8 10 5 6 -3 10 -1 10 5 0
6 5 8 10 5 6 -3 10 -1 10 5 0 6 5 8 10 5 6 -3 10 -1 10 5 0 6 5 8 10 5 6 -3
10 -1 10 4 0 6 3 10 8 9 4 -2 20 10 35 26 23 23 29 38 30 82 2 30 -1 54 -6 54
-4 0 -5 5 -2 11 4 6 -1 17 -11 24 -11 8 -16 15 -13 15 4 0 -12 19 -35 42 -22
23 -44 41 -48 40 -5 -1 -8 3 -8 9 0 5 -4 7 -10 4 -5 -3 -10 -3 -10 2 0 4 -80
8 -178 8 -159 0 -179 2 -195 18 -13 13 -17 28 -14 45 3 17 -1 31 -11 40 -12 9
-12 11 -2 6 8 -5 -19 25 -60 65 -41 41 -79 73 -83 73 -4 -1 -10 5 -13 13 -3 8
-10 12 -15 9 -5 -3 -9 0 -9 6 0 6 -4 9 -9 5 -5 -3 -12 -1 -15 4 -8 12 -56 11
-56 -2z"/>
<path d="M3780 2255 c13 -14 26 -25 28 -25 3 0 -5 11 -18 25 -13 14 -26 25
-28 25 -3 0 5 -11 18 -25z"/>
<path d="M1205 2039 c-4 -6 -13 -8 -21 -5 -8 3 -14 1 -14 -5 0 -6 -4 -8 -9 -5
-4 3 -19 -6 -31 -19 -13 -14 -19 -25 -14 -25 5 0 1 -5 -9 -11 -9 -6 -15 -14
-12 -19 3 -5 1 -11 -5 -15 -6 -4 -8 -11 -5 -16 4 -5 1 -9 -5 -9 -7 0 -10 -7
-7 -15 4 -8 2 -17 -4 -20 -5 -4 -7 -11 -3 -16 3 -5 0 -16 -6 -24 -6 -8 -9 -19
-5 -25 4 -6 3 -19 -1 -28 -10 -20 -13 -64 -19 -237 -2 -71 -5 -147 -6 -167 0
-21 -6 -38 -11 -38 -6 0 -8 -6 -6 -12 5 -14 -27 -50 -36 -40 -3 3 -6 1 -6 -4
0 -5 -26 -9 -57 -9 -41 0 -63 5 -75 18 -20 19 -24 72 -8 82 6 4 8 15 5 26 -4
11 -2 19 5 19 7 0 9 8 5 20 -4 12 -2 20 5 20 7 0 9 8 5 19 -3 11 -1 22 4 25
13 8 12 124 0 132 -5 3 -7 14 -4 25 4 10 2 19 -4 19 -6 0 -8 7 -5 15 4 8 1 15
-6 15 -6 0 -8 5 -5 10 3 6 1 10 -5 10 -6 0 -8 5 -5 10 3 6 1 10 -5 10 -6 0 -9
4 -6 9 3 5 -1 12 -10 15 -8 3 -13 10 -10 14 7 11 -48 65 -57 56 -4 -4 -9 1
-13 10 -3 9 -10 13 -15 10 -5 -3 -9 0 -9 5 0 6 -3 10 -7 10 -5 -1 -10 0 -13 1
-27 11 -103 15 -144 8 -23 -4 -64 -40 -59 -50 2 -5 0 -8 -6 -8 -6 0 -8 -6 -5
-14 3 -8 1 -17 -5 -21 -6 -3 -8 -17 -5 -30 3 -13 2 -30 -3 -37 -4 -7 -9 -71
-10 -143 -4 -217 -9 -310 -17 -323 -4 -6 -5 -16 -1 -22 7 -11 -30 -51 -39 -42
-3 3 -6 0 -6 -7 0 -8 -7 -11 -15 -7 -8 3 -15 1 -15 -5 0 -6 -7 -9 -15 -5 -8 3
-15 1 -15 -5 0 -6 -7 -9 -15 -6 -8 4 -17 2 -20 -3 -3 -5 -12 -7 -20 -3 -8 3
-15 0 -15 -7 0 -6 -4 -9 -9 -5 -5 3 -12 1 -16 -5 -4 -6 -11 -8 -16 -5 -5 4 -9
1 -9 -6 0 -7 -3 -10 -6 -7 -3 3 -15 -4 -27 -16 -16 -16 -22 -34 -22 -69 0 -26
3 -47 7 -47 4 0 5 -7 2 -15 -4 -8 -1 -15 6 -15 6 0 8 -5 5 -10 -3 -6 -1 -10 4
-10 6 0 10 -3 9 -7 -2 -5 10 -20 25 -35 15 -15 27 -24 27 -20 0 4 7 -2 16 -13
8 -11 18 -20 22 -21 9 0 146 -137 146 -146 1 -4 10 -14 21 -23 11 -9 13 -14 5
-10 -8 4 -6 -1 4 -9 11 -9 16 -16 10 -16 -5 0 -1 -5 9 -11 9 -6 15 -14 12 -20
-4 -5 -1 -9 4 -9 6 0 10 -4 8 -9 -1 -4 9 -18 23 -30 14 -13 18 -19 10 -15 -8
4 -2 -7 14 -24 16 -17 33 -29 38 -26 4 3 11 -2 14 -10 3 -9 10 -13 15 -10 5 3
12 -2 15 -10 3 -9 10 -13 15 -10 5 3 9 0 9 -6 0 -7 7 -10 15 -6 8 3 15 2 15
-3 0 -5 18 -8 40 -7 22 0 40 5 40 10 0 5 3 7 6 4 7 -8 51 35 47 45 -2 4 -1 7
4 7 10 0 10 141 0 158 -5 7 -6 21 -2 31 3 11 1 22 -5 26 -7 4 -9 18 -6 30 3
13 2 27 -4 30 -26 16 9 87 38 77 7 -2 12 2 12 8 0 7 8 9 20 5 12 -4 20 -2 20
5 0 7 7 10 15 6 8 -3 15 -1 15 5 0 6 7 9 15 5 8 -3 15 -1 15 5 0 6 4 7 10 4 5
-3 19 5 30 18 33 38 75 30 130 -24 24 -24 44 -47 45 -50 0 -4 11 -17 25 -29
14 -12 18 -18 10 -14 -10 5 -9 1 4 -14 10 -12 23 -19 27 -16 5 3 9 0 9 -6 0
-6 5 -8 10 -5 6 3 10 1 10 -4 0 -6 4 -10 9 -8 4 1 18 -9 30 -23 13 -14 20 -18
16 -10 -4 8 1 6 10 -5 9 -11 21 -19 26 -18 5 2 9 -2 9 -8 0 -5 5 -7 10 -4 6 3
10 1 10 -5 0 -6 5 -8 10 -5 6 3 10 1 10 -4 0 -22 48 -10 78 19 18 17 32 32 32
35 0 3 0 6 1 8 4 18 2 97 -3 97 -4 0 -5 7 -2 15 4 8 1 15 -6 15 -6 0 -8 4 -5
10 3 6 1 10 -5 10 -7 0 -10 7 -6 15 3 8 1 15 -5 15 -6 0 -9 7 -6 15 4 8 2 17
-4 21 -6 3 -8 12 -5 20 3 7 1 16 -5 20 -6 3 -8 13 -5 21 4 9 1 22 -5 29 -6 7
-8 18 -4 24 4 6 1 17 -5 25 -7 8 -9 22 -6 31 3 9 3 21 -1 27 -5 7 -9 26 -10
42 -5 58 -12 141 -19 198 -4 37 -2 63 5 71 6 7 9 21 5 30 -4 9 -1 16 6 16 7 0
10 7 7 15 -4 8 -2 17 4 20 5 4 7 11 3 16 -3 5 -1 16 5 23 6 7 9 21 5 30 -3 9
-1 16 6 16 7 0 9 8 5 20 -4 12 -3 26 2 33 11 15 11 197 0 215 -5 6 -5 12 -1
12 3 0 1 7 -6 15 -7 8 -9 15 -4 15 4 0 -1 7 -12 16 -10 8 -12 12 -4 8 8 -4 2
7 -14 24 -16 17 -33 29 -38 26 -4 -3 -8 0 -8 6 0 6 -4 8 -10 5 -5 -3 -10 -1
-10 5 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5 0 6 -4 9 -9 5 -5 -3 -12 -1 -16 4 -3
6 -12 8 -19 5 -8 -3 -17 -1 -21 5 -3 6 -15 11 -25 11 -10 0 -22 -5 -25 -11z
m-84 -1146 c13 -16 12 -17 -3 -4 -10 7 -18 15 -18 17 0 8 8 3 21 -13z m-766
-113 c10 -11 16 -20 13 -20 -3 0 -13 9 -23 20 -10 11 -16 20 -13 20 3 0 13 -9
23 -20z"/>
<path d="M1873 1927 c-3 -5 -11 -6 -19 -3 -8 3 -14 1 -14 -5 0 -6 -7 -9 -15
-5 -8 3 -15 1 -15 -5 0 -6 -4 -7 -10 -4 -5 3 -10 1 -10 -5 0 -6 -4 -9 -9 -5
-5 3 -16 -1 -24 -9 -8 -8 -17 -12 -21 -9 -3 4 -6 1 -6 -6 0 -7 -4 -10 -9 -7
-5 3 -12 -1 -15 -10 -4 -9 -9 -15 -11 -12 -7 7 -91 -75 -87 -84 2 -5 -2 -8 -8
-8 -6 0 -8 -4 -5 -10 3 -5 1 -10 -5 -10 -6 0 -8 -4 -5 -10 3 -5 1 -10 -5 -10
-6 0 -8 -4 -5 -10 3 -5 1 -10 -5 -10 -7 0 -10 -7 -6 -15 3 -8 1 -15 -4 -15 -5
0 -7 -7 -4 -15 4 -8 1 -15 -6 -15 -7 0 -10 -7 -7 -15 4 -8 2 -17 -4 -20 -5 -4
-7 -11 -3 -16 3 -5 1 -16 -5 -23 -6 -7 -9 -20 -5 -29 3 -8 1 -18 -5 -21 -6 -4
-8 -20 -5 -35 3 -16 2 -31 -3 -34 -10 -6 -9 -209 1 -226 4 -6 4 -15 1 -21 -3
-5 -1 -10 5 -10 6 0 9 -4 5 -9 -3 -5 1 -16 9 -24 8 -8 12 -17 9 -21 -4 -3 -1
-6 5 -6 7 0 11 -4 9 -9 -1 -5 7 -17 18 -26 11 -9 13 -13 5 -10 -8 4 -1 -5 15
-20 17 -14 23 -24 15 -20 -8 4 2 -9 24 -28 21 -19 54 -52 73 -73 19 -22 32
-32 28 -24 -4 8 2 5 13 -7 11 -12 22 -19 26 -16 3 3 8 -2 12 -11 3 -9 10 -13
15 -10 5 3 12 -2 15 -10 3 -9 10 -13 15 -10 5 3 9 0 9 -6 0 -6 5 -8 10 -5 6 3
10 1 10 -5 0 -6 4 -9 9 -5 5 3 12 1 16 -5 4 -6 10 -8 15 -5 5 3 11 2 13 -3 7
-10 128 -9 145 2 7 4 21 4 32 1 12 -4 20 -2 20 5 0 7 7 10 15 7 8 -4 17 -2 20
4 4 5 10 7 15 4 5 -3 11 -1 15 5 4 6 11 8 16 5 5 -4 9 -1 9 5 0 6 5 8 10 5 6
-3 10 -1 10 5 0 6 5 8 10 5 6 -3 10 -1 10 4 0 6 3 10 8 8 9 -3 58 46 55 55 -2
5 2 8 8 8 5 0 7 5 4 10 -3 6 1 13 9 16 9 3 13 10 10 15 -3 5 0 9 6 9 6 0 8 5
5 10 -3 6 1 13 9 16 9 3 13 10 10 15 -3 5 0 9 6 9 6 0 8 5 5 10 -3 6 -1 10 5
10 6 0 8 5 5 10 -3 6 -1 10 5 10 6 0 8 5 5 10 -3 6 -1 10 5 10 6 0 8 5 5 10
-3 6 -1 10 5 10 6 0 8 5 5 10 -3 6 -1 10 5 10 6 0 8 5 5 10 -3 6 -1 10 5 10 6
0 9 4 5 9 -3 5 -1 12 5 16 6 4 8 11 5 16 -4 5 -1 9 5 9 6 0 8 5 5 10 -3 6 -1
10 5 10 6 0 8 5 5 10 -3 6 -1 10 5 10 6 0 8 5 5 10 -3 6 -2 10 3 10 5 0 7 17
5 38 -2 20 -5 51 -6 67 -1 17 -6 35 -10 42 -4 7 -5 23 -1 36 3 14 1 28 -6 32
-6 4 -8 16 -5 26 4 11 1 26 -5 34 -6 8 -9 19 -5 25 4 6 1 17 -5 25 -6 8 -9 19
-6 24 4 5 2 12 -4 16 -6 4 -8 11 -5 16 4 5 1 9 -5 9 -6 0 -9 4 -5 9 3 5 -2 17
-11 25 -8 9 -12 16 -8 16 4 0 -6 12 -22 27 -16 15 -33 26 -37 25 -4 -1 -10 5
-13 13 -3 8 -10 12 -15 9 -5 -3 -9 0 -9 6 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5
0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5 0 6 -4
8 -10 5 -5 -3 -10 -2 -10 4 0 6 -7 8 -15 5 -8 -4 -15 -1 -15 6 0 6 -4 8 -10 5
-5 -3 -10 -1 -10 5 0 6 -4 8 -10 5 -5 -3 -10 -1 -10 5 0 6 -4 8 -10 5 -5 -3
-10 -1 -10 5 0 7 -7 10 -15 6 -8 -3 -15 -1 -15 5 0 6 -4 7 -10 4 -5 -3 -10 -1
-10 5 0 7 -7 10 -15 6 -8 -3 -15 -1 -15 5 0 6 -4 8 -9 4 -5 -3 -12 -1 -16 5
-4 6 -10 8 -15 5 -5 -3 -11 -1 -15 4 -3 6 -12 8 -20 4 -8 -3 -15 -1 -15 5 0
11 -80 11 -87 -1z m157 -437 c15 -16 25 -32 22 -35 -3 -3 0 -5 7 -5 7 0 9 -4
6 -10 -3 -5 -2 -10 2 -10 6 0 10 -82 4 -97 -1 -2 -1 -6 -2 -10 0 -5 -8 -16
-16 -25 -9 -10 -13 -18 -10 -18 3 0 -4 -10 -16 -23 -12 -13 -25 -22 -29 -20
-5 2 -8 -1 -8 -7 0 -6 -4 -8 -10 -5 -5 3 -10 1 -10 -5 0 -6 -6 -10 -12 -9 -7
1 -20 -1 -29 -5 -11 -5 -26 2 -45 22 -24 24 -29 37 -30 80 0 29 4 52 9 52 5 0
7 7 3 15 -3 8 -1 15 5 15 6 0 7 5 4 10 -3 6 -1 10 5 10 6 0 8 5 5 10 -3 6 -1
10 5 10 6 0 9 4 5 9 -3 6 4 15 15 21 11 6 17 16 14 22 -4 7 -3 8 5 4 6 -4 14
0 17 8 3 9 10 13 15 10 5 -3 9 0 9 5 0 21 32 11 60 -19z m-149 -267 c13 -16
12 -17 -3 -4 -17 13 -22 21 -14 21 2 0 10 -8 17 -17z"/>
<path d="M1634 1808 l-19 -23 23 19 c12 11 22 21 22 23 0 8 -8 2 -26 -19z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 23 KiB

1763
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -4,7 +4,7 @@
"description": "Programming related icons collection",
"main": "devicon.min.css",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
"build-css": "gulp updateCss && gulp clean"
},
"repository": {
"type": "git",
@ -24,8 +24,7 @@
"homepage": "http://konpa.github.io/devicon/",
"devDependencies": {
"gulp": "^4.0.0",
"gulp-concat-css": "^2.0.0",
"gulp-minify-css": "^0.4.3",
"gulp-plumber": "^0.6.6"
"gulp-sass": "^4.1.0",
"sass": "^1.26.10"
}
}