reasonml / reason

Simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems
http://reasonml.github.io
MIT License
10.12k stars 428 forks source link

(Special) unified record type + instantiation #1212

Closed sgrove closed 1 month ago

sgrove commented 7 years ago

Working on a component for a designer friend with an object that has dozens (or hundreds) of fields, I'd like to have

  1. Field name safety
  2. Autocomplete support for tooling
  3. Convenience for my coworker, who doesn't want to list every field twice, once for the types, then again for the actual values

Currently reason looks like:

``` type iconPaths = { fillPlay: string, fillPause: string, fillSkipForwards: string, fillSkipBackwards: string }; let iconPaths = { fillPlay: "M17,12L7,22V2L17,12z", fillPause: "M17,22h-4V2h4V22z M11,2H7v20h4V2z", fillSkipForwards: "M9.5,22v-5l-5,5V2l5,5V2l10,10L9.5,22z", fillSkipBackwards: "M4.5,12l10-10v5l5-5v20l-5-5v5L4.5,12z" }; ``` ``` type iconPaths = { fillPlay: string, fillPause: string, fillSkipForwards: string, fillSkipBackwards: string, strokeSound: string, strokeSoundWave1: string, strokeSoundWave2: string, strokeSoundWave3: string, strokeSlashBackwards: string, strokeSearchLens: string, strokeSearchHandle: string, strokeXLeft: string, strokeXRight: string, strokeDropdownCaret: string, strokeCircle: string, strokeDownload: string, strokeGlobe: string, strokeClose: string, strokeTime: string, strokeSpin: string, strokeCommit: string, strokeCog: string, strokeDot: string, strokeEye: string, strokeStar: string, strokeUser: string, strokeCodeLeft: string, strokeCodeSlash: string, strokeCodeRight: string, strokeNodejs: string, strokePythonNorth: string, strokePythonSouth: string, fillPythonNorth: string, fillPythonSouth: string, fillQuestion: string, fillNodejs: string, fillGithub: string, fillOctocat: string, fillBolt: string, fillAuth0: string, fillGoogle1: string, fillGoogle2: string, fillGoogle3: string, fillGoogle4: string, fillTwitter: string, strokePrecursor: string, strokeCheck: string, strokeTimes: string, strokePlus: string, strokeMinus: string, strokeCursor: string, strokeBorderCircle: string, strokeBorderSquare: string, strokeRectangle: string, strokeLine: string, strokeText: string, strokePencil: string, strokeEllipse: string, strokeUsers: string, strokeChats: string, strokeCrosshair: string, strokeIbeam: string, strokeBlog: string, strokeClock: string, strokeDelete: string, strokeShift: string, strokeOption: string, strokeControl: string, strokeCommand: string, strokeEsc: string, strokeSpace: string, strokeClick1: string, strokeClick2: string, strokeClick3: string, strokePrivate: string, strokePrivateBottom: string, strokePublic: string, strokeMouse: string, strokeNewdoc: string, strokeDoc: string, strokeDocs: string, strokeDocsTeam: string, strokeLogin: string, strokeLogout: string, strokeInfo: string, strokeHome: string, strokeHash: string, strokeTeam: string, strokeArrowUp: string, strokeArrowDown: string, strokeArrowRight: string, strokeArrowLeft: string, strokeMenuTop: string, strokeMenuMid: string, strokeMenuBtm: string, strokeReadOnly: string, strokeLockTop: string, strokeChat: string, strokeMic: string, strokeSlashForward: string, strokeSlashBackward: string, strokeAt: string, strokeSharing: string, strokeEmail: string, strokePhone: string, strokeActivity: string, strokeCredit: string, strokeHeart: string, strokeFile: string, strokeVertical: string, strokeHorizontal: string, strokeRequests: string, strokeChatTeam: string, fillLogomark: string, fillGoogle: string, fillDribbble: string, fillSlack: string, fillCognitect: string, fillCognician: string, fillScrollNorth: string, fillScrollSouth: string, fillClickCursor: string, fillDot: string, fillEllipsis: string, fillEllipsisVertical: string, fillStar: string, fillNorth: string, fillSouth: string, fillEast: string, fillWest: string, fillUpDown: string, fillLeftRight: string, fillLockBottom: string, fillReadOnly: string, fillPrivate: string, fillChat1: string, fillChat2: string, fillX1: string, fillX2: string, fillX3: string, fillX4: string, fillX5: string, fillX6: string, fillX7: string, fillX8: string, fillX9: string, fillPng: string, fillPdf: string, fillCode: string, fillFilePdf: string, fillDnLogo: string }; let iconPaths = { fillPlay: "M17,12L7,22V2L17,12z", fillPause: "M17,22h-4V2h4V22z M11,2H7v20h4V2z", fillSkipForwards: "M9.5,22v-5l-5,5V2l5,5V2l10,10L9.5,22z", fillSkipBackwards: "M4.5,12l10-10v5l5-5v20l-5-5v5L4.5,12z", strokeSound: "M12,4.9v14.1l-3.7-3.7H4.9V8.7h3.3L12,4.9z", strokeSoundWave1: "M14.4,14.4c0.6-0.6,1-1.4,1-2.4s-0.4-1.8-1-2.4", strokeSoundWave2: "M16.7,16.7c1.2-1.2,2-2.9,2-4.7s-0.8-3.5-2-4.7", strokeSoundWave3: "M19.1,19.1c1.8-1.8,2.9-4.3,2.9-7.1s-1.1-5.3-2.9-7.1", strokeSlashBackwards: "M2,2l20,20", strokeSearchLens: "M17,9.5c0,4.1-3.4,7.5-7.5,7.5S2,13.6,2,9.5S5.4,2,9.5,2S17,5.4,17,9.5z", strokeSearchHandle: "M14.9,14.9L22,22", strokeXLeft: "M2,2l20,20", strokeXRight: "M2,22L22,2", strokeDropdownCaret: "M2,8h20L12,18L2,8z", strokeCircle: "M22,12c0,5.5-4.5,10-10,10S2,17.5,2,12S6.5,2,12,2S22,6.5,22,12z", strokeDownload: "M22,19.8V22H2v-2.2 M12,2v15.6 M18.7,10.9L12,17.6l-6.7-6.7", strokeGlobe: "M22,12c0,5.5-4.5,10-10,10S2,17.5,2,12S6.5,2,12,2S22,6.5,22,12z M4.6,5.3C6.4,6.4,9,7,12,7 s5.6-0.6,7.4-1.7 M19.4,18.7C17.6,17.6,15,17,12,17s-5.6,0.6-7.4,1.7 M12,2C9.2,2,7,6.5,7,12s2.2,10,5,10s5-4.5,5-10S14.8,2,12,2z M2,12h20 M12,22V2", strokeClose: "M2,2l20,20 M22,2L2,22", strokeTime: "M13,7v6H7", strokeSpin: "M21,20.7h-4v-4 M17,20.7c3-1.7,5-5,5-8.7c0-5.5-4.5-10-10-10S2,6.5,2,12c0,5.5,4.5,10,10,10 c0,0,0,0,0,0", strokeCommit: "M14.8,9.2c1.6,1.6,1.6,4.1,0,5.7s-4.1,1.6-5.7,0s-1.6-4.1,0-5.7S13.3,7.6,14.8,9.2z M9.2,14.8 L2,22 M14.8,9.2L22,2", strokeCog: "M22,12.9c-0.1,0.5-0.4,0.8-0.9,0.9c-0.6,0.1-1.7,0.2-1.7,0.2c-0.5,0.1-0.9,0.6-0.9,1.1c0,0.2,0.1,0.4,0.2,0.6 c0,0,0.7,0.9,1,1.4c0.3,0.4,0.3,0.9,0,1.2c-0.4,0.5-0.8,1-1.4,1.4c-0.2,0.2-0.4,0.2-0.6,0.2c-0.2,0-0.4-0.1-0.6-0.2l-1.4-1 c-0.2-0.1-0.4-0.2-0.6-0.2c-0.5,0-1,0.4-1.1,0.9l-0.2,1.7c-0.1,0.5-0.4,0.8-0.9,0.9c-0.3,0-0.7,0-1,0s-0.6,0-1,0 c-0.5-0.1-0.8-0.4-0.9-0.9c0,0-0.2-1.6-0.2-1.7c-0.1-0.5-0.5-0.9-1.1-0.9c-0.2,0-0.5,0.1-0.7,0.2l-1.3,1c-0.2,0.2-0.4,0.2-0.6,0.2 c-0.2,0-0.4-0.1-0.6-0.2c-0.5-0.4-1-0.8-1.4-1.4C4,18,4,17.5,4.3,17.1l1-1.3c0.2-0.2,0.2-0.4,0.2-0.7c0-0.6-0.4-1-1-1.1l-1.6-0.2 c-0.5-0.1-0.8-0.4-0.9-0.9C2,12.3,2,11.7,2.1,11c0-0.5,0.4-0.8,0.9-0.9L4.5,10c0.5-0.1,1-0.5,1-1.1c0-0.2-0.1-0.5-0.2-0.6 c0,0-0.7-0.9-1-1.3C4,6.5,4,6,4.3,5.7c0.4-0.5,0.8-1,1.4-1.4C6,4,6.5,4,6.9,4.3l1.3,1c0.2,0.1,0.4,0.2,0.7,0.2c0.5,0,1-0.4,1.1-0.9 l0.2-1.7c0.1-0.5,0.4-0.8,0.9-0.9c0.6-0.1,1.3-0.1,1.9,0c0.5,0.1,0.8,0.4,0.9,0.9L14,4.6c0.1,0.5,0.5,0.9,1.1,0.9 c0.2,0,0.4-0.1,0.6-0.2c0,0,0.9-0.7,1.4-1C17.5,4,18,4,18.3,4.3c0.5,0.4,1,0.8,1.4,1.4C20,6,20,6.5,19.7,6.9c0,0-1,1.4-1,1.4 c-0.1,0.2-0.2,0.4-0.2,0.6c0,0.5,0.4,1,0.9,1.1c0,0,1.2,0.2,1.7,0.2c0.5,0.1,0.8,0.4,0.9,0.9C22,11.6,22,12.3,22,12.9z", strokeDot: "M14,12c0,1.1-0.9,2-2,2s-2-0.9-2-2s0.9-2,2-2S14,10.9,14,12z", strokeEye: "M12,5.3C7.5,5.3,3.6,8,2,12c1.6,4,5.5,6.7,10,6.7S20.4,16,22,12C20.4,8,16.5,5.3,12,5.3z", strokeStar: "M12,2.5l3.1,6.3l6.9,1l-5,4.9l1.2,6.9L12,18.3l-6.2,3.2L7,14.6L2,9.8l6.9-1L12,2.5z", strokeUser: "M17.6,7.6c0,3.1-2.5,5.6-5.6,5.6s-5.6-2.5-5.6-5.6S8.9,2,12,2S17.6,4.5,17.6,7.6z M6.2,11.9 c-1.9,1.6-3.1,4-3.1,6.8c0,1.8,4,3.3,8.9,3.3s8.9-1.5,8.9-3.3c0-2.7-1.2-5.1-3.1-6.8", strokeCodeLeft: "M9.4,21.7l5.2-19.3", strokeCodeSlash: "M8,18l-6-6l6-6", strokeCodeRight: "M16,6l6,6l-6,6", strokeNodejs: "M8.9,8.1v8.4c0,1.5-0.8,2.3-2.2,2.3c-0.4,0-0.8,0-1.7-0.5l-1.2-0.7c-0.5-0.3-0.8-0.8-0.8-1.3 V7.8c0-0.5,0.3-1.1,0.8-1.3l7.3-4.2c0.5-0.3,1.1-0.3,1.5,0l7.3,4.2c0.5,0.3,0.8,0.8,0.8,1.3v8.5c0,0.6-0.3,1.1-0.8,1.3l-7.3,4.2 C12.5,21.9,12.3,22,12,22c-0.3,0-0.5-0.1-0.8-0.2l-2.4-1.4 M11.1,13.3c0,1.4,1,2.3,2.9,2.3c2.4,0,3.2-0.7,3.2-1.8 c0-1-1.2-1.7-2.9-1.7c-1.6,0-2.9-0.4-2.9-1.6c0-1,0.6-1.7,2.6-1.7c2.7,0,3,1.3,3,2.1", strokePythonNorth: "M12,7.1H7.2 M16.8,7.1V4.7c0-1.3-1.1-2.3-2.4-2.5C13.5,2.1,12.7,2,11.9,2 c-0.8,0-1.6,0.1-2.3,0.2c-2,0.4-2.4,1.1-2.4,2.5v2.4H5.4c-1.4,0-2.6,0.8-3,2.4c-0.4,1.8-0.5,3,0,4.8c0.3,1.4,1.1,2.4,2.5,2.4h2.2 v-0.1c0-2.6,2.1-4.7,4.7-4.7h0h0h0C14.6,12,16.8,9.8,16.8,7.1L16.8,7.1z", strokePythonSouth: "M11.9,16.8h4.9 M7.2,16.8v2.4c0,1.3,1.1,2.1,2.4,2.4c1.5,0.4,3,0.5,4.8,0 c1.2-0.3,2.4-1,2.4-2.4v-2.4h2.4c1.4,0,1.9-1,2.4-2.4c0.5-1.5,0.5-2.9,0-4.8c-0.3-1.4-1-2.4-2.4-2.4h-2.4", fillPythonNorth: "M9.3,3.5c0.5,0,0.9,0.4,0.9,0.9c0,0.5-0.4,0.9-0.9,0.9c-0.5,0-0.9-0.4-0.9-0.9C8.4,3.9,8.8,3.5,9.3,3.5 z", fillPythonSouth: "M14.7,18.6c0.5,0,0.9,0.4,0.9,0.9c0,0.5-0.4,0.9-0.9,0.9c-0.5,0-0.9-0.4-0.9-0.9 C13.8,19,14.2,18.6,14.7,18.6z", fillQuestion: "M9.9,7.5C10.5,7.2,11.1,7,11.9,7c1,0,1.9,0.2,2.5,0.7c0.7,0.5,1,1.2,1,2.1c0,0.6-0.1,1.1-0.4,1.5 c-0.2,0.2-0.5,0.6-1,0.9l-0.5,0.4c-0.3,0.2-0.4,0.4-0.5,0.7c-0.1,0.2-0.1,0.4-0.1,0.8h-1.8c0-0.8,0.1-1.3,0.2-1.6 c0.1-0.3,0.4-0.6,0.9-1l0.5-0.4c0.2-0.1,0.3-0.3,0.4-0.4c0.2-0.2,0.3-0.5,0.3-0.8c0-0.3-0.1-0.7-0.3-0.9c-0.2-0.3-0.6-0.4-1.1-0.4 c-0.5,0-0.9,0.2-1.1,0.5c-0.2,0.3-0.3,0.7-0.3,1.1H8.6C8.6,8.9,9.1,8,9.9,7.5z M11,15.1h2V17h-2V15.1z", fillNodejs: "M12,22c-0.3,0-0.5-0.1-0.8-0.2l-2.4-1.4c-0.4-0.2-0.2-0.3-0.1-0.3c0.5-0.2,0.6-0.2,1.1-0.5c0.1,0,0.1,0,0.2,0l1.9,1.1 c0.1,0,0.2,0,0.2,0l7.3-4.2c0.1,0,0.1-0.1,0.1-0.2V7.8c0-0.1,0-0.2-0.1-0.2l-7.3-4.2c-0.1,0-0.2,0-0.2,0L4.6,7.6 c-0.1,0-0.1,0.1-0.1,0.2v8.5c0,0.1,0,0.2,0.1,0.2l2,1.2c1.1,0.5,1.8-0.1,1.8-0.7V8.5c0-0.1,0.1-0.2,0.2-0.2h0.9 c0.1,0,0.2,0.1,0.2,0.2v8.4c0,1.5-0.8,2.3-2.2,2.3c-0.4,0-0.8,0-1.7-0.5l-1.9-1.1c-0.5-0.3-0.8-0.8-0.8-1.3V7.8 c0-0.5,0.3-1.1,0.8-1.3l7.3-4.2c0.5-0.3,1.1-0.3,1.5,0l7.3,4.2c0.5,0.3,0.8,0.8,0.8,1.3v8.5c0,0.5-0.3,1.1-0.8,1.3l-7.3,4.2 C12.5,21.9,12.3,22,12,22L12,22z M14.3,16.2c-3.2,0-3.9-1.5-3.9-2.7c0-0.1,0.1-0.2,0.2-0.2h0.9c0.1,0,0.2,0.1,0.2,0.2 c0.1,1,0.6,1.5,2.5,1.5c1.5,0,2.2-0.3,2.2-1.2c0-0.5-0.2-0.8-2.6-1.1c-2-0.2-3.2-0.6-3.2-2.2c0-1.5,1.2-2.4,3.3-2.4 c2.3,0,3.5,0.8,3.7,2.6c0,0.1,0,0.1-0.1,0.2c0,0-0.1,0.1-0.2,0.1h-1c-0.1,0-0.2-0.1-0.2-0.2c-0.2-1-0.8-1.3-2.3-1.3 c-1.7,0-1.9,0.6-1.9,1c0,0.5,0.2,0.7,2.5,1c2.3,0.3,3.3,0.7,3.3,2.3C17.9,15.3,16.6,16.2,14.3,16.2z", fillGithub: "M12,2.2c-5.5,0-10,4.5-10,10c0,4.4,2.9,8.2,6.8,9.5c0.5,0.1,0.7-0.2,0.7-0.5c0-0.2,0-0.9,0-1.7 c-2.8,0.6-3.4-1.3-3.4-1.3C5.7,17.1,5,16.7,5,16.7c-0.9-0.6,0.1-0.6,0.1-0.6c1,0.1,1.5,1,1.5,1C7.5,18.7,9,18.3,9.5,18 c0.1-0.6,0.3-1.1,0.6-1.3c-2.2-0.3-4.6-1.1-4.6-4.9c0-1.1,0.4-2,1-2.7C6.5,8.8,6.2,7.8,6.7,6.4c0,0,0.8-0.3,2.7,1 c0.8-0.2,1.7-0.3,2.5-0.3c0.8,0,1.7,0.1,2.5,0.3c1.9-1.3,2.7-1,2.7-1c0.5,1.4,0.2,2.4,0.1,2.6c0.6,0.7,1,1.6,1,2.7 c0,3.8-2.3,4.7-4.6,4.9c0.4,0.3,0.7,0.9,0.7,1.9c0,1.3,0,2.4,0,2.7c0,0.3,0.2,0.6,0.7,0.5c4-1.3,6.8-5.1,6.8-9.5 C22,6.7,17.5,2.2,12,2.2z", fillOctocat: "M17.7,11.9c0-1-0.3-1.8-0.9-2.4c0.1-0.2,0.4-1.1-0.1-2.4c0,0-0.8-0.2-2.5,0.9c-0.7-0.2-1.5-0.3-2.3-0.3 c-0.8,0-1.5,0.1-2.3,0.3C8,6.8,7.3,7.1,7.3,7.1C6.8,8.3,7.1,9.2,7.2,9.5c-0.6,0.6-0.9,1.4-0.9,2.4c0,3.5,2.1,4.2,4.1,4.4 C10,16.6,9.8,17.1,9.8,18c0,1.2,0,3.1,0,3.1c0.7,0.2,1.5,0.3,2.2,0.3s1.5-0.1,2.2-0.3c0,0,0-1.9,0-3.1c0-0.8-0.3-1.4-0.6-1.7 C15.6,16.1,17.7,15.3,17.7,11.9z", fillBolt: "M13.2,11l5.6-0.7L5.9,22l5.7-9.3l-6.5,1L18.9,2L13.2,11z", fillAuth0: "M17.3,18.2l-2-6.2l5.3-3.8H14L12,2l0,0h6.5l2,6.2l0,0l0,0C21.7,11.8,20.5,15.8,17.3,18.2L17.3,18.2z M6.7,18.2L6.7,18.2L12,22l5.3-3.8L12,14.4L6.7,18.2L6.7,18.2z M3.5,8.2C2.3,12,3.7,16,6.7,18.2l0,0l2-6.2L3.5,8.2l6.5,0L12,2l0,0 H5.5L3.5,8.2L3.5,8.2z", fillGoogle1: "M12.2,2C8.3,2,4.9,4.3,3.3,7.5l3.3,2.6C7.4,7.7,9.6,6,12.2,6c1.9,0,3.2,0.8,3.8,1.5l2.9-2.8 C17.2,3,14.9,2,12.2,2z", fillGoogle2: "M6.3,12c0-0.7,0.1-1.3,0.3-1.9L3.3,7.5C2.6,8.9,2.2,10.4,2.2,12s0.4,3.2,1.1,4.5l3.3-2.6 C6.4,13.3,6.3,12.7,6.3,12z", fillGoogle3: "M12.2,18c-2.6,0-4.8-1.8-5.6-4.1l-3.3,2.6c1.6,3.3,5,5.5,8.9,5.5c2.7,0,5-0.9,6.6-2.4l-3.3-2.5 C14.8,17.6,13.7,18,12.2,18z", fillGoogle4: "M12.2,10.2V14h5.4c-0.1,0.9-0.7,2.2-2,3.1l3.2,2.5c1.9-1.7,3-4.3,3-7.4c0-0.8-0.1-1.4-0.2-2 C21.6,10.2,12.2,10.2,12.2,10.2z", fillTwitter: "M8.3,20.1c7.5,0,11.7-6.3,11.7-11.7c0-0.2,0-0.4,0-0.5c0.8-0.6,1.5-1.3,2-2.1 c-0.7,0.3-1.5,0.5-2.4,0.6c0.9-0.5,1.5-1.3,1.8-2.3c-0.8,0.5-1.7,0.8-2.6,1C17.3,3.5,14.7,3.4,13,5c-1.1,1-1.5,2.5-1.2,3.9 C8.5,8.7,5.5,7.2,3.4,4.6c-1.1,1.9-0.5,4.3,1.3,5.5c-0.7,0-1.3-0.2-1.9-0.5c0,0,0,0,0,0.1c0,2,1.4,3.6,3.3,4 c-0.6,0.2-1.2,0.2-1.9,0.1c0.5,1.7,2.1,2.8,3.8,2.8c-1.5,1.1-3.2,1.8-5.1,1.8c-0.3,0-0.7,0-1-0.1C3.9,19.5,6.1,20.1,8.3,20.1", strokePrecursor: "M35.7,45.3V95 M60.5,84.4C82,78.6,94.8,56.5,89,34.9C83.2,13.4,61.1,0.6,39.5,6.4S5.2,34.3,11,55.9", strokeCheck: "M35,80 L5,50 M95,20L35,80", strokeTimes: "M82.5,82.5l-65-65 M82.5,17.5l-65,65", strokePlus: "M50,72.5v-45 M27.5,50h45", strokeMinus: "M27.5,50h45", strokeCursor: "M23.3,80.4V5 l53.3,53.3c0,0-21.5,0-21.5,0s12.4,29.8,12.4,29.8L50.9,95c0,0-12.4-29.8-12.4-29.8S23.3,80.4,23.3,80.4z", strokeBorderCircle: "M95,50c0,24.9-20.1,45-45,45S5,74.9,5,50S25.1,5,50,5 S95,25.1,95,50z", strokeBorderSquare: "M95,95H5V5h90V95z", strokeRectangle: "M87.5,87.5h-75v-75h75V87.5z M20,5H5v15h15V5z M95,5H80v15h15V5z M20,80H5v15h15V80z M95,80H80v15h15V80z", strokeLine: "M95,20H80V5h15V20z M20,80H5v15h15V80z M87.5,12.5l-75,75", strokeText: "M65.9,92.4H34.1H50 V7.6 M95,21.4c0,0-7.9-13.8-7.9-13.8c0,0-74.1,0-74.1,0L5,21.4", strokePencil: "M89.5,10.5c3.9,3.9,6.3,7.8,5.3,8.8L24.3,89.8L5,95l5.2-19.3L80.7,5.2C81.7,4.2,85.6,6.6,89.5,10.5z M22.5,88.1L11.9,77.5 M81.3,8.1c0.9,1.7,2.6,3.8,4.7,5.9c2.1,2.1,4.2,3.8,5.9,4.7 M70.3,19.1c0.9,1.7,2.6,3.8,4.7,5.9c2.1,2.1,4.2,3.8,5.9,4.7 M68.3,21.1c0.9,1.7,2.6,3.8,4.7,5.9c2.1,2.1,4.2,3.8,5.9,4.7", strokeEllipse: "M57.5,5h-15v15h15V5z M95,42.5H80v15h15V42.5z M20,42.5H5v15h15V42.5z M57.5,80h-15v15h15V80z M87.5,50c0,20.7-16.8,37.5-37.5,37.5 S12.5,70.7,12.5,50S29.3,12.5,50,12.5S87.5,29.3,87.5,50z", strokeUsers: "M59.2,40.8c0,11.5-9.3,20.8-20.8,20.8s-20.8-9.3-20.8-20.8S26.8,20,38.3,20S59.2,29.3,59.2,40.8z M16.7,57.1 C9.5,63.3,5,72.3,5,82.5C5,89.4,19.9,95,38.3,95s33.3-5.6,33.3-12.5c0-10.2-4.5-19.2-11.7-25.4 M64.8,46.4 c10-1.5,17.7-10.1,17.7-20.6C82.5,14.3,73.2,5,61.7,5c-7.3,0-13.7,3.8-17.5,9.5 M77.4,78.5c10.5-2.1,17.6-6.3,17.6-11 c0-10.2-4.5-19.2-11.7-25.4", strokeChats: "M60.8,63.2c-0.2,12-12.9,21.5-28.3,21.2 c-3.5-0.1-6.8-0.6-9.8-1.6L8.5,88.8c0,0,4.8-9.7,0.4-15.3c-2.6-3.4-4-7.3-3.9-11.4c0.2-12,12.9-21.5,28.3-21.2 C48.7,41.2,61,51.2,60.8,63.2z M68.5,73.9L89.7,83c0,0-7.2-14.5-0.6-22.9c3.8-5,6-10.9,5.9-17.2c-0.4-18-19.4-32.2-42.5-31.7 c-19.1,0.4-35,10.7-39.8,24.4", strokeCrosshair: "M50,5v90 M5,50h90", strokeIbeam: "M50,10v80 M41.3,95h-10 M68.7,95h-10 M45,50h10 M50,90 l-8.7,5 M50,90l8.7,5 M58.7,5h10 M31.3,5h10 M58.7,5L50,10 M41.3,5l8.7,5", strokeBlog: "M85,32.5H35 M35,50h50 M35,67.5h50 M25,85h60 c5.5,0,10-4.5,10-10V15H25v60c0,5.5-4.5,10-10,10S5,80.5,5,75V35h15", strokeClock: "M95,50c0,24.9-20.1,45-45,45S5,74.9,5,50S25.1,5,50,5 S95,25.1,95,50z M71.2,71.2C71.2,71.2,50,50,50,50V20", strokeDelete: "M35,80L5,50c0,0,30-30,30-30s60,0,60,0v60 C95,80,35,80,35,80z M45,35l30,30 M75,35L45,65", strokeShift: "M5,52L50,7l45,45H70.5V93H29.5V52H5z", strokeOption: "M95,15H65 M95,85H75L35,15H5", strokeControl: "M86,41L50,5L14,41", strokeCommand: "M65,35v30H35V35H65z M20,5C11.7,5,5,11.7,5,20 c0,8.3,6.7,15,15,15h15V20C35,11.7,28.3,5,20,5z M95,20c0-8.3-6.7-15-15-15c-8.3,0-15,6.7-15,15v15h15C88.3,35,95,28.3,95,20z M5,80c0,8.3,6.7,15,15,15c8.3,0,15-6.7,15-15V65H20C11.7,65,5,71.7,5,80z M80,65H65v15c0,8.3,6.7,15,15,15c8.3,0,15-6.7,15-15 C95,71.7,88.3,65,80,65z", strokeEsc: "M95,46.6c-3.2-3.2-7.4-4.8-11.7-4.8 c-9.1,0-16.5,7.4-16.5,16.5s7.4,16.5,16.5,16.5c4.2,0,8.4-1.6,11.7-4.8 M40.4,72.3c1.6,1.6,3.7,2.4,5.8,2.4c4.6,0,8.2-3.7,8.2-8.2 s-3.7-8.2-8.2-8.2S38,54.6,38,50s3.7-8.2,8.2-8.2c2.1,0,4.2,0.8,5.8,2.4 M29.7,74.7H5c0,0,0-49.5,0-49.5h24.7 M5,50h18.6", strokeSpace: "M95,65v30H5V65", strokeClick1: "M29.2,30h-24", strokeClick2: "M31.8,23.6L19.1,10.9", strokeClick3: "M38.2,21V9", strokePrivate: "M72.5,50V37.5 C72.5,25.1,62.4,15,50,15S27.5,25.1,27.5,37.5V50", strokePrivateBottom: "M80,95H20V50h60V95z", strokePublic: "M65,95H5V50h60V95z M95,50V27.5 C95,15.1,84.9,5,72.5,5S50,15.1,50,27.5V50", strokeMouse: "M58,5h17c2.8,0,5,2.2,5,5v55c0,16.6-13.4,30-30,30 S20,81.6,20,65V10c0-2.8,2.2-5,5-5h20c2.8,0,5,2.2,5,5c0,0,0,25,0,25", strokeNewdoc: "M58,80V50 M43,65h30 M12,77l0-52L32,5l34,0v20 M58,35 c-16.6,0-30,13.4-30,30s13.4,30,30,30s30-13.4,30-30S74.6,35,58,35z M12,25h20V5", strokeDoc: "M84,94H16V6h68V94z", strokeDocs: "M87.5,95h-51V29h51V95z M63.5,29V5h-51v66h24", strokeDocsTeam: "M63.5,95h-51V29h51V95z M63.5,71h24V5h-51v24", strokeLogin: "M35,82.1V70 M5,43.6h42.9 M30.7,60.7l17.1-17.1 L30.7,26.4 M35,17.1V5h60c0,0,0,77.1,0,77.1L52.1,95V17.9L88.3,7", strokeLogout: "M5,82.1 M65,55v27.1 M95,43.6H52.1 M77.9,60.7L95,43.6 L77.9,26.4 M65,32.1V5H5c0,0,0,77.1,0,77.1L47.9,95V17.9L11.5,7", strokeInfo: "M50,40v35 M59,66l-9,9 M41,49l9-9 M50,25 c-1.4,0-2.5,1.1-2.5,2.5S48.6,30,50,30s2.5-1.1,2.5-2.5S51.4,25,50,25z M95,50c0,24.9-20.1,45-45,45S5,74.9,5,50S25.1,5,50,5 S95,25.1,95,50z", strokeHome: "M95,95H5 V50L50,5l45,45V95z M80,30V5", strokeHash: "M54.7,95L72.2,5 M46.7,5L29.3,95 M20,37h65 M15,67h65", strokeTeam: "M61.8,38.2c13,13,13,34,0,47s-34,13-47,0s-13-34,0-47S48.8,25.3,61.8,38.2z M38.2,14.7c-13,13-13,34,0,47s34,13,47,0s13-34,0-47 S51.2,1.8,38.2,14.7z", strokeArrowUp: "M50,95V5 M86,41L50,5L14,41", strokeArrowDown: "M50,95V5 M14,59l36,36l36-36", strokeArrowRight: "M95,50H5 M59,86l36-36L59,14", strokeArrowLeft: "M95,50H5 M41,14L5,50l36,36", strokeMenuTop: "M5,25h90", strokeMenuMid: "M5,50h90", strokeMenuBtm: "M5,75h90", strokeReadOnly: "M50,25.9c-18.8,0-35.3,9.6-45,24.1 c9.7,14.5,26.2,24.1,45,24.1S85.3,64.5,95,50C85.3,35.5,68.8,25.9,50,25.9z", strokeLockTop: "M75,45V30C75,16.2,63.8,5,50,5S25,16.2,25,30v15", strokeChat: "M50,5c24.9,0,45,20.1,45,45c0,24.9-20.1,45-45,45H5V50 C5,25.1,25.1,5,50,5z", strokeMic: "M80,50c0,16.6-13.4,30-30,30S20,66.6,20,50 M50,5 c-8.3,0-15,6.7-15,15v30c0,8.3,6.7,15,15,15c8.3,0,15-6.7,15-15V20C65,11.7,58.3,5,50,5z M50,80v15 M65,95H35", strokeSlashForward: "M5,95L95,5", strokeSlashBackward: "M5,5l90,90", strokeAt: "M70,50c0,11-9,20-20,20s-20-9-20-20s9-20,20-20 S70,39,70,50z M70,25v50 M90.3,70c3-6,4.7-12.8,4.7-20C95,25.1,74.9,5,50,5S5,25.1,5,50c0,24.9,20.1,45,45,45c7.2,0,14-1.7,20-4.7", strokeSharing: "M50,5h45c0,0,0,45,0,45 M50,50L95,5 M27.5,5H5v90 c0,0,90,0,90,0V72.5", strokeEmail: "M95,35v60H5V35L50,5L95,35z M95,35L5,95 M5,35l90,60", strokePhone: "M70,95 H30c-5.5,0-10-4.5-10-10V15c0-5.5,4.5-10,10-10h40c5.5,0,10,4.5,10,10v70C80,90.5,75.5,95,70,95z M50.8,70.1 c-3.4-0.5-6.2,2.4-5.7,5.7c0.3,2.1,2,3.8,4.1,4.1c3.4,0.5,6.2-2.4,5.7-5.7C54.6,72.1,52.9,70.4,50.8,70.1z M65,20H35v35h30V20z", strokeActivity: "M92.1,34.1c0,0-31.8,31.8-31.8,31.8L39.1,44.7L17.9,65.9 M5,5v90h90", strokeCredit: "M95,80H5V20h90V80z M5,35h90 M15,65h50", strokeHeart: "M88.4,50c8.8-8.8,8.8-23,0-31.8s-23-8.8-31.8,0 C52.2,22.6,50,28.3,50,34.1c0-5.8-2.2-11.5-6.6-15.9c-8.8-8.8-23-8.8-31.8,0c-8.8,8.8-8.8,23,0,31.8c0,0,38.4,38.4,38.4,38.4 S88.4,50,88.4,50z", strokeFile: "M80,95H20V5h60V95z", strokeVertical: "M50,95V5", strokeHorizontal: "M5,50h90", strokeRequests: "M95,65v30H65 c-16.6,0-30-13.4-30-30c0-16.6,13.4-30,30-30C81.6,35,95,48.4,95,65z M63.3,25C59.2,13.4,48.1,5,35,5C18.4,5,5,18.4,5,35v30h20 M65,80V50 M50,65h30", strokeChatTeam: "M35,35c16.6,0,30,13.4,30,30 c0,16.6-13.4,30-30,30H5V65C5,48.4,18.4,35,35,35z M75,65h20V35C95,18.4,81.6,5,65,5c-13.1,0-24.2,8.4-28.3,20", fillLogomark: "M43,100H29.5V39H43V100z M94,33.8C90.9,22,83.3,12.2,72.8,6.1C62.2,0,50-1.6,38.2,1.6 C26.5,4.7,16.6,12.3,10.6,22.8C4.5,33.3,2.9,45.6,6,57.4l1.7,6.4l12.7-3.4l-1.7-6.4c-4.6-17.2,5.6-35,22.9-39.6 c8.3-2.2,17.1-1.1,24.6,3.2c7.5,4.3,12.8,11.3,15.1,19.7c4.6,17.2-5.6,35-22.9,39.6L52,78.5l3.4,12.7l6.4-1.7 C86.1,83.1,100.5,58,94,33.8z", fillGoogle: "M53.8,0C35.5,0,25.6,11.6,25.6,24.5c0,9.8,7.1,21,21.6,21h3.7c0,0-1,2.4-1,4.8c0,3.5,1.2,5.4,3.9,8.4 c-25,1.5-35.1,11.6-35.1,22.5c0,9.5,9.1,18.9,28.2,18.9c22.6,0,34.4-12.6,34.4-24.9c0-8.7-4.3-13.5-15.3-21.7 c-3.2-2.5-3.9-4.1-3.9-6c0-2.7,1.6-4.5,2.2-5.1c1-1.1,2.8-2.3,3.5-2.9c3.7-3.1,8.9-7.7,8.9-17c0-6.3-2.6-11.8-8.6-16.9h7.3L80.9,0 L53.8,0L53.8,0z M48.8,4.1c3.3,0,6.1,1.2,9,3.6c3.2,2.9,8.4,10.8,8.4,20.5c0,10.5-8.2,13.4-12.6,13.4c-2.2,0-4.8-0.6-6.9-2.1 C41.8,36.4,37,28,37,17.9C37,8.9,42.4,4.1,48.8,4.1z M56,62.7c1.4,0,2.4,0.1,2.4,0.1s3.3,2.4,5.6,4.1c5.4,4.2,8.7,7.5,8.7,13.2 c0,7.9-7.4,14.1-19.3,14.1c-13.1,0-23.1-6.1-23.1-16C30.4,70,37.2,62.9,56,62.7L56,62.7z", fillDribbble: "M50,99.9C22.4,99.9,0,77.5,0,50C0,22.5,22.4,0.1,50,0.1 c27.6,0,50,22.4,50,49.9C100,77.5,77.6,99.9,50,99.9L50,99.9z M92.2,56.8c-1.5-0.5-13.2-4-26.6-1.8c5.6,15.3,7.9,27.8,8.3,30.4 C83.4,79,90.3,68.7,92.2,56.8L92.2,56.8z M66.7,89.3C66,85.6,63.6,72.5,57.6,57c-0.1,0-0.2,0.1-0.3,0.1 c-24.1,8.4-32.7,25.1-33.5,26.6c7.2,5.6,16.3,9,26.2,9C55.9,92.7,61.6,91.5,66.7,89.3L66.7,89.3z M18.3,78.6 c1-1.7,12.7-21,34.7-28.1c0.6-0.2,1.1-0.3,1.7-0.5c-1.1-2.4-2.2-4.8-3.5-7.2c-21.3,6.4-42,6.1-43.9,6.1c0,0.4,0,0.9,0,1.3 C7.3,61,11.5,71,18.3,78.6L18.3,78.6z M8.2,41.3c1.9,0,19.5,0.1,39.5-5.2C40.6,23.6,33,13,31.8,11.5C19.9,17.1,11,28.1,8.2,41.3 L8.2,41.3z M40,8.6c1.2,1.6,8.9,12.1,15.9,25c15.2-5.7,21.6-14.3,22.4-15.4C70.8,11.5,60.9,7.4,50,7.4C46.6,7.4,43.2,7.8,40,8.6 L40,8.6z M83.1,23.1c-0.9,1.2-8.1,10.4-23.8,16.8c1,2,1.9,4.1,2.8,6.2c0.3,0.7,0.6,1.5,0.9,2.2c14.2-1.8,28.3,1.1,29.7,1.4 C92.6,39.6,89,30.4,83.1,23.1L83.1,23.1z", fillSlack: "M99.7,52.8l-0.1-0.4c-1.2-3.5-4.5-5.8-8.3-5.7c-0.9,0-1.9,0.2-2.8,0.5l-9.8,3.3l-6.3-18.8l0,0l0,0 c9.3-3.2,9.4-3.2,9.4-3.2c3.9-1.3,7.2-5.5,5.9-10.1L87.6,18c-1.2-3.5-4.4-5.8-8.3-5.8c-0.9,0-1.7,0.1-2.6,0.4L67,15.8l-3.2-9.6 c-0.7-2.2-2.3-4-4.4-5c-1.2-0.6-2.6-0.9-3.9-0.9c-0.9,0-1.8,0.2-2.7,0.5c-4.4,1.5-6.9,6.2-5.6,10.6l0.1,0.4l3.2,9.6l-18.6,6.2 L28.7,18c-1.2-3.6-4.5-6-8.3-5.9c-0.9,0-1.8,0.2-2.7,0.5c-4.4,1.5-6.9,6.2-5.6,10.6c0,0.1,0.1,0.3,0.1,0.4l3.2,9.5l-9.4,3.2 c-4.4,1.5-6.9,6.1-5.6,10.6c0,0.1,0.1,0.3,0.1,0.4c1.2,3.5,4.3,5.7,8.1,5.7l0,0c1,0,1.9-0.2,2.9-0.5c3.3-1.1,6.4-2.2,9.4-3.2l0,0v0 l0,0l6.3,18.7l-9.4,3.2c-4.4,1.5-6.9,6.2-5.6,10.7c0,0.1,0.1,0.3,0.1,0.4c1.2,3.4,4.3,5.6,8.1,5.6v0c1,0,2-0.2,3-0.5l9.2-3.1 l3.3,9.7c1.2,3.6,4.5,6,8.3,5.9c0.9,0,1.8-0.2,2.7-0.5c4.4-1.5,6.9-6.2,5.6-10.6c0-0.1-0.1-0.3-0.1-0.4L49,78.4l18.6-6.4l3.3,9.9 c1.2,3.6,4.5,6,8.3,5.9l0,0c0.9,0,1.8-0.2,2.7-0.5c4.4-1.5,6.9-6.2,5.5-10.8l-0.1-0.2l-3.4-10l10.3-3.5c0,0,3.2-1.4,4.2-3 C100,57.8,100.4,55.1,99.7,52.8z M43.6,62.3l-6.3-18.7c7.3-2.5,13.5-4.6,18.6-6.3L62.2,56L43.6,62.3z", fillCognitect: "M75.6,59.9L35.2,74.6V25.4l40.4,14.7V4.2c0-0.4-0.2-0.7-0.6-0.8l-9.1-3.3C65.7,0,65.4,0,65.1,0.2 c-0.2,0.2-0.4,0.4-0.4,0.7v23.7L25.6,10.3c-0.3-0.1-0.6-0.1-0.8,0.1c-0.2,0.2-0.4,0.4-0.4,0.7v77.7c0,0.3,0.1,0.5,0.4,0.7 c0.2,0.2,0.5,0.2,0.8,0.1l39.2-14.3v23.7c0,0.3,0.1,0.5,0.4,0.7c0.1,0.1,0.3,0.2,0.5,0.2c0.1,0,0.2,0,0.3-0.1l9.1-3.3 c0.3-0.1,0.6-0.5,0.6-0.8L75.6,59.9L75.6,59.9z", fillCognician: "M67.3,39.6c0.1-0.2,0.8-0.9,1.6-0.9H69c0.5,0.1,0.8,0.2,1,0.7c0.1,0.1,0.1,0.5,0.1,0.6 c-0.2,0.4-0.4,0.8-1.1,1.2c-0.3,0.2-1.7,0.8-2.4,0.9l-0.4,0.1C66.5,41.3,66.9,40.3,67.3,39.6 M39.4,42.2c-0.7-0.1-2.2-0.8-2.4-0.9 c-0.7-0.5-0.9-0.9-1.1-1.2c-0.1-0.1,0-0.5,0.1-0.6c0.2-0.5,0.5-0.6,1-0.7H37c0.8,0,1.5,0.7,1.6,0.9c0.5,0.7,0.8,1.7,1.1,2.7 L39.4,42.2L39.4,42.2z M85.4,71.6C80.6,78.1,74.2,82,66.9,83.3c-1.2,0.2-2.9,0.6-4.6,0.2c-3.2-0.7-3.4-4.2-3.3-4.7l6.1-31.6 c0.5-0.1,0.9-0.2,1.3-0.3l1-0.2c1.5-0.3,3.6-1.3,4.3-1.8c1.5-1.2,2.2-2.3,2.6-3.1c0.8-1.8,0.3-3.6-0.1-4.5c-0.9-2-2.7-3.2-4.9-3.3 c-2.6-0.2-4.9,1.5-5.9,3c-1.1,1.8-1.8,4.2-2.2,6c-0.8,0.1-1.6,0.2-2.3,0.3c1.9-4.2,1-7-0.1-8.7c-1-1.6-3-3-5.7-2.9 c-2.8-0.1-4.7,1.3-5.7,2.9c-1.1,1.7-1.9,4.6-0.1,8.7c-0.8-0.1-1.6-0.2-2.3-0.3c-0.5-1.9-1.2-4.3-2.2-6c-1-1.6-3.2-3.2-5.9-3 c-2.2,0.1-3.9,1.3-4.9,3.3c-0.4,0.9-0.9,2.8-0.1,4.5c0.4,0.9,1,2,2.6,3.1c0.7,0.5,2.8,1.5,4.3,1.8l1,0.2c0.4,0.1,0.9,0.2,1.3,0.3 l6,32.5c0,2.1,1.2,4.8-5.9,6.8c-8.8,2.1-17.6,4.2-26.4,6.3c2.5-1.9,5-3.9,7.4-5.9c1.3-1.1,2.8-2.1,4.1-3.2c1.8-1.3,2.2-2.2,1.3-3.3 c-0.1-0.5-0.7-1.1-1.6-1.9c-4.6-3.5-8.3-7.7-11.1-12.5c-1.5-2.8-2.8-5.7-3.6-9C4.8,33.6,20.6,9.1,44.7,5.5 c18.2-2.7,35.5,6.1,43.7,21.4c1.8,3.5,3.2,7.3,4,11.4C94.4,50.2,92.8,61.6,85.4,71.6 M52.4,36.6c0.2-0.1,0.4-0.1,0.6-0.1 c0.2,0,0.4,0.1,0.6,0.1c0.6,0.2,1.8,0.9,1.5,3c0,0-0.3,1.4-1.6,2.5c-0.1,0.1-0.2,0.2-0.4,0.3c-0.2-0.1-0.4-0.2-0.4-0.3 c-1.3-1.1-1.6-2.5-1.6-2.5C50.6,37.5,51.9,36.8,52.4,36.6 M98.3,43.5c-0.5-6.8-2.2-13-5-18.4C89,16.4,81.8,9.5,72,4.7 c-13.2-6.4-26.7-6-40.2-0.2C6.5,15.4-2.4,44.3,9.2,66.6c2.5,5.2,6.1,9.9,10.9,14.1c0.3,0.2,0.6,0.5,0.8,0.8 c-2.8,2.2-5.5,4.3-8.1,6.4c-3.4,2.6-6.8,5.3-10.2,8c-0.9,0.7-1.3,1.5-0.8,2.9c0.8,1.9,3.4,1.3,3.6,1.2c9.5-2.3,19.1-4.6,28.6-6.9 c3.3-0.8,6.6-1.6,9.8-2.6c0,0,2.3-0.6,3.9-1.8c2.2-1.6,4.3-4.2,3.9-8.1l-6-32.4c1.5,0.2,13.1,0.2,14.5,0l-5.9,30.5 c-0.5,6.7,5.9,9.6,7.7,9.8l0.2,0.1c2.3,0.3,6.1-0.5,9.3-1.5c8.4-2.7,15.3-7.4,20.1-14.8C97.3,63.3,99.1,53.6,98.3,43.5", fillScrollNorth: "M35,27.5l15-15l15,15", fillScrollSouth: "M65,72.5l-15,15l-15-15H65z", fillClickCursor: "M35,66.9V25l29.6,29.6h-12l6.9,16.6L50.3,75l-6.9-16.6L35,66.9z", fillDot: "M57.5,50c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S57.5,45.9,57.5,50z", fillEllipsis: "M59,50c0,5-4,9-9,9s-9-4-9-9s4-9,9-9S59,45,59,50z M14,41c-5,0-9,4-9,9s4,9,9,9s9-4,9-9S19,41,14,41z M86,41 c-5,0-9,4-9,9s4,9,9,9s9-4,9-9S91,41,86,41z", fillEllipsisVertical: "M50,41c5,0,9,4,9,9s-4,9-9,9s-9-4-9-9S45,41,50,41z M41,86c0,5,4,9,9,9s9-4,9-9s-4-9-9-9S41,81,41,86z M41,14c0,5,4,9,9,9s9-4,9-9s-4-9-9-9S41,9,41,14z", fillStar: "M50,2.4l15.5,31.3l34.5,5L75,63.1l5.9,34.4L50,81.3L19.1,97.6L25,63.1L0,38.8l34.6-5L50,2.4z", fillNorth: "M30,20L50,0l20,20H30z", fillSouth: "M70,80l-20,20L30,80H70z", fillEast: "M80,30l20,20L80,70V30z", fillWest: "M20,70L0,50l20-20V70z", fillUpDown: "M55,80H45V20h10V80z", fillLeftRight: "M80,55H20V45h60V55z", fillLockBottom: "M87.5,95h-75V45h75V95z", fillReadOnly: "M62.5,50c0,6.9-5.6,12.5-12.5,12.5S37.5,56.9,37.5,50 S43.1,37.5,50,37.5S62.5,43.1,62.5,50z", fillPrivate: "M80,95H20V50h60V95z", fillChat1: "M32.5,50c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S32.5,45.9,32.5,50z", fillChat2: "M82.5,50c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S82.5,45.9,82.5,50z", fillX1: "M32.5,25c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S32.5,20.9,32.5,25z", fillX2: "M82.5,25c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S82.5,20.9,82.5,25z", fillX3: "M45,37.5c0,4.1-3.4,7.5-7.5,7.5S30,41.6,30,37.5s3.4-7.5,7.5-7.5S45,33.4,45,37.5z", fillX4: "M70,37.5c0,4.1-3.4,7.5-7.5,7.5S55,41.6,55,37.5s3.4-7.5,7.5-7.5S70,33.4,70,37.5z", fillX5: "M57.5,50c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S57.5,45.9,57.5,50z", fillX6: "M45,62.5c0,4.1-3.4,7.5-7.5,7.5S30,66.6,30,62.5s3.4-7.5,7.5-7.5S45,58.4,45,62.5z", fillX7: "M70,62.5c0,4.1-3.4,7.5-7.5,7.5S55,66.6,55,62.5s3.4-7.5,7.5-7.5S70,58.4,70,62.5z", fillX8: "M32.5,75c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S32.5,70.9,32.5,75z", fillX9: "M82.5,75c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S82.5,70.9,82.5,75z", fillPng: "M100,76.1H50H30H0l25-25l15,15l25-25L100,76.1z M32.3,23.9c-4,0-7.3,3.3-7.3,7.3s3.3,7.3,7.3,7.3 s7.3-3.3,7.3-7.3S36.3,23.9,32.3,23.9z", fillPdf: "M100,66.1c-0.4-5.2-9.2-8.6-9.2-8.6c-3.4-1.2-7.1-1.8-11.3-1.8c-4.5,0-9.3,0.7-15.6,2.1 c-5.5-3.9-10.3-8.8-13.9-14.3c-1.6-2.4-3-4.8-4.2-7.1c3-7.2,5.7-15,5.2-23.7C50.6,5.7,47.5,1,43.2,1c-2.9,0-5.5,2.2-7.5,6.5 C32,15.1,33,24.9,38.5,36.6c-2,4.7-3.9,9.6-5.7,14.3c-2.2,5.9-4.5,11.9-7.1,17.7C18.4,71.5,12.4,75,7.5,79.2 C4.2,82.1,0.2,86.4,0,90.8c-0.1,2.1,0.6,4,2.1,5.6C3.7,98.1,5.6,99,7.8,99c7.1,0,14-9.8,15.3-11.8c2.6-4,5.1-8.4,7.5-13.4 c6.1-2.2,12.5-3.8,18.8-5.4l2.2-0.6c1.7-0.4,3.4-0.9,5.2-1.4c1.9-0.5,3.9-1,5.8-1.6c6.4,4.1,13.3,6.7,20.1,7.7 c5.7,0.8,10.7,0.3,14.1-1.4C99.9,69.5,100.1,67.1,100,66.1z M17.6,83.6c-2.8,4.3-7.5,8.8-9.8,8.8c-0.2,0-0.5,0-0.9-0.5 c-0.3-0.3-0.3-0.5-0.3-0.8c0.1-1.6,2.2-4.4,5.2-7c2.7-2.4,5.8-4.4,9.3-6.3C19.9,79.9,18.8,81.8,17.6,83.6z M41.6,10.3 c0.6-1.3,1.2-2,1.5-2.4c0.5,0.8,1.2,2.6,1.4,5.2c0.3,5.1-0.8,10-2.4,14.8C40,22,39.1,15.5,41.6,10.3z M55.1,60.1 c-1.8,0.5-3.5,0.9-5.1,1.4L47.7,62c-4.5,1.1-9.1,2.3-13.6,3.7c1.7-4.1,3.3-8.3,4.9-12.4c1.2-3,2.3-6.1,3.6-9.2 c0.6,1,1.3,2.1,1.9,3.1c3.1,4.7,6.9,9,11.3,12.7C55.6,59.9,55.3,60,55.1,60.1z M83.6,66.1c-3.7-0.5-7.4-1.7-11.1-3.3 c6.6-1,11.6-0.7,16,0.9c1,0.4,2.7,1.3,3.9,2.2C90.2,66.5,87.1,66.6,83.6,66.1z", fillCode: "M41.6,82.8L34.3,80l24.1-62.8l7.4,2.8L41.6,82.8z M74.8,75.2l-5.6-5.6L88.8,50L69.2,30.4l5.6-5.6L100,50 L74.8,75.2z M25.2,75.2L0,50l25.2-25.2l5.6,5.6L11.2,50l19.6,19.6L25.2,75.2z", fillFilePdf: "M72.5,57.2c-0.2-2.4-4.1-3.9-4.2-3.9c-1.5-0.5-3.2-0.8-5.1-0.8c-2,0-4.2,0.3-7,0.9c-2.5-1.8-4.6-4-6.3-6.4 c-0.7-1.1-1.3-2.2-1.9-3.2c1.4-3.2,2.6-6.7,2.4-10.7c-0.2-3.1-1.6-5.2-3.5-5.2c-1.3,0-2.5,1-3.4,2.9c-1.6,3.4-1.2,7.8,1.3,13.1 c-0.9,2.1-1.7,4.3-2.5,6.4c-1,2.6-2,5.4-3.2,8c-3.3,1.3-6,2.9-8.2,4.8c-1.5,1.3-3.2,3.2-3.3,5.2c0,1,0.3,1.8,0.9,2.5 C29.1,71.6,30,72,31,72c3.2,0,6.3-4.4,6.9-5.3c1.2-1.8,2.3-3.8,3.4-6c2.7-1,5.6-1.7,8.4-2.4l1-0.3c0.8-0.2,1.5-0.4,2.4-0.6 c0.9-0.2,1.7-0.5,2.6-0.7c2.9,1.8,6,3,9,3.5c2.6,0.4,4.8,0.2,6.4-0.6C72.5,58.8,72.5,57.7,72.5,57.2z M35.4,65.1 c-1.3,1.9-3.4,4-4.4,4c-0.1,0-0.2,0-0.4-0.2c-0.1-0.1-0.1-0.2-0.1-0.3c0-0.7,1-2,2.3-3.1c1.2-1.1,2.6-2,4.2-2.8 C36.5,63.5,36,64.3,35.4,65.1z M46.2,32.2c0.3-0.6,0.5-0.9,0.7-1.1c0.2,0.4,0.5,1.2,0.6,2.3c0.1,2.3-0.4,4.5-1.1,6.6 C45.5,37.4,45.1,34.5,46.2,32.2z M52.3,54.5c-0.8,0.2-1.6,0.4-2.3,0.6l-1,0.3c-2,0.5-4.1,1-6.1,1.7c0.8-1.9,1.5-3.8,2.2-5.6 c0.5-1.4,1.1-2.8,1.6-4.1c0.3,0.5,0.6,0.9,0.9,1.4c1.4,2.1,3.1,4.1,5.1,5.7C52.5,54.5,52.4,54.5,52.3,54.5z M65.1,57.2 c-1.6-0.2-3.3-0.7-5-1.5c2.9-0.4,5.2-0.3,7.2,0.4c0.5,0.2,1.2,0.6,1.7,1C68.1,57.4,66.7,57.5,65.1,57.2z", fillDnLogo: "M38.7,42.1c1.1,1.8,1.6,4.5,1.6,7.9c0,2.5-0.4,4.6-1.1,6.4c-1.3,3.3-3.6,4.9-6.9,4.9h-6.5V39.3h6.5 C35.5,39.3,37.6,40.2,38.7,42.1z M100,50c0,27.6-22.4,50-50,50S0,77.6,0,50S22.4,0,50,0S100,22.4,100,50z M47.4,49.5 c0-1.8-0.2-3.6-0.6-5.6c-0.4-1.9-1.2-3.8-2.4-5.4c-1.5-2.1-3.4-3.5-5.7-4.3c-1.4-0.5-3.1-0.7-5.2-0.7H19v33.6h14.5 c5.1,0,8.8-2.1,11.3-6.3C46.5,57.7,47.4,53.9,47.4,49.5z M79.8,33.5h-6.5v23.4L59.9,33.5h-7.4v33.6h6.5V43.3l13.7,23.8h7V33.5z" }; type iconPiles = { play: array string, pause: array string, next: array string, back: array string, loading: array string, search: array string, close: array string, dropdown: array string, nodejs: array string, python: array string, octocat: array string, github: array string, google: array string, twitter: array string, auth0: array string, bolt: array string, download: array string, globe: array string, settings: array string, reveal: array string, hide: array string, help: array string, star: array string, update: array string, commit: array string, user: array string, code: array string, soundOff: array string, soundMin: array string, soundMed: array string, soundMax: array string, soundMute: array string, precursor: array string, check: array string, times: array string, cursor: array string, rectangle: array string, line: array string, text: array string, pencil: array string, ellipse: array string, mic: array string, micOff: array string, users: array string, bullet: array string, chats: array string, crosshair: array string, ibeam: array string, blog: array string, clock: array string, delete: array string, shift: array string, option: array string, control: array string, command: array string, esc: array string, space: array string, mouse: array string, doc: array string, docs: array string, docsTeam: array string, newdoc: array string, login: array string, logout: array string, info: array string, home: array string, hash: array string, arrowUp: array string, arrowDown: array string, arrowLeft: array string, arrowRight: array string, at: array string, sharing: array string, email: array string, phone: array string, activity: array string, credit: array string, heart: array string, public: array string, team: array string, requests: array string, minus: array string, plus: array string, clips: array string, readOnly: array string, menu: array string, sound: array string, lock: array string, private: array string, chat: array string, chatTeam: array string, feedback: array string, click: array string, chatMorph: array string, logomark: array string, googleLogo: array string, dribbble: array string, slack: array string, cognitect: array string, cognician: array string, phLogo: array string, dnLogo: array string, filePng: array string, filePdf: array string, fileSvg: array string, ellipsis: array string, dotMenu: array string, starred: array string, scroll: array string, north: array string, south: array string, east: array string, west: array string, northSouth: array string, eastWest: array string }; let iconPiles = { play: [|iconPaths.fillPlay|], pause: [|iconPaths.fillPause|], next: [|iconPaths.fillSkipForwards|], back: [|iconPaths.fillSkipBackwards|], loading: [|iconPaths.strokeCircle|], search: [| iconPaths.strokeSearchLens, iconPaths.strokeSearchHandle, iconPaths.strokeXLeft, iconPaths.strokeXRight |], close: [|iconPaths.strokeClose|], dropdown: [|iconPaths.strokeDropdownCaret|], nodejs: [|iconPaths.strokeNodejs|], python: [| iconPaths.strokePythonSouth, iconPaths.strokePythonNorth, iconPaths.fillPythonSouth, iconPaths.fillPythonNorth |], octocat: [|iconPaths.strokeCircle, iconPaths.fillOctocat|], github: [|iconPaths.fillGithub|], google: [| iconPaths.fillGoogle1, iconPaths.fillGoogle2, iconPaths.fillGoogle3, iconPaths.fillGoogle4 |], twitter: [|iconPaths.fillTwitter|], auth0: [|iconPaths.fillAuth0|], bolt: [|iconPaths.fillBolt|], download: [|iconPaths.strokeDownload|], globe: [|iconPaths.strokeGlobe|], settings: [|iconPaths.strokeCog, iconPaths.strokeDot|], reveal: [|iconPaths.strokeEye, iconPaths.strokeDot|], hide: [|iconPaths.strokeEye, iconPaths.strokeDot, iconPaths.strokeXright|], help: [|iconPaths.strokeCircle, iconPaths.fillQuestion|], star: [|iconPaths.strokeStar|], update: [|iconPaths.strokeSpin, iconPaths.strokeTime|], commit: [|iconPaths.strokeCommit|], user: [|iconPaths.strokeUser|], code: [|iconPaths.strokeCodeLeft, iconPaths.strokeCodeSlash, iconPaths.strokeCodeRight|], soundOff: [|iconPaths.strokeSound|], soundMin: [|iconPaths.strokeSound, iconPaths.strokeSoundWave1|], soundMed: [|iconPaths.strokeSound, iconPaths.strokeSoundWave1, iconPaths.strokeSoundWave2|], soundMax: [| iconPaths.strokeSound, iconPaths.strokeSoundWave1, iconPaths.strokeSoundWave2, iconPaths.strokeSoundWave3 |], soundMute: [| iconPaths.strokeSound, iconPaths.strokeSoundWave1, iconPaths.strokeSoundWave2, iconPaths.strokeSoundWave3, iconPaths.strokeSlashBackwards |], precursor: [|iconPaths.strokePrecursor|], check: [|iconPaths.strokeCheck|], times: [|iconPaths.strokeTimes|], cursor: [|iconPaths.strokeCursor|], rectangle: [|iconPaths.strokeRectangle|], line: [|iconPaths.strokeLine|], text: [|iconPaths.strokeText|], pencil: [|iconPaths.strokePencil|], ellipse: [|iconPaths.strokeEllipse|], mic: [|iconPaths.strokeMic|], micOff: [|iconPaths.iconPaths.strokeMic, iconPaths.strokeSlashBackward|], users: [|iconPaths.strokeUsers|], bullet: [|iconPaths.strokeDot|], chats: [|iconPaths.strokeChats|], crosshair: [|iconPaths.strokeCrosshair|], ibeam: [|iconPaths.strokeIbeam|], blog: [|iconPaths.strokeBlog|], clock: [|iconPaths.strokeClock|], delete: [|iconPaths.strokeDelete|], shift: [|iconPaths.strokeShift|], option: [|iconPaths.strokeOption|], control: [|iconPaths.strokeControl|], command: [|iconPaths.strokeCommand|], esc: [|iconPaths.strokeEsc|], space: [|iconPaths.strokeSpace|], mouse: [|iconPaths.strokeMouse|], doc: [|iconPaths.strokeDoc|], docs: [|iconPaths.strokeDocs|], docsTeam: [|iconPaths.strokeDocsTeam|], newdoc: [|iconPaths.strokeNewdoc|], login: [|iconPaths.strokeLogin|], logout: [|iconPaths.strokeLogout|], info: [|iconPaths.strokeInfo|], home: [|iconPaths.strokeHome|], hash: [|iconPaths.strokeHash|], arrowUp: [|iconPaths.strokeArrowUp|], arrowDown: [|iconPaths.strokeArrowDown|], arrowLeft: [|iconPaths.strokeArrowLeft|], arrowRight: [|iconPaths.strokeArrowRight|], at: [|iconPaths.strokeAt|], sharing: [|iconPaths.strokeSharing|], email: [|iconPaths.strokeEmail|], phone: [|iconPaths.strokePhone|], activity: [|iconPaths.strokeActivity|], credit: [|iconPaths.strokeCredit|], heart: [|iconPaths.strokeHeart|], public: [|iconPaths.strokePublic|], team: [|iconPaths.strokeTeam|], requests: [|iconPaths.strokeRequests|], minus: [|iconPaths.strokeHorizontal|], plus: [|iconPaths.strokeHorizontal, iconPaths.strokeVertical|], clips: [|iconPaths.strokeBorderSquare, iconPaths.strokeHorizontal, iconPaths.strokeVertical|], readOnly: [|iconPaths.strokeReadOnly, iconPaths.fillReadOnly|], menu: [|iconPaths.strokeMenuTop, iconPaths.strokeMenuMid, iconPaths.strokeMenuBtm|], sound: [| iconPaths.strokeSound, iconPaths.strokeWave1, iconPaths.strokeWave2, iconPaths.strokeWave3 |], lock: [|iconPaths.strokePrivate, iconPaths.strokePrivateBottom|], private: [|iconPaths.strokePrivate, iconPaths.fillPrivate|], chat: [|iconPaths.strokeChat, iconPaths.fillChat1, iconPaths.fillX5, iconPaths.fillChat2|], chatTeam: [|iconPaths.strokeChatTeam|], feedback: [|iconPaths.strokeFeedback|], click: [| iconPaths.fillClickCursor, iconPaths.strokeClick1, iconPaths.strokeClick2, iconPaths.strokeClick3 |], chatMorph: [| iconPaths.strokeChat, iconPaths.fillX1, iconPaths.fillX2, iconPaths.fillX3, iconPaths.fillX4, iconPaths.fillX5, iconPaths.fillX6, iconPaths.fillX7, iconPaths.fillX8, iconPaths.fillX9 |], logomark: [|iconPaths.fillLogomark|], googleLogo: [|iconPaths.fillGoogle|], dribbble: [|iconPaths.fillDribbble|], slack: [|iconPaths.fillSlack|], cognitect: [|iconPaths.fillCognitect|], cognician: [|iconPaths.fillCognician|], phLogo: [|iconPaths.fillPhLogo|], dnLogo: [|iconPaths.fillDnLogo|], filePng: [|iconPaths.fillPng|], filePdf: [|iconPaths.fillPdf|], fileSvg: [|iconPaths.fillCode|], ellipsis: [|iconPaths.fillEllipsis|], dotMenu: [|iconPaths.fillEllipsisVertical|], starred: [|iconPaths.fillStar|], scroll: [|iconPaths.fillScrollNorth, iconPaths.fillDot, iconPaths.fillScrollSouth|], north: [|iconPaths.fillUpDown, iconPaths.fillNorth|], south: [|iconPaths.fillUpDown, iconPaths.fillSouth|], east: [|iconPaths.fillLeftRight, iconPaths.fillEast|], west: [|iconPaths.fillLeftRight, iconPaths.fillWest|], northSouth: [|iconPaths.fillUpDown, iconPaths.fillNorth, iconPaths.fillSouth|], eastWest: [|iconPaths.fillLeftRight, iconPaths.fillEast, iconPaths.fillWest|] }; ```

Which is very verbose (basically 2x as long as the next approach). I've switched to using objects, which looks like:

``` let iconPaths = { "fill-play": "M17,12L7,22V2L17,12z", "fill-pause": "M17,22h-4V2h4V22z M11,2H7v20h4V2z", "fill-skip-forwards": "M9.5,22v-5l-5,5V2l5,5V2l10,10L9.5,22z", "fill-skip-backwards": "M4.5,12l10-10v5l5-5v20l-5-5v5L4.5,12z", }; let iconPiles = { "play": [|"fill-play"|], "pause": [|"fill-pause"|], "next": [|"fill-skip-forwards"|], "back": [|"fill-skip-backwards"|], }; ``` ``` let iconPaths = { "fill-play": "M17,12L7,22V2L17,12z", "fill-pause": "M17,22h-4V2h4V22z M11,2H7v20h4V2z", "fill-skip-forwards": "M9.5,22v-5l-5,5V2l5,5V2l10,10L9.5,22z", "fill-skip-backwards": "M4.5,12l10-10v5l5-5v20l-5-5v5L4.5,12z", "stroke-sound": "M12,4.9v14.1l-3.7-3.7H4.9V8.7h3.3L12,4.9z", "stroke-sound-wave1": "M14.4,14.4c0.6-0.6,1-1.4,1-2.4s-0.4-1.8-1-2.4", "stroke-sound-wave2": "M16.7,16.7c1.2-1.2,2-2.9,2-4.7s-0.8-3.5-2-4.7", "stroke-sound-wave3": "M19.1,19.1c1.8-1.8,2.9-4.3,2.9-7.1s-1.1-5.3-2.9-7.1", "stroke-slash-backwards": "M2,2l20,20", "stroke-search-lens": "M17,9.5c0,4.1-3.4,7.5-7.5,7.5S2,13.6,2,9.5S5.4,2,9.5,2S17,5.4,17,9.5z", "stroke-search-handle": "M14.9,14.9L22,22", "stroke-x-left": "M2,2l20,20", "stroke-x-right": "M2,22L22,2", "stroke-dropdown-caret": "M2,8h20L12,18L2,8z", "stroke-circle": "M22,12c0,5.5-4.5,10-10,10S2,17.5,2,12S6.5,2,12,2S22,6.5,22,12z", "stroke-download": "M22,19.8V22H2v-2.2 M12,2v15.6 M18.7,10.9L12,17.6l-6.7-6.7", "stroke-globe": "M22,12c0,5.5-4.5,10-10,10S2,17.5,2,12S6.5,2,12,2S22,6.5,22,12z M4.6,5.3C6.4,6.4,9,7,12,7 s5.6-0.6,7.4-1.7 M19.4,18.7C17.6,17.6,15,17,12,17s-5.6,0.6-7.4,1.7 M12,2C9.2,2,7,6.5,7,12s2.2,10,5,10s5-4.5,5-10S14.8,2,12,2z M2,12h20 M12,22V2", "stroke-close": "M2,2l20,20 M22,2L2,22", "stroke-time": "M13,7v6H7", "stroke-spin": "M21,20.7h-4v-4 M17,20.7c3-1.7,5-5,5-8.7c0-5.5-4.5-10-10-10S2,6.5,2,12c0,5.5,4.5,10,10,10 c0,0,0,0,0,0", "stroke-commit": "M14.8,9.2c1.6,1.6,1.6,4.1,0,5.7s-4.1,1.6-5.7,0s-1.6-4.1,0-5.7S13.3,7.6,14.8,9.2z M9.2,14.8 L2,22 M14.8,9.2L22,2", "stroke-cog": "M22,12.9c-0.1,0.5-0.4,0.8-0.9,0.9c-0.6,0.1-1.7,0.2-1.7,0.2c-0.5,0.1-0.9,0.6-0.9,1.1c0,0.2,0.1,0.4,0.2,0.6 c0,0,0.7,0.9,1,1.4c0.3,0.4,0.3,0.9,0,1.2c-0.4,0.5-0.8,1-1.4,1.4c-0.2,0.2-0.4,0.2-0.6,0.2c-0.2,0-0.4-0.1-0.6-0.2l-1.4-1 c-0.2-0.1-0.4-0.2-0.6-0.2c-0.5,0-1,0.4-1.1,0.9l-0.2,1.7c-0.1,0.5-0.4,0.8-0.9,0.9c-0.3,0-0.7,0-1,0s-0.6,0-1,0 c-0.5-0.1-0.8-0.4-0.9-0.9c0,0-0.2-1.6-0.2-1.7c-0.1-0.5-0.5-0.9-1.1-0.9c-0.2,0-0.5,0.1-0.7,0.2l-1.3,1c-0.2,0.2-0.4,0.2-0.6,0.2 c-0.2,0-0.4-0.1-0.6-0.2c-0.5-0.4-1-0.8-1.4-1.4C4,18,4,17.5,4.3,17.1l1-1.3c0.2-0.2,0.2-0.4,0.2-0.7c0-0.6-0.4-1-1-1.1l-1.6-0.2 c-0.5-0.1-0.8-0.4-0.9-0.9C2,12.3,2,11.7,2.1,11c0-0.5,0.4-0.8,0.9-0.9L4.5,10c0.5-0.1,1-0.5,1-1.1c0-0.2-0.1-0.5-0.2-0.6 c0,0-0.7-0.9-1-1.3C4,6.5,4,6,4.3,5.7c0.4-0.5,0.8-1,1.4-1.4C6,4,6.5,4,6.9,4.3l1.3,1c0.2,0.1,0.4,0.2,0.7,0.2c0.5,0,1-0.4,1.1-0.9 l0.2-1.7c0.1-0.5,0.4-0.8,0.9-0.9c0.6-0.1,1.3-0.1,1.9,0c0.5,0.1,0.8,0.4,0.9,0.9L14,4.6c0.1,0.5,0.5,0.9,1.1,0.9 c0.2,0,0.4-0.1,0.6-0.2c0,0,0.9-0.7,1.4-1C17.5,4,18,4,18.3,4.3c0.5,0.4,1,0.8,1.4,1.4C20,6,20,6.5,19.7,6.9c0,0-1,1.4-1,1.4 c-0.1,0.2-0.2,0.4-0.2,0.6c0,0.5,0.4,1,0.9,1.1c0,0,1.2,0.2,1.7,0.2c0.5,0.1,0.8,0.4,0.9,0.9C22,11.6,22,12.3,22,12.9z", "stroke-dot": "M14,12c0,1.1-0.9,2-2,2s-2-0.9-2-2s0.9-2,2-2S14,10.9,14,12z", "stroke-eye": "M12,5.3C7.5,5.3,3.6,8,2,12c1.6,4,5.5,6.7,10,6.7S20.4,16,22,12C20.4,8,16.5,5.3,12,5.3z", "stroke-star": "M12,2.5l3.1,6.3l6.9,1l-5,4.9l1.2,6.9L12,18.3l-6.2,3.2L7,14.6L2,9.8l6.9-1L12,2.5z", "stroke-user": "M17.6,7.6c0,3.1-2.5,5.6-5.6,5.6s-5.6-2.5-5.6-5.6S8.9,2,12,2S17.6,4.5,17.6,7.6z M6.2,11.9 c-1.9,1.6-3.1,4-3.1,6.8c0,1.8,4,3.3,8.9,3.3s8.9-1.5,8.9-3.3c0-2.7-1.2-5.1-3.1-6.8", "stroke-code-left": "M9.4,21.7l5.2-19.3", "stroke-code-slash": "M8,18l-6-6l6-6", "stroke-code-right": "M16,6l6,6l-6,6", "stroke-nodejs": "M8.9,8.1v8.4c0,1.5-0.8,2.3-2.2,2.3c-0.4,0-0.8,0-1.7-0.5l-1.2-0.7c-0.5-0.3-0.8-0.8-0.8-1.3 V7.8c0-0.5,0.3-1.1,0.8-1.3l7.3-4.2c0.5-0.3,1.1-0.3,1.5,0l7.3,4.2c0.5,0.3,0.8,0.8,0.8,1.3v8.5c0,0.6-0.3,1.1-0.8,1.3l-7.3,4.2 C12.5,21.9,12.3,22,12,22c-0.3,0-0.5-0.1-0.8-0.2l-2.4-1.4 M11.1,13.3c0,1.4,1,2.3,2.9,2.3c2.4,0,3.2-0.7,3.2-1.8 c0-1-1.2-1.7-2.9-1.7c-1.6,0-2.9-0.4-2.9-1.6c0-1,0.6-1.7,2.6-1.7c2.7,0,3,1.3,3,2.1", "stroke-python-north": "M12,7.1H7.2 M16.8,7.1V4.7c0-1.3-1.1-2.3-2.4-2.5C13.5,2.1,12.7,2,11.9,2 c-0.8,0-1.6,0.1-2.3,0.2c-2,0.4-2.4,1.1-2.4,2.5v2.4H5.4c-1.4,0-2.6,0.8-3,2.4c-0.4,1.8-0.5,3,0,4.8c0.3,1.4,1.1,2.4,2.5,2.4h2.2 v-0.1c0-2.6,2.1-4.7,4.7-4.7h0h0h0C14.6,12,16.8,9.8,16.8,7.1L16.8,7.1z", "stroke-python-south": "M11.9,16.8h4.9 M7.2,16.8v2.4c0,1.3,1.1,2.1,2.4,2.4c1.5,0.4,3,0.5,4.8,0 c1.2-0.3,2.4-1,2.4-2.4v-2.4h2.4c1.4,0,1.9-1,2.4-2.4c0.5-1.5,0.5-2.9,0-4.8c-0.3-1.4-1-2.4-2.4-2.4h-2.4", "fill-python-north": "M9.3,3.5c0.5,0,0.9,0.4,0.9,0.9c0,0.5-0.4,0.9-0.9,0.9c-0.5,0-0.9-0.4-0.9-0.9C8.4,3.9,8.8,3.5,9.3,3.5 z", "fill-python-south": "M14.7,18.6c0.5,0,0.9,0.4,0.9,0.9c0,0.5-0.4,0.9-0.9,0.9c-0.5,0-0.9-0.4-0.9-0.9 C13.8,19,14.2,18.6,14.7,18.6z", "fill-question": "M9.9,7.5C10.5,7.2,11.1,7,11.9,7c1,0,1.9,0.2,2.5,0.7c0.7,0.5,1,1.2,1,2.1c0,0.6-0.1,1.1-0.4,1.5 c-0.2,0.2-0.5,0.6-1,0.9l-0.5,0.4c-0.3,0.2-0.4,0.4-0.5,0.7c-0.1,0.2-0.1,0.4-0.1,0.8h-1.8c0-0.8,0.1-1.3,0.2-1.6 c0.1-0.3,0.4-0.6,0.9-1l0.5-0.4c0.2-0.1,0.3-0.3,0.4-0.4c0.2-0.2,0.3-0.5,0.3-0.8c0-0.3-0.1-0.7-0.3-0.9c-0.2-0.3-0.6-0.4-1.1-0.4 c-0.5,0-0.9,0.2-1.1,0.5c-0.2,0.3-0.3,0.7-0.3,1.1H8.6C8.6,8.9,9.1,8,9.9,7.5z M11,15.1h2V17h-2V15.1z", "fill-nodejs": "M12,22c-0.3,0-0.5-0.1-0.8-0.2l-2.4-1.4c-0.4-0.2-0.2-0.3-0.1-0.3c0.5-0.2,0.6-0.2,1.1-0.5c0.1,0,0.1,0,0.2,0l1.9,1.1 c0.1,0,0.2,0,0.2,0l7.3-4.2c0.1,0,0.1-0.1,0.1-0.2V7.8c0-0.1,0-0.2-0.1-0.2l-7.3-4.2c-0.1,0-0.2,0-0.2,0L4.6,7.6 c-0.1,0-0.1,0.1-0.1,0.2v8.5c0,0.1,0,0.2,0.1,0.2l2,1.2c1.1,0.5,1.8-0.1,1.8-0.7V8.5c0-0.1,0.1-0.2,0.2-0.2h0.9 c0.1,0,0.2,0.1,0.2,0.2v8.4c0,1.5-0.8,2.3-2.2,2.3c-0.4,0-0.8,0-1.7-0.5l-1.9-1.1c-0.5-0.3-0.8-0.8-0.8-1.3V7.8 c0-0.5,0.3-1.1,0.8-1.3l7.3-4.2c0.5-0.3,1.1-0.3,1.5,0l7.3,4.2c0.5,0.3,0.8,0.8,0.8,1.3v8.5c0,0.5-0.3,1.1-0.8,1.3l-7.3,4.2 C12.5,21.9,12.3,22,12,22L12,22z M14.3,16.2c-3.2,0-3.9-1.5-3.9-2.7c0-0.1,0.1-0.2,0.2-0.2h0.9c0.1,0,0.2,0.1,0.2,0.2 c0.1,1,0.6,1.5,2.5,1.5c1.5,0,2.2-0.3,2.2-1.2c0-0.5-0.2-0.8-2.6-1.1c-2-0.2-3.2-0.6-3.2-2.2c0-1.5,1.2-2.4,3.3-2.4 c2.3,0,3.5,0.8,3.7,2.6c0,0.1,0,0.1-0.1,0.2c0,0-0.1,0.1-0.2,0.1h-1c-0.1,0-0.2-0.1-0.2-0.2c-0.2-1-0.8-1.3-2.3-1.3 c-1.7,0-1.9,0.6-1.9,1c0,0.5,0.2,0.7,2.5,1c2.3,0.3,3.3,0.7,3.3,2.3C17.9,15.3,16.6,16.2,14.3,16.2z", "fill-github": "M12,2.2c-5.5,0-10,4.5-10,10c0,4.4,2.9,8.2,6.8,9.5c0.5,0.1,0.7-0.2,0.7-0.5c0-0.2,0-0.9,0-1.7 c-2.8,0.6-3.4-1.3-3.4-1.3C5.7,17.1,5,16.7,5,16.7c-0.9-0.6,0.1-0.6,0.1-0.6c1,0.1,1.5,1,1.5,1C7.5,18.7,9,18.3,9.5,18 c0.1-0.6,0.3-1.1,0.6-1.3c-2.2-0.3-4.6-1.1-4.6-4.9c0-1.1,0.4-2,1-2.7C6.5,8.8,6.2,7.8,6.7,6.4c0,0,0.8-0.3,2.7,1 c0.8-0.2,1.7-0.3,2.5-0.3c0.8,0,1.7,0.1,2.5,0.3c1.9-1.3,2.7-1,2.7-1c0.5,1.4,0.2,2.4,0.1,2.6c0.6,0.7,1,1.6,1,2.7 c0,3.8-2.3,4.7-4.6,4.9c0.4,0.3,0.7,0.9,0.7,1.9c0,1.3,0,2.4,0,2.7c0,0.3,0.2,0.6,0.7,0.5c4-1.3,6.8-5.1,6.8-9.5 C22,6.7,17.5,2.2,12,2.2z", "fill-octocat": "M17.7,11.9c0-1-0.3-1.8-0.9-2.4c0.1-0.2,0.4-1.1-0.1-2.4c0,0-0.8-0.2-2.5,0.9c-0.7-0.2-1.5-0.3-2.3-0.3 c-0.8,0-1.5,0.1-2.3,0.3C8,6.8,7.3,7.1,7.3,7.1C6.8,8.3,7.1,9.2,7.2,9.5c-0.6,0.6-0.9,1.4-0.9,2.4c0,3.5,2.1,4.2,4.1,4.4 C10,16.6,9.8,17.1,9.8,18c0,1.2,0,3.1,0,3.1c0.7,0.2,1.5,0.3,2.2,0.3s1.5-0.1,2.2-0.3c0,0,0-1.9,0-3.1c0-0.8-0.3-1.4-0.6-1.7 C15.6,16.1,17.7,15.3,17.7,11.9z", "fill-bolt": "M13.2,11l5.6-0.7L5.9,22l5.7-9.3l-6.5,1L18.9,2L13.2,11z", "fill-auth0": "M17.3,18.2l-2-6.2l5.3-3.8H14L12,2l0,0h6.5l2,6.2l0,0l0,0C21.7,11.8,20.5,15.8,17.3,18.2L17.3,18.2z M6.7,18.2L6.7,18.2L12,22l5.3-3.8L12,14.4L6.7,18.2L6.7,18.2z M3.5,8.2C2.3,12,3.7,16,6.7,18.2l0,0l2-6.2L3.5,8.2l6.5,0L12,2l0,0 H5.5L3.5,8.2L3.5,8.2z", "fill-google1": "M12.2,2C8.3,2,4.9,4.3,3.3,7.5l3.3,2.6C7.4,7.7,9.6,6,12.2,6c1.9,0,3.2,0.8,3.8,1.5l2.9-2.8 C17.2,3,14.9,2,12.2,2z", "fill-google2": "M6.3,12c0-0.7,0.1-1.3,0.3-1.9L3.3,7.5C2.6,8.9,2.2,10.4,2.2,12s0.4,3.2,1.1,4.5l3.3-2.6 C6.4,13.3,6.3,12.7,6.3,12z", "fill-google3": "M12.2,18c-2.6,0-4.8-1.8-5.6-4.1l-3.3,2.6c1.6,3.3,5,5.5,8.9,5.5c2.7,0,5-0.9,6.6-2.4l-3.3-2.5 C14.8,17.6,13.7,18,12.2,18z", "fill-google4": "M12.2,10.2V14h5.4c-0.1,0.9-0.7,2.2-2,3.1l3.2,2.5c1.9-1.7,3-4.3,3-7.4c0-0.8-0.1-1.4-0.2-2 C21.6,10.2,12.2,10.2,12.2,10.2z", "fill-twitter": "M8.3,20.1c7.5,0,11.7-6.3,11.7-11.7c0-0.2,0-0.4,0-0.5c0.8-0.6,1.5-1.3,2-2.1 c-0.7,0.3-1.5,0.5-2.4,0.6c0.9-0.5,1.5-1.3,1.8-2.3c-0.8,0.5-1.7,0.8-2.6,1C17.3,3.5,14.7,3.4,13,5c-1.1,1-1.5,2.5-1.2,3.9 C8.5,8.7,5.5,7.2,3.4,4.6c-1.1,1.9-0.5,4.3,1.3,5.5c-0.7,0-1.3-0.2-1.9-0.5c0,0,0,0,0,0.1c0,2,1.4,3.6,3.3,4 c-0.6,0.2-1.2,0.2-1.9,0.1c0.5,1.7,2.1,2.8,3.8,2.8c-1.5,1.1-3.2,1.8-5.1,1.8c-0.3,0-0.7,0-1-0.1C3.9,19.5,6.1,20.1,8.3,20.1", "stroke-precursor": "M35.7,45.3V95 M60.5,84.4C82,78.6,94.8,56.5,89,34.9C83.2,13.4,61.1,0.6,39.5,6.4S5.2,34.3,11,55.9", "stroke-check": "M35,80 L5,50 M95,20L35,80", "stroke-times": "M82.5,82.5l-65-65 M82.5,17.5l-65,65", "stroke-plus": "M50,72.5v-45 M27.5,50h45", "stroke-minus": "M27.5,50h45", "stroke-cursor": "M23.3,80.4V5 l53.3,53.3c0,0-21.5,0-21.5,0s12.4,29.8,12.4,29.8L50.9,95c0,0-12.4-29.8-12.4-29.8S23.3,80.4,23.3,80.4z", "stroke-border-circle": "M95,50c0,24.9-20.1,45-45,45S5,74.9,5,50S25.1,5,50,5 S95,25.1,95,50z", "stroke-border-square": "M95,95H5V5h90V95z", "stroke-rectangle": "M87.5,87.5h-75v-75h75V87.5z M20,5H5v15h15V5z M95,5H80v15h15V5z M20,80H5v15h15V80z M95,80H80v15h15V80z", "stroke-line": "M95,20H80V5h15V20z M20,80H5v15h15V80z M87.5,12.5l-75,75", "stroke-text": "M65.9,92.4H34.1H50 V7.6 M95,21.4c0,0-7.9-13.8-7.9-13.8c0,0-74.1,0-74.1,0L5,21.4", "stroke-pencil": "M89.5,10.5c3.9,3.9,6.3,7.8,5.3,8.8L24.3,89.8L5,95l5.2-19.3L80.7,5.2C81.7,4.2,85.6,6.6,89.5,10.5z M22.5,88.1L11.9,77.5 M81.3,8.1c0.9,1.7,2.6,3.8,4.7,5.9c2.1,2.1,4.2,3.8,5.9,4.7 M70.3,19.1c0.9,1.7,2.6,3.8,4.7,5.9c2.1,2.1,4.2,3.8,5.9,4.7 M68.3,21.1c0.9,1.7,2.6,3.8,4.7,5.9c2.1,2.1,4.2,3.8,5.9,4.7", "stroke-ellipse": "M57.5,5h-15v15h15V5z M95,42.5H80v15h15V42.5z M20,42.5H5v15h15V42.5z M57.5,80h-15v15h15V80z M87.5,50c0,20.7-16.8,37.5-37.5,37.5 S12.5,70.7,12.5,50S29.3,12.5,50,12.5S87.5,29.3,87.5,50z", "stroke-users": "M59.2,40.8c0,11.5-9.3,20.8-20.8,20.8s-20.8-9.3-20.8-20.8S26.8,20,38.3,20S59.2,29.3,59.2,40.8z M16.7,57.1 C9.5,63.3,5,72.3,5,82.5C5,89.4,19.9,95,38.3,95s33.3-5.6,33.3-12.5c0-10.2-4.5-19.2-11.7-25.4 M64.8,46.4 c10-1.5,17.7-10.1,17.7-20.6C82.5,14.3,73.2,5,61.7,5c-7.3,0-13.7,3.8-17.5,9.5 M77.4,78.5c10.5-2.1,17.6-6.3,17.6-11 c0-10.2-4.5-19.2-11.7-25.4", "stroke-chats": "M60.8,63.2c-0.2,12-12.9,21.5-28.3,21.2 c-3.5-0.1-6.8-0.6-9.8-1.6L8.5,88.8c0,0,4.8-9.7,0.4-15.3c-2.6-3.4-4-7.3-3.9-11.4c0.2-12,12.9-21.5,28.3-21.2 C48.7,41.2,61,51.2,60.8,63.2z M68.5,73.9L89.7,83c0,0-7.2-14.5-0.6-22.9c3.8-5,6-10.9,5.9-17.2c-0.4-18-19.4-32.2-42.5-31.7 c-19.1,0.4-35,10.7-39.8,24.4", "stroke-crosshair": "M50,5v90 M5,50h90", "stroke-ibeam": "M50,10v80 M41.3,95h-10 M68.7,95h-10 M45,50h10 M50,90 l-8.7,5 M50,90l8.7,5 M58.7,5h10 M31.3,5h10 M58.7,5L50,10 M41.3,5l8.7,5", "stroke-blog": "M85,32.5H35 M35,50h50 M35,67.5h50 M25,85h60 c5.5,0,10-4.5,10-10V15H25v60c0,5.5-4.5,10-10,10S5,80.5,5,75V35h15", "stroke-clock": "M95,50c0,24.9-20.1,45-45,45S5,74.9,5,50S25.1,5,50,5 S95,25.1,95,50z M71.2,71.2C71.2,71.2,50,50,50,50V20", "stroke-delete": "M35,80L5,50c0,0,30-30,30-30s60,0,60,0v60 C95,80,35,80,35,80z M45,35l30,30 M75,35L45,65", "stroke-shift": "M5,52L50,7l45,45H70.5V93H29.5V52H5z", "stroke-option": "M95,15H65 M95,85H75L35,15H5", "stroke-control": "M86,41L50,5L14,41", "stroke-command": "M65,35v30H35V35H65z M20,5C11.7,5,5,11.7,5,20 c0,8.3,6.7,15,15,15h15V20C35,11.7,28.3,5,20,5z M95,20c0-8.3-6.7-15-15-15c-8.3,0-15,6.7-15,15v15h15C88.3,35,95,28.3,95,20z M5,80c0,8.3,6.7,15,15,15c8.3,0,15-6.7,15-15V65H20C11.7,65,5,71.7,5,80z M80,65H65v15c0,8.3,6.7,15,15,15c8.3,0,15-6.7,15-15 C95,71.7,88.3,65,80,65z", "stroke-esc": "M95,46.6c-3.2-3.2-7.4-4.8-11.7-4.8 c-9.1,0-16.5,7.4-16.5,16.5s7.4,16.5,16.5,16.5c4.2,0,8.4-1.6,11.7-4.8 M40.4,72.3c1.6,1.6,3.7,2.4,5.8,2.4c4.6,0,8.2-3.7,8.2-8.2 s-3.7-8.2-8.2-8.2S38,54.6,38,50s3.7-8.2,8.2-8.2c2.1,0,4.2,0.8,5.8,2.4 M29.7,74.7H5c0,0,0-49.5,0-49.5h24.7 M5,50h18.6", "stroke-space": "M95,65v30H5V65", "stroke-click-1": "M29.2,30h-24", "stroke-click-2": "M31.8,23.6L19.1,10.9", "stroke-click-3": "M38.2,21V9", "stroke-private": "M72.5,50V37.5 C72.5,25.1,62.4,15,50,15S27.5,25.1,27.5,37.5V50", "stroke-private-bottom": "M80,95H20V50h60V95z", "stroke-public": "M65,95H5V50h60V95z M95,50V27.5 C95,15.1,84.9,5,72.5,5S50,15.1,50,27.5V50", "stroke-mouse": "M58,5h17c2.8,0,5,2.2,5,5v55c0,16.6-13.4,30-30,30 S20,81.6,20,65V10c0-2.8,2.2-5,5-5h20c2.8,0,5,2.2,5,5c0,0,0,25,0,25", "stroke-newdoc": "M58,80V50 M43,65h30 M12,77l0-52L32,5l34,0v20 M58,35 c-16.6,0-30,13.4-30,30s13.4,30,30,30s30-13.4,30-30S74.6,35,58,35z M12,25h20V5", "stroke-doc": "M84,94H16V6h68V94z", "stroke-docs": "M87.5,95h-51V29h51V95z M63.5,29V5h-51v66h24", "stroke-docs-team": "M63.5,95h-51V29h51V95z M63.5,71h24V5h-51v24", "stroke-login": "M35,82.1V70 M5,43.6h42.9 M30.7,60.7l17.1-17.1 L30.7,26.4 M35,17.1V5h60c0,0,0,77.1,0,77.1L52.1,95V17.9L88.3,7", "stroke-logout": "M5,82.1 M65,55v27.1 M95,43.6H52.1 M77.9,60.7L95,43.6 L77.9,26.4 M65,32.1V5H5c0,0,0,77.1,0,77.1L47.9,95V17.9L11.5,7", "stroke-info": "M50,40v35 M59,66l-9,9 M41,49l9-9 M50,25 c-1.4,0-2.5,1.1-2.5,2.5S48.6,30,50,30s2.5-1.1,2.5-2.5S51.4,25,50,25z M95,50c0,24.9-20.1,45-45,45S5,74.9,5,50S25.1,5,50,5 S95,25.1,95,50z", "stroke-home": "M95,95H5 V50L50,5l45,45V95z M80,30V5", "stroke-hash": "M54.7,95L72.2,5 M46.7,5L29.3,95 M20,37h65 M15,67h65", "stroke-team": "M61.8,38.2c13,13,13,34,0,47s-34,13-47,0s-13-34,0-47S48.8,25.3,61.8,38.2z M38.2,14.7c-13,13-13,34,0,47s34,13,47,0s13-34,0-47 S51.2,1.8,38.2,14.7z", "stroke-arrow-up": "M50,95V5 M86,41L50,5L14,41", "stroke-arrow-down": "M50,95V5 M14,59l36,36l36-36", "stroke-arrow-right": "M95,50H5 M59,86l36-36L59,14", "stroke-arrow-left": "M95,50H5 M41,14L5,50l36,36", "stroke-menu-top": "M5,25h90", "stroke-menu-mid": "M5,50h90", "stroke-menu-btm": "M5,75h90", "stroke-read-only": "M50,25.9c-18.8,0-35.3,9.6-45,24.1 c9.7,14.5,26.2,24.1,45,24.1S85.3,64.5,95,50C85.3,35.5,68.8,25.9,50,25.9z", "stroke-lock-top": "M75,45V30C75,16.2,63.8,5,50,5S25,16.2,25,30v15", "stroke-chat": "M50,5c24.9,0,45,20.1,45,45c0,24.9-20.1,45-45,45H5V50 C5,25.1,25.1,5,50,5z", "stroke-mic": "M80,50c0,16.6-13.4,30-30,30S20,66.6,20,50 M50,5 c-8.3,0-15,6.7-15,15v30c0,8.3,6.7,15,15,15c8.3,0,15-6.7,15-15V20C65,11.7,58.3,5,50,5z M50,80v15 M65,95H35", "stroke-slash-forward": "M5,95L95,5", "stroke-slash-backward": "M5,5l90,90", "stroke-at": "M70,50c0,11-9,20-20,20s-20-9-20-20s9-20,20-20 S70,39,70,50z M70,25v50 M90.3,70c3-6,4.7-12.8,4.7-20C95,25.1,74.9,5,50,5S5,25.1,5,50c0,24.9,20.1,45,45,45c7.2,0,14-1.7,20-4.7", "stroke-sharing": "M50,5h45c0,0,0,45,0,45 M50,50L95,5 M27.5,5H5v90 c0,0,90,0,90,0V72.5", "stroke-email": "M95,35v60H5V35L50,5L95,35z M95,35L5,95 M5,35l90,60", "stroke-phone": "M70,95 H30c-5.5,0-10-4.5-10-10V15c0-5.5,4.5-10,10-10h40c5.5,0,10,4.5,10,10v70C80,90.5,75.5,95,70,95z M50.8,70.1 c-3.4-0.5-6.2,2.4-5.7,5.7c0.3,2.1,2,3.8,4.1,4.1c3.4,0.5,6.2-2.4,5.7-5.7C54.6,72.1,52.9,70.4,50.8,70.1z M65,20H35v35h30V20z", "stroke-activity": "M92.1,34.1c0,0-31.8,31.8-31.8,31.8L39.1,44.7L17.9,65.9 M5,5v90h90", "stroke-credit": "M95,80H5V20h90V80z M5,35h90 M15,65h50", "stroke-heart": "M88.4,50c8.8-8.8,8.8-23,0-31.8s-23-8.8-31.8,0 C52.2,22.6,50,28.3,50,34.1c0-5.8-2.2-11.5-6.6-15.9c-8.8-8.8-23-8.8-31.8,0c-8.8,8.8-8.8,23,0,31.8c0,0,38.4,38.4,38.4,38.4 S88.4,50,88.4,50z", "stroke-file": "M80,95H20V5h60V95z", "stroke-vertical": "M50,95V5", "stroke-horizontal": "M5,50h90", "stroke-requests": "M95,65v30H65 c-16.6,0-30-13.4-30-30c0-16.6,13.4-30,30-30C81.6,35,95,48.4,95,65z M63.3,25C59.2,13.4,48.1,5,35,5C18.4,5,5,18.4,5,35v30h20 M65,80V50 M50,65h30", "stroke-chat-team": "M35,35c16.6,0,30,13.4,30,30 c0,16.6-13.4,30-30,30H5V65C5,48.4,18.4,35,35,35z M75,65h20V35C95,18.4,81.6,5,65,5c-13.1,0-24.2,8.4-28.3,20", "fill-logomark": "M43,100H29.5V39H43V100z M94,33.8C90.9,22,83.3,12.2,72.8,6.1C62.2,0,50-1.6,38.2,1.6 C26.5,4.7,16.6,12.3,10.6,22.8C4.5,33.3,2.9,45.6,6,57.4l1.7,6.4l12.7-3.4l-1.7-6.4c-4.6-17.2,5.6-35,22.9-39.6 c8.3-2.2,17.1-1.1,24.6,3.2c7.5,4.3,12.8,11.3,15.1,19.7c4.6,17.2-5.6,35-22.9,39.6L52,78.5l3.4,12.7l6.4-1.7 C86.1,83.1,100.5,58,94,33.8z", "fill-google": "M53.8,0C35.5,0,25.6,11.6,25.6,24.5c0,9.8,7.1,21,21.6,21h3.7c0,0-1,2.4-1,4.8c0,3.5,1.2,5.4,3.9,8.4 c-25,1.5-35.1,11.6-35.1,22.5c0,9.5,9.1,18.9,28.2,18.9c22.6,0,34.4-12.6,34.4-24.9c0-8.7-4.3-13.5-15.3-21.7 c-3.2-2.5-3.9-4.1-3.9-6c0-2.7,1.6-4.5,2.2-5.1c1-1.1,2.8-2.3,3.5-2.9c3.7-3.1,8.9-7.7,8.9-17c0-6.3-2.6-11.8-8.6-16.9h7.3L80.9,0 L53.8,0L53.8,0z M48.8,4.1c3.3,0,6.1,1.2,9,3.6c3.2,2.9,8.4,10.8,8.4,20.5c0,10.5-8.2,13.4-12.6,13.4c-2.2,0-4.8-0.6-6.9-2.1 C41.8,36.4,37,28,37,17.9C37,8.9,42.4,4.1,48.8,4.1z M56,62.7c1.4,0,2.4,0.1,2.4,0.1s3.3,2.4,5.6,4.1c5.4,4.2,8.7,7.5,8.7,13.2 c0,7.9-7.4,14.1-19.3,14.1c-13.1,0-23.1-6.1-23.1-16C30.4,70,37.2,62.9,56,62.7L56,62.7z", "fill-dribbble": "M50,99.9C22.4,99.9,0,77.5,0,50C0,22.5,22.4,0.1,50,0.1 c27.6,0,50,22.4,50,49.9C100,77.5,77.6,99.9,50,99.9L50,99.9z M92.2,56.8c-1.5-0.5-13.2-4-26.6-1.8c5.6,15.3,7.9,27.8,8.3,30.4 C83.4,79,90.3,68.7,92.2,56.8L92.2,56.8z M66.7,89.3C66,85.6,63.6,72.5,57.6,57c-0.1,0-0.2,0.1-0.3,0.1 c-24.1,8.4-32.7,25.1-33.5,26.6c7.2,5.6,16.3,9,26.2,9C55.9,92.7,61.6,91.5,66.7,89.3L66.7,89.3z M18.3,78.6 c1-1.7,12.7-21,34.7-28.1c0.6-0.2,1.1-0.3,1.7-0.5c-1.1-2.4-2.2-4.8-3.5-7.2c-21.3,6.4-42,6.1-43.9,6.1c0,0.4,0,0.9,0,1.3 C7.3,61,11.5,71,18.3,78.6L18.3,78.6z M8.2,41.3c1.9,0,19.5,0.1,39.5-5.2C40.6,23.6,33,13,31.8,11.5C19.9,17.1,11,28.1,8.2,41.3 L8.2,41.3z M40,8.6c1.2,1.6,8.9,12.1,15.9,25c15.2-5.7,21.6-14.3,22.4-15.4C70.8,11.5,60.9,7.4,50,7.4C46.6,7.4,43.2,7.8,40,8.6 L40,8.6z M83.1,23.1c-0.9,1.2-8.1,10.4-23.8,16.8c1,2,1.9,4.1,2.8,6.2c0.3,0.7,0.6,1.5,0.9,2.2c14.2-1.8,28.3,1.1,29.7,1.4 C92.6,39.6,89,30.4,83.1,23.1L83.1,23.1z", "fill-slack": "M99.7,52.8l-0.1-0.4c-1.2-3.5-4.5-5.8-8.3-5.7c-0.9,0-1.9,0.2-2.8,0.5l-9.8,3.3l-6.3-18.8l0,0l0,0 c9.3-3.2,9.4-3.2,9.4-3.2c3.9-1.3,7.2-5.5,5.9-10.1L87.6,18c-1.2-3.5-4.4-5.8-8.3-5.8c-0.9,0-1.7,0.1-2.6,0.4L67,15.8l-3.2-9.6 c-0.7-2.2-2.3-4-4.4-5c-1.2-0.6-2.6-0.9-3.9-0.9c-0.9,0-1.8,0.2-2.7,0.5c-4.4,1.5-6.9,6.2-5.6,10.6l0.1,0.4l3.2,9.6l-18.6,6.2 L28.7,18c-1.2-3.6-4.5-6-8.3-5.9c-0.9,0-1.8,0.2-2.7,0.5c-4.4,1.5-6.9,6.2-5.6,10.6c0,0.1,0.1,0.3,0.1,0.4l3.2,9.5l-9.4,3.2 c-4.4,1.5-6.9,6.1-5.6,10.6c0,0.1,0.1,0.3,0.1,0.4c1.2,3.5,4.3,5.7,8.1,5.7l0,0c1,0,1.9-0.2,2.9-0.5c3.3-1.1,6.4-2.2,9.4-3.2l0,0v0 l0,0l6.3,18.7l-9.4,3.2c-4.4,1.5-6.9,6.2-5.6,10.7c0,0.1,0.1,0.3,0.1,0.4c1.2,3.4,4.3,5.6,8.1,5.6v0c1,0,2-0.2,3-0.5l9.2-3.1 l3.3,9.7c1.2,3.6,4.5,6,8.3,5.9c0.9,0,1.8-0.2,2.7-0.5c4.4-1.5,6.9-6.2,5.6-10.6c0-0.1-0.1-0.3-0.1-0.4L49,78.4l18.6-6.4l3.3,9.9 c1.2,3.6,4.5,6,8.3,5.9l0,0c0.9,0,1.8-0.2,2.7-0.5c4.4-1.5,6.9-6.2,5.5-10.8l-0.1-0.2l-3.4-10l10.3-3.5c0,0,3.2-1.4,4.2-3 C100,57.8,100.4,55.1,99.7,52.8z M43.6,62.3l-6.3-18.7c7.3-2.5,13.5-4.6,18.6-6.3L62.2,56L43.6,62.3z", "fill-cognitect": "M75.6,59.9L35.2,74.6V25.4l40.4,14.7V4.2c0-0.4-0.2-0.7-0.6-0.8l-9.1-3.3C65.7,0,65.4,0,65.1,0.2 c-0.2,0.2-0.4,0.4-0.4,0.7v23.7L25.6,10.3c-0.3-0.1-0.6-0.1-0.8,0.1c-0.2,0.2-0.4,0.4-0.4,0.7v77.7c0,0.3,0.1,0.5,0.4,0.7 c0.2,0.2,0.5,0.2,0.8,0.1l39.2-14.3v23.7c0,0.3,0.1,0.5,0.4,0.7c0.1,0.1,0.3,0.2,0.5,0.2c0.1,0,0.2,0,0.3-0.1l9.1-3.3 c0.3-0.1,0.6-0.5,0.6-0.8L75.6,59.9L75.6,59.9z", "fill-cognician": "M67.3,39.6c0.1-0.2,0.8-0.9,1.6-0.9H69c0.5,0.1,0.8,0.2,1,0.7c0.1,0.1,0.1,0.5,0.1,0.6 c-0.2,0.4-0.4,0.8-1.1,1.2c-0.3,0.2-1.7,0.8-2.4,0.9l-0.4,0.1C66.5,41.3,66.9,40.3,67.3,39.6 M39.4,42.2c-0.7-0.1-2.2-0.8-2.4-0.9 c-0.7-0.5-0.9-0.9-1.1-1.2c-0.1-0.1,0-0.5,0.1-0.6c0.2-0.5,0.5-0.6,1-0.7H37c0.8,0,1.5,0.7,1.6,0.9c0.5,0.7,0.8,1.7,1.1,2.7 L39.4,42.2L39.4,42.2z M85.4,71.6C80.6,78.1,74.2,82,66.9,83.3c-1.2,0.2-2.9,0.6-4.6,0.2c-3.2-0.7-3.4-4.2-3.3-4.7l6.1-31.6 c0.5-0.1,0.9-0.2,1.3-0.3l1-0.2c1.5-0.3,3.6-1.3,4.3-1.8c1.5-1.2,2.2-2.3,2.6-3.1c0.8-1.8,0.3-3.6-0.1-4.5c-0.9-2-2.7-3.2-4.9-3.3 c-2.6-0.2-4.9,1.5-5.9,3c-1.1,1.8-1.8,4.2-2.2,6c-0.8,0.1-1.6,0.2-2.3,0.3c1.9-4.2,1-7-0.1-8.7c-1-1.6-3-3-5.7-2.9 c-2.8-0.1-4.7,1.3-5.7,2.9c-1.1,1.7-1.9,4.6-0.1,8.7c-0.8-0.1-1.6-0.2-2.3-0.3c-0.5-1.9-1.2-4.3-2.2-6c-1-1.6-3.2-3.2-5.9-3 c-2.2,0.1-3.9,1.3-4.9,3.3c-0.4,0.9-0.9,2.8-0.1,4.5c0.4,0.9,1,2,2.6,3.1c0.7,0.5,2.8,1.5,4.3,1.8l1,0.2c0.4,0.1,0.9,0.2,1.3,0.3 l6,32.5c0,2.1,1.2,4.8-5.9,6.8c-8.8,2.1-17.6,4.2-26.4,6.3c2.5-1.9,5-3.9,7.4-5.9c1.3-1.1,2.8-2.1,4.1-3.2c1.8-1.3,2.2-2.2,1.3-3.3 c-0.1-0.5-0.7-1.1-1.6-1.9c-4.6-3.5-8.3-7.7-11.1-12.5c-1.5-2.8-2.8-5.7-3.6-9C4.8,33.6,20.6,9.1,44.7,5.5 c18.2-2.7,35.5,6.1,43.7,21.4c1.8,3.5,3.2,7.3,4,11.4C94.4,50.2,92.8,61.6,85.4,71.6 M52.4,36.6c0.2-0.1,0.4-0.1,0.6-0.1 c0.2,0,0.4,0.1,0.6,0.1c0.6,0.2,1.8,0.9,1.5,3c0,0-0.3,1.4-1.6,2.5c-0.1,0.1-0.2,0.2-0.4,0.3c-0.2-0.1-0.4-0.2-0.4-0.3 c-1.3-1.1-1.6-2.5-1.6-2.5C50.6,37.5,51.9,36.8,52.4,36.6 M98.3,43.5c-0.5-6.8-2.2-13-5-18.4C89,16.4,81.8,9.5,72,4.7 c-13.2-6.4-26.7-6-40.2-0.2C6.5,15.4-2.4,44.3,9.2,66.6c2.5,5.2,6.1,9.9,10.9,14.1c0.3,0.2,0.6,0.5,0.8,0.8 c-2.8,2.2-5.5,4.3-8.1,6.4c-3.4,2.6-6.8,5.3-10.2,8c-0.9,0.7-1.3,1.5-0.8,2.9c0.8,1.9,3.4,1.3,3.6,1.2c9.5-2.3,19.1-4.6,28.6-6.9 c3.3-0.8,6.6-1.6,9.8-2.6c0,0,2.3-0.6,3.9-1.8c2.2-1.6,4.3-4.2,3.9-8.1l-6-32.4c1.5,0.2,13.1,0.2,14.5,0l-5.9,30.5 c-0.5,6.7,5.9,9.6,7.7,9.8l0.2,0.1c2.3,0.3,6.1-0.5,9.3-1.5c8.4-2.7,15.3-7.4,20.1-14.8C97.3,63.3,99.1,53.6,98.3,43.5", "fill-scroll-north": "M35,27.5l15-15l15,15", "fill-scroll-south": "M65,72.5l-15,15l-15-15H65z", "fill-click-cursor": "M35,66.9V25l29.6,29.6h-12l6.9,16.6L50.3,75l-6.9-16.6L35,66.9z", "fill-dot": "M57.5,50c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S57.5,45.9,57.5,50z", "fill-ellipsis": "M59,50c0,5-4,9-9,9s-9-4-9-9s4-9,9-9S59,45,59,50z M14,41c-5,0-9,4-9,9s4,9,9,9s9-4,9-9S19,41,14,41z M86,41 c-5,0-9,4-9,9s4,9,9,9s9-4,9-9S91,41,86,41z", "fill-ellipsis-vertical": "M50,41c5,0,9,4,9,9s-4,9-9,9s-9-4-9-9S45,41,50,41z M41,86c0,5,4,9,9,9s9-4,9-9s-4-9-9-9S41,81,41,86z M41,14c0,5,4,9,9,9s9-4,9-9s-4-9-9-9S41,9,41,14z", "fill-star": "M50,2.4l15.5,31.3l34.5,5L75,63.1l5.9,34.4L50,81.3L19.1,97.6L25,63.1L0,38.8l34.6-5L50,2.4z", "fill-north": "M30,20L50,0l20,20H30z", "fill-south": "M70,80l-20,20L30,80H70z", "fill-east": "M80,30l20,20L80,70V30z", "fill-west": "M20,70L0,50l20-20V70z", "fill-up-down": "M55,80H45V20h10V80z", "fill-left-right": "M80,55H20V45h60V55z", "fill-lock-bottom": "M87.5,95h-75V45h75V95z", "fill-read-only": "M62.5,50c0,6.9-5.6,12.5-12.5,12.5S37.5,56.9,37.5,50 S43.1,37.5,50,37.5S62.5,43.1,62.5,50z", "fill-private": "M80,95H20V50h60V95z", "fill-chat1": "M32.5,50c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S32.5,45.9,32.5,50z", "fill-chat2": "M82.5,50c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S82.5,45.9,82.5,50z", "fill-x1": "M32.5,25c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S32.5,20.9,32.5,25z", "fill-x2": "M82.5,25c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S82.5,20.9,82.5,25z", "fill-x3": "M45,37.5c0,4.1-3.4,7.5-7.5,7.5S30,41.6,30,37.5s3.4-7.5,7.5-7.5S45,33.4,45,37.5z", "fill-x4": "M70,37.5c0,4.1-3.4,7.5-7.5,7.5S55,41.6,55,37.5s3.4-7.5,7.5-7.5S70,33.4,70,37.5z", "fill-x5": "M57.5,50c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S57.5,45.9,57.5,50z", "fill-x6": "M45,62.5c0,4.1-3.4,7.5-7.5,7.5S30,66.6,30,62.5s3.4-7.5,7.5-7.5S45,58.4,45,62.5z", "fill-x7": "M70,62.5c0,4.1-3.4,7.5-7.5,7.5S55,66.6,55,62.5s3.4-7.5,7.5-7.5S70,58.4,70,62.5z", "fill-x8": "M32.5,75c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S32.5,70.9,32.5,75z", "fill-x9": "M82.5,75c0,4.1-3.4,7.5-7.5,7.5s-7.5-3.4-7.5-7.5s3.4-7.5,7.5-7.5S82.5,70.9,82.5,75z", "fill-png": "M100,76.1H50H30H0l25-25l15,15l25-25L100,76.1z M32.3,23.9c-4,0-7.3,3.3-7.3,7.3s3.3,7.3,7.3,7.3 s7.3-3.3,7.3-7.3S36.3,23.9,32.3,23.9z", "fill-pdf": "M100,66.1c-0.4-5.2-9.2-8.6-9.2-8.6c-3.4-1.2-7.1-1.8-11.3-1.8c-4.5,0-9.3,0.7-15.6,2.1 c-5.5-3.9-10.3-8.8-13.9-14.3c-1.6-2.4-3-4.8-4.2-7.1c3-7.2,5.7-15,5.2-23.7C50.6,5.7,47.5,1,43.2,1c-2.9,0-5.5,2.2-7.5,6.5 C32,15.1,33,24.9,38.5,36.6c-2,4.7-3.9,9.6-5.7,14.3c-2.2,5.9-4.5,11.9-7.1,17.7C18.4,71.5,12.4,75,7.5,79.2 C4.2,82.1,0.2,86.4,0,90.8c-0.1,2.1,0.6,4,2.1,5.6C3.7,98.1,5.6,99,7.8,99c7.1,0,14-9.8,15.3-11.8c2.6-4,5.1-8.4,7.5-13.4 c6.1-2.2,12.5-3.8,18.8-5.4l2.2-0.6c1.7-0.4,3.4-0.9,5.2-1.4c1.9-0.5,3.9-1,5.8-1.6c6.4,4.1,13.3,6.7,20.1,7.7 c5.7,0.8,10.7,0.3,14.1-1.4C99.9,69.5,100.1,67.1,100,66.1z M17.6,83.6c-2.8,4.3-7.5,8.8-9.8,8.8c-0.2,0-0.5,0-0.9-0.5 c-0.3-0.3-0.3-0.5-0.3-0.8c0.1-1.6,2.2-4.4,5.2-7c2.7-2.4,5.8-4.4,9.3-6.3C19.9,79.9,18.8,81.8,17.6,83.6z M41.6,10.3 c0.6-1.3,1.2-2,1.5-2.4c0.5,0.8,1.2,2.6,1.4,5.2c0.3,5.1-0.8,10-2.4,14.8C40,22,39.1,15.5,41.6,10.3z M55.1,60.1 c-1.8,0.5-3.5,0.9-5.1,1.4L47.7,62c-4.5,1.1-9.1,2.3-13.6,3.7c1.7-4.1,3.3-8.3,4.9-12.4c1.2-3,2.3-6.1,3.6-9.2 c0.6,1,1.3,2.1,1.9,3.1c3.1,4.7,6.9,9,11.3,12.7C55.6,59.9,55.3,60,55.1,60.1z M83.6,66.1c-3.7-0.5-7.4-1.7-11.1-3.3 c6.6-1,11.6-0.7,16,0.9c1,0.4,2.7,1.3,3.9,2.2C90.2,66.5,87.1,66.6,83.6,66.1z", "fill-code": "M41.6,82.8L34.3,80l24.1-62.8l7.4,2.8L41.6,82.8z M74.8,75.2l-5.6-5.6L88.8,50L69.2,30.4l5.6-5.6L100,50 L74.8,75.2z M25.2,75.2L0,50l25.2-25.2l5.6,5.6L11.2,50l19.6,19.6L25.2,75.2z", "fill-file-pdf": "M72.5,57.2c-0.2-2.4-4.1-3.9-4.2-3.9c-1.5-0.5-3.2-0.8-5.1-0.8c-2,0-4.2,0.3-7,0.9c-2.5-1.8-4.6-4-6.3-6.4 c-0.7-1.1-1.3-2.2-1.9-3.2c1.4-3.2,2.6-6.7,2.4-10.7c-0.2-3.1-1.6-5.2-3.5-5.2c-1.3,0-2.5,1-3.4,2.9c-1.6,3.4-1.2,7.8,1.3,13.1 c-0.9,2.1-1.7,4.3-2.5,6.4c-1,2.6-2,5.4-3.2,8c-3.3,1.3-6,2.9-8.2,4.8c-1.5,1.3-3.2,3.2-3.3,5.2c0,1,0.3,1.8,0.9,2.5 C29.1,71.6,30,72,31,72c3.2,0,6.3-4.4,6.9-5.3c1.2-1.8,2.3-3.8,3.4-6c2.7-1,5.6-1.7,8.4-2.4l1-0.3c0.8-0.2,1.5-0.4,2.4-0.6 c0.9-0.2,1.7-0.5,2.6-0.7c2.9,1.8,6,3,9,3.5c2.6,0.4,4.8,0.2,6.4-0.6C72.5,58.8,72.5,57.7,72.5,57.2z M35.4,65.1 c-1.3,1.9-3.4,4-4.4,4c-0.1,0-0.2,0-0.4-0.2c-0.1-0.1-0.1-0.2-0.1-0.3c0-0.7,1-2,2.3-3.1c1.2-1.1,2.6-2,4.2-2.8 C36.5,63.5,36,64.3,35.4,65.1z M46.2,32.2c0.3-0.6,0.5-0.9,0.7-1.1c0.2,0.4,0.5,1.2,0.6,2.3c0.1,2.3-0.4,4.5-1.1,6.6 C45.5,37.4,45.1,34.5,46.2,32.2z M52.3,54.5c-0.8,0.2-1.6,0.4-2.3,0.6l-1,0.3c-2,0.5-4.1,1-6.1,1.7c0.8-1.9,1.5-3.8,2.2-5.6 c0.5-1.4,1.1-2.8,1.6-4.1c0.3,0.5,0.6,0.9,0.9,1.4c1.4,2.1,3.1,4.1,5.1,5.7C52.5,54.5,52.4,54.5,52.3,54.5z M65.1,57.2 c-1.6-0.2-3.3-0.7-5-1.5c2.9-0.4,5.2-0.3,7.2,0.4c0.5,0.2,1.2,0.6,1.7,1C68.1,57.4,66.7,57.5,65.1,57.2z", "fill-dn-logo": "M38.7,42.1c1.1,1.8,1.6,4.5,1.6,7.9c0,2.5-0.4,4.6-1.1,6.4c-1.3,3.3-3.6,4.9-6.9,4.9h-6.5V39.3h6.5 C35.5,39.3,37.6,40.2,38.7,42.1z M100,50c0,27.6-22.4,50-50,50S0,77.6,0,50S22.4,0,50,0S100,22.4,100,50z M47.4,49.5 c0-1.8-0.2-3.6-0.6-5.6c-0.4-1.9-1.2-3.8-2.4-5.4c-1.5-2.1-3.4-3.5-5.7-4.3c-1.4-0.5-3.1-0.7-5.2-0.7H19v33.6h14.5 c5.1,0,8.8-2.1,11.3-6.3C46.5,57.7,47.4,53.9,47.4,49.5z M79.8,33.5h-6.5v23.4L59.9,33.5h-7.4v33.6h6.5V43.3l13.7,23.8h7V33.5z" }; let iconPiles = { "play": [|"fill-play"|], "pause": [|"fill-pause"|], "next": [|"fill-skip-forwards"|], "back": [|"fill-skip-backwards"|], "loading": [|"stroke-circle"|], "search": [|"stroke-search-lens", "stroke-search-handle", "stroke-x-left", "stroke-x-right"|], "close": [|"stroke-close"|], "dropdown": [|"stroke-dropdown-caret"|], "nodejs": [|"stroke-nodejs"|], "python": [| "stroke-python-south", "stroke-python-north", "fill-python-south", "fill-python-north" |], "octocat": [|"stroke-circle", "fill-octocat"|], "github": [|"fill-github"|], "google": [|"fill-google1", "fill-google2", "fill-google3", "fill-google4"|], "twitter": [|"fill-twitter"|], "auth0": [|"fill-auth0"|], "bolt": [|"fill-bolt"|], "download": [|"stroke-download"|], "globe": [|"stroke-globe"|], "settings": [|"stroke-cog", "stroke-dot"|], "reveal": [|"stroke-eye", "stroke-dot"|], "hide": [|"stroke-eye", "stroke-dot", "stroke-xright"|], "help": [|"stroke-circle", "fill-question"|], "star": [|"stroke-star"|], "update": [|"stroke-spin", "stroke-time"|], "commit": [|"stroke-commit"|], "user": [|"stroke-user"|], "code": [|"stroke-code-left", "stroke-code-slash", "stroke-code-right"|], "sound-off": [|"stroke-sound"|], "sound-min": [|"stroke-sound", "stroke-sound-wave1"|], "sound-med": [|"stroke-sound", "stroke-sound-wave1", "stroke-sound-wave2"|], "sound-max": [|"stroke-sound", "stroke-sound-wave1", "stroke-sound-wave2", "stroke-sound-wave3"|], "sound-mute": [| "stroke-sound", "stroke-sound-wave1", "stroke-sound-wave2", "stroke-sound-wave3", "stroke-slash-backwards" |], "precursor": [|"stroke-precursor"|], "check": [|"stroke-check"|], "times": [|"stroke-times"|], "cursor": [|"stroke-cursor"|], "rectangle": [|"stroke-rectangle"|], "line": [|"stroke-line"|], "text": [|"stroke-text"|], "pencil": [|"stroke-pencil"|], "ellipse": [|"stroke-ellipse"|], "mic": [|"stroke-mic"|], "mic-off": [|"stroke-mic", "stroke-slash-backward"|], "users": [|"stroke-users"|], "bullet": [|"stroke-dot"|], "chats": [|"stroke-chats"|], "crosshair": [|"stroke-crosshair"|], "ibeam": [|"stroke-ibeam"|], "blog": [|"stroke-blog"|], "clock": [|"stroke-clock"|], "delete": [|"stroke-delete"|], "shift": [|"stroke-shift"|], "option": [|"stroke-option"|], "control": [|"stroke-control"|], "command": [|"stroke-command"|], "esc": [|"stroke-esc"|], "space": [|"stroke-space"|], "mouse": [|"stroke-mouse"|], "doc": [|"stroke-doc"|], "docs": [|"stroke-docs"|], "docs-team": [|"stroke-docs-team"|], "newdoc": [|"stroke-newdoc"|], "login": [|"stroke-login"|], "logout": [|"stroke-logout"|], "info": [|"stroke-info"|], "home": [|"stroke-home"|], "hash": [|"stroke-hash"|], "arrow-up": [|"stroke-arrow-up"|], "arrow-down": [|"stroke-arrow-down"|], "arrow-left": [|"stroke-arrow-left"|], "arrow-right": [|"stroke-arrow-right"|], "at": [|"stroke-at"|], "sharing": [|"stroke-sharing"|], "email": [|"stroke-email"|], "phone": [|"stroke-phone"|], "activity": [|"stroke-activity"|], "credit": [|"stroke-credit"|], "heart": [|"stroke-heart"|], "public": [|"stroke-public"|], "team": [|"stroke-team"|], "requests": [|"stroke-requests"|], "minus": [|"stroke-horizontal"|], "plus": [|"stroke-horizontal", "stroke-vertical"|], "clips": [|"stroke-border-square", "stroke-horizontal", "stroke-vertical"|], "read-only": [|"stroke-read-only", "fill-read-only"|], "menu": [|"stroke-menu-top", "stroke-menu-mid", "stroke-menu-btm"|], "sound": [|"stroke-sound", "stroke-wave1", "stroke-wave2", "stroke-wave3"|], "lock": [|"stroke-private", "stroke-private-bottom"|], "private": [|"stroke-private", "fill-private"|], "chat": [|"stroke-chat", "fill-chat1", "fill-x5", "fill-chat2"|], "chat-team": [|"stroke-chat-team"|], "feedback": [|"stroke-feedback"|], "click": [|"fill-click-cursor", "stroke-click-1", "stroke-click-2", "stroke-click-3"|], "chat-morph": [| "stroke-chat", "fill-x1", "fill-x2", "fill-x3", "fill-x4", "fill-x5", "fill-x6", "fill-x7", "fill-x8", "fill-x9" |], "logomark": [|"fill-logomark"|], "google-logo": [|"fill-google"|], "dribbble": [|"fill-dribbble"|], "slack": [|"fill-slack"|], "cognitect": [|"fill-cognitect"|], "cognician": [|"fill-cognician"|], "ph-logo": [|"fill-ph-logo"|], "dn-logo": [|"fill-dn-logo"|], "file-png": [|"fill-png"|], "file-pdf": [|"fill-pdf"|], "file-svg": [|"fill-code"|], "ellipsis": [|"fill-ellipsis"|], "dot-menu": [|"fill-ellipsis-vertical"|], "starred": [|"fill-star"|], "scroll": [|"fill-scroll-north", "fill-dot", "fill-scroll-south"|], "north": [|"fill-up-down", "fill-north"|], "south": [|"fill-up-down", "fill-south"|], "east": [|"fill-left-right", "fill-east"|], "west": [|"fill-left-right", "fill-west"|], "north-south": [|"fill-up-down", "fill-north", "fill-south"|], "east-west": [|"fill-left-right", "fill-east", "fill-west"|] }; ```

But getting data out of there is pretty iffy now. I'm trying to find a happy medium - perhaps there could be a way (some more special syntax?) to implicitly define a record type along with its contents so that the amount of code was similar to the second example, while having the typed advantages of the first? It could be discouraged, etc. but having it available might be nice.

anmonteiro commented 1 month ago

better done in a ppx