Compare commits

...

102 Commits

Author SHA1 Message Date
v-dumas
ff94639a61 N°9471 - Rack can contain Enclosure 2026-05-05 10:46:34 +02:00
Stephen Abello
8de5c2525b Merge branch 'support/3.2' into develop
# Conflicts:
#	css/setup.css
#	datamodels/2.x/itop-portal-base/portal/public/css/portal.css
#	package-lock.json
2026-04-29 17:10:05 +02:00
Stephen Abello
de4ec9d9ce N°9128 - Update CKEditor5 to v48 (#896)
* N°9128 - Update CKEditor5 to v48

* Move some CSS vars to ckeditor, align variable overload in portal and backoffice

* Add specifics to 3.2 portal

* Update CKEditor5 build files

* Update scssphp with patched version that handles pseudo selectors and attribute selectors

* Update scssphp patched version to fix missing $this

* Fix translations specific language file import

* Remove unused maximize parameters

* Update CKEditor5 build files

* Fix font size/color for 3.2 portal

* Avoid CKEditor styles from bleeding into fields
2026-04-29 16:56:20 +02:00
Molkobain
ea35ad48d2 📝 Update itop-version-hisotry.md and fix README.md link 2026-04-29 16:49:11 +02:00
Molkobain
90b7c3ac6a Merge remote-tracking branch 'origin/support/3.2' into develop
# Conflicts:
#	.doc/itop-version-history.md
2026-04-29 16:48:34 +02:00
Molkobain
8f2c990065 📝 Fix itop-version-history.md display due to new branch 2026-04-29 16:47:03 +02:00
Benjamin Dalsass
03437c3453 📝 Restore itop-version-history.md on support/3.2 branch 2026-04-29 16:37:38 +02:00
Purple Grape
1113788d84 N°9518 - fix 2 typo bug (#882) 2026-04-29 14:29:24 +02:00
Benjamin DALSASS
eee57b25fa N°8699 - attributedef.class.inc.php to PSR4
- fix CI failed
2026-04-29 09:54:16 +02:00
Benjamin Dalsass
7be19c713b N°8699 - attributedef.class.inc.php to PSR4 - fixs (#890) 2026-04-28 10:46:09 +02:00
Lenaick
befe294986 N°3472 - Refactor LDAP debug level handling to ensure proper logging during connection attempts (#892) 2026-04-27 14:26:38 +02:00
lenaick.moreira
d271dda54f N°9341 - Update Turbo third-party lib to v8.0.21 min. to fix security issue 2026-04-27 12:21:17 +02:00
Molkobain
04bb07fc59 Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-27 11:41:27 +02:00
Molkobain
33a51b47bf N°9549 - Fix emails with mime type different than text/plain or text/html are no longer displayed correctly (#895)
* N°9549 - Fix emails with mime type different than text/plain or text/html are no longer displayed correctly

* N°9549 - Fix mime type comparisons to use the primary mime type instead of the whole string
2026-04-27 11:31:56 +02:00
jf-cbd
1772a9f73b 📝 Improve issues template 2026-04-24 16:56:38 +02:00
jf-cbd
ed45c3bbb0 📝 Improve issues template 2026-04-24 15:18:03 +02:00
jf-cbd
a49ebd531e Make issues forms despite unformal rules (.tar.gz is supposed to be supported but is not, etc.) 2026-04-23 17:13:08 +02:00
Molkobain
c5ca5f9176 Merge remote-tracking branch 'origin/support/3.2' into develop
# Conflicts:
#	core/event.class.inc.php
2026-04-23 15:54:17 +02:00
Molkobain
e768cc1c0c N°9537 - Update "details" zlist on EventNotificationEmail to display cc and cci attributes 2026-04-23 15:49:30 +02:00
jf-cbd
12b1339542 Update CONTRIBUTING.md and reduce size of related picture 2026-04-23 14:57:26 +02:00
jf-cbd
278254c955 Merge remote-tracking branch 'origin/support/3.2' into develop
# Conflicts:
#	.github/pull_request_template.md
#	CONTRIBUTING.md
2026-04-23 14:43:38 +02:00
jf-cbd
f6741a6306 Update contributions guidelines (#888) 2026-04-23 13:48:23 +02:00
jf-cbd
19386191aa N°8397 - remove empty file (probably re-added by mistake in develop in a merge conflict) 2026-04-22 15:32:43 +02:00
Stephen Abello
d76752a988 N°9491 - Rename new enclosure icon 2026-04-22 14:11:56 +02:00
Vincent Dumas
8c2c4e5ff0 N°9491 - Add OS Family on OS Patch and OS Licence (#886)
* N°9492 - Add icon on OS Family, OS Version and IOS Version classes
* Change enclosure icon
* Update NL dictionnaries
  * Update datamodels/2.x/itop-config-mgmt/dictionaries/nl.dict.itop-config-mgmt.php
  * Update datamodels/2.x/itop-config-mgmt/dictionaries/nl.dict.itop-config-mgmt.php
  * Update datamodels/2.x/itop-config-mgmt/dictionaries/de.dict.itop-config-mgmt.php
  * Update datamodels/2.x/itop-config-mgmt/dictionaries/cs.dict.itop-config-mgmt.php
  * Update datamodels/2.x/itop-config-mgmt/dictionaries/da.dict.itop-config-mgmt.php
Co-authored-by: Thomas Casteleyn <thomas.casteleyn@super-visions.com>
2026-04-22 09:56:12 +02:00
Stephen Abello
4bc28ea38a 💚 Fix CI by recompiling setup.css 2026-04-22 09:05:23 +02:00
jf-cbd
805087a01b N°9319 increase php min. version to 8.2 (#887)
* Update minimum PHP version to 8.2
* Fix previous wrong resolution of merge conflict
2026-04-20 14:47:44 +02:00
Stephen Abello
1ec8aca12d Remove ~~ from French dict entry 2026-04-20 10:23:03 +02:00
Molkobain
f439490bfc Merge remote-tracking branch 'origin/support/3.2' into develop
# Conflicts:
#	approot.inc.php
#	core/config.class.inc.php
#	datamodels/2.x/authent-cas/module.authent-cas.php
#	datamodels/2.x/authent-external/module.authent-external.php
#	datamodels/2.x/authent-ldap/module.authent-ldap.php
#	datamodels/2.x/authent-local/module.authent-local.php
#	datamodels/2.x/combodo-backoffice-darkmoon-theme/module.combodo-backoffice-darkmoon-theme.php
#	datamodels/2.x/combodo-backoffice-fullmoon-high-contrast-theme/module.combodo-backoffice-fullmoon-high-contrast-theme.php
#	datamodels/2.x/combodo-backoffice-fullmoon-protanopia-deuteranopia-theme/module.combodo-backoffice-fullmoon-protanopia-deuteranopia-theme.php
#	datamodels/2.x/combodo-backoffice-fullmoon-tritanopia-theme/module.combodo-backoffice-fullmoon-tritanopia-theme.php
#	datamodels/2.x/combodo-db-tools/module.combodo-db-tools.php
#	datamodels/2.x/itop-attachments/module.itop-attachments.php
#	datamodels/2.x/itop-backup/module.itop-backup.php
#	datamodels/2.x/itop-bridge-cmdb-services/module.itop-bridge-cmdb-services.php
#	datamodels/2.x/itop-bridge-cmdb-ticket/module.itop-bridge-cmdb-ticket.php
#	datamodels/2.x/itop-bridge-datacenter-mgmt-services/module.itop-bridge-datacenter-mgmt-services.php
#	datamodels/2.x/itop-bridge-endusers-devices-services/module.itop-bridge-endusers-devices-services.php
#	datamodels/2.x/itop-bridge-storage-mgmt-services/module.itop-bridge-storage-mgmt-services.php
#	datamodels/2.x/itop-bridge-virtualization-mgmt-services/module.itop-bridge-virtualization-mgmt-services.php
#	datamodels/2.x/itop-bridge-virtualization-storage/module.itop-bridge-virtualization-storage.php
#	datamodels/2.x/itop-change-mgmt-itil/module.itop-change-mgmt-itil.php
#	datamodels/2.x/itop-change-mgmt/module.itop-change-mgmt.php
#	datamodels/2.x/itop-config-mgmt/module.itop-config-mgmt.php
#	datamodels/2.x/itop-config/module.itop-config.php
#	datamodels/2.x/itop-core-update/module.itop-core-update.php
#	datamodels/2.x/itop-datacenter-mgmt/module.itop-datacenter-mgmt.php
#	datamodels/2.x/itop-endusers-devices/module.itop-endusers-devices.php
#	datamodels/2.x/itop-faq-light/module.itop-faq-light.php
#	datamodels/2.x/itop-files-information/module.itop-files-information.php
#	datamodels/2.x/itop-full-itil/module.itop-full-itil.php
#	datamodels/2.x/itop-hub-connector/module.itop-hub-connector.php
#	datamodels/2.x/itop-incident-mgmt-itil/module.itop-incident-mgmt-itil.php
#	datamodels/2.x/itop-knownerror-mgmt/module.itop-knownerror-mgmt.php
#	datamodels/2.x/itop-oauth-client/module.itop-oauth-client.php
#	datamodels/2.x/itop-portal-base/module.itop-portal-base.php
#	datamodels/2.x/itop-portal/module.itop-portal.php
#	datamodels/2.x/itop-problem-mgmt/module.itop-problem-mgmt.php
#	datamodels/2.x/itop-profiles-itil/module.itop-profiles-itil.php
#	datamodels/2.x/itop-request-mgmt-itil/module.itop-request-mgmt-itil.php
#	datamodels/2.x/itop-request-mgmt/module.itop-request-mgmt.php
#	datamodels/2.x/itop-service-mgmt-provider/module.itop-service-mgmt-provider.php
#	datamodels/2.x/itop-service-mgmt/module.itop-service-mgmt.php
#	datamodels/2.x/itop-sla-computation/module.itop-sla-computation.php
#	datamodels/2.x/itop-storage-mgmt/module.itop-storage-mgmt.php
#	datamodels/2.x/itop-structure/module.itop-structure.php
#	datamodels/2.x/itop-themes-compat/module.itop-themes-compat.php
#	datamodels/2.x/itop-tickets/module.itop-tickets.php
#	datamodels/2.x/itop-virtualization-mgmt/module.itop-virtualization-mgmt.php
#	datamodels/2.x/itop-welcome-itil/module.itop-welcome-itil.php
#	datamodels/2.x/version.xml
2026-04-20 09:24:02 +02:00
Molkobain
39011faedd Update ITOP_VERSION constant version for 3.2.3 release 2026-04-20 09:17:18 +02:00
Stephen Abello
46f8f5faeb Update modules and constants version for 3.2.3 release 2026-04-17 15:24:10 +02:00
Stephen Abello
170d24d0ad Update licenses for 3.2.3 release 2026-04-17 15:17:55 +02:00
v-dumas
9683b8d96a N°9499 - Ticket ITIL: remove 'request type' from UserRequest details 2026-04-17 09:51:01 +02:00
Molkobain
a6171c896b Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-17 09:20:18 +02:00
Benjamin DALSASS
89231976f8 Revert N°8638 - Adapt mysqldump calls to follow iTop SSL configuration 2026-04-16 15:00:01 +02:00
Stephen Abello
4e24ac508d Merge branch 'support/3.2' into develop 2026-04-15 17:01:58 +02:00
Molkobain
e1c804139f 👥 Add Lénaick to the sample data, welcome! 🙌 2026-04-15 16:55:19 +02:00
Stephen Abello
f0a95cbb3d N°9447 - Harmonize title and panel logo rules 2026-04-15 16:49:52 +02:00
Stephen Abello
265acb4a1e Merge branch 'support/3.2' into develop
# Conflicts:
#	css/setup.css
2026-04-15 15:16:01 +02:00
Stephen Abello
30f720b9ad N°9447 - Setup logo is repeating vertically (#884) 2026-04-15 15:13:28 +02:00
Benjamin DALSASS
1992c7e7c1 Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-14 09:09:23 +02:00
Benjamin DALSASS
87dd003a6d N°8638 - Adapt mysqldump calls to follow iTop SSL configuration
- fix unitary test
2026-04-14 08:54:54 +02:00
Benjamin DALSASS
4dbaaad2b9 N°9379 - PHP unserialze function - security hardening 2026-04-14 08:43:47 +02:00
Benjamin DALSASS
2fe49fbff4 Merge remote-tracking branch 'origin/support/3.2' into develop
# Conflicts:
#	core/attributedef.class.inc.php
#	css/backoffice/_shame.scss
#	pages/csvimport.php
2026-04-14 08:41:54 +02:00
Benjamin Dalsass
7201bef8db N°8638 - Adapt mysqldump calls to follow iTop SSL configuration (#883) 2026-04-14 08:08:17 +02:00
Benjamin Dalsass
af01ff9e62 N°9121 - CSV Import : The advanced mode option no longer works as bef… (#863) 2026-04-14 08:02:00 +02:00
Molkobain
ab1290dfd0 N°8766 - Fix user's login displayed in backoffice log entry instead of user's contact friendlyname when user is disabled 2026-04-13 21:14:03 +02:00
Stephen Abello
68d14c4de6 N°9468 - Fix double scroll down bars in input set (#876) 2026-04-13 16:28:56 +02:00
Benjamin Dalsass
a96e1c286d N°9379 PHP unserialize encapsulation (#878) 2026-04-13 16:04:00 +02:00
Stephen Abello
b799be3cb7 N°9177 - Blockquote in HTML field are unreadable in darkmoon (again) 2026-04-13 10:24:55 +02:00
jf-cbd
bcf1bb003c Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-13 10:17:26 +02:00
jf-cbd
d000d93b19 N°8766 - Fix wrong author on portal log (#880) 2026-04-13 10:10:40 +02:00
v-dumas
83a67dff96 N°9138 - restore old fieldset ids to ease migration 2026-04-10 16:53:26 +02:00
Vincent Dumas
79270950ee N°9418 - Add colors on UserRequest request type in Simple Ticket (#862) 2026-04-09 16:58:07 +02:00
Stephen Abello
9f25635a64 N°9177 - Blockquote in HTML field are unreadable in darkmoon 2026-04-09 15:19:15 +02:00
Vincent Dumas
18b91df58d N°8995 - manage End of Support at the Model and Software level (#875)
* N°8995 - CMDB: Manage Groups as TagSet on FunctionalCI
* N°8995 - Set logo as semantic field on NetworkDeviceType
2026-04-09 11:47:32 +02:00
Stephen Abello
6bd34dc73e N°4460 - Fix date and date time picker in Darkmoon 2026-04-08 14:59:36 +02:00
Stephen Abello
4afe06d370 Merge branch 'support/3.2' into develop
# Conflicts:
#	core/config.class.inc.php
2026-04-08 14:21:51 +02:00
Stephen Abello
9dc3c56689 N°9448 - Fix external auth variable value (#871) 2026-04-08 14:19:24 +02:00
Stephen Abello
effd35c3e6 N°8758 - Fix mandatory caselog in transition requiring double confirmation (#868) 2026-04-08 14:19:09 +02:00
lenaick.moreira
587d7fcf72 Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-08 10:30:35 +02:00
lenaick.moreira
f1735767c3 💚 Fix CI 2026-04-08 10:19:31 +02:00
lenaick.moreira
bfdc8a68e6 Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-08 09:49:34 +02:00
lenaick.moreira
00735f0c54 N°9483 - The search suggestion message is not displaying correctly 2026-04-08 09:48:15 +02:00
lenaick.moreira
882390e8d6 N°9043 - Fix automatic search on direct linkset block 2026-04-08 09:48:15 +02:00
Lenaick
5d0da47f21 N°8178 - Respect "high_cardinality_classes" parameter on search operation (#870) 2026-04-08 09:47:46 +02:00
lenaick.moreira
684eaac278 Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-08 09:43:20 +02:00
lenaick.moreira
4eadff7f3b ♻️ Refactor BODY_DATA_GUI_TYPE constants to public visibility (N°9101) 2026-04-08 09:38:40 +02:00
Molkobain
4ce8f70382 Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-07 21:10:09 +02:00
Molkobain
f66ce1c956 Fix cURL calls to iTop within Docker dev. environment with PHP version autodetection (#869) 2026-04-07 19:06:30 +02:00
jf-cbd
868eea9b43 Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-07 17:38:21 +02:00
jf-cbd
802f9f3e08 N°8576 - [RequestTemplate] Slowness during the selection of drop-down list field (#872) 2026-04-07 17:06:21 +02:00
v-dumas
70a8bdf427 N°9450 - Add Tape, NAS file System, Fiber Channel Interface in overview dashboard 2026-04-03 09:43:30 +02:00
Vincent Dumas
38cda442e3 N°9138 - Presentation details step2 + move sample data (#866)
N°9471 - Rename in FR Rack as Baie - Switch Baie and Chassis icons
2026-04-02 18:23:11 +02:00
Vincent Dumas
20c8b7c0ce N°9137 logo by network device type (#864)
Add Logo on NetworkDeviceType used as object icon on all NetworkDevice of a given type
Add Brand, OSFamily and NetworkDeviceType icons as dashlet ressources
2026-04-02 17:23:08 +02:00
lenaick.moreira
b58a848cc9 Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-01 16:25:36 +02:00
lenaick.moreira
5c5d98bb78 Enable the retrieval of all data for event notifications in the activity panel 2026-04-01 16:12:36 +02:00
Stephen Abello
a08a9b43f3 N°8737 - Fix search criteria dropdown vertical overflow (#867)
* N°8737 - Fix search criteria dropdown vertical overflow

* Update css/backoffice/components/_search-form.scss
2026-04-01 14:57:10 +02:00
jf-cbd
d9433fead5 Merge remote-tracking branch 'origin/support/3.2' into develop 2026-04-01 10:57:23 +02:00
jf-cbd
abd85ff4db Merge remote-tracking branch 'origin/support/3.2' into support/3.2 2026-04-01 10:37:59 +02:00
jf-cbd
81f328b26e N°8543 - rename security parameter with new convention 2026-04-01 10:37:46 +02:00
lenaick.moreira
9a2c8f10bf Fix CliResetSessionTest by allowing empty POST fields to be defined in the curl options 2026-04-01 10:35:59 +02:00
jf-cbd
1a9e4bd5ad Reformat ormDocumentTest.php 2026-03-31 17:51:06 +02:00
Lenaick
3cdadf3c6e Add tests for lock acquisition functionality (#865) 2026-03-31 17:01:22 +02:00
jf-cbd
36891e441b Merge remote-tracking branch 'origin/support/3.2' into develop
# Conflicts:
#	datamodels/2.x/itop-hub-connector/ajax.php
2026-03-31 16:43:48 +02:00
jf-cbd
a6295f1b14 Duplicate try-catch to avoid finally statement in case of uncorrrecth auth 2026-03-31 16:39:05 +02:00
Stephen Abello
ba6b3da238 N°9231 - Fix unit test for 3.3.0 2026-03-31 16:28:19 +02:00
Stephen Abello
2674e9c47f Merge branch 'support/3.2' into develop
# Conflicts:
#	tests/php-unit-tests/unitary-tests/core/ormDocumentTest.php
2026-03-31 15:51:27 +02:00
Stephen Abello
e467ca83cf N°8532 - Apply filters on all DBSearch classes (#848)
Co-authored-by: Molkobain <lajarige.guillaume@free.fr>
Co-authored-by: Thomas Casteleyn <thomas.casteleyn@super-visions.com>
2026-03-31 15:41:28 +02:00
Anne-Cath
f7b73717b4 Rollback N°2364 - API : remove old linkedset persistance 2026-03-31 10:37:36 +02:00
v-dumas
0d9b34a879 N°9063 - Add ev_autoresolve on Approved UserRequest in Simple Ticket 2026-03-30 17:13:14 +02:00
Stephen Abello
7791585387 N°9231 - Make OrmDocument apply same safety to attachments and regular documents (#860) 2026-03-30 15:25:52 +02:00
v-dumas
a4a0b3c18c Merge remote-tracking branch 'origin/support/3.2' into develop 2026-03-30 14:31:02 +02:00
Molkobain
3406ca79de N°9361 - Update PHPDoc 2026-03-30 13:49:30 +02:00
Stephen Abello
91ad01055e N°5228 - Allow themes variable imports to be overloaded by variable entries (#858) 2026-03-27 15:46:15 +01:00
v-dumas
443fa60459 N°8515 - Access rights & relation labels for container classes 2026-03-27 15:19:33 +01:00
Lenaick
804cdffe42 N°8234 - Fix permission checks to conditionally allow display of unauthorized objects (#859) 2026-03-27 15:09:31 +01:00
v-dumas
5f4affc896 N°9057 - Fix tests broken due to ModuleInstallation given grant_by_profile (2) 2026-03-26 17:56:52 +01:00
v-dumas
042fee2360 N°9057 - Fix tests broken due to ModuleInstallation given grant_by_profile 2026-03-26 17:37:18 +01:00
Vincent Dumas
7f8ec25977 N°9057 - Enable SuperUser to execute collectors (#799) 2026-03-26 12:13:45 +01:00
Lenaick
41f8437c23 N°8234 - Allow display of unauthorized objects in notifications and event queries (#853)
* N°8234 - Allow display of unauthorized objects in notifications and event queries

* Refactor EventNotificationNewsroom class usage in iTopNewsroomController
2026-03-26 11:44:06 +01:00
Anne-Catherine
df8b25d4b4 N°9223 - Portal - AttributeExternalKey or AttributeEnum are not displayed after adding a link. (#802) 2026-03-26 10:34:41 +01:00
565 changed files with 24769 additions and 6386 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

View File

@@ -7,7 +7,8 @@
'git4': 'grey',
'git5': 'grey',
'git6': 'grey',
'git7': 'grey'
'git7': 'grey',
'git8': 'grey'
}, 'gitGraph': {'showBranches': true,'mainBranchName': 'develop','rotateCommitLabel': true}} }%%
gitGraph
commit id: "2016-07-06" tag: "2.3.0" type: HIGHLIGHT
@@ -86,24 +87,25 @@ gitGraph
commit id: "2024-01-17a" tag: "2.7.10"
checkout support/3.0
commit id: "2024-01-17b" tag: "3.0.4"
checkout support/2.7
commit id: "2024-09-28" tag: "2.7.11"
checkout support/3.1
commit id: "2024-09-27" tag: "3.1.2"
checkout support/3.2
commit id: "2024-06-25" tag: "3.2.0-beta1" type: REVERSE
commit id: "2024-08-07" tag: "3.2.0"
commit id: "2024-09-13" tag: "3.2.0-2"
checkout support/3.1
commit id: "2024-09-27" tag: "3.1.2"
checkout support/2.7
commit id: "2024-09-28" tag: "2.7.11"
checkout support/2.7
commit id: "2025-02-25" tag: "2.7.12"
commit id: "2025-02-07a" tag: "2.7.12"
checkout support/3.1
commit id: "2025-02-25 " tag: "3.1.3"
commit id: "2025-02-07b" tag: "3.1.3"
checkout support/3.2
commit id: "2025-02-25 " tag: "3.2.1"
commit id: "2025-04-08" tag: "3.2.1-1"
commit id: "2025-08-19" tag: "3.2.2-1"
commit id: "2025-02-07c " tag: "3.2.1"
commit id: "2025-03-31 " tag: "3.2.1-1"
commit id: "2025-07-28 " tag: "3.2.2"
checkout support/2.7
commit id: "2025-10-07" tag: "2.7.13"
commit id: "2025-09-25" tag: "2.7.13"
checkout support/3.2
commit id: "2026-04-27 " tag: "3.2.3"
```
To learn more, check the [iTop community versions history on the official wiki](https://www.itophub.io/wiki/page?id=latest:release:start).

60
.github/ISSUE_TEMPLATE/bug.yml vendored Normal file
View File

@@ -0,0 +1,60 @@
name: "Bug report"
description: "Report a bug that you identified in iTop"
type: bug
body:
- type: markdown
attributes:
value: |
Please explain why you're creating this issue :
- Are you willing to create a PR for the bug fix ? If so, we'll indicate in the issue if we're interested in it.
- Then, please describe how to reproduce the issue.
- type: dropdown
id: willing_to_pr
attributes:
label: Are you willing to create (at a later stage) a PR for that?
options:
- 'Yes'
- 'No'
validations:
required: true
- type: input
id: itop_version
attributes:
label: iTop version
description: "Complete iTop version (e.g., 3.2.3)"
validations:
required: false
- type: input
id: php_version
attributes:
label: PHP version
description: "Complete PHP version (e.g., 8.4.20)"
validations:
required: false
- type: textarea
id: reproduction_steps
attributes:
label: Reproduction procedure
description: |
Please explain step by step how to reproduce the issue on a standard iTop Community.
If it requires a custom datamodel, provide the minimal XML delta to reproduce it.
placeholder: |
1. First go there
2. Then do that
3. ...
4. Finally, see that... (what is expected and what is actually happening)
validations:
required: false
- type: upload
id: additional_info
attributes:
label: Additional information (if needed)
description: "Add/drag and drop screenshots, logs or any files that can be relevant for your issue."
validations:
required: false
accept: ".png, .jpg, .jpeg, .gif, .webp, .log, .txt, .json, .csv, .xml, .zip"

47
.github/ISSUE_TEMPLATE/enhancement.yml vendored Normal file
View File

@@ -0,0 +1,47 @@
name: "Enhancement suggestion"
description: "Suggest an improvement to iTop"
type: feature
body:
- type: markdown
attributes:
value: |
Please explain why you're creating this issue :
- Please describe what's your improvement proposition.
- Then tell us if you're willing to create a PR for this enhancement ? If so, we'll indicate in the issue if we're interested in it.
- type: textarea
id: enhancement_details
attributes:
label: Enhancement details
description: |
Please explain what you want to improve, and your proposition to make it better.
If it requires a custom datamodel, provide the minimal XML delta to reproduce it.
validations:
required: false
- type: input
id: itop_version
attributes:
label: iTop version (if appropriate)
description: "Complete iTop version (e.g., 3.2.3)"
validations:
required: false
- type: dropdown
id: willing_to_pr
attributes:
label: Are you willing to create (at a later stage) a PR for that?
options:
- 'Yes'
- 'No'
validations:
required: true
- type: upload
id: additional_info
attributes:
label: Additional information (if needed)
description: "Add/drag and drop screenshots, logs or any files that can be relevant for your issue."
validations:
required: false
accept: ".png, .jpg, .jpeg, .gif, .webp, .log, .txt, .json, .csv, .xml, .zip"

View File

@@ -1,83 +1,81 @@
<!--
IMPORTANT: Before creating your PR, please create an issue first to know if Combodo is interested in your contribution (not needed for translations PR).
Since we may refuse a PR, it's preferable to create an issue first, to avoid spending time coding something that won't be accepted.
IMPORTANT: Please follow the guidelines within this PR template before submitting it, it will greatly help us process your PR. 🙏
Once you've done it, and we confirmed we're interested in it, please follow the guidelines within this PR template before submitting it, it will greatly help us process your PR. 🙏
Any PRs not following the guidelines or with missing information will not be considered.
-->
## Base information
| Question | Answer
|---------------------------------------------------------------|--------
| Related to a SourceForge thread / Another PR / Combodo ticket? | <!-- Put the URL -->
| Type of change? | Bug fix / Enhancement / Translations
| Question | Answer
|----------------------------------------------------------------|--------
| Related to a SourceForge thread / Another PR / A GitHub Issue / Combodo ticket? | <!-- Put the URL --> |
| Type of change? | Bug fix / Enhancement / Translations
| Question | Answer |
|---------------------------------------------------------------------------------|--------------------------------------|
| Related to a SourceForge thread / Another PR / A GitHub Issue / Combodo ticket? | <!-- Put the URL --> |
| Type of change? | Bug fix / Enhancement / Translations |
## Symptom (bug) / Objective (enhancement)
<!--
If it's a bug
- Explain the symptom in details
- If possible put error messages, logs or screenshots (you can paste image directly in this editor).
If it's an enhancement
- Describe what is blocking you, what is the objective with as much details as possible.
- Describe what is blocking you, what is the objective with as many details as possible.
- Add screenshots if it's related to UI.
-->
## Reproduction procedure (bug)
<!--
Remove this section only if it's NOT a bug.
Otherwise, explain step by step how to reproduce the issue on a standard iTop Community.
Please explain step by step how to reproduce the issue on a standard iTop Community.
If it requires a custom datamodel, provide the minimal XML delta to reproduce it on a standard iTop Community.
-->
1. On iTop x.y.z <!-- Put complete iTop version (eg. 3.1.0-2) -->
2. With PHP x.y.z <!-- Put complete PHP version (eg. 8.1.24) -->
2. First go there
2. Then do that
3. ...
4. Finally, see that...
3. First go there
4. Then do that
5. ...
6. Finally, see that... (what is expected and what is actually happening)
## Reproduction procedure (enhancement - if needed)
<!--
Please explain how we can reproduce the feature/behavior you want to improve, and what's your proposition to make it better.
Add screenshots if it's related to UI.
If it requires a custom datamodel, provide the minimal XML delta to reproduce it on a standard iTop Community.
-->
## Cause (bug)
<!--
Remove this section only if it's NOT a bug.
Otherwise, explain what is the cause of the issue (where in the code and why)
-->
## Proposed solution (bug and enhancement)
<!--
Explain in details how you are proposing to solve this:
- What did you do in the code and why
- If you changed something in the UI, put before / after screenshots (you can paste image directly in this editor)
-->
## Checklist before requesting a review
<!--
Don't remove these lines, check them once done.
-->
- [ ] I have performed a self-review of my code
- [ ] I have tested all changes I made on an iTop instance
- [ ] I have added a unit test, otherwise I have explained why I couldn't
- [ ] Is the PR clear and detailed enough so anyone can understand digging in the code?
## Checklist of things to do before PR is ready to merge
<!--
Things that needs to be done in the PR before it can be considered as ready to be merged
Examples:
- Changes requested in the review
- Unit test to add
- Dictionary entries to translate
- ...
-->
- [ ] ...
- [ ] ...
- [ ] ...
- [ ] Is the PR clear and detailed enough so anyone can understand without digging in the code?

View File

@@ -4,30 +4,33 @@ You want to contribute to iTop? Many thanks to you! 🎉 👍
Here are some guidelines that will help us integrate your work!
## Contributions
### Subjects
You are welcome to create pull requests on any of those subjects:
* 🐛 bug fix
* 🌐 translation / i18n / l10n
* 🚸 enhancement
If you want to implement a **new feature**, please [create a corresponding ticket](https://sourceforge.net/p/itop/tickets/new/) for review.
If you ever want to begin implementation, do so in a fork, and add a link to the corresponding commits in the ticket.
But before creating a PR, please [create a corresponding issue][itop-issues] for review.
We should review within two weeks, and get back to you to indicate if we're interested in your proposal or not.
If you don't create an issue, you won't know if we're interested in your contribution, and you may spend time coding something that won't be accepted.
If you ever want to begin implementation, do so in a fork, and add a link to the corresponding commits in the issue.
For all **security related subjects**, please see our [security policy](SECURITY.md).
All **datamodel modification** should be done in an extension. Beware that such change would
impact all existing customers, and could prevent them from
upgrading!
Combodo has a long experience of datamodel changes: they are very disruptive!
All **datamodel modification** should be done in an extension. Beware that such change would
impact all existing customers, and could prevent them from upgrading!
Combodo has a long experience of datamodel changes: they are very disruptive!
This is why we avoid them in iTop core, especially the changes on existing objects/fields.
If you have an idea you're sure would benefit to all of iTop users, you may
[create a corresponding ticket](https://sourceforge.net/p/itop/tickets/new/) to submit it, but be warned that there are lots of good
If you have an idea you're sure would benefit to all of iTop users, you may
[create a corresponding issue][itop-issues] to submit it, but be warned that there are lots of good
reasons to refuse such changes.
### 📄 License and copyright
iTop is distributed under the AGPL-3.0 license (see the [license.txt] file).
The iTop repository is divided in three parts: iTop (mainly PHP/JS/XML sources and dictionaries), images, and third-party libraries.
@@ -37,48 +40,33 @@ Anyhow, you are encouraged to signal your contribution by the mean of `@author`
If you want to use another license or keep the code ownership (copyright), you may [create an extension][wiki new ext].
[license.txt]: https://github.com/Combodo/iTop/blob/develop/license.txt
[wiki new ext]: https://www.itophub.io/wiki/page?id=latest%3Acustomization%3Astart#by_writing_your_own_extension
[itop-issues]: https://github.com/Combodo/iTop/issues
[wiki new ext]: https://www.itophub.io/wiki/page?id=latest%3Acustomization%3Astart#by_writing_your_own_extension
## 🔀 iTop branch model
When we first start with Git, we were using the [GitFlow](https://nvie.com/posts/a-successful-git-branching-model/) branch model. As
there was some confusions about branches to use for current developed release and previous maintained release, and also because we were
using just a very few of the GitFlow commands, we decided to add just a little modification to this branch model : since april 2020
we don't have a `master` branch anymore.
there was some confusions about branches to use for current developed release and previous maintained release, and also because we were
using just a very few of the GitFlow commands, we decided to add just a little modification to this branch model : since April 2020
we don't have a `master` branch anymore.
Here are the branches we use and their meaning :
Here are the branches we use and their meaning :
- `develop`: ongoing development version
- `release/*`: if present, that means we are working on a alpha/beta/rc version for shipping
- `support/*`: maintenance branches for older versions
For example, if no version is currently prepared for shipping we could have:
- `develop` containing future 3.1.0 version
- `support/3.0`: 3.0.x maintenance version
- `support/2.7`: 2.7.x maintenance version
- `support/2.6`: 2.6.x maintenance version
- `develop` containing future 3.3.0 version
- `support/3.2`: 3.2.x maintenance version
In this example, when 3.1.0-beta is shipped that will become:
- `develop`: future 3.2.0 version
- `release/3.1.0`: 3.1.0-beta
- `support/3.0`: 3.0.x maintenance version
- `support/2.7`: 2.7.x maintenance version
- `support/2.6`: 2.6.x maintenance version
And when 3.1.0 final will be out:
- `develop`: future 3.2.0 version
- `support/3.1`: 3.1.x maintenance version (will host developments for 3.1.1)
- `support/3.0`: 3.0.x maintenance version
- `support/2.7`: 2.7.x maintenance version
- `support/2.6`: 2.6.x maintenance version
Also note that we have a "micro-version" concept : each of those versions have a very small amount of modifications. They are made from
`support/*` branches as well. For example 2.6.2-1 and 2.6.2-2 were made from the `support/2.6.2` branch.
And when 3.3.0 will be out:
- `develop`: future 3.4.0 version
- `support/3.3`: 3.3.x maintenance version (will host developments for 3.3.1)
- `support/3.2`: 3.2.x maintenance version
## Coding
@@ -92,12 +80,11 @@ A [dedicated page](https://www.itophub.io/wiki/page?id=latest%3Acustomization%3A
2. Create a branch in this fork, based on the develop branch
3. Code !
Do create a dedicated branch for each modification you want to propose : if you don't it will be very hard to merge back your work !
Do create a dedicated branch for each modification you want to propose : if you don't, it will be very hard to merge back your work !
Most of the time you should based your developments on the develop branch.
Most of the time you should base your developments on the develop branch.
That may be different if you want to fix a bug, please use develop anyway and ask in your PR if rebase is possible.
### 🎨 PHP styleguide
Please follow [our guidelines](https://www.itophub.io/wiki/page?id=latest%3Acustomization%3Acoding_standards).
@@ -106,7 +93,7 @@ Please follow [our guidelines](https://www.itophub.io/wiki/page?id=latest%3Acust
Please create tests that covers as much as possible the code you're submitting.
Our tests are located in the `test/` directory, containing a PHPUnit config file : `phpunit.xml.dist`.
Our tests are located in the `tests/` directory, containing a PHPUnit config file : `phpunit.xml.dist`.
### Git Commit Messages
@@ -138,14 +125,14 @@ When your code is working, please:
* Rebase your branch on our repo last commit,
* Create a pull request. _Detailed procedure to work on fork and create PR is available [in GitHub help pages](https://help.github.com/articles/creating-a-pull-request-from-a-fork/)_.
* Pull request description: mind to add all the information useful to understand why you're suggesting this modification and anything necessary to dive into your work. Especially:
- Bugfixes: exact steps to reproduce the bug (given/when/then), description of the bug cause and what solution is implemented
- Enhancements: use cases, implementation details if needed
* Mind to check the "[Allow edits from maintainers](https://docs.github.com/en/github-ae@latest/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork)" option ! (note that if you are working with an org fork, this option [won't be available](https://github.com/orgs/community/discussions/5634))
- Bugfixes: exact steps to reproduce the bug (given/when/then), description of the bug cause and what solution is implemented
- Enhancements: use cases, implementation details if needed
* Mind to check the "[Allow edits from maintainers](https://docs.github.com/en/github-ae@latest/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork)" option ! (note that if you are working with an org fork, this
option [won't be available](https://github.com/orgs/community/discussions/5634))
## 🙏 We are thankful
We are thankful for all your contributions to the iTop universe! As a thank you gift, we will send stickers to every iTop (& extensions) contributors!
We are thankful for all your contributions to the iTop universe! As a thank-you gift, we will send stickers to every iTop (& extensions) contributors!
We have one sticker per contribution type. You might get multiple stickers with one contribution though :)
@@ -159,6 +146,6 @@ We have one sticker per contribution type. You might get multiple stickers with
* Beta tester: Test and give feedback on beta releases
* Extension developer: Develop and publish an extension
Here is the design of each stickers for year 2024:
Here is the design of each sticker:
![iTop stickers 2025](.doc/contributing-guide/2025.contributing-stickers-side-by-side.png)
![iTop stickers](.doc/contributing-guide/contributing-stickers-side-by-side.png)

View File

@@ -53,7 +53,7 @@ iTop also offers mass import tools to help you become even more efficient.
[4]: https://www.itophub.io/wiki/page?id=latest:install:requirements
[5]: https://www.itophub.io/wiki
[6]: https://store.itophub.io/en_US/
[7]: itop-version-history.md
[7]: .doc/itop-version-history.md
[10]: https://www.itophub.io/wiki/page?id=latest%3Adatamodel%3Astart#configuration_management_cmdb
[11]: https://www.itophub.io/wiki/page?id=latest%3Adatamodel%3Astart#ticketing

View File

@@ -819,6 +819,7 @@ HTML
foreach ($aNotificationClasses as $sNotifClass) {
$aNotifSearches[$sNotifClass] = DBObjectSearch::FromOQL("SELECT $sNotifClass AS Ev WHERE Ev.object_id = :id AND Ev.object_class = :class");
$aNotifSearches[$sNotifClass]->SetInternalParams($aParams);
$aNotifSearches[$sNotifClass]->AllowAllData();
$oNotifSet = new DBObjectSet($aNotifSearches[$sNotifClass], []);
$iNotifsCount += $oNotifSet->Count();
}
@@ -832,6 +833,7 @@ HTML
'menu' => false,
'panel_title' => MetaModel::GetName($sNotifClass),
'panel_icon' => MetaModel::GetClassIcon($sNotifClass, false),
'display_unauthorized_objects' => true,
]);
}
}
@@ -1033,7 +1035,7 @@ HTML
// Add extra data for markup generation
// - Attribute code and AttributeDef. class
$val['attcode'] = $sAttCode;
$val['atttype'] = $sAttDefClass;
$val['atttype'] = $oAttDef->GetType();
$val['attlabel'] = $sAttLabel;
$val['attflags'] = ($bEditMode) ? $this->GetFormAttributeFlags($sAttCode) : OPT_ATT_READONLY;
@@ -4493,7 +4495,7 @@ HTML;
$oDivField = FieldUIBlockFactory::MakeLarge("");
// UIContentBlockUIBlockFactory::MakeStandard(null,["field_container field_large"]);
$oDivField->AddDataAttribute("attribute-type", $sAttDefClass);
$oDivField->AddDataAttribute("attribute-type", $oAttDef->GetType());
$oDivField->AddDataAttribute("attribute-label", $sAttMetaDataLabel);
$oDivField->AddDataAttribute("attribute-flag-hidden", false);
$oDivField->AddDataAttribute("attribute-flag-read-only", false);
@@ -5062,10 +5064,10 @@ EOF
} else {
if (count($aObjects) == 1) {
$oObj = $aObjects[0];
$sSubtitle = Dict::Format('UI:Delect:Confirm_Object', $oObj->GetHyperLink());
$sSubtitle = Dict::Format('UI:Delete:Confirm_Object', $oObj->GetHyperLink());
} else {
$sSubtitle = Dict::Format(
'UI:Delect:Confirm_Count_ObjectsOf_Class',
'UI:Delete:Confirm_Count_ObjectsOf_Class',
count($aObjects),
MetaModel::GetName($sClass)
);

View File

@@ -726,6 +726,10 @@ class DisplayBlock
}
}
if (!$this->m_oFilter->IsAllDataAllowed() && ($aExtraParams['display_unauthorized_objects'] ?? false) === true) {
$this->m_oFilter->AllowAllData();
}
$aExtraParams['query_params'] = $this->m_oFilter->GetInternalParams();
$this->m_oSet = new CMDBObjectSet($this->m_oFilter, $aOrderBy, $aQueryParams);
}
@@ -1379,7 +1383,10 @@ JS
// Check the classes that can be read (i.e authorized) by this user...
foreach ($aClasses as $sAlias => $sClassName) {
if (UserRights::IsActionAllowed($sClassName, UR_ACTION_READ, $this->m_oSet) != UR_ALLOWED_NO) {
if (
(UserRights::IsActionAllowed($sClassName, UR_ACTION_READ, $this->m_oSet) !== UR_ALLOWED_NO)
|| ($aExtraParams['display_unauthorized_objects'] ?? false) === true
) {
$aAuthorizedClasses[$sAlias] = $sClassName;
}
}

View File

@@ -75,13 +75,10 @@ class LoginExternal extends AbstractLoginFSMExtension
}
/**
* @return bool
* @return bool|mixed
*/
private function GetAuthUser()
{
$sExtAuthVar = MetaModel::GetConfig()->GetExternalAuthenticationVariable(); // In which variable is the info passed ?
eval('$sAuthUser = isset('.$sExtAuthVar.') ? '.$sExtAuthVar.' : false;'); // Retrieve the value
/** @var string $sAuthUser */
return $sAuthUser; // Retrieve the value
return MetaModel::GetConfig()->GetExternalAuthenticationVariable();
}
}

View File

@@ -1423,12 +1423,21 @@ class ShortcutMenuNode extends MenuNode
public function GetHyperlink($aExtraParams)
{
$sContext = $this->oShortcut->Get('context');
$aContext = unserialize($sContext);
if (isset($aContext['menu'])) {
unset($aContext['menu']);
}
foreach ($aContext as $sArgName => $sArgValue) {
$aExtraParams[$sArgName] = $sArgValue;
try {
$aContext = utils::Unserialize($sContext);
if (isset($aContext['menu'])) {
unset($aContext['menu']);
}
foreach ($aContext as $sArgName => $sArgValue) {
$aExtraParams[$sArgName] = $sArgValue;
}
} catch (Exception $e) {
IssueLog::Warning("User shortcut corrupted, delete the shortcut", LogChannels::CONSOLE, [
'shortcut_name' => $this->oShortcut->GetName(),
'root_cause' => $e->getMessage(),
]);
// delete the shortcut
$this->oShortcut->DBDelete();
}
return parent::GetHyperlink($aExtraParams);
}

View File

@@ -924,11 +924,6 @@ CSS;
public static function CloneThemeParameterAndIncludeVersion($aThemeParameters, $bSetupCompilationTimestamp, $aImportsPaths)
{
$aThemeParametersVariable = [];
if (array_key_exists('variables', $aThemeParameters)) {
if (is_array($aThemeParameters['variables'])) {
$aThemeParametersVariable = array_merge([], $aThemeParameters['variables']);
}
}
if (array_key_exists('variable_imports', $aThemeParameters)) {
if (is_array($aThemeParameters['variable_imports'])) {
@@ -936,6 +931,14 @@ CSS;
}
}
// Variables defined in theme XML have the priority over variables defined in XML imports files
// They're defined after so they overwrite previous parameters
if (array_key_exists('variables', $aThemeParameters)) {
if (is_array($aThemeParameters['variables'])) {
$aThemeParametersVariable = array_merge($aThemeParametersVariable, $aThemeParameters['variables']);
}
}
$aThemeParametersVariable['$version'] = $bSetupCompilationTimestamp;
return $aThemeParametersVariable;
}

View File

@@ -228,7 +228,7 @@ JS
<<<HTML
<form id="ObjectsAddForm_{$this->sInputid}">
<div id="SearchResultsToAdd_{$this->sInputid}">
<div style="background: #fff; border:0; text-align:center; vertical-align:middle;"><p>{$sEmptyList}</p></div>
<div style="border:0; text-align:center; vertical-align:middle;"><p>{$sEmptyList}</p></div>
</div>
<input type="hidden" id="count_{$this->sInputid}" value="0"/>
</form>

View File

@@ -68,7 +68,7 @@ class UISearchFormForeignKeys
<<<HTML
<form id="ObjectsAddForm_{$this->m_iInputId}">
<div id="SearchResultsToAdd_{$this->m_iInputId}" style="vertical-align:top;height:100%;overflow:auto;padding:0;border:0;">
<div style="background: #fff; border:0; text-align:center; vertical-align:middle;"><p>{$sEmptyList}</p></div>
<div style="border:0; text-align:center; vertical-align:middle;"><p>{$sEmptyList}</p></div>
</div>
<input type="hidden" id="count_{$this->m_iInputId}" value="0"/>
</form>

View File

@@ -1455,6 +1455,12 @@ class utils
case iPopupMenuExtension::MENU_OBJLIST_TOOLKIT:
/** @var \DBObjectSet $param */
// Check if the user has the right to read the objects of this list, otherwise do not propose any action (eg. configure this list, export, etc.)
if (UserRights::IsActionAllowed($param->GetFilter()->GetClass(), UR_ACTION_READ, $param) !== UR_ALLOWED_YES) {
break;
}
$oAppContext = new ApplicationContext();
$sContext = $oAppContext->GetForLink(true);
$sDataTableId = is_null($sDataTableId) ? '' : $sDataTableId;
@@ -3140,4 +3146,50 @@ TXT
return $aTrace;
}
/**
* PHP unserialize encapsulation, allow throwing exception when not allowed object class is detected (for security hardening)
*
* @param string $data data to unserialize
* @param array $aOptions PHP @unserialise options
* @param bool $bThrowNotAllowedObjectClassException flag to throw exception
*
* @return mixed PHP @unserialise return
* @throws Exception
*/
public static function Unserialize(string $data, array $aOptions = ['allowed_classes' => false], bool $bThrowNotAllowedObjectClassException = true): mixed
{
$data = unserialize($data, $aOptions);
if ($bThrowNotAllowedObjectClassException) {
try {
self::AssertNoIncompleteClassDetected($data);
} catch (Exception $e) {
throw new CoreException('Unserialization failed because an incomplete class was detected.', [], '', $e);
}
}
return $data;
}
/**
* Assert that data provided doesn't contain any incomplete class.
*
* @throws Exception
*/
public static function AssertNoIncompleteClassDetected(mixed $data): void
{
if (is_object($data)) {
if ($data instanceof __PHP_Incomplete_Class) {
throw new Exception('__PHP_Incomplete_Class_Name object detected');
}
foreach (get_object_vars($data) as $property) {
self::AssertNoIncompleteClassDetected($property);
}
} elseif (is_array($data)) {
foreach ($data as $value) {
self::AssertNoIncompleteClassDetected($value);
}
}
}
}

View File

@@ -4,7 +4,7 @@
"type": "project",
"license": "AGPL-3.0-only",
"require": {
"php": ">=8.1.0 <8.5.0",
"php": ">=8.2.0 <8.5.0",
"ext-ctype": "*",
"ext-dom": "*",
"ext-gd": "*",
@@ -15,18 +15,21 @@
"apereo/phpcas": "dev-master",
"guzzlehttp/guzzle": "^7.5.1",
"league/oauth2-google": "^4.0.1",
"nikic/php-parser": "^4.14.0",
"nikic/php-parser": "dev-master",
"pear/archive_tar": "~1.4.14",
"pelago/emogrifier": "^7.2.0",
"psr/log": "^3.0.0",
"scssphp/scssphp": "dev-combodo/1.x",
"symfony/console": "~6.4.0",
"symfony/dotenv": "~6.4.0",
"symfony/form": "^6.4",
"symfony/framework-bundle": "~6.4.0",
"symfony/http-foundation": "~6.4.0",
"symfony/http-kernel": "~6.4.0",
"symfony/runtime": "~6.4.0",
"symfony/security-csrf": "~6.4.0",
"symfony/twig-bundle": "~6.4.0",
"symfony/validator" : "~6.4.0",
"symfony/var-dumper": "~6.4.0",
"symfony/yaml": "~6.4.0",
"symfony/mailer": "~6.4.0",
@@ -40,6 +43,10 @@
"symfony/web-profiler-bundle": "~6.4.0"
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/Combodo/PHP-Parser"
},
{
"type": "vcs",
"url": "https://github.com/EsupPortail/phpCAS"
@@ -60,7 +67,7 @@
},
"config": {
"platform": {
"php": "8.1.0"
"php": "8.2.0"
},
"vendor-dir": "lib",
"preferred-install": {
@@ -80,7 +87,6 @@
"sources"
],
"exclude-from-classmap": [
"application/twigextension.class.inc.php",
"core/oql/build/PHP/",
"core/apc-emulation.php",
"application/startup.inc.php",
@@ -100,7 +106,7 @@
"extra": {
"symfony": {
"allow-contrib": false,
"require": "3.4.*"
"require": "6.4.*"
},
"runtime": {
"dotenv_path": "resources/symfony/.env"

1249
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -234,10 +234,11 @@ abstract class Action extends cmdbAbstractObject
}
$oActionFilter = DBObjectSearch::FromOQL($sActionQueryOql, $aActionQueryParams);
$oActionFilter->AllowAllData();
$oSet = new DBObjectSet($oActionFilter, ['date' => false]);
$sPanelTitle = Dict::Format('Action:last_executions_tab_panel_title', $sActionQueryLimit);
$oExecutionsListBlock = DataTableUIBlockFactory::MakeForResult($oPage, 'action_executions_list', $oSet, ['panel_title' => $sPanelTitle]);
$oExecutionsListBlock = DataTableUIBlockFactory::MakeForResult($oPage, 'action_executions_list', $oSet, ['panel_title' => $sPanelTitle, 'display_unauthorized_objects' => true]);
$oPage->AddUiBlock($oExecutionsListBlock);
}

View File

@@ -78,6 +78,7 @@ define('DEFAULT_EXT_AUTH_VARIABLE', '$_SERVER[\'REMOTE_USER\']');
define('DEFAULT_ENCRYPTION_KEY', '@iT0pEncr1pti0n!'); // We'll use a random generated key later (if possible)
define('DEFAULT_ENCRYPTION_LIB', 'Mcrypt'); // We'll define the best encryption available later
define('DEFAULT_HASH_ALGO', PASSWORD_DEFAULT);
/**
* Config
* configuration data (this class cannot not be localized, because it is responsible for loading the dictionaries)
@@ -871,6 +872,14 @@ class Config
'source_of_value' => '',
'show_in_conf_sample' => false,
],
'ext_auth_variable' => [
'type' => 'string',
'description' => 'External authentication expression (allowed: $_SERVER[\'key\'], $_COOKIE[\'key\'], $_REQUEST[\'key\'], getallheaders()[\'Header-Name\'])',
'default' => '$_SERVER[\'REMOTE_USER\']',
'value' => '$_SERVER[\'REMOTE_USER\']',
'source_of_value' => '',
'show_in_conf_sample' => false,
],
'login_debug' => [
'type' => 'bool',
'description' => 'Activate the login FSM debug',
@@ -1613,7 +1622,7 @@ class Config
'show_in_conf_sample' => false,
],
'search_manual_submit' => [
'type' => 'array',
'type' => 'bool',
'description' => 'Force manual submit of search all requests',
'default' => false,
'value' => true,
@@ -1740,6 +1749,14 @@ class Config
'source_of_value' => '',
'show_in_conf_sample' => false,
],
'security.disable_joined_classes_filter' => [
'type' => 'bool',
'description' => 'If true, scope filters aren\'t applied to joined classes or union classes not directly listed in the SELECT clause.',
'default' => true,
'value' => true,
'source_of_value' => '',
'show_in_conf_sample' => false,
],
'security.hide_administrators' => [
'type' => 'bool',
'description' => 'If true, non-administrator users will not be able to see the administrator accounts, the Administrator profile and the links between the administrator accounts and their profiles.',
@@ -1748,11 +1765,11 @@ class Config
'source_of_value' => '',
'show_in_conf_sample' => false,
],
'security.force_login_when_no_delegated_authentication_endpoints_list' => [
'security.disable_exec_forced_login_for_all_enpoints' => [
'type' => 'bool',
'description' => 'If true, when no execution policy is defined, the user will be forced to log in (instead of being automatically logged in with the default profile)',
'default' => false,
'value' => false,
'description' => 'If true, when no delegated authentication module is defined, no login will be forced on modules exec endpoints',
'default' => true,
'value' => true,
'source_of_value' => '',
'show_in_conf_sample' => false,
],
@@ -1962,11 +1979,6 @@ class Config
*/
protected $m_sDefaultLanguage;
/**
* @var string Name of the PHP variable in which external authentication information is passed by the web server
*/
protected $m_sExtAuthVariable;
/**
* @var string Encryption key used for all attributes of type "encrypted string". Can be set to a random value
* unless you want to import a database from another iTop instance, in which case you must use
@@ -2035,7 +2047,6 @@ class Config
$this->m_iFastReloadInterval = DEFAULT_FAST_RELOAD_INTERVAL;
$this->m_bSecureConnectionRequired = DEFAULT_SECURE_CONNECTION_REQUIRED;
$this->m_sDefaultLanguage = 'EN US';
$this->m_sExtAuthVariable = DEFAULT_EXT_AUTH_VARIABLE;
$this->m_aCharsets = [];
$this->m_bQueryCacheEnabled = DEFAULT_QUERY_CACHE_ENABLED;
$this->m_iPasswordHashAlgo = DEFAULT_HASH_ALGO;
@@ -2181,7 +2192,6 @@ class Config
$this->m_aModuleSettings = isset($MyModuleSettings) ? $MyModuleSettings : [];
$this->m_sDefaultLanguage = isset($MySettings['default_language']) ? trim($MySettings['default_language']) : 'EN US';
$this->m_sExtAuthVariable = isset($MySettings['ext_auth_variable']) ? trim($MySettings['ext_auth_variable']) : DEFAULT_EXT_AUTH_VARIABLE;
$this->m_sEncryptionKey = isset($MySettings['encryption_key']) ? trim($MySettings['encryption_key']) : $this->m_sEncryptionKey;
$this->m_sEncryptionLibrary = isset($MySettings['encryption_library']) ? trim($MySettings['encryption_library']) : $this->m_sEncryptionLibrary;
$this->m_aCharsets = isset($MySettings['csv_import_charsets']) ? $MySettings['csv_import_charsets'] : [];
@@ -2343,9 +2353,73 @@ class Config
return explode('|', $this->m_aSettings['allowed_login_types']['value']);
}
/**
* @return bool|mixed
* @since 3.2.3 return the parsed value instead of an unsecured variable name
*/
public function GetExternalAuthenticationVariable()
{
return $this->m_sExtAuthVariable;
$sExpression = $this->Get('ext_auth_variable');
$aParsed = $this->ParseExternalAuthVariableExpression($sExpression);
if ($aParsed === null) {
return false;
}
$sKey = $aParsed['key'];
switch ($aParsed['type']) {
case 'server':
return $_SERVER[$sKey] ?? false;
case 'cookie':
return $_COOKIE[$sKey] ?? false;
case 'request':
return $_REQUEST[$sKey] ?? false;
case 'header':
if (!function_exists('getallheaders')) {
return false;
}
$aHeaders = getallheaders();
if (!is_array($aHeaders)) {
return false;
}
return $aHeaders[$sKey] ?? false;
}
return false;
}
/**
* @param $sExpression
* @return array|null
*/
private function ParseExternalAuthVariableExpression($sExpression)
{
// If it's a configuration parameter it's probably already trimmed, but just in case
$sExpression = trim((string) $sExpression);
if ($sExpression === '') {
return null;
}
// Match $_SERVER/$_COOKIE/$_REQUEST['key'] with optional whitespace and single/double quotes.
if (preg_match('/^\$_(SERVER|COOKIE|REQUEST)\s*\[\s*(["\'])\s*([^"\']+)\2\s*\]\s*$/', $sExpression, $aMatches) === 1) {
$sContext = strtoupper($aMatches[1]);
$sKey = $aMatches[3];
return [
'type' => strtolower($sContext),
'key' => $sKey,
'normalized' => '$_'.$sContext.'[\''.$sKey.'\']',
];
}
// Match getallheaders()['Header-Name'] in a case-insensitive way.
if (preg_match('/^getallheaders\(\)\s*\[\s*(["\'])\s*([^"\']+)\1\s*\]\s*$/i', $sExpression, $aMatches) === 1) {
$sKey = $aMatches[2];
return [
'type' => 'header',
'key' => $sKey,
'normalized' => 'getallheaders()[\''.$sKey.'\']',
];
}
return null;
}
public function GetCSVImportCharsets()
@@ -2441,7 +2515,7 @@ class Config
public function SetExternalAuthenticationVariable($sExtAuthVariable)
{
$this->m_sExtAuthVariable = $sExtAuthVariable;
$this->Set('ext_auth_variable', $sExtAuthVariable);
}
public function SetEncryptionKey($sKey)
@@ -2495,7 +2569,6 @@ class Config
$aSettings['fast_reload_interval'] = $this->m_iFastReloadInterval;
$aSettings['secure_connection_required'] = $this->m_bSecureConnectionRequired;
$aSettings['default_language'] = $this->m_sDefaultLanguage;
$aSettings['ext_auth_variable'] = $this->m_sExtAuthVariable;
$aSettings['encryption_key'] = $this->m_sEncryptionKey;
$aSettings['encryption_library'] = $this->m_sEncryptionLibrary;
$aSettings['csv_import_charsets'] = $this->m_aCharsets;
@@ -2598,7 +2671,6 @@ class Config
// Old fashioned remaining values
$aOtherValues = [
'default_language' => $this->m_sDefaultLanguage,
'ext_auth_variable' => $this->m_sExtAuthVariable,
'encryption_key' => $this->m_sEncryptionKey,
'encryption_library' => $this->m_sEncryptionLibrary,
'csv_import_charsets' => $this->m_aCharsets,

View File

@@ -425,7 +425,7 @@
</php_parent>
<parent>cmdbAbstractObject</parent>
<properties>
<category>core/cmdb,view_in_gui</category>
<category>core/cmdb,grant_by_profile,silo</category>
<abstract>false</abstract>
<key_type>autoincrement</key_type>
<db_table>priv_event_newsroom</db_table>
@@ -904,7 +904,7 @@
<!-- Generated by toolkit/export-class-to-meta.php -->
<parent>Event</parent>
<properties>
<category>core/cmdb,view_in_gui</category>
<category>core/cmdb,grant_by_profile,silo</category>
</properties>
<fields>
<field id="message" xsi:type="AttributeText"/>

View File

@@ -1932,4 +1932,37 @@ class DBObjectSearch extends DBSearch
{
return $this->GetCriteria()->ListParameters();
}
/**
* @inheritDoc
* @return DBObjectSearch
*/
protected function ApplyDataFilters(): DBObjectSearch
{
if ($this->IsAllDataAllowed() || $this->IsDataFiltered()) {
return $this;
}
$oSearch = $this;
$aClassesToFilter = $this->GetSelectedClasses();
// Opt-in for joined classes filtering, otherwise only filter the selected class(es)
if (MetaModel::GetConfig()->Get('security.disable_joined_classes_filter') === false) {
$aClassesToFilter = $this->GetJoinedClasses();
}
// Apply filter (this is similar to the one in DBSearch but the factorization could make it less readable)
foreach ($aClassesToFilter as $sClassAlias => $sClass) {
$oVisibleObjects = UserRights::GetSelectFilter($sClass, $this->GetModifierProperties('UserRightsGetSelectFilter'));
if ($oVisibleObjects === false) {
$oVisibleObjects = DBObjectSearch::FromEmptySet($sClass);
}
if (is_object($oVisibleObjects)) {
$oVisibleObjects->AllowAllData();
$oSearch = $oSearch->Filter($sClassAlias, $oVisibleObjects);
$oSearch->SetDataFiltered();
}
}
return $oSearch;
}
}

View File

@@ -1048,21 +1048,7 @@ abstract class DBSearch
*/
protected function GetSQLQuery($aOrderBy, $aArgs, $aAttToLoad, $aExtendedDataSpec, $iLimitCount, $iLimitStart, $bGetCount, $aGroupByExpr = null, $aSelectExpr = null)
{
$oSearch = $this;
if (!$this->IsAllDataAllowed() && !$this->IsDataFiltered()) {
foreach ($this->GetSelectedClasses() as $sClassAlias => $sClass) {
$oVisibleObjects = UserRights::GetSelectFilter($sClass, $this->GetModifierProperties('UserRightsGetSelectFilter'));
if ($oVisibleObjects === false) {
// Make sure this is a valid search object, saying NO for all
$oVisibleObjects = DBObjectSearch::FromEmptySet($sClass);
}
if (is_object($oVisibleObjects)) {
$oVisibleObjects->AllowAllData();
$oSearch = $oSearch->Filter($sClassAlias, $oVisibleObjects);
$oSearch->SetDataFiltered();
}
}
}
$oSearch = $this->ApplyDataFilters();
if (is_array($aGroupByExpr)) {
foreach ($aGroupByExpr as $sAlias => $oGroupByExp) {
@@ -1524,4 +1510,33 @@ abstract class DBSearch
* @return array{\VariableExpression}
*/
abstract public function GetExpectedArguments(): array;
/**
* Apply data filters to the search, if needed
*
* @return DBSearch
* @throws CoreException
*/
protected function ApplyDataFilters(): DBSearch
{
if ($this->IsAllDataAllowed() || $this->IsDataFiltered()) {
return $this;
}
$oSearch = $this;
$aClassesToFilter = $this->GetSelectedClasses();
foreach ($aClassesToFilter as $sClassAlias => $sClass) {
$oVisibleObjects = UserRights::GetSelectFilter($sClass, $this->GetModifierProperties('UserRightsGetSelectFilter'));
if ($oVisibleObjects === false) {
$oVisibleObjects = DBObjectSearch::FromEmptySet($sClass);
}
if (is_object($oVisibleObjects)) {
$oVisibleObjects->AllowAllData();
$oSearch = $oSearch->Filter($sClassAlias, $oVisibleObjects);
$oSearch->SetDataFiltered();
}
}
return $oSearch;
}
}

View File

@@ -673,4 +673,30 @@ class DBUnionSearch extends DBSearch
return $aVariableCriteria;
}
/**
* @inheritDoc
* @return DBUnionSearch
*/
protected function ApplyDataFilters(): DBUnionSearch
{
if ($this->IsAllDataAllowed() || $this->IsDataFiltered()) {
return $this;
}
// Opt-in for joined classes filtering, otherwise fallback on DBSearch filtering
if (MetaModel::GetConfig()->Get('security.disable_joined_classes_filter') === true) {
return parent::ApplyDataFilters();
}
// Apply filters per sub-search
$aFilteredSearches = [];
foreach ($this->GetSearches() as $oSubSearch) {
// Recursively call ApplyDataFilters on sub-searches
$aFilteredSearches[] = $oSubSearch->ApplyDataFilters();
}
$oSearch = new DBUnionSearch($aFilteredSearches);
return $oSearch;
}
}

View File

@@ -26,7 +26,7 @@ class Event extends DBObject implements iDisplay
{
$aParams =
[
"category" => "core/cmdb,view_in_gui",
"category" => "core/cmdb,grant_by_profile,silo",
"key_type" => "autoincrement",
"name_attcode" => "",
"state_attcode" => "",
@@ -120,7 +120,7 @@ class EventNotification extends Event
{
$aParams =
[
"category" => "core/cmdb,view_in_gui",
"category" => "core/cmdb,grant_by_profile,silo",
"key_type" => "autoincrement",
"name_attcode" => "",
"state_attcode" => "",
@@ -156,7 +156,7 @@ class EventNotificationEmail extends EventNotification
{
$aParams =
[
"category" => "core/cmdb,view_in_gui",
"category" => "core/cmdb,grant_by_profile,silo",
"key_type" => "autoincrement",
"name_attcode" => "",
"state_attcode" => "",
@@ -178,7 +178,7 @@ class EventNotificationEmail extends EventNotification
// Display lists
MetaModel::Init_SetZListItems('details', ['date', 'userinfo', 'message', 'trigger_id', 'action_id', 'object_class', 'object_id', 'to', 'cc', 'bcc', 'from', 'subject', 'body', 'attachments']); // Attributes to be displayed for the complete details
MetaModel::Init_SetZListItems('list', ['date', 'message', 'to', 'subject', 'attachments']); // Attributes to be displayed for a list
MetaModel::Init_SetZListItems('list', ['date', 'message', 'to', 'cc', 'bcc', 'subject', 'attachments']); // Attributes to be displayed for a list
// Search criteria
// MetaModel::Init_SetZListItems('standard_search', array('name')); // Criteria of the std search form
@@ -192,7 +192,7 @@ class EventIssue extends Event
{
$aParams =
[
"category" => "core/cmdb,view_in_gui",
"category" => "core/cmdb,grant_by_profile,silo",
"key_type" => "autoincrement",
"name_attcode" => "",
"state_attcode" => "",
@@ -286,7 +286,7 @@ class EventWebService extends Event
{
$aParams =
[
"category" => "core/cmdb,view_in_gui",
"category" => "core/cmdb,grant_by_profile,silo",
"key_type" => "autoincrement",
"name_attcode" => "",
"state_attcode" => "",
@@ -321,7 +321,7 @@ class EventRestService extends Event
{
$aParams =
[
"category" => "core/cmdb,view_in_gui",
"category" => "core/cmdb,grant_by_profile,silo",
"key_type" => "autoincrement",
"name_attcode" => "",
"state_attcode" => "",
@@ -356,7 +356,7 @@ class EventLoginUsage extends Event
{
$aParams =
[
"category" => "core/cmdb,view_in_gui",
"category" => "core/cmdb,grant_by_profile,silo",
"key_type" => "autoincrement",
"name_attcode" => "",
"state_attcode" => "",
@@ -394,7 +394,7 @@ class EventOnObject extends Event
{
$aParams =
[
"category" => "core/cmdb,view_in_gui",
"category" => "core/cmdb,grant_by_profile,silo",
"key_type" => "autoincrement",
"name_attcode" => "",
"state_attcode" => "",

View File

@@ -350,15 +350,18 @@ class ormDocument
if (!is_object($oObj)) {
// If access to the document is not granted, check if the access to the host object is allowed
$oObj = MetaModel::GetObject($sClass, $id, false, true);
$bHasHostRights = false;
if ($oObj instanceof Attachment) {
$sItemClass = $oObj->Get('item_class');
$sItemId = $oObj->Get('item_id');
$oHost = MetaModel::GetObject($sItemClass, $sItemId, false, false);
if (!is_object($oHost)) {
$oObj = null;
if (is_object($oHost)) {
$bHasHostRights = true;
}
}
if (!is_object($oObj)) {
// We could neither read the object nor get a host object matching our rights
if ($bHasHostRights !== true) {
throw new Exception("Invalid id ($id) for class '$sClass' - the object does not exist or you are not allowed to view it");
}
}

View File

@@ -470,17 +470,6 @@ class ormLinkSet implements iDBObjectSetIterator, Iterator, SeekableIterator
|| ($this->oOriginalSet->GetFilter()->ToOQL() == $oFellow->oOriginalSet->GetFilter()->ToOQL())) {
$bUpdateFromDelta = true;
}
} else {
//@since 3.2.2 N°2364 - API : remove old linkedset persistance
/* Goo pattern to use:
* $oCISet = $oTicket->Get(functioncis_list);
* $oCISet->AddItem(MetaModel::NewObject(lnkFunctionCIToTicket, array(ci_id=> 12345));
* $oCISet->RemoveItem(123456);
* $oTicket->Set(functionalcis_list, $oCISet);
*/
if (!ContextTag::Check(ContextTag::TAG_SETUP)) {
DeprecatedCallsLog::NotifyDeprecatedPhpMethod('old pattern - please get previous value of the linked set, modify it and set it back to the host object');
}
}
if ($bUpdateFromDelta) {

View File

@@ -1182,7 +1182,7 @@ class UserRights
return self::$m_oUser->GetKey();
} else {
// find the id out of the login string
$oUser = self::FindUser($sLogin);
$oUser = self::FindUser($sLogin, bAllowDisabledUsers: true);
if (is_null($oUser)) {
return null;
}
@@ -1375,7 +1375,7 @@ class UserRights
if (empty($sLogin)) {
$oUser = self::$m_oUser;
} else {
$oUser = self::FindUser($sLogin);
$oUser = self::FindUser($sLogin, bAllowDisabledUsers: true);
}
if (is_null($oUser)) {
return '';

View File

@@ -56,6 +56,8 @@ $ibo-shame--slider--is-round--border-radius: 20px !default;
$ibo-shame--slider--is-round--before--border-radius: 7px !default;
$ibo-blockquote--color: $ibo-body-text-color !default;
// N°2847 - Recolor svg illustrations with iTop's primary color
.ibo-svg-illustration--container > svg *[fill="#6c63ff"]{
fill: $ibo-svg-illustration--fill;
@@ -126,3 +128,11 @@ input:checked + .slider:before {
.slider.round:before {
border-radius: $ibo-shame--slider--is-round--before--border-radius;
}
/*
Bulma sets blockquote background color through a variable, it affects ckeditor and html display.
This rule is needed harmonize the blockquote text color in both contexts.
*/
.ibo-is-html-content blockquote {
color: $ibo-blockquote--color;
}

View File

@@ -185,16 +185,20 @@ $ibo-panel--is-selectable--body--after--font-size: $ibo-font-size-700 !default;
.ibo-panel--icon-img, .ibo-panel--icon-background { // second class is deprecated, remove it when dealing with N°9317
width: 100%;
height: 100%;
object-position: center;
object-fit: $ibo-panel--icon-img--size--must-contain;
background-position: center;
background-repeat: no-repeat;
background-size: $ibo-panel--icon-img--size--must-contain;
}
.ibo-panel--icon-img--must-contain, .ibo-panel--icon-background--must-contain { // second class is deprecated, remove it when dealing with N°9317
object-fit: $ibo-panel--icon-img--size--must-contain;
background-size: $ibo-panel--icon-img--size--must-contain;
}
.ibo-panel--icon-img--must-cover, .ibo-panel--icon-background--must-cover { // second class is deprecated, remove it when dealing with N°9317
object-fit: $ibo-panel--icon-img--size--must-cover;
background-size: $ibo-panel--icon-img--size--must-cover;
}

View File

@@ -247,7 +247,8 @@ $ibo-quick-create--compartment--placeholder-hint--text-color: $ibo-color-grey-70
&:hover {
cursor: pointer;
@extend a;
color: $ibo-hyperlink-color--on-hover;
text-decoration: $ibo-hyperlink-text-decoration--on-hover;
}
.highlight {

View File

@@ -21,6 +21,8 @@ $ibo-search-form-panel--more-criteria--color: $ibo-color-blue-grey-800 !default;
$ibo-search-form-panel--more-criteria--background-color: $ibo-color-white-100 !default;
$ibo-search-form-panel--more-criteria--icon--color: $ibo-color-primary-600 !default;
$ibo-search-form-panel--more-criteria--border-color: $ibo-search-form-panel--criteria--border-color !default;
// calc is redundant but avoid SCSS min() from being used instead of CSS min()
$ibo-search-form-panel--criteria--max-height: calc(min(#{$ibo-size-750}, 50vh)) !default;
$ibo-search-form-panel--items--hover--color: $ibo-color-grey-200 !default;
@@ -278,9 +280,10 @@ $ibo-search-results-area--datatable-scrollhead--border--is-sticking: $ibo-search
}
.sfc_form_group {
display: block;
margin-top: -1px;
z-index: -1;
display: flex;
flex-direction: column;
margin-top: -1px;
z-index: -1;
}
}
@@ -346,11 +349,15 @@ $ibo-search-results-area--datatable-scrollhead--border--is-sticking: $ibo-search
display: none;
max-width: 450px;
width: max-content;
max-height: 520px;
max-height: $ibo-search-form-panel--criteria--max-height;
overflow-x: auto;
overflow-y: hidden;
.sfc_fg_operators {
display: flex;
flex-direction: column;
overflow: auto;
min-height: 0;
font-size: 12px;
.sfc_fg_operator {
@@ -387,6 +394,9 @@ $ibo-search-results-area--datatable-scrollhead--border--is-sticking: $ibo-search
}
.sfc_opc_multichoices {
display: flex;
flex-direction: column;
height: 100%;
label > input {
vertical-align: text-top;
margin-left: $ibo-spacing-0;
@@ -398,7 +408,6 @@ $ibo-search-results-area--datatable-scrollhead--border--is-sticking: $ibo-search
}
.sfc_opc_mc_items_wrapper {
max-height: 415px; /* Must be less than .sfc_form_group:max-height - .sfc_opc_mc_toggler:height - .sfc_opc_mc_filter:height */
overflow-y: auto;
margin: $ibo-spacing-0 -8px; /* Compensate .sfc_opc_multichoices side padding so the hover style can take the full with */
@@ -560,8 +569,14 @@ $ibo-search-results-area--datatable-scrollhead--border--is-sticking: $ibo-search
&.search_form_criteria_enum {
.sfc_form_group {
.sfc_fg_operator_in {
display: flex;
flex-direction: column;
height: 100%;
min-height: 0;
> label {
display: inline-block;
display: flex;
height: 100%;
min-height: 0;
width: 100%;
line-height: initial;
white-space: nowrap;

View File

@@ -51,19 +51,23 @@ $ibo-title--icon-img--size--must-zoomout: $ibo-title--icon-background--size--mus
width: 100%;
height: 100%;
object-position: center;
object-fit: $ibo-title--icon-img--size--must-contain;
background-size: $ibo-title--icon-img--size--must-contain;
}
.ibo-title--icon-img--must-contain, .ibo-title--icon-background--must-contain { // second class is deprecated, remove it when dealing with N°9317
object-fit: $ibo-title--icon-img--size--must-contain;
background-size: $ibo-title--icon-img--size--must-contain;
}
.ibo-title--icon-img--must-cover, .ibo-title--icon-background--must-cover { // second class is deprecated, remove it when dealing with N°9317
object-fit: $ibo-title--icon-img--size--must-cover;
background-size: $ibo-title--icon-img--size--must-cover;
}
.ibo-title--icon-img--must-zoomout, .ibo-title--icon-background--must-zoomout { // second class is deprecated, remove it when dealing with N°9317
background-size: $ibo-title--icon-img--size--must-zoomout;
width: $ibo-title--icon-img--size--must-zoomout;
height: $ibo-title--icon-img--size--must-zoomout;
}
.ibo-title--for-object-details {

View File

@@ -203,8 +203,9 @@ $ibo-input-select--autocomplete-item-image--border: 1px solid $ibo-color-grey-60
}
// N°7982 Default selectize stylesheet override
// N°9468 Dropdown content needs to be a few pixel shorter than the dropdown itself to avoid double scrollbar
.selectize-dropdown-content{
max-height: $ibo-input-select-selectize--dropdown--max-height;
max-height: calc(#{$ibo-input-select-selectize--dropdown--max-height} - 4px);
}
.selectize-dropdown.ui-menu .ui-state-active {

View File

@@ -3,9 +3,29 @@
* @license http://opensource.org/licenses/AGPL-3.0
*/
$ibo-datamodel-viewer--viewer-empty--width: max(20%, #{$ibo-size-700}) !default;
$ibo-datamodel-viewer--parent--spacer--padding-y: $ibo-spacing-0 !default;
$ibo-datamodel-viewer--parent--spacer--padding-x: $ibo-spacing-300 !default;
$ibo-datamodel-viewer--breadcrumb--margin: $ibo-spacing-200 0 !default;
$ibo-datamodel-viewer--classname--font-family: monospace !default;
$ibo-datamodel-viewer--classname--color: $ibo-color-blue-grey-600 !default;
$ibo-datamodel-viewer--tag--category--color: $ibo-color-blue-grey-800 !default;
$ibo-datamodel-viewer--tag--category--icon--color: $ibo-color-blue-grey-600 !default;
$ibo-datamodel-viewer--abstract-class-icon--margin-right: $ibo-spacing-300 !default;
$ibo-datamodel-viewer--abstract-class-icon--after--content: 'A' !default;
$ibo-datamodel-viewer--abstract-class-icon--after--width: 15px !default;
$ibo-datamodel-viewer--abstract-class-icon--after--height: 15px !default;
$ibo-datamodel-viewer--abstract-class-icon--after--line-height: 14px !default;
$ibo-datamodel-viewer--abstract-class-icon--after--border-radius: 50% !default;
$ibo-datamodel-viewer--abstract-class-icon--after--border: 1px solid $ibo-color-cyan-500 !default;
$ibo-datamodel-viewer--abstract-class-icon--after--color: $ibo-color-white-100 !default;
$ibo-datamodel-viewer--abstract-class-icon--after--background-color: $ibo-color-cyan-500 !default;
$ibo-datamodel-viewer--classes-list--selectize-input--background-color: $ibo-color-white-100 !default;
$ibo-datamodel-viewer--classes-list--selectize-input--color: $ibo-color-grey-800 !default;
$ibo-datamodel-viewer--classes-list--selectize-input--border-color: $ibo-color-grey-500 !default;
@@ -16,8 +36,9 @@ $ibo-datamodel-viewer--origin-cell--diameter: 8px !default;
$ibo-datamodel-viewer--origin-cell--border-radius: $ibo-border-radius-full !default;
$ibo-datamodel-viewer--classes-list--height: 100% !default;
$ibo-datamodel-viewer--classes-list--width: 350px !default;
$ibo-datamodel-viewer--classes-list--width: $ibo-size-700 !default;
$ibo-datamodel-viewer--classes-list--padding-left: $ibo-spacing-600 !default;
$ibo-datamodel-viewer--classes-list--padding-top: $ibo-spacing-300 !default;
$ibo-datamodel-viewer--lifecycle--code--color: $ibo-color-grey-700 !default;
$ibo-datamodel-viewer--lifecycle--stimuli--color: $ibo-color-blue-900 !default;
@@ -45,6 +66,56 @@ $ibo-datamodel-viewer--lifecycle-image--margin-bottom: $ibo-spacing-500 !default
.ibo-panel--subtitle{
@extend %ibo-font-ral-nor-150;
}
.ibo-datamodel-viewer--empty{
display: flex;
flex-direction: column;
align-items: center;
svg{
width: $ibo-datamodel-viewer--viewer-empty--width;
}
}
}
.ibo-datamodel-viewer--empty--text {
@extend %ibo-font-ral-med-400
}
.ibo-datamodel-viewer--breadcrumb{
@extend %ibo-font-ral-med-150;
margin: $ibo-datamodel-viewer--breadcrumb--margin;
.ibo-button{
text-transform: none; // unset uppercase
}
}
.ibo-datamodel-viewer--classname{
color: $ibo-datamodel-viewer--classname--color;
@extend %ibo-font-code-100;
}
.ibo-datamodel-viewer--tag--category{
color: $ibo-datamodel-viewer--tag--category--color;
.ibo-object-details--tag-icon{
color:$ibo-datamodel-viewer--tag--category--icon--color;
}
}
.ibo-datamodel-viewer--icon--abstract{
&:after{
content: $ibo-datamodel-viewer--abstract-class-icon--after--content;
display: inline-flex;
justify-content: center;
align-items: center;
width: $ibo-datamodel-viewer--abstract-class-icon--after--width;
height: $ibo-datamodel-viewer--abstract-class-icon--after--height;
line-height: $ibo-datamodel-viewer--abstract-class-icon--after--line-height;
border-radius: $ibo-datamodel-viewer--abstract-class-icon--after--border-radius;
border: $ibo-datamodel-viewer--abstract-class-icon--after--border;
color: $ibo-datamodel-viewer--abstract-class-icon--after--color;
background-color: $ibo-datamodel-viewer--abstract-class-icon--after--background-color;
@extend %ibo-font-ral-bol-50;
}
}
.ibo-datamodel-viewer--parent--spacer{
@@ -80,6 +151,7 @@ $ibo-datamodel-viewer--lifecycle-image--margin-bottom: $ibo-spacing-500 !default
height: $ibo-datamodel-viewer--classes-list--height;
width: $ibo-datamodel-viewer--classes-list--width;
padding-left: $ibo-datamodel-viewer--classes-list--padding-left;
padding-top: $ibo-datamodel-viewer--classes-list--padding-top;
overflow-y: scroll;
}

View File

@@ -21,6 +21,7 @@ $text-strong: inherit !default;
* See https://bulma.io/documentation/elements/content/
*/
$content-block-margin-bottom: 0 !default;
$content-blockquote-background-color: $ibo-color-grey-200 !default;
/* Table: Reset style as much as possible to match rich text editor preview, which is the browser's default stylesheet.
* As there is no way to avoid bulma rules, we simply make them invalid by setting an invalid variable value, the rules will then be ignored by the browser.

View File

@@ -28,6 +28,15 @@ $ibo-vendors-ckeditor--ck-mentions--item--padding-x: $ibo-spacing-300 !default;
$ibo-vendors-ckeditor--ck-mentions--item--padding-y: $ibo-spacing-200 !default;
/* CSS3 variables */
:root {
--ck-content-font-family: inherit;
--ck-content-font-color: inherit;
--ck-content-font-size: inherit;
--ck-content-line-height: inherit;
--ck-content-word-break: inherit;
--ck-content-overflow-wrap: inherit;
}
.ck {
--ck-color-list-button-on-background: #{$ibo-vendors-ckeditor--ck-color-list-button-on-background};
--ck-color-list-button-on-background-focus: #{$ibo-vendors-ckeditor--ck-color-list-button-on-background-focus};

File diff suppressed because one or more lines are too long

View File

@@ -97,18 +97,19 @@
$bDebug = isset($aServerParams['debug']) ? $aServerParams['debug'] : false;
}
if (array_key_exists(LDAP_OPT_DEBUG_LEVEL, $aOptions))
{
// Set debug level before trying to connect, so that debug info appear in the PHP error log if ldap_connect goes wrong
$bRet = ldap_set_option(null, LDAP_OPT_DEBUG_LEVEL, $aOptions[LDAP_OPT_DEBUG_LEVEL]);
$this->LogInfo($bDebug, "ldap_set_option('LDAP_OPT_DEBUG_LEVEL', '{$aOptions[LDAP_OPT_DEBUG_LEVEL]}') returned ".($bRet ? 'true' : 'false'));
}
$hDS = @ldap_connect($sURI);
if ($hDS === false)
{
$this->LogIssue($bDebug, "ldap_authentication: can not connect to the LDAP server '$sURI'. Check the configuration file config-itop.php.");
return false;
}
if (array_key_exists(LDAP_OPT_DEBUG_LEVEL, $aOptions))
{
// Set debug level before trying to connect, so that debug info appear in the PHP error log if ldap_connect goes wrong
$bRet = ldap_set_option($hDS, LDAP_OPT_DEBUG_LEVEL, $aOptions[LDAP_OPT_DEBUG_LEVEL]);
$this->LogInfo($bDebug, "ldap_set_option('LDAP_OPT_DEBUG_LEVEL', '{$aOptions[LDAP_OPT_DEBUG_LEVEL]}') returned ".($bRet ? 'true' : 'false'));
}
foreach($aOptions as $name => $value)
{
$bRet = ldap_set_option($hDS, $name, $value);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -68,47 +68,47 @@ $ibo-color-information-900: #0f172a !default;
$ibo-color-information-950: #020617 !default;
$ibo-lifecycle-new-state-primary-color: $ibo-color-information-600;
$ibo-lifecycle-new-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-neutral-state-primary-color: $ibo-color-information-600;
$ibo-lifecycle-neutral-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-waiting-state-primary-color: $ibo-color-yellow-700;
$ibo-lifecycle-waiting-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-success-state-primary-color: $ibo-color-blue-700;
$ibo-lifecycle-success-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-failure-state-primary-color: $ibo-color-orange-800;
$ibo-lifecycle-failure-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-frozen-state-primary-color: $ibo-color-information-200;
$ibo-lifecycle-frozen-state-secondary-color: $ibo-color-information-700;
$ibo-lifecycle-new-state-primary-color: $ibo-color-information-600 !default;
$ibo-lifecycle-new-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-neutral-state-primary-color: $ibo-color-information-600 !default;
$ibo-lifecycle-neutral-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-waiting-state-primary-color: $ibo-color-yellow-700 !default;
$ibo-lifecycle-waiting-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-success-state-primary-color: $ibo-color-blue-700 !default;
$ibo-lifecycle-success-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-failure-state-primary-color: $ibo-color-orange-800 !default;
$ibo-lifecycle-failure-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-frozen-state-primary-color: $ibo-color-information-200 !default;
$ibo-lifecycle-frozen-state-secondary-color: $ibo-color-information-700 !default;
$ibo-lifecycle-active-state-primary-color: $ibo-color-blue-700;
$ibo-lifecycle-active-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-inactive-state-primary-color: $ibo-color-yellow-700;
$ibo-lifecycle-inactive-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-active-state-primary-color: $ibo-color-blue-700 !default;
$ibo-lifecycle-active-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-inactive-state-primary-color: $ibo-color-yellow-700 !default;
$ibo-lifecycle-inactive-state-secondary-color: $ibo-color-white-100 !default;
$ibo-caselog-highlight-color-1: $ibo-color-blue-700;
$ibo-caselog-highlight-color-2: $ibo-color-yellow-700;
$ibo-caselog-highlight-color-3: $ibo-color-information-600;
$ibo-caselog-highlight-color-4: $ibo-color-yellow-500;
$ibo-caselog-highlight-color-5: $ibo-color-blue-500;
$ibo-caselog-highlight-color-6: $ibo-color-yellow-300;
$ibo-caselog-highlight-color-7: $ibo-color-blue-300;
$ibo-caselog-highlight-color-1: $ibo-color-blue-700 !default;
$ibo-caselog-highlight-color-2: $ibo-color-yellow-700 !default;
$ibo-caselog-highlight-color-3: $ibo-color-information-600 !default;
$ibo-caselog-highlight-color-4: $ibo-color-yellow-500 !default;
$ibo-caselog-highlight-color-5: $ibo-color-blue-500 !default;
$ibo-caselog-highlight-color-6: $ibo-color-yellow-300 !default;
$ibo-caselog-highlight-color-7: $ibo-color-blue-300 !default;
$ibo-input-wrapper--is-error--border-color: $ibo-color-warning-700;
$ibo-field-validation: $ibo-color-warning-800;
$ibo-input-wrapper--is-error--border-color: $ibo-color-warning-700 !default;
$ibo-field-validation: $ibo-color-warning-800 !default;
$ibo-navigation-menu--visual-hint--background-color: $ibo-color-blue-400;
$ibo-navigation-menu--visual-hint--background-color: $ibo-color-blue-400 !default;
$ibo-wizard-container--background-color: $ibo-color-information-200;
$ibo-wizard-container--border-color: $ibo-color-information-600;
$ibo-wizard-container--background-color: $ibo-color-information-200 !default;
$ibo-wizard-container--border-color: $ibo-color-information-600 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--background-color: $ibo-color-white-100;
$ibo-navigation-menu--notifications--item--new-message-indicator--border: solid 2px $ibo-color-grey-500;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-1--background-color: $ibo-color-danger-100;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-1--border: solid 2px $ibo-color-danger-500;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-2--background-color: $ibo-color-warning-100;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-2--border: solid 2px $ibo-color-warning-500;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-3--background-color: $ibo-color-success-100;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-3--border: solid 2px $ibo-color-success-500;
$ibo-navigation-menu--notifications--item--new-message-indicator--background-color: $ibo-color-white-100 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--border: solid 2px $ibo-color-grey-500 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-1--background-color: $ibo-color-danger-100 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-1--border: solid 2px $ibo-color-danger-500 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-2--background-color: $ibo-color-warning-100 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-2--border: solid 2px $ibo-color-warning-500 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-3--background-color: $ibo-color-success-100 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-3--border: solid 2px $ibo-color-success-500 !default;
$ibo-notifications--view-all--item--unread--highlight--background-color: $ibo-color-blue-600;
$ibo-notifications--view-all--item--unread--highlight--background-color: $ibo-color-blue-600 !default;

View File

@@ -32,47 +32,47 @@ $ibo-color-information-900: #0f172a !default;
$ibo-color-information-950: #020617 !default;
$ibo-lifecycle-new-state-primary-color: $ibo-color-information-600;
$ibo-lifecycle-new-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-neutral-state-primary-color: $ibo-color-information-600;
$ibo-lifecycle-neutral-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-waiting-state-primary-color: $ibo-color-red-200;
$ibo-lifecycle-waiting-state-secondary-color: $ibo-color-red-800;
$ibo-lifecycle-success-state-primary-color: $ibo-color-blue-700;
$ibo-lifecycle-success-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-failure-state-primary-color: $ibo-color-red-800;
$ibo-lifecycle-failure-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-frozen-state-primary-color: $ibo-color-information-200;
$ibo-lifecycle-frozen-state-secondary-color: $ibo-color-information-700;
$ibo-lifecycle-new-state-primary-color: $ibo-color-information-600 !default;
$ibo-lifecycle-new-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-neutral-state-primary-color: $ibo-color-information-600 !default;
$ibo-lifecycle-neutral-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-waiting-state-primary-color: $ibo-color-red-200 !default;
$ibo-lifecycle-waiting-state-secondary-color: $ibo-color-red-800 !default;
$ibo-lifecycle-success-state-primary-color: $ibo-color-blue-700 !default;
$ibo-lifecycle-success-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-failure-state-primary-color: $ibo-color-red-800 !default;
$ibo-lifecycle-failure-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-frozen-state-primary-color: $ibo-color-information-200 !default;
$ibo-lifecycle-frozen-state-secondary-color: $ibo-color-information-700 !default;
$ibo-lifecycle-active-state-primary-color: $ibo-color-blue-700;
$ibo-lifecycle-active-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-inactive-state-primary-color: $ibo-color-red-700;
$ibo-lifecycle-inactive-state-secondary-color: $ibo-color-white-100;
$ibo-lifecycle-active-state-primary-color: $ibo-color-blue-700 !default;
$ibo-lifecycle-active-state-secondary-color: $ibo-color-white-100 !default;
$ibo-lifecycle-inactive-state-primary-color: $ibo-color-red-700 !default;
$ibo-lifecycle-inactive-state-secondary-color: $ibo-color-white-100 !default;
$ibo-caselog-highlight-color-1: $ibo-color-blue-700;
$ibo-caselog-highlight-color-2: $ibo-color-red-700;
$ibo-caselog-highlight-color-3: $ibo-color-information-600;
$ibo-caselog-highlight-color-4: $ibo-color-red-500;
$ibo-caselog-highlight-color-5: $ibo-color-blue-500;
$ibo-caselog-highlight-color-6: $ibo-color-red-300;
$ibo-caselog-highlight-color-7: $ibo-color-blue-300;
$ibo-caselog-highlight-color-1: $ibo-color-blue-700 !default;
$ibo-caselog-highlight-color-2: $ibo-color-red-700 !default;
$ibo-caselog-highlight-color-3: $ibo-color-information-600 !default;
$ibo-caselog-highlight-color-4: $ibo-color-red-500 !default;
$ibo-caselog-highlight-color-5: $ibo-color-blue-500 !default;
$ibo-caselog-highlight-color-6: $ibo-color-red-300 !default;
$ibo-caselog-highlight-color-7: $ibo-color-blue-300 !default;
$ibo-input-wrapper--is-error--border-color: $ibo-color-pink-700;
$ibo-field-validation: $ibo-color-pink-800;
$ibo-input-wrapper--is-error--border-color: $ibo-color-pink-700 !default;
$ibo-field-validation: $ibo-color-pink-800 !default;
$ibo-navigation-menu--visual-hint--background-color: $ibo-color-pink-600;
$ibo-navigation-menu--visual-hint--background-color: $ibo-color-pink-600 !default;
$ibo-wizard-container--background-color: $ibo-color-information-200;
$ibo-wizard-container--border-color: $ibo-color-information-600;
$ibo-wizard-container--background-color: $ibo-color-information-200 !default;
$ibo-wizard-container--border-color: $ibo-color-information-600 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--background-color: $ibo-color-white-100;
$ibo-navigation-menu--notifications--item--new-message-indicator--border: solid 2px $ibo-color-grey-500;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-1--background-color: $ibo-color-pink-100;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-1--border: solid 2px $ibo-color-pink-600;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-2--background-color: $ibo-color-warning-100;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-2--border: solid 2px $ibo-color-warning-400;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-3--background-color: $ibo-color-success-100;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-3--border: solid 2px $ibo-color-success-500;
$ibo-navigation-menu--notifications--item--new-message-indicator--background-color: $ibo-color-white-100 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--border: solid 2px $ibo-color-grey-500 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-1--background-color: $ibo-color-pink-100 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-1--border: solid 2px $ibo-color-pink-600 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-2--background-color: $ibo-color-warning-100 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-2--border: solid 2px $ibo-color-warning-400 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-3--background-color: $ibo-color-success-100 !default;
$ibo-navigation-menu--notifications--item--new-message-indicator--is-priority-3--border: solid 2px $ibo-color-success-500 !default;
$ibo-notifications--view-all--item--unread--highlight--background-color: $ibo-color-pink-500;
$ibo-notifications--view-all--item--unread--highlight--background-color: $ibo-color-pink-500 !default;

View File

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
id="acer"
x="0px"
y="0px"
width="83"
height="83"
viewBox="0 0 83 83"
xml:space="preserve"
sodipodi:docname="icon-acer.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:svg="http://www.w3.org/2000/svg"><svg:defs
id="defs1" /><sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"
inkscape:zoom="10.483071"
inkscape:cx="75.78886"
inkscape:cy="35.676568"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="acer"><sodipodi:guide
position="40.307919,41.220214"
orientation="0,-1"
id="guide1"
inkscape:locked="false" /></sodipodi:namedview>
<svg:path
id="acer-logo"
style="fill:#80c343"
d="m 82.85,32.760893 c -0.29,-0.42 -0.62,-0.7 -2.04,-0.81 -0.37,-0.03 -1.6,-0.07 -3.66,-0.07 -5.42,0 -9.1,1.65 -10.98,4.91 0.52,-3.28 -2.67,-4.92 -9.55,-4.92 -8.09,0 -13.14,3.27 -15.15,9.81 -0.74,1.91 -0.82,4.02 -0.23,5.98 l -1.91,0.13 c -1.49,0.11 -3.46,0.22 -4.66,0.22 -2.96,0 -4.8,-0.5 -5.51,-1.5 -0.64,-0.9 -0.57,-2.56 0.17,-4.98 1.23,-4.02 4.29,-5.82 9.18,-5.82 2.53,0 5,0.27 5,0.27 0.3,-0.05 0.51,-0.33 0.46,-0.64 0,-0.01 0,-0.02 -0.01,-0.03 l -0.05,-0.38 -0.17,-1.35 c -0.11,-0.89 -0.77,-1.41 -1.97,-1.57 -1.1,-0.07 -1.91,-0.13 -3.12,-0.13 h -0.07 c -6.39,0.01 -10.84,2.12 -13.36,6.32 0.92,-4.21 -2.04,-6.32 -8.87,-6.32 -2.73,-0.05 -5.46,0.06 -8.18,0.33 -1.03,-0.03 -1.96,0.61 -2.33,1.57 l -0.54,1.73 c -0.1,0.32 0.05,0.48 0.46,0.48 h 0.01 c 0.3,-0.04 1.46,-0.15 3.44,-0.31 2.62,-0.21 4.55,-0.32 5.83,-0.32 3.77,0 5.35,0.95 4.76,2.84 -0.11,0.4 -0.44,0.71 -0.85,0.78 -3.56,0.59 -6.39,1.02 -8.48,1.28 -5.89,0.75 -9.29,2.59 -10.2,5.52 -1.25,4.03 1.89,6.04 9.44,6.04 3.17,0.04 6.34,-0.18 9.48,-0.65 1.47,-0.25 2.22,-0.63 2.51,-1.58 l 1.41,-4.49 c -0.15,4.49 2.99,6.75 9.41,6.75 2.23,0.04 4.45,-0.06 6.66,-0.31 1.32,-0.23 1.95,-0.52 2.24,-1.51 l 0.28,-1.41 c 1.37,2.14 4.37,3.21 9.01,3.21 4.89,0 7.74,-0.14 8.55,-0.41 0.57,-0.12 1.04,-0.52 1.25,-1.06 0.03,-0.09 0.05,-0.19 0.06,-0.28 l 0.59,-1.91 c 0.1,-0.33 -0.05,-0.49 -0.45,-0.48 l -3.13,0.15 c -2.09,0.12 -3.72,0.18 -4.9,0.17 -1.54,0.08 -3.08,-0.07 -4.58,-0.46 -1.2,-0.41 -1.94,-1.61 -1.77,-2.86 l 9.91,-1.27 c 4.44,-0.57 7.42,-1.94 8.92,-4.12 l -3.37,11.73 c -0.07,0.18 -0.04,0.38 0.07,0.53 0.18,0.17 0.41,0.25 0.65,0.22 h 4.1 c 0.47,0.07 0.93,-0.22 1.06,-0.68 l 3.62,-12.67 c 0.48,-1.67 2,-2.48 4.67,-2.48 2.41,0 4.22,0.02 5.38,0.07 0.03,0 0.06,0 0.09,0 0.39,0 0.74,-0.26 0.84,-0.63 l 0.63,-1.74 c 0.15,-0.3 0.12,-0.63 -0.05,-0.89 m -66.12,15.24 c -1.83,0.23 -3.68,0.33 -5.52,0.3 -4.17,0 -5.99,-0.84 -5.46,-2.53 0.38,-1.21 1.47,-1.94 3.28,-2.19 l 9.48,-1.28 z m 43.83,-10.27 c -0.4,1.3 -2.25,2.19 -5.56,2.67 l -7.9,1.13 0.2,-0.65 c 0.39,-1.74 1.37,-3.28 2.79,-4.37 1.2,-0.77 3.15,-1.16 5.86,-1.16 3.56,0 5.1,0.8 4.61,2.38" />
</svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

@@ -0,0 +1,124 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="108"
height="108"
viewBox="0 0 108 108"
role="img"
version="1.1"
id="svg11"
sodipodi:docname="icon-cisco.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<sodipodi:namedview
id="namedview11"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"
inkscape:zoom="6.8229602"
inkscape:cx="48.879078"
inkscape:cy="51.737075"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg11">
<sodipodi:guide
position="16.939587,53.376303"
orientation="0,-1"
id="guide11"
inkscape:locked="false" />
</sodipodi:namedview>
<title
id="fw-c-header__logo-title">Cisco.com France</title>
<defs
id="defs1">
<path
d="m 0,22.769 a 2.348,2.348 0 0 0 3.935,1.545 c 0.434,-0.403 0.7,-0.955 0.744,-1.545 v -5.2 a 2.34,2.34 0 0 0 -4.679,0 v 5.2"
id="bar_short"
class="bar" />
<path
d="m 12.95,22.769 a 2.349,2.349 0 0 0 2.34,2.171 2.346,2.346 0 0 0 2.339,-2.171 V 11.112 a 2.341,2.341 0 0 0 -4.679,0 V 22.77"
id="bar_tall"
class="bar" />
<path
d="m 25.832,27.464 a 2.345,2.345 0 0 0 4.678,0 V 2.249 a 2.342,2.342 0 0 0 -4.678,0 v 25.215"
id="bar_grande"
class="bar" />
<path
d="m 24.026,56.277 v -5.002 l -0.098,0.043 a 9.253,9.253 0 0 1 -3.605,0.915 5.303,5.303 0 0 1 -3.63,-1.07 4.644,4.644 0 0 1 -1.58,-2.244 5.395,5.395 0 0 1 -0.106,-3 4.6,4.6 0 0 1 1.609,-2.566 4.823,4.823 0 0 1 2.528,-1.09 8.332,8.332 0 0 1 4.774,0.895 l 0.108,0.056 v -5.03 l -0.228,-0.061 a 12.78,12.78 0 0 0 -4.552,-0.596 10.534,10.534 0 0 0 -4.065,0.93 9.29,9.29 0 0 0 -3.329,2.572 10.014,10.014 0 0 0 -0.182,12.18 9.546,9.546 0 0 0 5.292,3.403 c 2.211,0.538 4.528,0.456 6.697,-0.234 l 0.367,-0.101"
id="cisco_c" />
</defs>
<g
fill="#02c8ff"
fill-rule="evenodd"
id="g11"
transform="translate(-0.09466859,26.234946)">
<use
href="#cisco_c"
id="use1" />
<use
href="#cisco_c"
x="49.5"
id="use2" />
<path
d="m 41.69,52.125 -0.019,4.308 0.315,0.054 c 0.989,0.185 1.987,0.313 2.99,0.385 a 18.1,18.1 0 0 0 2.642,0.051 c 0.842,-0.06 1.675,-0.218 2.48,-0.468 a 6.862,6.862 0 0 0 2.573,-1.371 5.19,5.19 0 0 0 1.498,-2.148 5.912,5.912 0 0 0 -0.03,-4.324 4.852,4.852 0 0 0 -1.343,-1.862 5.568,5.568 0 0 0 -1.97,-1.147 l -3.25,-1.206 a 1.742,1.742 0 0 1 -0.887,-0.845 1.107,1.107 0 0 1 0.036,-0.986 1.29,1.29 0 0 1 0.217,-0.291 1.75,1.75 0 0 1 0.48,-0.347 c 0.363,-0.18 0.755,-0.293 1.158,-0.337 a 6.76,6.76 0 0 1 2.072,0.022 c 0.81,0.088 1.613,0.231 2.402,0.43 l 0.168,0.037 v -3.974 l -0.31,-0.067 a 21.14,21.14 0 0 0 -2.444,-0.435 12.545,12.545 0 0 0 -3.213,-0.014 6.945,6.945 0 0 0 -3.699,1.488 4.908,4.908 0 0 0 -1.58,2.178 5.984,5.984 0 0 0 -0.003,4.05 c 0.242,0.65 0.63,1.237 1.136,1.714 0.437,0.422 0.932,0.78 1.47,1.065 0.708,0.38 1.458,0.675 2.235,0.878 0.257,0.077 0.512,0.158 0.766,0.243 l 0.385,0.141 0.11,0.045 c 0.38,0.136 0.726,0.35 1.018,0.628 0.202,0.19 0.358,0.423 0.455,0.683 0.06,0.237 0.061,0.485 0.003,0.723 a 1.536,1.536 0 0 1 -0.744,0.892 3.691,3.691 0 0 1 -1.239,0.387 9,9 0 0 1 -1.92,0.097 21.973,21.973 0 0 1 -2.507,-0.334 c -0.433,-0.09 -0.864,-0.19 -1.291,-0.303 z m -11.144,4.482 h 4.73 V 37.846 h -4.73 z M 85.305,43.386 a 4.934,4.934 0 1 1 6.157,7.711 4.934,4.934 0 0 1 -6.157,-7.71 m -6.867,3.848 a 9.87,9.87 0 0 0 12.002,9.485 9.629,9.629 0 0 0 3.157,-17.729 9.934,9.934 0 0 0 -15.16,8.244"
id="path2" />
<use
href="#bar_short"
x="0"
id="use3" />
<use
href="#bar_tall"
x="0"
id="use4" />
<use
href="#bar_grande"
x="0"
id="use5" />
<use
href="#bar_tall"
x="25.875"
id="use6" />
<use
href="#bar_short"
x="51.75"
id="use7" />
<use
href="#bar_tall"
x="51.75"
id="use8" />
<use
href="#bar_grande"
x="51.75"
id="use9" />
<use
href="#bar_tall"
x="77.625"
id="use10" />
<use
href="#bar_short"
x="103.375"
id="use11" />
</g>
<metadata
id="metadata11">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:title>Cisco.com France</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
</svg>

After

Width:  |  Height:  |  Size: 4.9 KiB

View File

@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 29.5.1, SVG Export Plug-In . SVG Version: 9.03 Build 0) -->
<svg
version="1.0"
id="katman_1"
x="0px"
y="0px"
viewBox="0 0 630 630"
xml:space="preserve"
sodipodi:docname="icon-hpe.svg"
width="630"
height="630"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs2" /><sodipodi:namedview
id="namedview2"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"
inkscape:zoom="0.6905515"
inkscape:cx="-217.94175"
inkscape:cy="275.1424"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="katman_1"><sodipodi:guide
position="197.66244,314.48848"
orientation="0,-1"
id="guide2"
inkscape:locked="false" /></sodipodi:namedview>
<style
type="text/css"
id="style1">
.st0{fill:none;stroke:#000000;stroke-width:36;}
.st1{fill:none;stroke:#03A883;stroke-width:36;}
</style>
<path
class="st0"
d="m 18.511987,405.93012 v -180 m 154.000003,180 v -180 m -154.000003,89 H 155.51199 m 95,91 v -180 m 0,18 h 102 c 27.6,0 50,22.4 50,50 0,27.6 -22.4,50 -50,50 h -102 m 222,-67 v -33 h 158"
id="path1" />
<path
class="st1"
d="m 630.51199,387.93012 h -158 v -76 h 158"
id="path2" />
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 231 231"
preserveAspectRatio="xMinYMid"
version="1.1"
id="svg4"
xml:space="preserve"
width="231"
height="231"
sodipodi:docname="icon-oracle-linux.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"
inkscape:zoom="7.5332891"
inkscape:cx="107.05815"
inkscape:cy="90.796993"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg4"><sodipodi:guide
position="41.763589,115.468"
orientation="0,-1"
id="guide1"
inkscape:locked="false" /></sodipodi:namedview><defs
id="defs8"><rect
x="-138.24641"
y="81.567238"
width="382.3674"
height="240.21156"
id="rect495" /><rect
x="-17.612623"
y="104.35898"
width="171.05238"
height="197.31444"
id="rect291" /></defs><g
id="g1407"
transform="translate(0.61321542,76.835533)"><path
d="m 99.59,19.52 h 15.24 L 106.78,6.52 91.98,30 h -6.73 l 18,-28.17 a 4.29,4.29 0 0 1 7,-0.05 L 128.3,30 h -6.73 l -3.17,-5.25 h -15.42 l -3.36,-5.23 m 69.93,5.23 V 0.28 h -5.72 v 26.88 a 2.76,2.76 0 0 0 0.85,2 2.89,2.89 0 0 0 2.08,0.87 h 26 l 3.39,-5.25 h -26.63 m -94.54,-4.4 a 10.05,10.05 0 0 0 0,-20.1 h -25 V 30 h 5.71 V 5.54 h 18.94 a 4.81,4.81 0 0 1 0,9.62 H 58.52 L 75.58,30 h 8.29 L 72.41,20.38 h 2.57 M 14.86,30 h 17.27 a 14.86,14.86 0 0 0 0,-29.71 H 14.86 a 14.86,14.86 0 1 0 0,29.71 m 16.88,-5.23 h -16.5 a 9.62,9.62 0 0 1 0,-19.23 h 16.5 a 9.62,9.62 0 1 1 0,19.23 M 140.23,30 h 17.63 l 3.34,-5.23 h -20.58 a 9.62,9.62 0 1 1 0,-19.23 h 16.75 l 3.38,-5.25 h -20.52 a 14.86,14.86 0 1 0 0,29.71 m 69.87,-5.23 a 9.62,9.62 0 0 1 -9.26,-7 h 24.42 l 3.36,-5.24 h -27.78 a 9.61,9.61 0 0 1 9.26,-7 h 16.76 l 3.35,-5.25 h -20.5 a 14.86,14.86 0 0 0 0,29.71 h 17.63 l 3.35,-5.23 h -20.6"
style="fill:#c74634"
id="path2" /><path
id="rect749"
style="fill:#c74634;fill-opacity:1;stroke-width:5.2519;stroke-linecap:square;paint-order:stroke fill markers"
d="m 25.391517,47.930871 h 4.980863 v 3.830025 h -4.980863 z m 61.5008,18.557061 -7.24,-10.240002 h 4.96 l 4.64,7.080002 h 0.24 l 4.76,-7.080002 h 4.72 l -7.28,10.160002 7.64,10.88 h -4.96 l -5.08,-7.72 h -0.24 l -5.12,7.72 h -4.72 z m -21.599998,11.28 q -6.68,0 -6.68,-7.24 V 56.24793 h 4.12 v 13.760002 q 0,2.36 1.04,3.32 1.08,0.92 3.12,0.92 1.4,0 2.6,-0.68 1.2,-0.72 1.88,-2 0.72,-1.28 0.72,-2.96 V 56.24793 h 4.12 v 21.040002 h -3.32 l -0.4,-2.8 h -0.28 q -1.16,1.6 -2.92,2.44 -1.76,0.84 -4,0.84 z M 35.81232,56.24793 h 3.320001 l 0.4,2.800002 h 0.28 q 1.12,-1.600002 2.88,-2.440002 1.8,-0.84 4.04,-0.84 6.68,0 6.68,7.240002 v 14.28 h -4.12 v -13.76 q 0,-2.36 -1.08,-3.28 -1.04,-0.96 -3.08,-0.96 -1.4,0 -2.6,0.72 -1.2,0.68 -1.92,1.96 -0.68,1.28 -0.68,2.96 v 12.36 H 35.81232 Z M 3.61239,47.930871 h 4.44 v 25.517061 h 14.28 v 3.84 h -18.72 z M 26.256768,59.46395 V 77.287932 H 30.37238 V 56.275464 h -6.387612 v 1.825681 z" /></g></svg>

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 1280 1280"
version="1.1"
id="svg1"
sodipodi:docname="icon-sony.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
width="1280"
height="1280"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="0.63418639"
inkscape:cx="-462.79769"
inkscape:cy="225.48576"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="g4"
showguides="true">
<sodipodi:guide
position="173.37108,641.89024"
orientation="0,-1"
id="guide1"
inkscape:locked="false" />
</sodipodi:namedview>
<svg:defs
id="defs1" />
<svg:g
id="Layer_2">
<svg:g
id="g4"
inkscape:label="logo">
<svg:path
d="m 456.0129,751.74687 c -46.41279,0 -89.42079,-13.82399 -118.09279,-39.60319 a 96.895989,96.895989 0 0 1 -32.12799,-73.19039 98.329588,98.329588 0 0 1 32.12799,-72.9344 c 26.624,-24.19199 73.728,-39.55199 118.09279,-39.55199 49.07519,0 88.37119,12.3648 118.39999,39.60319 a 97.407989,97.407989 0 0 1 31.69279,72.8832 101.52959,101.52959 0 0 1 -31.69279,73.19039 c -27.9808,25.9328 -71.9104,39.60319 -118.39999,39.60319 v -29.64479 c 24.6016,0 47.43679,-8.4992 63.38559,-24.3712 15.9488,-15.872 23.1936,-35.1232 23.1936,-58.87999 0,-22.6816 -7.9616,-43.8784 -23.1936,-58.88 -15.744,-15.48799 -39.11679,-24.21759 -63.38559,-24.21759 -24.2688,0 -47.74399,8.6528 -63.48799,24.21759 -15.1808,15.0272 -23.04,36.3008 -23.04,58.88 a 82.35519,82.35519 0 0 0 23.04,58.87999 c 15.744,15.6928 39.06559,24.3712 63.48799,24.3712 z M 117.12014,526.4669 c -24.806392,0 -52.991989,4.6592 -76.799986,15.36 C 18.099355,551.7597 1.575e-4,567.70849 1.575e-4,594.15329 a 54.220794,54.220794 0 0 0 14.7199985,37.2736 c 6.425599,5.9392 16.793599,16.0256 43.878396,21.9648 12.108798,2.55999 37.990395,6.68159 63.769588,9.39519 25.7792,2.7136 50.7648,5.12 61.0048,7.8592 8.1408,2.0736 21.83679,4.8896 21.83679,20.2496 0,15.36 -14.41279,19.968 -16.92159,20.9664 -2.5088,0.9984 -19.8144,8.9344 -50.8928,8.9344 a 216.42237,216.42237 0 0 1 -60.59519,-10.4192 c -11.596799,-4.1472 -23.756797,-9.6 -35.097596,-23.4496 a 40.268795,40.268795 0 0 1 -7.295999,-22.2208 H 6.2465567 v 78.84799 H 37.529754 v -10.67519 a 4.4543995,4.4543995 0 0 1 6.7584,-3.84 246.42557,246.42557 0 0 0 45.772794,14.79679 c 16.435202,3.4304 27.059192,5.9136 47.487992,5.9136 a 202.62398,202.62398 0 0 0 63.6416,-8.9856 111.07839,111.07839 0 0 0 37.81119,-18.66239 51.814394,51.814394 0 0 0 20.24959,-41.4976 58.060793,58.060793 0 0 0 -16.35839,-40.80639 72.012792,72.012792 0 0 0 -20.1728,-13.7984 148.60798,148.60798 0 0 0 -24.88319,-8.6784 c -16.2304,-3.968 -52.6848,-8.9344 -70.1184,-10.6752 -18.27839,-1.8944 -49.99679,-4.5312 -62.668789,-8.448 -3.839999,-1.2032 -11.673599,-4.9152 -11.673599,-14.0032 0,-6.4768 3.584,-11.9552 10.649599,-16.384 C 75.26415,560.7709 97.945747,556.3933 121.60014,556.3933 a 166.98878,166.98878 0 0 1 66.7136,13.03039 72.857591,72.857591 0 0 1 15.87199,9.472 47.718394,47.718394 0 0 1 15.6416,26.1632 h 25.2672 V 536.4253 h -28.16 v 7.9616 c 0,2.56 -2.56,5.9392 -7.68,3.1488 -12.69759,-6.6048 -48.38399,-20.8896 -92.13439,-21.0688 z m 618.21433,12.5952 137.62558,124.18558 -1.408,-83.60959 c -0.1536,-10.9824 -2.1504,-15.56479 -14.0288,-15.56479 h -25.85599 v -25.0112 h 117.75998 v 25.0112 h -25.26719 c -12.0832,0 -12.8,3.89119 -13.0048,15.56479 l 2.1248,159.76959 h -40.32 L 714.41927,597.94209 v 100.37759 c 0.128,10.9312 0.64,16.0768 11.8784,16.0768 h 28.16 v 25.0112 H 639.02728 v -25.0112 h 27.0336 c 10.08639,0 9.67679,-9.6256 9.67679,-16.64 V 580.58529 c 0,-7.68 -1.0752,-16.48639 -16.89599,-16.48639 h -21.9136 V 539.0621 Z M 1083.776,714.34528 a 55.859193,55.859193 0 0 0 6.9632,-0.4352 8.627199,8.627199 0 0 0 5.4272,-4.8128 28.006397,28.006397 0 0 0 0.5376,-5.4016 v -39.552 c 0,-1.3312 0,-1.3568 -1.6896,-3.456 -1.6896,-2.0992 -72.0896,-81.91999 -75.2896,-85.50399 -3.9936,-4.352 -11.008,-11.08479 -21.6832,-11.08479 h -24.44796 v -25.0368 h 137.98396 v 24.9856 h -16.64 c -3.84,0 -6.4,3.66079 -3.1232,7.67999 0,0 46.4384,55.552 46.8736,56.1408 0.4352,0.5888 0.8192,0.7168 1.408,0.1792 0.5888,-0.5376 47.5904,-55.808 47.9488,-56.32 a 4.7871994,4.7871994 0 0 0 -4.096,-7.67999 h -17.0752 V 539.0621 H 1280 v 25.0368 h -25.2672 c -9.1648,0 -12.8,1.68959 -19.7888,9.47199 l -76.16,86.88639 a 5.3759994,5.3759994 0 0 0 -0.9216,3.6864 v 39.5264 a 28.159997,28.159997 0 0 0 0.5632,5.4016 8.524799,8.524799 0 0 0 5.4016,4.8128 50.611194,50.611194 0 0 0 6.912,0.4352 h 25.8304 v 25.0368 h -137.2672 v -25.0368 z"
id="path1"
fill="#000000"
style="stroke-width:2.56" />
</svg:g>
</svg:g>
</svg>

After

Width:  |  Height:  |  Size: 5.1 KiB

View File

@@ -0,0 +1,281 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 96 96"
width="96"
height="96"
version="1.1"
id="svg25"
sodipodi:docname="icons8-acess-point-3.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs25" />
<sodipodi:namedview
id="namedview25"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"
inkscape:zoom="2.0255663"
inkscape:cx="-53.071578"
inkscape:cy="-106.14316"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg25">
<sodipodi:guide
position="-127.86548,48.359002"
orientation="0,-1"
id="guide25"
inkscape:locked="false" />
<sodipodi:guide
position="47.76442,140.92571"
orientation="1,0"
id="guide26"
inkscape:locked="false" />
<sodipodi:guide
position="44.611364,71.852727"
orientation="1,0"
id="guide27"
inkscape:locked="false" />
</sodipodi:namedview>
<linearGradient
id="sQy7OvPXH0t2mKfqk7XuXa"
x1="34.117001"
x2="33.909"
y1="30.451"
y2="11.826"
gradientTransform="matrix(2.2111455,0,0,-2.2111455,-5.0805451,101.8257)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#737b80"
id="stop1" />
<stop
offset=".714"
stop-color="#737b80"
id="stop2" />
<stop
offset=".756"
stop-color="#737b80"
id="stop3" />
<stop
offset=".863"
stop-color="#656c71"
id="stop4" />
<stop
offset="1"
stop-color="#575c61"
id="stop5" />
</linearGradient>
<path
fill="url(#sQy7OvPXH0t2mKfqk7XuXa)"
d="m 63.464964,82.168622 c -0.210059,0 -0.42454,-0.03096 -0.636811,-0.09287 -1.169694,-0.351572 -1.83525,-1.58318 -1.483677,-2.752875 L 74.611348,35.09997 c 0.351573,-1.169696 1.585392,-1.835252 2.752877,-1.483679 1.169696,0.351571 1.83525,1.583179 1.483677,2.752876 L 65.581031,80.592076 c -0.285238,0.959638 -1.163063,1.576547 -2.116067,1.576546 z"
id="path5"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXa);stroke-width:2.21115" />
<linearGradient
id="sQy7OvPXH0t2mKfqk7XuXb"
x1="14.121"
x2="13.913"
y1="30.719"
y2="12.094"
gradientTransform="matrix(2.2111455,0,0,-2.2111455,-5.0805451,101.8257)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#737b80"
id="stop6" />
<stop
offset=".773"
stop-color="#737b80"
id="stop7" />
<stop
offset="1"
stop-color="#575c61"
id="stop8" />
</linearGradient>
<path
fill="url(#sQy7OvPXH0t2mKfqk7XuXb)"
d="m 32.508927,82.168622 c -0.950793,0 -1.828617,-0.619122 -2.118278,-1.576548 L 17.123777,36.369165 c -0.351573,-1.169696 0.313983,-2.401304 1.483679,-2.752876 1.167483,-0.344938 2.401305,0.313984 2.752875,1.483679 l 13.266874,44.22291 c 0.351572,1.169696 -0.313982,2.401304 -1.483679,2.752875 -0.21227,0.06191 -0.42454,0.09287 -0.634599,0.09287 z"
id="path8"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXb);stroke-width:2.21115" />
<linearGradient
id="sQy7OvPXH0t2mKfqk7XuXc"
x1="24"
x2="24"
y1="14.614"
y2="-2.0710001"
gradientTransform="matrix(2.2111455,0,0,-2.2111455,-5.0805451,101.8257)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#899198"
id="stop9" />
<stop
offset="1"
stop-color="#787e85"
id="stop10" />
</linearGradient>
<path
fill="url(#sQy7OvPXH0t2mKfqk7XuXc)"
d="M 85.576419,88.802058 H 10.397473 c -2.4433136,0 -4.4222888,-1.978974 -4.4222888,-4.42229 V 68.901749 c 0,-2.443315 1.9789752,-4.422291 4.4222888,-4.422291 h 75.178946 c 2.443316,0 4.422291,1.978976 4.422291,4.422291 v 15.478019 c 0,2.443316 -1.978975,4.42229 -4.422291,4.42229 z"
id="path10"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXc);stroke-width:2.21115" />
<rect
width="75.178947"
height="15.478019"
x="10.397472"
y="68.901749"
fill="#737b80"
id="rect10"
style="stroke-width:2.21115" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXd"
cx="36.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.2111455,0,0,-2.2111455,-5.0805451,101.8257)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop11" />
<stop
offset="1"
stop-opacity="0"
id="stop12" />
</radialGradient>
<circle
cx="75.626282"
cy="76.640755"
r="5.5278635"
fill="url(#sQy7OvPXH0t2mKfqk7XuXd)"
id="circle12"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXd);stroke-width:2.21115" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXe"
cx="30.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.2111455,0,0,-2.2111455,-5.0805451,101.8257)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop13" />
<stop
offset="1"
stop-opacity="0"
id="stop14" />
</radialGradient>
<circle
cx="62.359394"
cy="76.640755"
r="5.5278635"
fill="url(#sQy7OvPXH0t2mKfqk7XuXe)"
id="circle14"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXe);stroke-width:2.21115" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXf"
cx="24.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.2111455,0,0,-2.2111455,-5.0805451,101.8257)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop15" />
<stop
offset="1"
stop-opacity="0"
id="stop16" />
</radialGradient>
<circle
cx="49.092525"
cy="76.640755"
r="5.5278635"
fill="url(#sQy7OvPXH0t2mKfqk7XuXf)"
id="circle16"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXf);stroke-width:2.21115" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXg"
cx="11.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.2111455,0,0,-2.2111455,-5.0805451,101.8257)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop17" />
<stop
offset="1"
stop-opacity="0"
id="stop18" />
</radialGradient>
<circle
cx="20.347635"
cy="76.640755"
r="5.5278635"
fill="url(#sQy7OvPXH0t2mKfqk7XuXg)"
id="circle18"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXg);stroke-width:2.21115" />
<circle
cx="75.626282"
cy="76.640755"
r="3.3167181"
fill="#50e6ff"
id="circle19"
style="stroke-width:2.21115" />
<circle
cx="62.359394"
cy="76.640755"
r="3.3167181"
fill="#50e6ff"
id="circle20"
style="stroke-width:2.21115" />
<circle
cx="49.092525"
cy="76.640755"
r="3.3167181"
fill="#50e6ff"
id="circle21"
style="stroke-width:2.21115" />
<circle
cx="20.347635"
cy="76.640755"
r="3.3167181"
fill="#50e6ff"
id="circle22"
style="stroke-width:2.21115" />
<path
fill="#0078d4"
d="M 76.06186,21.738016 71.411821,26.423432 47.942723,17.974646 24.495735,26.403533 19.894342,21.766761 C 19.049684,20.913259 19.012095,19.504758 19.863382,18.65789 27.279564,11.290354 37.453044,6.9542994 47.942718,6.9476659 c 10.421129,-0.011054 20.76929,4.3272091 28.154515,11.6881131 0.849081,0.844657 0.809281,2.250946 -0.03538,3.102237 z"
id="path22"
style="stroke-width:2.21115" />
<path
fill="#199be2"
d="m 71.414032,26.425643 -0.455497,0.442231 -5.757821,5.757823 -17.253569,-5.819736 -17.233669,5.797623 -5.757823,-5.73571 -0.455494,-0.464341 c 5.779935,-6.507401 14.146909,-10.6334 23.446986,-10.6334 9.319978,0 17.684742,4.123788 23.466887,10.65551 z"
id="path23"
style="stroke-width:2.21115" />
<path
fill="#35c1f1"
d="m 65.198502,32.623485 -0.999438,0.992804 -5.216091,5.207248 -11.04025,-3.192894 -11.018139,3.192894 -5.216092,-5.207248 -0.999437,-1.014916 c 4.194543,-4.897687 10.36585,-8.008769 17.233668,-8.008769 6.889929,0.0023 13.061235,3.111082 17.255779,8.030881 z"
id="path24"
style="stroke-width:2.21115" />
<path
fill="#50e6ff"
d="m 58.982973,38.823537 -1.629615,1.631826 -7.862833,7.907056 c -0.844658,0.85129 -2.208935,0.85129 -3.055803,0.0045 l -7.902635,-7.911521 -1.607503,-1.631824 c 2.587041,-3.287976 6.56268,-5.40404 11.018139,-5.40404 4.477569,-0.0023 8.453208,2.116064 11.04025,5.40404 z"
id="path25"
style="stroke-width:2.21115" />
</svg>

After

Width:  |  Height:  |  Size: 8.8 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0,0,256,256" width="48px" height="48px" fill-rule="nonzero"><g fill="#0088cc" fill-rule="nonzero" stroke="none" stroke-width="1" stroke-linecap="butt" stroke-linejoin="miter" stroke-miterlimit="10" stroke-dasharray="" stroke-dashoffset="0" font-family="none" font-weight="none" font-size="none" text-anchor="none" style="mix-blend-mode: normal"><g transform="scale(5.33333,5.33333)"><path d="M28.465,38.611c0.419,-1.105 0.664,-2.365 0.664,-3.714c0,-4.133 -2.211,-7.494 -4.929,-7.494c-2.741,0 -4.951,3.361 -4.951,7.494c0,1.326 0.221,2.586 0.641,3.669c-9.041,0.951 -15.407,4.731 -17.993,6.432c4.355,-6.278 8.909,-13.638 13.262,-22.105c1.083,-2.101 2.101,-4.178 3.05,-6.211c0.375,0.243 0.751,0.509 1.171,0.775c1.945,1.215 3.759,1.879 5.084,2.233c-0.973,-0.73 -2.033,-1.613 -3.116,-2.697c-0.817,-0.817 -1.547,-1.637 -2.167,-2.433c1.835,-4.022 3.427,-7.891 4.819,-11.56c2.32,6.144 5.217,12.842 8.841,19.893c2.343,4.531 4.731,8.754 7.117,12.644c-0.685,-0.375 -1.437,-0.73 -2.233,-1.039c-1.371,-0.53 -2.652,-0.862 -3.759,-1.06c1.503,0.751 3.25,1.747 5.084,3.073c1.194,0.885 2.254,1.769 3.161,2.631c0.021,0.021 0.021,0.021 0.045,0.045c1.26,2.056 2.565,3.957 3.846,5.813c-2.541,-1.681 -8.796,-5.395 -17.637,-6.389z"></path></g></g></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0,0,256,256"
width="64px"
height="64px"
fill-rule="nonzero"
version="1.1"
id="svg13"
sodipodi:docname="icons8-asus (1).svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview13"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="17.1875"
inkscape:cx="31.970909"
inkscape:cy="32"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="g13" />
<defs
id="defs10">
<radialGradient
cx="34.625"
cy="31.875"
r="23.206"
gradientUnits="userSpaceOnUse"
id="color-1">
<stop
offset="0"
stop-color="#f4e9c3"
id="stop1" />
<stop
offset="0.219"
stop-color="#f8eecd"
id="stop2" />
<stop
offset="0.644"
stop-color="#fdf4dc"
id="stop3" />
<stop
offset="1"
stop-color="#fff6e1"
id="stop4" />
</radialGradient>
<linearGradient
x1="0.365"
y1="32.5"
x2="64"
y2="32.5"
gradientUnits="userSpaceOnUse"
id="color-2">
<stop
offset="0.053"
stop-color="#000000"
id="stop5" />
<stop
offset="1"
stop-color="#000000"
id="stop6" />
</linearGradient>
<radialGradient
cx="34.625"
cy="31.875"
r="23.206"
gradientUnits="userSpaceOnUse"
id="color-3">
<stop
offset="0"
stop-color="#f4e9c3"
id="stop7" />
<stop
offset="0.219"
stop-color="#f8eecd"
id="stop8" />
<stop
offset="0.644"
stop-color="#fdf4dc"
id="stop9" />
<stop
offset="1"
stop-color="#fff6e1"
id="stop10" />
</radialGradient>
</defs>
<g
fill="none"
fill-rule="nonzero"
stroke="none"
stroke-width="1"
stroke-linecap="butt"
stroke-linejoin="miter"
stroke-miterlimit="10"
stroke-dasharray=""
stroke-dashoffset="0"
font-family="none"
font-weight="none"
font-size="none"
text-anchor="none"
style="mix-blend-mode: normal"
id="g13">
<g
transform="scale(4,4)"
id="g12">
<path
d="M6.156,29.243l-5.723,9.919c-0.192,0.333 0.048,0.75 0.433,0.75h2.764c0.356,0 0.686,-0.19 0.865,-0.498l5.629,-9.701zM6.299,29.005c0,0 0.815,-1.486 1.625,-2.92c0.354,-0.628 1.019,-1.014 1.74,-1.014c1.408,0.001 3.757,0.003 5.086,0.004c0.552,0 0.995,0.448 0.995,1.001v2.61c0,0 0.323,-1.386 0.891,-2.043c0.534,-0.619 1.246,-1.478 2.872,-1.592h10.963c0.552,0 1,0.448 1,1v1.955c0,0.552 -0.448,1 -1,1zM64,28.008v-1.958c0,-0.552 -0.448,-1 -1,-1h-11.8c-1.622,0.114 -2.337,0.972 -2.872,1.592c-0.569,0.657 -0.89,2.043 -0.89,2.043v0.318l15.562,0.005c0.552,0 1,-0.448 1,-1zM33.095,25.07h1.578c0.552,0 1,0.448 1,1v2.935h-3.578v-2.935c0,-0.552 0.448,-1 1,-1zM44.839,25.07h1.574c0.552,0 1,0.448 1,1v2.935h-3.574v-2.935c0,-0.552 0.447,-1 1,-1zM47.413,30.425l-3.514,-0.233v4.566c0,0 -0.01,1.314 -1.158,1.314c-1.138,0 -6.039,0 -6.039,0c0,0 -1.023,-0.093 -1.023,-1.303c0,-1.207 0,-5.196 0,-5.196l-3.549,-0.285v7.001c0.574,3.359 3.311,3.617 3.311,3.617c0,0 0.278,0.022 0.324,0.026h8.156c0,0 3.491,-0.311 3.491,-4.023c0.001,-3.713 0.001,-5.484 0.001,-5.484zM13.111,39.914h15.73c2.914,-0.647 3.218,-3.577 3.218,-3.577c0.136,-0.871 0.057,-1.574 0.057,-1.574c-0.088,-0.588 -1.094,-3.178 -3.281,-3.405c-1.304,-0.134 -12.91,-1.155 -12.91,-1.155c0.225,1.288 0.748,1.938 1.094,2.311c0.805,0.857 2.087,1.099 2.087,1.099c0.309,0.033 8.945,0.824 8.945,0.824c0.274,0.017 0.797,0.093 0.79,0.849c0,0.091 -0.075,0.757 -0.738,0.757h-12.014c-0.276,0 -0.5,-0.224 -0.5,-0.5v-5.373l-3.478,-0.281v9.027c0,0.55 0.448,0.998 1,0.998zM47.444,37.017c0.001,-0.552 0.448,-0.998 1,-0.998h11.429c0.286,0 0.595,-0.187 0.595,-0.187c0.13,-0.129 0.235,-0.364 0.235,-0.591c0,-0.753 -0.561,-0.786 -0.843,-0.803c0,0 -8.732,-0.808 -9.036,-0.834c0,0 -1.211,-0.207 -2.017,-1.068c-0.351,-0.369 -0.815,-0.771 -1.161,-2.099c0,0 11.671,0.763 12.968,0.897c2.189,0.232 3.215,2.632 3.308,3.43c0,0 0.093,0.722 -0.02,1.607c0,0 -0.454,3.374 -3.664,3.579h-11.797c-0.553,0 -1.001,-0.449 -1,-1.002z"
fill="url(#color-2)"
id="path11" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#E91E63" d="M26.763,24.548c-0.614,0.01,0.117,0.317,0.918,0.44c0.22-0.172,0.419-0.348,0.6-0.515C27.781,24.592,27.274,24.594,26.763,24.548 M30.054,23.727c0.364-0.5,0.631-1.055,0.723-1.624c-0.082,0.405-0.303,0.755-0.51,1.128c-1.146,0.721-0.108-0.43,0-0.865C29.035,23.913,30.098,23.293,30.054,23.727 M31.269,20.568c0.073-1.105-0.219-0.756-0.317-0.336C31.068,20.294,31.156,21.013,31.269,20.568 M24.439,5.478c0.327,0.058,0.706,0.104,0.653,0.183C25.449,5.582,25.531,5.51,24.439,5.478 M25.093,5.66l-0.232,0.047l0.215-0.017L25.093,5.66 M35.294,20.986c0.038,0.991-0.29,1.472-0.585,2.322l-0.529,0.266c-0.435,0.841,0.041,0.535-0.268,1.202c-0.679,0.603-2.055,1.883-2.496,2.004c-0.321-0.009,0.218-0.382,0.289-0.526c-0.906,0.62-0.728,0.934-2.113,1.313l-0.041-0.09c-3.419,1.607-8.166-1.576-8.103-5.928c-0.037,0.275-0.104,0.209-0.18,0.32c-0.175-2.237,1.033-4.486,3.073-5.403c1.995-0.987,4.335-0.58,5.763,0.75c-0.785-1.028-2.348-2.119-4.199-2.017c-1.814,0.029-3.51,1.182-4.077,2.434c-0.929,0.585-1.038,2.256-1.441,2.563c-0.545,4.003,1.024,5.733,3.68,7.768c0.417,0.282,0.118,0.326,0.175,0.541c-0.883-0.412-1.69-1.037-2.354-1.801c0.353,0.517,0.733,1.017,1.223,1.41c-0.831-0.279-1.942-2.013-2.267-2.084c1.435,2.567,5.818,4.502,8.113,3.541c-1.062,0.04-2.412,0.021-3.604-0.42c-0.501-0.257-1.183-0.791-1.062-0.893c3.133,1.171,6.369,0.887,9.078-1.286c0.689-0.537,1.443-1.449,1.662-1.464c-0.327,0.493,0.057,0.239-0.197,0.674c0.688-1.109-0.299-0.449,0.711-1.913l0.373,0.512c-0.139-0.917,1.143-2.033,1.012-3.489c0.291-0.445,0.326,0.478,0.015,1.502c0.434-1.136,0.113-1.317,0.224-2.254c0.121,0.315,0.279,0.648,0.359,0.981c-0.281-1.097,0.289-1.848,0.433-2.485c-0.142-0.063-0.435,0.485-0.503-0.812c0.01-0.562,0.156-0.295,0.214-0.435c-0.111-0.064-0.4-0.496-0.577-1.323c0.127-0.193,0.342,0.506,0.516,0.533c-0.112-0.655-0.304-1.159-0.313-1.665c-0.51-1.061-0.181,0.143-0.592-0.458c-0.543-1.687,0.449-0.39,0.514-1.156c0.82,1.188,1.289,3.029,1.504,3.792c-0.164-0.93-0.428-1.832-0.752-2.704c0.249,0.108-0.401-1.911,0.324-0.575c-0.772-2.848-3.314-5.511-5.65-6.76c0.286,0.262,0.646,0.591,0.517,0.642c-1.163-0.69-0.959-0.745-1.124-1.041c-0.946-0.383-1.01,0.034-1.636,0c-1.786-0.943-2.129-0.845-3.772-1.437l0.078,0.349c-1.184-0.394-1.379,0.146-2.657,0.002c-0.078-0.062,0.41-0.219,0.811-0.278c-1.143,0.15-1.09-0.228-2.208,0.042c0.277-0.197,0.566-0.322,0.861-0.486c-0.932,0.059-2.226,0.542-1.825,0.103c-1.521,0.676-4.22,1.63-5.735,3.051l-0.047-0.322c-0.694,0.835-3.028,2.492-3.215,3.57l-0.185,0.043c-0.361,0.613-0.595,1.305-0.881,1.935c-0.474,0.806-0.692,0.311-0.626,0.436c-0.929,1.883-1.39,3.467-1.79,4.768c0.284,0.424,0.007,2.558,0.113,4.264c-0.467,8.429,5.916,16.609,12.891,18.5c1.023,0.365,2.542,0.354,3.836,0.39c-1.525-0.438-1.722-0.232-3.209-0.749c-1.074-0.506-1.308-1.082-2.066-1.74l0.3,0.53c-1.49-0.526-0.867-0.652-2.078-1.034l0.321-0.424c-0.482-0.032-1.279-0.811-1.497-1.241l-0.528,0.021c-0.634-0.783-0.972-1.348-0.948-1.785l-0.17,0.305c-0.194-0.332-2.335-2.937-1.224-2.33c-0.207-0.188-0.481-0.307-0.779-0.85l0.227-0.258c-0.535-0.686-0.983-1.568-0.949-1.86c0.284,0.384,0.482,0.454,0.679,0.522c-1.351-3.349-1.426-0.187-2.448-3.409l0.216-0.019c-0.166-0.246-0.265-0.521-0.399-0.785l0.094-0.938c-0.972-1.125-0.272-4.781-0.132-6.783c0.097-0.816,0.811-1.684,1.354-3.045l-0.332-0.055c0.632-1.104,3.612-4.433,4.99-4.26c0.669-0.841-0.132-0.002-0.263-0.215c1.469-1.52,1.93-1.073,2.92-1.349c1.068-0.633-0.917,0.251-0.41-0.239c1.848-0.473,1.31-1.073,3.718-1.311c0.254,0.145-0.59,0.223-0.8,0.41c1.538-0.753,4.87-0.584,7.034,0.417c2.511,1.173,5.33,4.642,5.443,7.904l0.126,0.035c-0.063,1.298,0.198,2.798-0.257,4.175L35.294,20.986 M20.072,25.389l-0.086,0.431c0.403,0.547,0.724,1.142,1.237,1.567C20.853,26.664,20.577,26.364,20.072,25.389 M21.023,25.353c-0.213-0.237-0.34-0.518-0.48-0.802c0.135,0.495,0.411,0.922,0.669,1.357L21.023,25.353 M37.877,21.688l-0.088,0.226c-0.166,1.174-0.523,2.332-1.068,3.412C37.324,24.189,37.714,22.947,37.877,21.688 M24.56,5.185C24.974,5.031,25.579,5.101,26.019,5c-0.573,0.048-1.144,0.079-1.706,0.151L24.56,5.185 M10.007,12.923c0.095,0.882-0.667,1.229,0.167,0.644C10.623,12.562,10,13.286,10.007,12.923 M9.028,17.016c0.191-0.592,0.226-0.943,0.3-1.285C8.797,16.41,9.084,16.553,9.028,17.016"/></svg>

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#0288d1" d="M24,4C12.956,4,4,12.956,4,24s8.956,20,20,20s20-8.956,20-20S35.044,4,24,4z M24,41c-9.391,0-17-7.609-17-17S14.609,7,24,7s17,7.609,17,17S33.391,41,24,41z"/><path fill="#0288d1" d="M35.641,25.563l2.84,0.004l-0.004,2.395l-5.691-0.012l0.012-8.172l2.855,0.004L35.641,25.563z M26.34,25.102l-4.699,3.684l-4.285-3.379c-0.621,1.484-2.109,2.52-3.836,2.516l-3.664-0.004l0.008-8.172l3.668,0.004c1.926,0.004,3.309,1.223,3.828,2.531l4.297-3.367l1.586,1.25l-3.934,3.086l0.754,0.594l3.934-3.086l1.59,1.254l-3.934,3.082l0.75,0.594l3.941-3.082l0.004-2.836l2.852,0.004l-0.008,5.781l2.84,0.004l-0.004,2.391l-5.691-0.008L26.34,25.102z M15.012,23.84c0-1.113-0.73-1.742-1.77-1.742h-0.637l-0.004,3.477h0.621C14.184,25.574,15.012,25.051,15.012,23.84"/></svg>

After

Width:  |  Height:  |  Size: 843 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><linearGradient id="TGbgz7YIIasADw2jo2LPPa" x1="24" x2="24" y1="44.346" y2="13.335" gradientTransform="matrix(1 0 0 -1 0 48)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#f44f5a"/><stop offset=".443" stop-color="#ee3d4a"/><stop offset=".651" stop-color="#ed3b48"/><stop offset=".726" stop-color="#eb3442"/><stop offset=".779" stop-color="#e82938"/><stop offset=".804" stop-color="#e52030"/></linearGradient><path fill="url(#TGbgz7YIIasADw2jo2LPPa)" d="M21.62,6.991c-0.013-0.046-0.02-0.126-0.02-0.186C21.6,6.36,21.958,6,22.4,6 c0.188,0,0.319,0.071,0.371,0.091c0.978,0.384,7.697,3.572,6.143,12.787C31.17,17.51,30.211,15,31.116,15 c0.277,0,0.39,0.104,0.56,0.348C34.144,18.892,36,22.973,36,26.927C36,33.595,30.628,39,24,39c-7.288,0-12-6.176-12-12.073 C12,17.118,23.49,15.307,21.62,6.991z"/><linearGradient id="TGbgz7YIIasADw2jo2LPPb" x1="23.5" x2="23.5" y1="30.346" y2="17.849" gradientTransform="matrix(1 0 0 -1 0 48)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#fed100"/><stop offset=".353" stop-color="#fdcf00"/><stop offset=".523" stop-color="#fcc700"/><stop offset=".655" stop-color="#f9ba00"/><stop offset=".766" stop-color="#f4a800"/><stop offset=".865" stop-color="#ee9001"/><stop offset=".954" stop-color="#e77201"/><stop offset="1" stop-color="#e36001"/></linearGradient><path fill="url(#TGbgz7YIIasADw2jo2LPPb)" d="M23.225,18.152c0,0-0.182-0.152-0.446-0.152c-0.398,0-0.722,0.317-0.722,0.708 c0.722,4.25-4.329,5.667-4.329,10.625c0,3.13,2.584,5.667,5.772,5.667s5.772-2.537,5.772-5.667 C29.272,25.295,25.65,19.906,23.225,18.152z"/><path fill="#64717c" d="M30,42h-4l-5.5-1L15,42h-4l-5-5v-4l11.667-5H22l5,1l6-1h4l5,5v4L30,42z"/><linearGradient id="TGbgz7YIIasADw2jo2LPPc" x1="19.087" x2="29.046" y1="22.239" y2="3.511" gradientTransform="matrix(1 0 0 -1 0 48)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#bec5c8"/><stop offset=".968" stop-color="#b9c1c4"/></linearGradient><path fill="url(#TGbgz7YIIasADw2jo2LPPc)" d="M27,41c0,0.552-0.448,1-1,1H15c-0.552,0-1-0.448-1-1v-4c0-0.552,0.448-1,1-1h11 c0.552,0,1,0.448,1,1V41z M42,41c0,0.552-0.448,1-1,1H30c-0.552,0-1-0.448-1-1v-4c0-0.552,0.448-1,1-1h11c0.552,0,1,0.448,1,1V41z M33,33c0,0.552-0.448,1-1,1H21c-0.552,0-1-0.448-1-1v-4c0-0.552,0.448-1,1-1h11c0.552,0,1,0.448,1,1V33z M6,33c0,0.552,0.448,1,1,1 h10c0.552,0,1-0.448,1-1v-4c0-0.552-0.448-1-1-1H7c-0.552,0-1,0.448-1,1V33z M41,28h-5c-0.552,0-1,0.448-1,1v4c0,0.552,0.448,1,1,1 h6v-5C42,28.448,41.552,28,41,28z M11,36H6v5c0,0.552,0.448,1,1,1h4c0.552,0,1-0.448,1-1v-4C12,36.448,11.552,36,11,36z"/></svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#fff" d="M24 4A20 20 0 1 0 24 44A20 20 0 1 0 24 4Z"/><path fill="#1976d2" d="M24,43.997c-0.199,0-0.652,0.006-0.85,0l4-10.999h5.625c0.987,0,2.071-0.759,2.409-1.686l4.748-12.687c0.725-1.995-0.417-3.626-2.539-3.626h-7.804l-6.518,18.257h-0.002l-3.712,10.198C10.55,41.361,4,33.445,4,23.999c0-9.174,6.178-16.905,14.6-19.261l-3.83,10.526h-0.001L8.15,32.998h4.239l5.576-14.999h3.185l-5.576,14.999l3.919,0.001l5.438-14.374c0.726-1.995-0.416-3.626-2.536-3.626H19.15l3.951-10.978C23.399,4.008,23.699,4,24,4c11.046,0,20,8.953,20,19.999S35.046,43.997,24,43.997z M36.15,17.999h-3.185l-4.509,11.999h3.185L36.15,17.999z"/></svg>

After

Width:  |  Height:  |  Size: 712 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#3f51b5" d="M48 16L48 14 40.469 14 39.809 16zM33 31L33 29 29 29 27 29 27 31zM39.766 28L40.51 26 34.51 26 35.266 28zM29 26H33V28H29zM29 23H33V25H29zM42 29L42 31 48 31 48 29 46 29zM36.181 19L35.521 17 27 17 27 19 29 19zM37.17 22L36.51 20 29 20 29 22zM33.378 23L34.133 25 40.883 25 41.628 23zM42 23H46V25H42zM27 32H33V34H27zM35.191 16L34.531 14 27 14 27 16zM36.776 32L37.531 34 38.276 32zM42 32H48V34H42zM39.479 17L38.819 19 46 19 48 19 48 17zM39.393 29L35.643 29 36.398 31 38.648 31zM42 26H46V28H42zM38.49 20L37.83 22 46 22 46 20zM0 14H8V16H0zM0 17H8V19H0zM2 20H6V22H2zM2 23H6V25H2zM2 26H6V28H2zM0 29H8V31H0zM0 32H8V34H0zM10 17H18V19H10zM24.977 16c-.913-1.208-2.347-2-3.977-2H10v2h7.023H24.977z"/><path fill="#3f51b5" d="M25.578 17h-9.131C16.171 17.613 16 18.283 16 19h10C26 18.288 25.846 17.613 25.578 17zM23.975 23H12v2h11.973c-.833-.62-1.854-1-2.973-1C22.119 24 23.142 23.621 23.975 23zM17.023 32H10v2h11c1.63 0 3.065-.792 3.977-2H17.023zM18 29h-2-6v2h6.447H18h7.578C25.846 30.387 26 29.712 26 29H18zM21 20c0 0 0 .083 0 1s-1 1-1 1h4.979c.441-.584.77-1.257.921-2H21zM12 20H17V22H12z"/><g><path fill="#3f51b5" d="M21 28h4.885c-.156-.738-.467-1.418-.907-2H20c0 0 1 .167 1 1S21 28 21 28zM12 26H17V28H12z"/></g></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><rect width="48" height="16" y="16" fill="#ff1744"/><path fill="#fff" d="M11.935,26.062c0.37,0.341,0.782,0.45,1.227,0.478c0.645,0.039,1.217-0.156,1.724-0.546 c0.124-0.096,0.163-0.126,0.163-0.126s0.777,0.609,1.097,0.855c-0.261,0.309-0.567,0.521-0.901,0.692 c-1.103,0.565-2.249,0.687-3.424,0.264c-1.346-0.485-2.131-1.693-2.059-3.117c0.073-1.441,1.005-2.608,2.392-2.944 c1.064-0.257,2.084-0.143,2.98,0.539c0.651,0.496,1.001,1.28,1.147,2.068c0,0-2.595,1.11-3.795,1.606 C12.313,25.903,12.141,25.975,11.935,26.062z M11.472,24.928c0.969-0.401,1.935-0.801,2.901-1.201 c-0.334-0.722-1.096-1.017-1.866-0.748C11.758,23.24,11.28,24.124,11.472,24.928z"/><path fill="#fff" d="M27.076,27.934c-1.632-0.017-2.956-1.068-3.261-2.6c-0.37-1.852,0.969-3.633,2.86-3.808 c1.281-0.118,2.373,0.254,3.155,1.3c1.451,1.941,0.22,4.757-2.193,5.055C27.45,27.905,27.263,27.917,27.076,27.934z M27.11,26.434 c0.929,0.002,1.622-0.723,1.628-1.704c0.006-0.97-0.724-1.742-1.649-1.745c-0.936-0.003-1.631,0.734-1.628,1.726 C25.465,25.675,26.189,26.432,27.11,26.434z"/><path fill="#fff" d="M40.624,27.934c-1.632-0.017-2.956-1.068-3.261-2.6c-0.37-1.852,0.969-3.633,2.86-3.808 c1.281-0.118,2.373,0.254,3.155,1.3c1.451,1.941,0.22,4.757-2.193,5.055C40.998,27.905,40.811,27.917,40.624,27.934z M40.658,26.434c0.929,0.002,1.623-0.723,1.628-1.704c0.006-0.97-0.724-1.742-1.649-1.745c-0.936-0.003-1.631,0.734-1.628,1.726 C39.013,25.675,39.737,26.432,40.658,26.434z"/><path fill="#fff" d="M21.377,27.987c0-0.095,0.001-2.587,0-3.663c-0.001-0.759-0.605-1.327-1.414-1.331 c-0.794-0.005-1.383,0.56-1.384,1.332c-0.001,1.076,0,3.679,0,3.679l-1.741,0.002l0.007-6.378c0,0,1.168-0.018,1.722-0.018 c0,0.264-0.006,0.832-0.006,0.832s0.138-0.128,0.181-0.171c1.157-1.174,3.226-0.973,4.031,0.391 c0.223,0.378,0.338,0.789,0.34,1.223c0.008,1.264,0.003,4.104,0.003,4.104S21.964,27.987,21.377,27.987z"/><path fill="#fff" d="M30.164,21.608c0.642,0,1.964,0.015,1.964,0.015s1.478,4.024,1.526,4.149 c0.115-0.311,1.208-3.29,1.521-4.174c0.646,0.018,1.288,0.01,1.97,0.01c-0.029,0.084-2.562,6.398-2.562,6.398l-1.876-0.003 C31.905,26.042,30.191,21.692,30.164,21.608z"/><path fill="#fff" d="M5.767,26.393c0.104,0,3.868,0.011,3.868,0.011l-0.002,1.581L4,27.989v-8.073h1.77 C5.77,19.916,5.767,26.284,5.767,26.393z"/></svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,395 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 96 96"
width="96"
height="96"
version="1.1"
id="svg16"
sodipodi:docname="icons8-loadbalancer-6.svg"
xml:space="preserve"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs16"><linearGradient
id="rgtybR5fDU8R4IgIFkOP5b"
x1="19.388"
x2="28.413"
y1="-9.9449997"
y2="52.098999"
gradientTransform="matrix(0,-0.49311513,-0.49311513,0,46.019494,43.995025)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#1ea2e4"
id="stop7-6" /><stop
offset="1"
stop-color="#32bdef"
id="stop8-2" /></linearGradient><linearGradient
id="rgtybR5fDU8R4IgIFkOP5a"
x1="477.17899"
x2="472.772"
y1="522.18701"
y2="522.18701"
gradientTransform="matrix(-0.34868505,0.34868505,0.34868505,0.34868505,23.783091,-306.66044)"
gradientUnits="userSpaceOnUse"><stop
offset=".365"
stop-color="#199ae0"
id="stop1" /><stop
offset=".699"
stop-color="#1898de"
id="stop2" /><stop
offset=".819"
stop-color="#1691d8"
id="stop3-9" /><stop
offset=".905"
stop-color="#1186cc"
id="stop4-1" /><stop
offset=".974"
stop-color="#0a75bc"
id="stop5-2" /><stop
offset="1"
stop-color="#076cb3"
id="stop6-7" /></linearGradient><linearGradient
id="ArtDYZ2lT75vkabREsTDEb"
x1="10.443"
x2="34.894001"
y1="35.985001"
y2="11.533"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.73295303,0,0,0.73295303,60.409094,29.991812)"><stop
offset="0"
stop-color="#32bdef"
id="stop7-3" /><stop
offset="1"
stop-color="#1ea2e4"
id="stop8-7" /></linearGradient><linearGradient
id="ArtDYZ2lT75vkabREsTDEa"
x1="37"
x2="37"
y1="41.555"
y2="28.030001"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.73295303,0,0,0.73295303,60.409094,29.991812)"><stop
offset=".365"
stop-color="#199ae0"
id="stop1-5" /><stop
offset=".699"
stop-color="#1898de"
id="stop2-9" /><stop
offset=".819"
stop-color="#1691d8"
id="stop3-2" /><stop
offset=".905"
stop-color="#1186cc"
id="stop4-2" /><stop
offset=".974"
stop-color="#0a75bc"
id="stop5-8" /><stop
offset="1"
stop-color="#076cb3"
id="stop6-9" /></linearGradient><linearGradient
id="901RIHcLyz6dZPGSvSf1Xc"
x1="33.436001"
x2="38.157001"
y1="21.563999"
y2="16.843"
gradientTransform="matrix(-1,0,0,1,121.71219,17.368129)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#ae4cd5"
id="stop5-6" /><stop
offset="1"
stop-color="#ac4ad5"
id="stop6-1" /></linearGradient><linearGradient
id="901RIHcLyz6dZPGSvSf1Xb"
x1="694.97601"
x2="717.71802"
y1="35.709"
y2="12.967"
gradientTransform="translate(-606.28782,17.368129)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#ae4cd5"
id="stop3-29" /><stop
offset="1"
stop-color="#ac4ad5"
id="stop4-3" /></linearGradient><linearGradient
id="901RIHcLyz6dZPGSvSf1Xa"
x1="36.25"
x2="36.25"
y1="38.042999"
y2="23.006001"
gradientTransform="matrix(-1,0,0,1,121.71219,17.368129)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#912fbd"
id="stop1-1" /><stop
offset="1"
stop-color="#9332bf"
id="stop2-94" /></linearGradient><linearGradient
inkscape:collect="always"
xlink:href="#ArtDYZ2lT75vkabREsTDEa"
id="linearGradient24"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0,0.73295303,-0.73295303,0,65.635592,60.153515)"
x1="37"
y1="41.555"
x2="37"
y2="28.030001" /><linearGradient
inkscape:collect="always"
xlink:href="#ArtDYZ2lT75vkabREsTDEb"
id="linearGradient25"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0,0.73295303,-0.73295303,0,65.635592,60.153515)"
x1="10.443"
y1="35.985001"
x2="34.894001"
y2="11.533" /><linearGradient
inkscape:collect="always"
xlink:href="#ArtDYZ2lT75vkabREsTDEb"
id="linearGradient26"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.51827606,0.51827606,-0.51827606,0.51827606,65.099589,38.283295)"
x1="10.443"
y1="35.985001"
x2="34.894001"
y2="11.533" /><linearGradient
inkscape:collect="always"
xlink:href="#ArtDYZ2lT75vkabREsTDEa"
id="linearGradient27"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.51827606,0.51827606,-0.51827606,0.51827606,65.099589,38.283295)"
x1="37"
y1="41.555"
x2="37"
y2="28.030001" /><linearGradient
inkscape:collect="always"
xlink:href="#ArtDYZ2lT75vkabREsTDEa"
id="linearGradient28"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-0.51827606,0.51827606,0.51827606,0.51827606,31.063993,38.239101)"
x1="37"
y1="41.555"
x2="37"
y2="28.030001" /><linearGradient
inkscape:collect="always"
xlink:href="#ArtDYZ2lT75vkabREsTDEb"
id="linearGradient29"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-0.51827606,0.51827606,0.51827606,0.51827606,31.063993,38.239101)"
x1="10.443"
y1="35.985001"
x2="34.894001"
y2="11.533" /><linearGradient
id="901RIHcLyz6dZPGSvSf1Xc-8"
x1="33.436001"
x2="38.157001"
y1="21.563999"
y2="16.843"
gradientTransform="matrix(0,0.78639422,0.78639422,0,28.708615,-1.1133533)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#ae4cd5"
id="stop5-84" /><stop
offset="1"
stop-color="#ac4ad5"
id="stop6-3" /></linearGradient><linearGradient
id="901RIHcLyz6dZPGSvSf1Xb-1"
x1="694.97601"
x2="717.71802"
y1="35.709"
y2="12.967"
gradientTransform="matrix(0,-0.78639422,0.78639422,0,28.708615,571.38165)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#ae4cd5"
id="stop3-4" /><stop
offset="1"
stop-color="#ac4ad5"
id="stop4-9" /></linearGradient><linearGradient
id="901RIHcLyz6dZPGSvSf1Xa-2"
x1="36.25"
x2="36.25"
y1="38.042999"
y2="23.006001"
gradientTransform="matrix(0,0.78639422,0.78639422,0,28.708615,-1.1133533)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#912fbd"
id="stop1-0" /><stop
offset="1"
stop-color="#9332bf"
id="stop2-6" /></linearGradient></defs><sodipodi:namedview
id="namedview16"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"
inkscape:zoom="5.6568543"
inkscape:cx="45.343222"
inkscape:cy="30.405592"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg16"><sodipodi:guide
position="19.559789,143.73834"
orientation="1,0"
id="guide17"
inkscape:locked="false" /><sodipodi:guide
position="24.084469,98.224212"
orientation="0,-1"
id="guide18"
inkscape:locked="false" /><sodipodi:guide
position="19.845169,116.43962"
orientation="0,-1"
id="guide19"
inkscape:locked="false" /><sodipodi:guide
position="48.041504,83.46582"
orientation="1,0"
id="guide20"
inkscape:locked="false" /><sodipodi:guide
position="78.25,47.75"
orientation="0,-1"
id="guide21"
inkscape:locked="false" /><sodipodi:guide
position="50.394457,65.316468"
orientation="0,-1"
id="guide29"
inkscape:locked="false" /><sodipodi:guide
position="67.605347,21.060837"
orientation="0,-1"
id="guide30"
inkscape:locked="false" /></sodipodi:namedview><linearGradient
id="6fSOUPa~CP8tcsIx_Wvufa"
x1="22.011"
x2="26.212"
y1="785.79102"
y2="789.99298"
gradientTransform="translate(0,-781.78)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#33bef0"
id="stop3" /><stop
offset="1"
stop-color="#0a85d9"
id="stop4" /></linearGradient><linearGradient
id="6fSOUPa~CP8tcsIx_Wvufb"
x1="6.0110002"
x2="10.213"
y1="794.79102"
y2="798.992"
gradientTransform="translate(0,-781.78)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#33bef0"
id="stop5" /><stop
offset="1"
stop-color="#0a85d9"
id="stop6" /></linearGradient><linearGradient
id="6fSOUPa~CP8tcsIx_Wvufc"
x1="6.0110002"
x2="10.213"
y1="812.79102"
y2="816.992"
gradientTransform="translate(0,-781.78)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#33bef0"
id="stop7" /><stop
offset="1"
stop-color="#0a85d9"
id="stop8" /></linearGradient><linearGradient
id="6fSOUPa~CP8tcsIx_Wvufd"
x1="38.011002"
x2="42.212002"
y1="794.79102"
y2="798.992"
gradientTransform="translate(0,-781.78)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#33bef0"
id="stop9" /><stop
offset="1"
stop-color="#0a85d9"
id="stop10" /></linearGradient><linearGradient
id="6fSOUPa~CP8tcsIx_Wvufe"
x1="38.011002"
x2="42.212002"
y1="812.79102"
y2="816.992"
gradientTransform="translate(0,-781.78)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#33bef0"
id="stop11" /><stop
offset="1"
stop-color="#0a85d9"
id="stop12" /></linearGradient><linearGradient
id="6fSOUPa~CP8tcsIx_Wvuff"
x1="22.011"
x2="26.212"
y1="821.79102"
y2="825.992"
gradientTransform="translate(0,-781.78)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#33bef0"
id="stop13" /><stop
offset="1"
stop-color="#0a85d9"
id="stop14" /></linearGradient><linearGradient
id="6fSOUPa~CP8tcsIx_Wvufg"
x1="22.389999"
x2="25.51"
y1="27.841"
y2="20.184"
gradientTransform="matrix(2.2750649,0,0,-2.2750649,-6.4704976,71.078659)"
gradientUnits="userSpaceOnUse"><stop
offset="0"
stop-color="#2aa4f4"
id="stop15" /><stop
offset="1"
stop-color="#007ad9"
id="stop16" /></linearGradient><circle
cx="48.13105"
cy="16.727356"
fill="url(#6fSOUPa~CP8tcsIx_Wvufg)"
id="circle16"
style="fill:url(#6fSOUPa~CP8tcsIx_Wvufg);stroke-width:2.27506"
r="11.375324" /><path
fill="url(#ArtDYZ2lT75vkabREsTDEa)"
d="m 76.856164,73.706426 v -3.471413 c 10e-7,-0.668576 -0.541598,-1.210175 -1.210175,-1.210175 l -10.028123,-2.236361 -6.633415,6.633416 c -0.551964,0.551964 -0.161185,1.495226 0.61934,1.495226 h 16.04168 c 0.668577,0 1.210694,-0.542117 1.210693,-1.210693 z"
id="path6-7"
style="fill:url(#linearGradient27);stroke-width:0.732953" /><path
fill="url(#ArtDYZ2lT75vkabREsTDEb)"
d="m 76.856164,73.706426 v -16.04168 c 0,-0.780525 -0.943262,-1.171304 -1.495226,-0.61934 L 69.764074,62.642269 51.794199,45.172393 c -0.580717,-0.564559 -1.893097,0.66519 -1.791854,1.46875 l 0.702843,5.578407 c 0.101243,0.80356 -0.159842,1.087631 0.40625,1.666854 l 20.207465,20.676214 c 0.216702,0.221729 0.521385,0.354501 0.855673,0.353982 h 3.471413 c 0.668059,5.19e-4 1.210176,-0.541598 1.210175,-1.210174 z"
id="path8-3"
style="fill:url(#linearGradient26);stroke-width:0.732953"
sodipodi:nodetypes="csscsssssccc" /><path
fill="url(#ArtDYZ2lT75vkabREsTDEa)"
d="m 19.307418,73.662232 v -3.471413 c -10e-7,-0.668576 0.541598,-1.210175 1.210175,-1.210175 l 10.028123,-2.236361 6.633415,6.633416 c 0.551964,0.551964 0.161185,1.495226 -0.61934,1.495226 h -16.04168 c -0.668577,0 -1.210694,-0.542117 -1.210693,-1.210693 z"
id="path6-7-8"
style="fill:url(#linearGradient28);stroke-width:0.732953"
sodipodi:nodetypes="ssccssss" /><path
fill="url(#ArtDYZ2lT75vkabREsTDEb)"
d="m 19.307418,73.662232 v -16.04168 c 0,-0.780525 0.943262,-1.171304 1.495226,-0.61934 l 5.596864,5.596863 19.219875,-19.032376 c 0.575495,-0.569881 0.534597,1.292441 0.416854,2.09375 l -0.952843,6.484657 c -0.117743,0.801309 0.507099,1.40358 -0.0625,1.979354 L 24.844679,74.518424 c -0.218045,0.220409 -0.521385,0.354501 -0.855673,0.353982 h -3.471413 c -0.668059,5.19e-4 -1.210176,-0.541598 -1.210175,-1.210174 z"
id="path8-3-6"
style="fill:url(#linearGradient29);stroke-width:0.732953"
sodipodi:nodetypes="csscsssssccc" /><path
fill="url(#ArtDYZ2lT75vkabREsTDEa)"
d="m 48.900809,93.514605 2.45466,-2.45466 c 0.472755,-0.472754 0.472755,-1.23869 0,-1.711445 l -5.509608,-8.6723 h -9.381066 c -0.780595,0 -1.171259,0.94331 -0.619345,1.495224 l 11.343181,11.343181 c 0.472755,0.472755 1.239424,0.472755 1.712178,0 z"
id="path6-7-4"
style="fill:url(#linearGradient24);stroke-width:0.732953" /><path
fill="url(#ArtDYZ2lT75vkabREsTDEb)"
d="M 48.900809,93.514605 60.24399,82.171424 C 60.795904,81.61951 60.40524,80.6762 59.624645,80.6762 h -7.91516 l 0.02115,-50.103052 C 51.730977,29.763235 51.240112,29.301365 50.4302,29.30223 l -4.396838,0.0047 c -0.809912,8.64e-4 -1.649447,0.452869 -1.6495,1.262781 l -0.0039,59.634887 c -2e-5,0.310039 0.118005,0.619345 0.354749,0.855356 l 2.45466,2.45466 c 0.472022,0.472755 1.238691,0.472755 1.711445,0 z"
id="path8-3-5"
style="fill:url(#linearGradient25);stroke-width:0.732953"
sodipodi:nodetypes="ssscsssssccs" /></svg>

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#0883d9" d="M36.232,23.985c0-5.865,4.766-8.51,4.966-8.636c-2.596-3.993-6.79-4.467-8.362-4.468 c-3.643,0-6.863,2.022-8.585,2.022c-1.797,0-4.418-2.121-7.363-2.022c-3.843,0.075-7.363,2.346-9.334,5.691 c-1.397,2.396-1.947,5.217-1.896,8.087c0.002,0.113,0.017,0.228,0.02,0.341H36.32C36.279,24.671,36.243,24.337,36.232,23.985z"/><path fill="#0883d9" d="M30.565,7.063C32.261,5.191,33.21,2.621,33.06,0c-2.346,0-5.066,1.372-6.788,3.394 c-1.348,1.672-2.795,4.293-2.271,6.913C26.422,10.607,29.043,9.085,30.565,7.063z"/><path fill="#0370c8" d="M17.511,45c2.771,0,3.794-1.848,7.413-1.848c3.37,0,4.418,1.848,7.338,1.848 c3.07,0,5.092-2.795,6.913-5.567c2.295-3.218,3.07-6.288,3.169-6.414c-0.094,0-5.287-2.112-6.026-8.019H5.678 c0.157,5.311,2.228,10.79,4.671,14.309C12.27,42.055,14.441,45,17.511,45z"/></svg>

After

Width:  |  Height:  |  Size: 891 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.9 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

@@ -0,0 +1,309 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 96 96"
width="96"
height="96"
version="1.1"
id="svg25"
sodipodi:docname="icons8-router-4g.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs25">
<linearGradient
id="eww6fSHXLG3h4YeAqg9u_a"
x1="17.59"
x2="32.07"
y1="25.934999"
y2="48.230999"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.1618717,0,0,1.1618717,20.507254,2.1916049)">
<stop
offset="0"
stop-color="#85929e"
id="stop1-3" />
<stop
offset="1"
stop-color="#6d7882"
id="stop2-6" />
</linearGradient>
</defs>
<sodipodi:namedview
id="namedview25"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="8.1022652"
inkscape:cx="21.413765"
inkscape:cy="37.396949"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg25"
showguides="true">
<sodipodi:guide
position="9.8178562,30.140718"
orientation="1,0"
id="guide1"
inkscape:locked="false" />
<sodipodi:guide
position="86.470802,38.181968"
orientation="1,0"
id="guide2"
inkscape:locked="false" />
<sodipodi:guide
position="46.258636,9.4810232"
orientation="0,-1"
id="guide3"
inkscape:locked="false" />
<sodipodi:guide
position="53.641442,101.298"
orientation="0,-1"
id="guide4"
inkscape:locked="false" />
</sodipodi:namedview>
<linearGradient
id="sQy7OvPXH0t2mKfqk7XuXa"
x1="34.117001"
x2="33.909"
y1="30.451"
y2="11.826"
gradientTransform="matrix(2.0151121,0,0,-2.0151121,-0.28283295,98.172694)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#737b80"
id="stop1" />
<stop
offset=".714"
stop-color="#737b80"
id="stop2" />
<stop
offset=".756"
stop-color="#737b80"
id="stop3" />
<stop
offset=".863"
stop-color="#656c71"
id="stop4" />
<stop
offset="1"
stop-color="#575c61"
id="stop5" />
</linearGradient>
<path
fill="url(#sQy7OvPXH0t2mKfqk7XuXa)"
d="m 62.185641,80.258348 c -0.191435,0 -0.386902,-0.02821 -0.580352,-0.08463 -1.065993,-0.3204 -1.672543,-1.44282 -1.35214,-2.508817 L 72.343823,37.362659 c 0.320404,-1.065994 1.444834,-1.672543 2.508815,-1.35214 1.06599,0.320402 1.672539,1.442821 1.352141,2.508814 L 64.114104,78.821578 c -0.25995,0.874555 -1.05995,1.43677 -1.928463,1.43677 z"
id="path5"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXa);stroke-width:2.01511" />
<linearGradient
id="sQy7OvPXH0t2mKfqk7XuXb"
x1="14.121"
x2="13.913"
y1="30.719"
y2="12.094"
gradientTransform="matrix(2.0151121,0,0,-2.0151121,-0.28283295,98.172694)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#737b80"
id="stop6" />
<stop
offset=".773"
stop-color="#737b80"
id="stop7" />
<stop
offset="1"
stop-color="#575c61"
id="stop8" />
</linearGradient>
<path
fill="url(#sQy7OvPXH0t2mKfqk7XuXb)"
d="m 33.974071,80.258348 c -0.866497,0 -1.666498,-0.564231 -1.930475,-1.43677 L 19.952922,38.519333 c -0.320404,-1.065993 0.286146,-2.188412 1.352141,-2.508814 1.063979,-0.314357 2.188411,0.286146 2.508815,1.35214 l 12.090671,40.302239 c 0.320402,1.065996 -0.286146,2.188417 -1.352139,2.508815 -0.193452,0.05643 -0.386902,0.08463 -0.578339,0.08463 z"
id="path8"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXb);stroke-width:2.01511" />
<linearGradient
id="sQy7OvPXH0t2mKfqk7XuXc"
x1="24"
x2="24"
y1="14.614"
y2="-2.0710001"
gradientTransform="matrix(2.0151121,0,0,-2.0151121,-0.28283295,98.172694)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#899198"
id="stop9" />
<stop
offset="1"
stop-color="#787e85"
id="stop10" />
</linearGradient>
<path
fill="url(#sQy7OvPXH0t2mKfqk7XuXc)"
d="M 82.336765,86.303689 H 13.822951 c -2.226698,0 -4.0302237,-1.803531 -4.0302237,-4.030227 V 68.167678 c 0,-2.226699 1.8035257,-4.030225 4.0302237,-4.030225 h 68.513814 c 2.226696,0 4.030221,1.803526 4.030221,4.030225 v 14.105784 c 0,2.226696 -1.803525,4.030227 -4.030221,4.030227 z"
id="path10"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXc);stroke-width:2.01511" />
<rect
width="68.513809"
height="14.105785"
x="13.822952"
y="68.167671"
fill="#737b80"
id="rect10"
style="stroke-width:2.01511" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXd"
cx="36.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.0151121,0,0,-2.0151121,-0.28283295,98.172694)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop11" />
<stop
offset="1"
stop-opacity="0"
id="stop12" />
</radialGradient>
<circle
cx="73.268753"
cy="75.220573"
fill="url(#sQy7OvPXH0t2mKfqk7XuXd)"
id="circle12"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXd);stroke-width:2.01511"
r="5.0377803" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXe"
cx="30.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.0151121,0,0,-2.0151121,-0.28283295,98.172694)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop13" />
<stop
offset="1"
stop-opacity="0"
id="stop14" />
</radialGradient>
<circle
cx="61.178082"
cy="75.220573"
fill="url(#sQy7OvPXH0t2mKfqk7XuXe)"
id="circle14"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXe);stroke-width:2.01511"
r="5.0377803" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXf"
cx="24.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.0151121,0,0,-2.0151121,-0.28283295,98.172694)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop15" />
<stop
offset="1"
stop-opacity="0"
id="stop16" />
</radialGradient>
<circle
cx="49.087414"
cy="75.220573"
fill="url(#sQy7OvPXH0t2mKfqk7XuXf)"
id="circle16"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXf);stroke-width:2.01511"
r="5.0377803" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXg"
cx="11.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.0151121,0,0,-2.0151121,-0.28283295,98.172694)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop17" />
<stop
offset="1"
stop-opacity="0"
id="stop18" />
</radialGradient>
<circle
cx="22.890959"
cy="75.220573"
fill="url(#sQy7OvPXH0t2mKfqk7XuXg)"
id="circle18"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXg);stroke-width:2.01511"
r="5.0377803" />
<circle
cx="73.268753"
cy="75.220573"
fill="#50e6ff"
id="circle19"
style="stroke-width:2.01511"
r="3.0226684" />
<circle
cx="61.178082"
cy="75.220573"
fill="#50e6ff"
id="circle20"
style="stroke-width:2.01511"
r="3.0226684" />
<circle
cx="49.087414"
cy="75.220573"
fill="#50e6ff"
id="circle21"
style="stroke-width:2.01511"
r="3.0226684" />
<circle
cx="22.890959"
cy="75.220573"
fill="#50e6ff"
id="circle22"
style="stroke-width:2.01511"
r="3.0226684" />
<path
fill="url(#eww6fSHXLG3h4YeAqg9u_a)"
d="m 43.111467,33.670197 v 13.078026 h 2.488729 v 3.414741 h -2.488729 v 4.252451 H 38.944994 V 50.162964 H 29.90331 v -3.573917 c 0.800529,-0.895805 1.630105,-1.877584 2.488727,-2.943021 0.858624,-1.065436 1.688201,-2.162243 2.488731,-3.291582 0.80053,-1.129339 1.545288,-2.263326 2.23544,-3.40777 0.690152,-1.14212 1.275736,-2.235441 1.757913,-3.276477 z m -9.113722,13.078026 h 4.947249 V 39.50163 c -0.338105,0.626248 -0.704093,1.26063 -1.09913,1.901984 -0.396198,0.642514 -0.809826,1.273412 -1.244364,1.896174 -0.433377,0.621602 -0.872566,1.224614 -1.316401,1.807871 -0.443835,0.5821 -0.872565,1.12934 -1.287354,1.640564 z m 31.783001,6.278754 c -2.025142,1.167682 -4.542919,1.750943 -7.552166,1.750943 -3.336895,0 -5.967374,-0.923688 -7.891433,-2.771064 -1.924059,-1.846217 -2.884927,-4.389553 -2.884927,-7.630013 0,-3.260212 1.050332,-5.917413 3.15332,-7.971602 2.102987,-2.054189 4.899612,-3.081283 8.391037,-3.081283 2.199423,0 4.137424,0.304411 5.816329,0.91207 v 4.38258 c -1.602219,-0.926013 -3.558812,-1.388439 -5.874422,-1.388439 -1.939165,0 -3.516984,0.629736 -4.738114,1.888044 -1.219964,1.258306 -1.829947,2.938371 -1.829947,5.04136 0,2.132036 0.548404,3.78073 1.642887,4.948413 1.093321,1.166518 2.572384,1.750938 4.433702,1.750938 1.11772,0 2.005392,-0.160341 2.661848,-0.477529 v -4.050283 h -4.153692 v -3.733095 h 8.825578 z"
id="path2"
style="fill:url(#eww6fSHXLG3h4YeAqg9u_a);stroke-width:1.16187" />
<path
fill="#50e6ff"
d="m 57.257255,26.846523 -7.640468,4.790396 c -0.755219,0.474043 -1.716086,0.472883 -2.471302,-0.0012 l -7.618393,-4.789237 c 1.90547,-3.020866 5.298135,-4.903098 8.865081,-4.903098 3.566947,0 6.959613,1.882232 8.865082,4.903098 z"
id="path3"
style="stroke-width:1.16187" />
<path
fill="#199be2"
d="m 67.09947,20.682792 -6.889897,4.321002 c -5.566528,-8.816284 -18.25533,-8.485148 -23.634798,0 l -3.937581,-2.468977 -2.953479,-1.852025 v -0.0012 C 38.31526,6.9435901 58.429584,6.8971154 67.09947,20.682792 Z"
id="path4"
style="stroke-width:1.16187" />
<path
fill="#0078d4"
d="m 70.217935,16.986879 c 0.470557,0.66343 0.306733,1.58247 -0.382256,2.013525 l -3.706371,2.321418 v -0.0012 c -8.033182,-12.7817497 -27.063479,-13.3533905 -35.470782,0 v 0.0012 L 26.952155,19.000404 C 26.263165,18.569349 26.099343,17.650309 26.568739,16.986879 31.539224,9.9749835 39.7676,5.67722 48.392173,5.67722 c 8.624576,0 16.85295,4.2977635 21.825762,11.309659 z"
id="path5-7"
style="stroke-width:1.16187" />
<path
fill="#35c1f1"
d="m 61.193677,24.386841 -4.921689,3.08593 c -3.750521,-5.917413 -12.175255,-5.624621 -15.759629,0 l -4.921687,-3.08593 0.0024,-0.0034 c 5.810521,-9.21132 19.531064,-9.569176 25.596034,-0.0034 z"
id="path6"
style="stroke-width:1.16187" />
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -0,0 +1,284 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 96 96"
width="96"
height="96"
version="1.1"
id="svg25"
sodipodi:docname="icons8-router.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs25" />
<sodipodi:namedview
id="namedview25"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="11.458333"
inkscape:cx="69.905457"
inkscape:cy="51.490911"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg25"
showguides="true">
<sodipodi:guide
position="9.9968182,23.832614"
orientation="0,-1"
id="guide25"
inkscape:locked="false" />
<sodipodi:guide
position="46.36841,50.879999"
orientation="0,-1"
id="guide1"
inkscape:locked="false" />
<sodipodi:guide
position="4.1706847,29.588569"
orientation="1,0"
id="guide2"
inkscape:locked="false" />
<sodipodi:guide
position="9.9808125,20.062033"
orientation="1,0"
id="guide3"
inkscape:locked="false" />
<sodipodi:guide
position="86.185391,34.472066"
orientation="1,0"
id="guide4"
inkscape:locked="false" />
<sodipodi:guide
position="32.72426,12.415637"
orientation="0,-1"
id="guide5"
inkscape:locked="false" />
</sodipodi:namedview>
<linearGradient
id="sQy7OvPXH0t2mKfqk7XuXa"
x1="34.117001"
x2="33.909"
y1="30.451"
y2="11.826"
gradientTransform="matrix(2.0049622,0,0,-2.0493466,-0.02712327,82.339673)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#737b80"
id="stop1" />
<stop
offset=".714"
stop-color="#737b80"
id="stop2" />
<stop
offset=".756"
stop-color="#737b80"
id="stop3" />
<stop
offset=".863"
stop-color="#656c71"
id="stop4" />
<stop
offset="1"
stop-color="#575c61"
id="stop5" />
</linearGradient>
<path
fill="url(#sQy7OvPXH0t2mKfqk7XuXa)"
d="m 62.126702,64.120983 c -0.190473,0 -0.384955,-0.02869 -0.57743,-0.08608 -1.060625,-0.325845 -1.664117,-1.467333 -1.345331,-2.551435 L 72.233716,20.496545 c 0.318787,-1.084107 1.437558,-1.700958 2.496177,-1.375114 1.060625,0.325846 1.664119,1.467334 1.345331,2.551437 L 64.04545,62.659803 c -0.25864,0.889415 -1.05461,1.461184 -1.918748,1.461184 z"
id="path5"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXa);stroke-width:2.02704" />
<linearGradient
id="sQy7OvPXH0t2mKfqk7XuXb"
x1="14.121"
x2="13.913"
y1="30.719"
y2="12.094"
gradientTransform="matrix(2.0049622,0,0,-2.0493466,-0.02712327,82.339673)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#737b80"
id="stop6" />
<stop
offset=".773"
stop-color="#737b80"
id="stop7" />
<stop
offset="1"
stop-color="#575c61"
id="stop8" />
</linearGradient>
<path
fill="url(#sQy7OvPXH0t2mKfqk7XuXb)"
d="m 34.05723,64.120983 c -0.862132,0 -1.658104,-0.573816 -1.920752,-1.461182 L 20.106705,21.672866 c -0.318788,-1.084103 0.284706,-2.225591 1.34533,-2.551437 1.058621,-0.319698 2.177389,0.291007 2.496178,1.375114 l 12.02977,40.986932 c 0.31879,1.084103 -0.284702,2.225591 -1.345328,2.551436 -0.192476,0.05738 -0.384952,0.08608 -0.575425,0.08608 z"
id="path8"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXb);stroke-width:2.02704" />
<linearGradient
id="sQy7OvPXH0t2mKfqk7XuXc"
x1="24"
x2="24"
y1="14.614"
y2="-2.0710001"
gradientTransform="matrix(2.0049622,0,0,-2.0493466,-0.02712327,82.339673)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#899198"
id="stop9" />
<stop
offset="1"
stop-color="#787e85"
id="stop10" />
</linearGradient>
<path
fill="url(#sQy7OvPXH0t2mKfqk7XuXc)"
d="M 82.176323,70.269024 H 14.007611 c -2.215484,0 -4.0099252,-1.834165 -4.0099252,-4.098693 V 51.824905 c 0,-2.264529 1.7944412,-4.098694 4.0099252,-4.098694 h 68.168712 c 2.215484,0 4.009924,1.834165 4.009924,4.098694 v 14.345426 c 0,2.264528 -1.79444,4.098693 -4.009924,4.098693 z"
id="path10"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXc);stroke-width:2.02704" />
<rect
width="68.168709"
height="14.345426"
x="14.007612"
y="51.824905"
fill="#737b80"
id="rect10"
style="stroke-width:2.02704" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXd"
cx="36.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.0049622,0,0,-2.0493466,-0.02712327,82.339673)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop11" />
<stop
offset="1"
stop-opacity="0"
id="stop12" />
</radialGradient>
<ellipse
cx="73.153992"
cy="58.997623"
fill="url(#sQy7OvPXH0t2mKfqk7XuXd)"
id="circle12"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXd);stroke-width:2.02704"
rx="5.0124054"
ry="5.1233664" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXe"
cx="30.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.0049622,0,0,-2.0493466,-0.02712327,82.339673)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop13" />
<stop
offset="1"
stop-opacity="0"
id="stop14" />
</radialGradient>
<ellipse
cx="61.124226"
cy="58.997623"
fill="url(#sQy7OvPXH0t2mKfqk7XuXe)"
id="circle14"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXe);stroke-width:2.02704"
rx="5.0124054"
ry="5.1233664" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXf"
cx="24.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.0049622,0,0,-2.0493466,-0.02712327,82.339673)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop15" />
<stop
offset="1"
stop-opacity="0"
id="stop16" />
</radialGradient>
<ellipse
cx="49.094448"
cy="58.997623"
fill="url(#sQy7OvPXH0t2mKfqk7XuXf)"
id="circle16"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXf);stroke-width:2.02704"
rx="5.0124054"
ry="5.1233664" />
<radialGradient
id="sQy7OvPXH0t2mKfqk7XuXg"
cx="11.5"
cy="11.39"
r="2.5"
gradientTransform="matrix(2.0049622,0,0,-2.0493466,-0.02712327,82.339673)"
gradientUnits="userSpaceOnUse">
<stop
offset=".582"
stop-opacity=".2"
id="stop17" />
<stop
offset="1"
stop-opacity="0"
id="stop18" />
</radialGradient>
<ellipse
cx="23.029943"
cy="58.997623"
fill="url(#sQy7OvPXH0t2mKfqk7XuXg)"
id="circle18"
style="fill:url(#sQy7OvPXH0t2mKfqk7XuXg);stroke-width:2.02704"
rx="5.0124054"
ry="5.1233664" />
<ellipse
cx="73.153992"
cy="58.997623"
fill="#50e6ff"
id="circle19"
rx="3.0074432"
ry="3.0740201"
style="stroke-width:2.02704" />
<ellipse
cx="61.124226"
cy="58.997623"
fill="#50e6ff"
id="circle20"
rx="3.0074432"
ry="3.0740201"
style="stroke-width:2.02704" />
<ellipse
cx="49.094448"
cy="58.997623"
fill="#50e6ff"
id="circle21"
rx="3.0074432"
ry="3.0740201"
style="stroke-width:2.02704" />
<ellipse
cx="23.029943"
cy="58.997623"
fill="#50e6ff"
id="circle22"
rx="3.0074432"
ry="3.0740201"
style="stroke-width:2.02704" />
</svg>

After

Width:  |  Height:  |  Size: 7.9 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#0d47a1" d="M47.97,19.826c0.654,3.747-9.547,8.655-22.788,10.96c-13.238,2.306-24.5,1.136-25.153-2.613 c-0.653-3.747,9.551-8.654,22.79-10.958C36.059,14.907,47.318,16.078,47.97,19.826z"/><polygon fill="#fafafa" points="35.51,25.388 35.442,21.492 36.671,21.492 36.671,26.403 34.905,26.403 33.678,22.373 33.652,22.373 33.72,26.403 32.499,26.403 32.499,21.492 34.342,21.492 35.483,25.388"/><polygon fill="#fafafa" points="13.177,21.952 12.497,26.455 11.157,26.455 12.076,21.492 14.284,21.492 15.201,26.455 13.865,26.455 13.204,21.952"/><polygon fill="#fafafa" points="18.964,25.286 19.577,21.492 21.601,21.492 21.708,26.455 20.468,26.455 20.435,21.993 20.409,21.993 19.58,26.455 18.321,26.455 17.49,21.993 17.464,21.993 17.433,26.455 16.19,26.455 16.3,21.492 18.325,21.492 18.937,25.286"/><path fill="#fafafa" d="M9.067,25.055c0.049,0.12,0.034,0.275,0.011,0.368c-0.042,0.165-0.154,0.333-0.483,0.333 c-0.312,0-0.5-0.179-0.5-0.45v-0.48H6.763L6.762,25.21c0,1.106,0.871,1.441,1.805,1.441c0.898,0,1.637-0.307,1.754-1.134 c0.061-0.429,0.015-0.709-0.005-0.816c-0.209-1.039-2.093-1.349-2.233-1.93c-0.024-0.099-0.017-0.205-0.005-0.262 c0.035-0.158,0.143-0.332,0.453-0.332c0.29,0,0.461,0.18,0.461,0.45c0,0.091,0,0.307,0,0.307h1.237v-0.348 c0-1.081-0.97-1.25-1.673-1.25c-0.883,0-1.604,0.292-1.736,1.099c-0.036,0.223-0.041,0.422,0.011,0.671 C7.049,24.118,8.811,24.412,9.067,25.055z"/><path fill="#fafafa" d="M25.204,25.046c0.049,0.119,0.033,0.27,0.011,0.363c-0.041,0.165-0.152,0.33-0.479,0.33 c-0.307,0-0.494-0.179-0.494-0.444l-0.001-0.476h-1.318l-0.002,0.379c0,1.095,0.863,1.426,1.787,1.426 c0.888,0,1.62-0.303,1.736-1.122c0.061-0.426,0.018-0.702-0.004-0.807c-0.208-1.029-2.073-1.336-2.211-1.912 c-0.024-0.099-0.017-0.203-0.005-0.257c0.036-0.16,0.142-0.329,0.449-0.329c0.288,0,0.455,0.175,0.455,0.444 c0,0.09,0,0.304,0,0.304h1.228v-0.345c0-1.07-0.962-1.237-1.659-1.237c-0.873,0-1.588,0.288-1.717,1.09 c-0.036,0.22-0.04,0.415,0.012,0.663C23.206,24.118,24.951,24.41,25.204,25.046z"/><path fill="#fafafa" d="M29.372,25.713c0.344,0,0.451-0.238,0.475-0.36c0.01-0.054,0.013-0.125,0.012-0.19V21.49h1.255 v3.56c0.003,0.091-0.006,0.279-0.011,0.325c-0.088,0.927-0.821,1.227-1.732,1.227c-0.913,0-1.646-0.301-1.733-1.227 c-0.004-0.047-0.013-0.235-0.011-0.325v-3.56h1.254v3.672c0,0.064,0.002,0.137,0.012,0.19 C28.921,25.473,29.025,25.713,29.372,25.713z"/><path fill="#fafafa" d="M39.725,25.66c0.359,0,0.485-0.227,0.508-0.359c0.009-0.057,0.012-0.126,0.011-0.189v-0.72 h-0.509v-0.724h1.76V25c-0.001,0.093-0.003,0.162-0.018,0.327c-0.082,0.903-0.866,1.225-1.745,1.225 c-0.881,0-1.663-0.322-1.747-1.225c-0.014-0.166-0.016-0.234-0.018-0.327l0.001-2.089c0-0.088,0.011-0.244,0.021-0.327 c0.11-0.928,0.862-1.226,1.743-1.226c0.88,0,1.651,0.297,1.742,1.226c0.016,0.158,0.011,0.327,0.011,0.327v0.166h-1.251v-0.278 c0.001,0.001-0.002-0.118-0.016-0.189c-0.021-0.11-0.116-0.362-0.495-0.362c-0.362,0-0.467,0.238-0.494,0.362 c-0.015,0.065-0.021,0.154-0.021,0.234v2.27c-0.001,0.063,0.003,0.132,0.013,0.189C39.241,25.433,39.366,25.66,39.725,25.66z"/></svg>

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#fff" d="M40,24c0,8.8-7.2,16-16,16S8,32.8,8,24S15.2,8,24,8S40,15.2,40,24z"/><path fill="#e64a19" d="M30 24c0 3.3-2.7 6-6 6-3.3 0-6-2.7-6-6s2.7-6 6-6C27.3 18 30 20.7 30 24zM12 21.5c1.4 0 2.5 1.1 2.5 2.5s-1.1 2.5-2.5 2.5S9.5 25.4 9.5 24 10.6 21.5 12 21.5M12 20.5c-1.9 0-3.5 1.6-3.5 3.5s1.6 3.5 3.5 3.5 3.5-1.6 3.5-3.5S13.9 20.5 12 20.5zM30 31.5c1.4 0 2.5 1.1 2.5 2.5s-1.1 2.5-2.5 2.5-2.5-1.1-2.5-2.5S28.6 31.5 30 31.5M30 30.5c-1.9 0-3.5 1.6-3.5 3.5s1.6 3.5 3.5 3.5 3.5-1.6 3.5-3.5S31.9 30.5 30 30.5z"/><path fill="#e64a19" d="M24,4C13,4,4,13,4,24s9,20,20,20s20-9,20-20S35,4,24,4z M32.5,34c0,1.4-1.1,2.5-2.5,2.5 s-2.5-1.1-2.5-2.5c0-0.2,0-0.5,0.1-0.7C26.5,33.8,25.3,34,24,34c-5.1,0-9.2-3.8-9.9-8.7c-0.4,0.7-1.2,1.2-2.1,1.2 c-1.4,0-2.5-1.1-2.5-2.5s1.1-2.5,2.5-2.5c0.9,0,1.7,0.5,2.1,1.2c0.7-4.9,4.8-8.7,9.9-8.7c1.3,0,2.5,0.2,3.6,0.7 c-0.1-0.2-0.1-0.4-0.1-0.7c0-1.4,1.1-2.5,2.5-2.5s2.5,1.1,2.5,2.5c0,1.2-0.8,2.2-2,2.4C32.7,18.3,34,21,34,24s-1.3,5.7-3.5,7.6 C31.7,31.8,32.5,32.8,32.5,34z"/><path fill="#e64a19" d="M30 11.5c1.4 0 2.5 1.1 2.5 2.5 0 1.4-1.1 2.5-2.5 2.5s-2.5-1.1-2.5-2.5C27.5 12.6 28.6 11.5 30 11.5M30 10.5c-1.9 0-3.5 1.6-3.5 3.5s1.6 3.5 3.5 3.5 3.5-1.6 3.5-3.5S31.9 10.5 30 10.5zM24 24c-2.6-4.1-5.2-8.1-7.8-12.2"/><path fill="#e64a19" d="M19.1 10.7H21.1V25.1H19.1z" transform="rotate(-32.467 20.127 17.911)"/><path fill="#e64a19" d="M24 23H38.4V25H24z"/><g><path fill="#e64a19" d="M24,24c-2.7,4-5.3,8-8,12"/><path fill="#e64a19" d="M12.8 29H27.200000000000003V31H12.8z" transform="rotate(-56.312 19.998 30.006)"/></g></svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#00b0ff" d="M20 25.026L5.011 25 5.012 37.744 20 39.818zM22 25.03L22 40.095 42.995 43 43 25.066zM20 8.256L5 10.38 5.014 23 20 23zM22 7.973L22 23 42.995 23 42.995 5z"/></svg>

After

Width:  |  Height:  |  Size: 272 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#1976d2" d="M6,6h17v17H6V6z"/><path fill="#1976d2" d="M25.042,22.958V6H42v16.958H25.042z"/><path fill="#1976d2" d="M6,25h17v17H6V25z"/><path fill="#1976d2" d="M25,42V25h17v17H25z"/></svg>

After

Width:  |  Height:  |  Size: 287 B

View File

@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xml:space="preserve"
width="800"
height="800"
version="1.0"
viewBox="0 0 800 800.01969"
id="svg1"
sodipodi:docname="logo-toshiba.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:svg="http://www.w3.org/2000/svg"><svg:defs
id="defs1" /><sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"
inkscape:zoom="1.538125"
inkscape:cx="378.70784"
inkscape:cy="288.013"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg1"><sodipodi:guide
position="227.31716,399.38542"
orientation="0,-1"
id="guide1"
inkscape:locked="false" /></sodipodi:namedview>
<svg:path
fill="#e61e1e"
d="m 766.10016,459.7136 h 34.55 l -35.65,-117.66 -49.1,-0.002 -35.65,117.66 h 34.56 l 6.3,-21.78 h 38.66 l 6.33,21.78 m -37.51,-47.943 11.76,-40.651 h 0.2 l 11.76,40.651 z m -555.46,50.055 c 35.48,0 52.63,-6.25 55.06,-38.265 0.58,-7.618 0.69,-15.439 0.69,-22.689 0.01,-7.225 -0.11,-15.054 -0.69,-22.671 -2.43,-32.025 -19.58,-38.265 -55.06,-38.265 -35.48,0 -52.62,6.24 -55.04,38.265 -0.59,7.617 -0.71,15.446 -0.71,22.671 0.01,7.25 0.12,15.071 0.71,22.689 2.42,32.015 19.56,38.265 55.04,38.265 m -22.31,-60.954 c 0,-6.461 0.16,-10.28 0.3,-13.114 0.9,-18.161 8.07,-20.278 22.01,-20.278 13.95,0 21.12,2.117 22.01,20.278 0.14,2.833 0.31,6.652 0.31,13.114 0,6.482 -0.17,10.308 -0.31,13.135 -0.89,18.164 -8.06,20.285 -22.01,20.285 -13.94,0 -21.11,-2.121 -22.01,-20.285 -0.14,-2.827 -0.3,-6.653 -0.3,-13.135 z M 0.65015822,342.1056 v 29.331 H 35.822158 v 88.327 h 35.185 v -88.327 h 35.173002 v -29.331 H 0.65015822 M 540.50016,459.7136 v -117.662 h -33.39 v 117.662 h 33.39 m -134.35,-74.703 v -42.959 h -33.2 v 117.662 h 33.2 v -45.372 h 38.58 v 45.372 h 33.19 v -117.662 h -33.19 v 42.959 h -38.58 m 244.17,13.206 c 14.79,-3.781 19.13,-12.616 19.13,-25.386 0,-25.859 -16.27,-30.78 -39.4,-30.78 h -59.95 v 117.66 h 62.92 c 28.97,0 38.71,-12.48 38.71,-31.675 0,-13.383 -3.06,-25.191 -21.41,-29.822 m -47.03,13.169 h 23.02 c 9.3,0 11.24,4.074 11.24,10.7 0,6.632 -3.64,10.717 -11.24,10.717 h -23.02 z m 0,-42.425 h 23.02 c 6.01,0 9.73,2.851 9.73,9.708 0,5.878 -3.68,9.496 -9.73,9.496 h -23.02 z m -355.06,52.143 h 31.65 c 0.03,5.708 0.76,9.523 3.53,11.63 3.15,2.374 5.97,3.158 15.32,3.158 9,0 18.86,0 18.86,-11.085 0,-8.742 -5.51,-10.737 -15.68,-11.279 -25.22,-1.336 -34.34,-2.049 -43.73,-9.025 -6.4,-4.757 -9.72,-14.018 -9.72,-26.542 0,-21.297 7.43,-28.768 18.15,-33.981 11.06,-5.381 54.47,-5.381 66.15,0 14.69,6.768 15.12,21.42 15.12,35.011 h -31.57 c -0.06,-6.929 -1.62,-8.886 -2.89,-10.175 -3.28,-2.908 -7.95,-3.522 -14.69,-3.522 -8.16,0 -17.6,0.368 -17.6,10.277 0,7.56 3.27,10.72 11.85,11.276 11.79,0.754 35.02,1.497 43.3,6.383 11.61,6.867 14.62,16.159 14.62,31.319 0,21.908 -7.84,28.338 -18.75,33.158 -12.59,5.56 -54.64,5.56 -68.31,-0.43 -15.3,-6.67 -15.61,-19.964 -15.61,-36.173"
id="path1" />
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -10,7 +10,7 @@
<location_id>1</location_id>
<status>production</status>
<brand_id>10</brand_id>
<model_id>0</model_id>
<model_id>5</model_id>
<asset_number></asset_number>
<purchase_date></purchase_date>
<end_of_warranty></end_of_warranty>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Set>
<Brand alias="Brand" id="1">
<Brand alias="Brand" id="6">
<name>Acer</name>
<logo><mimetype>image/svg+xml</mimetype><filename>icon-acer.svg</filename><data>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmc6c3ZnIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIiB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiIHhtbG5zOnN2Zz0iaH
R0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgaWQ9ImFjZXIiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iODMiIGhlaWdodD0iODMiIHZpZXdCb3g9IjAgMCA4MyA4MyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgc29kaXBvZGk6ZG9jbmFtZT0iaWNvbi1hY2VyLnN2ZyIgaW5rc2NhcGU6dmVyc2lvbj0iMS40LjMgKDBkMTVmNzUwNDIsIDIwMjUtMTItMjUpIj48c3ZnOmRlZnMgaWQ9ImRlZnMxIi8+PHNvZGlwb2RpOm5hbWVkdmlldyBpZD0ibmFtZWR2
@@ -45,7 +45,7 @@
<finalclass>Brand</finalclass>
<friendlyname>Asus</friendlyname>
</Brand>
<Brand alias="Brand" id="4">
<Brand alias="Brand" id="10">
<name>Cisco</name>
<logo><mimetype>image/svg+xml</mimetype><filename>icon-cisco.svg</filename><data>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiIHhtbG5zOnNvZGlwb2RpPSJodHRwOi8vc29kaXBvZGkuc291cmNlZm9yZ2UubmV0L0RURC9zb2RpcG9kaS0wLmR0ZCIgeG1sbnM9Imh0dHA6Ly93d
3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgd2lkdGg9IjEwOCIgaGVpZ2h0PSIxMDgiIHZpZXdCb3g9IjAgMCAxMDggMTA4IiByb2xlPSJpbWciIHZlcnNpb24
@@ -74,7 +74,7 @@
<finalclass>Brand</finalclass>
<friendlyname>Dell</friendlyname>
</Brand>
<Brand alias="Brand" id="6">
<Brand alias="Brand" id="7">
<name>HP Inc</name>
<logo><mimetype>image/svg+xml</mimetype><filename>icons8-hp.svg</filename><data>PD94bWwgdmVyc2lvbj0iMS4wIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNDggNDgiIHdpZHRoPSI0OHB4IiBoZWlnaHQ9IjQ4cHgiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0yNCA0QTIwIDIwIDAgMSAwIDI0IDQ0QTIwIDIwIDAgMSAwIDI0IDRaIi8+PHBhdGggZmlsbD0iIzE5NzZkMiIgZD0iTTI0LDQzLj
k5N2MtMC4xOTksMC0wLjY1MiwwLjAwNi0wLjg1LDBsNC0xMC45OTloNS42MjVjMC45ODcsMCwyLjA3MS0wLjc1OSwyLjQwOS0xLjY4Nmw0Ljc0OC0xMi42ODdjMC43MjUtMS45OTUtMC40MTctMy42MjYtMi41MzktMy42MjZoLTcuODA0bC02LjUxOCwxOC4yNTdoLTAuMDAybC0zLjcxMiwxMC4xOThDMTAuNTUsNDEuMzYxLDQsMzMuNDQ1LDQsMjMuOTk5YzAtOS4xNzQsNi4xNzgtMTYuOTA1LDE0LjYtMTkuMjYxbC0zLjgzLDEwLjUyNmgtMC4wMDFMOC4xNSwzMi45OTho
@@ -82,7 +82,7 @@
<finalclass>Brand</finalclass>
<friendlyname>HP Inc</friendlyname>
</Brand>
<Brand alias="Brand" id="7">
<Brand alias="Brand" id="1">
<name>HPE</name>
<logo><mimetype>image/svg+xml</mimetype><filename>icon-hpe.svg</filename><data>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiIHhtbG5zOnNvZGlwb2RpPSJodHRwOi8vc29kaXBvZGkuc291cmNlZm9yZ2UubmV0L0RURC9zb2RpcG9kaS0wLmR0ZCIgeG1sbnM9Imh0dHA6Ly93d3c
udzMub3JnLzIwMDAvc3ZnIiB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjAiIGlkPSJrYXRtYW5fMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA2MzAgNjMwIiB4bWw6c3BhY2U9InByZXNlcnZlIiBzb2RpcG9kaTpkb2NuYW1lPSJpY29uLWhwZS5zdmciIHdpZHRoPSI2MzAiIGhlaWdodD0iNjMwIiBpbmtzY2FwZTp2ZXJzaW9uPSIxLjQuMyAoMGQxNWY3NTA0MiwgMjAyNS0xMi0yNSkiPjxkZWZzIGlkPSJkZWZzM
@@ -117,7 +117,7 @@
<finalclass>Brand</finalclass>
<friendlyname>Lenovo</friendlyname>
</Brand>
<Brand alias="Brand" id="10">
<Brand alias="Brand" id="4">
<name>Razer</name>
<logo><mimetype>image/svg+xml</mimetype><filename>icons8-razer.svg</filename><data>PD94bWwgdmVyc2lvbj0iMS4wIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNDggNDgiIHdpZHRoPSI0OHB4IiBoZWlnaHQ9IjQ4cHgiPjxwYXRoIGZpbGw9IiM2NGRkMTciIGQ9Ik0yNiwyMGMwLjEsMCwwLjIsMCwwLjMsMGMwLjMtMC4xLDAuNS0wLjMsMC42LTAuNWMwLjEtMC4yLDAuMS0wLjUsMC4xLTA
uOGMtMC4yLTAuNi0xLTEuOC0yLTIuNCBjMCwwLjcsMCwxLjMsMCwxLjljMCwwLjUsMCwxLDAsMS4yYzAuMSwwLjIsMC4zLDAuNCwwLjUsMC42QzI1LjcsMjAsMjUuOCwyMCwyNiwyMCBNMjkuNCwyM2MwLjcsMCwxLjYtMC4xLDIuMy0wLjUgYy0wLjUtMC4zLTEtMC42LTEuNS0wLjljLTAuNC0wLjMtMC45LTAuNi0xLjEtMC42YzAsMC0wLjEsMC0wLjEsMGMtMC4yLDAtMC40LDAuMS0wLjYsMC4yYy0wLjIsMC4xLTAuNCwwLjQtMC40LDAuNiBjLTAuMSwwLjUsMC4zLDEuM

View File

@@ -0,0 +1,256 @@
<?xml version="1.0" encoding="UTF-8"?>
<Set>
<NetworkDeviceType alias="NetworkDeviceType" id="1">
<name>Firewall</name>
<logo><mimetype>image/png</mimetype><filename>firewall.png</filename><data>iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAABmJLR0QA/wD/AP+gvaeTAAAIdUlEQVR4nO2bXWwc1RXH/3f2a3bXiXHiJM4HCVRqBXEqHG8SlGRJtgGS2okLJjhNRHmoWvJQJKQgtahVK0VVRamqqlVppSK1AlW8IJ6gUkMlxEsAKbHBJHZQCyLB2EqMwd71bryza+/e04dknV3veHbufOzswv1J98E7c885c/537tx7ZgxIJBKJRCKRSCQSiUQikUi+LjCvAxAh3ff9hxixfwA0xoj+HI3Qy+zVV4tex2UHxesARGCcngbx1SDqJuCl61l2Pn34+B6v47JDUwlAHCkioKx1g/jb6Z5jz9Hp0011LSWaKmgGXAYISxoDo2cyg5f+lXz44du8jVCcphKAg1+uzv/NxtGr5ANvpftOtHsZoyhNJYAClseSOai8MaLtrLDwxlRioMXrWM3SVAIQaKX+8L/ViCimqvRPapIVXlMJAM7bDG6Askb96UNHn/Q6XDM0lQAEutdE9kvtd8neR7Z4HXMtmkYA6ukJETGRNX9EKeA51wJyiKYRIFMM9TCisMAdABAdSx88epfXsRvRNAIQZ0+L5R4ggsI5nfI6diOaYqUw80B/XAGdtdh9tjWQX8fOnMk7GpRDNPwdQImEX6HiX0SHfllrzcyrD3p9HcvR8AKkfa2/ALF7aiz/DVuR6JAXsZvB73UARqQO9B0gol/ZtcMY7XAiHjdo2GdA8kDvFpB/EMAau7YYkGttD7U04ruDhrwD0om+ds5xhkC2kw8ABKhzM/l2AJ87Yc9JGu4ZMN3Ts7IIeoNAd1ue9HXaAucdJR+p/UeeSCaOTM7u79tZvyvTp6EEuJJIqErW9xoIMQdzDxDAimx1mat+ENZx0MvjuwfC9bk6fRpGAEok/K08+goRJYgIjjeFeMkXJ7rn5u/figayv/byuhtCAMJpJUnRFwF8zz0frAAAqX19dwLYUHboVCrR69kqqSEESO47/zw4/cDGZqt2TaLANQDgVHx0yTEf53iePFoRer4Mnbmv91kAP3fbT8GH9X7/vIZ8cBTApqXHGfDDtrP/fsntOJbi6R0wEz/8DASTrz5wGa1/+A8ij10E/Lx2hxvk13wRnaH5wIvQST4AEPDs1VhfRCQWJ/BMgJl47wkw+q1ov+DecbBQEcHdE2h56hxYdN5Mt3Sybe5NRqzf4Jz1oSj/iWg8dvFkCkrdd6ibk3IWgPCIa/npu/BvmV38uzixEtf/dC8o58ie8ssiBb6x5p3XM04YM0Pd74DZ3YdWcVJeg4Xk6+HblEb0yUGwoCNVhnaFFZ5wwpBZ6i5A0af8FcvMw2ZgrfmqfZbvzhTCj404Eh8DPUUDAz5HjJmgrgJM7+09RsBxqxtatkqDcltO13Ygdg3BfWNObJq3TF/NPOT4xS9D3QS4kkioYPR7OzYCsWuGmQv3/7fi+WAVprAf2TZikroJsGIhcgrAZqv9mVpA6DufGp/k5wg/fkFkeaoP4eDknoNr7RkxR10EuBrrizAUf2ZnJ6v2fAylJV9z/vCtnYP64Cd2d87+oKI8Wo/c1EWAoLowADDLXy77N88iFB8DOEw19f7L8HVctxUzEQ7bMmCSugjAAMtzKgsVoD5+EaSQ+QHs4wgd+chu2PupcyBo10gtXBdgKtHbASButX/4+Ch8q+dMj/5SC2ydgu+OlJ3Qo8m2zC47BszgugC++UIcRMzKXBzaO4bAtyeFk784FX33I1vPAiq6/zLf9XfCnGMPAwn3890+i1DP/0AF6759d8xA2ZhCcbzVUn/GcLd17+ZwXQBGfLtwJ4Wg9n8IAgdsCAAAwV3j0D5bYakvJ2y15702rgtAnITX08H4GJQ1GVujv4SvcxJ4/ZtWi3Xr7UdgjPufpXBaJXI6i84jGL8CMlVlNhUA/Fs/x8LQhtqnVmNt7hLA/TugWGgTOT/Q/RmIiiAHP6VVNn8JOmdpY/tVEECsTKzcNQXu2Oi/aXNjCsQLAAm//nD9Szr3BSgUMwBCZs5VVmmgYA7FrNNRFMBWZ8Ano6IdXX8xIzwk3nrn3GGAXgCw0clACpnreHd4BBNT0xW/b1y/Dju3b0M4rArbNFz80o2j83NZXBi6gE+mkxWHN3SsXfRrZhFNwISP8ZP3x+NnRGK0sBGjv8Hh5AOAf0ULYju7qn7f0SWe/FJtTv8gLSYfAILRCDp36fjdvg2qyeQDACPaxDl7QShQWJuCLL/NMoIARMLVXwlGIuaTb2bE66Hn17TolXZvN9fpFp5/Hb0YvkGCTNvQPWjdrrFTZ+x6JoATia+wU3XAvF2hCAzsWrmSugsgE19J3QSQidfH/X1AxR8uzPNNmvgSrgrQSA9YJ5LmxuPcFQGcmm6Wd9D8iS8hvBHLZvU/jALKNkBLNjumbWuasT8Bu4absSofOn61nJANqwgLcO79i1Ui2E08AMxpGs6/V/154eDwyI0EuZB4ECGb1TA0PFrt9
4NRaNryg80phGtBPz71S7cHRVPz9z/+RiinDfEvSl9npAAeIwXwGOFl6Imj5r7Yy2ZzOD88gmuTUxW/b1ha3xd4uJryq+UwNDyCa5NfVPrtWIsdXZ1QLbxXuBUELRuLpuUw9MElYZOu3QGRiIqd3duqfl+s7wsuKU37VUPY0VXtN
2Yn+WWxLhdLOKwi1tUpbNrVjZhufT8cciXx5TYjOom28kat3KaZWPT81sJRAZxanzpVs7EXhPGIdwpHBGikxNuOpU6JL2FbgK9MlbLOiS9hWQCZeGcQFkAm3lnsPwMEH4IihTLbNgzsep34EvYEcGMF4nLibdtxGPGNGGHC7CZKt
75vVOI1WNmIJE3Ph1af+v64aAdhARjDSQATtc6b0zQMvl9dZx8aHq1O0DKCWklYVsvhPd36/iW36/vjxOmkmw4kEolEIpFIJBKJRCKRSCTNzf8B9DlMYsFrhfAAAAAASUVORK5CYII=</data><downloads_count>0</downloads_count></logo>
</NetworkDeviceType>
<NetworkDeviceType alias="NetworkDeviceType" id="2">
<name>Load Balancer</name>
<logo><mimetype>image/svg+xml</mimetype><filename>icons8-loadbalancer-6.svg</filename><data>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcg
eG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiIHhtbG5zOnNvZGlwb2RpPSJodHRwOi8vc29kaXBvZGkuc291cmNlZm9yZ2UubmV0L0RURC9zb2RpcG9kaS0wLmR0ZCIg
eG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAw
IDk2IDk2IiB3aWR0aD0iOTYiIGhlaWdodD0iOTYiIHZlcnNpb249IjEuMSIgaWQ9InN2ZzE2IiBzb2RpcG9kaTpkb2NuYW1lPSJpY29uczgtbG9hZGJhbGFuY2VyLTYuc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiBpbmtzY2Fw
ZTp2ZXJzaW9uPSIxLjQuMyAoMGQxNWY3NTA0MiwgMjAyNS0xMi0yNSkiPjxkZWZzIGlkPSJkZWZzMTYiPjxsaW5lYXJHcmFkaWVudCBpZD0icmd0eWJSNWZEVThSNElnSUZrT1A1YiIgeDE9IjE5LjM4OCIgeDI9IjI4LjQxMyIg
eTE9Ii05Ljk0NDk5OTciIHkyPSI1Mi4wOTg5OTkiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMCwtMC40OTMxMTUxMywtMC40OTMxMTUxMywwLDQ2LjAxOTQ5NCw0My45OTUwMjUpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3Bh
Y2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjMWVhMmU0IiBpZD0ic3RvcDctNiIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzMyYmRlZiIgaWQ9InN0b3A4LTIiLz48L2xpbmVhckdyYWRpZW50
PjxsaW5lYXJHcmFkaWVudCBpZD0icmd0eWJSNWZEVThSNElnSUZrT1A1YSIgeDE9IjQ3Ny4xNzg5OSIgeDI9IjQ3Mi43NzIiIHkxPSI1MjIuMTg3MDEiIHkyPSI1MjIuMTg3MDEiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgo
LTAuMzQ4Njg1MDUsMC4zNDg2ODUwNSwwLjM0ODY4NTA1LDAuMzQ4Njg1MDUsMjMuNzgzMDkxLC0zMDYuNjYwNDQpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIuMzY1IiBzdG9wLWNvbG9y
PSIjMTk5YWUwIiBpZD0ic3RvcDEiLz48c3RvcCBvZmZzZXQ9Ii42OTkiIHN0b3AtY29sb3I9IiMxODk4ZGUiIGlkPSJzdG9wMiIvPjxzdG9wIG9mZnNldD0iLjgxOSIgc3RvcC1jb2xvcj0iIzE2OTFkOCIgaWQ9InN0b3AzLTki
Lz48c3RvcCBvZmZzZXQ9Ii45MDUiIHN0b3AtY29sb3I9IiMxMTg2Y2MiIGlkPSJzdG9wNC0xIi8+PHN0b3Agb2Zmc2V0PSIuOTc0IiBzdG9wLWNvbG9yPSIjMGE3NWJjIiBpZD0ic3RvcDUtMiIvPjxzdG9wIG9mZnNldD0iMSIg
c3RvcC1jb2xvcj0iIzA3NmNiMyIgaWQ9InN0b3A2LTciLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iQXJ0RFlaMmxUNzV2a2FiUkVzVERFYiIgeDE9IjEwLjQ0MyIgeDI9IjM0Ljg5NDAwMSIgeTE9IjM1
Ljk4NTAwMSIgeTI9IjExLjUzMyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMC43MzI5NTMwMywwLDAsMC43MzI5NTMwMyw2MC40MDkwOTQsMjkuOTkxODEyKSI+PHN0
b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjMzJiZGVmIiBpZD0ic3RvcDctMyIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzFlYTJlNCIgaWQ9InN0b3A4LTciLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFk
aWVudCBpZD0iQXJ0RFlaMmxUNzV2a2FiUkVzVERFYSIgeDE9IjM3IiB4Mj0iMzciIHkxPSI0MS41NTUiIHkyPSIyOC4wMzAwMDEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0
cml4KDAuNzMyOTUzMDMsMCwwLDAuNzMyOTUzMDMsNjAuNDA5MDk0LDI5Ljk5MTgxMikiPjxzdG9wIG9mZnNldD0iLjM2NSIgc3RvcC1jb2xvcj0iIzE5OWFlMCIgaWQ9InN0b3AxLTUiLz48c3RvcCBvZmZzZXQ9Ii42OTkiIHN0
b3AtY29sb3I9IiMxODk4ZGUiIGlkPSJzdG9wMi05Ii8+PHN0b3Agb2Zmc2V0PSIuODE5IiBzdG9wLWNvbG9yPSIjMTY5MWQ4IiBpZD0ic3RvcDMtMiIvPjxzdG9wIG9mZnNldD0iLjkwNSIgc3RvcC1jb2xvcj0iIzExODZjYyIg
aWQ9InN0b3A0LTIiLz48c3RvcCBvZmZzZXQ9Ii45NzQiIHN0b3AtY29sb3I9IiMwYTc1YmMiIGlkPSJzdG9wNS04Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDc2Y2IzIiBpZD0ic3RvcDYtOSIvPjwvbGluZWFy
R3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSI5MDFSSUhjTHl6NmRaUEdTdlNmMVhjIiB4MT0iMzMuNDM2MDAxIiB4Mj0iMzguMTU3MDAxIiB5MT0iMjEuNTYzOTk5IiB5Mj0iMTYuODQzIiBncmFkaWVudFRyYW5zZm9ybT0i
bWF0cml4KC0xLDAsMCwxLDEyMS43MTIxOSwxNy4zNjgxMjkpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjYWU0Y2Q1IiBpZD0ic3RvcDUtNiIvPjxzdG9wIG9m
ZnNldD0iMSIgc3RvcC1jb2xvcj0iI2FjNGFkNSIgaWQ9InN0b3A2LTEiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iOTAxUklIY0x5ejZkWlBHU3ZTZjFYYiIgeDE9IjY5NC45NzYwMSIgeDI9IjcxNy43
MTgwMiIgeTE9IjM1LjcwOSIgeTI9IjEyLjk2NyIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgtNjA2LjI4NzgyLDE3LjM2ODEyOSkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAi
IHN0b3AtY29sb3I9IiNhZTRjZDUiIGlkPSJzdG9wMy0yOSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI2FjNGFkNSIgaWQ9InN0b3A0LTMiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iOTAx
UklIY0x5ejZkWlBHU3ZTZjFYYSIgeDE9IjM2LjI1IiB4Mj0iMzYuMjUiIHkxPSIzOC4wNDI5OTkiIHkyPSIyMy4wMDYwMDEiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLTEsMCwwLDEsMTIxLjcxMjE5LDE3LjM2ODEyOSki
IGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM5MTJmYmQiIGlkPSJzdG9wMS0xIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjOTMzMmJmIiBpZD0ic3Rv
cDItOTQiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpbmtzY2FwZTpjb2xsZWN0PSJhbHdheXMiIHhsaW5rOmhyZWY9IiNBcnREWVoybFQ3NXZrYWJSRXNUREVhIiBpZD0ibGluZWFyR3JhZGllbnQyNCIgZ3Jh
ZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMCwwLjczMjk1MzAzLC0wLjczMjk1MzAzLDAsNjUuNjM1NTkyLDYwLjE1MzUxNSkiIHgxPSIzNyIgeTE9IjQxLjU1NSIgeDI9IjM3
IiB5Mj0iMjguMDMwMDAxIi8+PGxpbmVhckdyYWRpZW50IGlua3NjYXBlOmNvbGxlY3Q9ImFsd2F5cyIgeGxpbms6aHJlZj0iI0FydERZWjJsVDc1dmthYlJFc1RERWIiIGlkPSJsaW5lYXJHcmFkaWVudDI1IiBncmFkaWVudFVu
aXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgwLDAuNzMyOTUzMDMsLTAuNzMyOTUzMDMsMCw2NS42MzU1OTIsNjAuMTUzNTE1KSIgeDE9IjEwLjQ0MyIgeTE9IjM1Ljk4NTAwMSIgeDI9IjM0
Ljg5NDAwMSIgeTI9IjExLjUzMyIvPjxsaW5lYXJHcmFkaWVudCBpbmtzY2FwZTpjb2xsZWN0PSJhbHdheXMiIHhsaW5rOmhyZWY9IiNBcnREWVoybFQ3NXZrYWJSRXNUREViIiBpZD0ibGluZWFyR3JhZGllbnQyNiIgZ3JhZGll
bnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMC41MTgyNzYwNiwwLjUxODI3NjA2LC0wLjUxODI3NjA2LDAuNTE4Mjc2MDYsNjUuMDk5NTg5LDM4LjI4MzI5NSkiIHgxPSIxMC40NDMi
IHkxPSIzNS45ODUwMDEiIHgyPSIzNC44OTQwMDEiIHkyPSIxMS41MzMiLz48bGluZWFyR3JhZGllbnQgaW5rc2NhcGU6Y29sbGVjdD0iYWx3YXlzIiB4bGluazpocmVmPSIjQXJ0RFlaMmxUNzV2a2FiUkVzVERFYSIgaWQ9Imxp
bmVhckdyYWRpZW50MjciIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDAuNTE4Mjc2MDYsMC41MTgyNzYwNiwtMC41MTgyNzYwNiwwLjUxODI3NjA2LDY1LjA5OTU4OSwz
OC4yODMyOTUpIiB4MT0iMzciIHkxPSI0MS41NTUiIHgyPSIzNyIgeTI9IjI4LjAzMDAwMSIvPjxsaW5lYXJHcmFkaWVudCBpbmtzY2FwZTpjb2xsZWN0PSJhbHdheXMiIHhsaW5rOmhyZWY9IiNBcnREWVoybFQ3NXZrYWJSRXNU
REVhIiBpZD0ibGluZWFyR3JhZGllbnQyOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLTAuNTE4Mjc2MDYsMC41MTgyNzYwNiwwLjUxODI3NjA2LDAuNTE4Mjc2MDYs
MzEuMDYzOTkzLDM4LjIzOTEwMSkiIHgxPSIzNyIgeTE9IjQxLjU1NSIgeDI9IjM3IiB5Mj0iMjguMDMwMDAxIi8+PGxpbmVhckdyYWRpZW50IGlua3NjYXBlOmNvbGxlY3Q9ImFsd2F5cyIgeGxpbms6aHJlZj0iI0FydERZWjJs
VDc1dmthYlJFc1RERWIiIGlkPSJsaW5lYXJHcmFkaWVudDI5IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMC41MTgyNzYwNiwwLjUxODI3NjA2LDAuNTE4Mjc2MDYs
MC41MTgyNzYwNiwzMS4wNjM5OTMsMzguMjM5MTAxKSIgeDE9IjEwLjQ0MyIgeTE9IjM1Ljk4NTAwMSIgeDI9IjM0Ljg5NDAwMSIgeTI9IjExLjUzMyIvPjxsaW5lYXJHcmFkaWVudCBpZD0iOTAxUklIY0x5ejZkWlBHU3ZTZjFY
Yy04IiB4MT0iMzMuNDM2MDAxIiB4Mj0iMzguMTU3MDAxIiB5MT0iMjEuNTYzOTk5IiB5Mj0iMTYuODQzIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDAsMC43ODYzOTQyMiwwLjc4NjM5NDIyLDAsMjguNzA4NjE1LC0xLjEx
MzM1MzMpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjYWU0Y2Q1IiBpZD0ic3RvcDUtODQiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNhYzRhZDUi
IGlkPSJzdG9wNi0zIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9IjkwMVJJSGNMeXo2ZFpQR1N2U2YxWGItMSIgeDE9IjY5NC45NzYwMSIgeDI9IjcxNy43MTgwMiIgeTE9IjM1LjcwOSIgeTI9IjEyLjk2
NyIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgwLC0wLjc4NjM5NDIyLDAuNzg2Mzk0MjIsMCwyOC43MDg2MTUsNTcxLjM4MTY1KSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iMCIgc3Rv
cC1jb2xvcj0iI2FlNGNkNSIgaWQ9InN0b3AzLTQiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNhYzRhZDUiIGlkPSJzdG9wNC05Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9IjkwMVJJSGNM
eXo2ZFpQR1N2U2YxWGEtMiIgeDE9IjM2LjI1IiB4Mj0iMzYuMjUiIHkxPSIzOC4wNDI5OTkiIHkyPSIyMy4wMDYwMDEiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMCwwLjc4NjM5NDIyLDAuNzg2Mzk0MjIsMCwyOC43MDg2
MTUsLTEuMTEzMzUzMykiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM5MTJmYmQiIGlkPSJzdG9wMS0wIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIj
OTMzMmJmIiBpZD0ic3RvcDItNiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxzb2RpcG9kaTpuYW1lZHZpZXcgaWQ9Im5hbWVkdmlldzE2IiBwYWdlY29sb3I9IiNmZmZmZmYiIGJvcmRlcmNvbG9yPSIjMDAwMDAwIiBib3Jk
ZXJvcGFjaXR5PSIwLjI1IiBpbmtzY2FwZTpzaG93cGFnZXNoYWRvdz0iMiIgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAuMCIgaW5rc2NhcGU6cGFnZWNoZWNrZXJib2FyZD0iMCIgaW5rc2NhcGU6ZGVza2NvbG9yPSIjZDFkMWQx
IiBzaG93Z3VpZGVzPSJ0cnVlIiBpbmtzY2FwZTp6b29tPSI1LjY1Njg1NDMiIGlua3NjYXBlOmN4PSI0NS4zNDMyMjIiIGlua3NjYXBlOmN5PSIzMC40MDU1OTIiIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMjU2MCIgaW5rc2Nh
cGU6d2luZG93LWhlaWdodD0iMTM2MCIgaW5rc2NhcGU6d2luZG93LXg9IjAiIGlua3NjYXBlOndpbmRvdy15PSIwIiBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIxIiBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJzdmcxNiI+
PHNvZGlwb2RpOmd1aWRlIHBvc2l0aW9uPSIxOS41NTk3ODksMTQzLjczODM0IiBvcmllbnRhdGlvbj0iMSwwIiBpZD0iZ3VpZGUxNyIgaW5rc2NhcGU6bG9ja2VkPSJmYWxzZSIvPjxzb2RpcG9kaTpndWlkZSBwb3NpdGlvbj0i
MjQuMDg0NDY5LDk4LjIyNDIxMiIgb3JpZW50YXRpb249IjAsLTEiIGlkPSJndWlkZTE4IiBpbmtzY2FwZTpsb2NrZWQ9ImZhbHNlIi8+PHNvZGlwb2RpOmd1aWRlIHBvc2l0aW9uPSIxOS44NDUxNjksMTE2LjQzOTYyIiBvcmll
bnRhdGlvbj0iMCwtMSIgaWQ9Imd1aWRlMTkiIGlua3NjYXBlOmxvY2tlZD0iZmFsc2UiLz48c29kaXBvZGk6Z3VpZGUgcG9zaXRpb249IjQ4LjA0MTUwNCw4My40NjU4MiIgb3JpZW50YXRpb249IjEsMCIgaWQ9Imd1aWRlMjAi
IGlua3NjYXBlOmxvY2tlZD0iZmFsc2UiLz48c29kaXBvZGk6Z3VpZGUgcG9zaXRpb249Ijc4LjI1LDQ3Ljc1IiBvcmllbnRhdGlvbj0iMCwtMSIgaWQ9Imd1aWRlMjEiIGlua3NjYXBlOmxvY2tlZD0iZmFsc2UiLz48c29kaXBv
ZGk6Z3VpZGUgcG9zaXRpb249IjUwLjM5NDQ1Nyw2NS4zMTY0NjgiIG9yaWVudGF0aW9uPSIwLC0xIiBpZD0iZ3VpZGUyOSIgaW5rc2NhcGU6bG9ja2VkPSJmYWxzZSIvPjxzb2RpcG9kaTpndWlkZSBwb3NpdGlvbj0iNjcuNjA1
MzQ3LDIxLjA2MDgzNyIgb3JpZW50YXRpb249IjAsLTEiIGlkPSJndWlkZTMwIiBpbmtzY2FwZTpsb2NrZWQ9ImZhbHNlIi8+PC9zb2RpcG9kaTpuYW1lZHZpZXc+PGxpbmVhckdyYWRpZW50IGlkPSI2ZlNPVVBhfkNQOHRjc0l4
X1d2dWZhIiB4MT0iMjIuMDExIiB4Mj0iMjYuMjEyIiB5MT0iNzg1Ljc5MTAyIiB5Mj0iNzg5Ljk5Mjk4IiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDAsLTc4MS43OCkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9u
VXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMzM2JlZjAiIGlkPSJzdG9wMyIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzBhODVkOSIgaWQ9InN0b3A0Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFy
R3JhZGllbnQgaWQ9IjZmU09VUGF+Q1A4dGNzSXhfV3Z1ZmIiIHgxPSI2LjAxMTAwMDIiIHgyPSIxMC4yMTMiIHkxPSI3OTQuNzkxMDIiIHkyPSI3OTguOTkyIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDAsLTc4MS43
OCkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMzM2JlZjAiIGlkPSJzdG9wNSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzBhODVkOSIgaWQ9InN0
b3A2Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9IjZmU09VUGF+Q1A4dGNzSXhfV3Z1ZmMiIHgxPSI2LjAxMTAwMDIiIHgyPSIxMC4yMTMiIHkxPSI4MTIuNzkxMDIiIHkyPSI4MTYuOTkyIiBncmFkaWVu
dFRyYW5zZm9ybT0idHJhbnNsYXRlKDAsLTc4MS43OCkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMzM2JlZjAiIGlkPSJzdG9wNyIvPjxzdG9wIG9mZnNldD0i
MSIgc3RvcC1jb2xvcj0iIzBhODVkOSIgaWQ9InN0b3A4Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9IjZmU09VUGF+Q1A4dGNzSXhfV3Z1ZmQiIHgxPSIzOC4wMTEwMDIiIHgyPSI0Mi4yMTIwMDIiIHkx
PSI3OTQuNzkxMDIiIHkyPSI3OTguOTkyIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDAsLTc4MS43OCkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMz
M2JlZjAiIGlkPSJzdG9wOSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzBhODVkOSIgaWQ9InN0b3AxMCIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSI2ZlNPVVBhfkNQOHRjc0l4X1d2dWZl
IiB4MT0iMzguMDExMDAyIiB4Mj0iNDIuMjEyMDAyIiB5MT0iODEyLjc5MTAyIiB5Mj0iODE2Ljk5MiIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgwLC03ODEuNzgpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVz
ZSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjMzNiZWYwIiBpZD0ic3RvcDExIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGE4NWQ5IiBpZD0ic3RvcDEyIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFy
R3JhZGllbnQgaWQ9IjZmU09VUGF+Q1A4dGNzSXhfV3Z1ZmYiIHgxPSIyMi4wMTEiIHgyPSIyNi4yMTIiIHkxPSI4MjEuNzkxMDIiIHkyPSI4MjUuOTkyIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDAsLTc4MS43OCki
IGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMzM2JlZjAiIGlkPSJzdG9wMTMiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwYTg1ZDkiIGlkPSJzdG9w
MTQiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iNmZTT1VQYX5DUDh0Y3NJeF9XdnVmZyIgeDE9IjIyLjM4OTk5OSIgeDI9IjI1LjUxIiB5MT0iMjcuODQxIiB5Mj0iMjAuMTg0IiBncmFkaWVudFRyYW5z
Zm9ybT0ibWF0cml4KDIuMjc1MDY0OSwwLDAsLTIuMjc1MDY0OSwtNi40NzA0OTc2LDcxLjA3ODY1OSkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMyYWE0ZjQi
IGlkPSJzdG9wMTUiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwMDdhZDkiIGlkPSJzdG9wMTYiLz48L2xpbmVhckdyYWRpZW50PjxjaXJjbGUgY3g9IjQ4LjEzMTA1IiBjeT0iMTYuNzI3MzU2IiBmaWxsPSJ1cmwo
IzZmU09VUGF+Q1A4dGNzSXhfV3Z1ZmcpIiBpZD0iY2lyY2xlMTYiIHN0eWxlPSJmaWxsOnVybCgjNmZTT1VQYX5DUDh0Y3NJeF9XdnVmZyk7c3Ryb2tlLXdpZHRoOjIuMjc1MDYiIHI9IjExLjM3NTMyNCIvPjxwYXRoIGZpbGw9
InVybCgjQXJ0RFlaMmxUNzV2a2FiUkVzVERFYSkiIGQ9Im0gNzYuODU2MTY0LDczLjcwNjQyNiB2IC0zLjQ3MTQxMyBjIDEwZS03LC0wLjY2ODU3NiAtMC41NDE1OTgsLTEuMjEwMTc1IC0xLjIxMDE3NSwtMS4yMTAxNzUgbCAt
MTAuMDI4MTIzLC0yLjIzNjM2MSAtNi42MzM0MTUsNi42MzM0MTYgYyAtMC41NTE5NjQsMC41NTE5NjQgLTAuMTYxMTg1LDEuNDk1MjI2IDAuNjE5MzQsMS40OTUyMjYgaCAxNi4wNDE2OCBjIDAuNjY4NTc3LDAgMS4yMTA2OTQs
LTAuNTQyMTE3IDEuMjEwNjkzLC0xLjIxMDY5MyB6IiBpZD0icGF0aDYtNyIgc3R5bGU9ImZpbGw6dXJsKCNsaW5lYXJHcmFkaWVudDI3KTtzdHJva2Utd2lkdGg6MC43MzI5NTMiLz48cGF0aCBmaWxsPSJ1cmwoI0FydERZWjJs
VDc1dmthYlJFc1RERWIpIiBkPSJtIDc2Ljg1NjE2NCw3My43MDY0MjYgdiAtMTYuMDQxNjggYyAwLC0wLjc4MDUyNSAtMC45NDMyNjIsLTEuMTcxMzA0IC0xLjQ5NTIyNiwtMC42MTkzNCBMIDY5Ljc2NDA3NCw2Mi42NDIyNjkg
NTEuNzk0MTk5LDQ1LjE3MjM5MyBjIC0wLjU4MDcxNywtMC41NjQ1NTkgLTEuODkzMDk3LDAuNjY1MTkgLTEuNzkxODU0LDEuNDY4NzUgbCAwLjcwMjg0Myw1LjU3ODQwNyBjIDAuMTAxMjQzLDAuODAzNTYgLTAuMTU5ODQyLDEu
MDg3NjMxIDAuNDA2MjUsMS42NjY4NTQgbCAyMC4yMDc0NjUsMjAuNjc2MjE0IGMgMC4yMTY3MDIsMC4yMjE3MjkgMC41MjEzODUsMC4zNTQ1MDEgMC44NTU2NzMsMC4zNTM5ODIgaCAzLjQ3MTQxMyBjIDAuNjY4MDU5LDUuMTll
LTQgMS4yMTAxNzYsLTAuNTQxNTk4IDEuMjEwMTc1LC0xLjIxMDE3NCB6IiBpZD0icGF0aDgtMyIgc3R5bGU9ImZpbGw6dXJsKCNsaW5lYXJHcmFkaWVudDI2KTtzdHJva2Utd2lkdGg6MC43MzI5NTMiIHNvZGlwb2RpOm5vZGV0
eXBlcz0iY3NzY3Nzc3NzY2NjIi8+PHBhdGggZmlsbD0idXJsKCNBcnREWVoybFQ3NXZrYWJSRXNUREVhKSIgZD0ibSAxOS4zMDc0MTgsNzMuNjYyMjMyIHYgLTMuNDcxNDEzIGMgLTEwZS03LC0wLjY2ODU3NiAwLjU0MTU5OCwt
MS4yMTAxNzUgMS4yMTAxNzUsLTEuMjEwMTc1IGwgMTAuMDI4MTIzLC0yLjIzNjM2MSA2LjYzMzQxNSw2LjYzMzQxNiBjIDAuNTUxOTY0LDAuNTUxOTY0IDAuMTYxMTg1LDEuNDk1MjI2IC0wLjYxOTM0LDEuNDk1MjI2IGggLTE2
LjA0MTY4IGMgLTAuNjY4NTc3LDAgLTEuMjEwNjk0LC0wLjU0MjExNyAtMS4yMTA2OTMsLTEuMjEwNjkzIHoiIGlkPSJwYXRoNi03LTgiIHN0eWxlPSJmaWxsOnVybCgjbGluZWFyR3JhZGllbnQyOCk7c3Ryb2tlLXdpZHRoOjAu
NzMyOTUzIiBzb2RpcG9kaTpub2RldHlwZXM9InNzY2Nzc3NzIi8+PHBhdGggZmlsbD0idXJsKCNBcnREWVoybFQ3NXZrYWJSRXNUREViKSIgZD0ibSAxOS4zMDc0MTgsNzMuNjYyMjMyIHYgLTE2LjA0MTY4IGMgMCwtMC43ODA1
MjUgMC45NDMyNjIsLTEuMTcxMzA0IDEuNDk1MjI2LC0wLjYxOTM0IGwgNS41OTY4NjQsNS41OTY4NjMgMTkuMjE5ODc1LC0xOS4wMzIzNzYgYyAwLjU3NTQ5NSwtMC41Njk4ODEgMC41MzQ1OTcsMS4yOTI0NDEgMC40MTY4NTQs
Mi4wOTM3NSBsIC0wLjk1Mjg0Myw2LjQ4NDY1NyBjIC0wLjExNzc0MywwLjgwMTMwOSAwLjUwNzA5OSwxLjQwMzU4IC0wLjA2MjUsMS45NzkzNTQgTCAyNC44NDQ2NzksNzQuNTE4NDI0IGMgLTAuMjE4MDQ1LDAuMjIwNDA5IC0w
LjUyMTM4NSwwLjM1NDUwMSAtMC44NTU2NzMsMC4zNTM5ODIgaCAtMy40NzE0MTMgYyAtMC42NjgwNTksNS4xOWUtNCAtMS4yMTAxNzYsLTAuNTQxNTk4IC0xLjIxMDE3NSwtMS4yMTAxNzQgeiIgaWQ9InBhdGg4LTMtNiIgc3R5
bGU9ImZpbGw6dXJsKCNsaW5lYXJHcmFkaWVudDI5KTtzdHJva2Utd2lkdGg6MC43MzI5NTMiIHNvZGlwb2RpOm5vZGV0eXBlcz0iY3NzY3Nzc3NzY2NjIi8+PHBhdGggZmlsbD0idXJsKCNBcnREWVoybFQ3NXZrYWJSRXNUREVh
KSIgZD0ibSA0OC45MDA4MDksOTMuNTE0NjA1IDIuNDU0NjYsLTIuNDU0NjYgYyAwLjQ3Mjc1NSwtMC40NzI3NTQgMC40NzI3NTUsLTEuMjM4NjkgMCwtMS43MTE0NDUgbCAtNS41MDk2MDgsLTguNjcyMyBoIC05LjM4MTA2NiBj
IC0wLjc4MDU5NSwwIC0xLjE3MTI1OSwwLjk0MzMxIC0wLjYxOTM0NSwxLjQ5NTIyNCBsIDExLjM0MzE4MSwxMS4zNDMxODEgYyAwLjQ3Mjc1NSwwLjQ3Mjc1NSAxLjIzOTQyNCwwLjQ3Mjc1NSAxLjcxMjE3OCwwIHoiIGlkPSJw
YXRoNi03LTQiIHN0eWxlPSJmaWxsOnVybCgjbGluZWFyR3JhZGllbnQyNCk7c3Ryb2tlLXdpZHRoOjAuNzMyOTUzIi8+PHBhdGggZmlsbD0idXJsKCNBcnREWVoybFQ3NXZrYWJSRXNUREViKSIgZD0iTSA0OC45MDA4MDksOTMu
NTE0NjA1IDYwLjI0Mzk5LDgyLjE3MTQyNCBDIDYwLjc5NTkwNCw4MS42MTk1MSA2MC40MDUyNCw4MC42NzYyIDU5LjYyNDY0NSw4MC42NzYyIGggLTcuOTE1MTYgbCAwLjAyMTE1LC01MC4xMDMwNTIgQyA1MS43MzA5NzcsMjku
NzYzMjM1IDUxLjI0MDExMiwyOS4zMDEzNjUgNTAuNDMwMiwyOS4zMDIyMyBsIC00LjM5NjgzOCwwLjAwNDcgYyAtMC44MDk5MTIsOC42NGUtNCAtMS42NDk0NDcsMC40NTI4NjkgLTEuNjQ5NSwxLjI2Mjc4MSBsIC0wLjAwMzks
NTkuNjM0ODg3IGMgLTJlLTUsMC4zMTAwMzkgMC4xMTgwMDUsMC42MTkzNDUgMC4zNTQ3NDksMC44NTUzNTYgbCAyLjQ1NDY2LDIuNDU0NjYgYyAwLjQ3MjAyMiwwLjQ3Mjc1NSAxLjIzODY5MSwwLjQ3Mjc1NSAxLjcxMTQ0NSww
IHoiIGlkPSJwYXRoOC0zLTUiIHN0eWxlPSJmaWxsOnVybCgjbGluZWFyR3JhZGllbnQyNSk7c3Ryb2tlLXdpZHRoOjAuNzMyOTUzIiBzb2RpcG9kaTpub2RldHlwZXM9InNzc2Nzc3Nzc2NjcyIvPjwvc3ZnPgo=</data><downloads_count>0</downloads_count></logo>
</NetworkDeviceType>
<NetworkDeviceType alias="NetworkDeviceType" id="10">
<name>Router</name>
<logo><mimetype>image/png</mimetype><filename>icons8-collect-96.png</filename><data>iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAACXBIWXMAAAsTAAALEwEAmpwYAAAFoklEQVR4nO1c
y27bRhQlcul8jLM0lZWCGl3FyKJB2yRrR/JLEh/9i6bpD7RetXZaoKvKjpM6ji1SEkUVyDJA06YpGjt7k6a0FKYYynEcVxJJkZyhyXuAAwgCgbn3HHKoGR1SEBAIBAKBSDlA694CtfsOtC6ZTOsIVGuBd72ZA1BhfcU/pWod8q43
cwDNImHIu97MAdAANCDXALwC0IBcA9QOCUPe9WYOgAagAbkG4BWABmQSoLYfgdIegGoSphyOuSHkHaCYh8zF/8C3Qt4hyp1PQDF77K8As0fH5t1/KiAqrSIobReUNmHDVh9q5qe8+06hCS0XlBZJls0+1AwUf6wJctMFuUmSoYHi
+18JjSLIhguyQeKljuIHno4qjSLUdBdqOomHDRSfnwkNFD+SCdUDF6oNMiX7UNvHG25kE9b2XagckJDswyqKHwvEyl4R1vZcqDwnAYnixw1xea8IK89cWN0jPuzD6i5OO4mZsPybCyu7ZAxR/KQhLj8pwtITF5afkgvsQ3kHz3xm
JpQfu7C0QzyWd/IrPqjWIxoFFL9ivLO4+OsslLe+o6SfWQ5Ne6U9g9rdFHgDVGtwmsfsgWrNCxkHqNa81+uw50EaUsvnk8l90LqZnQpExSqC1nXP95zCxFonkyaInviWm7oQ8OjIYLZMEMeIn2IDsmOCOEH8lBsQvwmzL8lVybDv
SYbzU0G3XxUMp+dRt1+dfneXHsNK/EtgQHwmSMbxFwXdeVMwHOLDvyX9+POo44la94af+OkwIFBizeyDNt2f4Hd+ISAZ9rcBhP+Yuv1QIOTKNGOKWvsGqB33UoSAg0cGpzNBmkb8U0qG/SBJ8RMxADTzFijmu7BZzED08j/BF2sS
nXamFP89rzdPbodaZHk1JtC7agZ7enN4YBIFhDNh9iW5SufzqAZIuvNPkBtzsuKf9e7/9GaiBYSYjiTDvhdV/LOrQLfvxDntRGEAA1jFA9sTTSjozs9xGSDpzuZk8U2XVd8pMmBogiA3R+5kSob9V1wG0HXCqDFmtNY170Rg2HPK
DDDpvPj9qDoKhuPGZoDhuCN7Vcx11v0GMKBNmFJpJW6ApDvOaANa66z79Tcg8XDsx0FZYdwUpNt/xncF2H+MnYJoWJdhzykyYHJK2dvbie8esME/lR3UgMSSyeFSygXdvhuXAXPN4y/5prI/0N+AqnEENYMkxqrRg2rDdyE294LM
FAzndfSz33kTaCFWbcx7tSXZe00PsBCr6QtQ1Y/iSyafY1UPJP570F3NyGe/cfKZEBBDE/ReIr3XGodQadwU4kbSQdmCbj+c+teP4XyddCBY4A2oHpAAnD6lTMiVgm5/E158+8HU29GeCftukN4E3mCVUr7ePLkd8J7wOsy0EzWV
LfAGy5Ty3AsyQzfW6N4O/W1/ulhz6Wf6Hf21Q49hmcoWeANWn5ExzERQVvRS2bvuuD551yfkIaUsTkhl865NyEtKWRyTyuZdl3CWUM5BSlm8mMpe2kmBAaXtAZS3CZS3elDazn44t7Q97/VKey5tpyCcW6pvQqn+r7i4xTSePqP9
fg3U7jol/cxybNor3K+/hVL9RyGPEL3Q1PmUcrZT2SkXv4smsBXfcrMeCE4lxIBZTTSBq/gWmsBffAtNiDWfr0ZJrE2fys49xMjiowkcz/wOmpAe8Ts4HfEXv4Mm+IvfKrJJKU9OZecSIjPx0YT/iy/jq4u5AuT2IbtXFl+g3MaX
d4Pc2gC5OWCbym7RnOYA5OYPfE+/SwSIOwSLCGtAuFcVo74xA0KGYdGAuA2ohntrLhrAJwRMUhOazRqgsk/CkHe9mQOs7ZEw5F1v5gCruyQMedebOcDKUxKGvOvNHOB8BjUAedebOUBp62iYQQ1E/6cRESENWNxagPv1IyjViQ8PoVSP/2lEBAKBQCCEePEfD3q/JRB0b7YAAAAASUVORK5CYII=</data><downloads_count>0</downloads_count></logo>
</NetworkDeviceType>
<NetworkDeviceType alias="NetworkDeviceType" id="4">
<name>Router 4G</name>
<logo><mimetype>image/svg+xml</mimetype><filename>icons8-router-4g.svg</filename><data>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sb
nM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiIHhtbG5zOnNvZGlwb2RpPSJodHRwOi8vc29kaXBvZGkuc291cmNlZm9yZ2UubmV0L0RURC9zb2RpcG9kaS0wLmR0ZCIgeG1sb
nM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgOTYgOTYiIHdpZHRoPSI5NiIgaGVpZ2h0PSI5NiIgdmVyc2lvbj0iMS4xIiBpZ
D0ic3ZnMjUiIHNvZGlwb2RpOmRvY25hbWU9Imljb25zOC1yb3V0ZXItNGcuc3ZnIiBpbmtzY2FwZTp2ZXJzaW9uPSIxLjQuMyAoMGQxNWY3NTA0MiwgMjAyNS0xMi0yNSkiPjxkZWZzIGlkPSJkZWZzMjUiPjxsaW5lYXJHcmFka
WVudCBpZD0iZXd3NmZTSFhMRzNoNFllQXFnOXVfYSIgeDE9IjE3LjU5IiB4Mj0iMzIuMDciIHkxPSIyNS45MzQ5OTkiIHkyPSI0OC4yMzA5OTkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZ
m9ybT0ibWF0cml4KDEuMTYxODcxNywwLDAsMS4xNjE4NzE3LDIwLjUwNzI1NCwyLjE5MTYwNDkpIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM4NTkyOWUiIGlkPSJzdG9wMS0zIi8+PHN0b3Agb2Zmc2V0PSIxIiBzd
G9wLWNvbG9yPSIjNmQ3ODgyIiBpZD0ic3RvcDItNiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxzb2RpcG9kaTpuYW1lZHZpZXcgaWQ9Im5hbWVkdmlldzI1IiBwYWdlY29sb3I9IiNmZmZmZmYiIGJvcmRlcmNvbG9yPSIjM
DAwMDAwIiBib3JkZXJvcGFjaXR5PSIwLjI1IiBpbmtzY2FwZTpzaG93cGFnZXNoYWRvdz0iMiIgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAuMCIgaW5rc2NhcGU6cGFnZWNoZWNrZXJib2FyZD0iMCIgaW5rc2NhcGU6ZGVza2Nvb
G9yPSIjZDFkMWQxIiBpbmtzY2FwZTp6b29tPSI4LjEwMjI2NTIiIGlua3NjYXBlOmN4PSIyMS40MTM3NjUiIGlua3NjYXBlOmN5PSIzNy4zOTY5NDkiIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMjU2MCIgaW5rc2NhcGU6d2luZ
G93LWhlaWdodD0iMTM2MCIgaW5rc2NhcGU6d2luZG93LXg9IjAiIGlua3NjYXBlOndpbmRvdy15PSIwIiBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIxIiBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJzdmcyNSIgc2hvd2d1a
WRlcz0idHJ1ZSI+PHNvZGlwb2RpOmd1aWRlIHBvc2l0aW9uPSI5LjgxNzg1NjIsMzAuMTQwNzE4IiBvcmllbnRhdGlvbj0iMSwwIiBpZD0iZ3VpZGUxIiBpbmtzY2FwZTpsb2NrZWQ9ImZhbHNlIi8+PHNvZGlwb2RpOmd1aWRlI
HBvc2l0aW9uPSI4Ni40NzA4MDIsMzguMTgxOTY4IiBvcmllbnRhdGlvbj0iMSwwIiBpZD0iZ3VpZGUyIiBpbmtzY2FwZTpsb2NrZWQ9ImZhbHNlIi8+PHNvZGlwb2RpOmd1aWRlIHBvc2l0aW9uPSI0Ni4yNTg2MzYsOS40ODEwM
jMyIiBvcmllbnRhdGlvbj0iMCwtMSIgaWQ9Imd1aWRlMyIgaW5rc2NhcGU6bG9ja2VkPSJmYWxzZSIvPjxzb2RpcG9kaTpndWlkZSBwb3NpdGlvbj0iNTMuNjQxNDQyLDEwMS4yOTgiIG9yaWVudGF0aW9uPSIwLC0xIiBpZD0iZ
3VpZGU0IiBpbmtzY2FwZTpsb2NrZWQ9ImZhbHNlIi8+PC9zb2RpcG9kaTpuYW1lZHZpZXc+PGxpbmVhckdyYWRpZW50IGlkPSJzUXk3T3ZQWEgwdDJtS2ZxazdYdVhhIiB4MT0iMzQuMTE3MDAxIiB4Mj0iMzMuOTA5IiB5MT0iM
zAuNDUxIiB5Mj0iMTEuODI2IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDIuMDE1MTEyMSwwLDAsLTIuMDE1MTEyMSwtMC4yODI4MzI5NSw5OC4xNzI2OTQpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b
3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjNzM3YjgwIiBpZD0ic3RvcDEiLz48c3RvcCBvZmZzZXQ9Ii43MTQiIHN0b3AtY29sb3I9IiM3MzdiODAiIGlkPSJzdG9wMiIvPjxzdG9wIG9mZnNldD0iLjc1NiIgc3RvcC1jb2xvc
j0iIzczN2I4MCIgaWQ9InN0b3AzIi8+PHN0b3Agb2Zmc2V0PSIuODYzIiBzdG9wLWNvbG9yPSIjNjU2YzcxIiBpZD0ic3RvcDQiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM1NzVjNjEiIGlkPSJzdG9wNSIvPjwvb
GluZWFyR3JhZGllbnQ+PHBhdGggZmlsbD0idXJsKCNzUXk3T3ZQWEgwdDJtS2ZxazdYdVhhKSIgZD0ibSA2Mi4xODU2NDEsODAuMjU4MzQ4IGMgLTAuMTkxNDM1LDAgLTAuMzg2OTAyLC0wLjAyODIxIC0wLjU4MDM1MiwtMC4wO
DQ2MyAtMS4wNjU5OTMsLTAuMzIwNCAtMS42NzI1NDMsLTEuNDQyODIgLTEuMzUyMTQsLTIuNTA4ODE3IEwgNzIuMzQzODIzLDM3LjM2MjY1OSBjIDAuMzIwNDA0LC0xLjA2NTk5NCAxLjQ0NDgzNCwtMS42NzI1NDMgMi41MDg4M
TUsLTEuMzUyMTQgMS4wNjU5OSwwLjMyMDQwMiAxLjY3MjUzOSwxLjQ0MjgyMSAxLjM1MjE0MSwyLjUwODgxNCBMIDY0LjExNDEwNCw3OC44MjE1NzggYyAtMC4yNTk5NSwwLjg3NDU1NSAtMS4wNTk5NSwxLjQzNjc3IC0xLjkyO
DQ2MywxLjQzNjc3IHoiIGlkPSJwYXRoNSIgc3R5bGU9ImZpbGw6dXJsKCNzUXk3T3ZQWEgwdDJtS2ZxazdYdVhhKTtzdHJva2Utd2lkdGg6Mi4wMTUxMSIvPjxsaW5lYXJHcmFkaWVudCBpZD0ic1F5N092UFhIMHQybUtmcWs3W
HVYYiIgeDE9IjE0LjEyMSIgeDI9IjEzLjkxMyIgeTE9IjMwLjcxOSIgeTI9IjEyLjA5NCIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgyLjAxNTExMjEsMCwwLC0yLjAxNTExMjEsLTAuMjgyODMyOTUsOTguMTcyNjk0KSIgZ
3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iIzczN2I4MCIgaWQ9InN0b3A2Ii8+PHN0b3Agb2Zmc2V0PSIuNzczIiBzdG9wLWNvbG9yPSIjNzM3YjgwIiBpZD0ic3Rvc
DciLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM1NzVjNjEiIGlkPSJzdG9wOCIvPjwvbGluZWFyR3JhZGllbnQ+PHBhdGggZmlsbD0idXJsKCNzUXk3T3ZQWEgwdDJtS2ZxazdYdVhiKSIgZD0ibSAzMy45NzQwNzEsO
DAuMjU4MzQ4IGMgLTAuODY2NDk3LDAgLTEuNjY2NDk4LC0wLjU2NDIzMSAtMS45MzA0NzUsLTEuNDM2NzcgTCAxOS45NTI5MjIsMzguNTE5MzMzIGMgLTAuMzIwNDA0LC0xLjA2NTk5MyAwLjI4NjE0NiwtMi4xODg0MTIgMS4zN
TIxNDEsLTIuNTA4ODE0IDEuMDYzOTc5LC0wLjMxNDM1NyAyLjE4ODQxMSwwLjI4NjE0NiAyLjUwODgxNSwxLjM1MjE0IGwgMTIuMDkwNjcxLDQwLjMwMjIzOSBjIDAuMzIwNDAyLDEuMDY1OTk2IC0wLjI4NjE0NiwyLjE4ODQxN
yAtMS4zNTIxMzksMi41MDg4MTUgLTAuMTkzNDUyLDAuMDU2NDMgLTAuMzg2OTAyLDAuMDg0NjMgLTAuNTc4MzM5LDAuMDg0NjMgeiIgaWQ9InBhdGg4IiBzdHlsZT0iZmlsbDp1cmwoI3NReTdPdlBYSDB0Mm1LZnFrN1h1WGIpO
3N0cm9rZS13aWR0aDoyLjAxNTExIi8+PGxpbmVhckdyYWRpZW50IGlkPSJzUXk3T3ZQWEgwdDJtS2ZxazdYdVhjIiB4MT0iMjQiIHgyPSIyNCIgeTE9IjE0LjYxNCIgeTI9Ii0yLjA3MTAwMDEiIGdyYWRpZW50VHJhbnNmb3JtP
SJtYXRyaXgoMi4wMTUxMTIxLDAsMCwtMi4wMTUxMTIxLC0wLjI4MjgzMjk1LDk4LjE3MjY5NCkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM4OTkxOTgiIGlkP
SJzdG9wOSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzc4N2U4NSIgaWQ9InN0b3AxMCIvPjwvbGluZWFyR3JhZGllbnQ+PHBhdGggZmlsbD0idXJsKCNzUXk3T3ZQWEgwdDJtS2ZxazdYdVhjKSIgZD0iTSA4Mi4zM
zY3NjUsODYuMzAzNjg5IEggMTMuODIyOTUxIGMgLTIuMjI2Njk4LDAgLTQuMDMwMjIzNywtMS44MDM1MzEgLTQuMDMwMjIzNywtNC4wMzAyMjcgViA2OC4xNjc2NzggYyAwLC0yLjIyNjY5OSAxLjgwMzUyNTcsLTQuMDMwMjI1I
DQuMDMwMjIzNywtNC4wMzAyMjUgaCA2OC41MTM4MTQgYyAyLjIyNjY5NiwwIDQuMDMwMjIxLDEuODAzNTI2IDQuMDMwMjIxLDQuMDMwMjI1IHYgMTQuMTA1Nzg0IGMgMCwyLjIyNjY5NiAtMS44MDM1MjUsNC4wMzAyMjcgLTQuM
DMwMjIxLDQuMDMwMjI3IHoiIGlkPSJwYXRoMTAiIHN0eWxlPSJmaWxsOnVybCgjc1F5N092UFhIMHQybUtmcWs3WHVYYyk7c3Ryb2tlLXdpZHRoOjIuMDE1MTEiLz48cmVjdCB3aWR0aD0iNjguNTEzODA5IiBoZWlnaHQ9IjE0L
jEwNTc4NSIgeD0iMTMuODIyOTUyIiB5PSI2OC4xNjc2NzEiIGZpbGw9IiM3MzdiODAiIGlkPSJyZWN0MTAiIHN0eWxlPSJzdHJva2Utd2lkdGg6Mi4wMTUxMSIvPjxyYWRpYWxHcmFkaWVudCBpZD0ic1F5N092UFhIMHQybUtmc
Ws3WHVYZCIgY3g9IjM2LjUiIGN5PSIxMS4zOSIgcj0iMi41IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDIuMDE1MTEyMSwwLDAsLTIuMDE1MTEyMSwtMC4yODI4MzI5NSw5OC4xNzI2OTQpIiBncmFkaWVudFVuaXRzPSJ1c
2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIuNTgyIiBzdG9wLW9wYWNpdHk9Ii4yIiBpZD0ic3RvcDExIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLW9wYWNpdHk9IjAiIGlkPSJzdG9wMTIiLz48L3JhZGlhbEdyYWRpZW50P
jxjaXJjbGUgY3g9IjczLjI2ODc1MyIgY3k9Ijc1LjIyMDU3MyIgZmlsbD0idXJsKCNzUXk3T3ZQWEgwdDJtS2ZxazdYdVhkKSIgaWQ9ImNpcmNsZTEyIiBzdHlsZT0iZmlsbDp1cmwoI3NReTdPdlBYSDB0Mm1LZnFrN1h1WGQpO
3N0cm9rZS13aWR0aDoyLjAxNTExIiByPSI1LjAzNzc4MDMiLz48cmFkaWFsR3JhZGllbnQgaWQ9InNReTdPdlBYSDB0Mm1LZnFrN1h1WGUiIGN4PSIzMC41IiBjeT0iMTEuMzkiIHI9IjIuNSIgZ3JhZGllbnRUcmFuc2Zvcm09I
m1hdHJpeCgyLjAxNTExMjEsMCwwLC0yLjAxNTExMjEsLTAuMjgyODMyOTUsOTguMTcyNjk0KSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iLjU4MiIgc3RvcC1vcGFjaXR5PSIuMiIgaWQ9I
nN0b3AxMyIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1vcGFjaXR5PSIwIiBpZD0ic3RvcDE0Ii8+PC9yYWRpYWxHcmFkaWVudD48Y2lyY2xlIGN4PSI2MS4xNzgwODIiIGN5PSI3NS4yMjA1NzMiIGZpbGw9InVybCgjc1F5N092U
FhIMHQybUtmcWs3WHVYZSkiIGlkPSJjaXJjbGUxNCIgc3R5bGU9ImZpbGw6dXJsKCNzUXk3T3ZQWEgwdDJtS2ZxazdYdVhlKTtzdHJva2Utd2lkdGg6Mi4wMTUxMSIgcj0iNS4wMzc3ODAzIi8+PHJhZGlhbEdyYWRpZW50IGlkP
SJzUXk3T3ZQWEgwdDJtS2ZxazdYdVhmIiBjeD0iMjQuNSIgY3k9IjExLjM5IiByPSIyLjUiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMi4wMTUxMTIxLDAsMCwtMi4wMTUxMTIxLC0wLjI4MjgzMjk1LDk4LjE3MjY5NCkiI
GdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii41ODIiIHN0b3Atb3BhY2l0eT0iLjIiIGlkPSJzdG9wMTUiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3Atb3BhY2l0eT0iMCIgaWQ9InN0b3AxNiIvP
jwvcmFkaWFsR3JhZGllbnQ+PGNpcmNsZSBjeD0iNDkuMDg3NDE0IiBjeT0iNzUuMjIwNTczIiBmaWxsPSJ1cmwoI3NReTdPdlBYSDB0Mm1LZnFrN1h1WGYpIiBpZD0iY2lyY2xlMTYiIHN0eWxlPSJmaWxsOnVybCgjc1F5N092U
FhIMHQybUtmcWs3WHVYZik7c3Ryb2tlLXdpZHRoOjIuMDE1MTEiIHI9IjUuMDM3NzgwMyIvPjxyYWRpYWxHcmFkaWVudCBpZD0ic1F5N092UFhIMHQybUtmcWs3WHVYZyIgY3g9IjExLjUiIGN5PSIxMS4zOSIgcj0iMi41IiBnc
mFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDIuMDE1MTEyMSwwLDAsLTIuMDE1MTEyMSwtMC4yODI4MzI5NSw5OC4xNzI2OTQpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIuNTgyIiBzdG9wL
W9wYWNpdHk9Ii4yIiBpZD0ic3RvcDE3Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLW9wYWNpdHk9IjAiIGlkPSJzdG9wMTgiLz48L3JhZGlhbEdyYWRpZW50PjxjaXJjbGUgY3g9IjIyLjg5MDk1OSIgY3k9Ijc1LjIyMDU3MyIgZ
mlsbD0idXJsKCNzUXk3T3ZQWEgwdDJtS2ZxazdYdVhnKSIgaWQ9ImNpcmNsZTE4IiBzdHlsZT0iZmlsbDp1cmwoI3NReTdPdlBYSDB0Mm1LZnFrN1h1WGcpO3N0cm9rZS13aWR0aDoyLjAxNTExIiByPSI1LjAzNzc4MDMiLz48Y
2lyY2xlIGN4PSI3My4yNjg3NTMiIGN5PSI3NS4yMjA1NzMiIGZpbGw9IiM1MGU2ZmYiIGlkPSJjaXJjbGUxOSIgc3R5bGU9InN0cm9rZS13aWR0aDoyLjAxNTExIiByPSIzLjAyMjY2ODQiLz48Y2lyY2xlIGN4PSI2MS4xNzgwO
DIiIGN5PSI3NS4yMjA1NzMiIGZpbGw9IiM1MGU2ZmYiIGlkPSJjaXJjbGUyMCIgc3R5bGU9InN0cm9rZS13aWR0aDoyLjAxNTExIiByPSIzLjAyMjY2ODQiLz48Y2lyY2xlIGN4PSI0OS4wODc0MTQiIGN5PSI3NS4yMjA1NzMiI
GZpbGw9IiM1MGU2ZmYiIGlkPSJjaXJjbGUyMSIgc3R5bGU9InN0cm9rZS13aWR0aDoyLjAxNTExIiByPSIzLjAyMjY2ODQiLz48Y2lyY2xlIGN4PSIyMi44OTA5NTkiIGN5PSI3NS4yMjA1NzMiIGZpbGw9IiM1MGU2ZmYiIGlkP
SJjaXJjbGUyMiIgc3R5bGU9InN0cm9rZS13aWR0aDoyLjAxNTExIiByPSIzLjAyMjY2ODQiLz48cGF0aCBmaWxsPSJ1cmwoI2V3dzZmU0hYTEczaDRZZUFxZzl1X2EpIiBkPSJtIDQzLjExMTQ2NywzMy42NzAxOTcgdiAxMy4wN
zgwMjYgaCAyLjQ4ODcyOSB2IDMuNDE0NzQxIGggLTIuNDg4NzI5IHYgNC4yNTI0NTEgSCAzOC45NDQ5OTQgViA1MC4xNjI5NjQgSCAyOS45MDMzMSB2IC0zLjU3MzkxNyBjIDAuODAwNTI5LC0wLjg5NTgwNSAxLjYzMDEwNSwtM
S44Nzc1ODQgMi40ODg3MjcsLTIuOTQzMDIxIDAuODU4NjI0LC0xLjA2NTQzNiAxLjY4ODIwMSwtMi4xNjIyNDMgMi40ODg3MzEsLTMuMjkxNTgyIDAuODAwNTMsLTEuMTI5MzM5IDEuNTQ1Mjg4LC0yLjI2MzMyNiAyLjIzNTQ0L
C0zLjQwNzc3IDAuNjkwMTUyLC0xLjE0MjEyIDEuMjc1NzM2LC0yLjIzNTQ0MSAxLjc1NzkxMywtMy4yNzY0NzcgeiBtIC05LjExMzcyMiwxMy4wNzgwMjYgaCA0Ljk0NzI0OSBWIDM5LjUwMTYzIGMgLTAuMzM4MTA1LDAuNjI2M
jQ4IC0wLjcwNDA5MywxLjI2MDYzIC0xLjA5OTEzLDEuOTAxOTg0IC0wLjM5NjE5OCwwLjY0MjUxNCAtMC44MDk4MjYsMS4yNzM0MTIgLTEuMjQ0MzY0LDEuODk2MTc0IC0wLjQzMzM3NywwLjYyMTYwMiAtMC44NzI1NjYsMS4yM
jQ2MTQgLTEuMzE2NDAxLDEuODA3ODcxIC0wLjQ0MzgzNSwwLjU4MjEgLTAuODcyNTY1LDEuMTI5MzQgLTEuMjg3MzU0LDEuNjQwNTY0IHogbSAzMS43ODMwMDEsNi4yNzg3NTQgYyAtMi4wMjUxNDIsMS4xNjc2ODIgLTQuNTQyO
TE5LDEuNzUwOTQzIC03LjU1MjE2NiwxLjc1MDk0MyAtMy4zMzY4OTUsMCAtNS45NjczNzQsLTAuOTIzNjg4IC03Ljg5MTQzMywtMi43NzEwNjQgLTEuOTI0MDU5LC0xLjg0NjIxNyAtMi44ODQ5MjcsLTQuMzg5NTUzIC0yLjg4N
DkyNywtNy42MzAwMTMgMCwtMy4yNjAyMTIgMS4wNTAzMzIsLTUuOTE3NDEzIDMuMTUzMzIsLTcuOTcxNjAyIDIuMTAyOTg3LC0yLjA1NDE4OSA0Ljg5OTYxMiwtMy4wODEyODMgOC4zOTEwMzcsLTMuMDgxMjgzIDIuMTk5NDIzL
DAgNC4xMzc0MjQsMC4zMDQ0MTEgNS44MTYzMjksMC45MTIwNyB2IDQuMzgyNTggYyAtMS42MDIyMTksLTAuOTI2MDEzIC0zLjU1ODgxMiwtMS4zODg0MzkgLTUuODc0NDIyLC0xLjM4ODQzOSAtMS45MzkxNjUsMCAtMy41MTY5O
DQsMC42Mjk3MzYgLTQuNzM4MTE0LDEuODg4MDQ0IC0xLjIxOTk2NCwxLjI1ODMwNiAtMS44Mjk5NDcsMi45MzgzNzEgLTEuODI5OTQ3LDUuMDQxMzYgMCwyLjEzMjAzNiAwLjU0ODQwNCwzLjc4MDczIDEuNjQyODg3LDQuOTQ4N
DEzIDEuMDkzMzIxLDEuMTY2NTE4IDIuNTcyMzg0LDEuNzUwOTM4IDQuNDMzNzAyLDEuNzUwOTM4IDEuMTE3NzIsMCAyLjAwNTM5MiwtMC4xNjAzNDEgMi42NjE4NDgsLTAuNDc3NTI5IHYgLTQuMDUwMjgzIGggLTQuMTUzNjkyI
HYgLTMuNzMzMDk1IGggOC44MjU1NzggeiIgaWQ9InBhdGgyIiBzdHlsZT0iZmlsbDp1cmwoI2V3dzZmU0hYTEczaDRZZUFxZzl1X2EpO3N0cm9rZS13aWR0aDoxLjE2MTg3Ii8+PHBhdGggZmlsbD0iIzUwZTZmZiIgZD0ibSA1N
y4yNTcyNTUsMjYuODQ2NTIzIC03LjY0MDQ2OCw0Ljc5MDM5NiBjIC0wLjc1NTIxOSwwLjQ3NDA0MyAtMS43MTYwODYsMC40NzI4ODMgLTIuNDcxMzAyLC0wLjAwMTIgbCAtNy42MTgzOTMsLTQuNzg5MjM3IGMgMS45MDU0NywtM
y4wMjA4NjYgNS4yOTgxMzUsLTQuOTAzMDk4IDguODY1MDgxLC00LjkwMzA5OCAzLjU2Njk0NywwIDYuOTU5NjEzLDEuODgyMjMyIDguODY1MDgyLDQuOTAzMDk4IHoiIGlkPSJwYXRoMyIgc3R5bGU9InN0cm9rZS13aWR0aDoxL
jE2MTg3Ii8+PHBhdGggZmlsbD0iIzE5OWJlMiIgZD0ibSA2Ny4wOTk0NywyMC42ODI3OTIgLTYuODg5ODk3LDQuMzIxMDAyIGMgLTUuNTY2NTI4LC04LjgxNjI4NCAtMTguMjU1MzMsLTguNDg1MTQ4IC0yMy42MzQ3OTgsMCBsI
C0zLjkzNzU4MSwtMi40Njg5NzcgLTIuOTUzNDc5LC0xLjg1MjAyNSB2IC0wLjAwMTIgQyAzOC4zMTUyNiw2Ljk0MzU5MDEgNTguNDI5NTg0LDYuODk3MTE1NCA2Ny4wOTk0NywyMC42ODI3OTIgWiIgaWQ9InBhdGg0IiBzdHlsZ
T0ic3Ryb2tlLXdpZHRoOjEuMTYxODciLz48cGF0aCBmaWxsPSIjMDA3OGQ0IiBkPSJtIDcwLjIxNzkzNSwxNi45ODY4NzkgYyAwLjQ3MDU1NywwLjY2MzQzIDAuMzA2NzMzLDEuNTgyNDcgLTAuMzgyMjU2LDIuMDEzNTI1IGwgL
TMuNzA2MzcxLDIuMzIxNDE4IHYgLTAuMDAxMiBjIC04LjAzMzE4MiwtMTIuNzgxNzQ5NyAtMjcuMDYzNDc5LC0xMy4zNTMzOTA1IC0zNS40NzA3ODIsMCB2IDAuMDAxMiBMIDI2Ljk1MjE1NSwxOS4wMDA0MDQgQyAyNi4yNjMxN
jUsMTguNTY5MzQ5IDI2LjA5OTM0MywxNy42NTAzMDkgMjYuNTY4NzM5LDE2Ljk4Njg3OSAzMS41MzkyMjQsOS45NzQ5ODM1IDM5Ljc2NzYsNS42NzcyMiA0OC4zOTIxNzMsNS42NzcyMiBjIDguNjI0NTc2LDAgMTYuODUyOTUsN
C4yOTc3NjM1IDIxLjgyNTc2MiwxMS4zMDk2NTkgeiIgaWQ9InBhdGg1LTciIHN0eWxlPSJzdHJva2Utd2lkdGg6MS4xNjE4NyIvPjxwYXRoIGZpbGw9IiMzNWMxZjEiIGQ9Im0gNjEuMTkzNjc3LDI0LjM4Njg0MSAtNC45MjE2O
DksMy4wODU5MyBjIC0zLjc1MDUyMSwtNS45MTc0MTMgLTEyLjE3NTI1NSwtNS42MjQ2MjEgLTE1Ljc1OTYyOSwwIGwgLTQuOTIxNjg3LC0zLjA4NTkzIDAuMDAyNCwtMC4wMDM0IGMgNS44MTA1MjEsLTkuMjExMzIgMTkuNTMxMDY0LC05LjU2OTE3NiAyNS41OTYwMzQsLTAuMDAzNCB6IiBpZD0icGF0aDYiIHN0eWxlPSJzdHJva2Utd2lkdGg6MS4xNjE4NyIvPjwvc3ZnPgo=</data><downloads_count>0</downloads_count></logo>
</NetworkDeviceType>
<NetworkDeviceType alias="NetworkDeviceType" id="11">
<name>Switch</name>
<logo><mimetype>image/svg+xml</mimetype><filename>icons8-switch.svg</filename><data>PD94bWwgdmVyc2lvbj0iMS4wIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3
Qm94PSIwIDAgNDggNDgiIHdpZHRoPSIyNDBweCIgaGVpZ2h0PSIyNDBweCI+PGxpbmVhckdyYWRpZW50IGlkPSJGcnRMVXlMNHo1VUU5blBZQV9HelFhIiB4MT0iMTEuMjM1IiB4Mj0iNDIuNzIxIiB5MT0iNDEuMjk3IiB5Mj0i
LTEuNjM5IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIC0xIDAgNDcuODkpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjMjFhZDY0Ii8+PHN0b3Ag
b2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDg4MjQyIi8+PC9saW5lYXJHcmFkaWVudD48cGF0aCBmaWxsPSJ1cmwoI0ZydExVeUw0ejVVRTluUFlBX0d6UWEpIiBkPSJNMzgsNDJIMTBjLTIuMiwwLTQtMS44LTQtNFYxMGMwLTIu
MiwxLjgtNCw0LTRoMjhjMi4yLDAsNCwxLjgsNCw0djI4QzQyLDQwLjIsNDAuMiw0MiwzOCw0MnoiLz48cGF0aCBkPSJNMTQuOTMsMjZjLTAuNDE5LDAtMC44MTUtMC4xNjItMS4xMTctMC40NTVMOS42MzIsMjEuNDkgQzkuMjI1
LDIxLjA5Myw5LDIwLjU2NCw5LDIwczAuMjI1LTEuMDkzLDAuNjMyLTEuNDg5bDQuMTgxLTQuMDU3QzE0LjExNSwxNC4xNjEsMTQuNTEyLDE0LDE0LjkzLDE0YzAuODg1LDAsMS42MDQsMC43MSwxLjYwNCwxLjU4MyBWMTdoNC43
MTZjMC45NjUsMCwxLjc1LDAuNzc1LDEuNzUsMS43Mjh2Mi41NDVDMjMsMjIuMjI1LDIyLjIxNSwyMywyMS4yNSwyM2gtNC43MTZ2MS40MTdjMCwwLjQ0OS0wLjE4MywwLjg2Mi0wLjUxNSwxLjE2NCBDMTUuNzIxLDI1Ljg1MSwx
NS4zMzQsMjYsMTQuOTMsMjZ6IiBvcGFjaXR5PSIuMDUiLz48cGF0aCBkPSJNMTQuOTMsMjUuNWMtMC4yODcsMC0wLjU2MS0wLjExMS0wLjc2OS0wLjMxM0w5Ljk4LDIxLjEzMSBDOS42NzEsMjAuODMsOS41LDIwLjQyOCw5LjUs
MjBzMC4xNzEtMC44MywwLjQ4LTEuMTNsNC4xODEtNC4wNTdjMC4yMDgtMC4yMDIsMC40ODEtMC4zMTMsMC43NjktMC4zMTMgYzAuNjA5LDAsMS4xMDQsMC40ODYsMS4xMDQsMS4wODNWMTcuNWg1LjIxNmMwLjY4OSwwLDEuMjUs
MC41NTEsMS4yNSwxLjIyOHYyLjU0NWMwLDAuNjc3LTAuNTYxLDEuMjI4LTEuMjUsMS4yMjhoLTUuMjE2djEuOTE3IGMwLDAuMzA3LTAuMTI1LDAuNTg5LTAuMzUxLDAuNzk0QzE1LjQ3OCwyNS4zOTcsMTUuMjEsMjUuNSwxNC45
MywyNS41TDE0LjkzLDI1LjV6IiBvcGFjaXR5PSIuMDciLz48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTUuNTM0LDI0LjQxN1YyMmg1LjcxNmMwLjQxNCwwLDAuNzUtMC4zMjYsMC43NS0wLjcyOHYtMi41NDRDMjIsMTguMzI2LDIx
LjY2NCwxOCwyMS4yNSwxOGgtNS43MTYgdi0yLjQxN2MwLTAuNTE5LTAuNjQ2LTAuNzc4LTEuMDI0LTAuNDEybC00LjE4LDQuMDU2Yy0wLjQzOSwwLjQyNi0wLjQzOSwxLjExOCwwLDEuNTQ0bDQuMTgsNC4wNTYgQzE0Ljg4OCwy
NS4xOTUsMTUuNTM0LDI0LjkzNSwxNS41MzQsMjQuNDE3eiIvPjxwYXRoIGQ9Ik0xNC45MywzOWMtMC40MTksMC0wLjgxNS0wLjE2Mi0xLjExNy0wLjQ1NUw5LjYzMiwzNC40OSBDOS4yMjUsMzQuMDkzLDksMzMuNTY0LDksMzNz
MC4yMjUtMS4wOTMsMC42MzItMS40ODlsNC4xODEtNC4wNTdDMTQuMTE1LDI3LjE2MSwxNC41MTIsMjcsMTQuOTMsMjdjMC44ODUsMCwxLjYwNCwwLjcxLDEuNjA0LDEuNTgzIFYzMGg0LjcxNmMwLjk2NSwwLDEuNzUsMC43NzUs
MS43NSwxLjcyOHYyLjU0NUMyMywzNS4yMjUsMjIuMjE1LDM2LDIxLjI1LDM2aC00LjcxNnYxLjQxN2MwLDAuNDQ5LTAuMTgzLDAuODYyLTAuNTE1LDEuMTY0IEMxNS43MjEsMzguODUxLDE1LjMzNCwzOSwxNC45MywzOXoiIG9w
YWNpdHk9Ii4wNSIvPjxwYXRoIGQ9Ik0xNC45MywzOC41Yy0wLjI4NywwLTAuNTYxLTAuMTExLTAuNzY5LTAuMzEzTDkuOTgsMzQuMTMxIEM5LjY3MSwzMy44Myw5LjUsMzMuNDI4LDkuNSwzM3MwLjE3MS0wLjgzLDAuNDgtMS4x
M2w0LjE4MS00LjA1N2MwLjIwOC0wLjIwMiwwLjQ4MS0wLjMxMywwLjc2OS0wLjMxMyBjMC42MDksMCwxLjEwNCwwLjQ4NiwxLjEwNCwxLjA4M1YzMC41aDUuMjE2YzAuNjg5LDAsMS4yNSwwLjU1MSwxLjI1LDEuMjI4djIuNTQ1
YzAsMC42NzctMC41NjEsMS4yMjgtMS4yNSwxLjIyOGgtNS4yMTZ2MS45MTcgYzAsMC4zMDctMC4xMjUsMC41ODktMC4zNTEsMC43OTRDMTUuNDc4LDM4LjM5NywxNS4yMSwzOC41LDE0LjkzLDM4LjVMMTQuOTMsMzguNXoiIG9w
YWNpdHk9Ii4wNyIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xNS41MzQsMzcuNDE3VjM1aDUuNzE2YzAuNDE0LDAsMC43NS0wLjMyNiwwLjc1LTAuNzI4di0yLjU0NEMyMiwzMS4zMjYsMjEuNjY0LDMxLDIxLjI1LDMxaC01Ljcx
NiB2LTIuNDE3YzAtMC41MTktMC42NDYtMC43NzgtMS4wMjQtMC40MTJsLTQuMTgsNC4wNTZjLTAuNDM5LDAuNDI2LTAuNDM5LDEuMTE4LDAsMS41NDRsNC4xOCw0LjA1NiBDMTQuODg4LDM4LjE5NSwxNS41MzQsMzcuOTM1LDE1
LjUzNCwzNy40MTd6Ii8+PHBhdGggZD0iTTMzLjA3LDM0Yy0wLjg4NSwwLTEuNjA0LTAuNzEtMS42MDQtMS41ODNWMzFIMjYuNzUgQzI1Ljc4NSwzMSwyNSwzMC4yMjUsMjUsMjkuMjcydi0yLjU0NUMyNSwyNS43NzUsMjUuNzg1
LDI1LDI2Ljc1LDI1aDQuNzE2di0xLjQxN2MwLTAuODczLDAuNzItMS41ODMsMS42MDQtMS41ODMgYzAuNDE5LDAsMC44MTUsMC4xNjIsMS4xMTcsMC40NTVsNC4xODEsNC4wNTVDMzguNzc1LDI2LjkwNywzOSwyNy40MzYsMzks
MjhzLTAuMjI1LDEuMDkzLTAuNjMyLDEuNDg5bC00LjE4MSw0LjA1NyBDMzMuODg1LDMzLjgzOSwzMy40ODgsMzQsMzMuMDcsMzR6IiBvcGFjaXR5PSIuMDUiLz48cGF0aCBkPSJNMzMuMDcsMzMuNWMtMC42MDksMC0xLjEwNC0w
LjQ4Ni0xLjEwNC0xLjA4M1YzMC41SDI2Ljc1IGMtMC42ODksMC0xLjI1LTAuNTUxLTEuMjUtMS4yMjh2LTIuNTQ1YzAtMC42NzcsMC41NjEtMS4yMjgsMS4yNS0xLjIyOGg1LjIxNnYtMS45MTdjMC0wLjU5OCwwLjQ5NS0xLjA4
MywxLjEwNC0xLjA4MyBjMC4yODcsMCwwLjU2MSwwLjExMSwwLjc2OSwwLjMxM2w0LjE4MSw0LjA1NmMwLjMxLDAuMzAxLDAuNDgsMC43MDMsMC40OCwxLjEzMXMtMC4xNzEsMC44My0wLjQ4LDEuMTNsLTQuMTgxLDQuMDU3IEMz
My42MzEsMzMuMzg5LDMzLjM1NywzMy41LDMzLjA3LDMzLjVMMzMuMDcsMzMuNXoiIG9wYWNpdHk9Ii4wNyIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0zMi40NjYsMjMuNTgzVjI2SDI2Ljc1QzI2LjMzNiwyNiwyNiwyNi4zMjYs
MjYsMjYuNzI4djIuNTQ0QzI2LDI5LjY3NCwyNi4zMzYsMzAsMjYuNzUsMzBoNS43MTYgdjIuNDE3YzAsMC41MTksMC42NDYsMC43NzgsMS4wMjQsMC40MTJsNC4xOC00LjA1NmMwLjQzOS0wLjQyNiwwLjQzOS0xLjExOCwwLTEu
NTQ0bC00LjE4LTQuMDU2IEMzMy4xMTIsMjIuODA1LDMyLjQ2NiwyMy4wNjUsMzIuNDY2LDIzLjU4M3oiLz48cGF0aCBkPSJNMzMuMDcsMjFjLTAuODg1LDAtMS42MDQtMC43MS0xLjYwNC0xLjU4M1YxOEgyNi43NSBDMjUuNzg1
LDE4LDI1LDE3LjIyNSwyNSwxNi4yNzJ2LTIuNTQ1QzI1LDEyLjc3NSwyNS43ODUsMTIsMjYuNzUsMTJoNC43MTZ2LTEuNDE3QzMxLjQ2Niw5LjcxLDMyLjE4Niw5LDMzLjA3LDkgYzAuNDE5LDAsMC44MTUsMC4xNjIsMS4xMTcs
MC40NTVsNC4xODEsNC4wNTVDMzguNzc1LDEzLjkwNywzOSwxNC40MzYsMzksMTVzLTAuMjI1LDEuMDkzLTAuNjMyLDEuNDg5bC00LjE4MSw0LjA1NyBDMzMuODg1LDIwLjgzOSwzMy40ODgsMjEsMzMuMDcsMjF6IiBvcGFjaXR5
PSIuMDUiLz48cGF0aCBkPSJNMzMuMDcsMjAuNWMtMC42MDksMC0xLjEwNC0wLjQ4Ni0xLjEwNC0xLjA4M1YxNy41SDI2Ljc1IGMtMC42ODksMC0xLjI1LTAuNTUxLTEuMjUtMS4yMjh2LTIuNTQ1YzAtMC42NzcsMC41NjEtMS4y
MjgsMS4yNS0xLjIyOGg1LjIxNnYtMS45MTdjMC0wLjU5OCwwLjQ5NS0xLjA4MywxLjEwNC0xLjA4MyBjMC4yODcsMCwwLjU2MSwwLjExMSwwLjc2OSwwLjMxM2w0LjE4MSw0LjA1NmMwLjMxLDAuMzAxLDAuNDgsMC43MDMsMC40
OCwxLjEzMXMtMC4xNzEsMC44My0wLjQ4LDEuMTNsLTQuMTgxLDQuMDU3IEMzMy42MzEsMjAuMzg5LDMzLjM1NywyMC41LDMzLjA3LDIwLjVMMzMuMDcsMjAuNXoiIG9wYWNpdHk9Ii4wNyIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9
Ik0zMi40NjYsMTAuNTgzVjEzSDI2Ljc1QzI2LjMzNiwxMywyNiwxMy4zMjYsMjYsMTMuNzI4djIuNTQ0QzI2LDE2LjY3NCwyNi4zMzYsMTcsMjYuNzUsMTdoNS43MTYgdjIuNDE3YzAsMC41MTksMC42NDYsMC43NzgsMS4wMjQs
MC40MTJsNC4xOC00LjA1NmMwLjQzOS0wLjQyNiwwLjQzOS0xLjExOCwwLTEuNTQ0bC00LjE4LTQuMDU2IEMzMy4xMTIsOS44MDUsMzIuNDY2LDEwLjA2NSwzMi40NjYsMTAuNTgzeiIvPjwvc3ZnPgo=</data><downloads_count>0</downloads_count></logo>
</NetworkDeviceType>
<NetworkDeviceType alias="NetworkDeviceType" id="12">
<name>Wireless Access Point</name>
<logo><mimetype>image/png</mimetype><filename>icons8-wi-fi-router-96.png</filename><data>iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAACXBIWXMAAAsTAAALEwEAmpwYAAAIXUlEQVR
4nO1af3ATVR5/WBR1bkA5HWJrmdO7Ob3zZA4snbkRb+6PE8VqkxbK6D/3D3OcowKXhutuEmA3FGkibZOg2NCCDtzNKYwO6nj+GKu0OKMz/vinuwntAf2RJqlQ2iTciW2B+968xcBm+yO7yW7S3b7PzGemk7zse+/zee/78nkNQgQ
EBAQEBAQEBAQEBAQEslFztAghmCf/AwTKBa7jyxHd9SyieC+i+Y8QxfUgij+HaP4ionn4kRcRzQ0jmu9GNPcBorlmVMf/BTlCKxADNxDZlcDetQTR/AuI5t9DNJ8QiZwtRxHFHRNMpEM/JWZMhY3f3IjquKcRxf0LUfwlFUSfmhQ
3jijuXWTn1yHm+HxixqZ/L0AU9ydEcac0E31acn2I4rYg6xe3zD0jcF0WSgJ/Nv/CTzJiCNn5P8+dswIfjDT3ZeGF56Xl6VtEd/0OGRa45tJcA6K4KwUXm57WhCvCGA13Pji5UkRzn6st2Dx7EObZtTCC/wrRXfciQ4DiVyGaG8l
aZEcQFtR3w088p+B2by/cua8fluwfgLvaMMMCTa1hWBIYgDte6YPbvGeEtgt2dudoDjcijF3XoIJmSWCSvbJv3d0Di/f2CeKmhFZKU+sALPb3wi0v9gjPzMKIi8getCBdguafQTR/WcmEi7aFYFHTaTAJKzysKvGuWdh4GoqcIaU
m4Dk8g3QHiv9O7iRvcAZhUePpnFa7kl2xcM8poU8FZ0IE6Q4U3ytncjfv6hbqt9bCT9oRgX64ub5brgkhpDvUcY8J0X+GVb/Y15t34aXEhzY+6Gc8ByjuD0iXqAuuQTQ3Jp3U/O0huHNfX8HFTxF/s8Lnz9R3R10VSNegg0+ITbj
JdRJM+9URruTgIJQcVK8k3cicTBef5p5EhgBeRTQ3dhOLxe//n1Jxig+G4Z43huBX7wzDsg9H4KHPErCyM5nGFZ/Ghffuf+cc3PPPGBQfGFRsAh6bYMLVW9OnkJFQtJ1ba2od+I8SQX729yg88P4wlHVMFjwTy44n4dfvDcPSwxF
lJrSGR4scIZ2XnWlg2j+49q628EQmEZYejsCDH4woFn06/ub981B6KLMRptbweHHbgLFWvhSmtsHq6UwoPhCGX759NqsVn3FHdCSEZxfPZfFTWHKgv8LUFh4TC3D3axFY9vGo6sJLiXcWPrznrPhTmVB6KALL2+Oai5/ibz8ZhZL
XI3NXfLEJJa8Nji9vj0/kS/wUl7fHL5YcHJyYs+Kn8NCnIzUrOxKKDSjH/PyCwKzOhM7ED8s+HjWe+DaHq6LWwfTbnEzE5nCtkfOZss74WjkmrPr6e3j05Dg82X8FLFEAS+wqzVGAir4r8GhoHB7+6r+yxF95PPG4/PmwUWFOMud
TUAjCO1m4SiZWI/x6LTcTHvnme0HglOCZWNF7GVZNY4QgfmfiMTljwmOvdbBD1+bjYMJotgOLft0AFmqdjOz/KpV1xKvFJpSfSMLq7gnZwkv5x9C4UKquG5AYW3kiKft64W921yPiueC5odmOWgdzOG3QDtaj5PNlP5qAa/uaM5e
zFj/FNacvCUZi8cs7k4oSrs3B7kk3gD2EZjtsdmZ9ugGM4rv0so549RO9l6O5ip/i46cmBso7E6sVz8XJnkzfza4aNNuxiWEW1jrYcfHArTTzC6XPscSg2hyFCRUMGKsaAsV3O1ud9T+XlJ+JLQxzG9IDbE6mPW3lbGO3ZPMcyxC
st0ThUrbim2PwgyUKq7OawzbWmjYHB/sJ0guw4JLV057tsypjsC6bnWCOwbhlCLK+z7c5mc8kpXQz0gv+SjP3qrl9K2OwTslOwOKbI5B1yKIo9yI85lzLaEFR62SDaSbYmfW5PK9Spgm5io9hszNPpx++bBDpDfjrZ3oNZQ7n+sz
KDCZg8SsjUJn72Jl/SLKMG+kNOIBJ8sAIwzDztTLBrJL4Qvp1MufFY99qdz2M9AY8EZuDHc42FSsxQThwo2BGKsDmZH4vGfN5udcphkvFM8EcBYs5BoOWKPRWxUDWxZph06+WqTjf0GX61ToV5wu6Tr9ap+J8QNfpNx+pWGvoOv3
mKxVrBUOk33ylYi1giPSbz1SsNgyRfvOditWCYdJvIVKxGjBU+i1EKs4Vhkq/ekzFNiOlX72l4q1GTL96SsU2I6ZfPaVim57Sb2PjvlK3P/CW299yweMPAGHgmgZYE7e/5ZjH++p9GorfMkJED8y88HyBUayV6gbglU/ED8ja9W5
/y1ENDCBlxyPXAF8gqboB0k4kwWXO0yPRR30DfC0gJhGdTdNAqo/qBrh9LSDmTAZY7dthc51DoNW+QzOzrAr70bK9VB/VDWjwvgpiTj0QBp63UbBxkxU2PLdZIP4bv4bfU098RmE/Wrdn07TBLIgBeIAbNllh/ZGPoKonAVU9ceH
vDdcGr44BzyvsR+v2eTFgd/M+EHOq7YpXCR6o9Fdr+DX8nhrlyKqwH63bpyjVJ+8G4DqJtypeMdKBV/Ukhfdwm1wN2KywH63b582AF5teATGnFyY+aeDV3XENDIjL6kfr9ilK9VHfgMaXQczJpWHHtFu35s0PVSxBOxT1o3X7awZ
I9FHdgF2NL4OYU4mTfnjF83QIxxUequq3x5Tqo74Be/aCmFOLM3e/hu6S6KO6AfV79oKYmcpEfoLYDoXBSrv2Un3UN+AlP4iplag2nVKqj+oG7HzJD2IWesK2WUapPqob4HL7Luz0+IDQl1EDl8eXUN+AhuZjLrcXCL0ZNWAbvEd
UN2Cnx3sf624eJQZ4Zxbf3XyecfvvRlqgvr6xlGloPso2NCXZhmYgbBZp0JRkdzcd0Ux8AgICAgICAgICAgICAgICAgKkd/wfA+F5ouAmxqQAAAAASUVORK5CYII=</data><downloads_count>0</downloads_count></logo>
</NetworkDeviceType>
</Set>

View File

@@ -948,6 +948,8 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Všechna zařízení, kde je tato záplata (patch) instalována',
'Class:OSPatch/Attribute:osversion_id' => 'Verze OS',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'Název verze OS',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1012,6 +1014,8 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s~~',
'Class:OSLicence/Attribute:osversion_id' => 'Verze OS',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '',
'Class:OSLicence/Attribute:osversion_name' => 'Název verze OS',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Virtuální stroje (VM)',
@@ -1160,6 +1164,8 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', [
Dict::Add('CS CZ', 'Czech', 'Čeština', [
'Class:NetworkDeviceType' => 'Typ síťového zařízení',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Síťová zařízení',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Všechna síťová zařízení odpovídající tomuto typu',
]);
@@ -1547,7 +1553,8 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Obecné informace',

View File

@@ -947,6 +947,8 @@ Dict::Add('DA DA', 'Danish', 'Dansk', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'All the systems where this patch is installed~~',
'Class:OSPatch/Attribute:osversion_id' => 'OS Version',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'OS versionsnavn',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1011,6 +1013,8 @@ Dict::Add('DA DA', 'Danish', 'Dansk', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s~~',
'Class:OSLicence/Attribute:osversion_id' => 'OS-Version',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '',
'Class:OSLicence/Attribute:osversion_name' => 'OS versionsnavn',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Virtuelle Maskiner',
@@ -1159,6 +1163,8 @@ Dict::Add('DA DA', 'Danish', 'Dansk', [
Dict::Add('DA DA', 'Danish', 'Dansk', [
'Class:NetworkDeviceType' => 'Netværksenhed type',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Netværks enheder',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'All the network devices corresponding to this type~~',
]);
@@ -1546,7 +1552,8 @@ Dict::Add('DA DA', 'Danish', 'Dansk', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Almindelig Informationen',

View File

@@ -947,6 +947,8 @@ Dict::Add('DE DE', 'German', 'Deutsch', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Alle Systeme, auf denen dieser Patch installiert ist',
'Class:OSPatch/Attribute:osversion_id' => 'OS Version',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'OS-Versionsname',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1011,6 +1013,8 @@ Dict::Add('DE DE', 'German', 'Deutsch', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
'Class:OSLicence/Attribute:osversion_id' => 'OS-Version',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '',
'Class:OSLicence/Attribute:osversion_name' => 'OS-Versionsname',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Virtuelle Maschinen',
@@ -1159,6 +1163,8 @@ Dict::Add('DE DE', 'German', 'Deutsch', [
Dict::Add('DE DE', 'German', 'Deutsch', [
'Class:NetworkDeviceType' => 'Netzwerkgerätetyp',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Netzwerkgeräte',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Alle Netzwerkgeräte, die diesem Typ entsprechen',
]);
@@ -1546,7 +1552,8 @@ Dict::Add('DE DE', 'German', 'Deutsch', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Allgemeine Informationen',

View File

@@ -103,6 +103,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:FunctionalCI/Attribute:business_criticity/Value:medium+' => 'medium',
'Class:FunctionalCI/Attribute:move2production' => 'Move to production date',
'Class:FunctionalCI/Attribute:move2production+' => '',
'Class:FunctionalCI/Attribute:groups_list' => 'Groups',
'Class:FunctionalCI/Attribute:groups_list+' => 'Groups can be used as tags, to document environment, projects (migration, upgrade, security), etc…',
'Class:FunctionalCI/Attribute:contacts_list' => 'Contacts',
'Class:FunctionalCI/Attribute:contacts_list+' => 'All the contacts for this configuration item',
'Class:FunctionalCI/Attribute:documents_list' => 'Documents',
@@ -147,6 +149,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:PhysicalDevice/Attribute:brand_name+' => '',
'Class:PhysicalDevice/Attribute:model_id' => 'Model',
'Class:PhysicalDevice/Attribute:model_id+' => '',
'Class:PhysicalDevice/Attribute:model_end_of_support' => 'Model end of support',
'Class:PhysicalDevice/Attribute:model_end_of_support+' => 'When the hardware model is no more supported by the manufacturer, if this information is documented on the Model.',
'Class:PhysicalDevice/Attribute:model_name' => 'Model name',
'Class:PhysicalDevice/Attribute:model_name+' => '',
'Class:PhysicalDevice/Attribute:asset_number' => 'Asset number',
@@ -163,7 +167,7 @@ Dict::Add('EN US', 'English', 'English', [
Dict::Add('EN US', 'English', 'English', [
'Class:Rack' => 'Rack',
'Class:Rack+' => 'A physical container for Datacenter Devices and Enclosures.',
'Class:Rack+' => 'A physical cabinet for Datacenter Devices and Enclosures.',
'Class:Rack/ComplementaryName' => '%1$s - %2$s',
'Class:Rack/Attribute:nb_u' => 'Rack units',
'Class:Rack/Attribute:nb_u+' => '',
@@ -295,6 +299,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:NetworkDevice/Attribute:iosversion_id+' => '',
'Class:NetworkDevice/Attribute:iosversion_name' => 'IOS version name',
'Class:NetworkDevice/Attribute:iosversion_name+' => '',
'Class:NetworkDevice/Attribute:ios_end_of_support' => 'IOS end of support',
'Class:NetworkDevice/Attribute:ios_end_of_support+' => 'The date after which the editor no longer provides fixes for this IOS version.',
'Class:NetworkDevice/Attribute:ram' => 'RAM',
'Class:NetworkDevice/Attribute:ram+' => '',
]);
@@ -315,6 +321,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:Server/Attribute:osversion_id+' => '',
'Class:Server/Attribute:osversion_name' => 'OS version name',
'Class:Server/Attribute:osversion_name+' => '',
'Class:Server/Attribute:os_end_of_support' => 'OS end of support',
'Class:Server/Attribute:os_end_of_support+' => 'The date after which the editor ceases to provide patches for this OS version.',
'Class:Server/Attribute:oslicence_id' => 'OS license',
'Class:Server/Attribute:oslicence_id+' => '',
'Class:Server/Attribute:oslicence_name' => 'OS license name',
@@ -391,6 +399,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:PC/Attribute:osversion_id+' => '',
'Class:PC/Attribute:osversion_name' => 'OS version name',
'Class:PC/Attribute:osversion_name+' => '',
'Class:PC/Attribute:os_end_of_support' => 'OS end of support',
'Class:PC/Attribute:os_end_of_support+' => 'The date after which the editor ceases to provide patches for this OS version.',
'Class:PC/Attribute:cpu' => 'CPU',
'Class:PC/Attribute:cpu+' => '',
'Class:PC/Attribute:ram' => 'RAM',
@@ -470,7 +480,7 @@ For example: external hard drives, scanners, input devices (trackballs, bar code
Dict::Add('EN US', 'English', 'English', [
'Class:Enclosure' => 'Enclosure',
'Class:Enclosure+' => 'Cabinet is a physical structure in which to mount IT equipment such as Servers, Network Device... In '.ITOP_APPLICATION_SHORT.' an Enclosure can be mounted inside a Rack or directly fitted on the wall of a datacenter.',
'Class:Enclosure+' => 'An open-frame chassis mounted inside a Rack, in which to mount IT equipment such as Blade Servers, Network Device...',
'Class:Enclosure/ComplementaryName' => '%1$s - %2$s - %3$s',
'Class:Enclosure/Attribute:rack_id' => 'Rack',
'Class:Enclosure/Attribute:rack_id+' => '',
@@ -540,6 +550,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:Software/Attribute:vendor+' => '',
'Class:Software/Attribute:version' => 'Version',
'Class:Software/Attribute:version+' => '',
'Class:Software/Attribute:end_of_support' => 'End of support',
'Class:Software/Attribute:end_of_support+' => 'The date after which the editor ceases to provide patches for this software version.',
'Class:Software/Attribute:documents_list' => 'Documents',
'Class:Software/Attribute:documents_list+' => 'All the documents linked to this software',
'Class:Software/Attribute:logo' => 'Logo',
@@ -579,6 +591,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:SoftwareInstance/Attribute:software_id+' => '',
'Class:SoftwareInstance/Attribute:software_name' => 'Software name',
'Class:SoftwareInstance/Attribute:software_name+' => '',
'Class:SoftwareInstance/Attribute:software_end_of_support' => 'Software end of support',
'Class:SoftwareInstance/Attribute:software_end_of_support+' => 'The date after which the editor ceases to provide patches for this software version.',
'Class:SoftwareInstance/Attribute:softwarelicence_id' => 'Software license',
'Class:SoftwareInstance/Attribute:softwarelicence_id+' => '',
'Class:SoftwareInstance/Attribute:softwarelicence_name' => 'Software license name',
@@ -776,6 +790,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:VirtualMachine/Attribute:osversion_id+' => '',
'Class:VirtualMachine/Attribute:osversion_name' => 'OS version name',
'Class:VirtualMachine/Attribute:osversion_name+' => '',
'Class:VirtualMachine/Attribute:os_end_of_support' => 'OS end of support',
'Class:VirtualMachine/Attribute:os_end_of_support+' => 'When the OS version is no more supported by the vendor, if this information is documented on the OS Version.',
'Class:VirtualMachine/Attribute:oslicence_id' => 'OS license',
'Class:VirtualMachine/Attribute:oslicence_id+' => '',
'Class:VirtualMachine/Attribute:oslicence_name' => 'OS license name',
@@ -947,6 +963,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'All the systems where this patch is installed',
'Class:OSPatch/Attribute:osversion_id' => 'OS version',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'OS version name',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1011,6 +1029,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
'Class:OSLicence/Attribute:osversion_id' => 'OS version',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family',
'Class:OSLicence/Attribute:osfamily_id+' => '',
'Class:OSLicence/Attribute:osversion_name' => 'OS version name',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Virtual machines',
@@ -1064,6 +1084,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:OSVersion/Attribute:osfamily_id+' => '',
'Class:OSVersion/Attribute:osfamily_name' => 'OS family name',
'Class:OSVersion/Attribute:osfamily_name+' => '',
'Class:OSVersion/Attribute:end_of_support' => 'End of support',
'Class:OSVersion/Attribute:end_of_support+' => 'The date after which the editor ceases to provide patches for this OS version.',
'Class:OSVersion/Attribute:ospatches_list' => 'OS patches',
'Class:OSVersion/Attribute:ospatches_list+' => 'All the OS patches for this OS version',
'Class:OSVersion/UniquenessRule:name_osfamily+' => 'Name must be unique in the OS family',
@@ -1118,6 +1140,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:Model/Attribute:picture+' => '',
'Class:Model/Attribute:type' => 'Device type',
'Class:Model/Attribute:type+' => '',
'Class:Model/Attribute:end_of_support' => 'End of support',
'Class:Model/Attribute:end_of_support+' => 'The date after which the manufacturer ceases to provide patches and support for this model.',
'Class:Model/Attribute:type/Value:PowerSource' => 'Power Source',
'Class:Model/Attribute:type/Value:PowerSource+' => 'Power Source',
'Class:Model/Attribute:type/Value:DiskArray' => 'Disk Array',
@@ -1167,6 +1191,8 @@ Dict::Add('EN US', 'English', 'English', [
Dict::Add('EN US', 'English', 'English', [
'Class:NetworkDeviceType' => 'Network Device Type',
'Class:NetworkDeviceType+' => 'Typology. The possible values for the "Type" of a Network Device (e.g. Router, Switch, Firewall, etc.).',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Network devices',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'All the network devices corresponding to this type',
]);
@@ -1182,6 +1208,8 @@ Dict::Add('EN US', 'English', 'English', [
'Class:IOSVersion/Attribute:brand_id+' => '',
'Class:IOSVersion/Attribute:brand_name' => 'Brand name',
'Class:IOSVersion/Attribute:brand_name+' => '',
'Class:IOSVersion/Attribute:end_of_support' => 'End of support',
'Class:IOSVersion/Attribute:end_of_support+' => 'The date after which the editor ceases to provide patches for this IOS version.',
'Class:IOSVersion/Attribute:networkdevices_list' => 'Network devices',
'Class:IOSVersion/Attribute:networkdevices_list+' => 'All the network devices running this IOS version',
'Class:IOSVersion/UniquenessRule:name_brand+' => 'Name must be unique in the brand',
@@ -1578,7 +1606,8 @@ Dict::Add('EN US', 'English', 'English', [
Dict::Add('EN US', 'English', 'English', [
'ConfigMgmt:baseinfo' => 'General',
'ConfigMgmt:moreinfo' => 'CI specifics',
'ConfigMgmt:otherinfo' => 'Dates and description',
'ConfigMgmt:otherinfo' => 'Description',
'ConfigMgmt:dates' => 'Dates',
'Storage:moreinfo' => 'Storage specifics',
'Software:moreinfo' => 'Software specifics',
'Phone:moreinfo' => 'Phone specifics',

View File

@@ -945,6 +945,8 @@ Dict::Add('EN GB', 'British English', 'British English', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'All the systems where this patch is installed',
'Class:OSPatch/Attribute:osversion_id' => 'OS version',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'OS version name',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1010,6 +1012,8 @@ Dict::Add('EN GB', 'British English', 'British English', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
'Class:OSLicence/Attribute:osversion_id' => 'OS version',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'OS version name',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Virtual machines',
@@ -1158,6 +1162,8 @@ Dict::Add('EN GB', 'British English', 'British English', [
Dict::Add('EN GB', 'British English', 'British English', [
'Class:NetworkDeviceType' => 'Network Device Type',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Network devices',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'All the network devices corresponding to this type',
]);
@@ -1550,7 +1556,8 @@ Dict::Add('EN GB', 'British English', 'British English', [
Dict::Add('EN GB', 'British English', 'British English', [
'ConfigMgmt:baseinfo' => 'General',
'ConfigMgmt:moreinfo' => 'CI specifics',
'ConfigMgmt:otherinfo' => 'Dates and description',
'ConfigMgmt:otherinfo' => 'Description',
'ConfigMgmt:dates' => 'Dates',
'Storage:moreinfo' => 'Storage specifics',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',

View File

@@ -943,7 +943,9 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellano', [
'Class:OSPatch/Attribute:functionalcis_list' => 'Dispositivos',
'Class:OSPatch/Attribute:functionalcis_list+' => 'Dispositivos',
'Class:OSPatch/Attribute:osversion_id' => 'Versión de SO',
'Class:OSPatch/Attribute:osversion_id+' => 'Versión de SO',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'Versión de SO',
'Class:OSPatch/Attribute:osversion_name+' => 'Versión de SO',
]);
@@ -1008,6 +1010,8 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellano', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
'Class:OSLicence/Attribute:osversion_id' => 'Versión de SO',
'Class:OSLicence/Attribute:osversion_id+' => 'Versión de SO',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '',
'Class:OSLicence/Attribute:osversion_name' => 'Versión de SO',
'Class:OSLicence/Attribute:osversion_name+' => 'Versión de SO',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Máquinas Virtuales',
@@ -1156,6 +1160,8 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellano', [
Dict::Add('ES CR', 'Spanish', 'Español, Castellano', [
'Class:NetworkDeviceType' => 'Tipo Dispositivo de Red',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Dispositivos de Red',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Dispositivos de Red',
]);
@@ -1543,7 +1549,8 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellano', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Información General',

View File

@@ -87,6 +87,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:FunctionalCI/Attribute:business_criticity/Value:medium+' => 'moyenne',
'Class:FunctionalCI/Attribute:move2production' => 'Date de mise en production',
'Class:FunctionalCI/Attribute:move2production+' => '',
'Class:FunctionalCI/Attribute:groups_list' => 'Groupes',
'Class:FunctionalCI/Attribute:groups_list+' => 'Les groupes sont des sortes d\'étiquettes qui permettent d\'identifier des environnements de travail, l\'appartenance à des projets ou les équipements qui doivent être mise à jour, déplacés, remplacés, etc…',
'Class:FunctionalCI/Attribute:contacts_list' => 'Contacts',
'Class:FunctionalCI/Attribute:contacts_list+' => 'Tous les contacts de cet élément de configuration',
'Class:FunctionalCI/Attribute:documents_list' => 'Documents',
@@ -143,6 +145,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:PhysicalDevice/Attribute:model_id+' => '',
'Class:PhysicalDevice/Attribute:model_name' => 'Nom Modèle',
'Class:PhysicalDevice/Attribute:model_name+' => '',
'Class:PhysicalDevice/Attribute:model_end_of_support' => 'Fin de support du modèle',
'Class:PhysicalDevice/Attribute:model_end_of_support+' => 'Date au delà de laquelle le fabricant ne fournit plus ni correctif, ni pièces de rechange pour ce modèle.',
'Class:PhysicalDevice/Attribute:asset_number' => 'Numéro Asset',
'Class:PhysicalDevice/Attribute:asset_number+' => '',
'Class:PhysicalDevice/Attribute:purchase_date' => 'Date d\'achat',
@@ -170,7 +174,7 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:Rack/Attribute:device_list/UI:Links:Remove:Button+' => 'Retirer ce %4$s',
'Class:Rack/Attribute:device_list/UI:Links:Remove:Modal:Title' => 'Retirer ce %4$s de son %1$s',
'Class:Rack/Attribute:enclosure_list' => 'Chassis',
'Class:Rack/Attribute:enclosure_list+' => 'Tous les chassis dans ce rack',
'Class:Rack/Attribute:enclosure_list+' => 'Tous les chassis dans cette Baie',
'Class:Rack/Attribute:enclosure_list/UI:Links:Create:Button+' => 'Créer un %4$s',
'Class:Rack/Attribute:enclosure_list/UI:Links:Create:Modal:Title' => 'Ajouter un %4$s à %2$s',
'Class:Rack/Attribute:enclosure_list/UI:Links:Delete:Button+' => 'Supprimer ce %4$s',
@@ -258,7 +262,7 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:DatacenterDevice' => 'Matériel de datacenter',
'Class:DatacenterDevice+' => 'Un équipement physique, connecté au réseau et installé dans un datacenter, généralement dans une Baie ou un Châssis. Il peut sagir de Serveurs, d\'Équipement réseau, de Systèmes de Stockage, de Switchs SAN, de Bandothèques, de NAS…',
'Class:DatacenterDevice/ComplementaryName' => '%1$s - %2$s',
'Class:DatacenterDevice/Attribute:rack_id' => 'Rack',
'Class:DatacenterDevice/Attribute:rack_id' => 'Baie',
'Class:DatacenterDevice/Attribute:rack_id+' => '',
'Class:DatacenterDevice/Attribute:rack_name' => 'Nom Rack',
'Class:DatacenterDevice/Attribute:rack_name+' => '',
@@ -312,6 +316,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:NetworkDevice/Attribute:iosversion_id+' => '',
'Class:NetworkDevice/Attribute:iosversion_name' => 'Nom Version IOS',
'Class:NetworkDevice/Attribute:iosversion_name+' => '',
'Class:NetworkDevice/Attribute:ios_end_of_support' => 'Fin de support de l\'IOS',
'Class:NetworkDevice/Attribute:ios_end_of_support+' => 'Date au delà de laquelle l\'éditeur ne fournit plus de correctif pour cette version d\'IOS.',
'Class:NetworkDevice/Attribute:ram' => 'RAM',
'Class:NetworkDevice/Attribute:ram+' => '',
]);
@@ -332,6 +338,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:Server/Attribute:osversion_id+' => '',
'Class:Server/Attribute:osversion_name' => 'Nom Version OS',
'Class:Server/Attribute:osversion_name+' => '',
'Class:Server/Attribute:os_end_of_support' => 'Fin de support de l\'OS',
'Class:Server/Attribute:os_end_of_support+' => 'Date au delà de laquelle l\'éditeur ne fournit plus de correctif pour cette version d\'OS.',
'Class:Server/Attribute:oslicence_id' => 'Licence OS',
'Class:Server/Attribute:oslicence_id+' => '',
'Class:Server/Attribute:oslicence_name' => 'Nom Licence OS',
@@ -426,6 +434,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:PC/Attribute:osversion_id+' => '',
'Class:PC/Attribute:osversion_name' => 'Nom Version OS',
'Class:PC/Attribute:osversion_name+' => '',
'Class:PC/Attribute:os_end_of_support' => 'Fin de support de l\'OS',
'Class:PC/Attribute:os_end_of_support+' => 'Date au delà de laquelle l\'éditeur ne fournit plus de correctif pour cette version d\'OS.',
'Class:PC/Attribute:cpu' => 'CPU',
'Class:PC/Attribute:cpu+' => '',
'Class:PC/Attribute:ram' => 'RAM',
@@ -484,7 +494,7 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:PDU' => 'PDU',
'Class:PDU+' => 'Connexion électrique. Une PDU (Power Distribution Unit) est un équipement doté de multiples sorties conçu pour distribuer l\'alimentation électrique, notamment vers les racks d\'ordinateurs et équipements réseau d\'un datacenter.',
'Class:PDU/ComplementaryName' => '%1$s - %2$s - %3$s - %4$s',
'Class:PDU/Attribute:rack_id' => 'Rack',
'Class:PDU/Attribute:rack_id' => 'Baie',
'Class:PDU/Attribute:rack_id+' => '',
'Class:PDU/Attribute:rack_name' => 'Nom rack',
'Class:PDU/Attribute:rack_name+' => '',
@@ -511,9 +521,9 @@ Par exemple : disques durs externes, scanners, dispositifs d\'entrée (trackball
Dict::Add('FR FR', 'French', 'Français', [
'Class:Enclosure' => 'Châssis',
'Class:Enclosure+' => 'Une armoire permettant d\'installer des équipements informatiques garantissant un flux d\'air optimisé et une alimentaion sécurisée. Dans '.ITOP_APPLICATION_SHORT.', un châssis peut être montée à l\'intérieur d\'une Baie ou fixée directement au mur d\'un centre de données.',
'Class:Enclosure+' => 'Un châssis montée à l\'intérieur d\'une Baie qui permet d\'installer des équipements informatiques, comme des Serveurs lames ou des équipements réseau.',
'Class:Enclosure/ComplementaryName' => '%1$s - %2$s - %3$s',
'Class:Enclosure/Attribute:rack_id' => 'Rack',
'Class:Enclosure/Attribute:rack_id' => 'Baie',
'Class:Enclosure/Attribute:rack_id+' => '',
'Class:Enclosure/Attribute:rack_name' => 'Nom rack',
'Class:Enclosure/Attribute:rack_name+' => '',
@@ -592,6 +602,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:SoftwareInstance/Attribute:software_id+' => '',
'Class:SoftwareInstance/Attribute:software_name' => 'Nom du logiciel',
'Class:SoftwareInstance/Attribute:software_name+' => '',
'Class:SoftwareInstance/Attribute:software_end_of_support' => 'Fin de support du logiciel',
'Class:SoftwareInstance/Attribute:software_end_of_support+' => 'Date au delà de laquelle l\'éditeur ne fournit plus de correctif pour cette version du logiciel.',
'Class:SoftwareInstance/Attribute:softwarelicence_id' => 'Licence logiciel',
'Class:SoftwareInstance/Attribute:softwarelicence_id+' => '',
'Class:SoftwareInstance/Attribute:softwarelicence_name' => 'Nom Licence logiciel',
@@ -819,6 +831,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:VirtualMachine/Attribute:osversion_id+' => '',
'Class:VirtualMachine/Attribute:osversion_name' => 'Nom Version OS',
'Class:VirtualMachine/Attribute:osversion_name+' => '',
'Class:VirtualMachine/Attribute:os_end_of_support' => 'Fin de support de l\'OS',
'Class:VirtualMachine/Attribute:os_end_of_support+' => 'Date au delà de laquelle l\'éditeur ne fournit plus de correctif pour cette version d\'OS.',
'Class:VirtualMachine/Attribute:oslicence_id' => 'Licence OS',
'Class:VirtualMachine/Attribute:oslicence_id+' => '',
'Class:VirtualMachine/Attribute:oslicence_name' => 'Nom Licence OS',
@@ -982,6 +996,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:Software/Attribute:vendor+' => '',
'Class:Software/Attribute:version' => 'Version',
'Class:Software/Attribute:version+' => '',
'Class:Software/Attribute:end_of_support' => 'Fin de support',
'Class:Software/Attribute:end_of_support+' => 'Date au delà de laquelle l\'éditeur ne fournit plus de correctif pour cette version du logiciel.',
'Class:Software/Attribute:documents_list' => 'Documents',
'Class:Software/Attribute:documents_list+' => 'Tous les documents liés à ce logiciel',
'Class:Software/Attribute:logo' => 'Logo',
@@ -1052,6 +1068,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Tous les systèmes où ce patch est installé',
'Class:OSPatch/Attribute:osversion_id' => 'Version OS',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'Famille d\'OS',
'Class:OSPatch/Attribute:osfamily_id+' => 'Déduite de la version d\'OS sélectionnée',
'Class:OSPatch/Attribute:osversion_name' => 'Nom Version OS',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1092,6 +1110,7 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:Licence/Attribute:organization_name+' => 'Common name',
'Class:Licence/Attribute:usage_limit' => 'Limite d\'utilisation',
'Class:Licence/Attribute:usage_limit+' => '',
// Incoherent FR specific entries below in this table, wrong class. To be either moved or modified
'Class:Location/Attribute:physicaldevice_list/UI:Links:Create:Button+' => 'Créer un %4$s',
'Class:Location/Attribute:physicaldevice_list/UI:Links:Create:Modal:Title' => 'Ajouter un %4$s à %2$s',
'Class:Location/Attribute:physicaldevice_list/UI:Links:Delete:Button+' => 'Supprimer ce %4$s',
@@ -1126,6 +1145,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
'Class:OSLicence/Attribute:osversion_id' => 'Version OS',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'Famille d\'OS',
'Class:OSLicence/Attribute:osfamily_id+' => 'Déduite de la version d\'OS sélectionnée',
'Class:OSLicence/Attribute:osversion_name' => 'Nom Version OS',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Machines virtuelles',
@@ -1197,6 +1218,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:OSVersion/Attribute:osfamily_id+' => '',
'Class:OSVersion/Attribute:osfamily_name' => 'Nom Famille OS',
'Class:OSVersion/Attribute:osfamily_name+' => '',
'Class:OSVersion/Attribute:end_of_support' => 'Fin de support',
'Class:OSVersion/Attribute:end_of_support+' => 'Date au delà de laquelle l\'éditeur ne fournit plus de correctif pour cette version.',
'Class:OSVersion/UniquenessRule:name_osfamily+' => 'Le nom doit être unique au sein de cette famille d\'OS',
'Class:OSVersion/UniquenessRule:name_osfamily' => 'cette version d\'OS existe déjà dans cette famille',
'Class:OSVersion/Attribute:ospatches_list' => 'Patchs OS',
@@ -1257,6 +1280,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:Model/Attribute:picture+' => '',
'Class:Model/Attribute:type' => 'Type de matériel',
'Class:Model/Attribute:type+' => '',
'Class:Model/Attribute:end_of_support' => 'Fin de support',
'Class:Model/Attribute:end_of_support+' => 'Date au delà de laquelle le constructeur ne fournit plus ni correctif ni support.',
'Class:Model/Attribute:type/Value:PowerSource' => 'Arrivée électrique',
'Class:Model/Attribute:type/Value:PowerSource+' => 'Arrivée électrique',
'Class:Model/Attribute:type/Value:DiskArray' => 'Baie de disques',
@@ -1312,6 +1337,8 @@ Dict::Add('FR FR', 'French', 'Français', [
Dict::Add('FR FR', 'French', 'Français', [
'Class:NetworkDeviceType' => 'Type d\'équipement réseau',
'Class:NetworkDeviceType+' => 'Typologie. Valeurs possibles pour le type dun équipement réseau (ex : Routeur, Switch, Firewall, etc.).',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo',
'Class:NetworkDeviceType/Attribute:logo+' => 'Utilisé comme icône pour les équipement réseau de ce Type lors de leur affichage (détails, aperçu et graphe d\'analyse d\'impact)',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Equipements réseaux',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Tous les équipements réseaux correspondant à ce type',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list/UI:Links:Create:Button+' => 'Créer un %4$s',
@@ -1333,6 +1360,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Class:IOSVersion/Attribute:brand_id+' => '',
'Class:IOSVersion/Attribute:brand_name' => 'Nom Marque',
'Class:IOSVersion/Attribute:brand_name+' => '',
'Class:IOSVersion/Attribute:end_of_support' => 'Fin de support',
'Class:IOSVersion/Attribute:end_of_support+' => 'Date au delà de laquelle l\'éditeur ne fournit plus de correctif pour cette version.',
'Class:IOSVersion/UniquenessRule:name_brand+' => 'Le nom doit être unique pour cette marque',
'Class:IOSVersion/UniquenessRule:name_brand' => 'cette version d\'IOS existe déja sur cette marque',
'Class:IOSVersion/Attribute:networkdevices_list' => 'Equipements réseaux',
@@ -1737,7 +1766,8 @@ Dict::Add('FR FR', 'French', 'Français', [
'Storage:moreinfo' => 'Stockage spécifique',
'Software:moreinfo' => 'Logiciel spécifique',
'Phone:moreinfo' => 'Téléphone spécifique',
'ConfigMgmt:otherinfo' => 'Dates et description',
'ConfigMgmt:otherinfo' => 'Description',
'ConfigMgmt:dates' => 'Dates',
'Server:Date' => 'Dates',
'Server:otherinfo' => 'Description',
'Server:power' => 'Alimentation électrique',

View File

@@ -36,23 +36,6 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', [
// Class:<class_name>/UniquenessRule:<rule_code>
// Class:<class_name>/UniquenessRule:<rule_code>+
//////////////////////////////////////////////////////////////////////
// Classes in 'bizmodel'
//////////////////////////////////////////////////////////////////////
//
// Dictionnay conventions
// Class:<class_name>
// Class:<class_name>+
// Class:<class_name>/Attribute:<attribute_code>
// Class:<class_name>/Attribute:<attribute_code>+
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>
// Class:<class_name>/Attribute:<attribute_code>/Value:<value>+
// Class:<class_name>/Stimulus:<stimulus_code>
// Class:<class_name>/Stimulus:<stimulus_code>+
// Class:<class_name>/UniquenessRule:<rule_code>
// Class:<class_name>/UniquenessRule:<rule_code>+
//////////////////////////////////////////////////////////////////////
// Note: The classes have been grouped by categories: bizmodel
//////////////////////////////////////////////////////////////////////
@@ -946,6 +929,8 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Rendszerek, amelyekre telepítve lett ez az OS javítócsomag',
'Class:OSPatch/Attribute:osversion_id' => 'OS verzió',
'Class:OSPatch/Attribute:osversion_id+' => '~~',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '~~',
'Class:OSPatch/Attribute:osversion_name' => 'OS verzió név',
'Class:OSPatch/Attribute:osversion_name+' => '~~',
]);
@@ -1010,6 +995,8 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s~~',
'Class:OSLicence/Attribute:osversion_id' => 'OS verzió',
'Class:OSLicence/Attribute:osversion_id+' => '~~',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'OS verzió név',
'Class:OSLicence/Attribute:osversion_name+' => '~~',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Virtuális gépek',
@@ -1158,6 +1145,8 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', [
Dict::Add('HU HU', 'Hungarian', 'Magyar', [
'Class:NetworkDeviceType' => 'Hálózati eszköz típus',
'Class:NetworkDeviceType+' => '~~',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Hálózati eszközök',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Ilyen típusú hálózati eszközök',
]);
@@ -1545,7 +1534,8 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Általános információ',

View File

@@ -946,6 +946,8 @@ Dict::Add('IT IT', 'Italian', 'Italiano', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Tutti i sistemi in cui questa patch è installata',
'Class:OSPatch/Attribute:osversion_id' => 'Versione del Sistema Operativo',
'Class:OSPatch/Attribute:osversion_id+' => '~~',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '~~',
'Class:OSPatch/Attribute:osversion_name' => 'Nome della Versione del Sistema Operativo',
'Class:OSPatch/Attribute:osversion_name+' => '~~',
]);
@@ -1010,6 +1012,8 @@ Dict::Add('IT IT', 'Italian', 'Italiano', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
'Class:OSLicence/Attribute:osversion_id' => 'Versione del sistema operativo',
'Class:OSLicence/Attribute:osversion_id+' => '~~',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'Nome della versione del sistema operativo',
'Class:OSLicence/Attribute:osversion_name+' => '~~',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Macchine virtuali',
@@ -1179,6 +1183,8 @@ Dict::Add('IT IT', 'Italian', 'Italiano', [
Dict::Add('IT IT', 'Italian', 'Italiano', [
'Class:NetworkDeviceType' => 'Tipo di Dispositivo di Rete',
'Class:NetworkDeviceType+' => '~~',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Dispositivi di Rete',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Tutti i dispositivi di rete corrispondenti a questo tipo',
]);
@@ -1566,7 +1572,8 @@ Dict::Add('IT IT', 'Italian', 'Italiano', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Informazioni generali',

View File

@@ -946,6 +946,8 @@ Dict::Add('JA JP', 'Japanese', '日本語', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'All the systems where this patch is installed~~',
'Class:OSPatch/Attribute:osversion_id' => 'OSバージョン',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'OSバージョン名',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1010,6 +1012,8 @@ Dict::Add('JA JP', 'Japanese', '日本語', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s~~',
'Class:OSLicence/Attribute:osversion_id' => 'OSバージョン',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'OSバージョン名',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => '仮想マシン',
@@ -1158,6 +1162,8 @@ Dict::Add('JA JP', 'Japanese', '日本語', [
Dict::Add('JA JP', 'Japanese', '日本語', [
'Class:NetworkDeviceType' => 'ネットワークデバイスタイプ',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'ネットワークデバイス',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'All the network devices corresponding to this type~~',
]);
@@ -1545,7 +1551,8 @@ Dict::Add('JA JP', 'Japanese', '日本語', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => '基本情報',

View File

@@ -948,6 +948,8 @@ Dict::Add('NL NL', 'Dutch', 'Nederlands', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Alle systemen waarop deze patch is geïnstalleerd',
'Class:OSPatch/Attribute:osversion_id' => 'Versie besturingssysteem',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'Soort besturingssysteem',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'Naam versie besturingssysteem',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1012,6 +1014,8 @@ Dict::Add('NL NL', 'Dutch', 'Nederlands', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
'Class:OSLicence/Attribute:osversion_id' => 'Versie besturingssysteem',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'Soort besturingssysteem',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'Naam versie bestandssysteem',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Virtuele machines',
@@ -1160,6 +1164,8 @@ Dict::Add('NL NL', 'Dutch', 'Nederlands', [
Dict::Add('NL NL', 'Dutch', 'Nederlands', [
'Class:NetworkDeviceType' => 'Soort netwerkapparaat',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Netwerkapparaten',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Alle netwerkapparaten van deze soort',
]);
@@ -1547,7 +1553,8 @@ Dict::Add('NL NL', 'Dutch', 'Nederlands', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Globale informatie',

View File

@@ -946,6 +946,8 @@ Dict::Add('PL PL', 'Polish', 'Polski', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Wszystkie systemy, w których jest zainstalowana ta poprawka',
'Class:OSPatch/Attribute:osversion_id' => 'Wersja OS',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'Nazwa wersji OS',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1010,6 +1012,8 @@ Dict::Add('PL PL', 'Polish', 'Polski', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
'Class:OSLicence/Attribute:osversion_id' => 'Wersja OS',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'Nazwa wersji OS',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Maszyny wirtualne',
@@ -1158,6 +1162,8 @@ Dict::Add('PL PL', 'Polish', 'Polski', [
Dict::Add('PL PL', 'Polish', 'Polski', [
'Class:NetworkDeviceType' => 'Typ urządzenia sieciowego',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Urządzenia sieciowe',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Wszystkie urządzenia sieciowe odpowiadające temu typowi',
]);
@@ -1545,7 +1551,8 @@ Dict::Add('PL PL', 'Polish', 'Polski', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Informacje ogólne',

View File

@@ -946,6 +946,8 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Todos os sistemas onde essa Atualização de SO está instalada',
'Class:OSPatch/Attribute:osversion_id' => 'Versão do SO',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'Nome da versão do SO',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1010,6 +1012,8 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s~~',
'Class:OSLicence/Attribute:osversion_id' => 'Versão do SO',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'Nome da versão do SO',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Máquinas virtuais (VMs)',
@@ -1158,6 +1162,8 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', [
Dict::Add('PT BR', 'Brazilian', 'Brazilian', [
'Class:NetworkDeviceType' => 'Tipo de dispositivo de rede',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Dispositivos de rede',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Todos os Dispositivos de rede correspondentes a este Tipo',
]);
@@ -1545,7 +1551,8 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Informações gerais',

View File

@@ -947,6 +947,8 @@ Dict::Add('RU RU', 'Russian', 'Русский', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Все системы, где установлен этот патч',
'Class:OSPatch/Attribute:osversion_id' => 'Версия ОС',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => 'Версия ОС',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1011,6 +1013,8 @@ Dict::Add('RU RU', 'Russian', 'Русский', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s~~',
'Class:OSLicence/Attribute:osversion_id' => 'Версия ОС',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'Версия ОС',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Виртуальные машины',
@@ -1159,6 +1163,8 @@ Dict::Add('RU RU', 'Russian', 'Русский', [
Dict::Add('RU RU', 'Russian', 'Русский', [
'Class:NetworkDeviceType' => 'Тип сетевого устройства',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Устройства',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Все сетевые устройства этого типа',
]);
@@ -1546,7 +1552,8 @@ Dict::Add('RU RU', 'Russian', 'Русский', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Основное',

View File

@@ -946,6 +946,8 @@ Dict::Add('SK SK', 'Slovak', 'Slovenčina', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'All the systems where this patch is installed~~',
'Class:OSPatch/Attribute:osversion_id' => 'Verzia OS',
'Class:OSPatch/Attribute:osversion_id+' => '~~',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '~~',
'Class:OSPatch/Attribute:osversion_name' => 'Názov OS verzie',
'Class:OSPatch/Attribute:osversion_name+' => '~~',
]);
@@ -1010,6 +1012,8 @@ Dict::Add('SK SK', 'Slovak', 'Slovenčina', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s~~',
'Class:OSLicence/Attribute:osversion_id' => 'Verzia OS',
'Class:OSLicence/Attribute:osversion_id+' => '~~',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'Názov OS verzie',
'Class:OSLicence/Attribute:osversion_name+' => '~~',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Virtuálne zariadenia',
@@ -1158,6 +1162,8 @@ Dict::Add('SK SK', 'Slovak', 'Slovenčina', [
Dict::Add('SK SK', 'Slovak', 'Slovenčina', [
'Class:NetworkDeviceType' => 'Typ sieťového zariadenia',
'Class:NetworkDeviceType+' => '~~',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Sieťové zariadenia',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'All the network devices corresponding to this type~~',
]);
@@ -1545,7 +1551,8 @@ Dict::Add('SK SK', 'Slovak', 'Slovenčina', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Všeobecné informácie',

View File

@@ -947,6 +947,8 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', [
'Class:OSPatch/Attribute:functionalcis_list+' => 'Bu yamanın kurulduğu tüm sistemler',
'Class:OSPatch/Attribute:osversion_id' => 'OS Sürümü',
'Class:OSPatch/Attribute:osversion_id+' => '~~',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '~~',
'Class:OSPatch/Attribute:osversion_name' => 'OS Sürüm Adı',
'Class:OSPatch/Attribute:osversion_name+' => '~~',
]);
@@ -1011,6 +1013,8 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s~~',
'Class:OSLicence/Attribute:osversion_id' => 'OS Sürümü',
'Class:OSLicence/Attribute:osversion_id+' => '~~',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => 'OS Sürüm Adı',
'Class:OSLicence/Attribute:osversion_name+' => '~~',
'Class:OSLicence/Attribute:virtualmachines_list' => 'Sanal Makineler',
@@ -1159,6 +1163,8 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', [
Dict::Add('TR TR', 'Turkish', 'Türkçe', [
'Class:NetworkDeviceType' => 'Ağ Cihazı Tipi',
'Class:NetworkDeviceType+' => '~~',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => 'Ağ Aygıtları',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => 'Bu türde karşılık gelen tüm ağ aygıtları',
]);
@@ -1546,7 +1552,8 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => 'Genel Bilgi',

View File

@@ -963,6 +963,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:OSPatch/Attribute:functionalcis_list+' => '已安装此补丁的所有系统',
'Class:OSPatch/Attribute:osversion_id' => '操作系统版本',
'Class:OSPatch/Attribute:osversion_id+' => '',
'Class:OSPatch/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSPatch/Attribute:osfamily_id+' => '',
'Class:OSPatch/Attribute:osversion_name' => '名称',
'Class:OSPatch/Attribute:osversion_name+' => '',
]);
@@ -1027,6 +1029,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:OSLicence/ComplementaryName' => '%1$s - %2$s',
'Class:OSLicence/Attribute:osversion_id' => '操作系统版本',
'Class:OSLicence/Attribute:osversion_id+' => '',
'Class:OSLicence/Attribute:osfamily_id' => 'OS Family~~',
'Class:OSLicence/Attribute:osfamily_id+' => '~~',
'Class:OSLicence/Attribute:osversion_name' => '名称',
'Class:OSLicence/Attribute:osversion_name+' => '',
'Class:OSLicence/Attribute:virtualmachines_list' => '虚拟机',
@@ -1175,6 +1179,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
Dict::Add('ZH CN', 'Chinese', '简体中文', [
'Class:NetworkDeviceType' => '网络设备类型',
'Class:NetworkDeviceType+' => '',
'Class:NetworkDeviceType/Attribute:logo' => 'Logo~~',
'Class:NetworkDeviceType/Attribute:logo+' => 'Used as icon for all Network Device of this type, when displayed in console (details, summary card and impact analysis graphs)~~',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list' => '网络设备',
'Class:NetworkDeviceType/Attribute:networkdevicesdevices_list+' => '此类型的所有网络设备',
]);
@@ -1562,7 +1568,8 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', [
'ConfigMgmt:baseinfo' => 'General~~',
'ConfigMgmt:moreinfo' => 'CI specifics~~',
'Storage:moreinfo' => 'Storage specifics~~',
'ConfigMgmt:otherinfo' => 'Dates and description~~',
'ConfigMgmt:otherinfo' => 'Description~~',
'ConfigMgmt:dates' => 'Dates~~',
'Software:moreinfo' => 'Software specifics~~',
'Phone:moreinfo' => 'Phone specifics~~',
'Server:baseinfo' => '基本信息',

View File

@@ -0,0 +1,207 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 48 48"
width="240px"
height="240px"
version="1.1"
id="svg8"
sodipodi:docname="icons8-ios-version-software.svg"
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs8" />
<sodipodi:namedview
id="namedview8"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showguides="true"
inkscape:zoom="4.7666667"
inkscape:cx="64.405594"
inkscape:cy="137.83217"
inkscape:window-width="2560"
inkscape:window-height="1360"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg8">
<sodipodi:guide
position="24.038024,7.4691871"
orientation="1,0"
id="guide8"
inkscape:locked="false" />
<sodipodi:guide
position="17.329983,10.650049"
orientation="0,-1"
id="guide9"
inkscape:locked="false" />
</sodipodi:namedview>
<linearGradient
id="SVGID_1_"
x1="23.855"
x2="23.983"
y1="4.908"
y2="17.227"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#7dd8f3"
id="stop1" />
<stop
offset="1"
stop-color="#45b0d0"
id="stop2" />
</linearGradient>
<circle
cx="24"
cy="18.9"
r="15"
fill="url(#SVGID_1_)"
id="circle2" />
<linearGradient
id="SVGID_2_"
x1="18.175"
x2="29.825"
y1="19.021"
y2="19.021"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#3079d6"
id="stop3" />
<stop
offset="1"
stop-color="#297cd2"
id="stop4" />
</linearGradient>
<circle
cx="24"
cy="19"
r="5.8"
fill="url(#SVGID_2_)"
id="circle4" />
<circle
cx="24"
cy="19"
r="2.3"
fill="#fff"
id="circle5" />
<path
d="M9,18.9c0,8.3,6.7,15,15,15s15-6.7,15-15c0-0.3,0-0.6,0-0.9H9C9,18.3,9,18.6,9,18.9z"
opacity=".05"
id="path5" />
<path
d="M9,18.9c0,8.3,6.7,15,15,15s15-6.7,15-15c0-0.1,0-0.2,0-0.4H9C9,18.6,9,18.7,9,18.9z"
opacity=".07"
id="path6" />
<linearGradient
id="SVGID_3_"
x1="16.786"
x2="30.174"
y1="-440.286"
y2="-472.232"
gradientTransform="matrix(1 0 0 -1 0 -426)"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#eba84b"
id="stop6" />
<stop
offset="1"
stop-color="#d97218"
id="stop7" />
</linearGradient>
<path
fill="url(#SVGID_3_)"
d="M41,44H7c-0.6,0-1-0.5-1-1V20c0-0.6,0.4-1,1-1h34c0.6,0,1,0.4,1,1v23C42,43.5,41.5,44,41,44z"
id="path7" />
<path
fill="#633412"
d="M20,23h8c0.6,0,1,0.4,1,1l0,0c0,0.6-0.4,1-1,1h-8c-0.6,0-1-0.4-1-1l0,0C19,23.4,19.4,23,20,23z"
id="path8" />
<g
opacity="0.05"
id="g4"
style="display:inline"
transform="matrix(0.71297721,0,0,0.71297721,5.7848117,15.025827)">
<path
d="m 23.884,17.895 c -1.408,-1.526 -3.274,-2.3 -5.546,-2.3 -2.431,0 -4.395,0.794 -5.838,2.359 -1.422,1.543 -2.144,3.607 -2.144,6.136 0,2.374 0.71,4.343 2.111,5.853 1.421,1.531 3.32,2.308 5.644,2.308 2.365,0 4.292,-0.787 5.727,-2.338 1.417,-1.53 2.136,-3.605 2.136,-6.168 0,-2.379 -0.703,-4.347 -2.09,-5.85 z m -3.309,9.273 c -0.599,0.699 -1.378,1.025 -2.454,1.025 -0.987,0 -1.729,-0.343 -2.333,-1.078 -0.636,-0.775 -0.959,-1.843 -0.959,-3.173 0,-1.334 0.332,-2.405 0.987,-3.185 0.629,-0.748 1.393,-1.097 2.404,-1.097 1.048,0 1.804,0.324 2.379,1.021 0.606,0.734 0.914,1.841 0.914,3.289 -0.001,1.396 -0.317,2.472 -0.938,3.198 z"
id="path3" />
<path
d="m 36.615,25.494 v 0 c -0.241,-0.519 -0.571,-0.995 -0.981,-1.419 -0.387,-0.397 -0.834,-0.762 -1.331,-1.081 -0.472,-0.306 -0.967,-0.592 -1.542,-0.888 -0.464,-0.203 -0.873,-0.391 -1.229,-0.569 -0.305,-0.15 -0.564,-0.306 -0.771,-0.46 -0.144,-0.108 -0.249,-0.22 -0.313,-0.333 -0.042,-0.074 -0.065,-0.186 -0.065,-0.322 0,-0.162 0.039,-0.235 0.069,-0.276 0.085,-0.118 0.193,-0.212 0.338,-0.292 0.18,-0.1 0.394,-0.173 0.633,-0.22 0.286,-0.054 0.574,-0.081 0.858,-0.081 1.046,0 1.894,0.229 2.522,0.683 0.308,0.219 0.706,0.249 1.039,0.078 0.336,-0.173 0.544,-0.514 0.544,-0.891 v -2.324 c 0,-0.384 -0.213,-0.728 -0.557,-0.896 -0.826,-0.408 -2.031,-0.607 -3.687,-0.607 -0.733,0 -1.459,0.088 -2.159,0.262 -0.733,0.182 -1.4,0.466 -1.98,0.845 -0.613,0.397 -1.116,0.913 -1.496,1.532 -0.396,0.647 -0.596,1.407 -0.596,2.258 0,0.676 0.116,1.285 0.345,1.813 0.221,0.509 0.53,0.973 0.917,1.376 0.355,0.372 0.782,0.717 1.268,1.027 0.436,0.277 0.906,0.549 1.467,0.848 0.442,0.201 0.857,0.395 1.245,0.58 0.338,0.161 0.634,0.331 0.878,0.503 0.185,0.131 0.325,0.269 0.417,0.408 0.034,0.052 0.079,0.143 0.079,0.328 0,0.34 -0.116,0.488 -0.291,0.607 -0.214,0.146 -0.674,0.32 -1.646,0.32 -0.226,0 -0.48,-0.024 -0.755,-0.073 -0.292,-0.052 -0.586,-0.125 -0.874,-0.219 -0.286,-0.093 -0.554,-0.205 -0.798,-0.334 -0.223,-0.117 -0.415,-0.248 -0.57,-0.39 -0.295,-0.268 -0.72,-0.337 -1.077,-0.174 -0.361,0.16 -0.595,0.519 -0.595,0.914 v 2.423 c 0,0.345 0.174,0.661 0.466,0.846 0.274,0.173 0.618,0.323 1.019,0.445 0.357,0.11 0.737,0.203 1.134,0.279 0.393,0.076 0.778,0.133 1.147,0.17 0.388,0.041 0.715,0.061 0.981,0.061 0.784,0 1.538,-0.077 2.239,-0.23 0.751,-0.162 1.429,-0.433 2.017,-0.804 0.625,-0.394 1.131,-0.913 1.502,-1.546 0.382,-0.65 0.574,-1.432 0.574,-2.327 0,-0.677 -0.129,-1.3 -0.385,-1.85 z"
id="path4" />
</g>
<g
opacity="0.07"
id="g6"
style="display:inline"
transform="matrix(0.71297721,0,0,0.71297721,5.7848117,15.025827)">
<path
d="m 18.338,16.095 c -2.285,0 -4.125,0.739 -5.47,2.198 -1.334,1.447 -2.011,3.397 -2.011,5.797 0,2.243 0.666,4.099 1.978,5.513 1.322,1.425 3.097,2.147 5.277,2.147 2.219,0 4.023,-0.732 5.36,-2.178 1.329,-1.435 2.003,-3.396 2.003,-5.828 0,-2.247 -0.658,-4.102 -1.958,-5.511 -1.31,-1.419 -3.052,-2.138 -5.179,-2.138 z m 3.674,7.877 c 0,1.518 -0.355,2.702 -1.057,3.521 -0.691,0.808 -1.618,1.2 -2.834,1.2 -1.133,0 -2.022,-0.412 -2.719,-1.261 -0.712,-0.867 -1.073,-2.041 -1.073,-3.49 0,-1.454 0.372,-2.635 1.104,-3.507 0.721,-0.857 1.633,-1.274 2.787,-1.274 1.192,0 2.096,0.394 2.764,1.203 0.682,0.826 1.028,2.04 1.028,3.608 z"
id="path5-3" />
<path
d="m 36.162,25.704 c -0.217,-0.467 -0.515,-0.897 -0.886,-1.28 -0.361,-0.371 -0.78,-0.711 -1.244,-1.01 -0.448,-0.29 -0.933,-0.571 -1.471,-0.85 -0.473,-0.207 -0.889,-0.398 -1.25,-0.579 -0.334,-0.165 -0.621,-0.337 -0.85,-0.509 -0.198,-0.149 -0.348,-0.312 -0.446,-0.483 -0.087,-0.151 -0.131,-0.344 -0.131,-0.571 0,-0.23 0.053,-0.416 0.163,-0.568 0.128,-0.178 0.293,-0.321 0.503,-0.438 0.226,-0.124 0.489,-0.216 0.781,-0.272 0.316,-0.06 0.636,-0.09 0.951,-0.09 1.153,0 2.099,0.261 2.813,0.775 0.153,0.109 0.354,0.125 0.52,0.04 0.167,-0.086 0.272,-0.258 0.272,-0.445 V 17.1 c 0,-0.19 -0.108,-0.364 -0.278,-0.448 -0.755,-0.374 -1.889,-0.556 -3.465,-0.556 -0.692,0 -1.378,0.083 -2.039,0.247 -0.678,0.168 -1.293,0.43 -1.829,0.778 -0.551,0.357 -1.002,0.82 -1.341,1.374 -0.347,0.568 -0.523,1.24 -0.523,1.997 0,0.606 0.102,1.149 0.303,1.613 0.197,0.453 0.472,0.867 0.82,1.229 0.33,0.345 0.725,0.664 1.175,0.951 0.425,0.271 0.885,0.536 1.406,0.814 0.445,0.203 0.862,0.397 1.252,0.584 0.364,0.174 0.684,0.357 0.951,0.546 0.236,0.167 0.42,0.35 0.547,0.543 0.108,0.165 0.161,0.362 0.161,0.602 0,0.46 -0.162,0.784 -0.509,1.021 -0.396,0.271 -1.045,0.407 -1.928,0.407 -0.255,0 -0.539,-0.027 -0.842,-0.081 -0.313,-0.056 -0.631,-0.135 -0.941,-0.235 -0.312,-0.102 -0.606,-0.225 -0.876,-0.367 -0.26,-0.137 -0.486,-0.292 -0.673,-0.462 -0.146,-0.133 -0.357,-0.169 -0.539,-0.087 -0.181,0.08 -0.297,0.259 -0.297,0.457 v 2.423 c 0,0.172 0.088,0.331 0.233,0.423 0.235,0.148 0.539,0.28 0.901,0.391 0.34,0.105 0.702,0.193 1.081,0.266 0.377,0.073 0.748,0.128 1.105,0.164 0.367,0.039 0.676,0.058 0.929,0.058 0.747,0 1.465,-0.073 2.133,-0.219 0.693,-0.15 1.317,-0.398 1.856,-0.738 0.557,-0.351 1.007,-0.813 1.337,-1.376 0.334,-0.57 0.503,-1.269 0.503,-2.073 0,-0.607 -0.114,-1.158 -0.338,-1.642 z"
id="path6-6" />
</g>
<path
fill="#ffffff"
d="m 18.697543,37.306366 c -1.457325,0 -2.624468,-0.47199 -3.500718,-1.417397 -0.876962,-0.944696 -1.315442,-2.173869 -1.315442,-3.68752 0,-1.6263 0.446322,-2.923206 1.339684,-3.891429 0.893359,-0.968223 2.106133,-1.452335 3.638321,-1.452335 1.419538,0 2.563153,0.469852 3.430135,1.41027 0.86698,0.940417 1.301182,2.168876 1.301182,3.687518 0,1.649829 -0.444183,2.954577 -1.332554,3.912818 -0.888368,0.958955 -2.075476,1.438075 -3.560608,1.438075 z m 0.077,-8.97567 c -0.926159,0 -1.679064,0.345081 -2.259426,1.035956 -0.581077,0.691588 -0.870545,1.600634 -0.870545,2.729278 0,1.123651 0.282338,2.027706 0.84559,2.714304 0.563967,0.686596 1.301898,1.029538 2.213795,1.029538 0.968223,0 1.731822,-0.326543 2.291509,-0.980343 0.558973,-0.653087 0.839174,-1.567837 0.839174,-2.74211 0,-1.208496 -0.271645,-2.141071 -0.81422,-2.799149 -0.543289,-0.658078 -1.291915,-0.987474 -2.245877,-0.987474 z"
id="path7-7"
style="display:inline;stroke-width:0.712977" />
<path
fill="#ffffff"
d="m 24.979585,36.735273 v -1.727544 c 0.155429,0.140455 0.339378,0.268078 0.553271,0.380728 0.213893,0.112651 0.44062,0.207476 0.68018,0.285193 0.23956,0.07771 0.479833,0.137604 0.719394,0.179669 0.23956,0.04207 0.460584,0.06345 0.663069,0.06345 0.705134,0 1.230599,-0.117641 1.575678,-0.352923 0.345795,-0.235283 0.518337,-0.575373 0.518337,-1.02241 0,-0.240273 -0.05775,-0.447749 -0.172542,-0.623855 -0.115502,-0.176104 -0.276634,-0.337237 -0.482685,-0.482684 -0.206764,-0.146161 -0.449889,-0.285905 -0.730088,-0.419943 -0.280201,-0.134042 -0.579651,-0.27307 -0.899065,-0.419231 -0.342942,-0.183237 -0.662356,-0.369323 -0.958955,-0.556836 -0.295885,-0.188225 -0.553269,-0.396415 -0.772154,-0.623855 -0.218884,-0.228153 -0.389999,-0.485537 -0.514769,-0.772153 -0.124772,-0.286618 -0.186801,-0.623143 -0.186801,-1.008151 0,-0.474843 0.106947,-0.887656 0.320841,-1.237728 0.213893,-0.349359 0.496231,-0.63954 0.846304,-0.866981 0.350072,-0.228152 0.748626,-0.397128 1.19495,-0.50764 0.446322,-0.110511 0.902628,-0.16541 1.367489,-0.16541 1.057346,0 1.828075,0.11978 2.312185,0.35934 v 1.656959 c -0.573234,-0.413527 -1.311163,-0.620289 -2.213792,-0.620289 -0.24883,0 -0.496946,0.02352 -0.743637,0.07059 -0.246691,0.04706 -0.467713,0.124771 -0.663069,0.23243 -0.195357,0.108374 -0.353636,0.24669 -0.475555,0.416379 -0.122632,0.168976 -0.183236,0.372889 -0.183236,0.613161 0,0.225301 0.04706,0.421369 0.14117,0.585354 0.09411,0.164698 0.231718,0.315137 0.412101,0.451314 0.180383,0.136179 0.402119,0.268793 0.663069,0.397842 0.260949,0.129761 0.562538,0.268792 0.906193,0.419944 0.352211,0.183236 0.685171,0.375738 0.997456,0.578224 0.312997,0.201773 0.587493,0.425648 0.824914,0.669486 0.237423,0.244551 0.425647,0.516195 0.563966,0.81422 0.13903,0.29945 0.208189,0.638827 0.208189,1.019557 0,0.511918 -0.103382,0.944694 -0.310145,1.296906 -0.206765,0.352923 -0.485537,0.639541 -0.83561,0.860563 -0.35007,0.22031 -0.752904,0.38073 -1.209209,0.479121 -0.455593,0.0991 -0.937565,0.147585 -1.445206,0.147585 -0.169688,0 -0.377165,-0.01282 -0.623854,-0.0385 -0.24669,-0.02568 -0.499797,-0.06274 -0.757896,-0.112652 -0.258098,-0.04919 -0.502648,-0.109085 -0.73294,-0.179668 -0.231003,-0.06987 -0.416379,-0.150439 -0.557548,-0.239562 z"
id="path8-5"
style="display:inline;stroke-width:0.712977" />
<text
xml:space="preserve"
style="font-size:7.01985px;writing-mode:lr-tb;direction:ltr;display:inline;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.61415;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:0.0516633;paint-order:stroke fill markers"
x="29.674702"
y="41.839462"
id="text19"><tspan
sodipodi:role="line"
id="tspan19"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.01985px;font-family:Futura-Medium;-inkscape-font-specification:Futura-Medium;stroke:#000000;stroke-width:0.61415;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:0.0516633;paint-order:stroke fill markers"
x="29.674702"
y="41.839462">x.y</tspan></text>
<text
xml:space="preserve"
style="font-size:7.01985px;writing-mode:lr-tb;direction:ltr;display:inline;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.14064;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:0.0516633;paint-order:stroke fill markers"
x="29.675184"
y="41.839504"
id="text19-7"><tspan
sodipodi:role="line"
id="tspan19-2"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.01985px;font-family:Futura-Medium;-inkscape-font-specification:Futura-Medium;stroke:#000000;stroke-width:1.14064;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:0.0516633;paint-order:stroke fill markers"
x="29.675184"
y="41.839504">x.y</tspan></text>
<text
xml:space="preserve"
style="font-size:13.8667px;writing-mode:lr-tb;direction:ltr;display:inline;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.61415;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:0.0516633;paint-order:stroke fill markers"
x="9.1199589"
y="37.324699"
id="text19-5"><tspan
sodipodi:role="line"
id="tspan19-6"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:13.8667px;font-family:'Adwaita Sans';-inkscape-font-specification:'Adwaita Sans Semi-Bold';stroke:#000000;stroke-width:0.61415;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:0.0516633;paint-order:stroke fill markers"
x="9.1199589"
y="37.324699">I</tspan></text>
<text
xml:space="preserve"
style="font-size:13.8667px;writing-mode:lr-tb;direction:ltr;display:inline;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.14064;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:0.0516633;paint-order:stroke fill markers"
x="9.1539106"
y="37.267509"
id="text19-7-2"><tspan
sodipodi:role="line"
id="tspan19-2-9"
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:13.8667px;font-family:'Adwaita Sans';-inkscape-font-specification:'Adwaita Sans Semi-Bold';stroke:#000000;stroke-width:1.14064;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:0.0516633;paint-order:stroke fill markers"
x="9.1539106"
y="37.267509">I</tspan></text>
</svg>

After

Width:  |  Height:  |  Size: 15 KiB

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