restservice development
|
|
@ -0,0 +1,10 @@
|
|||
mllm_end_point_openai='https://hiis-accessibility-fonderia.cognitiveservices.azure.com/openai/deployments/gpt-4o/chat/completions?api-version=2025-01-01-preview'
|
||||
mllm_api_key_openai=
|
||||
mllm_model_id_openai='gpt-4o'
|
||||
|
||||
mllm_end_point_local='https://vgpu.hiis.cloud.isti.cnr.it/api/chat'
|
||||
mllm_api_key_local=
|
||||
#mllm_model_id_local='gemma3:12b'
|
||||
mllm_model_id_local='gemma3:4b'
|
||||
|
||||
use_openai_model='False'
|
||||
19
README.md
|
|
@ -6,6 +6,21 @@
|
|||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
- Start the application
|
||||
# .env variable
|
||||
|
||||
LLM_accessibility_validator/wcag_validator.py
|
||||
mllm_end_point_openai='https://hiis-accessibility-fonderia.cognitiveservices.azure.com/openai/deployments/gpt-4o/chat/completions?api-version=2025-01-01-preview'
|
||||
mllm_api_key_openai=
|
||||
mllm_model_id_openai='gpt-4o'
|
||||
|
||||
mllm_end_point_local='https://vgpu.hiis.cloud.isti.cnr.it/api/chat'
|
||||
mllm_api_key_local=
|
||||
#mllm_model_id_local='gemma3:12b'
|
||||
mllm_model_id_local='gemma3:4b'
|
||||
|
||||
use_openai_model='False' # use 'True' if openai else False
|
||||
|
||||
## For the CLI version use:
|
||||
wcag_validator.py
|
||||
|
||||
## For the restService use:
|
||||
python wcag_validator_RESTserver.py
|
||||
|
|
@ -5,7 +5,7 @@ from urllib.parse import urljoin, urlparse
|
|||
from typing import List, Dict, Optional
|
||||
import json
|
||||
import argparse
|
||||
from utils import disclaim_bool_string, prepare_output_folder, create_folder
|
||||
from dependences.utils import disclaim_bool_string, prepare_output_folder, create_folder
|
||||
import requests
|
||||
import os
|
||||
|
||||
|
|
@ -77,11 +77,10 @@ class ImageExtractor:
|
|||
except Exception as e:
|
||||
print(f"Error downloading {image_url}: {e}")
|
||||
|
||||
async def save_elaboration(self,images,output_dir)->None:
|
||||
async def save_elaboration(self, images, output_dir) -> None:
|
||||
with open(output_dir, "w", encoding="utf-8") as f:
|
||||
json.dump(images, f, indent=2, ensure_ascii=False)
|
||||
print("\nResults saved to extracted_images.json")
|
||||
|
||||
|
||||
async def _get_element_context(self, page, img_element) -> tuple[str, str, str]:
|
||||
"""
|
||||
|
|
@ -307,7 +306,7 @@ class ImageExtractor:
|
|||
|
||||
return metadata
|
||||
|
||||
async def extract_images(self) -> List[Dict]:
|
||||
async def extract_images(self, specific_images_urls=[]) -> List[Dict]:
|
||||
"""
|
||||
Extract all images from the page with their metadata and context.
|
||||
|
||||
|
|
@ -330,20 +329,35 @@ class ImageExtractor:
|
|||
# Get page metadata once
|
||||
page_metadata = await self._get_page_metadata(page)
|
||||
|
||||
# Find all img elements
|
||||
img_elements = await page.locator("img").all()
|
||||
if len(specific_images_urls) == 0:
|
||||
# Find all img elements
|
||||
print("Extracting all images from the page")
|
||||
img_elements = await page.locator("img").all()
|
||||
else:
|
||||
print("Extracting specific images from the page:", specific_images_urls)
|
||||
img_elements = []
|
||||
for url in specific_images_urls:
|
||||
try:
|
||||
img_element = await page.locator(
|
||||
f'img[src="{url}"]'
|
||||
).first.element_handle() # Use first() to get only the first match
|
||||
if img_element:
|
||||
img_elements.append(img_element)
|
||||
except Exception as e:
|
||||
print(f"Error locating image with src {url}: {str(e)}")
|
||||
|
||||
image_source_list = [] # avoid multiple check for the same image url
|
||||
images_data = []
|
||||
|
||||
for img in img_elements[
|
||||
0 : self.number_of_images
|
||||
]: # limits the image list based on the ini param
|
||||
|
||||
for img in img_elements:
|
||||
if len(images_data) >= self.number_of_images: # limits the effective image list based on the ini param.
|
||||
print("Reached the maximum number of images to extract.",self.number_of_images)
|
||||
break
|
||||
try:
|
||||
# Get image src
|
||||
src = await img.get_attribute("src")
|
||||
if not src:
|
||||
print("image has no src attribute. Skipped.")
|
||||
continue
|
||||
|
||||
if src not in image_source_list:
|
||||
|
|
@ -358,6 +372,9 @@ class ImageExtractor:
|
|||
|
||||
# Verify format
|
||||
if not self._is_supported_format(img_url):
|
||||
print(
|
||||
"image format not supported for url:", img_url, ". Skipped."
|
||||
)
|
||||
continue
|
||||
|
||||
if disclaim_bool_string(self.save_images) == True:
|
||||
|
|
@ -449,7 +466,7 @@ async def main(args):
|
|||
|
||||
# Extract images
|
||||
print(f"Extracting images from: {url}")
|
||||
images = await extractor.extract_images()
|
||||
images = await extractor.extract_images(specific_images_urls=[])
|
||||
|
||||
print(f"\nFound {len(images)} supported images\n")
|
||||
|
||||
|
|
@ -467,8 +484,9 @@ async def main(args):
|
|||
|
||||
if disclaim_bool_string(args.save_elaboration) == True: # Optionally save to JSON
|
||||
|
||||
await extractor.save_elaboration(images,output_dir=output_dir + "/extracted_images.json")
|
||||
|
||||
await extractor.save_elaboration(
|
||||
images, output_dir=output_dir + "/extracted_images.json"
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
|
@ -0,0 +1,230 @@
|
|||
from dependences.utils import call_API_urlibrequest, encode_image_from_url
|
||||
|
||||
|
||||
class MLLMManager:
|
||||
def __init__(self, end_point, api_key, model_id):
|
||||
self.end_point = end_point
|
||||
self.api_key = api_key
|
||||
self.model_id = model_id
|
||||
|
||||
def get_response(self, system_prompt, user_prompt, openai_model=False):
|
||||
payload = self.create_mllm_payload(
|
||||
system_prompt, user_prompt, openai_model=openai_model
|
||||
)
|
||||
# print("LLM full payload:", payload)
|
||||
headers = [
|
||||
["Content-Type", "application/json"],
|
||||
["Authorization", f"Bearer {self.api_key}"],
|
||||
]
|
||||
response = call_API_urlibrequest(
|
||||
url=self.end_point, headers=headers, data=payload
|
||||
)
|
||||
|
||||
if openai_model:
|
||||
model_response = response["choices"][0]["message"]["content"]
|
||||
else:
|
||||
model_response = response["message"]["content"]
|
||||
|
||||
return model_response
|
||||
|
||||
def create_mllm_payload(
|
||||
self,
|
||||
system_prompt,
|
||||
user_prompt,
|
||||
openai_model=False,
|
||||
):
|
||||
if openai_model:
|
||||
print("Creating OpenAI format payload")
|
||||
payload = {
|
||||
"messages": [
|
||||
{"role": "system", "content": system_prompt},
|
||||
{"role": "user", "content": user_prompt},
|
||||
],
|
||||
"temperature": 0.7,
|
||||
"top_p": 0.95,
|
||||
"frequency_penalty": 0,
|
||||
"presence_penalty": 0,
|
||||
"max_tokens": 800,
|
||||
"stop": None,
|
||||
}
|
||||
else: # ollama format
|
||||
print("Creating alternative LLM format payload")
|
||||
payload = {
|
||||
"model": self.model_id,
|
||||
"stream": False,
|
||||
"messages": [
|
||||
{"role": "system", "content": system_prompt},
|
||||
{
|
||||
"role": "user",
|
||||
"content": user_prompt["user_prompt"],
|
||||
"images": [user_prompt["image_base64"]],
|
||||
},
|
||||
],
|
||||
"options": {
|
||||
"seed": 123,
|
||||
"temperature": 0.7,
|
||||
"num_ctx": 8192, # max input token
|
||||
"num_predict": 800, # max output tokens
|
||||
"top_p": 0.95,
|
||||
},
|
||||
}
|
||||
return payload
|
||||
|
||||
def get_alt_text_system_prompt(self):
|
||||
system_prompt_old = """You are a web accessibility evaluation tool. Your task is to evaluate if alterative text for
|
||||
images on webpages are appropriate according to WCAG guidelines. The alt-text should serve the same purpose and present
|
||||
the same information as the image, and should be able to substitute for the non-text content. The text alternative would
|
||||
be brief but as informative as possible.
|
||||
|
||||
Follow these instructions carefully:
|
||||
1. You will be provided as input with the following:
|
||||
- The image found on the webpage.
|
||||
- The associated alternative text. When the alt-text is empty or absent, you will be explicitly informed.
|
||||
- The surrounding context of the image.
|
||||
- The page title, headings and the content of the “keywords” and “description” <meta> tag, if found.
|
||||
|
||||
2. Determine the function and purpose of the image by analyzing these elements. Take into account the purpose and function
|
||||
of the associated image by considering the page context. Check also if the image is, or is associated with, a link or a button,
|
||||
and consider this in your judgement. If the image contains text use that as part of the context.
|
||||
|
||||
3. Provide a final assessment based on the following:
|
||||
- 'success' if you can assess with 'sufficient certainty' the alt-text is appropriate in relation to the image purpose,
|
||||
- 'failure' if you can assess with 'sufficient certainty' that the alt-text is NOT appropriate,
|
||||
- 'warning' if you cannot determine with 'sufficient certainty'.
|
||||
where the level of certainty goes from 1 to 100 and 'sufficient certainty' means > 80
|
||||
|
||||
4. The original alt-text assessment on a scale from 1 to 5, where 5 is the best score. Use an integer number only.
|
||||
|
||||
5. Provide a brief reasoning for your judgment. If the image contains text, write it verbatim. Your response should be in English.
|
||||
|
||||
6. Keep your response within 150 words.
|
||||
|
||||
7. Generate the new most appropriate alt-text given the context and the steps before. Keep this within 30 words.
|
||||
|
||||
8. Here is the JSON format the results must have:
|
||||
{"Original alt-text assessment" : "*your original alt-text assessment*", "Assessment" : "*your assessment*", "EvaluationResult": "*your response*", "New alt-text":"*new alt-text*"}"""
|
||||
|
||||
# https://www.w3.org/WAI/WCAG22/Techniques/general/G94 without examples
|
||||
system_prompt = """You are a web accessibility evaluation tool. Your task is to evaluate if alterative text for
|
||||
images on webpages are appropriate according to WCAG guidelines. The alt-text should serve the same purpose and present
|
||||
the same information as the original image content. As a result, it is possible to remove the image content and replace it with the text alternative and no functionality or information would be lost. This text alternative should not necessarily describe the image content.
|
||||
It should serve the same purpose and convey the same information. This may sometimes result in a text alternative that looks like a description of the image content. But this would only be true if that was the best way to serve the same purpose.
|
||||
If possible, the short text alternative should completely convey the purpose and information. If it is not possible to do this in a short phrase or sentence, then the short text alternative should provide a brief overview of the information.
|
||||
The text alternative should be able to substitute for the image content. If the image content were removed from the page and substituted with the text, the page would still provide the same function and information. The text alternative would be brief but as informative as possible.
|
||||
In deciding what text to include in the alternative, it is often a good idea to consider the following questions:
|
||||
Why is this image content here?
|
||||
What information is it presenting?
|
||||
What purpose does it fulfill?
|
||||
If I could not use the image content, what words would I use to convey the same function and/or information?
|
||||
|
||||
When image content contains words that are important to understanding the content, the alt text should include those words
|
||||
|
||||
Follow these instructions carefully:
|
||||
1. You will be provided as input with the following:
|
||||
- The image found on the webpage.
|
||||
- The associated alternative text. When the alt-text is empty or absent, you will be explicitly informed.
|
||||
- The surrounding context of the image.
|
||||
- The page title, headings and the content of the “keywords” and “description” <meta> tag, if found.
|
||||
|
||||
2. Determine the function and purpose of the image by analyzing these elements. Take into account the purpose and function
|
||||
of the associated image by considering the page context. Check also if the image is, or is associated with, a link or a button,
|
||||
and consider this in your judgement. If the image contains text use that as part of the context.
|
||||
|
||||
3. Provide a final assessment based on the following:
|
||||
- 'success' if you can assess with 'sufficient certainty' the alt-text is appropriate in relation to the image purpose,
|
||||
- 'failure' if you can assess with 'sufficient certainty' that the alt-text is NOT appropriate,
|
||||
- 'warning' if you cannot determine with 'sufficient certainty'.
|
||||
where the level of certainty goes from 1 to 100 and 'sufficient certainty' means > 80
|
||||
|
||||
4. The original alt-text assessment on a scale from 1 to 5, where 5 is the best score. Use an integer number only.
|
||||
|
||||
5. Provide a brief reasoning for your judgment. If the image contains text, write it verbatim. Your response should be in English.
|
||||
|
||||
6. Keep your response within 150 words.
|
||||
|
||||
7. Generate the new most appropriate alt-text given the context and the steps before. Keep this within 30 words.
|
||||
|
||||
8. Here is the JSON format the results must have:
|
||||
{"Original alt-text assessment" : "*your original alt-text assessment*", "Assessment" : "*your assessment*", "EvaluationResult": "*your response*", "New alt-text":"*new alt-text*"}"""
|
||||
|
||||
return system_prompt
|
||||
|
||||
def get_alt_text_user_prompt( # the user_prompt is specific to the platform used (openai, ollama)
|
||||
self, altTextMessage, imageURL, HTMLcontext, pageText, openai_model=True
|
||||
):
|
||||
|
||||
if openai_model:
|
||||
user_prompt = [
|
||||
{"type": "text", "text": altTextMessage},
|
||||
{"type": "image_url", "image_url": {"url": imageURL}},
|
||||
{"type": "text", "text": HTMLcontext},
|
||||
{"type": "text", "text": pageText},
|
||||
]
|
||||
else:
|
||||
user_prompt = {
|
||||
"user_prompt": altTextMessage + " " + HTMLcontext + " " + pageText,
|
||||
"image_base64": encode_image_from_url(imageURL),
|
||||
}
|
||||
|
||||
return user_prompt
|
||||
|
||||
def make_alt_text_evaluation(
|
||||
self,
|
||||
images,
|
||||
openai_model=False,
|
||||
):
|
||||
print("Using end_point:", self.end_point)
|
||||
|
||||
alt_text_system_prompt = self.get_alt_text_system_prompt()
|
||||
print("alt_text_system_prompt:", alt_text_system_prompt)
|
||||
|
||||
mllm_responses = []
|
||||
for img_info in images:
|
||||
alt_text = "Here is the alt-text of the image: " + img_info["alt_text"]
|
||||
image_URL = img_info["url"]
|
||||
HTML_context = (
|
||||
"Here is the surrounding HTML context of the element: "
|
||||
+ img_info["html_context"]
|
||||
)
|
||||
page_text = "Here is the content of the page: Title of the page: " + str(
|
||||
img_info["page_title"]
|
||||
)
|
||||
page_text = (
|
||||
page_text
|
||||
+ ", content of the <meta name='description'> tag: "
|
||||
+ str(img_info["page_description"])
|
||||
)
|
||||
page_text = (
|
||||
page_text
|
||||
+ ", content of the <meta name='keywords'> tag: "
|
||||
+ str(img_info["page_keywords"])
|
||||
)
|
||||
# skip headings
|
||||
|
||||
print("Processing image URL:", image_URL)
|
||||
print("Alt-text:", alt_text)
|
||||
print("HTML context:", HTML_context)
|
||||
print("Page text:", page_text)
|
||||
|
||||
alt_text_user_prompt = self.get_alt_text_user_prompt(
|
||||
altTextMessage=alt_text,
|
||||
imageURL=image_URL,
|
||||
HTMLcontext=HTML_context,
|
||||
pageText=page_text,
|
||||
openai_model=openai_model,
|
||||
)
|
||||
# print("alt_text_user_prompt:", alt_text_user_prompt)
|
||||
|
||||
mllm_response = self.get_response(
|
||||
system_prompt=alt_text_system_prompt,
|
||||
user_prompt=alt_text_user_prompt,
|
||||
openai_model=openai_model,
|
||||
)
|
||||
|
||||
report = {
|
||||
"image_url": image_URL,
|
||||
"alt_text": img_info["alt_text"],
|
||||
"mllm_response": mllm_response,
|
||||
}
|
||||
mllm_responses.append(report)
|
||||
return mllm_responses
|
||||
|
|
@ -4,6 +4,9 @@ import urllib.request
|
|||
import urllib.parse
|
||||
import logging
|
||||
import os
|
||||
import requests
|
||||
import base64
|
||||
import sqlite3
|
||||
|
||||
exception_msg = "Exception: %s"
|
||||
|
||||
|
|
@ -122,3 +125,86 @@ def create_folder(root_path, directory_separator, next_path):
|
|||
|
||||
exit(1)
|
||||
return output_dir
|
||||
|
||||
|
||||
def encode_image_from_url(image_url):
|
||||
response = requests.get(image_url)
|
||||
return base64.b64encode(response.content).decode("utf-8")
|
||||
|
||||
|
||||
def db_persistence_startup(
|
||||
db_name_and_path="persistence/wcag_validator.db",
|
||||
table="wcag_validator_results",
|
||||
):
|
||||
|
||||
try:
|
||||
|
||||
_ = create_folder(
|
||||
root_path=os.getcwd(),
|
||||
directory_separator="/",
|
||||
next_path="persistence",
|
||||
)
|
||||
|
||||
except Exception as e:
|
||||
logging.error("exception on db persistence startup:%s", e)
|
||||
|
||||
exit(1)
|
||||
try:
|
||||
db_connection = sqlite3.connect(db_name_and_path)
|
||||
cursor = db_connection.cursor()
|
||||
# Create a table to store JSON data
|
||||
cursor.execute(
|
||||
"""CREATE TABLE IF NOT EXISTS """
|
||||
+ table
|
||||
+ """ (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
insertion_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
insert_type TEXT,
|
||||
json_input_data TEXT, json_output_data TEXT
|
||||
)"""
|
||||
)
|
||||
|
||||
db_connection.commit()
|
||||
logging.info("connection to the database established")
|
||||
return db_connection
|
||||
|
||||
except Exception as e:
|
||||
|
||||
logging.error("db_management problem:%s", e)
|
||||
exit(1)
|
||||
|
||||
|
||||
def db_persistence_insert(
|
||||
connection_db,
|
||||
insert_type,
|
||||
json_in_str,
|
||||
json_out_str,
|
||||
table="wcag_validator_results",
|
||||
):
|
||||
|
||||
try:
|
||||
cursor = connection_db.cursor()
|
||||
|
||||
# Insert JSON data into the table along with the current timestamp
|
||||
cursor.execute(
|
||||
"INSERT INTO "
|
||||
+ table
|
||||
+ " (insert_type,json_input_data,json_output_data) VALUES (?,?,?)",
|
||||
(insert_type, json_in_str, json_out_str),
|
||||
)
|
||||
connection_db.commit()
|
||||
logging.info(
|
||||
"Data correctly saved on local db table:%s, insertion type:%s",
|
||||
table,
|
||||
insert_type,
|
||||
)
|
||||
except Exception as e:
|
||||
logging.error("exception" + " %s", e)
|
||||
|
||||
|
||||
def return_from_env_valid(env_val, default_val):
|
||||
env_val = env_val.upper() # to align with uppercase convention in env files
|
||||
|
||||
val = os.getenv(env_val, default_val)
|
||||
|
||||
return val
|
||||
|
|
@ -1,70 +0,0 @@
|
|||
from utils import call_API_urlibrequest
|
||||
|
||||
|
||||
class MLLMManager:
|
||||
def __init__(self, end_point, api_key):
|
||||
self.end_point = end_point
|
||||
self.api_key = api_key
|
||||
|
||||
def get_response(self, system_prompt, user_prompt):
|
||||
payload = self.create_mllm_payload(system_prompt, user_prompt)
|
||||
headers = [
|
||||
["Content-Type", "application/json"],
|
||||
["Authorization", f"Bearer {self.api_key}"]
|
||||
]
|
||||
response = call_API_urlibrequest(url=self.end_point, headers=headers, data=payload)
|
||||
return response
|
||||
|
||||
def create_mllm_payload(self, system_prompt, user_prompt):
|
||||
payload = {
|
||||
"messages": [
|
||||
{"role": "system", "content": system_prompt},
|
||||
{"role": "user", "content": user_prompt},
|
||||
],
|
||||
"temperature": 0.7,
|
||||
"top_p": 0.95,
|
||||
"frequency_penalty": 0,
|
||||
"presence_penalty": 0,
|
||||
"max_tokens": 800,
|
||||
"stop": None,
|
||||
}
|
||||
return payload
|
||||
|
||||
def get_alt_text_system_prompt(self):
|
||||
system_prompt = """You are a web accessibility evaluation tool. Your task is to evaluate if alterative text for
|
||||
images on webpages are appropriate according to WCAG guidelines. The alt-text should serve the same purpose and present
|
||||
the same information as the image, and should be able to substitute for the non-text content. The text alternative would
|
||||
be brief but as informative as possible.
|
||||
|
||||
Follow these instructions carefully:
|
||||
1. You will be provided as input with the following:
|
||||
- The image found on the webpage.
|
||||
- The associated alternative text. When the alt-text is empty or absent, you will be explicitly informed.
|
||||
- The surrounding context of the image.
|
||||
- The page title, headings and the content of the “keywords” and “description” <meta> tag, if found.
|
||||
|
||||
2. Determine the function and purpose of the image by analyzing these elements. Take into account the purpose and function
|
||||
of the associated image by considering the page context. Check also if the image is, or is associated with, a link or a button,
|
||||
and consider this in your judgement. If the image contains text use that as part of the context.
|
||||
|
||||
3. Provide a final assessment based on the following:
|
||||
- 'success' if you can assess with 'sufficient certainty' the alt-text is appropriate in relation to the image purpose,
|
||||
- 'failure' if you can assess with 'sufficient certainty' that the alt-text is NOT appropriate,
|
||||
- 'warning' if you cannot determine with 'sufficient certainty'.
|
||||
where the level of certainty goes from 1 to 100 and 'sufficient certainty' means > 80
|
||||
|
||||
4. The original alt-text assessment on a scale from 1 to 5, where 5 is the best score. Use an integer number only.
|
||||
|
||||
5. Provide a brief reasoning for your judgment. If the image contains text, write it verbatim. Your response should be in English.
|
||||
|
||||
6. Keep your response within 150 words.
|
||||
|
||||
7. Generate the new most appropriate alt-text given the context and the steps before. Keep this within 30 words.
|
||||
|
||||
8. Here is the JSON format the results must have:
|
||||
{"Original alt-text assessment" : "*your original alt-text assessment*", "Assessment" : "*your assessment*", "EvaluationResult": "*your response*", "New alt-text":"*new alt-text*"}"""
|
||||
return system_prompt
|
||||
|
||||
def get_alt_text_user_prompt(self, altTextMessage, imageURL, HTMLcontext, pageText):
|
||||
user_prompt= [{ "type": "text", "text": altTextMessage }, { "type": "image_url", "image_url": { "url": imageURL }}, { "type": "text", "text": HTMLcontext }, { "type": "text", "text": pageText }]
|
||||
return user_prompt
|
||||
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 8.6 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 110 KiB |
|
|
@ -0,0 +1,27 @@
|
|||
[
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/65b1e732d70cd62fed69bb610309f481.jpg",
|
||||
"alt_text": "Una ricerca indica perché l'Alzheimer cancella i ricordi delle persone care (fonte: Pixabay)",
|
||||
"mllm_response": "```json\n{\"Original alt-text assessment\": \"3\", \"Assessment\": \"success\", \"EvaluationResult\": \"The image depicts a human head silhouette formed by leaves falling from trees. The alt-text provided describes the image's source (Pixabay) and provides a brief explanation of a research indicating why Alzheimer's cancels out memories. While the source information is not crucial for accessibility, the description is relevant to the surrounding content. The alt-text is not complete, as it does not describe the visual nature of the image. However, the description provides context and is informative. The assessment is therefore 'success' with sufficient certainty.\", \"New alt-text\":\"Silhouette of a human head formed by falling leaves.\"}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/9/6/0f911d17a8957d5d0083d0395e255363.jpg",
|
||||
"alt_text": "Toni Servillo e Paolo Sorrentino sul set de La Grazia",
|
||||
"mllm_response": "```json\n{\"Original alt-text assessment\": \"4\", \"Assessment\": \"success\", \"EvaluationResult\": \"The provided alt-text 'Toni Servillo e Paolo Sorrentino sul set de La Grazia' accurately describes the image's content: it shows Toni Servillo and Paolo Sorrentino on the set of 'La Grazia'. The surrounding context, including the page title and meta descriptions, reinforces this identification. The image is likely related to a news article or feature about the film. The alt-text effectively conveys the essential information about the image's subject and context.\", \"New alt-text\":\"Toni Servillo and Paolo Sorrentino on the set of the movie 'La Grazia'.\"}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/488a353e6eb31d52269c94e991c722f6.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\"Original alt-text assessment\" : \"3\", \"Assessment\" : \"warning\", \"EvaluationResult\": \"The image appears to be part of a series showcasing fashion or lifestyle content, specifically relating to 'I gauchos di Stefano Ricci per Autunno/Inverno 2026/2027'. Given the lack of descriptive alt-text and the context of fashion-related articles, it is difficult to determine the precise purpose of the image. The surrounding text mentions 'gauchos' and 'autumn/winter 2026/2027', which are vital clues. Without more information on what the image depicts, a definitive assessment of the alt-text's appropriateness is not possible. The image likely shows a model wearing clothing, and this needs to be reflected in the alt-text. More context is needed to provide a more reliable assessment.\", \"New alt-text\":\"Model wearing Stefano Ricci's autumn/winter 2026/2027 gaucho-inspired collection.\"}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/7c493cc579efd0c5b1480eb31027a5db.jpg",
|
||||
"alt_text": "Andrea Riccardi alla cena d’onore per la presentazione della 1/a conferenza dell’Italofonia",
|
||||
"mllm_response": "```json\n{\"Original alt-text assessment\": \"4\", \"Assessment\": \"success\", \"EvaluationResult\": \"The provided alt-text 'Andrea Riccardi alla cena d’onore per la presentazione della 1/a conferenza dell’Italofonia' accurately describes the image's content and purpose within the context of an article about the Italofonia conference. The image shows Andrea Riccardi at a dinner honoring the conference. The surrounding text and page title confirm the event and its significance. The alt-text is concise and informative, fulfilling its role in conveying the image’s purpose for users who cannot see it. \", \"New alt-text\":\"Andrea Riccardi at the Italofonia conference honor dinner\"}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_672x448/2024/10/23/c492b5d96f5a57be0d29cdee7b23e0fd.jpg",
|
||||
"alt_text": "FdI attacca il colle. La replica: 'Ridicolo'",
|
||||
"mllm_response": "```json\n{\"Original alt-text assessment\" : \"2\", \"Assessment\" : \"failure\", \"EvaluationResult\": \"The provided alt-text 'FdI attacca il Colle. La replica: 'Ridicolo'' refers to the article's title and not the image content. The image appears to show a person, likely Mattarella, during an event. The surrounding context indicates a political controversy involving FdI (Fratelli d'Italia) and the President of the Republic. Therefore, the alt-text does not accurately describe the image. A more appropriate alt-text would focus on the visual representation of the image. The provided text is not suitable.\", \"New alt-text\":\"Man during an event.\"}\n```"
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 8.6 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 110 KiB |
|
|
@ -0,0 +1,27 @@
|
|||
[
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/65b1e732d70cd62fed69bb610309f481.jpg",
|
||||
"alt_text": "Una ricerca indica perché l'Alzheimer cancella i ricordi delle persone care (fonte: Pixabay)",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"1\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text 'Una ricerca indica perché l'Alzheimer cancella i ricordi delle persone care (fonte: Pixabay)' is not appropriate. The image appears to be a screenshot of an article headline about Alzheimer's disease and memory loss. The page title and surrounding content clearly indicate an article about news from ANSA, focusing on current events, politics, and sports. Therefore, the alt-text is too specific and doesn't align with the broader context of the page. A more suitable alt-text would be 'ANSA News screenshot'.\",\n\"New alt-text\":\"ANSA News screenshot\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/9/6/0f911d17a8957d5d0083d0395e255363.jpg",
|
||||
"alt_text": "Toni Servillo e Paolo Sorrentino sul set de La Grazia",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"4\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"I cannot assess with sufficient certainty. The page context suggests the image depicts Toni Servillo and Paolo Sorrentino on the set of the film 'La Grazia'. However, the surrounding text is filled with various links and news snippets, making it difficult to determine the precise purpose of the image and whether 'Toni Servillo e Paolo Sorrentino sul set de La Grazia' accurately describes the image's content. It's possible the image is a promotional shot, but without more information, it’s not clear. The alt-text is too generic.\",\n\"New alt-text\":\"Toni Servillo and Paolo Sorrentino on the set of 'La Grazia'\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/488a353e6eb31d52269c94e991c722f6.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"warning\",\n\"EvaluationResult\": \"I cannot assess with sufficient certainty. The alt-text is empty, and the surrounding context suggests the image likely depicts a scene related to news or media – possibly a photograph of a news agency or a person associated with it. Without more information about the image's content (e.g., what the person is doing, what the scene depicts), it’s impossible to determine the appropriate alt-text. It needs to describe the image content accurately.\",\n\"New alt-text\":\"News agency photograph of a person, potentially related to ANSA.\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/7c493cc579efd0c5b1480eb31027a5db.jpg",
|
||||
"alt_text": "Andrea Riccardi alla cena d’onore per la presentazione della 1/a conferenza dell’Italofonia",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"4\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"I cannot assess with sufficient certainty that the alt-text is appropriate. The page context indicates a conference presentation, likely the 'Prima Conferenza Internazionale dell’Italofonia'. However, the alt-text 'Andrea Riccardi alla cena d’onore per la presentazione della 1/a conferenza dell’Italofonia' describes a scene – Riccardi at a dinner – and doesn't accurately convey the event itself. The alt-text should describe the conference, not a photograph of a person at a dinner. A more suitable alt-text would be 'Andrea Riccardi at the presentation of the 1st Italofonia Conference'.\",\n\"New alt-text\":\"Andrea Riccardi at the presentation of the 1st Italofonia Conference\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_672x448/2024/10/23/c492b5d96f5a57be0d29cdee7b23e0fd.jpg",
|
||||
"alt_text": "FdI attacca il colle. La replica: 'Ridicolo'",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\": \"3\",\n\"Assessment\": \"failure\",\n\"EvaluationResult\": \"The alt-text 'FdI attacca il colle. La replica: 'Ridicolo'' is completely irrelevant to the image content. The image shows politicians in a tense situation, likely a political confrontation. A literal translation of the alt-text doesn't reflect the scene. The alt-text should describe the scene or the people involved. Given the context, a more appropriate alt-text would be 'Political confrontation between FdI and the Colle'.\",\n\"New alt-text\":\"Political confrontation between FdI and the Colle\"\n}\n```"
|
||||
}
|
||||
]
|
||||
|
|
@ -0,0 +1 @@
|
|||
[]
|
||||
|
|
@ -0,0 +1 @@
|
|||
[]
|
||||
|
After Width: | Height: | Size: 24 KiB |
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
|
@ -0,0 +1,32 @@
|
|||
[
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/91354aefd360734dbab1eee74f3017a5.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text ‘Here is the surrounding HTML context of the element’ is completely inappropriate. The image appears to be a photograph of a person (likely an ANSA reporter) standing in a room, potentially a newsroom or office. The alt-text provides no useful information about the image’s content. A suitable alt-text would describe the person, the setting, or the context of the image. Considering the surrounding meta tags and content, a more appropriate alt-text would be 'ANSA reporter in newsroom'.\",\n\"New alt-text\":\"ANSA reporter in newsroom\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/d422cb852acec9b4dd48488c2881da0f.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is entirely inappropriate. It simply repeats the surrounding HTML context, which provides no meaningful information about the image. The image shows a person (likely a journalist) standing in what appears to be a newsroom setting, surrounded by newsprint and possibly a computer. The alt-text needs to describe the subject and the scene, providing context for screen reader users. The current text offers no value.\",\n\"New alt-text\":\"Newsroom portrait; journalist standing in a newsroom.\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/70d5285eeee16b64de12a15d22347d9b.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is completely inappropriate. The image displays a collection of logos and brand icons – ANSA, a news agency, and various other entities. The alt-text simply describes the HTML context, which is irrelevant. The alt-text should convey the *purpose* of the image, which is to present a visual representation of the key organizations and brands featured in the news content. A suitable alt-text would be 'ANSA logos and brand icons.'\",\n\"New alt-text\":\"ANSA logos and brand icons\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/19/b633e4db7e4b2e8cc7231329742c5819.jpg",
|
||||
"alt_text": "Ricostruita la storia evolutiva del bacio (fonte: PickPik)",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"1\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text ‘Ricostruita la storia evolutiva del bacio (fonte: PickPik)’ is overly verbose and doesn’t accurately reflect the image’s content. The image appears to be a portrait, likely of Emily Blunt, as suggested by the surrounding context. A concise alt-text should describe the subject of the image – Emily Blunt – to fulfill its purpose as a descriptive element. The provided text is a caption and does not serve the purpose of an image alt-text. It’s also unnecessarily long.\",\n\"New alt-text\":\"Emily Blunt\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/7c493cc579efd0c5b1480eb31027a5db.jpg",
|
||||
"alt_text": "Andrea Riccardi alla cena d’onore per la presentazione della 1/a conferenza dell’Italofonia",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"3\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text ‘Andrea Riccardi alla cena d’onore per la presentazione della 1/a conferenza dell’Italofonia’ is overly verbose and doesn’t accurately represent the image’s purpose. The image shows Andrea Riccardi at an event, likely related to the Italofonia conference, but the alt-text describes the event itself. A concise alt-text should focus on the subject of the image – Andrea Riccardi. The surrounding context indicates this is a news photograph related to the Italofonia conference. Therefore, a better alt-text would be ‘Andrea Riccardi at the Italofonia conference presentation.’\",\n\"New alt-text\":\"Andrea Riccardi at the Italofonia conference presentation.\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_672x448/2025/8/30/01dd6e4a62655d4836f637b11184b87d.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"warning\",\n\"EvaluationResult\": \"The alt-text is insufficient and lacks context. The image depicts a group of military aircraft, likely jets, suggesting a military operation. However, the surrounding text discusses a Russian attack on Ukraine, Romania, and Poland, with mentions of jets and missiles. The alt-text needs to explicitly convey this context. Without specific information about the aircraft and the attack, it's impossible to assess with sufficient certainty. The current alt-text is purely descriptive and misses the crucial information.\",\n\"New alt-text\":\"Russian military jets participating in the attack on Ukraine.\"\n}\n```"
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
|
@ -0,0 +1,22 @@
|
|||
[
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/91354aefd360734dbab1eee74f3017a5.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text ‘Here is the surrounding HTML context of the element’ is completely inappropriate. The image appears to be a photograph of a person (likely an ANSA reporter) standing in a room, potentially a newsroom or office. The alt-text provides no useful information about the image’s content. A suitable alt-text would describe the person, the setting, or the context of the image. Considering the surrounding meta tags and content, a more appropriate alt-text would be 'ANSA reporter in newsroom'.\",\n\"New alt-text\":\"ANSA reporter in newsroom\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/d422cb852acec9b4dd48488c2881da0f.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is entirely inappropriate. It simply repeats the surrounding HTML context, which provides no meaningful information about the image. The image shows a person (likely a journalist) standing in what appears to be a newsroom setting, surrounded by newsprint and possibly a computer. The alt-text needs to describe the subject and the scene, providing context for screen reader users. The current text offers no value.\",\n\"New alt-text\":\"Newsroom portrait; journalist standing in a newsroom.\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/70d5285eeee16b64de12a15d22347d9b.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is completely inappropriate. The image displays a collection of logos and brand icons – ANSA, a news agency, and various other entities. The alt-text simply describes the HTML context, which is irrelevant. The alt-text should convey the *purpose* of the image, which is to present a visual representation of the key organizations and brands featured in the news content. A suitable alt-text would be 'ANSA logos and brand icons.'\",\n\"New alt-text\":\"ANSA logos and brand icons\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/19/b633e4db7e4b2e8cc7231329742c5819.jpg",
|
||||
"alt_text": "Ricostruita la storia evolutiva del bacio (fonte: PickPik)",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"1\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text ‘Ricostruita la storia evolutiva del bacio (fonte: PickPik)’ is overly verbose and doesn’t accurately reflect the image’s content. The image appears to be a portrait, likely of Emily Blunt, as suggested by the surrounding context. A concise alt-text should describe the subject of the image – Emily Blunt – to fulfill its purpose as a descriptive element. The provided text is a caption and does not serve the purpose of an image alt-text. It’s also unnecessarily long.\",\n\"New alt-text\":\"Emily Blunt\"\n}\n```"
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
|
@ -0,0 +1,22 @@
|
|||
[
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/91354aefd360734dbab1eee74f3017a5.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text ‘Here is the surrounding HTML context of the element’ is completely inappropriate. The image appears to be a photograph of a person (likely an ANSA reporter) standing in a room, potentially a newsroom or office. The alt-text provides no useful information about the image’s content. A suitable alt-text would describe the person, the setting, or the context of the image. Considering the surrounding meta tags and content, a more appropriate alt-text would be 'ANSA reporter in newsroom'.\",\n\"New alt-text\":\"ANSA reporter in newsroom\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/d422cb852acec9b4dd48488c2881da0f.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is entirely inappropriate. It simply repeats the surrounding HTML context, which provides no meaningful information about the image. The image shows a person (likely a journalist) standing in what appears to be a newsroom setting, surrounded by newsprint and possibly a computer. The alt-text needs to describe the subject and the scene, providing context for screen reader users. The current text offers no value.\",\n\"New alt-text\":\"Newsroom portrait; journalist standing in a newsroom.\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/70d5285eeee16b64de12a15d22347d9b.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is completely inappropriate. The image displays a collection of logos and brand icons – ANSA, a news agency, and various other entities. The alt-text simply describes the HTML context, which is irrelevant. The alt-text should convey the *purpose* of the image, which is to present a visual representation of the key organizations and brands featured in the news content. A suitable alt-text would be 'ANSA logos and brand icons.'\",\n\"New alt-text\":\"ANSA logos and brand icons\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/19/b633e4db7e4b2e8cc7231329742c5819.jpg",
|
||||
"alt_text": "Ricostruita la storia evolutiva del bacio (fonte: PickPik)",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"1\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text ‘Ricostruita la storia evolutiva del bacio (fonte: PickPik)’ is overly verbose and doesn’t accurately reflect the image’s content. The image appears to be a portrait, likely of Emily Blunt, as suggested by the surrounding context. A concise alt-text should describe the subject of the image – Emily Blunt – to fulfill its purpose as a descriptive element. The provided text is a caption and does not serve the purpose of an image alt-text. It’s also unnecessarily long.\",\n\"New alt-text\":\"Emily Blunt\"\n}\n```"
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
|
@ -0,0 +1 @@
|
|||
<svg fill="none" height="16" viewBox="0 0 92 16" width="92" xmlns="http://www.w3.org/2000/svg"><path clip-rule="evenodd" d="m31.0891 1.53187-.3349.61797c-1.1791-.79967-2.5977-.77779-3.393-.76553-.0878.00135-.1681.00259-.2395.00259-.7186 0-3.3354.51648-3.4218 2.56608-.0847 2.00068.6735 2.78718 1.9216 3.22211.7018.24491 1.5035.43696 2.2398.61335.5713.13686 1.1033.26429 1.5187.39968.9509.30807.9707 1.36278.1693 1.83758-.8032.4766-1.7955.3316-2.9139-.10511-1.1184-.43312-1.52-2.14747-1.52-2.14747h-1.3093v3.84368h1.1815l.4016-.743s.9941.888 3.2525.888c3.4217 0 4.1385-2.10761 4.1385-3.24386 0-1.13626-.6987-2.02605-1.4786-2.45736-.7816-.43674-2.0692-.80824-2.6816-.91154-.6123-.10329-1.4785-.32982-2.0062-.59621-.5277-.27184-.4845-1.69804.9077-1.74154 1.3939-.03987 1.6893.10511 2.451.60166.7582.49654.9473 1.69804.9473 1.69804h1.3526v-3.57912zm-25.30726 2.41481h-.00361l-1.22644 3.38883h2.23497zm-4.56178 6.28832c.15848 0 .29355-.0362.40881-.1105h-.0018c.11526-.0779.1981-.18485.24853-.42768l3.01117-8.07883h3.0652l2.67983 8.07883c.0648.30082.135.41858.2089.46578.0756.0489.2251.0724.4466.0724h.5061v1.1146h-5.38484v-1.1146h.48445c.26654 0 .44484-.0326.53668-.0978.09365-.0653.11526-.1758.06664-.33165l-.3728-1.36097h-2.95173l-.41962 1.36097c-.05763.15585-.04323.26635.04142.33165.08464.0652.26294.0978.52767.0978h.48446v1.1146h-4.113347v-1.1146zm13.94554-.0994c-.1009-.0652-.1513-.17575-.1513-.3316l-.0036-.00181v-5.16117l4.3618 6.70518h2.7429v-8.07703c0-.15222.0504-.26458.1513-.32982.1008-.06342.2773-.09786.5294-.09786h.4521v-1.10907h-4.117v1.11089h.4539c.2503 0 .4268.03262.5276.09785.1027.06524.1513.1776.1513.32983v4.83497l-3.9134-6.37354h-4.3223v1.11089h.4539c.2521 0 .4268.03262.5276.09785.1009.06524.1513.1776.1513.32983v6.53301c0 .15585-.0504.2664-.1513.3316-.1008.0653-.2755.0979-.5276.0979h-.4539v1.1145h4.1188v-1.1145h-.4539c-.2521 0-.4286-.0326-.5276-.0979zm22.3844-6.18875h.0018l.9761 3.38883h-2.1684zm-4.0251 6.17785c-.1099.0743-.2432.1105-.3944.1105h-.5133v1.1145h3.9855v-1.1145h-.4683c-.2575 0-.4286-.0326-.5096-.0978-.0847-.0653-.0991-.17583-.0433-.33168l.4106-1.36097h2.8617l.362 1.36097c.0468.15585.027.26638-.0648.33168-.0901.0652-.2629.0978-.5205.0978h-.47v1.1145h5.2191v-1.1145h-.4881c-.2143 0-.3601-.0235-.4322-.0725-.072-.0471-.1423-.16488-.2035-.46571l-2.5987-8.07883h-2.968l-2.9229 8.07883c-.0468.24284-.1279.34971-.2395.42771z" fill="#34b233" fill-rule="evenodd"/><path d="m49.77 6.99018c-.173-1.13544-1.1895-2.07623-2.5196-2.07623-1.7193 0-2.8115 1.29764-2.8115 3.02783 0 1.75181 1.0597 3.03862 2.7358 3.03862 1.2869 0 2.4223-.8543 2.6494-2.0762h-1.1354c-.1514.69207-.7786 1.1138-1.4923 1.1138-.8002 0-1.5572-.64882-1.5572-2.08704 0-1.41659.7461-2.05459 1.5572-2.05459.7353 0 1.3301.45417 1.449 1.11381zm2.0178-1.12463v-2.86562h-1.1246v7.83987h1.1246v-3.12511c0-1.15706.4758-1.85995 1.449-1.85995 1.0598 0 1.2003.77858 1.2003 1.62205v3.36301h1.1247v-3.66579c0-1.35171-.5407-2.26006-1.9465-2.26006-.9083 0-1.4923.37848-1.8275.9516zm8.943 3.26573c-.2379.5515-.7137.88672-1.5247.88672-.9084 0-1.5897-.67044-1.6978-1.741h4.4336c.119-1.89239-.93-3.36305-2.725-3.36305-1.6545 0-2.8657 1.20032-2.8657 3.0062 0 1.68693 1.0165 3.06025 2.8981 3.06025 1.4815 0 2.3466-.8867 2.6169-1.84912zm-3.2009-1.741c.1514-1.10299.8002-1.55717 1.6762-1.55717.9299 0 1.5355.69208 1.5679 1.55717zm10.5545-.4001c-.173-1.13544-1.1895-2.07623-2.5196-2.07623-1.7193 0-2.8115 1.29764-2.8115 3.02783 0 1.75181 1.0597 3.03862 2.7358 3.03862 1.2869 0 2.4223-.8543 2.6494-2.0762h-1.1354c-.1514.69207-.7786 1.1138-1.4923 1.1138-.8002 0-1.5572-.64882-1.5572-2.08704 0-1.41659.7461-2.05459 1.5572-2.05459.7353 0 1.33.45417 1.449 1.11381zm2.0178-3.99025h-1.1246v7.83987h1.1246v-1.90316l.6596-.70289 1.8492 2.60605h1.3409l-2.4223-3.41708 2.26-2.40063h-1.3733l-2.3141 2.48714z" fill="#34b233"/><g stroke="#34b233"><path d="m81.9707 7.09541 2.1397 2.2368c.1064.1113.2842.1113.3907 0l4.8083-5.02655" stroke-width="1.41507"/><path d="m79.4801.566028h11.7106v11.665972l-5.8553 3.1263-5.8553-3.1263z" stroke-width="1.13206"/></g></svg>
|
||||
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 6.1 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
|
@ -0,0 +1,112 @@
|
|||
<svg width="320" height="32" viewBox="0 0 320 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M310.755 31.5802C308.955 31.5802 307.429 31.1935 306.175 30.4202C304.922 29.6469 303.969 28.5335 303.315 27.0802C302.675 25.6269 302.355 23.8935 302.355 21.8802V10.6002C302.355 7.41353 303.042 4.96686 304.415 3.2602C305.789 1.55353 307.882 0.700195 310.695 0.700195C312.522 0.700195 314.035 1.0602 315.235 1.7802C316.435 2.48686 317.322 3.4602 317.895 4.7002C318.469 5.9402 318.755 7.3602 318.755 8.9602V10.1602H312.715V8.9402C312.715 8.11353 312.569 7.4602 312.275 6.9802C311.995 6.48686 311.455 6.2402 310.655 6.2402C309.882 6.2402 309.335 6.52686 309.015 7.1002C308.709 7.67353 308.555 8.48686 308.555 9.5402V14.1402H308.675C309.529 12.9535 310.789 12.3602 312.455 12.3602C313.842 12.3602 315.035 12.7069 316.035 13.4002C317.035 14.0935 317.789 15.0202 318.295 16.1802C318.815 17.3402 319.075 18.6269 319.075 20.0402V22.4202C319.075 25.3002 318.362 27.5469 316.935 29.1602C315.509 30.7735 313.449 31.5802 310.755 31.5802ZM310.715 25.8802C311.515 25.8802 312.075 25.5802 312.395 24.9802C312.715 24.3802 312.875 23.5469 312.875 22.4802V20.1602C312.875 19.3202 312.709 18.6135 312.375 18.0402C312.042 17.4535 311.469 17.1602 310.655 17.1602C309.255 17.1602 308.555 18.1669 308.555 20.1802V22.4802C308.555 23.5069 308.709 24.3335 309.015 24.9602C309.322 25.5735 309.889 25.8802 310.715 25.8802Z" fill="url(#paint0_linear_210_15749)"/>
|
||||
<path d="M286.086 23.9002C287.726 21.9269 289.106 20.1935 290.226 18.7002C291.359 17.2069 292.353 15.6602 293.206 14.0602C294.059 12.4469 294.486 11.0269 294.486 9.80021V8.58021C294.486 7.94022 294.319 7.42022 293.986 7.02022C293.666 6.62021 293.199 6.42021 292.586 6.42021C291.826 6.42021 291.293 6.70021 290.986 7.26022C290.693 7.82021 290.546 8.50688 290.546 9.32021V10.7602H284.506V9.32021C284.506 7.61355 284.813 6.11355 285.426 4.82022C286.039 3.52688 286.953 2.52022 288.166 1.80022C289.393 1.08021 290.893 0.720215 292.666 0.720215C294.266 0.720215 295.666 1.00021 296.866 1.56021C298.066 2.12021 298.999 2.95355 299.666 4.06021C300.346 5.15355 300.686 6.48688 300.686 8.06021V9.08021C300.686 11.0402 300.239 13.0069 299.346 14.9802C298.466 16.9535 297.473 18.6935 296.366 20.2002C295.273 21.7069 293.933 23.4002 292.346 25.2802H300.766V31.0002H284.546V25.7802L286.086 23.9002Z" fill="url(#paint1_linear_210_15749)"/>
|
||||
<path d="M274.177 31.5802C271.257 31.5802 269.09 30.7069 267.677 28.9602C266.263 27.2135 265.557 24.6935 265.557 21.4002V10.8602C265.557 7.5802 266.257 5.06686 267.657 3.3202C269.07 1.57353 271.23 0.700195 274.137 0.700195C277.083 0.700195 279.257 1.58686 280.657 3.3602C282.057 5.13353 282.757 7.63353 282.757 10.8602V21.4002C282.757 24.6802 282.05 27.2002 280.637 28.9602C279.237 30.7069 277.083 31.5802 274.177 31.5802ZM274.177 25.8602C274.91 25.8602 275.45 25.5669 275.797 24.9802C276.143 24.3935 276.317 23.5069 276.317 22.3202V9.9402C276.317 8.76686 276.143 7.88686 275.797 7.3002C275.45 6.71353 274.91 6.4202 274.177 6.4202C273.417 6.4202 272.863 6.71353 272.517 7.3002C272.17 7.88686 271.997 8.76686 271.997 9.9402V22.3202C271.997 23.5069 272.17 24.3935 272.517 24.9802C272.863 25.5669 273.417 25.8602 274.177 25.8602Z" fill="url(#paint2_linear_210_15749)"/>
|
||||
<path d="M249.287 23.9002C250.927 21.9269 252.307 20.1935 253.427 18.7002C254.56 17.2069 255.554 15.6602 256.407 14.0602C257.26 12.4469 257.687 11.0269 257.687 9.80021V8.58021C257.687 7.94022 257.52 7.42022 257.187 7.02022C256.867 6.62021 256.4 6.42021 255.787 6.42021C255.027 6.42021 254.494 6.70021 254.187 7.26022C253.894 7.82021 253.747 8.50688 253.747 9.32021V10.7602H247.707V9.32021C247.707 7.61355 248.014 6.11355 248.627 4.82022C249.24 3.52688 250.154 2.52022 251.367 1.80022C252.594 1.08021 254.094 0.720215 255.867 0.720215C257.467 0.720215 258.867 1.00021 260.067 1.56021C261.267 2.12021 262.2 2.95355 262.867 4.06021C263.547 5.15355 263.887 6.48688 263.887 8.06021V9.08021C263.887 11.0402 263.44 13.0069 262.547 14.9802C261.667 16.9535 260.674 18.6935 259.567 20.2002C258.474 21.7069 257.134 23.4002 255.547 25.2802H263.967V31.0002H247.747V25.7802L249.287 23.9002Z" fill="url(#paint3_linear_210_15749)"/>
|
||||
<path d="M224.3 1.26025H232.9L238.72 31.0003H232.14L231.3 26.0003H225.88L225.06 31.0003H218.48L224.3 1.26025ZM230.52 20.6203L228.9 10.4803L228.64 8.18026H228.56L228.3 10.4803L226.68 20.6203H230.52Z" fill="url(#paint4_linear_210_15749)"/>
|
||||
<path d="M199.354 1.26025H205.734L210.434 15.0403L211.154 17.6803H211.234L211.114 14.6803V1.26025H217.454V31.0003H211.054L206.374 17.3803L205.654 14.7603H205.574L205.694 17.7203V31.0003H199.354V1.26025Z" fill="url(#paint5_linear_210_15749)"/>
|
||||
<path d="M190.426 1.26025H196.866V31.0003H190.426V1.26025Z" fill="url(#paint6_linear_210_15749)"/>
|
||||
<path d="M178.103 7.14025H173.383V1.26025H189.303V7.14025H184.563V31.0003H178.103V7.14025Z" fill="url(#paint7_linear_210_15749)"/>
|
||||
<path d="M156.246 1.26025H164.886C167.673 1.26025 169.773 1.90692 171.186 3.20025C172.613 4.48026 173.326 6.36026 173.326 8.84026V11.2803C173.326 12.8803 172.999 14.2203 172.346 15.3003C171.693 16.3803 170.739 17.1069 169.486 17.4803V17.5203C171.713 18.0403 172.906 20.0936 173.066 23.6803L173.206 27.4003C173.299 29.0669 173.493 30.2669 173.786 31.0003H167.366C167.126 29.8536 166.953 28.3003 166.846 26.3403L166.666 22.9403C166.599 22.0469 166.353 21.3869 165.926 20.9603C165.513 20.5336 164.886 20.3203 164.046 20.3203H162.686V31.0003H156.246V1.26025ZM164.326 15.4003C165.139 15.4003 165.766 15.1603 166.206 14.6803C166.659 14.1869 166.886 13.3536 166.886 12.1803V9.60025C166.886 8.57359 166.686 7.82692 166.286 7.36026C165.899 6.88026 165.313 6.64025 164.526 6.64025H162.686V15.4003H164.326Z" fill="url(#paint8_linear_210_15749)"/>
|
||||
<path d="M145.464 31.5802C142.544 31.5802 140.35 30.7269 138.884 29.0202C137.417 27.3135 136.684 24.7735 136.684 21.4002V10.8602C136.684 7.51353 137.41 4.98686 138.864 3.2802C140.33 1.5602 142.517 0.700195 145.424 0.700195C148.344 0.700195 150.537 1.5602 152.004 3.2802C153.484 4.98686 154.224 7.51353 154.224 10.8602V21.4002C154.224 24.7602 153.49 27.3002 152.024 29.0202C150.557 30.7269 148.37 31.5802 145.464 31.5802ZM145.464 25.8602C146.237 25.8602 146.817 25.5802 147.204 25.0202C147.59 24.4469 147.784 23.5469 147.784 22.3202V9.9402C147.784 8.71353 147.59 7.8202 147.204 7.2602C146.817 6.7002 146.237 6.4202 145.464 6.4202C144.69 6.4202 144.104 6.7002 143.704 7.2602C143.317 7.8202 143.124 8.71353 143.124 9.9402V22.3202C143.124 23.5469 143.317 24.4469 143.704 25.0202C144.104 25.5802 144.69 25.8602 145.464 25.8602Z" fill="url(#paint9_linear_210_15749)"/>
|
||||
<path d="M126.556 31.5802C123.663 31.5802 121.483 30.7335 120.016 29.0402C118.563 27.3469 117.836 24.8069 117.836 21.4202V10.9202C117.836 7.50686 118.556 4.95353 119.996 3.2602C121.449 1.55353 123.636 0.700195 126.556 0.700195C132.383 0.700195 135.296 4.0002 135.296 10.6002V12.9202H128.856V9.9202C128.856 8.7602 128.689 7.88686 128.356 7.3002C128.036 6.71353 127.443 6.4202 126.576 6.4202C125.043 6.4202 124.276 7.58686 124.276 9.9202V22.3202C124.276 24.6802 125.036 25.8602 126.556 25.8602C127.356 25.8602 127.936 25.5869 128.296 25.0402C128.669 24.4935 128.856 23.6135 128.856 22.4002V18.9802H135.296V21.7002C135.296 24.9535 134.609 27.4135 133.236 29.0802C131.876 30.7469 129.649 31.5802 126.556 31.5802Z" fill="url(#paint10_linear_210_15749)"/>
|
||||
<path d="M109 22V17H116V22H109Z" fill="url(#paint11_linear_210_15749)"/>
|
||||
<path d="M98.4577 31.5802C95.5377 31.5802 93.3444 30.7269 91.8777 29.0202C90.4111 27.3135 89.6777 24.7735 89.6777 21.4002V10.8602C89.6777 7.51353 90.4044 4.98686 91.8577 3.2802C93.3244 1.5602 95.5111 0.700195 98.4177 0.700195C101.338 0.700195 103.531 1.5602 104.998 3.2802C106.478 4.98686 107.218 7.51353 107.218 10.8602V21.4002C107.218 24.7602 106.484 27.3002 105.018 29.0202C103.551 30.7269 101.364 31.5802 98.4577 31.5802ZM98.4577 25.8602C99.2311 25.8602 99.8111 25.5802 100.198 25.0202C100.584 24.4469 100.778 23.5469 100.778 22.3202V9.9402C100.778 8.71353 100.584 7.8202 100.198 7.2602C99.8111 6.7002 99.2311 6.4202 98.4577 6.4202C97.6844 6.4202 97.0977 6.7002 96.6977 7.2602C96.3111 7.8202 96.1177 8.71353 96.1177 9.9402V22.3202C96.1177 23.5469 96.3111 24.4469 96.6977 25.0202C97.0977 25.5802 97.6844 25.8602 98.4577 25.8602Z" fill="url(#paint12_linear_210_15749)"/>
|
||||
<path d="M69.5508 1.26025H75.9308L80.6308 15.0403L81.3508 17.6803H81.4308L81.3108 14.6803V1.26025H87.6508V31.0003H81.2508L76.5708 17.3803L75.8508 14.7603H75.7708L75.8908 17.7203V31.0003H69.5508V1.26025Z" fill="url(#paint13_linear_210_15749)"/>
|
||||
<path d="M54.1052 1.26025H62.7052L68.5252 31.0003H61.9452L61.1052 26.0003H55.6852L54.8652 31.0003H48.2852L54.1052 1.26025ZM60.3252 20.6203L58.7052 10.4803L58.4452 8.18026H58.3652L58.1052 10.4803L56.4852 20.6203H60.3252Z" fill="url(#paint14_linear_210_15749)"/>
|
||||
<path d="M34.9004 1.26025H41.3404V25.1203H48.4204V31.0003H34.9004V1.26025Z" fill="url(#paint15_linear_210_15749)"/>
|
||||
<path d="M25.9727 1.26025H32.4127V31.0003H25.9727V1.26025Z" fill="url(#paint16_linear_210_15749)"/>
|
||||
<path d="M0.640625 1.26025H8.50062L11.8006 16.7803L12.0206 18.6603H12.1006L12.3206 16.7803L15.6206 1.26025H23.4806V31.0003H17.1606V17.4203L17.3606 12.1803H17.2806L17.0206 13.7003L14.0806 27.0403H10.0606L7.12063 13.7003L6.84062 12.1803H6.76062L6.98063 17.4203V31.0003H0.640625V1.26025Z" fill="url(#paint17_linear_210_15749)"/>
|
||||
<defs>
|
||||
<linearGradient id="paint0_linear_210_15749" x1="-7.99923" y1="15" x2="320.001" y2="15" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint1_linear_210_15749" x1="-7.99974" y1="15.0001" x2="320" y2="15.0002" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint2_linear_210_15749" x1="-7.99965" y1="15" x2="320" y2="15" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint3_linear_210_15749" x1="-8.00015" y1="15.0002" x2="320" y2="15.0002" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint4_linear_210_15749" x1="-7.99922" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint5_linear_210_15749" x1="-7.99898" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint6_linear_210_15749" x1="-8.00015" y1="15" x2="320" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint7_linear_210_15749" x1="-7.99875" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint8_linear_210_15749" x1="-7.9986" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint9_linear_210_15749" x1="-7.99922" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint10_linear_210_15749" x1="-7.99843" y1="15" x2="320.002" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint11_linear_210_15749" x1="52.1962" y1="14.7292" x2="221.268" y2="14.7292" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint12_linear_210_15749" x1="-0.99883" y1="15" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint13_linear_210_15749" x1="-0.998595" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint14_linear_210_15749" x1="-0.999217" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint15_linear_210_15749" x1="-0.998982" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint16_linear_210_15749" x1="-1.00015" y1="15.0001" x2="327" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint17_linear_210_15749" x1="-0.999373" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
|
@ -0,0 +1 @@
|
|||
<svg fill="none" height="16" viewBox="0 0 92 16" width="92" xmlns="http://www.w3.org/2000/svg"><path clip-rule="evenodd" d="m31.0891 1.53187-.3349.61797c-1.1791-.79967-2.5977-.77779-3.393-.76553-.0878.00135-.1681.00259-.2395.00259-.7186 0-3.3354.51648-3.4218 2.56608-.0847 2.00068.6735 2.78718 1.9216 3.22211.7018.24491 1.5035.43696 2.2398.61335.5713.13686 1.1033.26429 1.5187.39968.9509.30807.9707 1.36278.1693 1.83758-.8032.4766-1.7955.3316-2.9139-.10511-1.1184-.43312-1.52-2.14747-1.52-2.14747h-1.3093v3.84368h1.1815l.4016-.743s.9941.888 3.2525.888c3.4217 0 4.1385-2.10761 4.1385-3.24386 0-1.13626-.6987-2.02605-1.4786-2.45736-.7816-.43674-2.0692-.80824-2.6816-.91154-.6123-.10329-1.4785-.32982-2.0062-.59621-.5277-.27184-.4845-1.69804.9077-1.74154 1.3939-.03987 1.6893.10511 2.451.60166.7582.49654.9473 1.69804.9473 1.69804h1.3526v-3.57912zm-25.30726 2.41481h-.00361l-1.22644 3.38883h2.23497zm-4.56178 6.28832c.15848 0 .29355-.0362.40881-.1105h-.0018c.11526-.0779.1981-.18485.24853-.42768l3.01117-8.07883h3.0652l2.67983 8.07883c.0648.30082.135.41858.2089.46578.0756.0489.2251.0724.4466.0724h.5061v1.1146h-5.38484v-1.1146h.48445c.26654 0 .44484-.0326.53668-.0978.09365-.0653.11526-.1758.06664-.33165l-.3728-1.36097h-2.95173l-.41962 1.36097c-.05763.15585-.04323.26635.04142.33165.08464.0652.26294.0978.52767.0978h.48446v1.1146h-4.113347v-1.1146zm13.94554-.0994c-.1009-.0652-.1513-.17575-.1513-.3316l-.0036-.00181v-5.16117l4.3618 6.70518h2.7429v-8.07703c0-.15222.0504-.26458.1513-.32982.1008-.06342.2773-.09786.5294-.09786h.4521v-1.10907h-4.117v1.11089h.4539c.2503 0 .4268.03262.5276.09785.1027.06524.1513.1776.1513.32983v4.83497l-3.9134-6.37354h-4.3223v1.11089h.4539c.2521 0 .4268.03262.5276.09785.1009.06524.1513.1776.1513.32983v6.53301c0 .15585-.0504.2664-.1513.3316-.1008.0653-.2755.0979-.5276.0979h-.4539v1.1145h4.1188v-1.1145h-.4539c-.2521 0-.4286-.0326-.5276-.0979zm22.3844-6.18875h.0018l.9761 3.38883h-2.1684zm-4.0251 6.17785c-.1099.0743-.2432.1105-.3944.1105h-.5133v1.1145h3.9855v-1.1145h-.4683c-.2575 0-.4286-.0326-.5096-.0978-.0847-.0653-.0991-.17583-.0433-.33168l.4106-1.36097h2.8617l.362 1.36097c.0468.15585.027.26638-.0648.33168-.0901.0652-.2629.0978-.5205.0978h-.47v1.1145h5.2191v-1.1145h-.4881c-.2143 0-.3601-.0235-.4322-.0725-.072-.0471-.1423-.16488-.2035-.46571l-2.5987-8.07883h-2.968l-2.9229 8.07883c-.0468.24284-.1279.34971-.2395.42771z" fill="#34b233" fill-rule="evenodd"/><path d="m49.77 6.99018c-.173-1.13544-1.1895-2.07623-2.5196-2.07623-1.7193 0-2.8115 1.29764-2.8115 3.02783 0 1.75181 1.0597 3.03862 2.7358 3.03862 1.2869 0 2.4223-.8543 2.6494-2.0762h-1.1354c-.1514.69207-.7786 1.1138-1.4923 1.1138-.8002 0-1.5572-.64882-1.5572-2.08704 0-1.41659.7461-2.05459 1.5572-2.05459.7353 0 1.3301.45417 1.449 1.11381zm2.0178-1.12463v-2.86562h-1.1246v7.83987h1.1246v-3.12511c0-1.15706.4758-1.85995 1.449-1.85995 1.0598 0 1.2003.77858 1.2003 1.62205v3.36301h1.1247v-3.66579c0-1.35171-.5407-2.26006-1.9465-2.26006-.9083 0-1.4923.37848-1.8275.9516zm8.943 3.26573c-.2379.5515-.7137.88672-1.5247.88672-.9084 0-1.5897-.67044-1.6978-1.741h4.4336c.119-1.89239-.93-3.36305-2.725-3.36305-1.6545 0-2.8657 1.20032-2.8657 3.0062 0 1.68693 1.0165 3.06025 2.8981 3.06025 1.4815 0 2.3466-.8867 2.6169-1.84912zm-3.2009-1.741c.1514-1.10299.8002-1.55717 1.6762-1.55717.9299 0 1.5355.69208 1.5679 1.55717zm10.5545-.4001c-.173-1.13544-1.1895-2.07623-2.5196-2.07623-1.7193 0-2.8115 1.29764-2.8115 3.02783 0 1.75181 1.0597 3.03862 2.7358 3.03862 1.2869 0 2.4223-.8543 2.6494-2.0762h-1.1354c-.1514.69207-.7786 1.1138-1.4923 1.1138-.8002 0-1.5572-.64882-1.5572-2.08704 0-1.41659.7461-2.05459 1.5572-2.05459.7353 0 1.33.45417 1.449 1.11381zm2.0178-3.99025h-1.1246v7.83987h1.1246v-1.90316l.6596-.70289 1.8492 2.60605h1.3409l-2.4223-3.41708 2.26-2.40063h-1.3733l-2.3141 2.48714z" fill="#34b233"/><g stroke="#34b233"><path d="m81.9707 7.09541 2.1397 2.2368c.1064.1113.2842.1113.3907 0l4.8083-5.02655" stroke-width="1.41507"/><path d="m79.4801.566028h11.7106v11.665972l-5.8553 3.1263-5.8553-3.1263z" stroke-width="1.13206"/></g></svg>
|
||||
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 6.1 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
|
@ -0,0 +1,112 @@
|
|||
<svg width="320" height="32" viewBox="0 0 320 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M310.755 31.5802C308.955 31.5802 307.429 31.1935 306.175 30.4202C304.922 29.6469 303.969 28.5335 303.315 27.0802C302.675 25.6269 302.355 23.8935 302.355 21.8802V10.6002C302.355 7.41353 303.042 4.96686 304.415 3.2602C305.789 1.55353 307.882 0.700195 310.695 0.700195C312.522 0.700195 314.035 1.0602 315.235 1.7802C316.435 2.48686 317.322 3.4602 317.895 4.7002C318.469 5.9402 318.755 7.3602 318.755 8.9602V10.1602H312.715V8.9402C312.715 8.11353 312.569 7.4602 312.275 6.9802C311.995 6.48686 311.455 6.2402 310.655 6.2402C309.882 6.2402 309.335 6.52686 309.015 7.1002C308.709 7.67353 308.555 8.48686 308.555 9.5402V14.1402H308.675C309.529 12.9535 310.789 12.3602 312.455 12.3602C313.842 12.3602 315.035 12.7069 316.035 13.4002C317.035 14.0935 317.789 15.0202 318.295 16.1802C318.815 17.3402 319.075 18.6269 319.075 20.0402V22.4202C319.075 25.3002 318.362 27.5469 316.935 29.1602C315.509 30.7735 313.449 31.5802 310.755 31.5802ZM310.715 25.8802C311.515 25.8802 312.075 25.5802 312.395 24.9802C312.715 24.3802 312.875 23.5469 312.875 22.4802V20.1602C312.875 19.3202 312.709 18.6135 312.375 18.0402C312.042 17.4535 311.469 17.1602 310.655 17.1602C309.255 17.1602 308.555 18.1669 308.555 20.1802V22.4802C308.555 23.5069 308.709 24.3335 309.015 24.9602C309.322 25.5735 309.889 25.8802 310.715 25.8802Z" fill="url(#paint0_linear_210_15749)"/>
|
||||
<path d="M286.086 23.9002C287.726 21.9269 289.106 20.1935 290.226 18.7002C291.359 17.2069 292.353 15.6602 293.206 14.0602C294.059 12.4469 294.486 11.0269 294.486 9.80021V8.58021C294.486 7.94022 294.319 7.42022 293.986 7.02022C293.666 6.62021 293.199 6.42021 292.586 6.42021C291.826 6.42021 291.293 6.70021 290.986 7.26022C290.693 7.82021 290.546 8.50688 290.546 9.32021V10.7602H284.506V9.32021C284.506 7.61355 284.813 6.11355 285.426 4.82022C286.039 3.52688 286.953 2.52022 288.166 1.80022C289.393 1.08021 290.893 0.720215 292.666 0.720215C294.266 0.720215 295.666 1.00021 296.866 1.56021C298.066 2.12021 298.999 2.95355 299.666 4.06021C300.346 5.15355 300.686 6.48688 300.686 8.06021V9.08021C300.686 11.0402 300.239 13.0069 299.346 14.9802C298.466 16.9535 297.473 18.6935 296.366 20.2002C295.273 21.7069 293.933 23.4002 292.346 25.2802H300.766V31.0002H284.546V25.7802L286.086 23.9002Z" fill="url(#paint1_linear_210_15749)"/>
|
||||
<path d="M274.177 31.5802C271.257 31.5802 269.09 30.7069 267.677 28.9602C266.263 27.2135 265.557 24.6935 265.557 21.4002V10.8602C265.557 7.5802 266.257 5.06686 267.657 3.3202C269.07 1.57353 271.23 0.700195 274.137 0.700195C277.083 0.700195 279.257 1.58686 280.657 3.3602C282.057 5.13353 282.757 7.63353 282.757 10.8602V21.4002C282.757 24.6802 282.05 27.2002 280.637 28.9602C279.237 30.7069 277.083 31.5802 274.177 31.5802ZM274.177 25.8602C274.91 25.8602 275.45 25.5669 275.797 24.9802C276.143 24.3935 276.317 23.5069 276.317 22.3202V9.9402C276.317 8.76686 276.143 7.88686 275.797 7.3002C275.45 6.71353 274.91 6.4202 274.177 6.4202C273.417 6.4202 272.863 6.71353 272.517 7.3002C272.17 7.88686 271.997 8.76686 271.997 9.9402V22.3202C271.997 23.5069 272.17 24.3935 272.517 24.9802C272.863 25.5669 273.417 25.8602 274.177 25.8602Z" fill="url(#paint2_linear_210_15749)"/>
|
||||
<path d="M249.287 23.9002C250.927 21.9269 252.307 20.1935 253.427 18.7002C254.56 17.2069 255.554 15.6602 256.407 14.0602C257.26 12.4469 257.687 11.0269 257.687 9.80021V8.58021C257.687 7.94022 257.52 7.42022 257.187 7.02022C256.867 6.62021 256.4 6.42021 255.787 6.42021C255.027 6.42021 254.494 6.70021 254.187 7.26022C253.894 7.82021 253.747 8.50688 253.747 9.32021V10.7602H247.707V9.32021C247.707 7.61355 248.014 6.11355 248.627 4.82022C249.24 3.52688 250.154 2.52022 251.367 1.80022C252.594 1.08021 254.094 0.720215 255.867 0.720215C257.467 0.720215 258.867 1.00021 260.067 1.56021C261.267 2.12021 262.2 2.95355 262.867 4.06021C263.547 5.15355 263.887 6.48688 263.887 8.06021V9.08021C263.887 11.0402 263.44 13.0069 262.547 14.9802C261.667 16.9535 260.674 18.6935 259.567 20.2002C258.474 21.7069 257.134 23.4002 255.547 25.2802H263.967V31.0002H247.747V25.7802L249.287 23.9002Z" fill="url(#paint3_linear_210_15749)"/>
|
||||
<path d="M224.3 1.26025H232.9L238.72 31.0003H232.14L231.3 26.0003H225.88L225.06 31.0003H218.48L224.3 1.26025ZM230.52 20.6203L228.9 10.4803L228.64 8.18026H228.56L228.3 10.4803L226.68 20.6203H230.52Z" fill="url(#paint4_linear_210_15749)"/>
|
||||
<path d="M199.354 1.26025H205.734L210.434 15.0403L211.154 17.6803H211.234L211.114 14.6803V1.26025H217.454V31.0003H211.054L206.374 17.3803L205.654 14.7603H205.574L205.694 17.7203V31.0003H199.354V1.26025Z" fill="url(#paint5_linear_210_15749)"/>
|
||||
<path d="M190.426 1.26025H196.866V31.0003H190.426V1.26025Z" fill="url(#paint6_linear_210_15749)"/>
|
||||
<path d="M178.103 7.14025H173.383V1.26025H189.303V7.14025H184.563V31.0003H178.103V7.14025Z" fill="url(#paint7_linear_210_15749)"/>
|
||||
<path d="M156.246 1.26025H164.886C167.673 1.26025 169.773 1.90692 171.186 3.20025C172.613 4.48026 173.326 6.36026 173.326 8.84026V11.2803C173.326 12.8803 172.999 14.2203 172.346 15.3003C171.693 16.3803 170.739 17.1069 169.486 17.4803V17.5203C171.713 18.0403 172.906 20.0936 173.066 23.6803L173.206 27.4003C173.299 29.0669 173.493 30.2669 173.786 31.0003H167.366C167.126 29.8536 166.953 28.3003 166.846 26.3403L166.666 22.9403C166.599 22.0469 166.353 21.3869 165.926 20.9603C165.513 20.5336 164.886 20.3203 164.046 20.3203H162.686V31.0003H156.246V1.26025ZM164.326 15.4003C165.139 15.4003 165.766 15.1603 166.206 14.6803C166.659 14.1869 166.886 13.3536 166.886 12.1803V9.60025C166.886 8.57359 166.686 7.82692 166.286 7.36026C165.899 6.88026 165.313 6.64025 164.526 6.64025H162.686V15.4003H164.326Z" fill="url(#paint8_linear_210_15749)"/>
|
||||
<path d="M145.464 31.5802C142.544 31.5802 140.35 30.7269 138.884 29.0202C137.417 27.3135 136.684 24.7735 136.684 21.4002V10.8602C136.684 7.51353 137.41 4.98686 138.864 3.2802C140.33 1.5602 142.517 0.700195 145.424 0.700195C148.344 0.700195 150.537 1.5602 152.004 3.2802C153.484 4.98686 154.224 7.51353 154.224 10.8602V21.4002C154.224 24.7602 153.49 27.3002 152.024 29.0202C150.557 30.7269 148.37 31.5802 145.464 31.5802ZM145.464 25.8602C146.237 25.8602 146.817 25.5802 147.204 25.0202C147.59 24.4469 147.784 23.5469 147.784 22.3202V9.9402C147.784 8.71353 147.59 7.8202 147.204 7.2602C146.817 6.7002 146.237 6.4202 145.464 6.4202C144.69 6.4202 144.104 6.7002 143.704 7.2602C143.317 7.8202 143.124 8.71353 143.124 9.9402V22.3202C143.124 23.5469 143.317 24.4469 143.704 25.0202C144.104 25.5802 144.69 25.8602 145.464 25.8602Z" fill="url(#paint9_linear_210_15749)"/>
|
||||
<path d="M126.556 31.5802C123.663 31.5802 121.483 30.7335 120.016 29.0402C118.563 27.3469 117.836 24.8069 117.836 21.4202V10.9202C117.836 7.50686 118.556 4.95353 119.996 3.2602C121.449 1.55353 123.636 0.700195 126.556 0.700195C132.383 0.700195 135.296 4.0002 135.296 10.6002V12.9202H128.856V9.9202C128.856 8.7602 128.689 7.88686 128.356 7.3002C128.036 6.71353 127.443 6.4202 126.576 6.4202C125.043 6.4202 124.276 7.58686 124.276 9.9202V22.3202C124.276 24.6802 125.036 25.8602 126.556 25.8602C127.356 25.8602 127.936 25.5869 128.296 25.0402C128.669 24.4935 128.856 23.6135 128.856 22.4002V18.9802H135.296V21.7002C135.296 24.9535 134.609 27.4135 133.236 29.0802C131.876 30.7469 129.649 31.5802 126.556 31.5802Z" fill="url(#paint10_linear_210_15749)"/>
|
||||
<path d="M109 22V17H116V22H109Z" fill="url(#paint11_linear_210_15749)"/>
|
||||
<path d="M98.4577 31.5802C95.5377 31.5802 93.3444 30.7269 91.8777 29.0202C90.4111 27.3135 89.6777 24.7735 89.6777 21.4002V10.8602C89.6777 7.51353 90.4044 4.98686 91.8577 3.2802C93.3244 1.5602 95.5111 0.700195 98.4177 0.700195C101.338 0.700195 103.531 1.5602 104.998 3.2802C106.478 4.98686 107.218 7.51353 107.218 10.8602V21.4002C107.218 24.7602 106.484 27.3002 105.018 29.0202C103.551 30.7269 101.364 31.5802 98.4577 31.5802ZM98.4577 25.8602C99.2311 25.8602 99.8111 25.5802 100.198 25.0202C100.584 24.4469 100.778 23.5469 100.778 22.3202V9.9402C100.778 8.71353 100.584 7.8202 100.198 7.2602C99.8111 6.7002 99.2311 6.4202 98.4577 6.4202C97.6844 6.4202 97.0977 6.7002 96.6977 7.2602C96.3111 7.8202 96.1177 8.71353 96.1177 9.9402V22.3202C96.1177 23.5469 96.3111 24.4469 96.6977 25.0202C97.0977 25.5802 97.6844 25.8602 98.4577 25.8602Z" fill="url(#paint12_linear_210_15749)"/>
|
||||
<path d="M69.5508 1.26025H75.9308L80.6308 15.0403L81.3508 17.6803H81.4308L81.3108 14.6803V1.26025H87.6508V31.0003H81.2508L76.5708 17.3803L75.8508 14.7603H75.7708L75.8908 17.7203V31.0003H69.5508V1.26025Z" fill="url(#paint13_linear_210_15749)"/>
|
||||
<path d="M54.1052 1.26025H62.7052L68.5252 31.0003H61.9452L61.1052 26.0003H55.6852L54.8652 31.0003H48.2852L54.1052 1.26025ZM60.3252 20.6203L58.7052 10.4803L58.4452 8.18026H58.3652L58.1052 10.4803L56.4852 20.6203H60.3252Z" fill="url(#paint14_linear_210_15749)"/>
|
||||
<path d="M34.9004 1.26025H41.3404V25.1203H48.4204V31.0003H34.9004V1.26025Z" fill="url(#paint15_linear_210_15749)"/>
|
||||
<path d="M25.9727 1.26025H32.4127V31.0003H25.9727V1.26025Z" fill="url(#paint16_linear_210_15749)"/>
|
||||
<path d="M0.640625 1.26025H8.50062L11.8006 16.7803L12.0206 18.6603H12.1006L12.3206 16.7803L15.6206 1.26025H23.4806V31.0003H17.1606V17.4203L17.3606 12.1803H17.2806L17.0206 13.7003L14.0806 27.0403H10.0606L7.12063 13.7003L6.84062 12.1803H6.76062L6.98063 17.4203V31.0003H0.640625V1.26025Z" fill="url(#paint17_linear_210_15749)"/>
|
||||
<defs>
|
||||
<linearGradient id="paint0_linear_210_15749" x1="-7.99923" y1="15" x2="320.001" y2="15" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint1_linear_210_15749" x1="-7.99974" y1="15.0001" x2="320" y2="15.0002" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint2_linear_210_15749" x1="-7.99965" y1="15" x2="320" y2="15" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint3_linear_210_15749" x1="-8.00015" y1="15.0002" x2="320" y2="15.0002" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint4_linear_210_15749" x1="-7.99922" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint5_linear_210_15749" x1="-7.99898" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint6_linear_210_15749" x1="-8.00015" y1="15" x2="320" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint7_linear_210_15749" x1="-7.99875" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint8_linear_210_15749" x1="-7.9986" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint9_linear_210_15749" x1="-7.99922" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint10_linear_210_15749" x1="-7.99843" y1="15" x2="320.002" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint11_linear_210_15749" x1="52.1962" y1="14.7292" x2="221.268" y2="14.7292" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint12_linear_210_15749" x1="-0.99883" y1="15" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint13_linear_210_15749" x1="-0.998595" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint14_linear_210_15749" x1="-0.999217" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint15_linear_210_15749" x1="-0.998982" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint16_linear_210_15749" x1="-1.00015" y1="15.0001" x2="327" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint17_linear_210_15749" x1="-0.999373" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
|
@ -0,0 +1,17 @@
|
|||
[
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/91354aefd360734dbab1eee74f3017a5.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text ‘Here is the surrounding HTML context of the element’ is completely inappropriate. The image appears to be a photograph of a person (likely an ANSA reporter) standing in a room, potentially a newsroom or office. The alt-text provides no useful information about the image’s content. A suitable alt-text would describe the person, the setting, or the context of the image. Considering the surrounding meta tags and content, a more appropriate alt-text would be 'ANSA reporter in newsroom'.\",\n\"New alt-text\":\"ANSA reporter in newsroom\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/d422cb852acec9b4dd48488c2881da0f.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is entirely inappropriate. It simply repeats the surrounding HTML context, which provides no meaningful information about the image. The image shows a person (likely a journalist) standing in what appears to be a newsroom setting, surrounded by newsprint and possibly a computer. The alt-text needs to describe the subject and the scene, providing context for screen reader users. The current text offers no value.\",\n\"New alt-text\":\"Newsroom portrait; journalist standing in a newsroom.\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/70d5285eeee16b64de12a15d22347d9b.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is completely inappropriate. The image displays a collection of logos and brand icons – ANSA, a news agency, and various other entities. The alt-text simply describes the HTML context, which is irrelevant. The alt-text should convey the *purpose* of the image, which is to present a visual representation of the key organizations and brands featured in the news content. A suitable alt-text would be 'ANSA logos and brand icons.'\",\n\"New alt-text\":\"ANSA logos and brand icons\"\n}\n```"
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
|
@ -0,0 +1,17 @@
|
|||
[
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/91354aefd360734dbab1eee74f3017a5.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text ‘Here is the surrounding HTML context of the element’ is completely inappropriate. The image appears to be a photograph of a person (likely an ANSA reporter) standing in a room, potentially a newsroom or office. The alt-text provides no useful information about the image’s content. A suitable alt-text would describe the person, the setting, or the context of the image. Considering the surrounding meta tags and content, a more appropriate alt-text would be 'ANSA reporter in newsroom'.\",\n\"New alt-text\":\"ANSA reporter in newsroom\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/d422cb852acec9b4dd48488c2881da0f.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is entirely inappropriate. It simply repeats the surrounding HTML context, which provides no meaningful information about the image. The image shows a person (likely a journalist) standing in what appears to be a newsroom setting, surrounded by newsprint and possibly a computer. The alt-text needs to describe the subject and the scene, providing context for screen reader users. The current text offers no value.\",\n\"New alt-text\":\"Newsroom portrait; journalist standing in a newsroom.\"\n}\n```"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/18/70d5285eeee16b64de12a15d22347d9b.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "```json\n{\n\"Original alt-text assessment\" : \"Here is the surrounding HTML context of the element:\",\n\"Assessment\" : \"failure\",\n\"EvaluationResult\": \"The alt-text is completely inappropriate. The image displays a collection of logos and brand icons – ANSA, a news agency, and various other entities. The alt-text simply describes the HTML context, which is irrelevant. The alt-text should convey the *purpose* of the image, which is to present a visual representation of the key organizations and brands featured in the news content. A suitable alt-text would be 'ANSA logos and brand icons.'\",\n\"New alt-text\":\"ANSA logos and brand icons\"\n}\n```"
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 8.6 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 110 KiB |
|
|
@ -0,0 +1,27 @@
|
|||
[
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/65b1e732d70cd62fed69bb610309f481.jpg",
|
||||
"alt_text": "Una ricerca indica perché l'Alzheimer cancella i ricordi delle persone care (fonte: Pixabay)",
|
||||
"mllm_response": "{\"Original alt-text assessment\" : \"4\", \"Assessment\" : \"success\", \"EvaluationResult\": \"The original alt-text effectively describes the image's purpose, linking Alzheimer's effects on memory with the visual metaphor of a tree resembling a human head losing leaves. However, the source 'Pixabay' is unnecessary for alt-text.\", \"New alt-text\":\"Tree shaped like human head losing leaves, symbolizing Alzheimer's memory loss.\"}"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/9/6/0f911d17a8957d5d0083d0395e255363.jpg",
|
||||
"alt_text": "Toni Servillo e Paolo Sorrentino sul set de La Grazia",
|
||||
"mllm_response": "{\"Original alt-text assessment\" : \"3\", \"Assessment\" : \"success\", \"EvaluationResult\": \"The alt-text accurately identifies Toni Servillo and Paolo Sorrentino on the set of 'La Grazia,' which aligns with the surrounding context and page content, meeting WCAG guidelines.\", \"New alt-text\":\"Toni Servillo and Paolo Sorrentino on the set of 'La Grazia'.\"}"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/488a353e6eb31d52269c94e991c722f6.jpg",
|
||||
"alt_text": "",
|
||||
"mllm_response": "{\"Original alt-text assessment\" : \"3\", \"Assessment\" : \"warning\", \"EvaluationResult\": \"The alt-text is absent, making it impossible to assess the appropriateness. The image shows a mountainous landscape and a person in front, possibly linked to Italian culture or news.\", \"New alt-text\":\"A person in front of snowy mountains, linked to Italian news or culture.\"}"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_204x88/2025/11/17/7c493cc579efd0c5b1480eb31027a5db.jpg",
|
||||
"alt_text": "Andrea Riccardi alla cena d’onore per la presentazione della 1/a conferenza dell’Italofonia",
|
||||
"mllm_response": "{\"Original alt-text assessment\" : \"4\", \"Assessment\" : \"success\", \"EvaluationResult\": \"The original alt-text sufficiently describes the image by providing context about Andrea Riccardi and the event being presented. It aligns well with the page content and purpose.\", \"New alt-text\":\"Andrea Riccardi at the dinner for the presentation of the 1st Italophony conference\"}"
|
||||
},
|
||||
{
|
||||
"image_url": "http://ansa.it/webimages/img_672x448/2024/10/23/c492b5d96f5a57be0d29cdee7b23e0fd.jpg",
|
||||
"alt_text": "FdI attacca il colle. La replica: 'Ridicolo'",
|
||||
"mllm_response": "{\"Original alt-text assessment\" : 2, \"Assessment\" : \"failure\", \"EvaluationResult\": \"The original alt-text is insufficient and fails to describe the image purpose. The image likely relates to political commentary involving FdI, Meloni, and Mattarella, which isn't conveyed properly.\", \"New alt-text\":\"A political meeting with blurred faces, related to controversies between FdI and the Presidency of the Republic.\"}"
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
|
@ -0,0 +1 @@
|
|||
<svg fill="none" height="16" viewBox="0 0 92 16" width="92" xmlns="http://www.w3.org/2000/svg"><path clip-rule="evenodd" d="m31.0891 1.53187-.3349.61797c-1.1791-.79967-2.5977-.77779-3.393-.76553-.0878.00135-.1681.00259-.2395.00259-.7186 0-3.3354.51648-3.4218 2.56608-.0847 2.00068.6735 2.78718 1.9216 3.22211.7018.24491 1.5035.43696 2.2398.61335.5713.13686 1.1033.26429 1.5187.39968.9509.30807.9707 1.36278.1693 1.83758-.8032.4766-1.7955.3316-2.9139-.10511-1.1184-.43312-1.52-2.14747-1.52-2.14747h-1.3093v3.84368h1.1815l.4016-.743s.9941.888 3.2525.888c3.4217 0 4.1385-2.10761 4.1385-3.24386 0-1.13626-.6987-2.02605-1.4786-2.45736-.7816-.43674-2.0692-.80824-2.6816-.91154-.6123-.10329-1.4785-.32982-2.0062-.59621-.5277-.27184-.4845-1.69804.9077-1.74154 1.3939-.03987 1.6893.10511 2.451.60166.7582.49654.9473 1.69804.9473 1.69804h1.3526v-3.57912zm-25.30726 2.41481h-.00361l-1.22644 3.38883h2.23497zm-4.56178 6.28832c.15848 0 .29355-.0362.40881-.1105h-.0018c.11526-.0779.1981-.18485.24853-.42768l3.01117-8.07883h3.0652l2.67983 8.07883c.0648.30082.135.41858.2089.46578.0756.0489.2251.0724.4466.0724h.5061v1.1146h-5.38484v-1.1146h.48445c.26654 0 .44484-.0326.53668-.0978.09365-.0653.11526-.1758.06664-.33165l-.3728-1.36097h-2.95173l-.41962 1.36097c-.05763.15585-.04323.26635.04142.33165.08464.0652.26294.0978.52767.0978h.48446v1.1146h-4.113347v-1.1146zm13.94554-.0994c-.1009-.0652-.1513-.17575-.1513-.3316l-.0036-.00181v-5.16117l4.3618 6.70518h2.7429v-8.07703c0-.15222.0504-.26458.1513-.32982.1008-.06342.2773-.09786.5294-.09786h.4521v-1.10907h-4.117v1.11089h.4539c.2503 0 .4268.03262.5276.09785.1027.06524.1513.1776.1513.32983v4.83497l-3.9134-6.37354h-4.3223v1.11089h.4539c.2521 0 .4268.03262.5276.09785.1009.06524.1513.1776.1513.32983v6.53301c0 .15585-.0504.2664-.1513.3316-.1008.0653-.2755.0979-.5276.0979h-.4539v1.1145h4.1188v-1.1145h-.4539c-.2521 0-.4286-.0326-.5276-.0979zm22.3844-6.18875h.0018l.9761 3.38883h-2.1684zm-4.0251 6.17785c-.1099.0743-.2432.1105-.3944.1105h-.5133v1.1145h3.9855v-1.1145h-.4683c-.2575 0-.4286-.0326-.5096-.0978-.0847-.0653-.0991-.17583-.0433-.33168l.4106-1.36097h2.8617l.362 1.36097c.0468.15585.027.26638-.0648.33168-.0901.0652-.2629.0978-.5205.0978h-.47v1.1145h5.2191v-1.1145h-.4881c-.2143 0-.3601-.0235-.4322-.0725-.072-.0471-.1423-.16488-.2035-.46571l-2.5987-8.07883h-2.968l-2.9229 8.07883c-.0468.24284-.1279.34971-.2395.42771z" fill="#34b233" fill-rule="evenodd"/><path d="m49.77 6.99018c-.173-1.13544-1.1895-2.07623-2.5196-2.07623-1.7193 0-2.8115 1.29764-2.8115 3.02783 0 1.75181 1.0597 3.03862 2.7358 3.03862 1.2869 0 2.4223-.8543 2.6494-2.0762h-1.1354c-.1514.69207-.7786 1.1138-1.4923 1.1138-.8002 0-1.5572-.64882-1.5572-2.08704 0-1.41659.7461-2.05459 1.5572-2.05459.7353 0 1.3301.45417 1.449 1.11381zm2.0178-1.12463v-2.86562h-1.1246v7.83987h1.1246v-3.12511c0-1.15706.4758-1.85995 1.449-1.85995 1.0598 0 1.2003.77858 1.2003 1.62205v3.36301h1.1247v-3.66579c0-1.35171-.5407-2.26006-1.9465-2.26006-.9083 0-1.4923.37848-1.8275.9516zm8.943 3.26573c-.2379.5515-.7137.88672-1.5247.88672-.9084 0-1.5897-.67044-1.6978-1.741h4.4336c.119-1.89239-.93-3.36305-2.725-3.36305-1.6545 0-2.8657 1.20032-2.8657 3.0062 0 1.68693 1.0165 3.06025 2.8981 3.06025 1.4815 0 2.3466-.8867 2.6169-1.84912zm-3.2009-1.741c.1514-1.10299.8002-1.55717 1.6762-1.55717.9299 0 1.5355.69208 1.5679 1.55717zm10.5545-.4001c-.173-1.13544-1.1895-2.07623-2.5196-2.07623-1.7193 0-2.8115 1.29764-2.8115 3.02783 0 1.75181 1.0597 3.03862 2.7358 3.03862 1.2869 0 2.4223-.8543 2.6494-2.0762h-1.1354c-.1514.69207-.7786 1.1138-1.4923 1.1138-.8002 0-1.5572-.64882-1.5572-2.08704 0-1.41659.7461-2.05459 1.5572-2.05459.7353 0 1.33.45417 1.449 1.11381zm2.0178-3.99025h-1.1246v7.83987h1.1246v-1.90316l.6596-.70289 1.8492 2.60605h1.3409l-2.4223-3.41708 2.26-2.40063h-1.3733l-2.3141 2.48714z" fill="#34b233"/><g stroke="#34b233"><path d="m81.9707 7.09541 2.1397 2.2368c.1064.1113.2842.1113.3907 0l4.8083-5.02655" stroke-width="1.41507"/><path d="m79.4801.566028h11.7106v11.665972l-5.8553 3.1263-5.8553-3.1263z" stroke-width="1.13206"/></g></svg>
|
||||
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 6.1 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
|
|
@ -0,0 +1,112 @@
|
|||
<svg width="320" height="32" viewBox="0 0 320 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M310.755 31.5802C308.955 31.5802 307.429 31.1935 306.175 30.4202C304.922 29.6469 303.969 28.5335 303.315 27.0802C302.675 25.6269 302.355 23.8935 302.355 21.8802V10.6002C302.355 7.41353 303.042 4.96686 304.415 3.2602C305.789 1.55353 307.882 0.700195 310.695 0.700195C312.522 0.700195 314.035 1.0602 315.235 1.7802C316.435 2.48686 317.322 3.4602 317.895 4.7002C318.469 5.9402 318.755 7.3602 318.755 8.9602V10.1602H312.715V8.9402C312.715 8.11353 312.569 7.4602 312.275 6.9802C311.995 6.48686 311.455 6.2402 310.655 6.2402C309.882 6.2402 309.335 6.52686 309.015 7.1002C308.709 7.67353 308.555 8.48686 308.555 9.5402V14.1402H308.675C309.529 12.9535 310.789 12.3602 312.455 12.3602C313.842 12.3602 315.035 12.7069 316.035 13.4002C317.035 14.0935 317.789 15.0202 318.295 16.1802C318.815 17.3402 319.075 18.6269 319.075 20.0402V22.4202C319.075 25.3002 318.362 27.5469 316.935 29.1602C315.509 30.7735 313.449 31.5802 310.755 31.5802ZM310.715 25.8802C311.515 25.8802 312.075 25.5802 312.395 24.9802C312.715 24.3802 312.875 23.5469 312.875 22.4802V20.1602C312.875 19.3202 312.709 18.6135 312.375 18.0402C312.042 17.4535 311.469 17.1602 310.655 17.1602C309.255 17.1602 308.555 18.1669 308.555 20.1802V22.4802C308.555 23.5069 308.709 24.3335 309.015 24.9602C309.322 25.5735 309.889 25.8802 310.715 25.8802Z" fill="url(#paint0_linear_210_15749)"/>
|
||||
<path d="M286.086 23.9002C287.726 21.9269 289.106 20.1935 290.226 18.7002C291.359 17.2069 292.353 15.6602 293.206 14.0602C294.059 12.4469 294.486 11.0269 294.486 9.80021V8.58021C294.486 7.94022 294.319 7.42022 293.986 7.02022C293.666 6.62021 293.199 6.42021 292.586 6.42021C291.826 6.42021 291.293 6.70021 290.986 7.26022C290.693 7.82021 290.546 8.50688 290.546 9.32021V10.7602H284.506V9.32021C284.506 7.61355 284.813 6.11355 285.426 4.82022C286.039 3.52688 286.953 2.52022 288.166 1.80022C289.393 1.08021 290.893 0.720215 292.666 0.720215C294.266 0.720215 295.666 1.00021 296.866 1.56021C298.066 2.12021 298.999 2.95355 299.666 4.06021C300.346 5.15355 300.686 6.48688 300.686 8.06021V9.08021C300.686 11.0402 300.239 13.0069 299.346 14.9802C298.466 16.9535 297.473 18.6935 296.366 20.2002C295.273 21.7069 293.933 23.4002 292.346 25.2802H300.766V31.0002H284.546V25.7802L286.086 23.9002Z" fill="url(#paint1_linear_210_15749)"/>
|
||||
<path d="M274.177 31.5802C271.257 31.5802 269.09 30.7069 267.677 28.9602C266.263 27.2135 265.557 24.6935 265.557 21.4002V10.8602C265.557 7.5802 266.257 5.06686 267.657 3.3202C269.07 1.57353 271.23 0.700195 274.137 0.700195C277.083 0.700195 279.257 1.58686 280.657 3.3602C282.057 5.13353 282.757 7.63353 282.757 10.8602V21.4002C282.757 24.6802 282.05 27.2002 280.637 28.9602C279.237 30.7069 277.083 31.5802 274.177 31.5802ZM274.177 25.8602C274.91 25.8602 275.45 25.5669 275.797 24.9802C276.143 24.3935 276.317 23.5069 276.317 22.3202V9.9402C276.317 8.76686 276.143 7.88686 275.797 7.3002C275.45 6.71353 274.91 6.4202 274.177 6.4202C273.417 6.4202 272.863 6.71353 272.517 7.3002C272.17 7.88686 271.997 8.76686 271.997 9.9402V22.3202C271.997 23.5069 272.17 24.3935 272.517 24.9802C272.863 25.5669 273.417 25.8602 274.177 25.8602Z" fill="url(#paint2_linear_210_15749)"/>
|
||||
<path d="M249.287 23.9002C250.927 21.9269 252.307 20.1935 253.427 18.7002C254.56 17.2069 255.554 15.6602 256.407 14.0602C257.26 12.4469 257.687 11.0269 257.687 9.80021V8.58021C257.687 7.94022 257.52 7.42022 257.187 7.02022C256.867 6.62021 256.4 6.42021 255.787 6.42021C255.027 6.42021 254.494 6.70021 254.187 7.26022C253.894 7.82021 253.747 8.50688 253.747 9.32021V10.7602H247.707V9.32021C247.707 7.61355 248.014 6.11355 248.627 4.82022C249.24 3.52688 250.154 2.52022 251.367 1.80022C252.594 1.08021 254.094 0.720215 255.867 0.720215C257.467 0.720215 258.867 1.00021 260.067 1.56021C261.267 2.12021 262.2 2.95355 262.867 4.06021C263.547 5.15355 263.887 6.48688 263.887 8.06021V9.08021C263.887 11.0402 263.44 13.0069 262.547 14.9802C261.667 16.9535 260.674 18.6935 259.567 20.2002C258.474 21.7069 257.134 23.4002 255.547 25.2802H263.967V31.0002H247.747V25.7802L249.287 23.9002Z" fill="url(#paint3_linear_210_15749)"/>
|
||||
<path d="M224.3 1.26025H232.9L238.72 31.0003H232.14L231.3 26.0003H225.88L225.06 31.0003H218.48L224.3 1.26025ZM230.52 20.6203L228.9 10.4803L228.64 8.18026H228.56L228.3 10.4803L226.68 20.6203H230.52Z" fill="url(#paint4_linear_210_15749)"/>
|
||||
<path d="M199.354 1.26025H205.734L210.434 15.0403L211.154 17.6803H211.234L211.114 14.6803V1.26025H217.454V31.0003H211.054L206.374 17.3803L205.654 14.7603H205.574L205.694 17.7203V31.0003H199.354V1.26025Z" fill="url(#paint5_linear_210_15749)"/>
|
||||
<path d="M190.426 1.26025H196.866V31.0003H190.426V1.26025Z" fill="url(#paint6_linear_210_15749)"/>
|
||||
<path d="M178.103 7.14025H173.383V1.26025H189.303V7.14025H184.563V31.0003H178.103V7.14025Z" fill="url(#paint7_linear_210_15749)"/>
|
||||
<path d="M156.246 1.26025H164.886C167.673 1.26025 169.773 1.90692 171.186 3.20025C172.613 4.48026 173.326 6.36026 173.326 8.84026V11.2803C173.326 12.8803 172.999 14.2203 172.346 15.3003C171.693 16.3803 170.739 17.1069 169.486 17.4803V17.5203C171.713 18.0403 172.906 20.0936 173.066 23.6803L173.206 27.4003C173.299 29.0669 173.493 30.2669 173.786 31.0003H167.366C167.126 29.8536 166.953 28.3003 166.846 26.3403L166.666 22.9403C166.599 22.0469 166.353 21.3869 165.926 20.9603C165.513 20.5336 164.886 20.3203 164.046 20.3203H162.686V31.0003H156.246V1.26025ZM164.326 15.4003C165.139 15.4003 165.766 15.1603 166.206 14.6803C166.659 14.1869 166.886 13.3536 166.886 12.1803V9.60025C166.886 8.57359 166.686 7.82692 166.286 7.36026C165.899 6.88026 165.313 6.64025 164.526 6.64025H162.686V15.4003H164.326Z" fill="url(#paint8_linear_210_15749)"/>
|
||||
<path d="M145.464 31.5802C142.544 31.5802 140.35 30.7269 138.884 29.0202C137.417 27.3135 136.684 24.7735 136.684 21.4002V10.8602C136.684 7.51353 137.41 4.98686 138.864 3.2802C140.33 1.5602 142.517 0.700195 145.424 0.700195C148.344 0.700195 150.537 1.5602 152.004 3.2802C153.484 4.98686 154.224 7.51353 154.224 10.8602V21.4002C154.224 24.7602 153.49 27.3002 152.024 29.0202C150.557 30.7269 148.37 31.5802 145.464 31.5802ZM145.464 25.8602C146.237 25.8602 146.817 25.5802 147.204 25.0202C147.59 24.4469 147.784 23.5469 147.784 22.3202V9.9402C147.784 8.71353 147.59 7.8202 147.204 7.2602C146.817 6.7002 146.237 6.4202 145.464 6.4202C144.69 6.4202 144.104 6.7002 143.704 7.2602C143.317 7.8202 143.124 8.71353 143.124 9.9402V22.3202C143.124 23.5469 143.317 24.4469 143.704 25.0202C144.104 25.5802 144.69 25.8602 145.464 25.8602Z" fill="url(#paint9_linear_210_15749)"/>
|
||||
<path d="M126.556 31.5802C123.663 31.5802 121.483 30.7335 120.016 29.0402C118.563 27.3469 117.836 24.8069 117.836 21.4202V10.9202C117.836 7.50686 118.556 4.95353 119.996 3.2602C121.449 1.55353 123.636 0.700195 126.556 0.700195C132.383 0.700195 135.296 4.0002 135.296 10.6002V12.9202H128.856V9.9202C128.856 8.7602 128.689 7.88686 128.356 7.3002C128.036 6.71353 127.443 6.4202 126.576 6.4202C125.043 6.4202 124.276 7.58686 124.276 9.9202V22.3202C124.276 24.6802 125.036 25.8602 126.556 25.8602C127.356 25.8602 127.936 25.5869 128.296 25.0402C128.669 24.4935 128.856 23.6135 128.856 22.4002V18.9802H135.296V21.7002C135.296 24.9535 134.609 27.4135 133.236 29.0802C131.876 30.7469 129.649 31.5802 126.556 31.5802Z" fill="url(#paint10_linear_210_15749)"/>
|
||||
<path d="M109 22V17H116V22H109Z" fill="url(#paint11_linear_210_15749)"/>
|
||||
<path d="M98.4577 31.5802C95.5377 31.5802 93.3444 30.7269 91.8777 29.0202C90.4111 27.3135 89.6777 24.7735 89.6777 21.4002V10.8602C89.6777 7.51353 90.4044 4.98686 91.8577 3.2802C93.3244 1.5602 95.5111 0.700195 98.4177 0.700195C101.338 0.700195 103.531 1.5602 104.998 3.2802C106.478 4.98686 107.218 7.51353 107.218 10.8602V21.4002C107.218 24.7602 106.484 27.3002 105.018 29.0202C103.551 30.7269 101.364 31.5802 98.4577 31.5802ZM98.4577 25.8602C99.2311 25.8602 99.8111 25.5802 100.198 25.0202C100.584 24.4469 100.778 23.5469 100.778 22.3202V9.9402C100.778 8.71353 100.584 7.8202 100.198 7.2602C99.8111 6.7002 99.2311 6.4202 98.4577 6.4202C97.6844 6.4202 97.0977 6.7002 96.6977 7.2602C96.3111 7.8202 96.1177 8.71353 96.1177 9.9402V22.3202C96.1177 23.5469 96.3111 24.4469 96.6977 25.0202C97.0977 25.5802 97.6844 25.8602 98.4577 25.8602Z" fill="url(#paint12_linear_210_15749)"/>
|
||||
<path d="M69.5508 1.26025H75.9308L80.6308 15.0403L81.3508 17.6803H81.4308L81.3108 14.6803V1.26025H87.6508V31.0003H81.2508L76.5708 17.3803L75.8508 14.7603H75.7708L75.8908 17.7203V31.0003H69.5508V1.26025Z" fill="url(#paint13_linear_210_15749)"/>
|
||||
<path d="M54.1052 1.26025H62.7052L68.5252 31.0003H61.9452L61.1052 26.0003H55.6852L54.8652 31.0003H48.2852L54.1052 1.26025ZM60.3252 20.6203L58.7052 10.4803L58.4452 8.18026H58.3652L58.1052 10.4803L56.4852 20.6203H60.3252Z" fill="url(#paint14_linear_210_15749)"/>
|
||||
<path d="M34.9004 1.26025H41.3404V25.1203H48.4204V31.0003H34.9004V1.26025Z" fill="url(#paint15_linear_210_15749)"/>
|
||||
<path d="M25.9727 1.26025H32.4127V31.0003H25.9727V1.26025Z" fill="url(#paint16_linear_210_15749)"/>
|
||||
<path d="M0.640625 1.26025H8.50062L11.8006 16.7803L12.0206 18.6603H12.1006L12.3206 16.7803L15.6206 1.26025H23.4806V31.0003H17.1606V17.4203L17.3606 12.1803H17.2806L17.0206 13.7003L14.0806 27.0403H10.0606L7.12063 13.7003L6.84062 12.1803H6.76062L6.98063 17.4203V31.0003H0.640625V1.26025Z" fill="url(#paint17_linear_210_15749)"/>
|
||||
<defs>
|
||||
<linearGradient id="paint0_linear_210_15749" x1="-7.99923" y1="15" x2="320.001" y2="15" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint1_linear_210_15749" x1="-7.99974" y1="15.0001" x2="320" y2="15.0002" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint2_linear_210_15749" x1="-7.99965" y1="15" x2="320" y2="15" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint3_linear_210_15749" x1="-8.00015" y1="15.0002" x2="320" y2="15.0002" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint4_linear_210_15749" x1="-7.99922" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint5_linear_210_15749" x1="-7.99898" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint6_linear_210_15749" x1="-8.00015" y1="15" x2="320" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint7_linear_210_15749" x1="-7.99875" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint8_linear_210_15749" x1="-7.9986" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint9_linear_210_15749" x1="-7.99922" y1="15" x2="320.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint10_linear_210_15749" x1="-7.99843" y1="15" x2="320.002" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint11_linear_210_15749" x1="52.1962" y1="14.7292" x2="221.268" y2="14.7292" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint12_linear_210_15749" x1="-0.99883" y1="15" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint13_linear_210_15749" x1="-0.998595" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint14_linear_210_15749" x1="-0.999217" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint15_linear_210_15749" x1="-0.998982" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint16_linear_210_15749" x1="-1.00015" y1="15.0001" x2="327" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint17_linear_210_15749" x1="-0.999373" y1="15.0001" x2="327.001" y2="15.0001" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#038634"/>
|
||||
<stop offset="0.5" stop-color="#0081C8"/>
|
||||
<stop offset="1" stop-color="#EA2E4C"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 7.2 KiB |