# exercise-ball icon

Exercise ball. Gentleface icon, drawn on the 16 px pixel grid. Free, MIT licensed. Page: https://gentleface.com/icons/exercise-ball

- Category: Games & sports
- Use it for: exercise ball, stability ball, swiss ball
- Tags: exercise-ball, stability-ball, swiss-ball, yoga-ball, fitness, gym, workout, physio, pilates, balance
- Component name: ExerciseBallIcon
- Added: 2026-11-12

## Files

Each icon is drawn on the 16 px grid, and most also on the 20 and 24 px grids (at 24 in three weights: light 1 px, regular 1.5 px, bold 2 px). Show the drawing made for your size, or an exact multiple of it, on whole pixels: 16 for 16 and 32 px, 20 for 20 and 40, 24 for 24 and 48. A size in between or a fractional position blurs it. The code on each icon page is the 16 px drawing, an SVG with fill="currentColor"; the icon page's downloads follow its Grid switch, and npm has the 20 and 24 px drawings too.

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

The SVG of every style: https://gentleface.com/icons/exercise-ball.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="M3.757 2.757C4.343 2.172 5.021 1.726 5.791 1.421C6.501 1.14 7.237 1 8 1C8.763 1 9.499 1.14 10.209 1.421C10.979 1.726 11.657 2.172 12.243 2.757C12.828 3.343 13.274 4.021 13.579 4.791C13.86 5.501 14 6.237 14 7C14 7.763 13.86 8.499 13.579 9.209C13.274 9.979 12.828 10.657 12.243 11.243C11.657 11.828 10.979 12.274 10.209 12.579C9.499 12.86 8.763 13 8 13C7.237 13 6.501 12.86 5.791 12.579C5.021 12.274 4.343 11.828 3.757 11.243C3.172 10.657 2.726 9.979 2.421 9.209C2.14 8.499 2 7.763 2 7C2 6.237 2.14 5.501 2.421 4.791C2.726 4.021 3.172 3.343 3.757 2.757ZM4.464 10.536L4.479 10.55C4.754 9.883 5.083 9.242 5.466 8.626C5.991 7.783 6.605 7.01 7.308 6.308C8.01 5.605 8.783 4.991 9.626 4.466C10.242 4.083 10.883 3.754 11.55 3.479L11.536 3.464C11.047 2.976 10.482 2.605 9.84 2.351C9.249 2.117 8.636 2 8 2C7.364 2 6.751 2.117 6.16 2.351C5.518 2.605 4.953 2.976 4.464 3.464C3.976 3.953 3.605 4.518 3.351 5.16C3.117 5.751 3 6.364 3 7C3 7.636 3.117 8.249 3.351 8.84C3.605 9.482 3.976 10.047 4.464 10.536ZM8.015 7.015C7.366 7.663 6.799 8.377 6.315 9.155C5.908 9.807 5.568 10.491 5.294 11.206C5.565 11.38 5.854 11.528 6.16 11.649C6.648 11.843 7.153 11.956 7.672 11.989C8.151 10.779 8.855 9.71 9.782 8.782C10.71 7.855 11.779 7.151 12.989 6.672C12.956 6.153 12.843 5.648 12.649 5.16C12.528 4.854 12.38 4.565 12.206 4.294C11.491 4.568 10.807 4.908 10.155 5.315C9.377 5.799 8.663 6.366 8.015 7.015ZM8.78 11.939C9.141 11.883 9.495 11.786 9.84 11.649C10.482 11.395 11.047 11.024 11.536 10.536C12.024 10.047 12.395 9.482 12.649 8.84C12.786 8.495 12.883 8.141 12.939 7.78C12.027 8.199 11.211 8.768 10.49 9.49C9.768 10.211 9.199 11.027 8.78 11.939ZM1 14.5C1 14.359 1.048 14.241 1.144 14.144C1.241 14.048 1.359 14 1.5 14L14.5 14C14.641 14 14.759 14.048 14.856 14.144C14.952 14.241 15 14.359 15 14.5C15 14.641 14.952 14.759 14.856 14.856C14.759 14.952 14.641 15 14.5 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5Z"/></svg>
```

### React

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

export function ExerciseBallIcon(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="M3.757 2.757C4.343 2.172 5.021 1.726 5.791 1.421C6.501 1.14 7.237 1 8 1C8.763 1 9.499 1.14 10.209 1.421C10.979 1.726 11.657 2.172 12.243 2.757C12.828 3.343 13.274 4.021 13.579 4.791C13.86 5.501 14 6.237 14 7C14 7.763 13.86 8.499 13.579 9.209C13.274 9.979 12.828 10.657 12.243 11.243C11.657 11.828 10.979 12.274 10.209 12.579C9.499 12.86 8.763 13 8 13C7.237 13 6.501 12.86 5.791 12.579C5.021 12.274 4.343 11.828 3.757 11.243C3.172 10.657 2.726 9.979 2.421 9.209C2.14 8.499 2 7.763 2 7C2 6.237 2.14 5.501 2.421 4.791C2.726 4.021 3.172 3.343 3.757 2.757ZM4.464 10.536L4.479 10.55C4.754 9.883 5.083 9.242 5.466 8.626C5.991 7.783 6.605 7.01 7.308 6.308C8.01 5.605 8.783 4.991 9.626 4.466C10.242 4.083 10.883 3.754 11.55 3.479L11.536 3.464C11.047 2.976 10.482 2.605 9.84 2.351C9.249 2.117 8.636 2 8 2C7.364 2 6.751 2.117 6.16 2.351C5.518 2.605 4.953 2.976 4.464 3.464C3.976 3.953 3.605 4.518 3.351 5.16C3.117 5.751 3 6.364 3 7C3 7.636 3.117 8.249 3.351 8.84C3.605 9.482 3.976 10.047 4.464 10.536ZM8.015 7.015C7.366 7.663 6.799 8.377 6.315 9.155C5.908 9.807 5.568 10.491 5.294 11.206C5.565 11.38 5.854 11.528 6.16 11.649C6.648 11.843 7.153 11.956 7.672 11.989C8.151 10.779 8.855 9.71 9.782 8.782C10.71 7.855 11.779 7.151 12.989 6.672C12.956 6.153 12.843 5.648 12.649 5.16C12.528 4.854 12.38 4.565 12.206 4.294C11.491 4.568 10.807 4.908 10.155 5.315C9.377 5.799 8.663 6.366 8.015 7.015ZM8.78 11.939C9.141 11.883 9.495 11.786 9.84 11.649C10.482 11.395 11.047 11.024 11.536 10.536C12.024 10.047 12.395 9.482 12.649 8.84C12.786 8.495 12.883 8.141 12.939 7.78C12.027 8.199 11.211 8.768 10.49 9.49C9.768 10.211 9.199 11.027 8.78 11.939ZM1 14.5C1 14.359 1.048 14.241 1.144 14.144C1.241 14.048 1.359 14 1.5 14L14.5 14C14.641 14 14.759 14.048 14.856 14.144C14.952 14.241 15 14.359 15 14.5C15 14.641 14.952 14.759 14.856 14.856C14.759 14.952 14.641 15 14.5 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5Z" />
    </svg>
  );
}
```

### Vue

```vue
<!-- Gentleface "exercise-ball" (line-round), MIT. https://gentleface.com/icons/exercise-ball -->
<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="M3.757 2.757C4.343 2.172 5.021 1.726 5.791 1.421C6.501 1.14 7.237 1 8 1C8.763 1 9.499 1.14 10.209 1.421C10.979 1.726 11.657 2.172 12.243 2.757C12.828 3.343 13.274 4.021 13.579 4.791C13.86 5.501 14 6.237 14 7C14 7.763 13.86 8.499 13.579 9.209C13.274 9.979 12.828 10.657 12.243 11.243C11.657 11.828 10.979 12.274 10.209 12.579C9.499 12.86 8.763 13 8 13C7.237 13 6.501 12.86 5.791 12.579C5.021 12.274 4.343 11.828 3.757 11.243C3.172 10.657 2.726 9.979 2.421 9.209C2.14 8.499 2 7.763 2 7C2 6.237 2.14 5.501 2.421 4.791C2.726 4.021 3.172 3.343 3.757 2.757ZM4.464 10.536L4.479 10.55C4.754 9.883 5.083 9.242 5.466 8.626C5.991 7.783 6.605 7.01 7.308 6.308C8.01 5.605 8.783 4.991 9.626 4.466C10.242 4.083 10.883 3.754 11.55 3.479L11.536 3.464C11.047 2.976 10.482 2.605 9.84 2.351C9.249 2.117 8.636 2 8 2C7.364 2 6.751 2.117 6.16 2.351C5.518 2.605 4.953 2.976 4.464 3.464C3.976 3.953 3.605 4.518 3.351 5.16C3.117 5.751 3 6.364 3 7C3 7.636 3.117 8.249 3.351 8.84C3.605 9.482 3.976 10.047 4.464 10.536ZM8.015 7.015C7.366 7.663 6.799 8.377 6.315 9.155C5.908 9.807 5.568 10.491 5.294 11.206C5.565 11.38 5.854 11.528 6.16 11.649C6.648 11.843 7.153 11.956 7.672 11.989C8.151 10.779 8.855 9.71 9.782 8.782C10.71 7.855 11.779 7.151 12.989 6.672C12.956 6.153 12.843 5.648 12.649 5.16C12.528 4.854 12.38 4.565 12.206 4.294C11.491 4.568 10.807 4.908 10.155 5.315C9.377 5.799 8.663 6.366 8.015 7.015ZM8.78 11.939C9.141 11.883 9.495 11.786 9.84 11.649C10.482 11.395 11.047 11.024 11.536 10.536C12.024 10.047 12.395 9.482 12.649 8.84C12.786 8.495 12.883 8.141 12.939 7.78C12.027 8.199 11.211 8.768 10.49 9.49C9.768 10.211 9.199 11.027 8.78 11.939ZM1 14.5C1 14.359 1.048 14.241 1.144 14.144C1.241 14.048 1.359 14 1.5 14L14.5 14C14.641 14 14.759 14.048 14.856 14.144C14.952 14.241 15 14.359 15 14.5C15 14.641 14.952 14.759 14.856 14.856C14.759 14.952 14.641 15 14.5 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5Z" />
  </svg>
</template>
```

### Svelte

```svelte
<!-- Gentleface "exercise-ball" (line-round), MIT. https://gentleface.com/icons/exercise-ball -->
<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="M3.757 2.757C4.343 2.172 5.021 1.726 5.791 1.421C6.501 1.14 7.237 1 8 1C8.763 1 9.499 1.14 10.209 1.421C10.979 1.726 11.657 2.172 12.243 2.757C12.828 3.343 13.274 4.021 13.579 4.791C13.86 5.501 14 6.237 14 7C14 7.763 13.86 8.499 13.579 9.209C13.274 9.979 12.828 10.657 12.243 11.243C11.657 11.828 10.979 12.274 10.209 12.579C9.499 12.86 8.763 13 8 13C7.237 13 6.501 12.86 5.791 12.579C5.021 12.274 4.343 11.828 3.757 11.243C3.172 10.657 2.726 9.979 2.421 9.209C2.14 8.499 2 7.763 2 7C2 6.237 2.14 5.501 2.421 4.791C2.726 4.021 3.172 3.343 3.757 2.757ZM4.464 10.536L4.479 10.55C4.754 9.883 5.083 9.242 5.466 8.626C5.991 7.783 6.605 7.01 7.308 6.308C8.01 5.605 8.783 4.991 9.626 4.466C10.242 4.083 10.883 3.754 11.55 3.479L11.536 3.464C11.047 2.976 10.482 2.605 9.84 2.351C9.249 2.117 8.636 2 8 2C7.364 2 6.751 2.117 6.16 2.351C5.518 2.605 4.953 2.976 4.464 3.464C3.976 3.953 3.605 4.518 3.351 5.16C3.117 5.751 3 6.364 3 7C3 7.636 3.117 8.249 3.351 8.84C3.605 9.482 3.976 10.047 4.464 10.536ZM8.015 7.015C7.366 7.663 6.799 8.377 6.315 9.155C5.908 9.807 5.568 10.491 5.294 11.206C5.565 11.38 5.854 11.528 6.16 11.649C6.648 11.843 7.153 11.956 7.672 11.989C8.151 10.779 8.855 9.71 9.782 8.782C10.71 7.855 11.779 7.151 12.989 6.672C12.956 6.153 12.843 5.648 12.649 5.16C12.528 4.854 12.38 4.565 12.206 4.294C11.491 4.568 10.807 4.908 10.155 5.315C9.377 5.799 8.663 6.366 8.015 7.015ZM8.78 11.939C9.141 11.883 9.495 11.786 9.84 11.649C10.482 11.395 11.047 11.024 11.536 10.536C12.024 10.047 12.395 9.482 12.649 8.84C12.786 8.495 12.883 8.141 12.939 7.78C12.027 8.199 11.211 8.768 10.49 9.49C9.768 10.211 9.199 11.027 8.78 11.939ZM1 14.5C1 14.359 1.048 14.241 1.144 14.144C1.241 14.048 1.359 14 1.5 14L14.5 14C14.641 14 14.759 14.048 14.856 14.144C14.952 14.241 15 14.359 15 14.5C15 14.641 14.952 14.759 14.856 14.856C14.759 14.952 14.641 15 14.5 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5Z" />
</svg>
```

### HTML img

```html
<!-- Gentleface "exercise-ball" (line-round), MIT. https://gentleface.com/icons/exercise-ball. 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/exercise-ball.svg" width="16" height="16" alt="">
```

### CSS

```css
/* Gentleface "exercise-ball" (line-round), MIT. https://gentleface.com/icons/exercise-ball. Takes the text color. */
.icon-exercise-ball {
  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='M3.757 2.757C4.343 2.172 5.021 1.726 5.791 1.421C6.501 1.14 7.237 1 8 1C8.763 1 9.499 1.14 10.209 1.421C10.979 1.726 11.657 2.172 12.243 2.757C12.828 3.343 13.274 4.021 13.579 4.791C13.86 5.501 14 6.237 14 7C14 7.763 13.86 8.499 13.579 9.209C13.274 9.979 12.828 10.657 12.243 11.243C11.657 11.828 10.979 12.274 10.209 12.579C9.499 12.86 8.763 13 8 13C7.237 13 6.501 12.86 5.791 12.579C5.021 12.274 4.343 11.828 3.757 11.243C3.172 10.657 2.726 9.979 2.421 9.209C2.14 8.499 2 7.763 2 7C2 6.237 2.14 5.501 2.421 4.791C2.726 4.021 3.172 3.343 3.757 2.757ZM4.464 10.536L4.479 10.55C4.754 9.883 5.083 9.242 5.466 8.626C5.991 7.783 6.605 7.01 7.308 6.308C8.01 5.605 8.783 4.991 9.626 4.466C10.242 4.083 10.883 3.754 11.55 3.479L11.536 3.464C11.047 2.976 10.482 2.605 9.84 2.351C9.249 2.117 8.636 2 8 2C7.364 2 6.751 2.117 6.16 2.351C5.518 2.605 4.953 2.976 4.464 3.464C3.976 3.953 3.605 4.518 3.351 5.16C3.117 5.751 3 6.364 3 7C3 7.636 3.117 8.249 3.351 8.84C3.605 9.482 3.976 10.047 4.464 10.536ZM8.015 7.015C7.366 7.663 6.799 8.377 6.315 9.155C5.908 9.807 5.568 10.491 5.294 11.206C5.565 11.38 5.854 11.528 6.16 11.649C6.648 11.843 7.153 11.956 7.672 11.989C8.151 10.779 8.855 9.71 9.782 8.782C10.71 7.855 11.779 7.151 12.989 6.672C12.956 6.153 12.843 5.648 12.649 5.16C12.528 4.854 12.38 4.565 12.206 4.294C11.491 4.568 10.807 4.908 10.155 5.315C9.377 5.799 8.663 6.366 8.015 7.015ZM8.78 11.939C9.141 11.883 9.495 11.786 9.84 11.649C10.482 11.395 11.047 11.024 11.536 10.536C12.024 10.047 12.395 9.482 12.649 8.84C12.786 8.495 12.883 8.141 12.939 7.78C12.027 8.199 11.211 8.768 10.49 9.49C9.768 10.211 9.199 11.027 8.78 11.939ZM1 14.5C1 14.359 1.048 14.241 1.144 14.144C1.241 14.048 1.359 14 1.5 14L14.5 14C14.641 14 14.759 14.048 14.856 14.144C14.952 14.241 15 14.359 15 14.5C15 14.641 14.952 14.759 14.856 14.856C14.759 14.952 14.641 15 14.5 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5Z'/%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='M3.757 2.757C4.343 2.172 5.021 1.726 5.791 1.421C6.501 1.14 7.237 1 8 1C8.763 1 9.499 1.14 10.209 1.421C10.979 1.726 11.657 2.172 12.243 2.757C12.828 3.343 13.274 4.021 13.579 4.791C13.86 5.501 14 6.237 14 7C14 7.763 13.86 8.499 13.579 9.209C13.274 9.979 12.828 10.657 12.243 11.243C11.657 11.828 10.979 12.274 10.209 12.579C9.499 12.86 8.763 13 8 13C7.237 13 6.501 12.86 5.791 12.579C5.021 12.274 4.343 11.828 3.757 11.243C3.172 10.657 2.726 9.979 2.421 9.209C2.14 8.499 2 7.763 2 7C2 6.237 2.14 5.501 2.421 4.791C2.726 4.021 3.172 3.343 3.757 2.757ZM4.464 10.536L4.479 10.55C4.754 9.883 5.083 9.242 5.466 8.626C5.991 7.783 6.605 7.01 7.308 6.308C8.01 5.605 8.783 4.991 9.626 4.466C10.242 4.083 10.883 3.754 11.55 3.479L11.536 3.464C11.047 2.976 10.482 2.605 9.84 2.351C9.249 2.117 8.636 2 8 2C7.364 2 6.751 2.117 6.16 2.351C5.518 2.605 4.953 2.976 4.464 3.464C3.976 3.953 3.605 4.518 3.351 5.16C3.117 5.751 3 6.364 3 7C3 7.636 3.117 8.249 3.351 8.84C3.605 9.482 3.976 10.047 4.464 10.536ZM8.015 7.015C7.366 7.663 6.799 8.377 6.315 9.155C5.908 9.807 5.568 10.491 5.294 11.206C5.565 11.38 5.854 11.528 6.16 11.649C6.648 11.843 7.153 11.956 7.672 11.989C8.151 10.779 8.855 9.71 9.782 8.782C10.71 7.855 11.779 7.151 12.989 6.672C12.956 6.153 12.843 5.648 12.649 5.16C12.528 4.854 12.38 4.565 12.206 4.294C11.491 4.568 10.807 4.908 10.155 5.315C9.377 5.799 8.663 6.366 8.015 7.015ZM8.78 11.939C9.141 11.883 9.495 11.786 9.84 11.649C10.482 11.395 11.047 11.024 11.536 10.536C12.024 10.047 12.395 9.482 12.649 8.84C12.786 8.495 12.883 8.141 12.939 7.78C12.027 8.199 11.211 8.768 10.49 9.49C9.768 10.211 9.199 11.027 8.78 11.939ZM1 14.5C1 14.359 1.048 14.241 1.144 14.144C1.241 14.048 1.359 14 1.5 14L14.5 14C14.641 14 14.759 14.048 14.856 14.144C14.952 14.241 15 14.359 15 14.5C15 14.641 14.952 14.759 14.856 14.856C14.759 14.952 14.641 15 14.5 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5Z'/%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='M3.757 2.757C4.343 2.172 5.021 1.726 5.791 1.421C6.501 1.14 7.237 1 8 1C8.763 1 9.499 1.14 10.209 1.421C10.979 1.726 11.657 2.172 12.243 2.757C12.828 3.343 13.274 4.021 13.579 4.791C13.86 5.501 14 6.237 14 7C14 7.763 13.86 8.499 13.579 9.209C13.274 9.979 12.828 10.657 12.243 11.243C11.657 11.828 10.979 12.274 10.209 12.579C9.499 12.86 8.763 13 8 13C7.237 13 6.501 12.86 5.791 12.579C5.021 12.274 4.343 11.828 3.757 11.243C3.172 10.657 2.726 9.979 2.421 9.209C2.14 8.499 2 7.763 2 7C2 6.237 2.14 5.501 2.421 4.791C2.726 4.021 3.172 3.343 3.757 2.757ZM4.464 10.536L4.479 10.55C4.754 9.883 5.083 9.242 5.466 8.626C5.991 7.783 6.605 7.01 7.308 6.308C8.01 5.605 8.783 4.991 9.626 4.466C10.242 4.083 10.883 3.754 11.55 3.479L11.536 3.464C11.047 2.976 10.482 2.605 9.84 2.351C9.249 2.117 8.636 2 8 2C7.364 2 6.751 2.117 6.16 2.351C5.518 2.605 4.953 2.976 4.464 3.464C3.976 3.953 3.605 4.518 3.351 5.16C3.117 5.751 3 6.364 3 7C3 7.636 3.117 8.249 3.351 8.84C3.605 9.482 3.976 10.047 4.464 10.536ZM8.015 7.015C7.366 7.663 6.799 8.377 6.315 9.155C5.908 9.807 5.568 10.491 5.294 11.206C5.565 11.38 5.854 11.528 6.16 11.649C6.648 11.843 7.153 11.956 7.672 11.989C8.151 10.779 8.855 9.71 9.782 8.782C10.71 7.855 11.779 7.151 12.989 6.672C12.956 6.153 12.843 5.648 12.649 5.16C12.528 4.854 12.38 4.565 12.206 4.294C11.491 4.568 10.807 4.908 10.155 5.315C9.377 5.799 8.663 6.366 8.015 7.015ZM8.78 11.939C9.141 11.883 9.495 11.786 9.84 11.649C10.482 11.395 11.047 11.024 11.536 10.536C12.024 10.047 12.395 9.482 12.649 8.84C12.786 8.495 12.883 8.141 12.939 7.78C12.027 8.199 11.211 8.768 10.49 9.49C9.768 10.211 9.199 11.027 8.78 11.939ZM1 14.5C1 14.359 1.048 14.241 1.144 14.144C1.241 14.048 1.359 14 1.5 14L14.5 14C14.641 14 14.759 14.048 14.856 14.144C14.952 14.241 15 14.359 15 14.5C15 14.641 14.952 14.759 14.856 14.856C14.759 14.952 14.641 15 14.5 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5Z'/%3E%3C/svg%3E
```

### Sprite

```html
<!-- Gentleface "exercise-ball" (line-round), MIT. https://gentleface.com/icons/exercise-ball
     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#exercise-ball"/></svg>
```

### SwiftUI

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

struct ExerciseBallIcon: Shape {
    func path(in rect: CGRect) -> Path {
        var p = Path()
        p.move(to: CGPoint(x: 3.757, y: 2.757))
        p.addCurve(to: CGPoint(x: 5.791, y: 1.421), control1: CGPoint(x: 4.343, y: 2.172), control2: CGPoint(x: 5.021, y: 1.726))
        p.addCurve(to: CGPoint(x: 8, y: 1), control1: CGPoint(x: 6.501, y: 1.14), control2: CGPoint(x: 7.237, y: 1))
        p.addCurve(to: CGPoint(x: 10.209, y: 1.421), control1: CGPoint(x: 8.763, y: 1), control2: CGPoint(x: 9.499, y: 1.14))
        p.addCurve(to: CGPoint(x: 12.243, y: 2.757), control1: CGPoint(x: 10.979, y: 1.726), control2: CGPoint(x: 11.657, y: 2.172))
        p.addCurve(to: CGPoint(x: 13.579, y: 4.791), control1: CGPoint(x: 12.828, y: 3.343), control2: CGPoint(x: 13.274, y: 4.021))
        p.addCurve(to: CGPoint(x: 14, y: 7), control1: CGPoint(x: 13.86, y: 5.501), control2: CGPoint(x: 14, y: 6.237))
        p.addCurve(to: CGPoint(x: 13.579, y: 9.209), control1: CGPoint(x: 14, y: 7.763), control2: CGPoint(x: 13.86, y: 8.499))
        p.addCurve(to: CGPoint(x: 12.243, y: 11.243), control1: CGPoint(x: 13.274, y: 9.979), control2: CGPoint(x: 12.828, y: 10.657))
        p.addCurve(to: CGPoint(x: 10.209, y: 12.579), control1: CGPoint(x: 11.657, y: 11.828), control2: CGPoint(x: 10.979, y: 12.274))
        p.addCurve(to: CGPoint(x: 8, y: 13), control1: CGPoint(x: 9.499, y: 12.86), control2: CGPoint(x: 8.763, y: 13))
        p.addCurve(to: CGPoint(x: 5.791, y: 12.579), control1: CGPoint(x: 7.237, y: 13), control2: CGPoint(x: 6.501, y: 12.86))
        p.addCurve(to: CGPoint(x: 3.757, y: 11.243), control1: CGPoint(x: 5.021, y: 12.274), control2: CGPoint(x: 4.343, y: 11.828))
        p.addCurve(to: CGPoint(x: 2.421, y: 9.209), control1: CGPoint(x: 3.172, y: 10.657), control2: CGPoint(x: 2.726, y: 9.979))
        p.addCurve(to: CGPoint(x: 2, y: 7), control1: CGPoint(x: 2.14, y: 8.499), control2: CGPoint(x: 2, y: 7.763))
        p.addCurve(to: CGPoint(x: 2.421, y: 4.791), control1: CGPoint(x: 2, y: 6.237), control2: CGPoint(x: 2.14, y: 5.501))
        p.addCurve(to: CGPoint(x: 3.757, y: 2.757), control1: CGPoint(x: 2.726, y: 4.021), control2: CGPoint(x: 3.172, y: 3.343))
        p.closeSubpath()
        p.move(to: CGPoint(x: 4.464, y: 10.536))
        p.addLine(to: CGPoint(x: 4.479, y: 10.55))
        p.addCurve(to: CGPoint(x: 5.466, y: 8.626), control1: CGPoint(x: 4.754, y: 9.883), control2: CGPoint(x: 5.083, y: 9.242))
        p.addCurve(to: CGPoint(x: 7.308, y: 6.308), control1: CGPoint(x: 5.991, y: 7.783), control2: CGPoint(x: 6.605, y: 7.01))
        p.addCurve(to: CGPoint(x: 9.626, y: 4.466), control1: CGPoint(x: 8.01, y: 5.605), control2: CGPoint(x: 8.783, y: 4.991))
        p.addCurve(to: CGPoint(x: 11.55, y: 3.479), control1: CGPoint(x: 10.242, y: 4.083), control2: CGPoint(x: 10.883, y: 3.754))
        p.addLine(to: CGPoint(x: 11.536, y: 3.464))
        p.addCurve(to: CGPoint(x: 9.84, y: 2.351), control1: CGPoint(x: 11.047, y: 2.976), control2: CGPoint(x: 10.482, y: 2.605))
        p.addCurve(to: CGPoint(x: 8, y: 2), control1: CGPoint(x: 9.249, y: 2.117), control2: CGPoint(x: 8.636, y: 2))
        p.addCurve(to: CGPoint(x: 6.16, y: 2.351), control1: CGPoint(x: 7.364, y: 2), control2: CGPoint(x: 6.751, y: 2.117))
        p.addCurve(to: CGPoint(x: 4.464, y: 3.464), control1: CGPoint(x: 5.518, y: 2.605), control2: CGPoint(x: 4.953, y: 2.976))
        p.addCurve(to: CGPoint(x: 3.351, y: 5.16), control1: CGPoint(x: 3.976, y: 3.953), control2: CGPoint(x: 3.605, y: 4.518))
        p.addCurve(to: CGPoint(x: 3, y: 7), control1: CGPoint(x: 3.117, y: 5.751), control2: CGPoint(x: 3, y: 6.364))
        p.addCurve(to: CGPoint(x: 3.351, y: 8.84), control1: CGPoint(x: 3, y: 7.636), control2: CGPoint(x: 3.117, y: 8.249))
        p.addCurve(to: CGPoint(x: 4.464, y: 10.536), control1: CGPoint(x: 3.605, y: 9.482), control2: CGPoint(x: 3.976, y: 10.047))
        p.closeSubpath()
        p.move(to: CGPoint(x: 8.015, y: 7.015))
        p.addCurve(to: CGPoint(x: 6.315, y: 9.155), control1: CGPoint(x: 7.366, y: 7.663), control2: CGPoint(x: 6.799, y: 8.377))
        p.addCurve(to: CGPoint(x: 5.294, y: 11.206), control1: CGPoint(x: 5.908, y: 9.807), control2: CGPoint(x: 5.568, y: 10.491))
        p.addCurve(to: CGPoint(x: 6.16, y: 11.649), control1: CGPoint(x: 5.565, y: 11.38), control2: CGPoint(x: 5.854, y: 11.528))
        p.addCurve(to: CGPoint(x: 7.672, y: 11.989), control1: CGPoint(x: 6.648, y: 11.843), control2: CGPoint(x: 7.153, y: 11.956))
        p.addCurve(to: CGPoint(x: 9.782, y: 8.782), control1: CGPoint(x: 8.151, y: 10.779), control2: CGPoint(x: 8.855, y: 9.71))
        p.addCurve(to: CGPoint(x: 12.989, y: 6.672), control1: CGPoint(x: 10.71, y: 7.855), control2: CGPoint(x: 11.779, y: 7.151))
        p.addCurve(to: CGPoint(x: 12.649, y: 5.16), control1: CGPoint(x: 12.956, y: 6.153), control2: CGPoint(x: 12.843, y: 5.648))
        p.addCurve(to: CGPoint(x: 12.206, y: 4.294), control1: CGPoint(x: 12.528, y: 4.854), control2: CGPoint(x: 12.38, y: 4.565))
        p.addCurve(to: CGPoint(x: 10.155, y: 5.315), control1: CGPoint(x: 11.491, y: 4.568), control2: CGPoint(x: 10.807, y: 4.908))
        p.addCurve(to: CGPoint(x: 8.015, y: 7.015), control1: CGPoint(x: 9.377, y: 5.799), control2: CGPoint(x: 8.663, y: 6.366))
        p.closeSubpath()
        p.move(to: CGPoint(x: 8.78, y: 11.939))
        p.addCurve(to: CGPoint(x: 9.84, y: 11.649), control1: CGPoint(x: 9.141, y: 11.883), control2: CGPoint(x: 9.495, y: 11.786))
        p.addCurve(to: CGPoint(x: 11.536, y: 10.536), control1: CGPoint(x: 10.482, y: 11.395), control2: CGPoint(x: 11.047, y: 11.024))
        p.addCurve(to: CGPoint(x: 12.649, y: 8.84), control1: CGPoint(x: 12.024, y: 10.047), control2: CGPoint(x: 12.395, y: 9.482))
        p.addCurve(to: CGPoint(x: 12.939, y: 7.78), control1: CGPoint(x: 12.786, y: 8.495), control2: CGPoint(x: 12.883, y: 8.141))
        p.addCurve(to: CGPoint(x: 10.49, y: 9.49), control1: CGPoint(x: 12.027, y: 8.199), control2: CGPoint(x: 11.211, y: 8.768))
        p.addCurve(to: CGPoint(x: 8.78, y: 11.939), control1: CGPoint(x: 9.768, y: 10.211), control2: CGPoint(x: 9.199, y: 11.027))
        p.closeSubpath()
        p.move(to: CGPoint(x: 1, y: 14.5))
        p.addCurve(to: CGPoint(x: 1.144, y: 14.144), control1: CGPoint(x: 1, y: 14.359), control2: CGPoint(x: 1.048, y: 14.241))
        p.addCurve(to: CGPoint(x: 1.5, y: 14), control1: CGPoint(x: 1.241, y: 14.048), control2: CGPoint(x: 1.359, y: 14))
        p.addLine(to: CGPoint(x: 14.5, y: 14))
        p.addCurve(to: CGPoint(x: 14.856, y: 14.144), control1: CGPoint(x: 14.641, y: 14), control2: CGPoint(x: 14.759, y: 14.048))
        p.addCurve(to: CGPoint(x: 15, y: 14.5), control1: CGPoint(x: 14.952, y: 14.241), control2: CGPoint(x: 15, y: 14.359))
        p.addCurve(to: CGPoint(x: 14.856, y: 14.856), control1: CGPoint(x: 15, y: 14.641), control2: CGPoint(x: 14.952, y: 14.759))
        p.addCurve(to: CGPoint(x: 14.5, y: 15), control1: CGPoint(x: 14.759, y: 14.952), control2: CGPoint(x: 14.641, 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.closeSubpath()
        return p.applying(CGAffineTransform(scaleX: rect.width / 16, y: rect.height / 16))
    }
}

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

### Compose

```kotlin
// Gentleface "exercise-ball" (line-round), MIT. https://gentleface.com/icons/exercise-ball
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 ExerciseBallIcon: ImageVector by lazy {
    ImageVector.Builder(
        name = "exercise-ball", defaultWidth = 16.dp, defaultHeight = 16.dp,
        viewportWidth = 16f, viewportHeight = 16f,
    ).addPath(
        pathData = addPathNodes("M3.757 2.757C4.343 2.172 5.021 1.726 5.791 1.421C6.501 1.14 7.237 1 8 1C8.763 1 9.499 1.14 10.209 1.421C10.979 1.726 11.657 2.172 12.243 2.757C12.828 3.343 13.274 4.021 13.579 4.791C13.86 5.501 14 6.237 14 7C14 7.763 13.86 8.499 13.579 9.209C13.274 9.979 12.828 10.657 12.243 11.243C11.657 11.828 10.979 12.274 10.209 12.579C9.499 12.86 8.763 13 8 13C7.237 13 6.501 12.86 5.791 12.579C5.021 12.274 4.343 11.828 3.757 11.243C3.172 10.657 2.726 9.979 2.421 9.209C2.14 8.499 2 7.763 2 7C2 6.237 2.14 5.501 2.421 4.791C2.726 4.021 3.172 3.343 3.757 2.757ZM4.464 10.536L4.479 10.55C4.754 9.883 5.083 9.242 5.466 8.626C5.991 7.783 6.605 7.01 7.308 6.308C8.01 5.605 8.783 4.991 9.626 4.466C10.242 4.083 10.883 3.754 11.55 3.479L11.536 3.464C11.047 2.976 10.482 2.605 9.84 2.351C9.249 2.117 8.636 2 8 2C7.364 2 6.751 2.117 6.16 2.351C5.518 2.605 4.953 2.976 4.464 3.464C3.976 3.953 3.605 4.518 3.351 5.16C3.117 5.751 3 6.364 3 7C3 7.636 3.117 8.249 3.351 8.84C3.605 9.482 3.976 10.047 4.464 10.536ZM8.015 7.015C7.366 7.663 6.799 8.377 6.315 9.155C5.908 9.807 5.568 10.491 5.294 11.206C5.565 11.38 5.854 11.528 6.16 11.649C6.648 11.843 7.153 11.956 7.672 11.989C8.151 10.779 8.855 9.71 9.782 8.782C10.71 7.855 11.779 7.151 12.989 6.672C12.956 6.153 12.843 5.648 12.649 5.16C12.528 4.854 12.38 4.565 12.206 4.294C11.491 4.568 10.807 4.908 10.155 5.315C9.377 5.799 8.663 6.366 8.015 7.015ZM8.78 11.939C9.141 11.883 9.495 11.786 9.84 11.649C10.482 11.395 11.047 11.024 11.536 10.536C12.024 10.047 12.395 9.482 12.649 8.84C12.786 8.495 12.883 8.141 12.939 7.78C12.027 8.199 11.211 8.768 10.49 9.49C9.768 10.211 9.199 11.027 8.78 11.939ZM1 14.5C1 14.359 1.048 14.241 1.144 14.144C1.241 14.048 1.359 14 1.5 14L14.5 14C14.641 14 14.759 14.048 14.856 14.144C14.952 14.241 15 14.359 15 14.5C15 14.641 14.952 14.759 14.856 14.856C14.759 14.952 14.641 15 14.5 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5Z"),
        fill = SolidColor(Color.Black),
    ).build()
}

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

### Android XML

```xml
<!-- res/drawable/ic_exercise_ball.xml · Gentleface "exercise-ball" (line-round), MIT. https://gentleface.com/icons/exercise-ball -->
<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="M3.757 2.757C4.343 2.172 5.021 1.726 5.791 1.421C6.501 1.14 7.237 1 8 1C8.763 1 9.499 1.14 10.209 1.421C10.979 1.726 11.657 2.172 12.243 2.757C12.828 3.343 13.274 4.021 13.579 4.791C13.86 5.501 14 6.237 14 7C14 7.763 13.86 8.499 13.579 9.209C13.274 9.979 12.828 10.657 12.243 11.243C11.657 11.828 10.979 12.274 10.209 12.579C9.499 12.86 8.763 13 8 13C7.237 13 6.501 12.86 5.791 12.579C5.021 12.274 4.343 11.828 3.757 11.243C3.172 10.657 2.726 9.979 2.421 9.209C2.14 8.499 2 7.763 2 7C2 6.237 2.14 5.501 2.421 4.791C2.726 4.021 3.172 3.343 3.757 2.757ZM4.464 10.536L4.479 10.55C4.754 9.883 5.083 9.242 5.466 8.626C5.991 7.783 6.605 7.01 7.308 6.308C8.01 5.605 8.783 4.991 9.626 4.466C10.242 4.083 10.883 3.754 11.55 3.479L11.536 3.464C11.047 2.976 10.482 2.605 9.84 2.351C9.249 2.117 8.636 2 8 2C7.364 2 6.751 2.117 6.16 2.351C5.518 2.605 4.953 2.976 4.464 3.464C3.976 3.953 3.605 4.518 3.351 5.16C3.117 5.751 3 6.364 3 7C3 7.636 3.117 8.249 3.351 8.84C3.605 9.482 3.976 10.047 4.464 10.536ZM8.015 7.015C7.366 7.663 6.799 8.377 6.315 9.155C5.908 9.807 5.568 10.491 5.294 11.206C5.565 11.38 5.854 11.528 6.16 11.649C6.648 11.843 7.153 11.956 7.672 11.989C8.151 10.779 8.855 9.71 9.782 8.782C10.71 7.855 11.779 7.151 12.989 6.672C12.956 6.153 12.843 5.648 12.649 5.16C12.528 4.854 12.38 4.565 12.206 4.294C11.491 4.568 10.807 4.908 10.155 5.315C9.377 5.799 8.663 6.366 8.015 7.015ZM8.78 11.939C9.141 11.883 9.495 11.786 9.84 11.649C10.482 11.395 11.047 11.024 11.536 10.536C12.024 10.047 12.395 9.482 12.649 8.84C12.786 8.495 12.883 8.141 12.939 7.78C12.027 8.199 11.211 8.768 10.49 9.49C9.768 10.211 9.199 11.027 8.78 11.939ZM1 14.5C1 14.359 1.048 14.241 1.144 14.144C1.241 14.048 1.359 14 1.5 14L14.5 14C14.641 14 14.759 14.048 14.856 14.144C14.952 14.241 15 14.359 15 14.5C15 14.641 14.952 14.759 14.856 14.856C14.759 14.952 14.641 15 14.5 15L1.5 15C1.359 15 1.241 14.952 1.144 14.856C1.048 14.759 1 14.641 1 14.5Z"/>
</vector>
```

### Flutter

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

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

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

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

  @override
  void paint(Canvas canvas, Size size) {
    canvas.scale(size.width / 16, size.height / 16);
    final p = Path()
      ..moveTo(3.757, 2.757)
      ..cubicTo(4.343, 2.172, 5.021, 1.726, 5.791, 1.421)
      ..cubicTo(6.501, 1.14, 7.237, 1, 8, 1)
      ..cubicTo(8.763, 1, 9.499, 1.14, 10.209, 1.421)
      ..cubicTo(10.979, 1.726, 11.657, 2.172, 12.243, 2.757)
      ..cubicTo(12.828, 3.343, 13.274, 4.021, 13.579, 4.791)
      ..cubicTo(13.86, 5.501, 14, 6.237, 14, 7)
      ..cubicTo(14, 7.763, 13.86, 8.499, 13.579, 9.209)
      ..cubicTo(13.274, 9.979, 12.828, 10.657, 12.243, 11.243)
      ..cubicTo(11.657, 11.828, 10.979, 12.274, 10.209, 12.579)
      ..cubicTo(9.499, 12.86, 8.763, 13, 8, 13)
      ..cubicTo(7.237, 13, 6.501, 12.86, 5.791, 12.579)
      ..cubicTo(5.021, 12.274, 4.343, 11.828, 3.757, 11.243)
      ..cubicTo(3.172, 10.657, 2.726, 9.979, 2.421, 9.209)
      ..cubicTo(2.14, 8.499, 2, 7.763, 2, 7)
      ..cubicTo(2, 6.237, 2.14, 5.501, 2.421, 4.791)
      ..cubicTo(2.726, 4.021, 3.172, 3.343, 3.757, 2.757)
      ..close()
      ..moveTo(4.464, 10.536)
      ..lineTo(4.479, 10.55)
      ..cubicTo(4.754, 9.883, 5.083, 9.242, 5.466, 8.626)
      ..cubicTo(5.991, 7.783, 6.605, 7.01, 7.308, 6.308)
      ..cubicTo(8.01, 5.605, 8.783, 4.991, 9.626, 4.466)
      ..cubicTo(10.242, 4.083, 10.883, 3.754, 11.55, 3.479)
      ..lineTo(11.536, 3.464)
      ..cubicTo(11.047, 2.976, 10.482, 2.605, 9.84, 2.351)
      ..cubicTo(9.249, 2.117, 8.636, 2, 8, 2)
      ..cubicTo(7.364, 2, 6.751, 2.117, 6.16, 2.351)
      ..cubicTo(5.518, 2.605, 4.953, 2.976, 4.464, 3.464)
      ..cubicTo(3.976, 3.953, 3.605, 4.518, 3.351, 5.16)
      ..cubicTo(3.117, 5.751, 3, 6.364, 3, 7)
      ..cubicTo(3, 7.636, 3.117, 8.249, 3.351, 8.84)
      ..cubicTo(3.605, 9.482, 3.976, 10.047, 4.464, 10.536)
      ..close()
      ..moveTo(8.015, 7.015)
      ..cubicTo(7.366, 7.663, 6.799, 8.377, 6.315, 9.155)
      ..cubicTo(5.908, 9.807, 5.568, 10.491, 5.294, 11.206)
      ..cubicTo(5.565, 11.38, 5.854, 11.528, 6.16, 11.649)
      ..cubicTo(6.648, 11.843, 7.153, 11.956, 7.672, 11.989)
      ..cubicTo(8.151, 10.779, 8.855, 9.71, 9.782, 8.782)
      ..cubicTo(10.71, 7.855, 11.779, 7.151, 12.989, 6.672)
      ..cubicTo(12.956, 6.153, 12.843, 5.648, 12.649, 5.16)
      ..cubicTo(12.528, 4.854, 12.38, 4.565, 12.206, 4.294)
      ..cubicTo(11.491, 4.568, 10.807, 4.908, 10.155, 5.315)
      ..cubicTo(9.377, 5.799, 8.663, 6.366, 8.015, 7.015)
      ..close()
      ..moveTo(8.78, 11.939)
      ..cubicTo(9.141, 11.883, 9.495, 11.786, 9.84, 11.649)
      ..cubicTo(10.482, 11.395, 11.047, 11.024, 11.536, 10.536)
      ..cubicTo(12.024, 10.047, 12.395, 9.482, 12.649, 8.84)
      ..cubicTo(12.786, 8.495, 12.883, 8.141, 12.939, 7.78)
      ..cubicTo(12.027, 8.199, 11.211, 8.768, 10.49, 9.49)
      ..cubicTo(9.768, 10.211, 9.199, 11.027, 8.78, 11.939)
      ..close()
      ..moveTo(1, 14.5)
      ..cubicTo(1, 14.359, 1.048, 14.241, 1.144, 14.144)
      ..cubicTo(1.241, 14.048, 1.359, 14, 1.5, 14)
      ..lineTo(14.5, 14)
      ..cubicTo(14.641, 14, 14.759, 14.048, 14.856, 14.144)
      ..cubicTo(14.952, 14.241, 15, 14.359, 15, 14.5)
      ..cubicTo(15, 14.641, 14.952, 14.759, 14.856, 14.856)
      ..cubicTo(14.759, 14.952, 14.641, 15, 14.5, 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)
      ..close();
    canvas.drawPath(p, Paint()..color = color);
  }

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