Full Code of rough-stuff/wired-elements for AI

master 0802655b6a02 cached
102 files
412.9 KB
225.1k tokens
310 symbols
1 requests
Download .txt
Showing preview only (439K chars total). Download the full file or copy to clipboard to get everything.
Repository: rough-stuff/wired-elements
Branch: master
Commit: 0802655b6a02
Files: 102
Total size: 412.9 KB

Directory structure:
gitextract_am60jkcx/

├── .github/
│   └── FUNDING.yml
├── .gitignore
├── .npmignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── docs/
│   ├── wired-button.md
│   ├── wired-calendar.md
│   ├── wired-card.md
│   ├── wired-checkbox.md
│   ├── wired-combo.md
│   ├── wired-dialog.md
│   ├── wired-divider.md
│   ├── wired-fab.md
│   ├── wired-icon-button.md
│   ├── wired-image.md
│   ├── wired-input.md
│   ├── wired-item.md
│   ├── wired-link.md
│   ├── wired-listbox.md
│   ├── wired-progress-ring.md
│   ├── wired-progress.md
│   ├── wired-radio-group.md
│   ├── wired-radio.md
│   ├── wired-search-input.md
│   ├── wired-slider.md
│   ├── wired-spinner.md
│   ├── wired-tabs.md
│   ├── wired-textarea.md
│   ├── wired-toggle.md
│   └── wired-video.md
├── examples/
│   ├── button.html
│   ├── calendar.html
│   ├── card.html
│   ├── checkbox.html
│   ├── combo.html
│   ├── dialog.html
│   ├── divider.html
│   ├── fab.html
│   ├── icon-button.html
│   ├── image.html
│   ├── input.html
│   ├── link.html
│   ├── listbox.html
│   ├── progress-ring.html
│   ├── progress.html
│   ├── radio.html
│   ├── search-input.html
│   ├── slider.html
│   ├── spinner.html
│   ├── tabs.html
│   ├── textarea.html
│   ├── toggle.html
│   └── video.html
├── experimental/
│   ├── icon.html
│   ├── iconset-generator.html
│   ├── wired-icon/
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── WiredIcon.ts
│   │   │   └── wired-icon.ts
│   │   └── tsconfig.json
│   └── wired-mat-icon/
│       ├── CONTRIBUTING.md
│       ├── README.md
│       ├── generate/
│       │   └── index.html
│       ├── package.json
│       ├── src/
│       │   ├── WiredMatIcon.ts
│       │   ├── iconset/
│       │   │   ├── iconset-full.ts
│       │   │   └── index.ts
│       │   └── wired-mat-icon.ts
│       └── tsconfig.json
├── package.json
├── src/
│   ├── wired-base.ts
│   ├── wired-button.ts
│   ├── wired-calendar.ts
│   ├── wired-card.ts
│   ├── wired-checkbox.ts
│   ├── wired-combo.ts
│   ├── wired-dialog.ts
│   ├── wired-divider.ts
│   ├── wired-elements.ts
│   ├── wired-fab.ts
│   ├── wired-icon-button.ts
│   ├── wired-image.ts
│   ├── wired-input.ts
│   ├── wired-item.ts
│   ├── wired-lib.ts
│   ├── wired-link.ts
│   ├── wired-listbox.ts
│   ├── wired-progress-ring.ts
│   ├── wired-progress.ts
│   ├── wired-radio-group.ts
│   ├── wired-radio.ts
│   ├── wired-search-input.ts
│   ├── wired-slider.ts
│   ├── wired-spinner.ts
│   ├── wired-tab.ts
│   ├── wired-tabs.ts
│   ├── wired-textarea.ts
│   ├── wired-toggle.ts
│   └── wired-video.ts
├── tsconfig.json
└── tslint.json

================================================
FILE CONTENTS
================================================

================================================
FILE: .github/FUNDING.yml
================================================
github: pshihn
open_collective: rough


================================================
FILE: .gitignore
================================================
node_modules
lib
packages

================================================
FILE: .npmignore
================================================
node_modules
examples
.github
tsconfig.json
tslint.json
packages

================================================
FILE: CHANGELOG.md
================================================
# Change Log

All notable changes to this project will be documented in this file.

## [3.0.0] - April 21, 2021
* Moved from lit-elment to lit 2.0 as the base Web Component class
* Moved multi-package monorepo to a single package that has all the elements exported

## [2.0.0] - October 19, 2019
* New component: **wired-video** Video player with the hand-drawn look
* New component: **wired-calendar** is a calendar component contributed by [@elingerojo](https://github.com/elingerojo)
* New component: **wired-dialog** emulates dialogs
* New component: **wired-divider** Draws a sketchy horizontal line between two sections
* New component: **wired-image** Image component that frames the image in a sketchy border
* New component: **wired-link** Akin to `<a>` tag, a link with href, and a sketchy underline
* New component: **wired-search-input** is a text input emulating a search input
* **wired-card** now supports a sketchy filled background
* **wired-slider** is more accessible, now built on top of input range.
* Elements are more responsive to size changes using the Resize observer
* **wired-textarea** does not auto-grow anymore. 


## [1.0.0] - April 24, 2019

* New component: **wired-fab** mimics the floating action button proposed in Material design
* New component: **wired-spinner** to show pending progress in a sketchy way
* New component: **wired-tabs** 
![wired tabs](https://wiredjs.github.io/wired-elements/images/tabs.png)
* Selection in Combo and List is now shown with a sketchy zig-zag fill in the style of [rough.js](https://roughjs.com)
![wired combo](https://wiredjs.github.io/wired-elements/images/combo.gif)
* Sketchy fill also applied to progress boxes
* Better Accessibility on all components
* Refactored code to use TypeScript and latest [Lit Element](https://lit-element.polymer-project.org/)


================================================
FILE: LICENSE
================================================
MIT License

Copyright (c) 2021 Preet Shihn

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


================================================
FILE: README.md
================================================
# wired-elements 👉 [wiredjs.com](https://wiredjs.com)
Wired Elements is a series of basic UI Elements that have a hand drawn look. These can be used for wireframes, mockups, or just the fun hand-drawn look. 

![alt Preview](https://i.imgur.com/qttPllg.png)


## Try now
Play with wired-elements:

[Wired Elements](https://codesandbox.io/s/wired-elements-vanilla-4bpny)

#### Try it with a framework

[Wired Elements in React](https://codesandbox.io/s/xrll5wyl8w)

[Wired Elements in Vue](https://codesandbox.io/s/vj389y9375)

[Wired Elements in Svelte](https://codesandbox.io/s/wired-elements-svelte-4hfkb)


## Install

The package (wired-elements) exports all components in the **_wired_** category. List of all wired elements can be found [here](https://github.com/rough-stuff/wired-elements/tree/master/src).

Add wired-elements to your project:
```
npm i wired-elements
```


Or load the ES module directly through unpkg

```html
<script type="module" src="https://unpkg.com/wired-elements?module"></script>
```


## Usage

Import into your module script:
```javascript
import { WiredButton, WiredInput } from "wired-elements"
```

or 

```javascript
import { WiredButton } from 'wired-elements/lib/wired-button.js';
import { WiredInput } from 'wired-elements/lib/wired-input.js';
```

#### Use it in your HTML:
```html
<wired-input placeholder="Enter name"></wired-input>
<wired-button>Click Me</wired-button>
```

Learn about web components [here](https://developer.mozilla.org/en-US/docs/Web/Web_Components).

## Component API

To view details of each component - properties, events, css-properties, etc, are provided in the [docs folder](https://github.com/rough-stuff/wired-elements/tree/master/docs).

## Demo

Demo of all components is available at [wiredjs.com](https://wiredjs.com/showcase.html).

## Credits

wired-elements was built using [RoughJS](https://roughjs.com/) and [Lit](https://lit.dev/).

## Contributors

Become a sponsor of the [Rough suite of libraries](https://github.com/rough-stuff)

### Financial Contributors

Become a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/rough/contribute)]

#### Individuals

<a href="https://opencollective.com/rough"><img src="https://opencollective.com/rough/individuals.svg?width=890"></a>

#### Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/rough/contribute)]

<a href="https://opencollective.com/rough/organization/0/website"><img src="https://opencollective.com/rough/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/rough/organization/1/website"><img src="https://opencollective.com/rough/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/rough/organization/2/website"><img src="https://opencollective.com/rough/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/rough/organization/3/website"><img src="https://opencollective.com/rough/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/rough/organization/4/website"><img src="https://opencollective.com/rough/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/rough/organization/5/website"><img src="https://opencollective.com/rough/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/rough/organization/6/website"><img src="https://opencollective.com/rough/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/rough/organization/7/website"><img src="https://opencollective.com/rough/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/rough/organization/8/website"><img src="https://opencollective.com/rough/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/rough/organization/9/website"><img src="https://opencollective.com/rough/organization/9/avatar.svg"></a>

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)


================================================
FILE: docs/wired-button.md
================================================
# wired-button
Hand-drawn sketchy Button web component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredButton } from 'wired-elements';
// or
import { WiredButton } from 'wired-elements/lib/wired-button.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-button.js?module"></script>
```

Use it in your HTML:
```html
<wired-button>Click Me</wired-button>
<wired-button disabled>Disabled</wired-button>
<wired-button elevation="3">Elevation</wired-button>
```

## Properties

**elevation** - Number between  1 and 5 (inclusive) that gives the button a sketchy height. Default value is 1.

**disabled** - disables the button. Default value is false. 

## Events

**click** - When button is clicked/submitted


## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)


================================================
FILE: docs/wired-calendar.md
================================================
![wired calendar][sample]

# wired-calendar

Calendar control with a hand-drawn, wireframe like, style.

For demo and view the complete set of wired-elements: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredCalendar } from 'wired-elements/lib/wired-calendar.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-calendar.js?module"></script>
```

Use it in your HTML:
```html
<wired-calendar selected="Jul 4, 2019">
</wired-calendar>
```

## Properties

**elevation** - Numerical number between 1-5 (inclusive) - sets the elevation of the card. Default is 1.

**selected** - Optional string value that will be parsed as Date. Pre selects a date highlighted in the calendar.

**firstdate** - Optional string value that will be parsed as Date. Lower limit of valid dates.

**lastdate** - Optional string value that will be parsed as Date. Higher limit of valid dates.

**locale** - Optional string value to set locale used ONLY FOR RENDERING headers in calendar. Default to browser locale. Note: All internal and external dates handling are not affected by locale.

**disabled** - Boolean value that disables the calendar selector. Default value is false.

**initials** - Boolean value to use initials in weekdays names. Default value is false.

**value** - javascript object that contains the selected Date object and the
corresponding formatted text.

**format** - gets/sets the javascript function to format a Date object into a
formatted text.


## Custom CSS Variables

**--wired-calendar-bg** Background color of the calendar. Default white.

**--wired-calendar-color** Calendar sketch line color. Default black.

**--wired-calendar-selected-color** Selected date sketch line color. Default red.

**--wired-calendar-dimmed-color** Font color days not belonging to calendar actual month. Default gray.

## Events
**selected** event fired when a date is selected by the user.


## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

#### Contributor

Eduardo Martinez

[sample]: https://elingerojo.github.io/wired-elements/images/WiredCalendarSample.GIF "Sample calendar"


================================================
FILE: docs/wired-card.md
================================================
# wired-card

wired-card is a container for other web elements - with a hand-drawn, wireframe like, look.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredCard } from 'wired-elements';
// or
import { WiredCard } from 'wired-elements/lib/wired-card.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-card.js?module"></script>
```

Use it in your HTML:
```html
<wired-card>
  <p>Elevation: 1</p>
</wired-card>

<wired-card elevation="3">
  <p>Elevation: 3</p>
</wired-card>
```

## Properties

**elevation** - Numerical number between 1-5 (inclusive) - sets the elevation of the card. Default is 1.

**fill** - A color to fill the background of the card in a sketchy format

## Methods

**requestUpdate()** - When dynamically adding content to the card, call this method to recompute the boundaries of the card. 

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)


================================================
FILE: docs/wired-checkbox.md
================================================
# wired-checkbox
Hand-drawn sketchy checkbox web component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredCheckbox } from 'wired-elements';
// or
import { WiredCheckbox } from 'wired-elements/lib/wired-checkbox.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-checkbox.js?module"></script>
```

Use it in your HTML:
```html
<wired-checkbox>Checkbox One</wired-checkbox>
<wired-checkbox checked>Checkbox Two</wired-checkbox>
<wired-checkbox disabled>Disabled checkbox</wired-checkbox>
```

## Properties

**checked** - Checked state (boolean). Default is false.

**disabled** - Disables the checkbox. Default value is false. 

## Custom CSS Properties

**--wired-checkbox-icon-color** Color of the checkbox. Default is *currentColor*.

## Events
**change** event fired when state of the checkbox changes, i.e. the user checks/unchecks the box.

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)


================================================
FILE: docs/wired-combo.md
================================================
# wired-combo

Combobox control - similar to a native browser select element; with a hand-drawn, wireframe like, style.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage
Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredCombo } from 'wired-elements';
// or
import { WiredCombo } from 'wired-elements/lib/wired-combo.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-combo.js?module"></script>
```

Use it in your HTML:
```html
<wired-combo id="combo" selected="two">
  <wired-item value="one">Number One</wired-item>
  <wired-item value="two">Number Two</wired-item>
  <wired-item value="three">Number Three</wired-item>
</wired-combo>
```

## Properties

**disabled** - disables the combo selector. Default value is false. 

**selected** - Value of the selected wired-item. 

## Custom CSS Variables

**--wired-combo-popup-bg** Background color of the dropdown when combo selector is open.

**--wired-item-selected-bg** Background color of the selected item

## Events
**selected** event fired when an item is selected by the user. 

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-dialog.md
================================================
# wired-dialog
Hand-drawn sketchy Dialog web component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredDialog } from 'wired-elements';
// or
import { WiredDialog } from 'wired-elements/lib/wired-dialog.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-dialog.js?module"></script>
```

Use it in your HTML:

```html
<wired-dialog>
  <p>
    Dialog content here
  </p>
  <div style="text-align: right; padding: 30px 16px 16px;">
    <wired-button id="closeDialog">Close dialog</wired-button>
  </div>
</wired-dialog>
```

## Properties

**elevation** - Number between  1 and 5 (inclusive) that gives the sketchy link underline a height. Default value is 1.

**open** - Boolean value telling dialog if it's showing or not.

## Custom CSS Properties

**--wired-dialog-z-index** - Sets the `z-index` of the dialog


## License
[MIT License](https://github.com/wiredjs/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-divider.md
================================================
# wired-divider
Hand-drawn sketchy line to divide sections

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

AAdd wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredDivider } from 'wired-elements';
// or
import { WiredDivider } from 'wired-elements/lib/wired-divider.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-divider.js?module"></script>
```

Use it in your HTML:
```html
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
<wired-divider></wired-divider>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
```

## Properties

**elevation** - Number between  1 and 5 (inclusive) represents number of lines drawn. Default value is 1.


## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-fab.md
================================================
# wired-fab
Hand-drawn sketchy Floating Action Button (FAB)

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

AAdd wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredFab } from 'wired-elements';
// or
import { WiredFab } from 'wired-elements/lib/wired-fab.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-fab.js?module"></script>
```

Use it in your HTML:
```html
<wired-fab id="btn1">
  <mwc-icon>favorite</mwc-icon>
</wired-fab>
<wired-fab id="btn2" class="red">
  <mwc-icon>close</mwc-icon>
</wired-fab>
```

## Properties

**disabled** - disables the button. Default value is false. 

## Custom CSS Properties

**--wired-fab-bg-color** - Background color of the fab. Default value is #018786. Foreground color is set by setting the **color** css property.

## Events

**click** - When button is clicked/submitted

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-icon-button.md
================================================
# wired-icon-button

This is a hand-drawn sketchy round button with an image placed at the center. Image could also be in icon, like [@material/mwc-icon](https://www.npmjs.com/package/@material/mwc-icon).

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredIconButton } from 'wired-elements';
// or
import { WiredIconButton } from 'wired-elements/lib/wired-icon-button.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-icon-button.js?module"></script>
```

Use it in your HTML:
```html
<wired-icon-button>
  <mwc-icon>favorite</mwc-icon>
</wired-icon-button>
<wired-icon-button class="red">
  <mwc-icon>favorite</mwc-icon>
</wired-icon-button>
```

## Properties

**disabled** - disables the button. Default value is false. 

## Custom CSS Variables

**--wired-icon-size** Numeric size of the icon. Default is 24 (px).

**--wired-icon-bg-color** Background color.

## Events

**click** - When button is clicked/submitted

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-image.md
================================================
# wired-image

wired-image displays an image and draws a sketchy border around it. 

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredImage } from 'wired-elements';
// or
import { WiredImage } from 'wired-elements/lib/wired-image.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-image.js?module"></script>
```

Use it in your HTML:
```html
<wired-image src="https://www.gstatic.com/webp/gallery/1.sm.jpg"></wired-image>
<wired-image elevation="4" src="https://www.gstatic.com/webp/gallery/1.sm.jpg"></wired-image>
```

## Properties

**src** - URL of the image.

**elevation** - Numerical number between 1-5 (inclusive) - sets the elevation of the card. Default is 1.

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-input.md
================================================
# wired-input
Hand-drawn sketchy text input web component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

AAdd wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredInput } from 'wired-elements';
// or
import { WiredInput } from 'wired-elements/lib/wired-input.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-input.js?module"></script>
```

Use it in your HTML:
```html
<wired-input></wired-input>
<wired-input placeholder="Enter name"></wired-input>
<wired-input type="password" placeholder="Password"></wired-input>
<wired-input placeholder="Disabled" disabled></wired-input>
```

## Properties

**placeholder** - Placeholder text for the input.

**disabled** - disables the control

**type** - Input type e.g. password

**value** - Value of the text.

## Events

Fires all events a standard `<input>` element fires. 

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-item.md
================================================
# wired-item

wired-item is a list item used by Wired components like wired-combo and wired-list-box

[wiredjs.com](https://wiredjs.com)

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-link.md
================================================
# wired-link
Hand-drawn sketchy Anchor/Link web component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredLink } from 'wired-elements';
// or
import { WiredLink } from 'wired-elements/lib/wired-link.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-link.js?module"></script>
```

Use it in your HTML:
```html
<wired-link href="/more.html">Learn more</wired-link>
<wired-link elevation="3" href="/more.html" target="_blank">Elevation</wired-link>
```

## Properties

**elevation** - Number between  1 and 5 (inclusive) that gives the sketchy link underline a height. Default value is 1.

**href** - URL of the page to link to

**target** - Similar to the target property of `<a>`, the target window of this link.

## Custom CSS Properties

**--wired-link-decoration-color** - Color of the sketchy underline of the link. Default value is blue. Foreground color is set by setting the **color** css property.


## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-listbox.md
================================================
# wired-listbox

A listbox control with Wired hand-drawn styling. The selected item is highlighted. Can be vertical (default) or horizontal.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredListbox } from 'wired-elements';
// or
import { WiredListbox } from 'wired-elements/lib/wired-listbox.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-listbox.js?module"></script>
```

Use it in your HTML:
```html
 <wired-listbox id="combo" selected="two">
  <wired-item value="one">Number One</wired-item>
  <wired-item value="two">Number Two</wired-item>
  <wired-item value="three">Number Three</wired-item>
</wired-listbox>

<wired-listbox horizontal selected="two"
     style="--wired-item-selected-color: darkred; --wired-item-selected-bg: pink;">
  <wired-item value="one">Number One</wired-item>
  <wired-item value="two">Number Two</wired-item>
  <wired-item value="three">Number Three</wired-item>
</wired-listbox>
```

## Properties

**horizontal** - Boolean indicated if the items are layed out horizontally. Default is false.

**selected** - Value of the selected item. 

## Custom CSS Variables

**--wired-item-selected-bg** Background color of the selected item.

**--wired-item-selected-color** Text color of the selected item.


## Events
**selected** event fired when an item is selected by the user. 

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-progress-ring.md
================================================
# wired-progress-ring
Hand-drawn sketchy progress-ring web component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredProgressRing } from 'wired-elements';
// or
import { WiredProgressRing } from 'wired-elements/lib/wired-progress-ring.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-progress-ring.js?module"></script>
```

Use it in your HTML:
```html
<wired-progress-ring value="25"></wired-progress-ring>
<wired-progress-ring value="10" min="5" max="15"></wired-progress-ring>
```

## Properties

**value** - Numeric value of the progress.

**min** - Minimum value. Default is 0.

**max** - Maximum value. Default is 100.

**hideLabel** - Hide the label in the center of the ring. This label shows the current value. Default is `false`.

**showLabelAsPercent** - When showing the label, show the value as a percentage. Default value is `false`.

**precision** - When showing the label as a percentage, this value can be set to specify the precision to round the value to. By default, the value rounded to a whole number. 

## Custom CSS Variables

**--wired-progress-color** Color of the progress bar. Default is `blue`.

The font and color of the label can be set the by styling the `wired-progress-ring` element. 

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-progress.md
================================================
# wired-progress
Hand-drawn sketchy progress bar web component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredProgress } from 'wired-elements';
// or
import { WiredProgress } from 'wired-elements/lib/wired-progress.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-progress.js?module"></script>
```

Use it in your HTML:
```html
<wired-progress value="25"></wired-progress>
<wired-progress value="10" min="5" max="15"></wired-progress>
```

## Properties

**value** - Numeric value of the progress.

**min** - Minimum value. Default is 0.

**max** - Maximum value. Default is 100.

**percentage** - Boolean indicating if the label should show a % symbol.

## Custom CSS Variables

**--wired-progress-label-color** Color of the label. Default is *black*.

**--wired-progress-label-background** Backgroind of label. Default is *rgba(255,255,255,0.9)*.

**--wired-progress-font-size** Font size of the label. Default is *14px*

**--wired-progress-color** Color of the progress bar. Default is *rgba(0, 0, 200, 0.8)*.

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-radio-group.md
================================================
# wired-radio-group
Allows user to select at most one radio button from a set. Works with `wired-radio`.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredRadioGroup, WiredRadio } from 'wired-elements';
// or
import { WiredRadioGroup } from 'wired-elements/lib/wired-radio-group.js';
```

Use it in your HTML:
```html
<wired-radio-group selected="two">
  <wired-radio name="one">One</wired-radio>
  <wired-radio name="two">Two</wired-radio>
  <wired-radio name="three">Three</wired-radio>
  <wired-radio name="four">Four</wired-radio>
</wired-radio-group>
```

## Properties

**selected** - Named of the selected radio button.

## Events

**selected** Event fired when user changes selection

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-radio.md
================================================
# wired-radio
Hand-drawn sketchy radio button web component. Usually used with `wired-radio-group`.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

AAdd wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredRadio } from 'wired-elements';
// or
import { WiredRadio } from 'wired-elements/lib/wired-radio.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-radio.js?module"></script>
```

Use it in your HTML:
```html
<wired-radio>Radio One</wired-radio>
<wired-radio checked>Radio Two</wired-radio>
<wired-radio disabled>Disabled Radio</wired-radio>
```

## Properties

**checked** - Checked state (boolean) of the radio button. Default is false.

**disabled** - disables the radio button. Default value is false. 

**text** - Text associated with the radio button.

**name** - A name associated with the radio inside a radio-group.

## Custom CSS Variables

**--wired-radio-icon-color** Color of the radio button. Default is *currentColor*.

## Events
**change** - event fired when state of the radio changes, i.e. the user checks/unchecks the radio.

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-search-input.md
================================================
# wired-search-input
Hand-drawn sketchy search text input web component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

AAdd wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredSearchInput } from 'wired-elements';
// or
import { WiredSearchInput } from 'wired-elements/lib/wired-search-input.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-search-input.js"></script>
```

Use it in your HTML:
```html
<wired-search-input></wired-search-input>
<wired-search-input placeholder="Search here"></wired-search-input>
```

## Properties

**placeholder** - Placeholder text for the input.

**disabled** - disables the control

**value** - Value of the text.

## Events

Fires all events a standard `<input>` element fires. 

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-slider.md
================================================
# wired-slider

Hand-drawn sketchy slider web component which allows user to select a value from a range by moving the slider thumb.

Range can be set using the min, max value. Default range is 0-100.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredSlider } from 'wired-elements';
// or
import { WiredSlider } from 'wired-elements/lib/wired-slider.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-slider.js?module"></script>
```

Use it in your HTML:
```html
<wired-slider></wired-slider>
<wired-slider disabled></wired-slider>
<wired-slider value="10" min="5" max="15"></wired-slider>
```

## Properties

**value** - Numeric value of the slider.

**min** - Minimum value of the slider. Default is 0.

**max** - Maximum value of the slider. Default ia 100.

## Custom CSS Variables

**--wired-slider-knob-zero-color** Color of the knob when the value is at minimum.

**--wired-slider-knob-color** Color of the knob when the value is NOT at minimum.

**--wired-slider-bar-color** Color of the bar on which the knob slides. 

## Events

**change** event fired when the user changes the slider value. 

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-spinner.md
================================================
# wired-spinner
Hand-drawn sketchy spinner to show progress or a pending task.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredSpinner } from 'wired-elements';
// or
import { WiredSpinner } from 'wired-elements/lib/wired-spinner.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-spinner.js?module"></script>
```

Use it in your HTML:
```html
<wired-spinner id="sp"></wired-spinner>
<wired-spinner spinning duration="1000"></wired-spinner>
```

## Properties

**spinning** - Is the spinner spinning. Default is *false*.

**duration** - Time in milliseconds to complete one complete spin. Default is *1500*

## Styling

Change the **color** style of the spinner element to change its color. 

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-tabs.md
================================================
# wired-tabs
Hand-drawn sketchy Tabs web component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredTabs, WiredTab } from 'wired-elements';
// or
import { WiredTabs, WiredTab } from 'wired-elements/lib/wired-tabs.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-tabs.js?module"></script>
```

Use it in your HTML:
```html
<wired-tabs selected="Two">
  <wired-tab name="One">
    <h4>Card 1</h4>
    <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
      magna aliqua.
      Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
    </p>
  </wired-tab>
  <wired-tab name="Two">
    <h4>Card 2</h4>
    <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
      magna aliqua.
      Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
    </p>
  </wired-tab>
  <wired-tab name="Three">
    <h4>Card 3</h4>
    <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
      magna aliqua.
      Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
    </p>
  </wired-tab>
</wired-tabs>
```

## WiredTabs Properties

**selected** - Name of the currently selected tab

## WiredTab Properties

**name** - Unique identifier for that tab. Used for selection. 

**label** - Text to show in the tab. Defaults to the **name** property.

## Custom CSS Variables

**--wired-item-selected-bg** Background color of the selected tab.

**--wired-item-selected-color** Text color of the selected tab.

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-textarea.md
================================================
# wired-textarea
Hand-drawn sketchy multi-line text input web component. 

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredTextarea } from 'wired-elements';
// or
import { WiredTextarea } from 'wired-elements/lib/wired-textarea.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-textarea.js?module"></script>
```

Use it in your HTML:
```html
<wired-textarea placeholder="Enter text" rows="6"></wired-textarea>
```

## Properties

**rows** - Initial number of rows in textarea.

**maxrows** - Max number of rows textarea grows to. Then scrollbars appear. 

**value** - Text value.

**disabled** - Disabled the control.

**placeholder** - Placeholder text for the input.

## Events

Fires all the events the native `<textarea>` element fires

![wired textarea](https://wiredjs.github.io/wired-elements/images/textarea.png)

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-toggle.md
================================================
# wired-toggle
Hand-drawn sketchy toggle button / switch.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredToggle } from 'wired-elements';
// or
import { WiredToggle } from 'wired-elements/lib/wired-toggle.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-toggle.js?module"></script>
```

Use it in your HTML:
```html
<wired-toggle></wired-toggle>
<wired-toggle checked></wired-toggle>
```

## Properties

**checked** - Checked state (boolean). 

**disabled** - disables the toggle button. Default value is false. 

## Custom CSS Variables

**--wired-toggle-off-color** Color of the knob when in off (false) position. Default value is *gray*.

**--wired-toggle-on-color** Color of the knob when in on (true) position. Default value is *rgb(63, 81, 181)*.

## Events
**change** event fired when state of the toggle is changed by the user.

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: docs/wired-video.md
================================================
# wired-video

A hand-drawn sketchy looking video player component.

For demo and view the complete set of wired-elememts: [wiredjs.com](http://wiredjs.com/)

## Usage

Add wired-elements to your JavaScript project:
```
npm i wired-elements
```

Import module in your code:

```javascript
import { WiredVideo } from 'wired-elements';
// or
import { WiredVideo } from 'wired-elements/lib/wired-video.js';
```

Or load directly into your HTML page:
```html
<script type="module" src="https://unpkg.com/wired-elements/lib/wired-video.js?module"></script>
```

Use it in your HTML:
```html
<wired-video autoplay muted loop src="video.mp4"></wired-video>
```

## Properties

**src** - URL of the video.

**autoplay** - Boolean value indicating if the video should auto-play

**loop** - Loop the video (boolean value)

**muted** - Play the video muted (boolean value)

**playsinline** - Play the video inline on mobile devices (boolean value)

## Custom CSS Variables

**--wired-video-highlight-color** Color of the progress bar and the knob on the volume control.



## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

================================================
FILE: examples/button.html
================================================
<html>

<head>
   <script type="module" src="../lib/wired-button.js"></script>

   <style>
      body {
         margin: 0;
         padding: 10px;
         font-family: sans-serif;
         line-height: 1.5;
      }

      #styled {
         background: yellow;
         color: red;
      }
   </style>
</head>

<body>
   <p>
      <wired-button id="btn1">Submit</wired-button>
   </p>
   <p>
      <wired-button id="btn2">Hello, world!</wired-button>
   </p>
   <p>
      <wired-button elevation="5" id="btn2">Hello, world!</wired-button>
   </p>
   <p>
      <wired-button disabled id="btn1">Submit</wired-button>
   </p>
   <p>
      <wired-button id="styled" onclick="alert('ddd');">Click me</wired-button>
   </p>
</body>

</html>

================================================
FILE: examples/calendar.html
================================================
<html>

<head>
  <meta name="viewport" content="width=device-width, initial-scale=1">

  <link href="https://fonts.googleapis.com/css?family=Gloria+Hallelujah&display=swap" rel="stylesheet">

  <script type="module" src="../lib/wired-calendar.js"></script>
  <script type="module" src="../lib/wired-button.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: 'Gloria Hallelujah', sans-serif;
      font-size: 24px;
      font-display: fallback;
      letter-spacing: 0.05em;
      line-height: 1.5;
    }

    .item_wrapper {
      margin-bottom: 30px;
      display: inline-block;
    }

    p {
      margin: 0 10px;
    }

    wired-calendar {
      margin: 10px;
    }

    wired-button {
      margin: 0 10px;
    }

    .custom {
      --wired-calendar-bg: yellow;
      --wired-calendar-color: red;
      --wired-calendar-selected-color: black;
      --wired-calendar-dimmed-color: brown;
      width: 260px;
      height: 260px;
      font-size: 18px;
    }
  </style>
</head>

<body>
  <div>
    <!-- Minimal working calendar -->
    <div class="item_wrapper">
      <p>Minimal</p>
      <wired-calendar></wired-calendar>
    </div>

    <!-- Calendar with some parameters -->
    <div class="item_wrapper">
      <p>"fr" locale</p>
      <!-- Note: parameter dates not affected by locale -->
      <wired-calendar id="calendar2" elevation="1" firstdate="Apr 15, 2019" lastdate="Jul 15, 2019"
        selected="Jul 4, 2019" locale="fr" initials>
      </wired-calendar>
    </div>

    <!-- Calendar with custom style and some parameters -->
    <div class="item_wrapper">
      <p>"de" locale</p>
      <wired-calendar id="calendar3" class="custom" firstdate="Apr 15, 2019" locale="de" initials>
      </wired-calendar>
    </div>
  </div>

  <hr>
  <!-- Calendar with javascript interactions (event and non-event driven) -->
  <section>
    <p>"es-MX" locale with javascript interactions sample (event and non-event driven)</p>
    <wired-calendar id="calendar4" elevation="5" firstdate="Apr 15, 2019" lastdate="Jul 15, 2019" locale="es-MX"
      initials>
    </wired-calendar>
    <p id="calendar4-result">Select a date in the calendar
    <p>
    <div style="margin-top: 16px;">
      <wired-button id="btn-today">Today</wired-button>
      <wired-button id="btn-update">Update</wired-button>
    </div>
    <p id="calendar4-update">No updated yet
    <p>
  </section>

  <script>
    const myCalendar4 = document.getElementById('calendar4');
    const myCalendar4result = document.getElementById('calendar4-result');
    const myCalendar4update = document.getElementById('calendar4-update');
    document.getElementById('btn-update').addEventListener('click', () => {
      const today = new Date();
      const time = today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds();
      const updateTimeLeyend = ' <small>Updated at:' + time + '</small>';

      const selectedObject = myCalendar4.value;
      if (selectedObject && selectedObject.date) {
        myCalendar4update.innerHTML = selectedObject.date.toLocaleDateString() + updateTimeLeyend;
      } else {
        myCalendar4update.innerHTML = 'No date selected yet.' + updateTimeLeyend;
      }
    });
    document.getElementById('btn-today').addEventListener('click', () => {
      let today = new Date();
      // Sample using optional internal date formatter
      formatedDate = myCalendar4.format(today);
      console.log('Set date to today = ', formatedDate);

      // Set selected date using any format accepted by javascript Date object
      myCalendar4.setSelectedDate(formatedDate);
    });
    myCalendar4.addEventListener('selected', () => {
      let selectedObject = myCalendar4.value;
      // `selectedObject.date` is a javascript Date object
      // `selectedObject.text` is the formated text of the date
      let formatedDate = selectedObject.text;
      myCalendar4result.innerHTML = formatedDate + ' <br><small>Note: Internal date handling not affected by locale.</small>';
    });

  </script>
</body>

</html>

================================================
FILE: examples/card.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-card.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-card {
      max-width: 100%;
    }

    .card-grid {
      display: grid;
      gap: 30px;
      grid-template-columns: repeat(3, 1fr);
    }
  </style>
</head>

<body>
  <div class="card-grid">
    <wired-card>
      <h4>Card 1</h4>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </p>
    </wired-card>
    <wired-card elevation="5">
      <h4>Card 2</h4>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </p>
    </wired-card>
    <wired-card>
      <h4>Card 3</h4>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </p>
    </wired-card>
    <wired-card elevation="4" fill="darkred" style="color: lightyellow;">
      <h4>Colored Card</h4>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </p>
    </wired-card>
  </div>
</body>

</html>

================================================
FILE: examples/checkbox.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-checkbox.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-checkbox {
      margin: 0 15px;
      opacity: 1;
    }

    .custom {
      color: blue;
      --wired-checkbox-icon-color: red;
    }
  </style>
</head>

<body>
  <wired-checkbox>Checkbox One</wired-checkbox>
  <wired-checkbox checked>Checkbox Two</wired-checkbox>
  <wired-checkbox disabled>Disabled checkbox</wired-checkbox>
  <wired-checkbox class="custom">Styled checkbox</wired-checkbox>
</body>

</html>

================================================
FILE: examples/combo.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-combo.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-combo {
      margin: 10px;
      --wired-item-selected-bg: darkblue;
    }
  </style>
</head>

<body>
  <wired-combo selected="two">
    <wired-item value="one">Number one</wired-item>
    <wired-item value="two">Number two</wired-item>
    <wired-item value="three">Number three</wired-item>
    <wired-item value="four">Number four</wired-item>
  </wired-combo>
  <wired-combo selected="one" disabled>
    <wired-item value="one">Disabled</wired-item>
    <wired-item value="two">Number two</wired-item>
  </wired-combo>
  <wired-combo>
    <wired-item value="one">Disabled</wired-item>
    <wired-item value="two">Number two</wired-item>
  </wired-combo>

  <div>
    <button>Check</button>
  </div>

  <script>
    document.querySelector('button').addEventListener('click', () => {
      const combos = document.querySelectorAll('wired-combo');
      combos.forEach((c) => {
        console.log(c, c.selected);
      });
    });
  </script>
</body>

</html>

================================================
FILE: examples/dialog.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-link.js"></script>
  <script type="module" src="../lib/wired-button.js"></script>
  <script type="module" src="../lib/wired-dialog.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
      font-size: 20px;
    }

    p {
      max-width: 500px;
      margin: 0 auto;
    }
  </style>
</head>

<body>
  <p>
    <wired-button id="openDialog">Show dialog</wired-button>
  </p>
  <wired-dialog>
    <p>
      This is a paragraph and here's a link about <wired-link href="./button.html">wired-button</wired-link> and well
      well
      well, what do you know, same link with more elevation <wired-link elevation="3" href="./button.html">wired-button
      </wired-link>.
      Here's another link that opens in a new tab about <wired-link href="./input.html" target="_blank">wired-input
      </wired-link>. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore
      et dolore magna aliqua.
    </p>
    <div style="text-align: right; padding: 30px 16px 16px;">
      <wired-button id="closeDialog">Close dialog</wired-button>
    </div>
  </wired-dialog>

  <script>
    document.getElementById('openDialog').addEventListener('click', () => {
      document.querySelector('wired-dialog').open = true;
    });
    document.getElementById('closeDialog').addEventListener('click', () => {
      document.querySelector('wired-dialog').open = false;
    });
  </script>
</body>

</html>

================================================
FILE: examples/divider.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-divider.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
      font-size: 20px;
    }

    main {
      max-width: 600px;
      margin: 0 auto;
    }
  </style>
</head>

<body>
  <main>
    <section>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
        consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
        pariatur.
        Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
      </p>
      <wired-divider></wired-divider>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
        consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
        pariatur.
        Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
      </p>
    </section>
  </main>
</body>

</html>

================================================
FILE: examples/fab.html
================================================
<html>

<head>
  <link href="https://fonts.googleapis.com/css?family=Material+Icons&display=block" rel="stylesheet">
  <script type="module" src="https://unpkg.com/@material/mwc-icon?module"></script>
  <script type="module" src="../lib/wired-fab.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-fab {
      margin: 0 10px;
    }

    .big {
      --wired-icon-size: 40px;
      padding: 16px;
    }

    .red {
      color: red;
    }

    .pinkbg {
      color: red;
      --wired-fab-bg-color: pink;
    }
  </style>
</head>

<body>
  <wired-fab>
    <mwc-icon>favorite</mwc-icon>
  </wired-fab>
  <wired-fab class="red">
    <mwc-icon>favorite</mwc-icon>
  </wired-fab>
  <wired-fab class="pinkbg">
    <mwc-icon>favorite</mwc-icon>
  </wired-fab>
  <wired-fab class="big">
    <mwc-icon>favorite</mwc-icon>
  </wired-fab>
  <wired-fab disabled>
    <mwc-icon>favorite</mwc-icon>
  </wired-fab>
</body>

</html>

================================================
FILE: examples/icon-button.html
================================================
<html>

<head>
  <link href="https://fonts.googleapis.com/css?family=Material+Icons&display=block" rel="stylesheet">
  <script type="module" src="https://unpkg.com/@material/mwc-icon?module"></script>
  <script type="module" src="../lib/wired-icon-button.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-icon-button {
      margin: 0 10px;
    }

    .big {
      --wired-icon-size: 40px;
      padding: 16px;
    }

    .red {
      color: red;
    }

    .pinkbg {
      color: red;
      --wired-icon-bg-color: pink;
    }
  </style>
</head>

<body>
  <wired-icon-button>
    <mwc-icon>favorite</mwc-icon>
  </wired-icon-button>
  <wired-icon-button class="red">
    <mwc-icon>favorite</mwc-icon>
  </wired-icon-button>
  <wired-icon-button class="pinkbg">
    <mwc-icon>favorite</mwc-icon>
  </wired-icon-button>
  <wired-icon-button class="big">
    <mwc-icon>favorite</mwc-icon>
  </wired-icon-button>
  <wired-icon-button disabled>
    <mwc-icon>favorite</mwc-icon>
  </wired-icon-button>
</body>

</html>

================================================
FILE: examples/image.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-image.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-image {
      margin: 20px;
    }

    .red {
      color: purple;
    }

    .sized {
      max-width: 400px;
      max-height: 400px;
    }
  </style>
</head>

<body>
  <wired-image src="https://www.gstatic.com/webp/gallery/1.sm.jpg"></wired-image>
  <wired-image elevation="4" class="red" src="https://www.gstatic.com/webp/gallery/1.sm.jpg"></wired-image>
  <wired-image src="https://www.gstatic.com/webp/gallery/4.jpg"></wired-image>
  <wired-image class="sized" elevation="5" src="https://www.gstatic.com/webp/gallery/4.jpg"></wired-image>
</body>

</html>

================================================
FILE: examples/input.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-input.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-input {
      margin: 5px 15px;
    }

    #name {
      width: 300px;
    }
  </style>
</head>

<body>
  <wired-input id="name" placeholder="Enter name"></wired-input>
  <wired-input type="password" placeholder="Password"></wired-input>
  <wired-input placeholder="Disabled" disabled></wired-input>
</body>

</html>

================================================
FILE: examples/link.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-link.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
      font-size: 20px;
    }

    p {
      max-width: 500px;
      margin: 0 auto;
    }
  </style>
</head>

<body>
  <p>
    This is a paragraph and here's a link about <wired-link href="./button.html">wired-button</wired-link> and well well
    well, what do you know, same link with more elevation <wired-link elevation="3" href="./button.html">wired-button
    </wired-link>.
    Here's another link that opens in a new tab about <wired-link href="./input.html" target="_blank">wired-input
    </wired-link>. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore
    et dolore magna aliqua.
  </p>
</body>

</html>

================================================
FILE: examples/listbox.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-item.js"></script>
  <script type="module" src="../lib/wired-listbox.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-listbox {
      margin: 5px;
      --wired-item-selected-bg: darkblue;
    }

    .customListBox {
      --wired-item-selected-bg: pink;
      --wired-item-selected-color: darkred;
    }
  </style>
</head>

<body>
  <wired-listbox selected="one">
    <wired-item value="one">No. one</wired-item>
    <wired-item value="two">No. two</wired-item>
    <wired-item value="three">No. three</wired-item>
    <wired-item value="four">No. four</wired-item>
  </wired-listbox>

  <wired-listbox horizontal class="customListBox" selected="two">
    <wired-item value="one">No. one</wired-item>
    <wired-item value="two">No. two</wired-item>
    <wired-item value="three">No. three</wired-item>
    <wired-item value="four">No. four</wired-item>
  </wired-listbox>
</body>

</html>

================================================
FILE: examples/progress-ring.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-progress-ring.js"></script>
  <script type="module" src="../lib/wired-button.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-progress-ring {
      margin: 16px 0;
    }

    #wp2 {
      --wired-progress-color: red;
    }

    wired-button {
      margin: 0 10px;
    }
  </style>
</head>

<body>
  <wired-progress-ring value="25" hideLabel></wired-progress-ring>
  <br>
  <wired-progress-ring id="wp2" min="-100" max="100" value="0"></wired-progress-ring>
  <br>
  <section style="margin-top: 16px;">
    <wired-progress-ring id="progress" showLabelAsPercent></wired-progress-ring>
    <div style="margin-top: 16px;">
      <wired-button id="btns">Start</wired-button>
      <wired-button id="btnr">Stop</wired-button>
    </div>
  </section>

  <script>
    const prog = document.getElementById('progress')
    let timer = 0;
    document.getElementById('btns').addEventListener('click', () => {
      if (timer) {
        window.clearInterval(timer);
      }
      timer = window.setInterval(() => {
        if (prog.value >= 100) {
          prog.value = 0;
        } else {
          prog.value = prog.value + 1;
        }
      }, 100);
    });
    document.getElementById('btnr').addEventListener('click', () => {
      if (timer) {
        window.clearInterval(timer);
        timer = 0;
      }
      prog.value = 0;
    });
  </script>
</body>

</html>

================================================
FILE: examples/progress.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-progress.js"></script>
  <script type="module" src="../lib/wired-button.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-progress {
      margin: 10px;
    }

    wired-button {
      margin: 0 10px;
    }

    .custom {
      --wired-progress-color: rgba(220, 0, 50, 0.1);
      --wired-progress-label-color: green;
      width: 300px;
      height: 2em;
    }
  </style>
</head>

<body>
  <wired-progress value="25"></wired-progress>
  <wired-progress value="65" percentage></wired-progress>
  <wired-progress class="custom" value="30"></wired-progress>
  <section style="margin-top: 16px;">
    <wired-progress id="progress"></wired-progress>
    <div style="margin-top: 16px;">
      <wired-button id="btns">Start</wired-button>
      <wired-button id="btnr">Stop</wired-button>
    </div>
  </section>

  <script>
    const prog = document.getElementById('progress')
    let timer = 0;
    document.getElementById('btns').addEventListener('click', () => {
      if (timer) {
        window.clearInterval(timer);
      }
      timer = window.setInterval(() => {
        if (prog.value >= 100) {
          prog.value = 0;
        } else {
          prog.value = prog.value + 1;
        }
      }, 100);
    });
    document.getElementById('btnr').addEventListener('click', () => {
      if (timer) {
        window.clearInterval(timer);
        timer = 0;
      }
      prog.value = 0;
    });
  </script>
</body>

</html>

================================================
FILE: examples/radio.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-radio.js"></script>
  <script type="module" src="../lib/wired-radio-group.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-radio {
      margin: 0 15px;
      opacity: 1;
    }

    .custom {
      color: blue;
      --wired-radio-icon-color: red;
    }
  </style>
</head>

<body>
  <wired-radio>Radio One</wired-radio>
  <wired-radio checked>Radio Two</wired-radio>
  <wired-radio disabled>Disabled Radio</wired-radio>
  <wired-radio class="custom">Styled Radio</wired-radio>

  <p></p>

  <div>
    <wired-radio-group id="rg" selected="two">
      <wired-radio name="one">One</wired-radio>
      <wired-radio name="two">Two</wired-radio>
      <wired-radio name="three">Three</wired-radio>
      <wired-radio name="four">Four</wired-radio>
    </wired-radio-group>
  </div>
</body>

</html>

================================================
FILE: examples/search-input.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-search-input.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-search-input {
      margin: 5px 15px;
    }
  </style>
</head>

<body>
  <wired-search-input placeholder="Search here"></wired-search-input>
  <wired-search-input placeholder="Disabled" disabled></wired-search-input>
</body>

</html>

================================================
FILE: examples/slider.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-slider.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-slider {
      margin: 16px 0;
      max-width: 100%;
      box-sizing: border-box;
    }

    .custom {
      width: 200px;
      --wired-slider-knob-color: green;
      --wired-slider-bar-color: blue;
    }
  </style>
</head>

<body>
  <wired-slider></wired-slider>
  <br>
  <wired-slider value="40" style="width: 600px;"></wired-slider>
  <br>
  <wired-slider value="10" min="5" max="15"></wired-slider>
  <br>
  <wired-slider value="60" disabled></wired-slider>
  <br>
  <wired-slider class="custom" value="25"></wired-slider>
</body>

</html>

================================================
FILE: examples/spinner.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-button.js"></script>
  <script type="module" src="../lib/wired-spinner.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-spinner {
      margin: 10px;
    }

    .custom {
      color: red;
    }
  </style>
</head>

<body>
  <wired-spinner id="sp"></wired-spinner>
  <wired-spinner class="custom" spinning duration="1000"></wired-spinner>

  <div style="margin-top: 30px;">
    <wired-button>Toggle</wired-button>
  </div>

  <script>
    document.querySelector('wired-button').addEventListener('click', () => {
      const sp = document.getElementById('sp');
      sp.spinning = !sp.spinning;
    });
  </script>
</body>

</html>

================================================
FILE: examples/tabs.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-tab.js"></script>
  <script type="module" src="../lib/wired-tabs.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-tabs {
      max-width: 600px;
      margin: 0 auto;
    }
  </style>
</head>

<body>
  <wired-tabs selected="Three">
    <wired-tab name="One">
      <h4>Card 1</h4>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </p>
    </wired-tab>
    <wired-tab name="Two">
      <h4>Card 2</h4>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </p>
    </wired-tab>
    <wired-tab name="Three">
      <h4>Card 3</h4>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </p>
    </wired-tab>
    <wired-tab name="Four">
      <h4>Card 4</h4>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
        magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </p>
    </wired-tab>
  </wired-tabs>
</body>

</html>

================================================
FILE: examples/textarea.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-textarea.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-textarea {
      margin: 10px 0;
      box-sizing: border-box;
      max-width: 100%;
    }
  </style>
</head>

<body>
  <wired-textarea placeholder="Enter text"></wired-textarea>
  <wired-textarea placeholder="Enter text 3 rows" rows="3"></wired-textarea>
  <wired-textarea placeholder="Enter text 6 rows" rows="6"></wired-textarea>
  <wired-textarea placeholder="Enter text 1 rows" rows="1"></wired-textarea>
  <wired-textarea disabled placeholder="disabled" rows="2"></wired-textarea>
</body>

</html>

================================================
FILE: examples/toggle.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-toggle.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    wired-toggle {
      margin: 10px;
    }

    .custom {
      --wired-toggle-off-color: red;
      --wired-toggle-on-color: green;
    }
  </style>
</head>

<body>
  <wired-toggle></wired-toggle>
  <wired-toggle class="custom" checked></wired-toggle>
  <wired-toggle disabled></wired-toggle>
</body>

</html>

================================================
FILE: examples/video.html
================================================
<html>

<head>
  <script type="module" src="../lib/wired-video.js"></script>

  <style>
    body {
      margin: 0;
      padding: 10px;
      font-family: sans-serif;
      line-height: 1.5;
    }

    .pink {
      --wired-video-highlight-color: purple;
    }
  </style>
</head>

<body>
  <p>
    <wired-video autoplay playsinline muted loop
      src="https://file-examples-com.github.io/uploads/2017/04/file_example_MP4_480_1_5MG.mp4">
    </wired-video>
  </p>
  <p>
    <wired-video class="pink" src="https://file-examples-com.github.io/uploads/2017/04/file_example_MP4_480_1_5MG.mp4">
    </wired-video>
  </p>
</body>

</html>

================================================
FILE: experimental/icon.html
================================================
<html>

<head>
  <link rel="preload" href="/node_modules/lit-element/lit-element.js" as="script" crossorigin>
  <link rel="preload" href="/node_modules/lit-html/lit-html.js" as="script" crossorigin>
  <link rel="preload" href="/packages/wired-icon/node_modules/wired-lib/lib/wired-lib.js" as="script" crossorigin>
  <link rel="preload" href="/packages/wired-icon/lib/wired-icon.js" as="script" crossorigin>

  <script type="module" src="../packages/wired-icon/lib/wired-icon.js"></script>
  <script type="module" src="../packages/wired-mat-icon/lib/wired-mat-icon.js"></script>
  <script type="module" src="../packages/wired-icon-button/lib/wired-icon-button.js"></script>

  <style>
    .icon {
      width: 70px;
      display: inline-block;
    }
    .icon-button{
      display: block;
      width: 30px;
    }
  </style>
</head>

<body>
  <h2>Wired Icon</h2>  

  <p>With paths coming from the Vaadin iconset. viewbox='-1 -1 18 18' for best results</p>
  <wired-icon class="icon"
    config='{"fill": "lightblue", "hachureGap": "1.5", "fillWeight": "0.9", "roughness": "0.3"}'>
    <svg viewbox='-1 -1 18 18'>
      <path d="M15.9 5.7l-2-3.4-3.9 2.2v-4.5h-4v4.5l-4-2.2-2 3.4 3.9 2.3-3.9 2.3 2 3.4 4-2.2v4.5h4v-4.5l3.9 2.2 2-3.4-4-2.3z"></path>
    </svg>
  </wired-icon>
  <wired-icon class="icon"
    config='{"fill": "#3B5998", "fillStyle": "zigzag", "hachureAngle": "20", "hachureGap": "1.5", "fillWeight": "0.9", "roughness": "0.1"}'>
    <svg viewbox='-1 -1 18 18'>
      <path fill="#444" d="M7.2 16v-7.5h-2v-2.7h2c0 0 0-1.1 0-2.3 0-1.8 1.2-3.5 3.9-3.5 1.1 0 1.9 0.1 1.9 0.1l-0.1 2.5c0 0-0.8 0-1.7 0-1 0-1.1 0.4-1.1 1.2 0 0.6 0-1.3 0 2h2.9l-0.1 2.7h-2.8v7.5h-2.9z"></path>
    </svg>
  </wired-icon>
  <wired-icon class="icon"
    config='{"fill": "#3B5998", "fillStyle": "zigzag", "hachureAngle": "50", "hachureGap": "1.5", "fillWeight": "0.9", "roughness": "0.1"}'>
    <svg viewbox='-1 -1 18 18'>
      <path fill="#444" d="M0 0v16h16v-16h-16zM12.9 8.4h-2.1v5.6h-2.1v-5.6h-1.5v-2h1.5c0 0 0-0.8 0-1.7 0-1.5 0.9-2.7 2.9-2.7 0.8 0 1.4 0.1 1.4 0.1v1.9c0 0-0.6 0-1.3 0s-0.8 0.3-0.8 0.9c0 0.1 0 0.1 0 0.1 0 0.2 0 0.5 0 1.4h2.1l-0.1 2z"></path>
    </svg>
  </wired-icon>
  <wired-icon class="icon"
    config='{"fill": "lightblue", "hachureGap": "1.5", "fillWeight": "0.9", "roughness": "0.1"}'>
    <svg viewbox='-1 -1 18 18'>
      <path fill="#444" d="M14 13l-4 1h-6l-4-1v-1h14z"></path>
      <path fill="#444" d="M14.7 3h-1.7v-1h-12v5c0 1.5 0.8 2.8 2 3.4v0.6h8v-0.6c0.9-0.5 1.6-1.4 1.9-2.4 0 0 0.1 0 0.1 0 2.3 0 2.9-2 3-3.5 0.1-0.8-0.5-1.5-1.3-1.5zM13 7v-3h1.7c0.1 0 0.2 0.1 0.2 0.1s0.1 0.1 0.1 0.3c-0.2 2.6-1.6 2.6-2 2.6z"></path>
    </svg>
  </wired-icon>
  <wired-icon class="icon"
    config='{"fill": "gray", "fillStyle": "cross-hatch", "hachureGap": "1.5", "fillWeight": "0.5", "roughness": "0.1"}'>
    <svg viewBox="0 0 24 24">
      <circle cx="4.5" cy="9.5" r="2.5"/>
      <circle cx="9" cy="5.5" r="2.5"/>
      <circle cx="15" cy="5.5" r="2.5"/>
      <circle cx="19.5" cy="9.5" r="2.5"/>
      <path d="M17.34 14.86c-.87-1.02-1.6-1.89-2.48-2.91-.46-.54-1.05-1.08-1.75-1.32-.11-.04-.22-.07-.33-.09-.25-.04-.52-.04-.78-.04s-.53 0-.79.05c-.11.02-.22.05-.33.09-.7.24-1.28.78-1.75 1.32-.87 1.02-1.6 1.89-2.48 2.91-1.31 1.31-2.92 2.76-2.62 4.79.29 1.02 1.02 2.03 2.33 2.32.73.15 3.06-.44 5.54-.44h.18c2.48 0 4.81.58 5.54.44 1.31-.29 2.04-1.31 2.33-2.32.31-2.04-1.3-3.49-2.61-4.8z"/>
    </svg>
  </wired-icon>
  <wired-icon class="icon"
  config='{"fill": "lightgreen", "hachureGap": "1.5", "fillWeight": "0.9", "strokeWidth": "0.8", "roughness": "0.1"}'>
    <svg viewbox='-1 -1 18 18'>
      <path fill="#444" d="M6.18 14c0 1.105-0.895 2-2 2s-2-0.895-2-2c0-1.105 0.895-2 2-2s2 0.895 2 2z"></path>
      <path fill="#444" d="M14 14c0 1.105-0.895 2-2 2s-2-0.895-2-2c0-1.105 0.895-2 2-2s2 0.895 2 2z"></path>
      <path fill="#444" d="M15.76 8.64l-3-4.53c-0.455-0.673-1.215-1.11-2.078-1.11-0.008 0-0.015 0-0.023 0l-2.659-0v-1c0-0.552-0.448-1-1-1s-1 0.448-1 1v1h-4.5c-0.828 0-1.5 0.672-1.5 1.5v8.5h1.37c0.474-1.135 1.546-1.931 2.812-2 1.278 0.072 2.345 0.868 2.81 1.978l2.188 0.021c0.474-1.135 1.546-1.931 2.812-2 1.303 0.003 2.405 0.827 2.822 1.979l1.187 0.021v-3.57c-0.001-0.294-0.090-0.568-0.243-0.795zM6.92 8.12c-0.266 1.117-1.255 1.935-2.435 1.935-1.381 0-2.5-1.119-2.5-2.5 0-1.18 0.818-2.17 1.918-2.432 0.195-0.049 0.399-0.075 0.609-0.075 1.37 0 2.48 1.11 2.48 2.48 0 0.21-0.026 0.414-0.075 0.609zM10 8v-3h0.85c0.003-0 0.006-0 0.009-0 0.777 0 1.461 0.394 1.866 0.992l1.325 2.008z"></path>
    </svg>
  </wired-icon>
  <wired-icon class="icon"
  config='{"fill": "lightblue", "hachureGap": "1.5", "fillWeight": "0.9", "strokeWidth": "0.8", "roughness": "0.1"}'>
    <svg viewbox='-1 -1 18 18'>
      <path d="M7.5 12.2c-2.3 0-4.2-1.9-4.2-4.2s1.9-4.2 4.2-4.2 4.2 1.9 4.2 4.2c0.1 2.3-1.9 4.2-4.2 4.2zM7.5 5.2c-1.5 0-2.7 1.3-2.7 2.8s1.2 2.8 2.8 2.8 2.8-1.2 2.8-2.8-1.4-2.8-2.9-2.8z"></path>
      <path d="M8 16c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8c0 1.5-0.4 3-1.2 4.2-0.3 0.5-1.1 1.2-2.3 1.2-0.8 0-1.3-0.3-1.6-0.6-0.7-0.7-0.6-1.8-0.6-1.9v-6.9h1.5v7c0 0.2 0 0.6 0.2 0.8 0 0 0.2 0.2 0.5 0.2 0.7 0 1.1-0.5 1.1-0.5 0.6-1 1-2.2 1-3.4 0-3.6-2.9-6.5-6.5-6.5s-6.6 2.8-6.6 6.4 2.9 6.5 6.5 6.5c0.7 0 1.3-0.1 1.9-0.3l0.4 1.4c-0.7 0.3-1.5 0.4-2.3 0.4z"></path>
    </svg>
  </wired-icon>
  <wired-icon class="icon"
  config='{"fill": "lightblue", "hachureGap": "1.5", "fillWeight": "0.9", "strokeWidth": "0.8", "roughness": "0.1"}'>
    <svg viewbox='0 0 24 24'>
      <path d="M22 21c-1.11 0-1.73-.37-2.18-.64-.37-.22-.6-.36-1.15-.36-.56 0-.78.13-1.15.36-.46.27-1.07.64-2.18.64s-1.73-.37-2.18-.64c-.37-.22-.6-.36-1.15-.36-.56 0-.78.13-1.15.36-.46.27-1.08.64-2.19.64-1.11 0-1.73-.37-2.18-.64-.37-.23-.6-.36-1.15-.36s-.78.13-1.15.36c-.46.27-1.08.64-2.19.64v-2c.56 0 .78-.13 1.15-.36.46-.27 1.08-.64 2.19-.64s1.73.37 2.18.64c.37.23.59.36 1.15.36.56 0 .78-.13 1.15-.36.46-.27 1.08-.64 2.19-.64 1.11 0 1.73.37 2.18.64.37.22.6.36 1.15.36s.78-.13 1.15-.36c.45-.27 1.07-.64 2.18-.64s1.73.37 2.18.64c.37.23.59.36 1.15.36v2zm0-4.5c-1.11 0-1.73-.37-2.18-.64-.37-.22-.6-.36-1.15-.36-.56 0-.78.13-1.15.36-.45.27-1.07.64-2.18.64s-1.73-.37-2.18-.64c-.37-.22-.6-.36-1.15-.36-.56 0-.78.13-1.15.36-.45.27-1.07.64-2.18.64s-1.73-.37-2.18-.64c-.37-.22-.6-.36-1.15-.36s-.78.13-1.15.36c-.47.27-1.09.64-2.2.64v-2c.56 0 .78-.13 1.15-.36.45-.27 1.07-.64 2.18-.64s1.73.37 2.18.64c.37.22.6.36 1.15.36.56 0 .78-.13 1.15-.36.45-.27 1.07-.64 2.18-.64s1.73.37 2.18.64c.37.22.6.36 1.15.36s.78-.13 1.15-.36c.45-.27 1.07-.64 2.18-.64s1.73.37 2.18.64c.37.22.6.36 1.15.36v2zM8.67 12c.56 0 .78-.13 1.15-.36.46-.27 1.08-.64 2.19-.64 1.11 0 1.73.37 2.18.64.37.22.6.36 1.15.36s.78-.13 1.15-.36c.12-.07.26-.15.41-.23L10.48 5C8.93 3.45 7.5 2.99 5 3v2.5c1.82-.01 2.89.39 4 1.5l1 1-3.25 3.25c.31.12.56.27.77.39.37.23.59.36 1.15.36z"/>
      <circle cx="16.5" cy="5.5" r="2.5"/>
    </svg>
  </wired-icon>
  <wired-icon class="icon"
  config='{"fill": "lightblue", "hachureGap": "1.5", "fillWeight": "0.9", "strokeWidth": "0.8", "roughness": "0.2"}'>
    <svg viewbox='0 0 24 24'>
      <rect x="3" y="8" width="18" height="13"></rect>
      <rect x="1" y="3" width="22" height="5"></rect>
      <line x1="10" y1="12" x2="14" y2="12"></line>
    </svg>
  </wired-icon>
  <wired-icon class="icon"
  config='{"fill": "lightblue", "hachureGap": "1.5", "fillWeight": "0.9", "strokeWidth": "0.8", "roughness": "0.2"}'>
  <svg viewbox='0 0 24 24'>
    <polygon points="21 8 21 21 3 21 3 8"></polygon>
  </svg>
  </wired-icon>
  <wired-icon config='{"fill": "gray", "hachureGap": "1"}'>
    <svg width="26" height="24" viewBox="0 0 26 24" id="ic_signal_wifi_statusbar_connected_no_internet_2_26x24px">
      <path fill-opacity=".3" d="M24.24 8l1.35-1.68C25.1 5.96 20.26 2 13 2S.9 5.96.42 6.32l12.57 15.66.01.02.01-.01L20 13.28V8h4.24z"/>
      <path d="M5.45 12.59l7.54 9.4.01.01.01-.01L20 13.28v-1.09c-1.07-.73-3.59-2.19-7-2.19-4.36 0-7.26 2.38-7.55 2.59zM22 10v8h2v-8h-2zm0 12h2v-2h-2v2z"/>
      </svg>
  </wired-icon>
  <br>
  <hr>

  <h2>Wired Mat Icon</h2>
  <wired-mat-icon class="icon" icon="audiotrack">
  </wired-mat-icon>
  <span>Default (roughness = 0.1)</span>
  <br>
  
  <wired-mat-icon class="icon" icon="settings" config='{"fill": "red", "hachureGap": "1"}'>
  </wired-mat-icon>
  <span>{"fill": "red", "hachureGap": "1"}</span>
  <br>
  
  <wired-mat-icon class="icon" icon="android"
    config='{"fillStyle": "zigzag", "fill": "green", "hachureGap": "1.5", "fillWeight": "0.9"}'>
  </wired-mat-icon>
  <span>{"fillStyle": "zigzag", "fill": "green", "hachureGap": "1.5", "fillWeight": "0.9"}</span>
  <br>

  <wired-mat-icon class="icon" icon="computer"
    config='{"stroke": "transparent", "fill": "black", "fillStyle": "solid"}'>
  </wired-mat-icon>
  <span>{"stroke": "transparent", "fill": "black", "fillStyle": "solid"}</span>
  <br>

  <wired-mat-icon class="icon" icon="account_box"
    config='{"stroke": "transparent", "fill": "red", "fillStyle": "zigzag", "hachureGap": "1.5", "fillWeight": "0.9"}'>
  </wired-mat-icon>
  <span>{"stroke": "transparent", "fill": "red", "fillStyle": "zigzag", "hachureGap": "1.7", "fillWeight": "0.8"}</span>
  <br>

  <hr>
  <h2>With Wired Icon button</h2>
  <wired-icon-button elevation="5">
    <wired-mat-icon icon="edit"
      class="icon-button"
      config='{"strokeWidth": "0.3", "fillWeight": "0.8", "hachureAngle": "20", "fill": "gray"}'
    ></wired-mat-icon>
  </wired-icon-button>
  <wired-icon-button elevation="5">
    <wired-icon
      class="icon-button"
      config='{"strokeWidth": "0.3", "fill": "blue", "fillStyle": "cross-hatch"}'
    >
    <svg viewbox="-1 -1 18 18">
      <path d="M9 11h-3c0-3 1.6-4 2.7-4.6 0.4-0.2 0.7-0.4 0.9-0.6 0.5-0.5 0.3-1.2 0.2-1.4-0.3-0.7-1-1.4-2.3-1.4-2.1 0-2.5 1.9-2.5 2.3l-3-0.4c0.2-1.7 1.7-4.9 5.5-4.9 2.3 0 4.3 1.3 5.1 3.2 0.7 1.7 0.4 3.5-0.8 4.7-0.5 0.5-1.1 0.8-1.6 1.1-0.9 0.5-1.2 1-1.2 2z"></path>
      <path d="M9.5 14c0 1.105-0.895 2-2 2s-2-0.895-2-2c0-1.105 0.895-2 2-2s2 0.895 2 2z"></path>
    </svg>
  </wired-icon>
  </wired-icon-button>
  
</body>

</html>


================================================
FILE: experimental/iconset-generator.html
================================================
<html>

<head>
  <script type="module">
      import {ICON_SET} from  "../packages/wired-mat-icon/lib/iconset/iconset-full.js";

      window.ICON_SET = ICON_SET;
  </script>
  <script type="module" src="../packages/wired-input/lib/wired-input.js"></script>
  <script type="module" src="../packages/wired-button/lib/wired-button.js"></script>
  <script type="module" src="../packages/wired-card/lib/wired-card.js"></script>

  <style>
    wired-card {
        display: block;
        width: 80%;
        margin: 1em;
    }
  </style>
</head>

<body>
    <wired-input id="input" placeholder="Enter icon name"></wired-input>
    <wired-button onclick="getPath()">Get Path</wired-button>
    <wired-card>
        <h4>Corresponding Path:</h4>
        <p id="result">
          No path found.
        </p>
      </wired-card>
    <script>
        function getPath() {
            const input = document.getElementById('input');
            const result = document.getElementById('result');

            const path = window.ICON_SET[input.value];
            result.innerHTML = path || 'No path found.';
        }
    </script>
</body>

</html>


================================================
FILE: experimental/wired-icon/README.md
================================================
# wired-icon

WebComponent which allows you to easily create Hand drawn version of any SVG Icon!

![image](https://user-images.githubusercontent.com/7101875/78978100-8391f100-7b19-11ea-943f-2842e2b5ea44.png)

This library is the base for the other library **wired-mat-icon**.

For the complete set of wired-elements: [wiredjs.com](http://wiredjs.com/)

## Installation
Simply Add wired-icon to your project:
```
npm i wired-icon
```
## Wired Icon for flexibility!
Wired Icon is converting any svg into its hand drawn, sketchy version.

### Usage
Import wired-icon definition into your HTML page:
```html
<script type="module" src="wired-icon/lib/wired-icon.js"></script>
```
Or into your module script:
```javascript
import "wired-icon";
```

Use it in your web page:
```html
<wired-icon
  config='{"fillStyle": "zigzag", "fill": "#A4C639", "hachureGap": "1.5", "fillWeight": "0.9"}'>
  <svg width="70" height="70" viewBox="-1 -1 24 26">
    <path d="M6 18c0 .55.45 1 1 1h1v3.5c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5V19h2v3.5c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5V19h1c.55 0 1-.45 1-1V8H6v10zM3.5 8C2.67 8 2 8.67 2 9.5v7c0 .83.67 1.5 1.5 1.5S5 17.33 5 16.5v-7C5 8.67 4.33 8 3.5 8zm17 0c-.83 0-1.5.67-1.5 1.5v7c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5v-7c0-.83-.67-1.5-1.5-1.5zm-4.97-5.84l1.3-1.3c.2-.2.2-.51 0-.71-.2-.2-.51-.2-.71 0l-1.48 1.48A5.84 5.84 0 0 0 12 1c-.96 0-1.86.23-2.66.63L7.85.15c-.2-.2-.51-.2-.71 0-.2.2-.2.51 0 .71l1.31 1.31A5.983 5.983 0 0 0 6 7h12c0-1.99-.97-3.75-2.47-4.84zM10 5H9V4h1v1zm5 0h-1V4h1v1z"/>
  </svg>
</wired-icon>
```

### Properties / Attributes

**config** - Optional object to configure the effect. You can refer to the complete list on [roughjs wiki](https://github.com/pshihn/rough/wiki#options). You can also see the examples for inspiration.
Default rougness is set to 0.1, which seems to be the most appropriate value most of the time for icons.

## Ligth DOM

### Supported elements
You must provide the elements you want to convert inside an svg tag, with only one level of depth.
Valid light DOM:
```html
<svg viewbox='0 0 24 24'>
  <rect x="3" y="8" width="18" height="13"></rect>
  <rect x="1" y="3" width="22" height="5"></rect>
  <line x1="10" y1="12" x2="14" y2="12"></line>
</svg>
```

Invalid light DOM n°1 (no SVG tag to wrap the element):
```html
<circle cx="16.5" cy="5.5" r="2.5"/>
```

Invalid light DOM n°2 (the <rect> elements inside the <g> element won't be transformed):
```html
<svg viewbox='0 0 24 24'>
  <g>
    <rect x="3" y="8" width="18" height="13"></rect>
    <rect x="1" y="3" width="22" height="5"></rect>
  </g>
  <line x1="10" y1="12" x2="14" y2="12"></line>
</svg>
```

Wired Icon is able to transform the following svg tags:
 - circle
 - ellipse
 - line
 - path
 - polygon
 - polyline (/!\ will be same result as polygon)
 - rect
Any other tag will be included "as is" in the converted svg.

### SVG icon sources

Here is an opinionated & non exhaustive list of high quality and free icons which are compatible with wired-icon:

**Google** - [Material Design SVG Icon Repo](https://github.com/google/material-design-icons/blob/master/sprites/svg-sprite). Also check wired-mat-icon to speed up tests!

**Vaadin** - [Vaadin Icons](https://vaadin.com/components/vaadin-icons/html-examples)

## Styling
You can define CSS width and height on the wired-icon element or on the svg tag to scale it.
To change color, prefere the config properties.


## Extra flavours

### Use inside a wired-button

Of course you can use Wired Icon inside a Wired Button!

```html
<style>
  .icon-button{
    display: block;
    width: 30px;
  }
</style>
<wired-icon-button elevation="5">
  <wired-icon
    class="icon-button"
    config='{"strokeWidth": "0.3", "fill": "blue", "fillStyle": "cross-hatch"}'
  >
    <svg viewbox="-1 -1 18 18">
      <path d="M9 11h-3c0-3 1.6-4 2.7-4.6 0.4-0.2 0.7-0.4 0.9-0.6 0.5-0.5 0.3-1.2 0.2-1.4-0.3-0.7-1-1.4-2.3-1.4-2.1 0-2.5 1.9-2.5 2.3l-3-0.4c0.2-1.7 1.7-4.9 5.5-4.9 2.3 0 4.3 1.3 5.1 3.2 0.7 1.7 0.4 3.5-0.8 4.7-0.5 0.5-1.1 0.8-1.6 1.1-0.9 0.5-1.2 1-1.2 2z"/>
      <path d="M9.5 14c0 1.105-0.895 2-2 2s-2-0.895-2-2c0-1.105 0.895-2 2-2s2 0.895 2 2z"/>
    </svg>
  </wired-icon>
</wired-icon-button>
```

## Accessibility

We recommand specifying an aria label in your svg for accessibility. Here is how to procede:

```html
<wired-icon class="icon"
    config='{"fill": "gray", "fillStyle": "cross-hatch", "hachureGap": "1.5", "fillWeight": "0.5", "roughness": "0.1"}'>
    <svg viewBox="0 0 24 24" aria-labelledby="icon-label">
      <title id="icon-label">Icon of a pet footprint</title>
      <circle cx="4.5" cy="9.5" r="2.5"/>
      <circle cx="9" cy="5.5" r="2.5"/>
      <circle cx="15" cy="5.5" r="2.5"/>
      <circle cx="19.5" cy="9.5" r="2.5"/>
      <path d="M17.34 14.86c-.87-1.02-1.6-1.89-2.48-2.91-.46-.54-1.05-1.08-1.75-1.32-.11-.04-.22-.07-.33-.09-.25-.04-.52-.04-.78-.04s-.53 0-.79.05c-.11.02-.22.05-.33.09-.7.24-1.28.78-1.75 1.32-.87 1.02-1.6 1.89-2.48 2.91-1.31 1.31-2.92 2.76-2.62 4.79.29 1.02 1.02 2.03 2.33 2.32.73.15 3.06-.44 5.54-.44h.18c2.48 0 4.81.58 5.54.44 1.31-.29 2.04-1.31 2.33-2.32.31-2.04-1.3-3.49-2.61-4.8z"/>
    </svg>
  </wired-icon>
```

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

#### Contributor

Adrien Pennamen


================================================
FILE: experimental/wired-icon/package.json
================================================
{
  "name": "wired-icon",
  "version": "0.0.1",
  "description": "Sketchy version of material icon",
  "keywords": [
    "icon",
    "icons",
    "material",
    "wired"
  ],
  "author": "apennamen <adrien.pennamen@gmail.com>",
  "homepage": "https://github.com/wiredjs/wired-elements/tree/master/packages/wired-icon#readme",
  "license": "MIT",
  "main": "lib/wired-icon.js",
  "directories": {
    "lib": "lib"
  },
  "files": [
    "lib"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/apennamen/wired-elements.git"
  },
  "scripts": {
    "build": "rm -rf lib && tsc",
    "tsc:watch": "tsc --watch"
  },
  "bugs": {
    "url": "https://github.com/apennamen/wired-elements/issues"
  },
  "dependencies": {
    "lit-element": "^2.3.1",
    "wired-lib": "^2.0.0"
  }
}

================================================
FILE: experimental/wired-icon/src/WiredIcon.ts
================================================
import { Options, wiredSvg } from 'wired-lib/lib/wired-lib';
import { LitElement, css, CSSResult, property } from 'lit-element';

const DEFAULT_CONFIG: Options = { 
  roughness: 0.1,
};

export class WiredIcon extends LitElement {
  @property({ type: Object, reflect: true }) config: Options = DEFAULT_CONFIG;

  static get styles(): CSSResult {
      return css`
          :host {
              display: block;
          }
        `;
  }

  connectedCallback() {
    super.connectedCallback();
    const svg = this.querySelector('svg');
    if (svg) {
      wiredSvg(svg, {...DEFAULT_CONFIG, ...this.config});
    }
  }

  createRenderRoot() {
    // No use for shadow DOM
    return this;
  }
}


================================================
FILE: experimental/wired-icon/src/wired-icon.ts
================================================
import { customElement } from 'lit-element';
import { WiredIcon } from './WiredIcon';

// We separate the class from its registration as a custom element,
// so that WiredIcon class can be extended.
// Otherwise, CustomElementRegistry would register it twice and would throw an error.
window.customElements.get('wired-icon') || customElement('wired-icon')(WiredIcon);

export { WiredIcon };


================================================
FILE: experimental/wired-icon/tsconfig.json
================================================
{
  "extends": "../../tsconfig.json",
  "compilerOptions": {
    "outDir": "./lib"
  },
  "include": [
    "./src"
  ]
}


================================================
FILE: experimental/wired-mat-icon/CONTRIBUTING.md
================================================
# FAQ for maintaining wired-mat-icon
## How to generate the iconset-full.ts ?
Go to the generate folder and run:
`npm run generate`

It should launch a web server on port 5000
Go to http://localhost:5000, and you should have a textarea with the content of iconset-full.ts

## What is the file not_converted.svg ?
Some of the original SVG had more than just a simple path element.
Therefore they were not compatible with rouhjs path, or it would have been a lot more code just to support those few icons. So they lie there, waiting for someone to find a solution for them :)

Some were also having a different viewbox '0 0 26 24' instead of '0 0 24 24'.. Not worth the added code !


================================================
FILE: experimental/wired-mat-icon/README.md
================================================
# wired-mat-icon

WebComponent which allows you to easily create Hand drawn version of Material Icons!

![image](https://user-images.githubusercontent.com/7101875/78978100-8391f100-7b19-11ea-943f-2842e2b5ea44.png)

Warning: This library will likely have a big impact on your bundle. Have fun with it, and consider optimizing with wired-icon component when you ship to production :)

## Installation
Simply Add wired-mat-icon to your project:
```
npm i wired-mat-icon
```

## Wired Material Icon for fun!
As you can have a hard time finding the right svg path, we bundled almost all the material icons in an iconset, that ships with the library! You can refer to the complete list on the website of [material.io](https://material.io/resources/icons/).

### Usage
Import wired-mat-icon definition into your HTML page:
```html
<script type="module" src="wired-mat-icon/lib/wired-mat-icon.js"></script>
```
Or into your module script:
```javascript
import "wired-mat-icon";
```

Use it in your web page:
```html
<wired-mat-icon
  icon="android"
  config='{"fillStyle": "zigzag", "fill": "#3B5998", "hachureGap": "1.5", "fillWeight": "0.9"}'>
</wired-mat-icon>
```

### Properties / Attributes

**icon** - String representing a material icon. Refer to the complete list on [material.io](https://material.io/resources/icons/). It is also used for the aria label if the aria property is not defined. Note that if path is defined, this property will be ignored.

**config** - Optional object to configure the effect. You can refer to the complete list on [roughjs wiki](https://github.com/pshihn/rough/wiki#options). You can also see the examples for inspiration.
Default rougness is set to 0.1, which seems to be the appropriate value most of the time.


## Styling
You can define CSS width and height on the wired-mat-icon element to scale it.
To change color, use the config property.


## Extra flavours
### Material Look
You can have the material look with the following config:
```javascript
const matConfig = {stroke: "transparent", fill: "black", fillStyle: "solid"};
```
```html
<wired-mat-icon icon="laptop" config=${JSON.stringify(matConfig)}></wired-mat-icon>
```

### Use inside a wired-button
You can use Wired Material Icon inside a Wired Button \o/
```html
<wired-icon-button elevation="5">
  <wired-mat-icon icon="autorenew"
    config='{"strokeWidth": "0.3", "fill": "black"}'
  ></wired-mat-icon>
</wired-icon-button>
```

### Use with JavaScript
For example, inside a view or a custom webcomponent, you could use the properties of the wired-icon web component to handle it programatically. Property changes are reflected on the attributes.
```html
<wired-mat-icon id="modifyme"></wired-mat-icon>
```
```javascript
customElements.whenDefined('wired-mat-icon').then(() => {
  const wiredMatIcon = document.getElementById('modifyme');
  wiredMatIcon.icon = 'flash_on';
  wiredMatIcon.config = {fill: 'red', fillWeight: 1};
});
```

## Troubleshooting
### I did everything right but the icon won't render, HELP !
1. Try to set a fixed width/height with CSS on the web component. If it's Bounding Client Rect is 0, the component won't event bother rendering ;)
2. Some few icons couldn't be included for weird technical reasons. Here is the list:
__signal_wifi_statusbar_1_bar, signal_wifi_statusbar_2_bar, signal_wifi_statusbar_3_bar, signal_wifi_statusbar_4_bar, signal_wifi_statusbar_connected_no_internet_1, signal_wifi_statusbar_connected_no_internet, signal_wifi_statusbar_connected_no_internet_2, signal_wifi_statusbar_connected_no_internet_3, signal_wifi_statusbar_connected_no_internet_4, signal_wifi_statusbar_not_connected, signal_wifi_statusbar_null, fiber_manual_record, fiber_smart_record, pets, bubble_chart, brightness_1, pool__
3. Ask for help in an issue!

## License
[MIT License](https://github.com/rough-stuff/wired-elements/blob/master/LICENSE) (c) [Preet Shihn](https://twitter.com/preetster)

#### Contributor

Adrien Pennamen


================================================
FILE: experimental/wired-mat-icon/generate/index.html
================================================
<!doctype html>
<html lang="en">
<body>
<style>
	object {
		visibility: hidden;
		height: 0px;
		width: 0px;
	}
</style>
<object data="actions.svg" type="image/svg+xml"></object>
<object data="alert.svg" type="image/svg+xml"></object>
<object data="av.svg" type="image/svg+xml"></object>
<object data="communication.svg" type="image/svg+xml"></object>
<object data="content.svg" type="image/svg+xml"></object>
<object data="device.svg" type="image/svg+xml"></object>
<object data="editor.svg" type="image/svg+xml"></object>
<object data="file.svg" type="image/svg+xml"></object>
<object data="hardware.svg" type="image/svg+xml"></object>
<object data="image.svg" type="image/svg+xml"></object>
<object data="maps.svg" type="image/svg+xml"></object>
<object data="navigation.svg" type="image/svg+xml"></object>
<object data="notification.svg" type="image/svg+xml"></object>
<object data="places.svg" type="image/svg+xml"></object>
<object data="social.svg" type="image/svg+xml"></object>

<p>Write the content of this textarea to file iconset-full.ts</p>
<textarea id="result" style="width: 100%; height:200px;"></textarea>

<script>
	const resultArea = document.getElementById('result');
	resultArea.value = "import { SvgIconSet } from './index';export const ICON_SET: SvgIconSet = {";
	const source = document.getElementsByTagName('object');
	let counter = 0;

	const retrievePaths = function(object) {
		counter++;
		const icons = object.contentDocument.firstElementChild.getElementsByTagName('svg');
		
		// All the id in the doc follow this format
		const regex = /ic_(.*)_24px/;
		// We want to retrieve the following attributes from the svg
		// The viewBox attribute is (*almost*) always "0 0 24 24" so we don't take it
		// Width and height are always 24 so we don't take them
		// x and y attributes are not interesting... 
		// So finally all we want is the path :) 
		const result = {};

		for (icon of icons) {
			const id = regex.exec(icon.getAttribute('id'))[1];
			result[id] = icon.lastElementChild.getAttribute('d');
		}
		
		let stringValue = JSON.stringify(result);
		stringValue = stringValue.substring(1, stringValue.length -1);

		if (counter === source.length) {
			stringValue += '};';
		} else {
			stringValue += ',';
		}
		resultArea.value += stringValue;
	}

	for (let object of source) {
		object.addEventListener('load', () => retrievePaths(object))
	}

</script>
</body>
</html>


================================================
FILE: experimental/wired-mat-icon/package.json
================================================
{
  "name": "wired-mat-icon",
  "version": "0.0.1",
  "description": "Sketchy material icon component and iconset",
  "keywords": [
    "Wired",
    "material",
    "icon"
  ],
  "author": "apennamen <adrien.pennamen@gmail.com>",
  "homepage": "https://github.com/wiredjs/wired-elements/tree/master/packages/wired-mat-icon#readme",
  "license": "MIT",
  "main": "lib/wired-mat-icon.js",
  "directories": {
    "lib": "lib",
    "test": "__tests__"
  },
  "files": [
    "lib"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/wiredjs/wired-elements.git"
  },
  "scripts": {
    "build": "rm -rf lib && tsc",
    "tsc:watch": "tsc --watch",
    "generate": "serve ./generate"
  },
  "bugs": {
    "url": "https://github.com/wiredjs/wired-elements/issues"
  },
  "dependencies": {
    "lit-element": "^2.3.1",
    "wired-icon": "^0.0.1"
  },
  "devDependencies": {
    "serve": "^11.3.0"
  }
}

================================================
FILE: experimental/wired-mat-icon/src/WiredMatIcon.ts
================================================
import { property, LitElement, html, TemplateResult, css } from 'lit-element';
import 'wired-icon';
import { iconsetLoader } from './iconset';
import { ICON_SET } from './iconset/iconset-full';

const findSvgPath = iconsetLoader(ICON_SET);

export class WiredMatIcon extends LitElement {
static get styles() {
  return css`
    :host {
      display: block;
    }
  `;
}

  private _icon: string = '';
  private _path: string = '';

  @property({ type: Object, reflect: true }) config: Object = {};

  @property({ type: String, reflect: true })
  get icon(): string {
    return this._icon;
  }

  set icon(value: string) {
    this._icon = value;
    this._path = findSvgPath(this.icon);
  }

  render(): TemplateResult {
    return html`
      <wired-icon .config=${this.config}>
        <svg viewbox="-1 -1 24 26" aria-labelledby="title">
          <title id="title">${this.icon}</title>
          <path d="${this._path}"/>
        </svg>
      </wired-icon>
    `;
  }
}


================================================
FILE: experimental/wired-mat-icon/src/iconset/iconset-full.ts
================================================
import { SvgIconSet } from './index';
export const ICON_SET: SvgIconSet = {"adb":"M5 16c0 3.87 3.13 7 7 7s7-3.13 7-7v-4H5v4zM16.12 4.37l2.1-2.1-.82-.83-2.3 2.31C14.16 3.28 13.12 3 12 3s-2.16.28-3.09.75L6.6 1.44l-.82.83 2.1 2.1C6.14 5.64 5 7.68 5 10v1h14v-1c0-2.32-1.14-4.36-2.88-5.63zM9 9c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm6 0c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z","airline_seat_flat":"M22 11v2H9V7h9a4 4 0 0 1 4 4zM2 14v2h6v2h8v-2h6v-2H2zm5.14-1.9a3 3 0 0 0-.04-4.24 3 3 0 0 0-4.24.04 3 3 0 0 0 .04 4.24 3 3 0 0 0 4.24-.04z","airline_seat_flat_angled":"M22.25 14.29l-.69 1.89L9.2 11.71l2.08-5.66 8.56 3.09a4 4 0 0 1 2.41 5.15zM1.5 12.14L8 14.48V19h8v-1.63L20.52 19l.69-1.89-19.02-6.86-.69 1.89zm5.8-1.94a3.01 3.01 0 0 0 1.41-4A3.005 3.005 0 0 0 4.7 4.8a2.99 2.99 0 0 0-1.4 4 2.99 2.99 0 0 0 4 1.4z","airline_seat_individual_suite":"M7 13c1.65 0 3-1.35 3-3S8.65 7 7 7s-3 1.35-3 3 1.35 3 3 3zm12-6h-8v7H3V7H1v10h22v-6a4 4 0 0 0-4-4z","airline_seat_legroom_extra":"M4 12V3H2v9c0 2.76 2.24 5 5 5h6v-2H7c-1.66 0-3-1.34-3-3zm18.83 5.24c-.38-.72-1.29-.97-2.03-.63l-1.09.5-3.41-6.98a2.01 2.01 0 0 0-1.79-1.12L11 9V3H5v8c0 1.66 1.34 3 3 3h7l3.41 7 3.72-1.7c.77-.36 1.1-1.3.7-2.06z","airline_seat_legroom_normal":"M5 12V3H3v9c0 2.76 2.24 5 5 5h6v-2H8c-1.66 0-3-1.34-3-3zm15.5 6H19v-7c0-1.1-.9-2-2-2h-5V3H6v8c0 1.65 1.35 3 3 3h7v7h4.5c.83 0 1.5-.67 1.5-1.5s-.67-1.5-1.5-1.5z","airline_seat_legroom_reduced":"M19.97 19.2c.18.96-.55 1.8-1.47 1.8H14v-3l1-4H9c-1.65 0-3-1.35-3-3V3h6v6h5c1.1 0 2 .9 2 2l-2 7h1.44c.73 0 1.39.49 1.53 1.2zM5 12V3H3v9c0 2.76 2.24 5 5 5h4v-2H8c-1.66 0-3-1.34-3-3z","airline_seat_recline_extra":"M5.35 5.64c-.9-.64-1.12-1.88-.49-2.79a2.01 2.01 0 0 1 2.79-.49c.9.64 1.12 1.88.49 2.79-.64.9-1.88 1.12-2.79.49zM16 19H8.93a2.99 2.99 0 0 1-2.96-2.54L4 7H2l1.99 9.76A5.01 5.01 0 0 0 8.94 21H16v-2zm.23-4h-4.88l-1.03-4.1c1.58.89 3.28 1.54 5.15 1.22V9.99c-1.63.31-3.44-.27-4.69-1.25L9.14 7.47c-.23-.18-.49-.3-.76-.38a2.21 2.21 0 0 0-.99-.06h-.02a2.268 2.268 0 0 0-1.84 2.61l1.35 5.92A3.008 3.008 0 0 0 9.83 18h6.85l3.82 3 1.5-1.5-5.77-4.5z","airline_seat_recline_normal":"M7.59 5.41c-.78-.78-.78-2.05 0-2.83.78-.78 2.05-.78 2.83 0 .78.78.78 2.05 0 2.83-.79.79-2.05.79-2.83 0zM6 16V7H4v9c0 2.76 2.24 5 5 5h6v-2H9c-1.66 0-3-1.34-3-3zm14 4.07L14.93 15H11.5v-3.68c1.4 1.15 3.6 2.16 5.5 2.16v-2.16c-1.66.02-3.61-.87-4.67-2.04l-1.4-1.55c-.19-.21-.43-.38-.69-.5-.29-.14-.62-.23-.96-.23h-.03C8.01 7 7 8.01 7 9.25V15c0 1.66 1.34 3 3 3h5.07l3.5 3.5L20 20.07z","bluetooth_audio":"M14.24 12.01l2.32 2.32c.28-.72.44-1.51.44-2.33 0-.82-.16-1.59-.43-2.31l-2.33 2.32zm5.29-5.3l-1.26 1.26c.63 1.21.98 2.57.98 4.02s-.36 2.82-.98 4.02l1.2 1.2a9.936 9.936 0 0 0 1.54-5.31c-.01-1.89-.55-3.67-1.48-5.19zm-3.82 1L10 2H9v7.59L4.41 5 3 6.41 8.59 12 3 17.59 4.41 19 9 14.41V22h1l5.71-5.71-4.3-4.29 4.3-4.29zM11 5.83l1.88 1.88L11 9.59V5.83zm1.88 10.46L11 18.17v-3.76l1.88 1.88z","confirmation_number":"M22 10V6a2 2 0 0 0-2-2H4c-1.1 0-1.99.89-1.99 2v4c1.1 0 1.99.9 1.99 2s-.89 2-2 2v4c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2v-4c-1.1 0-2-.9-2-2s.9-2 2-2zm-9 7.5h-2v-2h2v2zm0-4.5h-2v-2h2v2zm0-4.5h-2v-2h2v2z","disc_full":"M20 16h2v-2h-2v2zm0-9v5h2V7h-2zM10 4c-4.42 0-8 3.58-8 8s3.58 8 8 8 8-3.58 8-8-3.58-8-8-8zm0 10c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z","do_not_disturb":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8 0-1.85.63-3.55 1.69-4.9L16.9 18.31A7.902 7.902 0 0 1 12 20zm6.31-3.1L7.1 5.69A7.902 7.902 0 0 1 12 4c4.42 0 8 3.58 8 8 0 1.85-.63 3.55-1.69 4.9z","do_not_disturb_alt":"M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zM4 12c0-4.4 3.6-8 8-8 1.8 0 3.5.6 4.9 1.7L5.7 16.9A7.88 7.88 0 0 1 4 12zm8 8c-1.8 0-3.5-.6-4.9-1.7L18.3 7.1C19.4 8.5 20 10.2 20 12c0 4.4-3.6 8-8 8z","do_not_disturb_off":"M17 11v2h-1.46l4.68 4.68A9.92 9.92 0 0 0 22 12c0-5.52-4.48-10-10-10-2.11 0-4.07.66-5.68 1.78L13.54 11H17zM2.27 2.27L1 3.54l2.78 2.78A9.92 9.92 0 0 0 2 12c0 5.52 4.48 10 10 10 2.11 0 4.07-.66 5.68-1.78L20.46 23l1.27-1.27L11 11 2.27 2.27zM7 13v-2h1.46l2 2H7z","do_not_disturb_on":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11H7v-2h10v2z","drive_eta":"M18.92 5.01C18.72 4.42 18.16 4 17.5 4h-11c-.66 0-1.21.42-1.42 1.01L3 11v8c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1h12v1c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-8l-2.08-5.99zM6.5 15c-.83 0-1.5-.67-1.5-1.5S5.67 12 6.5 12s1.5.67 1.5 1.5S7.33 15 6.5 15zm11 0c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM5 10l1.5-4.5h11L19 10H5z","enhanced_encryption":"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM8.9 6c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1v2H8.9V6zM16 16h-3v3h-2v-3H8v-2h3v-3h2v3h3v2z","event_available":"M16.53 11.06L15.47 10l-4.88 4.88-2.12-2.12-1.06 1.06L10.59 17l5.94-5.94zM19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11z","event_busy":"M9.31 17l2.44-2.44L14.19 17l1.06-1.06-2.44-2.44 2.44-2.44L14.19 10l-2.44 2.44L9.31 10l-1.06 1.06 2.44 2.44-2.44 2.44L9.31 17zM19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11z","event_note":"M17 10H7v2h10v-2zm2-7h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zm-5-5H7v2h7v-2z","folder_special":"M20 6h-8l-2-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-2.06 11L15 15.28 12.06 17l.78-3.33-2.59-2.24 3.41-.29L15 8l1.34 3.14 3.41.29-2.59 2.24.78 3.33z","live_tv":"M21 6h-7.59l3.29-3.29L16 2l-4 4-4-4-.71.71L10.59 6H3a2 2 0 0 0-2 2v12c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V8a2 2 0 0 0-2-2zm0 14H3V8h18v12zM9 10v8l7-4z","mms":"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM5 14l3.5-4.5 2.5 3.01L14.5 8l4.5 6H5z","more":"M22 3H7c-.69 0-1.23.35-1.59.88L0 12l5.41 8.11c.36.53.97.89 1.66.89H22c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 13.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zm5 0c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zm5 0c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5z","network_check":"M15.9 5c-.17 0-.32.09-.41.23l-.07.15-5.18 11.65c-.16.29-.26.61-.26.96 0 1.11.9 2.01 2.01 2.01.96 0 1.77-.68 1.96-1.59l.01-.03L16.4 5.5c0-.28-.22-.5-.5-.5zM1 9l2 2c2.88-2.88 6.79-4.08 10.53-3.62l1.19-2.68C9.89 3.84 4.74 5.27 1 9zm20 2l2-2a15.367 15.367 0 0 0-5.59-3.57l-.53 2.82c1.5.62 2.9 1.53 4.12 2.75zm-4 4l2-2c-.8-.8-1.7-1.42-2.66-1.89l-.55 2.92c.42.27.83.59 1.21.97zM5 13l2 2a7.1 7.1 0 0 1 4.03-2l1.28-2.88c-2.63-.08-5.3.87-7.31 2.88z","network_locked":"M19.5 10c.17 0 .33.03.5.05V1L1 20h13v-3c0-.89.39-1.68 1-2.23v-.27c0-2.48 2.02-4.5 4.5-4.5zm2.5 6v-1.5a2.5 2.5 0 0 0-5 0V16c-.55 0-1 .45-1 1v4c0 .55.45 1 1 1h5c.55 0 1-.45 1-1v-4c0-.55-.45-1-1-1zm-1 0h-3v-1.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5V16z","no_encryption":"M21 21.78L4.22 5 3 6.22l2.04 2.04C4.42 8.6 4 9.25 4 10v10c0 1.1.9 2 2 2h12c.23 0 .45-.05.66-.12L19.78 23 21 21.78zM8.9 6c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1v2H9.66L20 18.34V10c0-1.1-.9-2-2-2h-1V6c0-2.76-2.24-5-5-5-2.56 0-4.64 1.93-4.94 4.4L8.9 7.24V6z","ondemand_video":"M21 3H3c-1.11 0-2 .89-2 2v12a2 2 0 0 0 2 2h5v2h8v-2h5c1.1 0 1.99-.9 1.99-2L23 5a2 2 0 0 0-2-2zm0 14H3V5h18v12zm-5-6l-7 4V7z","personal_video":"M21 3H3c-1.11 0-2 .89-2 2v12a2 2 0 0 0 2 2h5v2h8v-2h5c1.1 0 1.99-.9 1.99-2L23 5a2 2 0 0 0-2-2zm0 14H3V5h18v12z","phone_bluetooth_speaker":"M14.71 9.5L17 7.21V11h.5l2.85-2.85L18.21 6l2.15-2.15L17.5 1H17v3.79L14.71 2.5l-.71.71L16.79 6 14 8.79l.71.71zM18 2.91l.94.94-.94.94V2.91zm0 4.3l.94.94-.94.94V7.21zm2 8.29c-1.25 0-2.45-.2-3.57-.57a1.02 1.02 0 0 0-1.02.24l-2.2 2.2a15.045 15.045 0 0 1-6.59-6.59l2.2-2.21a.96.96 0 0 0 .25-1A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z","phone_forwarded":"M18 11l5-5-5-5v3h-4v4h4v3zm2 4.5c-1.25 0-2.45-.2-3.57-.57a1.02 1.02 0 0 0-1.02.24l-2.2 2.2a15.045 15.045 0 0 1-6.59-6.59l2.2-2.21a.96.96 0 0 0 .25-1A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z","phone_in_talk":"M20 15.5c-1.25 0-2.45-.2-3.57-.57a1.02 1.02 0 0 0-1.02.24l-2.2 2.2a15.045 15.045 0 0 1-6.59-6.59l2.2-2.21a.96.96 0 0 0 .25-1A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1zM19 12h2a9 9 0 0 0-9-9v2c3.87 0 7 3.13 7 7zm-4 0h2c0-2.76-2.24-5-5-5v2c1.66 0 3 1.34 3 3z","phone_locked":"M20 15.5c-1.25 0-2.45-.2-3.57-.57a1.02 1.02 0 0 0-1.02.24l-2.2 2.2a15.045 15.045 0 0 1-6.59-6.59l2.2-2.21a.96.96 0 0 0 .25-1A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1zM20 4v-.5a2.5 2.5 0 0 0-5 0V4c-.55 0-1 .45-1 1v4c0 .55.45 1 1 1h5c.55 0 1-.45 1-1V5c0-.55-.45-1-1-1zm-.8 0h-3.4v-.5c0-.94.76-1.7 1.7-1.7s1.7.76 1.7 1.7V4z","phone_missed":"M6.5 5.5L12 11l7-7-1-1-6 6-4.5-4.5H11V3H5v6h1.5V5.5zm17.21 11.17A16.97 16.97 0 0 0 12 12C7.46 12 3.34 13.78.29 16.67c-.18.18-.29.43-.29.71s.11.53.29.71l2.48 2.48c.18.18.43.29.71.29.27 0 .52-.11.7-.28.79-.74 1.69-1.36 2.66-1.85.33-.16.56-.5.56-.9v-3.1c1.45-.48 3-.73 4.6-.73 1.6 0 3.15.25 4.6.72v3.1c0 .39.23.74.56.9.98.49 1.87 1.12 2.67 1.85.18.18.43.28.7.28.28 0 .53-.11.71-.29l2.48-2.48c.18-.18.29-.43.29-.71s-.12-.52-.3-.7z","phone_paused":"M17 3h-2v7h2V3zm3 12.5c-1.25 0-2.45-.2-3.57-.57a1.02 1.02 0 0 0-1.02.24l-2.2 2.2a15.045 15.045 0 0 1-6.59-6.59l2.2-2.21a.96.96 0 0 0 .25-1A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1zM19 3v7h2V3h-2z","power":"M16.01 7L16 3h-2v4h-4V3H8v4h-.01C7 6.99 6 7.99 6 8.99v5.49L9.5 18v3h5v-3l3.5-3.51v-5.5c0-1-1-2-1.99-1.99z","priority_high":"M10 3h4v12h-4z","rv_hookup":"M20 17v-6c0-1.1-.9-2-2-2H7V7l-3 3 3 3v-2h4v3H4v3c0 1.1.9 2 2 2h2c0 1.66 1.34 3 3 3s3-1.34 3-3h8v-2h-2zm-9 3c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm7-6h-4v-3h4v3zM17 2v2H9v2h8v2l3-3z","sd_card":"M18 2h-8L4.02 8 4 20c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-6 6h-2V4h2v4zm3 0h-2V4h2v4zm3 0h-2V4h2v4z","sim_card_alert":"M18 2h-8L4.02 8 4 20c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-5 15h-2v-2h2v2zm0-4h-2V8h2v5z","sms":"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM9 11H7V9h2v2zm4 0h-2V9h2v2zm4 0h-2V9h2v2z","sms_failed":"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-7 12h-2v-2h2v2zm0-4h-2V6h2v4z","sync":"M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46A7.93 7.93 0 0 0 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74A7.93 7.93 0 0 0 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z","sync_disabled":"M10 6.35V4.26c-.8.21-1.55.54-2.23.96l1.46 1.46c.25-.12.5-.24.77-.33zm-7.14-.94l2.36 2.36a7.925 7.925 0 0 0 1.14 9.87L4 20h6v-6l-2.24 2.24A6.003 6.003 0 0 1 6 12c0-1 .25-1.94.68-2.77l8.08 8.08c-.25.13-.5.25-.77.34v2.09c.8-.21 1.55-.54 2.23-.96l2.36 2.36 1.27-1.27L4.14 4.14 2.86 5.41zM20 4h-6v6l2.24-2.24A6.003 6.003 0 0 1 18 12c0 1-.25 1.94-.68 2.77l1.46 1.46a7.925 7.925 0 0 0-1.14-9.87L20 4z","sync_problem":"M3 12c0 2.21.91 4.2 2.36 5.64L3 20h6v-6l-2.24 2.24A6.003 6.003 0 0 1 5 12a5.99 5.99 0 0 1 4-5.65V4.26C5.55 5.15 3 8.27 3 12zm8 5h2v-2h-2v2zM21 4h-6v6l2.24-2.24A6.003 6.003 0 0 1 19 12a5.99 5.99 0 0 1-4 5.65v2.09c3.45-.89 6-4.01 6-7.74 0-2.21-.91-4.2-2.36-5.64L21 4zm-10 9h2V7h-2v6z","system_update":"M17 1.01L7 1c-1.1 0-2 .9-2 2v18c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-1.99-2-1.99zM17 19H7V5h10v14zm-1-6h-3V8h-2v5H8l4 4 4-4z","tap_and_play":"M2 16v2c2.76 0 5 2.24 5 5h2c0-3.87-3.13-7-7-7zm0 4v3h3c0-1.66-1.34-3-3-3zm0-8v2a9 9 0 0 1 9 9h2c0-6.08-4.92-11-11-11zM17 1.01L7 1c-1.1 0-2 .9-2 2v7.37c.69.16 1.36.37 2 .64V5h10v13h-3.03c.52 1.25.84 2.59.95 4H17c1.1 0 2-.9 2-2V3c0-1.1-.9-1.99-2-1.99z","time_to_leave":"M18.92 5.01C18.72 4.42 18.16 4 17.5 4h-11c-.66 0-1.21.42-1.42 1.01L3 11v8c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1h12v1c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-8l-2.08-5.99zM6.5 15c-.83 0-1.5-.67-1.5-1.5S5.67 12 6.5 12s1.5.67 1.5 1.5S7.33 15 6.5 15zm11 0c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM5 10l1.5-4.5h11L19 10H5z","vibration":"M0 15h2V9H0v6zm3 2h2V7H3v10zm19-8v6h2V9h-2zm-3 8h2V7h-2v10zM16.5 3h-9C6.67 3 6 3.67 6 4.5v15c0 .83.67 1.5 1.5 1.5h9c.83 0 1.5-.67 1.5-1.5v-15c0-.83-.67-1.5-1.5-1.5zM16 19H8V5h8v14z","voice_chat":"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-2 12l-4-3.2V14H6V6h8v3.2L18 6v8z","vpn_lock":"M22 4v-.5a2.5 2.5 0 0 0-5 0V4c-.55 0-1 .45-1 1v4c0 .55.45 1 1 1h5c.55 0 1-.45 1-1V5c0-.55-.45-1-1-1zm-.8 0h-3.4v-.5c0-.94.76-1.7 1.7-1.7s1.7.76 1.7 1.7V4zm-2.28 8c.04.33.08.66.08 1 0 2.08-.8 3.97-2.1 5.39-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H7v-2h2c.55 0 1-.45 1-1V8h2c1.1 0 2-.9 2-2V3.46c-.95-.3-1.95-.46-3-.46C5.48 3 1 7.48 1 13s4.48 10 10 10 10-4.48 10-10c0-.34-.02-.67-.05-1h-2.03zM10 20.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L8 16v1c0 1.1.9 2 2 2v1.93z","wc":"M5.5 22v-7.5H4V9c0-1.1.9-2 2-2h3c1.1 0 2 .9 2 2v5.5H9.5V22h-4zM18 22v-6h3l-2.54-7.63A2.01 2.01 0 0 0 16.56 7h-.12a2 2 0 0 0-1.9 1.37L12 16h3v6h3zM7.5 6c1.11 0 2-.89 2-2s-.89-2-2-2-2 .89-2 2 .89 2 2 2zm9 0c1.11 0 2-.89 2-2s-.89-2-2-2-2 .89-2 2 .89 2 2 2z","wifi":"M1 9l2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9zm8 8l3 3 3-3a4.237 4.237 0 0 0-6 0zm-4-4l2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13z","add_a_photo":"M3 4V1h2v3h3v2H5v3H3V6H0V4h3zm3 6V7h3V4h7l1.83 2H21c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H5c-1.1 0-2-.9-2-2V10h3zm7 9c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-3.2-5c0 1.77 1.43 3.2 3.2 3.2s3.2-1.43 3.2-3.2-1.43-3.2-3.2-3.2-3.2 1.43-3.2 3.2z","add_to_photos":"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-1 9h-4v4h-2v-4H9V9h4V5h2v4h4v2z","adjust":"M12 2C6.49 2 2 6.49 2 12s4.49 10 10 10 10-4.49 10-10S17.51 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm3-8c0 1.66-1.34 3-3 3s-3-1.34-3-3 1.34-3 3-3 3 1.34 3 3z","assistant":"M19 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h4l3 3 3-3h4c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-5.12 10.88L12 17l-1.88-4.12L6 11l4.12-1.88L12 5l1.88 4.12L18 11l-4.12 1.88z","assistant_photo":"M14.4 6L14 4H5v17h2v-7h5.6l.4 2h7V6z","audiotrack":"M12 3v9.28a4.39 4.39 0 0 0-1.5-.28C8.01 12 6 14.01 6 16.5S8.01 21 10.5 21c2.31 0 4.2-1.75 4.45-4H15V6h4V3h-7z","blur_circular":"M10 9c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm0 4c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zM7 9.5c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zm3 7c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zm-3-3c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zm3-6c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zM14 9c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm0-1.5c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zm3 6c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zm0-4c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm2-3.5c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zm0-3.5c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1z","blur_linear":"M5 17.5c.83 0 1.5-.67 1.5-1.5s-.67-1.5-1.5-1.5-1.5.67-1.5 1.5.67 1.5 1.5 1.5zM9 13c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm0-4c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zM3 21h18v-2H3v2zM5 9.5c.83 0 1.5-.67 1.5-1.5S5.83 6.5 5 6.5 3.5 7.17 3.5 8 4.17 9.5 5 9.5zm0 4c.83 0 1.5-.67 1.5-1.5s-.67-1.5-1.5-1.5-1.5.67-1.5 1.5.67 1.5 1.5 1.5zM9 17c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm8-.5c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zM3 3v2h18V3H3zm14 5.5c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zm0 4c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zM13 9c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm0 4c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm0 4c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1z","blur_off":"M14 7c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm-.2 4.48l.2.02c.83 0 1.5-.67 1.5-1.5s-.67-1.5-1.5-1.5-1.5.67-1.5 1.5l.02.2c.09.67.61 1.19 1.28 1.28zM14 3.5c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zm-4 0c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zm11 7c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zM10 7c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm8 8c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm0-4c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm0-4c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm-4 13.5c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zM2.5 5.27l3.78 3.78L6 9c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1c0-.1-.03-.19-.06-.28l2.81 2.81c-.71.11-1.25.73-1.25 1.47 0 .83.67 1.5 1.5 1.5.74 0 1.36-.54 1.47-1.25l2.81 2.81A.875.875 0 0 0 14 17c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1c0-.1-.03-.19-.06-.28l3.78 3.78L20 20.23 3.77 4 2.5 5.27zM10 17c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm11-3.5c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zM6 13c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zM3 9.5c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zm7 11c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zM6 17c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm-3-3.5c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5z","blur_on":"M6 13c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm0 4c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm0-8c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm-3 .5c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zM6 5c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm15 5.5c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zM14 7c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm0-3.5c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zm-11 10c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zm7 7c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zm0-17c.28 0 .5-.22.5-.5s-.22-.5-.5-.5-.5.22-.5.5.22.5.5.5zM10 7c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm0 5.5c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5zm8 .5c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm0 4c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm0-8c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm0-4c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm3 8.5c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zM14 17c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm0 3.5c-.28 0-.5.22-.5.5s.22.5.5.5.5-.22.5-.5-.22-.5-.5-.5zm-4-12c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5zm0 8.5c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm4-4.5c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5zm0-4c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5z","brightness_2":"M10 2c-1.82 0-3.53.5-5 1.35C7.99 5.08 10 8.3 10 12s-2.01 6.92-5 8.65C6.47 21.5 8.18 22 10 22c5.52 0 10-4.48 10-10S15.52 2 10 2z","brightness_3":"M9 2c-1.05 0-2.05.16-3 .46 4.06 1.27 7 5.06 7 9.54 0 4.48-2.94 8.27-7 9.54.95.3 1.95.46 3 .46 5.52 0 10-4.48 10-10S14.52 2 9 2z","brightness_4":"M20 8.69V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12 20 8.69zM12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12s-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6c3.31 0 6 2.69 6 6s-2.69 6-6 6z","brightness_5":"M20 15.31L23.31 12 20 8.69V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69zM12 18c-3.31 0-6-2.69-6-6s2.69-6 6-6 6 2.69 6 6-2.69 6-6 6z","brightness_6":"M20 15.31L23.31 12 20 8.69V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69zM12 18V6c3.31 0 6 2.69 6 6s-2.69 6-6 6z","brightness_7":"M20 8.69V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12 20 8.69zM12 18c-3.31 0-6-2.69-6-6s2.69-6 6-6 6 2.69 6 6-2.69 6-6 6zm0-10c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4z","broken_image":"M21 5v6.59l-3-3.01-4 4.01-4-4-4 4-3-3.01V5c0-1.1.9-2 2-2h14c1.1 0 2 .9 2 2zm-3 6.42l3 3.01V19c0 1.1-.9 2-2 2H5c-1.1 0-2-.9-2-2v-6.58l3 2.99 4-4 4 4 4-3.99z","brush":"M7 14c-1.66 0-3 1.34-3 3 0 1.31-1.16 2-2 2 .92 1.22 2.49 2 4 2a4 4 0 0 0 4-4c0-1.66-1.34-3-3-3zm13.71-9.37l-1.34-1.34a.996.996 0 0 0-1.41 0L9 12.25 11.75 15l8.96-8.96a.996.996 0 0 0 0-1.41z","burst_mode":"M1 5h2v14H1zm4 0h2v14H5zm17 0H10c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h12c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1zM11 17l2.5-3.15L15.29 16l2.5-3.22L21 17H11z","camera":"M9.4 10.5l4.77-8.26a9.984 9.984 0 0 0-8.49 2.01l3.66 6.35.06-.1zM21.54 9c-.92-2.92-3.15-5.26-6-6.34L11.88 9h9.66zm.26 1h-7.49l.29.5 4.76 8.25A9.91 9.91 0 0 0 22 12c0-.69-.07-1.35-.2-2zM8.54 12l-3.9-6.75A9.958 9.958 0 0 0 2.2 14h7.49l-1.15-2zm-6.08 3c.92 2.92 3.15 5.26 6 6.34L12.12 15H2.46zm11.27 0l-3.9 6.76a9.984 9.984 0 0 0 8.49-2.01l-3.66-6.35-.93 1.6z","camera_alt":"M9 2L7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L15 2H9zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5z","camera_front":"M10 20H5v2h5v2l3-3-3-3v2zm4 0v2h5v-2h-5zM12 8c1.1 0 2-.9 2-2s-.9-2-2-2-1.99.9-1.99 2S10.9 8 12 8zm5-8H7C5.9 0 5 .9 5 2v14c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V2c0-1.1-.9-2-2-2zM7 2h10v10.5c0-1.67-3.33-2.5-5-2.5s-5 .83-5 2.5V2z","camera_rear":"M10 20H5v2h5v2l3-3-3-3v2zm4 0v2h5v-2h-5zm3-20H7C5.9 0 5 .9 5 2v14c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V2c0-1.1-.9-2-2-2zm-5 6c-1.11 0-2-.9-2-2s.89-2 1.99-2 2 .9 2 2C14 5.1 13.1 6 12 6z","camera_roll":"M14 5c0-1.1-.9-2-2-2h-1V2c0-.55-.45-1-1-1H6c-.55 0-1 .45-1 1v1H4c-1.1 0-2 .9-2 2v15c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2h8V5h-8zm-2 13h-2v-2h2v2zm0-9h-2V7h2v2zm4 9h-2v-2h2v2zm0-9h-2V7h2v2zm4 9h-2v-2h2v2zm0-9h-2V7h2v2z","center_focus_strong":"M12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm-7 7H3v4c0 1.1.9 2 2 2h4v-2H5v-4zM5 5h4V3H5c-1.1 0-2 .9-2 2v4h2V5zm14-2h-4v2h4v4h2V5c0-1.1-.9-2-2-2zm0 16h-4v2h4c1.1 0 2-.9 2-2v-4h-2v4z","center_focus_weak":"M5 15H3v4c0 1.1.9 2 2 2h4v-2H5v-4zM5 5h4V3H5c-1.1 0-2 .9-2 2v4h2V5zm14-2h-4v2h4v4h2V5c0-1.1-.9-2-2-2zm0 16h-4v2h4c1.1 0 2-.9 2-2v-4h-2v4zM12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 6c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z","collections":"M22 16V4c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-11-4l2.03 2.71L16 11l4 5H8l3-4zM2 6v14c0 1.1.9 2 2 2h14v-2H4V6H2z","collections_bookmark":"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 10l-2.5-1.5L15 12V4h5v8z","color_lens":"M12 3a9 9 0 0 0 0 18c.83 0 1.5-.67 1.5-1.5 0-.39-.15-.74-.39-1.01-.23-.26-.38-.61-.38-.99 0-.83.67-1.5 1.5-1.5H16c2.76 0 5-2.24 5-5 0-4.42-4.03-8-9-8zm-5.5 9c-.83 0-1.5-.67-1.5-1.5S5.67 9 6.5 9 8 9.67 8 10.5 7.33 12 6.5 12zm3-4C8.67 8 8 7.33 8 6.5S8.67 5 9.5 5s1.5.67 1.5 1.5S10.33 8 9.5 8zm5 0c-.83 0-1.5-.67-1.5-1.5S13.67 5 14.5 5s1.5.67 1.5 1.5S15.33 8 14.5 8zm3 4c-.83 0-1.5-.67-1.5-1.5S16.67 9 17.5 9s1.5.67 1.5 1.5-.67 1.5-1.5 1.5z","colorize":"M20.71 5.63l-2.34-2.34a.996.996 0 0 0-1.41 0l-3.12 3.12-1.93-1.91-1.41 1.41 1.42 1.42L3 16.25V21h4.75l8.92-8.92 1.42 1.42 1.41-1.41-1.92-1.92 3.12-3.12a1 1 0 0 0 .01-1.42zM6.92 19L5 17.08l8.06-8.06 1.92 1.92L6.92 19z","compare":"M10 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h5v2h2V1h-2v2zm0 15H5l5-6v6zm9-15h-5v2h5v13l-5-6v9h5c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z","control_point":"M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4V7zm-1-5C6.49 2 2 6.49 2 12s4.49 10 10 10 10-4.49 10-10S17.51 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z","control_point_duplicate":"M16 8h-2v3h-3v2h3v3h2v-3h3v-2h-3zM2 12c0-2.79 1.64-5.2 4.01-6.32V3.52C2.52 4.76 0 8.09 0 12s2.52 7.24 6.01 8.48v-2.16A6.99 6.99 0 0 1 2 12zm13-9c-4.96 0-9 4.04-9 9s4.04 9 9 9 9-4.04 9-9-4.04-9-9-9zm0 16c-3.86 0-7-3.14-7-7s3.14-7 7-7 7 3.14 7 7-3.14 7-7 7z","crop_16_9":"M19 6H5c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 10H5V8h14v8z","crop":"M17 15h2V7c0-1.1-.9-2-2-2H9v2h8v8zM7 17V1H5v4H1v2h4v10c0 1.1.9 2 2 2h10v4h2v-4h4v-2H7z","crop_3_2":"M19 4H5c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 14H5V6h14v12z","crop_5_4":"M19 5H5c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 12H5V7h14v10z","crop_7_5":"M19 7H5c-1.1 0-2 .9-2 2v6c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V9c0-1.1-.9-2-2-2zm0 8H5V9h14v6z","crop_din":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V5h14v14z","crop_free":"M3 5v4h2V5h4V3H5c-1.1 0-2 .9-2 2zm2 10H3v4c0 1.1.9 2 2 2h4v-2H5v-4zm14 4h-4v2h4c1.1 0 2-.9 2-2v-4h-2v4zm0-16h-4v2h4v4h2V5c0-1.1-.9-2-2-2z","crop_landscape":"M19 5H5c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 12H5V7h14v10z","crop_original":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V5h14v14zm-5.04-6.71l-2.75 3.54-1.96-2.36L6.5 17h11l-3.54-4.71z","crop_portrait":"M17 3H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H7V5h10v14z","crop_rotate":"M7.47 21.49C4.2 19.93 1.86 16.76 1.5 13H0c.51 6.16 5.66 11 11.95 11 .23 0 .44-.02.66-.03L8.8 20.15l-1.33 1.34zM12.05 0c-.23 0-.44.02-.66.04l3.81 3.81 1.33-1.33C19.8 4.07 22.14 7.24 22.5 11H24c-.51-6.16-5.66-11-11.95-11zM16 14h2V8a2 2 0 0 0-2-2h-6v2h6v6zm-8 2V4H6v2H4v2h2v8a2 2 0 0 0 2 2h8v2h2v-2h2v-2H8z","crop_square":"M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 14H6V6h12v12z","dehaze":"M2 15.5v2h20v-2H2zm0-5v2h20v-2H2zm0-5v2h20v-2H2z","details":"M3 4l9 16 9-16H3zm3.38 2h11.25L12 16 6.38 6z","edit":"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a.996.996 0 0 0 0-1.41l-2.34-2.34a.996.996 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z","exposure":"M15 17v2h2v-2h2v-2h-2v-2h-2v2h-2v2h2zm5-15H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM5 5h6v2H5V5zm15 15H4L20 4v16z","exposure_neg_1":"M4 11v2h8v-2H4zm15 7h-2V7.38L14 8.4V6.7L18.7 5h.3v13z","exposure_neg_2":"M15.05 16.29l2.86-3.07c.38-.39.72-.79 1.04-1.18.32-.39.59-.78.82-1.17.23-.39.41-.78.54-1.17s.19-.79.19-1.18c0-.53-.09-1.02-.27-1.46a2.94 2.94 0 0 0-.78-1.11c-.34-.31-.77-.54-1.26-.71A5.72 5.72 0 0 0 16.47 5c-.69 0-1.31.11-1.85.32-.54.21-1 .51-1.36.88-.37.37-.65.8-.84 1.3-.18.47-.27.97-.28 1.5h2.14c.01-.31.05-.6.13-.87.09-.29.23-.54.4-.75.18-.21.41-.37.68-.49.27-.12.6-.18.96-.18.31 0 .58.05.81.15.23.1.43.25.59.43.16.18.28.4.37.65.08.25.13.52.13.81 0 .22-.03.43-.08.65-.06.22-.15.45-.29.7-.14.25-.32.53-.56.83-.23.3-.52.65-.88 1.03l-4.17 4.55V18H21v-1.71h-5.95zM2 11v2h8v-2H2z","exposure_plus_1":"M10 7H8v4H4v2h4v4h2v-4h4v-2h-4V7zm10 11h-2V7.38L15 8.4V6.7L19.7 5h.3v13z","exposure_plus_2":"M16.05 16.29l2.86-3.07c.38-.39.72-.79 1.04-1.18.32-.39.59-.78.82-1.17.23-.39.41-.78.54-1.17.13-.39.19-.79.19-1.18 0-.53-.09-1.02-.27-1.46a2.94 2.94 0 0 0-.78-1.11c-.34-.31-.77-.54-1.26-.71A5.72 5.72 0 0 0 17.47 5c-.69 0-1.31.11-1.85.32-.54.21-1 .51-1.36.88-.37.37-.65.8-.84 1.3-.18.47-.27.97-.28 1.5h2.14c.01-.31.05-.6.13-.87.09-.29.23-.54.4-.75.18-.21.41-.37.68-.49.27-.12.6-.18.96-.18.31 0 .58.05.81.15.23.1.43.25.59.43.16.18.28.4.37.65.08.25.13.52.13.81 0 .22-.03.43-.08.65-.06.22-.15.45-.29.7-.14.25-.32.53-.56.83-.23.3-.52.65-.88 1.03l-4.17 4.55V18H22v-1.71h-5.95zM8 7H6v4H2v2h4v4h2v-4h4v-2H8V7z","exposure_zero":"M16.14 12.5c0 1-.1 1.85-.3 2.55-.2.7-.48 1.27-.83 1.7-.36.44-.79.75-1.3.95-.51.2-1.07.3-1.7.3-.62 0-1.18-.1-1.69-.3-.51-.2-.95-.51-1.31-.95-.36-.44-.65-1.01-.85-1.7-.2-.7-.3-1.55-.3-2.55v-2.04c0-1 .1-1.85.3-2.55.2-.7.48-1.26.84-1.69.36-.43.8-.74 1.31-.93C10.81 5.1 11.38 5 12 5c.63 0 1.19.1 1.7.29.51.19.95.5 1.31.93.36.43.64.99.84 1.69.2.7.3 1.54.3 2.55v2.04zm-2.11-2.36c0-.64-.05-1.18-.13-1.62-.09-.44-.22-.79-.4-1.06-.17-.27-.39-.46-.64-.58-.25-.13-.54-.19-.86-.19-.32 0-.61.06-.86.18s-.47.31-.64.58c-.17.27-.31.62-.4 1.06s-.13.98-.13 1.62v2.67c0 .64.05 1.18.14 1.62.09.45.23.81.4 1.09s.39.48.64.61.54.19.87.19c.33 0 .62-.06.87-.19s.46-.33.63-.61c.17-.28.3-.64.39-1.09.09-.45.13-.99.13-1.62v-2.66z","filter_1":"M3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm11 10h2V5h-4v2h2v8zm7-14H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14z","filter":"M15.96 10.29l-2.75 3.54-1.96-2.36L8.5 15h11l-3.54-4.71zM3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm18-4H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14z","filter_2":"M3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm18-4H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14zm-4-4h-4v-2h2a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-4v2h4v2h-2a2 2 0 0 0-2 2v4h6v-2z","filter_3":"M21 1H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14zM3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm14 8v-1.5c0-.83-.67-1.5-1.5-1.5.83 0 1.5-.67 1.5-1.5V7a2 2 0 0 0-2-2h-4v2h4v2h-2v2h2v2h-4v2h4a2 2 0 0 0 2-2z","filter_4":"M3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm12 10h2V5h-2v4h-2V5h-2v6h4v4zm6-14H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14z","filter_5":"M21 1H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14zM3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm14 8v-2a2 2 0 0 0-2-2h-2V7h4V5h-6v6h4v2h-4v2h4a2 2 0 0 0 2-2z","filter_6":"M3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm18-4H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14zm-8-2h2a2 2 0 0 0 2-2v-2a2 2 0 0 0-2-2h-2V7h4V5h-4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2zm0-4h2v2h-2v-2z","filter_7":"M3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm18-4H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14zm-8-2l4-8V5h-6v2h4l-4 8h2z","filter_8":"M3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm18-4H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14zm-8-2h2a2 2 0 0 0 2-2v-1.5c0-.83-.67-1.5-1.5-1.5.83 0 1.5-.67 1.5-1.5V7a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v1.5c0 .83.67 1.5 1.5 1.5-.83 0-1.5.67-1.5 1.5V13a2 2 0 0 0 2 2zm0-8h2v2h-2V7zm0 4h2v2h-2v-2z","filter_9":"M3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm18-4H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14zM15 5h-2a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2v2h-4v2h4a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2zm0 4h-2V7h2v2z","filter_9_plus":"M3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm11 7V8a2 2 0 0 0-2-2h-1a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h1v1H9v2h3a2 2 0 0 0 2-2zm-3-3V8h1v1h-1zm10-8H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 8h-2V7h-2v2h-2v2h2v2h2v-2h2v6H7V3h14v6z","filter_b_and_w":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16l-7-8v8H5l7-8V5h7v14z","filter_center_focus":"M5 15H3v4c0 1.1.9 2 2 2h4v-2H5v-4zM5 5h4V3H5c-1.1 0-2 .9-2 2v4h2V5zm14-2h-4v2h4v4h2V5c0-1.1-.9-2-2-2zm0 16h-4v2h4c1.1 0 2-.9 2-2v-4h-2v4zM12 9c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z","filter_drama":"M19.35 10.04A7.49 7.49 0 0 0 12 4a7.48 7.48 0 0 0-6.64 4.04A5.996 5.996 0 0 0 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM19 18H6c-2.21 0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4h2c0-2.76-1.86-5.08-4.4-5.78C8.61 6.88 10.2 6 12 6c3.03 0 5.5 2.47 5.5 5.5v.5H19c1.65 0 3 1.35 3 3s-1.35 3-3 3z","filter_frames":"M20 4h-4l-4-4-4 4H4c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H4V6h4.52l3.52-3.5L15.52 6H20v14zM18 8H6v10h12","filter_hdr":"M14 6l-3.75 5 2.85 3.8-1.6 1.2C9.81 13.75 7 10 7 10l-6 8h22L14 6z","filter_none":"M3 5H1v16c0 1.1.9 2 2 2h16v-2H3V5zm18-4H7c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 16H7V3h14v14z","filter_tilt_shift":"M11 4.07V2.05c-2.01.2-3.84 1-5.32 2.21L7.1 5.69A7.94 7.94 0 0 1 11 4.07zm7.32.19A9.95 9.95 0 0 0 13 2.05v2.02c1.46.18 2.79.76 3.9 1.62l1.42-1.43zM19.93 11h2.02c-.2-2.01-1-3.84-2.21-5.32L18.31 7.1a7.94 7.94 0 0 1 1.62 3.9zM5.69 7.1L4.26 5.68A9.95 9.95 0 0 0 2.05 11h2.02a7.94 7.94 0 0 1 1.62-3.9zM4.07 13H2.05c.2 2.01 1 3.84 2.21 5.32l1.43-1.43A7.868 7.868 0 0 1 4.07 13zM15 12c0-1.66-1.34-3-3-3s-3 1.34-3 3 1.34 3 3 3 3-1.34 3-3zm3.31 4.9l1.43 1.43a9.98 9.98 0 0 0 2.21-5.32h-2.02a7.945 7.945 0 0 1-1.62 3.89zM13 19.93v2.02c2.01-.2 3.84-1 5.32-2.21l-1.43-1.43c-1.1.86-2.43 1.44-3.89 1.62zm-7.32-.19A9.98 9.98 0 0 0 11 21.95v-2.02a7.94 7.94 0 0 1-3.9-1.62l-1.42 1.43z","filter_vintage":"M18.7 12.4a6.06 6.06 0 0 0-.86-.4c.29-.11.58-.24.86-.4a6.012 6.012 0 0 0 3-5.19 6.007 6.007 0 0 0-6 0c-.28.16-.54.35-.78.54.05-.31.08-.63.08-.95 0-2.22-1.21-4.15-3-5.19C10.21 1.85 9 3.78 9 6c0 .32.03.64.08.95-.24-.2-.5-.39-.78-.55a6.008 6.008 0 0 0-6 0 5.97 5.97 0 0 0 3 5.19c.28.16.57.29.86.4-.29.11-.58.24-.86.4a6.012 6.012 0 0 0-3 5.19 6.007 6.007 0 0 0 6 0c.28-.16.54-.35.78-.54-.05.32-.08.64-.08.96 0 2.22 1.21 4.15 3 5.19 1.79-1.04 3-2.97 3-5.19 0-.32-.03-.64-.08-.95.24.2.5.38.78.54a6.008 6.008 0 0 0 6 0 6.012 6.012 0 0 0-3-5.19zM12 16c-2.21 0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4-1.79 4-4 4z","flare":"M7 11H1v2h6v-2zm2.17-3.24L7.05 5.64 5.64 7.05l2.12 2.12 1.41-1.41zM13 1h-2v6h2V1zm5.36 6.05l-1.41-1.41-2.12 2.12 1.41 1.41 2.12-2.12zM17 11v2h6v-2h-6zm-5-2c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3zm2.83 7.24l2.12 2.12 1.41-1.41-2.12-2.12-1.41 1.41zm-9.19.71l1.41 1.41 2.12-2.12-1.41-1.41-2.12 2.12zM11 23h2v-6h-2v6z","flash_auto":"M3 2v12h3v9l7-12H9l4-9H3zm16 0h-2l-3.2 9h1.9l.7-2h3.2l.7 2h1.9L19 2zm-2.15 5.65L18 4l1.15 3.65h-2.3z","flash_off":"M3.27 3L2 4.27l5 5V13h3v9l3.58-6.14L17.73 20 19 18.73 3.27 3zM17 10h-4l4-8H7v2.18l8.46 8.46L17 10z","flash_on":"M7 2v11h3v9l7-12h-4l4-8z","flip":"M15 21h2v-2h-2v2zm4-12h2V7h-2v2zM3 5v14c0 1.1.9 2 2 2h4v-2H5V5h4V3H5c-1.1 0-2 .9-2 2zm16-2v2h2c0-1.1-.9-2-2-2zm-8 20h2V1h-2v22zm8-6h2v-2h-2v2zM15 5h2V3h-2v2zm4 8h2v-2h-2v2zm0 8c1.1 0 2-.9 2-2h-2v2z","gradient":"M11 9h2v2h-2zm-2 2h2v2H9zm4 0h2v2h-2zm2-2h2v2h-2zM7 9h2v2H7zm12-6H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 18H7v-2h2v2zm4 0h-2v-2h2v2zm4 0h-2v-2h2v2zm2-7h-2v2h2v2h-2v-2h-2v2h-2v-2h-2v2H9v-2H7v2H5v-2h2v-2H5V5h14v6z","grain":"M10 12c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zM6 8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12-8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm-4 8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm4-4c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-4-4c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-4-4c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z","grid_off":"M8 4v1.45l2 2V4h4v4h-3.45l2 2H14v1.45l2 2V10h4v4h-3.45l2 2H20v1.45l2 2V4c0-1.1-.9-2-2-2H4.55l2 2H8zm8 0h4v4h-4V4zM1.27 1.27L0 2.55l2 2V20c0 1.1.9 2 2 2h15.46l2 2 1.27-1.27L1.27 1.27zM10 12.55L11.45 14H10v-1.45zm-6-6L5.45 8H4V6.55zM8 20H4v-4h4v4zm0-6H4v-4h3.45l.55.55V14zm6 6h-4v-4h3.45l.55.54V20zm2 0v-1.46L17.46 20H16z","grid_on":"M20 2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM8 20H4v-4h4v4zm0-6H4v-4h4v4zm0-6H4V4h4v4zm6 12h-4v-4h4v4zm0-6h-4v-4h4v4zm0-6h-4V4h4v4zm6 12h-4v-4h4v4zm0-6h-4v-4h4v4zm0-6h-4V4h4v4z","hdr_off":"M17.5 15v-2h1.1l.9 2H21l-.9-2.1c.5-.2.9-.8.9-1.4v-1c0-.8-.7-1.5-1.5-1.5H16v4.9l1.1 1.1h.4zm0-4.5h2v1h-2v-1zm-4.5 0v.4l1.5 1.5v-1.9c0-.8-.7-1.5-1.5-1.5h-1.9l1.5 1.5h.4zm-3.5-1l-7-7-1.1 1L6.9 9h-.4v2h-2V9H3v6h1.5v-2.5h2V15H8v-4.9l1.5 1.5V15h3.4l7.6 7.6 1.1-1.1-12.1-12z","hdr_on":"M21 11.5v-1c0-.8-.7-1.5-1.5-1.5H16v6h1.5v-2h1.1l.9 2H21l-.9-2.1c.5-.3.9-.8.9-1.4zm-1.5 0h-2v-1h2v1zm-13-.5h-2V9H3v6h1.5v-2.5h2V15H8V9H6.5v2zM13 9H9.5v6H13c.8 0 1.5-.7 1.5-1.5v-3c0-.8-.7-1.5-1.5-1.5zm0 4.5h-2v-3h2v3z","hdr_strong":"M17 6c-3.31 0-6 2.69-6 6s2.69 6 6 6 6-2.69 6-6-2.69-6-6-6zM5 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 6c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z","hdr_weak":"M5 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm12-2c-3.31 0-6 2.69-6 6s2.69 6 6 6 6-2.69 6-6-2.69-6-6-6zm0 10c-2.21 0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4-1.79 4-4 4z","healing":"M17.73 12.02l3.98-3.98a.996.996 0 0 0 0-1.41l-4.34-4.34a.996.996 0 0 0-1.41 0l-3.98 3.98L8 2.29a1 1 0 0 0-1.41 0L2.25 6.63a.996.996 0 0 0 0 1.41l3.98 3.98L2.25 16a.996.996 0 0 0 0 1.41l4.34 4.34c.39.39 1.02.39 1.41 0l3.98-3.98 3.98 3.98c.2.2.45.29.71.29.26 0 .51-.1.71-.29l4.34-4.34a.996.996 0 0 0 0-1.41l-3.99-3.98zM12 9c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm-4.71 1.96L3.66 7.34l3.63-3.63 3.62 3.62-3.62 3.63zM10 13c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm2 2c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm2-4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2.66 9.34l-3.63-3.62 3.63-3.63 3.62 3.62-3.62 3.63z","image":"M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z","image_aspect_ratio":"M16 10h-2v2h2v-2zm0 4h-2v2h2v-2zm-8-4H6v2h2v-2zm4 0h-2v2h2v-2zm8-6H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 14H4V6h16v12z","iso":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM5.5 7.5h2v-2H9v2h2V9H9v2H7.5V9h-2V7.5zM19 19H5L19 5v14zm-2-2v-1.5h-5V17h5z","landscape":"M14 6l-3.75 5 2.85 3.8-1.6 1.2C9.81 13.75 7 10 7 10l-6 8h22L14 6z","leak_add":"M6 3H3v3c1.66 0 3-1.34 3-3zm8 0h-2a9 9 0 0 1-9 9v2c6.08 0 11-4.93 11-11zm-4 0H8c0 2.76-2.24 5-5 5v2c3.87 0 7-3.13 7-7zm0 18h2a9 9 0 0 1 9-9v-2c-6.07 0-11 4.93-11 11zm8 0h3v-3c-1.66 0-3 1.34-3 3zm-4 0h2c0-2.76 2.24-5 5-5v-2c-3.87 0-7 3.13-7 7z","leak_remove":"M10 3H8c0 .37-.04.72-.12 1.06l1.59 1.59C9.81 4.84 10 3.94 10 3zM3 4.27l2.84 2.84C5.03 7.67 4.06 8 3 8v2c1.61 0 3.09-.55 4.27-1.46L8.7 9.97A8.99 8.99 0 0 1 3 12v2c2.71 0 5.19-.99 7.11-2.62l2.5 2.5A11.044 11.044 0 0 0 10 21h2c0-2.16.76-4.14 2.03-5.69l1.43 1.43A6.922 6.922 0 0 0 14 21h2c0-1.06.33-2.03.89-2.84L19.73 21 21 19.73 4.27 3 3 4.27zM14 3h-2c0 1.5-.37 2.91-1.02 4.16l1.46 1.46C13.42 6.98 14 5.06 14 3zm5.94 13.12c.34-.08.69-.12 1.06-.12v-2c-.94 0-1.84.19-2.66.52l1.6 1.6zm-4.56-4.56l1.46 1.46A8.98 8.98 0 0 1 21 12v-2c-2.06 0-3.98.58-5.62 1.56z","lens":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2z","linked_camera":"M17 9c0-1.11-.89-2-2-2V4H9L7.17 6H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V9h-5zm-5 10c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5z","looks":"M12 10c-3.86 0-7 3.14-7 7h2c0-2.76 2.24-5 5-5s5 2.24 5 5h2c0-3.86-3.14-7-7-7zm0-4C5.93 6 1 10.93 1 17h2c0-4.96 4.04-9 9-9s9 4.04 9 9h2c0-6.07-4.93-11-11-11z","looks_3":"M19.01 3h-14c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4 7.5c0 .83-.67 1.5-1.5 1.5.83 0 1.5.67 1.5 1.5V15a2 2 0 0 1-2 2h-4v-2h4v-2h-2v-2h2V9h-4V7h4a2 2 0 0 1 2 2v1.5z","looks_4":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4 14h-2v-4H9V7h2v4h2V7h2v10z","looks_5":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4 6h-4v2h2a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2H9v-2h4v-2H9V7h6v2z","looks_6":"M11 15h2v-2h-2v2zm8-12H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4 6h-4v2h2a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2h-2a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h4v2z","looks_one":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-5 14h-2V9h-2V7h4v10z","looks_two":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4 8a2 2 0 0 1-2 2h-2v2h4v2H9v-4a2 2 0 0 1 2-2h2V9H9V7h4a2 2 0 0 1 2 2v2z","loupe":"M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4V7zm-1-5C6.49 2 2 6.49 2 12s4.49 10 10 10h8c1.1 0 2-.9 2-2v-8c0-5.51-4.49-10-10-10zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z","monochrome_photos":"M20 5h-3.2L15 3H9L7.2 5H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 14h-8v-1c-2.8 0-5-2.2-5-5s2.2-5 5-5V7h8v12zm-3-6c0-2.8-2.2-5-5-5v1.8c1.8 0 3.2 1.4 3.2 3.2s-1.4 3.2-3.2 3.2V18c2.8 0 5-2.2 5-5zm-8.2 0c0 1.8 1.4 3.2 3.2 3.2V9.8c-1.8 0-3.2 1.4-3.2 3.2z","movie_creation":"M18 4l2 4h-3l-2-4h-2l2 4h-3l-2-4H8l2 4H7L5 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4h-4z","movie_filter":"M18 4l2 3h-3l-2-3h-2l2 3h-3l-2-3H8l2 3H7L5 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4h-4zm-6.75 11.25L10 18l-1.25-2.75L6 14l2.75-1.25L10 10l1.25 2.75L14 14l-2.75 1.25zm5.69-3.31L16 14l-.94-2.06L13 11l2.06-.94L16 8l.94 2.06L19 11l-2.06.94z","music_note":"M12 3v10.55c-.59-.34-1.27-.55-2-.55-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4V7h4V3h-6z","nature":"M13 16.12a7 7 0 0 0 6.17-6.95c0-3.87-3.13-7-7-7s-7 3.13-7 7A6.98 6.98 0 0 0 11 16.06V20H5v2h14v-2h-6v-3.88z","nature_people":"M22.17 9.17c0-3.87-3.13-7-7-7s-7 3.13-7 7A6.98 6.98 0 0 0 14 16.06V20H6v-3h1v-4c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v4h1v5h16v-2h-3v-3.88a7 7 0 0 0 6.17-6.95zM4.5 11c.83 0 1.5-.67 1.5-1.5S5.33 8 4.5 8 3 8.67 3 9.5 3.67 11 4.5 11z","navigate_before":"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z","navigate_next":"M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z","palette":"M12 3a9 9 0 0 0 0 18c.83 0 1.5-.67 1.5-1.5 0-.39-.15-.74-.39-1.01-.23-.26-.38-.61-.38-.99 0-.83.67-1.5 1.5-1.5H16c2.76 0 5-2.24 5-5 0-4.42-4.03-8-9-8zm-5.5 9c-.83 0-1.5-.67-1.5-1.5S5.67 9 6.5 9 8 9.67 8 10.5 7.33 12 6.5 12zm3-4C8.67 8 8 7.33 8 6.5S8.67 5 9.5 5s1.5.67 1.5 1.5S10.33 8 9.5 8zm5 0c-.83 0-1.5-.67-1.5-1.5S13.67 5 14.5 5s1.5.67 1.5 1.5S15.33 8 14.5 8zm3 4c-.83 0-1.5-.67-1.5-1.5S16.67 9 17.5 9s1.5.67 1.5 1.5-.67 1.5-1.5 1.5z","panorama":"M23 18V6c0-1.1-.9-2-2-2H3c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2zM8.5 12.5l2.5 3.01L14.5 11l4.5 6H5l3.5-4.5z","panorama_fish_eye":"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z","panorama_horizontal":"M20 6.54v10.91c-2.6-.77-5.28-1.16-8-1.16-2.72 0-5.4.39-8 1.16V6.54c2.6.77 5.28 1.16 8 1.16 2.72.01 5.4-.38 8-1.16M21.43 4c-.1 0-.2.02-.31.06C18.18 5.16 15.09 5.7 12 5.7c-3.09 0-6.18-.55-9.12-1.64A.94.94 0 0 0 2.57 4c-.34 0-.57.23-.57.63v14.75c0 .39.23.62.57.62.1 0 .2-.02.31-.06 2.94-1.1 6.03-1.64 9.12-1.64 3.09 0 6.18.55 9.12 1.64.11.04.21.06.31.06.33 0 .57-.23.57-.63V4.63c0-.4-.24-.63-.57-.63z","panorama_vertical":"M19.94 21.12c-1.1-2.94-1.64-6.03-1.64-9.12 0-3.09.55-6.18 1.64-9.12a.94.94 0 0 0 .06-.31c0-.34-.23-.57-.63-.57H4.63c-.4 0-.63.23-.63.57 0 .1.02.2.06.31C5.16 5.82 5.71 8.91 5.71 12c0 3.09-.55 6.18-1.64 9.12-.05.11-.07.22-.07.31 0 .33.23.57.63.57h14.75c.39 0 .63-.24.63-.57-.01-.1-.03-.2-.07-.31zM6.54 20c.77-2.6 1.16-5.28 1.16-8 0-2.72-.39-5.4-1.16-8h10.91c-.77 2.6-1.16 5.28-1.16 8 0 2.72.39 5.4 1.16 8H6.54z","panorama_wide_angle":"M12 6c2.45 0 4.71.2 7.29.64A21 21 0 0 1 20 12a21 21 0 0 1-.71 5.36c-2.58.44-4.84.64-7.29.64s-4.71-.2-7.29-.64A21 21 0 0 1 4 12a21 21 0 0 1 .71-5.36C7.29 6.2 9.55 6 12 6m0-2c-2.73 0-5.22.24-7.95.72l-.93.16-.25.9C2.29 7.85 2 9.93 2 12s.29 4.15.87 6.22l.25.89.93.16c2.73.49 5.22.73 7.95.73s5.22-.24 7.95-.72l.93-.16.25-.89c.58-2.08.87-4.16.87-6.23s-.29-4.15-.87-6.22l-.25-.89-.93-.16C17.22 4.24 14.73 4 12 4z","photo":"M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z","photo_album":"M18 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM6 4h5v8l-2.5-1.5L6 12V4zm0 15l3-3.86 2.14 2.58 3-3.86L18 19H6z","photo_camera":"M9 2L7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L15 2H9zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5z","photo_filter":"M19.02 10v9H5V5h9V3H5.02c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-9h-2zM17 10l.94-2.06L20 7l-2.06-.94L17 4l-.94 2.06L14 7l2.06.94zm-3.75.75L12 8l-1.25 2.75L8 12l2.75 1.25L12 16l1.25-2.75L16 12z","photo_library":"M22 16V4c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-11-4l2.03 2.71L16 11l4 5H8l3-4zM2 6v14c0 1.1.9 2 2 2h14v-2H4V6H2z","photo_size_select_actual":"M21 3H3C2 3 1 4 1 5v14c0 1.1.9 2 2 2h18c1 0 2-1 2-2V5c0-1-1-2-2-2zM5 17l3.5-4.5 2.5 3.01L14.5 11l4.5 6H5z","photo_size_select_large":"M21 15h2v2h-2v-2zm0-4h2v2h-2v-2zm2 8h-2v2c1 0 2-1 2-2zM13 3h2v2h-2V3zm8 4h2v2h-2V7zm0-4v2h2c0-1-1-2-2-2zM1 7h2v2H1V7zm16-4h2v2h-2V3zm0 16h2v2h-2v-2zM3 3C2 3 1 4 1 5h2V3zm6 0h2v2H9V3zM5 3h2v2H5V3zm-4 8v8c0 1.1.9 2 2 2h12V11H1zm2 8l2.5-3.21 1.79 2.15 2.5-3.22L13 19H3z","photo_size_select_small":"M23 15h-2v2h2v-2zm0-4h-2v2h2v-2zm0 8h-2v2c1 0 2-1 2-2zM15 3h-2v2h2V3zm8 4h-2v2h2V7zm-2-4v2h2c0-1-1-2-2-2zM3 21h8v-6H1v4c0 1.1.9 2 2 2zM3 7H1v2h2V7zm12 12h-2v2h2v-2zm4-16h-2v2h2V3zm0 16h-2v2h2v-2zM3 3C2 3 1 4 1 5h2V3zm0 8H1v2h2v-2zm8-8H9v2h2V3zM7 3H5v2h2V3z","picture_as_pdf":"M20 2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-8.5 7.5c0 .83-.67 1.5-1.5 1.5H9v2H7.5V7H10c.83 0 1.5.67 1.5 1.5v1zm5 2c0 .83-.67 1.5-1.5 1.5h-2.5V7H15c.83 0 1.5.67 1.5 1.5v3zm4-3H19v1h1.5V11H19v2h-1.5V7h3v1.5zM9 9.5h1v-1H9v1zM4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm10 5.5h1v-3h-1v3z","portrait":"M12 12.25c1.24 0 2.25-1.01 2.25-2.25S13.24 7.75 12 7.75 9.75 8.76 9.75 10s1.01 2.25 2.25 2.25zm4.5 4c0-1.5-3-2.25-4.5-2.25s-4.5.75-4.5 2.25V17h9v-.75zM19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V5h14v14z","remove_red_eye":"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z","rotate_90_degrees_ccw":"M7.34 6.41L.86 12.9l6.49 6.48 6.49-6.48-6.5-6.49zM3.69 12.9l3.66-3.66L11 12.9l-3.66 3.66-3.65-3.66zm15.67-6.26A8.95 8.95 0 0 0 13 4V.76L8.76 5 13 9.24V6c1.79 0 3.58.68 4.95 2.05a7.007 7.007 0 0 1 0 9.9 6.973 6.973 0 0 1-7.79 1.44l-1.49 1.49C10.02 21.62 11.51 22 13 22c2.3 0 4.61-.88 6.36-2.64a8.98 8.98 0 0 0 0-12.72z","rotate_left":"M7.11 8.53L5.7 7.11C4.8 8.27 4.24 9.61 4.07 11h2.02c.14-.87.49-1.72 1.02-2.47zM6.09 13H4.07c.17 1.39.72 2.73 1.62 3.89l1.41-1.42c-.52-.75-.87-1.59-1.01-2.47zm1.01 5.32c1.16.9 2.51 1.44 3.9 1.61V17.9c-.87-.15-1.71-.49-2.46-1.03L7.1 18.32zM13 4.07V1L8.45 5.55 13 10V6.09c2.84.48 5 2.94 5 5.91s-2.16 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93s-3.05-7.44-7-7.93z","rotate_right":"M15.55 5.55L11 1v3.07C7.06 4.56 4 7.92 4 12s3.05 7.44 7 7.93v-2.02c-2.84-.48-5-2.94-5-5.91s2.16-5.43 5-5.91V10l4.55-4.45zM19.93 11a7.906 7.906 0 0 0-1.62-3.89l-1.42 1.42c.54.75.88 1.6 1.02 2.47h2.02zM13 17.9v2.02c1.39-.17 2.74-.71 3.9-1.61l-1.44-1.44c-.75.54-1.59.89-2.46 1.03zm3.89-2.42l1.42 1.41c.9-1.16 1.45-2.5 1.62-3.89h-2.02c-.14.87-.48 1.72-1.02 2.48z","slideshow":"M10 8v8l5-4-5-4zm9-5H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V5h14v14z","straighten":"M21 6H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 10H3V8h2v4h2V8h2v4h2V8h2v4h2V8h2v4h2V8h2v8z","style":"M2.53 19.65l1.34.56v-9.03l-2.43 5.86a2.02 2.02 0 0 0 1.09 2.61zm19.5-3.7L17.07 3.98a2.013 2.013 0 0 0-1.81-1.23c-.26 0-.53.04-.79.15L7.1 5.95a2 2 0 0 0-1.08 2.6l4.96 11.97a1.998 1.998 0 0 0 2.6 1.08l7.36-3.05a1.994 1.994 0 0 0 1.09-2.6zM7.88 8.75c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm-2 11c0 1.1.9 2 2 2h1.45l-3.45-8.34v6.34z","switch_camera":"M20 4h-3.17L15 2H9L7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-5 11.5V13H9v2.5L5.5 12 9 8.5V11h6V8.5l3.5 3.5-3.5 3.5z","switch_video":"M18 9.5V6c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h14c.55 0 1-.45 1-1v-3.5l4 4v-13l-4 4zm-5 6V13H7v2.5L3.5 12 7 8.5V11h6V8.5l3.5 3.5-3.5 3.5z","tag_faces":"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z","texture":"M19.51 3.08L3.08 19.51c.09.34.27.65.51.9.25.24.56.42.9.51L20.93 4.49c-.19-.69-.73-1.23-1.42-1.41zM11.88 3L3 11.88v2.83L14.71 3h-2.83zM5 3c-1.1 0-2 .9-2 2v2l4-4H5zm14 18c.55 0 1.05-.22 1.41-.59.37-.36.59-.86.59-1.41v-2l-4 4h2zm-9.71 0h2.83L21 12.12V9.29L9.29 21z","timelapse":"M16.24 7.76A5.974 5.974 0 0 0 12 6v6l-4.24 4.24c2.34 2.34 6.14 2.34 8.49 0a5.99 5.99 0 0 0-.01-8.48zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z","timer_10":"M0 7.72V9.4l3-1V18h2V6h-.25L0 7.72zm23.78 6.65c-.14-.28-.35-.53-.63-.74-.28-.21-.61-.39-1.01-.53s-.85-.27-1.35-.38a6.64 6.64 0 0 1-.87-.23 2.61 2.61 0 0 1-.55-.25.717.717 0 0 1-.28-.3.978.978 0 0 1 .01-.8c.06-.13.15-.25.27-.34.12-.1.27-.18.45-.24s.4-.09.64-.09c.25 0 .47.04.66.11.19.07.35.17.48.29.13.12.22.26.29.42.06.16.1.32.1.49h1.95a2.517 2.517 0 0 0-.93-1.97c-.3-.25-.66-.44-1.09-.59C21.49 9.07 21 9 20.46 9c-.51 0-.98.07-1.39.21-.41.14-.77.33-1.06.57-.29.24-.51.52-.67.84-.16.32-.23.65-.23 1.01s.08.69.23.96c.15.28.36.52.64.73.27.21.6.38.98.53.38.14.81.26 1.27.36.39.08.71.17.95.26s.43.19.57.29c.13.1.22.22.27.34.05.12.07.25.07.39 0 .32-.13.57-.4.77-.27.2-.66.29-1.17.29-.22 0-.43-.02-.64-.08-.21-.05-.4-.13-.56-.24a1.333 1.333 0 0 1-.59-1.11h-1.89c0 .36.08.71.24 1.05.16.34.39.65.7.93.31.27.69.49 1.15.66.46.17.98.25 1.58.25.53 0 1.01-.06 1.44-.19.43-.13.8-.31 1.11-.54.31-.23.54-.51.71-.83.17-.32.25-.67.25-1.06-.02-.4-.09-.74-.24-1.02zm-9.96-7.32c-.34-.4-.75-.7-1.23-.88-.47-.18-1.01-.27-1.59-.27-.58 0-1.11.09-1.59.27-.48.18-.89.47-1.23.88-.34.41-.6.93-.79 1.59-.18.65-.28 1.45-.28 2.39v1.92c0 .94.09 1.74.28 2.39.19.66.45 1.19.8 1.6.34.41.75.71 1.23.89.48.18 1.01.28 1.59.28.59 0 1.12-.09 1.59-.28.48-.18.88-.48 1.22-.89.34-.41.6-.94.78-1.6.18-.65.28-1.45.28-2.39v-1.92c0-.94-.09-1.74-.28-2.39-.18-.66-.44-1.19-.78-1.59zm-.92 6.17c0 .6-.04 1.11-.12 1.53-.08.42-.2.76-.36 1.02-.16.26-.36.45-.59.57-.23.12-.51.18-.82.18-.3 0-.58-.06-.82-.18s-.44-.31-.6-.57c-.16-.26-.29-.6-.38-1.02-.09-.42-.13-.93-.13-1.53v-2.5c0-.6.04-1.11.13-1.52.09-.41.21-.74.38-1 .16-.25.36-.43.6-.55.24-.11.51-.17.81-.17.31 0 .58.06.81.17.24.11.44.29.6.55.16.25.29.58.37.99.08.41.13.92.13 1.52v2.51z","timer":"M15 1H9v2h6V1zm-4 13h2V8h-2v6zm8.03-6.61l1.42-1.42c-.43-.51-.9-.99-1.41-1.41l-1.42 1.42A8.962 8.962 0 0 0 12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9a8.994 8.994 0 0 0 7.03-14.61zM12 20c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z","timer_3":"M11.61 12.97c-.16-.24-.36-.46-.62-.65a3.38 3.38 0 0 0-.93-.48c.3-.14.57-.3.8-.5.23-.2.42-.41.57-.64.15-.23.27-.46.34-.71.08-.24.11-.49.11-.73 0-.55-.09-1.04-.28-1.46-.18-.42-.44-.77-.78-1.06-.33-.28-.73-.5-1.2-.64-.45-.13-.97-.2-1.53-.2-.55 0-1.06.08-1.52.24-.47.17-.87.4-1.2.69-.33.29-.6.63-.78 1.03-.2.39-.29.83-.29 1.29h1.98c0-.26.05-.49.14-.69.09-.2.22-.38.38-.52.17-.14.36-.25.58-.33.22-.08.46-.12.73-.12.61 0 1.06.16 1.36.47.3.31.44.75.44 1.32 0 .27-.04.52-.12.74-.08.22-.21.41-.38.57-.17.16-.38.28-.63.37-.25.09-.55.13-.89.13H6.72v1.57H7.9c.34 0 .64.04.91.11.27.08.5.19.69.35.19.16.34.36.44.61.1.24.16.54.16.87 0 .62-.18 1.09-.53 1.42-.35.33-.84.49-1.45.49-.29 0-.56-.04-.8-.13-.24-.08-.44-.2-.61-.36-.17-.16-.3-.34-.39-.56-.09-.22-.14-.46-.14-.72H4.19c0 .55.11 1.03.32 1.45.21.42.5.77.86 1.05s.77.49 1.24.63.96.21 1.48.21c.57 0 1.09-.08 1.58-.23.49-.15.91-.38 1.26-.68.36-.3.64-.66.84-1.1.2-.43.3-.93.3-1.48 0-.29-.04-.58-.11-.86-.08-.25-.19-.51-.35-.76zm9.26 1.4c-.14-.28-.35-.53-.63-.74-.28-.21-.61-.39-1.01-.53s-.85-.27-1.35-.38a6.64 6.64 0 0 1-.87-.23 2.61 2.61 0 0 1-.55-.25.717.717 0 0 1-.28-.3c-.05-.11-.08-.24-.08-.39a.946.946 0 0 1 .36-.75c.12-.1.27-.18.45-.24s.4-.09.64-.09c.25 0 .47.04.66.11.19.07.35.17.48.29.13.12.22.26.29.42.06.16.1.32.1.49h1.95a2.517 2.517 0 0 0-.93-1.97c-.3-.25-.66-.44-1.09-.59-.43-.15-.92-.22-1.46-.22-.51 0-.98.07-1.39.21-.41.14-.77.33-1.06.57-.29.24-.51.52-.67.84-.16.32-.23.65-.23 1.01s.08.68.23.96c.15.28.37.52.64.73.27.21.6.38.98.53.38.14.81.26 1.27.36.39.08.71.17.95.26s.43.19.57.29c.13.1.22.22.27.34.05.12.07.25.07.39 0 .32-.13.57-.4.77-.27.2-.66.29-1.17.29-.22 0-.43-.02-.64-.08-.21-.05-.4-.13-.56-.24a1.333 1.333 0 0 1-.59-1.11h-1.89c0 .36.08.71.24 1.05.16.34.39.65.7.93.31.27.69.49 1.15.66.46.17.98.25 1.58.25.53 0 1.01-.06 1.44-.19.43-.13.8-.31 1.11-.54.31-.23.54-.51.71-.83.17-.32.25-.67.25-1.06-.02-.4-.09-.74-.24-1.02z","timer_off":"M19.04 4.55l-1.42 1.42a9.012 9.012 0 0 0-10.57-.49l1.46 1.46C9.53 6.35 10.73 6 12 6c3.87 0 7 3.13 7 7 0 1.27-.35 2.47-.94 3.49l1.45 1.45A8.878 8.878 0 0 0 21 13c0-2.12-.74-4.07-1.97-5.61l1.42-1.42-1.41-1.42zM15 1H9v2h6V1zm-4 8.44l2 2V8h-2v1.44zM3.02 4L1.75 5.27 4.5 8.03A8.905 8.905 0 0 0 3 13c0 4.97 4.02 9 9 9 1.84 0 3.55-.55 4.98-1.5l2.5 2.5 1.27-1.27-7.71-7.71L3.02 4zM12 20c-3.87 0-7-3.13-7-7 0-1.28.35-2.48.95-3.52l9.56 9.56c-1.03.61-2.23.96-3.51.96z","tonality":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.94-.49-7-3.85-7-7.93s3.05-7.44 7-7.93v15.86zm2-15.86c1.03.13 2 .45 2.87.93H13v-.93zM13 7h5.24c.25.31.48.65.68 1H13V7zm0 3h6.74c.08.33.15.66.19 1H13v-1zm0 9.93V19h2.87c-.87.48-1.84.8-2.87.93zM18.24 17H13v-1h5.92c-.2.35-.43.69-.68 1zm1.5-3H13v-1h6.93c-.04.34-.11.67-.19 1z","transform":"M22 18v-2H8V4h2L7 1 4 4h2v2H2v2h4v8c0 1.1.9 2 2 2h8v2h-2l3 3 3-3h-2v-2h4zM10 8h6v6h2V8c0-1.1-.9-2-2-2h-6v2z","tune":"M3 17v2h6v-2H3zM3 5v2h10V5H3zm10 16v-2h8v-2h-8v-2h-2v6h2zM7 9v2H3v2h4v2h2V9H7zm14 4v-2H11v2h10zm-6-4h2V7h4V5h-4V3h-2v6z","view_comfy":"M3 9h4V5H3v4zm0 5h4v-4H3v4zm5 0h4v-4H8v4zm5 0h4v-4h-4v4zM8 9h4V5H8v4zm5-4v4h4V5h-4zm5 9h4v-4h-4v4zM3 19h4v-4H3v4zm5 0h4v-4H8v4zm5 0h4v-4h-4v4zm5 0h4v-4h-4v4zm0-14v4h4V5h-4z","view_compact":"M3 19h6v-7H3v7zm7 0h12v-7H10v7zM3 5v6h19V5H3z","vignette":"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-9 15c-4.42 0-8-2.69-8-6s3.58-6 8-6 8 2.69 8 6-3.58 6-8 6z","wb_auto":"M6.85 12.65h2.3L8 9l-1.15 3.65zM22 7l-1.2 6.29L19.3 7h-1.6l-1.49 6.29L15 7h-.76A7.97 7.97 0 0 0 8 4c-4.42 0-8 3.58-8 8s3.58 8 8 8c3.13 0 5.84-1.81 7.15-4.43l.1.43H17l1.5-6.1L20 16h1.75l2.05-9H22zm-11.7 9l-.7-2H6.4l-.7 2H3.8L7 7h2l3.2 9h-1.9z","wb_cloudy":"M19.36 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04A5.994 5.994 0 0 0 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.64-4.96z","wb_incandescent":"M3.55 18.54l1.41 1.41 1.79-1.8-1.41-1.41-1.79 1.8zM11 22.45h2V19.5h-2v2.95zM4 10.5H1v2h3v-2zm11-4.19V1.5H9v4.81C7.21 7.35 6 9.28 6 11.5c0 3.31 2.69 6 6 6s6-2.69 6-6c0-2.22-1.21-4.15-3-5.19zm5 4.19v2h3v-2h-3zm-2.76 7.66l1.79 1.8 1.41-1.41-1.8-1.79-1.4 1.4z","wb_iridescent":"M5 14.5h14v-6H5v6zM11 .55V3.5h2V.55h-2zm8.04 2.5l-1.79 1.79 1.41 1.41 1.8-1.79-1.42-1.41zM13 22.45V19.5h-2v2.95h2zm7.45-3.91l-1.8-1.79-1.41 1.41 1.79 1.8 1.42-1.42zM3.55 4.46l1.79 1.79 1.41-1.41-1.79-1.79-1.41 1.41zm1.41 15.49l1.79-1.8-1.41-1.41-1.79 1.79 1.41 1.42z","wb_sunny":"M6.76 4.84l-1.8-1.79-1.41 1.41 1.79 1.79 1.42-1.41zM4 10.5H1v2h3v-2zm9-9.95h-2V3.5h2V.55zm7.45 3.91l-1.41-1.41-1.79 1.79 1.41 1.41 1.79-1.79zm-3.21 13.7l1.79 1.8 1.41-1.41-1.8-1.79-1.4 1.4zM20 10.5v2h3v-2h-3zm-8-5c-3.31 0-6 2.69-6 6s2.69 6 6 6 6-2.69 6-6-2.69-6-6-6zm-1 16.95h2V19.5h-2v2.95zm-7.45-3.91l1.41 1.41 1.79-1.8-1.41-1.41-1.79 1.8z","business":"M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8v-2h2v-2h-2v-2h2v-2h-2V9h8v10zm-2-8h-2v2h2v-2zm0 4h-2v2h2v-2z","call":"M6.62 10.79a15.15 15.15 0 0 0 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z","call_end":"M12 9c-1.6 0-3.15.25-4.6.72v3.1c0 .39-.23.74-.56.9-.98.49-1.87 1.12-2.66 1.85-.18.18-.43.28-.7.28-.28 0-.53-.11-.71-.29L.29 13.08a.956.956 0 0 1-.29-.7c0-.28.11-.53.29-.71C3.34 8.78 7.46 7 12 7s8.66 1.78 11.71 4.67c.18.18.29.43.29.71 0 .28-.11.53-.29.71l-2.48 2.48c-.18.18-.43.29-.71.29-.27 0-.52-.11-.7-.28a11.27 11.27 0 0 0-2.67-1.85.996.996 0 0 1-.56-.9v-3.1C15.15 9.25 13.6 9 12 9z","call_made":"M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5z","call_merge":"M17 20.41L18.41 19 15 15.59 13.59 17 17 20.41zM7.5 8H11v5.59L5.59 19 7 20.41l6-6V8h3.5L12 3.5 7.5 8z","call_missed":"M19.59 7L12 14.59 6.41 9H11V7H3v8h2v-4.59l7 7 9-9z","call_missed_outgoing":"M3 8.41l9 9 7-7V15h2V7h-8v2h4.59L12 14.59 4.41 7 3 8.41z","call_received":"M20 5.41L18.59 4 7 15.59V9H5v10h10v-2H8.41z","call_split":"M14 4l2.29 2.29-2.88 2.88 1.42 1.42 2.88-2.88L20 10V4zm-4 0H4v6l2.29-2.29 4.71 4.7V20h2v-8.41l-5.29-5.3z","chat":"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM6 9h12v2H6V9zm8 5H6v-2h8v2zm4-6H6V6h12v2z","chat_bubble":"M20 2H4c-1.1 0-2 .9-2 2v18l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2z","chat_bubble_outline":"M20 2H4c-1.1 0-2 .9-2 2v18l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H6l-2 2V4h16v12z","clear_all":"M5 13h14v-2H5v2zm-2 4h14v-2H3v2zM7 7v2h14V7H7z","comment":"M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z","contact_mail":"M21 8V7l-3 2-3-2v1l3 2 3-2zm1-5H2C.9 3 0 3.9 0 5v14c0 1.1.9 2 2 2h20c1.1 0 1.99-.9 1.99-2L24 5c0-1.1-.9-2-2-2zM8 6c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H2v-1c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1zm8-6h-8V6h8v6z","contact_phone":"M22 3H2C.9 3 0 3.9 0 5v14c0 1.1.9 2 2 2h20c1.1 0 1.99-.9 1.99-2L24 5c0-1.1-.9-2-2-2zM8 6c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H2v-1c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1zm3.85-4h1.64L21 16l-1.99 1.99A7.512 7.512 0 0 1 16.28 14c-.18-.64-.28-1.31-.28-2s.1-1.36.28-2a7.474 7.474 0 0 1 2.73-3.99L21 8l-1.51 2h-1.64c-.22.63-.35 1.3-.35 2s.13 1.37.35 2z","contacts":"M20 0H4v2h16V0zM4 24h16v-2H4v2zM20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-8 2.75c1.24 0 2.25 1.01 2.25 2.25s-1.01 2.25-2.25 2.25S9.75 10.24 9.75 9 10.76 6.75 12 6.75zM17 17H7v-1.5c0-1.67 3.33-2.5 5-2.5s5 .83 5 2.5V17z","dialer_sip":"M17 3h-1v5h1V3zm-2 2h-2V4h2V3h-3v3h2v1h-2v1h3V5zm3-2v5h1V6h2V3h-3zm2 2h-1V4h1v1zm0 10.5c-1.25 0-2.45-.2-3.57-.57a.998.998 0 0 0-1.01.24l-2.2 2.2a15.045 15.045 0 0 1-6.59-6.59l2.2-2.21c.27-.26.35-.65.24-1A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z","dialpad":"M12 19c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zM6 1c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12-8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm-6 8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z","email":"M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z","forum":"M21 6h-2v9H6v2c0 .55.45 1 1 1h11l4 4V7c0-.55-.45-1-1-1zm-4 6V3c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v14l4-4h10c.55 0 1-.45 1-1z","import_contacts":"M21 5c-1.11-.35-2.33-.5-3.5-.5-1.95 0-4.05.4-5.5 1.5-1.45-1.1-3.55-1.5-5.5-1.5S2.45 4.9 1 6v14.65c0 .25.25.5.5.5.1 0 .15-.05.25-.05C3.1 20.45 5.05 20 6.5 20c1.95 0 4.05.4 5.5 1.5 1.35-.85 3.8-1.5 5.5-1.5 1.65 0 3.35.3 4.75 1.05.1.05.15.05.25.05.25 0 .5-.25.5-.5V6c-.6-.45-1.25-.75-2-1zm0 13.5c-1.1-.35-2.3-.5-3.5-.5-1.7 0-4.15.65-5.5 1.5V8c1.35-.85 3.8-1.5 5.5-1.5 1.2 0 2.4.15 3.5.5v11.5z","import_export":"M9 3L5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z","invert_colors_off":"M20.65 20.87l-2.35-2.35-6.3-6.29-3.56-3.57-1.42-1.41L4.27 4.5 3 5.77l2.78 2.78a8.005 8.005 0 0 0 .56 10.69A7.98 7.98 0 0 0 12 21.58c1.79 0 3.57-.59 5.03-1.78l2.7 2.7L21 21.23l-.35-.36zM12 19.59c-1.6 0-3.11-.62-4.24-1.76A5.945 5.945 0 0 1 6 13.59c0-1.32.43-2.57 1.21-3.6L12 14.77v4.82zM12 5.1v4.58l7.25 7.26c1.37-2.96.84-6.57-1.6-9.01L12 2.27l-3.7 3.7 1.41 1.41L12 5.1z","live_help":"M19 2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h4l3 3 3-3h4c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-6 16h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 11.9 13 12.5 13 14h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z","location_off":"M12 6.5A2.5 2.5 0 0 1 14.5 9c0 .74-.33 1.39-.83 1.85l3.63 3.63c.98-1.86 1.7-3.8 1.7-5.48 0-3.87-3.13-7-7-7a7 7 0 0 0-5.04 2.15l3.19 3.19c.46-.52 1.11-.84 1.85-.84zm4.37 9.6l-4.63-4.63-.11-.11L3.27 3 2 4.27l3.18 3.18C5.07 7.95 5 8.47 5 9c0 5.25 7 13 7 13s1.67-1.85 3.38-4.35L18.73 21 20 19.73l-3.63-3.63z","location_on":"M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5z","mail_outline":"M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 14H4V8l8 5 8-5v10zm-8-7L4 6h16l-8 5z","message":"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-2 12H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z","no_sim":"M18.99 5c0-1.1-.89-2-1.99-2h-7L7.66 5.34 19 16.68 18.99 5zM3.65 3.88L2.38 5.15 5 7.77V19c0 1.1.9 2 2 2h10.01c.35 0 .67-.1.96-.26l1.88 1.88 1.27-1.27L3.65 3.88z","phone":"M6.62 10.79a15.15 15.15 0 0 0 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z","phonelink_erase":"M13 8.2l-1-1-4 4-4-4-1 1 4 4-4 4 1 1 4-4 4 4 1-1-4-4 4-4zM19 1H9c-1.1 0-2 .9-2 2v3h2V4h10v16H9v-2H7v3c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2z","phonelink_lock":"M19 1H9c-1.1 0-2 .9-2 2v3h2V4h10v16H9v-2H7v3c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm-8.2 10V9.5C10.8 8.1 9.4 7 8 7S5.2 8.1 5.2 9.5V11c-.6 0-1.2.6-1.2 1.2v3.5c0 .7.6 1.3 1.2 1.3h5.5c.7 0 1.3-.6 1.3-1.2v-3.5c0-.7-.6-1.3-1.2-1.3zm-1.3 0h-3V9.5c0-.8.7-1.3 1.5-1.3s1.5.5 1.5 1.3V11z","phonelink_ring":"M20.1 7.7l-1 1c1.8 1.8 1.8 4.6 0 6.5l1 1c2.5-2.3 2.5-6.1 0-8.5zM18 9.8l-1 1c.5.7.5 1.6 0 2.3l1 1c1.2-1.2 1.2-3 0-4.3zM14 1H4c-1.1 0-2 .9-2 2v18c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2zm0 19H4V4h10v16z","phonelink_setup":"M11.8 12.5v-1l1.1-.8c.1-.1.1-.2.1-.3l-1-1.7c-.1-.1-.2-.2-.3-.1l-1.3.4c-.3-.2-.6-.4-.9-.5l-.2-1.3c0-.1-.1-.2-.3-.2H7c-.1 0-.2.1-.3.2l-.2 1.3c-.3.1-.6.3-.9.5l-1.3-.5c-.1 0-.2 0-.3.1l-1 1.7c-.1.1 0 .2.1.3l1.1.8v1l-1.1.8c-.1.2-.1.3-.1.4l1 1.7c.1.1.2.2.3.1l1.4-.4c.3.2.6.4.9.5l.2 1.3c-.1.1.1.2.2.2h2c.1 0 .2-.1.3-.2l.2-1.3c.3-.1.6-.3.9-.5l1.3.5c.1 0 .2 0 .3-.1l1-1.7c.1-.1 0-.2-.1-.3l-1.1-.9zM8 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM19 1H9c-1.1 0-2 .9-2 2v3h2V4h10v16H9v-2H7v3c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2z","portable_wifi_off":"M17.56 14.24c.28-.69.44-1.45.44-2.24 0-3.31-2.69-6-6-6-.79 0-1.55.16-2.24.44l1.62 1.62c.2-.03.41-.06.62-.06a4 4 0 0 1 3.95 4.63l1.61 1.61zM12 4c4.42 0 8 3.58 8 8 0 1.35-.35 2.62-.95 3.74l1.47 1.47A9.86 9.86 0 0 0 22 12c0-5.52-4.48-10-10-10-1.91 0-3.69.55-5.21 1.47l1.46 1.46A8.04 8.04 0 0 1 12 4zM3.27 2.5L2 3.77l2.1 2.1C2.79 7.57 2 9.69 2 12c0 3.7 2.01 6.92 4.99 8.65l1-1.73C5.61 17.53 4 14.96 4 12c0-1.76.57-3.38 1.53-4.69l1.43 1.44C6.36 9.68 6 10.8 6 12c0 2.22 1.21 4.15 3 5.19l1-1.74c-1.19-.7-2-1.97-2-3.45 0-.65.17-1.25.44-1.79l1.58 1.58L10 12c0 1.1.9 2 2 2l.21-.02.01.01 7.51 7.51L21 20.23 4.27 3.5l-1-1z","present_to_all":"M21 3H3c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h18c1.11 0 2-.89 2-2V5c0-1.11-.89-2-2-2zm0 16.02H3V4.98h18v14.04zM10 12H8l4-4 4 4h-2v4h-4v-4z","ring_volume":"M23.71 16.67A16.97 16.97 0 0 0 12 12C7.46 12 3.34 13.78.29 16.67c-.18.18-.29.43-.29.71 0 .28.11.53.29.71l2.48 2.48c.18.18.43.29.71.29.27 0 .52-.11.7-.28.79-.74 1.69-1.36 2.66-1.85.33-.16.56-.5.56-.9v-3.1c1.45-.48 3-.73 4.6-.73s3.15.25 4.6.72v3.1c0 .39.23.74.56.9.98.49 1.87 1.12 2.66 1.85.18.18.43.28.7.28.28 0 .53-.11.71-.29l2.48-2.48c.18-.18.29-.43.29-.71a.99.99 0 0 0-.29-.7zM21.16 6.26l-1.41-1.41-3.56 3.55 1.41 1.41s3.45-3.52 3.56-3.55zM13 2h-2v5h2V2zM6.4 9.81L7.81 8.4 4.26 4.84 2.84 6.26c.11.03 3.56 3.55 3.56 3.55z","rss_feed":"M4 4.44v2.83c7.03 0 12.73 5.7 12.73 12.73h2.83c0-8.59-6.97-15.56-15.56-15.56zm0 5.66v2.83c3.9 0 7.07 3.17 7.07 7.07h2.83c0-5.47-4.43-9.9-9.9-9.9z","screen_share":"M20 18c1.1 0 1.99-.9 1.99-2L22 6a2 2 0 0 0-2-2H4c-1.11 0-2 .89-2 2v10a2 2 0 0 0 2 2H0v2h24v-2h-4zm-7-3.53v-2.19c-2.78 0-4.61.85-6 2.72.56-2.67 2.11-5.33 6-5.87V7l4 3.73-4 3.74z","speaker_phone":"M7 7.07L8.43 8.5c.91-.91 2.18-1.48 3.57-1.48s2.66.57 3.57 1.48L17 7.07C15.72 5.79 13.95 5 12 5s-3.72.79-5 2.07zM12 1C8.98 1 6.24 2.23 4.25 4.21l1.41 1.41C7.28 4 9.53 3 12 3s4.72 1 6.34 2.62l1.41-1.41A10.963 10.963 0 0 0 12 1zm2.86 9.01L9.14 10C8.51 10 8 10.51 8 11.14v9.71c0 .63.51 1.14 1.14 1.14h5.71c.63 0 1.14-.51 1.14-1.14v-9.71c.01-.63-.5-1.13-1.13-1.13zM15 20H9v-8h6v8z","stay_current_landscape":"M1.01 7L1 17c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2H3c-1.1 0-1.99.9-1.99 2zM19 7v10H5V7h14z","stay_current_portrait":"M17 1.01L7 1c-1.1 0-1.99.9-1.99 2v18c0 1.1.89 2 1.99 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-1.99-2-1.99zM17 19H7V5h10v14z","stay_primary_landscape":"M1.01 7L1 17c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2H3c-1.1 0-1.99.9-1.99 2zM19 7v10H5V7h14z","stay_primary_portrait":"M17 1.01L7 1c-1.1 0-1.99.9-1.99 2v18c0 1.1.89 2 1.99 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-1.99-2-1.99zM17 19H7V5h10v14z","stop_screen_share":"M21.22 18.02l2 2H24v-2h-2.78zm.77-2l.01-10a2 2 0 0 0-2-2H7.22l5.23 5.23c.18-.04.36-.07.55-.1V7.02l4 3.73-1.58 1.47 5.54 5.54c.61-.33 1.03-.99 1.03-1.74zM2.39 1.73L1.11 3l1.54 1.54c-.4.36-.65.89-.65 1.48v10a2 2 0 0 0 2 2H0v2h18.13l2.71 2.71 1.27-1.27L2.39 1.73zM7 15.02c.31-1.48.92-2.95 2.07-4.06l1.59 1.59c-1.54.38-2.7 1.18-3.66 2.47z","swap_calls":"M18 4l-4 4h3v7c0 1.1-.9 2-2 2s-2-.9-2-2V8c0-2.21-1.79-4-4-4S5 5.79 5 8v7H2l4 4 4-4H7V8c0-1.1.9-2 2-2s2 .9 2 2v7c0 2.21 1.79 4 4 4s4-1.79 4-4V8h3l-4-4z","textsms":"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM9 11H7V9h2v2zm4 0h-2V9h2v2zm4 0h-2V9h2v2z","voicemail":"M18.5 6C15.46 6 13 8.46 13 11.5c0 1.33.47 2.55 1.26 3.5H9.74A5.45 5.45 0 0 0 11 11.5C11 8.46 8.54 6 5.5 6S0 8.46 0 11.5 2.46 17 5.5 17h13c3.04 0 5.5-2.46 5.5-5.5S21.54 6 18.5 6zm-13 9C3.57 15 2 13.43 2 11.5S3.57 8 5.5 8 9 9.57 9 11.5 7.43 15 5.5 15zm13 0c-1.93 0-3.5-1.57-3.5-3.5S16.57 8 18.5 8 22 9.57 22 11.5 20.43 15 18.5 15z","vpn_key":"M12.65 10A5.99 5.99 0 0 0 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6a5.99 5.99 0 0 0 5.65-4H17v4h4v-4h2v-4H12.65zM7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z","cake":"M12 6a2 2 0 0 0 2-2c0-.38-.1-.73-.29-1.03L12 0l-1.71 2.97c-.19.3-.29.65-.29 1.03 0 1.1.9 2 2 2zm4.6 9.99l-1.07-1.07-1.08 1.07c-1.3 1.3-3.58 1.31-4.89 0l-1.07-1.07-1.09 1.07C6.75 16.64 5.88 17 4.96 17c-.73 0-1.4-.23-1.96-.61V21c0 .55.45 1 1 1h16c.55 0 1-.45 1-1v-4.61c-.56.38-1.23.61-1.96.61-.92 0-1.79-.36-2.44-1.01zM18 9h-5V7h-2v2H6c-1.66 0-3 1.34-3 3v1.54c0 1.08.88 1.96 1.96 1.96.52 0 1.02-.2 1.38-.57l2.14-2.13 2.13 2.13c.74.74 2.03.74 2.77 0l2.14-2.13 2.13 2.13c.37.37.86.57 1.38.57 1.08 0 1.96-.88 1.96-1.96V12C21 10.34 19.66 9 18 9z","domain":"M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8v-2h2v-2h-2v-2h2v-2h-2V9h8v10zm-2-8h-2v2h2v-2zm0 4h-2v2h2v-2z","group":"M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5c-1.66 0-3 1.34-3 3s1.34 3 3 3zm-8 0c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5C6.34 5 5 6.34 5 8s1.34 3 3 3zm0 2c-2.33 0-7 1.17-7 3.5V19h14v-2.5c0-2.33-4.67-3.5-7-3.5zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5z","group_add":"M8 10H5V7H3v3H0v2h3v3h2v-3h3v-2zm10 1c1.66 0 2.99-1.34 2.99-3S19.66 5 18 5c-.32 0-.63.05-.91.14.57.81.9 1.79.9 2.86s-.34 2.04-.9 2.86c.28.09.59.14.91.14zm-5 0c1.66 0 2.99-1.34 2.99-3S14.66 5 13 5c-1.66 0-3 1.34-3 3s1.34 3 3 3zm6.62 2.16c.83.73 1.38 1.66 1.38 2.84v2h3v-2c0-1.54-2.37-2.49-4.38-2.84zM13 13c-2 0-6 1-6 3v2h12v-2c0-2-4-3-6-3z","location_city":"M15 11V5l-3-3-3 3v2H3v14h18V11h-6zm-8 8H5v-2h2v2zm0-4H5v-2h2v2zm0-4H5V9h2v2zm6 8h-2v-2h2v2zm0-4h-2v-2h2v2zm0-4h-2V9h2v2zm0-4h-2V5h2v2zm6 12h-2v-2h2v2zm0-4h-2v-2h2v2z","mood":"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z","mood_bad":"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 3c-2.33 0-4.31 1.46-5.11 3.5h10.22c-.8-2.04-2.78-3.5-5.11-3.5z","notifications":"M12 22c1.1 0 2-.9 2-2h-4a2 2 0 0 0 2 2zm6-6v-5c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2z","notifications_active":"M7.58 4.08L6.15 2.65C3.75 4.48 2.17 7.3 2.03 10.5h2a8.445 8.445 0 0 1 3.55-6.42zm12.39 6.42h2a10.49 10.49 0 0 0-4.12-7.85l-1.42 1.43a8.495 8.495 0 0 1 3.54 6.42zM18 11c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2v-5zm-6 11c.14 0 .27-.01.4-.04a2.03 2.03 0 0 0 1.44-1.18c.1-.24.15-.5.15-.78h-4c.01 1.1.9 2 2.01 2z","notifications_none":"M12 22c1.1 0 2-.9 2-2h-4c0 1.1.9 2 2 2zm6-6v-5c0-3.07-1.63-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.64 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2zm-2 1H8v-6c0-2.48 1.51-4.5 4-4.5s4 2.02 4 4.5v6z","notifications_off":"M20 18.69L7.84 6.14 5.27 3.49 4 4.76l2.8 2.8v.01c-.52.99-.8 2.16-.8 3.42v5l-2 2v1h13.73l2 2L21 19.72l-1-1.03zM12 22c1.11 0 2-.89 2-2h-4c0 1.11.89 2 2 2zm6-7.32V11c0-3.08-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68c-.15.03-.29.08-.42.12-.1.03-.2.07-.3.11h-.01c-.01 0-.01 0-.02.01-.23.09-.46.2-.68.31 0 0-.01 0-.01.01L18 14.68z","notifications_paused":"M12 22c1.1 0 2-.9 2-2h-4a2 2 0 0 0 2 2zm6-6v-5c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.93 6 11v5l-2 2v1h16v-1l-2-2zm-3.5-6.2l-2.8 3.4h2.8V15h-5v-1.8l2.8-3.4H9.5V8h5v1.8z","pages":"M3 5v6h5L7 7l4 1V3H5c-1.1 0-2 .9-2 2zm5 8H3v6c0 1.1.9 2 2 2h6v-5l-4 1 1-4zm9 4l-4-1v5h6c1.1 0 2-.9 2-2v-6h-5l1 4zm2-14h-6v5l4-1-1 4h5V5c0-1.1-.9-2-2-2z","party_mode":"M20 4h-3.17L15 2H9L7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-8 3c1.63 0 3.06.79 3.98 2H12c-1.66 0-3 1.34-3 3 0 .35.07.69.18 1H7.1A5.002 5.002 0 0 1 12 7zm0 10c-1.63 0-3.06-.79-3.98-2H12c1.66 0 3-1.34 3-3 0-.35-.07-.69-.18-1h2.08a5.002 5.002 0 0 1-4.9 6z","people":"M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5c-1.66 0-3 1.34-3 3s1.34 3 3 3zm-8 0c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5C6.34 5 5 6.34 5 8s1.34 3 3 3zm0 2c-2.33 0-7 1.17-7 3.5V19h14v-2.5c0-2.33-4.67-3.5-7-3.5zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5z","people_outline":"M16.5 13c-1.2 0-3.07.34-4.5 1-1.43-.67-3.3-1-4.5-1C5.33 13 1 14.08 1 16.25V19h22v-2.75c0-2.17-4.33-3.25-6.5-3.25zm-4 4.5h-10v-1.25c0-.54 2.56-1.75 5-1.75s5 1.21 5 1.75v1.25zm9 0H14v-1.25c0-.46-.2-.86-.52-1.22.88-.3 1.96-.53 3.02-.53 2.44 0 5 1.21 5 1.75v1.25zM7.5 12c1.93 0 3.5-1.57 3.5-3.5S9.43 5 7.5 5 4 6.57 4 8.5 5.57 12 7.5 12zm0-5.5c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm9 5.5c1.93 0 3.5-1.57 3.5-3.5S18.43 5 16.5 5 13 6.57 13 8.5s1.57 3.5 3.5 3.5zm0-5.5c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2z","person":"M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z","person_add":"M15 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm-9-2V7H4v3H1v2h3v3h2v-3h3v-2H6zm9 4c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z","person_outline":"M12 5.9a2.1 2.1 0 1 1 0 4.2 2.1 2.1 0 0 1 0-4.2m0 9c2.97 0 6.1 1.46 6.1 2.1v1.1H5.9V17c0-.64 3.13-2.1 6.1-2.1M12 4C9.79 4 8 5.79 8 8s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 9c-2.67 0-8 1.34-8 4v3h16v-3c0-2.66-5.33-4-8-4z","plus_one":"M10 8H8v4H4v2h4v4h2v-4h4v-2h-4zm4.5-1.92V7.9l2.5-.5V18h2V5z","poll":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z","public":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z","school":"M5 13.18v4L12 21l7-3.82v-4L12 17l-7-3.82zM12 3L1 9l11 6 9-4.91V17h2V9L12 3z","sentiment_dissatisfied":"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm0-6c-2.33 0-4.32 1.45-5.12 3.5h1.67c.69-1.19 1.97-2 3.45-2s2.75.81 3.45 2h1.67c-.8-2.05-2.79-3.5-5.12-3.5z","sentiment_neutral":"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z","sentiment_satisfied":"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm0-4c-1.48 0-2.75-.81-3.45-2H6.88a5.495 5.495 0 0 0 10.24 0h-1.67c-.7 1.19-1.97 2-3.45 2z","sentiment_very_dissatisfied":"M11.99 2C6.47 2 2 6.47 2 12s4.47 10 9.99 10S22 17.53 22 12 17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm4.18-12.24l-1.06 1.06-1.06-1.06L13 8.82l1.06 1.06L13 10.94 14.06 12l1.06-1.06L16.18 12l1.06-1.06-1.06-1.06 1.06-1.06zM7.82 12l1.06-1.06L9.94 12 11 10.94 9.94 9.88 11 8.82 9.94 7.76 8.88 8.82 7.82 7.76 6.76 8.82l1.06 1.06-1.06 1.06zM12 14c-2.33 0-4.31 1.46-5.11 3.5h10.22c-.8-2.04-2.78-3.5-5.11-3.5z","sentiment_very_satisfied":"M11.99 2C6.47 2 2 6.47 2 12s4.47 10 9.99 10S22 17.53 22 12 17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm1-10.06L14.06 11l1.06-1.06L16.18 11l1.06-1.06-2.12-2.12zm-4.12 0L9.94 11 11 9.94 8.88 7.82 6.76 9.94 7.82 11zM12 17.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z","share":"M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z","whatshot":"M13.5.67s.74 2.65.74 4.8c0 2.06-1.35 3.73-3.41 3.73-2.07 0-3.63-1.67-3.63-3.73l.03-.36C5.21 7.51 4 10.62 4 14c0 4.42 3.58 8 8 8s8-3.58 8-8C20 8.61 17.41 3.8 13.5.67zM11.71 19c-1.78 0-3.22-1.4-3.22-3.14 0-1.62 1.05-2.76 2.81-3.12 1.77-.36 3.6-1.21 4.62-2.58.39 1.29.59 2.65.59 4.04a4.8 4.8 0 0 1-4.8 4.8z","3d_rotation":"M7.52 21.48A10.487 10.487 0 0 1 1.55 13H.05C.56 19.16 5.71 24 12 24l.66-.03-3.81-3.81-1.33 1.32zm.89-6.52c-.19 0-.37-.03-.52-.08a1.07 1.07 0 0 1-.4-.24.99.99 0 0 1-.26-.37c-.06-.14-.09-.3-.09-.47h-1.3c0 .36.07.68.21.95.14.27.33.5.56.69.24.18.51.32.82.41.3.1.62.15.96.15.37 0 .72-.05 1.03-.15.32-.1.6-.25.83-.44s.42-.43.55-.72c.13-.29.2-.61.2-.97 0-.19-.02-.38-.07-.56a1.67 1.67 0 0 0-.23-.51c-.1-.16-.24-.3-.4-.43-.17-.13-.37-.23-.61-.31a2.098 2.098 0 0 0 .89-.75c.1-.15.17-.3.22-.46.05-.16.07-.32.07-.48 0-.36-.06-.68-.18-.96a1.78 1.78 0 0 0-.51-.69c-.2-.19-.47-.33-.77-.43C9.1 8.05 8.76 8 8.39 8c-.36 0-.69.05-1 .16-.3.11-.57.26-.79.45-.21.19-.38.41-.51.67-.12.26-.18.54-.18.85h1.3c0-.17.03-.32.09-.45s.14-.25.25-.34c.11-.09.23-.17.38-.22.15-.05.3-.08.48-.08.4 0 .7.1.89.31.19.2.29.49.29.86 0 .18-.03.34-.08.49a.87.87 0 0 1-.25.37c-.11.1-.25.18-.41.24-.16.06-.36.09-.58.09H7.5v1.03h.77c.22 0 .42.02.6.07s.33.13.45.23c.12.11.22.24.29.4.07.16.1.35.1.57 0 .41-.12.72-.35.93-.23.23-.55.33-.95.33zm8.55-5.92c-.32-.33-.7-.59-1.14-.77-.43-.18-.92-.27-1.46-.27H12v8h2.3c.55 0 1.06-.09 1.51-.27.45-.18.84-.43 1.16-.76.32-.33.57-.73.74-1.19.17-.47.26-.99.26-1.57v-.4c0-.58-.09-1.1-.26-1.57-.18-.47-.43-.87-.75-1.2zm-.39 3.16c0 .42-.05.79-.14 1.13-.1.33-.24.62-.43.85-.19.23-.43.41-.71.53-.29.12-.62.18-.99.18h-.91V9.12h.97c.72 0 1.27.23 1.64.69.38.46.57 1.12.57 1.99v.4zM12 0l-.66.03 3.81 3.81 1.33-1.33c3.27 1.55 5.61 4.72 5.96 8.48h1.5C23.44 4.84 18.29 0 12 0z","accessibility":"M12 2c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm9 7h-6v13h-2v-6h-2v6H9V9H3V7h18v2z","accessible":"M19 13v-2c-1.54.02-3.09-.75-4.07-1.83l-1.29-1.43c-.17-.19-.38-.34-.61-.45-.01 0-.01-.01-.02-.01H13c-.35-.2-.75-.3-1.19-.26C10.76 7.11 10 8.04 10 9.09V15c0 1.1.9 2 2 2h5v5h2v-5.5c0-1.1-.9-2-2-2h-3v-3.45c1.29 1.07 3.25 1.94 5 1.95zm-6.17 5c-.41 1.16-1.52 2-2.83 2-1.66 0-3-1.34-3-3 0-1.31.84-2.41 2-2.83V12.1a5 5 0 1 0 5.9 5.9h-2.07z","account_balance":"M4 10v7h3v-7H4zm6 0v7h3v-7h-3zM2 22h19v-3H2v3zm14-12v7h3v-7h-3zm-4.5-9L2 6v2h19V6l-9.5-5z","account_balance_wallet":"M21 18v1c0 1.1-.9 2-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14c1.1 0 2 .9 2 2v1h-9a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9zm-9-2h10V8H12v8zm4-2.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5z","account_box":"M3 5v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2H5a2 2 0 0 0-2 2zm12 4c0 1.66-1.34 3-3 3s-3-1.34-3-3 1.34-3 3-3 3 1.34 3 3zm-9 8c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1H6v-1z","account_circle":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2a7.2 7.2 0 0 1-6-3.22c.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08a7.2 7.2 0 0 1-6 3.22z","add_shopping_cart":"M11 9h2V6h3V4h-3V1h-2v3H8v2h3v3zm-4 9c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zm10 0c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2zm-9.83-3.25l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.86-7.01L19.42 4h-.01l-1.1 2-2.76 5H8.53l-.13-.27L6.16 6l-.95-2-.94-2H1v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42c-.13 0-.25-.11-.25-.25z","alarm":"M22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1.53 4.59-3.85zM12.5 8H11v6l4.75 2.85.75-1.23-4-2.37V8zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9a9 9 0 0 0 0-18zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z","alarm_add":"M7.88 3.39L6.6 1.86 2 5.71l1.29 1.53 4.59-3.85zM22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9a9 9 0 0 0 0-18zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7zm1-11h-2v3H8v2h3v3h2v-3h3v-2h-3V9z","alarm_off":"M12 6c3.87 0 7 3.13 7 7 0 .84-.16 1.65-.43 2.4l1.52 1.52c.58-1.19.91-2.51.91-3.92a9 9 0 0 0-9-9c-1.41 0-2.73.33-3.92.91L9.6 6.43C10.35 6.16 11.16 6 12 6zm10-.28l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM2.92 2.29L1.65 3.57 2.98 4.9l-1.11.93 1.42 1.42 1.11-.94.8.8A8.964 8.964 0 0 0 3 13c0 4.97 4.02 9 9 9 2.25 0 4.31-.83 5.89-2.2l2.2 2.2 1.27-1.27L3.89 3.27l-.97-.98zm13.55 16.1C15.26 19.39 13.7 20 12 20c-3.87 0-7-3.13-7-7 0-1.7.61-3.26 1.61-4.47l9.86 9.86zM8.02 3.28L6.6 1.86l-.86.71 1.42 1.42.86-.71z","alarm_on":"M22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1.53 4.59-3.85zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9a9 9 0 0 0 0-18zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7zm-1.46-5.47L8.41 12.4l-1.06 1.06 3.18 3.18 6-6-1.06-1.06-4.93 4.95z","all_out":"M16.21 4.16l4 4v-4zm4 12l-4 4h4zm-12 4l-4-4v4zm-4-12l4-4h-4zm12.95-.95c-2.73-2.73-7.17-2.73-9.9 0s-2.73 7.17 0 9.9 7.17 2.73 9.9 0 2.73-7.16 0-9.9zm-1.1 8.8c-2.13 2.13-5.57 2.13-7.7 0s-2.13-5.57 0-7.7 5.57-2.13 7.7 0 2.13 5.57 0 7.7z","android":"M6 18c0 .55.45 1 1 1h1v3.5c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5V19h2v3.5c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5V19h1c.55 0 1-.45 1-1V8H6v10zM3.5 8C2.67 8 2 8.67 2 9.5v7c0 .83.67 1.5 1.5 1.5S5 17.33 5 16.5v-7C5 8.67 4.33 8 3.5 8zm17 0c-.83 0-1.5.67-1.5 1.5v7c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5v-7c0-.83-.67-1.5-1.5-1.5zm-4.97-5.84l1.3-1.3c.2-.2.2-.51 0-.71-.2-.2-.51-.2-.71 0l-1.48 1.48A5.84 5.84 0 0 0 12 1c-.96 0-1.86.23-2.66.63L7.85.15c-.2-.2-.51-.2-.71 0-.2.2-.2.51 0 .71l1.31 1.31A5.983 5.983 0 0 0 6 7h12c0-1.99-.97-3.75-2.47-4.84zM10 5H9V4h1v1zm5 0h-1V4h1v1z","announcement":"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-7 9h-2V5h2v6zm0 4h-2v-2h2v2z","aspect_ratio":"M19 12h-2v3h-3v2h5v-5zM7 9h3V7H5v5h2V9zm14-6H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02z","assessment":"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z","assignment":"M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z","assignment_ind":"M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm0 4c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H6v-1.4c0-2 4-3.1 6-3.1s6 1.1 6 3.1V19z","assignment_late":"M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-6 15h-2v-2h2v2zm0-4h-2V8h2v6zm-1-9c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z","assignment_return":"M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm4 12h-4v3l-5-5 5-5v3h4v4z","assignment_returned":"M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm0 15l-5-5h3V9h4v4h3l-5 5z","assignment_turned_in":"M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm-2 14l-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z","autorenew":"M12 6v3l4-4-4-4v3c-4.42 0-8 3.58-8 8 0 1.57.46 3.03 1.24 4.26L6.7 14.8A5.87 5.87 0 0 1 6 12c0-3.31 2.69-6 6-6zm6.76 1.74L17.3 9.2c.44.84.7 1.79.7 2.8 0 3.31-2.69 6-6 6v-3l-4 4 4 4v-3c4.42 0 8-3.58 8-8 0-1.57-.46-3.03-1.24-4.26z","backup":"M19.35 10.04A7.49 7.49 0 0 0 12 4C9.11 4 6.6 5.64 5.35 8.04A5.994 5.994 0 0 0 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z","book":"M18 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM6 4h5v8l-2.5-1.5L6 12V4z","bookmark":"M17 3H7c-1.1 0-1.99.9-1.99 2L5 21l7-3 7 3V5c0-1.1-.9-2-2-2z","bookmark_border":"M17 3H7c-1.1 0-1.99.9-1.99 2L5 21l7-3 7 3V5c0-1.1-.9-2-2-2zm0 15l-5-2.18L7 18V5h10v13z","bug_report":"M20 8h-2.81a5.985 5.985 0 0 0-1.82-1.96L17 4.41 15.59 3l-2.17 2.17C12.96 5.06 12.49 5 12 5c-.49 0-.96.06-1.41.17L8.41 3 7 4.41l1.62 1.63C7.88 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09-1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20V8zm-6 8h-4v-2h4v2zm0-4h-4v-2h4v2z","build":"M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z","cached":"M19 8l-4 4h3c0 3.31-2.69 6-6 6a5.87 5.87 0 0 1-2.8-.7l-1.46 1.46A7.93 7.93 0 0 0 12 20c4.42 0 8-3.58 8-8h3l-4-4zM6 12c0-3.31 2.69-6 6-6 1.01 0 1.97.25 2.8.7l1.46-1.46A7.93 7.93 0 0 0 12 4c-4.42 0-8 3.58-8 8H1l4 4 4-4H6z","camera_enhance":"M9 3L7.17 5H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2h-3.17L15 3H9zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-1l1.25-2.75L16 13l-2.75-1.25L12 9l-1.25 2.75L8 13l2.75 1.25z","card_giftcard":"M20 6h-2.18c.11-.31.18-.65.18-1a2.996 2.996 0 0 0-5.5-1.65l-.5.67-.5-.68A3.01 3.01 0 0 0 9 2C7.34 2 6 3.34 6 5c0 .35.07.69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM9 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm11 15H4v-2h16v2zm0-5H4V8h5.08L7 10.83 8.62 12 11 8.76l1-1.36 1 1.36L15.38 12 17 10.83 14.92 8H20v6z","card_membership":"M20 2H4c-1.11 0-2 .89-2 2v11c0 1.11.89 2 2 2h4v5l4-2 4 2v-5h4c1.11 0 2-.89 2-2V4c0-1.11-.89-2-2-2zm0 13H4v-2h16v2zm0-5H4V4h16v6z","card_travel":"M20 6h-3V4c0-1.11-.89-2-2-2H9c-1.11 0-2 .89-2 2v2H4c-1.11 0-2 .89-2 2v11c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zM9 4h6v2H9V4zm11 15H4v-2h16v2zm0-5H4V8h3v2h2V8h6v2h2V8h3v6z","change_history":"M12 7.77L18.39 18H5.61L12 7.77M12 4L2 20h20L12 4z","check_circle":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z","chrome_reader_mode":"M13 12h7v1.5h-7zm0-2.5h7V11h-7zm0 5h7V16h-7zM21 4H3c-1.1 0-2 .9-2 2v13c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 15h-9V6h9v13z","class":"M18 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM6 4h5v8l-2.5-1.5L6 12V4z","code":"M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z","compare_arrows":"M9.01 14H2v2h7.01v3L13 15l-3.99-4v3zm5.98-1v-3H22V8h-7.01V5L11 9l3.99 4z","copyright":"M10.08 10.86c.05-.33.16-.62.3-.87s.34-.46.59-.62c.24-.15.54-.22.91-.23.23.01.44.05.63.13.2.09.38.21.52.36s.25.33.34.53.13.42.14.64h1.79c-.02-.47-.11-.9-.28-1.29s-.4-.73-.7-1.01-.66-.5-1.08-.66-.88-.23-1.39-.23c-.65 0-1.22.11-1.7.34s-.88.53-1.2.92-.56.84-.71 1.36S8 11.29 8 11.87v.27c0 .58.08 1.12.23 1.64s.39.97.71 1.35.72.69 1.2.91 1.05.34 1.7.34c.47 0 .91-.08 1.32-.23s.77-.36 1.08-.63.56-.58.74-.94.29-.74.3-1.15h-1.79c-.01.21-.06.4-.15.58s-.21.33-.36.46-.32.23-.52.3c-.19.07-.39.09-.6.1-.36-.01-.66-.08-.89-.23-.25-.16-.45-.37-.59-.62s-.25-.55-.3-.88-.08-.67-.08-1v-.27c0-.35.03-.68.08-1.01zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z","credit_card":"M20 4H4c-1.11 0-1.99.89-1.99 2L2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 14H4v-6h16v6zm0-10H4V6h16v2z","dashboard":"M3 13h8V3H3v10zm0 8h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z","date_range":"M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z","delete":"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z","delete_forever":"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zm2.46-7.12l1.41-1.41L12 12.59l2.12-2.12 1.41 1.41L13.41 14l2.12 2.12-1.41 1.41L12 15.41l-2.12 2.12-1.41-1.41L10.59 14l-2.13-2.12zM15.5 4l-1-1h-5l-1 1H5v2h14V4z","description":"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z","dns":"M20 13H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1v-6c0-.55-.45-1-1-1zM7 19c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM20 3H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1V4c0-.55-.45-1-1-1zM7 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z","done":"M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z","done_all":"M18 7l-1.41-1.41-6.34 6.34 1.41 1.41L18 7zm4.24-1.41L11.66 16.17 7.48 12l-1.41 1.41L11.66 19l12-12-1.42-1.41zM.41 13.41L6 19l1.41-1.41L1.83 12 .41 13.41z","donut_large":"M11 5.08V2c-5 .5-9 4.81-9 10s4 9.5 9 10v-3.08c-3-.48-6-3.4-6-6.92s3-6.44 6-6.92zM18.97 11H22c-.47-5-4-8.53-9-9v3.08C16 5.51 18.54 8 18.97 11zM13 18.92V22c5-.47 8.53-4 9-9h-3.03c-.43 3-2.97 5.49-5.97 5.92z","donut_small":"M11 9.16V2c-5 .5-9 4.79-9 10s4 9.5 9 10v-7.16c-1-.41-2-1.52-2-2.84s1-2.43 2-2.84zM14.86 11H22c-.48-4.75-4-8.53-9-9v7.16c1 .3 1.52.98 1.86 1.84zM13 14.84V22c5-.47 8.52-4.25 9-9h-7.14c-.34.86-.86 1.54-1.86 1.84z","eject":"M5 17h14v2H5zm7-12L5.33 15h13.34z","euro_symbol":"M15 18.5A6.48 6.48 0 0 1 9.24 15H15v-2H8.58c-.05-.33-.08-.66-.08-1s.03-.67.08-1H15V9H9.24A6.49 6.49 0 0 1 15 5.5c1.61 0 3.09.59 4.23 1.57L21 5.3A8.955 8.955 0 0 0 15 3c-3.92 0-7.24 2.51-8.48 6H3v2h3.06a8.262 8.262 0 0 0 0 2H3v2h3.52c1.24 3.49 4.56 6 8.48 6 2.31 0 4.41-.87 6-2.3l-1.78-1.77c-1.13.98-2.6 1.57-4.22 1.57z","event":"M17 12h-5v5h5v-5zM16 1v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-1V1h-2zm3 18H5V8h14v11z","event_seat":"M4 18v3h3v-3h10v3h3v-6H4zm15-8h3v3h-3zM2 10h3v3H2zm15 3H7V5c0-1.1.9-2 2-2h6c1.1 0 2 .9 2 2v8z","exit_to_app":"M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5a2 2 0 0 0-2 2v4h2V5h14v14H5v-4H3v4a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z","explore":"M12 10.9c-.61 0-1.1.49-1.1 1.1s.49 1.1 1.1 1.1c.61 0 1.1-.49 1.1-1.1s-.49-1.1-1.1-1.1zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm2.19 12.19L6 18l3.81-8.19L18 6l-3.81 8.19z","extension":"M20.5 11H19V7c0-1.1-.9-2-2-2h-4V3.5a2.5 2.5 0 0 0-5 0V5H4c-1.1 0-1.99.9-1.99 2v3.8H3.5c1.49 0 2.7 1.21 2.7 2.7s-1.21 2.7-2.7 2.7H2V20c0 1.1.9 2 2 2h3.8v-1.5a2.7 2.7 0 0 1 2.7-2.7 2.7 2.7 0 0 1 2.7 2.7V22H17c1.1 0 2-.9 2-2v-4h1.5a2.5 2.5 0 0 0 0-5z","face":"M9 11.75a1.25 1.25 0 1 0 0 2.5 1.25 1.25 0 0 0 0-2.5zm6 0a1.25 1.25 0 1 0 0 2.5 1.25 1.25 0 0 0 0-2.5zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8 0-.29.02-.58.05-.86 2.36-1.05 4.23-2.98 5.21-5.37a9.974 9.974 0 0 0 10.41 3.97c.21.71.33 1.47.33 2.26 0 4.41-3.59 8-8 8z","favorite":"M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z","favorite_border":"M16.5 3c-1.74 0-3.41.81-4.5 2.09C10.91 3.81 9.24 3 7.5 3 4.42 3 2 5.42 2 8.5c0 3.78 3.4 6.86 8.55 11.54L12 21.35l1.45-1.32C18.6 15.36 22 12.28 22 8.5 22 5.42 19.58 3 16.5 3zm-4.4 15.55l-.1.1-.1-.1C7.14 14.24 4 11.39 4 8.5 4 6.5 5.5 5 7.5 5c1.54 0 3.04.99 3.57 2.36h1.87C13.46 5.99 14.96 5 16.5 5c2 0 3.5 1.5 3.5 3.5 0 2.89-3.14 5.74-7.9 10.05z","feedback":"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-7 12h-2v-2h2v2zm0-4h-2V6h2v4z","find_in_page":"M20 19.59V8l-6-6H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c.45 0 .85-.15 1.19-.4l-4.43-4.43c-.8.52-1.74.83-2.76.83-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5c0 1.02-.31 1.96-.83 2.75L20 19.59zM9 13c0 1.66 1.34 3 3 3s3-1.34 3-3-1.34-3-3-3-3 1.34-3 3z","find_replace":"M11 6c1.38 0 2.63.56 3.54 1.46L12 10h6V4l-2.05 2.05A6.976 6.976 0 0 0 11 4c-3.53 0-6.43 2.61-6.92 6H6.1A5 5 0 0 1 11 6zm5.64 9.14A6.89 6.89 0 0 0 17.92 12H15.9a5 5 0 0 1-4.9 4c-1.38 0-2.63-.56-3.54-1.46L10 12H4v6l2.05-2.05A6.976 6.976 0 0 0 11 18c1.55 0 2.98-.51 4.14-1.36L20 21.49 21.49 20l-4.85-4.86z","fingerprint":"M17.81 4.47c-.08 0-.16-.02-.23-.06C15.66 3.42 14 3 12.01 3c-1.98 0-3.86.47-5.57 1.41a.51.51 0 0 1-.68-.2.506.506 0 0 1 .2-.68C7.82 2.52 9.86 2 12.01 2c2.13 0 3.99.47 6.03 1.52.25.13.34.43.21.67a.49.49 0 0 1-.44.28zM3.5 9.72a.5.5 0 0 1-.41-.79c.99-1.4 2.25-2.5 3.75-3.27C9.98 4.04 14 4.03 17.15 5.65c1.5.77 2.76 1.86 3.75 3.25a.5.5 0 0 1-.12.7.5.5 0 0 1-.7-.12 9.388 9.388 0 0 0-3.39-2.94c-2.87-1.47-6.54-1.47-9.4.01-1.36.7-2.5 1.7-3.4 2.96-.08.14-.23.21-.39.21zm6.25 12.07a.47.47 0 0 1-.35-.15c-.87-.87-1.34-1.43-2.01-2.64-.69-1.23-1.05-2.73-1.05-4.34 0-2.97 2.54-5.39 5.66-5.39s5.66 2.42 5.66 5.39c0 .28-.22.5-.5.5s-.5-.22-.5-.5c0-2.42-2.09-4.39-4.66-4.39-2.57 0-4.66 1.97-4.66 4.39 0 1.44.32 2.77.93 3.85.64 1.15 1.08 1.64 1.85 2.42.19.2.19.51 0 .71-.11.1-.24.15-.37.15zm7.17-1.85c-1.19 0-2.24-.3-3.1-.89-1.49-1.01-2.38-2.65-2.38-4.39 0-.28.22-.5.5-.5s.5.22.5.5c0 1.41.72 2.74 1.94 3.56.71.48 1.54.71 2.54.71.24 0 .64-.03 1.04-.1.27-.05.53.13.58.41.05.27-.13.53-.41.58-.57.11-1.07.12-1.21.12zM14.91 22c-.04 0-.09-.01-.13-.02-1.59-.44-2.63-1.03-3.72-2.1a7.297 7.297 0 0 1-2.17-5.22c0-1.62 1.38-2.94 3.08-2.94 1.7 0 3.08 1.32 3.08 2.94 0 1.07.93 1.94 2.08 1.94s2.08-.87 2.08-1.94c0-3.77-3.25-6.83-7.25-6.83-2.84 0-5.44 1.58-6.61 4.03-.39.81-.59 1.76-.59 2.8 0 .78.07 2.01.67 3.61.1.26-.03.55-.29.64-.26.1-.55-.04-.64-.29a11.14 11.14 0 0 1-.73-3.96c0-1.2.23-2.29.68-3.24 1.33-2.79 4.28-4.6 7.51-4.6 4.55 0 8.25 3.51 8.25 7.83 0 1.62-1.38 2.94-3.08 2.94s-3.08-1.32-3.08-2.94c0-1.07-.93-1.94-2.08-1.94s-2.08.87-2.08 1.94c0 1.71.66 3.31 1.87 4.51.95.94 1.86 1.46 3.27 1.85.27.07.42.35.35.61-.05.23-.26.38-.47.38z","flight_land":"M2.5 19h19v2h-19zm7.18-5.73l4.35 1.16 5.31 1.42c.8.21 1.62-.26 1.84-1.06.21-.8-.26-1.62-1.06-1.84l-5.31-1.42-2.76-9.02L10.12 2v8.28L5.15 8.95l-.93-2.32-1.45-.39v5.17l1.6.43 5.31 1.43z","flight_takeoff":"M2.5 19h19v2h-19zm19.57-9.36c-.21-.8-1.04-1.28-1.84-1.06L14.92 10l-6.9-6.43-1.93.51 4.14 7.17-4.97 1.33-1.97-1.54-1.45.39 1.82 3.16.77 1.33 1.6-.43 5.31-1.42 4.35-1.16L21 11.49c.81-.23 1.28-1.05 1.07-1.85z","flip_to_back":"M9 7H7v2h2V7zm0 4H7v2h2v-2zm0-8a2 2 0 0 0-2 2h2V3zm4 12h-2v2h2v-2zm6-12v2h2c0-1.1-.9-2-2-2zm-6 0h-2v2h2V3zM9 17v-2H7a2 2 0 0 0 2 2zm10-4h2v-2h-2v2zm0-4h2V7h-2v2zm0 8c1.1 0 2-.9 2-2h-2v2zM5 7H3v12a2 2 0 0 0 2 2h12v-2H5V7zm10-2h2V3h-2v2zm0 12h2v-2h-2v2z","flip_to_front":"M3 13h2v-2H3v2zm0 4h2v-2H3v2zm2 4v-2H3a2 2 0 0 0 2 2zM3 9h2V7H3v2zm12 12h2v-2h-2v2zm4-18H9a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 12H9V5h10v10zm-8 6h2v-2h-2v2zm-4 0h2v-2H7v2z","g_translate":"M20 5h-9.12L10 2H4c-1.1 0-2 .9-2 2v13c0 1.1.9 2 2 2h7l1 3h8c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zM7.17 14.59c-2.25 0-4.09-1.83-4.09-4.09s1.83-4.09 4.09-4.09c1.04 0 1.99.37 2.74 1.07l.07.06-1.23 1.18-.06-.05c-.29-.27-.78-.59-1.52-.59-1.31 0-2.38 1.09-2.38 2.42s1.07 2.42 2.38 2.42c1.37 0 1.96-.87 2.12-1.46H7.08V9.91h3.95l.01.07c.04.21.05.4.05.61 0 2.35-1.61 4-3.92 4zm6.03-1.71c.33.6.74 1.18 1.19 1.7l-.54.53-.65-2.23zm.77-.76h-.99l-.31-1.04h3.99s-.34 1.31-1.56 2.74a9.18 9.18 0 0 1-1.13-1.7zM21 20c0 .55-.45 1-1 1h-7l2-2-.81-2.77.92-.92L17.79 18l.73-.73-2.71-2.68c.9-1.03 1.6-2.25 1.92-3.51H19v-1.04h-3.64V9h-1.04v1.04h-1.96L11.18 6H20c.55 0 1 .45 1 1v13z","gavel":"M1 21h12v2H1zM5.245 8.07l2.83-2.827 14.14 14.142-2.828 2.828zM12.317 1l5.657 5.656-2.83 2.83-5.654-5.66zM3.825 9.485l5.657 5.657-2.828 2.828-5.657-5.657z","get_app":"M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z","gif":"M11.5 9H13v6h-1.5zM9 9H6c-.6 0-1 .5-1 1v4c0 .5.4 1 1 1h3c.6 0 1-.5 1-1v-2H8.5v1.5h-2v-3H10V10c0-.5-.4-1-1-1zm10 1.5V9h-4.5v6H16v-2h2v-1.5h-2v-1z","grade":"M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z","group_work":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM8 17.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5zM9.5 8a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1-5 0zm6.5 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5z","help":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z","help_outline":"M11 18h2v-2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14a4 4 0 0 0-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5a4 4 0 0 0-4-4z","highlight_off":"M14.59 8L12 10.59 9.41 8 8 9.41 10.59 12 8 14.59 9.41 16 12 13.41 14.59 16 16 14.59 13.41 12 16 9.41 14.59 8zM12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z","history":"M13 3a9 9 0 0 0-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42A8.954 8.954 0 0 0 13 21a9 9 0 0 0 0-18zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z","home":"M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z","hourglass_empty":"M6 2v6h.01L6 8.01 10 12l-4 4 .01.01H6V22h12v-5.99h-.01L18 16l-4-4 4-3.99-.01-.01H18V2H6zm10 14.5V20H8v-3.5l4-4 4 4zm-4-5l-4-4V4h8v3.5l-4 4z","hourglass_full":"M6 2v6h.01L6 8.01 10 12l-4 4 .01.01H6V22h12v-5.99h-.01L18 16l-4-4 4-3.99-.01-.01H18V2H6z","http":"M4.5 11h-2V9H1v6h1.5v-2.5h2V15H6V9H4.5v2zm2.5-.5h1.5V15H10v-4.5h1.5V9H7v1.5zm5.5 0H14V15h1.5v-4.5H17V9h-4.5v1.5zm9-1.5H18v6h1.5v-2h2c.8 0 1.5-.7 1.5-1.5v-1c0-.8-.7-1.5-1.5-1.5zm0 2.5h-2v-1h2v1z","https":"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z","important_devices":"M23 11.01L18 11c-.55 0-1 .45-1 1v9c0 .55.45 1 1 1h5c.55 0 1-.45 1-1v-9c0-.55-.45-.99-1-.99zM23 20h-5v-7h5v7zM20 2H2C.89 2 0 2.89 0 4v12a2 2 0 0 0 2 2h7v2H7v2h8v-2h-2v-2h2v-2H2V4h18v5h2V4a2 2 0 0 0-2-2zm-8.03 7L11 6l-.97 3H7l2.47 1.76-.94 2.91 2.47-1.8 2.47 1.8-.94-2.91L15 9h-3.03z","info":"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z","info_outline":"M11 17h2v-6h-2v6zm1-15C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zM11 9h2V7h-2v2z","input":"M21 3.01H3c-1.1 0-2 .9-2 2V9h2V4.99h18v14.03H3V15H1v4.01c0 1.1.9 1.98 2 1.98h18c1.1 0 2-.88 2-1.98v-14a2 2 0 0 0-2-2zM11 16l4-4-4-4v3H1v2h10v3z","invert_colors":"M17.66 7.93L12 2.27 6.34 7.93c-3.12 3.12-3.12 8.19 0 11.31A7.98 7.98 0 0 0 12 21.58c2.05 0 4.1-.78 5.66-2.34 3.12-3.12 3.12-8.19 0-11.31zM12 19.59c-1.6 0-3.11-.62-4.24-1.76C6.62 16.69 6 15.19 6 13.59s.62-3.11 1.76-4.24L12 5.1v14.49z","label":"M17.63 5.84C17.27 5.33 16.67 5 16 5L5 5.01C3.9 5.01 3 5.9 3 7v10c0 1.1.9 1.99 2 1.99L16 19c.67 0 1.27-.33 1.63-
Download .txt
gitextract_am60jkcx/

├── .github/
│   └── FUNDING.yml
├── .gitignore
├── .npmignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── docs/
│   ├── wired-button.md
│   ├── wired-calendar.md
│   ├── wired-card.md
│   ├── wired-checkbox.md
│   ├── wired-combo.md
│   ├── wired-dialog.md
│   ├── wired-divider.md
│   ├── wired-fab.md
│   ├── wired-icon-button.md
│   ├── wired-image.md
│   ├── wired-input.md
│   ├── wired-item.md
│   ├── wired-link.md
│   ├── wired-listbox.md
│   ├── wired-progress-ring.md
│   ├── wired-progress.md
│   ├── wired-radio-group.md
│   ├── wired-radio.md
│   ├── wired-search-input.md
│   ├── wired-slider.md
│   ├── wired-spinner.md
│   ├── wired-tabs.md
│   ├── wired-textarea.md
│   ├── wired-toggle.md
│   └── wired-video.md
├── examples/
│   ├── button.html
│   ├── calendar.html
│   ├── card.html
│   ├── checkbox.html
│   ├── combo.html
│   ├── dialog.html
│   ├── divider.html
│   ├── fab.html
│   ├── icon-button.html
│   ├── image.html
│   ├── input.html
│   ├── link.html
│   ├── listbox.html
│   ├── progress-ring.html
│   ├── progress.html
│   ├── radio.html
│   ├── search-input.html
│   ├── slider.html
│   ├── spinner.html
│   ├── tabs.html
│   ├── textarea.html
│   ├── toggle.html
│   └── video.html
├── experimental/
│   ├── icon.html
│   ├── iconset-generator.html
│   ├── wired-icon/
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── WiredIcon.ts
│   │   │   └── wired-icon.ts
│   │   └── tsconfig.json
│   └── wired-mat-icon/
│       ├── CONTRIBUTING.md
│       ├── README.md
│       ├── generate/
│       │   └── index.html
│       ├── package.json
│       ├── src/
│       │   ├── WiredMatIcon.ts
│       │   ├── iconset/
│       │   │   ├── iconset-full.ts
│       │   │   └── index.ts
│       │   └── wired-mat-icon.ts
│       └── tsconfig.json
├── package.json
├── src/
│   ├── wired-base.ts
│   ├── wired-button.ts
│   ├── wired-calendar.ts
│   ├── wired-card.ts
│   ├── wired-checkbox.ts
│   ├── wired-combo.ts
│   ├── wired-dialog.ts
│   ├── wired-divider.ts
│   ├── wired-elements.ts
│   ├── wired-fab.ts
│   ├── wired-icon-button.ts
│   ├── wired-image.ts
│   ├── wired-input.ts
│   ├── wired-item.ts
│   ├── wired-lib.ts
│   ├── wired-link.ts
│   ├── wired-listbox.ts
│   ├── wired-progress-ring.ts
│   ├── wired-progress.ts
│   ├── wired-radio-group.ts
│   ├── wired-radio.ts
│   ├── wired-search-input.ts
│   ├── wired-slider.ts
│   ├── wired-spinner.ts
│   ├── wired-tab.ts
│   ├── wired-tabs.ts
│   ├── wired-textarea.ts
│   ├── wired-toggle.ts
│   └── wired-video.ts
├── tsconfig.json
└── tslint.json
Download .txt
SYMBOL INDEX (310 symbols across 32 files)

FILE: experimental/wired-icon/src/WiredIcon.ts
  constant DEFAULT_CONFIG (line 4) | const DEFAULT_CONFIG: Options = {
  class WiredIcon (line 8) | class WiredIcon extends LitElement {
    method styles (line 11) | static get styles(): CSSResult {
    method connectedCallback (line 19) | connectedCallback() {
    method createRenderRoot (line 27) | createRenderRoot() {

FILE: experimental/wired-mat-icon/src/WiredMatIcon.ts
  class WiredMatIcon (line 8) | class WiredMatIcon extends LitElement {
    method styles (line 9) | static get styles() {
    method icon (line 23) | get icon(): string {
    method icon (line 27) | set icon(value: string) {
    method render (line 32) | render(): TemplateResult {

FILE: experimental/wired-mat-icon/src/iconset/iconset-full.ts
  constant ICON_SET (line 2) | const ICON_SET: SvgIconSet = {"adb":"M5 16c0 3.87 3.13 7 7 7s7-3.13 7-7v...

FILE: experimental/wired-mat-icon/src/iconset/index.ts
  type SvgIconSet (line 5) | type SvgIconSet = {

FILE: src/wired-base.ts
  type Point (line 4) | type Point = [number, number];
  method updated (line 40) | updated(_changed?: PropertyValues) {
  method wiredRender (line 44) | wiredRender(force = false) {
  method fire (line 61) | fire(name: string, detail?: any) {
  function randomSeed (line 69) | function randomSeed(): number {
  function fireEvent (line 73) | function fireEvent(e: HTMLElement, name: string, detail?: any) {

FILE: src/wired-button.ts
  class WiredButton (line 7) | class WiredButton extends WiredBase {
    method constructor (line 15) | constructor() {
    method styles (line 26) | static get styles(): CSSResultArray {
    method render (line 71) | render(): TemplateResult {
    method focus (line 82) | focus() {
    method canvasSize (line 90) | protected canvasSize(): Point {
    method draw (line 101) | protected draw(svg: SVGSVGElement, size: Point) {
    method updated (line 116) | updated() {
    method disconnectedCallback (line 123) | disconnectedCallback() {
    method attachResizeListener (line 127) | private attachResizeListener() {
    method detachResizeListener (line 134) | private detachResizeListener() {

FILE: src/wired-calendar.ts
  type AreaSize (line 6) | interface AreaSize {
  type CalendarCell (line 11) | interface CalendarCell {
  constant SECOND (line 20) | const SECOND = 1000;
  constant MINUTE (line 21) | const MINUTE = SECOND * 60;
  constant HOUR (line 22) | const HOUR = MINUTE * 60;
  constant DAY (line 23) | const DAY = HOUR * 24;
  constant TABLE_PADDING (line 25) | const TABLE_PADDING = 8;
  class WiredCalendar (line 28) | class WiredCalendar extends LitElement {
    method connectedCallback (line 62) | connectedCallback() {
    method disconnectedCallback (line 78) | disconnectedCallback() {
    method styles (line 86) | static get styles() {
    method render (line 183) | render(): TemplateResult {
    method firstUpdated (line 254) | firstUpdated() {
    method updated (line 258) | updated(changed?: PropertyValues) {
    method setSelectedDate (line 298) | setSelectedDate(formatedDate: string): void {
    method localizeCalendarHeaders (line 318) | private localizeCalendarHeaders() {
    method setInitialConditions (line 353) | private setInitialConditions() {
    method refreshSelection (line 377) | private refreshSelection() {
    method resized (line 388) | private resized(): void {
    method getCalendarSize (line 395) | private getCalendarSize(): AreaSize {
    method computeCellsizes (line 403) | private computeCellsizes(size: AreaSize, rows: number): void {
    method refreshDisabledState (line 414) | private refreshDisabledState() {
    method onItemClick (line 423) | private onItemClick(event: CustomEvent) {
    method fireSelected (line 434) | private fireSelected() {
    method computeCalendar (line 441) | private computeCalendar(): void {
    method onPrevClick (line 475) | private onPrevClick(): void {
    method onNextClick (line 487) | private onNextClick(): void {
    method isDateOutOfRange (line 499) | private isDateOutOfRange(day: Date): boolean {
    method debounce (line 512) | private debounce(func: Function, wait: number, immediate: boolean, con...

FILE: src/wired-card.ts
  class WiredCard (line 7) | class WiredCard extends WiredBase {
    method constructor (line 14) | constructor() {
    method styles (line 25) | static get styles() {
    method render (line 45) | render(): TemplateResult {
    method updated (line 54) | updated(changed: PropertyValues) {
    method disconnectedCallback (line 60) | disconnectedCallback() {
    method attachResizeListener (line 64) | private attachResizeListener() {
    method detachResizeListener (line 76) | private detachResizeListener() {
    method canvasSize (line 86) | protected canvasSize(): Point {
    method draw (line 94) | protected draw(svg: SVGSVGElement, size: Point) {

FILE: src/wired-checkbox.ts
  class WiredCheckbox (line 7) | class WiredCheckbox extends WiredBase {
    method styles (line 16) | static get styles() {
    method focus (line 62) | focus() {
    method wiredRender (line 70) | wiredRender(force = false) {
    method render (line 75) | render(): TemplateResult {
    method onChange (line 88) | private onChange() {
    method canvasSize (line 94) | protected canvasSize(): Point {
    method draw (line 98) | protected draw(svg: SVGSVGElement, size: Point) {
    method refreshCheckVisibility (line 106) | private refreshCheckVisibility() {

FILE: src/wired-combo.ts
  type WiredComboItem (line 9) | interface WiredComboItem extends HTMLElement {
  type ComboValue (line 14) | interface ComboValue {
  class WiredCombo (line 20) | class WiredCombo extends LitElement {
    method styles (line 33) | static get styles() {
    method render (line 113) | render(): TemplateResult {
    method refreshDisabledState (line 130) | private refreshDisabledState() {
    method firstUpdated (line 139) | firstUpdated() {
    method updated (line 181) | updated(changed: PropertyValues) {
    method refreshSelection (line 225) | private refreshSelection() {
    method setCardShowing (line 260) | private setCardShowing(showing: boolean) {
    method onItemClick (line 282) | private onItemClick(event: CustomEvent) {
    method fireSelected (line 292) | private fireSelected() {
    method selectPrevious (line 296) | private selectPrevious() {
    method selectNext (line 319) | private selectNext() {
    method onCombo (line 342) | private onCombo(event: Event) {

FILE: src/wired-dialog.ts
  class WiredDialog (line 6) | class WiredDialog extends LitElement {
    method styles (line 12) | static get styles() {
    method render (line 78) | render(): TemplateResult {
    method updated (line 92) | updated() {

FILE: src/wired-divider.ts
  class WiredDivider (line 7) | class WiredDivider extends WiredBase {
    method styles (line 14) | static get styles(): CSSResultArray {
    method render (line 26) | render(): TemplateResult {
    method canvasSize (line 30) | protected canvasSize(): Point {
    method draw (line 36) | protected draw(svg: SVGSVGElement, size: Point) {
    method updated (line 43) | updated() {
    method disconnectedCallback (line 48) | disconnectedCallback() {
    method attachResizeListener (line 52) | private attachResizeListener() {
    method detachResizeListener (line 64) | private detachResizeListener() {

FILE: src/wired-fab.ts
  class WiredFab (line 7) | class WiredFab extends WiredBase {
    method styles (line 11) | static get styles(): CSSResultArray {
    method render (line 68) | render(): TemplateResult {
    method canvasSize (line 79) | protected canvasSize(): Point {
    method draw (line 87) | protected draw(svg: SVGSVGElement, size: Point) {

FILE: src/wired-icon-button.ts
  class WiredIconButton (line 7) | class WiredIconButton extends WiredBase {
    method styles (line 11) | static get styles(): CSSResultArray {
    method render (line 61) | render(): TemplateResult {
    method canvasSize (line 72) | protected canvasSize(): Point {
    method draw (line 80) | protected draw(svg: SVGSVGElement, size: Point) {

FILE: src/wired-image.ts
  constant EMPTY_IMAGE (line 6) | const EMPTY_IMAGE = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAA...
  class WiredImage (line 9) | class WiredImage extends WiredBase {
    method constructor (line 16) | constructor() {
    method styles (line 27) | static get styles(): CSSResultArray {
    method render (line 50) | render(): TemplateResult {
    method updated (line 57) | updated() {
    method disconnectedCallback (line 62) | disconnectedCallback() {
    method attachResizeListener (line 66) | private attachResizeListener() {
    method detachResizeListener (line 78) | private detachResizeListener() {
    method canvasSize (line 88) | protected canvasSize(): Point {
    method draw (line 96) | protected draw(svg: SVGSVGElement, size: Point) {

FILE: src/wired-input.ts
  class WiredInput (line 7) | class WiredInput extends WiredBase {
    method constructor (line 30) | constructor() {
    method styles (line 41) | static get styles(): CSSResultArray {
    method render (line 80) | render(): TemplateResult {
    method input (line 93) | get input(): HTMLInputElement | undefined {
    method value (line 97) | get value(): string {
    method value (line 102) | set value(v: string) {
    method firstUpdated (line 113) | firstUpdated() {
    method canvasSize (line 118) | protected canvasSize(): Point {
    method draw (line 123) | protected draw(svg: SVGSVGElement, size: Point) {
    method refire (line 127) | private refire(event: Event) {
    method focus (line 132) | focus() {
    method updated (line 140) | updated() {
    method disconnectedCallback (line 145) | disconnectedCallback() {
    method attachResizeListener (line 149) | private attachResizeListener() {
    method detachResizeListener (line 158) | private detachResizeListener() {

FILE: src/wired-item.ts
  class WiredItem (line 7) | class WiredItem extends WiredBase {
    method styles (line 12) | static get styles(): CSSResultArray {
    method render (line 84) | render(): TemplateResult {
    method canvasSize (line 92) | protected canvasSize(): Point {
    method draw (line 97) | protected draw(svg: SVGSVGElement, size: Point) {

FILE: src/wired-lib.ts
  type Params (line 15) | type Params = { [name: string]: string };
  method randOffset (line 18) | randOffset(x: number, _o: ResolvedOptions): number {
  method randOffsetWithRange (line 21) | randOffsetWithRange(min: number, max: number, _o: ResolvedOptions): numb...
  method ellipse (line 24) | ellipse(x: number, y: number, width: number, height: number, o: Resolved...
  method doubleLineOps (line 27) | doubleLineOps(x1: number, y1: number, x2: number, y2: number, o: Resolve...
  function options (line 32) | function options(seed: number): ResolvedOptions {
  function opsToPath (line 56) | function opsToPath(drawing: OpSet, joinPaths: boolean): string {
  function svgNode (line 78) | function svgNode(tagName: string, attributes?: Params): SVGElement {
  function createPathNode (line 88) | function createPathNode(ops: OpSet, parent: SVGElement | null, joinPaths...
  function rectangle (line 96) | function rectangle(parent: SVGElement, x: number, y: number, width: numb...
  function line (line 100) | function line(parent: SVGElement, x1: number, y1: number, x2: number, y2...
  function polygon (line 104) | function polygon(parent: SVGElement, vertices: Point[], seed: number): S...
  function ellipse (line 108) | function ellipse(parent: SVGElement, x: number, y: number, width: number...
  function arc (line 114) | function arc(parent: SVGElement, x: number, y: number, width: number, he...
  function hachureFill (line 120) | function hachureFill(points: Point[], seed: number): SVGElement {
  function hachureEllipseFill (line 126) | function hachureEllipseFill(cx: number, cy: number, width: number, heigh...

FILE: src/wired-link.ts
  class WiredLink (line 7) | class WiredLink extends WiredBase {
    method styles (line 13) | static get styles(): CSSResultArray {
    method render (line 40) | render(): TemplateResult {
    method focus (line 49) | focus() {
    method canvasSize (line 57) | protected canvasSize(): Point {
    method draw (line 68) | protected draw(svg: SVGSVGElement, size: Point) {

FILE: src/wired-listbox.ts
  type WiredComboItem (line 6) | interface WiredComboItem extends HTMLElement {
  type ListboxValue (line 11) | interface ListboxValue {
  class WiredListbox (line 17) | class WiredListbox extends WiredBase {
    method styles (line 26) | static get styles(): CSSResultArray {
    method render (line 50) | render(): TemplateResult {
    method firstUpdated (line 59) | firstUpdated() {
    method updated (line 80) | updated() {
    method onItemClick (line 102) | private onItemClick(event: Event) {
    method refreshSelection (line 109) | private refreshSelection() {
    method fireSelected (line 144) | private fireSelected() {
    method selectPrevious (line 148) | private selectPrevious() {
    method selectNext (line 171) | private selectNext() {
    method canvasSize (line 194) | protected canvasSize(): Point {
    method draw (line 199) | protected draw(svg: SVGSVGElement, size: Point) {

FILE: src/wired-progress-ring.ts
  class WiredProgressRing (line 7) | class WiredProgressRing extends WiredBase {
    method styles (line 17) | static get styles(): CSSResultArray {
    method render (line 50) | render(): TemplateResult {
    method wiredRender (line 74) | wiredRender(force = false) {
    method canvasSize (line 79) | protected canvasSize(): Point {
    method draw (line 84) | protected draw(svg: SVGSVGElement, size: Point) {
    method refreshProgressFill (line 90) | private refreshProgressFill() {

FILE: src/wired-progress.ts
  class WiredProgress (line 7) | class WiredProgress extends WiredBase {
    method styles (line 15) | static get styles(): CSSResultArray {
    method render (line 56) | render(): TemplateResult {
    method getProgressLabel (line 67) | private getProgressLabel(): string {
    method wiredRender (line 80) | wiredRender(force = false) {
    method canvasSize (line 85) | protected canvasSize(): Point {
    method draw (line 90) | protected draw(svg: SVGSVGElement, size: Point) {
    method refreshProgressFill (line 94) | private refreshProgressFill() {

FILE: src/wired-radio-group.ts
  type RadioItem (line 5) | interface RadioItem extends HTMLElement {
  class WiredRadioGroup (line 11) | class WiredRadioGroup extends LitElement {
    method styles (line 16) | static get styles() {
    method render (line 29) | render(): TemplateResult {
    method connectedCallback (line 33) | connectedCallback() {
    method disconnectedCallback (line 38) | disconnectedCallback() {
    method handleChecked (line 43) | private handleChecked(event: Event) {
    method slotChange (line 55) | slotChange() {
    method firstUpdated (line 59) | firstUpdated() {
    method updated (line 78) | updated() {
    method selectPrevious (line 98) | private selectPrevious() {
    method selectNext (line 131) | private selectNext() {
    method fireSelected (line 164) | private fireSelected() {

FILE: src/wired-radio.ts
  class WiredRadio (line 7) | class WiredRadio extends WiredBase {
    method styles (line 17) | static get styles(): CSSResultArray {
    method focus (line 64) | focus() {
    method wiredRender (line 72) | wiredRender(force = false) {
    method render (line 77) | render(): TemplateResult {
    method onChange (line 90) | private onChange() {
    method canvasSize (line 96) | protected canvasSize(): Point {
    method draw (line 100) | protected draw(svg: SVGSVGElement, size: Point) {
    method refreshCheckVisibility (line 109) | private refreshCheckVisibility() {

FILE: src/wired-search-input.ts
  class WiredSearchInput (line 7) | class WiredSearchInput extends WiredBase {
    method styles (line 20) | static get styles(): CSSResultArray {
    method render (line 83) | render(): TemplateResult {
    method input (line 96) | get input(): HTMLInputElement | undefined {
    method value (line 100) | get value(): string {
    method value (line 105) | set value(v: string) {
    method wiredRender (line 117) | wiredRender(force = false) {
    method firstUpdated (line 122) | firstUpdated() {
    method canvasSize (line 127) | protected canvasSize(): Point {
    method draw (line 132) | protected draw(svg: SVGSVGElement, size: Point) {
    method refreshIconState (line 148) | private refreshIconState() {
    method refire (line 155) | private refire(event: Event) {

FILE: src/wired-slider.ts
  class WiredSlider (line 7) | class WiredSlider extends WiredBase {
    method styles (line 19) | static get styles(): CSSResultArray {
    method value (line 97) | get value(): number {
    method value (line 104) | set value(v: number) {
    method firstUpdated (line 113) | firstUpdated() {
    method render (line 119) | render(): TemplateResult {
    method focus (line 135) | focus() {
    method onInput (line 143) | private onInput(e: Event) {
    method wiredRender (line 151) | wiredRender(force = false) {
    method canvasSize (line 156) | protected canvasSize(): Point {
    method draw (line 161) | protected draw(svg: SVGSVGElement, size: Point) {
    method updateThumbPosition (line 169) | private updateThumbPosition() {

FILE: src/wired-spinner.ts
  class WiredSpinner (line 7) | class WiredSpinner extends WiredBase {
    method styles (line 16) | static get styles(): CSSResultArray {
    method render (line 38) | render(): TemplateResult {
    method canvasSize (line 42) | protected canvasSize(): Point {
    method draw (line 46) | protected draw(svg: SVGSVGElement, size: Point) {
    method updateCursor (line 54) | private updateCursor() {
    method updated (line 64) | updated() {
    method startSpinner (line 73) | private startSpinner() {
    method stopSpinner (line 80) | private stopSpinner() {
    method nextTick (line 87) | private nextTick() {
    method tick (line 91) | private tick(t: number) {

FILE: src/wired-tab.ts
  class WiredTab (line 9) | class WiredTab extends WiredBase {
    method constructor (line 15) | constructor() {
    method styles (line 26) | static get styles(): CSSResultArray {
    method render (line 39) | render(): TemplateResult {
    method updated (line 48) | updated() {
    method disconnectedCallback (line 53) | disconnectedCallback() {
    method attachResizeListener (line 57) | private attachResizeListener() {
    method detachResizeListener (line 66) | private detachResizeListener() {
    method canvasSize (line 75) | protected canvasSize(): Point {
    method draw (line 80) | protected draw(svg: SVGSVGElement, s: Point) {

FILE: src/wired-tabs.ts
  type WiredTabItem (line 5) | interface WiredTabItem extends HTMLElement {
  class WiredTabs (line 12) | class WiredTabs extends LitElement {
    method styles (line 20) | static get styles(): CSSResultArray {
    method render (line 47) | render(): TemplateResult {
    method mapPages (line 61) | private mapPages() {
    method firstUpdated (line 92) | firstUpdated() {
    method updated (line 111) | updated() {
    method getElement (line 127) | private getElement(): WiredTabItem | null {
    method selectPrevious (line 138) | private selectPrevious() {
    method selectNext (line 159) | private selectNext() {

FILE: src/wired-textarea.ts
  class WiredTextarea (line 7) | class WiredTextarea extends WiredBase {
    method styles (line 23) | static get styles(): CSSResultArray {
    method render (line 62) | render(): TemplateResult {
    method textarea (line 74) | get textarea(): HTMLTextAreaElement | undefined {
    method value (line 78) | get value(): string {
    method value (line 83) | set value(v: string) {
    method firstUpdated (line 94) | firstUpdated() {
    method canvasSize (line 99) | protected canvasSize(): Point {
    method draw (line 104) | protected draw(svg: SVGSVGElement, size: Point) {
    method refire (line 108) | private refire(event: Event) {

FILE: src/wired-toggle.ts
  class WiredToggle (line 7) | class WiredToggle extends WiredBase {
    method styles (line 15) | static get styles(): CSSResultArray {
    method render (line 66) | render(): TemplateResult {
    method focus (line 75) | focus() {
    method wiredRender (line 83) | wiredRender(force = false) {
    method onChange (line 88) | private onChange() {
    method canvasSize (line 94) | protected canvasSize(): Point {
    method draw (line 98) | protected draw(svg: SVGSVGElement, size: Point) {
    method refreshKnob (line 110) | private refreshKnob() {

FILE: src/wired-video.ts
  class WiredVideo (line 10) | class WiredVideo extends WiredBase {
    method constructor (line 26) | constructor() {
    method styles (line 37) | static get styles(): CSSResultArray {
    method render (line 116) | render(): TemplateResult {
    method updated (line 150) | updated() {
    method disconnectedCallback (line 155) | disconnectedCallback() {
    method attachResizeListener (line 159) | private attachResizeListener() {
    method detachResizeListener (line 168) | private detachResizeListener() {
    method wiredRender (line 177) | wiredRender() {
    method canvasSize (line 184) | protected canvasSize(): Point {
    method draw (line 189) | protected draw(svg: SVGSVGElement, size: Point) {
    method updateTime (line 193) | private updateTime() {
    method getTimeDisplay (line 200) | private getTimeDisplay(time: number) {
    method togglePause (line 206) | private togglePause() {
    method volumeChange (line 216) | private volumeChange() {
    method canPlay (line 222) | private canPlay() {
Condensed preview — 102 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (442K chars).
[
  {
    "path": ".github/FUNDING.yml",
    "chars": 38,
    "preview": "github: pshihn\nopen_collective: rough\n"
  },
  {
    "path": ".gitignore",
    "chars": 25,
    "preview": "node_modules\nlib\npackages"
  },
  {
    "path": ".npmignore",
    "chars": 64,
    "preview": "node_modules\nexamples\n.github\ntsconfig.json\ntslint.json\npackages"
  },
  {
    "path": "CHANGELOG.md",
    "chars": 1833,
    "preview": "# Change Log\n\nAll notable changes to this project will be documented in this file.\n\n## [3.0.0] - April 21, 2021\n* Moved "
  },
  {
    "path": "LICENSE",
    "chars": 1068,
    "preview": "MIT License\n\nCopyright (c) 2021 Preet Shihn\n\nPermission is hereby granted, free of charge, to any person obtaining a cop"
  },
  {
    "path": "README.md",
    "chars": 4045,
    "preview": "# wired-elements 👉 [wiredjs.com](https://wiredjs.com)\nWired Elements is a series of basic UI Elements that have a hand d"
  },
  {
    "path": "docs/wired-button.md",
    "chars": 1110,
    "preview": "# wired-button\nHand-drawn sketchy Button web component.\n\nFor demo and view the complete set of wired-elememts: [wiredjs."
  },
  {
    "path": "docs/wired-calendar.md",
    "chars": 2365,
    "preview": "![wired calendar][sample]\n\n# wired-calendar\n\nCalendar control with a hand-drawn, wireframe like, style.\n\nFor demo and vi"
  },
  {
    "path": "docs/wired-card.md",
    "chars": 1214,
    "preview": "# wired-card\n\nwired-card is a container for other web elements - with a hand-drawn, wireframe like, look.\n\nFor demo and "
  },
  {
    "path": "docs/wired-checkbox.md",
    "chars": 1251,
    "preview": "# wired-checkbox\nHand-drawn sketchy checkbox web component.\n\nFor demo and view the complete set of wired-elememts: [wire"
  },
  {
    "path": "docs/wired-combo.md",
    "chars": 1385,
    "preview": "# wired-combo\n\nCombobox control - similar to a native browser select element; with a hand-drawn, wireframe like, style.\n"
  },
  {
    "path": "docs/wired-dialog.md",
    "chars": 1211,
    "preview": "# wired-dialog\nHand-drawn sketchy Dialog web component.\n\nFor demo and view the complete set of wired-elememts: [wiredjs."
  },
  {
    "path": "docs/wired-divider.md",
    "chars": 1148,
    "preview": "# wired-divider\nHand-drawn sketchy line to divide sections\n\nFor demo and view the complete set of wired-elememts: [wired"
  },
  {
    "path": "docs/wired-fab.md",
    "chars": 1165,
    "preview": "# wired-fab\nHand-drawn sketchy Floating Action Button (FAB)\n\nFor demo and view the complete set of wired-elememts: [wire"
  },
  {
    "path": "docs/wired-icon-button.md",
    "chars": 1321,
    "preview": "# wired-icon-button\n\nThis is a hand-drawn sketchy round button with an image placed at the center. Image could also be i"
  },
  {
    "path": "docs/wired-image.md",
    "chars": 1071,
    "preview": "# wired-image\n\nwired-image displays an image and draws a sketchy border around it. \n\nFor demo and view the complete set "
  },
  {
    "path": "docs/wired-input.md",
    "chars": 1169,
    "preview": "# wired-input\nHand-drawn sketchy text input web component.\n\nFor demo and view the complete set of wired-elememts: [wired"
  },
  {
    "path": "docs/wired-item.md",
    "chars": 278,
    "preview": "# wired-item\n\nwired-item is a list item used by Wired components like wired-combo and wired-list-box\n\n[wiredjs.com](http"
  },
  {
    "path": "docs/wired-link.md",
    "chars": 1311,
    "preview": "# wired-link\nHand-drawn sketchy Anchor/Link web component.\n\nFor demo and view the complete set of wired-elememts: [wired"
  },
  {
    "path": "docs/wired-listbox.md",
    "chars": 1714,
    "preview": "# wired-listbox\n\nA listbox control with Wired hand-drawn styling. The selected item is highlighted. Can be vertical (def"
  },
  {
    "path": "docs/wired-progress-ring.md",
    "chars": 1625,
    "preview": "# wired-progress-ring\nHand-drawn sketchy progress-ring web component.\n\nFor demo and view the complete set of wired-eleme"
  },
  {
    "path": "docs/wired-progress.md",
    "chars": 1420,
    "preview": "# wired-progress\nHand-drawn sketchy progress bar web component.\n\nFor demo and view the complete set of wired-elememts: ["
  },
  {
    "path": "docs/wired-radio-group.md",
    "chars": 1018,
    "preview": "# wired-radio-group\nAllows user to select at most one radio button from a set. Works with `wired-radio`.\n\nFor demo and v"
  },
  {
    "path": "docs/wired-radio.md",
    "chars": 1395,
    "preview": "# wired-radio\nHand-drawn sketchy radio button web component. Usually used with `wired-radio-group`.\n\nFor demo and view t"
  },
  {
    "path": "docs/wired-search-input.md",
    "chars": 1067,
    "preview": "# wired-search-input\nHand-drawn sketchy search text input web component.\n\nFor demo and view the complete set of wired-el"
  },
  {
    "path": "docs/wired-slider.md",
    "chars": 1504,
    "preview": "# wired-slider\n\nHand-drawn sketchy slider web component which allows user to select a value from a range by moving the s"
  },
  {
    "path": "docs/wired-spinner.md",
    "chars": 1094,
    "preview": "# wired-spinner\nHand-drawn sketchy spinner to show progress or a pending task.\n\nFor demo and view the complete set of wi"
  },
  {
    "path": "docs/wired-tabs.md",
    "chars": 2152,
    "preview": "# wired-tabs\nHand-drawn sketchy Tabs web component.\n\nFor demo and view the complete set of wired-elememts: [wiredjs.com]"
  },
  {
    "path": "docs/wired-textarea.md",
    "chars": 1224,
    "preview": "# wired-textarea\nHand-drawn sketchy multi-line text input web component. \n\nFor demo and view the complete set of wired-e"
  },
  {
    "path": "docs/wired-toggle.md",
    "chars": 1241,
    "preview": "# wired-toggle\nHand-drawn sketchy toggle button / switch.\n\nFor demo and view the complete set of wired-elememts: [wiredj"
  },
  {
    "path": "docs/wired-video.md",
    "chars": 1202,
    "preview": "# wired-video\n\nA hand-drawn sketchy looking video player component.\n\nFor demo and view the complete set of wired-elememt"
  },
  {
    "path": "examples/button.html",
    "chars": 736,
    "preview": "<html>\n\n<head>\n   <script type=\"module\" src=\"../lib/wired-button.js\"></script>\n\n   <style>\n      body {\n         margin:"
  },
  {
    "path": "examples/calendar.html",
    "chars": 4066,
    "preview": "<html>\n\n<head>\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n\n  <link href=\"https://fonts.googl"
  },
  {
    "path": "examples/card.html",
    "chars": 1842,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-card.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n     "
  },
  {
    "path": "examples/checkbox.html",
    "chars": 624,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-checkbox.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n "
  },
  {
    "path": "examples/combo.html",
    "chars": 1171,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-combo.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n    "
  },
  {
    "path": "examples/dialog.html",
    "chars": 1561,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-link.js\"></script>\n  <script type=\"module\" src=\"../lib/wired-bu"
  },
  {
    "path": "examples/divider.html",
    "chars": 1430,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-divider.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n  "
  },
  {
    "path": "examples/fab.html",
    "chars": 1012,
    "preview": "<html>\n\n<head>\n  <link href=\"https://fonts.googleapis.com/css?family=Material+Icons&display=block\" rel=\"stylesheet\">\n  <"
  },
  {
    "path": "examples/icon-button.html",
    "chars": 1109,
    "preview": "<html>\n\n<head>\n  <link href=\"https://fonts.googleapis.com/css?family=Material+Icons&display=block\" rel=\"stylesheet\">\n  <"
  },
  {
    "path": "examples/image.html",
    "chars": 770,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-image.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n    "
  },
  {
    "path": "examples/input.html",
    "chars": 525,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-input.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n    "
  },
  {
    "path": "examples/link.html",
    "chars": 856,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-link.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n     "
  },
  {
    "path": "examples/listbox.html",
    "chars": 1044,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-item.js\"></script>\n  <script type=\"module\" src=\"../lib/wired-li"
  },
  {
    "path": "examples/progress-ring.html",
    "chars": 1517,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-progress-ring.js\"></script>\n  <script type=\"module\" src=\"../lib"
  },
  {
    "path": "examples/progress.html",
    "chars": 1579,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-progress.js\"></script>\n  <script type=\"module\" src=\"../lib/wire"
  },
  {
    "path": "examples/radio.html",
    "chars": 946,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-radio.js\"></script>\n  <script type=\"module\" src=\"../lib/wired-r"
  },
  {
    "path": "examples/search-input.html",
    "chars": 450,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-search-input.js\"></script>\n\n  <style>\n    body {\n      margin: "
  },
  {
    "path": "examples/slider.html",
    "chars": 757,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-slider.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n   "
  },
  {
    "path": "examples/spinner.html",
    "chars": 783,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-button.js\"></script>\n  <script type=\"module\" src=\"../lib/wired-"
  },
  {
    "path": "examples/tabs.html",
    "chars": 3073,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-tab.js\"></script>\n  <script type=\"module\" src=\"../lib/wired-tab"
  },
  {
    "path": "examples/textarea.html",
    "chars": 716,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-textarea.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n "
  },
  {
    "path": "examples/toggle.html",
    "chars": 512,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-toggle.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n   "
  },
  {
    "path": "examples/video.html",
    "chars": 634,
    "preview": "<html>\n\n<head>\n  <script type=\"module\" src=\"../lib/wired-video.js\"></script>\n\n  <style>\n    body {\n      margin: 0;\n    "
  },
  {
    "path": "experimental/icon.html",
    "chars": 10047,
    "preview": "<html>\n\n<head>\n  <link rel=\"preload\" href=\"/node_modules/lit-element/lit-element.js\" as=\"script\" crossorigin>\n  <link re"
  },
  {
    "path": "experimental/iconset-generator.html",
    "chars": 1139,
    "preview": "<html>\n\n<head>\n  <script type=\"module\">\n      import {ICON_SET} from  \"../packages/wired-mat-icon/lib/iconset/iconset-fu"
  },
  {
    "path": "experimental/wired-icon/README.md",
    "chars": 5341,
    "preview": "# wired-icon\n\nWebComponent which allows you to easily create Hand drawn version of any SVG Icon!\n\n![image](https://user-"
  },
  {
    "path": "experimental/wired-icon/package.json",
    "chars": 799,
    "preview": "{\n  \"name\": \"wired-icon\",\n  \"version\": \"0.0.1\",\n  \"description\": \"Sketchy version of material icon\",\n  \"keywords\": [\n   "
  },
  {
    "path": "experimental/wired-icon/src/WiredIcon.ts",
    "chars": 697,
    "preview": "import { Options, wiredSvg } from 'wired-lib/lib/wired-lib';\nimport { LitElement, css, CSSResult, property } from 'lit-e"
  },
  {
    "path": "experimental/wired-icon/src/wired-icon.ts",
    "chars": 391,
    "preview": "import { customElement } from 'lit-element';\nimport { WiredIcon } from './WiredIcon';\n\n// We separate the class from its"
  },
  {
    "path": "experimental/wired-icon/tsconfig.json",
    "chars": 121,
    "preview": "{\n  \"extends\": \"../../tsconfig.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"./lib\"\n  },\n  \"include\": [\n    \"./src\"\n  ]\n}"
  },
  {
    "path": "experimental/wired-mat-icon/CONTRIBUTING.md",
    "chars": 681,
    "preview": "# FAQ for maintaining wired-mat-icon\n## How to generate the iconset-full.ts ?\nGo to the generate folder and run:\n`npm ru"
  },
  {
    "path": "experimental/wired-mat-icon/README.md",
    "chars": 3958,
    "preview": "# wired-mat-icon\n\nWebComponent which allows you to easily create Hand drawn version of Material Icons!\n\n![image](https:/"
  },
  {
    "path": "experimental/wired-mat-icon/generate/index.html",
    "chars": 2410,
    "preview": "<!doctype html>\n<html lang=\"en\">\n<body>\n<style>\n\tobject {\n\t\tvisibility: hidden;\n\t\theight: 0px;\n\t\twidth: 0px;\n\t}\n</style>"
  },
  {
    "path": "experimental/wired-mat-icon/package.json",
    "chars": 918,
    "preview": "{\n  \"name\": \"wired-mat-icon\",\n  \"version\": \"0.0.1\",\n  \"description\": \"Sketchy material icon component and iconset\",\n  \"k"
  },
  {
    "path": "experimental/wired-mat-icon/src/WiredMatIcon.ts",
    "chars": 975,
    "preview": "import { property, LitElement, html, TemplateResult, css } from 'lit-element';\nimport 'wired-icon';\nimport { iconsetLoad"
  },
  {
    "path": "experimental/wired-mat-icon/src/iconset/iconset-full.ts",
    "chars": 207165,
    "preview": "import { SvgIconSet } from './index';\nexport const ICON_SET: SvgIconSet = {\"adb\":\"M5 16c0 3.87 3.13 7 7 7s7-3.13 7-7v-4H"
  },
  {
    "path": "experimental/wired-mat-icon/src/iconset/index.ts",
    "chars": 431,
    "preview": "/**\n * key is the name of the icon\n * value is the path for the svg (d attribute on path svg element)\n */\nexport type Sv"
  },
  {
    "path": "experimental/wired-mat-icon/src/wired-mat-icon.ts",
    "chars": 213,
    "preview": "import { customElement } from 'lit-element';\nimport { WiredMatIcon } from './WiredMatIcon';\n\nwindow.customElements.get('"
  },
  {
    "path": "experimental/wired-mat-icon/tsconfig.json",
    "chars": 121,
    "preview": "{\n  \"extends\": \"../../tsconfig.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"./lib\"\n  },\n  \"include\": [\n    \"./src\"\n  ]\n}"
  },
  {
    "path": "package.json",
    "chars": 956,
    "preview": "{\n  \"name\": \"wired-elements\",\n  \"version\": \"3.0.0-rc.7\",\n  \"description\": \"Collection of hand-drawn sketchy web componen"
  },
  {
    "path": "src/wired-base.ts",
    "chars": 1717,
    "preview": "import { LitElement, css, PropertyValues } from 'lit';\nimport { query } from 'lit/decorators.js';\n\nexport type Point = ["
  },
  {
    "path": "src/wired-button.ts",
    "chars": 3828,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle, line } from './wired-lib';\nimport { css, T"
  },
  {
    "path": "src/wired-calendar.ts",
    "chars": 18876,
    "preview": "import { rectangle, line, ellipse } from './wired-lib';\nimport { randomSeed, fireEvent } from './wired-base';\nimport { c"
  },
  {
    "path": "src/wired-card.ts",
    "chars": 3781,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle, line, hachureFill, } from './wired-lib';\ni"
  },
  {
    "path": "src/wired-checkbox.ts",
    "chars": 2854,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle, line, svgNode } from './wired-lib';\nimport"
  },
  {
    "path": "src/wired-combo.ts",
    "chars": 9367,
    "preview": "import { css, TemplateResult, html, PropertyValues, LitElement } from 'lit';\nimport { customElement, property, query } f"
  },
  {
    "path": "src/wired-dialog.ts",
    "chars": 2345,
    "preview": "import { css, TemplateResult, html, LitElement } from 'lit';\nimport { customElement, property, query } from 'lit/decorat"
  },
  {
    "path": "src/wired-divider.ts",
    "chars": 1919,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { line } from './wired-lib';\nimport { css, TemplateResu"
  },
  {
    "path": "src/wired-elements.ts",
    "chars": 812,
    "preview": "export * from './wired-button';\nexport * from './wired-card';\nexport * from './wired-checkbox';\nexport * from './wired-c"
  },
  {
    "path": "src/wired-fab.ts",
    "chars": 2443,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { hachureEllipseFill } from './wired-lib';\nimport { css"
  },
  {
    "path": "src/wired-icon-button.ts",
    "chars": 2304,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { ellipse } from './wired-lib';\nimport { css, TemplateR"
  },
  {
    "path": "src/wired-image.ts",
    "chars": 3499,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle, line } from './wired-lib';\nimport { css, T"
  },
  {
    "path": "src/wired-input.ts",
    "chars": 4506,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle } from './wired-lib';\nimport { css, Templat"
  },
  {
    "path": "src/wired-item.ts",
    "chars": 2584,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { css, TemplateResult, html, CSSResultArray } from 'lit"
  },
  {
    "path": "src/wired-lib.ts",
    "chars": 4569,
    "preview": "import { Point } from 'roughjs/bin/geometry.js';\nimport { ResolvedOptions, OpSet, Op } from 'roughjs/bin/core';\nimport {"
  },
  {
    "path": "src/wired-link.ts",
    "chars": 2092,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { line } from './wired-lib';\nimport { css, TemplateResu"
  },
  {
    "path": "src/wired-listbox.ts",
    "chars": 5272,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle } from './wired-lib';\nimport { css, Templat"
  },
  {
    "path": "src/wired-progress-ring.ts",
    "chars": 2887,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { ellipse, arc } from './wired-lib';\nimport { css, Temp"
  },
  {
    "path": "src/wired-progress.ts",
    "chars": 3132,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle, hachureFill } from './wired-lib';\nimport {"
  },
  {
    "path": "src/wired-radio-group.ts",
    "chars": 4057,
    "preview": "import { fireEvent } from './wired-base';\nimport { css, TemplateResult, html, LitElement } from 'lit';\nimport { customEl"
  },
  {
    "path": "src/wired-radio.ts",
    "chars": 2959,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { ellipse, svgNode } from './wired-lib';\nimport { css, "
  },
  {
    "path": "src/wired-search-input.ts",
    "chars": 4789,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle, line, svgNode, ellipse } from './wired-lib"
  },
  {
    "path": "src/wired-slider.ts",
    "chars": 4450,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { line, ellipse } from './wired-lib';\nimport { css, Tem"
  },
  {
    "path": "src/wired-spinner.ts",
    "chars": 2612,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { ellipse, hachureEllipseFill } from './wired-lib';\nimp"
  },
  {
    "path": "src/wired-tab.ts",
    "chars": 2100,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle } from './wired-lib';\nimport { css, Templat"
  },
  {
    "path": "src/wired-tabs.ts",
    "chars": 4574,
    "preview": "import { BaseCSS } from './wired-base';\nimport { css, TemplateResult, html, CSSResultArray, LitElement } from 'lit';\nimp"
  },
  {
    "path": "src/wired-textarea.ts",
    "chars": 3253,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle } from './wired-lib';\nimport { css, Templat"
  },
  {
    "path": "src/wired-toggle.ts",
    "chars": 3019,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle, hachureEllipseFill, ellipse, svgNode } fro"
  },
  {
    "path": "src/wired-video.ts",
    "chars": 6738,
    "preview": "import { WiredBase, BaseCSS, Point } from './wired-base';\nimport { rectangle } from './wired-lib';\nimport { css, Templat"
  },
  {
    "path": "tsconfig.json",
    "chars": 568,
    "preview": "{\n  \"compilerOptions\": {\n    \"target\": \"es2017\",\n    \"module\": \"es2015\",\n    \"moduleResolution\": \"node\",\n    \"lib\": [\n  "
  },
  {
    "path": "tslint.json",
    "chars": 1118,
    "preview": "{\n  \"rules\": {\n    \"arrow-parens\": true,\n    \"class-name\": true,\n    \"indent\": [\n      true,\n      \"spaces\",\n      2\n   "
  }
]

About this extraction

This page contains the full source code of the rough-stuff/wired-elements GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 102 files (412.9 KB), approximately 225.1k tokens, and a symbol index with 310 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!