# key-code icon

Key code. Gentleface icon, drawn on the 16 px pixel grid. Free, MIT licensed. Page: https://gentleface.com/icons/key-code

- Category: Security & privacy
- Use it for: api key, developer key, access token, api token, personal access token, secret key
- Tags: api, api-key, token, secret, credential, developer, code, key
- Family: key, key-alert, key-check, key-clock, key-horizontal, key-off, key-plus, key-question
- Component name: KeyCodeIcon
- Added: 2026-10-15

## Don't confuse with

- `key`: a bare key means a credential; API key is key + </>

## Also fits

- api: an API key or access token
- key: an API key or access token

## Files

Each SVG is 16 × 16 with fill="currentColor". Keep it at 16 px or an exact multiple (32, 48) on whole pixels: a fractional size or position blurs it.

- line-round: https://gentleface.com/svg/line-round/16/key-code.svg · PNG https://gentleface.com/png/line-round/16/key-code.png · https://gentleface.com/png/line-round/32/key-code.png · https://gentleface.com/png/line-round/48/key-code.png
- line-soft: https://gentleface.com/svg/line-soft/16/key-code.svg · PNG https://gentleface.com/png/line-soft/16/key-code.png · https://gentleface.com/png/line-soft/32/key-code.png · https://gentleface.com/png/line-soft/48/key-code.png
- line-sharp: https://gentleface.com/svg/line-sharp/16/key-code.svg · PNG https://gentleface.com/png/line-sharp/16/key-code.png · https://gentleface.com/png/line-sharp/32/key-code.png · https://gentleface.com/png/line-sharp/48/key-code.png
- solid-round: https://gentleface.com/svg/solid-round/16/key-code.svg · PNG https://gentleface.com/png/solid-round/16/key-code.png · https://gentleface.com/png/solid-round/32/key-code.png · https://gentleface.com/png/solid-round/48/key-code.png
- solid-soft: https://gentleface.com/svg/solid-soft/16/key-code.svg · PNG https://gentleface.com/png/solid-soft/16/key-code.png · https://gentleface.com/png/solid-soft/32/key-code.png · https://gentleface.com/png/solid-soft/48/key-code.png
- solid-sharp: https://gentleface.com/svg/solid-sharp/16/key-code.svg · PNG https://gentleface.com/png/solid-sharp/16/key-code.png · https://gentleface.com/png/solid-sharp/32/key-code.png · https://gentleface.com/png/solid-sharp/48/key-code.png

The SVG of every style: https://gentleface.com/icons/key-code.json (`svg`).

## Code (line-round)

The snippets are decorative (aria-hidden). For an icon that carries meaning on its own, such as an icon-only button, label the button, or give the SVG role="img" and an aria-label. For another style, take its SVG from the JSON and swap the path `d`.

### SVG

```svg
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true"><path d="M2.561 11.146C2.381 11.326 2.243 11.533 2.146 11.767C2.049 12.002 2 12.246 2 12.5L2 14L3.793 14C4.126 14 4.411 13.882 4.646 13.646C4.882 13.411 5 13.126 5 12.793L5 11.5C5 11.359 5.048 11.241 5.144 11.144C5.241 11.048 5.359 11 5.5 11L6.5 11C6.641 11 6.759 11.048 6.856 11.144C6.952 11.241 7 11.359 7 11.5C7 11.641 6.952 11.759 6.856 11.856C6.759 11.952 6.641 12 6.5 12L6 12L6 12.793C6 13.086 5.944 13.367 5.832 13.638C5.72 13.908 5.561 14.147 5.354 14.354C5.147 14.561 4.908 14.72 4.638 14.832C4.367 14.944 4.086 15 3.793 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5L1 12.5C1 12.114 1.074 11.742 1.222 11.385C1.37 11.028 1.58 10.713 1.854 10.439L6.06 6.233C5.978 5.742 5.979 5.248 6.063 4.752C6.171 4.106 6.41 3.513 6.778 2.971C7.146 2.43 7.61 1.989 8.17 1.65C8.681 1.341 9.232 1.141 9.823 1.051C10.414 0.961 11 0.988 11.58 1.132C12.216 1.289 12.79 1.571 13.302 1.979C13.815 2.387 14.219 2.883 14.514 3.467C14.785 4 14.942 4.565 14.987 5.161C15.045 5.929 14.915 6.664 14.595 7.365C14.276 8.066 13.807 8.647 13.19 9.108C13.175 9.119 13.159 9.129 13.144 9.139C12.948 9.044 12.733 8.997 12.5 8.997L12.484 8.997C12.404 8.886 12.374 8.766 12.393 8.634C12.413 8.5 12.479 8.39 12.592 8.306C13.072 7.948 13.437 7.496 13.685 6.951C13.934 6.405 14.035 5.834 13.99 5.236C13.955 4.772 13.832 4.333 13.622 3.919C13.392 3.464 13.078 3.079 12.679 2.761C12.281 2.444 11.835 2.225 11.34 2.102C10.889 1.991 10.433 1.97 9.974 2.04C9.514 2.11 9.085 2.265 8.688 2.506C8.252 2.77 7.891 3.112 7.605 3.533C7.319 3.954 7.133 4.416 7.049 4.918C6.971 5.377 6.985 5.833 7.089 6.286C7.109 6.37 7.107 6.454 7.083 6.536C7.06 6.618 7.017 6.69 6.956 6.751L2.561 11.146ZM11.207 4.793C11.402 4.988 11.5 5.224 11.5 5.5C11.5 5.776 11.402 6.012 11.207 6.207C11.012 6.402 10.776 6.5 10.5 6.5C10.224 6.5 9.988 6.402 9.793 6.207C9.598 6.012 9.5 5.776 9.5 5.5C9.5 5.224 9.598 4.988 9.793 4.793C9.988 4.598 10.224 4.5 10.5 4.5C10.776 4.5 11.012 4.598 11.207 4.793ZM10.854 14.854C10.754 14.953 10.636 15.003 10.5 15.003C10.364 15.003 10.246 14.953 10.146 14.854L8.146 12.854C8.047 12.754 7.997 12.636 7.997 12.5C7.997 12.364 8.047 12.246 8.146 12.146L10.146 10.146C10.246 10.047 10.364 9.997 10.5 9.997C10.636 9.997 10.754 10.047 10.854 10.146C10.953 10.246 11.003 10.364 11.003 10.5C11.003 10.636 10.953 10.754 10.854 10.854L9.207 12.5L10.854 14.146C10.953 14.246 11.003 14.364 11.003 14.5C11.003 14.636 10.953 14.754 10.854 14.854ZM14.854 12.854L12.854 14.854C12.754 14.953 12.636 15.003 12.5 15.003C12.364 15.003 12.246 14.953 12.146 14.854C12.047 14.754 11.997 14.636 11.997 14.5C11.997 14.364 12.047 14.246 12.146 14.146L13.793 12.5L12.146 10.854C12.047 10.754 11.997 10.636 11.997 10.5C11.997 10.364 12.047 10.246 12.146 10.146C12.246 10.047 12.364 9.997 12.5 9.997C12.636 9.997 12.754 10.047 12.854 10.146L14.854 12.146C14.953 12.246 15.003 12.364 15.003 12.5C15.003 12.636 14.953 12.754 14.854 12.854Z"/></svg>
```

### React

```tsx
// Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code
import type { SVGProps } from 'react';

export function KeyCodeIcon(props: SVGProps<SVGSVGElement>) {
  return (
    <svg xmlns="http://www.w3.org/2000/svg" width={16} height={16} viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" {...props}>
      <path d="M2.561 11.146C2.381 11.326 2.243 11.533 2.146 11.767C2.049 12.002 2 12.246 2 12.5L2 14L3.793 14C4.126 14 4.411 13.882 4.646 13.646C4.882 13.411 5 13.126 5 12.793L5 11.5C5 11.359 5.048 11.241 5.144 11.144C5.241 11.048 5.359 11 5.5 11L6.5 11C6.641 11 6.759 11.048 6.856 11.144C6.952 11.241 7 11.359 7 11.5C7 11.641 6.952 11.759 6.856 11.856C6.759 11.952 6.641 12 6.5 12L6 12L6 12.793C6 13.086 5.944 13.367 5.832 13.638C5.72 13.908 5.561 14.147 5.354 14.354C5.147 14.561 4.908 14.72 4.638 14.832C4.367 14.944 4.086 15 3.793 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5L1 12.5C1 12.114 1.074 11.742 1.222 11.385C1.37 11.028 1.58 10.713 1.854 10.439L6.06 6.233C5.978 5.742 5.979 5.248 6.063 4.752C6.171 4.106 6.41 3.513 6.778 2.971C7.146 2.43 7.61 1.989 8.17 1.65C8.681 1.341 9.232 1.141 9.823 1.051C10.414 0.961 11 0.988 11.58 1.132C12.216 1.289 12.79 1.571 13.302 1.979C13.815 2.387 14.219 2.883 14.514 3.467C14.785 4 14.942 4.565 14.987 5.161C15.045 5.929 14.915 6.664 14.595 7.365C14.276 8.066 13.807 8.647 13.19 9.108C13.175 9.119 13.159 9.129 13.144 9.139C12.948 9.044 12.733 8.997 12.5 8.997L12.484 8.997C12.404 8.886 12.374 8.766 12.393 8.634C12.413 8.5 12.479 8.39 12.592 8.306C13.072 7.948 13.437 7.496 13.685 6.951C13.934 6.405 14.035 5.834 13.99 5.236C13.955 4.772 13.832 4.333 13.622 3.919C13.392 3.464 13.078 3.079 12.679 2.761C12.281 2.444 11.835 2.225 11.34 2.102C10.889 1.991 10.433 1.97 9.974 2.04C9.514 2.11 9.085 2.265 8.688 2.506C8.252 2.77 7.891 3.112 7.605 3.533C7.319 3.954 7.133 4.416 7.049 4.918C6.971 5.377 6.985 5.833 7.089 6.286C7.109 6.37 7.107 6.454 7.083 6.536C7.06 6.618 7.017 6.69 6.956 6.751L2.561 11.146ZM11.207 4.793C11.402 4.988 11.5 5.224 11.5 5.5C11.5 5.776 11.402 6.012 11.207 6.207C11.012 6.402 10.776 6.5 10.5 6.5C10.224 6.5 9.988 6.402 9.793 6.207C9.598 6.012 9.5 5.776 9.5 5.5C9.5 5.224 9.598 4.988 9.793 4.793C9.988 4.598 10.224 4.5 10.5 4.5C10.776 4.5 11.012 4.598 11.207 4.793ZM10.854 14.854C10.754 14.953 10.636 15.003 10.5 15.003C10.364 15.003 10.246 14.953 10.146 14.854L8.146 12.854C8.047 12.754 7.997 12.636 7.997 12.5C7.997 12.364 8.047 12.246 8.146 12.146L10.146 10.146C10.246 10.047 10.364 9.997 10.5 9.997C10.636 9.997 10.754 10.047 10.854 10.146C10.953 10.246 11.003 10.364 11.003 10.5C11.003 10.636 10.953 10.754 10.854 10.854L9.207 12.5L10.854 14.146C10.953 14.246 11.003 14.364 11.003 14.5C11.003 14.636 10.953 14.754 10.854 14.854ZM14.854 12.854L12.854 14.854C12.754 14.953 12.636 15.003 12.5 15.003C12.364 15.003 12.246 14.953 12.146 14.854C12.047 14.754 11.997 14.636 11.997 14.5C11.997 14.364 12.047 14.246 12.146 14.146L13.793 12.5L12.146 10.854C12.047 10.754 11.997 10.636 11.997 10.5C11.997 10.364 12.047 10.246 12.146 10.146C12.246 10.047 12.364 9.997 12.5 9.997C12.636 9.997 12.754 10.047 12.854 10.146L14.854 12.146C14.953 12.246 15.003 12.364 15.003 12.5C15.003 12.636 14.953 12.754 14.854 12.854Z" />
    </svg>
  );
}
```

### Vue

```vue
<!-- Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code -->
<template>
  <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true">
    <path d="M2.561 11.146C2.381 11.326 2.243 11.533 2.146 11.767C2.049 12.002 2 12.246 2 12.5L2 14L3.793 14C4.126 14 4.411 13.882 4.646 13.646C4.882 13.411 5 13.126 5 12.793L5 11.5C5 11.359 5.048 11.241 5.144 11.144C5.241 11.048 5.359 11 5.5 11L6.5 11C6.641 11 6.759 11.048 6.856 11.144C6.952 11.241 7 11.359 7 11.5C7 11.641 6.952 11.759 6.856 11.856C6.759 11.952 6.641 12 6.5 12L6 12L6 12.793C6 13.086 5.944 13.367 5.832 13.638C5.72 13.908 5.561 14.147 5.354 14.354C5.147 14.561 4.908 14.72 4.638 14.832C4.367 14.944 4.086 15 3.793 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5L1 12.5C1 12.114 1.074 11.742 1.222 11.385C1.37 11.028 1.58 10.713 1.854 10.439L6.06 6.233C5.978 5.742 5.979 5.248 6.063 4.752C6.171 4.106 6.41 3.513 6.778 2.971C7.146 2.43 7.61 1.989 8.17 1.65C8.681 1.341 9.232 1.141 9.823 1.051C10.414 0.961 11 0.988 11.58 1.132C12.216 1.289 12.79 1.571 13.302 1.979C13.815 2.387 14.219 2.883 14.514 3.467C14.785 4 14.942 4.565 14.987 5.161C15.045 5.929 14.915 6.664 14.595 7.365C14.276 8.066 13.807 8.647 13.19 9.108C13.175 9.119 13.159 9.129 13.144 9.139C12.948 9.044 12.733 8.997 12.5 8.997L12.484 8.997C12.404 8.886 12.374 8.766 12.393 8.634C12.413 8.5 12.479 8.39 12.592 8.306C13.072 7.948 13.437 7.496 13.685 6.951C13.934 6.405 14.035 5.834 13.99 5.236C13.955 4.772 13.832 4.333 13.622 3.919C13.392 3.464 13.078 3.079 12.679 2.761C12.281 2.444 11.835 2.225 11.34 2.102C10.889 1.991 10.433 1.97 9.974 2.04C9.514 2.11 9.085 2.265 8.688 2.506C8.252 2.77 7.891 3.112 7.605 3.533C7.319 3.954 7.133 4.416 7.049 4.918C6.971 5.377 6.985 5.833 7.089 6.286C7.109 6.37 7.107 6.454 7.083 6.536C7.06 6.618 7.017 6.69 6.956 6.751L2.561 11.146ZM11.207 4.793C11.402 4.988 11.5 5.224 11.5 5.5C11.5 5.776 11.402 6.012 11.207 6.207C11.012 6.402 10.776 6.5 10.5 6.5C10.224 6.5 9.988 6.402 9.793 6.207C9.598 6.012 9.5 5.776 9.5 5.5C9.5 5.224 9.598 4.988 9.793 4.793C9.988 4.598 10.224 4.5 10.5 4.5C10.776 4.5 11.012 4.598 11.207 4.793ZM10.854 14.854C10.754 14.953 10.636 15.003 10.5 15.003C10.364 15.003 10.246 14.953 10.146 14.854L8.146 12.854C8.047 12.754 7.997 12.636 7.997 12.5C7.997 12.364 8.047 12.246 8.146 12.146L10.146 10.146C10.246 10.047 10.364 9.997 10.5 9.997C10.636 9.997 10.754 10.047 10.854 10.146C10.953 10.246 11.003 10.364 11.003 10.5C11.003 10.636 10.953 10.754 10.854 10.854L9.207 12.5L10.854 14.146C10.953 14.246 11.003 14.364 11.003 14.5C11.003 14.636 10.953 14.754 10.854 14.854ZM14.854 12.854L12.854 14.854C12.754 14.953 12.636 15.003 12.5 15.003C12.364 15.003 12.246 14.953 12.146 14.854C12.047 14.754 11.997 14.636 11.997 14.5C11.997 14.364 12.047 14.246 12.146 14.146L13.793 12.5L12.146 10.854C12.047 10.754 11.997 10.636 11.997 10.5C11.997 10.364 12.047 10.246 12.146 10.146C12.246 10.047 12.364 9.997 12.5 9.997C12.636 9.997 12.754 10.047 12.854 10.146L14.854 12.146C14.953 12.246 15.003 12.364 15.003 12.5C15.003 12.636 14.953 12.754 14.854 12.854Z" />
  </svg>
</template>
```

### Svelte

```svelte
<!-- Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code -->
<script>
  let props = $props();
</script>

<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" {...props}>
  <path d="M2.561 11.146C2.381 11.326 2.243 11.533 2.146 11.767C2.049 12.002 2 12.246 2 12.5L2 14L3.793 14C4.126 14 4.411 13.882 4.646 13.646C4.882 13.411 5 13.126 5 12.793L5 11.5C5 11.359 5.048 11.241 5.144 11.144C5.241 11.048 5.359 11 5.5 11L6.5 11C6.641 11 6.759 11.048 6.856 11.144C6.952 11.241 7 11.359 7 11.5C7 11.641 6.952 11.759 6.856 11.856C6.759 11.952 6.641 12 6.5 12L6 12L6 12.793C6 13.086 5.944 13.367 5.832 13.638C5.72 13.908 5.561 14.147 5.354 14.354C5.147 14.561 4.908 14.72 4.638 14.832C4.367 14.944 4.086 15 3.793 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5L1 12.5C1 12.114 1.074 11.742 1.222 11.385C1.37 11.028 1.58 10.713 1.854 10.439L6.06 6.233C5.978 5.742 5.979 5.248 6.063 4.752C6.171 4.106 6.41 3.513 6.778 2.971C7.146 2.43 7.61 1.989 8.17 1.65C8.681 1.341 9.232 1.141 9.823 1.051C10.414 0.961 11 0.988 11.58 1.132C12.216 1.289 12.79 1.571 13.302 1.979C13.815 2.387 14.219 2.883 14.514 3.467C14.785 4 14.942 4.565 14.987 5.161C15.045 5.929 14.915 6.664 14.595 7.365C14.276 8.066 13.807 8.647 13.19 9.108C13.175 9.119 13.159 9.129 13.144 9.139C12.948 9.044 12.733 8.997 12.5 8.997L12.484 8.997C12.404 8.886 12.374 8.766 12.393 8.634C12.413 8.5 12.479 8.39 12.592 8.306C13.072 7.948 13.437 7.496 13.685 6.951C13.934 6.405 14.035 5.834 13.99 5.236C13.955 4.772 13.832 4.333 13.622 3.919C13.392 3.464 13.078 3.079 12.679 2.761C12.281 2.444 11.835 2.225 11.34 2.102C10.889 1.991 10.433 1.97 9.974 2.04C9.514 2.11 9.085 2.265 8.688 2.506C8.252 2.77 7.891 3.112 7.605 3.533C7.319 3.954 7.133 4.416 7.049 4.918C6.971 5.377 6.985 5.833 7.089 6.286C7.109 6.37 7.107 6.454 7.083 6.536C7.06 6.618 7.017 6.69 6.956 6.751L2.561 11.146ZM11.207 4.793C11.402 4.988 11.5 5.224 11.5 5.5C11.5 5.776 11.402 6.012 11.207 6.207C11.012 6.402 10.776 6.5 10.5 6.5C10.224 6.5 9.988 6.402 9.793 6.207C9.598 6.012 9.5 5.776 9.5 5.5C9.5 5.224 9.598 4.988 9.793 4.793C9.988 4.598 10.224 4.5 10.5 4.5C10.776 4.5 11.012 4.598 11.207 4.793ZM10.854 14.854C10.754 14.953 10.636 15.003 10.5 15.003C10.364 15.003 10.246 14.953 10.146 14.854L8.146 12.854C8.047 12.754 7.997 12.636 7.997 12.5C7.997 12.364 8.047 12.246 8.146 12.146L10.146 10.146C10.246 10.047 10.364 9.997 10.5 9.997C10.636 9.997 10.754 10.047 10.854 10.146C10.953 10.246 11.003 10.364 11.003 10.5C11.003 10.636 10.953 10.754 10.854 10.854L9.207 12.5L10.854 14.146C10.953 14.246 11.003 14.364 11.003 14.5C11.003 14.636 10.953 14.754 10.854 14.854ZM14.854 12.854L12.854 14.854C12.754 14.953 12.636 15.003 12.5 15.003C12.364 15.003 12.246 14.953 12.146 14.854C12.047 14.754 11.997 14.636 11.997 14.5C11.997 14.364 12.047 14.246 12.146 14.146L13.793 12.5L12.146 10.854C12.047 10.754 11.997 10.636 11.997 10.5C11.997 10.364 12.047 10.246 12.146 10.146C12.246 10.047 12.364 9.997 12.5 9.997C12.636 9.997 12.754 10.047 12.854 10.146L14.854 12.146C14.953 12.246 15.003 12.364 15.003 12.5C15.003 12.636 14.953 12.754 14.854 12.854Z" />
</svg>
```

### HTML img

```html
<!-- Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code. An <img> can't take currentColor: it draws black. Inline the SVG or use the CSS mask to color it. -->
<img src="https://gentleface.com/svg/line-round/16/key-code.svg" width="16" height="16" alt="">
```

### CSS

```css
/* Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code. Takes the text color. */
.icon-key-code {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='currentColor'%3E%3Cpath d='M2.561 11.146C2.381 11.326 2.243 11.533 2.146 11.767C2.049 12.002 2 12.246 2 12.5L2 14L3.793 14C4.126 14 4.411 13.882 4.646 13.646C4.882 13.411 5 13.126 5 12.793L5 11.5C5 11.359 5.048 11.241 5.144 11.144C5.241 11.048 5.359 11 5.5 11L6.5 11C6.641 11 6.759 11.048 6.856 11.144C6.952 11.241 7 11.359 7 11.5C7 11.641 6.952 11.759 6.856 11.856C6.759 11.952 6.641 12 6.5 12L6 12L6 12.793C6 13.086 5.944 13.367 5.832 13.638C5.72 13.908 5.561 14.147 5.354 14.354C5.147 14.561 4.908 14.72 4.638 14.832C4.367 14.944 4.086 15 3.793 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5L1 12.5C1 12.114 1.074 11.742 1.222 11.385C1.37 11.028 1.58 10.713 1.854 10.439L6.06 6.233C5.978 5.742 5.979 5.248 6.063 4.752C6.171 4.106 6.41 3.513 6.778 2.971C7.146 2.43 7.61 1.989 8.17 1.65C8.681 1.341 9.232 1.141 9.823 1.051C10.414 0.961 11 0.988 11.58 1.132C12.216 1.289 12.79 1.571 13.302 1.979C13.815 2.387 14.219 2.883 14.514 3.467C14.785 4 14.942 4.565 14.987 5.161C15.045 5.929 14.915 6.664 14.595 7.365C14.276 8.066 13.807 8.647 13.19 9.108C13.175 9.119 13.159 9.129 13.144 9.139C12.948 9.044 12.733 8.997 12.5 8.997L12.484 8.997C12.404 8.886 12.374 8.766 12.393 8.634C12.413 8.5 12.479 8.39 12.592 8.306C13.072 7.948 13.437 7.496 13.685 6.951C13.934 6.405 14.035 5.834 13.99 5.236C13.955 4.772 13.832 4.333 13.622 3.919C13.392 3.464 13.078 3.079 12.679 2.761C12.281 2.444 11.835 2.225 11.34 2.102C10.889 1.991 10.433 1.97 9.974 2.04C9.514 2.11 9.085 2.265 8.688 2.506C8.252 2.77 7.891 3.112 7.605 3.533C7.319 3.954 7.133 4.416 7.049 4.918C6.971 5.377 6.985 5.833 7.089 6.286C7.109 6.37 7.107 6.454 7.083 6.536C7.06 6.618 7.017 6.69 6.956 6.751L2.561 11.146ZM11.207 4.793C11.402 4.988 11.5 5.224 11.5 5.5C11.5 5.776 11.402 6.012 11.207 6.207C11.012 6.402 10.776 6.5 10.5 6.5C10.224 6.5 9.988 6.402 9.793 6.207C9.598 6.012 9.5 5.776 9.5 5.5C9.5 5.224 9.598 4.988 9.793 4.793C9.988 4.598 10.224 4.5 10.5 4.5C10.776 4.5 11.012 4.598 11.207 4.793ZM10.854 14.854C10.754 14.953 10.636 15.003 10.5 15.003C10.364 15.003 10.246 14.953 10.146 14.854L8.146 12.854C8.047 12.754 7.997 12.636 7.997 12.5C7.997 12.364 8.047 12.246 8.146 12.146L10.146 10.146C10.246 10.047 10.364 9.997 10.5 9.997C10.636 9.997 10.754 10.047 10.854 10.146C10.953 10.246 11.003 10.364 11.003 10.5C11.003 10.636 10.953 10.754 10.854 10.854L9.207 12.5L10.854 14.146C10.953 14.246 11.003 14.364 11.003 14.5C11.003 14.636 10.953 14.754 10.854 14.854ZM14.854 12.854L12.854 14.854C12.754 14.953 12.636 15.003 12.5 15.003C12.364 15.003 12.246 14.953 12.146 14.854C12.047 14.754 11.997 14.636 11.997 14.5C11.997 14.364 12.047 14.246 12.146 14.146L13.793 12.5L12.146 10.854C12.047 10.754 11.997 10.636 11.997 10.5C11.997 10.364 12.047 10.246 12.146 10.146C12.246 10.047 12.364 9.997 12.5 9.997C12.636 9.997 12.754 10.047 12.854 10.146L14.854 12.146C14.953 12.246 15.003 12.364 15.003 12.5C15.003 12.636 14.953 12.754 14.854 12.854Z'/%3E%3C/svg%3E") center / 16px 16px no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='currentColor'%3E%3Cpath d='M2.561 11.146C2.381 11.326 2.243 11.533 2.146 11.767C2.049 12.002 2 12.246 2 12.5L2 14L3.793 14C4.126 14 4.411 13.882 4.646 13.646C4.882 13.411 5 13.126 5 12.793L5 11.5C5 11.359 5.048 11.241 5.144 11.144C5.241 11.048 5.359 11 5.5 11L6.5 11C6.641 11 6.759 11.048 6.856 11.144C6.952 11.241 7 11.359 7 11.5C7 11.641 6.952 11.759 6.856 11.856C6.759 11.952 6.641 12 6.5 12L6 12L6 12.793C6 13.086 5.944 13.367 5.832 13.638C5.72 13.908 5.561 14.147 5.354 14.354C5.147 14.561 4.908 14.72 4.638 14.832C4.367 14.944 4.086 15 3.793 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5L1 12.5C1 12.114 1.074 11.742 1.222 11.385C1.37 11.028 1.58 10.713 1.854 10.439L6.06 6.233C5.978 5.742 5.979 5.248 6.063 4.752C6.171 4.106 6.41 3.513 6.778 2.971C7.146 2.43 7.61 1.989 8.17 1.65C8.681 1.341 9.232 1.141 9.823 1.051C10.414 0.961 11 0.988 11.58 1.132C12.216 1.289 12.79 1.571 13.302 1.979C13.815 2.387 14.219 2.883 14.514 3.467C14.785 4 14.942 4.565 14.987 5.161C15.045 5.929 14.915 6.664 14.595 7.365C14.276 8.066 13.807 8.647 13.19 9.108C13.175 9.119 13.159 9.129 13.144 9.139C12.948 9.044 12.733 8.997 12.5 8.997L12.484 8.997C12.404 8.886 12.374 8.766 12.393 8.634C12.413 8.5 12.479 8.39 12.592 8.306C13.072 7.948 13.437 7.496 13.685 6.951C13.934 6.405 14.035 5.834 13.99 5.236C13.955 4.772 13.832 4.333 13.622 3.919C13.392 3.464 13.078 3.079 12.679 2.761C12.281 2.444 11.835 2.225 11.34 2.102C10.889 1.991 10.433 1.97 9.974 2.04C9.514 2.11 9.085 2.265 8.688 2.506C8.252 2.77 7.891 3.112 7.605 3.533C7.319 3.954 7.133 4.416 7.049 4.918C6.971 5.377 6.985 5.833 7.089 6.286C7.109 6.37 7.107 6.454 7.083 6.536C7.06 6.618 7.017 6.69 6.956 6.751L2.561 11.146ZM11.207 4.793C11.402 4.988 11.5 5.224 11.5 5.5C11.5 5.776 11.402 6.012 11.207 6.207C11.012 6.402 10.776 6.5 10.5 6.5C10.224 6.5 9.988 6.402 9.793 6.207C9.598 6.012 9.5 5.776 9.5 5.5C9.5 5.224 9.598 4.988 9.793 4.793C9.988 4.598 10.224 4.5 10.5 4.5C10.776 4.5 11.012 4.598 11.207 4.793ZM10.854 14.854C10.754 14.953 10.636 15.003 10.5 15.003C10.364 15.003 10.246 14.953 10.146 14.854L8.146 12.854C8.047 12.754 7.997 12.636 7.997 12.5C7.997 12.364 8.047 12.246 8.146 12.146L10.146 10.146C10.246 10.047 10.364 9.997 10.5 9.997C10.636 9.997 10.754 10.047 10.854 10.146C10.953 10.246 11.003 10.364 11.003 10.5C11.003 10.636 10.953 10.754 10.854 10.854L9.207 12.5L10.854 14.146C10.953 14.246 11.003 14.364 11.003 14.5C11.003 14.636 10.953 14.754 10.854 14.854ZM14.854 12.854L12.854 14.854C12.754 14.953 12.636 15.003 12.5 15.003C12.364 15.003 12.246 14.953 12.146 14.854C12.047 14.754 11.997 14.636 11.997 14.5C11.997 14.364 12.047 14.246 12.146 14.146L13.793 12.5L12.146 10.854C12.047 10.754 11.997 10.636 11.997 10.5C11.997 10.364 12.047 10.246 12.146 10.146C12.246 10.047 12.364 9.997 12.5 9.997C12.636 9.997 12.754 10.047 12.854 10.146L14.854 12.146C14.953 12.246 15.003 12.364 15.003 12.5C15.003 12.636 14.953 12.754 14.854 12.854Z'/%3E%3C/svg%3E") center / 16px 16px no-repeat;
}
```

### Data URL

```text
data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='currentColor'%3E%3Cpath d='M2.561 11.146C2.381 11.326 2.243 11.533 2.146 11.767C2.049 12.002 2 12.246 2 12.5L2 14L3.793 14C4.126 14 4.411 13.882 4.646 13.646C4.882 13.411 5 13.126 5 12.793L5 11.5C5 11.359 5.048 11.241 5.144 11.144C5.241 11.048 5.359 11 5.5 11L6.5 11C6.641 11 6.759 11.048 6.856 11.144C6.952 11.241 7 11.359 7 11.5C7 11.641 6.952 11.759 6.856 11.856C6.759 11.952 6.641 12 6.5 12L6 12L6 12.793C6 13.086 5.944 13.367 5.832 13.638C5.72 13.908 5.561 14.147 5.354 14.354C5.147 14.561 4.908 14.72 4.638 14.832C4.367 14.944 4.086 15 3.793 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5L1 12.5C1 12.114 1.074 11.742 1.222 11.385C1.37 11.028 1.58 10.713 1.854 10.439L6.06 6.233C5.978 5.742 5.979 5.248 6.063 4.752C6.171 4.106 6.41 3.513 6.778 2.971C7.146 2.43 7.61 1.989 8.17 1.65C8.681 1.341 9.232 1.141 9.823 1.051C10.414 0.961 11 0.988 11.58 1.132C12.216 1.289 12.79 1.571 13.302 1.979C13.815 2.387 14.219 2.883 14.514 3.467C14.785 4 14.942 4.565 14.987 5.161C15.045 5.929 14.915 6.664 14.595 7.365C14.276 8.066 13.807 8.647 13.19 9.108C13.175 9.119 13.159 9.129 13.144 9.139C12.948 9.044 12.733 8.997 12.5 8.997L12.484 8.997C12.404 8.886 12.374 8.766 12.393 8.634C12.413 8.5 12.479 8.39 12.592 8.306C13.072 7.948 13.437 7.496 13.685 6.951C13.934 6.405 14.035 5.834 13.99 5.236C13.955 4.772 13.832 4.333 13.622 3.919C13.392 3.464 13.078 3.079 12.679 2.761C12.281 2.444 11.835 2.225 11.34 2.102C10.889 1.991 10.433 1.97 9.974 2.04C9.514 2.11 9.085 2.265 8.688 2.506C8.252 2.77 7.891 3.112 7.605 3.533C7.319 3.954 7.133 4.416 7.049 4.918C6.971 5.377 6.985 5.833 7.089 6.286C7.109 6.37 7.107 6.454 7.083 6.536C7.06 6.618 7.017 6.69 6.956 6.751L2.561 11.146ZM11.207 4.793C11.402 4.988 11.5 5.224 11.5 5.5C11.5 5.776 11.402 6.012 11.207 6.207C11.012 6.402 10.776 6.5 10.5 6.5C10.224 6.5 9.988 6.402 9.793 6.207C9.598 6.012 9.5 5.776 9.5 5.5C9.5 5.224 9.598 4.988 9.793 4.793C9.988 4.598 10.224 4.5 10.5 4.5C10.776 4.5 11.012 4.598 11.207 4.793ZM10.854 14.854C10.754 14.953 10.636 15.003 10.5 15.003C10.364 15.003 10.246 14.953 10.146 14.854L8.146 12.854C8.047 12.754 7.997 12.636 7.997 12.5C7.997 12.364 8.047 12.246 8.146 12.146L10.146 10.146C10.246 10.047 10.364 9.997 10.5 9.997C10.636 9.997 10.754 10.047 10.854 10.146C10.953 10.246 11.003 10.364 11.003 10.5C11.003 10.636 10.953 10.754 10.854 10.854L9.207 12.5L10.854 14.146C10.953 14.246 11.003 14.364 11.003 14.5C11.003 14.636 10.953 14.754 10.854 14.854ZM14.854 12.854L12.854 14.854C12.754 14.953 12.636 15.003 12.5 15.003C12.364 15.003 12.246 14.953 12.146 14.854C12.047 14.754 11.997 14.636 11.997 14.5C11.997 14.364 12.047 14.246 12.146 14.146L13.793 12.5L12.146 10.854C12.047 10.754 11.997 10.636 11.997 10.5C11.997 10.364 12.047 10.246 12.146 10.146C12.246 10.047 12.364 9.997 12.5 9.997C12.636 9.997 12.754 10.047 12.854 10.146L14.854 12.146C14.953 12.246 15.003 12.364 15.003 12.5C15.003 12.636 14.953 12.754 14.854 12.854Z'/%3E%3C/svg%3E
```

### Sprite

```html
<!-- Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code
     Every icon of this style in one file: https://gentleface.com/sprite/line-round.svg
     Serve it from your own origin: <use> does not load from another origin. -->
<svg width="16" height="16" aria-hidden="true"><use href="/sprite/line-round.svg#key-code"/></svg>
```

### SwiftUI

```swift
// Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code
import SwiftUI

struct KeyCodeIcon: Shape {
    func path(in rect: CGRect) -> Path {
        var p = Path()
        p.move(to: CGPoint(x: 2.561, y: 11.146))
        p.addCurve(to: CGPoint(x: 2.146, y: 11.767), control1: CGPoint(x: 2.381, y: 11.326), control2: CGPoint(x: 2.243, y: 11.533))
        p.addCurve(to: CGPoint(x: 2, y: 12.5), control1: CGPoint(x: 2.049, y: 12.002), control2: CGPoint(x: 2, y: 12.246))
        p.addLine(to: CGPoint(x: 2, y: 14))
        p.addLine(to: CGPoint(x: 3.793, y: 14))
        p.addCurve(to: CGPoint(x: 4.646, y: 13.646), control1: CGPoint(x: 4.126, y: 14), control2: CGPoint(x: 4.411, y: 13.882))
        p.addCurve(to: CGPoint(x: 5, y: 12.793), control1: CGPoint(x: 4.882, y: 13.411), control2: CGPoint(x: 5, y: 13.126))
        p.addLine(to: CGPoint(x: 5, y: 11.5))
        p.addCurve(to: CGPoint(x: 5.144, y: 11.144), control1: CGPoint(x: 5, y: 11.359), control2: CGPoint(x: 5.048, y: 11.241))
        p.addCurve(to: CGPoint(x: 5.5, y: 11), control1: CGPoint(x: 5.241, y: 11.048), control2: CGPoint(x: 5.359, y: 11))
        p.addLine(to: CGPoint(x: 6.5, y: 11))
        p.addCurve(to: CGPoint(x: 6.856, y: 11.144), control1: CGPoint(x: 6.641, y: 11), control2: CGPoint(x: 6.759, y: 11.048))
        p.addCurve(to: CGPoint(x: 7, y: 11.5), control1: CGPoint(x: 6.952, y: 11.241), control2: CGPoint(x: 7, y: 11.359))
        p.addCurve(to: CGPoint(x: 6.856, y: 11.856), control1: CGPoint(x: 7, y: 11.641), control2: CGPoint(x: 6.952, y: 11.759))
        p.addCurve(to: CGPoint(x: 6.5, y: 12), control1: CGPoint(x: 6.759, y: 11.952), control2: CGPoint(x: 6.641, y: 12))
        p.addLine(to: CGPoint(x: 6, y: 12))
        p.addLine(to: CGPoint(x: 6, y: 12.793))
        p.addCurve(to: CGPoint(x: 5.832, y: 13.638), control1: CGPoint(x: 6, y: 13.086), control2: CGPoint(x: 5.944, y: 13.367))
        p.addCurve(to: CGPoint(x: 5.354, y: 14.354), control1: CGPoint(x: 5.72, y: 13.908), control2: CGPoint(x: 5.561, y: 14.147))
        p.addCurve(to: CGPoint(x: 4.638, y: 14.832), control1: CGPoint(x: 5.147, y: 14.561), control2: CGPoint(x: 4.908, y: 14.72))
        p.addCurve(to: CGPoint(x: 3.793, y: 15), control1: CGPoint(x: 4.367, y: 14.944), control2: CGPoint(x: 4.086, y: 15))
        p.addLine(to: CGPoint(x: 1.5, y: 15))
        p.addCurve(to: CGPoint(x: 1.144, y: 14.856), control1: CGPoint(x: 1.359, y: 15), control2: CGPoint(x: 1.241, y: 14.952))
        p.addCurve(to: CGPoint(x: 1, y: 14.5), control1: CGPoint(x: 1.048, y: 14.759), control2: CGPoint(x: 1, y: 14.641))
        p.addLine(to: CGPoint(x: 1, y: 12.5))
        p.addCurve(to: CGPoint(x: 1.222, y: 11.385), control1: CGPoint(x: 1, y: 12.114), control2: CGPoint(x: 1.074, y: 11.742))
        p.addCurve(to: CGPoint(x: 1.854, y: 10.439), control1: CGPoint(x: 1.37, y: 11.028), control2: CGPoint(x: 1.58, y: 10.713))
        p.addLine(to: CGPoint(x: 6.06, y: 6.233))
        p.addCurve(to: CGPoint(x: 6.063, y: 4.752), control1: CGPoint(x: 5.978, y: 5.742), control2: CGPoint(x: 5.979, y: 5.248))
        p.addCurve(to: CGPoint(x: 6.778, y: 2.971), control1: CGPoint(x: 6.171, y: 4.106), control2: CGPoint(x: 6.41, y: 3.513))
        p.addCurve(to: CGPoint(x: 8.17, y: 1.65), control1: CGPoint(x: 7.146, y: 2.43), control2: CGPoint(x: 7.61, y: 1.989))
        p.addCurve(to: CGPoint(x: 9.823, y: 1.051), control1: CGPoint(x: 8.681, y: 1.341), control2: CGPoint(x: 9.232, y: 1.141))
        p.addCurve(to: CGPoint(x: 11.58, y: 1.132), control1: CGPoint(x: 10.414, y: 0.961), control2: CGPoint(x: 11, y: 0.988))
        p.addCurve(to: CGPoint(x: 13.302, y: 1.979), control1: CGPoint(x: 12.216, y: 1.289), control2: CGPoint(x: 12.79, y: 1.571))
        p.addCurve(to: CGPoint(x: 14.514, y: 3.467), control1: CGPoint(x: 13.815, y: 2.387), control2: CGPoint(x: 14.219, y: 2.883))
        p.addCurve(to: CGPoint(x: 14.987, y: 5.161), control1: CGPoint(x: 14.785, y: 4), control2: CGPoint(x: 14.942, y: 4.565))
        p.addCurve(to: CGPoint(x: 14.595, y: 7.365), control1: CGPoint(x: 15.045, y: 5.929), control2: CGPoint(x: 14.915, y: 6.664))
        p.addCurve(to: CGPoint(x: 13.19, y: 9.108), control1: CGPoint(x: 14.276, y: 8.066), control2: CGPoint(x: 13.807, y: 8.647))
        p.addCurve(to: CGPoint(x: 13.144, y: 9.139), control1: CGPoint(x: 13.175, y: 9.119), control2: CGPoint(x: 13.159, y: 9.129))
        p.addCurve(to: CGPoint(x: 12.5, y: 8.997), control1: CGPoint(x: 12.948, y: 9.044), control2: CGPoint(x: 12.733, y: 8.997))
        p.addLine(to: CGPoint(x: 12.484, y: 8.997))
        p.addCurve(to: CGPoint(x: 12.393, y: 8.634), control1: CGPoint(x: 12.404, y: 8.886), control2: CGPoint(x: 12.374, y: 8.766))
        p.addCurve(to: CGPoint(x: 12.592, y: 8.306), control1: CGPoint(x: 12.413, y: 8.5), control2: CGPoint(x: 12.479, y: 8.39))
        p.addCurve(to: CGPoint(x: 13.685, y: 6.951), control1: CGPoint(x: 13.072, y: 7.948), control2: CGPoint(x: 13.437, y: 7.496))
        p.addCurve(to: CGPoint(x: 13.99, y: 5.236), control1: CGPoint(x: 13.934, y: 6.405), control2: CGPoint(x: 14.035, y: 5.834))
        p.addCurve(to: CGPoint(x: 13.622, y: 3.919), control1: CGPoint(x: 13.955, y: 4.772), control2: CGPoint(x: 13.832, y: 4.333))
        p.addCurve(to: CGPoint(x: 12.679, y: 2.761), control1: CGPoint(x: 13.392, y: 3.464), control2: CGPoint(x: 13.078, y: 3.079))
        p.addCurve(to: CGPoint(x: 11.34, y: 2.102), control1: CGPoint(x: 12.281, y: 2.444), control2: CGPoint(x: 11.835, y: 2.225))
        p.addCurve(to: CGPoint(x: 9.974, y: 2.04), control1: CGPoint(x: 10.889, y: 1.991), control2: CGPoint(x: 10.433, y: 1.97))
        p.addCurve(to: CGPoint(x: 8.688, y: 2.506), control1: CGPoint(x: 9.514, y: 2.11), control2: CGPoint(x: 9.085, y: 2.265))
        p.addCurve(to: CGPoint(x: 7.605, y: 3.533), control1: CGPoint(x: 8.252, y: 2.77), control2: CGPoint(x: 7.891, y: 3.112))
        p.addCurve(to: CGPoint(x: 7.049, y: 4.918), control1: CGPoint(x: 7.319, y: 3.954), control2: CGPoint(x: 7.133, y: 4.416))
        p.addCurve(to: CGPoint(x: 7.089, y: 6.286), control1: CGPoint(x: 6.971, y: 5.377), control2: CGPoint(x: 6.985, y: 5.833))
        p.addCurve(to: CGPoint(x: 7.083, y: 6.536), control1: CGPoint(x: 7.109, y: 6.37), control2: CGPoint(x: 7.107, y: 6.454))
        p.addCurve(to: CGPoint(x: 6.956, y: 6.751), control1: CGPoint(x: 7.06, y: 6.618), control2: CGPoint(x: 7.017, y: 6.69))
        p.addLine(to: CGPoint(x: 2.561, y: 11.146))
        p.closeSubpath()
        p.move(to: CGPoint(x: 11.207, y: 4.793))
        p.addCurve(to: CGPoint(x: 11.5, y: 5.5), control1: CGPoint(x: 11.402, y: 4.988), control2: CGPoint(x: 11.5, y: 5.224))
        p.addCurve(to: CGPoint(x: 11.207, y: 6.207), control1: CGPoint(x: 11.5, y: 5.776), control2: CGPoint(x: 11.402, y: 6.012))
        p.addCurve(to: CGPoint(x: 10.5, y: 6.5), control1: CGPoint(x: 11.012, y: 6.402), control2: CGPoint(x: 10.776, y: 6.5))
        p.addCurve(to: CGPoint(x: 9.793, y: 6.207), control1: CGPoint(x: 10.224, y: 6.5), control2: CGPoint(x: 9.988, y: 6.402))
        p.addCurve(to: CGPoint(x: 9.5, y: 5.5), control1: CGPoint(x: 9.598, y: 6.012), control2: CGPoint(x: 9.5, y: 5.776))
        p.addCurve(to: CGPoint(x: 9.793, y: 4.793), control1: CGPoint(x: 9.5, y: 5.224), control2: CGPoint(x: 9.598, y: 4.988))
        p.addCurve(to: CGPoint(x: 10.5, y: 4.5), control1: CGPoint(x: 9.988, y: 4.598), control2: CGPoint(x: 10.224, y: 4.5))
        p.addCurve(to: CGPoint(x: 11.207, y: 4.793), control1: CGPoint(x: 10.776, y: 4.5), control2: CGPoint(x: 11.012, y: 4.598))
        p.closeSubpath()
        p.move(to: CGPoint(x: 10.854, y: 14.854))
        p.addCurve(to: CGPoint(x: 10.5, y: 15.003), control1: CGPoint(x: 10.754, y: 14.953), control2: CGPoint(x: 10.636, y: 15.003))
        p.addCurve(to: CGPoint(x: 10.146, y: 14.854), control1: CGPoint(x: 10.364, y: 15.003), control2: CGPoint(x: 10.246, y: 14.953))
        p.addLine(to: CGPoint(x: 8.146, y: 12.854))
        p.addCurve(to: CGPoint(x: 7.997, y: 12.5), control1: CGPoint(x: 8.047, y: 12.754), control2: CGPoint(x: 7.997, y: 12.636))
        p.addCurve(to: CGPoint(x: 8.146, y: 12.146), control1: CGPoint(x: 7.997, y: 12.364), control2: CGPoint(x: 8.047, y: 12.246))
        p.addLine(to: CGPoint(x: 10.146, y: 10.146))
        p.addCurve(to: CGPoint(x: 10.5, y: 9.997), control1: CGPoint(x: 10.246, y: 10.047), control2: CGPoint(x: 10.364, y: 9.997))
        p.addCurve(to: CGPoint(x: 10.854, y: 10.146), control1: CGPoint(x: 10.636, y: 9.997), control2: CGPoint(x: 10.754, y: 10.047))
        p.addCurve(to: CGPoint(x: 11.003, y: 10.5), control1: CGPoint(x: 10.953, y: 10.246), control2: CGPoint(x: 11.003, y: 10.364))
        p.addCurve(to: CGPoint(x: 10.854, y: 10.854), control1: CGPoint(x: 11.003, y: 10.636), control2: CGPoint(x: 10.953, y: 10.754))
        p.addLine(to: CGPoint(x: 9.207, y: 12.5))
        p.addLine(to: CGPoint(x: 10.854, y: 14.146))
        p.addCurve(to: CGPoint(x: 11.003, y: 14.5), control1: CGPoint(x: 10.953, y: 14.246), control2: CGPoint(x: 11.003, y: 14.364))
        p.addCurve(to: CGPoint(x: 10.854, y: 14.854), control1: CGPoint(x: 11.003, y: 14.636), control2: CGPoint(x: 10.953, y: 14.754))
        p.closeSubpath()
        p.move(to: CGPoint(x: 14.854, y: 12.854))
        p.addLine(to: CGPoint(x: 12.854, y: 14.854))
        p.addCurve(to: CGPoint(x: 12.5, y: 15.003), control1: CGPoint(x: 12.754, y: 14.953), control2: CGPoint(x: 12.636, y: 15.003))
        p.addCurve(to: CGPoint(x: 12.146, y: 14.854), control1: CGPoint(x: 12.364, y: 15.003), control2: CGPoint(x: 12.246, y: 14.953))
        p.addCurve(to: CGPoint(x: 11.997, y: 14.5), control1: CGPoint(x: 12.047, y: 14.754), control2: CGPoint(x: 11.997, y: 14.636))
        p.addCurve(to: CGPoint(x: 12.146, y: 14.146), control1: CGPoint(x: 11.997, y: 14.364), control2: CGPoint(x: 12.047, y: 14.246))
        p.addLine(to: CGPoint(x: 13.793, y: 12.5))
        p.addLine(to: CGPoint(x: 12.146, y: 10.854))
        p.addCurve(to: CGPoint(x: 11.997, y: 10.5), control1: CGPoint(x: 12.047, y: 10.754), control2: CGPoint(x: 11.997, y: 10.636))
        p.addCurve(to: CGPoint(x: 12.146, y: 10.146), control1: CGPoint(x: 11.997, y: 10.364), control2: CGPoint(x: 12.047, y: 10.246))
        p.addCurve(to: CGPoint(x: 12.5, y: 9.997), control1: CGPoint(x: 12.246, y: 10.047), control2: CGPoint(x: 12.364, y: 9.997))
        p.addCurve(to: CGPoint(x: 12.854, y: 10.146), control1: CGPoint(x: 12.636, y: 9.997), control2: CGPoint(x: 12.754, y: 10.047))
        p.addLine(to: CGPoint(x: 14.854, y: 12.146))
        p.addCurve(to: CGPoint(x: 15.003, y: 12.5), control1: CGPoint(x: 14.953, y: 12.246), control2: CGPoint(x: 15.003, y: 12.364))
        p.addCurve(to: CGPoint(x: 14.854, y: 12.854), control1: CGPoint(x: 15.003, y: 12.636), control2: CGPoint(x: 14.953, y: 12.754))
        p.closeSubpath()
        return p.applying(CGAffineTransform(scaleX: rect.width / 16, y: rect.height / 16))
    }
}

// KeyCodeIcon().frame(width: 16, height: 16) fills with the foreground style. Keep it on whole points to stay crisp.
```

### Compose

```kotlin
// Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.addPathNodes
import androidx.compose.ui.unit.dp

val KeyCodeIcon: ImageVector by lazy {
    ImageVector.Builder(
        name = "key-code", defaultWidth = 16.dp, defaultHeight = 16.dp,
        viewportWidth = 16f, viewportHeight = 16f,
    ).addPath(
        pathData = addPathNodes("M2.561 11.146C2.381 11.326 2.243 11.533 2.146 11.767C2.049 12.002 2 12.246 2 12.5L2 14L3.793 14C4.126 14 4.411 13.882 4.646 13.646C4.882 13.411 5 13.126 5 12.793L5 11.5C5 11.359 5.048 11.241 5.144 11.144C5.241 11.048 5.359 11 5.5 11L6.5 11C6.641 11 6.759 11.048 6.856 11.144C6.952 11.241 7 11.359 7 11.5C7 11.641 6.952 11.759 6.856 11.856C6.759 11.952 6.641 12 6.5 12L6 12L6 12.793C6 13.086 5.944 13.367 5.832 13.638C5.72 13.908 5.561 14.147 5.354 14.354C5.147 14.561 4.908 14.72 4.638 14.832C4.367 14.944 4.086 15 3.793 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5L1 12.5C1 12.114 1.074 11.742 1.222 11.385C1.37 11.028 1.58 10.713 1.854 10.439L6.06 6.233C5.978 5.742 5.979 5.248 6.063 4.752C6.171 4.106 6.41 3.513 6.778 2.971C7.146 2.43 7.61 1.989 8.17 1.65C8.681 1.341 9.232 1.141 9.823 1.051C10.414 0.961 11 0.988 11.58 1.132C12.216 1.289 12.79 1.571 13.302 1.979C13.815 2.387 14.219 2.883 14.514 3.467C14.785 4 14.942 4.565 14.987 5.161C15.045 5.929 14.915 6.664 14.595 7.365C14.276 8.066 13.807 8.647 13.19 9.108C13.175 9.119 13.159 9.129 13.144 9.139C12.948 9.044 12.733 8.997 12.5 8.997L12.484 8.997C12.404 8.886 12.374 8.766 12.393 8.634C12.413 8.5 12.479 8.39 12.592 8.306C13.072 7.948 13.437 7.496 13.685 6.951C13.934 6.405 14.035 5.834 13.99 5.236C13.955 4.772 13.832 4.333 13.622 3.919C13.392 3.464 13.078 3.079 12.679 2.761C12.281 2.444 11.835 2.225 11.34 2.102C10.889 1.991 10.433 1.97 9.974 2.04C9.514 2.11 9.085 2.265 8.688 2.506C8.252 2.77 7.891 3.112 7.605 3.533C7.319 3.954 7.133 4.416 7.049 4.918C6.971 5.377 6.985 5.833 7.089 6.286C7.109 6.37 7.107 6.454 7.083 6.536C7.06 6.618 7.017 6.69 6.956 6.751L2.561 11.146ZM11.207 4.793C11.402 4.988 11.5 5.224 11.5 5.5C11.5 5.776 11.402 6.012 11.207 6.207C11.012 6.402 10.776 6.5 10.5 6.5C10.224 6.5 9.988 6.402 9.793 6.207C9.598 6.012 9.5 5.776 9.5 5.5C9.5 5.224 9.598 4.988 9.793 4.793C9.988 4.598 10.224 4.5 10.5 4.5C10.776 4.5 11.012 4.598 11.207 4.793ZM10.854 14.854C10.754 14.953 10.636 15.003 10.5 15.003C10.364 15.003 10.246 14.953 10.146 14.854L8.146 12.854C8.047 12.754 7.997 12.636 7.997 12.5C7.997 12.364 8.047 12.246 8.146 12.146L10.146 10.146C10.246 10.047 10.364 9.997 10.5 9.997C10.636 9.997 10.754 10.047 10.854 10.146C10.953 10.246 11.003 10.364 11.003 10.5C11.003 10.636 10.953 10.754 10.854 10.854L9.207 12.5L10.854 14.146C10.953 14.246 11.003 14.364 11.003 14.5C11.003 14.636 10.953 14.754 10.854 14.854ZM14.854 12.854L12.854 14.854C12.754 14.953 12.636 15.003 12.5 15.003C12.364 15.003 12.246 14.953 12.146 14.854C12.047 14.754 11.997 14.636 11.997 14.5C11.997 14.364 12.047 14.246 12.146 14.146L13.793 12.5L12.146 10.854C12.047 10.754 11.997 10.636 11.997 10.5C11.997 10.364 12.047 10.246 12.146 10.146C12.246 10.047 12.364 9.997 12.5 9.997C12.636 9.997 12.754 10.047 12.854 10.146L14.854 12.146C14.953 12.246 15.003 12.364 15.003 12.5C15.003 12.636 14.953 12.754 14.854 12.854Z"),
        fill = SolidColor(Color.Black),
    ).build()
}

// Icon(KeyCodeIcon, contentDescription = null) tints it with LocalContentColor.
```

### Android XML

```xml
<!-- res/drawable/ic_key_code.xml · Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="16dp"
    android:height="16dp"
    android:viewportWidth="16"
    android:viewportHeight="16"
    android:tint="?attr/colorControlNormal">
  <path
      android:fillColor="@android:color/white"
      android:pathData="M2.561 11.146C2.381 11.326 2.243 11.533 2.146 11.767C2.049 12.002 2 12.246 2 12.5L2 14L3.793 14C4.126 14 4.411 13.882 4.646 13.646C4.882 13.411 5 13.126 5 12.793L5 11.5C5 11.359 5.048 11.241 5.144 11.144C5.241 11.048 5.359 11 5.5 11L6.5 11C6.641 11 6.759 11.048 6.856 11.144C6.952 11.241 7 11.359 7 11.5C7 11.641 6.952 11.759 6.856 11.856C6.759 11.952 6.641 12 6.5 12L6 12L6 12.793C6 13.086 5.944 13.367 5.832 13.638C5.72 13.908 5.561 14.147 5.354 14.354C5.147 14.561 4.908 14.72 4.638 14.832C4.367 14.944 4.086 15 3.793 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5L1 12.5C1 12.114 1.074 11.742 1.222 11.385C1.37 11.028 1.58 10.713 1.854 10.439L6.06 6.233C5.978 5.742 5.979 5.248 6.063 4.752C6.171 4.106 6.41 3.513 6.778 2.971C7.146 2.43 7.61 1.989 8.17 1.65C8.681 1.341 9.232 1.141 9.823 1.051C10.414 0.961 11 0.988 11.58 1.132C12.216 1.289 12.79 1.571 13.302 1.979C13.815 2.387 14.219 2.883 14.514 3.467C14.785 4 14.942 4.565 14.987 5.161C15.045 5.929 14.915 6.664 14.595 7.365C14.276 8.066 13.807 8.647 13.19 9.108C13.175 9.119 13.159 9.129 13.144 9.139C12.948 9.044 12.733 8.997 12.5 8.997L12.484 8.997C12.404 8.886 12.374 8.766 12.393 8.634C12.413 8.5 12.479 8.39 12.592 8.306C13.072 7.948 13.437 7.496 13.685 6.951C13.934 6.405 14.035 5.834 13.99 5.236C13.955 4.772 13.832 4.333 13.622 3.919C13.392 3.464 13.078 3.079 12.679 2.761C12.281 2.444 11.835 2.225 11.34 2.102C10.889 1.991 10.433 1.97 9.974 2.04C9.514 2.11 9.085 2.265 8.688 2.506C8.252 2.77 7.891 3.112 7.605 3.533C7.319 3.954 7.133 4.416 7.049 4.918C6.971 5.377 6.985 5.833 7.089 6.286C7.109 6.37 7.107 6.454 7.083 6.536C7.06 6.618 7.017 6.69 6.956 6.751L2.561 11.146ZM11.207 4.793C11.402 4.988 11.5 5.224 11.5 5.5C11.5 5.776 11.402 6.012 11.207 6.207C11.012 6.402 10.776 6.5 10.5 6.5C10.224 6.5 9.988 6.402 9.793 6.207C9.598 6.012 9.5 5.776 9.5 5.5C9.5 5.224 9.598 4.988 9.793 4.793C9.988 4.598 10.224 4.5 10.5 4.5C10.776 4.5 11.012 4.598 11.207 4.793ZM10.854 14.854C10.754 14.953 10.636 15.003 10.5 15.003C10.364 15.003 10.246 14.953 10.146 14.854L8.146 12.854C8.047 12.754 7.997 12.636 7.997 12.5C7.997 12.364 8.047 12.246 8.146 12.146L10.146 10.146C10.246 10.047 10.364 9.997 10.5 9.997C10.636 9.997 10.754 10.047 10.854 10.146C10.953 10.246 11.003 10.364 11.003 10.5C11.003 10.636 10.953 10.754 10.854 10.854L9.207 12.5L10.854 14.146C10.953 14.246 11.003 14.364 11.003 14.5C11.003 14.636 10.953 14.754 10.854 14.854ZM14.854 12.854L12.854 14.854C12.754 14.953 12.636 15.003 12.5 15.003C12.364 15.003 12.246 14.953 12.146 14.854C12.047 14.754 11.997 14.636 11.997 14.5C11.997 14.364 12.047 14.246 12.146 14.146L13.793 12.5L12.146 10.854C12.047 10.754 11.997 10.636 11.997 10.5C11.997 10.364 12.047 10.246 12.146 10.146C12.246 10.047 12.364 9.997 12.5 9.997C12.636 9.997 12.754 10.047 12.854 10.146L14.854 12.146C14.953 12.246 15.003 12.364 15.003 12.5C15.003 12.636 14.953 12.754 14.854 12.854Z"/>
</vector>
```

### Flutter

```dart
// Gentleface "key-code" (line-round), MIT. https://gentleface.com/icons/key-code
import 'package:flutter/widgets.dart';

class KeyCodeIcon extends StatelessWidget {
  const KeyCodeIcon({super.key, this.size = 16, this.color});
  final double size;
  final Color? color;

  @override
  Widget build(BuildContext context) => CustomPaint(
        size: Size.square(size),
        painter: _KeyCodeIconPainter(color ?? IconTheme.of(context).color ?? const Color(0xFF000000)),
      );
}

class _KeyCodeIconPainter extends CustomPainter {
  _KeyCodeIconPainter(this.color);
  final Color color;

  @override
  void paint(Canvas canvas, Size size) {
    canvas.scale(size.width / 16, size.height / 16);
    final p = Path()
      ..moveTo(2.561, 11.146)
      ..cubicTo(2.381, 11.326, 2.243, 11.533, 2.146, 11.767)
      ..cubicTo(2.049, 12.002, 2, 12.246, 2, 12.5)
      ..lineTo(2, 14)
      ..lineTo(3.793, 14)
      ..cubicTo(4.126, 14, 4.411, 13.882, 4.646, 13.646)
      ..cubicTo(4.882, 13.411, 5, 13.126, 5, 12.793)
      ..lineTo(5, 11.5)
      ..cubicTo(5, 11.359, 5.048, 11.241, 5.144, 11.144)
      ..cubicTo(5.241, 11.048, 5.359, 11, 5.5, 11)
      ..lineTo(6.5, 11)
      ..cubicTo(6.641, 11, 6.759, 11.048, 6.856, 11.144)
      ..cubicTo(6.952, 11.241, 7, 11.359, 7, 11.5)
      ..cubicTo(7, 11.641, 6.952, 11.759, 6.856, 11.856)
      ..cubicTo(6.759, 11.952, 6.641, 12, 6.5, 12)
      ..lineTo(6, 12)
      ..lineTo(6, 12.793)
      ..cubicTo(6, 13.086, 5.944, 13.367, 5.832, 13.638)
      ..cubicTo(5.72, 13.908, 5.561, 14.147, 5.354, 14.354)
      ..cubicTo(5.147, 14.561, 4.908, 14.72, 4.638, 14.832)
      ..cubicTo(4.367, 14.944, 4.086, 15, 3.793, 15)
      ..lineTo(1.5, 15)
      ..cubicTo(1.359, 15, 1.241, 14.952, 1.144, 14.856)
      ..cubicTo(1.048, 14.759, 1, 14.641, 1, 14.5)
      ..lineTo(1, 12.5)
      ..cubicTo(1, 12.114, 1.074, 11.742, 1.222, 11.385)
      ..cubicTo(1.37, 11.028, 1.58, 10.713, 1.854, 10.439)
      ..lineTo(6.06, 6.233)
      ..cubicTo(5.978, 5.742, 5.979, 5.248, 6.063, 4.752)
      ..cubicTo(6.171, 4.106, 6.41, 3.513, 6.778, 2.971)
      ..cubicTo(7.146, 2.43, 7.61, 1.989, 8.17, 1.65)
      ..cubicTo(8.681, 1.341, 9.232, 1.141, 9.823, 1.051)
      ..cubicTo(10.414, 0.961, 11, 0.988, 11.58, 1.132)
      ..cubicTo(12.216, 1.289, 12.79, 1.571, 13.302, 1.979)
      ..cubicTo(13.815, 2.387, 14.219, 2.883, 14.514, 3.467)
      ..cubicTo(14.785, 4, 14.942, 4.565, 14.987, 5.161)
      ..cubicTo(15.045, 5.929, 14.915, 6.664, 14.595, 7.365)
      ..cubicTo(14.276, 8.066, 13.807, 8.647, 13.19, 9.108)
      ..cubicTo(13.175, 9.119, 13.159, 9.129, 13.144, 9.139)
      ..cubicTo(12.948, 9.044, 12.733, 8.997, 12.5, 8.997)
      ..lineTo(12.484, 8.997)
      ..cubicTo(12.404, 8.886, 12.374, 8.766, 12.393, 8.634)
      ..cubicTo(12.413, 8.5, 12.479, 8.39, 12.592, 8.306)
      ..cubicTo(13.072, 7.948, 13.437, 7.496, 13.685, 6.951)
      ..cubicTo(13.934, 6.405, 14.035, 5.834, 13.99, 5.236)
      ..cubicTo(13.955, 4.772, 13.832, 4.333, 13.622, 3.919)
      ..cubicTo(13.392, 3.464, 13.078, 3.079, 12.679, 2.761)
      ..cubicTo(12.281, 2.444, 11.835, 2.225, 11.34, 2.102)
      ..cubicTo(10.889, 1.991, 10.433, 1.97, 9.974, 2.04)
      ..cubicTo(9.514, 2.11, 9.085, 2.265, 8.688, 2.506)
      ..cubicTo(8.252, 2.77, 7.891, 3.112, 7.605, 3.533)
      ..cubicTo(7.319, 3.954, 7.133, 4.416, 7.049, 4.918)
      ..cubicTo(6.971, 5.377, 6.985, 5.833, 7.089, 6.286)
      ..cubicTo(7.109, 6.37, 7.107, 6.454, 7.083, 6.536)
      ..cubicTo(7.06, 6.618, 7.017, 6.69, 6.956, 6.751)
      ..lineTo(2.561, 11.146)
      ..close()
      ..moveTo(11.207, 4.793)
      ..cubicTo(11.402, 4.988, 11.5, 5.224, 11.5, 5.5)
      ..cubicTo(11.5, 5.776, 11.402, 6.012, 11.207, 6.207)
      ..cubicTo(11.012, 6.402, 10.776, 6.5, 10.5, 6.5)
      ..cubicTo(10.224, 6.5, 9.988, 6.402, 9.793, 6.207)
      ..cubicTo(9.598, 6.012, 9.5, 5.776, 9.5, 5.5)
      ..cubicTo(9.5, 5.224, 9.598, 4.988, 9.793, 4.793)
      ..cubicTo(9.988, 4.598, 10.224, 4.5, 10.5, 4.5)
      ..cubicTo(10.776, 4.5, 11.012, 4.598, 11.207, 4.793)
      ..close()
      ..moveTo(10.854, 14.854)
      ..cubicTo(10.754, 14.953, 10.636, 15.003, 10.5, 15.003)
      ..cubicTo(10.364, 15.003, 10.246, 14.953, 10.146, 14.854)
      ..lineTo(8.146, 12.854)
      ..cubicTo(8.047, 12.754, 7.997, 12.636, 7.997, 12.5)
      ..cubicTo(7.997, 12.364, 8.047, 12.246, 8.146, 12.146)
      ..lineTo(10.146, 10.146)
      ..cubicTo(10.246, 10.047, 10.364, 9.997, 10.5, 9.997)
      ..cubicTo(10.636, 9.997, 10.754, 10.047, 10.854, 10.146)
      ..cubicTo(10.953, 10.246, 11.003, 10.364, 11.003, 10.5)
      ..cubicTo(11.003, 10.636, 10.953, 10.754, 10.854, 10.854)
      ..lineTo(9.207, 12.5)
      ..lineTo(10.854, 14.146)
      ..cubicTo(10.953, 14.246, 11.003, 14.364, 11.003, 14.5)
      ..cubicTo(11.003, 14.636, 10.953, 14.754, 10.854, 14.854)
      ..close()
      ..moveTo(14.854, 12.854)
      ..lineTo(12.854, 14.854)
      ..cubicTo(12.754, 14.953, 12.636, 15.003, 12.5, 15.003)
      ..cubicTo(12.364, 15.003, 12.246, 14.953, 12.146, 14.854)
      ..cubicTo(12.047, 14.754, 11.997, 14.636, 11.997, 14.5)
      ..cubicTo(11.997, 14.364, 12.047, 14.246, 12.146, 14.146)
      ..lineTo(13.793, 12.5)
      ..lineTo(12.146, 10.854)
      ..cubicTo(12.047, 10.754, 11.997, 10.636, 11.997, 10.5)
      ..cubicTo(11.997, 10.364, 12.047, 10.246, 12.146, 10.146)
      ..cubicTo(12.246, 10.047, 12.364, 9.997, 12.5, 9.997)
      ..cubicTo(12.636, 9.997, 12.754, 10.047, 12.854, 10.146)
      ..lineTo(14.854, 12.146)
      ..cubicTo(14.953, 12.246, 15.003, 12.364, 15.003, 12.5)
      ..cubicTo(15.003, 12.636, 14.953, 12.754, 14.854, 12.854)
      ..close();
    canvas.drawPath(p, Paint()..color = color);
  }

  @override
  bool shouldRepaint(_KeyCodeIconPainter old) => old.color != color;
}
```
